Dynamic Combinatorial Optimization David Adjiashvili, Sandro Bosio , - - PowerPoint PPT Presentation

dynamic combinatorial optimization
SMART_READER_LITE
LIVE PREVIEW

Dynamic Combinatorial Optimization David Adjiashvili, Sandro Bosio , - - PowerPoint PPT Presentation

Dynamic Combinatorial Optimization David Adjiashvili, Sandro Bosio , Robert Weismantel Institute for Operations Research (IFOR), ETH Zurich 16th Combinatorial Optimization Workshop January 8-13, 2012, Aussois Table of Contents Introduction: the


slide-1
SLIDE 1

Dynamic Combinatorial Optimization

David Adjiashvili, Sandro Bosio, Robert Weismantel

Institute for Operations Research (IFOR), ETH Zurich

16th Combinatorial Optimization Workshop January 8-13, 2012, Aussois

slide-2
SLIDE 2

Table of Contents

1

Introduction: the Integer Knapsack

2

Dynamic Combinatorial Optimization

3

Complexity and Approximability

4

Conclusions and Future Work

2 / 17

slide-3
SLIDE 3

Integer Knapsack

In the Integer Knapsack (IK), we are given: a knaspack with capacity T ∈ N a groundset A of object types a load coefficient τa ∈ N for each object type a ∈ A a gain coefficient pa ∈ R for each object type a ∈ A

Introduction: the Integer Knapsack 3 / 17

slide-4
SLIDE 4

Integer Knapsack

In the Integer Knapsack (IK), we are given: a knaspack with capacity T ∈ N a groundset A of object types a load coefficient τa ∈ N for each object type a ∈ A a gain coefficient pa ∈ R for each object type a ∈ A

p1 = 2 p2 = 3 p3 = 6 Knapsack (T = 9) Groundset A Introduction: the Integer Knapsack 3 / 17

slide-5
SLIDE 5

Integer Knapsack

In the Integer Knapsack (IK), we are given: a knaspack with capacity T ∈ N a groundset A of object types a load coefficient τa ∈ N for each object type a ∈ A a gain coefficient pa ∈ R for each object type a ∈ A The goal is to find an integer vector x such that the load capacity is satisfied:

a∈A τaxa T

the gain

a∈A paxa is maximized

p1 = 2 p2 = 3 p3 = 6 Knapsack (T = 9) Groundset A Introduction: the Integer Knapsack 3 / 17

slide-6
SLIDE 6

Integer Knapsack

In the Integer Knapsack (IK), we are given: a knaspack with capacity T ∈ N a groundset A of object types a load coefficient τa ∈ N for each object type a ∈ A a gain coefficient pa ∈ R for each object type a ∈ A The goal is to find an integer vector x such that the load capacity is satisfied:

a∈A τaxa T

the gain

a∈A paxa is maximized

p1 = 2 p2 = 3 p3 = 6 Knapsack (T = 9) Groundset A 6 8 9 10 Introduction: the Integer Knapsack 3 / 17

slide-7
SLIDE 7

Integer Knapsack

In the Integer Knapsack (IK), we are given: a knaspack with capacity T ∈ N a groundset A of object types a load coefficient τa ∈ N for each object type a ∈ A a gain coefficient pa ∈ R for each object type a ∈ A The goal is to find an integer vector x such that the load capacity is satisfied:

a∈A τaxa T

the gain

a∈A paxa is maximized

Classical results for the IK: is weakly NP-Hard [Ibarra and Kim, 1975] admits a pseudopolynomial-time algorithm admits an FPTAS [Lawler, 1977]

p1 = 2 p2 = 3 p3 = 6 Knapsack (T = 9) Groundset A 6 8 9 10 Introduction: the Integer Knapsack 3 / 17

slide-8
SLIDE 8

Integer Knapsack

In the Integer Knapsack (IK), we are given: a knaspack with capacity T ∈ N a groundset A of object types a load coefficient τa ∈ N for each object type a ∈ A a gain coefficient pa ∈ R for each object type a ∈ A The goal is to find an integer vector x such that the load capacity is satisfied:

a∈A τaxa T

the gain

a∈A paxa is maximized

