Fact-checked by Grok 2 weeks ago

NetLogo

NetLogo is a multi-agent programmable modeling environment designed for simulating natural and social phenomena, particularly complex systems that emerge from the bottom-up interactions of numerous individual agents. It enables users to explore connections between micro-level behaviors of agents and macro-level patterns, supporting both interactive exploration of simulations and custom model creation through a simple, Logo-based programming language. Authored by Uri Wilensky in 1999, NetLogo has been under continuous development at Northwestern University's Center for Connected Learning and Computer-Based Modeling (CCL), evolving as an extension of earlier languages like StarLogo to facilitate cross-platform use via the Java Virtual Machine. At its core, NetLogo features three primary agent types: turtles, mobile entities that represent individuals such as animals, vehicles, or people moving in a two-dimensional world; patches, the static grid points forming the environment like terrain or cells; and , dynamic connections that model relationships between turtles or between turtles and patches. Users program agent behaviors using primitives for movement, interaction, and observation, allowing simulations to run in parallel across thousands of agents without explicit synchronization. The environment includes an extensive Models Library with hundreds of pre-built simulations spanning biology, physics, economics, and social sciences, alongside tools like BehaviorSpace for systematic experimentation and analysis. As a free and open-source tool, NetLogo emphasizes accessibility, with a low threshold for beginners yet no ceiling for advanced applications. NetLogo is widely employed in education to teach computational thinking, scientific inquiry, and complex systems concepts, often integrated into curricula for K-12 through university levels. In research, it supports investigations into emergent phenomena, such as flocking behaviors, epidemic spreading, or market dynamics, and has been extended through extensions for 3D modeling, network analysis, and integration with other software. Its design philosophy prioritizes multiple levels of description—agent-level rules alongside observer perspectives—making it suitable for interdisciplinary work in fields like , , and .

Introduction and History

Overview

NetLogo is an open-source, multi-agent programmable modeling environment for simulating natural, social, and engineered phenomena. It allows users to construct models where populations of decentralized agents interact locally to generate complex emergent behaviors, making it particularly suited for exploring systems in fields like , , and . The environment balances simplicity and depth, targeting educators, researchers, and students from through graduate levels. Its intuitive interface lowers the entry barrier for beginners while offering advanced customization for expert users, fostering and scientific inquiry across educational and professional contexts. At its core, NetLogo features as mobile agents that navigate the simulation space, patches as static grid cells forming the underlying landscape, links for representing connections between agents, and an observer perspective for controlling and monitoring the overall model. Evolving from the Logo programming language traditions, it emphasizes visual and interactive programming. As under , NetLogo is actively maintained by Northwestern University's for Connected Learning and Computer-Based Modeling (CCL).

Development History

NetLogo was created in 1999 by Uri Wilensky at Northwestern University's for Connected Learning and Computer-Based Modeling (CCL) as part of initiatives to democratize agent-based modeling of complex systems for researchers, educators, and students. The software's initial public release, version 1.0, arrived in April 2002, marking the start of its widespread adoption. From its launch, NetLogo has undergone continuous at CCL, initially implemented in for cross-platform compatibility. Key milestones include the addition of support in version 5.0, released in February 2012, which expanded visualization options for spatial simulations. Version 6.0, launched in 2017, introduced a partial rewrite using alongside , enhancing extensibility, and debuted a enabling models to run in browsers via compilation. The most recent major update, version 7.0.0, was released in September 2025, followed by version 7.0.2 in October 2025, which included improvements to the , updates to the model for better , and revisions to several models in the built-in . Over its more than 25 years of evolution, NetLogo has benefited from institutional support within Northwestern's Connected Learning framework and active contributions from a global open-source community via . NetLogo's influence extends to , where it has been employed in over 10,000 papers across disciplines like , social sciences, and , as well as in numerous educational programs to teach and systems dynamics. In 2025, Uri Wilensky was awarded the Yidan Prize for Education Research for his pioneering work in agent-based modeling and complex systems literacy, much of which centers on NetLogo. It builds on the language tradition, refining multi-agent paradigms from earlier tools like StarLogo to prioritize .

Core Features

Agent-Based Modeling Primitives

NetLogo's agent-based modeling is built upon four primary types of agents that represent the fundamental entities in simulations: , patches, , and . are mobile agents that move across the , each occupying a position defined by decimal coordinates (xcor, ycor), and they can be specialized into to represent distinct categories, such as sheep or wolves, using the breed primitive (e.g., breed [sheep a-sheep]). Patches form a fixed two-dimensional representing the static , with each patch at integer coordinates (pxcor, pycor) and capable of holding variables like color or chemical levels. are dynamic connections between , modeling relationships or networks without independent positions, and they automatically dissolve if an endpoint dies. The serves as the top-level controller, lacking a and issuing commands to other agents while overseeing the . At the core of NetLogo's design is a decentralized modeling paradigm, where complex global behaviors emerge bottom-up from simple, local rules applied independently to each agent, eschewing central control to mimic natural systems. This approach encourages modularity, with agentsets—collections like turtles or patches—processed in random order during execution to avoid artificial synchronization biases. Key primitives enable the creation, manipulation, and querying of agents. Commands such as create-turtles n instantiate n new turtles at the origin with random headings and colors (e.g., create-turtles 50), while breed-specific variants like create-sheep 20 populate specialized agents. The ask command delegates instructions to an agentset, allowing parallel execution of behaviors (e.g., ask turtles [ set color green forward 1 ] directs all turtles to turn green and move forward one unit). Movement is handled by primitives like forward n or back n, which advance or retreat a turtle by n units along its heading. Reporters provide data, such as count agentset to tally agents (e.g., count turtles returns the number of turtles) or distance target to measure Euclidean distance to another agent or location (e.g., distance patch 5 0). These primitives, run by appropriate agents (e.g., turtles for movement, observer for creation), form the syntax for defining procedures in NetLogo's Logo dialect. Spatial modeling in NetLogo revolves around a grid-based centered at (0, 0), with the world size configurable (defaulting to 33x33 patches, or -16 to 16). The can be set to a (wrapping edges seamlessly), unbounded, or cylindrical variants via the settings, enabling simulations of periodic boundaries like planetary surfaces. Patch neighborhoods support local interactions, using neighborhoods (8 surrounding patches, via neighbors) for inclusive adjacency or von Neumann neighborhoods (4 orthogonal patches, via neighbors4) for cross-like proximity, facilitating rules like or predation. Time in NetLogo advances through discrete , managed by the tick command to increment a global counter and update views or plots, or tick-advance dt for finer-grained continuous time (e.g., tick-advance 0.1). The reset-ticks initializes the counter at setup. In basic models, actions occur randomly within each tick via ask, but advanced versions leverage the Time extension for event-based scheduling with like schedule to queue procedures at specific future ticks, supporting irregular or priority-driven dynamics.

