1 / 16

IOE/MFG 543

IOE/MFG 543. Chapter 5: Parallel machine models (Sections 5.1-5.2). Two-step process. Determine which jobs have to be allocated to which machines Determine the sequence of the jobs allocated to each machine In some cases use single machine models. Makespan C max. Single machine models

kayleew
Download Presentation

IOE/MFG 543

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IOE/MFG 543 Chapter 5: Parallel machine models (Sections 5.1-5.2)

  2. Two-step process • Determine which jobs have to be allocated to which machines • Determine the sequence of the jobs allocated to each machine • In some cases use single machine models

  3. Makespan Cmax • Single machine models • Sum of processing times of all jobs • Exception: Release dates or sequence dependent setup times • Parallel machine models • Minimizing the makespan ensures a good load balance on the machines

  4. Section 5.1 Makespan without preemptions Pm||Cmax • Pm||Cmax is NP-hard => Heuristics • Easy to compute lower bound Cmax≥ C*max= max{pmax, (Spj)/m} where pmax=max{pj} • Longest Processing Time first (LPT) • Largest m jobs are put on the machines first • When a machine is freed, the longest job among the jobs not yet processed is put on the machine

  5. Worst case bound for the LPT rule • Let • Cmax(LPT) be the makespan under the LPT rule • Cmax(OPT) be the optimal makespan • Theorem 5.1.1

  6. LPT Example • 4 machines and 9 jobs • Compute Cmax(LPT) • Pair the jobs 1-5, 2-6, 4-5, 7-8-9 • What is Cmax? • Is this Cmax(OPT)? Why? • What is Cmax(LPT)/Cmax(OPT)

  7. Precedence constraints Pm|prec|Cmax • At least as hard as Pm||Cmax • Strongly NP-hard in general • Special case: P∞|prec|Cmax • unlimited resources (or m≥n, more resources than jobs) • For P∞|prec|Cmax the Critical Path Method (CPM) minimizes the makespan

  8. Algorithm 5.1.3Critical path method • Start a job as soon as all its preceding jobs have been completed • Example 5.1.4 1 2 6 7 3 4 5 8 9

  9. Precedence constraints Pm|prec|Cmax (2) • A critical path rule is optimal for Pm|pj=1, tree|Cmax (Theorem 5.1.5) • Largest Number of Successors rule often used for Pm|pj=1, prec|Cmax • Not optimal (see pg. 102) • Largest total amount of processing rule for Pm|prec|Cmax • Not optimal

  10. Pm|Mj|Cmax • For interest: See pages 103-104

  11. Section 5.2 Makespan with preemptions Pm|prmp|Cmax • Preemptions are useful when there are multiple machines even if there are no release dates • Assumption: A job cannot be processed on 2 machines at the same time

  12. Linear program for Pm|prmp|Cmax

  13. Linear program for Pm|prmp|Cmax (2) • xij is the amount of processing of job j on machine i • Cmax is a decision variable • The solution of the LP does not give a feasible schedule, although a feasible schedule can be constructed given the solution

  14. Algorithm 5.2.3 for Pm|prmp|Cmax • Create a single machine schedule of the n jobs in any order without preemptions • Compute C*max= max{pmax, (Spj)/m}. Cut the single machine schedule in m intervals: I1=[0, C*max], I2= [C*max, 2C*max], …, Im=[(m-1)C*max,mC*max] • Take the schedule for machine i of the parallel machines to be the processing sequence in interval Ii

  15. Pm|prmp|Cmax example • Use Algorithm 5.2.3 to determine a schedule that minimizes the makespan of the following jobs on 3 machines

  16. Longest Remaining Processing Time rule • Analogous to the LPT rule • LRPT minimizes the makespan • What happens while a job is processed? • RPT decreases => switch to a new job • Results in infinitely many switchovers! • LRPT-FM (FM=fastest machine) is optimal for Qm|prmp|Cmax

More Related