Classical results for the IK: is weakly NP-Hard [Ibarra and Kim, 1975] admits a pseudopolynomial-time algorithm admits an FPTAS [Lawler, 1977]

p1 = 2 p2 = 3 p3 = 6 Knapsack (T = 9) Groundset A 6 8 9 10

We are interested in the greedy approximation algorithms for IK

Introduction: the Integer Knapsack 3 / 17

slide-9
SLIDE 9

Greedy algorithms for IK

Density-based heuristic:

1 choose the element type a ∈ A with maximal density pa

τa

2 use a as many times as possible: xa =

  • T

τa

  • Guarantee 2. Iterating doesn’t improve the guarantee.

Introduction: the Integer Knapsack 4 / 17

slide-10
SLIDE 10

Greedy algorithms for IK

Density-based heuristic:

1 choose the element type a ∈ A with maximal density pa

τa

2 use a as many times as possible: xa =

  • T

τa

  • Guarantee 2. Iterating doesn’t improve the guarantee.

Total-value heuristic:

1 choose the element type a ∈ A with β-maximal total value pa

  • T

τa

  • 2 use a as many times as possible: xa =
  • T

τa

  • Guarantee 1.691 [Kohli, Krishnamurti, 1992]. Iterating doesn’t improve the guarantee.

Introduction: the Integer Knapsack 4 / 17

slide-11
SLIDE 11

Greedy algorithms for IK

Density-based heuristic:

1 choose the element type a ∈ A with maximal density pa

τa

2 use a as many times as possible: xa =

  • T

τa

  • Guarantee 2. Iterating doesn’t improve the guarantee.

Total-value heuristic:

1 choose the element type a ∈ A with β-maximal total value pa

  • T

τa

  • 2 use a as many times as possible: xa =
  • T

τa

  • Guarantee 1.691 [Kohli, Krishnamurti, 1992]. Iterating doesn’t improve the guarantee.

Combined heuristic:

1 run both (iterated) heuristics 2 choose the best solution

Guarantee 1.5 [Kohli, Krishnamurti, 1995].

Introduction: the Integer Knapsack 4 / 17

slide-12
SLIDE 12

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Introduction: the Integer Knapsack

5 / 17

slide-13
SLIDE 13

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

Introduction: the Integer Knapsack 5 / 17

slide-14
SLIDE 14

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • T

τa

xa

  • a∈A

τaxa T xa ∈ N+ a ∈ A

Introduction: the Integer Knapsack 5 / 17

slide-15
SLIDE 15

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • T

τa

xa

  • a∈A

τaxa T xa ∈ N+ a ∈ A τa 0 a ∈ A

Introduction: the Integer Knapsack 5 / 17

slide-16
SLIDE 16

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A

Introduction: the Integer Knapsack 5 / 17

slide-17
SLIDE 17

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

Introduction: the Integer Knapsack 5 / 17

slide-18
SLIDE 18

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

Introduction: the Integer Knapsack 5 / 17

slide-19
SLIDE 19

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

α =

Introduction: the Integer Knapsack 5 / 17

slide-20
SLIDE 20

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

α = 1

1 2 Introduction: the Integer Knapsack 5 / 17

slide-21
SLIDE 21

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

α = 1 + 1

2

1 2 1 3 Introduction: the Integer Knapsack 5 / 17

slide-22
SLIDE 22

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

α = 1 + 1

2 + 1 6

1 2 1 3 1 7 Introduction: the Integer Knapsack 5 / 17

slide-23
SLIDE 23

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

α = 1 + 1

2 + 1 6 + 1 42

1 2 1 3 1 7 1 43 Introduction: the Integer Knapsack 5 / 17

slide-24
SLIDE 24

Analysis of the total-value heuristic (sketch)

Let g be the element with highest total value. For every a ∈ A: pa T τa

  • pg

T τg

  • = ALG

and hence pa ALG

  • T

τa

  • Let OPT =

a pax∗

  • a. Guarantee:

OPT ALG

  • a∈A

1

  • T

τa

x∗

a

  • max
  • a∈A

1

  • 1

τa

xa

  • a∈A

τaxa 1 xa ∈ N+ a ∈ A τa 0 a ∈ A = max

  • k1

1 k yk = α

  • kq

1 k + 1 yk < 1 q 1 yk ∈ N+ k 1

