View
220
Download
0
Tags:
Embed Size (px)
Citation preview
© J. Christopher Beck 2005 2
Outline Jobs & Operations
Characteristics & notation Resources/machines
Setup/transition cost Objective functions Complexity
© J. Christopher Beck 2005 3
Jobs
pij – processing time of job j on machine i
rj – release date of job jdj – due date of job jwj – weight of job j
pij
rj dj
wj
M1
M2
M3
Sij Cij
Sij – starting time of job j on machine i
Cij – completion time of job j
© J. Christopher Beck 2005 4
Jobs & Operations
Often jobs are made up of a set of operations
p2j
rj dj
wj
p0j p3j p1j
precedence constraints
© J. Christopher Beck 2005 5
Example: House Building
…
Excavate Foundations Floor joists
…
Exterior plumbing
4 wks 2 wks 3 wks
3 wks
© J. Christopher Beck 2005 6
Resources/Machines
Jobs may need resources Mixing machine, back-hoe, cement
mixer May be multiple similar resources
are available and you need to choose one
© J. Christopher Beck 2005 7
House Building Resources
…
Excavate Foundations Floor joists
…
Exterior plumbing
4 wks 2 wks 3 wks
3 wks
BackhoeBackhoe operatorDump truck…
requires Carpenter
© J. Christopher Beck 2005 8
Resources & Setup
If 2 jobs need the same resource (and the resource can only do 1 thing at a time), then the jobs must be sequenced
May be a time or cost for a resource to change jobs (“sequence dependent setup”)
© J. Christopher Beck 2005 9
Objectives
Minimize maximum completion time (aka “makespan”) Min Cmax
Cmax = max(C1, … Cn)
Minimize maximum lateness Min Lmax
Lmax = max(C1 – d1, … Cn – dn)
© J. Christopher Beck 2005 10
Objectives
Minimize total weighted tardiness Min ΣwjTj
Tj = max(Cj – dj, 0)
# Job Duration (weeks)
Predecessor(s)
1 Excavation 4 –
2 Foundations 2 1
3 Floor joists 3 2
4 Exterior Plumbing 3 1
5 Floor 2 3,4
6 Power On 1 2
7 Walls 10 5
8 Wiring 2 6,7
9 Communication Lines 1 8
10 Inside Plumbing 5 7
11 Windows 2 10
12 Doors 2 10
13 Sheetrock 3 9,10
14 Interior Trim 5 12,13
15 Exterior Trim 4 12
16 Painting 3 11,14,15
17 Carpeting 1 16
18 Inspection 1 17
Exercise 2.1a) Draw precedence graphb) Calculate makespan
© J. Christopher Beck 2005 12
Hard Problems vs. Easy Problems
Exercise 2.1b was “easy” Adding resources would have made
it hard Hard & easy have precise
mathematical definitions You need to have, at least, an
intuitive understanding of what this means
© J. Christopher Beck 2005 13
Hard vs Easy
Easy: Sort n numbers Solve a system of linear equations
Hard: Schedule a factory, deliver packages,
schedule buses, …
© J. Christopher Beck 2005 14
Hard vs Easy
f (n): the number of “basic operations” needed to solve the problem with input size n
Easy: f (n) is polynomial in n O(n), O(n log n), O(n2), …
Hard: f (n) is exponential in n O(2n), …
Hard vs EasyO(n) O(n log
n)O(n2) O(2n)
1 0 1
10 10 100
20 26 400
50 85 2500
100 200 10000
1000
3000 1,000,000
Hard vs EasyO(n) O(n log
n)O(n2) O(2n)
1 0 1 2
10 10 100 1024
20 26 400
50 85 2500
100 200 10000
1000
3000 1,000,000
Hard vs EasyO(n) O(n log
n)O(n2) O(2n)
1 0 1 2
10 10 100 1024
20 26 400 1048576
50 85 2500 1,125,899,906,842,624
100 200 10000
1000
3000 1,000,000
Hard vs EasyO(n) O(n log
n)O(n2) O(2n)
1 0 1 2
10 10 100 1024
20 26 400 1048576
50 85 2500 1,125,899,906,842,624
100 200 10000 1.268 X 1030
1000
3000 1,000,000
1.072 X 10301
© J. Christopher Beck 2005 19
Hard vs Easy 10301 operations required in worst case Age of universe: 1018 seconds Fastest Computer today: 1014 op/sec Let’s say we get a computer 1018 times
faster (a sextillion times faster) 1033 op/sec
It may still take 10250 times longer than the age of the universeuniverse to solve the problem!
© J. Christopher Beck 2005 20
Hard vs Easy
If it is going to take 10250 times the age of the universe to schedule a factory, why bother?