Running time analyses of Benson type algorithms with an...

77
Running time analyses of Benson type algorithms with an application to multiobjective combinatorial optimization problems Fritz B¨ okler , Petra Mutzel Chair of Algorithm Engineering, TU Dortmund, Germany September 12, 2014 1 of 38

Transcript of Running time analyses of Benson type algorithms with an...

Page 1: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Running time analyses of Benson type algorithmswith an application to multiobjectivecombinatorial optimization problems

Fritz Bokler, Petra Mutzel

Chair of Algorithm Engineering, TU Dortmund, Germany

September 12, 2014

1 of 38

Page 2: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Outline

1 Model of Computation

2 Multiobjective Linear Optimization

3 Benson’s Algorithm

4 Multiobjective Combinatorial Optimization

5 Experiments

2 of 38

Page 3: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Enumeration Complexity: Motivation

MOCO Intractability

Long known: Size of Pareto-frontier might be exponential

No polynomial time algorithm

Important: In the worst case!

And in practice?

Smoothed Analysis: E (|XE |) ∈ O(n2dΦd) [Brunsch, Roglin]Φ is a perturbation parameter

Algorithm wanted: Fast if YN is small, not too slow if YN islarge

3 of 38

Page 4: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Enumeration Complexity: Introduction

Definition (Enumeration Problem)

Consist of

Set of instances I ⊆ Σ∗

Mapping C : I 7→ 2Σ∗

x ∈ I , y ∈ C(x) : |y | ∈ O(poly(|x |))

Goal: Enumerate C(x) for instance x ∈ I .

Observation

|C(x)| ∈ Ω(2|x |) possible

Polynomial Total Time (PTT), a.k.a.: Output PolynomialTime

Enumerate C(x) in time poly(|x |, |C(x)|) 4 of 38

Page 5: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Enumeration Complexity: Delay

Delay [Johnson, Yannakakis, Papadimitriou 1988]

The k-th delay is the time between outputting the k-th and(k + 1)-th element.

0-th delay: Time before outputting the first element,

|C (x)|-th delay: Time after outputting the last element untiltermination

Polynomial Time Delay (PTD)

Enumerate C(x) such that every delay is at most poly(|x |)

Incremental Polynomial Time (IncP)

Enumerate C(x) such that the k-th delay is at most poly(|x |, k)

5 of 38

Page 6: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Enumeration Complexity: MOO Negative Results

Multiobjective Linear Programming

By [Khachiyan, Boros, Borys, Elbassioni, Gurvich 08]:P 6= NP⇒ cannot enumerate all Pareto-optimal basic feasiblesolutions of MOLP in PTT

Multiobjective Shortest Path

P 6= NP⇒ MO-SP /∈ PTT even for d = 2 and on outerplanargraphs

And the decision variant?

There exist MOCO P, such that PDec ∈ NPC, but P ∈ IncP

6 of 38

Page 7: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Outline

1 Model of Computation

2 Multiobjective Linear Optimization

3 Benson’s Algorithm

4 Multiobjective Combinatorial Optimization

5 Experiments

7 of 38

Page 8: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Multiobjective Linear Program

Definition (MOLP)

Matrices A ∈ Rm×n, C ∈ Rd×n and b ∈ Rm

pmin Cx

Ax ≥ b

Possible Goals: Finding Pareto-optimal basic feasible solutions,finding a representation of the Pareto-surface

pminCx | Ax ≥ b

8 of 38

Page 9: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Multiobjective Linear Program

Definition (MOLP)

Matrices A ∈ Qm×n, C ∈ Qd×n and b ∈ Qm

pmin Cx

Ax ≥ b

Possible Goals: Finding Pareto-optimal basic feasible solutions,finding a representation of the Pareto-surface

pminCx | Ax ≥ b

8 of 38

Page 10: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Is it really so hard?

Reminder

By [Khachiyan, Boros, Borys, Elbassioni, Gurvich 08]:P 6= NP⇒ cannot enumerate all Pareto-optimal basic feasiblesolutions of MOLP in PTT

More important in practice

Solutions x1, x2 with Cx1 = Cx2 are indistinguishable