τa 1

  • 1

τa

  • 1

1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9

α = 1 + 1

2 + 1 6 + 1 42 + · · · ≈ 1.691030

1 2 1 3 1 7 1 43 Introduction: the Integer Knapsack 5 / 17

slide-25
SLIDE 25

The constant α

The exact value is α =

  • i1

1 si , where (si)i1 is Sylvester’s sequence: s1 = 1, sn+1 = sn(sn + 1)

Introduction: the Integer Knapsack 6 / 17

slide-26
SLIDE 26

The constant α

The exact value is α =

  • i1

1 si , where (si)i1 is Sylvester’s sequence: s1 = 1, sn+1 = sn(sn + 1) The sequence has doubly-exponential growth. First values: s1 s2 s3 s4 s5 s6 s7 1 2 6 42 1806 3263442 10650056950806 . . .

Introduction: the Integer Knapsack 6 / 17

slide-27
SLIDE 27

The constant α

The exact value is α =

  • i1

1 si , where (si)i1 is Sylvester’s sequence: s1 = 1, sn+1 = sn(sn + 1) The sequence has doubly-exponential growth. First values: s1 s2 s3 s4 s5 s6 s7 1 2 6 42 1806 3263442 10650056950806 . . . Some appearances of α: Harmonic algorithm for Bin Packing [Lee, Lee, 1985]

Introduction: the Integer Knapsack 6 / 17

slide-28
SLIDE 28

The constant α

The exact value is α =

  • i1

1 si , where (si)i1 is Sylvester’s sequence: s1 = 1, sn+1 = sn(sn + 1) The sequence has doubly-exponential growth. First values: s1 s2 s3 s4 s5 s6 s7 1 2 6 42 1806 3263442 10650056950806 . . . Some appearances of α: Harmonic algorithm for Bin Packing [Lee, Lee, 1985] Total-value heuristic for Integer Knapsack [Kohli, Krishnamurti, 1992]

Introduction: the Integer Knapsack 6 / 17

slide-29
SLIDE 29

The constant α

The exact value is α =

  • i1

1 si , where (si)i1 is Sylvester’s sequence: s1 = 1, sn+1 = sn(sn + 1) The sequence has doubly-exponential growth. First values: s1 s2 s3 s4 s5 s6 s7 1 2 6 42 1806 3263442 10650056950806 . . . Some appearances of α: Harmonic algorithm for Bin Packing [Lee, Lee, 1985] Total-value heuristic for Integer Knapsack [Kohli, Krishnamurti, 1992] Asymptotic worst-case ratio between the optimal 2D shelf strip packing and the 2D strip packing [Csirik, Woeginger, 1997]

Introduction: the Integer Knapsack 6 / 17

slide-30
SLIDE 30

The constant α

The exact value is α =

  • i1

1 si , where (si)i1 is Sylvester’s sequence: s1 = 1, sn+1 = sn(sn + 1) The sequence has doubly-exponential growth. First values: s1 s2 s3 s4 s5 s6 s7 1 2 6 42 1806 3263442 10650056950806 . . . Some appearances of α: Harmonic algorithm for Bin Packing [Lee, Lee, 1985] Total-value heuristic for Integer Knapsack [Kohli, Krishnamurti, 1992] Asymptotic worst-case ratio between the optimal 2D shelf strip packing and the 2D strip packing [Csirik, Woeginger, 1997] Asymptotic guarantee for the 2D Bin Packing [Caprara, 2002]

Introduction: the Integer Knapsack 6 / 17

slide-31
SLIDE 31

From IK to Dynamic Combinatorial Optimization

Let’s each τa be a “duration”, and 1 . . . T be the “time window” available. We can see a solution as a binary matrix, with xat = 1 if item a occupies position t.

1 2 3 . . . T

Dynamic Combinatorial Optimization 7 / 17

slide-32
SLIDE 32

From IK to Dynamic Combinatorial Optimization

Let’s each τa be a “duration”, and 1 . . . T be the “time window” available. We can see a solution as a binary matrix, with xat = 1 if item a occupies position t.

1 2 3 . . . T 1 1 1 1 1 1 1 1

Dynamic Combinatorial Optimization 7 / 17

slide-33
SLIDE 33

