Sugarscape is a model for artificially intelligent agent-based social simulation following some or all rules presented by Joshua M. Epstein & Robert Axtell in their book Growing Artificial Societies.[1]
Origin
Fundaments of Sugarscape models can be traced back to the University of Maryland where economist Thomas Schelling presented his paper titled Models of Segregation.[2] Written in 1969, Schelling and the rest of the social environment modelling fraternity had their options limited by a lack of adequate computing power and an applicable programming mechanism to fully develop the potential of their model.
John Conway's agent-based simulation "Game of Life" was enhanced and applied to Schelling's original idea by Joshua M. Epstein and Robert Axtell in their book Growing Artificial Societies. To demonstrate their findings on the field of agent-based simulation, a model was created and distributed with their book on CD-ROM. The concept of this model has come to be known as "the Sugarscape model".[1] Since then, the name "Sugarscape" has been used for agent-based models using rules similar to those defined by Epstein & Axtell.
Principles
All Sugarscape models include the agents (inhabitants), the environment (a two-dimensional grid) and the rules governing the interaction of the agents with each other and the environment.
The original model presented by J. Epstein & R. Axtell (considered as the first large scale agent model) is based on a 51x51 cell grid, where every cell can contain different amounts of sugar (or spice). In every step agents look around, find the closest cell filled with sugar, move and metabolize. They can leave pollution, die, reproduce, inherit sources, transfer information, trade or borrow sugar, generate immunity or transmit diseases - depending on the specific scenario and variables defined at the set-up of the model.
Sugar in simulation could be seen as a metaphor for resources in an artificial world through which the examiner can study the effects of social dynamics such as evolution, marital status and inheritance on populations.[3]
Exact simulation of the original rules provided by J. Epstein & R. Axtell in their book can be problematic[4] and it is not always possible to recreate the same results as those presented in Growing Artificial Societies.
Model implementations
The Sugarscape model has had several implementations, some of which are available as free and open source software.
Ascape
An original implementation was developed in Ascape, Java software suitable for agent-based social simulation. The Sugarscape model remains part of the built-in library of models distributed with Ascape.[5]
NetLogo
NetLogo has been used to build Sugarscape models. Three Sugarscape scenarios are included in the NetLogo Models Library: "Immediate Growback", "Constant Growback" and "Wealth Distribution". Besides these three scenarios lies Iain Weaver's Sugarscape NetLogo model, which is part of the User Community Models Library. "It builds on Owen Densmore's NetLogo community model to encompass all rules discussed in Growing Artificial Societies with the exception of the combat rule (although trivial to include, it adds little value to the model)."[6] The model is equipped with rich documentation[7] including instructions for successful replication of the original Sugarscape rules.[4]
SugarScape on steroids
Due to the emergent nature of agent-based models (ABMs), it is critical that the population sizes in the simulations match the population sizes of the dynamic systems being modelled.[8] However, the performance of contemporary agent simulation frameworks has been inadequate to handle such large population sizes and parallel computing frameworks designed to run on computing clusters has been limited by available bandwidth. As computing power increases with Moore's law, the size and complexity of simulation frameworks can be expected to increase. The team of R. M. D’Souza, M. Lysenko and K Rahmani from Michigan Technological University used a Sugarscape model to demonstrate the power of Graphics processing units (GPU) in ABM simulations with over 50 updates per second with agent populations exceeding 2 million.[9]
Mathematica
Another implementation can be found written in Mathematica.[10]
MASON
GMU's MASON project, available under the Academic Free License, also includes an implementation of Sugarscape.[11]
References
- 1 2 Epstein, Joshua M.; Axtell, Robert (October 11, 1996). Growing artificial societies: social science from the bottom up. Brookings Institution Press. pp. 224. ISBN 978-0-262-55025-3.
- ↑ "Sugarscape - Growing Agent-based Artificial Societies". SourceForge. Retrieved 7 November 2010.
- ↑ "Agents at Work". CIO Insight. 1 (27): 43. 1 June 2003. ISSN 1535-0096. Retrieved November 11, 2010.(Retrieved from ABI/Inform Document ID: 347271391)
- 1 2 "Replicating Sugarscape — University of Leicester". Archived from the original on 2012-06-19. Retrieved 18 January 2011.
- ↑ "The Ascape Model Developer's Manual". SourceForge. Retrieved 9 November 2010.
- ↑ "NetLogo User Community Models: Sugarscape". Retrieved 9 November 2010.
- ↑ "The Sugarscape". University of Leicester. Archived from the original on 2017-10-02. Retrieved 19 January 2011.
- ↑ Gilbert, Nigel; Bankes, Steven (2002). "Platforms and Methods for Agent-Based Modelling" (PDF). Proceedings of the National Academy of Sciences. 99 (3): 7197–7198. Bibcode:2002PNAS...99.7197G. doi:10.1073/pnas.072079499. PMC 128584. PMID 12011398.
- ↑ D'Souza, Roshan M.; Lysenko, Mikola; Rahmani, Keyvan (2007). "SugarScape on steroids: simulating over a million agents at interactive rates" (PDF). Proceedings of Agent2007 Conference. Chicago, Il.(See also: presentation slides)
- ↑ "Sugarscape: Agent-Based Modeling - Wolfram Demonstrations Project". Wolfram. Retrieved 18 January 2011.
- ↑ Bigbee, Anthony; Cioffi-Revilla, Claudio; Luke, Sean (2007). Terano, T.; Kita, H.; Deguchi, H.; et al. (eds.). "Replication of Sugarscape Using MASON" (PDF). Agent-Based Approaches in Economic and Social Complex Systems IV: Post-Proceedings of the AESCS International Workshop 2005. Tokyo: Springer.