• Aucun résultat trouvé

MCDAandMOO,HansurLesse,September17–212007 Lecture4:MultiobjectiveCombinatorialOptimizationMatthiasEhrgott InternationalDoctoralSchoolAlgorithmicDecisionTheory:MCDAandMOO

N/A
N/A
Protected

Academic year: 2021

Partager "MCDAandMOO,HansurLesse,September17–212007 Lecture4:MultiobjectiveCombinatorialOptimizationMatthiasEhrgott InternationalDoctoralSchoolAlgorithmicDecisionTheory:MCDAandMOO"

Copied!
193
0
0

Texte intégral

(1)

International Doctoral School Algorithmic Decision Theory: MCDA and MOO

Lecture 4: Multiobjective Combinatorial Optimization

Matthias Ehrgott

Department of Engineering Science, The University of Auckland, New Zealand Laboratoire d’Informatique de Nantes Atlantique, CNRS, Universit´ e de Nantes,

France

MCDA and MOO, Han sur Lesse, September 17 – 21 2007

(2)

Overview

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(3)

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(4)

Overview

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(5)

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(6)

Overview

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(7)

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(8)

Overview

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(9)

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(10)

Mathematical Formulation

min z (x) = Cx subject to Ax = b

x ∈ {0, 1} n

x ∈ {0, 1} n −→ n variables, i = 1, . . . , n

C ∈ Z p×n −→ p objective functions, k = 1, . . . , p A ∈ Z m×n −→ m constraints, j = 1, . . . , m

Combinatorial structure: paths, trees, flows, tours, etc.

(11)

min z (x) = Cx subject to Ax = b

x ∈ {0, 1} n

x ∈ {0, 1} n −→ n variables, i = 1, . . . , n

C ∈ Z p×n −→ p objective functions, k = 1, . . . , p A ∈ Z m×n −→ m constraints, j = 1, . . . , m

Combinatorial structure: paths, trees, flows, tours, etc.

(12)

Mathematical Formulation

min z (x) = Cx subject to Ax = b

x ∈ {0, 1} n

x ∈ {0, 1} n −→ n variables, i = 1, . . . , n

C ∈ Z p×n −→ p objective functions, k = 1, . . . , p A ∈ Z m×n −→ m constraints, j = 1, . . . , m

Combinatorial structure: paths, trees, flows, tours, etc.

(13)

min z (x) = Cx subject to Ax = b

x ∈ {0, 1} n

x ∈ {0, 1} n −→ n variables, i = 1, . . . , n

C ∈ Z p×n −→ p objective functions, k = 1, . . . , p A ∈ Z m×n −→ m constraints, j = 1, . . . , m

Combinatorial structure: paths, trees, flows, tours, etc.

(14)

Feasible Sets

X = {x ∈ {0, 1} n : Ax = b}

feasible set in decision space Y = z(X ) = {Cx : x ∈ X } feasible set in objective space conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(15)

X = {x ∈ {0, 1} n : Ax = b}

feasible set in decision space Y = z(X ) = {Cx : x ∈ X } feasible set in objective space conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

Y = C ( X )

(16)

Feasible Sets

X = {x ∈ {0, 1} n : Ax = b}

feasible set in decision space Y = z(X ) = {Cx : x ∈ X } feasible set in objective space conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

conv(C(X)) + R

p=

(17)

Individual minima

z k (ˆ x) 5 z k (x) for all x ∈ X Lexicographic optimality (1) z (ˆ x) 5 lex z(x) for all x ∈ X Lexicographic optimality (2) z π (ˆ x) 5 lex z π (x) for all x ∈ X and some permutation z π of (z 1 , . . . , z p )

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(18)

Lexicographic Optimality

Individual minima

z k (ˆ x) 5 z k (x) for all x ∈ X Lexicographic optimality (1) z (ˆ x) 5 lex z(x) for all x ∈ X Lexicographic optimality (2) z π (ˆ x) 5 lex z π (x) for all x ∈ X and some permutation z π of (z 1 , . . . , z p )

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(19)

Individual minima

z k (ˆ x) 5 z k (x) for all x ∈ X Lexicographic optimality (1) z (ˆ x) 5 lex z(x) for all x ∈ X Lexicographic optimality (2) z π (ˆ x) 5 lex z π (x) for all x ∈ X and some permutation z π of (z 1 , . . . , z p )

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(20)

Efficient Solutions

Weakly efficient solutions X wE : there is no x with z (x) < z (ˆ x) z (ˆ x) is weakly nondominated Y wN := z(X wN )