From IK to Dynamic Combinatorial Optimization

Let’s each τa be a “duration”, and 1 . . . T be the “time window” available. We can see a solution as a binary matrix, with xat = 1 if item a occupies position t.

1 2 3 . . . T 1 1 1 1 1 1 1

Dynamic Combinatorial Optimization 7 / 17

slide-34
SLIDE 34

From IK to Dynamic Combinatorial Optimization

Let’s each τa be a “duration”, and 1 . . . T be the “time window” available. We can see a solution as a binary matrix, with xat = 1 if item a occupies position t.

1 2 3 . . . T 1 1 1 1 1 1 1 1 1

Dynamic Combinatorial Optimization 7 / 17

slide-35
SLIDE 35

From IK to Dynamic Combinatorial Optimization

Let’s each τa be a “duration”, and 1 . . . T be the “time window” available. We can see a solution as a binary matrix, with xat = 1 if item a occupies position t.

1 2 3 . . . T 1 1 1 1 1 1 1 1 1

All such matrices can be described by two properties:

1 In each a-th row xa·, consecutive ones come in multiples of τa (duration property) 2 In each t-th column x·t, there is at most one nonzero entry Dynamic Combinatorial Optimization 7 / 17

slide-36
SLIDE 36

From IK to Dynamic Combinatorial Optimization

Let’s each τa be a “duration”, and 1 . . . T be the “time window” available. We can see a solution as a binary matrix, with xat = 1 if item a occupies position t.

1 2 3 . . . T 1 1 1 1 1 1 1 1 1

All such matrices can be described by two properties:

1 In each a-th row xa·, consecutive ones come in multiples of τa (duration property) 2 In each t-th column x·t, there is at most one nonzero entry

We generalize property 2 by asking x·t ∈ X, for more general combinatorial structures X.

Dynamic Combinatorial Optimization 7 / 17

slide-37
SLIDE 37

Dynamic Combinatorial Optimization (DCO)

Formal definition: given in input a time window W = {1, . . . , T} a groundset A a duration coefficient τa for each item a ∈ A a gain coefficient pa for each item a ∈ A

Dynamic Combinatorial Optimization 8 / 17

slide-38
SLIDE 38

Dynamic Combinatorial Optimization (DCO)

Formal definition: given in input a time window W = {1, . . . , T} a groundset A a duration coefficient τa for each item a ∈ A a gain coefficient pa for each item a ∈ A a combinatorial structure X ⊆ {0, 1}A such that

Dynamic Combinatorial Optimization 8 / 17

slide-39
SLIDE 39

Dynamic Combinatorial Optimization (DCO)

Formal definition: given in input a time window W = {1, . . . , T} a groundset A a duration coefficient τa for each item a ∈ A a gain coefficient pa for each item a ∈ A a combinatorial structure X ⊆ {0, 1}A such that find a solution matrix xat ∈ {0, 1}A×T such that

1 each row xa· respects the duration property 2 x·t ∈ X for every t ∈ W Dynamic Combinatorial Optimization 8 / 17

slide-40
SLIDE 40

Dynamic Combinatorial Optimization (DCO)

Formal definition: given in input a time window W = {1, . . . , T} a groundset A a duration coefficient τa for each item a ∈ A a gain coefficient pa for each item a ∈ A a combinatorial structure X ⊆ {0, 1}A such that find a solution matrix xat ∈ {0, 1}A×T such that

1 each row xa· respects the duration property 2 x·t ∈ X for every t ∈ W

and that maximizes the total gain

  • a

pa τa

  • t

xat

Dynamic Combinatorial Optimization 8 / 17

slide-41
SLIDE 41

Dynamic Combinatorial Optimization (DCO)

Formal definition: given in input a time window W = {1, . . . , T} a groundset A a duration coefficient τa for each item a ∈ A a gain coefficient pa for each item a ∈ A a combinatorial structure X ⊆ {0, 1}A such that find a solution matrix xat ∈ {0, 1}A×T such that

1 each row xa· respects the duration property 2 x·t ∈ X for every t ∈ W

and that maximizes the total gain

  • a

pa τa

  • t

xat The rank-1 uniform matroid X = {x ∈ {0, 1}A :

a xa 1} gives the Integer Knapsack

