1 / 73

Set # 4 Dr. LEE Heung Wing Joseph Email : majlee@polyu.hk Phone: 2766 6951 Office : HJ639

AMA522 SCHEDULING. Set # 4 Dr. LEE Heung Wing Joseph Email : majlee@polyu.edu.hk Phone: 2766 6951 Office : HJ639. 5 jobs. Makespan of each machine is fixed once the allocation is fixed. 2 machines. 2 machines. with preemptions. 4 jobs. =.

teo
Télécharger la présentation

Set # 4 Dr. LEE Heung Wing Joseph Email : majlee@polyu.hk Phone: 2766 6951 Office : HJ639

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. AMA522 SCHEDULING Set # 4 Dr. LEE Heung Wing Joseph Email : majlee@polyu.edu.hk Phone: 2766 6951 Office : HJ639

  2. 5 jobs Makespan of each machine is fixed once the allocation is fixed. 2 machines

  3. 2 machines with preemptions 4 jobs

  4. =

  5. Exercise 5.11 (b) Show that if an optimal schedule results in at most two jobs on any machine, then LPT is optimal. Under the condition, n ≤ 2m. By adding jobs with zero processing times we can make n = 2m, and each machine would have 2 jobs. If under the LPT, the largest would match with the smallest, the second largest would match with the second smallest etc etc.

  6. We now show that this LPT arrangement is indeed optimal. Let p1 ≥ p2≥ …..≥ pn. Under LPT, Cmax=max{( p1+ pn ), ( p2+ pn-1 ) , (p3+ pn-2 ) , ….., ( pn/2+ pn/2+1)} That is to say, Cmax=maxj=1,2,…,n/2 { pj+ pn-j+1}. Let S1={1,2,…,n/2} and S2={n/2+1,n/2+2,…,n}. In the LPT arrangement, each machine would have one job from S1 and one from S2. Consider a schedule with exactly 2 jobs in each machine. Suppose one machine has 2 jobs {a,b} from S1 and another machine has two jobs {c,d} from S2 such that pa ≥ pb≥ pc ≥ pd. The completion times for these two machines would be (pa+ pb ) and (pc+ pd). But max{(pa+ pb ) , (pc+ pd)} ≥ max{(pa+ pd ) , (pb+ pc)}, so by interchanging jobs b and d, we can possibly improve the cost. Thus, for the optimal schedule, we must have each machine having one job from S1 and the other one from S2.

  7. Now consider any two machines in a schedule with each machine having one job from S1 and one from S2. Suppose a and c are processed on one machine and b and d are on the other, where {a,b} are from S1 and {c,d} from S2 such that pa ≥ pb≥ pc ≥ pd. The completion times for these two machines would be (pa+ pc ) and (pb+ pd). But max{(pa+ pc ) , (pb+ pd)} ≥ max{(pa+ pd ) , (pb+ pc)}, so by interchanging jobs c and d, we can possibly improve the cost. That is to say, the larger job in S1 would match with the smaller job in S2 in one machine; and the smaller job in S1 would match with the larger job in S2 in another machine. Thus, we keep interchanging the jobs between machines to improve the cost until the largest job would match with the smallest, the second largest would match with the second smallest etc etc. That is to say, the LPT rule is the optimal.

  8. or just freed, it follows that

  9. 3pn Last job cannot have 3 or more jobs for each machine, otherwise pn is not the smallest job processing time At most 2 jobs

  10. Recall Exercise 5.11 (b): Show that if an optimal schedule results in at most two jobs on any machine, then LPT is optimal.

  11. Project Scheduling Contents 1. Problem Statement 2. Critical Path Method 3. Extensions to the classical project scheduling problems

  12. Problem Statement • Environment: • parallel-machines • jobs are subject to precedence constraints • Objective: to minimise the makespan • P | prec | Cmaxm n Critical Path Method • Pm | prec | Cmax 2m<nNP hard • slack job: the start of its processing time can be postponed without increasing the makespan • critical job: the job that can not be postponed • critical path: the set of critical jobs

  13. Critical Path Method Forward procedure that yields a schedule with minimum makespan. Notation: pj processing time of job j S'jthe earliest possible starting time of job j C'jthe earliest possible completion time of job j C'j= S'j+pj { all k  j } jobs that are predecessors of job j Step 1. For each job j that has no predecessors S'j=0and C'j=pj Step 2. Compute inductively for each remaining job j C'j= S'j+pj Step 3. Cmax = max(C'1, ... ,C'n)

  14. Backward procedure determines the latest possible startingand completion times. Notation: C''jthe latest possible completion time of job j S''jthe latest possible starting time of job j { j  allk } jobs that are successors of job j Step 1. For each job j that has no successors C''j=Cmaxand S''j=Cmax-pj Step 2. Compute inductively for each remaining job j S''j= C'j- pj Step 3. Verify that 0 = min(S''1,..., S''n)

  15. The jobs whose earliest possible starting times are earlier than latest possible starting times are referred to as slack jobs. • The jobs whose earliest possible starting times are equal to their latest possible starting times are critical jobs. • A critical path is a chain of jobs which begin at time 0 and ends at Cmax.

  16. 9 4 8 8 1 2 7 6 3 3 6 9 3 4 5 12 8 Example 6

  17. 9 4 8 8 1 2 7 6 3 3 6 9 3 4 5 12 8 6

  18. Critical Path 9 4 8 8 1 2 7 6 3 3 6 6 9 3 4 5 12 8

  19. So far, the activities (jobs) are on the nodes, and the arrows are only representing the precedence of the jobs. Activities on the arrow In another textbook “Operations Research” 7th ed. by Hamdy A. Taha, the CPM is somewhat presented in another way. The activities (jobs) are on the arrows instead of the nodes.

  20. Extensions to the classical project scheduling problems • Stochastic activity (job) durations • Nonavailability of resources • Multiple resource types • Preemption of activities • Multiple projects with individual project due-dates • Objectives: • common one: minimising overall project duration • resource leveling • minimise resource loading peaks without increasing project duration • maximise resource utilisation factors

  21. Flow Shop Scheduling Contents 1. Problem Statement 2. Johnson's rule

  22. Problem Statement • F2 | | Cmax • Flow shop environment: • 2 machines, n jobs • objective function: makespan • arrival times of jobs rj = 0

  23. (a) (b)

  24. Algorithm [S.M. Johnson (1954)] for F2 | | Cmax Step 1. Schedule the group of jobs U that are shorter on thefirst machine than the second. U = { j | p1j < p2j } Step 2. Schedule the group of jobs V that are shorter on thesecond machine than the first. V = { j | p1jp2j } Step 3. Arrange jobs in U in non-decreasing order by theirprocessing times on the first machine. Step 4. Arrange jobs in V in non-increasing order by theirprocessing times on the second machine. Step 5. Concatenate U and V and that is the processing orderfor both machines.

  25. idle time ... first machine ... second machine idle time

  26. Example. U = {2, 3, 6} V = {1, 4, 5, 7, 8} Cmax = 37

  27. Job Shop Scheduling Contents 1. Problem Statement 2. Disjunctive Graph 3. The Shifting Bottleneck Heuristic and the Makespan

  28. Literature: 1. Scheduling, Theory, Algorithms, and Systems, Michael Pinedo, Prentice Hall, 1995, or new: Second Addition, 2002 Chapter 7 or 2. Operations Scheduling with Applications in Manufacturing and Services, Michael Pinedo and Xiuli Chao, McGraw Hill, 2000 Chapter 5

  29. Problem Statement • Job shop environment: • m machines, n jobs • objective function • each job follows a predetermined route • routes are not necessarily the same for each job • machine can be visited once or more than once (recirculation) • NP hard problems

More Related