Wanted: One solution for each nondominated extreme pointof P := Cx | Ax ≥ b+ Rd

Our Question

Can we enumerate vertP in polynomial total time?

9 of 38

Page 11: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Previous Work

Exact MOLP Solver

Multiobjective Simplex, e.g., [Evans, Steuer 1973, Zionts,Wallenius 1980, Steuer 1985, Armand 1993, ...]

Objective space methods, e.g., [Dauer, Liu 1990, Dauer, Saleh1990, Dauer 1993, Benson 1998, ...]

Rarely: Theoretical running time guarantees

Theoretical Running Time Guarantees

Okamoto and Uno 2007

Output: All efficient bfsAlgorithm based on reverse search [Avis, Fukuda 92]Polynomial delay for nondegenerate MOLPs

10 of 38

Page 12: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 4

11 of 38

Page 13: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 4

11 of 38

Page 14: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 4

11 of 38

Page 15: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 4

11 of 38

Page 16: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 4

11 of 38

Page 17: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 4

11 of 38

Page 18: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Contribution

MOLP: Benson’s Algorithm and Dual Variant

For fixed number of objectives: Prove PTT for Benson’s andthe Dual Algorithm

Removing exponential overhead on both algorithms, provingIncP for the improved Dual Algorithm

Running time in # vertices and # facets of P

MOCO

Application for dual algorithm: Enumerating extreme pointsof MOCO Problems

Experiments to show practicability on multiobjectiveassignment and spanning tree problems

First experiments for d > 411 of 38

Page 19: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Outline

1 Model of Computation

2 Multiobjective Linear Optimization

3 Benson’s Algorithm

4 Multiobjective Combinatorial Optimization

5 Experiments

12 of 38

Page 20: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Benson’s Algorithm

Very brief History

Proposed by [Benson 1998]

Further improvements, e.g., [Burton and Ozlen 2010, Hamel,Lohne, Rudloff 2013, Csirmaz 2013]

Major recap with geometric duality theory and a dual variant[Ehrgott, Lohne, Shao 2012]

Benson’s Algorithm

Starts with polyhedron containing PIn each iteration: Finds supporting hyperplane to PNecessary assumption: Exists y ∈ Rd : P ⊆ Rd

≥ + y

13 of 38

Page 21: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Benson’s Algorithm

Very brief History

Proposed by [Benson 1998]

Further improvements, e.g., [Burton and Ozlen 2010, Hamel,Lohne, Rudloff 2013, Csirmaz 2013]

Major recap with geometric duality theory and a dual variant[Ehrgott, Lohne, Shao 2012]

Benson’s Algorithm

Starts with polyhedron containing PIn each iteration: Finds supporting hyperplane to PNecessary assumption: Exists y ∈ Rd : P ⊆ Rd

≥ + y

13 of 38

Page 22: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 23: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 24: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 25: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 26: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 27: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 28: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 29: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 30: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 31: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 32: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 33: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 34: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 35: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Example

c1T x

c2T x

0

14 of 38

Page 36: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Running Time: Subproblems

Subproblems

LP Oracles: Finding ideal point, finding point at boundary,finding new hyperplane

A special case of vertex enumeration

Vertex Enumeration

Have to find new extreme points of intermediate polyhedra

Employing one Double Description (DD) step[Motzkin, Raiffa, Thompson, Thrall 53, Fukuda, Prodon 96, ..]

P is of dimension d

Running time for one iteration in O(dHV 3)

Using upper bound theorem: dHO(d)

15 of 38

Page 37: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

LP Oracles

Example: P2(y)

minz ∈ R | x ∈ Rn,Ax ≥ b,Cx − 1z ≤ y

Solving with the Ellipsoid Method—Major Problem: How large cany become in the process of the algorithm?

Lemma (Encoding Length of Intermediate Extreme Points)

For each intermediate extreme point y : |yi | ∈ O(poly(n, L))

Theorem (Running Time: Benson’s Algorithm)

Let ve : # vertices of P, d fixed, running time:O(ve

Θ(d) poly(n,m, L) + veΘ(d2))

16 of 38

Page 38: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

LP Oracles

Example: P2(y)

minz ∈ R | x ∈ Rn,Ax ≥ b,Cx − 1z ≤ y

