Bottom-up Job Shop Scheduling with Swarm Intelligence in Large
Production Plants
M. Schranz
1 a
, M. Umlauft
1
and W. Elmenreich
2 b
1
Lakeside Labs GmbH, Klagenfurt, Austria
2
Institute of Networked and Embedded Systems, University of Klagenfurt, Klagenfurt, Austria
Keywords:
Swarm Intelligence, Multi-agent Modeling, Cyber-physical Systems, Job Shop Scheduling.
Abstract:
In production plants organized by the job shop principle, the factory-wide scheduling problem is NP-hard and
can become extremely large. Traditional optimization methods like linear optimization reach their limits in
these settings due to excessive computation time. Therefore, we propose this industrial setting as a novel field
of application for swarm intelligence using bottom-up algorithms that do not require the infeasible calculation
of an overall solution but depend only on local information. We consider the example of the semiconductor
industry producing logic and power integrated circuits where a diverse range of highly specialized but low
volume products are fabricated in the same plant. This paper shows how to select and model swarm members,
swarms, and their interactions for use in real-world production plants. There are multiple possibilities for the
modeling of the agents: a swarm member could be a single machine or a set of machines (workcenter), a
product or group of products of the same/similar type, or a more abstract agent like a process. In particular, we
consider criteria for selecting appropriate swarm members and potential candidate swarm algorithms inspired
by hormones and ants.
1 INTRODUCTION
Scheduling in production plants organized by the job
shop principle is a challenging problem in Industry
4.0. The main issues are the given constraints (e.g.,
from machines) together with the global objective in
production plants (e.g., maximizing of machine uti-
lization, throughput time, delivery reliability, or min-
imizing the work in progress (WIP)). High product
diversity together with historical growth of the indus-
trial plant increase complexity even further.
A typical example for such a highly dynamic pro-
cess is the production of integrated circuits (ICs) in
the semiconductor industry (Geng, 2018). In par-
ticular, we consider the so-called front end of line
processing where the wafers are processed to create
the ICs. For this paper, we consider the require-
ments of the leading semiconductor manufacturer In-
fineon Technologies
1
. Between 400 and 1200 dif-
ferent stations need to be scheduled in such a pro-
duction plant (fab). Typical process steps include
lithography, doping, oxidation, etching, and measur-
a
https://orcid.org/0000-0002-0714-6569
b
https://orcid.org/0000-0001-6401-2658
1
https://www.infineon.com
ing (Geng, 2018). They typically produce more than
1500 different products in around 300 different pro-
cess steps. These processes are characterized by a
multitude of technological and logistical boundary
conditions, like, e.g., equipment tooling, the need for
secondary resources, and constraints like time cou-
plings and batch processing. Furthermore, the chain
of necessary process steps contains loops. The job
shop scheduling problem is NP-hard (Garey et al.,
1976). Existing dispatching rules are based on heuris-
tics. Due to excessive computation time, Linear opti-
mization methods can not cope with the large, and dy-
namic search space (Lawler et al., 1993). These meth-
ods can only be used on subsets of the plant, and thus,
do not exploit the full optimization potential. There-
fore, bottlenecks cannot be prevented, and WIP waves
are generated. So far, no optimal solution for job shop
scheduling has been developed using linear optimiza-
tion that can be computed in polynomial time (Zhang
et al., 2009).
Other than using swarm intelligence as an opti-
mization algorithm (Ghumare et al., 2015), we ap-
ply a novel approach modeling the production plant
as a self-organizing system of agents that work to-
gether, each equipped with a set of local rules. A
Schranz, M., Umlauft, M. and Elmenreich, W.
Bottom-up Job Shop Scheduling with Swarm Intelligence in Large Production Plants.
DOI: 10.5220/0010551603270334
In Proceedings of the 11th International Conference on Simulation and Modeling Methodologies, Technologies and Applications (SIMULTECH 2021), pages 327-334
ISBN: 978-989-758-528-9
Copyright
c
2021 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
327
self-organizing system is highly non-linear because
of feedback relations. Thus, it can adapt to chang-
ing environmental conditions (Heylighen, 2001), e.g.,
tool downs. We consider nature-inspired swarm al-
gorithms, since many of them are able to produce
near-optimal solutions for NP-hard problems in fea-
sible computation time. Thus, the problem is trans-
formed from finding an overall solution to defining
a distributed algorithm that finds the solution from
the bottom up. The considered production plant re-
quirements match the advantages of swarm intelli-
gence: adaptivity, robustness, and scalability. In this
paper we analyze the problem setting in such a highly
complex production plant (Sec. 2), introduce how
swarm modeling could be used to address the prob-
lem (Sec. 4), show two examples of swarm algorithms
and their application in this setting (Sec. 5), and dis-
cuss our approach in comparison to the related work
in the field (Sec. 6).
2 SEMICONDUCTOR FAB
SETTING
Semiconductor production uses an industry standard
of 25 wafers that are combined to form a lot and then
transported in so-called FOUPs
2
or hordes between
the individual process steps. Every lot has a transpon-
der with a unique identification number used to track
a lot through the fab. Lots follow a specific recipe,
which prescribes which process steps to take in which
order but not the concrete machine on which to per-
form the required next process step. Machines can
be single wafer tools which work wafer by wafer, or
batch-oriented and process several lots at once. Ma-
chines are often spread across several factory build-
ings. Nevertheless, transport times between machines
are negligible while workload and waiting times be-
fore machines are the determining factor. A set of
machines which can run one or more similar pro-
cess classes form a workcenter. These sets of ma-
chines are exhaustive and disjunct. A dedication ma-
trix specifies which processes are allowed on which
machines. Load in a workcenter is distributed via
a solver which calculates scheduling and local opti-
mization for the workcenter for a week in advance.
In the considered production plant about 10% of
the machines have a low utilization (e.g., 60% or
even 30%), because they are only used for some spe-
cial products. There is a difference between uti-
lization of a workcenter and the utilization of a ma-
chine. For example, for a specific machine a utiliza-
2
Front Opening Unified Pod
tion of 80% is very high, while for a workcenter 80%
would be quite low.
3 PROBLEM STATEMENT
Currently, optimization per workcenter works well,
but its influence on the following workcenters and
machines is unclear and does not automatically gen-
erate a global optimum. It is not understood how lo-
cal optimization affects the overall efficiency of the
fab or whether optimizing one workcenter will cre-
ate bottlenecks in others. Existing dispatching rules
are based on heuristics. Since job shop scheduling is
an NP-hard problem and the number of involved ma-
chines and lots is considerably large, optimization can
only be calculated for a subset of the machines in the
fab (e.g., within a workcenter). Bottlenecks arise dy-
namically due to a wide variety of reasons, e.g., tool
downs, or changed product mix. Downtimes always
cause capacity loss. Bottlenecks cannot be prevented,
and generate WIP waves.
Different machine types have different logistic re-
quirements (batch vs. single processing). Especially
after a batch process, lot arrival times vary consider-
ably (because lots leave the process in batches) while
theory suggests that for single-step processing ma-
chines high utilization is only possible when arrival
times are uniform (Stidham Jr, 2002). The main chal-
lenge is that this switch between batch and single-step
processing introduces so-called WIP waves between
machines.
Lots that traverse a loop of machines several times
can add to the challenge: how to prioritize a lot
against other lots of the same product which are one
or several cycles ahead? If only the lots with the near-
est due dates are processed, the lots with later due
dates might violate their time coupling requirements.
If too many of the same product with later due dates
are prioritized, the products with the nearest due dates
might violate theirs. In the current setting, lots of the
same product are spread over the week when intro-
duced into the fab to avoid WIP waves.
4 SWARM MODELING OF THE
PROBLEM
To model the production plant as a swarm, we con-
sider a set of potential swarm members and their char-
acteristics. In this consideration, the swarm can be
homogeneous (agents of the same type, e.g., lots),
or heterogeneous (agents of different types, e.g., lots
SIMULTECH 2021 - 11th International Conference on Simulation and Modeling Methodologies, Technologies and Applications
328
and machines). Furthermore, we identify several cri-
teria to determine whether an entity is eligible to be
a swarm member in the fab according to the related
work (see Sec. 6 for more details). A swarm member
should be able to work in a swarm per se, thus, a rea-
sonable number of other swarm members should exist
(e.g., the lithography workcenter only exists once in
the fab and on its own would not represent a good
swarm member), show a suitable level of abstraction
to be modeled, detect dynamic information from the
(local) environment, react to information from the lo-
cal neighborhood (e.g., take decisions), and be plausi-
ble and understandable to enable trust in the proposed
solution.
4.1 Challenges
When considering the introduction of a swarm-based
algorithm in a production plant, the following chal-
lenges arise:
What Should be Modeled as Agents and what is the
Right Level of Abstraction? A swarm consists of
agents that interact with each other. In our case, a
swarm member could be a machine, a lot or a process
representing an abstract entity. Modelling a swarm
algorithm requires an early decision on what entity
should be used as a swarm member. As described in
the beginning of Sec. 4 we consider several criteria.
Nevertheless, the level of abstraction is not always
clear. For example, if we consider machines as
agents, we could also map a higher abstraction level
and consider workcenters as agents, or we map an
abstraction level lower and use process steps as
agents.
How to Deal with Inhomogeneities among Entities?
Intrinsically, machines are heterogeneous by them-
selves. There is no unified type of a specific machine,
and even on nearly identical machines there is the
possibility of defining different processes. Thus,
each machine has a set of different parameters that
influence its operation. The same holds for lots,
as they have different recipes and thus, different
requirements in their route through the fab.
How to Implement the Necessary Swarm
Communication Paradigms in the Setting of the
Production Plant? Swarm algorithms typically
implement one of two communication paradigms—
direct communication where agents send messages
or indirect communication (stigmergy), where agents
leave information in the environment. The entities
of the fab are already represented as digital twins in
the central fab computer system. Therefore, agent
communication can easily be implemented as local
messages within the computer system or in local
memory for stigmergy. As a result, it is not necessary
to equip machines or lots with additional computa-
tional intelligence or communication devices.
How to Implement a Solution on Top of a Working
Environment? Current fab mechanisms include a
number of different priority classes (e.g., hot lots,
developer lots). Generally, lots with priority class
“hot” will sometimes be single processed due to
time constraints, and developer lots will be single
processed because new recipes/processes are tried out
on them. Nearly 20% of lots are developer lots. They
are used for research and development, machine
control, and maintenance. Thus, it might not be
possible to combine them with others into a swarm.
The majority of these priority classes is historically
driven. To model the lots as swarm members, the
priority class is an important parameter. Nevertheless,
by the introduction of swarm-based local rules and
interactions, the priority classes could be reduced to a
single one: the due date. This would free the system
from reserving time for hot lots, but the question is
if the treatment of hot lots is still satisfactory under
such an approach. Another important consideration
are time-coupled lots: if these can not be processed
by the next machine within a certain time frame, the
lots would be damaged and need to be discarded. To
take this into account, the urgency for time-couple
lots needs to be additionally considered.
How to Validate the Approach? Testing and predict-
ing the performance of a given algorithm is difficult.
Although historical data exists for each lot (e.g., the
logical transactions from machines including move-
in and move-out operations), it is hard to get WIP
and dedication matrix data that would allow predic-
tions for new rules. Furthermore, the performance of
the manufacturing process is also dependent on exter-
nal factors like machine downs, operator sickness, or
even weather conditions like lightning strikes.
4.2 Swarm Member Candidates
The model for the problem consists of a produc-
tion plant with machines, queues, processes, lots, and
recipes. The production plant P contains several sets
or workcenters of machines W
m
= {M
m
1
, M
m
2
, . . . },
where m is the machine type. Each machine M
m
i
has a
queue Q
m
i
Every machine in a machine set/workcenter
W
m
can perform a process P
m
.
A set of lots L = {l
t
1
, l
t
2
, . . . } need to be processed
in the plant, where t is the product type. Each prod-
Bottom-up Job Shop Scheduling with Swarm Intelligence in Large Production Plants
329
uct type t is defined by a recipe R
t
which prescribes
the sequence of processing steps necessary to manu-
facture this product. The lot l
t
n
can choose which of
the suitable machines M
m
i
to use for each necessary
process step P
m
.
Therefore, the recipes imply a directed graph G =
(V, E) of possible movements between the machines
of the plant, where the nodes V consist of all machines
M
m
i
and the edges E are defined between two ma-
chines M
m
i
and M
p
j
if there exists a lot l
t
n
with a recipe
R
t
containing processes P
m
and P
p
in direct succes-
sion. A route R is an ordered list of machines which
can execute the corresponding processes in the recipe.
The taken routes are a sub-graph of G with G
r
G.
Out of this formal definition, we identified a num-
ber of possible components in a fab that can act as
swarm members. Machines M: know their processes
and their utilization. There are many different ma-
chines in the fab that could form either multiple co-
operating homogeneous swarms, or a heterogeneous
swarm with different capabilities. The neighborhood
is locally and dynamically defined by the recipes of
the incoming and outgoing lots. Machines can take
decisions locally and can, e.g., re-order their queue
and thereby select which lot to process next. Further-
more, they can communicate with other machines,
and could ask for lots of a specific processing type.
Workcenters W : with W M have attributes very
similar to single machines, because a workcenter is
simply a set of related machines. It can calculate
when lots will be processed internally and can use
makespan information (the time that elapses from the
start to the end of a lot’s production) to calculate when
the lots currently being processed will be finished.
Lots L: can also form either homogeneous (lots
of the same product type), or heterogeneous (lots of
multiple product types) swarms. Lots follow a spe-
cific recipe, which prescribes which process steps to
take in which order but not the concrete machine on
which to perform the required next process step. As
there are typically multiple machines which can per-
form the same process, lots could decide which ma-
chine to take next. The concrete path taken through
the machines of the fab is called a route. Typically,
lots of similar product types will share parts of their
recipes. Given a stable load situation in the machine
park, lots of the same product type and lots of similar
product types can therefore be expected to share parts
of their routes. Furthermore, lots could manipulate
their own prioritization.
Processes P: could be virtual swarm members.
They see all machines that they can potentially be
run on plus the current and total workload. Addition-
ally, they could forecast the workload, the times for
re-tooling, and have information on batching require-
ments.
5 CANDIDATE ALGORITHMS
In the following we present two candidate algorithms
for the job shop problem using bottom-up approaches.
They have been selected because they present an em-
bodied approach, thus, each agent in the algorithm
can be modeled from a “real” entity in the produc-
tion plant. These swarm members are already rep-
resented as digital twins. For the swarm approach
we can add supporting attributes (e.g., pheromones),
and observe the virtual, but local environment of the
selected swarm members. Thus, instead of a global
computation of the overall fab, the digital twins can
work and interact with local information.
5.1 Hormone Algorithm
In a semiconductor fab, a network for propagating an
artificial hormone can be constructed by the planned
processing steps (recipes) of lots. An artificial
hormone system can help to express the urgency of
a lot and the need for new lots at a machine type.
Artificial hormone produced at machines can diffuse
through the production system via the lot recipes.
Lots act as swarm members that are attracted by
hormone. The approach is inspired by the usage
of artificial hormones to reorganize agents (Sobe
et al., 2015) in a self-organizing systems for technical
applications (Elmenreich and de Meer, 2008; Elmen-
reich et al., 2009). For implementation, the artificial
hormone system is realized as a software layer spread
over the processing queues of all machines in a fab.
Machines are assumed to have artificial glands that
can produce hormone. The hormone algorithm for
optimizing lot processing in a semiconductor fab can
be decomposed into six mechanisms:
Production: Machines M
m
i
produce hormone h
m
i
ac-
cording to the number of lots in their processing
queue. Machine that are about to run out of lots pro-
duce more hormone. Each machine set/workcenter
W
m
has its own type of hormone.
H
m
=
1
|Q
m
i
| + β
, (1)
where H
m
i
is the hormone corresponding to workcen-
ter W
m
at machine M
m
i
, β is a smoothing factor and
|Q
m
i
| is the number of waiting lots in the queue for
machine M
m
i
.
SIMULTECH 2021 - 11th International Conference on Simulation and Modeling Methodologies, Technologies and Applications
330
Evaporation: Hormone levels at an agent evaporate
exponentially with a given rate α:
H
m
i,t+1
= H
m
i,t
· (1 α) (2)
where H
m
i,t+1
and H
m
i,t
, represent the state of hormone
at machine M
m
i
before and after a discrete evaluation
step.
Diffusion: Hormone diffuses from machine to ma-
chine based on lot’s recipes that connect the ma-
chines. Hormone diffuses upstream, i.e. from a later
machine in a recipe to a machine that comes before
that machine in the recipe. Thus, hormone diffusion
follows the transpose graph of G, G
T
. If there is an
edge in G
T
between process P
m
and a process P
p
(P
p
being the predecessor of P
m
in a recipe R
t
), the
amount of hormone moving upstream from machine
M
m
i
is defined by
H = H
m
i
· γ (3)
H
m
i
=H (4)
where γ is a parameter setting the motility of hor-
mone. The link strength l
m
, p between two machines
M
m
i
and M
p
j
is equivalent to the number of recipes R
t
containing processes P
m
and P
p
in direct succession.
Each machine connected upstream receives a propor-
tional part of the upstream hormone:
H
p
j
+ =H
l
m,p
r
l
m,r
, (5)
where
r
l
m,r
represents the sum of all upstream links
from P
m
.
Diffusion through Lot Movement: Incoming lots
following an edge of G generate a flow of hormone
back to where the lots came from via the correspond-
ing backwards edge in the transpose graph of G.
H = H
m
i
· δ (6)
H
m
i
= δH (7)
H
p
j
+ = δH (8)
where H defines the amount of hormone that moves
with the lot, calculated from the amount of available
hormone H
m
i
at a machine M
m
i
. The lot moved from
machine M
m
i
to M
p
j
, thus adding to H
m
j
. M
p
j
can be
also a machine from a different workcenter than W
m
.
Attraction: Lots are attracted by hormone, if those
match the machines types required for their next steps
in their recipe. The amount of attraction decreases ex-
ponentially based on the number of steps ahead. The
attraction force is applied to lots waiting in a process-
ing queue Q
m
i
and can make an attracted lot move for-
ward in the queue.
attraction =
i,m
H
m
i
· ε
n
, (9)
where H
m
i
is the hormone amount at a machine that
is n edges away and ε is a factor < 1 defining the
degradation of the hormone attraction over edge dis-
tance in graph G. Attraction is used to reorder wait-
ing lots, but other factors such as remaining raw pro-
cess time and remaining process cycle time also in-
fluence lot urgency. The diffusion by lots is a self-
reinforcing process that is balanced by hormone pro-
duction based on the shortest processing queues. In
this way, a path through the system where lots are pro-
cessed quickly—the paths we would like to have in a
productive system—is marked with hormone. Each
mechanism comes with a parameter indicating the
strength of each part, that is evaporation rate α, hor-
mone production factor β, upstream diffusion factor γ,
hormone distribution factor δ and attraction factor ε.
A possible configuration of these parameters is stated
in (Elmenreich et al., 2021). Due to the interaction
between each of the mechanisms forming feedback
control loops, the algorithm can operate with a broad
set of possible parameter settings.
5.2 Ant Algorithm
Ant algorithms are inspired by the foraging behavior
of ants which can find near-optimal paths to food
sources without global knowledge by marking trails
with pheromones. They have been successfully ap-
plied to route optimization of the traveling salesman
problem (Caro and Dorigo, 1998; Di Caro et al.,
2005). As shown in Sec. 4.2 the plant can be seen as
a graph G = (V, E) and lot progression through the
fab as a routing problem. Lots are mapped to ants
and machines are mapped to network nodes. The
approach can then be decomposed as follows:
Trail Following: Lots choose the next machine M
m
i
probabilistically out of the set of possible machines
W
m
based on the local pheromone values for that
machine and a local heuristic of its current load (ie.
the queue length of the machine) as shown in Equa-
tion 10.
P
i, j
=
τ
i, j,d
+ αη
i, j
1 + α(N
i
1)
(10)
with
η = 1
q
i, j
q
(11)
the relative queue length of the machine and N
i
the number of possible machines. Instead of a
Bottom-up Job Shop Scheduling with Swarm Intelligence in Large Production Plants
331
“destination node” as in the original AntNet variant
of the algorithm, we use the next following step of
the recipe for the destination d. Thus, a machine with
a high amount of pheromone and a short queue length
becomes more attractive for a lot. The influence of
pheromone vs. local heuristic can be adjusted via a
parameter.
Trail Laying: Pheromone values are updated after
a lot has progressed. In distributed ant routing al-
gorithms for packet networks, this is done by send-
ing a backward ant to travel the same route in re-
verse after the original ant has reached its final des-
tination. Backward ants update the pheromone val-
ues at each hop according to the time it took the
original ant to traverse the respective link. In our
approach, pheromone updates are triggered not by
sending a “reverse lot” but rather by communication
between machines. To facilitate the pheromone up-
date, each lot keeps a memory of the time it took
to traverse an edge—i.o.w. how long it took to wait
in the machine’s queue. Since complete production
of a lot takes weeks, backward communication and
pheromone update is performed as soon as a lot has
traversed a workcenter. For a chosen machine M
m
x
the
pheromone value is updated as follows:
τ
x,d
τ
x,d
+ r(1 τ
x,d
) (12)
while for all potential machines M
m
n
which were not
chosen, the pheromone values are updated according
to Equation 13
τ
n,d
τ
n,d
rτ
n,d
(13)
with reinforcement r depending on the time the lot
took to traverse this “hop” and the current congestion
status according to the local heuristic:
r r(T, M
m
i
) (14)
Evaporation: At regular time intervals, pheromone
values are evaporated with a rate p so that trails which
have gotten worse (e.g., due to machine downs) are
removed (Equation 15).
τ(t + 1) = τ(t)(1 p) (15)
6 RELATED WORK
Production scheduling aims at arranging and control-
ling work and workloads in a production process so
that a given optimality criterion, such as minimizing
makespan, mean flow time, idle machine time, or to-
tal tardiness is addressed (Blazewicz et al., 2019). It
is an NP-hard problem, thus belonging to the class
of hardest problems according to computational com-
plexity theory (Garey et al., 1976). To address large
problem sizes, various techniques are suggested in-
cluding differential evolution algorithms (Yuan and
Xu, 2013), genetic algorithms and tabu search (Li and
Gao, 2016), large-neighborhood search (Pacino and
Van Hentenryck, 2011), or a defining scheduler upon
general purpose declarative problem solvers (Da Col
and Teppan, 2016). Although several approaches al-
ready exist, they typically make the calculations cen-
trally and beforehand (similar to existing linear opti-
mization approaches).
In swarm intelligence complex optimizations
problems are solved by using local rules inspired
by swarms of birds, fish, and ants (Almufti et al.,
2019; Hassanien and Emary, 2018). When modeling
a swarm, the choice of agents in the system needs to
be defined carefully. The two main aspects comprise
the agent’s properties (internal and external states)
and the agent’s behavior. In our example, the inter-
nal or external states would describe, e.g., the agent’s
current and next process step, process time, or uti-
lization. Through its behavior, the agent can change
states from the environment, other agents, or the in-
ternal state (Schranz et al., 2020). Furthermore, we
can differentiate between three types of agents: mo-
bile, stationary or connecting agents (Wilensky and
Rand, 2015). How to choose an agent for a swarm
is application-specific. Nevertheless, (van Ast et al.,
2008) present a swarm framework to formally de-
fine dynamic agents, their neighborhood, environ-
ment, and interactions. (Schranz et al., 2018) model
a swarm member by focusing on cyber-physical sys-
tems and their local memory (e.g., the current x and
y position, available energy), behaviour, physical as-
pects, security, and human interaction interfaces us-
ing the modeling tools Modelio and FREVO (Sobe
et al., 2012) to evolve a swarm algorithm solving
it. Swarm algorithms are of high interest for the do-
main of job shop scheduling as it is well-known that
optimal solutions cannot be found in feasible time
with linear optimization (Zhang et al., 2009). Nature-
inspired algorithms have been confirmed to be ex-
cellent in addressing complex optimization problems
in job shop scheduling (Gao et al., 2019). The ma-
jority of related work on the application of swarm
concepts in production scheduling build upon parti-
cle swarm optimization (Ghumare et al., 2015). Ad-
ditionally, several contributions are using the artificial
bee colony algorithm (Sharma and Pant, 2017). Dig-
ital hormone models for self-organization have been
suggested in (Shen et al., 2002) and have been ap-
plied to task allocation problems (Renteln et al., 2008;
SIMULTECH 2021 - 11th International Conference on Simulation and Modeling Methodologies, Technologies and Applications
332
Brinkschulte et al., 2007), synthesis of robot con-
trollers (Hamann et al., 2010; Wilson et al., 2019), or
large-scale IoT systems (Sinha and Chaczko, 2017).
Artifial hormone systems have also been proposed as
the basic mechanism of middleware for distributed
systems (Sobe et al., 2015). Ant algorithms have
originally been proposed in (Dorigo et al., 1996) and
(Dorigo and Gambardella, 1997). They are a bio-
inspired meta-heuristic based on the foraging behav-
ior of ants (e.g., the Black Garden ant Lasius niger
or the Argentine ant Iridomyrmex humilis) and have
been applied successfully to the NP-hard problem of
finding the shortest path in the traveling salesman
problem (Lawler et al., 1985). A thorough introduc-
tion to ant algorithms can be found in (Dorigo and
St
¨
utzle, 2004) and in (Bonabeau et al., 1999); there
exist currently over a hundred variants of these algo-
rithms. Ant algorithms have also been investigated for
use as a routing protocol in packet routing networks
in, e.g., (Caro and Dorigo, 1998) or (Di Caro et al.,
2005) where they are implemented as distributed al-
gorithms using only local information at each network
node. They have been shown to converge quickly with
reasonable overhead. Compared to the related work,
we do not create a swarm that operates in a solution
space of possible schedules as solutions to a given
job-shop scheduling set, but instead derive a bottom-
up approach, where embodied agents represent physi-
cal entities in the fab (instead of representing a single
solution in the solution space), and work with local
rules from which a global behavior emerges.
7 CONCLUSION
Job shop scheduling is an NP-hard problem which
makes it impossible to find an optimal solution of a
large scale system in reasonable time. While previ-
ous approaches often aimed at reducing the problem
size by optimizing subsets of the system, we aim for
a bottom-up approach that uses swarm-based mod-
eling to establish local interaction rules between re-
lated parts of the system. The proposed approach is
sketched via two different algorithms, one inspired by
the natural endocrine system and the other inspired by
eusocial insects. We depicted a mapping between ma-
chines and lots in the job shop system to agents of a
swarm system.
As a next step we will elaborate on the efficiency
of the proposed candidate algorithms using a sim-
ulation approach based on an abstracted version of
a wafer fab. An open question remains if an im-
provement is measurable at workcenter level as ap-
proximate scheduling solvers already exist for sev-
eral workcenters. This brings up another question
that needs to be answered: how to integrate with and
where to set the boundary between currently used
solvers and the swarm approach in the running sys-
tem? One possibility would be that the swarm algo-
rithms provide local information to the solver which
takes this information into account during its calcula-
tion.
ACKNOWLEDGEMENT
This work was performed in the course of project
SWILT
3
(Swarm Intelligence Layer to Control Au-
tonomous Agents) supported by FFG under contract
number 867530.
REFERENCES
Almufti, S., Marqas, R., and Ashqi, V. (2019). Taxonomy
of bio-inspired optimization algorithms. Journal of
Advanced Computer Science & Technology, 8(2):23–
31.
Blazewicz, J., Ecker, K., Pesch, E., Schmidt, G., and
Weglarz, J. (2019). Handbook on Scheduling.
Springer.
Bonabeau, E., Dorigo, M., and Theraulaz, G. (1999).
Swarm Intelligence From Natural to Artificial Sys-
tems. Oxford University Press.
Brinkschulte, U., Pacher, M., and Von Renteln, A.
(2007). Towards an artificial hormone system for
self-organizing real-time task allocation. Software
Technologies for Embedded and Ubiquitous Systems,
Springer, pages 339–347.
Caro, G. D. and Dorigo, M. (1998). Antnet: Distributed
stigmergy control for communications networks. Ar-
tificial Intelligence Research, 9:317–365.
Da Col, G. and Teppan, E. C. (2016). Declarative
decomposition and dispatching for large-scale job-
shop scheduling. In Proceedings of the Joint Ger-
man/Austrian Conference on Artificial Intelligence,
pages 134–140. Springer.
Di Caro, G., Ducatelle, F., and Gambardella, L. M. (2005).
Anthocnet: An adaptive nature-inspired algorithm for
routing in mobile ad hoc networks. European Trans-
actions on Telecommunications, 16(5):443–455.
Dorigo, M. and Gambardella, L. M. (1997). Ant colony
system: A cooperative learning approach to the trav-
eling salesman problem. IEEE Trans. on Evolutionary
Computation, 1(1):53–66.
Dorigo, M., Maniezzo, V., and Colorni, A. (1996). Ant sys-
tem: Optimization by a colony of cooperating agents.
IEEE Trans. on Systems, Man, and Cybernetics, Part
B, 26(1):29–41.
3
https://swilt.aau.at/
Bottom-up Job Shop Scheduling with Swarm Intelligence in Large Production Plants
333
Dorigo, M. and St
¨
utzle, T. (2004). Ant Colony Optimiza-
tion. A Bradford Book, The MIT Press.
Elmenreich, W. and de Meer, H. (2008). Self-organizing
networked systems for technical applications: A dis-
cussion on open issues. In Proceedings of the 3rd
International Workshop on Self-Organizing Systems,
pages 1–9. Springer.
Elmenreich, W., D’Souza, R., Bettstetter, C., and de Meer,
H. (2009). A survey of models and design meth-
ods for self-organizing networked systems. In Self-
Organizing Systems, volume 5918 of LNCS, pages
37–49. Springer.
Elmenreich, W., Schnabl, A., and Schranz, M. (2021).
An artificial hormone-based algorithm for production
scheduling from the bottom-up. In Proceedings of the
13th International Conference on Agents and Artifi-
cial Intelligence. SciTePress.
Gao, K., Cao, Z., Zhang, L., Chen, Z., Han, Y., and
Pan, Q. (2019). A review on swarm intelligence and
evolutionary algorithms for solving flexible job shop
scheduling problems. IEEE/CAA Journal of Automat-
ica Sinica, 6(4):904–916.
Garey, M. R., Johnson, D. S., and Sethi, R. (1976).
The complexity of flowshop and jobshop scheduling.
Mathematics of Operations Research, 1(2):117–129.
Geng, H., editor (2018). Semiconductor Manufacturing
Handbook. McGraw-Hill Education.
Ghumare, M., Bewoor, L., and Sapkal, S. (2015). Appli-
cation of particle swarm optimization for production
scheduling. In Proc. of the International Conference
on Computing Communication Control and Automa-
tion, pages 485–489. IEEE.
Hamann, H., Stradner, J., Schmickl, T., and Crailsheim,
K. (2010). Artificial hormone reaction networks:
Towards higher evolvability in evolutionary multi-
modular robotics. In Proceedings of the Artificial Life
XII, pages 773–780.
Hassanien, A. E. and Emary, E. (2018). Swarm Intelligence:
Principles, Advances, and Applications. CRC Press.
Heylighen, F. (2001). The science of self-organization and
adaptivity. The Encyclopedia of Life Support Systems,
5(3):253–280.
Lawler, E. L., Lenstra, J. K., Kan, A. H. R., and Shmoys,
D. B. (1993). Sequencing and scheduling: Algorithms
and complexity. Handbooks in Operations Research
and Management Science, 4:445–522.
Lawler, E. L., Lenstra, J. K., Rinnooy-Kan, A. H. G., and
Shmoys, D. B., editors (1985). The Traveling Sales-
man Problem: A Guided Tour of Combinatorial Opti-
mization. JohnWiley & Sons.
Li, X. and Gao, L. (2016). An effective hybrid genetic algo-
rithm and tabu search for flexible job shop scheduling
problem. International Journal of Production Eco-
nomics, 174:93–110.
Pacino, D. and Van Hentenryck, P. (2011). Large neigh-
borhood search and adaptive randomized decomposi-
tions for flexible jobshop scheduling. In Proc. of the
22nd International Joint Conference on Artificial In-
telligence, pages 1997–2002.
Renteln, A. V., Brinkschulte, U., and Weiss, M. (2008). Ex-
aminating task distribution by an artificial hormone
system based middleware. In Proc. of the 11th IEEE
International Symposium on Object and Component-
Oriented Real-Time Distributed Computing, pages
119–123.
Schranz, M., Bagnato, A., Brosse, E., and Elmenreich, W.
(2018). Modelling a CPS swarm system: A simple
case study. In Proc. of the 6th International Confer-
ence on Model-Driven Engineering and Software De-
velopment, pages 615–624.
Schranz, M., Umlauft, M., Sende, M., and Elmenreich, W.
(2020). Swarm robotic behaviors and current applica-
tions. Frontiers in Robotics and AI, 7:36.
Sharma, T. K. and Pant, M. (2017). Shuffled artificial
bee colony algorithm. Soft Computing, 21(20):6085–
6104.
Shen, W. M., Chuong, C. M., and Will, P. (2002). Digital
hormone models for self-organization. In Proceedings
of the 8th International Conference on Artificial Life,
pages 116–120.
Sinha, S. and Chaczko, Z. (2017). Concepts and observa-
tions in artificial endocrine systems for iot infrastruc-
ture. In Proceedings of the 25th International Confer-
ence on Systems Engineering, pages 427–430.
Sobe, A., Elmenreich, W., Szkaliczki, T., and B
¨
osz
¨
ormenyi,
L. (2015). SEAHORSE: Generalizing an artificial hor-
mone system algorithm to a middleware for search and
delivery of information units. Computer Networks,
80:124–142.
Sobe, A., Feh
´
erv
´
ari, I., and Elmenreich, W. (2012).
FREVO: A tool for evolving and evaluating self-
organizing systems. In Proceedings of the 1st Interna-
tional Workshop on Evaluation for Self-Adaptive and
Self-Organizing Systems.
Stidham Jr, S. (2002). Analysis, design, and control of
queueing systems. Operations Research, 50(1):197–
216.
van Ast, J., Babuska, R., and De Schutter, B. (2008). A gen-
eral modeling framework for swarms. In Proceedings
of the IEEE Congress on Evolutionary Computation,
pages 3795–3800.
Wilensky, U. and Rand, W. (2015). An Introduction to
Agent-Based Modeling: Modeling Natural, Social,
and Engineered Complex Systems with NetLogo. MIT
Press.
Wilson, J., Timmis, J., and Tyrrell, A. (2019). An amal-
gamation of hormone inspired arbitration systems for
application in robot swarms. Applied Sciences, 9(17).
Yuan, Y. and Xu, H. (2013). Flexible job shop scheduling
using hybrid differential evolution algorithms. Com-
puters & Industrial Engineering, 65(2):246–260.
Zhang, G., Shao, X., Li, P., and Gao, L. (2009). An effec-
tive hybrid particle swarm optimization algorithm for
multi-objective flexible job-shop scheduling problem.
Computers & Industrial Engineering, 56(4):1309–
1318.
SIMULTECH 2021 - 11th International Conference on Simulation and Modeling Methodologies, Technologies and Applications
334