Professional Documents
Culture Documents
Hong Choi 2005
Hong Choi 2005
Quick value-setting algorithms for the longest path problem of job-shop scheduling
Shiu Hong Choi Feng Yu Yang
Article information:
To cite this document:
Shiu Hong Choi Feng Yu Yang, (2005),"Quick value-setting algorithms for the longest path problem of job-
shop scheduling", Journal of Manufacturing Technology Management, Vol. 16 Iss 8 pp. 956 - 972
Permanent link to this document:
http://dx.doi.org/10.1108/17410380510627906
Downloaded on: 01 February 2015, At: 05:48 (PT)
References: this document contains references to 21 other documents.
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
Access to this document was granted through an Emerald subscription provided by 402646 []
For Authors
If you would like to write for this, or any other Emerald publication, then please use our Emerald for
Authors service information about how to choose which publication to write for and submission guidelines
are available for all. Please visit www.emeraldinsight.com/authors for more information.
About Emerald www.emeraldinsight.com
Emerald is a global publisher linking research and practice to the benefit of society. The company
manages a portfolio of more than 290 journals and over 2,350 books and book series volumes, as well as
providing an extensive range of online products and additional customer resources and services.
Emerald is both COUNTER 4 and TRANSFER compliant. The organization is a partner of the Committee
on Publication Ethics (COPE) and also works with Portico and the LOCKSS initiative for digital archive
preservation.
JMTM
16,8 Quick value-setting algorithms
for the longest path problem of
job-shop scheduling
956
Shiu Hong Choi and Feng Yu Yang
Department of Industrial and Manufacturing Systems Engineering,
Received March 2004
Revised September 2004 The University of Hong Kong, Hong Kong, People’s Republic of China
Accepted October 2004
Abstract
Purpose – The disjunctive graph is a network representation of the job-shop scheduling problem,
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
while the longest path problem (LPP) is one of the most important subjects in this research field.
This paper aims to study the special topological structure of the disjunctive graph, and proposes a
suite of quick value-setting algorithms for solving the LPPs commonly encountered in job-shop
scheduling.
Design/methodology/approach – The topological structure of the disjunctive graph is analyzed,
and some properties and propositions regarding LPPs are presented. Subsequently, algorithms are
proposed for solving LPPs encountered in job-shop scheduling.
Findings – The proposed algorithms significantly improve the efficiency of the shifting-bottleneck
procedure, making it practicable to realise real-time scheduling and hence effective operations of
modern manufacturing systems.
Originality/value – The paper demonstrates that it is possible to develop very efficient algorithms
by imposing a special topological structure on the network.
Keywords Optimized production scheduling, Programming and algorithm theory
Paper type Conceptual paper
Nomenclature
J ¼ set of jobs I ¼ dummy source vertex
M ¼ set of machines O ¼ dummy sink vertex
Q ¼ set of operations m(v) ¼ weight of vertex v
m ¼ number of machines (v, w) ¼ vertex pair with precedence
n ¼ number of jobs relation
c ¼ number of operations of all jobs [v, w ] ¼ directed arc from vertex v to w
pi ¼ processing time of operation i {v, w} ¼ disjunctive edge linking vertex
ri ¼ release time of operation i v and w
qi ¼ delivery time of operation i M0 ¼ set of scheduled machines
ti ¼ start time of operation i for DS ¼ directed graph (digraph)
processing D ¼ semi-digraph
tn ¼ solution makespan P(v, w) ¼ path from vertex v to w
J(i ) ¼ job to which operation i belongs Pmax(v, w) ¼ the longest path from vertex v
M(i ) ¼ machine on which operation i is to w
Journal of Manufacturing Technology processed Pmax(w) ¼ the longest path from I to w
Management
Vol. 16 No. 8, 2005 G ¼ disjunctive graph l(P(v, w)) ¼ the length of the path P
pp. 956-972 V ¼ set of vertices R ¼ binary precedence relation of
q Emerald Group Publishing Limited
1741-038X
A ¼ set of directed arcs operations belonging to the
DOI 10.1108/17410380510627906 E ¼ set of disjunctive edges same job
S ¼ binary precedence relation of JC(k) ¼ job chain of job k Quick
operations processed on the xCV(k) ¼ current vertex of job k
same machine N ¼ natural numbers value-setting
predJ(w) ¼ adjacent predecessor of C ¼ total number of times of algorithms
operation (vertex) w in its job solving the longest path
chain problems
predM(w) ¼ adjacent predecessor of TCC ¼ theoretical computing cost
operation (vertex) w in its incurred by the longest path 957
machine chain problems
succJ(w) ¼ adjacent successor of operation T(i ) ¼ computing time of algorithm j
(vertex) w in its job chain for the longest path problem
succM(w) ¼ adjacent successor of operation Tmean ¼ mean computing time
(vertex) w in its machine chain RD/Q ¼ ratio of the computing time of
b(v, w) ¼ determination status of SBDL to that of SBQV
Pmax(v, w) R(D/Q)mean ¼ mean value of RD/Q
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
1. Introduction
Modern manufacturing has been facing huge pressure from global competition and
market changes. There is a growing demand to manufacture products in wide varieties
with short development cycles. Therefore, effective scheduling policies are required to
plan the operations of manufacturing systems in order to cope with the increasing job
processes and workflow patterns efficiently.
Job-shop scheduling problem (JSSP) plays an important role in production
scheduling. It is a mathematical optimization problem to allocate and sequence jobs
under the constraints of limited production resources, time, and precedence of
operations, etc. with optimization objectives such as minimizing maximum tardiness
and mean flow time (Jeong et al., 1999). In general, the optimality of the obtained
solutions and reduction in the computing costs are among the ultimate goals. Although
many scheduling algorithms were developed to obtain optimal or near-optimal
solutions to JSSPs (Jain and Meeran, 1999), they have become inapt and can no longer
satisfy the needs of modern manufacturing. There is, indeed, an increasing need for
more efficient scheduling algorithms to solve large JSSPs for real-time production
scheduling.
The disjunctive graph (Roy and Sussmann, 1964) is a network representation of
JSSP and its solutions. It is more prevalent than the Gantt chart (Blazewicz et al., 1996),
which has traditionally been a popular method to represent JSSP solutions. The
disjunctive graph is indeed the basis on which some heuristic methods (Lin and Tsai,
1991; Wu et al., 1999), some branch-and-bound methods (Ashour et al., 1974; Carlier and
Pinson, 1989), the shifting-bottleneck procedure (SBP) (Adams et al., 1988), and the
neighbourhood structure of some local search methods (Wang and Wu, 1999) are
constructed.
The significance of the disjunctive graph in job-shop scheduling has attracted
considerable attention. Its properties and calculating rules have been well presented,
whereas the longest path problem (LPP) is one of the most important subjects. The
LLPs are often encountered in the machine-based decomposition method, which breaks
a JSSP down into a number of single-machine problems and puts the single-machine
solutions together to create a full solution. Traditionally, the label-setting methods and
JMTM the label-correcting methods (Dijkstra, 1959; Ford and Fulkerson, 1956), which were
proposed for solving the shortest path problems of general networks, are directly used
16,8 to solve LPPs in the disjunctive graph. Adams et al. (1988) applied a modified labelling
algorithm, which is based on deleting or simply ignoring irrelevant arcs of the
resulting diagraph with O(c) complexity, where c is the number of operations, to solve
LPPs encountered in SBP. Demirkol et al. (1997) reported that a method described by
958 Ahuja et al. (1993), which is a kind of the label-setting or the label-correcting algorithms
with O(c 2) complexity in the worst case, had been used in their implementation of SBP.
Wang and Wu (1999) implemented the label-setting algorithms and the label-correcting
algorithms to calculate the total tardiness of jobs as the cost function of an annealing
simulating algorithm. Liaw (1998) applied the label-correcting method to compute the
start/end time to convert the sequencing component into the scheduling component for
an open-shop scheduling problem.
Since the topological structure of the disjunctive graph is different from that of
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
general networks, the label-setting and label-correcting methods perform poorly for
solving LPPs often encountered in job-shop scheduling. Indeed, the procedure to solve
LPPs is very time-consuming (Adams et al., 1988). Hence, if more efficient algorithms
for LPPs of the disjunctive graph are developed, the computing time of job-shop
scheduling methods based on or related to the disjunctive graph can be significantly
reduced without diminishing solution quality. As a result, the conflicting goals of
reducing computing time and of enhancing solution quality are mutually achieved.
It would also be possible to develop very efficient scheduling algorithms if a special
topological structure is imposed on the underlying network (Ahuja et al., 1993).
In this paper, the topological structure of the disjunctive graph is analyzed, and
some useful properties and propositions regarding LPPs are presented. Subsequently,
algorithms are proposed for solving LPPs encountered in job-shop scheduling. They
provide a framework for incorporation of efficient scheduling algorithms to solve large
JSSPs, as required for real-time production scheduling of modern manufacturing.
The rest of the paper is arranged as follows. Section 2 formulates LPPs after
introducing the disjunctive graph and the types of LPPs encountered in job-shop
scheduling. Section 3 analyses the topological structure and properties of the
disjunctive graph, and then proposes a suite of algorithms for LPPs. Section 4 presents
the comparison results of the conventional methods and the proposed methods
incorporated into SBP. Finally, conclusions are drawn in Section 5.
2. Problem formulation
In a typical job-shop, there are a job set, J, a machine set, M, and an operation set, Q.
For each operation v [ Q, there is a unique job J ðvÞ [ J to which it belongs, a unique
machine M ðvÞ [ M on which it requires processing, and a processing time pv [ N
where N is natural numbers. The jobs are to be processed on the machines with the
objective of minimizing some functions, subject to the constraints that:
(1) the sequence of machines for each job is prescribed, and
(2) each machine can process only one job at a time. A JSSP solution is indeed a set
of job sequences representing the processing order on the machines.
Figure 1.
The disjunctive graph of a
JSSP
JMTM In the case that partial machines are scheduled, only the job sequences of the scheduled
machines are fixed. Then the corresponding semi-digraph, D, is constructed by
16,8 replacing the disjunctive edge set Ep with dðE p Þ, i.e.
D ¼ ðV ; A < dðE p Þ; E 2 E p Þ; p [ M 0 : ð7Þ
where M0 is the set of scheduled machines. Thus the disjunctive graph G and the
960 digraph DS can be regarded as special cases of the semi-digraph D, i.e.
8
>
> ðV ; A; EÞ ¼ G; jM 0 j ¼ 0;
<
D ¼ ðV ; A < dðE p Þ; E 2 E p Þ; while 0 , jM 0 j , jM j; ð8Þ
>
>
: ðV ; A < dðEÞÞ ¼ DS ; jM 0 j ¼ jM j:
The longest path, Pmax(xi, xj), is a path from xi, to xj with the maximum length, i.e.
;Pðxi ; xj Þ [ D : lðPðxi ; xj ÞÞ # lðP max ðxi ; xj ÞÞ: ð11Þ
Let v and w denote the start and the end vertices of a path, respectively. LPPs can be
divided into three sub-types in job-shop scheduling. The first type of LPPs is to calculate
the length of the longest path from the source vertex, I, to any other vertex, w, i.e.
lðP max ðI ; wÞÞ, w [ V 2 {I }, which is referred to as the longest path length of w, or
Pmax(w). The second type of LPPs is to calculate the length of the longest path from any
vertex, v, other than the sink vertex O, to O, i.e. lðP max ðv; OÞÞ, v [ V 2 {O}, which is
referred to as the reverse longest path length of v. The third type is to calculate the length
of the longest path between any two vertices other than the source and the sink vertices,
i.e. lðP max ðv; wÞÞ, where v; w [ V 2 {I ; O}, which is referred to as the all-pair LPP.
By solving the first type of LPPs, the following three problems can be solved:
(1) Deriving the processing schedule, i.e. a timetable about the start/finish times for
various operations, from the obtained job sequences of the machines. The start
time, tw, of operation w is exactly the longest path length of the corresponding
vertex in DS, i.e.
t w ¼ lðP max ðwÞÞ: ð12Þ
(2) Calculating the makespan of a solution, tn. In fact, the makespan of a solution is
equal to the length of the longest path from vertex I to vertex O in DS, which is
referred to as Pmax, i.e.
tn ¼ lðP max Þ: ð13Þ Quick
value-setting
(3) Calculating the release time, rw, of operation w. When deriving a single-machine algorithms
scheduling problem from a JSSP, which is usually encountered in the
machine-based decomposition method, the release time and the delivery time of
each operation are acquired. In fact, the release time rw is equal to the longest 961
path length of w in D, i.e.
r w ¼ lðP max ðwÞÞ: ð14Þ
The second type of LPPs is applied in calculating the delivery time of the operation,
which is equal to the reverse longest path length of the corresponding operation minus
its processing time, i.e.
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
Proof. According to P1, all the paths from I to w must pass through predJ(w) or
predM(w). Set e ¼ predJ ðwÞ and f ¼ predM ðwÞ, then it can be deduced that
lðP max ðwÞÞ ¼ MaxðlðP max ðeÞÞ þ mðeÞ; lðP max ð f ÞÞ þ mð f ÞÞ: ð21Þ
J M
If Pmax(pred (w)) and Pmax(pred (w)) are not determined, Pmax(w) cannot be determined.
Similarly, if Pmax(w) is not determined, then neither Pmax(succJ(w)) nor Pmax(succM(w))
can be determined. A
According to P1 and P2, the available conditions to determine Pmax(w), where
w [ V 2 {I }, can be denoted as:
(
bðI ; predJ ðwÞÞ ¼ bðI ; predM ðwÞÞ ¼ 1;
ð22Þ
bðI ; wÞ ¼ 0;
Proof. Since the processing sequence of the operations in the job chain is
predetermined, i.e.
xk21 ¼ predJ ðxk Þ: ð25Þ Quick
value-setting
According to the definition of current vertex specified in condition (23), it can be algorithms
deduced that
(
bðI ; predJ ðxk ÞÞ ¼ 1: 963
ð26Þ
bðI ; xk Þ ¼ 0; 1 # k # m:
The combination of conditions (24) and (26) shows that condition (22) is satisfied.
Therefore, the vertex xk is an available vertex. A
P1 and P2 specify the special topological structure and the property that distinguish
the disjunctive graph from general networks. Since a current vertex is more likely to be
available than others, a quick value-setting (QV) algorithm is proposed based on P3.
The algorithm searches available vertices in the current vertices and calculates the
longest path length of the first encountered available vertex. Since there is at most one
current vertex in each job chain, it costs at most n times to find the next available
vertex. In comparison, the traditional label-setting algorithms cost mn times in this
procedure.
Denote JC(k) as the job chain of job k, and xCV(k) as the current vertex of job k. Set
e ¼ predJ ðxCVð jÞ Þ, f ¼ predM ðxCVð jÞ Þ, and m, n the numbers of machines and jobs. Set a
vertex index, index(w), for each vertex w, w [ V , to record its longest path. The QV
algorithm is given in Figure 2.
The proposed QV algorithm calculates the longest path from the source vertex I to
w, w [ V 2 {I }, in a forward manner. Since the longest path length from v, where
v [ V 2 {O}, to the sink vertex O is equal to that from O to v, it can be calculated by
the QV algorithm while regarding the sink vertex as the source vertex and reversing
the orientations of all directed arcs in D. Setting g ¼ succJ ðxcvð jÞ Þ and h ¼ succM ðxcvð jÞ Þ,
a reverse QV algorithm is proposed for the reverse LPP, as shown in Figure 3.
In the single-machine scheduling procedure of the machine-based decomposition
method, the release-times of unscheduled operations need to be updated as described in
equation (16). Conventionally, a method for solving the all-pair LPP in Oðm 3 n 3 Þ times
(Ahuja et al., 1993) is implemented to check one unscheduled operation each time. In
this paper, a practical algorithm, which checks and updates all unscheduled operations
in a run, as shown in Figure 4, is proposed based on the following proposition.
P4. If the longest path length of v, where v [ V 2 {I ; O}, is changed when a
disjunctive edge is orientated as a directed arc in D, then the longest path
length of a successor of v, say g, may be changed, i.e.
lðP max ðgÞÞ ¼ MaxðlðP max ðgÞÞ; lðP max ðvÞÞ þ lðP max ðv; gÞÞÞ: ð27Þ
964
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
Figure 2.
The QV algorithm
965
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
Figure 3.
The reverse value-setting
algorithm
Figure 4.
The release-time updating
algorithm
(2) Length determination. The algorithm determines the longest path length of an
available vertex in O(1) times. Hence a total of O(mc) times is required for
obtaining the longest path lengths of all the vertices.
and the procedure is repeated at most three times. After these so-called local
re-optimization cycles, the procedure is repeated after the last a non-critical machines
are removed from the list of scheduled machines. They are rescheduled one by one,
1=2
where a is taken to be the minimum of jM j and the number of non-critical scheduled
machines. When these non-critical machines are rescheduled, the re-optimization
procedure is completed.
P5. In a straight version of SBP, the value of TCC is more than ð7m 4 þ 13m 3 Þn in
the worst case.
Proof. In a straight version of SBP, the LPP and the reverse LPP are encountered in
the generation procedure of SMSPs and in the re-optimization procedure each time a
machine is scheduled. Let jM 0 j denotes the number of scheduled machines, then
jM j 2 jM 0 j SMSPs are generated and solved for selecting the next bottleneck machine.
The number of LPPs encountered is
C1 ¼ ðjM j 2 jM 0 jÞ £ 2 ¼ 2ðm 2 jM 0 jÞ: ð28Þ
In a local re-optimization cycle, each scheduled machine is re-generated and solved
while the job sequences on the other scheduled machines as fixed. As long as
jM 0 j , jM j, at most three local re-optimization cycles are gone through, while the local
re-optimization procedure is continued till there is not further improvement for a full
cycle when jM 0 j ¼ jM j. Thus the number of LPPs encountered in the local
re-optimization procedure is
C2 ¼ ðjM 0 j þ 1Þ £ 2 £ 3: ð29Þ
In fact, a full re-optimization is composed of a local re-optimization and a
post-optimization. A post-optimization means removing the last a non-critical
machines from the scheduled machine set and reintroducing these machines,
successively, where a is the minimum of jM 0 j1=2 and the number of non-critical
machines in M0, i.e.
a ¼ Min jM 0 j1=2 ; jN ðM 0 Þj : ð30Þ
where N(M0) is the set of no-critical machines in M0, i.e. Quick
;w [ N ðM 0 Þ; for w P max : ð31Þ value-setting
Thus in the worst case, a ¼ jM 0 j
1=2
. The number of LPPs encountered in the
algorithms
post-optimization procedure is
X
a 967
C3 ¼ ðjM j 2 jM 0 j þ i Þ £ 2 þ ðjM 0 j 2 i þ 1Þ £ 2 £ 3 : ð32Þ
i¼1
4. Computational experiments
Traditional algorithms and the proposed algorithms for LPPs are incorporated with the
straight version of SBP separately to measure their efficiency. The comparison results on
the benchmark instances, LA1-LA40 (Lawrence, 1984), SWV6-10 (Storer et al., 1992) and
YN1-4 (Yamada and Nakano, 1992), are shown in Table I. Computational experiments are
listed in ascending order of their dimensions. SBDL stands for the modified SBP of
Dauzere-Peres and Lasserre (1993), while SBCL and SBQV denote the SBP with the
conventional label-correcting (CL) algorithm and the proposed QV algorithm for solving
LPPs, respectively. The data for SBDL, which were obtained by implementing the
algorithm on a SUN4 workstation, were extracted from Balas’ work (1995), while the data
for SBCL and SBQV were obtained on a Pentium III 650 MHz computer.
Since the computing times for solving problems with the same number of machines
and jobs vary slightly, Tmean is used to denote the mean computing time of a group of
problems with the same numbers of machines and jobs. Figure 5 shows distributions of
the mean computing times of different algorithms. The category axis shows the sizes of
the problems in ascending order of their TCC values, while the value axis denotes the
computing times on a logarithmic scale. The TCC values of the problem groups are
shown as a reference line.
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
16,8
968
Table I.
JMTM
different algorithms
The computing time of
Computing time (s)
SBDL (SUN 4) SBCL (PIII-650) SBQV (PIII-650)
Problem m n TCC (million) T(SBDL) Tmean T(SBCL) Tmean T(SBQV) Tmean RD/Q R(D/Q)mean
LA28 10 20 1.660 62.7 71.04 27.63 29.5 0.046 0.047 1363 1644
LA29 10 20 76.3 31.88 0.031 2461
LA30 10 20 68.5 33.84 0.047 1457
LA31 10 30 90.3 672.7 0.109 828
LA32 10 30 58.0 224.6 0.094 617
LA33 10 30 2.490 54.3 81.16 283.9 487.8 0.109 0.103 498 775
LA34 10 30 160.1 498.6 0.109 1469
LA35 10 30 43.1 759.1 0.093 463
LA36 15 15 122.4 120.4 0.063 1943
LA37 15 15 101.6 269.1 0.110 924
LA38 15 15 5.974 128.0 113.54 108.2 160.0 0.094 0.091 1362 1305
LA39 15 15 102.8 150.4 0.094 1094
LA40 15 15 112.9 152.0 0.094 1201
SWV6 15 20 – 42386 0.172 –
SWV7 15 20 – 29808 0.156 –
SWV8 15 20 7.965 – – 33704 34837 0.172 0.169 – –
SWV9 15 20 – 43290 0.171 –
SWV10 15 20 – 24995 0.172 –
YN1 20 20 – – 18672 0.250 –
YN2 20 20 24.480 – 20675 22012 0.282 0.277 – –
YN3 20 20 – 20523 0.296 –
YN4 20 20 – 28179 0.281 –
value-setting
algorithms
Quick
969
Table I.
JMTM
16,8
970
Figure 5.
The computing time of
different algorithms
It can be seen that the computing time of SBCL increases significantly with the numbers
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
of machines and jobs, while the increase of computing time of SBQV is much less
dramatic, which shows that SBQV is more efficient than SBCL in the range of a dozen to
a few hundred thousands times. On the other hand, the reference line is almost parallel
to the line of SBQV, which confirms the complexity analysis of the proposed algorithms
and the observations made in P5.
Since the computing times of SBDL and SBQV cannot be compared directly because
they were run on different hardware platforms, Table I also presents the ratio of the
computing time of SBDL to that of SBQV as RD=Q ¼ TðSBDL Þ=TðSBQV Þ, and the mean
ratio of the computing time of SBDL to that of SBQV, R(D/Q)mean, for each problem
groups.
Figure 6 shows the R(D/Q)mean for different problem groups. An upper bound line,
which was derived from the ratio of the composite theoretical performance (CTP) of
PIII-650 to that of SUN4 workstation, is provided for reference. CTP is a current
criterion used as an industry standard performance indicator and is measured in units
called million theoretical operations per second (MTOPS). The CTP in MTOPS of
PIII-650 is 1516.7 while the value of SUN4 is ranged from 4.4 to 22.2. This means a
computing cost of 1 s on a PIII-650 is equivalent to 344.7 or 68.3 s on a SUN4 station of
Figure 6.
The mean ratio of the
computing times
lower-end or higher-end configuration, respectively. As shown in Table I, the range of Quick
R(D/Q)mean is between 765 and 1,644. It may, therefore, be said that SBQV out-performs value-setting
SBDL by a factor in the range of 2.22-24.07. Hence, the proposed algorithms are deemed
efficient for real-time job-shop scheduling. Indeed, they will have significant impacts algorithms
on effective operations of modern manufacturing systems, particularly when amplified
by constant improvement of computing technologies.
971
5. Conclusions
The LPP is an important subject of the network theory, while the disjunctive graph is
the most popular model to represent the JSSP and the corresponding solutions.
However, the conventional algorithms for LPPs were designed for the environment of
general networks; they are ineffective when applied in the disjunctive graph. This
paper demonstrates that it is possible to develop very efficient algorithms by imposing
a special topological structure on the network. Based on the topological structure and
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
References
Adams, J., Balas, E. and Zawack, D. (1988), “The shifting bottleneck procedure for job-shop
scheduling”, Management Science, Vol. 34 No. 3, pp. 391-401.
Ahuja, R.K., Magnanti, T.L. and Orlin, J.B. (1993), Network Flows: Theory, Algorithms, and
Applications, Prentice-Hall, Englewood Cliffs, NJ.
Ashour, S., Moore, T.E. and Chin, K.Y. (1974), “An implicit enumeration algorithm for
non-preemptive shop scheduling problem”, AIIE Transactions, Vol. 6 No. 1, pp. 62-72.
Balas, E., Lenstra, J.K. and Vazacopoulos, A. (1995), “The one machine problem with delayed
precedence constraints and its use in job shop scheduling”, Management Science, Vol. 41,
pp. 94-109.
Blazewicz, J., Domschke, W. and Pesch, E. (1996), “The job-shop scheduling problem:
conventional and new solution techniques”, European Journal of Operational Research,
Vol. 93 No. 1, pp. 1-33.
Carlier, J. and Pinson, E. (1989), “An algorithm for solving the job shop problem”, Management
Science, Vol. 35 No. 2, pp. 164-74.
Dauzere-Peres, S. and Lasserre, J.B. (1993), “A modified shifting bottleneck procedure for
job-shop scheduling”, International Journal of Production Research, Vol. 31 No. 4,
pp. 923-32.
Demirkol, E., Mehta, S. and Uzsoy, R. (1997), “A computational study of shifting bottleneck
procedures for shop scheduling problems”, Journal of Heuristics, Vol. 3 No. 2, pp. 111-37.
Dijkstra, E. (1959), “A note on two problems in connexion with graphs”, Numerical Mathematics,
Vol. 1, pp. 269-71.
Ford, L.R. and Fulkerson, D.R. (1956), “Solving the transportation problem”, Management
Science, Vol. 3, pp. 24-32.
JMTM Jain, A.S. and Meeran, S. (1999), “Deterministic job-shop scheduling: past, present and future”,
European Journal of Operational Research, Vol. 113 No. 2, pp. 390-434.
16,8 Jeong, H.I., Park, J. and Leachman, R.C. (1999), “A batch splitting method for a job shop
scheduling problem in an MRP environment”, International Journal of Production
Research, Vol. 37 No. 15, pp. 3583-98.
Lawrence, S. (1984), Supplement to Resource Constrained Project Scheduling: An Experimental
972 Investigation of Heuristic Scheduling Techniques, Carnegie-mellon University, Pittsburgh,
PA.
Liaw, C.F. (1998), “An iterative improvement approach for the nonpreemptive open shop
scheduling problem”, European Journal of Operational Research, Vol. 111 No. 3, pp. 509-17.
Lin, C.F. and Tsai, W.H. (1991), “Motion planning for multiple robots with multi-mode operations
via disjunctive graphs”, Robotica, Vol. 9, pp. 393-408.
Roy, B. and Sussmann, B. (1964), “les problemes d’ordonnancement avec constraints
disjonctives”, SEMA, Note D.S., No. 9, Paris.
Downloaded by Tulane University At 05:48 01 February 2015 (PT)
Steinhofel, K., Albrecht, A. and Wong, C.K. (1999), “Two simulated annealing-based heuristics
for the job shop scheduling problem”, European Journal of Operational Research, Vol. 118
No. 3, pp. 524-48.
Storer, R.H., Wu, S.D. and Vaccari, R. (1992), “New search spaces for sequencing instances with
application to job shop scheduling”, Management Science, Vol. 38, pp. 1495-509.
Wang, T.Y. and Wu, K.B. (1999), “An efficient configuration generation mechanism to solve job
shop scheduling problems by the simulated annealing algorithm”, International Journal of
Systems Science, Vol. 30 No. 5, pp. 527-32.
Wu, S.D., Byeon, E.S. and Storer, R.H. (1999), “A graph-theoretic decomposition of the job shop
scheduling problem to achieve scheduling robustness”, Operations Research, Vol. 47 No. 1,
pp. 113-24.
Yamada, T. and Nakano, R. (1992), “A genetic algorithm applicable to large-scale job-shop
instances”, in Manner, R. and Manderick, B. (Eds), Parallel Instance Solving from Nature 2,
North-Holland, Amsterdam, pp. 281-90.