A Modified Simulated Annealing Method For Flexible Job Shop Scheduling Problem

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

A modified simulated annealing method for Flexible Job Shop Scheduling

Problem
Najib.M. Najid, Stephane Dawere-Perks, Ali Zaidat
IRCCyN
lnstitut de Recherche en Communications et Cybernetique de Nantes
U M R CNRS 6597
1 rue de la NoC,4l300 Nantes, FRANCE
(najib.najid, stephane.Dauzere-Peres)@irccyn.ec-nantesk

Abmon- The problem considered In this paper Is so imporbut between simultaneous approaches and hierarchical
erteasion of the classical job shop scheduling problem, where the approaches. In hierarchical approaches [ I , 2,4,5, I I, 131 the
same opention e m be performed on more than one machine. assignment of operations to resources and the sequencing of
The problem is to assign each opemtioo to B machine and to operations on the resources are treated separately i.e.
sequence the oprmtions on the mchlner, such that the
assignment and sequencing are considered independently,
makespan of a set of jabs Is mlnlmlzed A generalizedJab Shop
whereas in simultaneous approaches, assignment and
Problem Is defined in &fall. A variation of the simulated
annealing method b proposed nod eompufatiooal results are sequencing are not differentiated [3, 6, 8, 14, 181. Note that
pr0vidd. all of the approaches mentioned above use tabu search
method.
Keywordr: Flexible Job Shop Scheduling, simulated
UMdkIg. The remaining of the paper is organized as follows. The
notation is introduced, and the problem is described in section
II. In section Ill., the disjunctive graph representation, is
modified to take the different extensions into account and a
I. INTRODUCTlON
neighborhood function is presented. The modified simulated
The classical job shop scheduling problem (JSSP) consists in annealing is developed. Findly, the efficiency of the procedure
scheduling a set of jobs on a set of machines with the is shown on various numerical experiments in section IV .
objective to minimize a certain criterion, subject to the
constraint that each job has a specified processing order
through the machines (routing) which is fued and known in II. NOTATION
advance. Processing times are also fixed and known. Set-up
times between operations are either negligible or included in The flexible job shop scheduling problem (FJSSP) may be
processing times (sequence-independent). Each machine is formulated as follows. There is a set of n jobs
continuously available from time zero, and operations are J={A, ..., J n ) and a set of m machines
processed without pre-emption, i.e., once started, an
operation cannot be intermpted. Each machine can process at M = { M I ..., Mm.). Each job 4 consists of a
most one operation at a time. sequence of operations (routing) a l . ..., ;each muting
has to be performed to complete a job. Each operation O,( i
The Flexible job shop scheduling problem (FJSSP), extends - I , ..., n: j =I, ..., nJ has to be processed by one
JSSP by assuming that a machine may be capable of machine out of a set M, of given machines which 0, can be
performing more than one type of operations. (For a given
operation. there must exist at least one machine capable of performed, MqS M . The problem is thus to both
performing it.) The objective is to assign each operation to one determine an assignment and a sequence of the operations on
machine able to perform it and to determine starting times for the machines that minimize some criterion, in our case the
each operation in order to minimize some criterion makespan (the maximal completion time).

Being an extension of the standard job-shop scheduling Let 0 be the set of all operations. Assigning the operations to
problem which is known to be'NP-hard [IO], the FJSSP is the machines means determining a mapping p from 0 to M,
NP-hard as well. Few results are available in the literahue for such that p(OJ= k is the machine on which operation 0, has
the flexible job-shop scheduling problem except for the to be processed with pur unit bok >O denotes the processing
flexible job shop scheduling problem with one resource per time of 0, on machine k). p(0J is a feasible solution
operation. Bmker and Schlie [7] were among the fwst to ifp(U(Oi,)EMvfor i=l, __.,
n: j = I . _ .pi.
. For a given
address this problem, they develop a polynomial graphical
algorithm for a 2-job problem. More realistic studies have assignment p starting time a, is defmed by the date of starting
investigated heuristic procedures [9,10]. The heuristics based 0, so that the completion time C of all operations 0, is
on local search techniques are classified mainly according to minimized. An assignment and a sequence are optimal if they
the way they solve the assignment and the sequencing mini- a given regular objective functionf(p ,C).
problem, during research. Ofbn a distinction is made

0 2002 IEEE SMC


TPlKZ

Authorized licensed use limited to: Universidade Federal dos Pampas (UNIPAMPA). Downloaded on July 22,2021 at 11:33:33 UTC from IEEE Xplore. Restrictions apply.
is still a matter of experience, taste, and a skill left to the
annealing practitioner.
Simulatrd Annealing IS a metaheunstic based on thc idea of
annealing ~n physics [ 121. This technique illluws physicists io
create configurations in matcnals. preferably with low A. Problem Representation
encrgetic values. l h c rdea that IS used IS that the matenal I S
heated up IO a very hi& temperature 7,and then coolcd In general it is not possible to represent the FJSSP by the
down slowly. While cooling, the tanperam allows thc disjunctive graph of a JSSP [I71 . because an operation can
matenal to try out configurations of the matcml, each ullh be assigned to several machines. For the FJSSP a modified . . ~ .
some cncrgetic value whilc i t is still hot, the annealing disjunctive graph model is used. For a process data of the
technique will expcrimcnt with very differing configurations
(since the material I S hot, i t s cumponenu can move around
FJSSP,the graph is defmed by G=(v,UD) Vis the set .
ofnodes, representing all operations ofjobs plus the dummy
easily and try out configurations), but when i t gets colder. the
start and finish operations 0 and *, pie = ppi = 0 and
configurations will try to scnle in those configurations that
havc a low energutic value. and this configuntion ulll not Mjo = M.. = 4 fori= 1,,,.,n. and all k E M.C is the set of
change that much sin=. the IOW temperature kecps the conjunctive ares between every two consecutive operations
molecules frum moving around. on a routing, between 0 and every fmt operation on a
routing, and between every last o p a t i o n on a routing and *.
This technique can also be used IO solve combinatonal D i s the set of disjunctive arcs (non oriented). Such arcs exist
oplirmzation pmblcmr. espccially to avoid local minima that between pairs of operations that can be assigned to the same
causc problems when uslng simpler local search methods. machine.
The algorithm starts out with an ininal solution, and
neighbors of that solunon are randomly visited. At each As in the case of the disjunctive graph of the JSSP, the
itcratton of the algorithm neighbors which amclioratc the assignment of operations on a machine is achieved by fixing
current solurion are alway; accepted Those which arc worse directions of ares forming cliques ofseverance. A set of fixed
than the current sol~tion arc accepted with a ccnain disjunctive ares is called selection
probability p (PClJ. At the begmning ofthc algoithm, most
of the solutions (though "not g o o d ) arc accepted. As the Let's note that a selection i s always based on a panial feasible
algorithm progresses. the coolmg process takes place and thc assignment ofoperations on machines. A composed graph of
probability of accepting non-improwng solutions is such a selection and such an assignment contains :
dccrwcd.

This technique g i v e a simple local search algorithm the


. A set of the disjunctive arcs oriented between
operations assigned to the same machine, afler
possibility (with a minonty of changcz IO the algorithm) to
eseapc hum local optima, and thus a chance to find bcner
solutions than those that would be found wiih local search.
. precedence relations are established between those;
A set of the non oriented disjunctive ares between
operations assigned to the same machine, if
precedence relations are not yet established
Simulated annealing his produced good results for large between those ;
combinatorial problems, in parlicular in scheduling prublcms.
SA has bccn applied to single-machme, flow-shop and job A selection based on feasible assignment of operations on
shop problems a. well to some practical scheduling machines is called complete selection if between each pair of
problem. Pons and Van Wassenhovc [I61 compared SA operations assigned to the same machine, there exists a
with other hcunstrcs for solvlng single-machine weighted conjunctive are and the resulting disjunctive graph is acyclic.
tardiness problems. They found that SA produced bcncr In this disjunctive graph a finite sequence of conjunctive
solutions than thc dcscent mcthods Osman and Pons [IS] arcs between fwo operations is called (2 path. A cycle i s a
formulated the flow-shop scheduling problem as a simulated path which starts from and ends at the same operation. The
anncaling problem. They considered four SA heuririics, each length o f a path is equal to the sum afthe lengths ofthe arcs
with a different neighborhood strucfurc. Among the on the paths. A longest path between two operations is a path
neighborhood smctures used are the shifl neighborhood and with the maximum length. Let L(ij) be the longest path
a random rmnsition mechanism which was proved lo be the between hua operations 0, and Ojv(=0 if there is no path).
best. Van Laarhoven et. al. [I91 used SA fur finding the r. = L(0.u) denotes the release date (head) of operation 0,
minimum m&cspan in JSSP. They found that SA i s not d. = L(u, *)+pjur its delivery time (tail) and U~its starling
efftxttve and efficicnt as some other hcunsncs they used.
time in a schedule ( O i u > E ) . Two operations 0,and 0,are
said path-adjacent ifL(u.v)=pa i.e., rv=nr+pik andd.=dv+
In pramw, to apply simulated annealing. threc basic
p* Note that every pair of consecutive operations on a
ingredients are needcd: a concise problem representation, a
longest path are path-adjacent.
neighborhood function, and a cooling schedule. As for the
choice of the cooling schcdulc, thmc exist some general
A longest path between the start and finish operations is
guidelines. Howcvcr. no gcncral NICSare known that guide
the choice ofthc other ingrcdicnts. The m y they arc handlcd
called a critical path. Its length
(r.=L(0;)=max (r.+pi.x+d.) ) is equal to the
ro

Authorized licensed use limited to: Universidade Federal dos Pampas (UNIPAMPA). Downloaded on July 22,2021 at 11:33:33 UTC from IEEE Xplore. Restrictions apply.
minimum mount of time required to complete all jobs, i.e., timction consists in a lot of local minimas or maxima, it will
makespan. be difficult for standard SA to locate the global minimum
for a problem of minimizntion. The initial temperature values
are set to be large for the search to accept a large number of
B. Neighborhood Function solutions. These values are generally adjusted experimentally.
Moreover, in our algorithm, the temperam is adjusted by a
procedure after each I iterations. Every this is done according
The representationof solution may be the full sequence of all
jobs or a p h a l sequence which is proved sufficient to to the performance of the search of the last temperam. It is
worth noting that the measure of the search performance used
represent the full sequence. The choice of neighbourhood,
search manner and the initial solution is a specific problem here is the number of iterations tliat doesn't improve the
function objective.
Common rypes of neighbourhood used to generate new
solutions are the shift (S), interchange (I) and adjacent
pairwise as in Osman and PORS[IS]. The S neighbourhood In the calculation of the variation of the cost we use the
approximate value of the longest path passing by the
shifts a chosen job in the current sequence either before or
operation that permits to get the new solution. Knowing that
after another chosen job. The I neighbourhood will simply
interchange the two chosen jobs to obtain the neighbour. this value is a lower bound in this solution, it will prevent us
Adjacent paimise neighbourhood interchanges a pair of from calculating at every iteration its longest path and
adjacent jobs. Their advantage is the easy computability. permits us thus to win a considerabletime.
More sophisticated neighbourhoods, tailored to the specific
problem, may be defined at the expense of more In the goal to explore a maximum number of
computational time. neighbourhoods, we chose a diagram of cooling of the
temperam step by step (i.e. ; T b l = a T k ). The length of a
For our problem, we choose a neighbourhood function step is a hade-off between the running time and the solution
developed by S. Dame-Perks et al. [Sland improved by quality. when T reaches a value lower than 1, we multiply
Maslrolilli [I41 .This neighbourhood function is very the cost variation by R in order to attenuate penalty toward
efficient and very easy to compute. It is based on small solutions already found and which do not improve the
displacements.Their main contribution is the reduction of the objective function. The value ofR is determined by:
set of neighbours of a solution while proving that the
resulting subset contains the best neighbours (small values of
Makespan). An efficient approach to calculate every possible
neighbour subset is developed.
R=RS(vY' (l+nb-iter)lN

Where m(u,k)is the number of times that operation U


A neighbour of a solution S is obtained while displacing an
operation. Firsf an operation 0,"is chosen and is suppressed has been assigned to the machine k. N is the number of all
of its current machine sequence. Secondly, this operation is operations. Nl-iter is the current iteration. R 1 is the
assigned to a candidate machine (possible), this one can be a average of the assignment of U to k. R is multiplied by the
previously assigned machine. Finally, it is inserted in the variation of cost in the decision to adopt the new solution or
sequence of the chosen machine so that the solution obtained not, while penalizing couples which were visited several
is feasible. An insertion is said a p t i d if it yields a smaller times.
value of ,c, . One reduces the possible set of neighbour to Since in standard SA the regulating of parameten is vely
delicate, it would be then wise to foresee two supplementary
a subset that always contains an optimal solution. In stop criteria. The first limits the number of iterations to a
particular for an operation 0," and a machine chosen k, an doorstep (Mar-iter), and the second limits the number of
efficient method is proposed to calculate a restricted subset of iterations without improvement to another doorstep (Ab-
solutions, that contain still the optimal solution. For more m).h'b-mar must be big enough because SA method can
details see Dawre-P&&sand Paulli [8] and Mastmlilli [I41 take out a horizonml tray by m f o m t i o n s to hopeless cost

C Cooling Schedule
IV. IMPLEMENTAIION
The temperature Tsan he chosen to be equal to b' for some
b between 0 and 1. Another approach is to set Tt+l=aTk, To
A. inirial solution
=# ,. where a is a positive constant smaller than but close
to 1. Typical values lie between 0.8 and 0.99 . 4- is the
maximal difference in cost between any two neighboring In general, the initial solution is chosen from a good
solutions (Generally estimated). sequencing rule or heuristic with low complexity. The choice
of the initial solution will effect the m e of neighbourhood
An approach to allow the algorithm SA to conlrol the used if improvement is to be made effectively
acceptance of the criteria of new solution in different search For us, the initial solution is given by a heuristic specific to
environments is to adapt its temperahre T and the new the problem this one is constructed progressively while using
solution acceptance. For problems where the objective the disjunctive graph associated to the solution. This method
uses the SPT (Shortest Processing Time) d e , operations are

Authorized licensed use limited to: Universidade Federal dos Pampas (UNIPAMPA). Downloaded on July 22,2021 at 11:33:33 UTC from IEEE Xplore. Restrictions apply.
placed according to their starting dates and while taking into known lower bound value (LB): 100. (UB - Opf)/opf, or
account the potential load of machines with the progression 100. (UB - LB)/LB .
of the construction of the solution. This heuristic builds the
schedule step by step from t = 0. At every stage, one first In table I , we reported the results obtained by Brandimarte.
determines the machine to charge, this machine is obviously Results obtained on the first and the second test samples by
loaded in the current state of the system. An operation is said our procedure arc shown in table 2 and table 4 respectively.
available if all its predecessors have already been assigned. The results obtained by Daw&-Per& and Paulli are shown
Among the set of available operations, we choose the one in table 3 .
with minimal starting time. In the case where several
operations have the same starting time, one applies the SPT
rule.

B. Computational results

The procedure was implemented in C++ on a Personal


Computer with a Pentium 650 MHz processor. In order to
reduce the running time Mar_itpr parameter (the maximum
number of iterations) has been set to 4*105and the M - m a
( the number of iterations without improvement) has been set
to 0.5*105.The temperabxe T,has been initialised to (CO-
W.
We wnducted two different sets of computational
experiments. Table 1 Results obtained by Brandimarte

The fimt set of data is taken from Brandimarte 151. The data
were randomly generated using a uniform distribution (Problem (LE 1 c,, IC, (CPU (RE% 1
between given limits. They consist of ten problems h e r e the
number ofjobs ranges from 10 to 20, the number of machines
ranges from 6 to 15, operations for each job range from 5 to
15 and maximum number of equivalent machines per
operation ranges from 3 to 6.

The second test sample is taken from Dauzdre-P6r& and


Paulli [SI. The data consist of I8 test problems where the
number ofjobs ranges from 10 to 20, the number of machines
ranges from 5 to 10, operations for each job range from 5 to
25. The set of machines capable of performing an operation
was constructed by letting a machine be in that set with a
probability that ranges from 0.1 to 0.5. Table 2. Results obtained by our procedure with set
of data from Bandimart
The effectiveness of the proposed procedure was analysed in
terms of best solution found and computational time by the
procedure compared to the results obtained by the authors. A comparison of the amount of CPU for these m s is
In the following, LB denotes a lower bound on the solution, not possible since Brandimme does not report computing
CO denote the statting solution for our procedure, C@ times. Concerning the C ., our procedure yields better
denotes the stnning solution for solution obtained by results than those obtained by Btandimarte
DauZere-PCr.5s and Paulli [SI and C a denotes the starting The computational times is not large (max. 56.3
solution for solution obtained by Brandimarte [51. C , seconds).
denotes the final solution found using the procedure, CPU is The results seem to suppa the hypothesis that
the required computing time in seconds on a spccific test simultaneous approaches, like ours, perform bener than
problem. U&, denotes the best solution obtained by Dauzke- hierarchical ones.
Peres and Paulli and U& denotes the best solution obtained
by B r a n d m e . When an optimal solution is known, UB
obviously equals the lower bound (in which case the lower
bound is marked with an asterisk).

The relative e m r RE% was calculated for each instance of


problem, as a percentage by h i c h the solution obtained is
above the optimal value (Opt) if it is !mown or the best

Authorized licensed use limited to: Universidade Federal dos Pampas (UNIPAMPA). Downloaded on July 22,2021 at 11:33:33 UTC from IEEE Xplore. Restrictions apply.
tabu search method [E]. Our procedure gives good results in a
reasonable ~ m p u t a t i o ~time,
l In most of the cases, OUT
procedure gives values around the upper bound within a very
short time. For the 28 problems, that we tested, in 13
problems, we improved the upper bound. For the 15 other
problem, we found results that are not far from the upper
bound but with one better computational time.
We have, throughout the developmen< med to adjust
parameters. We developed approaches of solution penalty
that may repeat several times in the optimum search. We
could avoid the local minimas while assuring a good solution
with one good computational time.

VI. REFERENCES

[I] R. Akclla, Y.Choong, 1984,Performance afa hierarchical


production scheduling policy, IEEE Trans.Compncnts,
Hybrids and Manufacturing Tefhnalogy,225-248.
[Z] I. Adams, E. Balas and D. Zauaek, 1988. Thc shifting
bottleneck procedm forjob shop scheduling, Management
Science 34,391401.
[3] Barnes, J. W., Chambers, J. B. , 1996 : Flexible Job Shop
Table 3. Results obtained by Dauzke-P&ts and Paulli Schedulingby Tabu Search,Graduate Program in @mations
Research and Industrial Engineering,ThcUniversity ofTexas
at Austin, Technical Repon Series, ORP96-09.
[4] B. Bona,P.Brandime, 1990,Hybrid h i e m h i d
xheduling and control systems in manufacruring, IEEE Trans.
Roboticsand Automation, 673-686.
[SI B r a n d i m , P., 1993:Routing and scheduling in a flexible
job shop by tabu search, Annals ofOperauons Research 22,pp
158-183.
161 Brucker. P., Neyer, J., 1998: Tabu-searchfor the multi-
modejobshop problem, ORSpekrmm 20.21-28.
[7] Brucker, P., SehlieR., 1990 Job-shopscheduling With
multi-pwposc machines, Computing45,369-375.
[8] Dauzcn-Pere~S.,Paulli. I., 1997 An integrated approach
for modeling and solving the general multiprocessorjob-shop
schedulingproblem using tabu search, Annab of Operations
Research 70,281-306.
[9] Fisher H., andThompson G.L.., 1963 :Probabilistic
learning combinationsof lmal jobshap sehedulmg rules. In
Indurrrial Scheduling,J.F. Muth and G.L. Thompson (Cds.),
Pmtice-Hall, Englewwd CliffsNJ. 225-251.
[IO] Gaey M.R, and D.S. Johnson. 1979.CampuvrS and
Intractability:A Guide ofthe theory of NPCompletems.
Freeman, San Francisco,CO, WSA
[I I] Huriok E.,Jurisch B.. Thole. M., 1994:Tabu s-h for the
job shop scheduling problem with multi-pqie machine,
Opemtions Research Spcktrum 15,205-215..
[I21 KirkpatrickS.,GelaltC.D.,VecchiM.P.
1982,
Table 4. Results obtained by our procedure using set of data optimizationby simulatedm a l i n g . Res. Rep R.C. 9335,IBM
froom Dauz6re-Wds and Paulli. Thomas J. Watson, CenterYorktom Heights, NY.
1131 Nasr, N., and E.A. Elsaycd. 1990.Job shop scheduling
with altcmative machines. Intenationaljowaal of Production
Results obtained by our procedure are not very far fromthose res-h, 28/9,1595-1609.
[I41 MaStmlilliM.,Oambardella L.M. 2000 : Effective
obtained by Dawkre-Pkes and Paulli, but the computational neighborhood iimctiam for the flexiblejoh shop pmhlm.
times are better than those obtained by results of Dauzke- IstiNU, Dalle Molle di SNdi sull'htelligenza Artificiale.
P e d s and Paulli. The results seem to support the hypothesis [IS] Osman, LH.and Pons, C.N. (1989)Simulated annealing
that Tabu search method gives better results that the forpmutation tlow-shop scheduling.Omego 17,551-557.
simulated annealing method in this kind ofproblem [la] Potts, C.N. and Van Wasseohove, L.N. (1991) Single
machine tardiness sequencingheuristics. IIETrans.23,346
V. CONCLUSION 354.
1171 Roy, B.. and B. Sussman. 1964.Lcs problhmes
d'ordomcement avec contraintes disjonetives.Note DS No 9
The simulated annealing method, is implanted while using a bis. SEMA,Montmugc.
neighbourhood function that showed its efficiency for the

Authorized licensed use limited to: Universidade Federal dos Pampas (UNIPAMPA). Downloaded on July 22,2021 at 11:33:33 UTC from IEEE Xplore. Restrictions apply.
1181 Vaessms R.J.M.,1995: Oenrralired Job Shop Scheduling:
Complexity and b c a l Search, Ph.D. thesis, Eindhovcn
Univasity of Technology.
!I91 Van Laarhoven P J M , Aans E.H.L., Lenstra J.K, 1992 :job
shop scheduling by simulated annealing. operation research
40. 113-125.

Authorized licensed use limited to: Universidade Federal dos Pampas (UNIPAMPA). Downloaded on July 22,2021 at 11:33:33 UTC from IEEE Xplore. Restrictions apply.

You might also like