Tuesday, February 16, 2016

Pedestrian Modeling Examples

Readers might know that we like pedestrian models here. So in keeping with the theme of NetLogo models and the use of GIS below are two simple pedestrian models. In the first model (shown in the movie below), agents just exit the room, taking the shortest path (calculated via a cost surface). The idea behind this first model is to highlight how changing the width of the exit (i.e. the door) can impact on the evacuation time (the model can be downloaded from here).

In the second model (shown in the movie below and the code is here) we show a more complicated configuration based on a floor plan that has been first converted from a CAD file to a Shapefile  before being converted into a raster where each cell is 50cm by 50cm that can then be used in the NetLogo model (coming soon there will be a bunch of tutorials on how we do this).

From CAD File (A) to Shapefile (B) to Raster (C)

In this model, agents like in the simple model above, walk to the exit. In essence, one could consider this as a fire evacuation scenario. The agents are assumed to walk to the nearest exit, analogous to following exit signage. Similar to the first example, user can explore what happens if an additional exit is added.

More information about the models (and the code) can be found over at Geospatial Computational Social Science.


backspaces said...

My group (Redfish LLC) is re-designing http://agentscript.org (a Javascript NetLogo-style browser based modeling system) and would be interested in your input.

We're redesigning it to work well with https://www.simtable.com/ This includes Leaflet, WebGL, es6/7, less framework and more libraries/modules (but with a NLish framework made from the modules), distributed/cooperative modeling via Firebase and so on. There are *many* new browser capabilities that we plan to investigate.

GIS is definitely required, thus Leaflet. We also are interested in WebGL due to our favoring TypedArrays for space and cpu/gpu performance. This brings up 3D.

Our approach will let us use 2D via both canvas and WebGL. We'll definitely copy NL's nifty 2.5D pop-out idea where you can look at 2D models in 3D. But we are interested in 3D ABMs also due to including WebGL.

Have you used 3D within your modeling? Especially GIS modeling?

Andrew Crooks said...

Hi Backspaces,

Thanks for taking an interest in the blog. I have been a big fan of your work for a long long time. Agentscript does look good, I blogged about it, for what now seems a long time ago http://www.gisagents.org/2014/01/agentscript-abm-framework.html but have not kept up to date with it.

The idea of running models is a browser is great.

With respect to 3D we (not just me but colleagues who I have worked with or are working with) played around with sketchup, secondLife, opensim linked to ABM but it was relatively slow and cumbersome (but it is getting better). At some point we also explored game engines. One of my students did explore creating a a 3D rainfall model in netlogo (see http://geospatialcss.blogspot.com/2015/10/3d-rainfall-model-in-netlogo.html) which shows some potential but I think there is a lot of room for improvement.

KD said...

Thanks for posting such a thorough article!

I'm just getting into ABM and am wondering if you have ever posted the articles describing the "CAD floor plan to a Shapefile to raster" process for importing complicated layouts into NetLogo. Are those available somewhere or do you have advice on how to proceed?

Andrew Crooks said...

HI, I used ArcGIS. First converting the cad file to a shapefile and then shapefile to raster. Hope this helps.