Fathoming rules for biobjective mixed integer optimization Pietro - - PowerPoint PPT Presentation

fathoming rules for biobjective mixed integer optimization
SMART_READER_LITE
LIVE PREVIEW

Fathoming rules for biobjective mixed integer optimization Pietro - - PowerPoint PPT Presentation

Fathoming rules for biobjective mixed integer optimization Pietro Belotti Xpress Optimizer, Fair Isaac Aussois CO workshop, January 7, 2016 Joint work with: Banu Soylu , Erciyes University, Kayseri, Turkey Margaret M. Wiecek , Clemson


slide-1
SLIDE 1

Fathoming rules for biobjective mixed integer optimization

Pietro Belotti Xpress Optimizer, Fair Isaac Aussois CO workshop, January 7, 2016 Joint work with: Banu Soylu, Erciyes University, Kayseri, Turkey Margaret M. Wiecek, Clemson University, SC, USA

slide-2
SLIDE 2

Biobjective MILP

Find the Pareto set of min y1 = c⊤

1 x

min y2 = c⊤

2 x

s.t. x ∈ X ∩ (Zp × Rn−p) X = {x ∈ Rn : Ax ≤ b}, bounded

slide-3
SLIDE 3

Non-dominated solutions and Pareto points

Def.: A solution ˆ x is non-dominated and ˆ y = (c⊤

1 ˆ

x, c⊤

2 ˆ

x) is a Pareto point of the problem if ∄x feasible such that (c⊤

1 x, c⊤ 2 x) (c⊤ 1 ˆ

x, c⊤

2 ˆ

x). A point is just the image of a solution in the objective space, R2.

slide-4
SLIDE 4

What we aim for

In single-objective optimization, we care for both

◮ the objective function value z of an optimal solution; ◮ an optimal solution x such that z = c⊤x.

In biobjective optimization, we seek

◮ the Pareto set Y , i.e., the set of all Pareto points; ◮ for each y ∈ Y , one (non-dominated) solution x such that

y = (c⊤

1 x, c⊤ 2 x).

Note: Y + R2

+ contains (c⊤ 1 x, c⊤ 2 x) for all solutions x of X.

slide-5
SLIDE 5

Pareto set of a biobjective linear problem

min{(c⊤

1 x, c⊤ 2 x) : Ax ≤ b}

Y is a union of segments. The set Y + R2

+ is convex.

y1 y2 The same happens for MILPs if at least one objective has zero coefficients in the continuous variables.

slide-6
SLIDE 6

Pareto set of a biobjective pure integer problem

min{(c⊤

1 x, c⊤ 2 x) : Ax ≤ b, x ∈ Zn}

Y is finite. The set Y + R2

+ is nonconvex.

y1 y2 The same happens for MILPs if at least one objective has zero coefficients in the continuous variables.

slide-7
SLIDE 7

Biobjective MILPs and extreme points

min x1 min x2 s.t. 3x1 + 2x2 ≥ 6 x1, x2 ≥ 0 y1 ≡ x1 y2 ≡ x2 (1, 2) is a Pareto point but not an extreme point of conv(X ∩ (Zp × Rn−p))

slide-8
SLIDE 8

Pareto set of a biobjective mixed integer problem

◮ Consider ¯

X = projZp(X), finite since X is bounded ⇒ We get a Pareto set Y¯

x by fixing x1:p = ¯

x ∈ ¯ X

◮ The Pareto set Y is a subset of the union of all Y¯ x’s

Y ⊆

  • ¯

x∈ ¯ X

x

(just eliminate its dominated points)

slide-9
SLIDE 9

Example: ¯ X = {¯ x1, ¯ x2, ¯ x3}

y1 y2 Y¯

x1

x2

x3

slide-10
SLIDE 10

Example: ¯ X = {¯ x1, ¯ x2, ¯ x3}

y1 y2 Y

slide-11
SLIDE 11

Previous work

◮ Fathoming rules: Mavrotas & Diakoulakis ’98; Ehrgott &

Gandibleux ’08, Delort & Spanjaard ’10

◮ TSP: BB where every node is a polynomially solvable

bo-ilp (Jozefoviez, Laporte, Semet ’11)

◮ bo-milp with one pure integer objective function: Costa,

Captivo, Climaco ’08; Stidsen, Andersen, Dammann ’12; Prins, Prodhon, Wolfler Calvo ’06

◮ Partitioning the objective space and solving multiple milps

(Savelsbergh, Boland, Chakhgard ’13)

◮ Biobjective minlp (D’Ambrosio and Cacchiani ’14) ◮ PolySCIP (by Timo Strunk, ZIB) solves single-obj.

problems where obj = weighted sum of all objectives (finds extremal supported non-dominated solutions)

slide-12
SLIDE 12

Branch-and-bound algorithms for bo-milps

Main idea: one run of the branch-and-bound.

◮ BB methods for milp are sophisticated and flexible ◮ BB is a tree search with rules to drop entire subtrees

