=Paper= {{Paper |id=Vol-494/paper-47 |storemode=property |title=Multiagent Simulation Model Design Strategies |pdfUrl=https://ceur-ws.org/Vol-494/masspaper10.pdf |volume=Vol-494 |dblpUrl=https://dblp.org/rec/conf/mallow/Klugl09 }} ==Multiagent Simulation Model Design Strategies== https://ceur-ws.org/Vol-494/masspaper10.pdf
      Multiagent Simulation Model Design Strategies
                                                         Franziska Klügl
                                               School of Science and Technology
                                               Örebro University, Örebro, Sweden
                                                  Email: franziska.klugl@oru.se


   Abstract—Model design is particularly challenging for multi-           from minor bugs at the micro-level – in the agents design
agent simulation models as the simulation paradigm does hardly            as well as implementation.
impose constraints on it. This contribution systematically ana-        • A last issue is the difficult control of the included
lyzes procedures for developing a multi-agent simulation model:
iterative methods derived from principles, such as KISS or KIDS           assumptions – due to the size of the model and the effort
and methods focussing on the different design elements (agents,           of developing, a systematic control of the assumptions
interaction, environment).                                                taken while modeling has to be done. After modeling all
                                                                          assumptions can hardly be recapitulated and tested when
                      I. I NTRODUCTION                                    they are not explicitly collected while modeling.
   Methodological questions are more and more in the focus             These are issues mostly in design of a multi-agent model.
of research on agent-based simulation. This contribution deals      Clearly there are others, when considering all phases of
with the phase in modeling that requires most experience and        the simulation study. Examples for additional problems are
creativity from the modeler: model concept and design.              the need for validation when relevant data is missing, the
                                                                    difficulties of implementing concurrent processes or technical
   The development of a multi-agent simulation model seems
                                                                    problems due to the size of the model and simulation. Never-
to be an inherently intuitive way of modeling: Entities observ-
                                                                    theless the design phase of a modeling and simulation study
able as active in the real system are captured as active entities
                                                                    is the one the requires the most experience. This is the phase
– as agents – in the model. There seems to be no need for
                                                                    that is often coined as “art” [2].
complex aggregation or abstraction necessary for formulating
                                                                       In this contribution, we are focussing on the issues in model
the model, nor a languages that requires deep mathematical
                                                                    design and give a systematic view on different procedures. In
skills must be used. Features of the model such as variable
                                                                    the following we will first set the context of our endeavor by
structure, heterogeneities, mixed local and global effects, ...,
                                                                    tackling process models for (multi-agent) simulation, as well
can just be formulated or generated from more or less simple
                                                                    as input from agent-oriented software design. Then we will
agent behavior and interaction – just as observable in the
                                                                    give procedures for designing a model – one-shot in section
original system or stated in the original ideas. Due to this
                                                                    III and iterative in section IV. The contribution ends with a
intuitiveness and its general potential, it is often forgotten,
                                                                    discussion of the procedures and a short conclusion.
that the development of a multi-agent simulation model leads
to particular problems beyond general simulation engineering:
                                                                     II. M ETHODOLOGIES AND P ROCESSES FOR D EVELOPING
  • Determining the appropriate level of detail is everything                 M ULTI -AGENT S IMULATION M ODELS
    else but trivial. Actually, it is the basic design problem
    to determine what behavior shall be included or which           A. Simulation Study Life Cycle
    factors ignored.                                                   Phases of a systematic development of agent-based simula-
  • Thinking in terms of agents can also be a problem when          tion models have been suggested by several researchers [3],
    the modeler is used to other paradigms, such as process-        [4], [5]. While focussing on integration of data or different
    oriented or macro modeling. Then an interaction-oriented        roles of participants in the study, their suggestions for pro-
    model for generating the aggregate behavior instead of          cedures are naturally quite similar to guidelines for general
    describing it, may be difficult to design.                      simulation study development developed by [6], [7] or [2].
  • The general intuitiveness of the modeling leads to a            The basic phases are initial works such as fixing the objec-
    tendency of ad-hoc development. This is supported by            tive, making a profound analysis of the system or gathering
    visual programming tools such as SeSAm [1]. Modelers            necessary data and information. This is followed by making
    immediately start implementing instead of thinking about        a model concept and elaborating it - this is basically model
    an appropriate design beforehand.                               design. Model implementation and calibration are additional
  • Necessary effort for understanding and analyzing the            phases that are accompanied by analysis and validation phases.
    model and its overall behavior is underestimated. As in a       When the model is ready, the simulation study is completed by
    multi-agent simulation the overall behavior is generated        deployment runs and documentation and interpretation of the
    from the interactions and local behavior of agents, special     results. Clearly, bugs and deficiencies discovered in one phase
    effort has to be invested for excluding artifacts originating   may require re-working in previous phases. Figure 1 depicts
                             Fig. 1.   Phases of an agent-based simulation study. Model design may also be iterative.



these basic phases for agent-based simulation development.                 procedure has some similarities with the work described in
The model design phase is highlighted.                                     this paper; yet here the focus lies in simulation applications
   It is quite unrealistic to assume that model design can be fin-         with their specific characteristics. Our goal is to deal with a
ished within one cycle. An iterative procedure for developing              guideline how to modify the different elements of a model to
the model is appropriate not only for finding the right level of           finally build a valid simulation model.
detail – starting with a initial model that is developed further              Although there are profound differences between agent-
until it is run-able and its dynamics analyzable. Based on the             based software and agent-based simulation – such as the
insight from this analysis, the model is further improved. Such            correspondence to an original system ensured by validation
an overall iterative proceeding is indicated in Figure 1.                  or the inclusion of a simulated environment in addition to the
   This process is very abstract and does not use abstractions             simulation environment – the abstractions used for designing
and techniques that are particular for agent-based simulation.             the software system may also be useful for designing a
This would be necessary for a more specific simulation life                simulation model. This is especially the case when real-world
cycle. In contrast to agent-based software, there is no fully              organizational structures are used or folk psychology-based
elaborated meta model describing necessary elements of an                  agent architectures are appropriate in the simulation model.
agent-based simulation in general (or even for a particular                In the following we want to tackle strategies for simulation
domain) in sufficiently concrete detail. Thus, a methodology               model design from a simpler point of view:
comparable to the ones suggested for agent-based software
engineering cannot be given yet. First attempts for a formal                      III. AGENT- BASED S IMULATION M ODEL D ESIGN
meta model for multi-agent simulation models have been                        In the following we will introduce and discuss three design
made, such as in [8], but they are not on a level that makes               strategies. They are derived systematically from an idea about
them usable as a basis for the development of more specific                elements of multi-agent simulation models: It consists of
life cycle models.                                                         three basic components: agents model, environment model and
   Before we will tackle model design and possible iterative               model of the interactions. Each of them is used as a starting
improvement strategies, we will first have a short look on                 point or driving force for a design strategy; thus their usage
agent-oriented software engineering where the design of an                 can be seen as exclusive. However, it might be advisable to use
agent system is central part of every methodology.                         different approaches one after the other in an iterative setting.

B. Agent-based Software Engineering                                        A. Agent-driven Model Design
   For the development of agent-based software, many method-                  “Agent-driven model design” is the first strategy. It corre-
ologies have been suggested. Clearly, they are based on general            sponds to bottom-up design. The focus lies completely on the
software development phases such as requirements engineer-                 agents, their decision making and their behavior. Environmen-
ing/analysis, specification/design, etc. These methodologies               tal and interaction models are added when needed in the agent
rely on appropriate abstractions for representing and analyzing            design.
the agent-based software system. Development then happens                     1) Basic Strategy: The following procedure can be defined:
by elaboration of these representations. Many methodologies                   1) Agent observation and coarse behavior description: The
have been proposed for guiding the development of agent-                         modeler observes the real-world agents and derives a
based software based on roles or organizational structures or                    coarse behavior description from its observations. Ob-
focussing on specific agent concepts and architectures, such                     servations may be replaced by literature work or opera-
as BDI. Good collections can be found for example in [9]or                       tionalization of hypothesis about agent behavior/decision
[10]. Comparisons based on benchmarks [11] or features [12]                      making.
aim at supporting the selection of the appropriate methodology                2) Categorize agents and determine the location of hetero-
for a particular problem. We would just like to mention                          geneity: The coarse behavior descriptions are analyzed
[13] showing how modeling and simulation can be used for                         for determining how many classes or types of agents
the design of self-organizing agent software. The suggested                      are necessary for the model and to what level the agents
       should be different. The location of heterogeneity may
       be on the level of parameter settings, different activities
       or even completely different classes.
   3) Decide about agent architecture: Based on the coarse
       behavior description that treated the agents superficially,
       the modeler has to decide about the architecture of the
       agent. He may select a behavior-describing approach,
       for example perception-action rules with or without
       internal state representation or an architecture that is
       explicitly grounded on goals and on the configuration
       and selection of plans or even using plan generation from     Fig. 2. Specification of example bee-agent behavior using activity graphs
       first principles or an elaborated cognitive model. This       (adapted from [14]).
       selection is depending on the complexity and flexibility
       of necessary agent behavior.
   4) Formalize agent behavior/goals: The next step consists         scouting, foraging, returning to the nest, unloading, wagggle
       of filling in the actual behavior into the agent architec-    dance (recruiting) and waiting. A simple behavior-descriptive
       ture. This is done by analyzing, elaborating and refining     architecture is appropriate. Due to the identified activities, an
       the coarse behavior description developed in the first        approach based on activity graphs representing the relations
       steps.                                                        between activities is useful.
   5) Add interactions and environmental aspects when                   The next step is the formulation, i.e. specification and
       needed: Particular elements of the environmental model        implementation of agent behavior. In figure 2 we depict the
       or structures of interaction are added when the agent be-     behavior of an agent.
       havior needs to include particular perceptions, messages         Figure 2 does not indicate, when an interaction with the
       or contains manipulations of environmental entities. As       environment or other agents has to take place. When elabo-
       these aspects are added in some ad hoc manner, some           rating this graph, the modeler concurrently determines that
       re-factoring may be necessary, such as merging different      there is a 2dimensional map for scouting and discovering
       environmental entity classes. Also some considerations        resources. There must be resources that provide a nectar of
       about necessary heterogeneity are essential.                  certain quality. When returning to the hive, there must be some
   6) Test whether necessary macro-phenomena are suffi-              place to unload and some place to dance for recruitment of
       ciently reproduced: At any time, model validity has to        others. The storage area and the dance ground are only dealt
       be tested when it is testable. We assume that the focus       with on a very abstract level. They may only be attributes of
       on the agents will lead to agent behavior near validity.      an object of the type “hive”. For switching activities between
       But, a major effort will be testing wether the interplay      waiting and foraging, the actual recruitment has to be modeled.
       of agents and their environment results in a valid macro-     Information is displayed by the dancer and perceived by
       level behavior.                                               conceptive other ants that based on the received information
   This procedure is a pure agent-driven bottom-up method            decide to scout or not.
