Liu 2011

You might also like

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

Journal of the Operational Research Society (2012) 63, 168–182 © 2012 Operational Research Society Ltd.

Society Ltd. All rights reserved. 0160-5682/12


www.palgrave-journals.com/jors/

A hybrid shifting bottleneck procedure


algorithm for the parallel-machine job-shop
scheduling problem
SQ Liu and E Kozan
Queensland University of Technology, Brisbane, Australia
In practice, parallel-machine job-shop scheduling (PMJSS) is very useful in the development of standard
modelling approaches and generic solution techniques for many real-world scheduling problems. In this
paper, based on the analysis of structural properties in an extended disjunctive graph model, a hybrid
shifting bottleneck procedure (HSBP) algorithm combined with Tabu Search (TS) metaheuristic
algorithm is developed to deal with the PMJSS problem. The original-version shifting bottleneck
procedure (SBP) algorithm for the job-shop scheduling (JSS) has been significantly improved to solve the
PMJSS problem with four novelties: (i) a topological-sequence algorithm is proposed to decompose
the PMJSS problem in a set of single-machine scheduling (SMS) and/or parallel-machine scheduling
subproblems; (ii) a modified Carlier algorithm based on the proposed lemmas and the proofs is developed
to solve the SMS subproblem; (iii) the Jackson rule is extended to solve the PMS subproblem; (iv) a TS
metaheuristic algorithm is embedded under the framework of SBP to optimise the JSS and PMJSS cases.
The computational experiments show that the proposed HSBP is very efficient in solving the JSS and
PMJSS problems.
Journal of the Operational Research Society (2012) 63, 168–182. doi:10.1057/jors.2011.4
Published online 14 September 2011

Keywords: scheduling; heuristics; parallel-machine; job-shop; shifting bottleneck procedure; metaheuristics

1. Introduction operation. Chen and Luh (2003) developed a new


Lagrangian relaxation approach for the parallel-machine
In the literature, the Parallel-Machine Job-Shop Scheduling
job shop scheduling problem. In the approach, operation
(PMJSS) problem has been studied under different names
precedence constraints rather than machine capacity
such as the generalised, flexible or complex job shop
constraints are relaxed. The relaxed problem is decom-
scheduling problem. Some existing contributions to PMJSS
posed into single or parallel machine scheduling sub-
or flexible (complex) job shop scheduling problem are
problems. The dual subproblems are solved by using a
given in the following.
so-called surrogate subgradient method that allows
Sadeh et al (1995) studied a version of the job shop
approximate optimisation of the subproblems. Alvarez-
scheduling problem in which some operations have to be
Valdes et al (2005) described the design and implementa-
scheduled within time windows (ie earliest/latest possible
tion of a scheduling system in a glass factory. The structure
start time windows). They developed a new look-back
basically corresponds to a flexible JSS problem with
schemes that help the search procedure recover from
some special characteristics. This system can produce
so-called dead-end search states. Dauzère-Pérès and Paulli
approximate solutions in very short computing times. Xia
(1997) considered an important extension of the classical
and Wu (2005) proposed a particle swarm optimisation
job-shop scheduling (JSS) problem, in which the same
algorithm for the multi-objective flexible JSS problem, by
operation can be performed on more than one machine.
combining local search (by self experience) and global
They presented an integrated tabu search (TS) algorithm
search (by neighbouring experience). Fattahi et al (2007)
by defining a neighbourhood structure where there is
developed a mathematical model and heuristic approaches
no distinction between re-assigning or re-sequencing an
for flexible job shop scheduling problems. Mathematical
 model is used to achieve optimal solution for small size
Correspondence: E Kozan, School of Mathematical Sciences, Queensland
University of Technology, 2 George St GPO Box 2434, Brisbane, Queensland
problems. Two heuristics approaches are developed to
4001 Australia. solve the real size problems. Gao et al (2008) addressed the
E-mail: e.kozan@qut.edu.au flexible job shop scheduling problem with three objectives:
SQ Liu and E Kozan—HSBP algorithm for PMJSS 169

min makespan, min maximal machine workload and min solution procedure level and the machine criticality
total workload. They developed a hybrid genetic algorithm measure level. Mönch and Drießel (2005) also considered
(GA) for the problem. This GA algorithm uses two vectors a modified SBP for complex job shops for semiconductor
to represent solutions. Advanced crossover and mutation wafer facilities, which contain parallel batching machines,
operators are used to adapt to the special chromosome machines with sequence-dependent setup times and
structure and the characteristics of the problem. An re-entrant process flows. They proposed a two-layer
extensive computational study on 181 benchmark pro- hierarchical approach in order to decompose the overall
blems shows the performance of their GA approach. scheduling problem. The upper layer works on an
Some previous research on the shifting bottleneck aggregated model that determines start dates and due
procedure (SBP) algorithm is also summarised as follows. dates for the jobs within each single work area, which
In the literature, Adams et al (1988) initially proposed is defined as a set of parallel machine groups. The lower
the SBP algorithm for solving the JSS problem. Because layer uses the start dates and planned due dates in order
SBP has a very good balance between computational to apply shifting bottleneck heuristic type solution
complexity and the quality of generated schedules, it approaches for the jobs in each single work area. They
receives considerable interest from other researchers since conducted simulation experiments in a dynamic job shop
its introduction. For example, Ramudhin and Marier environment to assess the performance of the heuristic.
(1996) generalised the SBP algorithm to solve various types Furthermore, Mönch et al (2007) extended the previous
of scheduling problems including open-shop, assembly research in which only dispatching-based subproblem
shops and shops where only a partial ordering on solution procedures were implemented. Thus, in the
operations pertaining to each job or machine is specified. extended research, they applied more sophisticated near-
Ivens and Lambrecht (1996) examined several extensions to-optimal subproblem solution procedures (ie genetic
of the SBP algorithm towards real-life JSS applications algorithms) to solve the parallel-machine scheduling
by considering some factors such as assembly structure, (PMS) subproblems. Based on simulation experiments,
overlapping operation, setup times and transportation it is indicated that using genetic algorithms leads to
times. Balas and Vazacopoulos (1998) developed a hybrid improved results in comparison with dispatching-based
procedure that embeds a guided local search into an SBP subproblem solution procedures.
framework to solve the JSS problem. Cheng et al (2001) To the best of our knowledge, however, very few
developed an SBP approach for the parallel-machine researchers addressed the application of the SBP algorithm
flow-shop scheduling problem. After decomposition, the combined with metaheuristics to solve the PMJSS
parallel-machine subproblem is, approximately, solved problem. In this paper, with exploiting the structural
by a constructive heuristic algorithm based on a property properties of the PMJSS problem based on an extended
of reversibility. Huang and Yin (2004) proposed an DG, we proposed a state-of-the-art hybrid SBP algorithm
improved SBP algorithm for the JSS problem based on with several innovative aspects to solve the PMJSS
proving a theorem of SBP to guarantee solution feasibility. problem efficiently.
In addition, a refined version SBP that combines this This paper is organised as follows. In Section 2, the
improved SBP with the strategy of back tracking was mathematical programming formulation is given for
developed. Mason et al (2002) developed a modified SBP describing the properties of PMJSS. In Section 3, we
algorithm for minimising the total weighted tardiness in a proposed an extended DG model to thoroughly analyse
semiconductor wafer fabrication facility. This complex the structural properties of the PMJSS problem. In
job shop is characterized by re-entrant or re-circulating Section 4, the framework of the proposed hybrid SBP
product flow through a number of different tool groups algorithm is described. In Section 5, a topological-sequence
(one or more machines operating in parallel), which algorithm is proposed for decomposing the PMJSS
typically contain batching machines, as well as machines problem into a set of single-machine scheduling (SMS)
that are subject to sequence-dependent setups. The and/or PMS subproblems with different release times and
disjunctive graph (DG) of the complex job shop is delivery times. After decomposing, the SMS and PMS
presented along with a description of the proposed subproblems are mathematically formulated and analysed
heuristic. Their results indicate the heuristic’s potential in Section 6. In Section 7, based on the proposed five
for promoting on-time deliveries by semiconductor lemmas, a modified Carlier algorithm is proposed for
manufacturers for their customers’ orders. Pfund et al quickly solving the SMS subproblem. In Section 8, we
(2008) also modelled a semiconductor wafer fabrication extended Jackson’s rule to deal with the PMS subproblem.
process as a complex job shop and adapted a modified In Section 9, the design of the embedded TS metaheuristic
SBP algorithm to facilitate the multi-criteria optimisation algorithm under the SBP framework is briefly addressed.
of makespan, cycle time and total weighted tardiness We report the computational results in Section 10. Section
using a desirability function. The desirability function is 11 concludes this paper. The proofs for the proposed
implemented at two different levels: the subproblem lemmas are given in the appendixes.
170 Journal of the Operational Research Society Vol. 63, No. 2

