multiobjective linear programming

176
Multiobjective Linear Programming Biobjective LPs and Parametric Simplex Multiobjective Simplex Method International Doctoral School Algorithmic Decision Theory: MCDA and MOO Lecture 2: Multiobjective Linear Programming 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 Matthias Ehrgott MOLP I

Upload: dothuan

Post on 12-Jan-2017

236 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

International Doctoral School Algorithmic DecisionTheory: MCDA and MOO

Lecture 2: Multiobjective Linear Programming

Matthias Ehrgott

Department of Engineering Science, The University of Auckland, New ZealandLaboratoire d’Informatique de Nantes Atlantique, CNRS, Universite de Nantes,

France

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

Matthias Ehrgott MOLP I

Page 2: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 3: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 4: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Variables x ∈ Rn

Objective function Cx where C ∈ Rp×n

Constraints Ax = b where A ∈ Rm×n and b ∈ Rm

min {Cx : Ax = b, x = 0} (1)

X = {x ∈ Rn : Ax = b, x = 0}

is the feasible set in decision space

Y = {Cx : x ∈ X}

is the feasible set in objective space

Matthias Ehrgott MOLP I

Page 5: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Variables x ∈ Rn

Objective function Cx where C ∈ Rp×n

Constraints Ax = b where A ∈ Rm×n and b ∈ Rm

min {Cx : Ax = b, x = 0} (1)

X = {x ∈ Rn : Ax = b, x = 0}

is the feasible set in decision space

Y = {Cx : x ∈ X}

is the feasible set in objective space

Matthias Ehrgott MOLP I

Page 6: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Variables x ∈ Rn

Objective function Cx where C ∈ Rp×n

Constraints Ax = b where A ∈ Rm×n and b ∈ Rm

min {Cx : Ax = b, x = 0} (1)

X = {x ∈ Rn : Ax = b, x = 0}

is the feasible set in decision space

Y = {Cx : x ∈ X}

is the feasible set in objective space

Matthias Ehrgott MOLP I

Page 7: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Variables x ∈ Rn

Objective function Cx where C ∈ Rp×n

Constraints Ax = b where A ∈ Rm×n and b ∈ Rm

min {Cx : Ax = b, x = 0} (1)

X = {x ∈ Rn : Ax = b, x = 0}

is the feasible set in decision space

Y = {Cx : x ∈ X}

is the feasible set in objective space

Matthias Ehrgott MOLP I

Page 8: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Example

min

(3x1 + x2

−x1 − 2x2

)subject to x2 5 3

3x1 − x2 5 6

x = 0

C =

(3 1

−1 −2

)A =

(0 1 1 03 −1 0 1

)b =

(36

)

Matthias Ehrgott MOLP I

Page 9: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Example

min

(3x1 + x2

−x1 − 2x2

)subject to x2 5 3

3x1 − x2 5 6

x = 0

C =

(3 1

−1 −2

)A =

(0 1 1 03 −1 0 1

)b =

(36

)

Matthias Ehrgott MOLP I

Page 10: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Feasible set in decision space

Matthias Ehrgott MOLP I

Page 11: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

0 1 2 3 4 5 6 7 8 9 10 11 12 13 140

-1

-2

-3

-4

-5

-6

-7

-8

-9

-10

Y

Cx1

Cx2

Cx3

Cx4

Feasible set in objective space

Matthias Ehrgott MOLP I

Page 12: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Definition

Let x ∈ X be a feasible solution of the MOLP (1) and let y = Cx .

x is called weakly efficient if there is no x ∈ X such thatCx < Cx ; y = Cx is called weakly nondominated.

x is called efficient if there is no x ∈ X such that Cx ≤ Cx ;y = Cx is called nondominated.

x is called properly efficient if it is efficient and if there exists areal number M > 0 such that for all i and x with cT

i x < cTi x

there is an index j and M > 0 such that cTj x > cT

j x and

cTi x − cT

i x

cTj x − cT

j x≤ M.

Matthias Ehrgott MOLP I

Page 13: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Definition

Let x ∈ X be a feasible solution of the MOLP (1) and let y = Cx .

x is called weakly efficient if there is no x ∈ X such thatCx < Cx ; y = Cx is called weakly nondominated.

x is called efficient if there is no x ∈ X such that Cx ≤ Cx ;y = Cx is called nondominated.

x is called properly efficient if it is efficient and if there exists areal number M > 0 such that for all i and x with cT

i x < cTi x

there is an index j and M > 0 such that cTj x > cT

j x and

cTi x − cT

i x

cTj x − cT

j x≤ M.

Matthias Ehrgott MOLP I

Page 14: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Definition

Let x ∈ X be a feasible solution of the MOLP (1) and let y = Cx .

x is called weakly efficient if there is no x ∈ X such thatCx < Cx ; y = Cx is called weakly nondominated.

x is called efficient if there is no x ∈ X such that Cx ≤ Cx ;y = Cx is called nondominated.

x is called properly efficient if it is efficient and if there exists areal number M > 0 such that for all i and x with cT

i x < cTi x

there is an index j and M > 0 such that cTj x > cT

j x and

cTi x − cT

i x

cTj x − cT

j x≤ M.

Matthias Ehrgott MOLP I

Page 15: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Definition

Let x ∈ X be a feasible solution of the MOLP (1) and let y = Cx .

x is called weakly efficient if there is no x ∈ X such thatCx < Cx ; y = Cx is called weakly nondominated.

x is called efficient if there is no x ∈ X such that Cx ≤ Cx ;y = Cx is called nondominated.

x is called properly efficient if it is efficient and if there exists areal number M > 0 such that for all i and x with cT

i x < cTi x

there is an index j and M > 0 such that cTj x > cT

j x and

cTi x − cT

i x

cTj x − cT

j x≤ M.

Matthias Ehrgott MOLP I

Page 16: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

0 1 2 3 4 5 6 7 8 9 10 11 12 13 140

-1

-2

-3

-4

-5

-6

-7

-8

-9

-10

Y

Cx1

Cx2

Cx3

Cx4

Nondominated set

Matthias Ehrgott MOLP I

Page 17: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Efficient set

Matthias Ehrgott MOLP I

Page 18: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 19: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Let λ1, . . . , λp = 0 and consider

LP(λ) min

p∑k=1

λkcTk x = minλTCx

subject to Ax = b

x = 0

with some vector λ ≥ 0 (Why not λ = 0 or λ ≤ 0?)

LP(λ) is a linear programme that can be solved by theSimplex method

If λ > 0 then optimal solution of LP(λ) is properly efficient

If λ ≥ 0 then optimal solution of LP(λ) is weakly efficient

Converse also true, because Y convex

Matthias Ehrgott MOLP I

Page 20: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Let λ1, . . . , λp = 0 and consider

LP(λ) min

p∑k=1

λkcTk x = minλTCx

subject to Ax = b

x = 0

with some vector λ ≥ 0 (Why not λ = 0 or λ ≤ 0?)

LP(λ) is a linear programme that can be solved by theSimplex method

If λ > 0 then optimal solution of LP(λ) is properly efficient

If λ ≥ 0 then optimal solution of LP(λ) is weakly efficient

Converse also true, because Y convex

Matthias Ehrgott MOLP I

Page 21: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Let λ1, . . . , λp = 0 and consider

LP(λ) min

p∑k=1

λkcTk x = minλTCx

subject to Ax = b

x = 0

with some vector λ ≥ 0 (Why not λ = 0 or λ ≤ 0?)

LP(λ) is a linear programme that can be solved by theSimplex method

If λ > 0 then optimal solution of LP(λ) is properly efficient

If λ ≥ 0 then optimal solution of LP(λ) is weakly efficient

Converse also true, because Y convex

Matthias Ehrgott MOLP I

Page 22: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Let λ1, . . . , λp = 0 and consider

LP(λ) min

p∑k=1

λkcTk x = minλTCx

subject to Ax = b

x = 0

with some vector λ ≥ 0 (Why not λ = 0 or λ ≤ 0?)

LP(λ) is a linear programme that can be solved by theSimplex method

If λ > 0 then optimal solution of LP(λ) is properly efficient

If λ ≥ 0 then optimal solution of LP(λ) is weakly efficient