for developing a multi-agent simulation. Aspects that relate            This specification has to be implemented and tested as
agents to others or the environment are only important in so         described above. As aggregate measures, the nectar input may
far they are influencing the agent behavior. Before we continue      be available for macro-level validation as well as counts how
to discuss this procedure, we give a short example how the           many bees are dancing, how many fly out, etc.
application of this method may look like.                               3) Discussion: The result of this process is a model that
   2) Example: We used an existing simulation model[14] of           is fairly process-oriented on the agent level. For the example,
bee recruitment: The basic objective was to find support for         the agent-driven design seems to work quite well. This might
the hypotheses that the environmental structure influences the       be due to the fact that interaction happens only indirectly via
success of a recruitment mechanism in social insects.                the environment or by displaying or broadcasting information.
   Using an agent-driven approach, this model is build from          In the example, there is no direct message-based interaction.
the point of view of a honey bee. Individual bees are to be          In principle the procedure should also work with direct peer-
observed and literature has to be scanned for description of         to-peer interactions. However, the strategy does not contain
behavior and parameter values. In the second step, different         any perspective on the system-level containing for example
categories of bees are identified: scouts, foragers or bees          protocol specifications. Such a bottom-up technique where
waiting/working in the hive. In this particular case these           the modeler takes over the perspective of an agent can be
categories correspond more to activities than to different agent     appropriately tested using participatory simulations where one
types as agents may instantaneously switch between activities.       agent is controlled by a human, the others are simulated.
Therefore one may decide for a homogenous agent population              A critical issue occurs when the overall validity is not
with differences in the currently executed activity.                 reached. Then, this pure bottom-up technique will lead to trial
   The following tasks of an agent bee are to be considered:         and error procedures as during the development of the model