User Interface and IDE

NetLogo's user is organized into multiple tabs that support the creation, editing, and execution of agent-based models. The tab displays the model's world view and contains draggable widgets, including sliders for adjusting global variables, switches for toggling boolean states, plots for graphing data over time, and monitors for displaying real-time values from agents or the environment. These widgets can be aligned precisely using the "Snap to Grid" option, enabling users to build interactive control panels without coding the layout. The Code tab houses an integrated where users write procedures in the NetLogo language, featuring in both and themes to improve and catch errors early. The Info tab provides space for model documentation, including descriptions, instructions, and credits, which is essential for sharing and understanding models. Additionally, a view option is accessible via the Tools menu, allowing users to visualize and interact with three-dimensional extensions of models. Model building follows a straightforward workflow: users drag and configure widgets onto the Interface tab to define user inputs and outputs, then implement the logic by writing procedures such as setup for initialization and go for iterative steps in the Code tab. Execution begins by clicking buttons linked to these procedures or using the Command Center, an interactive console at the bottom of the Interface tab for entering and running ad-hoc commands to test model behavior. Debugging is facilitated through the for executing isolated commands and observing effects, along with agent-specific monitors—such as , , or monitors—that allow inspection and modification of individual variables. The editor highlights syntax errors, and users can step through code indirectly by advancing ticks manually or using like wait for pauses during runs. Visualization tools include speed controls via a slider to adjust the simulation pace from slow (for detailed observation) to fast (for quick overviews), and view update modes that toggle between continuous redrawing for smooth animation or discrete updates tied to model ticks for precise event-based rendering. Export options support capturing the view as images through "File > Export View" or recording videos using the Vid extension, which generates H.264-encoded MP4 files for sharing simulations. For broader accessibility, NetLogo integrates with a web runtime called NetLogo Web, enabling models to run directly in modern browsers without installation, including on mobile devices. Users can export desktop models as via "File > As NetLogo Web" for browser execution, though this version imposes limitations, such as incomplete support for extensions beyond a bundled set (e.g., no file or movie primitives in some cases).

Technical Foundation

Programming Language

NetLogo's programming language is a descendant of the Logo programming language, originally developed in the late 1960s for educational purposes, and extends its block-structured, imperative paradigm to support multi-agent simulations. Unlike traditional Logo, which typically features a single "turtle" for graphics and movement, NetLogo enables the creation and management of thousands of autonomous agents, such as turtles and patches, to model complex emergent behaviors in natural and social systems. This heritage emphasizes accessibility, with a "low threshold, high ceiling" design that allows beginners to start with simple commands while enabling advanced users to build sophisticated models through procedural extensions. At its core, NetLogo syntax revolves around defining procedures using the to keyword followed by the procedure name and optional inputs, with the body enclosed in a block ended by end; for example, a basic setup procedure might be written as to setup clear-all create-turtles 100 end. Variables are declared globally with globals [list-of-variables], such as globals [population], or owned by specific breeds of agents, like turtles-own [energy speed] for turtle-specific attributes, promoting organized data management across agent populations. The language distinguishes between commands, which perform actions without returning values (e.g., forward 1 or set color red), and reporters, which compute and return values for use in expressions (e.g., count turtles or mean [energy] of turtles). This separation ensures clear semantics, where reporters can be embedded in other commands or reporters, facilitating concise model logic. A hallmark of NetLogo's semantics is its approach to parallelism through the ask command, which applies a block of instructions concurrently to an agentset—a collection of agents filtered by conditions, such as ask turtles with [color = red] [forward 1 set energy energy - 1]. Agentsets are processed in random order to avoid unintended biases in simulations, simulating concurrency without true multithreading; this deterministic yet non-sequential execution allows agents to act independently, mimicking real-world decentralized systems while maintaining reproducibility. For instance, (the top-level context) can initiate model dynamics by issuing ask commands to breeds, enabling emergent patterns from local interactions. Control structures in NetLogo include familiar imperative elements adapted for contexts: loops via repeat count [commands] for fixed iterations, such as repeat 10 [forward 1], or while [condition] [commands] for conditional repetition, like while [any? turtles with [energy < 0]] [ask turtles [set energy 0]]. Conditionals use if condition [commands] for single-branch decisions or ifelse condition [then-commands] [else-commands] for branching, often applied within ask blocks to govern behaviors, e.g., ask turtles [ifelse energy > 50 [set color green] [set color red]]. Reporters integrate seamlessly into these structures, such as using mean [energy] of turtles in a while condition to monitor aggregate states. NetLogo's extensibility stems from its support for user-defined procedures, declared as commands with to or as reporters with to-report (ending with report value), allowing modular across models. Breed-specific procedures enable tailored behaviors, where for one (e.g., to go-sheep) can reference breed-owned variables without classes or , fostering agent-oriented programming; for example, ask sheep [set energy energy - 1 if energy < 0 [die]] confines logic to sheep agents. This design avoids object-oriented complexity, prioritizing simplicity while accommodating hierarchical agent structures through ownership and custom extensions.

