=Paper= {{Paper |id=Vol-494/paper-41 |storemode=property |title=Exploiting the easyABMS Methodology in the Logistics Domain |pdfUrl=https://ceur-ws.org/Vol-494/masspaper4.pdf |volume=Vol-494 |dblpUrl=https://dblp.org/rec/conf/mallow/GarroR09 }} ==Exploiting the easyABMS Methodology in the Logistics Domain== https://ceur-ws.org/Vol-494/masspaper4.pdf
       Exploiting the easyABMS methodology in the
                      logistics domain

                                                          Alfredo Garro, Wilma Russo


                                                                              given conceptual system model to a specific ABMS tool
   Abstract— ABMS (Agent-Based Modeling and Simulation) has                   which, however, requires additional adaptation, calling for
arisen as new approach to effectively support domain experts to               extra work, the amount of which increases depending on the
cope with the growing complexity of the problems which they                   gap between the conceptual and the implementation model of
have to face and solve. To date, few methodologies are available
which can be exploited by domain experts with limited
                                                                              the system. Thus, both approaches lead to simulation models
programming expertise to model and subsequently analyze                       which are difficult to verify, modify and update.
complex systems typical of their application domains. The                        To address these issues, a new methodology, easyABMS,
easyABMS methodology has been proposed to overcome the lack                   has recently been proposed [4,5] which has specifically been
of integrated methodologies able to seamlessly guide domain                   conceived for agent-based modeling and simulation of
experts from the analysis of the system under consideration to its            complex system, seamlessly covering all the phases from the
modeling and analysis of simulation results. In this paper, the
effectiveness of easyABMS is demonstrated through a case study
                                                                              analysis of the system under consideration to its modeling and
in the logistics domain which concerns the analysis of different              analysis of simulation results. easyABMS defines an iterative
policies for managing vehicles used for stacking and moving                   process which is integrated, model-driven and visual. In
containers in a transshipment terminal.                                       particular, each phase of the process refines the model of the
                                                                              system which has been produced in the preceding phase and
Index Terms— Agent-Based Modeling and Simulation, Agent-                      its work-products are mainly constituted by visual diagrams
Oriented Methodologies, Container Terminal Management.                        based on the UML notation [23]. In addition, according to the
                                                                              model-driven paradigm [1, 21] the simulation code is
                          I. INTRODUCTION
                                                                              automatically generated from the derived system Simulation

A     gent Based Modeling and Simulation (ABMS) is a new
      approach for analyzing and modeling complex systems,
an approach which is becoming acknowledged for its efficacy
                                                                              Model. On the basis of the simulation results, a new/modified
                                                                              and/or refined model of the system can be obtained through a
                                                                              new process iteration which can involve all or some process
in several application domains (financial, economic, social,                  phases.
logistics, physical, chemical, engineering, etc) [17]. ABMS,                     Currently, easyABMS exploits the advanced features of
allows for the definition of a system model based on                          visual modeling and of (semi)automatic code generation
autonomous, goal-driven and interacting entities (agents)                     provided by the Repast Simphony Toolkit [17,18], a very
organized into societies which is then simulated so to obtain                 popular and open source ABMS platform.
significant information on not only the properties of the                        In this paper, the effectiveness of easyABMS in supporting
system under consideration but also its evolution.                            domain experts to fully exploit the benefits of the ABMS,
   Although several ABMS tools are currently available [10,                   while significantly reducing programming and implementation
11, 19, 20, 24], there are only a few methodologies involving                 efforts, is exemplified through a case study in the logistics
well- defined processes which are able to cover all the phases                domain. Specifically, the case study is focused on the analysis
from the analysis of the system under consideration to its                    of different policies for the management of vehicles used for
modeling and subsequent analysis of simulation results [7, 8,                 stacking and moving containers (straddle carriers) in a
17]. As a result, simulation models are often obtained using                  container transshipment terminal.
the two following approaches: (i) a direct implementation                        The remainder of this paper is organized as follows: Section
based on a chosen ABMS tool of the simulation model whose                     II presents an overview of the easyABMS methodology and
abstraction level is then too low and platform dependent as a                 the related process; Section III presents a brief introduction to
conceptual modeling phase is not available; (ii) adapting a                   the reference application domain (a container transhipment
                                                                              terminal) and to related management problems; Section IV
    A. Garro is with the Department of Electronics, Informatics and Systems   shows the application of easyABMS to the agent-based
(DEIS), University of Calabria, Rende (CS), 87036 Italy. (e-mail:
                                                                              modeling and simulation of the Straddle Carrier Routing and
alfredo.garro@unical.it).
    W. Russo is with the Department of Electronics, Informatics and Systems   Dispatching problem; finally, conclusions are drawn and
(DEIS), University of Calabria, Rende (CS), 87036 Italy. (e-mail: w.russo     future works delineated.
@unical.it).
                                                        is linked to




                                                                                                is linked to
                                                                       Involves
                                                        Involves




                                        Fig. 1. The reference meta-model of easyABMS.

                                                                                  Currently, all the simulation related phases are supported by
               II. AN OVERVIEW OF EASYABMS                                        the Repast Simphony Toolkit [18, 20]. In particular, the
   The easyABMS methodology defines an iterative process                          Simulation Design and the Simulation Code Generation
for ABMS composed of seven subsequent phases from the                             phases are supported by the Repast Simphony Development
System Analysis to the Simulation Result Analysis [4, 5]. On                      Environment [15], while the Simulation Set-up, the Simulation
the basis of the simulation results obtained a new iteration of                   Execution and the Simulation Results Analysis phases are
the process which can involve all or some process phases can                      supported by the Repast Simphony Runtime Environment [16].
be executed for achieving new simulation objectives or those                         The models of the system generated by each process phase
which have not yet been obtained. Specifically, the process                       are produced according to the well-defined reference meta-
phases are the following:                                                         model shown in Figure 1 so to facilitate the verification of the
− System Analysis, in which a preliminary understanding of                        correctness of the models produced. Moreover, the concepts
   the system and the main simulation objectives are obtained                     related to each phase are defined by extending and/or refining
   (Analysis Statement);                                                          those of the previous phase; this allows for the seamless
− Conceptual System Modeling, in which a model of the                             integration between the phases as the model produced in each
   system is defined in terms of agents, artifacts and societies                  phase extends and/or refines the model of the system
   (Conceptual System Model);                                                     produced in the previous phase.
                                                                                     The following sub-sections provides a brief description of
− Simulation Design, in which a model of the system is
                                                                                  each process phase.
   defined in terms of the abstractions offered by the
   framework which is exploited for the simulation                                  A. System Analysis
   (Simulation Model);                                                               In the System Analysis phase, the objectives of the
− Simulation Code Generation, in which the Simulation Code                        simulation are specified and a preliminary understanding of
   for the target simulation environment is automatically                         the system and its organization is obtained.
   generated starting from the model which is obtained in the                        This phase is based on the principle of layering, exploiting
   previous phase;                                                                the well-known techniques of Decomposition, Abstraction and
− Simulation Set-up, in which the Simulation Scenarios are                        Organization [2, 9], and is constituted of a sequence of
   established;                                                                   analysis steps. In each step a new system representation is
− Simulation Execution and Results Analysis, in which the                         produced by applying the in-out zooming mechanisms [12] to
   simulation results are analyzed with reference to the                          the entities comprising the system representation which
   objectives of the simulation previously identified in the                      resulted from the preceding analysis step. In the first analysis
   System Analysis phase.                                                         step, a starting level of abstraction for analyzing the system is
                                                                                  chosen and then the system is zoomed-in so to identify its
component entities on the basis of the starting abstraction          − Artifact Model which describes the behavior of an Artifact
level.                                                                 as a set of triggered Activities related to the offered
   According to the reference meta-model of the System                 services (Artifact Behavioral Model), and its interactions
Analysis phase (see Fig. 1), an Entity can be characterized by         with other Artifacts and Agents (Artifact Interaction
autonomous and goal-oriented behavior (pro-active entity),             Model).
purely stimulus-response behavior (re-active entity), or can be
                                                                       C. Simulation Design
passive. In addition, both the rules governing entities and their
evolution, and the relationships among entities are specified.         In this phase, starting from the Conceptual System Model a
Specifically, Safety rules determine the acceptable and              Simulation Model of the system, in terms of the abstractions
representative states of an entity whereas liveness rules            offered by the framework exploited for the simulation, is
determine which state transitions are feasible during entity         produced.
evolution. Relationships can be either intra-entity                     In Figure 1 the basic simulation concepts of the reference
relationships (i.e. relationships among the component entities       simulation framework (the Repast Simphony Toolkit [18, 20])
obtained by the zooming-in of an entity) or inter-entity             are highlighted. Specifically, the central concept is the
relationships.                                                       (simulation) Context (SContext) which represents an abstract
   The System Analysis phase ends when the user obtains a            environment in which (simulation) Agents (SAgents) can act
System Representation in which each component (pro-active,           and is provided with an internal state consisting of simple
re-active, passive) entity has been represented at the level of      values and Data Fields (a n-dimensional field of values). In
abstraction which is appropriate for the objectives of the           addition, an SContext can also support behaviors for the
simulation. This System Representation, along with a synthetic       management of its internal state. SContexts can be organized
description of the system being considered, a detailed               hierarchically so to contain sub-SContexts which can have
description of each identified entity and the objectives of the      their own state. SAgents in an SContext can be organized by
simulation, constitutes the work-product of this phase (the          using Projections which are structure designed to define and
Analysis Statement).                                                 enforce relationships among the SAgents in the SContext. In
                                                                     particular, a Network Projection defines the relationships of
  B. Conceptual System Modeling                                      both acquaintance and influence between SAgents whereas
  In the Conceptual System Modeling phase, the Structural            Space Projections define (physical or logical) space structures
System Model is produced, and in particular, for each entity in      (Grid, Scalar Fields, Continuous Space, Geography) in which
the System Representation:                                           the agents can be situated.
− the abstraction level suited to specific simulation objectives        An SAgent can have multiple behaviors (SBehaviors), each
   is chosen;                                                        operating on SAgent Properties and consists of a sequence of
− the conceptual representation , in terms of Agent, Artifact or     Steps; each Step can be associated with the execution of a
   Society, is derived on the basis of the associations among        Task or with the control of the flow of the Task execution
   the main concepts of the System Analysis and Conceptual           (Loop, Join, Decision, End). Each SBehavior can be
   System Modeling phases (see Fig. 1);                              characterized by a Scheduled Method which defines a constant
− the interactions with the other entities are obtained from the     execution schedule, and by a Watch which periodically, on the
   intra and inter-relationships where the latter cross the          basis of some watched parameters and conditions, triggers the
   boundaries of societies.                                          execution of the behavior.
The chosen level of abstraction of an entity can be modified in         A Repast Simphony simulation model is defined by first
successive iterations through which it is then possible to           specifying the structure and the characteristics of the root
produce new, modified, and/or refined Structural System              SContext and of all the possible nested sub-SContexts, in
Models.                                                              terms of their components (SAgents, Projections and sub-
   For each entity in the produced Structural System Model a         SContexts), and, then, specifying for each SAgent its
specific model is then defined, whose type can be one of the         Properties and SBehaviors, and for each SBehavior the
following depending on the entity type:                              component Steps, and the associated Scheduled Method and
− Society Model which describes the entities which compose           Watch.
   a Society, their type (Agent, Artifact, Society), and the rules      The associations among the above described simulation
   governing the Society (safety rules) and its evolution            concepts of the Repast Simphony Toolkit and the related
   (liveness rules);                                                 concepts of the Conceptual System Model are reported in
− Agent Model which details the complex goal of an Agent             Figure 1. The exploitation of these associations makes it
   (Agent Goal Model), its behavior as a set of periodically         possible to directly obtain, starting from the Conceptual
   scheduled and triggered Activities (i.e. flow of Actions)         System Model, the Simulation Model of the System as follows:
   which contribute to the achievement of the Agent goals            − each Society becomes a Repast Simulation Context
   (Agent Behavioral Model), and its interactions with other            (SContext), the System is the root SContext and any
   Agents and Artifacts in which the agent is involved (Agent           enclosed Society is a (sub)-Context of the corresponding
   Interaction Model);                                                  enclosing Society;
− Artifacts and Agents become Repast Simulation Agents                    defined in the Simulation Design phase; (ii) the presentation
  (SAgents), the Activities which constitutes their behaviors             preferences for the simulation results concerning the system
  are easily converted into Repast Simulation Behaviors                   properties of interest identified during the Simulation Design
  (SBehaviors);                                                           phase.
− relationships derived from Interactions among Agents and                  Finally, the obtained simulation results can also be analyzed
  Artifacts generate Repast Network Projections.                          by exploiting the analysis tools (Matlab, R, VisAd, iReport,
                                                                          Jung) which can be directly invoked from the Repast
  D. The other Simulation related phases
                                                                          Simphony Runtime Environment so to verify whether the
  According to the Model Driven paradigm [1, 21], the Repast              objectives of the simulation identified during the System
Simphony Development Environment [15] is able to                          Analysis phase have been achieved. Where objectives have
automatically generate a great part of the simulation code                not been achieved or where new simulation objectives
from the derived Simulation Model of the system. The                      emerge, a new iteration of the process can be executed, which
simulation which can be extended with additional Java and                 can then involve all or some process phases so that
XML code is then compiled by the Repast Simphony                          new/modified and/or refined models of the system can be
Development Environment using a Java compiler and then                    produced for achieving          the remaining/new simulation
loaded into the Repast Simphony Runtime Environment.                      objectives.
   The simulation executed by the Repast Symphony Runtime
Environment can start after establishing: (i) the simulation
scenario by specifying the values of the simulation parameters
                                                                    TABLE I
                                            MANAGEMENT PROBLEMS IN CONTAINER TRANSHIPMENT TERMINALS
    PHASE                                       PROBLEM                                    DESCRIPTION
    Arrival of the containership                QUAY CRANE ASSIGNMENT PROBLEM (QCAP)       Determining the number of quay cranes to assign
                                                                                           to an incoming vessel.
                                                BERTH ALLOCATION PROBLEM (BAP);            Assigning incoming ships to berths, by taking
                                                                                           into account constraints in both spatial and
                                                                                           temporal dimensions so to minimize the time
                                                                                           each ship spends in port (turnaround time).
    Unloading and Loading of the ship           QUAY CRANE SCHEDULING PROBLEM (QCSP)       Determining a sequence of unloading and
                                                                                           loading movements for cranes assigned to a
                                                                                           vessel in order to minimize the vessel
                                                                                           completion time as well as the crane idle time.
    Transport of containers from the ship to    YARD MANAGEMENT                            Allocating and reallocating the containers in the
    the yard and vice versa                                                                yard in order to reduce the amount of time
                                                                                           required to handle of each vessel.
                                                STRADDLE CARRIER ROUTING AND               Determining the operation to be performed by
                                                DISPATCHING (SCRD)                         the straddle carries to maximize the productivity
                                                                                           of each crane.


                                                                          rendering it more competitive through the optimal
                                                                          management of terminal resources and optimizing tactical and
     III.   MANAGEMENT OF A CONTAINER TRANSHIPMENT                        operational logistics.
                        TERMINAL                                             In the next sub-section, the organization of a maritime
   Due to the continuous growth in the volume of goods                    container terminal and some primary management issues are
exchanged around world, further boosted by the rising                     briefly discussed; a more complete description can be found in
Chinese and Indian economies, maritime transportation is                  [13].
becoming a crucial asset in global economy as it allows for               A. Organization of a Container Transhipment Terminal
large economies of scale in the transport sector. Specifically,
                                                                             Each ship approaching a maritime terminal enters in a
the current maritime transportation system is based on a hub
                                                                          harbour and waits to moor at an assigned berth position along
and spoke model [22] whereby ultra-large containerships
                                                                          the terminal quay which is equipped with giant cranes (quay
operate     between     a    limited    number     of   mayor
                                                                          cranes) for loading and unloading containers. These
(mega)transhipment terminals (hubs), and smaller vessels
                                                                          containers, in a DTS (Direct Transfer System ) terminal, are
(feeders) which link the hubs with other minor ports (spokes).
                                                                          transferred to and from the terminal yard by a fleet of vehicles
   In this scenario, a hub terminal must maintain a high level
                                                                          (straddle carrier) which are able to stack containers in the
of efficiency, not only to avoid traffic congestion but also to
                                                                          yard. In contrast, in an ITS (Indirect Transfer System)
increase its competiveness as some main characteristics
                                                                          terminal, containers are moved by trucks and trailers from the
(geographical, structural and technological) which also
                                                                          quay to the yard and vice-versa and staked by yard cranes.
determine the competitiveness of a container terminal can be
                                                                             In this context, the main logistic processes and related
modified only on a long term perspective.
                                                                          management problems can be grouped in relation to the flow
   It thus becomes crucial to increase hub efficiency,
of containers in the terminal as shown and briefly described in   Moreover, classical dispatching models [14] often fail to
Table 1; other issues are related to inter-terminal               provide dynamic assignment of container moves to SCs of a
transportation and to possibly link with other transportation     pool in order to speed up the loading/discharging operations
modes. Moreover, a transversal issue is related to the human      (the Straddle Carriers Pooling Problem - SCPP). To overcome
resources management [13].                                        these shortcomings, an agent-based model can be defined and
   These very fundamental issues are not only reciprocally        simulated with the following main objectives:
related, but the large-scale nature of hub management makes          (i) quantifying the benefits of the pooling modality with
the use of standard exact solution algorithms impractical. In     reference to system productivity (vessels handling time) and
fact, the management of such large and intricately complex        cost reduction (numbers of exploited SCs and total distance
systems require new modeling methods which must also              covered);
generate proof-of-concept simulations.                               (ii) obtaining an effective solution for the dynamic
   In the following Section, the effectiveness of the ABMS        assignment of container moves to the SCs of a pool which can
approach and the easyABMS methodology is shown focusing           be used for automatically drive the coordinated behavior of
on the Straddle Carrier Routing and Dispatching Problem           the SCs in a real container terminal.
(SCRDP) [14]; with reference to the different management             The System Representation obtained on the basis of the
problems in a Container Transhipment Terminal (see Table          identified simulation objectives is reported in Figure 2. All the
1), a more complete and domain specific agent-based               entities represented in Figure 2 are further described, along
simulator has been proposed in [6].                               with their relationships and their safety and liveness rules, in a
                                                                  textual format enriched by tables and diagrams which are not
    IV. MODELING AND SIMULATING STRADDLE CARRIER                  reported due to space limitations.
     ROUTING AND DISPATCHING THROUGH EASYABMS
                                                                      Container Terminal                intra-entity relantionship
                                                                                                        inter-entity relantionship
A. System Analysis
   The main indicator of optimal performance in a container             <>
                                                                          Vessel
                                                                                                   <>                        <>

                                                                                                     Quay Crane                      Movement Task Assigner
transhipment terminal is the average ship-turn-around time                   <>
                                                                                Deck
which is the average time-lapse between a ship’s arrival and
its departure, starting from the amount of time the ship waits                     <>
                                                                                                     <>                         <>

                                                                                                        Buffer                           Straddle Carrier
for a berth (berth waiting time) and the duration for which the                       Hold



ship is docked for unloading and loading operations (handling                                                                             <>

time). In the following, the focus is set on the handling time                                                                                Yard

given to fact that this time is highly dependent on the
productivity of the Quay Cranes (QCs) and, as a consequence,        Fig. 2. System Representation
on the management policies of the Straddle Carriers (SCs).
                                                                        <>
   Specifically, to maximize the productivity of the QCs in a         Container Terminal
DTS container terminal, the SCs should operate so that the
buffer of each crane, which has a limited capacity of only a                                         <>                            <>

few containers, is not full /not empty if the crane is                                               Quay Crane                      Movement Task Assigner
                                                                              <>
performing the discharging/loading phase. Specifically, there             <>

are two main policies for organizing the work of SCs:                            Vessel              <>
                                                                                                 <>
                                                                                                                                           <>

   - dedicated modality: a given number of SCs are allocated                                            Buffer
                                                                                                                                         Straddle Carrier

to each QC to follow its working phases;                                                                                                  <>
                                                                                                                                     <>
   - shared modality (or pooling): a group of SCs is shared by
                                                                                                                                              Yard
two or more QCs which work on the same ship or on adjacent
berthed ships and, possibly, frequently swapping between the        Fig. 3. Structural System Model
tasks of loading and discharging containers.                      B. Conceptual System Modeling
   The shared modality presents several benefits with respect
                                                                     The Structural System Model derived from the System
to the dedicated mode: (i) reduction in the number of empty
                                                                  Representation is reported in Figure 3; in particular, as the
trips done by the SCs (i.e. travels without carrying any
                                                                  simulation objectives concern management policies of SCs,
container), as the SCs can fruitfully alternate between trips
                                                                  the level of representation chosen for the Vessel is more
carrying containers from the yard to the cranes which are
                                                                  abstract with respect to the level resulting from the Analysis
loading outgoing cargo and trips back to the yard, carrying
                                                                  phase.
discharged cargo; (ii) more constant value of productivity of
                                                                     For each entity in the Structural System Model the
both QCs and SCs as, when a crane is not working, the SC of
                                                                  corresponding Society, Agent or Artifact Model is defined (see
a pool can speed up operations of the other QCs.
                                                                  Section II.B). Due to space limitations, the following sub-
   A quantitative evaluation of the aforementioned benefits is
                                                                  sections report only the Society Model for the Container
not easy to obtain through traditional analytical models.
Terminal Society, the Agent Model for the Straddle Carrier                                                                             (sub)goal


Agent and the Artifact Model for the Movement Task Assigner                                                         SC_sg1                                                   SC_sg2
Artifact.
                                                                                                                                SC_sg2: Movement of
1) The Container Terminal Society Model                                                          SC_sg1: Movement of
                                                                                                                                containers from Yard to Buffer
                                                                                                 containers from Buffer to Yard
The Society Model of the Container Terminal Society is
shown in Figure 4 which reports the different entities which                                         (a) The Straddle Carrier Goal Model
compose the Society, the safety and liveness rules which                                                             - Vendor Activity Table -
                                                                                          Activity               Goal                   Pre                       Post               Execution
govern it and its dynamics.                                                                                                          conditions                conditions            Schedule
                                                                                         Container              SC_sg1                   -                   The container           Periodical
                                                                                         Movement               SC_sg2                                     handled during the
   Entity         Type      Safety rules                                                                                                                    task must be put

                 Artifact   S_CTerm1. NCvi (t) = NCvi(t0) – NCDvi(t)                                                                                       down in the yard or
                                                                                                                                                              in the buffer
   Vessel       (Resource                         + NCLvi(t);                                                                                               depending on the
                              where NCi(t) is the number of containers                                                                                          task type
                Manager)
                              on the Vessel i at time t; NCDvi(t) is the
 Quay Crane                   number of containers that have been            - UML Activity Diagram for the Container Movement Activity -
                 Agent                                                                                                                      [Vessel Handling completed]
   (QC)                       discharged from the Vessel i up to time t;                           [Movement in progress]

                              NCLvi(t) is the number of containers that
                 Artifact
                              have been loaded onto the Vessel i up to          [No Movement in progress]
   Buffer       (Resource
                              time t.
                Manager)
                            S_Term2.         ...                                      Task                         Assigner
                                                                                                                                           [Vessel Handling not completed]

  Straddle                                                                            Assignment                   Response                                                         Move
                                                                                                                                                                                  Container
                 Agent                                                                Request
                                                                                                                                                   [Yard to Buffer Task]       From the Yard
 Carrier (SC)               Liveness rules                                                                                                                                      to the Buff er

                            L_CTerm1. A Quay Crane cannot download                Legenda
 Movement
                              a container on its buffer if the buffer is                 Time Signal
                                                                                                                        Action
                                                                                                                                                                                    Move
   Task          Artifact                                                                                                                                                         Container
                              full.                                                                                     Decision                  [Buffer to Yard Task]        From the Buf fer
 Assigner                                                                                       Send Signal                                                                      to the Yard
                            L_CTerm2.       …                                                                           Final node
                 Artifact                                                                       Accept Signal
                                                                                                                        Flow/edge
    Yard        (Resource
                Manager)                                                          (b) A part of the Straddle Carrier Behavioral Model
Fig. 4. The Society Model of the Container Terminal Society.
                                                                                        Interaction             Activity           Initiator              Partners      Exchanged
                                                                                                                                                                        Information
2) The Straddle Carrier Agent Model                                                     Task                    Container          Straddle Carrier        Movement     Task Request
                                                                                        Assignment              Movement                                  Task Assigner
