1 / 18

IOE/MFG 543

IOE/MFG 543. Chapter 3: Single machine models (Sections 3.1 and 3.2). Sec. 3.1: The total weighted completion time 1|| S w j C j. Criteria for scheduling Shorter jobs processed first => more jobs finish early The higher the weight the earlier a job should finish

sandovald
Télécharger la présentation

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 3: Single machine models (Sections 3.1 and 3.2)

  2. Sec. 3.1: The total weighted completion time 1||S wjCj • Criteria for scheduling • Shorter jobs processed first => more jobs finish early • The higher the weight the earlier a job should finish • Weighted shortest processing time first rule (WSPT) • order the jobs in decreasing order of wj /pj • Theorem 3.1.1 • The WSPT is optimal for 1||S wjCj

  3. Precedence constraints • Chains 12 ... k • r -factor (largest ratio of weight and processing times)

  4. Algorithm 3.1.4 for chains • Whenever a machine is freed, schedule among the remaining chains the one with the highest r –factor • Process this chain without interruption up to and including the job l* that determines the r –factor Do example on slide 7

  5. 1|| Σwj(1-e-rCj) • Weighted discounted shortest processing time first rule (WDSPT) • Order jobs in non-increasing order of wje-rpj 1-e-rpj • Gives the optimal schedule (Thm. 3.1.6) • Algorithms for chains also exist

  6. Summary of other completion time models

  7. Example 3.1.5 • There are 2 chains 12 34 and 567 • The weights and processing times are • Determine the schedule that minimizes the total weighted completion time

  8. Section 3.2The maximum lateness • Due date related • The problem 1 || Lmax is easy • For a single machine problem with regular objective functions Cmax=Spj • Lmax=maxi{1,…,n} Li (Li =Ci-di) • Select jobs in increasing order of their due dates => earliest due date first rule (EDD)

  9. Backward algorithm for1|prec|hmax • hmax=max(h1(C1),…,hn(Cn)) • The functions hi are nondecreasing • Jis the set of jobs already scheduled • Jobs in J are processed in the interval • Jcis the set of jobs still to be scheduled • J'is the set of jobs that can be scheduled (schedulable jobs)

  10. Algorithm 3.2.1 for 1|prec|hmax • Set J=, Jc={1,…,n} and let J'be all jobs that have no successors • Determine Add j* to J Delete j* from Jc Modify J'to represent the new set of schedulable jobs (have no successors) • If Jc=  STOP, otherwise go to 2

  11. Example 3.2.3 • Use Algorithm 3.2.1 to determine the schedule that minimizes hmax and compute the optimal value

  12. Theorem 3.2.2. • Algorithm 3.2.1. yields an optimal schedule for 1 | prec | hmax • Proof:

  13. Release dates 1 | rj | Lmax • Significantly harder than 1 | prec| Lmax • It may be optimal to keep the machine idle to wait for the release of a new job (not a nondelay schedule) • Theorem 3.2.4. • The problem 1 | rj | Lmax is strongly NP-hard • Reduces from 3-PARTITION

  14. Branch and bound • A method of effective enumeration • Generate a node tree • Compute the objective of a feasible schedule (feasible node) • Compute lower bounds for a class of schedules (node) • The node can be eliminated if the lower bound is higher than the cost of a schedule obtained earlier

  15. Branch and bound for1 | rj | Lmax • Branching • Level 0: single node and no jobs have been scheduled • Level 1: n nodes such that job j is scheduled first at node j • Level k: jobs in the first k positions have been specified

  16. Branch and bound for1 | rj | Lmax (2) • Branching • At a node let J be the set of jobs that have not been scheduled • Also let t be the time when a job can start processing at the node • Only create a node for job j at the node if rj<minlJ(max(t,rl)+pl)

  17. Branch and bound for1 | rj | Lmax (3) • Bounding • At each node compute the optimal value using 1 | rj , prmp| Lmax for the remaining jobs • Preemptive EDD rule is optimal for 1 | rj , prmp| Lmax • If the preemptive solution gives a non-preemptive schedule then it is feasible

  18. Example 3.2.5 • Use branch and bound to determine the schedule for 1 | rj | Lmax and compute the optimal value for

More Related