fathoming rules for biobjective mixed integer optimization
play

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


  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

  2. Biobjective MILP Find the Pareto set of min y 1 = c ⊤ 1 x min y 2 = c ⊤ 2 x x ∈ X ∩ ( Z p × R n − p ) s.t. X = { x ∈ R n : A x ≤ b } , bounded

  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 2 x ) � ( c ⊤ ( c ⊤ 1 x , c ⊤ 1 ˆ x , c ⊤ 2 ˆ x ) . A point is just the image of a solution in the objective space, R 2 .

  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 + R 2 + contains ( c ⊤ 1 x , c ⊤ 2 x ) for all solutions x of X .

  5. Pareto set of a biobjective linear problem min { ( c ⊤ 1 x , c ⊤ 2 x ) : A x ≤ b } y 2 Y is a union of segments. The set Y + R 2 + is convex. y 1 The same happens for MILPs if at least one objective has zero coefficients in the continuous variables.

  6. Pareto set of a biobjective pure integer problem 2 x ) : A x ≤ b , x ∈ Z n } min { ( c ⊤ 1 x , c ⊤ y 2 Y is finite. The set Y + R 2 + is nonconvex. y 1 The same happens for MILPs if at least one objective has zero coefficients in the continuous variables.

  7. Biobjective MILPs and extreme points y 2 ≡ x 2 min x 1 min x 2 s.t. 3 x 1 + 2 x 2 ≥ 6 x 1 , x 2 ≥ 0 y 1 ≡ x 1 (1 , 2) is a Pareto point but not an extreme point of conv( X ∩ ( Z p × R n − p ))

  8. Pareto set of a biobjective mixed integer problem ◮ Consider ¯ X = proj Z p ( X ), finite since X is bounded x ∈ ¯ ⇒ We get a Pareto set Y ¯ x by fixing x 1: p = ¯ X ◮ The Pareto set Y is a subset of the union of all Y ¯ x ’s � Y ⊆ Y ¯ x x ∈ ¯ ¯ X (just eliminate its dominated points)

  9. Example: ¯ X = { ¯ x 1 , ¯ x 2 , ¯ x 3 } y 2 Y ¯ x 1 Y ¯ x 2 Y ¯ x 3 y 1

  10. Example: ¯ X = { ¯ x 1 , ¯ x 2 , ¯ x 3 } y 2 Y y 1

  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 milp s (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)

  12. Branch-and-bound algorithms for bo-milp s 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 Y k is dominated by the Pareto set Y of the original problem. However, at node k we know neither Y k nor Y .

  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 Y k : ◮ Consider the Pareto set Y lp of the LP relaxation at node k k Then we fathom k if each point y of Y lp is dominated by at k least one point of Y cutoff .

  14. In short y 2 ◦ are local nadir points Y cutoff [ 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 ′′ ] Y lp k can be separated from Y lp k y 1

  15. Biobjective MILP at node k BB subproblem at node k : min y 1 = c ⊤ 1 x min y 2 = c ⊤ 2 x s.t. A k x ≤ b k x ∈ Z p × R n − p A k and b k comprise branching rules, cuts, reduced bounds, etc. k = { x ∈ R n : A k x ≤ b k } . Relaxation’s feasible set at k : X lp

  16. Fathoming model (nadir points only) Can separate nadir point ˇ y if ∃ λ ∈ [0 , 1] such that λ ˇ y 1 + (1 − λ )ˇ y 2 ≤ λ c ⊤ 1 x + (1 − λ ) c ⊤ ∀ x ∈ X lp 2 x k that is, λ ˇ y 1 + (1 − λ )ˇ ≤ min { λ c ⊤ 1 x + (1 − λ ) c ⊤ 2 x : x ∈ X lp k } y 2 = min { λ c ⊤ 1 x + (1 − λ ) c ⊤ 2 x : A k x ≤ b k } = max { b ⊤ k w : A ⊤ k w = λ c 1 + (1 − λ ) c 2 , w ≤ 0 }

  17. Fathoming model (nadir points only), cont’d Hence, if we find w , λ such that λ ˇ y 1 + (1 − λ )ˇ y 2 ≤ b ⊤ k w A ⊤ k w = λ c 1 + (1 − λ ) c 2 w ≤ 0 λ ∈ [0 , 1] k + R 2 we can separate ˇ y from X lp +

  18. Separation of local nadir point ˇ y max b ⊤ k w − λ ˇ y 1 − (1 − λ )ˇ y 2 s.t. A ⊤ k w = λ c 1 + (1 − λ ) c 2 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

  19. Separation of local nadir segment [ y ′ , y ′′ ] y ′ y ′ max b ⊤ k w − λ ˇ 1 − (1 − λ )ˇ 2 y ′′ y ′′ s.t. b ⊤ k w − λ ˇ 1 − (1 − λ )ˇ 2 ≥ 0 A ⊤ k w = λ c 1 + (1 − λ ) c 2 w ≤ 0 λ ∈ [0 , 1] If an optimal solution ( λ ⋆ , w ⋆ ) satisfies λ ⋆ ˇ y ′ 1 + (1 − λ ⋆ )ˇ y ′ k w ⋆ 2 ≤ b ⊤ λ ⋆ ˇ y ′′ 1 + (1 − λ ⋆ )ˇ y ′′ k w ⋆ 2 ≤ b ⊤ (i.e., it’s feasible and has a non-negative objective), proceed to the next nadir point/segment. If infeasible or has a negative objective, the node cannot be fathomed.

  20. Old tests R var con 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 0.54 70.0 21.0 5.4 46.2 20 20 10 0 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 0 2.38 164.4 38.2 30.0 97.0 40 40 20 0 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 0 14.38 638.4 171.0 89.8 338.2 60 60 30 0 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 0 37.58 1026.8 203.6 165.6 538.2 80 80 40 0 40 53.12 1414.8 279.4 219.2 738.4

  21. Speeding up fathoming: preliminaries Fathoming LP: − ˇ y 2 + max b ⊤ k w + (ˇ y 2 − ˇ y 1 ) λ s.t. A ⊤ k w + ( c 2 − c 1 ) λ = c 2 ( x ) ≤ 1 ( µ ) λ w ≤ 0 , λ ≥ 0 . Its dual is somewhat familiar: − ˇ y 2 + min c ⊤ 2 x + µ s.t. A k x ≤ b k ( c 2 − c 1 ) ⊤ x + µ ≥ (ˇ y 2 − ˇ y 1 ) µ ≥ 0 It’s the original node problem amended with one variable and one constraint (only slightly more involved for segments).

  22. Duals of fathoming LPs Local nadir point ˇ y : c ⊤ min µ,η, x 2 x + ˇ y 2 η + µ s.t. A k x ≤ b k η = − 1 ( c 2 − c 1 ) ⊤ x + (ˇ y 2 − ˇ y 1 ) η + µ ≥ 0 η ≤ 0 , µ ≥ 0 2 η ′ + ˇ 2 η ′′ + µ c ⊤ y ′ y ′′ min µ,η ′ ,η ′′ , x 2 x + ˇ s.t. A k x ≤ b k η ′ + η ′′ = − 1 1 ) η ′ + (ˇ 1 ) η ′′ + µ ≥ 0 ( c 2 − c 1 ) ⊤ x + (ˇ y ′ y ′ y ′′ y ′′ 2 − ˇ 2 − ˇ η ′ , η ′′ ≤ 0 , µ ≥ 0 Recall: these LPs must yield nonnegative objective at optimum

  23. Speedup #1: sufficient conditions for non -fathomability Problem : given a solution x ⋆ of the node LP and a segment 1 [ y ′ , y ′′ ], find η ′ , η ′′ , µ ∈ R 2 − × R + such that 2 x ⋆ + ˇ 2 η ′ + ˇ 2 η ′′ + µ < 0 c ⊤ y ′ y ′′ (*) η ′ + η ′′ = − 1 (**) ( c 2 − c 1 ) ⊤ x ⋆ + (ˇ 1 ) η ′ + (ˇ 1 ) η ′′ + µ ≥ 0 y ′ y ′ y ′′ y ′′ (***) 2 − ˇ 2 − ˇ ∃ two or three extreme points of (**,***) depending on d ′ = (ˇ 1 ), d ′′ = (ˇ y ′ y ′ y ′′ y ′′ 1 ), α = ( c 2 − c 1 ) ⊤ x ⋆ : 2 − ˇ 2 − ˇ Extreme points ( µ, η ′ , η ′′ ) Case 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 1 The case for local nadir points is trivial

  24. Speedup #2: ignoring a point/segment Local nadir point ˇ y : b ⊤ max λ, w ,z k w − z s.t. z + (ˇ y 2 − ˇ y 1 ) λ ≤ ˇ y 2 A ⊤ k w + ( c 2 − c 1 ) λ = c 2 λ ∈ [0 , 1] , w ≤ 0 y ′ , ˇ y ′′ ]: Local nadir set [ˇ b ⊤ max λ, w ,z k w − z y ′ y ′ y ′ s.t. z + (ˇ 2 − ˇ 1 ) λ ≤ ˇ 2 y ′′ y ′′ y ′′ z + (ˇ 2 − ˇ 1 ) λ ≤ ˇ 2 A ⊤ k w + ( c 2 − c 1 ) λ = c 2 λ ∈ [0 , 1] , w ≤ 0 .

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend