approximation schemes for machine scheduling with
play

Approximation schemes for machine scheduling with resource - PowerPoint PPT Presentation

Approximation schemes for machine scheduling with resource (in-)dependent processing times Klaus Jansen, Marten Maack, Malin Rau April 4, 2016 Scheduling parallel Tasks procesing time processors Scheduling parallel Tasks procesing time 6 7


  1. Approximation schemes for machine scheduling with resource (in-)dependent processing times Klaus Jansen, Marten Maack, Malin Rau April 4, 2016

  2. Scheduling parallel Tasks procesing time processors

  3. Scheduling parallel Tasks procesing time 6 7 4 8 5 2 3 1 processors

  4. Scheduling parallel Tasks 3 procesing time 8 8 6 7 7 5 6 4 8 4 5 2 2 3 1 1 processors

  5. Scheduling on identical machines procesing time identical machines

  6. Scheduling on identical machines procesing time 6 4 2 7 5 8 3 1 identical machines

  7. Scheduling on identical machines procesing time 5 8 7 3 6 6 2 4 4 2 7 5 8 3 1 1 identical machines

  8. Scheduling on identical machines with one extra resource procesing time identical resource machines

  9. Scheduling on identical machines with one extra resource 8 procesing time 6 3 4 5 7 2 1 identical resource machines

  10. Scheduling on identical machines with one extra resource 3 3 8 procesing time 8 8 6 7 5 7 5 3 4 1 1 6 6 5 4 4 7 2 2 2 1 identical resource machines

  11. 5 8 7 3 6 2 4 1 identical machines

  12. 3 5 8 8 8 7 3 7 5 6 4 6 2 4 2 1 1 identical parallel tasks machines

  13. 3 3 3 5 8 8 8 8 8 7 7 5 7 5 3 7 5 6 1 1 4 6 6 6 2 4 4 4 2 2 2 1 1 identical parallel tasks additional resource machines

  14. Problem Definition Given: ◮ m identical machines, ◮ one resource of size R ∈ N , ◮ a set of jobs J = { 1 , . . . , n } . Each job has ◮ a processing time p j ∈ Q and ◮ a resource amount r j ∈ N with r j ≤ R .

  15. Problem Definition Given: ◮ m identical machines, ◮ one resource of size R ∈ N , ◮ a set of jobs J = { 1 , . . . , n } . Each job has ◮ a processing time p j ∈ Q and ◮ a resource amount r j ∈ N with r j ≤ R . Goal: Find a schedule τ : J → Q ≥ 0 with minimum makespan, such that: � ∀ t ≥ 0 r j ≤ R , j : t ∈ [ τ ( j ) ,τ ( j )+ p j ) � ∀ t ≥ 0 1 ≤ m . j : t ∈ [ τ ( j ) ,τ ( j )+ p j )

  16. Known Results ◮ There is no approximation algorithm with absolute ratio < 1 . 5, unless P = NP (Drozdowski 1995) ◮ The list scheduling algorithm has absolute approximation ratio 3 − 3 / m (Garey and Graham 1975) ◮ There is a polynomial time approximation algorithm with absolute ratio 2 + ε (Niemeier, Wiese 2013) ◮ For the case of unit processing times there is an AFPTAS with A ( I ) ≤ ( 1 + ε ) OPT + O ( min { ( 1 /ε 2 ) ( 1 /ε ) , n log ( R ) /ε + 1 /ε 3 } ) (Epstein and Levin 2010)

  17. New Result Theorem There is an asymptotic FPTAS for the resource constrained scheduling problem with A ( I ) ≤ ( 1 + ε ) OPT ( I ) + O ( 1 /ε 2 ) p max , where p max is the maximal processing time in the set of jobs.

  18. Algorithm Overview 1. Simplify the instance and find an approximative preemptive schedule via a configuration LP . 2. Generalize the configurations by considering windows for narrow jobs. 3. Transform the preemptive schedule into a solution of a LP with generalized configurations. 4. Reduce the number of generalized configurations and windows in the LP solution. 5. Generate an integral solution.

  19. Simplifying ◮ Partition J into wide jobs J W and narrow jobs J N . ◮ Reduce the number of different wide resource ε R amounts to 1 /ε 2 . ◮ Glue together wide jobs with same resource amount. ◮ Discard widest group ◮ Simplified instance: I sup .

  20. Definition Configuration A configuration C is a multiset of jobs with: ◮ � j C ( j ) r j ≤ R , ◮ � j C ( j ) ≤ m . C ( j ) ∈ N says how often the job j is contained in C . Let C be the set of all configurations.

  21. Definition Configuration A configuration C is a multiset of jobs with: ◮ � j C ( j ) r j ≤ R , ◮ � j C ( j ) ≤ m . C ( j ) ∈ N says how often the job j is contained in C . Let C be the set of all configurations. m = 4 x C 2 � x C 1 × R

  22. Definition Configuration A configuration C is a multiset of jobs with: ◮ � j C ( j ) r j ≤ R , ◮ � j C ( j ) ≤ m . C ( j ) ∈ N says how often the job j is contained in C . Let C be the set of all configurations. m = 4 x C 2 � x C 1 × R

  23. Preemptive Schedule � min x C (1) C ∈C � C ( j ) x C ≥ p j ∀ j ∈ J sup (2) C ∈C x C ≥ 0 ∀ C ∈ C (3)

  24. Preemptive Schedule � min x C (1) C ∈C � C ( j ) x C ≥ p j ∀ j ∈ J sup (2) C ∈C x C ≥ 0 ∀ C ∈ C (3) ◮ Can be solved approximately by max-min-resource-sharing. ◮ An approximate solution with at most |J sup | + 1 non zero components can be computed in polynomial time.

  25. Generalized Configuration ◮ A window w = ( w r , w m ) is a pair, where ◮ w r denotes its resource amount and ◮ w m its number of machines. ◮ A generalized configuration ( C , w ) is a pair consisting of ◮ a configuration of wide jobs C and ◮ a window w where ◮ � W C ( j ) r j + w r ≤ R and j ∈J sup ◮ � W C ( j ) + w m ≤ m . j ∈J sup

  26. Generalized Preemptive Solution x ( C ′ x C 1 w 1 1 2 3 4 5 1 2 3 1 , w 1 ) x C 2 x ( C ′ w 1 7 �→ 7 1 6 4 8 1 6 2 , w 1 ) x ( C ′ x C 3 w 2 7 2 3 4 5 7 2 3 3 , w 2 ) 8 4 5 4 5 w 1 w 2 y 4 , w 1 = x C 1 + x C 2 y 5 , w 1 = x C 1 y 5 , w 2 = x C 3 y 8 , w 1 = x C 2 y 4 , w 2 = x C 3

  27. Generalized Preemptive Solution x ( C ′ x C 1 w 1 1 2 3 4 5 1 2 3 1 , w 1 ) x C 2 x ( C ′ w 1 7 �→ 7 1 6 4 8 1 6 2 , w 1 ) x ( C ′ x C 3 w 2 7 2 3 4 5 7 2 3 3 , w 2 ) 8 4 5 4 5 w 1 w 2 y 4 , w 1 = x C 1 + x C 2 y 5 , w 1 = x C 1 y 5 , w 2 = x C 3 y 8 , w 1 = x C 2 y 4 , w 2 = x C 3

  28. Generalized Preemptive Solution x ( C ′ x C 1 w 1 1 2 3 4 5 1 2 3 1 , w 1 ) x C 2 x ( C ′ w 1 7 �→ 7 1 6 4 8 1 6 2 , w 1 ) x ( C ′ x C 3 w 2 7 2 3 4 5 7 2 3 3 , w 2 ) 8 4 5 4 5 w 1 w 2 y 4 , w 1 = x C 1 + x C 2 y 5 , w 1 = x C 1 y 5 , w 2 = x C 3 y 8 , w 1 = x C 2 y 4 , w 2 = x C 3

  29. Generalized Preemptive Solution x ( C ′ x C 1 w 1 1 2 3 4 5 1 2 3 1 , w 1 ) x C 2 x ( C ′ w 1 7 �→ 7 1 6 4 8 1 6 2 , w 1 ) x ( C ′ x C 3 w 2 7 2 3 4 5 7 2 3 3 , w 2 ) 8 4 5 4 5 w 1 w 2 y 4 , w 1 = x C 1 + x C 2 y 5 , w 1 = x C 1 y 5 , w 2 = x C 3 y 8 , w 1 = x C 2 y 4 , w 2 = x C 3

  30. Generalized Configuration LP ∀ j ∈ J sup � � C ( j ) x ( C , w ) ≥ p j , (4) W C ∈C W w ∈W w ≤ w ( C ) � ∀ j ∈ J sup y j , w ≥ p j , (5) N w ∈W � � w m x ( C , w ) ≥ y j , w , ∀ w ∈ W (6) C ∈C W j ∈J N w ( C ) ≥ w � � x ( C , w ) ≥ r j y j , w , ∀ w ∈ W w r (7) C ∈C W j ∈J N w ( C ) ≥ w x ( C , w ) ≥ 0 , ∀ C ∈ C W , ∀ w ∈ W (8) ∀ w ∈ W , ∀ j ∈ J sup y j , w ≥ 0 , (9) N

  31. Generalized Configuration LP ∀ j ∈ J sup � � C ( j ) x ( C , w ) ≥ p j , (4) W C ∈C W w ∈W w ≤ w ( C ) � ∀ j ∈ J sup y j , w ≥ p j , (5) N w ∈W � � w m x ( C , w ) ≥ y j , w , ∀ w ∈ W (6) C ∈C W j ∈J N w ( C ) ≥ w � � x ( C , w ) ≥ r j y j , w , ∀ w ∈ W w r (7) C ∈C W j ∈J N w ( C ) ≥ w x ( C , w ) ≥ 0 , ∀ C ∈ C W , ∀ w ∈ W (8) ∀ w ∈ W , ∀ j ∈ J sup y j , w ≥ 0 , (9) N ◮ Basic solution has |J sup W | + |J sup | + 2 |W| non zero components. N ◮ At most |J sup W | + 2 |W| configurations and fractional jobs. ◮ |J sup W | ∈ O ( 1 /ε 2 ) , |W| ∈ O ( min {|J sup | , |C W |} )

  32. Reduce Number Of Windows ε 2 P pre Stack of generalized configu- rations with same number of wide jobs P pre : length of preemptive schedule

  33. Reduce Number Of Windows ε 2 P pre Stack of generalized configu- rations with same number of wide jobs P pre : length of preemptive schedule

  34. Reduce Number Of Windows ε 2 P pre Stack of generalized configu- rations with same number of wide jobs P pre : length of preemptive schedule

  35. Properties ◮ 1 /ε different stacks of generalized configurations. ◮ ε 2 P pre additional processing time per stack ◮ ε P pre additional total processing time ◮ Number of windows ≤ 1 /ε 2 + 2. ◮ Basic solution has O ( 1 /ε 2 ) configurations and O ( 1 /ε 2 ) fractional small jobs

  36. Integral Schedule → → p max → →

  37. Integral Schedule → → p max → →

  38. Integral Schedule → → p max → →

  39. Integral Schedule → → p max → →

  40. Integral Schedule → → p max → →

  41. Integral Schedule → → p max → →

  42. Integral Schedule w m � w ( C ) ≥ w x ( C , w ) ≥ � j ∈J N y j , w C ∈C W w r � w ( C ) ≥ w x ( C , w ) ≥ � j ∈J N r j y j , w C ∈C W p max h ( w )

  43. Integral Schedule w m � w ( C ) ≥ w x ( C , w ) ≥ � j ∈J N y j , w C ∈C W w r � w ( C ) ≥ w x ( C , w ) ≥ � j ∈J N r j y j , w C ∈C W p max h ( w )

  44. Integral Schedule w m � w ( C ) ≥ w x ( C , w ) ≥ � j ∈J N y j , w C ∈C W w r � w ( C ) ≥ w x ( C , w ) ≥ � j ∈J N r j y j , w C ∈C W p max h ( w )

Recommend


More recommend