Efficient solutions X E :

there is no x with z (x) ≤ z (ˆ x) z (ˆ x) is nondominated

Y N := z (X E )

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(21)

Weakly efficient solutions X wE : there is no x with z (x) < z (ˆ x) z (ˆ x) is weakly nondominated Y wN := z(X wN )

Efficient solutions X E :

there is no x with z (x) ≤ z (ˆ x) z (ˆ x) is nondominated

Y N := z (X E )

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(22)

Efficient Solutions

Supported efficient solutions X SE : There is λ > 0 with λ T C x ˆ 5 λ T Cx for all x ∈ X

C x ˆ is extreme point of conv(Y ) + R

p=

→ X

SE1

C x ˆ is in relative interior of face of conv(Y ) + R

p=

→ X

SE2

Nonsupported efficient solutions X NE : C x ˆ is in interior of conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(23)

Supported efficient solutions X SE : There is λ > 0 with λ T C x ˆ 5 λ T Cx for all x ∈ X

C x ˆ is extreme point of conv(Y ) + R

p=

→ X

SE1

C x ˆ is in relative interior of face of conv(Y ) + R

p=

→ X

SE2

Nonsupported efficient solutions X NE : C x ˆ is in interior of conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

conv(C(X)) + R

p=

λ =

56

,

16

(24)

Efficient Solutions

Supported efficient solutions X SE : There is λ > 0 with λ T C x ˆ 5 λ T Cx for all x ∈ X

C x ˆ is extreme point of conv(Y ) + R

p=

→ X

SE1

C x ˆ is in relative interior of face of conv(Y ) + R

p=

→ X

SE2

Nonsupported efficient solutions X NE : C x ˆ is in interior of conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

conv(C(X)) + R

p=

λ =

12

,

12

(25)

Supported efficient solutions X SE : There is λ > 0 with λ T C x ˆ 5 λ T Cx for all x ∈ X

C x ˆ is extreme point of conv(Y ) + R

p=

→ X

SE1

C x ˆ is in relative interior of face of conv(Y ) + R

p=

→ X

SE2

Nonsupported efficient solutions X NE : C x ˆ is in interior of conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

conv(C(X)) + R

p=

λ =

13

,

23

(26)

Efficient Solutions

Supported efficient solutions X SE : There is λ > 0 with λ T C x ˆ 5 λ T Cx for all x ∈ X

C x ˆ is extreme point of conv(Y ) + R

p=

→ X

SE1

C x ˆ is in relative interior of face of conv(Y ) + R

p=

→ X

SE2

Nonsupported efficient solutions X NE : C x ˆ is in interior of conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

conv(C(X)) + R

p=

λ =

23

,

13

(27)

Supported efficient solutions X SE : There is λ > 0 with λ T C x ˆ 5 λ T Cx for all x ∈ X

C x ˆ is extreme point of conv(Y ) + R

p=

→ X

SE1

C x ˆ is in relative interior of face of conv(Y ) + R

p=

→ X

SE2

Nonsupported efficient solutions X NE : C x ˆ is in interior of conv(Y ) + R p =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

conv( C ( X )) + R

n=

(28)

Nonsupported Effcient Solutions

Shortest path:

1

2

4 3 (2,0)

(0,2) (3,3)

(2,0)

(0,2)

Y N = 4

0

, 3

3

, 0

4

Spanning tree:

1 2

3 (3,0)

(1,1)

(0,3)

Y N =

4 1

,

3 3

,

1 4

Assignment:

1 2 3

1 2 3

(3,0)

(2,2) (0,3) (2,2)

(2,0) (0,2)

(2,2)

(0,2) (2,0)

Y N = 7

0

, 4

4

, 0

7

(29)

Hansen 1979:

x 1 , x 2 ∈ X E are equivalent if Cx 1 = Cx 2

Complete set: ˆ X ⊂ X E such that for all y ∈ Y N there is x ∈ X ˆ with z(x) = y

Minimal complete set contains no equivalent solutions

Maximal complete set contains all equivalent solutions

X

E

X

SE

X

N E

X

SE1

X

E

m

X

SE2

X

N E

m

X

SE1m

X

SE2m

(30)

Classification of Efficient Sets

Hansen 1979:

x 1 , x 2 ∈ X E are equivalent if Cx 1 = Cx 2

Complete set: ˆ X ⊂ X E such that for all y ∈ Y N there is x ∈ X ˆ with z(x) = y