no connection between macro- and micro level is established.
Additionally this procedure does not help in finding the
appropriate level of detail. Therefore it needs to be combined
with an iterative procedure.
B. Interaction-driven Model Design
   There are simulation domains where a focus on interac-
tions is more appropriate than a purely agent-driven design.
Examples may be models that focus on the performance of
organizational design. In the following we want to introduce
interaction-driven design.
   1) Basic Process: One can formulate the following basic
process for interaction-driven model design:
   1) Identify actors/entities and interactions among them:
       Instead of observing individual real-world agents, the
       modeler is taking the birds’ perspective and analyzes
                                                                    Fig. 3.    First specification of recruitment protocol together with context
       who is interacting and how.                                  description. .
   2) Coarse description of protocols and their conditions,
       constraints, etc. The identified actors and interactions
       are refined to protocols going from general notions             Formulating this interaction is not trivial as it is more like
       of interaction to atomic exchanges of information and        a broadcast (or stigmergic interaction). The message is send –
       manipulations of the environment.                            respectively the information is displayed in the dance – to all
   3) Derive agent behavior for producing the interaction           agents that want to listen or observe it.
       elements (messages, signals, actions...) and add envi-          The next step would be to derive agent-behavior from the
       ronmental entities, such as shelter objects, to the model    interaction diagrams. We suggested to transfer the interaction
       when needed for interaction. In this step something like     diagram into some finite state machine like representation. If
       a finite state machine based language can be used to         we do that for every interaction the agents are participating
       specify agent interactions as state transitions.             in, a collection of finite state machines is generated. These
   4) Implement agent behavior and test whether the intended        single simple graphs have to be combined into a complete
       interactions and their outcome on the macro level are        behavior description. This is done by first identifying similar
       actually produced by the overall system. It must be also     states as interfaces which’s unification merges the single state
       tested whether the agent level behavior is plausible or      machines into some larger one. This larger one is probably too
       valid – depending on the available data.                     large as every interaction aspect is modeled explicitly. It might
   In the interaction-driven approach, agents are basically seen    be possible to simplify some parts. Therefore, a refactoring
