Department of Computer Science What is NetLogo UH-DMML  Multi-agent programmable modeling environment  Well suited for modeling complex systems evolving.

Slides:



Advertisements
Similar presentations
2-Day Introduction to Agent-Based Modelling Day 1: Session 2 NetLogo Style, Documentation, kinds of agents, reacting to other agents.
Advertisements

Netlogo! NetLogo is a programmable modeling environment for simulating complex systems. Modelers can give instructions to hundreds or thousands of independent.
Agents and Pervasive Computing Group Università di Modena e Reggio Emilia System Requirements NetLogo is designed: to run almost any type of computer.
13 giugno 2006Master in economia e politica sanitaria - Simulazione per la sanità 1 _Strumenti, seguito _______________________________________ Un modello.
Netlogo and its Relatives Logo (Papert) –Language for teaching mathematics graphically –Tell turtle how to move Starlogo (Resnick) & StarlogoT (Wilensky)
Game with US Beginner Tutorial. Welcome!! Who I am What is Processing? Basic Coding Input Methods Images Classes Arrays.
Biomedical Modeling: Introduction to the Agent-based epidemic modeling
New Mexico Computer Science For All Designing and Running Simulations Maureen Psaila-Dombrowski.
New Mexico Computer Science for All Agent-based modeling By Irene Lee December 27, 2012.
New Mexico Computer Science For All Breeds and Shapes in NetLogo Maureen Psaila-Dombrowski.
EPIDEMIOLOGY: Introduction to the Agent-based epidemic modeling Dr. Qi Mi Department of Sports Medicine and Nutrition, SHRS, Univ. of Pitt.
"Turtle Graphics“ for kids.
CA 121 Intro to Programming Tariq Aziz and Kevin Jones GUI Programming in Visual Studio.NET Chapter 1 Tariq Aziz and Kevin Jones.
Names and Scopes CS 351. Program Binding We should be familiar with this notion. A variable is bound to a method or current block e.g in C++: namespace.
NetLogo: Design and Implementation of a Multi-Agent Modeling Environment Seth Tisue, lead developer Uri Wilensky, author and principal investigator Center.
2-Day Introduction to Agent-Based Modelling Day 2: Session 5 Variables and Debugging.
Teaching Contemporary Mathematics Conference January 25, 2013 Christine Belledin NC School of Science and Mathematics.
Python quick start guide
An Introduction to NetLogo given by Gabriel Wurzer. ,
INTRODUCTION TO THE SCRATCH PROGRAMMING ENVIRONMENT.
Week 4-5 Java Programming. Loops What is a loop? Loop is code that repeats itself a certain number of times There are two types of loops: For loop Used.
2-Day Introduction to Agent-Based Modelling Day 1: Session 1 Introduction, commands, loops, conditionals.
ABM Frameworks Dr Andy Evans With additions from Dr Nick Malleson.
NetLogo Dr. Feng Gu. NetLogo NetLogo is a programmable modeling environment for simulating natural and social phenomena, authored by Uri Wilensky in 1999.
2-Day Introduction to Agent-Based Modelling Day 1: Session 4 Networks.
Agent-Based Modeling and Simulation (ABMS) Bertan Badur Department of Management Information Systems Boğaziçi University.
CISC 1600 – Lecture 3.2 Simulations Complex Input & Output NetLogo.
2-Day Introduction to Agent-Based Modelling Day 2: Session 8 Exploring Model Collections, NetLogo Lists, Further Resources.
Agent-Based Modeling and Simulation (ABMS) Bertan Badur Department of Management Information Systems Boğaziçi University.
Week 11 DO NOW QUESTIONS. An ask turtles block is a set of instructions that is issued to every turtle. Even though computers can do things very quickly,
A Look Inside Some NetLogo Simulations Bruce Edmonds Centre for Policy Modelling Manchester Metropolitan University.
B.A. (Mahayana Studies) Introduction to Computer Science November March Logo (Part 2) More complex procedures using parameters,
Programming for Swarm CS655 Course Project Weilin Zhong.
1 Logo -- A Language for Learning Liping Cai 11/21/2005.
An Introduction to NetLogo Gabriel Wurzer, Vienna University of Technology AnthropologischeGesellschaftWien.
New Mexico Computer Science For All Interface Output in NetLogo (Part 1) Maureen Psaila-Dombrowski.
Q4 Day 19 COLQ 201 Multiagent modeling Harry Howard Tulane University.
Models in NetLogo Day 3 COLQ 201 Multiagent modeling Harry Howard Tulane University.
Agent-Based Modeling and Simulation (ABMS) Bertan Badur Department of Management Information Systems Boğaziçi University.
Modeling Complex Dynamic Systems with StarLogo in the Supercomputing Challenge
New Mexico Computer Science For All Command Procedures in NetLogo Maureen Psaila-Dombrowski.
New Mexico Computer Science For All Variables and Scope Maureen Psaila-Dombrowski.
New Mexico Computer Science For All Creating Turtles Maureen Psaila-Dombrowski.
Applications Development
Bridges To Computing General Information:  This document was created for use in the "Bridges to Computing" project of Brooklyn College.  You are invited.
New Mexico Computer Science For All Patches and Agent/Environment Interactions Maureen Psaila-Dombrowski.
Programming for Swarm CS655 Course Project Weilin Zhong.
Introduction to Modeling and Water Resources
MIS 585 Special Topics in IMS Agent-Based Modeling Bertan Badur Department of Management Information Systems Boğaziçi University.
Computer Science I Recap: variables & functions. Images. Pseudo-random processing.
MIS 585 Special Topics in MIS: Agent-Based Modeling 2015/2016 Fall.
EGR 115 Introduction to Computing for Engineers
Scratch for Interactivity Dr. Ben Schafer Department of Computer Science University of Northern Iowa.
Social studies: traffic Day 10 COLQ 201 Multiagent modeling Harry Howard Tulane University.
IST 210: PHP LOGIC IST 210: Organization of Data IST210 1.
JavaScript 101 Lesson 6: Introduction to Functions.
Introduction to Programming with Scratch Exploring Computer Science – Lesson 4-1.
M10 WS11:Krankenhausbedarfsplanung The World as We See It given by Gabriel Wurzer and Wolfgang E. Lorenz
1 Agent-Based Tools: focus on NetLogo Ing. Cristina Ponsiglione University of Naples Federico II Laboratorio di Simulazione ad Agenti.
M10 WS11:Krankenhausbedarfsplanung More, More and Even-More More given by Gabriel Wurzer and Wolfgang E. Lorenz
An Introduction to NetLogo given by Gabriel Wurzer and Wolfgang E
Management Information Systems
Creating Simple Agent-Based Models
Management Information Systems
An introduction to Netlogo agent-based software
Painted Desert Challenge
MIS 643 Agent-Based Modeling and Simulation 2016/2017 Fall.
creating a ecosystems model in net logo
Presentation transcript:

