[udig-devel] Agent Based Modeling
Jody Garnett
jgarnett at refractions.net
Sun Sep 16 12:40:53 PDT 2007
Cool - have you ever come to the right spot :-)
uDig is really good at intergration; the RCP plugin system lets you run
your code with a high degree of isolation/safety.
> Our scientific visualization and agent based modeling group,
> redfish.com, is starting to use GIS in our work quite a bit. We've
> done a wildfire evacuation model (using Python's gdal/shapelib
> libraries and Processing.org's 3D visualization with DEM/Satellite
> imagery), a crowd evacuation model (using netlogo and GIS raster
> data), and sea-level analysis using Python and Google Earth.
Sweet :-)
> This works fine, but we'd like to become more expert in the GIS world,
> so are evaluating the open platforms available (our work is open
> source as far as possible). So we've been looking at the alternatives
> and stumbled across uDig's great project (thanks!).
Welcome; we are LGPL so you can still bundle everything up with your
software at the end of the day. There will be a few GPL community
plugins that you would need to take a pass on. But none of these ship
with the sample uDig app that you download.
> A couple of ideas have come up for us:
>
> 1 - A new layer type called an "active layer". This would form the
> basis for agent based modeling on top of GIS data. Note: ABM is
> described here:
> http://en.wikipedia.org/wiki/Agent_based_model
> Basically ABMs are comprised of many "agents" which are independent
> software objects with their own local rules rather than a centralized
> "intelligence". Our models often have 10-100 thousand agents. Cars on
> a street, investors in a market, people in a crowd, birds in a flock,
> ants in a swarm, and so on.
Sounds fine; you can host any add hock data model you need on the Layer
blackboard, and then render what that model is doing with a "Map
Graphic". You do not really need to get into GIS much unless you want
to. Just use uDig as an intergration platform.
> We've had success using non-ABM systems for modeling .. Processing
> being the best recent example. Do you think this would work with
> uDig? The idea would be for a top-level layer to be able to inquire
> about its environment (roads, rivers, houses etc) and to be able to
> move around in this.
I am familar with agents. There is also a blackboard at the Map level if
your agents want to live there and latch onto the rest of the information.
> To get an idea of this sort of thing, here is a stadium evacuation
> done in Processing:
> http://backspaces.net/models/Stadium/applet/
> It has active agents (the moving point) running on Processing's
> stadium wireframe. We'd like the same thing .. for example boats on
> the canals of Venice!
>
> 2 - 3D: Its surprisingly useful to use 3D in modeling. Netlogo lets
> you build a 2D model, then pop it into a 3D view where you easily zoom
> around to see details. JOGL has helped Java a bunch in this regard.
There have been a couple of exeperimental renderers in this regard. We
would welcome your team setting up a 3D renderer around the model we
have (ie Map/Layer/Style).
> So the two questions are:
> - Would it be easy to build an "active layer" for many agents to move
> on within uDig? We'd assume this might require double buffering or
> similar to make the static GIS data not be redrawn each "frame" of the
> agent "movie".
We have done a geovideo service before which had a moving dot associated
with a "live" video feed. Supposed to be from a cop car or a UAV in a
disaster response senario. You can look at the resulting codebase in our
svn repository, and check out the a video of this stuff on the OGC website.
> - Can we currently pop a set of layers into 3D with uDig?
Nope; we are focused on intergration. A 3D renderer has not been
provided yet - but when it is we are in a good position to make use of it.
Cheers,
Jody
More information about the udig-devel
mailing list