Part of the Agent Model of the Straddle Carrier Agent is                                Request
                                                                                        Assigner                Container Movement Task Straddle                              Task
shown in Figure 5. In particular:                                                       Response                 Movement Assigner      Carrier                               Description
- Figure 5.a shows the Straddle Carrier Goal Model in
    which, as the two goals (Movement of containers from                             (c) The Straddle Carrier Interaction Model
    Buffer to Yard and Movement of containers from Yard to                 Fig. 5. Part of the Agent Model of the Straddle Carrier Agent.
    Buffer) can be achieved independently, no achievement
                                                                                                    - Movement Task Assigner Activity Table -
    relationship is present;
                                                                              Activity  Service           Pre                Post                                                                 Execution
- Figures 5.b illustrates a part of the Straddle Carrier                                              conditions          conditions                                                              Schedule
                                                                               Task    Movement A movement task must If available, a new                                                          Triggered
    Behavioral Model; in particular, the Straddle Carrier                   Assignment    Task   be available unless the movement task
    Activity Table specifies the activities (Container                                 Assignment Vessel handling is must be assigned to
                                                                                                      completed             the SC
    Movement Activity) which the Straddle Carrier Agent
    executes for achieving its goals, along with the pre and                     - UML Activity Diagram for the Task Assignment Activity -
    post conditions and the execution schedule (periodical).                                           [Vessel Handling completed]


    Moreover, as the definition of an Agent Behavioral Model
    requires that each activity in the Agent Activity Table                   Task Assignment
                                                                              Request
                                                                                                                                                                                        Task
    must be further described by an UML [23] Activity                                                                                                                                   Assignment
                                                                                                                                                                                        Response
                                                                                                  [Vessel Handling not completed]
    Diagram, the diagram for the Container Movement
                                                                                                                             Evaluate
                                                                                                                                                     Assign a move
    Activity is also shown. The UML Activity Diagram must                                                                next moves f or
                                                                                                                          the other SCs
                                                                                                                                                         to the
                                                                                                                                                     requesting SC
                                                                                                                            in the pool
    be further enriched with an Activity Action Table (not
    shown in figure due to space limitations) which reports,               Fig. 6. Part of the Movement Task Assigner Behavioral Model.
    for each single component action, a synthetic description
                                                                           3) The Movement Task Assigner Artifact Model
    of the action along with its pre and post conditions, the                 Figure 6 presents part of the Artifact Model of the
    capabilities required for carrying out the action and its              Movement Task Assigner Artifact, and, in particular, the part
    type (computation or interaction).                                     of the Movement Task Assigner Behavioral Model which