Implementation and Platforms

NetLogo's core implementation is primarily written in since version 6.0, incorporating some legacy components for interoperability; the entire codebase compiles to (JVM) bytecode, enabling high-performance execution across compatible environments. The runtime environment utilizes an interpreter to execute NetLogo procedures, with performance optimizations introduced in version 5.0 and refined in subsequent releases through partial compilation of model code to JVM bytecode, allowing for faster simulation runs without full just-in-time compilation. This hybrid approach balances the flexibility of interpreted execution for rapid prototyping with compiled efficiency for demanding computations. NetLogo supports desktop applications on Windows (versions 11 through Vista), macOS, and Linux distributions, distributing bundled Java runtimes to ensure broad compatibility. For web-based use, NetLogo Web offers a platform-independent alternative that compiles NetLogo models directly to JavaScript, executing simulations within modern browsers via HTML5 and JavaScript engines, thus extending accessibility to devices without JVM support. Version compatibility is maintained through comprehensive transition guides, such as those for upgrading from 5.x to 6.x and 6.x to 7.x, which detail syntax adjustments and API changes; notably, version 7.0 introduced the extensible .nlogox file format (and .nlogox3d for 3D models), while preserving the ability to load and convert older .nlogo and .nlogo3d files. Performance considerations focus on scalability for agent-based models, where optimized implementations can manage populations of up to millions of agents by leveraging efficient data structures and user-configurable memory allocation—via JVM heap size adjustments in netlogo.conf or command-line flags—to handle simulations requiring hundreds of megabytes to gigabytes of RAM. As an open-source project, NetLogo's source code is maintained in a public GitHub repository, facilitating community contributions through pull requests, issue reporting, and collaborative development under the GPL license.

Modeling Resources

Models Library

The NetLogo Models Library is a curated collection of pre-installed example models that accompany every NetLogo download, enabling users to immediately explore agent-based simulations without building from scratch. These models demonstrate diverse applications of the platform, from natural phenomena to social dynamics, and are designed primarily as educational tools to foster understanding of complex systems through experimentation. All models in the library are open-source, allowing users to inspect, modify, and extend the code for their own purposes, thereby serving as practical starting points for learning NetLogo's primitives and modeling techniques. The library is structured into distinct sections to support different user needs: Sample Models, which consist of rigorously reviewed, high-quality demonstrations of effective coding and documentation; Curricular Models, which align with educational curricula from the Center for Connected Learning and Computer-Based Modeling (CCL) to integrate modeling into classroom activities; Code Examples, which isolate and illustrate specific NetLogo language features and primitives; and IABM Textbook models, a set of simulations tied to the textbook An Introduction to Agent-Based Modeling: Modeling Natural, Social, and Engineered Complex Systems with NetLogo by and , providing step-by-step implementations of key concepts in agent-based modeling. Within the Sample Models section, models are grouped into thematic categories such as Biology, Social Science, Physics, and Mathematics to highlight interdisciplinary applications. The Biology category includes models like , which implements where wolves hunt sheep, sheep consume grass that regrows over time, and populations exhibit oscillatory patterns influenced by energy parameters; and , simulating foraging behavior where ants follow and deposit pheromone trails to locate food sources efficiently, demonstrating emergent self-organization. In Social Science, representative examples are , a grid-based simulation of vehicle movement through intersections with traffic lights and phases, revealing how individual driver rules lead to global traffic jams or smooth flow; and , where agents on a grid update opinions based on neighbors, modeling the spread of ideas or political polarization. The Physics category features , which models ideal gas behavior with particles colliding elastically to illustrate kinetic theory concepts like pressure and temperature; while Mathematics includes , a cellular automaton based on rules that generates complex patterns from simple initial conditions, and models exploring chaos such as the to show sensitivity to initial parameters. These categories collectively cover over 150 models, emphasizing conceptual exploration over exhaustive listings. Curricular Models extend this foundation with education-oriented examples, such as Epidemiology variants that simulate disease transmission in populations to teach public health concepts, often incorporating sliders for vaccination rates and recovery times. Code Examples focus on technical showcases, like Ask Example to demonstrate agent scheduling or Plotting Example for visualizing data trends, aiding programmers in mastering syntax without full simulations. The IABM Textbook section mirrors chapters from the referenced book, with models like Segregation adapting Schelling's spatial segregation theory, where agents relocate based on neighbor similarity thresholds to reveal unintended clustering outcomes. With the release of NetLogo 7.0 in 2025, the Models Library underwent revisions including compatibility adjustments for the new extensible .nlogox file format and the addition of several updated models to reflect modern extensions and best practices.

Modeling Commons

The Modeling Commons is a web-based collaborative platform hosted by the Center for Connected Learning and Computer-Based Modeling (CCL) at Northwestern University, designed for sharing and discussing user-contributed agent-based models created in NetLogo. Launched around 2010, it serves as an open repository where modelers from around the world can upload, download, modify, and create variations of models, promoting iterative development and knowledge exchange within the NetLogo community. Key features of the Modeling Commons include built-in version control, accessible via a "history" tab that retains all revisions of a model, allowing users to review or restore earlier versions. Forking is supported through a "family" tab that visualizes parent-child relationships among models, enabling seamless remixing and evolution of simulations. Users can search models by name, keywords, or social tags; upload directly from the NetLogo IDE using the "File > Upload to Modeling Commons" option; and run models instantly in a via integration with NetLogo Web. A commenting system facilitates discussions, feedback, and collaboration among registered users, while downloads are available even to unregistered visitors. As of 2025, the platform hosts over 2,000 models, covering niche applications in areas such as , , , and simulations, providing a rich resource for researchers and educators beyond the curated built-in Models Library. The community-driven nature encourages remixing of existing models—such as variations on foundational simulations—with requirements for proper citations to original creators, fostering ethical collaboration and educational reuse. Models are downloadable in standard NetLogo formats for direct import into the , supporting seamless workflow integration.