Solving with the Ellipsoid Method—Major Problem: How large cany become in the process of the algorithm?

Lemma (Encoding Length of Intermediate Extreme Points)

For each intermediate extreme point y : |yi | ∈ O(poly(n, L))

Theorem (Running Time: Benson’s Algorithm)

Let ve : # vertices of P, d fixed, running time:O(ve

Θ(d) poly(n,m, L) + veΘ(d2))

16 of 38

Page 39: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

LP Oracles

Example: P2(y)

minz ∈ R | x ∈ Rn,Ax ≥ b,Cx − 1z ≤ y

Solving with the Ellipsoid Method—Major Problem: How large cany become in the process of the algorithm?

Lemma (Encoding Length of Intermediate Extreme Points)

For each intermediate extreme point y : |yi | ∈ O(poly(n, L))

Theorem (Running Time: Benson’s Algorithm)

Let ve : # vertices of P, d fixed, running time:O(ve

Θ(d) poly(n,m, L) + veΘ(d2))

16 of 38

Page 40: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Finding Facets

Drawback

Example in [Ehrgott, Lohne, Shao 2012]: Supportinghyperplanes might support in face of dimension < d − 1

Exponentially many redundant inequalities

Redundant DD steps

Redundant intermediate extreme points

Nonredundancy: Speed up adjacency checks

Nice to have: Running time in number of extreme points andfacets of P

Can we find facets only?

17 of 38

Page 41: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Finding Facets

Drawback

Example in [Ehrgott, Lohne, Shao 2012]: Supportinghyperplanes might support in face of dimension < d − 1

Exponentially many redundant inequalities

Redundant DD steps

Redundant intermediate extreme points

Nonredundancy: Speed up adjacency checks

Nice to have: Running time in number of extreme points andfacets of P

Can we find facets only?

17 of 38

Page 42: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Finding Facets

Drawback

Example in [Ehrgott, Lohne, Shao 2012]: Supportinghyperplanes might support in face of dimension < d − 1

Exponentially many redundant inequalities

Redundant DD steps

Redundant intermediate extreme points

Nonredundancy: Speed up adjacency checks

Nice to have: Running time in number of extreme points andfacets of P

Can we find facets only?

17 of 38

Page 43: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Improved Algorithm: Finding Facets

Theorem (Finding Facets)

By solving a lexicographic variant of hyperplane finding LP, weensure that for a point y at the boundary of P the hyperplanesupports P in a facet containing y .

Theorem (Running Time w.r.t. vertices and facets)

Let ve : # vertices, vf : # facets of P, d fixedImproved version’s running time:O((ve + vf ) poly(n,m, L) + vf

Θ(d))

18 of 38

Page 44: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Improved Algorithm: Finding Facets

Theorem (Finding Facets)

By solving a lexicographic variant of hyperplane finding LP, weensure that for a point y at the boundary of P the hyperplanesupports P in a facet containing y .

Theorem (Running Time w.r.t. vertices and facets)

Let ve : # vertices, vf : # facets of P, d fixedImproved version’s running time:O((ve + vf ) poly(n,m, L) + vf

Θ(d))

18 of 38

Page 45: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

A Dual Variant of Benson’s Algorithm

History

Geometric duality in MOLP from [Heyde and Lohne 2008]

Algorithm proposed in [Ehrgott, Lohne, Shao 2007/2012]

Dual Variant of Benson’s Algorithm

Pretty much the same strategy

Different polyhedron: D,“dual” to P

Theorem (Running Time)

Let ve : # vertices of P, d fixedO(ve

Θ(d) poly(n,m, L) + veΘ(d2))

19 of 38

Page 46: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

A Dual Variant of Benson’s Algorithm

History

Geometric duality in MOLP from [Heyde and Lohne 2008]

Algorithm proposed in [Ehrgott, Lohne, Shao 2007/2012]

Dual Variant of Benson’s Algorithm

Pretty much the same strategy

Different polyhedron: D,“dual” to P

Theorem (Running Time)

Let ve : # vertices of P, d fixedO(ve

Θ(d) poly(n,m, L) + veΘ(d2))

19 of 38

Page 47: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