- Figure 5.c reports the Straddle Carrier Interaction Model                describes the Task Assignment Activity triggered by an SC
    which specifies, for each action of the interaction type               requesting a new container movement to be performed. In
    (Task Assignment Request, Assigner Response) of the                    particular, at the completion of its container movement the SC
    Container Movement Activity, the initiator, the partners               requests the next assignment from the Movement Task
    of the interaction and the exchanged information.                      Assigner (see Figure 5.c). The Movement Task Assigner must
then decide, from available moves, the next best move for the   expressed by using the UML notation, can be directly mapped
requesting SC taking into account also subsequent moves         onto that of an SAgent, defined during the Simulation Design
which could be assigned to the other SCs in the pool            phase in terms of SBehaviors.
(Lookahead Policy). Such planning could be dynamically
                                                                D. Simulation Execution and Results Analysis
revised at the next task assignment request.
                                                                   Starting from the Simulation Model a great part of the
                                                                simulation code is automatically generated by the Repast
                                                                Simphony Development Environment [15], compiled by using
                                                                a Java compiler and then loaded into the Repast Simphony
                                                                Runtime Environment for the Simulation Set-up and
                                                                Execution.
                                                                   According to the simulation objectives, the execution of the
                                                                resulting Simulation Model made it possible to compare and
                                                                quantify the benefits of both dedicated and pooling
                 (a) The Simulation Context                     modalities. In particular, several simulations have been
                                                                executed for different scenarios in order to evaluate: the Quay
                                                                Crane Idle Time (QCIT), the Straddle Carrier Covered
                                                                Distance (SCCD), and the Straddle Carrier Idle Time (SCIT).
                                                                As an example, Figures 8.a-b illustrate the QCIT and the
                                                                SCCD, in the two different modalities, with reference to a
                                                                simulation scenario based on real-life organizational topology
                                                                and equipment typologies of the Gioa Tauro Container
                                                                Terminal [3]. In this simulation scenario one Vessel is handled
                                                                by two QCs for the loading and discharging of 50 containers
                                                                respectively. The results shown in Figure 8, which are results
                                                                averaged from 30 simulation runs, made it possible to quantify
                                                                the significant advantage of the pooling modality in terms of
                                                                vessel handling time and cost reduction.




                                                                              (a) Quay Crane Idle Time(QCIT)
    (b) The Container Movement SBehavior of the Straddle
                        Carrier SAgent