Fathoming rule: return true when BB subproblem contains no Pareto points, and can be dropped. Typical in MILP: “lower bound[k] >= cutoff” Rule 1: Fathom if LP relaxation infeasible; Rule 2: Fathom if its Pareto set Yk is dominated by the Pareto set Y of the original problem. However, at node k we know neither Yk nor Y .

slide-13
SLIDE 13

Fathoming rules

Instead of Y :

◮ take a set Y cutoff of feasible solutions that are not

dominated by others encountered so far

◮ Y cutoff can be updated by adding any integer feasible x

Instead of Yk:

◮ Consider the Pareto set Y lp k

  • f the LP relaxation at node k

Then we fathom k if each point y of Y lp

k

is dominated by at least one point of Y cutoff.

slide-14
SLIDE 14

In short

y1 y2 Y cutoff Y lp

k

  • are local nadir points

[y′, y′′] are local nadir sets We can fathom a BB node if

◮ all local nadir points y and ◮ all local nadir sets [y′, y′′]

can be separated from Y lp

k

slide-15
SLIDE 15

Biobjective MILP at node k

BB subproblem at node k: min y1 = c⊤

1 x

min y2 = c⊤

2 x

s.t. Akx ≤ bk x ∈ Zp × Rn−p Ak and bk comprise branching rules, cuts, reduced bounds, etc. Relaxation’s feasible set at k: Xlp

k = {x ∈ Rn : Akx ≤ bk}.

slide-16
SLIDE 16

Fathoming model (nadir points only)

Can separate nadir point ˇ y if ∃λ ∈ [0, 1] such that λˇ y1 + (1 − λ)ˇ y2 ≤ λc⊤

1 x + (1 − λ)c⊤ 2 x

∀ x ∈ Xlp

k

that is, λˇ y1 + (1 − λ)ˇ y2 ≤ min{λc⊤

1 x + (1 − λ)c⊤ 2 x : x ∈ Xlp k }

= min{λc⊤

1 x + (1 − λ)c⊤ 2 x : Akx ≤ bk}

= max{b⊤

k w : A⊤ k w = λc1 + (1 − λ)c2, w ≤ 0}

slide-17
SLIDE 17

Fathoming model (nadir points only), cont’d

Hence, if we find w, λ such that λˇ y1 + (1 − λ)ˇ y2 ≤ b⊤

k w

A⊤

k w = λc1 + (1 − λ)c2

w ≤ 0 λ ∈ [0, 1] we can separate ˇ y from Xlp

k + R2 +

slide-18
SLIDE 18

Separation of local nadir point ˇ y

max b⊤

k w − λˇ

y1 − (1 − λ)ˇ y2 s.t. A⊤

k w = λc1 + (1 − λ)c2

w ≤ 0 λ ∈ [0, 1] If optimal solution has negative objective function, we cannot fathom k. Otherwise, check the next nadir point.

  • ..

must solve an LP for every nadir point ˇ y

◮ For segments, we need an extra constraint

slide-19
SLIDE 19

Separation of local nadir segment [y′, y′′]

max b⊤

k w − λˇ

y′

1 − (1 − λ)ˇ

y′

2

s.t. b⊤

k w − λˇ

y′′

1 − (1 − λ)ˇ

y′′

2 ≥ 0

A⊤

k w = λc1 + (1 − λ)c2

w ≤ 0 λ ∈ [0, 1] If an optimal solution (λ⋆, w⋆) satisfies λ⋆ˇ y′

1 + (1 − λ⋆)ˇ

y′

2 ≤ b⊤ k w⋆

λ⋆ˇ y′′

1 + (1 − λ⋆)ˇ

y′′

2 ≤ b⊤ k w⋆

(i.e., it’s feasible and has a non-negative objective), proceed to the next nadir point/segment. If infeasible or has a negative

  • bjective, the node cannot be fathomed.
slide-20
SLIDE 20

Old tests

var con R 0-1 int cpu(s) nodes infeas fathom PSA 20 20 10 5 5 0.62 78.0 22.0 6.0 52.8 20 20 10 10 0.54 70.0 21.0 5.4 46.2 20 20 10 10 0.56 66.0 21.4 5.6 41.4 40 40 20 10 10 3.32 238.0 67.6 34.6 136.8 40 40 20 20 2.38 164.4 38.2 30.0 97.0 40 40 20 20 4.00 281.6 61.6 55.0 162.2 60 60 30 15 15 10.86 458.4 108.4 74.6 251.2 60 60 30 30 14.38 638.4 171.0 89.8 338.2 60 60 30 30 15.90 738.8 212.4 70.4 392.8 80 80 40 20 20 22.34 616.8 156.0 71.2 328.4 80 80 40 40 37.58 1026.8 203.6 165.6 538.2 80 80 40 40 53.12 1414.8 279.4 219.2 738.4

slide-21
SLIDE 21

Speeding up fathoming: preliminaries

Fathoming LP: −ˇ y2 + max b⊤

k w + (ˇ

y2 − ˇ y1)λ s.t. A⊤

k w + (c2 − c1)λ

= c2 (x) λ ≤ 1 (µ) w ≤ 0, λ ≥ 0. Its dual is somewhat familiar: −ˇ y2 + min c⊤

2 x + µ

