scispace - formally typeset
Open AccessJournal ArticleDOI

Tabu search for the job shop scheduling problem with multi-purpose machines

TLDR
It is shown that an application of tabu search techniques to this problem yields excellent results for benchmark problems and to the hardest problems in combinatorial optimization.
Abstract
In this paper we study the following generalization of the job-shop scheduling problem. Each operation can be performed by one machine out of a set of machines given for this operation. The processing time does not depend on the machine which has been chosen for processing the operation. This problem arises in the area of flexible manufacturing. As a generalization of the jobshop problem it belongs to the hardest problems in combinatorial optimization. We show that an application of tabu search techniques to this problem yields excellent results for benchmark problems.

read more

Content maybe subject to copyright    Report

OR Spektrum (1994) 15:205-215
ORSpektmm
9 Springer-Verlag 1994
Tabu search for the job-shop scheduling problem
with multi-purpose machines*
Johann Hurink 1, Bernd Jurisch 2, and Monika Thole 1
1 Fachbereich Mathematik/Informatik, Universit~it Osnabriick, Postfach 4469, D-49069 Osnabrt~ck, Germany
2 Faculty of Business Administration, Memorial University of Newfoundland, St. John's, Newfoundland, Canada A 1B 3X5
Received 19 May 1993/Accepted 16 November 1993
Abstract.
In this paper we study the following generaliza-
tion of the job-shop scheduling problem. Each operation
can be performed by one machine out of a set of machines
given for this operation. The processing time does not
depend on the machine which has been chosen for
processing the operation. This problem arises in the area
of flexible manufacturing. As a generalization of the job-
shop problem it belongs to the hardest problems in
combinatorial optimization. We show that an application
of tabu search techniques to this problem yields excellent
results for benchmark problems.
Zusammenfassung.
In dieser Arbeit behandeln wir die
folgende Verallgemeinerung des Job-Shop Scheduling
Problems. Jede Operation kann auf einer beliebigen
Maschine aus einer Menge yon Maschinen, die fiir diese
Operation gegeben ist, bearbeitet werden. Die Bearbei-
tungszeit h~ingt dabei nicht yon der gew~ihlten Maschine
ab. Das in dieser Arbeit behandelte Problem tritt im
Bereich der flexiblen Fertigung auf. Als Verallgemeine-
rung des klassischen Job-Shop Problems geh6rt es zu
den schwierigsten Problemen aus dem Bereich der kom-
binatorischen Optimierung. Wir zeigen, dab eine An-
wendung der Tabu-Search Metaheuristik hervorragende
Ergebnisse fiir die yon uns untersuchten Testprobleme
liefert.
Key words: Job-shop scheduling, tabu search, flexible
manufacturing
Schliisselwiirter:
Job-Shop Scheduling, Tabu Suche, Fle-
xible Fertigung
* Supported by Deutsche Forschungsgemeinschaft, Project JoP-
TAG
Correspondence to:
J. Hurink
1. Introduction
In this paper we study a problem which arises in the area
of flexible manufacturing systems. Here we have a small
number of so-called multi-purpose machines which can be
equipped with different tools. Moreover, there is a set of
jobs which have to be processed on the machines. A
machine can process a job only if it is equipped with the
tool the job needs for processing.
We consider the situation that the multi-purpose
machines in the system are already equipped with tools.
This yields the following problem which is called job-shop
scheduling problem with multi-purpose machines (MPM
job-shop problem).
We have a set of jobs, each one consisting of a number
of operations which have to be processed in a given
order. Moreover there is a set of multi-purpose machines
which are equipped with different tools. Associated with
each operation there is a set of machines which due to
~heir tool equipment can process this operation. The
processing of an operation takes a given amount of time.
We have to find an assignment of the operations to the
machines and a schedule for the operations on the
machines such that a given objective function is minim-
ized.
The MPM job-shop problem is a generalization of the
classical job-shop problem which belongs to the hardest
problems in combinatorial optimization. A problem with
10jobs and 10 machines which has already been formulat-
ed in 1963 (Fisher and Thompson (1963)) has been solved
only 26 year later (Carlier and Pinson (1989)).
In this paper we will present heuristic solution methods
for the job-shop problem with multi-purpose machines. It
is organized as follows.
In Sect. 2 we will give a description of the MPM job-
shop problem and an overview on previous research. It
turns out that some MPM job-shop problems are NP-hard
even if their classical counterparts are solvable in poly-
nomial time.
In Sect. 3 we will present methods for the calculation of
heuristic solutions based on neighborhoods. Initial solu-