Fig. 7. Part of the Simulation Model.

C. Simulation Design

   Figures 7.a-b show a portion of the Simulation Model
produced by adopting the Repast Simphony Toolkit [18, 20] as
the reference simulation framework. Figure 7.a shows the
                                                                    (b) Average Distance Covered by the Straddle Carriers
organization of the Simulation Context (SContext) whereas
                                                                Fig. 8. Some Simulation Results.
Figure 7.b shows a Simulation Behavior (SBehavior) of the
SAgent representing a Straddle Carrier. In particular, the
Container Movement SBehavior in figure 7.b corresponds to                              V. CONCLUSION
the Container Movement Activity reported in figure 5.b. The
                                                                   Several tools for ABMS are now available as well as
seamless transition between the two models is highlighted by
                                                                methodologies for the development of agent-based systems
the comparison between these two figures which clearly
demonstrates that the behavior of an Agent/Artifact, defined    which are mainly proposed in the context of Agent-Oriented
during the Conceptual Modeling phase in terms of Activities     Software Engineering (AOSE). Nonetheless, only a few
                                                                results are available which integrate the methodological
features coming from the AOSE with the modeling and                             Conference on Economic Science with Heterogeneous Interacting
                                                                                Agents (ESHIA), Warsaw, Poland, 19-21 June, 2008.