2. Mathematical programming formulation for PMJSS necessarily immediately).


Notations yijlk þ yjilk p1; 8i; j; l; k: ð5Þ

n number of jobs Equation (5) restricts that conditions that job j precedes job
m number of machines i or job i precedes job j at the lth unit of machine k are
Ji job i (i ¼ 1, 2, . . . , n) exclusive.
Mk machine k(k ¼ 1, 2, . . . , m) hk X
X m
hk number of units of machine k; default is single xilk ¼ 1 and
machine hk ¼ 1 l¼1 k¼1
ul the lth unit of machine k(l ¼ 1, . . . , hk) xilk þ xjlk  1pyijlk þ yjilk ; 8i; j; l; k: ð6Þ
o index of sequence position of operation in one job
(o ¼ 1, 2, . . . , m) Equation (6) restricts that each machine unit can process at
eilk starting time of job i on the lth unit of machine k most one job at a time.
pilk processing time of job i on the lth unit of machine k hk X
X m
riolk ¼ 1, if the oth operation of job i requires the lth rimlk ðeilk þ pilk ÞpCmax ; 8i: ð7Þ
unit of machine k; l¼1 k¼1
¼ 0, otherwise Equation (7) restricts that the completion time of the mth
xilk ¼ 1, if job i is assigned to the lth unit of machine k; (ie last) operation of each job is no earlier than the
¼ 0, otherwise makespan.
yijlk ¼ 1, if both jobs i and j are assigned to the lth
unit of machine k and job i precedes job j (not xilk ; riolk ; yijlk ¼ 0 or 1; 8i; j; l; k:
necessarily immediately); and
¼ 0, otherwise
eilk ; pilk X0; 8i; l; k: ð8Þ
Cmax maximum completion time or makespan
L a very large positive number Equation (8) satisfies non-negativity and binary-variable
conditions.
With analysing the characteristics of PMJSS, the mathe-
matical programming formulation for PMJSS is proposed
as follows: 3. An extended disjunctive graph
For illustrating the extended DG model that is proposed
2.1. PMJSS mathematical model for analysing the PMJSS problem, a numerical example
is modelled by an extended activity-on-the-node DG ¼
The objective function is to minimise the makespan.
(O, C, E) shown in Figure 1. The description for this
Minimise Cmax ð1Þ extended DG model is given as follows.
Assuming that there are n jobs and m same-type
Subject to machines in DG, P we number the nodes from one to N,
where N ¼ n  m k ¼ 1hk denotes the total number of actual
X
hk X
m hk X
X m
and void operations in DG and hk is the number of units
riolk ðeilk þ pilk Þp ri; oþ1; l; k eilk ;
l¼1 k¼1 l¼1 k¼1
for machine k. If one job is not processed on a machine,
the corresponding operation is defined as ‘void ’. If one
o ¼ 1; 2; . . . ; m  1; 8i: ð2Þ
operation is void, its processing time is defined as zero.
Equation (2) restricts the starting time of (o þ 1)th An arc (i, j ) connects two actual nodes i and j, implying
operation of job i to be no earlier than its finish time of that operation i has to be processed immediately before
the oth operation of job i. operation j. Each arc has the length of pi corresponding
to the processing time of operation i. In DG ¼ (O, C, E), O
eilk Xejlk þ pjlk þ Lðyijlk  1Þ; 8i; j; l; k: ð3Þ is the set of nodes; C is the set of conjunctive arcs
representing the fixed precedence relation between each
Equation (3) restricts that both jobs i and j are processed pair of operations belonging to the same job and the
on the lth unit of machine k and job i precedes job j (not directed arcs for connecting the virtual start (end) node
necessarily immediately). with the first (last) operation of each job; E is the set of
ejlk Xeilk þ pilk þ Lðyjilk  1Þ; 8i; j; l; k: ð4Þ disjunctive arcs, each of which representing undetermined
precedence relation between two operations processed
Equation (4) restricts that both jobs i and j are processed on the same machine. For example, in Figure 1 for job 1
on the lth unit of machine k and job j precedes job i (not (J1) that has a prescribed machine sequence from machine
SQ Liu and E Kozan—HSBP algorithm for PMJSS 171

Figure 1 An extended DG model proposed for PMJSS, in which only conjunctive arcs are shown in this graph for clarity.

MA to machine MH, the set of conjunctive arcs for J1 Two virtual nodes (nodes F and L) that represent the
can be listed as: start and the end of a schedule, needed to added into
Figure 1, respectively. The directed arcs for connecting
the virtual start (end) node with the first (last) operation
OA1 ! OB1 ! OC1 ! OD1 ! OE1 ! OF1 ! OG1 ! OH1 :
of each job also need to be added in DG. On the other
hand, E denoted the set of pairs of disjunctive arcs, which
For the sake of figure’s clarity, only the conjunctive arcs represent undirected precedence relationships between each
are drawn in Figure 1. To complete the graph model, for pair of two operations processed on the same machine,
the above PMJSS instance, the rest of the arcs that need to should also be added into Figure 1.
be added in DG are separately explained and analysed in For each machine in Figure 1, the nodes encircled by a
the following paragraphs. rectangle represent the operations that are processed on the
172 Journal of the Operational Research Society Vol. 63, No. 2

Table 1 The disjunctive arcs on a single-unit machine with Table 2 The disjunctive arcs on a double-unit machine with
six jobs three jobs
Nodes Disjunctive arcs on a single-unit machine Nodes Disjunctive arcs on a double-unit machine

OA1 OA1-OA3; OA1-OA4; OA1-OA6; OA1-OA7; O1J 2 O1J 2-O1J 6; O1J 2-O1J 8; O1J 2-O2J 6; O1J 2-O2J 8;
OA1-OA9;
OA3 OA3-OA1; OA3-OA4; OA3-OA6; OA3-OA7; O2J 2 O2J 2-O1J 6; O2J 2-O1J 8; O2J 2-O2J 6; O2J 2-O2J 8;
OA3-OA9;
OA4 OA4-OA1; OA4-OA3; OA4-OA6; OA4-OA7; O1J 6 O1J 6-O1J 2; O1J 6-O1J 8; O1J 6-O2J 2; O1J 6-O2J 8;
OA4-OA9;
OA6 OA6-OA1; OA6-OA3; OA6-OA4; OA6-OA7; O2J 6 O2J 6-O1J 2; O2J 6-O1J 8; O2J 6-O2J 2; O2J 6-O2J 8;
OA6-OA9;
OA7 OA7-OA1; OA7-OA3; OA7-OA4; OA7-OA6; O1J 8 O1J 8-O1J 2; O1J 8-O1J 6; O1J 8-O2J 2; O1J 8-O2J 6;
OA7-OA9;
OA9 OA9-OA1; OA9-OA3; OA9-OA4; OA9-OA6; O2J 8 O2J 8-O1J 2; O2J 8-O1J 6; O2J 8-O2J 2; O2J 8-O2J 6;
OA9-OA7;

same-type machine. For example, on Machine MA, the constraints. The length of a longest path from the virtual
encircled actual nodes consist of OA1, OA3, OA4, OA6, OA7, start node to the virtual end node in DDG is equivalent to
OA9. Note that the set of disjunctive arcs connecting the makespan of the schedule.
these encircled nodes are omitted in Figure 1 due to its
complexity. The number of disjunctive arcs on a single-unit
machine is equal to nK0 (nK0 1), where nK0 is the number
4. An HSBP algorithm
of jobs processed on a singe-unit machine MK. For
example, the subset of disjunctive arcs (EA) on machine Based on the above analysis, in this extended DG model,
MA are enumerated in Table 1. In this case, the number a hybrid shifting bottleneck procedure (HSBP) algorithm
of total disjunctive arcs in subset EA is 6 (61) ¼ 30. is developed to solve the PMJSS problem.
The characteristics of disjunctive arcs on a multiple-unit First, it is essential
S 0 to build
S up a partial disjunctive graph
machine (ie when hk41) are much more complicated. PDG ¼ (O, C, Ek|kAM0, Ev|vAMM0). In PDG, M0
According to our analysis, the number of disjunctive arcs is
S the subset of machines that have been sequenced;
on a multiple-unit machine is equal to nK0 (nK0 1)h2k. For Ek0 |kAM0 is such a subset Sof directed disjunctive arcs
simplicity, we consider a double-unit (hk ¼ 2) machine MJ on sequenced machines; and Ev|vAMM0 is the subset
on which only three jobs (nK0 ¼ 3) are processed. The total of disjunctive arcs on unsequenced machines.
disjunctive arcs of subset EJ on a double-unit machine With a given PDG, the PMJSS problem can be
2MJ are listed in Table 2, where O1J6 and O2J6 are the decomposed as a set of SMS and/or PMS subproblems
same-type operation of job J6 but processed on two with different release times and delivery times. After
different units of machine 2MJ. Operations O1J6 and decomposing, the number of the generated SMS and
O2J6 are highlighted by superscripts 1 and 2 for indicating PMS subproblems is, respectively, equal to the number of
Unit 1 and Unit 2 of the double-unit machine 2MJ. In unsequenced single-unit machine and unsequenced multi-
this case, the number of total disjunctive arcs in subset ple-unit machines in the PDG.
EJ equals 3 (31) 22 ¼ 24. In this study, the original-version SBP algorithm for the
With the above analysis, the set of disjunctive arcs (E) classical JSS problem has been greatly improved to
can be partitioned into m subsets E1, E2, . . . , Em, where efficiently solve the PMJSS problem in four novelties:
m is the number of same-type machines and Ek(8k ¼
1, 2, . . . , m) denotes the subset of disjunctive arcs K the topological-sequence algorithm (See Section 5) is
connecting the encircled actual nodes on a machine. proposed to solve the partial directed disjunctive graph
Actually, determining a PMJSS schedule corresponds with (PDDG) of the PMJSS problem and to decompose the
selecting one direction for each pair of disjunctive arcs and PMJSS problem into a set of SMS and/or PMS
discarding theS redundant arcs in E. subproblems with different release times and delivery
0 0
Let E ¼ Ek(8k ¼ 1, 2, . . . , m) be such a compound times (See Section 6);
set of directed disjunctive arcs, where Ek0 is the subset of K a modified Carlier algorithm (See Section 7) based on
directed disjunctive arcs on a machine. As a result, the proposed lemmas is developed for solving the SMS
0
DDG ¼ (O, C, E ) denotes the directed disjunctive graph subproblems;
(DDG) representing one schedule. A feasible schedule K an extended Jackson algorithm (See Section 8) is
requires that DDG is acyclic and satisfies all the required implemented to solve the PMS subproblems;
SQ Liu and E Kozan—HSBP algorithm for PMJSS 173

K a metaheuristic algorithm (See Section 9) is embedded 5. Topological-sequence algorithm for decomposing


under the architecture of HSBP to re-optimise the PMJSS
partial sequence and to further optimise the complete
At each HSBP iteration, S we need to build up a PDDG
sequence after obtaining the complete sequence. 0
model, PDDG ¼ (O, C, Ek|kAM0), that consist of the
conjunctive arcs (ie C) of operations belonging
S 0 to the same
The procedure of the proposed HSBP algorithm for the
job and the directed disjunctive arcs (ie Ek) of operations
PMJSS problem is described as follows.
processed on sequenced machines (8kAM0).
Implemented for decomposing the PMJSS problem, the
topological-sequence algorithm was initially proposed by
4.1. A hybrid shifting bottleneck procedure algorithm
Liu and Ong (2004) to efficiently compute the values of
heads ei (starting times or the longest distance from the
Step 1: Set M0 ¼ f. The initial PDDG contains all virtual start node to this node), and tails li (the longest
the conjunctive arcs and no disjunctive arcs, distance from this node to the virtual end node) for each
that is PDDG ¼ (O, C). node i(8iAO) in a DDG model. The procedure of this
Step 2: Do the following for each unsequenced algorithm is briefly presented in the following.
machine vAMM0:
Step 2.1: According to the given PDDG, implement
the topological-sequence algorithm (See 5.1. Topological-sequence algorithm
Section 5 for detail) to decompose the
PMJSS problem into a set of SMS and/or Step 1: Compute the in-count value (the number of
PMS subproblems. predecessors) of each node.
Step 2.2: Solve the SMS subproblems by the modified Step 2: Find a topological sequence as follows:
Carlier algorithm (See Section 7 for detail). Step 2.1: Select the virtual start node as the first node
Step 2.3: Solve the PMS subproblems by the extended on the topological order list.
Jackson algorithm (See Section 8 for detail). Step 2.2: Decrement the in-count value for each of
Step 3: Bottleneck selection and sequencing: the immediate successor nodes of the
Step 3.1: Choose machine k as bottleneck machine by selected node by 1.
Lmax ðkÞ ¼ max ðLmax ðiÞÞ. Step 2.3: Select any of the unselected nodes having a
i2MM0
Step 3.2: Set the job-sequence on machine k accord- zero in-count value and put this node as the
ing to the results obtained in Step 2.2 or 2.3. next node on the topological order list.
S Step 2.4: Repeat Steps 2.2 and 2.3 until all nodes are
Step 3.3: Update M0 ¼ M0 {k}.
0
Step 3.4: Update the PDDG selected.
S 0 by adding Ek, that is Step 3: Start from initialising the starting time of
PDDG ¼ (O, C, Ek|kAM0).
Step 3.5: If M0M, go to Step 5. the virtual start node and calculate the
Step 4: Re-sequence and re-optimise the current starting times of all nodes in the topological
PDDG by the metaheuristic algorithm (see sequence by
 
Section 9 for detail); then go to Step 2. ei ¼ max ePM½i þ pPM½i ; ePJ½i þ pPJ½i
Step 5: Optimise the complete DDG:S
0 ð9Þ
Step 5.1: Optimise the DDG ¼ (O, C, Ek|kAM) by
the metaheuristic algorithm (see Section 8 where PM[i ] is the same-machine operation
for detail). processed just before operation i, if it exists;
Step 5.2: If the solution is equal to the lower bound PJ[i ] is the same-job operation that just
or the known optimum, then stop; other- precedes operation i, if it exists.
wise, run till the stopping conditions of the Step 4: Start from initialising the delivery time of
metaheuristic algorithm are satisfied. the virtual end node and calculate the tail
times of all the nodes in the reverse order of
In a word, the HSBP algorithm schedules machines the topological sequence by
consecutively one at a time. At each HSBP iteration, two  
li ¼ max lSM½i þ pSM½i ; lSJ½i þ pSJ½i
key decisions have to be made in Step 2, namely, how to
decompose the PMJSS problem into a set of SMS and/or ð10Þ
PMS subproblems, as well as how to solve these where SM[i ] is the same-machine operation
subproblems so that the bottleneck machine and its processed just after operation i, if it exists;
corresponding job sequence can be effectively and effi- SJ[i ] is the same-job operation that imme-
ciently determined. diately follows operation i, if it exists.
174 Journal of the Operational Research Society Vol. 63, No. 2

6. SMS and PMS subproblems subject to


k
After decomposing the PMJSS problems into a set of SMS Cmax Xei þ pi þ qi ; 8i 2 Ok ð12Þ
and/or PMS subproblems, the critical issue of SBP turns
Equation (12) restricts that the completion times of the
to solve the SMS and/or PMS subproblems with the
operations (ie OkCO) processed on machine k are no
different release times and delivery times. The objective of
earlier than the makespan of the SMS subproblem.
the SMS and PMS subproblems is to minimise the
maximum lateness. ei Xej þ pj _ ej Xei þ pi ; 8i; j 2 Ok ð13Þ
The formulation of the SMS subproblem is described Equation (13) defines the precedence relationships of jobs i
as below. Given a set of jobs J ¼ {1, 2, . . . , n}, each job j and j (iaj ) processed on machine k.
(8jAJ ) has release time rj, processing time pj and delivery
time qj. ei Xri ; 8i 2 Ok ð14Þ
For a given schedule, the lateness Lj of job j is defined as Equation (14) satisfies the job-ready conditions.
Lj ¼ Cjdj, that is, the (positive or negative) time difference Similarly, one PMS subproblem decomposed from the
between the completion time Cj and the due date dj. The PMJSS problem can be mathematically modelled as below.
objective function is to minimise the maximum lateness
Lmax ¼ max Lj ¼ max ðCj  dj Þ . By our analysis, for the
j2J j2J 6.2. PMS model: PMS(k, M0)
SMS subproblem decomposed from the PMJSS problem,
minimising the maximum lateness is equivalent to mini- The objective function is to minimise the makespan of the
mising the makespan. The proof is given as follows. PMS subproblem.
As each job j in an SMS subproblem has a non-negative k
Minimise Cmax ð8k 2 M  M0 Þ ð15Þ
delivery time qj (the longest distance from node j to the
virtual last node in the PMJSS problem), the completion- subject to
delivery time is defined as fj ¼ Cj þ qj. Thus, for the SMS k
Cmax Xei þ pi þ qi ; 8i 2 Ok ð16Þ
subproblem with the different release times and delivery
times, the makespan actually equals the maximum ej Xei þ pi þ Lð yijz  1Þ; 8i; j 2 Ok ð17Þ
completion-delivery time. The equivalence between two
objectives can easily be demonstrated by subtracting a ei Xej þ pj þ Lð yjiz  1Þ; 8i; j 2 Ok ð18Þ
sufficiently large constant, that is,
yijz þ yjiz p1; 8i; j 2 Ok ð19Þ
const ¼ C^max ðC^max is the makespan of
the partial directed disjunctive xiz þ xjz  1pyijz þ yjiz ; 8i; j 2 Ok ð20Þ
graph of the PMJSS problemÞ X
xiz ¼ 1; 8i 2 Ok ð21Þ
z
dj ¼ C^max  qj ¼ const  qj

0
Lj ¼ Cj  dj ¼ Cj  ðconst  qj Þ yijz ; yjiz ; xiz ; xjz ¼ ; 8i; j 2 Ok ð22Þ
1
¼ Cj þ qj  const ¼ fj  const
ei Xri ; 8i 2 Ok ð23Þ
Lmax ¼ max Lj ¼ max ð fj  constÞ
j2J j2J where xiz ¼ 1 if operation i is assigned to the zth unit of
a parallel-machine k, otherwise xiz ¼ 0; yijz ¼ 1 if both
min Lmax ffi min fmax
operation i and j are assigned to the zth unit of the parallel-
Therefore, an SMS subproblem decomposed from the machine k and operation i precedes operation j, yijz ¼ 0
PMJSS problem can be mathematically formulated as otherwise; and L is a sufficiently large number. In PMS
below. Assume that the current set of sequenced machines model, Equations (16–23) particularity restricts that the
is M0 and one unsequenced machine relevant to this SMS precedence relationship between a pair of operations
subproblem is machine k (8kAMM0). processed on a unit of the parallel machine is exclusive
and each unit can process at most one job at a time.
6.1. SMS model: SMS(k, M0)
7. A modified Carlier algorithm for SMS
The objective function is to minimise the makespan (Ckmax)
of the SMS subproblem. In scheduling theory, for the basic SMS problem in which
all the release times and delivery times are set as zero, the
objective of minimising the maximum lateness can be
k
Minimise Cmax ð8k 2 M  M0 Þ ð11Þ achieved by the earliest due date dispatching rule (Kellerer,
SQ Liu and E Kozan—HSBP algorithm for PMJSS 175

2005). However, in the existence of different release times in an optimal schedule, job w will be processed either before
and delivery times, this SMS problem becomes complex. or after all the jobs of critical subset Lw ¼ {w þ 1,
In the literature, one of efficient approximation algo- . . . , c}. In case 1, interference job w will be processed
rithms for solving the SMS problem with different release before Lw, by resetting the delivery time of job w as
times and delivery times is called Schrage algorithm ( )
X
(Carlier, 1982). The procedure of the Schrage algorithm qw ¼ max qw ; pj þqc ð25Þ
is presented as follows. j2Lw

In case 2, interference job w will be processed after Lw


7.1. Schrage algorithm by resetting the release time of job w as
( )
X
rw ¼ max rw ; min rj þ pj ð26Þ
Step 1: Initialisation. Set a time point, t ¼ min ri . Set j2Lw
i2I j2Lw
U ¼ f, and U ¼ J, where U is the set
of scheduled jobs; U ¼ JU is the set of Theorem 2 If this Schrage schedule is optimal, there exists
unscheduled jobs. Lw such that h(Lw) ¼ CSchrage.
Step 2: At time point t, if rjpt and qj ¼ max qi
 select job j. i2U However, Theorem 2 proposed by Carlier (1982) may be
(8jAU),
Step 3: Set the startingS time of job j, ej ¼ t. incorrect, which can be simply proved by an enumerative
Step 4: Update U ¼ U {j}, U ¼ U{
 j}, and example given in Appendix A.
t ¼ maxðtj þ pj ; min ri Þ. Based on our thorough analysis for the Schrage
i2U schedule, five lemmas are proposed below. The proofs for
Step 5: If U is empty, stop; otherwise, go to Step 2; the proposed lemmas are given in Appendixes B, C and D.

The SMS schedule obtained by the Schrage algorithm is Lemma I For a Schrage schedule with a critical sequence
called a Schrage schedule. The properties of the Schrage L ¼ {a, a þ 1, . . . , c}, there exists Cmax ¼ LBðLÞþ
schedule are summarised below: qc  min qj .
j2L

K The sequence of jobs a, a þ 1, . . . , c forms a block in a


Schrage schedule and is called the critical sequence Lemma II If qc ¼ min qj , then Cmax ¼ LB(L).
j2L
L ¼ {a, a þ 1, . . . , c}, if Cmax ¼ ei þ pi þ qi, 8iAL.
K Job c is called the critical job because it is the last job in Lemma III If there is an interference job w, then
the critical sequence L. CmaxLB(Lw)opw.
K Job a is called the idled job, that is the first job in critical
sequence L. This is because there may be idle time
before a and there must be no idle time between the Lemma IV ForP c a Schrage schedule, there exists
processing of any pair of jobs in the critical sequence L. Cmax ¼ min ej þ pj þ min qj .
j2L j¼a j2L
K It is obvious for riZra, 8iAL.
K The job satisfying the property qwoqc and having the Lemma V Even if qc ¼ min qj , this Schrage schedule may
largest subscript in the critical sequence is called the j2L
not be optimal.
interference job w.
In terms of our proposed lemmas, a modified-version
Based on the above analysis, Carlier (1982) proposed two Carlier algorithm is developed for efficiently solving the
theorems for the Schrage schedule. SMS subproblem with different release times and delivery
times.
Theorem 1 Let CSchrage be the makespan of the Schrage
schedule. If the Schrage schedule is not optimal, there is a 7.2. A modified Carlier algorithm
interference job w and a critical subset Lw ¼ {w þ 1, . . . , c}
out of critical sequence L ¼ {a, a þ 1, . . . , c} such that, The procedure of the proposed modified Carlier algorithm
X is described as follows:
hðLw Þ ¼ min rj þ pj
j2Lw
j2Lw
Step 1: Apply Schrage algorithm to the current SMS
þ min qj 4CSchrage  pw ð24Þ instance and then save the results of the
j2Lw
obtained Schrage schedule.
Thus, the distance from the makespan of Schrage Step 2: If there exist the interference job w satisfying
schedule to the optimal makespan is less than pw. Moreover, qwoqc , the interference job w will be processed
176 Journal of the Operational Research Society Vol. 63, No. 2

after critical subset Lw by setting rw ¼ 9. Embedded metaheuristic algorithm for re-sequencing


( )
P and re-optimising
max rw ; min rj þ pj and then go to
j2Lw j2Lw The approaches of neighbourhood search guided by
Step 1. metaheuristics such as TS offer a comparatively simple
Step 3: Otherwise, among the saved results, choose the implementation but are very effective and efficient to solve
best Schrage schedule with the minimum the large-size problems with short computational time and
makespan value. good accuracy.
The design of an efficient TS algorithm is a sophisticated
The contribution of modified Carlier algorithm is to art because TS consists of several elements called the initial
present a new stopping condition; thus the computational solution, move, neighbourhood, searching strategy, memory,
efforts can be greatly reduced. aspiration function, stopping rules, etc. The move is a
function, which transforms a solution into another
solution. The subset of moves applicable to a given
8. An extended Jackson algorithm for PMS solution generates a collection of feasible solutions
In the literature, the basic parallel-machine-scheduling called the neighbourhood. At each step, the neighbourhood
(PMS) problem with minimising the maximum tardiness of the current solution is searched in order to find an
was efficiently solved by a constructive heuristic based on appropriate neighbour, typically the best in the neighbour-
Jackson’s rule (Kellerer, 2005). Here, we extend Jackson’s hood. Next, the move that leads to this neighbour is
rule to quickly solve the PMS subproblems with release performed and the resulting solution becomes the new
times and delivery times and with the objective of mini- current solution to initiate the next step. To avoid cycling
mising the makespan. The procedure of an extended or implicitly becoming trapped in a local optimum, a short-
Jackson algorithm for quickly solving the PMS subproblem term memory called a tabu list determines moves that
with release times and delivery times is described as follows. are forbidden. Attributes of moves are identified to be
recorded on this list, for a chosen span of time, as a way
to prevent future moves that would ‘undo’ the effects of
8.1. An extended Jackson algorithm previous moves. Nevertheless, a forbidden move may be
accepted if an aspiration function evaluates it as sufficiently
Step 1: Initialisation. Set the available times of all profitable. The stopping rule that ends the search
machine units as zero. Set U ¼ f and U ¼ J, traditionally consists of setting a limit on the execution
where U is the set of scheduled jobs; time, number of iterations and number of consecutive
U ¼ JU is the set of unscheduled jobs. iterations without improving the makespan.
Step 2: While Ua  f: The brief description of the TS procedure is given below.
Step 2.1: Choose the lth parallel-machine unit that
leads to the minimum available time amin; Step 1: Generate an initial solution z.
break the tie arbitrarily. Step 2: Initialise the tabu list.
Step 2.2: Initialise a subset of candidate jobs Uc ¼ f. Step 3: Perform a certain number of TS iterations
Step 2.3: For each  depending on the problem size:
S job jAU, if rjZamin, then update
Uc ¼ Uc { j}. Step 3.1: Build up the neighbourhood based on the
Step 2.4: If Ucaf, select the best candidate job by current solution z.
j  ¼ arg min ðrj Þ, and then set the starting Step 3.2: Choose the best neighbour x , which is not a
j2Uc
tabu or satisfies the aspiration criterion.
time of job j : ej ¼ rj. Step 3.3: Set z ¼ x and update the tabu list. If the
Step 2.5: If Ucf, select the best candidate job by stopping condition is met, go to Step 4.
j  ¼ arg max ðqj Þ, and then set the starting Step 4: Return the best solution found.
j2U

time of job j : eSj ¼ amin.
Step 2.6: Update U ¼ U {j } and U ¼ U{j},
 and Hence, to exploit the merits of metaheuristics, it is decided
update the available time of the lth parallel- that SBP and TS are combined as a hybrid algorithm
machine unit. for solving the large-size PMJSS problem. Under the
architecture of the hybrid algorithm, the metaheuristic
In a sense, our proposed SBP algorithm, which consists of algorithm is embedded for re-optimising the partial
many efficient constructive subalgorithms such as the (and complete) PMJSS schedule at each HSBP iteration.
topological-sequence algorithm, the modified Carlier algo- For more details of the metaheuristic methodology,
rithm and the extended Jackson rule, is a very delicate and please refer to the papers (Liu and Ong, 2004; Liu
refined constructive heuristic. et al, 2005).
SQ Liu and E Kozan—HSBP algorithm for PMJSS 177

10. Computational experiments Table 4 Comparison of the computational results of JSS


between SBP without TS and HSBP with TS
The proposed HSBP algorithm has been coded in Visual
C++ and tested on an HP desktop with Pentium IV JSS n m Average Average
3.20 GHz Processor and 2 GB RAM. The computational instances Deviation (%) Time (s)
experiment is to evaluate the effectiveness of the proposed
SBP HSBP SBP HSBP
HSBP algorithm and examine the improvement in solution
quality when the TS algorithm is embedded under the LA01–05 10 5 2.08 0.00 0.156 3.716
framework of SBP. LA06–10 15 5 0.39 0.00 0.281 13.788
LA11–15 20 5 0.00 0.00 0.453 31.286
First, the proposed HSBP algorithm without embedding
LA16–20 10 10 10.13 0.19 0.829 116.146
the TS algorithm is tested on the benchmark JSS data LA21–25 15 10 7.98 0.36 1.672 328.125
collected by OR-Library (http://people.brunel.ac.uk/ LA26–30 20 10 6.03 0.02 2.734 687.682
~mastjjb/jeb/orlib/). The computational results for these LA31–35 30 10 0.70 0.00 5.746 184.807
benchmark, JSS instances (LA01–40), are summarised in LA36–40 15 15 15.48 0.84 4.961 829.268
Table 3 in which the deviation of one instance is calculated
as the percentage of the obtained makespan away from
the optimal value (Opt), namely, Deviation ¼ 100 
to find the better or optimal solutions. With the above
(MakespanOpt)/Opt. The optimal value (Opt) is equal
comparative study shown in Table 4, it is enough to
to the lower bound (LB) value or the best upper bound
validate the efficiency of the proposed HSBP algorithm.
(UB) value known in the literature.
On the other hand, the proposed SBP algorithm without
As shown in Table 3, the optimal solutions (most of
TS has a very good balance between computational
them equal to the LB) of the instances LA06–10, LA11–15
effort and solution quality. This can be quantitatively
and LA31–35 can be easily found by the proposed HSBP
demonstrated that for some easy JSS instances such as
algorithm because the number of jobs is several times
LA01–LA15 benchmark instances. As shown in Table 4,
larger than the number of machines (ie n/m 42). For the
the proposed SBP without TS can quickly find the optimal
other tough instances, the deviation becomes larger and
solutions with much less computational efforts and
larger when the problem size of the JSS instance increases,
running time. The reason why we embed TS under the
implying that the proposed HSBP algorithm without
framework of SBP is to meet the demand for high solution
embedding combining the TS algorithm seems unable to
quality of tough (if n/m o2) instances, for example
meet the demand for high solution quality.
15/15 ¼ 1 for LA36–LA40 instances shown in Table 4.
To verify the superiority of the proposed HSBP
The main advantage of TS metaheuristic algorithm can
algorithm combined with the TS algorithm, the benchmark
help searching the solution space in its entirety by
instances (ie LA01– 40) are further computed after activat-
overcoming the traps at local optimum. Thus, the results
ing the embedded components of the TS algorithm. Table 4
of tough benchmark instances obtained by HSBP are
shows the comparison of the computational outcomes
very close to optimum, for example the average deviation
between the SBP algorithm without TS and the HSBP
from the optimum is reduced from 15.48 to 0.84% for
algorithm with TS.
LA36–40 instances.
The comparison indicates that the HSBP with TS
Furthermore, the proposed HSBP problem is applied
performs better than the pure SBP, especially for the large
to solve the PMJSS benchmark instances (named PMJSS-
size tough JSS instances. On the other hand, the HSBP
LA instances) established by adjusting the benchmark
algorithm with TS has to spend more running time due to
JSS-LA instances. In the PMJSS-LA benchmark instances,
the fact that more computing efforts are made to guarantee
the number of units of each machine for 5-machine PMJSS
instances (ie PMJSS-LA01 to PMJSS-LA15 instances) is
Table 3 Computational results of JSS by the proposed SBP hk ¼ {1, 2, 1, 2, 1}|k ¼ 1, 2, 3, 4, 5; the number of units of
algorithm without TS each machine for 10-machine PMJSS instances (ie PMJSS-
JSS instances n m Average Average LA16 to PMJSS-LA35 instances) is hk ¼ {1, 2, 1, 2, 1, 2, 1,
Deviation (%) Time (s) 2, 1, 2}|k ¼ 1, . . . , 10; the number of units of each machine
for 15-machine PMJSS instances (ie PMJSS-LA36 to
LA01–05 10 5 2.08 0.156 PMJSS-LA40 instances) is hk ¼ {1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
LA06–10 15 5 0.39 0.281
LA11–15 20 5 0.00 0.453 1, 2, 1}|k ¼ 1, . . . , 15.
LA16–20 10 10 10.13 0.829 The computational experiments on PMJSS-LA instances
LA21–25 15 10 7.98 1.672 are summarised in Table 5. In Table 5, a collection of
LA26–30 20 10 6.03 2.734 PMJSS benchmark instances are created in the first
LA31–35 30 10 0.70 5.746 column. In Table 5, the names of 40 Lawrence’s bench-
LA36–40 15 15 15.48 4.961
mark JSS instances (ie LA01–40) are indicated in the first
178 Journal of the Operational Research Society Vol. 63, No. 2

Table 5 Computational results of PMJSS based on the PMJSS-LA benchmark instances


Instances Size JSS-LA PMJSS-LA

LBJSS OptJSS LBPMJSS Solution Time (s) Deviation (%) Improve (%)

LA01 10*5 666 666 666 666 63.897 0.00 0.00


LA02 10*5 635 655 597 604 39.235 1.17 7.79
LA03 10*5 588 597 515 588 43.719 14.17 1.51
LA04 10*5 537 590 537 590 36.993 9.87 0.00
LA05 10*5 593 593 593 593 40.356 0.00 0.00
LA06 15*5 926 926 926 926 184.965 0.00 0.00
LA07 15*5 869 890 869 887 190.578 2.07 0.34
LA08 15*5 863 863 863 863 191.691 0.00 0.00
LA09 15*5 951 951 890 890 188.328 0.00 6.41
LA10 15*5 958 958 881 895 227.563 1.59 6.58
LA11 20*5 1222 1222 1222 1222 628.881 0.00 0.00
LA12 20*5 1039 1039 1027 1030 604.219 0.29 0.87
LA13 20*5 1150 1150 1150 1150 594.136 0.00 0.00
LA14 20*5 1292 1292 1132 1155 649.059 2.03 10.60
LA15 20*5 1207 1207 1207 1207 605.785 0.00 0.00
LA16 10*10 717 945 717 904 131.157 26.08 4.34
LA17 10*10 683 784 646 745 104.253 15.33 4.97
LA18 10*10 663 848 663 808 131.157 21.87 4.72
LA19 10*10 685 842 685 818 104.253 19.42 2.85
LA20 10*10 756 902 756 872 104.253 15.34 3.33
LA21 15*10 1040 1048 935 1025 524.628 9.63 2.19
LA22 15*10 830 927 800 927 497.724 15.88 0.00
LA23 15*10 1032 1032 1032 1032 424.628 0.00 0.00
LA24 15*10 857 935 846 928 524.628 9.69 0.75
LA25 15*10 864 977 792 974 628.881 22.98 0.31
LA26 20*10 1218 1218 1218 1218 1730.824 0.00 0.00
LA27 20*10 1235 1242 1188 1212 1972.961 2.02 2.42
LA28 20*10 1216 1216 1142 1208 1678.137 5.78 0.66
LA29 20*10 1120 1182 1017 1117 1809.294 9.83 5.50
LA30 20*10 1355 1355 1355 1355 1705.041 0.00 0.00
LA31 30*10 1784 1784 1784 1784 1466.913 0.00 0.00
LA32 30*10 1850 1850 1850 1850 1233.677 0.00 0.00
LA33 30*10 1719 1719 1585 1670 3469.087 5.36 2.85
LA34 30*10 1721 1721 1721 1721 1870.473 0.00 0.00
LA35 30*10 1888 1888 1888 1888 1696.025 0.00 0.00
LA36 15*15 1028 1268 1028 1213 6022.352 18.00 4.34
LA37 15*15 986 1397 986 1366 6095.448 38.54 2.22
LA38 15*15 1171 1203 943 1195 6075.039 26.72 0.67
LA39 15*15 1012 1233 1012 1176 6049.256 16.21 4.62
LA40 15*15 1222 1228 1027 1202 6028.847 17.04 2.12

Average 8.17 2.07

column. In the second column, n and m are the number of In the literature, the following equation is well-known to
jobs and machines for each benchmark instance. calculate the lower bound of the classical JSS problem:
Since metaheuristic algorithms cannot guarantee to solve ( ! !)
the scheduling problems optimally, the quality of the best Xn X m
LBJSS ¼ max maxj pij ; maxi pij ð27Þ
solution found can be evaluated by comparing the i¼1 j¼1
confirmed optimum, the best upper bound that is the
solution provided in the literature but has not been verified which is the maximum value between the maximum sum of
as optimum or the lower bound. The lower bound is the processing times of all operations of a job and the
used for evaluate the optimality performance of the maximum sum of the processing times of all operations on
proposed methodology for PMJSS because there are no each machine. Here, pij is the processing time of an
benchmark PMJSS results available in the literature. operation of Job i on Machine j Mj.
SQ Liu and E Kozan—HSBP algorithm for PMJSS 179

Here, we propose a new formula to calculate the lower specially proposed for PMJSS. The computational results
bound of the PMJSS problem. This lower bound indicate that the proposed HSBP algorithm can solve the
calculated is applied as one of stopping conditions in PMJSS problem efficiently and effectively.
our proposed HSBP algorithm. About academic contributions, the original-version SBP
( ! algorithm for JSS has been significantly improved to solve
Xn
the PMJSS problem with some distinct novelties that are
LBPMJSS ¼ max maxj pij ;
i¼1 highlighted again as follows:
!)
X
m
maxi pij jhk ¼ 1 ð28Þ K detailed analysis of structural properties of PMJSS is
j¼1 given based on the extended DG model and mathema-
tical formulation;
The lower bound of PMJSS is the maximum value K an innovative algorithm called the topological-sequence
between the maximum sum of the processing times of algorithm is proposed to decompose the PMJSS
all operations of a job and the maximum sum of the problem into a set of SMS and/or PMS subproblems
processing times of all operations on a single-unit machine. with different release times and delivery times;
Thus, the third column (LBJSS) presents the lower K the modified Carlier algorithm based on the proposed
bounds calculated by Equation (26). The forth column lemmas and the proofs is developed to solve the SMS
(OptJSS) gives the optimal solution of the JSS-LA instances. subproblem;
The fifth column (LBPMJSS) gives the lower bound K the Jackson rule is extended to quickly solve the PMS
instances calculated by Equation (27) for PMJSS. subproblem;
Obviously, the lower bound values of PMJSS instances K a lower bound calculation method is developed for
are usually smaller than (or equal to) those of JSS PMJSS in order to evaluate the optimality performance;
instances. The sixth column (Solution) provides the best and
solutions of the LA-PMJSS instances obtained by our K the TS metaheuristic algorithm is embedded under the
proposed HSBP algorithm. In the seventh column, the framework of SBP to optimise the large size JSS and
CPU times of the metaheuristic algorithm are reported PMJSS cases.
with the measurement unit of second. The eighth column
(Gap1) shows the relative gap between our obtained In fact, the proposed PMJSS model can be extended
PMJSS results and the lower bounds of PMJSS-LA to be the blocking parallel-machine job-shop scheduling and
instances, that is (SolutionLBPMJSS)/LBPMJSS  100. no-wait blocking parallel-machine job-shop scheduling
The average deviation from the lower bound value is problems to identify, analyse, model and solve the real-
8.17%, implying that the proposed methodology can find world train scheduling problems (Liu and Kozan, 2009
the solutions that are very close to optimum. The ninth and 2011). In a sense, the proposed methodology on
column (Improve) shows the relative gap between our PMJSS in this paper is an important and fundamental tool
obtained PMJSS results and the optimal solutions of JSS- to analyse and solve the train scheduling problems.
LA instances, that is (OptJSSSolution)/OptJSS  100.
This comparison is very meaningful because it implies that
the efficiency can be improved by at least 2.07% on
average in a more realistic manufacturing or logistic system References
in which some operations can be performed on more than Adams J, Balas E and Zawack D (1988). The shifting bottleneck
one machine. procedure for job shop scheduling. Manage Sci 34(3): 391–401.
Alvarez-Valdes R, Fuertes A, Tamarit JM, Giménez G and
Ramos R (2005). A heuristic to schedule flexible job-shop in a
11. Conclusions glass factory. Eur J Opnl Res 165: 525–534.
Balas W and Vazacopoulos A (1998). Guided local search with
In this paper, we investigate the PMJSS problem, which is shifting bottleneck for job shop scheduling. Manage Sci 44:
mathematically formulated to specify the decision vari- 262–275.
ables, the relationship among them and the constraints Carlier J (1982). The one-machine sequencing problem. Eu J Opnl
Res 11: 42–47.
they must obey. Based on the proposed extended DG Chen H and Luh PB (2003). An alternative framework to
model, the structural properties of PMJSS are thoroughly Lagrangian relaxation approach for job shop scheduling. Eur J
analysed. With exploiting these properties, an HSBP Opnl Res 149: 499–512.
algorithm combined with metaheuristics is developed for Cheng J, Karuno Y and Kise H (2001). A shifting bottleneck
PMJSS. Extensive computational experiments are reported approach for a parallel-machine flowshop scheduling problem.
J Opns Res Soc Jpn 44(2): 140–155.
based on a set of benchmark JSS and PMJSS instances. To Dauzère-Pérès S and Paulli J (1997). An integrated approach for
evaluate the optimality performance of the proposed modeling and solving the general multiprocessor job-shop
methodology, a lower bound calculation method is scheduling problem using tabu search. Ann Opns Res 70: 281–306.
180 Journal of the Operational Research Society Vol. 63, No. 2

Fattahi P, Mehrabad MS and Jolai F (2007). Mathematical Table A1 The data of a 2-job SMS example with release times
modeling and heuristic approaches to flexible job shop schedul- and delivery times
ing problems. J Intell Manuf 18: 331–342.
Gao J, Sun L and Gen M (2008). A hybrid genetic and variable Job j J1 J2
neighborhood descent algorithm for flexible job shop scheduling
problems. Comput Opns Res 35: 2892–2907. rj (Release times) 10 12
Huang WQ and Yin AH (2004). An improved shifting bottleneck pj (Processing times) 3 3
procedure for the job shop scheduling problem. Comput Opns qj (Delivery times) 11 12
Res 31: 2093–2110.
Ivens P and Lambrecht M (1996). Extending the shifting bottleneck
procedure to real-life applications. Eur J Opnl Res 90: 252–268.
Kellerer H (2005). Minimizing the maximum lateness. In: Leung Machine
1
JY-T (ed). Handbook of Scheduling: Algorithms, Models, and
Performance Analysis. Chapter 10. Chapman & Hall/CRC: F L J1 J2
USA. 2
Liu SQ and Kozan E (2009). Scheduling trains as a blocking 5 10 15 20 25 28 Time
parallel-machine job shop scheduling problem. Comput Opns Res
36: 2840–2852. Machine
1
Liu SQ and Kozan E (2011). Scheduling trains with priorities: A
no-wait blocking parallel-machine job-shop scheduling model. F L J2 J1
Transport Sci 45: 175–198. 2
Liu SQ and Ong HL (2004). Metaheuristics for the mixed shop 5 10 15 20 25 29 Time
scheduling problem. Asia Pac J Opnl Res 21(4): 97–115.
Figure A1 The DDGs and Gantt charts for a 2-job SMS
Liu SQ, Ong HL and Ng KM (2005). A fast tabu search algorithm
example.
for the group shop scheduling problem. Adv Eng Softw 36:
533–539.
Mason SJ, Fowler JW and Carlyle WM (2002). A modified shifting
bottleneck heuristic for minimizing total weighted tardiness in
complex job shops. J Sched 5(3): 247–262. According to Theorem 1 proposed by Carlier (1982), the
Mönch L and Drießel R (2005). A distributed shifting bottleneck value of h(Lw) for this Schrage schedule is calculated as
heuristic for complex job shops. Comput Ind Eng 49: 363–380. below:
Mönch L, Schabacker R, Pabst D and Fowler JW (2007). Genetic X
algorithm-based subproblem solution procedures for a modified hðLw Þ ¼ min rj þ pj þ min qj
shifting bottleneck heuristic for complex job shops. Eur J Opnl j2Lw j2Lw
j2Lw
Res 177: 2100–2118.
Pfund ME, Balasubramanian H, Fowler JW, Mason SJ and Rose O ¼ r2 þ p2 þ q2 ¼ 12 þ 3 þ 12 ¼ 27
(2008). A multi-criteria approach for scheduling semiconductor
wafer fabrication facilities. J Sched 11(1): 29–47. As this Schrage schedule is optimal, it is contradicted to
Ramudhin A and Marier P (1996). The generalized shifting Carlier’s Theorem 2 because h(Lw) equals 27 and the
bottleneck procedure. Eur J Opnl Res 93: 34–48.
Sadeh N, Sycara K and Xiong Y (1995). Backtracking techniques
makespan (Cmax) of this schedule is 28, that is h(Lw)aCmax
for the job shop scheduling constraint satisfaction problem. Artif in this case.
Intell 76: 455–480. Moreover, for all possible sets of jobs (ie {2}, {1}, {1, 2},
Xia W and Wu Z (2005). An effective hybrid optimization approach {2, 1}), we obtain
for multi-objective flexible job-shop scheduling problems.
Comput Ind Eng 48: 409–425. hðLw Þ ¼ hðf2gÞ ¼ r2 þ p2 þ q2

¼ 12 þ 3 þ 12 ¼ 27

Appendix A
hðLw Þ ¼ hðf1gÞ ¼ r1 þ p1 þ q1
Using a numerical example, Appendix A presents a proof ¼ 10 þ 3 þ 11 ¼ 24
that Theorem 2 proposed by Carlier (1982) may be
incorrect. The data of a 2-job SMS example with different
release times and delivery times is given in Table A1. hðLw Þ ¼ hðf1; 2gÞ ¼ r1 þ p1 þ p2 þ q1
To enumerate all the solutions of this 2-job SMS example, ¼ 10 þ 3 þ 3 þ 11 ¼ 27
the DDGs and the Gantt charts are drawn in Figure A1.
From Figure A1, it is evident that the optimal makespan
is 28 and the optimal SMS sequence is {J1, J2}. hðLw Þ ¼ hðf2; 1gÞ ¼ r1 þ p1 þ p2 þ q1
If {J1, J2} is a Schrage schedule, then we have a critical ¼ 10 þ 3 þ 3 þ 11 ¼ 27
path {F, a, a þ 1, . . . , c, L} ¼ {F, 1, 2, L}, critical sequence
L ¼ {1, 2}, interference job w ¼ 1 as q1oq2, critical subset Obviously, there is no possibility of having a subset of
Lw ¼ {2} and the makespan equal to 28. jobs to satisfy Theorem 2 proposed by Carlier (1982).
SQ Liu and E Kozan—HSBP algorithm for PMJSS 181

Appendix B Appendix D

The proof for the proposed Lemmas I and II is given in To verify the proposed Lemmas IV and V, a 7-job SMS
Appendix B. For any subset AAJ of jobs, the inequality is example with different release times and delivery times
certain, thus we have introduced by Carlier (1982), is used for the following
computational experiments. The data of this 7-job SMS
OptXLBðAÞ and
example with different release times and delivery times is
X
LBðAÞ ¼ min rj þ pj þ min qj given in Table A2.
j2A j2A The following computational results will prove Lemmas
j2A
IV and V.
Assume A ¼ L and L ¼ {a, a þ 1, . . . , c}, we obtain,
Step 1: After applying Schrage algorithm to this instance,
X
c
the initial schedule is obtained and displayed
LBðLÞ ¼ ra þ pj þ min qj ;
j2L in Table A3 and the makespan (ie the maximum
j¼a
completion-delivery time) can be obtained by
due to ra ¼ min rj and there is no idle time between the
j2L X
c

processing of jobs a and c. Cmax ¼ min ej þ pj þ min lj


j2L j2L
j¼a
In addition, it is certain that,
¼ minf10; 15; 21; 28g þ ð5 þ 6 þ 7 þ 4Þ
X
c
Cmax ¼ ea þ pj þ qc ; þ minf38; 32; 25; 21g
j¼a
¼ 53
where ea is the starting time of job a. As eara, we obtain,
Step 2: As the interference job w (Job 1) should be
X
c
processed after the critical subset Lw ¼ {2, 3, 4}, the release
Cmax ¼ ra þ pj þ qc :
j¼a
date of Job 1 is updated by:
X
Therefore, Cmax ¼ LBðLÞ þ qc  min qj : rw ¼ maxfrw ; min rj þ pj g
j2L j2Lw
j2Lw

¼ maxf10; minf13; 11; 20g þ ð6 þ 7 þ 4Þg


¼ 28
Appendix C

The proposed Lemma III is similar to Theorem 1 proposed


by Carlier (1982). To complete analysing the properties of Table A2 The data of a 7-job SMS example with release times
the Schrage schedule, here we present our own proof that is and delivery times
different from Carlier’s proof.
Job j J1 J2 J3 J4 J5 J6 J7
As Lw ¼ {w þ 1, . . . , c} is the subset of jobs processed
after the interference job w, it is clear that qwoqcpqj and rj (Release times) 10 13 11 20 30 0 30
eworj hold for all jALw, where ew is the starting time of pj (Processing times) 5 6 7 4 3 6 2
qj (Delivery times) 7 26 24 21 8 17 0
the interference job w. Hence, inequality applied to
Lw ¼ {w þ 1, . . . , c} generates another lower bound:
X X
LBðLw Þ ¼ min rj þ pj þ min qj 4ew pj þ qc :
j2Lw j2Lw Table A3 The initial Schrage solution for one 7-job SMS
j2Lw j2Lw
problem
Since there is no idle time during the execution of the
jobs in the critical sequence, the Results J1 J2 J3 J4 J5 J6 J7
Pmakespan of the Schrage
schedule is Cmax ¼ ew þ pw þ pj þ qc . Heads (ej | jAJ) 10 15 21 28 32 0 35
P j2Lw Tails (lj | jAJ) 38 32 25 21 8 43 0
Because LBðLw Þ4ew þ pj þ qc , we obtain
j2Lw
Completion times 15 21 28 32 35 6 37
Completion-delivery times 53 53 53 53 43 49 37
!
X Schrage Schedule J6-J1-J2-J3-J4-J5-J7
Cmax  LBðLw ÞoCmax  ew þ pj þ qc Critical Sequence L J1-J2-J3-J4
j2Lw Critical Job c J4
Interference Job w J1 as q1oq4
and Critical Subset Lw {J2, J3, J4}
Makespan 53
Cmax  LBðLw Þopw :
182 Journal of the Operational Research Society Vol. 63, No. 2

Table A4 The new Schrage solution after updating release date Step 3: As the interference job w (job 3) should be
of Job 1 processed after the critical subset Lw ¼ {2}, we reset the
Results J1 J2 J3 J4 J5 J6 J7 release date of Job 3 by:
( )
X
Heads (ej |jAJ) 28 18 11 24 33 0 36 rw ¼ max rw ; min rj þ pj
Tails (lj |jAJ) 11 26 32 21 8 39 0 j2Lw
j2Lw
Completion times 33 24 18 28 36 6 38
Completion-delivery times 44 50 50 49 44 45 38 ¼ maxf11; 13 þ 6g ¼ 19

Schrage Schedule J6-J3-J2-J4-J1-J5-J7 After reapplying the Schrage algorithm, a new Schrage
Critical Sequence L J3-J2 solution is obtained and displayed in Table A5.
Critical Job c J2 Lemma IV, ‘for a Schrage schedule, Cmax ¼ min ej þ
Interference Job w J3 as q3oq2 Pc j2L
Critical Subset Lw {J2} pj þ min qj exists’, is verified again by the fact that:
j¼a j2L
Makespan 50
X
c
Cmax ¼ min ej þ pj þ min lj
j2L j2L
j¼a

Table A5 The new Schrage solution after updating release date ¼ minf13; 19; 26g þ ð6 þ 7 þ 4Þ
of Job 3
þ minf32; 25; 21g
Results J1 J2 J3 J4 J5 J6 J7 ¼ 51
Heads (ej | jAJ) 33 13 19 26 30 0 38
Tails (lj | jAJ) 7 32 25 21 12 38 0
Note that the current schedule satisfies qc ¼ min qj for
j2L
Completion times 38 19 26 30 33 6 40
Completion-nndelivery times 45 51 51 51 45 44 30
all jAL but its makespan is 51 that is not optimal. As a
matter of fact, the optimal makespan is 50 with q3oq2,
Schrage Schedule J6-J2-J3-J4-J5-J1-J7 q2 ¼ qc and L ¼ {J3, J2}. Therefore, Lemma V (‘Even if
Critical Sequence L J2-J3-J4 qc ¼ min qj , this Schrage schedule may not be optimal’) is
Critical Job c J4 j2L
Interference Job w f as q4 ¼ min qj proved. Lemma V indicates that the stopping condition
Critical Subset Lw f j2L (ie ‘Schrage schedule is optimal if qc ¼ min qj , 8jAL’)
Makespan 51 j2L
introduced in the book (Kellerer 2005) may be incorrect
or incomplete. This is the main reason why we propose a
After applying Schrage algorithm, a new Schrage modified Carlier algorithm for solving the SMS problem
solution is found and displayed in Table A4. with different release times and delivery times.
It is further observed from Table A4 that
X
c Received March 2010;
Cmax ¼ min ej þ pj þ min lj accepted November 2010 after one revision
j2L j2L
j¼a

¼ minf18; 11g þ ð6 þ 7Þ þ minf26; 32g


¼ 50

You might also like