as black boxes for producing the appropriate messages, infor-       might be necessary for bringing the overall state graph into
mation, etc. The general procedure may be further developed         some well-structured and minimal form.
into some form organization-driven model design inspired by            Figure 4 shows the straight forward combination of a
similar methods and methodologies from agent-oriented soft-         number of single-interaction state charts. For connecting we
ware engineering. Then, analysis of organizational structures       identified two times similar nodes – end nodes of one interac-
forms the starting point for all system analysis as it forms the    tions, starting nodes of the other. In the graph such nodes are
structural backbone of interactions.                                depicted as black nodes with second ring.
   2) Example: We use the same example as above for il-                During the development of this behavior graph, we had to
lustrating the approach and its differences to the agent-driven     add state machines for interaction partners that are not given
procedure.                                                          in figure 4. These interaction partners are the bee hive sending
   As given above, we start by identifying the actors and           information that is used for the evaluation of the value of the
their interactions. Again we have to tackle the problem of          load when the bee-agent is returning to the hive. Additionally,
the location of necessary heterogeneity. Are the actors to be       we omitted the interaction with the overall environment where
found on the level of scouts or foragers or as bees on a            the agent is requesting and receiving perception information
more homogeneous level? In our particular case we took bees         and with resources with that it interacts while harvesting the
as agents. Table I shows the basic interaction between the          nectar of this resource.
different types of entities.                                           As a next step, it has to be determined what happens within
   The next step is the elaboration of the protocols. We suggest    the different states. This is straight forward, often consisting
to use UML-based interaction diagrams for the initial descrip-      of waiting for incoming messages.
tion. In figure 3 we show the description of the recruitment           3) Discussion: Despite of the birds’ eye perspective, this
protocol together with an (still) informal text about its context   procedure did not result in an abstract and minimal behavior
of appearance.                                                      description. Nevertheless, the interaction and dependency of
                                            Interactions       Bees                  Resources   Nectar Storage
                                            Bees               Recruitment           Harvest     Unloading
                                            Resources          Localization          -           -
                                            Nectar Storage     Status Information    -           -
                                                                       TABLE I
                                                        I NTERACTION TABLE FOR BEES AS AGENTS .




                                                                                    1) Identify relevant aspects (global status, global dynamics/
                                                                                       local entities) of the part of the model that represents the
                                                                                       environment.
                                                                                    2) Determine the primitive actions of the agent and the
                                                                                       reaction of the environmental entities to these.
                                                                                    3) Determine what information from the environment must
                                                                                       be given to an agent so that it can appropriately select
                                                                                       and perform its actions.
                                                                                    4) Decide on an agent architecture that is apt to connect
                                                                                       perceptions and actions of the agent appropriately for
                                                                                       actually producing the agents behavior. Concurrently, the
                                                                                       elements of the internal agent status are settled.
                                                                                    5) Use a learning mechanism for determining the actual
                                                                                       agent behavior. A reward function for providing feed-
                                                                                       back to the agents actions has to be found. The reward
                                                                                       schema also tackles questions such as when and how
Fig. 4. Putting together single interaction state machines into a complete             often to provide feedback to the agents, whether all
agent-level graph that describes all interactions of an agent. The black nodes         agents learn based on a shared reward or individual
were the initial start and end nodes of the two graphs. They are basically the         reward is given to the agents.
interfaces between the two state machines .
                                                                                    6) Implement the environmental model including reward
                                                                                       function if needed.
behavior on information and material provided by others                             7) Specify and implement the agents behavior program or
is treated explicitly, much more than in the agent-driven                              agent interfaces in combination with the chosen learning
approach. This is actually an advantage of this procedure.                             mechanism.
   However, one can foresee problems when actual pro-active                         8) Test and analyze the overall simulation results and
