NetLogo

Last updated
NetLogo
Netlogo.png
Netlogo-ui.png
Paradigms multi-paradigm: educational, procedural, agent-based, simulation
Family Lisp
Designed by Uri Wilensky
Developer Northwestern University Center for Connected Learning and Computer-Based Modeling
First appeared1999;26 years ago (1999)
Stable release
6.4.0 [1]   OOjs UI icon edit-ltr-progressive.svg / 17 November 2023;14 months ago (17 November 2023)
Typing discipline Dynamic, strong
Scope Lexical
Implementation language Scala, Java
Platform IA-32, x86-64
OS Cross-platform: JVM
License GPL
Filename extensions .nlogo, .nlogo3d, .nls
Website ccl.northwestern.edu/netlogo
Influenced by
Logo, StarLogo

NetLogo is a programming language and integrated development environment (IDE) for agent-based modeling.

Contents

About

NetLogo was designed by Uri Wilensky, in the spirit of the programming language Logo, to be "low threshold and no ceiling". It teaches programming concepts using agents in the form of turtles, patches, links and the observer. [2] NetLogo was designed with multiple audiences in mind, in particular: teaching children in the education community, and for domain experts without a programming background to model related phenomena. [3] Thousands of scientific articles have been published using NetLogo. [4]

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, and system dynamics. [5] NetLogo allows exploration by modifying switches, sliders, choosers, inputs, and other interface elements. [6] Beyond exploring, NetLogo allows authoring new models and modifying extant models.

NetLogo is open source and freely available from the NetLogo website. [7] It is in use in a wide variety of educational contexts from elementary school to graduate school. [8] [9] [10] [11] Many teachers make use of NetLogo in their curricula. [12] [13] NetLogo is also widely used in scientific research having been used in several thousand research papers. [4]

NetLogo was designed and authored by Uri Wilensky, [14] director of Northwestern University's Center for Connected Learning and Computer-Based Modeling (CCL). [15]

Other features

In addition to agent-based modeling, NetLogo also includes basic support for dynamic system modeling.

Books

Several books have been published about NetLogo. [16]

Books available in print include:

Books available online include:

Online courses

As of 2019, several massive open online courses are being offered that use NetLogo for assignments and/or demonstrations:

Technical foundation

NetLogo is free and open-source software, released under a GNU General Public License (GPL). [17] Commercial licenses are also available. It is written in Scala and Java and runs on the Java virtual machine (JVM). [18] At its core is a hybrid interpreter/compiler that partially compiles user code to JVM bytecode. [19]

NetLogo Web is a version that runs on JavaScript, instead of the JVM, so models may be run in a web browser. However, it does not have all features of the desktop version, and the official website advises that the "desktop version of NetLogo is recommended for most uses". [20]

Examples

A simple multiagent model in NetLogo is the Wolf-Sheep Predation model, [21] which is shown in the screenshot above. It models the population growth of a predator/prey system over time. It has the following characteristics:

HubNet

HubNet is a technology that uses NetLogo to run participatory simulations in the classroom. [22] 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, [23] which models the economic problem called the tragedy of the commons.

See also

Related Research Articles

<span class="mw-page-title-main">Logo (programming language)</span> Computer programming language

Logo is an educational programming language, designed in 1967 by Wally Feurzeig, Seymour Papert, and Cynthia Solomon. Logo is not an acronym: the name was coined by Feurzeig while he was at Bolt, Beranek and Newman, and derives from the Greek logos, meaning 'word' or 'thought'.

<span class="mw-page-title-main">Seymour Papert</span> MIT mathematician, computer scientist, and educator

Seymour Aubrey Papert was a South African-born American mathematician, computer scientist, and educator, who spent most of his career teaching and researching at MIT. He was one of the pioneers of artificial intelligence, and of the constructionist movement in education. He was co-inventor, with Wally Feurzeig and Cynthia Solomon, of the Logo programming language.

<span class="mw-page-title-main">Evanston, Illinois</span> City in Illinois, United States

Evanston is a city in Cook County, Illinois, United States, situated on the North Shore along Lake Michigan. A suburb of Chicago, Evanston is 12 miles (19 km) north of Downtown Chicago, bordered by Chicago to the south, Skokie to the west, Wilmette to the north, and Lake Michigan to the east. Evanston had a population of 78,110 as of 2020.

REST is a software architectural style that was created to guide the design and development of the architecture for the World Wide Web. REST defines a set of constraints for how the architecture of a distributed, Internet-scale hypermedia system, such as the Web, should behave. The REST architectural style emphasises uniform interfaces, independent deployment of components, the scalability of interactions between them, and creating a layered architecture to promote caching to reduce user-perceived latency, enforce security, and encapsulate legacy systems.

<span class="mw-page-title-main">Multi-agent system</span> Built of multiple interacting agents

A multi-agent system is a computerized system composed of multiple interacting intelligent agents. Multi-agent systems can solve problems that are difficult or impossible for an individual agent or a monolithic system to solve. Intelligence may include methodic, functional, procedural approaches, algorithmic search or reinforcement learning. With advancements in Large language model (LLMs), LLM-based multi-agent systems have emerged as a new area of research, enabling more sophisticated interactions and coordination among agents.