Converse also true, because Y convex

Matthias Ehrgott MOLP I

Page 23: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Let λ1, . . . , λp = 0 and consider

LP(λ) min

p∑k=1

λkcTk x = minλTCx

subject to Ax = b

x = 0

with some vector λ ≥ 0 (Why not λ = 0 or λ ≤ 0?)

LP(λ) is a linear programme that can be solved by theSimplex method

If λ > 0 then optimal solution of LP(λ) is properly efficient

If λ ≥ 0 then optimal solution of LP(λ) is weakly efficient

Converse also true, because Y convex

Matthias Ehrgott MOLP I

Page 24: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Illustration in objective space

2 4 6 8 10 12 14

−10

−8

−6

−4

−2

0

2

...........................................................

.......................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Y = CX

Cx1

Cx2

Cx3

Cx4

y1

y2

{(λ1)T Cx = α1}

{(λ2)T Cx = α2}

{(λ3)T Cx = α3}

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..................................................................................................................................................................................................................................................................................................................................................................................................................................................................

..

........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

...................................................................................................................................................................................................................................................................................................................................................

λ1 = (2, 1), λ2 = (1, 3), λ3 = (1, 1)

Matthias Ehrgott MOLP I

Page 25: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Illustration in objective space

2 4 6 8 10 12 14

−10

−8

−6

−4

−2

0

2

...........................................................

.......................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Y = CX

Cx1

Cx2

Cx3

Cx4

y1

y2

{(λ1)T Cx = α1}

{(λ2)T Cx = α2}

{(λ3)T Cx = α3}

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..................................................................................................................................................................................................................................................................................................................................................................................................................................................................

..

........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

...................................................................................................................................................................................................................................................................................................................................................

λ1 = (2, 1), λ2 = (1, 3), λ3 = (1, 1)

Matthias Ehrgott MOLP I

Page 26: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

y ∈ Rp satisfying λT y = α define a straight line (hyperplane)

Since y = Cx and λTCx is minimised, we push the linetowards the origin (left and down)

When the line only touches Y nondominated points are found

Nondominated points YN are on the boundary of Y

Y is convex polyhedron and has finite number of facets. YN

consists of finitely many facets of Y . The normal of the facetcan serve as weight vector λ

Matthias Ehrgott MOLP I

Page 27: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

y ∈ Rp satisfying λT y = α define a straight line (hyperplane)

Since y = Cx and λTCx is minimised, we push the linetowards the origin (left and down)

When the line only touches Y nondominated points are found

Nondominated points YN are on the boundary of Y

Y is convex polyhedron and has finite number of facets. YN

consists of finitely many facets of Y . The normal of the facetcan serve as weight vector λ

Matthias Ehrgott MOLP I

Page 28: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

y ∈ Rp satisfying λT y = α define a straight line (hyperplane)

Since y = Cx and λTCx is minimised, we push the linetowards the origin (left and down)

When the line only touches Y nondominated points are found

Nondominated points YN are on the boundary of Y

Y is convex polyhedron and has finite number of facets. YN

consists of finitely many facets of Y . The normal of the facetcan serve as weight vector λ

Matthias Ehrgott MOLP I

Page 29: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

y ∈ Rp satisfying λT y = α define a straight line (hyperplane)

Since y = Cx and λTCx is minimised, we push the linetowards the origin (left and down)

When the line only touches Y nondominated points are found

Nondominated points YN are on the boundary of Y

Y is convex polyhedron and has finite number of facets. YN

consists of finitely many facets of Y . The normal of the facetcan serve as weight vector λ

Matthias Ehrgott MOLP I

Page 30: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

y ∈ Rp satisfying λT y = α define a straight line (hyperplane)

Since y = Cx and λTCx is minimised, we push the linetowards the origin (left and down)

When the line only touches Y nondominated points are found

Nondominated points YN are on the boundary of Y

Y is convex polyhedron and has finite number of facets. YN

consists of finitely many facets of Y . The normal of the facetcan serve as weight vector λ

Matthias Ehrgott MOLP I

Page 31: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Question: Can all efficient solutions be found using weighted sums?If x ∈ X is efficient, does there exist λ > 0 such that x is optimalsolution to

min{λTCx : Ax = b, x = 0}?

Lemma

A feasible solution x0 ∈ X is efficient if and only if the linearprogramme

max eT zsubject to Ax = b

Cx + Iz = Cx0

x , z = 0,

(2)

where eT = (1, . . . , 1) ∈ Rp and I is the p × p identity matrix, hasan optimal solution (x , z) with z = 0.

Matthias Ehrgott MOLP I

Page 32: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Question: Can all efficient solutions be found using weighted sums?If x ∈ X is efficient, does there exist λ > 0 such that x is optimalsolution to

min{λTCx : Ax = b, x = 0}?

Lemma

A feasible solution x0 ∈ X is efficient if and only if the linearprogramme

max eT zsubject to Ax = b

Cx + Iz = Cx0

x , z = 0,

(2)

where eT = (1, . . . , 1) ∈ Rp and I is the p × p identity matrix, hasan optimal solution (x , z) with z = 0.

Matthias Ehrgott MOLP I

Page 33: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Question: Can all efficient solutions be found using weighted sums?If x ∈ X is efficient, does there exist λ > 0 such that x is optimalsolution to

min{λTCx : Ax = b, x = 0}?

Lemma

A feasible solution x0 ∈ X is efficient if and only if the linearprogramme

max eT zsubject to Ax = b

Cx + Iz = Cx0

x , z = 0,

(2)

where eT = (1, . . . , 1) ∈ Rp and I is the p × p identity matrix, hasan optimal solution (x , z) with z = 0.

Matthias Ehrgott MOLP I

Page 34: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 35: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 36: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 37: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 38: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 39: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 40: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

LP is always feasible with x = x0, z = 0 (and value 0)

Let (x , z) be optimal solution

If z = 0 then z = Cx0 − Cx = 0 ⇒ Cx0 = Cx

There is no x ∈ X such that Cx ≤ Cx0 because (x ,Cx0 − Cx)would be better solution ⇒ x0 efficient

If x0 efficient there is no x ∈ X with Cx ≤ Cx0

⇒ there is no z with z = Cx0 − Cx ≥ 0

⇒ max eT z 5 0 ⇒ max eT z = 0

Matthias Ehrgott MOLP I

Page 41: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Lemma

A feasible solution x0 ∈ X is efficient if and only if the linearprogramme

min uTb + wTCx0

subject to uTA + wTC = 0w = eu ∈ Rm

(3)

has an optimal solution (u, w) with uTb + wTCx0 = 0.

Proof.

The LP (3) is the dual of the LP (2)

Matthias Ehrgott MOLP I

Page 42: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Lemma

A feasible solution x0 ∈ X is efficient if and only if the linearprogramme

min uTb + wTCx0

subject to uTA + wTC = 0w = eu ∈ Rm

(3)

has an optimal solution (u, w) with uTb + wTCx0 = 0.

Proof.

The LP (3) is the dual of the LP (2)

Matthias Ehrgott MOLP I

Page 43: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Theorem

A feasible solution x0 ∈ X is an efficient solution of the MOLP (1)if and only if there exists a λ ∈ Rp

> such that

λTCx0 ≤ λTCx (4)

for all x ∈ X.

Note: We already know that optimal solutions of weighted sumproblems are efficient

Matthias Ehrgott MOLP I

Page 44: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Theorem

A feasible solution x0 ∈ X is an efficient solution of the MOLP (1)if and only if there exists a λ ∈ Rp

> such that

λTCx0 ≤ λTCx (4)

for all x ∈ X.

Note: We already know that optimal solutions of weighted sumproblems are efficient

Matthias Ehrgott MOLP I

Page 45: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

Let x0 ∈ XE

By Lemma 4 LP (3) has an optimal solution (u, w) such that

uTb = −wTCx0 (5)

u is also an optimal solution of the LP

min{

uTb : uTA = −wTC}

, (6)

which is (3) with w = w fixed

⇒ There is an optimal solution of the dual of (6)

max{−wTCx : Ax = b, x = 0

}(7)

Matthias Ehrgott MOLP I

