NetLogo User Community Models
(back to the NetLogo User Community Models)
by Carlos Gershenson
WHAT IS IT?
This model is inspired in multi-agent games that people can play, following simple rules to observe emergent global patterns/behaviours. They could be seen as simpler versions of Craig Reynolds's "Boids" , or Hiroki Sayama's "Swarm Chemistry" , with the advantage that you can play these with real people.
HOW IT WORKS
Different strategies are implemented.
If the "mixed?" switch is turned off, a number of "players" will be created, and they will follow the "rule-for-all-players".
If the "mixed?" switch is turned on, each slider indicating each strategy will be used to create a number of players with that strategy.
These are the strategies:
-"approach one": each player chooses another player, and approaches it.
-"retreat one": each player chooses another player, and runs away from it.
-"approach any": each player chooses a random player each time step, and approaches it.
-"retreat any": each player chooses a random player each time step, and runs away from it.
-"between two": each player chooses two players, and tries to setep in between them.
-"distanz one": each player chooses a random player each time step, and tries to keep a distance "distanz" to it.
-"equidistanz two": each player chooses two players, and tries to be at the same distance from both.
-"random": players move randomly.
Once a player reaches its goal, it stops and smiles. When all players have reached their goal, a stable configuration has been reached, and the simulation stops.
HOW TO USE IT
"Setup" initializes the simulation.
"trail?" decides whether players will leave a trail of their movement.
"Go" starts and stops the simulaton
"step-size" is the size of the step each player takes at each tick (time step)
"distanz" is used by the "distanz one" strategy (see above)
The rest of the controls are described above.
THINGS TO TRY
First try each strategy, to see what's the emergent behavior, with different number of players.
Then you can try to mix different strategies and see how they interact.
EXTENDING THE MODEL
-Which other simple strategies (or sets of strategies) could be developed to generate interesting patterns?
-Are there strategies to determine arbitrary shapes (e.g. circles)? To what extent these can rely ONLY on local information?
-Are there simple strategies to create dynamic stable patterns? (e.g. oscillatory, rotating...)
Many of these can be reached with different sets of rules .
CREDITS AND REFERENCES
Copyleft 2007 by Carlos Gershenson, firstname.lastname@example.org, http://homepages.vub.ac.be/~cgershen/
You are encouraged to copy, modify, and distribute this model, as long as this section is included.
Some of the code was copy-pasted from:
Wilensky, U. (2004). NetLogo Scatter model. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.