A Dual Variant of Benson’s Algorithm

History

Geometric duality in MOLP from [Heyde and Lohne 2008]

Algorithm proposed in [Ehrgott, Lohne, Shao 2007/2012]

Dual Variant of Benson’s Algorithm

Pretty much the same strategy

Different polyhedron: D,“dual” to P

Theorem (Running Time)

Let ve : # vertices of P, d fixedO(ve

Θ(d) poly(n,m, L) + veΘ(d2))

19 of 38

Page 48: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Encoding Lengths

LP Oracle

P1(`) : min`TCx | x ∈ Rn,Ax ≥ b

Again: How large can ` become?

Lemma (Encoding Length of Intermediate dual ExtremePoints)

For each intermediate extreme point v : |vi | ∈ O(poly(n, L))

20 of 38

Page 49: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Improved Algorithm

Theorem (Finding Facets)

By solving a lexicographic variant of the single objective LP, weensure that for an optimal point y of D the hyperplane supports Din a facet containing y .

Theorem (Running Time w.r.t. vertices and facets of P)

Let ve : # vertices, vf : # facets of P, d fixedImproved version’s running time:O((ve + vf ) poly(n,m, L) + ve

Θ(d))

Theorem (Running Time w.r.t. vertices P)

Let ve # vertices of P, d fixedImproved version’s running time: O(ve

Θ(d) poly(n,m, L) + veΘ(d))

21 of 38

Page 50: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Improved Algorithm

Theorem (Finding Facets)

By solving a lexicographic variant of the single objective LP, weensure that for an optimal point y of D the hyperplane supports Din a facet containing y .

Theorem (Running Time w.r.t. vertices and facets of P)

Let ve : # vertices, vf : # facets of P, d fixedImproved version’s running time:O((ve + vf ) poly(n,m, L) + ve

Θ(d))

Theorem (Running Time w.r.t. vertices P)

Let ve # vertices of P, d fixedImproved version’s running time: O(ve

Θ(d) poly(n,m, L) + veΘ(d))

21 of 38

Page 51: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

And considering the delay?

Original Algorithm

Number of iterations: number of faces/facets

Might take many iterations until new extreme point is found

Theorem (Delay of the Dual Algorithm)

Let’s fix d , k is number of extreme points so far,using the improved algorithm we get a delay of:

O(kΘ(d) poly(n,m, L))

22 of 38

Page 52: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Outline

1 Model of Computation

2 Multiobjective Linear Optimization

3 Benson’s Algorithm

4 Multiobjective Combinatorial Optimization

5 Experiments

23 of 38

Page 53: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Multiobjective Combinatorial Optimization

Definition (Instance of a MOCO Problem)

An instance of a MOCO problem consists of

a finite base set A,

a set of feasible solutions S ⊆ 2A and

a cost function c : A 7→ Rd .

Implicit cost function for x ∈ S : c(x) :=∑

ω∈x c(ω)

Definition (MOCO Problem)

For each non-dominated y ∈ Y := c(S): find a solution x ∈ Ssuch that c(x) = y

24 of 38

Page 54: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Multiobjective Combinatorial Optimization

Definition (Instance of a MOCO Problem)

An instance of a MOCO problem consists of

a finite base set A,

a set of feasible solutions S ⊆ 2A and

a cost function c : A 7→ Rd .

Implicit cost function for x ∈ S : c(x) :=∑

ω∈x c(ω)

Definition (MOCO Problem)

For each non-dominated y ∈ Y := c(S): find a solution x ∈ Ssuch that c(x) = y

24 of 38

Page 55: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Finding Extreme Points of the Pareto-Frontier

Previous work for d > 2

Przybylski, Gandibleux, Ehrgott 2010 (PGE10)

Huge improvements for d = 3Experiments for d = 3No performance guarantees

Ozpeynirci and Koksalan 2010 (OK10)

Experiments for d ∈ 3, 4No performance guarantees

Theoretical Running Time Guarantees

Okamoto and Uno 2007

Polynomial delay for finding supported spanning treesNo experiments

25 of 38

Page 56: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Finding Extreme Points of the Pareto-Frontier

Previous work for d > 2

Przybylski, Gandibleux, Ehrgott 2010 (PGE10)

Huge improvements for d = 3Experiments for d = 3No performance guarantees

Ozpeynirci and Koksalan 2010 (OK10)

Experiments for d ∈ 3, 4No performance guarantees

Theoretical Running Time Guarantees

Okamoto and Uno 2007

Polynomial delay for finding supported spanning treesNo experiments

25 of 38

Page 57: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Why Dual of Benson’s Algorithm?

Relation MOCO and MOLP

For instance of MOCO exists MOLP s.t. YX = vertPP is always bounded from below

We do not have to construct the MOLP explicitly

We only have to solve oracle problems:

of the single objective version (P1)of a lexicographic version (lex-P)

of the problem

Lexicographic Optimization

Usually not much harder than single objective optimization

e.g., Matroids, Shortest Path, Assignments, ...

26 of 38

Page 58: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Why Dual of Benson’s Algorithm?

Relation MOCO and MOLP

For instance of MOCO exists MOLP s.t. YX = vertPP is always bounded from below

We do not have to construct the MOLP explicitly

We only have to solve oracle problems:

of the single objective version (P1)of a lexicographic version (lex-P)

of the problem

Lexicographic Optimization

Usually not much harder than single objective optimization

e.g., Matroids, Shortest Path, Assignments, ...

26 of 38

Page 59: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Results

Theorem (Dual Algorithm for MOCO)

For MOCO O, fixed d and P1 ∈ P: YX of O can be enumerated inpolynomial total time

Theorem (Improved Dual Algorithm for MOCO)

For MOCO O, fixed d and lex-P1 ∈ P: YX of O can beenumerated in incremental polynomial time

27 of 38

Page 60: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Outline

1 Model of Computation

2 Multiobjective Linear Optimization

3 Benson’s Algorithm

4 Multiobjective Combinatorial Optimization

5 Experiments

28 of 38

Page 61: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Experiment Overview

Setup

Implemented combinatorial dual algorithm in C++

DD Method:

For d ∈ 3, 4: DD algorithm with adjacency informationFor d > 4: CDD library by K. Fukuda

29 of 38

Page 62: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

MO Assignment Problem Experiments

General

Benchmark problem used in many experiments before

Complete bipartite graph, U ∪ W = V , |U| = |W |We draw weights i.i.d. from 0, . . . , 20For each number of nodes: 10 independent instances

For d = 3: Instances from PGE10

lex-P Solver

Using Hungarian algorithm to find lexicographic minimalassignments

30 of 38

Page 63: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

MO Assignment Problem Experiments

General

Benchmark problem used in many experiments before

Complete bipartite graph, U ∪ W = V , |U| = |W |We draw weights i.i.d. from 0, . . . , 20For each number of nodes: 10 independent instances

For d = 3: Instances from PGE10

lex-P Solver

Using Hungarian algorithm to find lexicographic minimalassignments

30 of 38

Page 64: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Comparison - Outline

PGE10

CPU: P4 EE 3.73 GHz,Mem: 4 GB

Does not filternon-extreme points

Numerical problems forlarger n

OK10

CPU: Pentium M 1.6 Ghz,Mem: 256MB

Not same instances,similarly generated

Our implementation

CPU: Core i7-3770 3.4 GHz, Mem: 16 GB

Did not find numerical problems

31 of 38

Page 65: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Comparison: d = 3

20 40 60 80 100

02

46

810

Number of Nodes

Mea

n R

unni

ng T

ime

[s]

PGE10OK10Dual Benson

Summary

PGE10 faster

OK10 for n = 60: 418.84s

Does OK10 suffer fromCPU only?

Reimplementation needed

32 of 38

Page 66: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Comparison: d = 3

20 40 60 80 100

02

46

810

Number of Nodes

Mea

n R

unni

ng T

ime

[s]

PGE10OK10Dual Benson

Summary

PGE10 faster

OK10 for n = 60: 418.84s

Does OK10 suffer fromCPU only?

Reimplementation needed

32 of 38

Page 67: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Comparison: d = 3

20 40 60 80 100

02

46

810

Number of Nodes

Mea

n R

unni

ng T

ime

[s]

PGE10OK10Dual Benson

Summary

PGE10 faster

OK10 for n = 60: 418.84s

Does OK10 suffer fromCPU only?

Reimplementation needed

32 of 38

Page 68: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Comparison: d = 3

20 40 60 80 100

02

46

810

Number of Nodes

Mea

n R

unni

ng T

ime

[s]

PGE10OK10Dual Benson

Summary

PGE10 faster

OK10 for n = 60: 418.84s

Does OK10 suffer fromCPU only?

Reimplementation needed

32 of 38

Page 69: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Assignment Instances, d = 4

20 30 40 50 60 70 80 90

01000

2000

3000

4000

Number of Nodes

Run

ning

Tim

e [s

]

0 5000 10000 15000

01000

2000

3000

4000

Number of Extreme Points

Run

ning

Tim

e [s

]

n = 20: Mean running times: OK10: 18.58s, Dual Benson: 0.12s33 of 38

Page 70: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Assignment Instances, d = 5

16 20 24 28 32 36

01000

2000

3000

4000

Number of Nodes

Run

ning

Tim

e [s

]

0 1000 2000 3000 4000

01000

2000

3000

4000

Number of Extreme Points

Run

ning

Tim

e [s

]

34 of 38

Page 71: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

MO Spanning Tree Problem Experiments

Input Graphs

Using graphs similar to [Johnson, Minkoff, Phillips 2000]

MST on points in the plane, parameter to adjust density

Instances here: mean density of 2

First objective function: Euclidean distance

Other objective functions: i.i.d. from 1, . . . , 10030 instances per number of nodes

lex-P Solver

Using Kruskal’s algorithm with lexicographic sorting, UNION FINDdata structure, path compression

35 of 38

Page 72: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

MO Spanning Tree Problem Experiments

Input Graphs

Using graphs similar to [Johnson, Minkoff, Phillips 2000]

MST on points in the plane, parameter to adjust density

Instances here: mean density of 2

First objective function: Euclidean distance

Other objective functions: i.i.d. from 1, . . . , 10030 instances per number of nodes

lex-P Solver

Using Kruskal’s algorithm with lexicographic sorting, UNION FINDdata structure, path compression

35 of 38

Page 73: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Spanning Tree Instances, d = 3

30 50 70 90 110 130 150

05

1015

2025

30

Number of Nodes

Run

ning

Tim

e [s

]

0 2000 4000 6000 8000

05

1015

2025

30

Number of Extreme Points

Run

ning

Tim

e [s

]

36 of 38

Page 74: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Spanning Tree Instances, d = 5

8 10 12 14 16 18 20 22 24

05000

15000

25000

Number of Nodes

Run

ning

Tim

e [s

]

0 2000 4000 6000 8000

05000

15000

25000

Number of Extreme Points

Run

ning

Tim

e [s

]

37 of 38

Page 75: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Summary

General

Enumerating (parts of) the Pareto-frontier is an enumerationproblem

MOLP

Fixed d : Benson’s Algorithm and Dual Variant run in PTT

Improvements through finding of facets, Dual Variant in IncP,Speedup when using suggested improvements

MOCO

Fixed d : If P1 ∈ P (lex-P1 ∈ P): Finding of YX in PTT(IncP)

Dual algorithm is practically capable of finding YX for MOCOs38 of 38

Page 76: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Sorting Gap

200 400 600 800

05

1015

20

Spanning Tree Instances, d=3, a=.75

Number of Edges

Kru

skal

: Cum

ulat

ed R

unni

ng T

ime

[s]

1 of 2

Page 77: Running time analyses of Benson type algorithms with an …moo.univie.ac.at/.../uploads/2014/Boekler-Vienna-2014.pdf · 2014. 10. 20. · Running time analyses of Benson type algorithms

Hungarian Algorithm for Lex-AP

C ∈ Rd×n

lexmin Cx

i ∈ [n] :∑j∈[n]

xij = 1

j ∈ [n] :∑i∈[n]

xij = 1

xij ≥ 0

lexmax2n∑i=0

Ui

(i , j) ∈ V ×W : Ui + Uj ≤lex Cij

U ∈ Rd×2n

2 of 2