behavior has to be formulated. That means behavioral dy-                               individual trajectories carefully for preventing artifacts
namics that are not triggered by external messages. Another                            that come from an improper environmental model or
drawback is, that also resources and other entities that are                           weak interfaces (perceivable situations and effects of
basically are no agents, have to be treated as agents as every                         primitive actions).
interaction is formulated based on protocols. Although these                        2) Example: For an illustration of this model design strat-
are then just “passive” agents, they have to be practically                      egy we again use the recruitment scenario although the envi-
tackled as agents for specifying the interactions.                               ronmental complexity is not high enough to actually require
   Due to its focus on direct interaction, other forms of inter-                 such a procedure.
action may be hard to model, such as stigmergic interaction                         The start is made by formulating the environmental model.
in form of broadcasted messages that are persistent in the                       In this simple case the environment consists of a global world
environment decoupling sender and receiver. However, for                         entity managing a 2-dimensional map, a central hive entity
simulated multi-agent systems with interaction that relies on                    that is basically a container for the storage and a number of
message-based communication this design strategy seems to                        resource entities randomly distributed over the map, each with
be appropriate.                                                                  an individual nectar supply.
                                                                                    The initial environmental configuration in this case is the
C. Environment-driven Model Design                                               following: the hive is positioned in the center of the map.
  The third strategy we want to analyze is driven by a focus                     Each resource is located at a random position. Every resource
on the environment.                                                              object has an attribute called “nectar supply” that is initially
  1) Basic Process: In analogy to the previously discussed                       set according to a normal distribution.
design strategies, the starting point of the environment-driven                     The next step is to design the perception capabilities and
design is an analysis of the environmental structure. Based                      possible primitive actions – the interfaces of the bee agents.
on this, the agent interface and its behavior definition are                     Without particular regard on what is actually needed in the
determined. The steps are in particular:                                         behavior definitions, we can list the following perceptions:
  •   perceive nearby resource, its position respectively (if nearby)     complex agent-based simulation models are not well integrated
  •   perceive existence of resource (from a certain distance)            into this design procedure.
  •   perceive capacity of resource (if nearby)
  •   perceive hive storage (if nearby)                                      Involving learning mechanisms forms a basis for research
  •   perceive position display (if at hive)                              questions with evolutionary background. However, integrating
  •   perceive current nectar load                                        agent learning into the model design makes the model suscep-
... and actions:                                                          tible for artifacts coming from incomplete, imprecise or not
  •   Perform random search                                               fully elaborated reward or fitness functions. Agents that adapt
  •   Fly towards perceived resource                                      to an environmental model with flaws can never reliably re-
  •   Fly towards hive
  •   Load nectar                                                         produce an original system independent how good the learning
  •   Unload nectar                                                       mechanism or the rest of the model is. Nevertheless, it is not
  •   Display resource information                                        trivial to find appropriate feedback functions characterizing the
  •   Memorize perceived position
                                                                          goal of the agents’ development.
   One can notice that with defining this interface, the modeler             Another risk of this environment-driven approach consists
also determines the abstraction level of the behavior definition          in the selection of the learning mechanism. It could easily
– the environmental model alone did not fully determine the               happen that no appropriate learning mechanism exists that
level of abstraction.                                                     can be used without further research. It is not so difficult to
   The next step is to connect perceptions and action to                  reach the boundaries of what is possible using current state-of-
produce actual agent behavior. In our case this could be done             art learning: involving co-adaptation, true multi-agent learning
using a rule-based approach with rules defined by the modeler.            with more than a couple of agents, non-Markov settings, etc.
The simple interface that already indicates that a rule-based             Then the learning problem may be too hard for finding a
approach – including some stochasticity in agents decisions for           mechanism that converges within a feasible time.
some very abstract treatment of internal motivation – might be
sufficient.                                                                IV. S TRATEGIES FOR I TERATIVE M ODEL D EVELOPMENT
   We may suggest the following rules determining the agent                  The strategies introduced above are for designing an agent-
