Agent-based Spatial Simulation with NetLogo, Volume 2
eBook - ePub

Agent-based Spatial Simulation with NetLogo, Volume 2

Advanced Concepts

  1. 232 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Agent-based Spatial Simulation with NetLogo, Volume 2

Advanced Concepts

About this book

Whereas Volume 1 introduced the NetLogo platform as a means of prototyping simple models, this second volume focuses on the advanced use of NetLogo to connect both data and theories, making it ideal for the majority of scientific communities. The authors focus on agent-based modeling of spatialized phenomena with a methodological and practical orientation, demonstrating how advanced agent-based spatial simulation methods and technics can be implemented. This book provides theoretical and conceptual backgrounds, as well as algorithmic and technical insights, including code and applets, so that readers can test and re-use most of its content. - Illustrates advanced concepts and methods in agent-based spatial simulation - Features practical examples developed, and commented on, in a unique platform - Provides theoretical and conceptual backgrounds, as well as algorithmic and technical insights, including code and applets, so that readers can test and re-use most of its content

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Agent-based Spatial Simulation with NetLogo, Volume 2 by Arnaud Banos,Christophe Lang,Nicolas Marilleau in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming. We have over one million books available in our catalogue for you to explore.
1

NetLogo, an Open Simulation Environment

Benoit Gaudou; Christophe Lang; Nicolas Marilleau; Guilhelm Savin; Sébastien Rey Coyrehourcq; Jean-Marc Nicod

Abstract

NetLogo is a generic simulation environment in the sense that it was not designed with any specific domain of application in mind. NetLogo offers a wide range of features and generic operators to its users. Additionally, to make up for any missing features, NetLogo is compatible with other platforms and libraries, as we will demonstrate throughout this book.

Keywords

Extensions; Java/Scala; Modeling Commons; NetLogo; OpenABM; Open Simulation Environment; Python; RungeKutta extension

1.1 Introduction to extensions in NetLogo

NetLogo is a generic simulation environment in the sense that it was not designed with any specific domain of application in mind. NetLogo offers a wide range of features and generic operators to its users. Additionally, to make up for any missing features, NetLogo is compatible with other platforms and libraries, as we will demonstrate throughout this book.
There is a vast library of extensions available to users, allowing them to integrate additional functionality that is not present in the native version of NetLogo, but which might nonetheless be necessary for the development of a given model. An official library of extensions is available on the official NetLogo Website. We will explore some of these extensions later in this chapter. But many modelers have also developed their own extensions to tackle specific problems that are of interest to them. These extensions are developed with an open Java API. We will discuss this in more detail in section 1.2.
Conversely, NetLogo can also be called and controlled by other programs, such as OpenMole1, Python2 and R3. To do this, NetLogo provides a Java API that allows models to be loaded, executed and gives access to their variables and methods. The usage of this API is presented in detail in section 1.3.

1.1.1 Examples of typical NetLogo extensions

There are many different types of extension. The GitHub page of the NetLogo platform4 gives one possible list of examples. This list distinguishes between internally developed extensions, which are included with the platform (e.g. GIS or network), and extensions developed by the community, which have to be installed manually (section 1.1.2). In Chapter 3 of Volume 1 [BAN 15a], we presented a number of these extensions (GIS and network) to showcase some of additional functionnalities of NetLogo.
Some of these extensions include language extensions, which allow the modeler to manipulate more complex object types than those natively present in NetLogo. Indeed, the language of the platform has relatively few complex structures (unlike most programming languages) and primitives for manipulating them. For instance, the array, table and matrix extensions are now included with NetLogo. However, extensions such as string and file are external.
More generally, the functionalities of the NetLogo language can be augmented with a wide range of extensions, for example to achieve better network management (network and nw), to provide more primitives for network analysis (additional metrics and indicators) or to integrate geographical data represented in vector form into NetLogo models (GIS). This is not an easy task, but this is absolutely necessary, as NetLogo models are natively based on a grid-based discrete environment. As another example, the SQL extension allows models to interact with a database by sending SQL-formatted queries and receiving data in response. Finally, the sound and MIDI extensions allow sounds to be integrated into NetLogo models.
There are a number of extensions that enable NetLogo to interact with other tools. This interaction can take various different forms: it might simply involve reading or writing files that are compatible with a third-party application. For example, it is possible to process image files (bitmap), tabular data (csv), Java system properties (Props), POV rays (RayTracing), VRML (VRML), NetCDF (NetCDF), etc. This allows modelers with different backgrounds to increase the realism of their simulations by exploiting real data in useful formats.
Other extensions allow deeper forms of interaction by directly integrating third-party functionality into NetLogo; for this kind of interaction, NetLogo must be able to connect with another application to send requests and retrieve results, such as Matlab (MATLAB), Prolog (NetProLogo), IODA [KUB 11] (IODA) and Graphstream5 (gs).
For example, the NetLogo language can be extended with primitives allowing it to benefit from the scientific calculation tool R [THI 10], and in particular to call R functions from within a NetLogo model. The R extension for NetLogo can be downloaded on the Netlogo-R-Extension Website6. It fulfills the task of communicating data between the two tools, and in particular performs type conversi...

Table of contents

  1. Cover image
  2. Title page
  3. Table of Contents
  4. Copyright
  5. Introduction
  6. 1: NetLogo, an Open Simulation Environment
  7. 2: Multiscale Modeling: Application to Traffic Flow
  8. 3: Macro Models, Micro Models and Network-based Coupling
  9. 4: Networking, Networks and Dynamic Graphs
  10. 5: Swarm Problem-Solving
  11. 6: Exploring Complex Models in NetLogo
  12. Conclusion
  13. Bibliography
  14. List of Authors
  15. Index