Approximation schemes for machine scheduling with resource - - PowerPoint PPT Presentation

approximation schemes for machine scheduling with
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Approximation schemes for machine scheduling with resource (in-)dependent processing times

Klaus Jansen, Marten Maack, Malin Rau April 4, 2016

slide-2
SLIDE 2

Scheduling parallel Tasks

processors procesing time

slide-3
SLIDE 3

Scheduling parallel Tasks

processors procesing time 1 2 3 4 5 6 7 8

slide-4
SLIDE 4

Scheduling parallel Tasks

processors procesing time 1 2 3 4 5 6 7 8 2 5 8 7 3 1 4 6 8

slide-5
SLIDE 5

Scheduling on identical machines

procesing time identical machines

slide-6
SLIDE 6

Scheduling on identical machines

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

slide-7
SLIDE 7

Scheduling on identical machines

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

slide-8
SLIDE 8

Scheduling on identical machines with one extra resource

procesing time identical machines resource

slide-9
SLIDE 9

Scheduling on identical machines with one extra resource

procesing time identical machines resource 1 2 3 4 5 6 7 8

slide-10
SLIDE 10

Scheduling on identical machines with one extra resource

procesing time identical machines resource 1 2 3 4 5 6 7 8 2 5 7 8 3 1 6 4 2 1 7 3 4 5 6 8

slide-11
SLIDE 11

1 2 3 5 4 7 6 8 identical machines

slide-12
SLIDE 12

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

slide-13
SLIDE 13

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

slide-14
SLIDE 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 pj ∈ Q and ◮ a resource amount rj ∈ N with rj ≤ R.

slide-15
SLIDE 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 pj ∈ Q and ◮ a resource amount rj ∈ N with rj ≤ R.

Goal: Find a schedule τ : J → Q≥0 with minimum makespan, such that: ∀t ≥ 0

  • j:t∈[τ(j),τ(j)+pj)

rj ≤ R, ∀t ≥ 0

  • j:t∈[τ(j),τ(j)+pj)

1 ≤ m.

slide-16
SLIDE 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)

slide-17
SLIDE 17

New Result

Theorem

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

slide-18
SLIDE 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.
slide-19
SLIDE 19

Simplifying

◮ Partition J into wide jobs JW

and narrow jobs JN.

◮ Reduce the number of

different wide resource amounts to 1/ε2.

◮ Glue together wide jobs with

same resource amount.

◮ Discard widest group ◮ Simplified instance: Isup.

εR

slide-20
SLIDE 20

Definition Configuration

A configuration C is a multiset of jobs with:

◮ j C(j)rj ≤ 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.

slide-21
SLIDE 21

Definition Configuration

A configuration C is a multiset of jobs with:

◮ j C(j)rj ≤ 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

  • ×

R xC1 xC2

slide-22
SLIDE 22

Definition Configuration

A configuration C is a multiset of jobs with:

◮ j C(j)rj ≤ 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

  • ×

R xC1 xC2

slide-23
SLIDE 23

Preemptive Schedule

min

  • C∈C

xC (1)

  • C∈C

C(j)xC ≥ pj ∀j ∈ J sup (2) xC ≥ 0 ∀C ∈ C (3)

slide-24
SLIDE 24

Preemptive Schedule

min

  • C∈C

xC (1)

  • C∈C

C(j)xC ≥ pj ∀j ∈ J sup (2) xC ≥ 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.

slide-25
SLIDE 25

Generalized Configuration

◮ A window w = (wr, wm) is a pair, where

◮ wr denotes its resource amount and ◮ wm 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

j∈J sup

W C(j)rj + wr ≤ R and ◮

j∈J sup

W C(j) + wm ≤ m.

slide-26
SLIDE 26

Generalized Preemptive Solution

1 2 3 4 5 1 6 7 4 8 7 2 3 4 5 xC3 xC2 xC1 → 1 2 3 w1 1 6 7 w1 7 2 3 w2 x(C′

3,w2)