behavior:                                                                 based simulation model in one step. Especially for identifying
  1) if hive-storage < A then perform random search (with probability     the appropriate level of detail iterative procedures may be
     pA )
  2) if not at hive and not perception of resource then perform random    combined with these strategies.
     search
  3) if perception of resource then fly towards perceived resource        A. KISS: “Keep It Simple, Stupid”
  4) if at resource then memorize resource information
  5) if at resource then load nectar with rate load
                                                                             The well known KISS principle for simulation modeling
  6) if nectar load > B then fly towards hive                             means that the modeler should avoid unnecessary complex
  7) if at hive and nectar load > B then unload nectar with rate unload   models, but keep the model as simple as possible for gen-
  8) if at hive and resource information memorized then display re-
     source information
                                                                          erating the appropriate behavior. Simple models contain less
  9) if not at hive and not perception of resource then fly to hive       sophisticated assumptions, can be easier explained and under-
     (with probability pcancel                                            stood. Simplicity also refers to the modeling and simulation
   This set of rules is quite small, but sufficient. There are            paradigm used formulating and simulating the model.
some probabilities and thresholds to be set ideally based on                 The starting point of this procedure is the identification and
available data.                                                           description of phenomena of the original system that should
   While not necessary in the example, using a learning                   be contained, respectively reproduced by the final model.
mechanism might be an appropriate solution for generating                 Grimm and Railsback [15] call these basic modules of system
the behavior program based on the perceivable situations and              data characteristics “pattern”. Examples for such pattern are a
primitive actions of the agents. A learning approach, e.g. based          certain statistical distribution of tree sizes in a forest, another
on classifier systems seems to be feasible at least in this               pattern is then the spatial distribution of large trees.
application example.
                                                                             1) Identify and describe the set of observable
   The major question in this application example is when                       properties (statements)
to give feedback as an information to the agent about its                       about the real system S.
performance: Giving feedback after each step does not make                   2) Define a model M0 that is apparently too
                                                                                simple for reproducing the system
sense: the random search without information is intentional.                    with all its properties
The agents shall not learn where the resources are positioned.               3) By calibration, determine the set SM of
Ideally, positive feedback shall be only given when the agent                   properties, that are reproduced
                                                                                by M0 .
has accomplished to recruit other bees to a good resource                    4) M ← M0
or even more delayed, the reward to all agents could be                      5) Repeat Until SM = S
proportional to the current influx to the overall hive storage.                   a) M ← modify model M for producing more
                                                                                     elements in S than in the last
   3) Discussion: Again one can find potential problems con-                         iteration.
sidering the agents internal motivations for generating true                      b) Calibrate M and determine SM as the set
pro-active behavior without external triggers. Such elements of                      of properties reproduced by M.
   When this algorithm stops, the result should be the simplest    Put into a more pseudo-code way of presentation, the TAPAS
model that captures all phenomena identified at the beginning      strategy might look like the following procedure.
of the process.
                                                                      1) Select an appropriate existing model M
   However, it remains open how to modify and enlarge the             2) if M is not implemented, implement it and
model for producing the next model from the previous one.                validate it using model alignment
Sometimes also side-steps might be necessary removing one                with respect to published data about M .
                                                                      3) Add new, additional aspects to produce Madd
model component and adding an alternative one. Finally, it is         4) Test and Validate Madd ,
not trivial to see how to modify a model best for producing              if sufficient, ready, else go back to 3 or - if
any additional phenomena. In worst case, this might result in            necessary to 1.
a try-and-error procedure. Nevertheless the documentation of          Step 3 and 4 are similar to the KIDS methodology. The
every single model shall be elaborated that especially contains    critical step is the selection (and existence) of the reusable
a list of taken assumptions.                                       model. A sufficient documentation of the original model is
                                                                   essential and can be seen as a major prerequisite for reuse
B. KIDS: “Keep it Descriptive, Stupid”                             [18].
   In 2004, B. Edmonds and S. Moss published a plea against           There are also some perils: it is not known a priori whether
in their eyes over-simplified models in social science (see        the model with modification is minimal, valid, or possesses
[16]); Their major argument was: “The point is that it is          the intended properties. The advantages of having a starting
simply not appropriate to make simplifications before one          point have to be traded off the effort that it means to adapt
knows what is relevant and what not.” (italics in the original).   the given model to the new ideas. This is very risky when the
They therefore suggest to initially construct a model with agent   model for reuse is not fully understood by people that want
behavior that is understandable and directly deducible from the    to reuse it.
observed behavior, but not necessary simple.                          Given appropriate tool support, also partial models, that
   The iterative algorithm based on this KIDS-principle based      means single agents, groups of agents or the complete en-