An agent-based model (ABM) is a computational model for simulating the actions and interactions of autonomous agents in order to understand the behavior of a system and what governs its outcomes. It combines elements of game theory, complex systems, emergence, computational sociology, multi-agent systems, and evolutionary programming. Monte Carlo methods are used to understand the stochasticity of these models. Particularly within ecology, ABMs are also called individual-based models (IBMs). A review of recent literature on individual-based models, agent-based models, and multiagent systems shows that ABMs are used in many scientific domains including biology, ecology and social science. Agent-based modeling is related to, but distinct from, the concept of multi-agent systems or multi-agent simulation in that the goal of ABM is to search for explanatory insight into the collective behavior of agents obeying simple rules, typically in natural systems, rather than in designing agents or solving specific practical or engineering problems.

The Northwestern University Dance Marathon, commonly known as NUDM, is a philanthropic dance marathon held every March at Northwestern University in Evanston, Illinois. Founded in 1975, NUDM is one of the nation's most established and largest entirely student-run philanthropies. NUDM is one of the only annual Dance Marathons in the country to continually change its primary beneficiary. NUDM has raised over $23 million for its beneficiaries in its 50-year history, and involves over 1,000 students participating as dancers and committee members. Since 1997, the Evanston Community Foundation has been NUDM's secondary beneficiary.

<span class="mw-page-title-main">Evanston Township High School</span> School in Evanston, Illinois, United States

Evanston Township High School (ETHS) is a public high school in Evanston, Illinois. The campus is located in a northern suburb of Chicago along the Lake Michigan shore. ETHS was established in 1883 and serves the city of Evanston and a small portion of the neighboring village of Skokie for a total district population of approximately 78,000.

The belief–desire–intention software model (BDI) is a software model developed for programming intelligent agents. Superficially characterized by the implementation of an agent's beliefs, desires and intentions, it actually uses these concepts to solve a particular problem in agent programming. In essence, it provides a mechanism for separating the activity of selecting a plan from the execution of currently active plans. Consequently, BDI agents are able to balance the time spent on deliberating about plans and executing those plans. A third activity, creating the plans in the first place (planning), is not within the scope of the model, and is left to the system designer and programmer.

<span class="mw-page-title-main">Constructionism (learning theory)</span> Learning theory involving the construction of mental models

Constructionist learning is the creation by learners of mental models to understand the world around them. Constructionism advocates student-centered, discovery learning where students use what they already know to acquire more knowledge. Students learn through participation in project-based learning where they make connections between different ideas and areas of knowledge facilitated by the teacher through coaching rather than using lectures or step-by-step guidance. Further, constructionism holds that learning can happen most effectively when people are active in making tangible objects in the real world. In this sense, constructionism is connected with experiential learning and builds on Jean Piaget's epistemological theory of constructivism.

The history of Northwestern University can be traced back to a May 31, 1850, meeting of nine prominent Chicago businessmen who shared a desire to establish a university to serve the former Northwest Territory. On January 28, 1851, the Illinois General Assembly granted a charter to the Trustees of the North-Western University making it the first recognized university in Illinois.[a] While the original founders were devout Methodists and affiliated the university with Methodist Episcopal Church, they were committed to non-sectarian admissions.

The campus of Northwestern University encompasses two campuses in Evanston, Illinois and Chicago, Illinois, United States. There is an additional campus located in Doha, Qatar which offers bachelor's and master's degrees. The original Evanston campus has witnessed approximately 150 buildings rise on its 240 acres (0.97 km2) since the first building opened in 1855. The downtown Chicago campus of approximately 25 acres (100,000 m2) is home to the schools of medicine and law was purchased and constructed in the 1920s and 1930s.

Agent-based social simulation consists of social simulations that are based on agent-based modeling, and implemented using artificial agent technologies. Agent-based social simulation is a scientific discipline concerned with simulation of social phenomena, using computer-based multiagent models. In these simulations, persons or group of persons are represented by agents. MABSS is a combination of social science, multiagent simulation and computer simulation.

The Handle System is a proprietary registry assigning persistent identifiers, or handles, to information resources, and for resolving "those handles into the information necessary to locate, access, and otherwise make use of the resources". As with handles used elsewhere in computing, Handle System handles are opaque, and encode no information about the underlying resource, being bound only to metadata regarding the resource. Consequently, the handles are not rendered invalid by changes to the metadata.

<span class="mw-page-title-main">Computational sustainability</span>

Computational sustainability is an emerging field that attempts to balance societal, economic, and environmental resources for the future well-being of humanity using methods from mathematics, computer science, and information science fields. Sustainability in this context refers to the world's ability to sustain biological, social, and environmental systems in the long term. Using the power of computers to process large quantities of information, decision making algorithms allocate resources based on real-time information. Applications advanced by this field are widespread across various areas. For example, artificial intelligence and machine learning techniques are created to promote long-term biodiversity conservation and species protection. Smart grids implement renewable resources and storage capabilities to control the production and expenditure of energy. Intelligent transportation system technologies can analyze road conditions and relay information to drivers so they can make smarter, more environmentally-beneficial decisions based on real-time traffic information.