Department of Computer Science What is NetLogo UH-DMML  Multi-agent programmable modeling environment  Well suited for modeling complex systems evolving over time  Hundreds or thousands of independent agents operating concurrently  Exploring the connection between the micro-level behavior of individuals and the macro-level patterns that emerge from the interaction of many individuals

Department of Computer Science What is NetLogo UH-DMML  Easy-to-use application development environment  Opening simulations and playing with them  Creating custom models: quickly testing hypotheses about self-organized systems  Models library: large collection of pre-written simulations in natural and social sciences that can be used and modified  Simple scripting language & User-friendly graphical interface

Department of Computer Science What is NetLogo UH-DMML  History  LOGO (Papert & Minsky, 1967) Theory of education based on Piaget’s constructionism (“hands-on” creation and test of concepts) Simple language derived from LISP Turtle graphics and exploration of “microworlds”  StarLogo (Resnick, 1991), MacStarLogo, StarLogoT Agent-based simulation language Exploring the behavior of decentralized systems through concurrent programming of 100s of turtles

Department of Computer Science What is NetLogo UH-DMML  History  NetLogo (Wilensky, 1999) Further extending StarLogo (continuous turtle coordinates, cross-platform, networking, etc.) Most popular today (growing cooperative library of models)

Department of Computer Science What is NetLogo UH-DMML  World of NetLogo  NetLogo is a 2-D world made of 4 kinds of agents: 1)patches – make up the background or “landscape” 2)turtles – move around on top of the patches 3)observer – oversees everything going on in the world 4)links – agents that connect two turtles patch-only models

Department of Computer Science What is NetLogo UH-DMML turtle-only models turtle & patch models