x(C′

2,w1)

x(C′

1,w1)

w1 4 5 8 y4,w1 = xC1 + xC2 y5,w1 = xC1 y8,w1 = xC2 w2 4 5 y5,w2 = xC3 y4,w2 = xC3

slide-27
SLIDE 27

Generalized Preemptive Solution

1 2 3 4 5 1 6 7 4 8 7 2 3 4 5 xC3 xC2 xC1 → 1 2 3 w1 1 6 7 w1 7 2 3 w2 x(C′

3,w2)

x(C′

2,w1)

x(C′

1,w1)

w1 4 5 8 y4,w1 = xC1 + xC2 y5,w1 = xC1 y8,w1 = xC2 w2 4 5 y5,w2 = xC3 y4,w2 = xC3

slide-28
SLIDE 28

Generalized Preemptive Solution

1 2 3 4 5 1 6 7 4 8 7 2 3 4 5 xC3 xC2 xC1 → 1 2 3 w1 1 6 7 w1 7 2 3 w2 x(C′

3,w2)

x(C′

2,w1)

x(C′

1,w1)

w1 4 5 8 y4,w1 = xC1 + xC2 y5,w1 = xC1 y8,w1 = xC2 w2 4 5 y5,w2 = xC3 y4,w2 = xC3

slide-29
SLIDE 29

Generalized Preemptive Solution

1 2 3 4 5 1 6 7 4 8 7 2 3 4 5 xC3 xC2 xC1 → 1 2 3 w1 1 6 7 w1 7 2 3 w2 x(C′

3,w2)

x(C′

2,w1)

x(C′

1,w1)

w1 4 5 8 y4,w1 = xC1 + xC2 y5,w1 = xC1 y8,w1 = xC2 w2 4 5 y5,w2 = xC3 y4,w2 = xC3

slide-30
SLIDE 30

Generalized Configuration LP

  • C∈CW
  • w∈W

w≤w(C)

C(j)x(C,w) ≥ pj, ∀j ∈ J sup

W

(4)

  • w∈W

yj,w ≥ pj, ∀j ∈ J sup

N

(5) wm

  • C∈CW

w(C)≥w

x(C,w) ≥

  • j∈JN

yj,w, ∀w ∈ W (6) wr

  • C∈CW

w(C)≥w

x(C,w) ≥

  • j∈JN

rjyj,w, ∀w ∈ W (7) x(C,w) ≥ 0, ∀C ∈ CW, ∀w ∈ W (8) yj,w ≥ 0, ∀w ∈ W, ∀j ∈ J sup

N

(9)

slide-31
SLIDE 31

Generalized Configuration LP

  • C∈CW
  • w∈W

w≤w(C)

C(j)x(C,w) ≥ pj, ∀j ∈ J sup

W

(4)

  • w∈W

yj,w ≥ pj, ∀j ∈ J sup

N

(5) wm

  • C∈CW

w(C)≥w

x(C,w) ≥

  • j∈JN

yj,w, ∀w ∈ W (6) wr

  • C∈CW

w(C)≥w

x(C,w) ≥

  • j∈JN

rjyj,w, ∀w ∈ W (7) x(C,w) ≥ 0, ∀C ∈ CW, ∀w ∈ W (8) yj,w ≥ 0, ∀w ∈ W, ∀j ∈ J sup

N

(9)

◮ Basic solution has |J sup W | + |J sup N

| + 2|W| non zero components.

◮ At most |J sup W | + 2|W| configurations and fractional jobs. ◮ |J sup W | ∈ O(1/ε2), |W| ∈ O(min{|J sup|, |CW|})

slide-32
SLIDE 32

Reduce Number Of Windows

ε2Ppre Stack of generalized configu- rations with same number of wide jobs Ppre: length of preemptive schedule

slide-33
SLIDE 33

Reduce Number Of Windows