strategy can formulated as in the following.                       vironmental structure, may be used as a starting point for new
                                                                   model development.
   1) Repeat until a valid model Ms is constructed
        a) Define a model M that contains all
                                                                   D. Candidate-based Modeling
           apparently relevant aspects of agent                       In his book about biological modeling in general Haefner
           behavior.
        b) Identify all assumptions and make explicit
                                                                   [19] suggests a procedure for modeling and simulation in
           all parameter in Mi .                                   research. Basically, it consists of the construction of a set of
        c) Execute a sensitivity analysis for all                  alternative models. They might differ in parameter settings, but
           parameter of M and eliminate all blocks
           of behavior that are controlled by a
                                                                   may also use different architectures, etc. Each of the model
           parameter without effect on                             candidates is calibrated and evaluated by validation. The “best”
           the overall outcome. Ms is the model M                  model is selected and used as a basis for future research.
           after sensitivity analysis
        d) Test Ms for credibility and validity
                                                                   This procedure is hardly about iterative changes, but involves
                                                                   the treatment of several models which has to be done when
   At first sight, this procedure basically resembles the usual
                                                                   for example conflicting hypotheses have to be evaluated for
try-and-error strategy. It does not give any hint what to do if
                                                                   possible rejection. The candidate-based strategy is generally
the model is not sufficiently valid in terms of aspects that are
                                                                   applicable, but does not state how one may come to one
not reproduced; As it is less systematic than the KISS strategy,
                                                                   candidate or from one candidate to another.
the KIDS strategy is more apt for experienced modelers that
know with what model to begin and how to operate if the            E. Discussion
outputs are not as intended.                                          In this section we surveyed iterative model design strategies.
                                                                   We did not tackle particular design strategies for one model,
C. TAPAS: “Take a previous model, add something”
                                                                   but general procedures how to proceed from a first prototype
   A third strategy for model design is pragmatic and focusses     to the model ready for deployment. Which of these strategy
on reuse of models. In the agent-based simulation area, it has     is appropriate for a particular simulation study is depending
been coined by [17] without further discussing the term. It is     on the personal style of the modeler, on his experience, on
related to the KIDS-based strategy but takes an existing model     the application domain, on the available data, etc. The table II
as starting point.                                                 sums up and contrasts properties of these strategies. First, the
   Reuse of models becomes the more inevitable the more            appropriateness of the strategies for different types of multi-
expensive investments have been already made to produce            agent simulation models is estimated. A second block refers
the model. As construction and testing of an agent-based           to directed-ness of the model and minimality of the outcome
simulation is more expensive than for traditional analytical or    of the modeling process. The third block of rows compares
simpler microscopic models, reusing a fully validated model        aspects of necessary data availability and other properties of
should be especially interesting for agent-based simulations.      the modeling process - for example how well this procedure
                       Strategy    KISS   KIDS   TAPAS   Cand.-
                                                         based      equally thoughtful implementation, calibration, documentation
           Apt for linear models   high   high   high    high       and especially validation. We already tackled these phases
   Apt for emergent phenomena      low    high   mid     high       in an insolated way that leaves a lot of research open for
  for shared-environment actors    mid    high   mid     high
          Objective-orientedness   high   mid    mid     mid
                                                                    combining the different solutions. This – and the application
           Resulting minimality    high   mid    low     mid        and test of the identified design strategies – form the next steps
            Share of try & error   low    mid    high    high       in the future.
     Empirical data requirement    mid    mid    low     high
       Integration of knowledge    mid    high   high    mid                                      R EFERENCES
        Communication support      mid    high   mid     mid
             Modeling overhead     mid    mid    low     high        [1] F. Klügl, “Sesam: Visual programming and participatory simulation for
     Expertise in macro models     high   low    low     low             agent-based models,” in Multi-Agent Systems: Simulation and Applica-
      Expertise in micro models    high   high   low     high            tions, A. M. Uhrmacher and D. Weyns, Eds. Taylor & Francis, 2009.
       Required tool knowledge     high   mid    mid     high        [2] R. E. Shannon, “Introduction to the art and science of simulation,” in
                                                                         Winter Simulation Conference 1998, 1998, pp. 7–14.
                            TABLE II                                 [3] N. Gilberg and K. G. Troitzsch, Simulation for the social scientist,
         C OMPARISON OF ITERATIVE MODELING PROCEDURES                    2nd ed. Open University Press, 2005.
                                                                     [4] A. Drogoul, D. Vanbergue, and T. Meurisse, “Multi-agent based simu-
                                                                         lation: Where are the agents?” in MABS 2002, 2002, pp. 1–15.
                                                                     [5] M. Richiardi, R. Leombruni, N. Saam, and M. Sonnessa, “A common
                                                                         protocol for agent-based social simulation,” Journal of Artificial Soci-
supports the communication of the current model status. The              eties and Social Simulation, vol. 9, no. 1, 2006.
last block refers to whether the modeler needs expertise,            [6] A. M. Law, Simulation Modeling and Analysis, 4th ed. McGraw-Hill,
                                                                         2007.