Extensions and Advanced Tools

HubNet

HubNet is a client-server architecture integrated into NetLogo for enabling multi-user participatory simulations, where multiple participants can control individual agents or elements of a model in to explore emergent phenomena. Introduced in as part of the Participatory Simulations Project, it allows users to engage directly with complex systems, such as or , fostering and discussion. The system supports a central running the NetLogo model and distributed clients that receive updates and send inputs, promoting decentralized interaction without requiring participants to manage the full simulation. To set up a HubNet activity, the teacher or facilitator launches NetLogo on a networked computer as the , either in full mode for visualization or headless for remote operation. Activities are loaded from .nlogo files in the Models Library's HubNet Activities folder, and the session is initialized via the hubnet-reset , which prompts for a session name and opens the HubNet Control Center for managing connections. Clients, traditionally Java-based applications, connect over the local using the session name; participants log in with unique user-ids to receive personalized interfaces. Recent developments include support for web-based clients through HubNet Web, a browser-compatible platform that extends access to tablets, mobiles, and Chromebooks without installations. NetLogo includes several built-in HubNet activities to demonstrate core concepts, such as the Traffic Grid (also known as ), where students control individual cars or traffic lights to simulate and observe emergent traffic patterns. Another example is the Disease activity, in which participants act as agents in a , making choices that affect disease transmission rates and allowing of spread dynamics on the . Additional activities cover topics like resource management in the and polling for collective . These can be extended or customized by authors using HubNet-specific primitives in NetLogo code, such as hubnet-send to transmit data (e.g., position updates or variable values) to a specific client by user-id, or hubnet-broadcast to send information to all connected clients simultaneously. In educational and research settings, HubNet facilitates classroom discussions on by enabling participants to embody agents, input decisions via client interfaces (e.g., sliders or buttons), and collectively generate data for analysis, such as synchronized plots of system-wide behaviors. It supports collection from participants, allowing the to aggregate inputs for immediate and on strategies like in simulations. Updates in NetLogo 7.0 include improved citations and links in HubNet models. The introduction of HubNet provides enhanced synchronization for clients, enabling smoother multi-device interactions while maintaining compatibility with traditional setups.

Other Extensions

NetLogo extensions provide a modular way to extend the core functionality of the language by adding new primitives, implemented primarily in or for the desktop version and for NetLogo . To incorporate an extension, users declare it at the top of the model's code tab using the extensions directive, such as extensions [gis], which makes the extension's commands and reporters available throughout the model. Extensions are loaded dynamically from locations including the model's directory, the NetLogo installation's extensions folder, or the user's home directory, ensuring flexibility in deployment. Several key extensions address specialized needs in modeling. The GIS extension enables integration of geospatial data, allowing users to import vector formats like shapefiles for points, lines, and polygons, as well as raster data, and link them to the NetLogo world for spatial analysis. The Network (NW) extension facilitates graph-based modeling with primitives for creating networks, computing metrics like centrality, and algorithms such as shortest path using libraries like JUNG and JGraphT. As of NetLogo 7.0 (September 2025), it supports additional import formats including GEXF, GDF, GML, Pajek NET, UCINET DL, and Netdraw VNA, with fixes for GraphML handling. For numerical computations, the Matrix extension introduces a 2D array data type supporting operations like transposition, inversion, eigenvalues, and multiplication, useful for linear algebra in agent-based simulations. The Sound extension adds audio capabilities, including playback of tones, MIDI notes, and WAV files, to enhance models with auditory feedback. Similarly, the Table extension handles tabular data structures, supporting import/export of CSV files, sorting, grouping, and statistical functions for data manipulation. The Speech extension, bundled since NetLogo 7.0, enables text-to-speech functionality for models. New extensions introduced in NetLogo 7.0 include the extension, which allows retrieval of bundled files (e.g., images, CSVs) packaged with models; the bspace extension, enabling programmatic creation and execution of BehaviorSpace experiments from code; and SimpleR, for running scripts and integrating statistical within NetLogo models. BehaviorSpace, while not a traditional extension, is a built-in for conducting systematic experiments by running models in batch mode, varying parameters across sweeps, and exporting results to tables for , such as sensitivity testing or simulations. It integrates seamlessly with the , allowing definition of experiments via a graphical and of repetitive runs. The extension, available as a separate NetLogo 3D application, supports three-dimensional modeling with features like extruded patches, 3D turtle movement, and , though it remains less mature than the core. Extensions can be installed through NetLogo's Extension Manager, which lists available packages for one-click download and updates, or manually by placing files (for ) or JS modules (for ) in appropriate directories. Compatibility varies: most extensions work in the , but NetLogo Web supports a subset, including Matrix, Table, and Sound, with ongoing expansions for browser-based modeling. Users should verify version compatibility, as extensions target specific NetLogo releases like 7.0.2.

Applications

In Research

