a compact mip formulation for single machine scheduling
play

A compact MIP formulation for single machine scheduling to minimize - PowerPoint PPT Presentation

A compact MIP formulation for single machine scheduling to minimize a piecewise linear objective function Philippe Baptiste Ruslan Sadykov LIX, Ecole Polytechnique, France Optimeo08 Philippe Baptiste, Ruslan Sadykov A compact MIP


  1. A compact MIP formulation for single machine scheduling to minimize a piecewise linear objective function Philippe Baptiste Ruslan Sadykov LIX, Ecole Polytechnique, France Optimeo’08 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  2. The problem PWL (I) Data 1 machine, m intervals e 0 e 1 e 2 e 3 I u = [ e u − 1 , e u ], u ∈ M ; for each job j ∈ N = { 1 , . . . , n } r j - release date, p j - processing time, ¯ 0 d j - deadline, t ¯ such that { r j , ¯ r j d j d j } j ∈ M ⊆ { e u } u ∈ M . p j Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  3. The problem PWL (I) Data 1 machine, m intervals e 0 e 1 e 2 e 3 I u = [ e u − 1 , e u ], u ∈ M ; for each job j ∈ N = { 1 , . . . , n } r j - release date, p j - processing time, ¯ 0 d j - deadline, t ¯ such that { r j , ¯ r j d j d j } j ∈ M ⊆ { e u } u ∈ M . p j Constraints the machine can process only one job at a time, preemtion is not allowed, Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  4. The problem PWL (II) Objective e 0 e 1 e 2 e 3 ∀ j ∈ N , the cost function F j ( C j ) is linear in each interval : if e u − 1 < C j ≤ e u then F j ( C j ) = f u j + w u j · ( C j − e u − 1 ) . 0 t ¯ r j d j p j Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  5. The problem PWL (II) Objective ∀ j ∈ N , the cost function F j ( C j ) e 0 e 1 e 2 e 3 is linear in each interval : F 2 ( C 2 ) if e u − 1 < C j ≤ e u then F 3 ( C 3 ) F j ( C j ) = f u j + w u j · ( C j − e u − 1 ) . F 1 ( C 1 ) 0 t We minimize the total cost : ¯ r j d j � F j ( C j ) j ∈ N . Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  6. Generality of the problem PWL All classical non-preemptive scheduling problems can be formulated as the problem PWL, for example : Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  7. Generality of the problem PWL All classical non-preemptive scheduling problems can be formulated as the problem PWL, for example : Earliness-tardiness scheduling t 0 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  8. Generality of the problem PWL All classical non-preemptive scheduling problems can be formulated as the problem PWL, for example : Earliness-tardiness scheduling t 0 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  9. Generality of the problem PWL All classical non-preemptive scheduling problems can be formulated as the problem PWL, for example : Earliness-tardiness scheduling Maximizing weighted number of on-time jobs t 0 t 0 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  10. Generality of the problem PWL All classical non-preemptive scheduling problems can be formulated as the problem PWL, for example : Earliness-tardiness scheduling Maximizing weighted number of on-time jobs t 0 0 t Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  11. Time-indexed formulation Data is integer → Time-indexed formulation [Sousa, Wolsey, 92] X jt ∈ { 0 , 1 } , X jt = 1 iff job j is started at time moment t T � min F j ( t + p j ) X jt t =0 d j − p j � s . t . X jt = 1 , j ∈ N , t = r j t � � X js ≤ 1 , t ∈ [0 , T ) , j ∈ N s = t − p j +1 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  12. Time-indexed formulation Data is integer → Time-indexed formulation [Sousa, Wolsey, 92] X jt ∈ { 0 , 1 } , X jt = 1 iff job j is started at time moment t p j T � min F j ( t + p j ) X jt t =0 d j − p j � s . t . X jt = 1 , j ∈ N , t = r j t � � X js ≤ 1 , t ∈ [0 , T ) , t t 0 j ∈ N s = t − p j +1 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  13. Interval decomposition The cost functions are linear in an interval. Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  14. Interval decomposition The cost functions are linear in an interval. Property. If all jobs in a set Q are started and completed in the same interval [ e u − 1 , e u ], it is optimal to process them according to the Smith rule : w u i → j if w u j i > . p i p j Idle time between jobs with positive and negative weights w u t j e u − 1 Q e u Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  15. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  16. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u Variables constraints Y u − 1 ≤ Y u j , X u − 1 ≤ X u j , Y u j ≤ X u ∀ u ∈ M , ∀ j ∈ N , j j j X u − 1 ≤ Y u ∀ u ∈ M , ∀ j ∈ NS u , j j Y u j ≤ X u − 1 ∀ u ∈ M , ∀ j ∈ NB u , j X u ∀ j ∈ N , r j = e u , j = 0 ∀ j ∈ N , ¯ Y u d j = e u , j = 1 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  17. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u Knapsack constraints u � p j Y u � ∀ u ∈ M , j + W v ≤ e u j ∈ N v =1 u � � p j X u ∀ u ∈ M , j + W v ≥ e u v =1 j ∈ N Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  18. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u Additional constraints I � ( X u i − Y u ∀ u ∈ M , i ) ≤ 1 i ∈ N t e u Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  19. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u NS u , NB u — set of “small” jobs and “big” jobs for I u Additional constraints II � ( X u − 1 − Y u i ) + Y u j − X u − 1 ∀ u ∈ M , ∀ j ∈ NS u , ≤ 1 i j i ∈ NB u t e u − 1 e u Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  20. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u Theorem Vector ( X , Y , W ) satisfies the constraints presented ⇔ the corresponding schedule is feasible Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  21. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u Objective � � | w u j | F u � � t ∈ I u { F j ( t ) } · ( Y u j − Y u − 1 min j + min ) j j ∈ N u ∈ M j ∈ N u ∈ M e u − 1 e u I u min t ∈ I u F 1 ( t ) min t ∈ I u F 2 ( t ) t F u F u W u 1 2 Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  22. Interval-indexed formulation Variables X u j , Y u j ∈ { 0 , 1 } — whether job j is started (completed) before e u W u — length of the idle time in I u F u j — difference between the completion time and the border of I u NS u , NB u — set of “small” jobs and “big” jobs for I u Objective � � | w u j | F u � � t ∈ I u { F j ( t ) } · ( Y u j − Y u − 1 min j + min ) j j ∈ N u ∈ M j ∈ N u ∈ M F u ∀ u ∈ M , ∀ j ∈ N , j ≥ α X + β Y + γ W Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  23. Tightening interval-indexed formulation Redundant constraintes. Example : p j ≤ e u − e v : C j ≤ e v ⇒ C j ≤ e u ( Y u j ≥ X u j ) Appropriate partition of the time horizon Known order of jobs completed but not necessarily started in the same interval. Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

  24. Tightening interval-indexed formulation Redundant constraintes. Example : p j ≤ e u − e v : C j ≤ e v ⇒ C j ≤ e u ( Y u j ≥ X u j ) Appropriate partition of the time horizon Known order of jobs completed but not necessarily started in the same interval. Philippe Baptiste, Ruslan Sadykov A compact MIP formulation for single machine scheduling

Recommend


More recommend