8
1 IOE/MFG 543 IOE/MFG 543 Chapter 8: Open shops Chapter 8: Open shops Section 8.1 Section 8.1 (you may skip Sections (you may skip Sections 8.2 – 8.5) 8.2 – 8.5)

IOE/MFG 543

Embed Size (px)

DESCRIPTION

IOE/MFG 543. Chapter 8: Open shops Section 8.1 (you may skip Sections 8.2 – 8.5). Open shop (Om). m machines, n jobs The routing of each job is up to the scheduler (i.e., it is open) Nondelay schedules - PowerPoint PPT Presentation

Citation preview

Page 1: IOE/MFG 543

11

IOE/MFG 543IOE/MFG 543

Chapter 8: Open shopsChapter 8: Open shops

Section 8.1 Section 8.1 (you may skip Sections 8.2 – (you may skip Sections 8.2 – 8.5)8.5)

Page 2: IOE/MFG 543

22

Open shop (Om) Open shop (Om)

m machines, n jobsm machines, n jobs The routing of each job is up to the The routing of each job is up to the

scheduler (i.e., it is open)scheduler (i.e., it is open) Nondelay schedulesNondelay schedules

– If there is a job waiting for processing If there is a job waiting for processing when a machine is free, then that machine when a machine is free, then that machine is not allowed to remain idleis not allowed to remain idle

– See also Definition 2.3.1 on page 22See also Definition 2.3.1 on page 22– Here we only consider nondelay schedulesHere we only consider nondelay schedules

Page 3: IOE/MFG 543

33

Minimizing the makespan Minimizing the makespan on two machines O2||Con two machines O2||Cmaxmax

The makespan must be at least the total The makespan must be at least the total processing time on each machineprocessing time on each machine– This gives the lower boundThis gives the lower bound

The open shop scheduling is flexible so The open shop scheduling is flexible so this bound is typically attainedthis bound is typically attained– In an optimal schedule at most 1 machine In an optimal schedule at most 1 machine

idlesidles

CCmaxmax≥max≥max

((

nn nn

))pp1j 1j ,, pp22

jj

j=1j=1 j=1j=1

Page 4: IOE/MFG 543

44

LAPT ruleLAPT rule

Whenever a machine is freed, start Whenever a machine is freed, start processing among the jobs that have not processing among the jobs that have not yet received processing on either yet received processing on either machine the job with the longest machine the job with the longest processing time on the other machineprocessing time on the other machine

=> Longest Alternate Processing Time first=> Longest Alternate Processing Time first If a job has the longest processing times If a job has the longest processing times

on both machines and if both machines on both machines and if both machines are freed at the same time it does not are freed at the same time it does not matter on which machine the job is matter on which machine the job is processed firstprocessed first

Page 5: IOE/MFG 543

55

LAPT rule exampleLAPT rule example

job jjob j pp1j1j pp2j2j

11 33 44

22 55 66

33 44 22

44 11 33

Page 6: IOE/MFG 543

66

Theorem 8.1.1Theorem 8.1.1

The LAPT rule yields an optimal The LAPT rule yields an optimal schedule for O2||Cschedule for O2||Cmaxmax with with makespanmakespan

CCmaxmax=max=max((maxmaxjj{1,…,n}{1,…,n}

(p(p1j1j+p+p2j2j),),

nn nn

))

pp1j 1j ,, pp22

jj

j=1j=1 j=1j=1

Page 7: IOE/MFG 543

77

Minimizing the Minimizing the makespan on m makespan on m machines Om||Cmachines Om||Cmaxmax Theorem 8.1.2Theorem 8.1.2

– The problem O3||CThe problem O3||Cmaxmax is NP-hard is NP-hard

– PPARTITIONARTITION reduces to O3||C reduces to O3||Cmaxmax

The LTRP-OM is a reasonable heuristicThe LTRP-OM is a reasonable heuristic– Whenever a machine is freed process the Whenever a machine is freed process the

job that has the highest total remaining job that has the highest total remaining processing time on other machines is put on processing time on other machines is put on the machinethe machine

– Longest Total Remaining Processing on Longest Total Remaining Processing on Other Machines firstOther Machines first

Page 8: IOE/MFG 543

88

Summary of other Summary of other open shop modelsopen shop models Om | prmp | COm | prmp | Cmaxmax is solvable in polynomial is solvable in polynomial

timetime

O2 || LO2 || Lmaxmax is is stronglystrongly NP-hard NP-hard Om | rOm | rjj , prmp | L , prmp | Lmaxmax is solvable in is solvable in

polynomial timepolynomial time O2 | prmp | O2 | prmp | UUjj is NP-hard (not in the text) is NP-hard (not in the text) O2 || O2 || CCjj is is stronglystrongly NP-hard NP-hard O3 |prmp| O3 |prmp| CCj j is is stronglystrongly NP-hard NP-hard

CCmaxmax=max=max((maxmaxjj{1,{1,

…,n}…,n}

mm nn

))

ppij ij , max, maxii{1,{1,

…,m}…,m}

ppii

jj

i=1i=1 j=1j=1