NetLogo has found extensive application in academic and scientific research, particularly for agent-based modeling of complex adaptive systems, with the foundational NetLogo paper cited over 5,000 times on Google Scholar as of 2023. Researchers leverage its multi-agent framework to explore emergent behaviors that arise from simple local interactions, making it suitable for hypothesis testing and theoretical exploration in fields where traditional equation-based models fall short. Its adoption spans thousands of peer-reviewed publications, demonstrating its role in advancing understanding of dynamic processes in natural and social systems. In the social sciences, NetLogo facilitates simulations of opinion dynamics and spatial segregation, notably through implementations of Thomas Schelling's 1971 model, where agents adjust locations based on neighborhood preferences to study unintended social patterns like urban residential sorting. In , it supports epidemiological modeling via susceptible-infected-recovered () frameworks and evolutionary dynamics, enabling visualization of disease spread and population adaptations, as seen in studies of responses where agents represent cells interacting in a virtual tissue. Physics applications include diffusion processes and flocking behaviors, with models simulating particle movement or bird-like agents aligning velocities to demonstrate principles. In , NetLogo models and robotic swarms, allowing researchers to test decentralized control strategies for congestion management or multi-robot coordination without physical prototypes. Key advantages of NetLogo in include its support for of models through a simple Logo-based syntax, which accelerates iterative experimentation and visualization of emergent phenomena that might otherwise require complex coding. It integrates seamlessly with statistical tools like and via extensions such as the R-Extension and Python extension, enabling advanced and validation of simulation outputs against empirical datasets. Notable examples include its use at the for complex systems , where it underpins studies of adaptive behaviors in economic and ecological contexts; applications in climate modeling to simulate agent-driven land-use changes and feedback loops; and explorations of agent behaviors in scenarios. Advanced features like BehaviorSpace are commonly employed for conducting simulations and large-scale parameter sweeps, facilitating robust statistical validation of models against real-world data. Despite these strengths, NetLogo is not optimized for ultra-high-performance scenarios involving millions of agents or , where its Java-based implementation may encounter performance bottlenecks; researchers often use it for exploratory phases before transitioning to specialized tools like Repast or for production-scale computations.

In Education

NetLogo's pedagogical design emphasizes accessibility and depth, featuring a "low threshold, high ceiling" approach that allows novices to quickly grasp intuitive, visual modeling while enabling advanced users to incorporate complex mathematical and scientific concepts. This structure supports , where students actively explore emergent phenomena through agent-based simulations, fostering and hypothesis testing across disciplines. The platform integrates seamlessly into K-12 curricula, such as (PLTW) programs in , as well as middle and high school science classes aligned with (NGSS) for . At the university level, it appears in courses on , , and social sciences, where it facilitates model-based inquiry into topics like and economic systems. In classroom activities, NetLogo's HubNet extension enables participatory group simulations, such as the model for , where students collectively control agents to observe emergent outcomes like . Curricular models further support topics like ecosystems—through simulations of bee foraging behaviors—and , promoting hands-on exploration of decentralized interactions. NetLogo has achieved widespread adoption, with hundreds of thousands of downloads and use by thousands of students and teachers worldwide, enhancing and comprehension of in complex systems. This impact is evident in its role in developing systems literacy, as recognized in educational awards for advancing K-12 modeling practices. Community support includes teacher workshops offered by the Center for Connected Learning and Computer-Based Modeling (CCL), which provide training on NetLogo implementation and co-development of customized materials. Integration with curricula like Connected Chemistry uses NetLogo models to teach particle-level interactions and macroscopic properties, bridging molecular concepts with computational exploration.

Learning Resources

Books

One of the primary resources for learning NetLogo is An Introduction to Agent-Based Modeling: Modeling Natural, Social, and Engineered Complex Systems with NetLogo by Uri Wilensky and William Rand, published by in 2015. This comprehensive textbook provides a detailed guide to agent-based modeling (ABM) principles, NetLogo syntax, and practical applications across natural, social, and engineered systems, featuring hundreds of step-by-step examples and exercises implemented in NetLogo. The book is structured into chapters that progress from foundational concepts like behaviors and interactions to advanced topics such as , validation, and real-world case studies, enabling readers to build and analyze models progressively. Complementing the textbook is a dedicated collection of companion models known as the IABM models, available in the NetLogo Models . These models directly correspond to the book's chapters and exercises, allowing users to load, modify, and extend them within NetLogo for hands-on experimentation, such as simulations of , epidemics, or economic systems. Several other notable books incorporate NetLogo for teaching ABM. Agent-Based Models (second edition) by Nigel Gilbert, published by in 2014, serves as an accessible primer on designing and implementing ABMs, with practical examples and downloadable NetLogo code to illustrate social phenomena like norm emergence and . Similarly, Agent-Based and Individual-Based Modeling: A Practical Introduction (second edition) by Steven F. Railsback and Volker Grimm, released by in 2019, emphasizes scientific model design and analysis, using NetLogo for exercises on ecological and evolutionary processes, with updated code compatible with recent NetLogo versions. For specialized applications, Agent-Based Spatial Simulation with NetLogo (Volume 1: Introduction and Bases) by Arnaud Banos et al., published by ISTE Press-Elsevier in 2015, focuses on geospatial modeling techniques, providing NetLogo-based tutorials on spatial dynamics like urban growth and environmental interactions; its follow-up Volume 2 (Advanced Concepts), released in 2016, extends these with algorithmic insights and code for complex spatial scenarios. A more recent comprehensive resource is Modeling Social Behavior: Mathematical and Agent-Based Models of Social Dynamics and Cultural Evolution by Paul E. Smaldino, published by Princeton University Press in 2023. This book equips readers with tools for modeling complex social systems, including NetLogo basics and agent-based simulations of , , and , suitable for social and behavioral scientists. It features chapters on NetLogo programming and provides code repositories for practical implementation. Since the 2015 publication of the primary , additional comprehensive and specialized texts, such as the 2019 Railsback and Grimm edition and the 2023 Smaldino book, have emerged to support NetLogo use, supplemented by online errata and resources for earlier works to align with NetLogo updates beyond version 5. These books collectively prioritize hands-on through NetLogo's intuitive interface, making them suitable for self-study, classroom instruction, or interdisciplinary courses in computational modeling.

Online Courses