simulation features of modern ABMS tools. As a
                                                                           [5] A. Garro, W. Russo. An integrated and iterative process for agent-based
consequence, scarce support in the whole process which goes                     modeling and simulation. Proceedings of the 5th International
from the system analysis to the analysis of simulation results                  Conference of the European Social Simulation Association (ESSA),
is provided to domain experts with limited programming                          Brescia, Italy, 1-5 September, 2008.
expertise. To address these issues, easyABMS, a recently                   [6] L. Henesey, P. Davidsson, and J. A. Persson. An agent-based approach
                                                                                for building complex software systems. Autonomous Agents and Multi-
proposed and full-fledged methodology for agent-based                           Agent Systems, 18(2):220-238, 2009.
modeling and simulation of complex systems, fruitfully                     [7] T. Iba and N. Aoyama. Understanding Social Complex Systems with
exploits both AOSE modeling techniques and simulation tools                     PlatBox Simulator. In Proc. of the 5th International Conference on
specifically conceived for ABMS.                                                Computational Intelligence in Economics and Finance (CIEF2006),
                                                                                pages 64-67, Taiwan, October 2006.
   In this paper, the effectiveness of easyABMS has been
                                                                           [8] T. Iba, Y. Matsuzawa, and N. Aoyama. From Conceptual Models to
