Repast Simphony Statecharts
Authored by Michael North, Nicholson Collier, Jonathan Ozik, Charles M Macal, Todd Combs
Date Published: 2015
Sponsors:
United States National Institutes of Health (NIH)
United States Department of Energy (DOE)
Platforms:
Repast
Java
Model Documentation:
UML
Other Narrative
Flow charts
Model Code URLs:
Model code not found
Abstract
Agent states and transitions between states are important abstractions
in agent-based social simulation (ABSS). Although it is common to
develop ad hoc implementations of state-based and transition-based agent
behaviors, ``best practice{''} software engineering processes provide
transparent and formally grounded design notations that translate
directly into working implementations. Statecharts are a software
engineering design methodology and an explicit visual and logical
representation of the states of system components and the transitions
between those states. Used in ABSS, they can clarify a model's logic and
allow for efficient software engineering of complex state-based models.
In addition to agent state and behavioral logic representation, visual
statecharts can also be useful for monitoring agent status during a
simulation, quickly conveying the underlying dynamics of complex models
as a simulation evolves over time. Visual approaches include
drag-and-drop editing capabilities for constructing state-based models
of agent behaviors and conditions for agent state transitions. Repast
Simphony is a widely used, open source, and freely accessible
agent-based modeling toolkit. While it is possible for Repast Simphony
users to create their own implementations of state-based agent behaviors
and even create dynamic agent state visualizations, the effort involved
in doing so is usually prohibitive. The new statecharts framework in
Repast Simphony, a subset of Harel's statecharts, introduces software
engineering practices through the use of statecharts that directly
translate visual representations of agent states and behaviors into
software implementations. By integrating an agent statecharts framework
into Repast Simphony, we have made it easier for users at all levels to
take advantage of this important modeling paradigm. Through the visual
programming that statecharts afford, users can effectively create the
software underlying agents and agent-based models. This paper describes
the development and use of the free and open source Repast Simphony
statecharts capability for developing ABSS models.
Tags
Simulation
models
systems
Multiparadigm