Dynamic Combinatorial Optimization 8 / 17

slide-42
SLIDE 42

Example: Dynamic Matchings

the groundset A is the edge set of a graph G = (V, A) X is the set of all matchings of G

1 2 3 4 5 p = 3 p = 1 p = 2 p = 4 p = 3 p = 6 e1 e1 e2 e2 e3 e3 e4 e4 e5 e5 e6 e6

Dynamic Combinatorial Optimization 9 / 17

slide-43
SLIDE 43

Example: Dynamic Matchings

the groundset A is the edge set of a graph G = (V, A) X is the set of all matchings of G

1 2 3 4 5 p = 3 p = 1 p = 2 p = 4 p = 3 p = 6 e1 e1 e2 e2 e3 e3 e4 e4 e5 e5 e6 e6 1 1 1 1 1 1 1 1 1 1

Solution value: 3 + 3 + 1 + 2 = 9

Dynamic Combinatorial Optimization 9 / 17

slide-44
SLIDE 44

Example: Dynamic Matchings

the groundset A is the edge set of a graph G = (V, A) X is the set of all matchings of G

1 2 3 4 5 p = 3 p = 1 p = 2 p = 4 p = 3 p = 6 e1 e1 e2 e2 e3 e3 e4 e4 e5 e5 e6 e6 1 1 1 1 1 1 1 1 1 1

Solution value: 3 + 6 + 1 = 10

Dynamic Combinatorial Optimization 9 / 17

slide-45
SLIDE 45

Example: Dynamic Matchings

the groundset A is the edge set of a graph G = (V, A) X is the set of all matchings of G

1 2 3 4 5 p = 3 p = 1 p = 2 p = 4 p = 3 p = 6 e1 e1 e2 e2 e3 e3 e4 e4 e5 e5 e6 e6 1 1 1 1 1 1 1

Solution value: 3 + 4 + 4 = 11

Dynamic Combinatorial Optimization 9 / 17

slide-46
SLIDE 46

Example: Dynamic Matchings

the groundset A is the edge set of a graph G = (V, A) X is the set of all matchings of G

1 2 3 4 5 p = 3 p = 1 p = 2 p = 4 p = 3 p = 6 e1 e1 e2 e2 e3 e3 e4 e4 e5 e5 e6 e6 1 1 1 1 1 1 1 1 1 1

Solution value: 3 + 4 + 3 + 2 = 12 (opt)

Dynamic Combinatorial Optimization 9 / 17

slide-47
SLIDE 47

Example: Dynamic Matchings

the groundset A is the edge set of a graph G = (V, A) X is the set of all matchings of G

1 2 3 4 5 p = 3 p = 1 p = 2 p = 4 p = 3 p = 6 e1 e1 e2 e2 e3 e3 e4 e4 e5 e5 e6 e6 1 1 1 1 1 1 1 1 1 1

Interpretation: Cooperative Scheduling schedule jobs (edges) that require the cooperation of two machines (nodes)

Dynamic Combinatorial Optimization 9 / 17

slide-48
SLIDE 48

Remarks and complexity results (I)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization

Complexity and Approximability 10 / 17

slide-49
SLIDE 49

Remarks and complexity results (I)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization In general: OPT(XD) is certainly at least as hard as OPT(X) For T = 1, XD = X If all durations divide T, OPT(XD) ≡ OPT(X) Corollary: for T 2, OPT(XD) ≡ OPT(X)

Complexity and Approximability 10 / 17

slide-50
SLIDE 50

Remarks and complexity results (I)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization In general: OPT(XD) is certainly at least as hard as OPT(X) For T = 1, XD = X If all durations divide T, OPT(XD) ≡ OPT(X) Corollary: for T 2, OPT(XD) ≡ OPT(X) Assuming OPT(X) ∈ P: XD = ∅ is NP-complete, even if T = 3, d [bipartite perfect matchings]

Complexity and Approximability 10 / 17

slide-51
SLIDE 51

Remarks and complexity results (I)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization In general: OPT(XD) is certainly at least as hard as OPT(X) For T = 1, XD = X If all durations divide T, OPT(XD) ≡ OPT(X) Corollary: for T 2, OPT(XD) ≡ OPT(X) Assuming OPT(X) ∈ P: XD = ∅ is NP-complete, even if T = 3, d [bipartite perfect matchings] Assuming OPT(X) ∈ P and X is an Independence System: OPT(XD) is APX-hard, even if T = 3 [bipartite matchings]