Page 46: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

Let x0 ∈ XE

By Lemma 4 LP (3) has an optimal solution (u, w) such that

uTb = −wTCx0 (5)

u is also an optimal solution of the LP

min{

uTb : uTA = −wTC}

, (6)

which is (3) with w = w fixed

⇒ There is an optimal solution of the dual of (6)

max{−wTCx : Ax = b, x = 0

}(7)

Matthias Ehrgott MOLP I

Page 47: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

Let x0 ∈ XE

By Lemma 4 LP (3) has an optimal solution (u, w) such that

uTb = −wTCx0 (5)

u is also an optimal solution of the LP

min{

uTb : uTA = −wTC}

, (6)

which is (3) with w = w fixed

⇒ There is an optimal solution of the dual of (6)

max{−wTCx : Ax = b, x = 0

}(7)

Matthias Ehrgott MOLP I

Page 48: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

Let x0 ∈ XE

By Lemma 4 LP (3) has an optimal solution (u, w) such that

uTb = −wTCx0 (5)

u is also an optimal solution of the LP

min{

uTb : uTA = −wTC}

, (6)

which is (3) with w = w fixed

⇒ There is an optimal solution of the dual of (6)

max{−wTCx : Ax = b, x = 0

}(7)

Matthias Ehrgott MOLP I

Page 49: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

By weak duality uTb ≥ −wTCx for all feasible solutions u of(6) and for all feasible solutions x of (7)

We already know that uTb = −wTCx0 from (5)

⇒ x0 is an optimal solution of (7)

Note that (7) is equivalent to

min{

wTCx : Ax = b, x = 0}

with w = e > 0 from the constraints in (3)

Matthias Ehrgott MOLP I

Page 50: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

By weak duality uTb ≥ −wTCx for all feasible solutions u of(6) and for all feasible solutions x of (7)

We already know that uTb = −wTCx0 from (5)

⇒ x0 is an optimal solution of (7)

Note that (7) is equivalent to

min{

wTCx : Ax = b, x = 0}

with w = e > 0 from the constraints in (3)

Matthias Ehrgott MOLP I

Page 51: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

By weak duality uTb ≥ −wTCx for all feasible solutions u of(6) and for all feasible solutions x of (7)

We already know that uTb = −wTCx0 from (5)

⇒ x0 is an optimal solution of (7)

Note that (7) is equivalent to

min{

wTCx : Ax = b, x = 0}

with w = e > 0 from the constraints in (3)

Matthias Ehrgott MOLP I

Page 52: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

Formulation and ExampleSolving MOLPs by Weighted Sums

Proof.

By weak duality uTb ≥ −wTCx for all feasible solutions u of(6) and for all feasible solutions x of (7)

We already know that uTb = −wTCx0 from (5)

⇒ x0 is an optimal solution of (7)

Note that (7) is equivalent to

min{

wTCx : Ax = b, x = 0}

with w = e > 0 from the constraints in (3)

Matthias Ehrgott MOLP I

Page 53: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 54: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Modification of the Simplex algorithm for LPs with twoobjectives

min((c1)T x , (c2)T x

)subject to Ax = b

x = 0(8)

We can find all efficient solutions by solving the parametric LP

min{

λ1(c1)T x + λ2(c

2)T x : Ax = b, x = 0}

for all λ = (λ1, λ2) > 0

Matthias Ehrgott MOLP I

Page 55: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Modification of the Simplex algorithm for LPs with twoobjectives

min((c1)T x , (c2)T x

)subject to Ax = b

x = 0(8)

We can find all efficient solutions by solving the parametric LP

min{

λ1(c1)T x + λ2(c

2)T x : Ax = b, x = 0}

for all λ = (λ1, λ2) > 0

Matthias Ehrgott MOLP I

Page 56: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