ε2Ppre Stack of generalized configu- rations with same number of wide jobs Ppre: length of preemptive schedule

slide-34
SLIDE 34

Reduce Number Of Windows

ε2Ppre Stack of generalized configu- rations with same number of wide jobs Ppre: length of preemptive schedule

slide-35
SLIDE 35

Properties

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

small jobs

slide-36
SLIDE 36

Integral Schedule

pmax → → → →

slide-37
SLIDE 37

Integral Schedule

pmax → → → →

slide-38
SLIDE 38

Integral Schedule

pmax → → → →

slide-39
SLIDE 39

Integral Schedule

pmax → → → →

slide-40
SLIDE 40

Integral Schedule

pmax → → → →

slide-41
SLIDE 41

Integral Schedule

pmax → → → →

slide-42
SLIDE 42

Integral Schedule

h(w) pmax wm

  • C∈CW

w(C)≥w x(C,w) ≥

j∈JN yj,w

wr

  • C∈CW

w(C)≥w x(C,w) ≥

j∈JN rjyj,w

slide-43
SLIDE 43

Integral Schedule

h(w) pmax wm

  • C∈CW

w(C)≥w x(C,w) ≥

j∈JN yj,w

wr

  • C∈CW

w(C)≥w x(C,w) ≥

j∈JN rjyj,w

slide-44
SLIDE 44

Integral Schedule

h(w) pmax wm

  • C∈CW

w(C)≥w x(C,w) ≥

j∈JN yj,w

wr

  • C∈CW

w(C)≥w x(C,w) ≥

j∈JN rjyj,w

slide-45
SLIDE 45

Scheduling With Resource Dependent Processing Times

Given:

◮ m identical machines, ◮ one resource of size R ∈ N, ◮ a set of jobs J = {1, . . . , n}. Each job has a processing time

function πj : {0, . . . , R} → Q≥0 ∪ {∞}. Goal: Find a resource allocation ρ : J → {0, . . . , R} and schedule τ : J → Q≥0 with minimal makespan, such that: ∀t ≥ 0

  • j:t∈[τ(j),τ(j)+πj(ρ(j)))

ρ(j) ≤ R, ∀t ≥ 0

  • j:t∈[τ(j),τ(j)+πj(ρ(j)))

1 ≤ m.

slide-46
SLIDE 46

Known Results

◮ There is a 3.5 + ǫ approximation algorithm for the scheduling

problem on identical machines (Kellerer 2008).

◮ There is a 3 + ǫ approximation algorithm for the scheduling

problem where each job is pre-assigned to one machine (Grigoriev, Uetz 2009).

◮ There is a 3.75 + ǫ approximation algorithm for the scheduling

problem on unrelated machines (Grigoriev et al. 2007).

slide-47
SLIDE 47

New Result

Theorem

There is an asymptotic FPTAS for the scheduling problem with resource dependent processing times with A(I) ≤ (1 + ε)OPT(I) + O(1/ε2)πmax. The running time of the algorithm is polynomially bounded in n,R, and 1/ε.

slide-48
SLIDE 48

Overview

◮ Compute preemptive schedule, where jobs are allowed to have

several resource amounts

◮ Use the preemptive schedule to define an instance for the fixed

resource variant

◮ Apply the steps of the fixed resource algorithm until a solution for

the generalised LP is found.

◮ Use this solution to define unique resource allotment for almost

all the original jobs

◮ Define a new solution to the LP using the unique resource

allotment

◮ Define the integral schedule ◮ Schedule the jobs with no unique resource allotment on top

slide-49
SLIDE 49

Future Work

Resource independent processing times:

◮ Is there an approximation algorithm A with A(I) < (2 + ε)OPT(I)? ◮ Can we reduce the additive term to pmax and how far would this

increase the running time of the algorithm? Resource dependent processing times:

◮ Can the additional factor πmax be reduced? ◮ Can we improve on the result for unrelated machines?