Monday, March 27, 2006

Spaces in Repast

Space plays an important role with regard to simulation modelling especially in social sciences. Space has two purposes within simulation models, one to contain a collection of agents (e.g. the world). Secondly to define spatial relationships of agents relative to each other (A classic example would be of Conway’s Life Model) Repast offers the user 3 different types of space: cellular, GIS vector and network. I don’t know much about network space (apart from nodes, edges etc) so will focus on the other two: Cellular and GIS vector space.

Cellular Space within Repast

Repast has built in functions for Cellular Space which allows the user to use Repasts standard displays. With Repast the user has the choice of two boundaries that of a normal grid or Torus (allows rap- around). The cell’s shape can be either Regular (i.e. square) or hexagonal (sometimes used in pedestrian modelling). Cell's can contain one object or a collection of agents

Cellular space also includes Raster Space (inbuilt functions for reading ASCII & .pgm files) see the Repast GIS Model or Dan Browns Sluce Model for more information on raster space. For more information on Cellular Automata check this working paper out: How Cellular Models of Urban Systems Work. (1. Theory) by Paul Torrens and another good paper on CA is: Examples in Cellular Models of Urban Systems by David O’Sullivan Paul Torrens. For more information on Cellular space within Repast visit the Spaces Overview section on the Repast website

Vector GIS in Repast

More complicated (as it has its own set of specific packages) but highly adaptable. Agents can either be: Points (Generic agent in Repast talk) or Polygons (Vector agent). The difference being vector agents are static (i.e. don’t move) but do provide detailed boundaries. Both can be combined, like in the work I am doing.

Unlike cellular space the use of vector space needs its own displays e.g.: ESRI or OpenMap. However one can use other Java Displays (e.g. OpenJump) but more programming effort is needed. Check out my next post for a more detailed description of Vector GIS within Repast. For more detailed information on GIS integration with Repast, see the Repast: How to use GIS data with Repast webpage

From using Repast, it appears that for fast simulations, it is better to use cellular space also cellular space in my opinion is easier to code however there are many limitations with using it when trying to represent objects. For example agents are a fixed shape or size, can only move in certain ways etc.

No comments: