NetLogo
User interface | |
Paradigm | multi-paradigm: educational, procedural, agent-based, simulation |
---|---|
Designed by | Uri Wilensky |
First appeared | 1999 |
Stable release | 6.0.4
/ June 14, 2018 |
Typing discipline | dynamic |
OS | Cross-platform (JVM) |
License | GPL |
Filename extensions | .nlogo, .nlogo3d, .nls |
Website | ccl |
Influenced by | |
StarLogo, Logo |
NetLogo is an agent-based programming language and integrated modeling environment.
Contents
About[edit]
NetLogo was designed, by Uri Wilensky, in the spirit of the Logo programming language, to be "low threshold and no ceiling". It teaches programming concepts using agents in the form of turtles, patches, links and the observer.[1] NetLogo was designed for multiple audiences in mind, in particular: teaching children in the education community, and for domain experts without a programming background to model related phenomena.[2] Many scientific articles have been published using NetLogo.[3]
The NetLogo environment enables exploration of emergent phenomena. It comes with an extensive models library including models in a variety of domains, such as economics, biology, physics, chemistry, psychology, system dynamics.[4] NetLogo allows exploration by modifying switches, sliders, choosers, inputs, and other interface elements.[5] Beyond exploration, NetLogo allows authoring of new models and modification of existing models.
NetLogo is open source and freely available from the NetLogo website.[6] It is in use in a wide variety of educational contexts from elementary school to graduate school.[7][8][9][10] Many teachers make use of NetLogo in their curricula.[11][12]
NetLogo was designed and authored by Uri Wilensky,[13] director of Northwestern University's Center for Connected Learning and Computer-Based Modeling.[14]
Books[edit]
A number of books have been published about NetLogo.[15]
Books available in print include:
- Steven F. Railsback; Volker Grimm (2011). Agent-Based and Individual-Based Modeling: A Practical Introduction. Cambridge: Princeton University Press. ISBN 978-0-691-13674-5.
- David O'Sullivan; George Perry (2013). Spatial Simulation: Exploring Pattern and Process. Wiley-Blackwell. ISBN 978-1-119-97079-8.
- Nigel Gilbert; Klaus G. Troitzsch (2005). Simulation for the Social Scientist, Second Edition. London: McGraw Hill. ISBN 978-0-335-21600-0.
- Uri Wilensky; William Rand (2015). An introduction to agent-based modeling: Modeling natural, social and engineered complex systems with NetLogo. Cambridge: MIT Press. ISBN 978-0-262-73189-8.
- Britt Andersen (2014). Computational Neuroscience and Cognitive Modeling. London: Sage. ISBN 978-1-4462-4930-7.
Books available online include:
- Jose Vidal (2010). Fundamentals of Multiagent Systems Using NetLogo.
Online courses[edit]
Several massive open online courses are currently being offered that use NetLogo for assignments and/or demonstrations:
- Introduction to Complexity (Melanie Mitchell, Santa Fe Institute)
- Model Thinking (Scott E. Page, University of Michigan)
- Introduction to Comp Sci (Peter Brooks, Stuyvesant High School)
Technical foundation[edit]
NetLogo is free and open source software, under a GPL license.[16] Commercial licenses are also available. It is written in Scala and Java and runs on the Java Virtual Machine.[17] At its core is a hybrid interpreter/compiler that partially compiles user code to JVM bytecode.[18]
NetLogo Web is a version that runs on JavaScript, instead of the JVM, so models may be run in a web browser. It does not have all features of the desktop version.[19]
Examples[edit]
A simple multiagent model in NetLogo is the Wolf-Sheep Predation model,[20] which is shown in the screenshot above. It models the population growth of a predator/prey system over time. It has the following characteristics:
- There are two breed of turtles, called sheep and wolves.
- Sheep and wolves move randomly and have limited energy.
- Wolves and sheep lose energy by moving. If a wolf or sheep has zero energy, it dies.
- Sheep gain energy by eating grass.
- Wolves gain energy by eating sheep.
- Both wolves and sheep can reproduce, sharing energy with their offspring.
HubNet[edit]
HubNet is a technology that uses NetLogo to run participatory simulations in the classroom.[21] In a participatory simulation, a whole group of users takes part in enacting the behavior of a system. Using an individual device, such as a networked computer or Texas Instruments graphing calculator, each user acts as a separate, independent agent. One example of a HubNet activity is "Tragedy of the Commons",[22] which models the economic problem called tragedy of the commons.
References[edit]
- ^ "Types of Agents in NetLogo". The Center for Connected Learning and Computer-Based Modeling (CCL).
- ^ Daniel Kornhauser; William Rand; Uri Wilensky (November 15–17, 2007). Visualization Tools for Agent-Based Modeling in NetLogo (PDF). Agent2007. Chicago, IL. Retrieved October 4, 2012.
- ^ "NetLogo References".
- ^ "Models included with NetLogo".
- ^ "Working with interface elements".
- ^ "Downlaod NetLogo".
- ^ Pratim Sengupta and Uri Wilensky. "Lowering the Learning Threshold: Multi-Agent-Based Models and Learning Electricity" (PDF).CS1 maint: Uses authors parameter (link)
- ^ Uri Wilensky and Michael Novak (2010). "Teaching and Learning Evolution as an Emergent Process: The BEAGLE project (Chapter 10)". In Taylor, R. & Ferrari, M. Epistemology and Science Education: Understanding the Evolution vs. Intelligent Design Controversy (PDF). New York: Routledge.CS1 maint: Uses authors parameter (link) CS1 maint: Uses editors parameter (link)
- ^ Paulo Blikstein, Uri Wilensky (2009). "An Atom is Known by the Company it Keeps: A Constructionist Learning Environment for Materials Science Using Agent-Based Modeling" (PDF). Int J Comput Math Learning. 14 (2): 81–119. doi:10.1007/s10758-009-9148-8.CS1 maint: Uses authors parameter (link)
- ^ Sharona T. Levy, Uri Wilensky. "Students' Learning with the Connected Chemistry (CC1) Curriculum: Navigating the Complexities of the Particulate World" (PDF). J Sci Educ Technol. doi:10.1007/s10956-009-9145-7.CS1 maint: Uses authors parameter (link)
- ^ NetLogo courses.
- ^ Holmes, David M. [davidmholmes.net/Stuy "Comp Sci at Stuyvesant with D. Holmes"] Check
|url=
value (help). Comp Sci at Stuyvesant with D. Holmes. - ^ "Profile: Dr. Uri Wilensky".
- ^ Seth Tisue; Uri Wilensky (October 2004). NetLogo: Design and Implementation of a Multi-Agent Modeling Environment (PDF). Agent2004. Chicago, IL. Retrieved October 4, 2012.
- ^ "NetLogo: Resources and Links".
- ^ "Under what license is NetLogo released? Is the source code available?".
- ^ "NetLogo FAQ (Frequently Asked Questions)". December 14, 2015.
- ^ Forrest Stonedahl; Seth Tisue; Uri Wilensky (2006). Breeding faster turtles: Progress towards a NetLogo compiler (PDF). Agent 2006. Chicago, IL. Retrieved October 22, 2012.
- ^ "NetLogo Web".
- ^ "Wolf Sheep Predation".
- ^ "HubNet Guide". December 14, 2015.
- ^ "Tragedy of the Commons HubNet".