Job Shop Scheduling with Setup Times Release times and Deadlines
-
Upload
alkis-vazacopoulos -
Category
Documents
-
view
641 -
download
0
description
Transcript of Job Shop Scheduling with Setup Times Release times and Deadlines
![Page 1: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/1.jpg)
Job Shop Scheduling with Setup Times,
Deadlines and Precedence Constraints
Universite Paris-Dauphine
Alkis Vazacopoulos
**Joint work with Egon Balas and Neil Simonetti
![Page 2: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/2.jpg)
The Problem
• Set of Jobs
• Set of Machines
• Each machine can handle at most one job at a time
• Each Job is a set of operations
• Each Operation requires
uninterrupted processing
on a given machine
for a fixed amount of time di
* There are sequence dependent setup times cij
* Objective is to minimize makespan
![Page 3: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/3.jpg)
1
2 3 4
5 6 7
8 9
10
JOB 1
JOB 2
JOB 3
Job Shop Scheduling
Oper
ation
![Page 4: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/4.jpg)
Job Shop Scheduling Problem
1
2 3 4
5 6 7
8 9
10
11
Disjunction
Machines
d2+c2,10
d10+c10,2
![Page 5: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/5.jpg)
Job Shop Scheduling Problem
1
2 3 4
5 6 7
8 9
10
11
d5 + c53
![Page 6: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/6.jpg)
Job Shop Scheduling
1
2 3 4
5 6 7
8 9
10
11
Acyclic
Longest Path
Critical
Path
![Page 7: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/7.jpg)
Shifting Bottleneck Procedure
• Adams Balas and Zawack 1988
• Balas, Lenstra, Vazacopoulos (using delayed
precedence Constraints)
• Balas, Vazacopoulos (Guided Local Search)
• Balas, Lancia, Serafini, Vazacopoulos (Job shop
Scheduling with Deadlines, Release times and
Downtimes)
• Balas, Simonetti, Vazacopoulos (Jobshop with
Setup Times)
![Page 8: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/8.jpg)
Shifting Bottleneck Procedure
• Let M0 be the set of machines already sequenced
• Step 1. Identify a bottleneck machine m among the machines k in M\ M0. Set
M0= M0U{m} and go to 2
• Step 2. Reoptimize the current partial schedule. If M0= M, stop; otherwise goto step 1.
![Page 9: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/9.jpg)
Shifting Bottleneck
1
2 3 4
5 6 7
8 9
10
11
Find Bottleneck
Machine
![Page 10: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/10.jpg)
One Machine Problem
1
2
6 7
10
11
![Page 11: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/11.jpg)
Shifting Bottleneck
1
2 3 4
5 6 7
8 9
10
11
Bottleneck
![Page 12: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/12.jpg)
Shifting Bottleneck
1
2 3 4
5 6 7
8 9
10
11
Bottleneck
![Page 13: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/13.jpg)
Shifting Bottleneck
1
2 3 4
5 6 7
8 9
10
11
Bottleneck
![Page 14: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/14.jpg)
One-Machine Scheduling as a
Traveling Salesman Problem
• Jobs to be scheduled are the nodes of the
Traveling Salesman Problem.
• The cost cij of traveling from node i to node j is
processing time of job i plus the setup time
required for the transition from job i to job j.
• A dummy node is added (with costs of zero)
which is used as the home city, where the
traveling salesman tour will begin and end.
![Page 15: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/15.jpg)
Dynamic Program for the Traveling
Salesman Problem (TSP)
• Designate a home city (1).
• Subproblem:
P(i, A) = length of the shortest path from
the home city to city i, using the cities in set A.
• Relationship:
P(1,{1}) = 0.
P(i, A) = min jA\{i} (P(j, A\{i}) + cji)
• Exponential number of subproblems.
![Page 16: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/16.jpg)
Strong Precedence Constraint
• Given an initial ordering of cities
(1, 2, 3, …, n) and a constant k,
if city i comes k or more places before
city j in the initial ordering, then city i
comes before city j in the final tour.
• This limits the number of subproblems to
O (2kn)
![Page 17: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/17.jpg)
TSP with Time Windows
• Strong precedence constraints of this type
appear in time window problems,
including those generated from single-
machine scheduling problems.
• Narrower time windows require smaller
values of k.
![Page 18: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/18.jpg)
Heuristic Application
• If the required value of k is too large to be
practical (because of time or space), a
smaller k can be used as a heuristic.
• The dynamic program will search an
exponentially large neighborhood of
solutions.
![Page 19: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/19.jpg)
Constructing Time Windows
• Given release times, rj, due dates, qj, and
processing times, pj, for each job j, and a target
makespan M, the time window for job j is:
[rj, M – pj – qj]
• The dynamic program can be used as an oracle
to answer the decision problem:
Is there a feasible one-machine
schedule with makespan M?
![Page 20: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/20.jpg)
Finding the Best Makespan
• In theory, a binary search will find an
optimal makespan M in log(M) steps.
• In practice, it takes fewer than log(M)
steps to find M by stepping down the
target makespan at each step.
• A smaller k can be used to solve the
easier problems during the first few steps.
![Page 21: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/21.jpg)
Delayed Precedence Constraints
• A delayed precedence constraint is a
constraint of the form: Job i must start at
least d time units after job j is completed.
• The states of the dynamic program cannot
distinguish when previous cities have
been visited, so this cannot be strictly
enforced by the algorithm.
![Page 22: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/22.jpg)
Another Heuristic
• Increasing cij to d will enforce the
delayed precedence constraint when jobs
i and j are consecutive, but the solution
may not be optimal if i and j are not
consecutive.
• In practice, the quality of solutions is still
very good.
![Page 23: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/23.jpg)
Test Problems
• Classical job-shop scheduling problems from Ovacik and Uzsoy. (960 problems)
• Semiconductor scheduling problems from Ovacik and Uzsoy. (1920 problems)
• Reentrant Flowshop scheduling problems from Ovacik and Uzsoy. (1800 problems)
• Job-shop scheduling problems from Brucker and Thiele, created by adding setup times to problems from Adams, Balas, and Zawack. (17 problems)
![Page 24: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/24.jpg)
Adding Guided Local Search
• After the reoptimization phase we apply
Guided Local Search procedure (Balas
and Vazacopoulos
• (modified for our problem)
![Page 25: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/25.jpg)
Compare with and without Local
search
• Js305 , k =15
• Avg. of Maximum Lateness (avg. CPU time)
• Jobs - Mach. - With local search - Without Local seacrh
• 10 5 360.20 (1.86) 421.95 (0.31)
• 20 5 91.0 (61.43) 150.75 (14.39)
• 20 15 1531.45 (114.30) 1895.85 (27.26)
• 20 20 2070.50 (109.88) 2702.55 (26.63)
![Page 26: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/26.jpg)
Classical Jobshop Problems
![Page 27: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/27.jpg)
Semiconductor data sets
• Problems from Ovacik and Uzsoy
• Description
• Semiconductor testing facility
• A number of testing workcenter and a
brand workcenter
• (post-burn portion of a large testing facility)
• Processing and setup times were derived
from data in the actual facility
![Page 28: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/28.jpg)
Semiconductor Problems
![Page 29: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/29.jpg)
Reentrant Flowshop Scheduling
Data Sets
• Problems from Ovacik and Uzsoy
• Description
• Semiconductor testing facility
• A number of testing workcenter and a brand
workcenter
• (post-burn portion of a large testing facility)
• Processing and setup times were derived from
data in the actual facility
• Reentrant (jobs reenter the facility)
![Page 30: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/30.jpg)
Reentrant Flowshop Results
![Page 31: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/31.jpg)
Results
• Type of problems Better solution Found
• Classical Problems 958 / 960
• Semiconductor Problems 1311 / 1920
• Reentrant Flowshop Prob. 1785 / 1800
![Page 32: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/32.jpg)
Brucker and Thiele Problems
• We compare with
- Brucker and Thiele’s method: Branch
and bound method
- Focacci, Laborie Nuijten: A method
based on Constrained programming
- Buscaylet and Artigues: A tabu seacrh
method
![Page 33: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/33.jpg)
Brucker and Thiele Problems
• Problem Size Best Known SB-GLS
t2-ps01 10x5 798(opt) 815(1.9)
t2-ps03 10x5 749(opt) 771(1.8)
t2-ps05 10x5 691(opt) 693(1.2)
t2-ps12 20x5 1448 1369(41)
t2-ps13 20x5 1575 1439(68)
t2-pss12 20x5 1359 1305(49)
t2-pss13 20x5 1463 1409(55)
• 360Mhz processor.
![Page 34: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/34.jpg)
Randomized Local Search
• Apply SB-RGLSh: Delete a number of
machines (randomly) and reintroduce
them using the shifting bottleneck
procedure
• Apply this procedure after SB-GLS for h
times (h = 10 In our case)
![Page 35: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/35.jpg)
Randomized Shifting Bottleneck
• Original SBP:
• Step 1. Identify a bottleneck machine m among the machines k in M\ M0. Set
M0= M0U{m} and go to 2
Randomized SBP
Select randomly machine k in M\ M0. Set
M0= M0U{m} and go to 2
![Page 36: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/36.jpg)
Brucker and Thiele Problems
• Randomized Local Search finds better solutions but is computationally expensive.
Problem Size Best Known SB-GLS SB-RGLS t2-ps01 10x5 798(opt) 815(1.9) 798(358) t2-ps03 10x5 749(opt) 771(1.8) 749(834) t2-ps05 10x5 691(opt) 693(1.2) 693(248) t2-ps12 20x5 1448 1369(41) 1305(2173) t2-ps13 20x5 1575 1439(68) 1439(2468) t2-pss12 20x5 1359 1305(49) 1290(2062) t2-pss13 20x5 1463 1409(55) 1398(1875)
• 360Mhz processor.
![Page 37: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/37.jpg)
Brucker and Thiele Problems
![Page 38: Job Shop Scheduling with Setup Times Release times and Deadlines](https://reader031.fdocuments.net/reader031/viewer/2022020122/548dba49b479597a588b47c3/html5/thumbnails/38.jpg)
Conclusions
• A new Shifting Bottleneck Procedure for
the Jobshop Scheduling problem with
Setup
• Tested in several large sets of problems
and has provided new upper bounds for
several problems