Complexity and Approximability 10 / 17

slide-52
SLIDE 52

Greedy algorithms for Dynamic Combinatorial Optimization (I)

Assumptions: a) X is an Independence System b) there is a β-apx for linear optimization over X

Complexity and Approximability 11 / 17

slide-53
SLIDE 53

Greedy algorithms for Dynamic Combinatorial Optimization (I)

Assumptions: a) X is an Independence System b) there is a β-apx for linear optimization over X

Density-based heuristic

1 choose the element type a ∈ A with maximal density pa

τa

2 set xa =

  • T

τa

  • Guarantee 2

Complexity and Approximability 11 / 17

slide-54
SLIDE 54

Greedy algorithms for Dynamic Combinatorial Optimization (I)

Assumptions: a) X is an Independence System b) there is a β-apx for linear optimization over X

Density-based heuristic

1 choose the element type a ∈ A with maximal density pa

τa

2 set xa =

  • T

τa

  • Guarantee 2

Density-based heuristic revisited: Repeat Best

1 choose the static solution S ∈ X with β-maximal total density

  • a∈S

pa τa

2 set xat = 1 for t = 1 . . . τa

  • T

τa

  • Guarantee 2β

Complexity and Approximability 11 / 17

slide-55
SLIDE 55

Greedy algorithms for Dynamic Combinatorial Optimization (II)

Assumptions: a) X is an Independence System b) there is a β-apx for linear optimization over X

Complexity and Approximability 12 / 17

slide-56
SLIDE 56

Greedy algorithms for Dynamic Combinatorial Optimization (II)

Assumptions: a) X is an Independence System b) there is a β-apx for linear optimization over X

Total-value heuristic

1 choose the element type a ∈ A with maximal total value pa

  • T

τa

  • 2 set xa =
  • T

τa

  • Guarantee α [Kohli, Krishnamurti, 1992]

Complexity and Approximability 12 / 17

slide-57
SLIDE 57

Greedy algorithms for Dynamic Combinatorial Optimization (II)

Assumptions: a) X is an Independence System b) there is a β-apx for linear optimization over X

Total-value heuristic

1 choose the element type a ∈ A with maximal total value pa

  • T

τa

  • 2 set xa =
  • T

τa

  • Guarantee α [Kohli, Krishnamurti, 1992]

Total-value heuristic revisited: Best Repeat

1 choose the static solution S ∈ X with maximal repeat value

  • a∈S

pa T τa

  • 2 set xat = 1 for t = 1 . . . τa
  • T

τa

  • Guarantee αβ [Adjiashvili, B., Weismantel, 2011]

Complexity and Approximability 12 / 17

slide-58
SLIDE 58

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1 = α

Complexity and Approximability 13 / 17

slide-59
SLIDE 59

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W Transformed bound: δT = max

T

  • k=1

1 kyk

  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • yk 1 q ∈ W

yk 0 k ∈ W KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1 = α

Complexity and Approximability 13 / 17

slide-60
SLIDE 60

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W Transformed bound: δT = max

T

  • k=1

1 kyk

  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • yk 1 q ∈ W

yk 0 k ∈ W Primal: δ∞ max

  • k1

1 kyk

  • kq

1 q q + 1 k + 1

  • yk 1 q 1
  • k1

1 k + 1yk 1 yk 0 k 1 KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1 = α

Complexity and Approximability 13 / 17

slide-61
SLIDE 61

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W Transformed bound: δT = max

T

  • k=1

1 kyk

  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • yk 1 q ∈ W

yk 0 k ∈ W Primal: δ∞ max

  • k1

1 kyk

  • kq

1 q q + 1 k + 1

  • yk 1 q 1
  • k1

1 k + 1yk 1 yk 0 k 1 KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1

  • = α

Complexity and Approximability 13 / 17

slide-62
SLIDE 62

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W Transformed bound: δT = max

T

  • k=1

1 kyk

  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • yk 1 q ∈ W

yk 0 k ∈ W Primal: δ∞ max

  • k1

1 kyk

  • kq

