mixed integer nonlinear programming
play

Mixed-Integer Nonlinear Programming Leo Liberti LIX, Ecole - PowerPoint PPT Presentation

Mixed-Integer Nonlinear Programming Leo Liberti LIX, Ecole Polytechnique, France MPRO PMA p. 1 Motivating applications MPRO PMA p. 2 Haverlys pooling problem MPRO PMA p. 3 Description Given an oil routing


  1. Mixed-Integer Nonlinear Programming Leo Liberti LIX, ´ Ecole Polytechnique, France MPRO — PMA – p. 1

  2. Motivating applications MPRO — PMA – p. 2

  3. Haverly’s pooling problem MPRO — PMA – p. 3

  4. Description Given an oil routing network with pools and blenders, unit prices, demands and quality requirements: ≤ 2.5% Sulphur x 11 3% Sulphur y 11 ≤ 100 Blend 1 $ 9 $ 6 Pool x 21 1% Sulphur y 21 y 12 $ 16 ≤ 1.5% Sulphur x 12 2% Sulphur ≤ 200 Blend 2 $ 15 y 22 $ 10 Find the input quantities minimizing the costs and satisfying the constraints: mass balance, sulphur balance, quantity and quality demands MPRO — PMA – p. 4

  5. Variables and constraints Variables: input quantities x , routed quantities y , percentage p of sulphur in pool Every variable must be ≥ 0 (physical quantities) Bilinear terms arise to express sulphur quantities in terms of p, y Sulphur balance constraint: 3 x 11 + x 21 = p ( y 11 + y 12 ) Quality demands: py 11 + 2 y 21 ≤ 2 . 5( y 11 + y 21 ) py 12 + 2 y 22 ≤ 1 . 5( y 12 + y 22 ) Continuous bilinear formulation ⇒ nonconvex NLP MPRO — PMA – p. 5

  6. Formulation ≤ 2.5% Sulphur y 11 3% Sulphur ≤ 100 x 11 Blend 1 $ 9 $ 6 Pool 1% Sulphur y 21 x 21 y 12 $ 16 ≤ 1.5% Sulphur 2% Sulphur ≤ 200 x 12 Blend 2 $ 15 y 22 $ 10  min 6 x 11 + 16 x 21 + 10 x 12 −  x,y,p     − 9( y 11 + y 21 ) − 15( y 12 + y 22 )  cost      x 11 + x 21 − y 11 − y 12 = 0 s.t. mass balance      x 12 − y 21 − y 22 = 0  mass balance    y 11 + y 21 ≤ 100 demand    y 12 + y 22 ≤ 200 demand      3 x 11 + x 21 − p ( y 11 + y 12 ) = 0  sulphur balance      py 11 + 2 y 21 ≤ 2 . 5( y 11 + y 21 ) sulphur limit      py 12 + 2 y 22 ≤ 1 . 5( y 12 + y 22 )  sulphur limit MPRO — PMA – p. 6

  7. Network design Decide whether to install pipes or not (0/1 decision) Associate a binary variable z ij with each pipe  6 x 11 + 16 x 21 + 10 x 12 + � min ij θ ij z ij −   x,y,p,z     − 9( y 11 + y 21 ) − 15( y 12 + y 22 ) cost       s.t. x 11 + x 21 − y 11 − y 12 = 0 mass balance      x 12 − y 21 − y 22 = 0  mass balance      y 11 + y 21 ≤ 100 demand  y 12 + y 22 ≤ 200 demand      ∀ i, j ≤ 2 y ij ≤ 200 z ij pipe activation: if z ij = 0 , no flow       3 x 11 + x 21 − p ( y 11 + y 12 ) = 0 sulphur balance       py 11 + 2 y 21 ≤ 2 . 5( y 11 + y 21 ) sulphur limit      py 12 + 2 y 22 ≤ 1 . 5( y 12 + y 22 )  sulphur limit  MPRO — PMA – p. 7

  8. The optimal network ≤ 2.5% Sulphur 3% Sulphur ≤ 100 x 11 = 0 Blend 1 $ 9 $ 6 Pool x 21 = 100 1% Sulphur y 12 = 100 $ 16 ≤ 1.5% Sulphur x 12 = 100 2% Sulphur ≤ 200 Blend 2 $ 15 y 22 = 100 $ 10 z 11 = 0 , z 21 = 0 z 12 = 1 , z 22 = 1 MPRO — PMA – p. 8

  9. Citations 1. C. Haverly, Studies of the behaviour of recursion for the pooling problem , ACM SIGMAP Bulletin, 1978 2. Adhya, Tawarmalani, Sahinidis, A Lagrangian approach to the pooling problem , Ind. Eng. Chem., 1999 3. Audet et al., Pooling Problem: Alternate Formulations and Solution Methods , Manag. Sci., 2004 4. Liberti, Pantelides, An exact reformulation algorithm for large nonconvex NLPs involving bilinear terms , JOGO, 2006 5. Misener, Floudas, Advances for the pooling problem: modeling, global optimization, and computational studies , Appl. Comput. Math., 2009 6. D’Ambrosio, Linderoth, Luedtke, Valid inequalities for the pooling problem with binary variables , LNCS, 2011 MPRO — PMA – p. 9

  10. Drawing graphs MPRO — PMA – p. 10

  11. At a glance 0 1 8 4 3 6 3 1 6 8 2 9 9 2 4 5 0 7 3 7 1 2 4 5 0 6 6 9 8 7 2 1 6 9 5 1 5 0 3 8 4 4 7 8 3 0 5 2 9 7 Which graph has most symmetries? MPRO — PMA – p. 11

  12. Euclidean graphs Graph G = ( V, E ) , edge weight function d : E → R + E.g. V = { 1 , 2 , 3 } , E = {{ 1 , 2 } , { 1 , 3 } , { 2 , 3 }} d 12 = d 13 = d 23 = 1 Find positions x v = ( x v 1 , x v 2 ) of each v ∈ V in the plane s.t.: ∀{ u, v } ∈ E � x u − x v � 2 = d uv Generalization to R K for K ∈ N : x v = ( x v 1 , . . . , x vK ) 2 3 1 MPRO — PMA – p. 12

  13. Application to proteomics An artificial protein test set: lavor-11 7 26 / 1.526 10 9 25 / 2.49139 23 / 2.88882 24 / 1.526 22 / 2.49139 7 21 / 1.526 20 / 2.78861 18 / 1.526 37 / 3.22866 8 30 / 3.79628 19 / 2.49139 28 / 3.96678 6 16 / 2.49139 36 / 3.55753 29 / 3.00337 17 / 3.08691 35 / 3.13225 15 / 1.526 14 / 2.89935 2 33 / 3.15931 31 / 2.60831 34 / 2.68908 8 / 3.8356 13 / 2.49139 27 / 3.38763 1 / 2.49139 32 / 2.10239 5 11 / 3.03059 7 / 2.49139 6 / 1.526 12 / 1.526 3 / 1.526 0 10 / 2.49139 0 / 1.526 2 / 3.8393 4 5 / 3.83142 9 / 1.526 4 / 2.49139 1 3 MPRO — PMA – p. 13

  14. Embedding protein data in R 3 1aqr : four non-isometric embeddings MPRO — PMA – p. 14

  15. Sensor networks in 2D and 3D MPRO — PMA – p. 15

  16. Formulation � t 2 min uv x,t { u,v }∈ E � ( x uk − x vk ) 2 d 2 ∀{ u, v } ∈ E = uv + t uv k ≤ K MPRO — PMA – p. 16

  17. Citations 1. Lavor, Liberti, Maculan, Mucherino, Recent advances on the discretizable molecular distance geometry problem , Eur. J. of Op. Res., invited survey 2. Liberti, Lavor, Mucherino, Maculan, Molecular distance geometry methods: from continuous to discrete , Int. Trans. in Op. Res., 18 :33-51, 2010 3. Liberti, Lavor, Maculan, Computational experience with the molecular distance geometry problem , in J. Pintér (ed.), Global Optimization: Scientific and Engineering Case Studies , Springer, Berlin, 2006 MPRO — PMA – p. 17

  18. Mathematical Programming Formulations MPRO — PMA – p. 18

  19. Mathematical Programming MP: formal language for expressing optimization problems P Parameters p = problem input p also called an instance of P Decision variables x : encode problem output Objective function min f ( p, x ) Constraints ∀ i ≤ m g i ( p, x ) ≤ 0 f, g : explicit mathematical expressions involving symbols p, x If an instance p is given (i.e. an assignment of numbers to the symbols in p is known), write f ( x ) , g i ( x ) This excludes black-box optimization MPRO — PMA – p. 19

  20. Main optimization problem classes integer BQP gen. pooling MBQP SOCP SDP pooling LP BLP cNLP graph drawing MILP continuous NLP cMINLP MINLP blackbox linear nonlinear MPRO — PMA – p. 20

  21. Notation P : MP formulation with decision variables x = ( x 1 , . . . , x n ) Solution : assignment of values to decision variables, i.e. a vector v ∈ R n F ( P ) = set of feasible solutions x ∈ R n such that ∀ i ≤ m ( g i ( x ) ≤ 0) G ( P ) = set of globally optimal solutions x ∈ R n s.t. x ∈ F ( P ) and ∀ y ∈ F ( P ) ( f ( x ) ≤ f ( y )) MPRO — PMA – p. 21

  22. Citations Williams, Model building in mathematical programming , 2002 Liberti, Cafieri, Tarissan, Reformulations in Mathematical Programming: a computational approach , in Abraham et al. (eds.), Foundations of Comput. Intel., 2009 MPRO — PMA – p. 22

  23. Reformulations MPRO — PMA – p. 23

  24. Exact reformulations The formulation Q is an exact reformulation of P if ∃ an efficiently computable surjective map φ : F ( Q ) → F ( P ) s.t. φ | G ( Q ) is onto G ( P ) Informally: any optimum of Q can be mapped easily to an optimum of P , and for any optimum of P there is a corresponding optimum of Q P Q G G φ | G F F φ Construct Q so that it is easier to solve than P MPRO — PMA – p. 24

  25. xy when x is binary If ∃ bilinear term xy where x ∈ { 0 , 1 } , y ∈ [0 , 1] We can construct an exact reformulation : Replace each term xy by an added variable w Adjoin Fortet’s reformulation constraints: ≥ 0 w ≥ x + y − 1 w ≤ w x ≤ w y Get a MILP reformulation Solve reformulation using CPLEX: more effective than solving MINLP MPRO — PMA – p. 25

  26. “Proof” MPRO — PMA – p. 26

  27. Relaxations The formulation Q is a relaxation of P if min f Q ( y ) ≤ min f P ( x ) ( ∗ ) Relaxations are used to compute worst-case bounds to the optimum value of the original formulation Construct Q so that it is easy to solve Proving ( ∗ ) may not be easy in general The usual strategy : Make sure y ⊃ x and F ( Q ) ⊇ F ( P ) Make sure ∀ x ∈ F ( P ) ( f Q ( y ) ≤ f P ( x )) Then it follows that Q is a relaxation of P Example: convex relaxation F ( Q ) a convex set containing F ( P ) f Q a convex underestimator of f P Then Q is a cNLP and can be solve efficiently MPRO — PMA – p. 27

  28. xy when x, y continuous Get bilinear term xy where x ∈ [ x L , x U ] , y ∈ [ y L , y U ] We can construct a relaxation : Replace each term xy by an added variable w Adjoin following constraints: x L y + y L x − x L y L ≥ w x U y + y U x − x U y U ≥ w x U y + y L x − x U y L ≤ w x L y + y U x − x L y U ≤ w These are called McCormick’s envelopes Get an LP relaxation (solvable in polynomial time) MPRO — PMA – p. 28

  29. Software ROSE ( https://projects.coin-or.org/ROSE ) MPRO — PMA – p. 29

Recommend


More recommend