Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is NetLogo too slow for big simulations? How can I speed up a NetLogo model?

Is NetLogo a good platform for big models (>10,000s of patches, turtles)?

How can I speed up a model that runs very slowly?

like image 728
Steve Railsback Avatar asked Jan 05 '17 16:01

Steve Railsback


People also ask

How fast is NetLogo?

Models that execute each tick very quickly can have their speed limited solely by the “frame rate” setting, which by default limits NetLogo to 30 ticks per second.

What language does NetLogo use?

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 fully interoperable with Java and other JVM languages.)

Is NetLogo easy to learn?

One of the reasons why NetLogo is so easy to learn is that it is very well documented. The user manual includes three tutorials to help beginners get started, an excellent programming guide, and a comprehensive dictionary with the definitions of all NetLogo primitives, including examples of how to use them.

What can you do with NetLogo?

NetLogo is a multi-agent programmable modeling environment. It is used by many hundreds of thousands of students, teachers, and researchers worldwide. It also powers HubNet participatory simulations.

Is NetLogo slow for large scientific models?

The article's main points are (a) NetLogo is not necessarily slow for executing large scientific models, and in fact has speed advantages over some alternatives; and (b) NetLogo models do often execute very slowly at first but can almost always be sped up dramatically by using a few basic techniques.

How to make NetLogo run faster?

A nearly certain fix is to use a text editor to edit the NetLogo.cfg file, changing 1024m to a smaller number, like 512m. This should permit NetLogo to start, although the lower heap size limit may affect your ability to run models with many agents.

What is the difference between NetLogo and logo?

The “Logo” part is because 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, including network phenomena. It also refers to HubNet, the multiuser participatory simulation environment included in NetLogo.

How much RAM does NetLogo use?

By default, though, NetLogo ships with a one-gigabyte ceiling on how much total RAM it can use. If your model exceeds that limit, you’ll get an OutOfMemoryError dialog. If you are using BehaviorSpace, note that doing runs in parallel will multiply your RAM usage accordingly.


1 Answers

We just published an article on execution speed of NetLogo; it is available at: http://jasss.soc.surrey.ac.uk/20/1/3.html

The article's main points are (a) NetLogo is not necessarily slow for executing large scientific models, and in fact has speed advantages over some alternatives; and (b) NetLogo models do often execute very slowly at first but can almost always be sped up dramatically by using a few basic techniques. We provide a step-by-step strategy for measuring and improving execution speed. We also identify tools for efficient analysis (sensitivity analysis, parameter-fitting, etc.) of NetLogo models.

I just posted two updates to our article on NetLogo execution speed. The original article is at http://jasss.soc.surrey.ac.uk/20/1/3.html

One update provides very important information from the NetLogo development team on when in-radius and in-cone are and are not slow. The other corrects a conclusion about the cost of using links. The updates are at: http://www.railsback-grimm-abm-book.com/JASSS-models.html

like image 181
Steve Railsback Avatar answered Sep 20 '22 15:09

Steve Railsback