1 q q + 1 k + 1

  • yk 1 q 1
  • k1

1 k + 1yk 1 yk 0 k 1 KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1 Dual: δ′

min w +

  • q1

vq 1 k + 1w +

  • qk

1 q q + 1 k + 1

  • vq 1

k k 1 vq 0 q 1 w 0

  • = α

Complexity and Approximability 13 / 17

slide-63
SLIDE 63

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W Transformed bound: δT = max

T

  • k=1

1 kyk

  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • yk 1 q ∈ W

yk 0 k ∈ W Primal: δ∞ max

  • k1

1 kyk

  • kq

1 q q + 1 k + 1

  • yk 1 q 1
  • k1

1 k + 1yk 1 yk 0 k 1 KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1 Dual: δ′

min w +

  • q1

vq 1 k + 1w +

  • qk

1 q q + 1 k + 1

  • vq 1

k k 1 vq 0 q 1 w 0

  • = α

Complexity and Approximability 13 / 17

slide-64
SLIDE 64

Analysis of Best Repeat (sketch)

Combinatorial bound: δT OPT ALG

  • max δ
  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • δkzk 1 q ∈ W
  • k∈W

zk = 1 zk 0 k ∈ W Transformed bound: δT = max

T

  • k=1

1 kyk

  • kq

1 q

  • T

k + 1 q + 1 T + q T

  • yk 1 q ∈ W

yk 0 k ∈ W Primal: δ∞ max

  • k1

1 kyk

  • kq

1 q q + 1 k + 1

  • yk 1 q 1
  • k1

1 k + 1yk 1 yk 0 k 1 KK bound: α max

  • k1

1 kyk

  • kq

1 k + 1yk < 1 q 1 yk ∈ N+ k 1 Dual: δ′

min w +

  • q1

vq 1 k + 1w +

  • qk

1 q q + 1 k + 1

  • vq 1

k k 1 vq 0 q 1 w 0

  • α

= α

Complexity and Approximability 13 / 17

slide-65
SLIDE 65

Remarks and complexity results (II)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization In general: OPT(XD) is certainly at least as hard as OPT(X) For T = 1, XD = X If all durations divide T, OPT(XD) ≡ OPT(X) Corollary: for T 2, OPT(XD) ≡ OPT(X) Assuming OPT(X) ∈ P: XD = ∅ is NP-complete, even if T = 3, d [bipartite perfect matchings] Assuming OPT(X) ∈ P and X is an Independence System: OPT(XD) is APX-hard, even if T = 3 [bipartite matchings]

Complexity and Approximability 14 / 17

slide-66
SLIDE 66

Remarks and complexity results (II)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization In general: OPT(XD) is certainly at least as hard as OPT(X) For T = 1, XD = X If all durations divide T, OPT(XD) ≡ OPT(X) Corollary: for T 2, OPT(XD) ≡ OPT(X) Assuming OPT(X) ∈ P: XD = ∅ is NP-complete, even if T = 3, d [bipartite perfect matchings] Assuming OPT(X) ∈ P and X is an Independence System: OPT(XD) is APX-hard, even if T = 3 [bipartite matchings] If OPT(X) admits a β-apx, then OPT(XD) admits an αβ-apx

Complexity and Approximability 14 / 17

slide-67
SLIDE 67

Remarks and complexity results (II)

Let: X : static combinatorial structure OPT(X) : static

  • ptimization

XD : dynamic combinatorial structure OPT(XD): dynamic optimization Assuming OPT(X) ∈ P and X is an Independence System: OPT(XD) is APX-hard, even if T = 3 [bipartite matchings] If OPT(X) admits a β-apx, then OPT(XD) admits an αβ-apx Corollaries: d-dimensional orthogonal IK admits an αd−1(1 + ǫ)-apx, for any ǫ > 0 Cooperative scheduling for two-machine jobs admits an α-apx Cooperative scheduling for k-machine jobs admits an (α k+1

2

+ ǫ)-apx, for any ǫ > 0

Complexity and Approximability 14 / 17

slide-68
SLIDE 68

Conclusions and Future Work

