스케줄 이론 Single Machine Independent Jobs – part1 Problems without due dates Single MC – Independent Jobs 스케줄 이론 1. Notational Conventions Definition of the problems (Method shown in Pinedo's text book 1st Ed.): A/B/C/D A) Job arrival pattern (Static=number of jobs, Dynamic=arrival distribution) B) Number of machines C) Flow pattern (Flow shop, Job shop, General Shop-either Flow shop or Job shop) D) Evaluation Criteria – (예) Static n job / 2 Machine / Flow shop / Min. Completion Time Problem n/2/F/Cmin – (예) n/m/G/Tmin I.2.2 Variables – Problem Variables (Job Descriptors): small letters – Decision Variables: Capital letters 2010년 가을 1/29 Single MC – Independent Jobs 스케줄 이론 Jobs and machines (Method shown in Pinedo's text book 2st Ed.): || Data (assumed to be given) 2010년 가을 m number of machines n number of jobs Pij, tij processing time of job j at machine i Pj tj processing time of job j at when all machines are identical rj release date of job j dj due date of job j wj weight of job j 2/29 Single MC – Independent Jobs 스케줄 이론 Describing a scheduling problem || Machine environment Objective (to be minimized) Process characteristics and constraints 2010년 가을 3/29 Single MC – Independent Jobs 스케줄 이론 Machine environment Single machine and machines in parallel 2010년 가을 1 single machine Pm m identical machines in parallel Qm m machines in parallel w/different speeds vi Rm m unrelated machines in parallel 4/29 Single MC – Independent Jobs 스케줄 이론 Machine environment (2) Machines in series 2010년 가을 Fm flow shop: all jobs processed in the same order on the machines FFc flexible flow shop: same as flow shop but with c stages of parallel machines Jm job shop: each job has its own routing FJc flexible job shop: same as job shop but with c stages of parallel machines Om open shop: each job has to be processed on all machines but no routing restrictions 5/29 Single MC – Independent Jobs 스케줄 이론 Processing characteristics and constraints could be empty! 2010년 가을 rj Release dates sjk sequence dependent setup times sijk sequence and machine dependent setup times prmp preemption prec precedence constraints 6/29 Single MC – Independent Jobs 스케줄 이론 Processing characteristics and constraints (2) 2010년 가을 brkdwn breakdowns Mj machine eligibility restrictions prmu permutation block blocking nwt no waiting recrc recirculation 7/29 Single MC – Independent Jobs 스케줄 이론 Objectives Performance measures of individual jobs 2010년 가을 Cj completion time of job j Lj lateness = Cj – dj Tj tardiness = max(Lj, 0) Ej earliness = max(-Lj, 0) Uj unit penalty = 1 if Cj > dj and 0 otherwise hj(Cj) hj is a non-decreasing cost function 8/29 Single MC – Independent Jobs 스케줄 이론 Objectives (2) Functions to be minimized 2010년 가을 Cmax = max Cj makespan Lmax = max Lj maximum lateness ΣwjCj total weighted completion time Σwj(1-e-rCj) total weighted discounted Cj ΣwjTj total weighted tardiness ΣwjUj weighted number of tardy jobs Σwj' Ej+ Σwj'' Tj total weighted earliness and tardiness 9/29 Single MC – Independent Jobs 스케줄 이론 1. Notational Conventions Problem Variables Jj j [1,..., n] a. Jobs sometimes ( J1 , J 2 ,..., J n ) b. Machines i [1,..., m] sometimes (m1 , m2 ,..., mn ) M i c. Processing Time ( t j orPj ): processing time of Job j ( tij or Pij ): i-th operation of j-th Job d. Ready Time ( r j ): the earliest time that processing of the first operation of Job j could begin e. Due Date ( d j ): the time by which the processing of the last operation is due to be completed f. Allowed Time (a j ): allowed time in the shop (= d r ) j 2010년 가을 10/29 j Single MC – Independent Jobs 스케줄 이론 1. Notational Conventions Decision Variables a. Completion Time ( C j ): Absolute time b. Flow Time ( F j ): Time spent in the shop = C j rj c. Lateness( L j ) = C j d j – Negative Lateness is possible 5 ( C ) - 10 ( d ) = - 5 j j – Any Good Points in having Negative L j ? d. Tardiness( T j ) = Max{0, L j } e. Earliness( E j ) = Max{0, L j } – Tardiness and earliness are all positive numbers. f. Waiting Time( W j ) = C j rj t j C j rj t j W j F j t j W j C j rj (Digression) We may think of Wij , the waiting time for the i-th operation of Job j (?) A schedule is completely described by a set of Wij ⇔ 2 Schedules ( ∧ & ~ ) are identical / equivalent (w.r.t. some performance criteria) iff Wˆ W element-wise ij 2010년 가을 ij 11/29 Single MC – Independent Jobs 스케줄 이론 1. Notational Conventions Performance Measures 1 n F Fi n i 1 ↓MFT (Mean Flow Time) = 1 Tj n ↓Mean Tardiness = T ↓Max Flow Time = Fmax Max1 j n{Fj } ↓Max Tardiness = Tmax Max1 j n{Tj } ↓# of Tardy Jobs = n NT (T j ) j 1 (T j ) 1 if Tj 0 (T j ) 0 otherwise 2010년 가을 12/29 Single MC – Independent Jobs 스케줄 이론 1. Notational Conventions (Definition) Regular Measure (Z) of Performance refer to a performance measure for the following case: ① Scheduling objective is to minimize Z. ② Performance measure(Z) is a function of completion time. 즉 ③ Increases only if one of C j ' s increases. Namely, we have Z f (C1,..., Cn ) such that Z Z Ci Ci for at least one i, i=1, ..., n (Example) Quantities that are not Regular Measure Average Earliness Max Earliness Difference between the largest to second largest completion times We need to consider only Dominant Schedule Sets 2010년 가을 13/29 Z f (C1,..., Cn ) Single MC – Independent Jobs 스케줄 이론 1. Notational Conventions (Definition) Dominant Set A concept to reduce solution space from complete enumeration Reasoning Procedures – – – – 1. Consider an arbitrary schedule SD (S is a string consisting of C j ' s) where D is a set of a certain class of schedules 2. Show that ∃ a schedule S Dwhere C j ' Cfor all j. j 3. For regular measures, above implies Z f (Ci ) Z f (Ci ) 4. It is sufficient to consider schedules in D only. (Example) Suppose (Mean Tardiness) is the measure of performance in single m/c scheduling problem. Now suppose there exists a job k that T n satisfies d k t j , then there exists an optimal sequence in which job k is j 1 assigned the last. ⇒ We can consider only n-1 jobs excluding job k. 2010년 가을 14/29 Single MC – Independent Jobs 스케줄 이론 2. Introduction Single Machine is Not that Restrictive in Real Applications Chemical Process Industry: whole facility can be regarded as one M/C. Bottleneck Process in Process Industries as well as Machine Industries (Temporary Bottleneck) Single Processor Computing System Tape Drive, etc. Basic Single-machine Assumptions 1. We have n independent, single-operation jobs. 2. Sequence independent set-up time can be included in each processing time. 3. Job descriptors( t j , rj , d j ) are completely known. 4. No idle time. 5. No interruption once a job is started. (Example) Process industry. Is assumption 2 reasonable? We need consider only Permutation Schedules (The total number of possible Schedules: n! ) 2010년 가을 15/29 Single MC – Independent Jobs 스케줄 이론 2. Introduction Permutation Schedule Schedules are completely specified by giving processing order (n!). So we call these sequencing problems. So Performance measures such as “Max flow time”, “Max # of tardy jobs” are irrelevant. Use Bracket to indicate position in sequence – [5]=2 – d[1] = ? 2010년 가을 16/29 Single MC – Independent Jobs 스케줄 이론 2. Introduction Theorem 2.1 With above assumptions, schedules without inserted idle time constitute a dominant set. Proof – Obvious but we need a formal proof. – (Hint) Consider two schedules S and S'. Theorem 2.2 With above assumptions, schedules without preemption constitute a dominant set. Proof 2010년 가을 17/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates The relationship between FLOW TIME and INVENTORY Are they proportional? Let us prove it in two cases (Static and Dynamic) a. Static Case – Let J(t) = # of Jobs in System at time t, V(t) = Inventory Level at time t n Fmax t[ j ] t j j 1 J 1 [nt[1] (n 1)t[2] t[ n ] ] A / Fmax Fmax th ( [i] means the i job in sequence. So [1]=2 , ...) ( A : sum of the areas of rectangles) 1 F [ F[1] F[2] F[ n ] ] A / n n – By rearranging for A, we get – 즉 minimizing 2010년 가을 F A Fmax J nF F J is directly proportional to minimizing 18/29 Fmax n J Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates 2010년 가을 19/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates b. Dynamic Case (Say, Job arrival is r1 r2 ... rn ) – Case 1. Assume C C ... C . 즉 Jobs are completed in arriving order. 1 2 n – Also assume everything completed by C . n – Now consider 2010년 가을 20/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates – So Cn 0 n n j 1 j 1 J (t ) (C j rj ) Fj F J j Cn Now, F 2010년 가을 Fj n n F rn Fn n rn Fn F r ( ) J( j n n Fn ) n n r J n n J (Mean Job Arrival Time) 21/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates – Case 2. Jobs are Completed In Random Order – Now consider the case when jobs may finish in random. 2010년 가을 22/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates Let Yj (t)= Fraction of Fj still remaining after time t. Cn 0 n J (t ) dt (1 Y j (Cn )) Fj j 1 n n j 1 j 1 F j Y j ( Cn ) F j Then J Cn Fj Y j (Cn ) Fj n Now Cn rn Fn n n Y j (Cn ) Fj rn Fn J( ) F n n n 0 Again, 2010년 가을 J (t )dt F J (Mean Job Arrival Time) in steady state. 23/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates c. Discussion ① F J (Mean Job Arrival Time) Under steady state assumption (Rate of completion Rate of arrival) above holds : 1) Static or Dynamic 2) No matter how we schedule ( FIFO or Whatever ) 3) Even with weighted inventory costs ② Also think F j C j rj C j d j d j r j L j a j F j C j rj C j rj t j t j W j t j Above implies F J (MeanJobArrivalTime) L a W t in Steady State A schedule which minimizes MFT also minimizes inventory (i.e. # of jobs in system), mean lateness, mean waiting time. 2010년 가을 24/29 Single MC – Independent Jobs 스케줄 이론 Proof Proof of Theorem 2.1 Let C j (C j ) Completion time of job j in schedule S (S) B Set of Jobs finished before time a tB Time when all jobs in B are finished Then j , such that C j t B , C j = C j and j , such that C j > t B , C j C j For regular measures, Z Z 2010년 가을 25/29 Single MC – Independent Jobs 스케줄 이론 Proof Proof of Theorem 2.2 Consider a schedule S in which job i started at t B . But before it is completed, job i is preempted by job j at time t C . (For simplicity, assume job j is not peempted.) At some later time t D , work resumes on job i and it is ultimately completed. S S' 2010년 가을 26/29 Single MC – Independent Jobs 스케줄 이론 Proof Consider S' where position of job j is interchanged with the first positon of job i. Simply C j C j and nothing changes other than that. Z Z for regular measure Repeating the same for all jobs intervening job i, any preemption can be eliminated without increasing any regular measure. It is Sufficient to consider only schedules without preemption. 2010년 가을 27/29 Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates Theorem 2.3 SPT (Shortest Processing Time) sequencing minimizes Mean Flow Time. Proof n n n n ① F 1 1 1 1 Fi (Wi ti ) Wi ti n i 1 n i 1 n i 1 n i 1 n In the last equation, the second term is a constant. So minizing Wi is the same as choosing a i 1 sequence to make Wi 's as small as possible. But W(1) 0, W(2) t(1) , W(3) t(1) t(2) , ... So SPT minimzes Mean Flow Time. ② Graphical Proof of Baker's. ③ 1 n j 1 n F t n j 1 k 1 [k ] (n j 1)t n [ j] j 1 n (n-j-1) is a non-increasing sequence. So to make (n j 1)t j 1 should be in non-decreasing sequence. ④ Formal (?) 2010년 가을 S and S' .. 28/29 [ j] as small as possible, t[ j ] Single MC – Independent Jobs 스케줄 이론 3. Problems Without Due Dates (Discussion) SPT minimizes: Mean Completion Time ( f j C j - rj ), Mean Waiting Time (W j C j - rj - t j ), Max Waiting Time, .... LPT Maximizes: ... Theorem 2.4 WSPT(Weighted SPT) sequencing minimizes WMFT (Weighted Mean Flow Time). WSPT is t[1] w[1] t[2] w[2] ....... t[ n] w[ n ] Proof : Follow the reasoning of ④. 2010년 가을 29/29