NetLogo

Netlogo models, Extensions and other NetLogo resources...

link description
Life Workshop examples used in the workshop at the Centre for Life
Maker Faire some of the models from the Maker Faire 2014
NLBoris a NetLogo extension which allows NetLogo agents to exchange messages (updates, user guides and examples)
NLoops a partial objects layer for NetLogo (a step towards NetLogo++) - user guides and examples
Malaria Models models representing the transmission of malaria and the way different gene types respond to infection
path finding a NetLogo breadth first search an A* search from one patch to another and other state space searches (a search mechanism, examples and utilities)
string extension Netlogo extension for handling strings
foxes & rabbits a simple series of models if you are just starting with NetLogo
L-systems model morphogenesis of 2D shapes using context free grammar rules
fox & hounds a competition based on a chase scenario
independent JFrames how to open independent JFrames from a Netlogo extension
NetLogo tasks a discussion of tasks and how to use them (NetLogo 5 onwards)
sock1 a (simple) example using sockets communication between NetLogo and Java
adaptive models this section is developing. It includes simple adaptation models, genetic drift, speciation and the "evolution lab" models. The BuzzBug models are also here for now.
other models models not included elsewhere
intro.ppt a few slides used to introduce modelling biological & physical systems

 

other links

 

 

nlboris
nlboris is a netlogo extension which allows netlogo agents to communicate by sending each other messages, it also allows agents to communicate between NetLogo and other Boris agents.

We recently found that most users are only really interested in communicating between NetLogo agents running in the same NetLogo world so we have also built messaging.nls a simple messaging system for NetLogo agents which does not need an extension to be installed. messaging.nls provides the same kind of functionality as nlboris but only supports communication within a single NetLogo world (ie: it does not allow NetLogo agents to communicate with boris agents in other subsystems). See below for both nlboris and the smaller messaging system.

messaging.nls...

 

nlboris resources...

nlboris examples & models

 

NLoops
NLoops is a partial objects layer for NetLogo, it is written in NetLogo script (not as a Java extension) so it is used as a .nls include file.

We have a couple of versions of NLoops, if you don't need many features and want something which will easily integrate with existing NetLogo code start with NLoops-lite.

NLoops resources...

 

Netlogo breadth-first search & best-first search


 

foxes and rabbits


This is a good place to start if you are new to NetLogo. These are a series of models which build on each other to progress from a simple to a more complex model. See brief.pdf for an explanation.

fox & rabbit models...

 

L-systems


Morphogenesis is concerned with the "creation of shape". It normally refers to the development of shape/structure in a biological entity. Computer Science also has had an interest since Lindenmayer proposed "L-systems", a formal system for describing morphogenesis.

An L-system is a 'language' defined by a set of production rules. These production rules are initially applied over a sequence of start symbols (an "axiom") expanding them into a new sequence of symbols which are then used for further expansions (more information is readily available on the web).

In a computational model, the resulting sequences (after multiple applications of production rules) can be interpreted as sequences of instructions. With our model here, we use a common approach which is to interpret the symbols as instructions to move a turtle (the turtle draws with its pen).

The model can be tailored expanded by adding new L-systems descriptions into the code.

the model: l-system1.nlogo

model images...

external links...

 

the fox and hounds example


 

tasks


Tasks are introduced in NetLogo 5 - here are some examples/discussions of their use.

 

sock1


an example of a simple socket extension for NetLogo which allows netlogo to communicate with other (Java) applications via a socket.

 

JFrames from extensions


For more complex models & extensions you may want to have some kind of dialog with users or pass them information. This example opens a JFrame from a Java extension. The JFrame allows users to communicate with a NetLogo model. Note that you can also use this kind of approach to output debuggging information from your extensions.

The extension and a sample model is wrapped up in test.zip which you should unpack into an extension folder called "test". The (v.simple) example model to demonstrate the idea is called "test.nlogo" and is also contained in test.zip. NB: the extension will run on NetLogo5 (not on earlier versions).

 

other extensions


(see above for nlboris, NLoops, etc) * because I get asked often... here is an example of using jar to create a jar for NetLogo from within a NetBeans folder. For netLogo extensions I usually place files in the default (un-named) package).

 

adaptive models


 

other models