Conclusions: Framework for temporal extension of combinatorial problems Includes integer knapsack as a special case Generalization of a classical result to a wider class of problems Future and ongoing work: Narrow the gap between approximability and inapproximability Dynamic matroid optimization (strong hardness? FPTAS? PTAS?) Study the binary/bounded case (includes Binary Knapsack) Combined analysis? Thanks for your attention!

Conclusions and Future Work 15 / 17

slide-69
SLIDE 69

Primal and dual solutions

Sylvester’s series: (si) = (1, 2, 6, 42, 1806, 3263442, . . . ) Primal solution: yk =

  • 1

if k = si for some i 1

  • therwise

y1 = 1, y2 = 1, y6 = 1, y42 = 1, . . . Dual solution: w = 1 vq =

  • si−1

si(si−1+1)

if q = si − 1 for some i 2

  • therwise

v1 = 1

4 , v5 = 5 18 , v41 = 41 294 , . . .

Conclusions and Future Work 16 / 17

slide-70
SLIDE 70

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Conclusions and Future Work 17 / 17

slide-71
SLIDE 71

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak Conclusions and Future Work 17 / 17

slide-72
SLIDE 72

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t Conclusions and Future Work 17 / 17

slide-73
SLIDE 73

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t

For each j q: ALG

  • a∈Mj

pa T τa

  • kq
  • a∈Mk

j

pak

Conclusions and Future Work 17 / 17

slide-74
SLIDE 74

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t

Sum for j q: qALG

  • jq
  • a∈Mj

pa T τa

  • jq
  • kq
  • a∈Mk

j

pak

Conclusions and Future Work 17 / 17

slide-75
SLIDE 75

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t

Sum for j q: qALG

  • jq
  • a∈Mj

pa T τa

  • jq
  • kq
  • a∈Mk

j

pak =

  • kq

k

  • jq
  • a∈Mk

j

pa

Conclusions and Future Work 17 / 17

slide-76
SLIDE 76

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t

Sum for j q: qALG

  • jq
  • a∈Mj

pa T τa

  • jq
  • kq
  • a∈Mk

j

pak =

  • kq

k

  • jq
  • a∈Mk

j

pa Each a ∈ Sk

i has τa Γk, and the distance between Mi and Mi+1 is T q+1 .

Therefore, each a ∈ Sk

i appears in at least

Γk(q+1)−1

T

  • static solutions Mj:

Conclusions and Future Work 17 / 17

slide-77
SLIDE 77

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t

Sum for j q: qALG

  • jq
  • a∈Mj

pa T τa

  • jq
  • kq
  • a∈Mk

j

pak =

  • kq

k

  • jq
  • a∈Mk

j

pa Each a ∈ Sk

i has τa Γk, and the distance between Mi and Mi+1 is T q+1 .

Therefore, each a ∈ Sk

i appears in at least

Γk(q+1)−1

T

  • static solutions Mj:
  • jq
  • a∈Mk

j

pa Γk(q + 1) − 1 T

i∈W

w(Sk

i ). Let zk =

  • i∈W w(Sk

i ) OP T Conclusions and Future Work 17 / 17

slide-78
SLIDE 78

Derivation of the combinatorial bound

Let Ak =

  • a ∈ A :

T k+1 < τa T k

  • . For a ∈ Ak,
  • T

τa

  • = k and τa
  • T

k+1

  • + 1 = Γk

Let OP T =

  • t∈W

w(St), and Sk

i = Si ∩ Ak

Fix q ∈ W . Let Mj = St for t =

  • j

T q+1

  • and j = 1 . . . q. Let M k

j = Sk t

Sum for j q: qALG

  • jq
  • a∈Mj

pa T τa

  • jq
  • kq
  • a∈Mk

j

pak =

  • kq

k

  • jq
  • a∈Mk

j

pa Each a ∈ Sk

i has τa Γk, and the distance between Mi and Mi+1 is T q+1 .

Therefore, each a ∈ Sk

i appears in at least

Γk(q+1)−1

T

  • static solutions Mj:
  • jq
  • a∈Mk

j

pa Γk(q + 1) − 1 T

i∈W

w(Sk

i ). Let zk =

  • i∈W w(Sk

i ) OP T

  • kq

k q Γk(q + 1) − 1 T

  • zk ALG

OP T and

  • k∈W

zk = 1

Conclusions and Future Work 17 / 17