Several prominent online courses and tutorials utilize NetLogo to teach agent-based modeling (ABM), emphasizing hands-on programming and simulation of complex systems. These resources cater to beginners and intermediate learners, often incorporating interactive exercises, video lectures, and project-based assessments to build practical skills in model design and analysis. Many are free or low-cost, with community support through forums, and have been updated to align with recent NetLogo versions, such as 7.0.2 (as of October 2025). The Fundamentals of NetLogo tutorial, offered by the Santa Fe Institute's Complexity Explorer platform, provides a free, self-paced introduction to NetLogo's core features for agent-based modeling. It covers basic programming syntax, agent behaviors, and emergent phenomena through interactive exercises and guided simulations, enabling learners to build simple models like traffic flow or epidemic spread. Developed with input from experts like William Rand, the tutorial includes video modules and quizzes to reinforce concepts, making it ideal for novices exploring ABM principles without prior coding experience. Complementing this, the Introduction to Agent-Based Modeling (2024) on Complexity Explorer explores building and analyzing models of complex problems in fields like and using NetLogo. Offered from June to August 2024, this free course features lectures by Anamaria Berea and Bill Rand, with no programming prerequisites, focusing on practical NetLogo implementation. Northwestern University's Center for Connected Learning and Computer-Based Modeling (CCL), the creators of NetLogo, offers the Introduction to Agent-Based Modeling as a structured 30-hour available through short workshops or into programs. This features lectures on ABM , hands-on NetLogo tutorials for implementing models in domains like and sciences, and independent projects where participants design and evaluate their own simulations. It emphasizes practical application, including debugging and , with access to CCL's extensive model library for real-world examples. On platforms like , the course 2024 Intro to Agent-Based Modeling Simulation AI in NetLogo (updated from earlier versions) focuses on applying NetLogo to simulate AI-driven scenarios, such as virus spread through interactions. This paid, self-paced offering includes video demonstrations of model , walkthroughs, and assignments to experiment with parameters for emergent behaviors, highlighting NetLogo's role in accessible AI prototyping without advanced prerequisites. Physalia Courses provides an intensive Agent-based and Individual-based Modelling using NetLogo workshop, a 30-hour program delivered online or in-person, targeting researchers in and social sciences. Participants engage in lectures, coding exercises, and group projects to develop, test, and validate ABMs, with emphasis on model verification techniques and integration of real sets. The course fosters via dedicated forums and ensures with NetLogo 7 for modern computational efficiency. Additionally, the free, self-paced Introduction to Agent Based Modeling course offered by Geoversity (announced in ) teaches NetLogo for creating -based models with geospatial data, spanning 40 hours of content on complex systems simulation. University-level courses incorporating NetLogo are common, such as those at , where it is embedded in curricula for and computational modeling, and at the , featured in simulations for and evolutionary dynamics. Open supplementary resources, like Professor Bill Rand's introductory video series on —part of the Complexity Explorer ecosystem—offer concise overviews of NetLogo setup, programming, and example models, serving as quick-start companions to formal s with timestamps for key topics like and nonlinearity.