<span class="mw-page-title-main">Sarit Kraus</span> Israeli computer scientist

Sarit Kraus is a professor of computer science at the Bar-Ilan University in Israel. She was named the 2020-2021 ACM Athena Lecturer in recognition of her contributions to artificial intelligence, notably to multiagent systems, human-agent interaction, autonomous agents and non-monotonic reasoning, as well as her leadership in these fields.

David Leigh Waltz was a computer scientist who made significant contributions in several areas of artificial intelligence, including constraint satisfaction, case-based reasoning and the application of massively parallel computation to AI problems. He held positions in academia and industry and at the time of his death, was a professor of Computer Science at Columbia University where he directed the Center for Computational Learning Systems.

Eclipse Deeplearning4j is a programming library written in Java for the Java virtual machine (JVM). It is a framework with wide support for deep learning algorithms. Deeplearning4j includes implementations of the restricted Boltzmann machine, deep belief net, deep autoencoder, stacked denoising autoencoder and recursive neural tensor network, word2vec, doc2vec, and GloVe. These algorithms all include distributed parallel versions that integrate with Apache Hadoop and Spark.

Edith Elkind is an Estonian computer scientist and the Ginni Rometty Professor of Computer Science at Northwestern University in Evanston. She is known for her work in algorithmic game theory and computational social choice.

<span class="mw-page-title-main">GAMA Platform</span> Simulation platform

GAMA is a simulation platform with a complete modelling and simulation integrated development environment (IDE) for writing and experimenting spatially explicit agent-based models.

References

  1. "Release 6.4.0". 17 November 2023. Retrieved 19 November 2023.
  2. Wilensky, Uri (1999–2019). "Types of Agents in NetLogo". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.
  3. Kornhauser, Daniel; Rand, William; Wilensky, Uri (November 15–17, 2007). Visualization Tools for Agent-Based Modeling in NetLogo (PDF). Agent2007. The Center for Connected Learning and Computer-Based Modeling (CCL). Chicago, Illinois: Northwestern University. Retrieved 2019-05-03.
  4. 1 2 Wilensky, Uri (1999–2025). "NetLogo References". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2025-01-24.
  5. Wilensky, Uri (1999–2025). "NetLogo Models Library". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.
  6. Wilensky, Uri (1999–2025). "Interface Guide". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2020-01-24.
  7. Wilensky, Uri (1999–2019). "Download NetLogo". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.
  8. Sengupta, Pratim; Wilensky, Uri (2011). "Lowering the Learning Threshold: Multi-Agent-Based Models and Learning Electricity" (PDF). The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.
  9. Wilensky, Uri; Novak, Michael (2010). "Teaching and Learning Evolution as an Emergent Process: The BEAGLE project (chapter 10)". In Taylor, R.; Ferrari, M. (eds.). Epistemology and Science Education: Understanding the Evolution vs. Intelligent Design Controversy (PDF). New York: Routledge.
  10. Blikstein, Paulo; Wilensky, Uri (2009). "An Atom is Known by the Company it Keeps: A Constructionist Learning Environment for Materials Science Using Agent-Based Modeling (CCL)" (PDF). International Journal of Computers for Mathematical Learning. 14 (2): 81–119. doi:10.1007/s10758-009-9148-8. S2CID   10500589.
  11. Levy, Sharona T.; Wilensky, Uri (2009). "Students' Learning with the Connected Chemistry (CC1) Curriculum: Navigating the Complexities of the Particulate World" (PDF). Journal of Science Education and Technology. 18 (3): 243–254. Bibcode:2009JSEdT..18..243L. doi:10.1007/s10956-009-9145-7. S2CID   62526922.
  12. Wilensky, Uri (1999–2019). "University, secondary, and online courses that utilize NetLogo". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.
  13. Holmes, David M. "Comp Sci at Stuyvesant with D. Holmes". Professional web site for David Holmes. New York City, New York, United States. Retrieved 2019-05-03.
  14. "Profile: Dr. Uri Wilensky".
  15. Tisue, Seth; Wilensky, Uri (October 2004). NetLogo: Design and Implementation of a Multi-Agent Modeling Environment (PDF). Agent2004. Chicago, Illinois. Retrieved October 4, 2012.
  16. Wilensky, Uri (1999–2019). "NetLogo: Resources and Links". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.
  17. "Under what license is NetLogo released? Is the source code available?".
  18. "NetLogo Frequently Asked Questions (FAQ)". December 14, 2015.
  19. Stonedahl, Forrest; Tisue, Seth; Wilensky, Uri (2006). Breeding faster turtles: Progress towards a NetLogo compiler (PDF). Agent 2006. Chicago, Illinois. Retrieved October 22, 2012.
  20. "NetLogo Web".
  21. "Wolf Sheep Predation".
  22. "HubNet Guide". December 14, 2015.
  23. Wilensky, Uri (2002). "Tragedy of the Commons HubNet". The Center for Connected Learning and Computer-Based Modeling (CCL). Evanston, Illinois: Northwestern University. Retrieved 2019-05-03.