Title:
A Simulation Engine to Predict Multi-Agent Work in Complex, Dynamic, Heterogeneous Systems
A Simulation Engine to Predict Multi-Agent Work in Complex, Dynamic, Heterogeneous Systems
Authors
Pritchett, Amy R.
Christmann, Hans Claus
Bigelow, Matthew S.
Christmann, Hans Claus
Bigelow, Matthew S.
Authors
Advisors
Advisors
Associated Organizations
Organizational Unit
Series
Collections
Supplementary to
Permanent Link
Abstract
This paper documents a simulation engine developed
to accurately and efficiently simulate work by multiple agents in
complex dynamic systems. Agents (human or mechanical) are
modeled as responding to, and changing, their environment by
executing the actions that get and set the value of resources in the
environment. Each action comprises the processes that need to
be evaluated at the same time by the same agent, which are used
to reference (get) resources, consider them according to simple
or complicated processes, and then interact back on the environment by setting resources appropriately. This paper specifically
addresses timing within the simulation. The simplest approach
would update all actions at the smallest unit of conceivable time,
an approach that is not only computationally inefficient, but also
not an accurate representation of situated behavior. Instead, every
action declares its next update time as required to accurately
model its internal dynamics and the simulation engine executes
them asynchronously. Thus, an action and the resources it ’gets’
from the environment are not inherently contemporary; instead,
each action also specifies, for each resource value that it gets,
the quality of service required in terms of its temporal currency.
This reflects dynamics of the real processes being simulated:
when, in actual operations, would the environment be sampled,
and how accurately must its state be known? Additionally, this
also reflects dynamics of environmental resources how often (or
how fast) does each inherently change? Using these constructs,
the list of actions to be simulated are sorted by the simulation
engine according to their next update time. Each action, when its
time comes, is given to their agent model to be executed, and then
is sorted back into the action list according to its self-reported
next update time. Thus, actions are each updated when they need
to be. In situations where, for example, action Y needs to get a
resource which, because action X has not set it recently, does not
meet action Ys required Quality of Service. The simulation engine
will invoke action X immediately before action Y, mimicking
cases in the real system where one process calls on another to
establish the conditions it needs. The presented simulation engine
is a complete redevelopment, designed and written from scratch
at the Cognitive Engineering Center at the Georgia Institute of Technology.
Sponsor
Date Issued
2011-02
Extent
Resource Type
Text
Resource Subtype
Proceedings