s.t. Akx ≤ bk (c2 − c1)⊤x + µ ≥ (ˇ y2 − ˇ y1) µ ≥ 0 It’s the original node problem amended with one variable and

  • ne constraint (only slightly more involved for segments).
slide-22
SLIDE 22

Duals of fathoming LPs

Local nadir point ˇ y: minµ,η,x c⊤

2 x + ˇ

y2η + µ s.t. Akx ≤ bk η = −1 (c2 − c1)⊤x + (ˇ y2 − ˇ y1)η + µ ≥ 0 η ≤ 0, µ ≥ 0 minµ,η′,η′′,x c⊤

2 x + ˇ

y′

2η′ + ˇ

y′′

2η′′ + µ

s.t. Akx ≤ bk η′ + η′′ = −1 (c2 − c1)⊤x + (ˇ y′

2 − ˇ

y′

1)η′ + (ˇ

y′′

2 − ˇ

y′′

1)η′′ + µ ≥ 0

η′, η′′ ≤ 0, µ ≥ 0 Recall: these LPs must yield nonnegative objective at optimum

slide-23
SLIDE 23

Speedup #1: sufficient conditions for non-fathomability

Problem: given a solution x⋆ of the node LP and a segment1 [y′, y′′], find η′, η′′, µ ∈ R2

− × R+ such that

(*) c⊤

2 x⋆ + ˇ

y′

2η′ + ˇ

y′′

2η′′ + µ < 0

(**) η′ + η′′ = −1 (***) (c2 − c1)⊤x⋆ + (ˇ y′

2 − ˇ

y′

1)η′ + (ˇ

y′′

2 − ˇ

y′′

1)η′′ + µ ≥ 0

∃ two or three extreme points of (**,***) depending on d′ = (ˇ y′

2 − ˇ

y′

1), d′′ = (ˇ

y′′

2 − ˇ

y′′

1), α = (c2 − c1)⊤x⋆:

Case Extreme points (µ, η′, η′′) d′ > α, d′′ < α (α − d′′, 0, −1), (0, d′′−α

d′−d′′ , − d′−α d′−d′′ ), (0, −1, 0)

d′ < α, d′′ > α (α − d′, −1, 0), (0, d′′−α

d′−d′′ , − d′−α d′−d′′ ), (0, 0, −1)

d′ ≥ α, d′′ ≥ α (0, 0, −1), (0, −1, 0) d′ ≤ α, d′′ ≤ α (α − d′, −1, 0) (α − d′′, 0, −1) Compute extreme points; if (*) holds for any of them, node can’t be fathomed

1The case for local nadir points is trivial

slide-24
SLIDE 24

Speedup #2: ignoring a point/segment

Local nadir point ˇ y: maxλ,w,z b⊤

k w − z

s.t. z + (ˇ y2 − ˇ y1)λ ≤ ˇ y2 A⊤

k w + (c2 − c1)λ = c2

λ ∈ [0, 1], w ≤ 0 Local nadir set [ˇ y′, ˇ y′′]: maxλ,w,z b⊤

k w − z

s.t. z + (ˇ y′

2 − ˇ

y′

1)λ ≤ ˇ

y′

2

z + (ˇ y′′

2 − ˇ

y′′

1)λ ≤ ˇ

y′′

2

A⊤

k w + (c2 − c1)λ = c2

λ ∈ [0, 1], w ≤ 0.

slide-25
SLIDE 25

Speedup #2: ignoring a local nadir point2 ˇ y

  • Problem. Given a dual optimal solution w⋆ of a BB node k,

find λ⋆ s.t. the fathoming LP admits a nonnegative objective. Define g = c2 − c1, s = A⊤

k w⋆ − c2, and N = {1, 2, . . . , n}.

  • Lemma. λ⋆ exists if and only if:

(C1) si ≥ 0 for all i ∈ N such that gi = 0; (C2) max{ˇ y1, ˇ y2} ≥ b⊤

k w⋆;

(C3) max{λL, λ′

L} ≤ min{λU, λ′ U}, where λL = − mini∈N:gi>0 si gi ,

λU = − maxi∈N:gi<0 si

gi , and

λ′

L =

  • if ˇ

y2 ≥ b⊤

k w⋆ b⊤

k w⋆−ˇ

y2 ˇ y1−ˇ y2

  • therwise

λ′

U =

  • 1

if ˇ y1 ≥ b⊤

k w⋆ b⊤

k w⋆−ˇ

y2 ˇ y1−ˇ y2

  • therwise.

If these conditions are satisfied, skip this local nadir point.

2Case for local nadir segment [ˇ

y′, ˇ y′′] slightly more complicated

slide-26
SLIDE 26

References

◮ B., Soylu, Wiecek, “A branch-and-bound algorithm for

biobjective mixed-integer programs”,

  • ptimization-online.org/DB_HTML/2013/01/3719.html (a bit
  • utdated)

◮ B., Soylu, Wiecek, “Fathoming rules for biobjective mixed

integer linear programs”, under review

◮ Adelgren, B., Gupte, “Efficient storage of Pareto points in

biobjective mixed integer programming”, under review