Minimal complete set contains no equivalent solutions

Maximal complete set contains all equivalent solutions

X

E

X

SE

X

N E

X

SE1

X

E

m

X

SE2

X

N E

m

X

SE1m

X

SE2m

(31)

Hansen 1979:

x 1 , x 2 ∈ X E are equivalent if Cx 1 = Cx 2

Complete set: ˆ X ⊂ X E such that for all y ∈ Y N there is x ∈ X ˆ with z(x) = y

Minimal complete set contains no equivalent solutions

Maximal complete set contains all equivalent solutions

X

E

X

SE

X

N E

X

SE1

X

E

m

X

SE2

X

N E

m

X

SE1m

X

SE2m

(32)

Classification of Efficient Sets

Hansen 1979:

x 1 , x 2 ∈ X E are equivalent if Cx 1 = Cx 2

Complete set: ˆ X ⊂ X E such that for all y ∈ Y N there is x ∈ X ˆ with z(x) = y

Minimal complete set contains no equivalent solutions

Maximal complete set contains all equivalent solutions

X

E

X

SE

X

N E

X

SE1

X

E

m

X

SE2

X

N E

m

X

SE1m

X

SE2m

(33)

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(34)

MOCO Problems Are Hard

Decision problem: Given b ∈ Z p : Does there exist x ∈ X such that Cx 5 b?

Counting problem: Given b ∈ Z p : How many x ∈ X satisfy Cx 5 b?

How many efficient solutions (nondominated points) do exist?

Knapsack: Given a 1 , a 2 ∈ Z n and b 1 , b 2 ∈ Z , does there

exist x ∈ {0, 1} n such that (a 1 ) T x 5 b 1 and (a 2 ) T x = b 2 ?

Knapsack is NP-complete and #P-complete

(35)

Decision problem: Given b ∈ Z p : Does there exist x ∈ X such that Cx 5 b?

Counting problem: Given b ∈ Z p : How many x ∈ X satisfy Cx 5 b?

How many efficient solutions (nondominated points) do exist?

Knapsack: Given a 1 , a 2 ∈ Z n and b 1 , b 2 ∈ Z , does there

exist x ∈ {0, 1} n such that (a 1 ) T x 5 b 1 and (a 2 ) T x = b 2 ?

Knapsack is NP-complete and #P-complete

(36)

MOCO Problems Are Hard

Decision problem: Given b ∈ Z p : Does there exist x ∈ X such that Cx 5 b?

Counting problem: Given b ∈ Z p : How many x ∈ X satisfy Cx 5 b?

How many efficient solutions (nondominated points) do exist?

Knapsack: Given a 1 , a 2 ∈ Z n and b 1 , b 2 ∈ Z , does there

exist x ∈ {0, 1} n such that (a 1 ) T x 5 b 1 and (a 2 ) T x = b 2 ?

Knapsack is NP-complete and #P-complete

(37)

Decision problem: Given b ∈ Z p : Does there exist x ∈ X such that Cx 5 b?

Counting problem: Given b ∈ Z p : How many x ∈ X satisfy Cx 5 b?

How many efficient solutions (nondominated points) do exist?

Knapsack: Given a 1 , a 2 ∈ Z n and b 1 , b 2 ∈ Z , does there

exist x ∈ {0, 1} n such that (a 1 ) T x 5 b 1 and (a 2 ) T x = b 2 ?

Knapsack is NP-complete and #P-complete

(38)

MOCO Problems Are Hard

Decision problem: Given b ∈ Z p : Does there exist x ∈ X such that Cx 5 b?

Counting problem: Given b ∈ Z p : How many x ∈ X satisfy Cx 5 b?

How many efficient solutions (nondominated points) do exist?

Knapsack: Given a 1 , a 2 ∈ Z n and b 1 , b 2 ∈ Z , does there

exist x ∈ {0, 1} n such that (a 1 ) T x 5 b 1 and (a 2 ) T x = b 2 ?

Knapsack is NP-complete and #P-complete

(39)

Observation

Multiobjective combinatorial optimization problems are NP-hard,

#P-complete, and intractable.

min

n

X

i=1

c i k x i k = 1, . . . , p

subject to x i ∈ {0, 1} i = 1, . . . , n

(40)

The Unconstrained MOCO Problem

Observation

Multiobjective combinatorial optimization problems are NP-hard,

#P-complete, and intractable.

min

n

X

i=1

c i k x i k = 1, . . . , p