whether he has also to tackle macroscopic relations within the       [7] O. Balci, “Validation, verification and testing techniques troughout the
model – usually expressed in complex formulas, or whether                life cycle of a simulation study,” Annals of Operations Research, vol. 53,
this iterative procedure is also apt for beginners in agent-based        pp. 121–173, 1994.
                                                                     [8] F. Klügl, “Towards a formal framework for multi-agent simulation
modeling. We assumed that tools are available that support               models,” Institut für Informatik, Universität Würzburg, Tech. Rep. 412,
each of the strategies.                                                  2007.
   Using table II a modeler may select a specific iterative          [9] B. Henderson-Sellers and P. Giorgini, Eds., Agent-Oriented Methodolo-
                                                                         gies. IDEA Group Publishing, 2005.
strategy for finding the best model in accordance with features     [10] F. Bergenti, M.-P. Gleizes, and F. Zambonelli, Eds., Methodologies and
of the simulation problem. Selection may also rely on common             Software Engineering for Agent Ssytems: The Agent-oriented Software
sense heuristics: if a good previous model is accessible, then           Engineering Handbook, ser. Multiagent Systems, Artificial Societies and
                                                                         Simulated Organizations. Boston, London: Springer, 2004.
it is a good idea to reuse that model. If the modeler knows         [11] G. Weiss and R. Jakob, Eds., Agentenorientierte Softwareentwicklung.
the system that has to be simulated very well, then the KIDS             Springer, 2004.
approach should be used, whereas large holes in the system          [12] Q.-N. N. Tran and G. C. Low, “Comparison of ten agent-oriented
                                                                         methodologies,” in Agent-Oriented Methodologies, B. Henderson-Sellers
knowledge advise more candidate-based or KISS modeling.                  and P. Giorgini, Eds. IDEA Group Publishing, 2005, ch. XII, pp. 341–
All these iterative procedures may be combined with the                  367.
particular design strategies identified above.                      [13] C. Bernon, M.-P. Gleizes, and G. Picard, “Enhancing self-organising
                                                                         emergent systems design with simulation,” in Engineering Societies in
                          V. C ONCLUSION                                 the Agents World VII, 7th International Workshop, ESAW 2006, Dublin,
                                                                         Ireland, September 6-8, 2006 Revised Selected and Invited Papers, ser.
   Model design is the phase in the development of a simula-             Lecture Notes in Computer Science, G. M. P. O’Hare, A. Ricci, M. J.
                                                                         O’Grady, and O. Dikenelli, Eds., vol. 4457. Springer, 2007, pp. 284–
tion model, that requires most experience and skills[2]. This            299.
is true for all forms of simulation modeling, in particular         [14] A. Dornhaus, F. Klügl, C. Oechslein, F. Puppe, and L. Chittka, “Benefits
for the development of multi-agent simulation models. In                 of recruitment in honey bees: effects of ecology and colony size in an
                                                                         individual-based model,” Behavioral Ecology, vol. 17, no. 3, pp. 334–
this contribution we have identified and discussed different             344, 2006.
strategies for model design – one shot or iterative. The latter     [15] V. Grimm and S. F. Railsback, Individual-Based Modeling and Ecology.
can be combined with the former for really developing a                  Princeton University Press, 2005.
                                                                    [16] B. Edmonds and S. Moss, “From kiss to kids - an ’anti-simplistic’
well designed model. Even, if the resulting model is not                 modelling approach,” in Multi-Agent Based Simulation, ser. LNAI, P. D.
significantly “better” than a model developed without these              et al., Ed., no. 3415. Springer, 2004, pp. 130–144.
strategies, their application has the great advantage that they     [17] A. Pyka and G. Fagiolo, “Agent-based modelling: A methodol-
                                                                         ogy for neo-schumpeterian economics,” Universität Augsburg, Volk-
support a systematic development and at least partially guide            swirtschaftliche Diskussionsreihe, Tech. Rep. 272, 2005.
the development. Nevertheless, the different strategies have to     [18] C. Triebig and F. Klügl, “Elements of a documentation framework for
be further tested and elaborated in various simulation studies           agent-based simulation models,” Cybernetics and Men, accepted 2009.
                                                                    [19] J. W. Haefner, Modeling Biological Systems – Principles and Applica-
with different degrees of necessary model complexity.                    tions, 2nd ed. New York: Springer, 2005.
   The vision behind our research is developing a methodology       [20] J. D. Sterman, Business Dynamics: Systems Thinking and Modeling for
for successful development of multi-agent simulation studies.            a Complex World. Boston: McGraw Hill, 2000.
The idea is to develop a methodology similar to System
Dynamics [20] that allows the development of difference
equation models starting from causal loop graphs to systems of
formulas in a guided and systematic way. In agent-based sim-
ulation, systematic model design has to be accompanied with