IOE/MFG 543 Chapter 8: Open shops Section 8.1 (you may skip Sections 8.2 – 8.5) 1 Open shop (Om) m machines, n jobs The routing of each job is up to the scheduler (i.e., it is open) Nondelay schedules – If there is a job waiting for processing when a machine is free, then that machine is not allowed to remain idle – See also Definition 2.3.1 on page 22 – Here we only consider nondelay schedules 2 Minimizing the makespan on two machines O2||Cmax The makespan must be at least the total processing time on each machine – This gives the lower bound n Cmax≥max( Sp1j , Sp2j ) j=1 n j=1 The open shop scheduling is flexible so this bound is typically attained – In an optimal schedule at most 1 machine idles 3 LAPT rule Whenever a machine is freed, start processing among the jobs that have not yet received processing on either machine the job with the longest processing time on the other machine => Longest Alternate Processing Time first If a job has the longest processing times on both machines and if both machines are freed at the same time it does not matter on which machine the job is processed first 4 LAPT rule example job j 1 2 3 4 p1j 3 5 4 1 p2j 4 6 2 3 5 Theorem 8.1.1 The LAPT rule yields an optimal schedule for O2||Cmax with makespan n Cmax=max(maxj{1,…,n}(p1j+p2j), n Sp1j , Sp2j ) j=1 j=1 6 Minimizing the makespan on m machines Om||Cmax Theorem 8.1.2 – The problem O3||Cmax is NP-hard – PARTITION reduces to O3||Cmax The LTRP-OM is a reasonable heuristic – Whenever a machine is freed process the job that has the highest total remaining processing time on other machines is put on the machine – Longest Total Remaining Processing on Other Machines first 7 Summary of other open shop models Om | prmp | Cmax is solvable in polynomial time m n Cmax=max(maxj{1,…,n} Spij , maxi{1,…,m} Spij ) i=1 j=1 O2 || Lmax is strongly NP-hard Om | rj , prmp | Lmax is solvable in polynomial time O2 | prmp | SUj is NP-hard (not in the text) O2 || SCj is strongly NP-hard O3 |prmp| SCj is strongly NP-hard 8