disjunctive constraints, and an operation cannot be
interrupted unless it is finished, i.e. no pre-emption
is allowed. A solution for the JSSP consists in fixing
a start time for each operation satisfying the set of
constraints.
FJSP, first introduced by (Nuijten & Aarts,
1996), is a generalisation of the above mentioned
problem, where each operation can be processed by
more than one resource and has consequently a
processing time depending on the resource used. A
solution consists then not only in sequencing the
operations on the resources and fixing them a start
time but also in allocating them to a resource likely
to achieve them. This problem is also NP-hard.
3 TABU SEARCH
The models we propose in this article are based on a
combinatorial optimisation technique, namely the
tabu search (TS) method, proposed by (Glover,
1986), which is a meta-heuristic based on the local
search principle. Beginning from an initial solution,
the local search consists to choose, at each iteration,
the best solution in the current solution
neighbourhood, even if it does not improve the
quality of the solution. A neighbourhood is
composed of all the solutions obtained by a simple
move on the current solution. These solutions are
named, then, neighbours of the current one. TS have
proved its power to handle JSSPs. Several
researches have used TS and good results have been
obtained. Among the approaches proposed for the
JSSP, the ones proposed by (Mastrollili &
Gambardella, 2000), (Brucker & Neyer, 1998) and
(Chambers & Barnes, 1996).
In order to escape local optima in which the
system can be easily trapped, TS uses a temporary
memorisation structure in which it keeps track of the
last visited solutions: the tabu list. In fact, a solution
is forbidden during a number of iterations equal to
the tabu list size. Then, the best solution among the
ones not forbidden is selected for the next iteration.
Although its efficiency in solving many difficult
problems, TS remains yet hardly adaptable to FJSP
because of the great number of parameters to define:
– initial solution,
– neighbourhood function,
– evaluation of the current solution,
– tabu list size, etc.
Later in this paper, we will describe briefly our
adaptation of the different parameters to the FJSP.
The next section presents the two multi-agent
models proposed and subsequently their global
dynamic.
4 MULTI-AGENT MODELS
Two Multi-Agent models have been proposed for
solving FJSP. The first one consists in centralizing
the optimisation process in a unique agent
responsible for finding the optimal solution in
cooperation with the remainder of the agents which
are responsible for generating successive feasible
solutions at each step of the process. Whereas, the
second one distributes the optimisation process
between a collection of agents cooperating together
in order to find the best possible solution.
Since scheduling problems involve two sorts of
constraints: the ones concerning the jobs, namely
precedence and temporal constraints, and those
concerning the resources, namely disjunctive
constraints, both Multi-Agent models proposed in
this paper are then composed of two agent classes:
Job Agents and Resource Agents responsible for the
satisfaction of the two classes of constraints. In
addition, a third agent class, containing a single
agent, the Interface agent, is added to both models.
The degree of importance of the latter agent in the
solving process differs from the first model to the
second. In fact, in the first model, it contains the
core of the TS method. However, in the second
model, its role is limited to the interface between the
agents and the user. The optimisation process, in this
case, is distributed among the Resource agents.
Each agent in these models has its own
acquaintances (i.e. the agents that it knows and with
which it can communicate), a local memory
composed of its static and dynamic knowledge and a
mailbox in which it stores the messages received
from the other agents. In the remaining of this
section, we describe briefly each agent class in both
models.
4.1 Centralized Optimisation Model
4.1.1 Job Agent
The acquaintances of Job agent are composed of
Resource agents that are likely to fulfil its operations
and of the Interface agent. Its static knowledge
includes its release and due dates, its process routing
and the different processing times of its operations
according to the resources. Whereas its dynamic
knowledge comprises the start times of its operations
and the current resources to which they are
allocated.
The Job agent is satisfied when all its operations
have been affected to potential resources and when
all its constraints are not violated and in this case it
does nothing. Otherwise, it is unsatisfied and it tries
ICINCO 2005 - ROBOTICS AND AUTOMATION
32