Next: Acknowledgments
Up: An Improved Framework for
Previous: Discussion and future Work
Summary / Conclusions
This paper presents a framework for large scale multi-agent
simulations of travel behavior. The immediate goal is a replacement
of the traditional four-step process for transportation planning; the
longer term goal is to have an agent-based system for all aspects of
urban and regional planning. The core ideas of the system are:
- One should separate the simulation of the physical world from the
simulation of the mental world of the agents. This is reflected by a
design that strictly separates those two worlds. A mental/strategic
layer generates strategies (``plans''); these plans are executed by a
physical layer; and then strategies are adapted based on how they
performed in the physical layer. In the specific case of
transportation simulations, the physical layer is also called the
traffic (micro-)simulation, or the mobility simulation.
- Agents should memorize more than one strategy. This gives them
the option to try out all strategies multiple times, and thus to
obtain average scores for them (``exploration''). When agents do not
explore, then they exploit, by selecting strategies based on the
score, possibly using some behaviorally justified model such as
multinomial logit. From time to time, agents should also add new
strategies to their repertoire, or delete strategies with low scores.
All this functionality is implemented by a so-called agent database.
- As said above, agents from time to time add new strategies to
their repertoire. These strategies need to be generated by some
method. In our approach, the methods that generate new strategies can
be completely independent modules. They read an XML file that
specifies which pieces of an agent's plan are already known, and the
external module adds or changes pieces. For example, one module could
generate activity patterns, another one activity locations, a third
one activity times, and a fourth one routes. The framework will call
all those modules one by one and in the end have a completely new plan.
The XML plans file uses exactly the same format for all those
exchanges; and the same format is again used to send plans to the
physical simulation. This means that we have only one file format
specifying agent plans.
- Performance information from the physical simulation is
communicated back via an events file. Events are output every time
something relevant happens, such as an agent leaving an activity, or
entering a link. In general, the physical simulation performs no data
aggregation at all; in consequence, something like link travel time
needs to be constructed from link entry and link exit events. The two
big advantages of this approach are: (1) It is straightforward to
retrofit those outputs to any existing agent-based mobility
simulation, since there is no data aggregation either along space or
along time. Any event is just a simple print command inside the
mobility simulation. (2) External strategy generation modules can also
read this information and use it as they like. For example, an
external module building a mental map for one specific agent will use
the link entry/exit information in completely different ways than the
routing module. If the simulation would aggregate link entry/exit
information into link travel times, adding such a mental map module
would no longer be possible.
- Strategies are full 24-hour day plans, and are also evaluated as
such. The strategy evaluation is based on the events, and therefore
on actual individual performance of each agent. The evaluation is
therefore immune against errors introduced by aggregation. One
obvious candidate for the scoring function is the conventional utility
function, but other systems such as aspect theory can be used. Since
all agents are individually represented, it is no problem to couple
those evaluations to individual attributes, such as gender or income.
- The approach is completely transparent toward parallel
computing. Having a parallel mobility simulation needs some
programming effort, but is conceptually straightforward since methods
from the simulations of other physical systems can be applied. And
making the agent database or the external strategy generation modules
parallel is completely trivial as long as agents do not interact: One
simply distributes agents (or possibly households) across CPUs. Only
when interactions beyond the household level become important will
more advanced computing techniques become necessary.
- The implementation was tested with three scenarios, one testing
route equilibration, one testing times choice, and and one
testing route equilibration in conjunction with time choice. Route
equilibration works as expected, in the sense that the system ends
up with using nine equivalent routes equivalently. Also time choice
works as expected, in the sense that agents adjust their daily
timings in a plausible way.
- A curious aspect about the time choice test is that the external
module that generates alternative timing schemes has no
``intelligence'' at all: Instead, it just randomly mutates existing
schedules of the agents. The interpretation of the new schedules is
entirely done by the agent database and its scoring function. This
means in practice that the correctness specifications toward external
modules are significantly relaxed: In essence, it is sufficient if
external modules generate meaningful solutions plus some
variability.
Next: Acknowledgments
Up: An Improved Framework for
Previous: Discussion and future Work
2004-05-09