130 likes | 266 Views
IOE/MFG 543. Chapter 5: Parallel machine models (Sections 5.3-5.6). Section 5.3: Total completion time Pm|| S C j. On a single machine C j = S k=1 p (k) where p (j) is the processing time of the jth job processed on the machine Then S C j =np (1) +(n-1)p (2) +...+p (n)
E N D
IOE/MFG 543 Chapter 5: Parallel machine models (Sections 5.3-5.6)
Section 5.3: Total completion time Pm||S Cj • On a single machine Cj=Sk=1p(k) where p(j) is the processing time of the jth job processed on the machine • Then SCj=np(1)+(n-1)p(2)+...+p(n) • => Shortest Processing Time first rule minimizes SCj j
Total completion time Pm||S Cj (2) • The same argument can be extended to parallel machines • Theorem 5.3.1 • The SPT rule is optimal for Pm||S Cj • In fact, a number of optimal schedules exist
Weighted total completion time Pm||S wjCj • WSPT rule is not always optimal • In practice it usually does pretty well • Worst case bound
Other completion time models • Precedence constraints Pm|prec|SCj • Strongly NP-hard • Non-identical machines Rm||SCj • Can be formulated as an integer program • The solution of the corresponding linear program gives an optimal schedule => Can be solved in polynomial time
Section 5.4: Preemptions Pm|prmp|S Cj • The SPT non-preemptive rule is still optimal • A special case of a more general result for Qm|prmp|S Cj • Recall: vi is the speed on machine i in Qm models • pj can be interpreted as the required work to complete job j (processing time = pj/vi)
Qm|prmp|S Cj • SRPT-FM rule: • Process the jobs such that the job with the shortest remaining processing time is put on the fastest machine. The job with the second shortest remaining processing time is put on the second fastest machine, etc. • Whenever the fastest machine completes a job, all the remaining jobs are moved up on the machines • Theorem 5.4.2 • The SRPT-FM rule is optimal for Qm|prmp|S Cj
Example 5.4.3Qm|prmp|S Cj • 4 machines • 7 jobs • Use the SRPT-FM to solve Qm|prmp|S Cj
Section 5.5Due date related objectives • Single machine problems that can be solved “easily” • e.g., 1|prec|Lmax, 1|rj,prmp|Lmax • Single machine tardiness problems (1||STj) are NP-hard • If all due dates are 0 • Then Pm||Lmax is equivalent to Pm||Cmax => Pm||Lmax is NP-hard
Qm|prmp|Lmax • One of few parallel machine problems that can be solved in polynomial time • First question: Is there a schedule such that Lmax≤ z ? • This can be formulated (backwards) as Qm|rj,prmp|Cmax • Let dj=dj+z be a hard deadline
Qm|prmp|Lmax (2) • Solve the problem backwards • Find the job k with the latest deadline • Let rk=0 and rj=dk-dj • Solve Qm|rj,prmp|Cmaxby applying LRPT-FM • The backward schedule is optimal for Qm|prmp|Lmax
Example 5.5.1P2|prmp|Lmax • 4 jobs • Let z=0 • Solve P2|rj,prmp|Cmax by LRPT rule
Section 5.6 Discussion • Parallel machine models are much harder than single machine models! • Later in the course we will study heuristics that can be used to obtain “good” schedules