on the exact solution of a large class of parallel
play

On the exact solution of a large class of parallel machine - PowerPoint PPT Presentation

On the exact solution of a large class of parallel machine scheduling problems Teobaldo Bulhes 2 Ruslan Sadykov 1 Eduardo Uchoa 2 Anand Subramanian 3 1 2 3 Inria Bordeaux and Univ. Federal Univ. Federal Univ. Bordeaux, France Fluminense,


  1. On the exact solution of a large class of parallel machine scheduling problems Teobaldo Bulhões 2 Ruslan Sadykov 1 Eduardo Uchoa 2 Anand Subramanian 3 1 2 3 Inria Bordeaux and Univ. Federal Univ. Federal Univ. Bordeaux, France Fluminense, Brazil da Paraíba, Brazil MISTA 2017 Kuala-Lumpur, December 7 1 / 23

  2. Contents Introduction Set covering formulation and Branch-and-Price Subset-row cuts Computational results 2 / 23

  3. The scheduling problem we want to solve ◮ Set M of unrelated machines ◮ n jobs, each job j ∈ J = { 1 , . . . , n } has ◮ processing time p k j , dependent on the machine ◮ release and due dates r j and d j ◮ earliness and tardiness unitary penalties α j and β j ◮ Given completion time C j of job j ∈ J in the schedule, its cost is α j E j + β j T j = α j · max { 0 , d j − C j } + β j · max { 0 , C j − d j } ◮ There is a sequence-dependent setup time s k i , j if job j is scheduled immediately after job i on machine k . ◮ The objective is to minimize the total earliness/tardiness cost . ◮ Problem’s notation: R | r j , s k ij | � j α j E j + β j T j 3 / 23

  4. Existing exact approaches in the literature for scheduling on parallel machines with sum criteria ij | � α j E j + β j T j Only MIP formulations, up to 5 machines R | s k and 12 jobs. R || � T j A branch-and-bound [Shim and Kim, 2007] , up to 5 machines and 20 jobs. R || � w j T j A branch-and-bound [Liaw et al., 2003] , up to 4 machines and 18 jobs. ij | � E j + T j A MIP and a Benders decomposition Q | s k [Balakrishnan et al., 1999] , up to 20 jobs. P | s f | � T j A branch-and-bound [Schaller, 2014] , up to 3 machines and 14 jobs. P | r j | � w j T j A branch-and-bound [Jouglet and Savourey, 2011] , up to 5 machines and 20 jobs P || � w j T j A Branch-Cut-and-Price [Pessoa et al., 2010] , up to 4 machines and 100 jobs. P || � w j C j A Branch-and-Price [Kowalczyk and Leus, 2016] , up to 12 machines and 150 jobs 4 / 23

  5. Contents Introduction Set covering formulation and Branch-and-Price Subset-row cuts Computational results 5 / 23

  6. Set covering (master) formulation ◮ Ω k — set of pseudo-schedules for machine k ∈ M ◮ a ω j — number of times that job j appears in pseudo-schedule ω . ◮ c ω — cost of pseudo-schedule ω . ◮ Binary variable λ ω k = 1 if and only if pseudo-schedule ω is assigned to machine k ∈ M � � min c ω λ s ω ∈ Ω u k ∈ M � � a ω j λ ω = 1 , ∀ j ∈ J , ω ∈ Ω u k ∈ M � λ ω ≤ 1 , ∀ k ∈ M , ω ∈ Ω k λ ω ∈ { 0 , 1 } , ∀ ω ∈ Ω k , ∀ k ∈ M . 6 / 23

  7. Pricing subproblem for machine k ∈ M Extended graph G k Arc ( i , j , t ) — setup time between job i and j is started at time t , and job j is started at time t + s k ij Variable x t ij — arc ( i , j , t ) in the solution or not x 5 33 j = 3 x 1 x 6 23 32 j = 2 x 0 x 1 x 1 02 02 21 j = 1 x 7 11 s d J = { 1 , 2 , 3 } , T = 8 , p 1 = 4, p 2 = 1, p 3 = 3, s ij = 1 , ∀ i , j ∈ J Pseudo-schedules 0-2-3-2-0 and 0-2-1-0 are shown 7 / 23

  8. Pricing subproblem: dynamic programming Given dual solution π of the restricted master problem, the pricing subproblem is � t + s ij + p j � � a ω � · x t ¯ min c ω = c ω − j π j = c − π j j ij ω ∈ Ω k j ∈ J i , j ∈ J , i � = j t ∈ T i.e. the shortest path problem in the extended graph. Dynamic program Shortest path problem in an acyclic graph can be solved by a dynamic program with states: S ( j , t ) — best partial schedule with the last job j completing at time t 8 / 23

  9. Fixing of arc variables by reduced costs ◮ Z RM — optimal value of the current restricted master. ◮ Z k sub — minimum reduced cost for machine k ∈ M . k ∈ M Z k ◮ Lagrangian lower bound: Z RM + � sub . ◮ Z inc — value of the best known integer solution. ◮ Z k sub ( a ) — current minimum reduced cost of a path containing arc a ∈ G k . ◮ Arc a can be removed (it cannot take part of any improving solution) if Z k � Z k ′ sub ( a ) + sub + Z RM ≥ Z inc . k ′ ∈ M \{ k } ◮ A good heuristic is very important! 9 / 23

  10. Computing Z k sub ( a ) [Ibaraki and Nakamura, 1994] How to compute the shortest path passing through arc a = ( i , j , t ) ∈ G k ? s d 1. F ( i , t ) — the value of the shortest path from s to node ( i , t ) 2. B ( k , t + s k ij + p k j ) — the value of the shortest path from d to node ( j , t + s k ij + p k j ) t + s k ij + p k 3. Z k sub ( a = ( i , j , k )) = F ( i , t ) + B ( j , t + s k ij + p k j j ) + c . j Ibaraki, T. and Nakamura, Y. (1994). A dynamic programming method for single machine scheduling. European Journal of Operational Research , 76(1):72 – 82. 10 / 23

  11. Dual price smoothing stabilization ◮ π — current dual solution of the restricted master ◮ π ∗ — dual solution giving the best Lagrangian bound so far ◮ We solve the pricing problem using the dual vector π ′ = ( 1 − α ) · π + α · π ∗ , where α ∈ [ 0 , 1 ) . ◮ Parameter α is automatically adjusted in each column generation iteration using the sub-gradient of the Lagrangian function at π ′ [Pessoa et al., 2017] . Pessoa, A., Sadykov, R., Uchoa, E., and Vanderbeck, F. (2017). Automation and combination of linear-programming based stabilization techniques in column generation. INFORMS Journal on Computing , (Forthcoming). 11 / 23

  12. Branching ◮ Branching on aggregated arc variables � x tk ij ∈ { 0 , 1 } , 0 ≤ t ≤ T i.e. job i immediately precedes job j on machine k or not ◮ Multi-phase strong branching is used ◮ Branching history is kept is used through pseudo-costs 12 / 23

  13. Contents Introduction Set covering formulation and Branch-and-Price Subset-row cuts Computational results 13 / 23

  14. Subset-Row Cuts (SRCs) [Jepsen et al., 2008] Given C ⊆ J and a multiplier ρ , the ( C , ρ ) -Subset Row Cut is: � � � � � a ω ρ λ ω ≤ ⌊ ρ |C|⌋ j k ∈ M ω ∈ Ω k i ∈C Special case of Chvátal-Gomory rank-1 cuts obtained by rounding of |C| set-packing constraints in the master Here we use only 1-row and 3-row cuts with ρ = 1 2 . We separate them by enumeration. Mads Jepsen and Bjorn Petersen and Simon Spoorendonk and David Pisinger (2008). Subset-Row Inequalities Applied to the Vehicle-Routing Problem with Time Windows. Operations Research , 56(2):497–511. 14 / 23

  15. Example of a violated 3-row cut 3 1 value = 0 . 5 3 value = 0 . 5 2 1 2 value = 0 . 5 ◮ C = { 1 , 2 , 3 } ◮ coefficient of these three columns in the cut is 1 ◮ lhs = 1 . 5, rhs = 1, violation is 0 . 5. 15 / 23

  16. Impact on the pricing problem Given dual value ν γ < 0 for each active subset row cut γ ∈ Γ , defined for subset C γ of jobs, modified reduced cost of pseudo-schedule ω ∈ Ω k is :       1   � t + s ij + p j � � � � · x t x t ¯ c ω = c − π j ij − 2 ·  · ν γ   ij j    i , j ∈ J , t ∈ T γ ∈ Γ j ∈ C η , i ∈ J , i � = j , t ∈ T An additional binary value for each cut γ ∈ Γ in dynamic programming states: S ( j , t , . . . , θ γ , . . . ) , where θ γ is the parity of the number of appearances of jobs in C γ ( = 0 / 1 if pair/odd) Instead of the dynamic program, we use a labeling algorithm c L , j L , t L , { θ L � ¯ � with labels L = γ } γ ∈ Γ and the dominance rule j L = j L ′ , t L = t L ′ , c L − � c L ′ ¯ ν γ ≤ ¯ γ ∈ Γ: θ L γ >θ L ′ γ 16 / 23

  17. The labeling algorithm 17 / 23

  18. The labeling algorithm 17 / 23

  19. The labeling algorithm 17 / 23

  20. The labeling algorithm 17 / 23

  21. The labeling algorithm 17 / 23

  22. Limited memory cuts [Pecin et al., 2017] ◮ For each active cut γ ∈ Γ , define a memory M γ : set of jobs which “remember” value θ γ = 1. ◮ If j L �∈ M γ , then θ L γ ← 0. ◮ Much less values θ L γ = 1 ⇒ stronger domination ◮ Memory M γ of a cut γ ∈ Γ is calculated during separation as the smallest memory which does not decrease the cut violation of the current fractional solution ◮ Limited memory cuts are weaker than full memory cuts, however the labeling algorithm is much faster Pecin, D., Pessoa, A., Poggi, M., and Uchoa, E. (2017). Improved branch-cut-and-price for capacitated vehicle routing. Mathematical Programming Computation , 9(1):61–100. 18 / 23

  23. Contents Introduction Set covering formulation and Branch-and-Price Subset-row cuts Computational results 19 / 23

  24. ij | � α j E j + β j T j , small setup times Results for R | r j , s k Initial heuristic and instances by [Kramer and Subramanian, 2017] Size With cuts BKS Root Gap Root Total Improv. n m #Solved #Nodes #New Gap (%) (%) Time Time (%) 40 2 60/60 0.01 0.00 4m 4m 1.1 0.12 22 60 2 60/60 0.32 0.00 23m 28m 3.5 0.33 46 60 3 60/60 0.86 0.00 16m 35m 10.6 0.48 47 80 2 60/60 0.23 0.00 1h12m 1h37m 5.7 0.14 41 80 4 48/60 1.69 0.52 37m 4h33m 92.0 0.26 50 Size Without cuts Root Gap Root Total n m #Solved #Nodes Gap (%) (%) Time Time 40 2 60/60 1.72 0.00 3m 6m 44.8 60 2 59/60 1.99 0.05 13m 1h55m 412.8 60 3 60/60 2.23 0.00 10m 1h13m 361.5 Kramer, A. and Subramanian, A. (2017). A unified heuristic and an annotated bibliography for a large class of earliness-tardiness scheduling problems. Journal of Scheduling , accepted. 20 / 23

Recommend


More recommend