We can divide the objective by λ1 + λ2 without changing theoptima, i.e. λ′1 = λ1/(λ1 + λ2), λ′2 = λ2/(λ1 + λ2 andλ′1 + λ′2 = 1 or

λ′2 = 1− λ′1

LPs with one parameter 0 5 λ 5 1 and parametric objective

c(λ) := λc1 + (1− λ)c2

min{

c(λ)T x : Ax = b, x = 0}

(9)

Matthias Ehrgott MOLP I

Page 57: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

We can divide the objective by λ1 + λ2 without changing theoptima, i.e. λ′1 = λ1/(λ1 + λ2), λ′2 = λ2/(λ1 + λ2 andλ′1 + λ′2 = 1 or

λ′2 = 1− λ′1

LPs with one parameter 0 5 λ 5 1 and parametric objective

c(λ) := λc1 + (1− λ)c2

min{

c(λ)T x : Ax = b, x = 0}

(9)

Matthias Ehrgott MOLP I

Page 58: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Let B be a feasible basis

Recall reduced cost cN = cN − cTB B−1N

Reduced cost for the parametric LP

c(λ) = λc1 + (1− λ)c2 (10)

Suppose B is an optimal basis of (9) for some λ

c(λ) = 0

Matthias Ehrgott MOLP I

Page 59: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Let B be a feasible basis

Recall reduced cost cN = cN − cTB B−1N

Reduced cost for the parametric LP

c(λ) = λc1 + (1− λ)c2 (10)

Suppose B is an optimal basis of (9) for some λ

c(λ) = 0

Matthias Ehrgott MOLP I

Page 60: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Let B be a feasible basis

Recall reduced cost cN = cN − cTB B−1N

Reduced cost for the parametric LP

c(λ) = λc1 + (1− λ)c2 (10)

Suppose B is an optimal basis of (9) for some λ

c(λ) = 0

Matthias Ehrgott MOLP I

Page 61: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Let B be a feasible basis

Recall reduced cost cN = cN − cTB B−1N

Reduced cost for the parametric LP

c(λ) = λc1 + (1− λ)c2 (10)

Suppose B is an optimal basis of (9) for some λ

c(λ) = 0

Matthias Ehrgott MOLP I

Page 62: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Let B be a feasible basis

Recall reduced cost cN = cN − cTB B−1N

Reduced cost for the parametric LP

c(λ) = λc1 + (1− λ)c2 (10)

Suppose B is an optimal basis of (9) for some λ

c(λ) = 0

Matthias Ehrgott MOLP I

Page 63: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 64: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 65: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 66: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 67: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 68: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 69: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 70: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 71: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Case 1: c2 = 0

From (10) c(λ) = 0 for all λ < λ

B is optimal basis for all 0 5 λ 5 λ

Case 2: There is at least one i ∈ N with c2i < 0

⇒ there is λ < λ such that c(λ)i = 0

λc1i + (1− λ)c2

i = 0

λ(c1i − c2

i ) + c2i = 0

λ =−c2

i

c1i −c2

i

Below this value B is not optimal

Matthias Ehrgott MOLP I

Page 72: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

I = {i ∈ N : c2i < 0, c1

i = 0}

λ′ := maxi∈I

−c2i

c1i − c2

i

. (11)

B is optimal for all λ ∈ [λ′, λ]

As soon as λ < λ′ new bases become optimal

Entering variable xs has to be chosen where the maximum in(11) is attained for i = s

Matthias Ehrgott MOLP I

Page 73: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

I = {i ∈ N : c2i < 0, c1

i = 0}

λ′ := maxi∈I

−c2i

c1i − c2

i

. (11)

B is optimal for all λ ∈ [λ′, λ]

As soon as λ < λ′ new bases become optimal

Entering variable xs has to be chosen where the maximum in(11) is attained for i = s

Matthias Ehrgott MOLP I

Page 74: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

I = {i ∈ N : c2i < 0, c1

i = 0}

λ′ := maxi∈I

−c2i

c1i − c2

i

. (11)

B is optimal for all λ ∈ [λ′, λ]

As soon as λ < λ′ new bases become optimal

Entering variable xs has to be chosen where the maximum in(11) is attained for i = s

Matthias Ehrgott MOLP I

Page 75: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

I = {i ∈ N : c2i < 0, c1

i = 0}

λ′ := maxi∈I

−c2i

c1i − c2

i

. (11)

B is optimal for all λ ∈ [λ′, λ]

As soon as λ < λ′ new bases become optimal

Entering variable xs has to be chosen where the maximum in(11) is attained for i = s

Matthias Ehrgott MOLP I

Page 76: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

I = {i ∈ N : c2i < 0, c1

i = 0}

λ′ := maxi∈I

−c2i

c1i − c2

i

. (11)

B is optimal for all λ ∈ [λ′, λ]

As soon as λ < λ′ new bases become optimal

Entering variable xs has to be chosen where the maximum in(11) is attained for i = s

Matthias Ehrgott MOLP I

Page 77: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Algorithm (Parametric Simplex for biobjective LPs)

Input: Data A, b, C for a biobjective LP.

Phase I: Solve the auxiliary LP for Phase I using the Simplex algorithm. Ifthe optimal value is positive, STOP, X = ∅. Otherwise let B be an optimalbasis.

Phase II: Solve the LP (9) for λ = 1 starting from basis B found in Phase Iyielding an optimal basis B. Compute A and b.

Phase III: While I = {i ∈ N : c2i < 0, c1

i ≥ 0} 6= ∅.

λ := maxi∈I

−c2i

c1i −c2

i.

s ∈ argmaxn

i ∈ I :−c2

i

c1i −c2

i

o.

r ∈ argminn

j ∈ B :bj

Ajs, Ajs > 0

o.

Let B := (B \ {r}) ∪ {s} and update A and b.

End while.

Output: Sequence of λ-values and sequence of optimal BFSs.

Matthias Ehrgott MOLP I

Page 78: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 79: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Example

min

(3x1 + x2

−x1 − 2x2

)subject to x2 5 3

3x1 − x2 5 6x = 0

LP(λ)

min (4λ− 1)x1 + (3λ− 2)x2

subject to x2 + x3 = 33x1 − x2 + x4 = 6

x = 0.

Matthias Ehrgott MOLP I

Page 80: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Use Simplex tableaus showing reduced cost vectors c1 and c2

Optimal basis for λ = 1 is B = {3, 4}, optimal basic feasiblesolution x = (0, 0, 3, 6)

Start with Phase 3

Matthias Ehrgott MOLP I

Page 81: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Use Simplex tableaus showing reduced cost vectors c1 and c2

Optimal basis for λ = 1 is B = {3, 4}, optimal basic feasiblesolution x = (0, 0, 3, 6)

Start with Phase 3

Matthias Ehrgott MOLP I

Page 82: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Use Simplex tableaus showing reduced cost vectors c1 and c2

Optimal basis for λ = 1 is B = {3, 4}, optimal basic feasiblesolution x = (0, 0, 3, 6)

Start with Phase 3

Matthias Ehrgott MOLP I

Page 83: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Iteration 1:

c1 3 1 0 0 0

c2 -1 -2 0 0 0

x3 0 1 1 0 3x4 3 -1 0 1 6

λ = 1, c(λ) = (3, 1, 0, 0), B1 = {3, 4}, x1 = (0, 0, 3, 6)

I = {1, 2}, λ′ = max{

13+1 , 2

1+2

}= 2

3

s = 2, r = 3

Matthias Ehrgott MOLP I

Page 84: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Iteration 2

c1 3 0 -1 0 -3

c2 -1 0 2 0 6

x2 0 1 1 0 3

x4 3 0 1 1 9

λ = 2/3, c(λ) = (5/3, 0, 0, 0), B2 = {2, 4}, x2 = (0, 3, 0, 9)

I = {1}, λ′ = max{

13+1

}= 1

4

s = 1, r = 4

Matthias Ehrgott MOLP I

Page 85: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Iteration 3

c1 0 0 -2 -1 -12

c2 0 0 7/3 1/3 9

x2 0 1 1 0 3x1 1 0 1/3 1/3 3

λ = 1/4, c(λ) = (0, 0, 5/4, 0), B3 = {1, 2}, x3 = (3, 3, 0, 0)I = ∅

Matthias Ehrgott MOLP I

Page 86: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 87: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 88: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 89: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 90: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 91: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 92: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight values λ1 = 1, λ2 = 2/3, λ3 = 1/4, λ4 = 0

Basic feasible solutions x1, x2, x3

In each iteration c(λ) can be calculated with the previous andcurrent c1 and c2.

Basis B1 = (3, 4) and BFS x1 = (0, 0, 3, 6) are optimal forλ ∈ [2/3, 1].

Basis B2 = (2, 4) and BFS x2 = (0, 3, 0, 9) are optimal forλ ∈ [1/4, 2/3], and

Basis B3 = (1, 2) and BFS x3 = (3, 3, 0, 0) are optimal forλ ∈ [0, 1/4].

Objective vectors for basic feasible solutions: Cx1 = (0, 0),Cx2 = (3,−6), and Cx3 = (12,−9)

Matthias Ehrgott MOLP I

Page 93: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Values λ = 2/3 and λ = 1/4 correspond to weight vectors(2/3, 1/3) and (1/4, 3/4)

Contour lines for weighted sum objectives in decision areparallel to efficient edges

2

3(3x1 + x2) +

1

3(−x1 − 2x2) =

5

3x1

1

4(3x1 + x2) +

3

4(−x1 − 2x2) = −5

4x2

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Feasible set in decision space andefficient set

Matthias Ehrgott MOLP I

Page 94: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Values λ = 2/3 and λ = 1/4 correspond to weight vectors(2/3, 1/3) and (1/4, 3/4)

Contour lines for weighted sum objectives in decision areparallel to efficient edges

2

3(3x1 + x2) +

1

3(−x1 − 2x2) =

5

3x1

1

4(3x1 + x2) +

3

4(−x1 − 2x2) = −5

4x2

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Feasible set in decision space andefficient set

Matthias Ehrgott MOLP I

Page 95: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Values λ = 2/3 and λ = 1/4 correspond to weight vectors(2/3, 1/3) and (1/4, 3/4)

Contour lines for weighted sum objectives in decision areparallel to efficient edges

2

3(3x1 + x2) +

1

3(−x1 − 2x2) =

5

3x1

1

4(3x1 + x2) +

3

4(−x1 − 2x2) = −5

4x2

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Feasible set in decision space andefficient set

Matthias Ehrgott MOLP I

Page 96: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Weight vectors (2/3, 1/3) and (1/4, 3/4) are normal tonondominated edges

0 1 2 3 4 5 6 7 8 9 10 11 12 13 140

-1

-2

-3

-4

-5

-6

-7

-8

-9

-10

Y

Cx1

Cx2

Cx3

Cx4

Objective space and nondominated set

Matthias Ehrgott MOLP I

Page 97: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Algorithm finds all nondominated extreme points in objectivespace and one efficient bfs for each of those

Algorithm does not find all efficient solutions just as Simplexalgorithm does not find all optimal solutions of an LP

Example

min (x1, x2)T

subject to 0 5 xi 5 1 i = 1, 2, 3

Efficient set: {x ∈ R3 : x1 = x2 = 0, 0 5 x3 5 1}

Matthias Ehrgott MOLP I

Page 98: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Algorithm finds all nondominated extreme points in objectivespace and one efficient bfs for each of those

Algorithm does not find all efficient solutions just as Simplexalgorithm does not find all optimal solutions of an LP

Example

min (x1, x2)T

subject to 0 5 xi 5 1 i = 1, 2, 3

Efficient set: {x ∈ R3 : x1 = x2 = 0, 0 5 x3 5 1}

Matthias Ehrgott MOLP I

Page 99: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

The Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

Algorithm finds all nondominated extreme points in objectivespace and one efficient bfs for each of those

Algorithm does not find all efficient solutions just as Simplexalgorithm does not find all optimal solutions of an LP

Example

min (x1, x2)T

subject to 0 5 xi 5 1 i = 1, 2, 3

Efficient set: {x ∈ R3 : x1 = x2 = 0, 0 5 x3 5 1}

Matthias Ehrgott MOLP I

Page 100: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 101: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

min{Cx : Ax = b, x = 0}Let B be a basis and C = C − CBA−1

B A and R = CN

How to calculate “critical” λ if p > 2?

At B1 : CN =

(3 1

−1 −2

), λ′ = 2/3, λ = (2/3, 1/3)T and

λT CN = (5/3, 0)T

At B2 : CN =

(3 −1

−1 2

), λ′ = 1/4, λ = (1/4, 3/4)T and

λT CN = (0, 5/4)T

Find λ ∈ Rp, λ > 0 such that λTR = 0 (optimality) andλT r j = 0 (alternative optimum) for some column r j of R

Matthias Ehrgott MOLP I

Page 102: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

min{Cx : Ax = b, x = 0}Let B be a basis and C = C − CBA−1

B A and R = CN

How to calculate “critical” λ if p > 2?

At B1 : CN =

(3 1

−1 −2

), λ′ = 2/3, λ = (2/3, 1/3)T and

λT CN = (5/3, 0)T

At B2 : CN =

(3 −1

−1 2

), λ′ = 1/4, λ = (1/4, 3/4)T and

λT CN = (0, 5/4)T

Find λ ∈ Rp, λ > 0 such that λTR = 0 (optimality) andλT r j = 0 (alternative optimum) for some column r j of R

Matthias Ehrgott MOLP I

Page 103: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

min{Cx : Ax = b, x = 0}Let B be a basis and C = C − CBA−1

B A and R = CN

How to calculate “critical” λ if p > 2?

At B1 : CN =

(3 1

−1 −2

), λ′ = 2/3, λ = (2/3, 1/3)T and

λT CN = (5/3, 0)T

At B2 : CN =

(3 −1

−1 2

), λ′ = 1/4, λ = (1/4, 3/4)T and

λT CN = (0, 5/4)T

Find λ ∈ Rp, λ > 0 such that λTR = 0 (optimality) andλT r j = 0 (alternative optimum) for some column r j of R

Matthias Ehrgott MOLP I

Page 104: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

min{Cx : Ax = b, x = 0}Let B be a basis and C = C − CBA−1

B A and R = CN

How to calculate “critical” λ if p > 2?

At B1 : CN =

(3 1

−1 −2

), λ′ = 2/3, λ = (2/3, 1/3)T and

λT CN = (5/3, 0)T

At B2 : CN =

(3 −1

−1 2

), λ′ = 1/4, λ = (1/4, 3/4)T and

λT CN = (0, 5/4)T

Find λ ∈ Rp, λ > 0 such that λTR = 0 (optimality) andλT r j = 0 (alternative optimum) for some column r j of R

Matthias Ehrgott MOLP I

Page 105: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

min{Cx : Ax = b, x = 0}Let B be a basis and C = C − CBA−1

B A and R = CN

How to calculate “critical” λ if p > 2?

At B1 : CN =

(3 1

−1 −2

), λ′ = 2/3, λ = (2/3, 1/3)T and

λT CN = (5/3, 0)T

At B2 : CN =

(3 −1

−1 2

), λ′ = 1/4, λ = (1/4, 3/4)T and

λT CN = (0, 5/4)T

Find λ ∈ Rp, λ > 0 such that λTR = 0 (optimality) andλT r j = 0 (alternative optimum) for some column r j of R

Matthias Ehrgott MOLP I

Page 106: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

min{Cx : Ax = b, x = 0}Let B be a basis and C = C − CBA−1

B A and R = CN

How to calculate “critical” λ if p > 2?

At B1 : CN =

(3 1

−1 −2

), λ′ = 2/3, λ = (2/3, 1/3)T and

λT CN = (5/3, 0)T

At B2 : CN =

(3 −1

−1 2

), λ′ = 1/4, λ = (1/4, 3/4)T and

λT CN = (0, 5/4)T

Find λ ∈ Rp, λ > 0 such that λTR = 0 (optimality) andλT r j = 0 (alternative optimum) for some column r j of R

Matthias Ehrgott MOLP I

Page 107: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

If XE 6= ∅ then X has an efficient basic feasible solution.

Proof.

There is some λ > 0 such that minx∈X λTCx has an optimalsolution

Thus LP(λ) has an optimal basic feasible solution solution,which is an efficient solution of the MOLP

Matthias Ehrgott MOLP I

Page 108: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

If XE 6= ∅ then X has an efficient basic feasible solution.

Proof.

There is some λ > 0 such that minx∈X λTCx has an optimalsolution

Thus LP(λ) has an optimal basic feasible solution solution,which is an efficient solution of the MOLP

Matthias Ehrgott MOLP I

Page 109: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

If XE 6= ∅ then X has an efficient basic feasible solution.

Proof.

There is some λ > 0 such that minx∈X λTCx has an optimalsolution

Thus LP(λ) has an optimal basic feasible solution solution,which is an efficient solution of the MOLP

Matthias Ehrgott MOLP I

Page 110: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Definition

1 A feasible basis B is called efficient basis if B is an optimalbasis of LP(λ) for some λ ∈ Rp

>.

2 Two bases B and B are called adjacent if one can be obtainedfrom the other by a single pivot step.

3 Let B be an efficient basis. Variable xj , j ∈ N is calledefficient nonbasic variable at B if there exists a λ ∈ Rp

> suchthat λTR = 0 and λT r j = 0, where r j is the column of Rcorresponding to variable xj .

4 Let B be an efficient basis and let xj be an efficient nonbasicvariable. Then a feasible pivot from B with xj entering thebasis (even with negative pivot element) is called an efficientpivot with respect to B and xj

Matthias Ehrgott MOLP I

Page 111: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Definition

1 A feasible basis B is called efficient basis if B is an optimalbasis of LP(λ) for some λ ∈ Rp

>.

2 Two bases B and B are called adjacent if one can be obtainedfrom the other by a single pivot step.

3 Let B be an efficient basis. Variable xj , j ∈ N is calledefficient nonbasic variable at B if there exists a λ ∈ Rp

> suchthat λTR = 0 and λT r j = 0, where r j is the column of Rcorresponding to variable xj .

4 Let B be an efficient basis and let xj be an efficient nonbasicvariable. Then a feasible pivot from B with xj entering thebasis (even with negative pivot element) is called an efficientpivot with respect to B and xj

Matthias Ehrgott MOLP I

Page 112: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Definition

1 A feasible basis B is called efficient basis if B is an optimalbasis of LP(λ) for some λ ∈ Rp

>.

2 Two bases B and B are called adjacent if one can be obtainedfrom the other by a single pivot step.

3 Let B be an efficient basis. Variable xj , j ∈ N is calledefficient nonbasic variable at B if there exists a λ ∈ Rp

> suchthat λTR = 0 and λT r j = 0, where r j is the column of Rcorresponding to variable xj .

4 Let B be an efficient basis and let xj be an efficient nonbasicvariable. Then a feasible pivot from B with xj entering thebasis (even with negative pivot element) is called an efficientpivot with respect to B and xj

Matthias Ehrgott MOLP I

Page 113: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Definition

1 A feasible basis B is called efficient basis if B is an optimalbasis of LP(λ) for some λ ∈ Rp

>.

2 Two bases B and B are called adjacent if one can be obtainedfrom the other by a single pivot step.

3 Let B be an efficient basis. Variable xj , j ∈ N is calledefficient nonbasic variable at B if there exists a λ ∈ Rp

> suchthat λTR = 0 and λT r j = 0, where r j is the column of Rcorresponding to variable xj .

4 Let B be an efficient basis and let xj be an efficient nonbasicvariable. Then a feasible pivot from B with xj entering thebasis (even with negative pivot element) is called an efficientpivot with respect to B and xj

Matthias Ehrgott MOLP I

Page 114: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

No efficient basis is optimal for all p objectives at the sametime

Therefore R always contains positive and negative entries

Proposition

Let B be an efficient basis. There exists an efficient nonbasicvariable at B.

Matthias Ehrgott MOLP I

Page 115: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

No efficient basis is optimal for all p objectives at the sametime

Therefore R always contains positive and negative entries

Proposition

Let B be an efficient basis. There exists an efficient nonbasicvariable at B.

Matthias Ehrgott MOLP I

Page 116: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

No efficient basis is optimal for all p objectives at the sametime

Therefore R always contains positive and negative entries

Proposition

Let B be an efficient basis. There exists an efficient nonbasicvariable at B.

Matthias Ehrgott MOLP I

Page 117: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

It is not possible to define efficient nonbasic variables by theexistence of a column in R with positive and negative entries

Example

R =

(3 −2

−2 1

)λT r2 = 0 requires λ2 = 2λ1

λT r1 = 0 requires −λ1 = 0, an impossibility for λ > 0

Matthias Ehrgott MOLP I

Page 118: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 119: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 120: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 121: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 122: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 123: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 124: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Lemma

Let B be an efficient basis and xj be an efficient nonbasic variable.Then any efficient pivot from B leads to an adjacent efficient basisB.

Proof.

xj efficient entering variable at basis B⇒ there is λ ∈ Rp

> with λTR = 0 and λT r j = 0

⇒ xj is nonbasic variable with reduced cost 0 in LP(λ)

Reduced costs of LP(λ) do not change after a pivot with xj

entering

Let B be the resulting basis with feasible pivot and xj entering

Because λTR = 0 and λT r j = 0 at B, B is an optimal basisfor LP(λ) and therefore an adjacent efficient basis

Matthias Ehrgott MOLP I

Page 125: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

How to identify efficient nonbasic variables?

Theorem

Let B be an efficient basis and let xj be a nonbasic variable.Variable xj is an efficient nonbasic variable if and only if the LP

max etvsubject to Rz − r jδ + Iv = 0

z , δ, v = 0(12)

has an optimal value of 0.

(12) is always feasible with (z , δ, v) = 0

Matthias Ehrgott MOLP I

Page 126: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

How to identify efficient nonbasic variables?

Theorem

Let B be an efficient basis and let xj be a nonbasic variable.Variable xj is an efficient nonbasic variable if and only if the LP

max etvsubject to Rz − r jδ + Iv = 0

z , δ, v = 0(12)

has an optimal value of 0.

(12) is always feasible with (z , δ, v) = 0

Matthias Ehrgott MOLP I

Page 127: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

By definition xj is an efficient nonbasic variable if the LP

min 0Tλ = 0subject to RTλ = 0

(r j)Tλ = 0Iλ = e

(13)

has an optimal objective value of 0, i.e. if it is feasible

(13) is equivalent to

min 0Tλ = 0subject to RTλ = 0

−(r j)Tλ ≥ 0Iλ = e

(14)

Matthias Ehrgott MOLP I

Page 128: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

By definition xj is an efficient nonbasic variable if the LP

min 0Tλ = 0subject to RTλ = 0

(r j)Tλ = 0Iλ = e

(13)

has an optimal objective value of 0, i.e. if it is feasible

(13) is equivalent to

min 0Tλ = 0subject to RTλ = 0

−(r j)Tλ ≥ 0Iλ = e

(14)

Matthias Ehrgott MOLP I

Page 129: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

The dual of (14) is

max eT vsubject to Rz − r jδ + Iv = 0

z , δ, v = 0.(15)

Matthias Ehrgott MOLP I

Page 130: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Need to show: ALL efficient bases can be reached by efficientpivots

Definition

Two efficient bases B and B are called connected if one can beobtained from the other by performing only efficient pivots.

Theorem

All efficient bases are connected.

Matthias Ehrgott MOLP I

Page 131: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Need to show: ALL efficient bases can be reached by efficientpivots

Definition

Two efficient bases B and B are called connected if one can beobtained from the other by performing only efficient pivots.

Theorem

All efficient bases are connected.

Matthias Ehrgott MOLP I

Page 132: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Need to show: ALL efficient bases can be reached by efficientpivots

Definition

Two efficient bases B and B are called connected if one can beobtained from the other by performing only efficient pivots.

Theorem

All efficient bases are connected.

Matthias Ehrgott MOLP I

Page 133: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 134: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 135: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 136: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 137: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 138: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 139: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 140: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Proof.

B and B two efficient bases

λ, λ ∈ Rp> such that B and B are optimal bases for LP(λ) and

LP(λ)

Parametric LP (Φ ∈ [0, 1]) with objective function

c(Φ) = ΦλTC + (1− Φ)λTC (16)

Assume B is first basis (for Φ = 1)

After several pivots get an optimal basis B for LP(λ)

Since λ∗ = Φλ + (1−Φ)λ ∈ Rp> for all Φ ∈ [0, 1] all bases are

optimal for LP(λ∗) for some λ∗ ∈ Rp>, i.e. efficient

If B = B, done

Otherwise obtain B from B by efficient pivots: they arealternative optima for LP(λ)

Matthias Ehrgott MOLP I

Page 141: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

3 casesX = ∅, infeasibilityX 6= ∅ but XE = ∅, no efficient solutionsX 6= ∅,XE 6= ∅

result in three phase multiobjective Simplex algorithm

Phase I: Solve min{eT z : Ax + Iz = b, x = 0, z = 0}If optimal value is nonzero, X = ∅Otherwise find bfs of Ax = b, x = 0 from optimal solution

Phase II: Find efficient bfs by solving appropriate LP(λ)Note: LP(λ) can be unbounded even if XE 6= ∅Solve min{uTb + wTCx0 : uTA + wTC = 0,w = e}If unbounded then XE = ∅Otherwise find optimal w and solvemin{wCx : Ax = b, x = 0}Optimal bfs x1 exists and is efficient bfs for MOLP

Phase III: Starting from x1 find all efficient bfs by efficientpivots, even with negative pivot elements

Matthias Ehrgott MOLP I

Page 142: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

3 casesX = ∅, infeasibilityX 6= ∅ but XE = ∅, no efficient solutionsX 6= ∅,XE 6= ∅

result in three phase multiobjective Simplex algorithm

Phase I: Solve min{eT z : Ax + Iz = b, x = 0, z = 0}If optimal value is nonzero, X = ∅Otherwise find bfs of Ax = b, x = 0 from optimal solution

Phase II: Find efficient bfs by solving appropriate LP(λ)Note: LP(λ) can be unbounded even if XE 6= ∅Solve min{uTb + wTCx0 : uTA + wTC = 0,w = e}If unbounded then XE = ∅Otherwise find optimal w and solvemin{wCx : Ax = b, x = 0}Optimal bfs x1 exists and is efficient bfs for MOLP

Phase III: Starting from x1 find all efficient bfs by efficientpivots, even with negative pivot elements

Matthias Ehrgott MOLP I

Page 143: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

3 casesX = ∅, infeasibilityX 6= ∅ but XE = ∅, no efficient solutionsX 6= ∅,XE 6= ∅

result in three phase multiobjective Simplex algorithm

Phase I: Solve min{eT z : Ax + Iz = b, x = 0, z = 0}If optimal value is nonzero, X = ∅Otherwise find bfs of Ax = b, x = 0 from optimal solution

Phase II: Find efficient bfs by solving appropriate LP(λ)Note: LP(λ) can be unbounded even if XE 6= ∅Solve min{uTb + wTCx0 : uTA + wTC = 0,w = e}If unbounded then XE = ∅Otherwise find optimal w and solvemin{wCx : Ax = b, x = 0}Optimal bfs x1 exists and is efficient bfs for MOLP

Phase III: Starting from x1 find all efficient bfs by efficientpivots, even with negative pivot elements

Matthias Ehrgott MOLP I

Page 144: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

3 casesX = ∅, infeasibilityX 6= ∅ but XE = ∅, no efficient solutionsX 6= ∅,XE 6= ∅

result in three phase multiobjective Simplex algorithm

Phase I: Solve min{eT z : Ax + Iz = b, x = 0, z = 0}If optimal value is nonzero, X = ∅Otherwise find bfs of Ax = b, x = 0 from optimal solution

Phase II: Find efficient bfs by solving appropriate LP(λ)Note: LP(λ) can be unbounded even if XE 6= ∅Solve min{uTb + wTCx0 : uTA + wTC = 0,w = e}If unbounded then XE = ∅Otherwise find optimal w and solvemin{wCx : Ax = b, x = 0}Optimal bfs x1 exists and is efficient bfs for MOLP

Phase III: Starting from x1 find all efficient bfs by efficientpivots, even with negative pivot elements

Matthias Ehrgott MOLP I

Page 145: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Algorithm (Multicriteria Simplex Algorithm.)

Input: Data A, b,C of an MOLP.

Initialization: Set L1 := ∅, L2 := ∅.Phase I: Solve the LP min{eT z : Ax + Iz = b, x , z = 0}.

If the optimal value of this LP is nonzero, STOP, X = ∅.Otherwise let x0 be a basic feasible solution of the MOLP.

Phase II: Solve the LPmin{uTb + wTCx0 : uTA + wTC = 0,w = e}.If the problem is infeasible, STOP, XE = ∅.Otherwise let (u, w) be an optimal solution.Find an optimal basis B of the LP min{wTCx : Ax = b, x = 0}.L1 := {B}, L2 := ∅.

Matthias Ehrgott MOLP I

Page 146: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Algorithm

Phase III:While L1 6= ∅

Choose B in L1, set L1 := L1 \ {B}, L2 := L2 ∪ {B}.Compute A, b, and R according to B.EN := N .For all j ∈ N .

Solve the LP max{eT v : Ry − r jδ + Iv = 0; y , δ, v = 0}.If this LP is unbounded EN := EN \ {j}.

End forFor all j ∈ EN .

For all i ∈ B.

If B′ = (B \ {i}) ∪ {j} is feasible and B′ 6∈ L1 ∪ L2

then L1 := L1 ∪ B′.End for.

End for.

End while.

Output: L2.

Matthias Ehrgott MOLP I

Page 147: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Example

There can be exponentially many efficient bfs

min xi i = 1, . . . , nmin −xi i = 1, . . . , nsubject to xi 5 1 i = 1, . . . , n

−xi 5 1 i = 1, . . . , n.

n variables, m = 2n constraints, p = 2n objective functions

all 2n extreme points of the feasible set are efficient

Matthias Ehrgott MOLP I

Page 148: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Example

There can be exponentially many efficient bfs

min xi i = 1, . . . , nmin −xi i = 1, . . . , nsubject to xi 5 1 i = 1, . . . , n

−xi 5 1 i = 1, . . . , n.

n variables, m = 2n constraints, p = 2n objective functions

all 2n extreme points of the feasible set are efficient

Matthias Ehrgott MOLP I

Page 149: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Example

There can be exponentially many efficient bfs

min xi i = 1, . . . , nmin −xi i = 1, . . . , nsubject to xi 5 1 i = 1, . . . , n

−xi 5 1 i = 1, . . . , n.

n variables, m = 2n constraints, p = 2n objective functions

all 2n extreme points of the feasible set are efficient

Matthias Ehrgott MOLP I

Page 150: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Example

There can be exponentially many efficient bfs

min xi i = 1, . . . , nmin −xi i = 1, . . . , nsubject to xi 5 1 i = 1, . . . , n

−xi 5 1 i = 1, . . . , n.

n variables, m = 2n constraints, p = 2n objective functions

all 2n extreme points of the feasible set are efficient

Matthias Ehrgott MOLP I

Page 151: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Overview

1 Multiobjective Linear ProgrammingFormulation and ExampleSolving MOLPs by Weighted Sums

2 Biobjective LPs and Parametric SimplexThe Parametric Simplex AlgorithmBiobjective Linear Programmes: Example

3 Multiobjective Simplex MethodA Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Matthias Ehrgott MOLP I

Page 152: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Example

min

(3x1 + x2

−x1 − 2x2

)subject to x2 5 3

3x1 − x2 5 6x = 0

LP(λ)

min (4λ− 1)x1 + (3λ− 2)x2

subject to x2 + x3 = 33x1 − x2 + x4 = 6

x = 0.

Matthias Ehrgott MOLP I

Page 153: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: MOLP is feasiblex0 = (0, 0)

Phase II: Optimal weightw = (1, 1)

Phase II: First efficient solutionx2 = (0, 3)

Phase III: Efficient enteringvariables s1, x2

Phase III: Efficient solutionsx1 = (0, 0), x3 = (3, 3)

Phase III: No more efficiententering variables

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Matthias Ehrgott MOLP I

Page 154: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: MOLP is feasiblex0 = (0, 0)

Phase II: Optimal weightw = (1, 1)

Phase II: First efficient solutionx2 = (0, 3)

Phase III: Efficient enteringvariables s1, x2

Phase III: Efficient solutionsx1 = (0, 0), x3 = (3, 3)

Phase III: No more efficiententering variables

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Matthias Ehrgott MOLP I

Page 155: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: MOLP is feasiblex0 = (0, 0)

Phase II: Optimal weightw = (1, 1)

Phase II: First efficient solutionx2 = (0, 3)

Phase III: Efficient enteringvariables s1, x2

Phase III: Efficient solutionsx1 = (0, 0), x3 = (3, 3)

Phase III: No more efficiententering variables

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Matthias Ehrgott MOLP I

Page 156: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: MOLP is feasiblex0 = (0, 0)

Phase II: Optimal weightw = (1, 1)

Phase II: First efficient solutionx2 = (0, 3)

Phase III: Efficient enteringvariables s1, x2

Phase III: Efficient solutionsx1 = (0, 0), x3 = (3, 3)

Phase III: No more efficiententering variables

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Matthias Ehrgott MOLP I

Page 157: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: MOLP is feasiblex0 = (0, 0)

Phase II: Optimal weightw = (1, 1)

Phase II: First efficient solutionx2 = (0, 3)

Phase III: Efficient enteringvariables s1, x2

Phase III: Efficient solutionsx1 = (0, 0), x3 = (3, 3)

Phase III: No more efficiententering variables

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Matthias Ehrgott MOLP I

Page 158: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: MOLP is feasiblex0 = (0, 0)

Phase II: Optimal weightw = (1, 1)

Phase II: First efficient solutionx2 = (0, 3)

Phase III: Efficient enteringvariables s1, x2

Phase III: Efficient solutionsx1 = (0, 0), x3 = (3, 3)

Phase III: No more efficiententering variables

0 1 2 3 40

1

2

3

4

X

x1

x2

x3

x4

Matthias Ehrgott MOLP I

Page 159: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Example

min −x1 −2x2

min −x1 +2x3

min x1 −x3

subject to x1 +x2 ≤ 1x2 ≤ 2

x1 −x2 +x3 ≤ 4.

Slack variables x4, x5, x6 introduced to write the constraints inequality form Ax = b

Matthias Ehrgott MOLP I

Page 160: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: B = {4, 5, 6} is a basis with bfs x0 = (0, 0, 0, 1, 2, 4)

Phase II:

min u1 + 2u2 + 4u3

subject to uT

0@ 1 1 0 1 0 00 1 0 0 1 01 −1 1 0 0 1

1A + wT

0@ −1 −2 0 0 0 0−1 0 2 0 0 0

1 0 −1 0 0 0

1A = 0

w = e

w = (1, 1, 1)min{−x1 − 2x2 + x3 : Ax = b, x = 0}B1 = {2, 5, 6}, x1 = (0, 1, 0, 0, 1, 3) is efficient bfs,L1 = {{2, 5, 6}}

Matthias Ehrgott MOLP I

Page 161: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase I: B = {4, 5, 6} is a basis with bfs x0 = (0, 0, 0, 1, 2, 4)

Phase II:

min u1 + 2u2 + 4u3

subject to uT

0@ 1 1 0 1 0 00 1 0 0 1 01 −1 1 0 0 1

1A + wT

0@ −1 −2 0 0 0 0−1 0 2 0 0 0

1 0 −1 0 0 0

1A = 0

w = e

w = (1, 1, 1)min{−x1 − 2x2 + x3 : Ax = b, x = 0}B1 = {2, 5, 6}, x1 = (0, 1, 0, 0, 1, 3) is efficient bfs,L1 = {{2, 5, 6}}

Matthias Ehrgott MOLP I

Page 162: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Phase IIIIteration 1:B1 = {2, 5, 6}, L1 = ∅, L2 = {{2, 5, 6}}

c1 1 0 0 2 0 0 2

c2 -1 0 2 0 0 0 0

c3 1 0 -1 0 0 0 0

x2 1 1 0 1 0 0 1

x5 -1 0 0 -1 1 0 1

x6 2 0 1 1 0 1 5

EN := {1, 3, 4}

Matthias Ehrgott MOLP I

Page 163: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x1

1 1 2 -1 0 0 0 0

1 0 2 -1 1 0 0 0

-1 2 0 1 0 1 0 0

1 -1 0 -1 0 0 1 0

LP has optimal solution, x1 is efficient

Check x3

1 1 2 -1 0 0 0 0

1 0 2 0 1 0 0 0

-1 2 0 -2 0 1 0 0

1 -1 0 1 0 0 1 0

LP has optimal solution, x3 is efficient

Matthias Ehrgott MOLP I

Page 164: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x1

1 1 2 -1 0 0 0 0

1 0 2 -1 1 0 0 0

-1 2 0 1 0 1 0 0

1 -1 0 -1 0 0 1 0

LP has optimal solution, x1 is efficient

Check x3

1 1 2 -1 0 0 0 0

1 0 2 0 1 0 0 0

-1 2 0 -2 0 1 0 0

1 -1 0 1 0 0 1 0

LP has optimal solution, x3 is efficient

Matthias Ehrgott MOLP I

Page 165: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x4

1 1 2 -2 0 0 0 0

1 0 2 -2 1 0 0 0

-1 2 0 0 0 1 0 0

1 -1 0 0 0 0 1 0

LP is unbounded, x4 is not efficient

EN = {1, 3}Feasible pivot x1 enters and x2 leaves: basis B2 = {1, 5, 6}Feasible pivot x3 enters and x6 leaves: basis B3 = {2, 3, 5}L1 := {{1, 5, 6}, {2, 3, 5}}

Matthias Ehrgott MOLP I

Page 166: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x4

1 1 2 -2 0 0 0 0

1 0 2 -2 1 0 0 0

-1 2 0 0 0 1 0 0

1 -1 0 0 0 0 1 0

LP is unbounded, x4 is not efficient

EN = {1, 3}Feasible pivot x1 enters and x2 leaves: basis B2 = {1, 5, 6}Feasible pivot x3 enters and x6 leaves: basis B3 = {2, 3, 5}L1 := {{1, 5, 6}, {2, 3, 5}}

Matthias Ehrgott MOLP I

Page 167: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Iteration 2:B2 = {1, 5, 6} with BFS x2 = (1, 0, 0, 0, 2, 3)L1 = {{2, 3, 5}}, L2 = {{2, 5, 6}, {2, 3, 5}}

c1 0 -1 0 1 0 0 1

c2 0 1 2 1 0 0 1

c3 0 -1 -1 -1 0 0 -1

x2 1 1 0 1 0 0 1

x5 0 1 0 0 1 0 2

x6 0 -2 1 -1 0 1 3

EN = {2, 3, 4}

Matthias Ehrgott MOLP I

Page 168: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x2: Leads back to B1 = (2, 5, 6)

Check x3:

-1 1 1 -1 0 0 0 0

-1 0 1 0 1 0 0 0

1 2 1 -2 0 1 0 0

-1 -1 -1 1 0 0 1 0

x3 not efficient

Check x4

-1 1 1 -1 0 0 0 0

-1 0 1 -1 1 0 0 0

1 2 1 -1 0 1 0 0

-1 -1 -1 1 0 0 1 0

x4 not efficient

EN = ∅Matthias Ehrgott MOLP I

Page 169: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x2: Leads back to B1 = (2, 5, 6)

Check x3:

-1 1 1 -1 0 0 0 0

-1 0 1 0 1 0 0 0

1 2 1 -2 0 1 0 0

-1 -1 -1 1 0 0 1 0

x3 not efficient

Check x4

-1 1 1 -1 0 0 0 0

-1 0 1 -1 1 0 0 0

1 2 1 -1 0 1 0 0

-1 -1 -1 1 0 0 1 0

x4 not efficient

EN = ∅Matthias Ehrgott MOLP I

Page 170: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x2: Leads back to B1 = (2, 5, 6)

Check x3:

-1 1 1 -1 0 0 0 0

-1 0 1 0 1 0 0 0

1 2 1 -2 0 1 0 0

-1 -1 -1 1 0 0 1 0

x3 not efficient

Check x4

-1 1 1 -1 0 0 0 0

-1 0 1 -1 1 0 0 0

1 2 1 -1 0 1 0 0

-1 -1 -1 1 0 0 1 0

x4 not efficient

EN = ∅Matthias Ehrgott MOLP I

Page 171: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x2: Leads back to B1 = (2, 5, 6)

Check x3:

-1 1 1 -1 0 0 0 0

-1 0 1 0 1 0 0 0

1 2 1 -2 0 1 0 0

-1 -1 -1 1 0 0 1 0

x3 not efficient

Check x4

-1 1 1 -1 0 0 0 0

-1 0 1 -1 1 0 0 0

1 2 1 -1 0 1 0 0

-1 -1 -1 1 0 0 1 0

x4 not efficient

EN = ∅Matthias Ehrgott MOLP I

Page 172: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Iteration 3B3 = {2, 3, 5} with bfs x3 = (0, 1, 5, 0, 1, 0)L1 = ∅, L2 = {{2, 5, 6}, {1, 5, 6}, {2, 3, 5}}

c1 1 0 0 2 0 0 2

c2 -5 0 0 -2 0 -2 -10

c3 3 0 0 1 0 1 5

x2 1 1 0 1 0 0 1

x5 -1 0 0 -1 1 0 1

x3 2 0 1 1 0 1 5

EN = {1, 4, 6}

Matthias Ehrgott MOLP I

Page 173: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x1

-1 1 -1 1 0 0 0 0

1 2 0 -1 1 0 0 0

-5 -2 -2 5 0 1 0 0

3 1 1 -3 0 0 1 0

x4 is not efficient

Check x4

-1 1 -1 -1 0 0 0 0

1 2 0 -2 1 0 0 0

-5 -2 -2 2 0 1 0 0

3 1 1 -1 0 0 1 0

x4 is not efficient

Check x6: Leads back to B1

Matthias Ehrgott MOLP I

Page 174: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x1

-1 1 -1 1 0 0 0 0

1 2 0 -1 1 0 0 0

-5 -2 -2 5 0 1 0 0

3 1 1 -3 0 0 1 0

x4 is not efficient

Check x4

-1 1 -1 -1 0 0 0 0

1 2 0 -2 1 0 0 0

-5 -2 -2 2 0 1 0 0

3 1 1 -1 0 0 1 0

x4 is not efficient

Check x6: Leads back to B1

Matthias Ehrgott MOLP I

Page 175: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Check x1

-1 1 -1 1 0 0 0 0

1 2 0 -1 1 0 0 0

-5 -2 -2 5 0 1 0 0

3 1 1 -3 0 0 1 0

x4 is not efficient

Check x4

-1 1 -1 -1 0 0 0 0

1 2 0 -2 1 0 0 0

-5 -2 -2 2 0 1 0 0

3 1 1 -1 0 0 1 0

x4 is not efficient

Check x6: Leads back to B1

Matthias Ehrgott MOLP I

Page 176: Multiobjective Linear Programming

Multiobjective Linear ProgrammingBiobjective LPs and Parametric Simplex

Multiobjective Simplex Method

A Multiobjective Simplex AlgorithmMultiobjective Simplex: Examples

Iteration 4: L1 = ∅, STOPOutput: List of efficient basesB1 = {2, 5, 6},B2 ={1, 5, 6},B3 = {2, 3, 5}

{2, 5, 6}

{1, 5, 6}

{2, 3, 5}

x1

x2

x3

.........................................................................................

.........................................................................................

1 2 3 4

1

2

3

4

5

6

..................................................................................................................................................................................................................................................................................................................................................................................................................................................................

.......................

................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

.......................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••

••••••••••••••••••••••••••••••••••••••••••••••••••

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

......................................................................................................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.......................................................................................................................................................................................................

.......................

.

...........................................................................................................................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

..

.

.

.

.

.

.

.

........................

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

x0

x1

x2

x3

x4

x5

−c1

−c2

−c3

x1

x2

x3

XE

x0 = (0, 0, 0)

x1 = (0, 1, 0)

x2 = (1, 0, 0)

x3 = (0, 1, 5)

x4 = (1, 0, 3)

x5 = (0, 0, 4)

Matthias Ehrgott MOLP I