Simulating Automatic High Bay Warehouses
Cornelia Triebig⋆, Tanja Credner⋆, Franziska Kl¨ ugl⋆
Peter Fischer◦, Titus Leskien◦, Andreas Deppisch◦and Stefan Landvogt◦
⋆University of W¨ urzburg, Department of Artificial Intelligence
◦SSI-Sch¨ afer-Noell GmbH, Giebelstadt
Abstract. In this contribution we want to present a collaboration project
between the Department for Artificial Intelligence at the University of
W¨ urzburg and SSI Sch¨ afer Noell GmbH (Giebelstadt) using multi-agent
systems for simulating high bay warehouses.
In scientific and industrial applications simulation forms an important and well
established method. Comprehension as well as the quality of design and control of
complex systems is improved and increased. Particularly the reduction of time
and thus cost gained in industrial applications is a significant aspect for the
growing application of simulation methods. In the field of material flow systems,
including high bay warehouses, established simulation technology, like queuing
systems or object-oriented simulation is successfully used. Here simulation is
applied mostly to generate performance measures or to test layout design.
Nevertheless, additional scenarios exist for the use of simulation supporting
high bay warehouse construction:
– testing control software using a virtual version of the high bay warehouse
before the real system is implemented and in use.
– generating reproducible error situations
– supporting design decisions in the beginning of the project
– simulation of the warehouse and control system for user training
– supporting requirement acquisition in discussion with the customer
Beyond appealing graphics specific requirements are posed on the simulation
software used for these application scenarios: The presentation of the warehouses
should be on a high level of detail. Changes in the warehouse configuration should
be easily and fast to perform. Because of high project pressure, it should be
possible to construct the model for simulation fast. Modeling should not require
simulation experts. It should be manageable by warehouse experts themselves.
These requirements are hardly fulfilled by standard simulation systems.
In the scope of our project we were able to show that the agent paradigm
allows highly flexible modeling on a sufficiently possible level of preciseness.
This level is accomplishable without costly training in modeling and simulation
techniques. In this collaboration project we use SeSAm (Shell for Simulated
Agent Systems, www.simsesam.de) that allows high-level visual programming of
2SeSAm - A Simulation Environment
SeSAm is an open-source project developed by the Department for Artificial
Intelligence (University of W¨ urzburg). It offers an generic environment for mod-
eling and analyzing with agent-based simulation. With SeSAm, a tool for easing
the construction of complex models is provided.
SeSAm provides different categories of objects which can be implemented in
simulations. These categories contain agent classes, resources and the so-called
world. Resources cannot act themselves. They are objects without any behavior.
The world represents the environment and is in fact an specialized agent. Each
of these objects can handle a number of own variables. Variables are used to
store the knowledge of the agent and to interact with other agents. An activity
graph defines the behavior of an agent. The syntax therefor is abutted to UML.
The actions which should be performed by an agent are defined by combining
atomic activities that are offered by SeSAm. Actions are grouped into activities
connected with directed edges that represent a condition. The agent will continue
with the next activity as soon as the connected condition is evaluated as true
during a simulation run.
For creating a real simulation run, a situation for the model needs to be
built. Instances of the agent classes are placed on the map. The starting values
of their variables can be edited. Thereafter the real simulation is ready to be
started. The definition ordinary simulations as described above is implemented
via the manipulation of graphical elements. If special requirements arise, e.g. the
need for communication with external systems, SeSAm can easily be extended
3 Simulation of High Bay Warehouses Using Agents
A high bay warehouse basically consists of transport routes for transport units,
and high bay storage and retrieval. In particular, there are different modules
like variable conveyor elements, scales and scanners, storage elements, but also
human operators. Each of these elements may be treated as an agent, that is as an
intelligent building block with local sensors and effectors. Beyond communication
within the virtual high bay warehouse, i.e. with other agents, there has to be
also communication with the warehouse control software.
Thus, reasonable arguments exist for using an agent-based approach for the
simulation of high bay warehouses:
– facile mapping of the warehouse components on agents (modularity)
– easy modeling of specific projects because of layout independent agents
– generic agents reusable in all models of this domain
– detailed simulation with the integration of involved human beings, which
can compensate errors or malfunctions with their natural intelligence
The construction of eight actual high bay warehouse projects were supported by
agent-based simulation for testing the control software until now. The general
procedure is that we start with the development of a multi-agent simulation
of the high bay warehouse in SeSAm. The warehouse is concurrently build up.
Thus, details of the realworld warehouse can be adapted almost synchronously.
At the beginning of the collaboration project an agent set with a fixed and
also small number of agents were implemented. Therfore different kinds of mod-
ules as mentioned above were mapped to agents with a specific behavior. How-
ever, despite the reuseability of these agents, specific warehouse systems require
an adpation of the agent set. Therefore the agents are constructed as generic
as possible. The generic-ness of the agents supports the communication between
control software and agents. This communication is datagram-based, much like
some proprietary ACL-messages. The control software to test sends commands
in reaction to notifications or alarms the agent. This is implemented using the
plugin concept of SeSAm.
Agents may be grouped to higher-level components with some fixed orga-
nizational structure that again may be integrated into the overall virtual high
bay warehouse in the same way as atomic agents. We developed aggregates
partially with complex synchronization protocols, like storage-and-retrieval ma-
chines within their working environment, carousels for transport and delivery,
bidirectional conveyor lines and vertical conveyors as well as shuttle vehicles.
4Practical Example: a Simulated High Bay Warehouse
In this section we want to present a succesfully implemented project. Before
the real system was implemented this high bay warehouse was simulated with
SeSAm. Figure 1 shows the complete high bay warehouse with its storage and
retrieval. For better understanding we added a legend showing the used agents.
Additionally we divided the illustration into three sections: (1) the storage and
retrieval area, (2) the part picking area and (3) the high rack storage area.
Section 1 shows Storage and Retrieval Points, conveyor line elements, Shuttle
Vehicles and Displays. Conveyor lines consist of two different conveyor elements:
Simple and Generic Conveyors. Simple Conveyors manage only one direction,
Generic ones manage several directions in which TUs can be routed. Each of
these agents is able to take only one TU at the same time. On Storage Points
Transport Units (TUs) enter the warehouse system. On Retrieval Points TUs
leave the system. In this project there is a Storage/Retrieval Point which offers
the functionality of a Storage as well as of a Retrieval Point. However, this
combined functionality causes difficulties: the connected conveyor line transports
bidirectionally. If one and the same conveyor line is used by both, entering and
leaving TUs, deadlocks can occur. To avoid this situation we implemented locked
areas. If a TU enters an area of bidirectional conveyor lines the area is locked
for other TUs. As soon as the TU has left the area, the area is unlocked and
Fig.1. Screenshot of a high bay warehouse simulated with SeSAm
can be used by the next TU. Locked areas are realized with the plugin function
of SeSAm. In the right part of section 1 displays can be found which display
informations when TUs leave the system. Also in section 1 there are three shuttle
vehicles which connect or serve different conveyor lines.
Section 2 shows the part picking area where TUs are handled manually by
human part pickers. In the High Rack Storage (section 3 of figure 1) you can
additionally see the Storage Retrieval Machines serving the actual storage. The
representation of the storage is facilitated because there is no need in this project
to show in which way and on which place TUs are stored. If TUs enter the storage
they will be destroyed. In case of a retrieval request of stored TUs Storage Points
Even with the first virtual warehouse we used, several errors in the control
software could be found and fixed before the real-world warehouse was available.
With every virtual warehouse the effort for its modeling was decreasing due to
the improved set of agents. Thus, even considering the relatively high effort for
modeling and designing the basic agent set in the beginning of the collaboration
projects, several ten thousands of Euros were saved.