demonstrated using a case study in the logistics domain which                   Simulation Models: Model Driven Development of Agent-Based
concerns the analysis of different policies for managing                        Simulations. In Proc. of the 9th Workshop on Economics and
Straddle Carriers in a Container Transshipment Terminal. In                     Heterogeneous Interacting Agents. Kyoto, Japan, 2004.
                                                                           [9] N. R. Jennings. An agent-based approach for building complex software
particular, overcoming the main limitations when using only
                                                                                systems. Communications of the ACM, 44(4):35-41, 2001.
classical analytical models, a quantitative assessment of two              [10] MASON Home Page. George Mason University, Fairfax, VA, available
primary Straddle Carrier management policies and an                             at http://cs.gmu.edu/~eclab/projects/mason/.
effective solution in guiding the dynamic assignment of                    [11] N. Minar, R. Burkhart, C. LAngton, and M. Askenazi. The Swarm
container moves have been easily provided. The exploitation                     Simulation System: A Toolkit for Building Multi-Agent Simulations.
                                                                                Working Paper 96-06-042. Santa Fe Institute, 1996.
of easyABMS allowed to demonstrate how this new
                                                                           [12] A. Molesini, A. Omicini, A. Ricci, E. Denti. Zooming multi-agent
methodology can seamlessly guide domain experts from the                        systems. In Proc of the 6th International Workshop on Agent-Oriented
analysis of the system under consideration to its modeling and                  Software Engineering (AOSE 2005), AAMAS 2005, Utrecht, The
simulation, as the phases which compose the easyABMS                            Netherlands, 2005.
process, the work-products of each phase, and the (seamless)               [13] M. F. Monaco, L. Moccia, and M. Sammarra. Operations Research for
                                                                                the management of a transhipment container terminal. The Gioia Tauro