subject to x i ∈ {0, 1} i = 1, . . . , n

(41)

Does there exist x ∈ {0, 1} n such that (c 1 ) T x 5 d 1 and (c 2 ) T x 5 d 2 ?

With an instance of Knapsack c 1 := a 1 , d 1 = b 1 ,

c 2 := −a 2 , d 2 := −b 2 is a parsimonious transformation

With c i k := (−1) k 2 i−1 it holds Y = Y N

(42)

The Unconstrained MOCO Problem

Does there exist x ∈ {0, 1} n such that (c 1 ) T x 5 d 1 and (c 2 ) T x 5 d 2 ?

With an instance of Knapsack c 1 := a 1 , d 1 = b 1 ,

c 2 := −a 2 , d 2 := −b 2 is a parsimonious transformation

With c i k := (−1) k 2 i−1 it holds Y = Y N

(43)

Does there exist x ∈ {0, 1} n such that (c 1 ) T x 5 d 1 and (c 2 ) T x 5 d 2 ?

With an instance of Knapsack c 1 := a 1 , d 1 = b 1 ,

c 2 := −a 2 , d 2 := −b 2 is a parsimonious transformation

With c i k := (−1) k 2 i−1 it holds Y = Y N

(44)

Multiobjective Shortest Path Problem

NP-hard: Hansen 1979

• • • •

(a

11

, 0) (a

12

, 0)

(0, a

21

) (0, a

22

)

v

0

v

1

v

2

v

n

Exponentially many efficient paths

• • • • • • • •

(1,0) (2,0) (2n−12 ,0)

(0,1) (0,0) (0,2) (0,0) (0,2n−12 ) (0,0)

. . .

v1 v2 v3 v4 v5 vn2 vn1 vn

(45)

NP-hard: Hansen 1979

• • • •

(a

11

, 0) (a

12

, 0)

(0, a

21

) (0, a

22

)

v

0

v

1

v

2

v

n

Exponentially many efficient paths

• • • • • • • •

(1,0) (2,0) (2n−12 ,0)

(0,1) (0,0) (0,2) (0,0) (0,2n−12 ) (0,0)

. . .

v1 v2 v3 v4 v5 vn2 vn1 vn

(46)

Other Examples

