Stage ◮ Quantile regression by random projections ◮ Forecasting energy prices ◮ Involves statistics, probability theory, LP ◮ Implementation: easy ◮ Taste for theory ◮ Supported by grants from Siebel Energy Institute and RTE ◮ Could lead to CIFRE PhD with RTE ◮ Hurry if interested 1 / 16
Mixed-Integer Nonlinear Programming Leo Liberti, CNRS LIX Ecole Polytechnique ❧✐❜❡rt✐❅❧✐①✳♣♦❧②t❡❝❤♥✐q✉❡✳❢r PMA@MPRO 2 / 16
Mathematical Programming Formulations MPRO — PMA – p. 18
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
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
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
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
Haverly’s pooling problem MPRO — PMA – p. 3
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
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
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
Network design Decide whether to install pipes or not (0/1 decision) Associate a binary variable z ij with each pipe min 6 x 11 + 16 x 21 + 10 x 12 + � 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
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
Pooling problem network 4 / 16
Formulation: sets and parameters ◮ Sets ◮ I : index set for input nodes ◮ P : index set for pool nodes ◮ J : index set for output nodes ◮ K : index set for flow attributes ◮ ∀ p ∈ P N − ( p ) : index set for inputs → p ◮ ∀ p ∈ P N + ( p ) : index set for p → outputs ◮ Parameters ◮ ∀ i ∈ I S i = supply at node i ◮ ∀ j ∈ J D i = max. demand at node j ◮ ∀ i ∈ I, k ∈ K A ik = qty of attribute k in input flow i ◮ ∀ j ∈ J, k ∈ K L jk = min qty attr k at output j ◮ ∀ j ∈ J, k ∈ K U jk = max qty attr k at output j i = unit acquisition costs at input i ◮ ∀ i ∈ I c I j = unit selling price at output j ◮ ∀ j ∈ J c J 5 / 16
Formulation: decision variables & objective ◮ Decision variables ◮ ∀ i ∈ I, p ∈ P x ip = flow in pipe ( i, p ) ◮ ∀ p ∈ P, j ∈ J y ip = flow in pipe ( p, j ) ◮ ∀ p ∈ P, k ∈ K q pk = qty attr k in pool p ◮ ∀ j ∈ J, k ∈ K Q jk = qty attr k in output j ◮ Objective function � � c I c J min F ( x, y ) = i x ip − j y pj p ∈ P p ∈ P i ∈ N − ( p ) j ∈ N +( p ) 6 / 16
Formulation: constraints ◮ Supply: ∀ i ∈ I � x ip ≤ S i p ∈ P i ∈ N − ( p ) ◮ Max demand: ∀ j ∈ J � y pj ≤ D j p ∈ P j ∈ N +( p ) ◮ Mass balance for flow across pools: � � ∀ p ∈ P x ip = y pj i ∈ N − ( p ) j ∈ N + ( p ) ◮ Attr. qty balance input/pools: � � ∀ p ∈ P, k ∈ K A ik x ip = q pk x ip i ∈ N − ( p ) i ∈ N − ( p ) ◮ Attr. qty balance pools/output: � � ∀ j ∈ J, k ∈ K q pk y pj = Q jk y pj p ∈ P p ∈ P j ∈ N +( p ) j ∈ N +( p ) 7 / 16
Generalized pooling problem ◮ Decision variables ip = 1 iff pipe ( i, p ) installed, 0 othw ◮ ∀ i ∈ I, p ∈ P z ✐♥ pj = 1 iff pipe ( p, j ) installed, 0 othw ◮ ∀ p ∈ P, j ∈ J z ♦✉t ◮ Objective function � � z ✐♥ z ♦✉t min F ( x, y ) + ip + pj p ∈ P p ∈ P j ∈ N +( p ) i ∈ N − ( p ) ◮ Constraints ◮ Pipe activation: S i z ✐♥ ∀ p ∈ P, i ∈ N − ( p ) x ip ≤ ip ∀ p ∈ P, j ∈ N + ( p ) D j z ♦✉t y pj ≤ pj 8 / 16
Classification in systematics ◮ Attribute constraints involve q pk x ip , q pk y pj , Q jk y pj ◮ Bilinear terms in equations: nonconvex F ( P ) ◮ ⇒ (nonconvex) NLP ◮ Generalized pooling problem : (nonconvex) MINLP 9 / 16
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
Drawing graphs MPRO — PMA – p. 10
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
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
Application to proteomics An artificial protein test set: lavor-11 7 26 / 1.526 10 9 25 / 2.49139 23 / 2.88882 22 / 2.49139 24 / 1.526 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 27 / 3.38763 13 / 2.49139 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
Embedding protein data in R 3 1aqr : four non-isometric embeddings MPRO — PMA – p. 14
Sensor networks in 2D and 3D MPRO — PMA – p. 15
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
Recommend
More recommend