transitions among the phases are fully specified. In addition,                  case. Maritime Economics and Logistics, 2009, Vol. 11, n. 1, pp. 7-35.
easyABMS focuses on system modeling and simulation                         [14] M. F. Monaco, and M. Sammarra. Scheduling and dispatching models
analysis rather than details related to programming and                         for routing straddle carriers at a container terminal. Proceedings of the
implementation as it exploits the Model Driven paradigm,                        XXXVIII Annual Conference of the Italian Operations Research
                                                                                Society, Genova, Italy, Sept. 5-8, 2007.
making it possible the automatic code generation from a set of
                                                                           [15] M. J. North, T.R. Howe, N.T. Collier, and J.R. Vos. The Repast
(visual) models of the system.                                                  Simphony Development Environment. In Proc. of the Agent 2005
   Future research efforts will be devoted to: (i) extend the                   Conference on Generative Social Processes, Models, and Mechanisms,
Repast Simphony Toolkit so to obtain an integrated ABMS                         Chicago, IL , October 2005.
                                                                           [16] M. J. North, T.R. Howe, N.T. Collier, and J.R. Vos. Repast Simphony
environment which fully supports all the process phases also
                                                                                Runtime System. In Proc. of the Agent 2005 Conference on Generative
comprising the System Analysis and Conceptual System                            Social Processes, Models, and Mechanisms, Chicago, IL, October 2005.
Modeling phases; (ii) extensively experiment easyABMS in                   [17] M. J. North, C. M. Macal. Managing Business Complexity: Discovering
case studies of social, financial, economic, and logistic                       Strategic Solutions with Agent-Based Modeling and Simulation. Oxford
                                                                                University Press, 2007.