References

  1. [1]
    What is NetLogo?
    NetLogo is a programmable modeling environment for simulating natural and social phenomena. It was authored by Uri Wilensky in 1999 and has been in continuous ...
  2. [2]
    [PDF] NetLogo: A Simple Environment for Modeling Complexity
    Abstract. NetLogo [Wilensky, 1999] is a multi-agent programming language and modeling environment for simulating complex phenomena. It is designed.Missing: original | Show results with:original
  3. [3]
    NetLogo/NetLogo: turtles, patches, and links for kids ... - GitHub
    This page is for open source developers interested in the source code for NetLogo. Other users should visit the NetLogo home page, the NetLogo Forum and the ...Netlogo · I Need Help! Where Do I Look... · Building From SourceMissing: contributions | Show results with:contributions
  4. [4]
    NetLogo 7.0.2 User Manual
    NetLogo is a programmable modeling environment for simulating natural and social phenomena. It was authored by Uri Wilensky in 1999 and has been in continuous ...NetLogo Dictionary · Programming Guide · Tutorial #1: Models · Info TabMissing: official | Show results with:official
  5. [5]
  6. [6]
    NetLogo 7.0.2: FAQ (Frequently Asked Questions)
    NetLogo is a dialect of the Logo language. “Net” is meant to evoke the decentralized, interconnected nature of the phenomena you can model with NetLogo.
  7. [7]
    NetLogo 7.0.2 User Manual: Copyright and License
    NetLogo license. Copyright 1999-2025 by Uri Wilensky. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General ...
  8. [8]
    Uri Wilensky Awarded 2025 Yidan Prize
    Sep 29, 2025 · In 1999, he developed the free, open-source tool NetLogo to help users understand complex systems problems such as climate change, pandemics, ...<|control11|><|separator|>
  9. [9]
    What's new? - NetLogo 7.0.2
    Version 7.0.0 (September 2025). Changes in NetLogo Functionality. This is a major upgrade from NetLogo 6.4. We made many changes to basic features, ...
  10. [10]
    [PDF] NetLogo: Design and Implementation of a Multi-Agent Modeling ...
    Also, the target audience was schools, so the software needed to be compact and fast enough to run even on hardware that by today's standards was absurdly.
  11. [11]
    Download any NetLogo version
    NetLogo 5.0.3 (October 2012) · NetLogo 5.0.2 (July 2012) · NetLogo 5.0.1 (April 2012) · NetLogo 5.0 (February 2012) · NetLogo 4.1.3 (April 2011) · NetLogo 4.1.2 ( ...
  12. [12]
    Announcing NetLogo 6.0 Beta
    NetLogo 6.0 is a major new release of NetLogo. The version released today is a beta release, NetLogo 6.0-beta1. It is especially important for us to get ...
  13. [13]
    NetLogo 6.0 User Manual: Transition Guide
    To use it, ensure the model compiles and run properly in NetLogo 5 or later, then save it from NetLogo 5 or later. Then, simply open the model in NetLogo 6. If ...
  14. [14]
    4105 PDFs | Review articles in NETLOGO - ResearchGate
    Explore the latest full-text research PDFs, articles, conference papers, preprints and more on NETLOGO. Find methods information, sources, references or ...
  15. [15]
    breed - NetLogo Dictionary
    Most often, the agentset is used in conjunction with ask to give commands to only the turtles of a particular breed. breed [mice mouse] breed [frogs frog] to ...
  16. [16]
    create-turtles crt - NetLogo Dictionary
    If the create-<breeds> form is used, the new turtles are created as members of the given breed. If commands are supplied, the new turtles immediately run them.<|control11|><|separator|>
  17. [17]
    NetLogo 7.0.2 User Manual: NetLogo Dictionary
    To see which agents (turtles, patches, links, observer) can actually run a primitive, consult its dictionary entry. Turtle-related. back (bk) <breeds>-at < ...
  18. [18]
    Time - NetLogo 7.0.2
    The package provides tools for common date and time operations, discrete event scheduling, and using time-series input data. Quickstart; What is it?
  19. [19]
    Interface Guide - NetLogo 7.0.2
    This section of the manual explains the function of each element in NetLogo's user interface. In NetLogo, you have the choice of viewing models found in the ...Missing: IDE | Show results with:IDE
  20. [20]
    NetLogo 7.0.0 Changes Overview
    Existing models will open with new style widgets that retain their original size. Some widgets in the Models Library have been converted to the new sizes. Note ...
  21. [21]
    NetLogo 7.0.2: Vid
    You can choose to save the recording while recording using vid:save-recording which saves the movie to the specified file and reset the recording status to “ ...
  22. [22]
    NetLogo Web FAQ
    NetLogo Web is a version of the NetLogo modeling environment that runs entirely in the browser. One of the immediate goals of the project is to provide a ...
  23. [23]
    Programming Guide - NetLogo 7.0.2
    You can change the perspective of the observer by using the follow , ride and watch observer commands and follow-me , ride-me and watch-me turtle commands.
  24. [24]
    NetLogo 6.0 User Manual: FAQ (Frequently Asked Questions)
    What programming language was NetLogo written in? NetLogo is written mostly in Scala, with some parts in Java. (Scala code compiles to Java byte code and is ...
  25. [25]
    NetLogo 6.0.4 User Manual: What's new?
    For help running models made in old versions, see the Transition Guide. Version 6.0.4 (June 2018); Version 6.0.3 (March 2018); Version 6.0.2 (August 2017) ...
  26. [26]
    NetLogo User Manual (version 7.0.2)
    NetLogo is a programmable modeling environment for simulating natural and social phenomena. It was authored by Uri Wilensky in 1999 and has been in ...<|control11|><|separator|>
  27. [27]
    NetLogo Home
    ### Summary of NetLogo
  28. [28]
    Transition Guide - NetLogo 7.0.2
    NetLogo 5.0 fully supports international characters cross-platform, using the Unicode character set. NetLogo 5.0 model files always represent Unicode characters ...<|control11|><|separator|>
  29. [29]
    Can NetLogo handle millions of agents? - Stack Overflow
    Oct 16, 2017 · 1) See NetLogo FAQ on how big models can be and how to increase it's memory capabilities. Millions of agents is definitely possible, ...Addressing Performance Dip in Long-Term NetLogo SimulationsAgent-Based Simulation: Why Netlogo is running much faster than ...More results from stackoverflow.comMissing: populations | Show results with:populations
  30. [30]
    NetLogo Models Library
    "NetLogo User Community Models" are models contributed from the user community to be shared with other NetLogo users. They are not included with NetLogo, but ...Missing: official | Show results with:official
  31. [31]
    NetLogo 7.0.0-beta2: What's new?
    Version 7.0.0-beta2 (July 2025). This is a major upgrade from NetLogo 6.4. We made many changes to basic features, the NetLogo GUI, the file format and ...
  32. [32]
    Welcome to the Modeling Commons! -- NetLogo Modeling Commons
    Welcome to the Modeling Commons! The Modeling Commons is for sharing and discussing agent-based models written in NetLogo. With more than 1,000 models, ...NetLogoList of models
  33. [33]
    NetLogo User Community Models:
    Modeling Commons · Beginners Interactive NetLogo Dictionary (BIND) · NetLogo ... Date of this revision: September 2012 (first version dates from May 2010)
  34. [34]
    Human Population Dynamics - NetLogo - the Modeling Commons!
    View, run, and discuss the 'Human Population Dynamics' model, written by Connor Bain. The Modeling Commons contains more than 2000 other NetLogo models,
  35. [35]
    [PDF] Participatory Simulations
    In this paper, we describe a new network-based architecture, HubNet, designed for enabling students to engage in participatory simulations of complex dynamic ...
  36. [36]
    NetLogo 7.0.2: HubNet Guide
    HubNet Guide. This section of the User Manual introduces the HubNet system and includes instructions to set up and run a HubNet activity.
  37. [37]
    NetLogo 7.0.2: HubNet Authoring Guide
    ### Summary of HubNet Primitives and Features
  38. [38]
    HubNet Web FAQ
    A tutorial on how to convert existing HubNet/NetLogo models to work in HubNet Web (including a start-to-finish video guide) can be found here. I tried ...
  39. [39]
    What's new? - NetLogo 7.0.0
    NetLogo models are now stored in a new format with the extension .nlogox (see below); For users with modern macOS devices that use the Apple silicon ...Missing: .nlogo3
  40. [40]
    NetLogo 7.0.2: Extensions Guide
    This section of the User Manual introduces extensions and shows how to use an extension in your model once you have obtained or made one. Note that, in addition ...
  41. [41]
    NetLogo 7.0.2: GIS
    This extension adds GIS (Geographic Information Systems) support to NetLogo. It provides the ability to load vector GIS data (points, lines, and polygons), and ...
  42. [42]
    Matrix - NetLogo 7.0.2
    The matrix extension comes preinstalled. To use the matrix extension in your model, add a line to the top of your Code tab: extensions [matrix].
  43. [43]
    NetLogo 7.0.2: BehaviorSpace Guide
    BehaviorSpace Guide. This guide has three parts: What is BehaviorSpace?: A general description of the tool, including the ideas and principles behind it.
  44. [44]
    NetLogo 7.0.2 User Manual: 3D
    You can create the 2D shape in the Turtle Shapes Editor. The input file may contain any number of shapes with any number of rectangular or triangular surfaces.Missing: .nlogo3
  45. [45]
    NetLogo 7.0.2: Extension Manager Guide
    On the left side of the Extension Manager window, you can see a list of all available extensions. Extensions that are already installed and up-to-date have ...
  46. [46]
    What's New in NetLogo Web
    ... NetLogo Web has been updated to the latest version released with NetLogo 7. The color picker in NetLogo Web has been changed to the same version used in desktop ...<|control11|><|separator|>
  47. [47]
    Agent-Based Modeling of the Immune System - PubMed Central - NIH
    NetLogo is a multiagent programming language and modeling environment for simulating complex phenomena. It is designed for both research and education.
  48. [48]
    NetLogo for scientific research: Modeling - Opensource.com
    Feb 6, 2019 · NetLogo was created by Uri Wilensky in 1999 and has been developed at the Center for Connected Learning and Computer-Based Modeling at ...
  49. [49]
    NetLogo Home
    NetLogo provides educators with an easy-to-use modeling platform that includes many built-in models to engage students in learning science. GO. Join our mailing ...Download NetLogo for Linux · User Manual · NetLogo Dictionary · Resources
  50. [50]
    Modeling Emergent Phenomena with NetLogo
    Abstract. NetLogo is a multi-agent modeling language, a parallel extension of Logo. NetLogo is designed to enable learners to explore and construct models ...Missing: paper | Show results with:paper
  51. [51]
    The CCL
    We have frequently co-developed materials and curricula with teachers to fit their particular settings and we periodically offer workshops for teachers.
  52. [52]
    Tragedy of the Commons HubNet, by Uri Wilensky (model ID 2368)
    WHAT IS IT? This model simulates the utilization of a common resource by multiple users. · HOW IT WORKS. The students act as the farmers. · HOW TO USE IT.What Is It? · How It Works · How To Use It<|separator|>
  53. [53]
  54. [54]
    [PDF] Modeling Nature's Emergent Patterns with Multi-agent Languages
    NetLogo has achieved widespread adoption in both these contexts, with hundreds of thousands of downloads, thousands of scientific papers and thousands of ...<|separator|>
  55. [55]
    Uri Wilensky named 2025 Yidan Prize winner - Northwestern Now
    Sep 29, 2025 · “With the prize, I now want to get NetLogo more deeply embedded in institutions, including classrooms, newsrooms and government.Missing: worldwide | Show results with:worldwide
  56. [56]
    Connected Chemistry
    Connected Chemistry is a set of related chemistry units for students and teachers. These units include activities, which use multi-agent NetLogo models.Missing: workshops | Show results with:workshops
  57. [57]
    An Introduction to Agent-Based Modeling - MIT Press
    An Introduction to Agent-Based Modeling offers a comprehensive description of the core concepts, methods, and applications of ABM. Its hands-on approach—with ...
  58. [58]
    An Introduction to Agent-based Modeling
    Its hands-on approach—with hundreds of examples and exercises using NetLogo - enables readers to begin constructing models immediately, regardless of experience ...
  59. [59]
  60. [60]
    Agent-Based and Individual-Based Modeling
    ### Summary of "Agent-Based and Individual-Based Modeling" by Railsback and Grimm
  61. [61]
    Agent-based Spatial Simulation with Netlogo - ScienceDirect.com
    Agent-based Spatial Simulation with Netlogo. Volume 1: Introduction and Bases. Book • 2015. Edited by: Arnaud Banos, Christophe Lang and Nicolas Marilleau ...
  62. [62]
    Fundamentals of NetLogo - Complexity Explorer
    About the Tutorial: This tutorial will present you with the basics of how to use NetLogo to for agent-based modeling. During the tutorial, we will briefly ...
  63. [63]
    Free Course: Fundamentals of NetLogo from Santa Fe Institute
    Rating 4.8 (8) This tutorial will present you with the basics of how to use NetLogo to create an agent-based modeling.
  64. [64]
    NetLogo Courses
    University, secondary, and online courses that utilize NetLogo ; PLTW course in Computer Science and Software Engineering with instructor Jonathon Patterson
  65. [65]
  66. [66]
    Agent-based and Individual-based modelling using NetLogo
    Railsback SF, Grimm V (2019) Agent-Based and Individual-Based Modeling: A Practical Introduction, 2nd Edition, Princeton University Press, Princeton, N.J. ...
  67. [67]
    [PDF] OSC-NETLOGO: A TOOL FOR EXPLORING THE SONIFICATION OF ...
    In this article, we introduce OSC-NETLOGO, a tool that allows the creation of sonic phenomena by taking advan- tage of NetLogo's power for designing and ...
  68. [68]
    Fundamentals of NetLogo: Introduction to Tutorial - YouTube
    Apr 1, 2019 · These videos are from the Fundamentals of NetLogo tutorial on Complexity Explorer (complexityexplorer.org) taught by Prof. Bill Rand.