Department of Computer Science Graphic Interface UH-DMML  Controls  Allow to run and control the flow of execution 1)buttons 2)command center  Buttons - initialize, start, stop, step through the model 1)“once” buttons execute one action (one piece of code) 2)“forever” buttons repeat the same action (the same piece of code) until pressed again  Command center – ask observer, patches or turtles to execute specific commands “on the fly”

Department of Computer Science What is NetLogo UH-DMML  Settings  Allow to modify parameters 1)sliders 2)switches 3)choosers  sliders – adjust a quantity from min to max by an increment initial-number-sheep = 82  switches – set a Boolean variable (true/false) show-energy? = false

Department of Computer Science What is NetLogo UH-DMML  Settings  choosers – select a value from a list file = “Beats/seth2.csv”

Department of Computer Science What is NetLogo UH-DMML  Views  output text areas – log text info 1)monitors 2)Plots 3)output text areas 4)graphics window  monitors – display the current value of variables  plots – display the history of a variable’s value

Department of Computer Science What is NetLogo UH-DMML  Views  output text areas – log text info  graphics window

Department of Computer Science Programming Concepts UH-DMML  Agents -- carry out their own activity, all imultaneously. 1)patches 2)turtles 3)observer 4)links  Patches 1)don’t move, form a 2-D wrap-around grid 2)have integer coordinates (pxcor, pycor)  Turtles 1)move on top of the patches, not necessarily in their center 2)have decimal coordinates (xcor, ycor) and orientation (heading)

Department of Computer Science Programming Concepts UH-DMML  Observer 1)can create new turtles 2)can have read/write access to all the agents and variables  Links 1)Links do not have coordinates. 2)Every link has two ends, and each end is a turtle

Department of Computer Science Programming Concepts UH-DMML  Procedures  Commands actions for the agents to carry out (“void” functions) to setup ca crt 10 end

Department of Computer Science Programming Concepts UH-DMML  Reporters report a result value (functions with return type) to-report absolute-value [ number ] ifelse number >= 0 [ report number ] [ report 0 -number ] end

Department of Computer Science Programming Concepts UH-DMML  Primitives o built-in commands or reporters (language keywords) o some have an abbreviated form: create-turtles  crt clear-all  ca, etc.  Procedures o custom commands or reporters (user-made)

Department of Computer Science Programming Concepts UH-DMML  Variables – places to store values (such as numbers or text) 1)global variables 2)turtle & patch variables 3)local variables  Global variables 1)only one value for the variable 2)every agent can access it  Turtle & patch variables 1)each turtle/patch has its own value for every turtle/patch variable  Local variables 1)defined and accessible only inside a procedure 2)scope = narrowest square brackets or procedure itself

Department of Computer Science Tutorial UH-DMML  Build Termite Module  Two buttons  Setup  observer, once  Go  turtles, forever  Two sliders 1)number1 →300 2)density0 →100%

Department of Computer Science Tutorial UH-DMML  Randomly strew yellow wood chips (patches) with given density to setup-chips ask patches [ if random-float 100 < density [ set pcolor yellow ] ] end to setup-termites create-turtles number ask turtles [ set color white setxy random-float screen-size-x random-float screen-size-y ] end to setup ca setup-chips setup-termites end

Department of Computer Science Tutorial UH-DMML  Termites (turtles) follow 3 rules: 1 look around for a wood chip and pick it up 2 look around for a pile of wood chips 3 look around for an empty spot in the pile and drop off the chip to go ; turtle code pick-up-chip find-new-pile drop-off-chip end

Department of Computer Science Tutorial UH-DMML  Variables – places to store values (such as numbers or text) 1)global variables 2)turtle & patch variables 3)local variables  Global variables 1)only one value for the variable 2)every agent can access it  Turtle & patch variables 1)each turtle/patch has its own value for every turtle/patch variable  Local variables 1)defined and accessible only inside a procedure 2)scope = narrowest square brackets or procedure itself

Department of Computer Science Tutorial UH-DMML  Variables – places to store values (such as numbers or text) 1)global variables 2)turtle & patch variables 3)local variables  Global variables 1)only one value for the variable 2)every agent can access it  Turtle & patch variables 1)each turtle/patch has its own value for every turtle/patch variable  Local variables 1)defined and accessible only inside a procedure 2)scope = narrowest square brackets or procedure itself