relevance; (iii) adopting a meta-simulation framework for the
                                                                           [18] M.J. North, E. Tatara, N.T. Collier, and J. Ozik. Visual Agent-Based
Simulation Design phase so to obtain a platform-independent                     Model Development with Repast Simphony. In Proc. of the Agent 2007
simulation model which can then be translated into different                    Conference on Complex Interaction and Social Emergence.
platform-dependent simulation models.                                           Northwestern University, Evanston, IL, November2007.
                                                                           [19] M. Resnick. Turtles, Termites, and Traffic Jams: Explorations in
                                                                                Massively Parallel Mi-croworlds. MIT Press, Cambridge, Mass., 1997.
                             REFERENCES
                                                                           [20] ROAD (Repast Organization for Architecture and Design). Repast Home
[1]   C. Atkinson and T. Kühne. Model-driven development: A metamodeling        Page, Chicago, IL, available as http://repast.sourceforge.net/.
      foundation. IEEE Software, 20(5):36-41, 2003.                        [21] D. C. Schmidt. Model-Driven Engineering. IEEE Computer, 39(2):41-
[2]   G. Booch. Object-Oriented Analysis and Design with Applications.          47, 2006.
      Addison-Wesley, 1994.                                                [22] UNCTAD (2006). United Nations Conference on Trade and
[3]   J.-F. Cordeau, M. Gaudioso, G. Laporte, and L. Moccia. The service        Development - Review of Maritime Transportation.
      allocation problem at the Gioia Tauro maritime terminal. European    [23] Unified Modeling Language (UML) Specification. Version 2.1.2. Object
      Journal of Operational Research, 176:1167–1184, 2007.                     Management Group Inc., 2007.
[4]   A. Garro, W. Russo. An integrated agent-based process for the        [24] U. Wilensky. NetLogo. Center for Connected Learning and Computer-
      simulation of complex systems. Proceedings of the International           Based Modeling, Northwestern University, Evanston, IL, 1999.