Assignment (NP-hard: Serafini 1986, #P-hard: Neumayer 1994)

Spanning tree (Intractable: Hamacher and Ruhe 1994)

Network flow (Intractable: Ruhe 1988)

(47)

Assignment (NP-hard: Serafini 1986, #P-hard: Neumayer 1994)

Spanning tree (Intractable: Hamacher and Ruhe 1994)

Network flow (Intractable: Ruhe 1988)

(48)

Other Examples

Assignment (NP-hard: Serafini 1986, #P-hard: Neumayer 1994)

Spanning tree (Intractable: Hamacher and Ruhe 1994)

Network flow (Intractable: Ruhe 1988)

(49)

Intractable: X E , even Y SN , can be exponential in the size of the instance

Number of nondominated points for biobjective shortest path and assignment problems (Raith 2007, Przybylski 2006)

Shortest path Assignment Nodes Edges |Y N | n |Y N |

4,902 19,596 6 10 13

4,902 19,596 1,594 20 82

3,000 33,224 15 40 243

14,000 153,742 17 60 470

330,386 1,202,458 21 80 671

330,386 1,202,458 24 100 947

(50)

Number of Efficient Solutions

Intractable: X E , even Y SN , can be exponential in the size of the instance

Number of nondominated points for biobjective shortest path and assignment problems (Raith 2007, Przybylski 2006)

Shortest path Assignment Nodes Edges |Y N | n |Y N |

4,902 19,596 6 10 13

4,902 19,596 1,594 20 82

3,000 33,224 15 40 243

14,000 153,742 17 60 470

330,386 1,202,458 21 80 671

330,386 1,202,458 24 100 947

(51)

Empirically often

|X NE | grows exponentially with instance size

|X SE | grows polynomially with instance size

but this depends on numerical values of C

(52)

Number of Efficient Solutions

Empirically often

|X NE | grows exponentially with instance size

|X SE | grows polynomially with instance size

but this depends on numerical values of C

(53)

Empirically often

|X NE | grows exponentially with instance size

|X SE | grows polynomially with instance size

but this depends on numerical values of C

(54)

Number of Efficient Solutions

0 0.05 0.1 0.15 0.2 0.25 0.3

50 100 150 200 250 300 350 400 450 500

nb SE par rap. NE

instance

Bi-KP Problems : proportion de supportees

A B C D

(55)

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

05 10 15 20 25 30 35 40 45 50

prop SE par rap. NE

instance Bi-AP Problems : prop SE par rap. NE

A B C D

(56)

Overview

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(57)

Digraph G = (V, A) with arc costs c ij k , k = 1, . . . , p, (i, j ) ∈ A Given origin s ∈ V , destination t ∈ V find efficient paths from s to t:

P min ∈P

X

(i,j )∈P

c ij

where P is set of all s -t paths Assume that all c ij k = 0 Proposition

Let P st be an efficient path from s to t. Then any subpath P uv

from u to v , where u and v are vertices on P st is an efficient path

from u to v .

(58)

The Multiobjective Shortest Path Problem

Digraph G = (V, A) with arc costs c ij k , k = 1, . . . , p, (i, j ) ∈ A Given origin s ∈ V , destination t ∈ V find efficient paths from s to t:

P min ∈P

X

(i,j )∈P

c ij

where P is set of all s -t paths Assume that all c ij k = 0 Proposition

Let P st be an efficient path from s to t. Then any subpath P uv

from u to v , where u and v are vertices on P st is an efficient path

from u to v .

(59)

Digraph G = (V, A) with arc costs c ij k , k = 1, . . . , p, (i, j ) ∈ A Given origin s ∈ V , destination t ∈ V find efficient paths from s to t:

P min ∈P

X

(i,j )∈P

c ij

where P is set of all s -t paths Assume that all c ij k = 0 Proposition

Let P st be an efficient path from s to t. Then any subpath P uv

from u to v , where u and v are vertices on P st is an efficient path

from u to v .

(60)

The Multiobjective Shortest Path Problem

Digraph G = (V, A) with arc costs c ij k , k = 1, . . . , p, (i, j ) ∈ A Given origin s ∈ V , destination t ∈ V find efficient paths from s to t:

P min ∈P

X

(i,j )∈P

c ij

where P is set of all s -t paths Assume that all c ij k = 0 Proposition

Let P st be an efficient path from s to t. Then any subpath P uv

from u to v , where u and v are vertices on P st is an efficient path

from u to v .

(61)

Concatenations of efficient paths need not be efficient!

1

2

3

4 (0, 10) (0, 10)

(1, 9) (1, 9)

(1, 15)

1-3 is efficient, 3-4 is efficient, 1-3-4 is not

(62)

The Multiobjective Shortest Path Problem

Concatenations of efficient paths need not be efficient!

1

2

3

4 (0, 10) (0, 10)

(1, 9) (1, 9)

(1, 15)

1-3 is efficient, 3-4 is efficient, 1-3-4 is not

(63)

For a labelling algorithm we need

Sets of nondominated labels at each node

Store all costs, the predecessor, the label number at the predecessor, the number of the current label

A list of permanent and temporary labels

Make sure that a permanent label defines an efficient path:

Choose the lexicographically smallest label from temporary list Lemma

If P 1 and P 2 are two paths between nodes s and t and

c(P 1 ) ≤ c (P 2 ) then c(P 1 ) < lex c (P 2 ).

(64)

The Multiobjective Shortest Path Problem

For a labelling algorithm we need

Sets of nondominated labels at each node

Store all costs, the predecessor, the label number at the predecessor, the number of the current label

A list of permanent and temporary labels

Make sure that a permanent label defines an efficient path:

Choose the lexicographically smallest label from temporary list Lemma

If P 1 and P 2 are two paths between nodes s and t and

c(P 1 ) ≤ c (P 2 ) then c(P 1 ) < lex c (P 2 ).

(65)

For a labelling algorithm we need

Sets of nondominated labels at each node

Store all costs, the predecessor, the label number at the predecessor, the number of the current label

A list of permanent and temporary labels

Make sure that a permanent label defines an efficient path:

Choose the lexicographically smallest label from temporary list Lemma

If P 1 and P 2 are two paths between nodes s and t and

c(P 1 ) ≤ c (P 2 ) then c(P 1 ) < lex c (P 2 ).

(66)

The Multiobjective Shortest Path Problem

For a labelling algorithm we need

Sets of nondominated labels at each node

Store all costs, the predecessor, the label number at the predecessor, the number of the current label

A list of permanent and temporary labels

Make sure that a permanent label defines an efficient path:

Choose the lexicographically smallest label from temporary list Lemma

If P 1 and P 2 are two paths between nodes s and t and

c(P 1 ) ≤ c (P 2 ) then c(P 1 ) < lex c (P 2 ).

(67)

For a labelling algorithm we need

Sets of nondominated labels at each node

Store all costs, the predecessor, the label number at the predecessor, the number of the current label

A list of permanent and temporary labels

Make sure that a permanent label defines an efficient path:

Choose the lexicographically smallest label from temporary list Lemma

If P 1 and P 2 are two paths between nodes s and t and

c(P 1 ) ≤ c (P 2 ) then c(P 1 ) < lex c (P 2 ).

(68)

Algorithm (Multiobjective label setting algorithm)

Input: A digraph G = (V, A) with p arc costs.

Initialization: Create label L = (0, . . . , 0, 0, 0, 1) at node s and let T L := {L}.

While T L 6= ∅ do

Let label L = (c

1

, . . . , c

p

, v

h

, l , k) of node v

i

be the lexicographically smallest label in T L.

Remove L from T L and add it to PL.

For all v

j

∈ V such that (v

i

, v

j

) ∈ A do

Create label L

0

= (c

1

+ c

1

(v

i

, v

j

), . . . , c

p

+ c

p

(v

i

, v

j

), v

i

, k, t) as the next label at node v

j

and add it to T L.

Delete all temporary labels of node v

j

dominated by L

0

, delete L

0

if it is dominated by another label of node v

j

.

End for.

End while.

Use the predecessor labels in the permanent labels to recover all efficient paths from s to other nodes of G.

Output: All efficient paths from node s to all other nodes of G.

(69)

1

2

3

4

5

6 (10

; 4

; 2

; 10)

(6

;

1

;

18

;

10)

(6;2;10;10)

(0;10;12;1)

(4

; 0

; 0

; 3)

(1;4;8;1)

(5;1;3;7)

(10

;

1

;

1

;

1)

(6

; 0

; 0

; 6)

(70)

Multiobjective Label Setting Algorithm

1 2

3

4

5 6 1

1

2 9

6 4

5 7

9 2

3 10

75

3 10

 0 0 0 0 0 0 1

1

0

 10

4 2 10

1 1 1

4

1

 12

3 28 20 3 1 2

6

2

 20 16 24 24 3 2 3

9

 6 1 18 10 1 1 1

2

1

 14 14 14 14 4 2 2

9

5

 16

6 29 21 4 1 3

7

 12

6 29 18 5 1 1

7

3

 10 14 14 11 2 1 2

5

4

 12 13 40 21 2 2 3

6

 20 19 25 22 5 2 4

10

 7 5 26 11 3 1 1

3

2

 15 18 22 15 3 2 2

10

9

 13

5 26 17 5 1 1

8

3

 20 15 15 12 4 2 2

11

5

 22

7 30 19 4 1 3

7

 21 18 22 21 5 2 4

11

(71)

Label setting fails if negative arc lengths are permitted Negative cycles C

Case 1: If P

a∈C

c

ak

< 0 and P

a∈C

c

aj

> 0 for j 6= k there are infinitely many efficient paths

Case 2: If P

a∈C

c

a

≤ 0 there is no efficient path A label correcting algorithm is required

Let L(i , k ) be set of labels at node i in iteration k

(72)

Multiobjective Label Correcting Algorithm

Label setting fails if negative arc lengths are permitted Negative cycles C

Case 1: If P

a∈C

c

ak

< 0 and P

a∈C

c

aj

> 0 for j 6= k there are infinitely many efficient paths

Case 2: If P

a∈C

c

a

≤ 0 there is no efficient path A label correcting algorithm is required

Let L(i , k ) be set of labels at node i in iteration k

(73)

Label setting fails if negative arc lengths are permitted Negative cycles C

Case 1: If P

a∈C

c

ak

< 0 and P

a∈C

c

aj

> 0 for j 6= k there are infinitely many efficient paths

Case 2: If P

a∈C

c

a

≤ 0 there is no efficient path A label correcting algorithm is required

Let L(i , k ) be set of labels at node i in iteration k

(74)

Multiobjective Label Correcting Algorithm

Label setting fails if negative arc lengths are permitted Negative cycles C

Case 1: If P

a∈C

c

ak

< 0 and P

a∈C

c

aj

> 0 for j 6= k there are infinitely many efficient paths

Case 2: If P

a∈C

c

a

≤ 0 there is no efficient path A label correcting algorithm is required

Let L(i , k ) be set of labels at node i in iteration k

(75)

Label setting fails if negative arc lengths are permitted Negative cycles C

Case 1: If P

a∈C

c

ak

< 0 and P

a∈C

c

aj

> 0 for j 6= k there are infinitely many efficient paths

Case 2: If P

a∈C

c

a

≤ 0 there is no efficient path A label correcting algorithm is required

Let L(i , k ) be set of labels at node i in iteration k

(76)

Multiobjective Label Correcting Algorithm

Label setting fails if negative arc lengths are permitted Negative cycles C

Case 1: If P

a∈C

c

ak

< 0 and P

a∈C

c

aj

> 0 for j 6= k there are infinitely many efficient paths

Case 2: If P

a∈C

c

a

≤ 0 there is no efficient path A label correcting algorithm is required

Let L(i , k ) be set of labels at node i in iteration k

(77)

Input: A digraph G = (V, A) with p arc costs.

Initialization: Set d

ii

:= (0, . . . , 0) for i = 1, . . . , n.

Set d

ij

:= (∞, . . . , ∞) if v

i

6= v

j

and (v

i

, v

j

) ∈ A. / Set d

ij

:= (c

1

(v

i

, v

j

), . . . , c

p

(v

i

, v

j

)) otherwise.

Set L(i , 1) := {d

1i

}, i = 1, . . . , n.

For k := 1 to n − 1 do For i := 1 to n do

L(i , k + 1) := min

n

S

j=1

˘ d

ji

+ l

jk

: l

jk

∈ L(j, k) ¯

End for.

If L(i, k + 1) = L(i, k) for all i = 1, . . . , n then If k = n − 1 then STOP, a negative cycle exists.

STOP End for.

Output: All efficient paths from node v

1

to all other nodes.

(78)

Multiobjective Label Correcting Algorithm

1

2

3

4 (1,−1,2) (−1,0,3)

(0,3,−2) (5,3,3)

(−1,2,4) dij=

0 B B B B B B B B B B B B B B B B B

@ 0

@ 0 0 0

1 A

0

@ 1

−1 2

1 A

0

@ 0 3

−2 1 A

0

@

∞ 1 A 0

@

∞ 1 A

0

@ 0 0 0

1 A

0

@

−1 2 4

1 A

0

@

−1 0 3

1 A 0

@

∞ 1 A

0

@

∞ 1 A

0

@ 0 0 0

1 A

0

@ 5 3 3

1 A 0

@

∞ 1 A

0

@

∞ 1 A

0

@

∞ 1 A

0

@ 0 0 0

1 A

1 C C C C C C C C C C C C C C C C C A

(79)

1

2

3

4 0

0

0

!

1

1

2

!

0

3

2

! 1

1

1

!

(80)

Multiobjective Label Correcting Algorithm

1

2

3

4 0

0

0

!

1

1

2

!

min (

0

3

2

!

; 1

1

2

!

+ 1

2

4

!)

= (

0

3

2

!

; 0

1

6

!) min

(

1

1

2

!

+ 1

0

3

!

; 0

3

2

!

+ 5

3

3

!)

= (

0

1

5

!

; 5

6

1

!)

(81)

1

2

3

4 0

0

0

!

1

1

2

!

(

0

3

2

!

; 0

1

6

!) min

(

0

1

5

!

; 5

6

1

!

; 0

1

6

!

+ 5

3

3

!)

= (

0

1

5

!

; 5

6

1

!)

(82)

The Multiobjective Spanning Tree Problem

Graph G = (V, A) with edge costs c ij k , k = 1, . . . , p; (i, j ) ∈ E Find efficient spanning trees of G:

T min ∈T

X

[i,j ]∈T

c ij

where T is set of all spanning trees of G

(83)

Graph G = (V, A) with edge costs c ij k , k = 1, . . . , p; (i, j ) ∈ E Find efficient spanning trees of G:

T min ∈T

X

[i,j ]∈T

c ij

where T is set of all spanning trees of G

(84)

The Multiobjective Spanning Tree Problem

Theorem (Hamacher and Ruhe 1994)

T efficient spanning tree of G

1

Let e ∈ E(T ) be an edge of T . Let (V(T 1 ), E(T 1 )) and (V (T 2 ), E(T 2 )) be the two connected components of G \ {e }. Let

C (e) := {f = (v i , v j ) ∈ E : v i ∈ V (T 1 ), v j ∈ V(T 2 )} be the cut defined by deleting e. Then c (e) ∈ min{c (f ) : f ∈ C (e )}.

e

T1 T2

edges inC(e)

(85)

Theorem (Hamacher and Ruhe 1994)

T efficient spanning tree of G

1

Let f ∈ E \ E(T ) and let P (f ) be the unique path in T connecting the end nodes of f . Then c(f ) ≤ c (e ) does not hold for any e ∈ P (f ).

f

P(f)

(86)

The Multiobjective Spanning Tree Problem

Algorithm (Prim’s spanning tree algorithm) Input: A graph G = (V, E) with p edge costs.

T 0 := {({1}, ∅)}

For k := 1 to n − 1 do

T k := {E (T ) ∪ {e j } : T ∈ T k−1 , e j ∈ argmin{c (e ) = c ([v i , v j ]) : v i ∈ V (T ), v j ∈ V \ V(T )}}

End for

T n−1 := argmin{c(T ) : T ∈ T n−1 }

Output: T n−1 , all efficient spanning trees of G.

(87)

1 2

3 4 1

4

0

2

1

3

3

1 2

0

1

(88)

The Multiobjective Spanning Tree Problem

1 2

3 4 1

4

0

2

1

3

3

1 2

0

1

3

(89)

1 2

3 4 1

4

0

2

1

3

3

1 2

0

1 2

3

1 2

3

(90)

The Multiobjective Spanning Tree Problem

1 2

3 4 1

4

0

2

1

3

3

1 2

0

1 2

3

4 1

2

3 4

1 2

3

4 1

2

3 4

(91)

1 2

3 4 1

4

0

2

1

3

3

1 2

0

1 2

3

4 1

2

3 4

1 2

3

4 1

2

3 4

(92)

Overview

1 Formulation and Definitions of Optimality

2 Complexity

3 The Multiobjective Shortest Path and Spanning Tree Problems

4 The Two Phase Method

5 Scalarization

6 Branch and Bound

7 Conclusion

(93)

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

(94)

The Two Phase Method with 2 Objectives

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(95)

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(96)

The Two Phase Method with 2 Objectives

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(97)

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(98)

The Two Phase Method with 2 Objectives

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(99)

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(100)

The Two Phase Method with 2 Objectives

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(101)

Phase 1: Compute X SE(1)

1

Find lexicographic solutions

2

Recursively:

Calculate λ Solve min

x∈X

λ

T

Cx Phase 2: Compute X NE

1

Solve by triangle

2

Use neighborhood (wrong)

3

Use constraints (bad)

4

Use variable fixing (possible)

5

Use ranking (good)

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

(102)

Enumeration Problems

Finding maximal complete set:

Enumeration to find all optimal solutions of min

x∈X

λ

T

Cx Enumeration to find all x ∈ X

NE

with Cx = y ∈ Y

ND

Finding minimal complete set:

Enumeration to find X

SE2

205 210 215 220 225 230 235

195 200 205 210 215 220 225

z2

z1 ( 206,223 ) ( 207,222 ) ( 208,221 ) ( 209,220 ) ( 210,219 ) ( 211,218 ) ( 199,230 )

( 220,209 ) ( 218,211 ) ( 202,227 )

( 203,226 ) ( 204,225 )

( 212,217 ) ( 213,216 ) ( 214,215 ) ( 215,214 ) ( 216,213 )

z(x)ZSN1 z(x)ZSN2

λ= 0.5666

=0.5 λ

=0.4918 λ

Références

Documents relatifs

We analyze the relevance of our approach using a thematic analysis of reports that were handed in to the Business Process Intelligence Challenges over recent years, and observe the

On the other hand, researchers working in the area of SAT and SMT solvers observed that by combining the combinatorial search capabilities of SAT solvers with mathematical

Radiotherapy Treatment Planning Robust Airline Crew Scheduling..

Department of Engineering Science, The University of Auckland, New Zealand Laboratoire d’Informatique de Nantes Atlantique, CNRS, Universit´ e de

Approximately solving multiobjective linear programmes in objective space and an application in radiotherapy treatment planning. Mathematical Methods of Operations Research,

Challenge 3: Polyhedral theory for MOCO scalarization Challenge 4: How to build an exact algorithm for very hard problems. Real world applications provide opportunities for progress

We prove Turing Test to be an instance of an AI-Complete problem and further show numerous AI problems to be AI-Complete or AI-Hard via polynomial time

While the state-of- the-art filtering algorithm for this constraint runs in O(n 2 ), we showed how to enforce arc-consistency in an optimal worst case time complexity.. Then