206 J. Hurink et al.: Job-shop scheduling problem
tions are calculated using a fast heuristic based on
insertion techniques.
We have implemented the developed heuristics on a
Sun Workstation. Computational results are presented in
Sect. 4. We conclude this paper by providing final remarks
in Sect. 5.
2. Preliminaries
In this section we will give a formal definition of the job-
shop scheduling problem with multi-purpose machines.
Moreover, we will review the previous research on related
problems and give some complexity results for job-shop
scheduling problems with multi-purpose machines.
An
assignmentp
of operations to machines is feasible if
p(Oib) ~ dg~j for i= 1 .....
n;j= 1, ...,ni.
For a given assign-
ment p a
p-schedule
is defined by the completion times
Cij
of all operations O~j. Such a p-schedule is feasible if the
schedule of the job-shop problem corresponding to p is
feasible, i.e. if it fulfills the restrictions given above.
We are interested in finding a feasible assignment p*
and a feasible p*-schedule C* such that the total schedule
lenght Cma x is minimized.
Following the a
I/~l
7-notation suggested by Graham,
LaMer, Lenstra, Rinnooy Kan (1979) we denote the
job-shop problem with multi-purpose machines by
J(MPM)I I Cmax-
2.1. Formulation of the problem
The job-shop scheduling problems with multi-purpose
machines (MPMjob-shop problem) may be formulated as
follwos. There are
n jobs J~,..., J,,
each job
Ji
consisting of
ni operations Ore..., Oi, i
which have to be processed in this
order. Moreover, there are m different, so-called
multi-
purpose machines M1,...,Mm
which are equipped with
different tools. The operation
Oij(i = 1,..., n; j= 1 ..... nt)
has to be processed by one specific tool for Pij time units,
i.e. it can be processed by each machine which is equipped
with this tool. Thus, associated with each operation Oii
there is a non-empty set J//~j_ {3/1,..., M~}: O~j has to be
processed by one machine of Jt/ij. Preemption is not
allowed. Moreover, the following restrictions have to be
fulfilled:
9 no machine can process more than one operation at the
same time and
9 no job can be processed by more than one machine at
the same time.
Oll (~)
O12( [-I )
(V)
Fig. 1
M1
Figure 1 shows an example of a job-shop problem with
multi-purpose machines with two jobs, three operations,
and three machines. The operations Oll, O12, and O21 have
to be processed by the O-tool, by the rT-tool, and by the
V-tool, respectively. Thus, Oll may be processed by M1 or
M2, Oa2 may be processed by 3/2 or M3, and O21 has to be
processed by M3.
2.2.
Previous research
Most research has been done on the classical job shop
scheduling problem which is a special case of the MPM
job-schop problem; we have
I Jgijl
= 1 for all operations
Oij.
For this problem both exact methods (branch and
bound methods, see Applegate and Cook (1991); Carlier
and Pinson (1990); Brucker et al. (1992), and heuristic
methods (e.g. based on priority dispatching rules, inser-
tion techniques, or neighborhoods) are known. Recently
Dell'Amico and Trubian (1993) presented excellent results
obtained by applying tabu search to the job-shop prob-
lem.
There are other special cases of the MPM job-shop
problem studied in the literature. Graham (1966) con-
sidered flow-shop problems with parallel machines which
are generalizations of the classical flow-shop problem. He
assumed that there is a set dgj of identical machines for
processing the operations
Oij(i = 1,..., n;j= 1,..., m)
with
IJlj[ = IJg~l for
1 <_j, k<_m.
Salvador (1973) generalized
this problem to so-called "flexible flow-shops". Again
there is a set ~'j of parallel identical machines to process
the operations
Oij(i=
1 ..... n; j=l ..... m), but now we
may have [Jgjl e
IJgkl
for
j+k.
Salvador proposed a
branch and bound algorithm for solving this problem
exactly.
The MPM job-shop problem in the form considered in
this paper has been studied first by Brucker and Schlie
(1990).They gave a polynomial time algorithm for the
problem of minimizing the makespan when the number of
jobs is equal to 2, i.e. for
J(MPM)ln=21Cm~x.
The
corresponding problem with 3 jobs is NP-hard even if the
number of machines is restricted to 2 (Jurisch (1992)).
Nevertheless, Meyer (1992) proved that the problem
J(MPM) In = r[ Cma x is solvable in pseudo-polynomial time
for each fixed number r of jobs. If the processing times of
the operations are restricted to be equal to 1, the resulting
problem J(MPM)[ n
= r, Pij
= 1 [ Cm~x becomes polynomial-
ly solvable again (Mayer (1992)).
Brandimarte (1993) considered so-called "flexible job-
shop" which slightly generalize our problem. In flexible
job-shops the processing times of operations also depend
on the machine which is chosen for processing. Moreover,
he briefly discussed the problem of minimizing the
weighted number of tardy jobs.

J. Hurink etai.: Job-shop scheduling problem
207
The main contribution of the paper of Brandimarte is a
tabu search algorithm for flexible job-shops. Our ap-
proach is different in two aspects:
9 Our neighborhood is more sophisticated: Brandimarte
only considers exchanging successive operations on the
machines.
9 Brandimarte uses a more "hierarchical" approach: He
solves the problem of assigning the operations to the
machines and then focuses on the resulting job-shop
problem for some time. A reassignment is done after a pre-
defined number of steps. We consider a reassignment of
operations in each step of the tabu search algorithm.
In the next section we will introduce the so-called
disjunctive graph model which will be helpful for the
presentation of the heuristic algorithms in Sect. 3.
Z3. The disjunctive graph model
9 each disjunctive arc has been fixed, i.e. there is a fixed
relation between each pair of operations that are assigned
to the same machine and
9 the resulting directed graph
G(S) = (V, C w S)
is acyclic.
It is easy to see that the finish time of a schedule
corresponding to a complete selection S is equal to the
length of the longest weighted (so-called
critical)
path
from 0 to * in G(S) = (V,
CwS).
3. Tabu search for the MPM
job-shop problem
In this section we will present a tabu-search heuristic for
the job-shop problem with multi-purpose machines. In
Sect. 3.1 we will present both the basic ideas of local search
heuristics and two neighborhoods
for
the problem. The
initial solution for the tabu search algorithm is calculated
using a fast heuristic based on insertion techniques and
beam search. This algorithm is presented in Sect. 3.2.
We have already observed that if for the job-shop problem
with multi-purpose machines an assignment # of the
operations to the machines is given, the problem of
calculating an optimal/~-schedule is a classical job-shop
problem. Thus, a feasible solution of the MPM job-shop
problem can be described by a feasible assignment/.z and a
feasible schedule of the job-shop problem corresponding
to #.
We will use the disjunctive graph model (Roy and
Sussmann (1964)) to describe the solution of a job-shop
problem. For a given instance of the MPM job-shop
problem and a corresponding feasible assignment/~ we
define a disjunctive graph G = (V, C, D) as follows.
V is the set of nodes, representing the operations of all
jobs, In addition there are two special nodes, a source 0
and a sink *. There is a weight associated with each
node. The weights of 0 and * are zero while the weights
of the other nodes are the processing times of the
corresponding operations.
C is the set of directed
conjunctive
arcs. These arcs reflect
the job-order of the operations. Additionally there are
conjunctive arcs between the source and the first
operations of all jobs and between the last operation of
all jobs and the sink. More precisely, we have
C= {0~ s -~O~,j+~:i-t .... ,n;j=l,...,nj-1}
va{0
--" 0il : i= l .... ,n}
{Oi~,
-+ * : i = 1 ..... n}
D is the set of undirected
disjunctive
arcs. Such an arc
exists for each pair of operations which are assigned to
the same machine.
The basic scheduling decision is to define an ordering
between all those operations which are assigned to the
same machine. This can be done by turning
undirected
disjunctive arcs into
directed
ones. A set S of directed (so-
called
fixed)
disjunctive arcs is called a selection. If a
selection defines a feasible schedule it is called a
complete
selection.
A selection is complete if
3. I. Heuristics based on local search techniques
We will present the basic ideas of heuristics based on local
search techniques in Sect. 3. I. I. tn connection with these
methods it is necessary to define a neighborhood on the set
of all feasible solutions or - more generally - on a subset of
the set of all feasible solutions which contains the optimal
solution of the given problem. In Sect. 3.1.2 we will
present two different neighborhoods for the MPM job-
shop problem.
3,1.1. Basic ideas of local search heuristics.
We will describe
heuristics based on local search techniques for solving an
arbitrary discrete optimization problem (Hurink (1992)),
A discrete optimization problem may be described as
follows.
For a given finite set S of feasible solutions and a cost
funktionf: S + ~, we have to find a solution s* a S with
f(s*) <_f(s)
for allseS.
Heuristics based on local search techniques start from
some solution s e S and search iteratively through the set S
until some stop condition is fulfilled. When searching
through the set S in some systematic way it makes no sense
to allow moves from one feasible solution s to any other
feasible solution s'. This would result in a random search
procedure or a complete enumeration. The set of solutions
which are reachable from s - these solutions are called
neighbors
of s - has to be restricted in some way. This is
done as follows.
For each solution s ~ S we define a set
N(s)~_ S
of
neigbors of s. It is possible to move from s to another
solution s' if and only ifs'
oN(s).
The complete
neighbor-
hood N
is defined by the set of neighbors
N(s)
for each
s~S.
In general the set S contains an exponential number of
solutions. For this reason it is not possible to store the
whole neighborhood. The best way to overcome this

208 J. Hurink et al.: Job-shop scheduling problem
difficulty is to give a rule which for any feasible solution s
describes the set N(s) of neighbors. This rule is given by a
set of allowed modifications. An allowed modification is a
mapping F: S ~ S.
In general an heuristic algorithm based on local search
techniques may be formulated as follows.
Algorithm local search
0. Calculate an initial solution s ~ S;
REPEAT
1. Calculate some solution s' eN(s);
2. If s' is accepted THEN
S := S';
3. UNTIL some stop condition is fulfilled;
Different types of local search heuristics differ by
9 the method which is used for calculating a solution
s'eN(s) (Step 1.);
9 the criteria for accepting a solutions s'e N(s) (Step 2.);
9 the stop condition which is used (Step 3.).
The simplest heuristic based on local search techniques is
the iterative improvement appraoch (e.g., see Papadimi-
triou and Steiglitz (1982)). From all solutions ~ eN(s) we
choose the best one (in terms of the objective function) as
starting solution for the next iteration. The procedure
continues until no solution ~eN(s) with f(~)<f(s) is
found.
One of the main problems with the iterative improve-
ment algorithm is the following. Because only solutions s'
which improve the current solutions s are accepted it is not
possible to leave a local optimum. The objective value of
such a local optimum may be much greater than the
objective value of the optimal solution.
To overcome this problem also solutions which do not
improve the current solution have to be accepted. How-
ever, this implies that solutions can be inspected more
than once and therefore the method might get stuck in a
cycle.
One method to avoid these problems would be to store
all solutions s ~ S which have already been visited in a so-
called tabu list T. A neighbor s' of the current solution s is
only accepted as starting solution for the next iteration if it
is not contained in the tabu list T. Strategies of this type are
usually called tabu search methods (see, e.g., Glover
(1989), (1990)).
Due to capacity restrictions it is not possible to store all
the solutions which have already been visited. Therefore
the tabu list will contain only the t solutions which have
been inspected last.If t is large enough the possibility of
cyclin becomes small, but it may still occur. Thus, some
stop-criteria have to be used to guarantee the termination
of the algorithm. Furthermore we will not store whole
solutions in the tabu list but only typical properties of a
solution which guarantee that a visited solution becomes
tabu, i.e. it will not be reached again.
We illustrate this proceeding in an example. Assume
that we try to solve a one-machine problem with n jobs Jl,
J2 .... , J, using a tabu search approach. One solution y may
be given by the ordering J1 ~ J2 4...4 j~. Now assume
that we generate a neighbor ofy by moving the operation
Jr to the first position. Instead of storing the whole
solution y in the tabu list, we only store the part
Ji l--" J i--" J i+1. All modifications which yield a solution
containing this partial order are forbidden. Thus, it is not
possible to return to solution y as long
as
Ji-I
--' Ji---' Ji
+
1 is
contained in the tabu list.
This example also shows a disadvantage of such a
proceeding. Not only the solution y is forbidden, but all
solutions containing the partial order Ji_l~J~Ji+i.
Thus, solutions may be forbidden even if they have not
been inspected yet. To overcome this problem heuristics
based on tabu-search techniques use so-called aspiration-
criteria which allow to accept neighbors even if they are
forbidden due to the tabu list; i.e. the aspiration-criteria
cancel the tabu status of a solution. For example,
solutions which improve the best solution found so far
should always be accepted. For details we refer to
Dell'Amico and Trubian (1993).
Algorithm tabu search
T:=0;
0. Calculate an initial solution s ~ S;
REPEAT
IF all modifications lead to solutions which are tabu
THEN
STOP;
1. Choose an allowed modification F which does not
lead to a tabu solution;
Calculate the resulting solution s' := F(s);
2. s := s';
update the tabu list;
3. UNTIL some stop-condition is fulfilled;
The stop-conditions in Step 3. of the algorithm may
depend on the number of iterations, the time which has
passed without improving the best solution found so far,
etc. Furthermore a simple and efficient strategy for
choosing the allowed modification in Step 1 is to choose
the modification F which gives the best solution s' in the
set of all solutions which can be generated by allowed
modifications.
The quality of an heuristic based on local search
techniques strongly depends on the neighborhood N
which is used. In the following section we will give two
neighborhoods for the MPM job-shop problem which
yield quite efficient local search heuristics.
3.1.2. Neighborhoods for the MPM job-shop problem. In
this section we will give two neighborhoods for the MPM
job-shop problem. Both neighborhoods are based on a
theorem which describes how a given solution of a MPM
job-shop problem may be improved. To describe this
theorem we need the notation of a block which has been
introduced in connection with one-machine problems,
permutation flow-shop problems, etc. (e.g., see Grabows-
ki et al. (1986)).
Let r be a feasible assignment and S a complete
selection of the job-shop problem corresponding to /1.
Furthermore let P be a critical path in G (S). A sequence of
successive nodes in P is called a block on P in G(S) if the
following properties are satisfied:

J. Hurink et al.: Job-shop scheduling problem 209
9 The sequence contains at least two nodes9
9 All operations represented by the nodes in the sequence
are assigned to the same machine.
9 Enlarging the sequence by one operation yields a
sequence which does not fulfill the second property.
Note that the selection S defines an optimal solution if one
critical path P in
G(S)
does not contain any block at all. In
this case, any pair of successive operations on P is
processed on different machines, i.e. they are connected
by a conjunctive arc. Thus, all operations on P belong to
the same job J~, and the length of the critical path P is equal
to the sum of processing times of all operations of J~.
Obviously, this value defines a lower bound for the
makespan of an optimal schedule.
Based on the given notation we can prove the following
theorem.
Theorem 1.
Let y and y' be two feasible solutions of a given
MPM job-shop problem corresponding to the complete
selection S and S', respectively. If y' improves y, then for
any critical path P in G(S) one of the following properties
holds:
9 in y' at least one operation of one block ofP isprocessed
on another machine than in y, or
9 in y' at least one operation of one block B of P, different
from the first operation in B is processed before all other
operations of B, or
9 in y" at least one operation of one block B of P, different
from the last operation in B is processed after all other
operations of B.
Proof
Any critical path P in
G(S)
has the following form:
P: 0, l,
u'
u 2
.--, bl~ ..., b2~ .--, ...,
Here u{,...,us define a maximal number of operations
9 J 9 .
which are processed on the same machine, i.e.
ul j, 9 9 UbJ
defines a block if
bj>_2.
Now assume that in y' all
operations of all blocks are processed on the same
machine as in y, and that in y' no operation of any block B
of P is processed before the first or after the last operation
of B. Thus, we have:
(i) us is processed before u{ +1 in y' (j= l, . . ., k-1):
because u~ and u{ + 1 are processed on different machines in
j+ 1 9 Y 9 ' successor of u~/
y, ul is a conjunctive . .
(ii) If by > 2, all operations u{,. u j
_
.., bj are processed on the
same machine both in y and in y'.
(iii) If by > 2, u{ is processed before
u{, ..., u yb:,
and ubjY is
processed after u{, . J
9 .,u b l both in y and in y'.
In y' the operations ~ ..... u!j are porcesed in an
order v{ ..... v~j, where J
Vl ..... v~j is a permutation of
U j , U j 9 9 .
...,. bj(J= 1 .... ,k).
Due to (iii) we have v] =u~ and
J_ J
vbj-ubj for all j= 1 .... , k. Thus,
G(S')
contains the path
P': 0,vl ..... 4 ,vL vL v *
9 , .~ Vb2~ 9 9 .~ 9 . .~ b k, 9
The length
L(S')
of the longest (critical) path in
G(S')
cannot be less than the lenght of P'. Thus, we have
k
L(s')> E 2pv(
j=l l-1
k bj
=2 Epu
j-1 1-1
- L(s)
where
L(S)
denotes the length of the critical path in
G(S).
This contradicts the assumption. []
Based on this theorem the first neighborhood is defined as
follows.
Neighborhood N1
Consider a feasible solution y for a MPM job-shop
problem. A feasible solution y' is a neighbor of y if it is
constructed in the following way.
Let S denote the complete selection corresponding to y
and let P be a critical path in G (S). Then y'is derived from
y by
9 processing one operation of one block of P on another
machine than in y or by
9 moving one operation of one block B of P different from
the first (the last) operation in B before (after) all other
operations of B.
Because of theoretical and practical reasons a fundamen-
tal question is whether a given neighborhood has the
connectivity property
or not. This property is defined as
follows.
A neighborhood Nis called
connected
if it is possible to
reach from any solution y to an optimal solution in a finite
number of steps, i.e. if there exists a final sequence
(Y = Y l, Y2,..., Y~> of solutions such that
Yi + 1 a N(yi )
for all
i = 1 .... , k - 1 and Yk is an optimal solution.
We strongly conjecture that neighborhood N1 has the
connectivity property, but unfortunately a proof (or a
counterexample) has not been found yet. Later we will
prove that the second neighborhood called N2 which is
based on an idea of Dell'Amico and Trubian (1993) is
connected.
Neighborhood N2
Consider a feasible solution y for a MPM job-shop
problem. A feasible solution y' is a neighbor of y if it is
constructed in the following way.
Let S denote the complete selection corresponding to y
and let P be a critical path in
G(S).
Then y' is derived from
y by
9 processing one operation of one block of P on another
machine than in y or by
9 moving one operation of one block B of P different from
the first (the last) operation in B before (after) all other
operations of B. If the move of one operation j of one
block B of P before (after) all other operations of B yield
an unfeasible solution, then y' may also be generated by

Citations
More filters
Journal ArticleDOI

A genetic algorithm for the Flexible Job-shop Scheduling Problem

TL;DR: A genetic algorithm for the Flexible Job-shop Scheduling Problem (FJSP) integrates different strategies for generating the initial population, selecting the individuals for reproduction and reproducing new individuals to prove that genetic algorithms are effective for solving FJSP.
Journal ArticleDOI

Metaheuristics: A bibliography

TL;DR: This bibliography provides a classification of a comprehensive list of 1380 references on the theory and application of metaheuristics that have had widespread successes in attacking a variety of difficult combinatorial optimization problems that arise in many practical areas.
Journal ArticleDOI

An effective hybrid optimization approach for multi-objective flexible job-shop scheduling problems

TL;DR: The results obtained from the computational study have shown that the proposed algorithm is a viable and effective approach for the multi-objective FJSP, especially for problems on a large scale.
Journal ArticleDOI

Effective Neighborhood Functions for the Flexible Job Shop Problem

TL;DR: A reduction of the set of possible neighbours to a subset for which it can be proved that it always contains the neighbour with the lowest makespan and an efficient approach to compute such a subset of feasible neighbours is presented.
Journal ArticleDOI

A hybrid genetic and variable neighborhood descent algorithm for flexible job shop scheduling problems

TL;DR: This paper developed a hybrid genetic algorithm (GA) that uses two vectors to represent solutions and developed an efficient method to find assignable time intervals for the deleted operations based on the concept of earliest and latest event time.
References
More filters
Book

Tabu Search

TL;DR: This book explores the meta-heuristics approach called tabu search, which is dramatically changing the authors' ability to solve a host of problems that stretch over the realms of resource planning, telecommunications, VLSI design, financial analysis, scheduling, spaceplanning, energy distribution, molecular engineering, logistics, pattern classification, flexible manufacturing, waste management,mineral exploration, biomedical analysis, environmental conservation and scores of other problems.
Journal ArticleDOI

Tabu Search—Part II

TL;DR: The elements of staged search and structured move sets are characterized, which bear on the issue of finiteness, and new dynamic strategies for managing tabu lists are introduced, allowing fuller exploitation of underlying evaluation functions.
Book ChapterDOI

Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey

TL;DR: In this article, the authors survey the state of the art with respect to optimization and approximation algorithms and interpret these in terms of computational complexity theory, and indicate some problems for future research and include a selective bibliography.
Journal ArticleDOI

The Shifting Bottleneck Procedure for Job Shop Scheduling

TL;DR: An approximation method for solving the minimum makespan problem of job shop scheduling by sequences the machines one by one, successively, taking each time the machine identified as a bottleneck among the machines not yet sequenced.
Journal ArticleDOI

Bounds for certain multiprocessing anomalies

TL;DR: In this paper, precise bounds are derived for several anomalies of this type in a multiprocessing system composed of many identical processing units operating in parallel, and they show that an increase in the number of processing units can cause an increased total length of time needed to process a fixed set of tasks.
Related Papers (5)