pod:aglobal,mixed-integernonlinearprogramming(minlp)solver · 2019-11-13 · commercial: baron,...

1
POD: A G, M-I N P (MINLP) S Kaarthik Sundar (A-/CNLS), Harsha Nagarajan (T-), Russell Bent (T-), Hassan Hijazi (T-); CNLS visiting students: Mowen Lu (Clemson), Site Wang (Clemson) Funding: LDRD ER (CMD), CNLS LA-UR-- Find the global optimum of the following MINLP: min f (x , y ) subject to: c i (x , y ) =0 [ i E c i (x , y ) 6 0 [ i I x n ; y ∈{ 0 , 1 } m where, the functions f and c i are continuous and dif- ferentiable. The problem is NP-hard and arises in many engineering applications. Furthermore, algorithms to solve the above problem to global optimality have also been identied to be a bottleneck for a variety of ma- chine learning problems. Power systems Gas pipeline networks Chemical process networks Molecular structure completion The state-of-the-art technique (spatial branch-and- bound) goes by the philosophy of sub-dividing the MINLP into a large number of "easy-to-solve" sub- problems, exponential number of them, which will in turn be used to nd the globally optimal solution to the MINLP. In contrast, POD goes by the philosophy of solving a se- quence of small number of increasingly harder Mixed- Integer Linear Programs (MILP), utilizing state-of-the- art MILP solvers like CPLEX and Gurobi. Piecewise convex relaxations Outer-approximation to solve mixed-integer convex problems Dynamic partitioning - new idea in the eld of global optimization --- Open-source: COUENNE, SCIP Commercial: BARON, LindoAPI, ANTIGONNE - Use the active partitions in the solution of the piecewise relaxation to generate a better local solution Dynamically partition variable domains using the local solution Build a piecewise convex relaxation (mixed-integer linear/convex program) using the partitioned variable domains Solve the piecewise convex relaxation using a MILP solver via “outer-approximation” If the relative gap between the piecewise relaxation objective value and local solution is within ε , terminate; else add more variable partitions Iterative, optimality-based bound tightening Solve a convex relaxation PRESOLVER MAIN ALGORITHM Compute a local optimal solution - Piecewise convex relaxation of a bilinear function z = x 1 x 2 , in the domain [-1 , 1] 3 and with three partitions on the variable x 2 , aims to capture the region shown in the -D plot (below, to the left) -1 0 1 -1 -0. 5 0 0. 5 1 -1 0 1 x 1 x 2 z Piecewise convex envelope for z = x 1 x 2 x 1 x 2 φ ( ˆ x s ) = x 1 , i · x 2 , j ˆ x 1 ˆ x 2 ˆ x 3 ˆ x 4 ˆ x 5 ˆ x 6 ˆ x 7 ˆ x 8 ˆ x 9 ˆ x 10 ˆ x 11 ˆ x 12 x 1 , 1 x 1 , 2 x 1 , 3 x 1 , 4 x 2 , 1 x 2 , 2 x 2 , 3 z 1 1 z 2 1 z 3 1 z 1 2 z 2 2 The MILP to characterize the piecewise convex relaxation of the biliner function with three and two partitions on x 1 and x 2 , respectively, can constructed using the grid analogy (above, to the right). The mathematical formulation, that characterizes all the facets of the MILP using an extreme-point representation, is given by: x 1 x 2 y = ˝ 12 s =1 λ s ˆ x 1 s ˆ x 2 s φ ( ˆ x s ) ˝ 12 s =1 λ s =1 λ s > 0 [s ∈{ 1 ,..., 12 } z 1 1 + z 2 1 + z 3 1 =1 z 1 2 + z 2 2 =1 z 1 1 , z 2 1 , z 3 1 , z 1 2 , z 2 2 ∈{ 0 , 1 } z 3 1 > λ 4 + λ 8 + λ 12 z 3 1 6 λ 3 + λ 7 + λ 11 + λ 4 + λ 8 + λ 12 z 3 1 + z 2 1 > λ 3 + λ 7 + λ 11 + λ 4 + λ 8 + λ 12 z 3 1 + z 2 1 6 λ 2 + λ 6 + λ 10 + λ 3 + λ 7 + λ 11 + λ 4 + λ 8 + λ 12 z 2 2 > λ 9 + λ 10 + λ 11 + λ 12 z 2 2 6 λ 5 + λ 6 + λ 7 + λ 8 + λ 9 + λ 10 + λ 11 + λ 12 - POD solves the piecewise convex relaxations via the technique of outer-approximation. For a function de- ned in the domain x X x f (x ) f (x ) > f (x k ) + + f (x k ) | (x - x k ) [x k 2 X The variable partitioning in POD is done dynamically, in a non-uniform fashion, guided by the local and the lower bounding solutions -3 -2 -1 0 1 2 3 -2. 5 6 x 6 2. 5 Iterations -3 -2 -1 0 1 2 3 x * Active partition x * Active partition -3 -2 -1 0 1 2 3 Performance of POD is comparable to the state-of- the-art commercial solver, BARON, and better than the state-of-the-art open-source solvers. In the gure be- low, higher the curve, better the performance. gap remaining of instances . . BARON POD COUENNE SCIP Venn-diagram of instances solved to optimality BARON POD SCIP COUENNE The source code for POD is written using the Ju- lia programming language and can be found at https://github.com/lanl-ansi/POD.jl [] H. Nagarajan, M. Lu, S. Wang, R. Bent, and K. Sun- dar, “An Adaptive, Multivariate Partitioning Algo- rithm for Tightening Convex Relaxations of Nonlin- ear Programs,” . [] H. Nagarajan, M. Lu, E. Yamangil, and R. Bent, “Tight- ening McCormick Relaxations for Nonlinear Pro- grams via Dynamic Multivariate Partitioning,” in In- ternational Conference on Principles and Practice of Constraint Programming, .

Upload: others

Post on 14-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: POD:AGlobal,Mixed-IntegerNonlinearProgramming(MINLP)Solver · 2019-11-13 · Commercial: BARON, LindoAPI, ANTIGONNE milp-based algorithm in pod Use the active partitions in the solution

POD: AGlobal,Mixed-IntegerNonlinearProgramming (MINLP) SolverKaarthik Sundar (A-1/CNLS), Harsha Nagarajan (T-5), Russell Bent (T-5), Hassan Hijazi (T-5);

CNLS visiting students: Mowen Lu (Clemson), Site Wang (Clemson)

Funding: LDRD 20170201ER (CMD), CNLSLA-UR-18-23774

problem statementFind the global optimum of the following MINLP:

min f (x , y )subject to: ci (x , y ) = 0 [i ∈ E

ci (x , y ) 6 0 [i ∈ Ix ∈ Òn ; y ∈ {0, 1}m

where, the functions f and ci are continuous and dif-ferentiable. The problem is NP-hard and arises in manyengineering applications. Furthermore, algorithms tosolve the above problem to global optimality have alsobeen identi�ed to be a bottleneck for a variety of ma-chine learning problems.

motivating applications

Power systems Gas pipeline networks

Chemical process networks Molecular structurecompletion

philosophy of podThe state-of-the-art technique (spatial branch-and-bound) goes by the philosophy of sub-dividing theMINLP into a large number of "easy-to-solve" sub-problems, exponential number of them, which will inturn be used to �nd the globally optimal solution tothe MINLP.

In contrast, POD goes by the philosophy of solving a se-quence of small number of increasingly harder Mixed-Integer Linear Programs (MILP), utilizing state-of-the-art MILP solvers like CPLEX and Gurobi.

key solution techniques used in podPiecewise convex relaxations

Outer-approximation to solve mixed-integer convexproblems

Dynamic partitioning - new idea in the �eld of globaloptimization

state-of-the-art solversOpen-source: COUENNE, SCIP

Commercial: BARON, LindoAPI, ANTIGONNE

milp-based algorithm in pod

Use the active partitions in thesolution of the piecewise relaxationto generate a better local solution

Dynamically partition variabledomains using the local solution

Build a piecewise convex relaxation(mixed-integer linear/convexprogram) using the partitioned

variable domains

Solve the piecewise convexrelaxation using a MILP solver via

“outer-approximation”

If the relative gap between thepiecewise relaxation objective

value and local solution is within ε ,terminate; else add more variable

partitions

Iterative, optimality-based boundtightening

Solve a convex relaxation

PRESOLVER

MAIN ALGORITHM

Compute a local optimal solution

piecewise convex relaxations - illustrations for a bilinear functionPiecewise convex relaxation of a bilinear function z = x1x2, in the domain [−1, 1]3 and with three partitions on thevariable x2, aims to capture the region shown in the 3-D plot (below, to the left)

�10

1 �1 �0.5 0 0.5 1

�1

0

1

x1x2

z

Piecewise convex envelope for z = x1x2

<latexit sha1_base64="Vns8whSYgDezZWFlFRNc/KQJIVo=">AAAK/Xic1VZLb+M2ENZuH+uqr0177GXa2MC2kB1RRrBpAgEpihY9puhmd4FYCCiKtolQoiDSsRVB6K/ppSh67W/pvylJK4lke4sc9rKEHsNvZj6SM0NRcc6ZVL7/76PH773/wYdPeh+5H3/y6WefP9374qUUi4LQcyK4KF7HWFLOMnqumOL0dV5QnMacvoqvfjT6V9e0kExkL1SZ0yjFs4xNGcFKQ5d7T/6cxHTGskqxq5ucEbUoaO02GF4xWV+4oJulDqszRgldMkmBiOyaroDqJxc5hakooH8Tri4RrC6Dfu2B9VtxHFMe9jXe96C86wW6d2N7EPZv+l4jS1WaYQqhsKLh8Hu/9jSNTDHn3jWjy7A68usKaRhmBUs8GIwTiMVKG5Upy8Ih0oOkeBUijUSuO5jgJMm5UOMLuSimHogcE6bK0B+NPZA4zTmVIfI9sKFMcX4Qc0yulnOmqAeJSLFlPUa3HShtN4Jq9V1Zn2yPsJ5Xm/oNLP4oODw2j7fAhY6Hb4fJTup+de49TydyoLCusINCLEHSPJxMPMixIvPmBabUwlzwciYyD3QBKl0rRCwyFY49Wxjr1lgbMlgyNYdcsExBShUOq0FjOIBcIX0H+h4DSbDCLQofEAQwhsmkBa6hDdBY7gBblnXkNkuDam2zghJuJhMjNk5DZC6kHWDg34KogQ2IWoYmnGAfRhPcW1tseKvRaxyb4U/0KNu5e0DWWil7VzIW7MpYsCtjW2DL8qEZ6yainbduJu6yh2B37oaNYiN369S9K7H3d8Xe3xX7LbBl+cDYbwS4FftuhO8jf7u9mpjb7bbeXO1gu5OkwMsLc/LpaCRqHgZp2nzIw4ImXx/6ETxD3tBco+BbGA5t1wzogYVO/pdDFDib0Tsa69dmejBRzBd3NLBFA+iORK+JZsn63F2L7WP58um+P/Jtg20BNcK+07Szy73Hx5NEkEVKM0U4lvIC+bmKKlwoRrg55xe6HvVxh2f0QosZTqmMKjvpGgYaSey5PhW6yiza9qhwKmWZxtoyxWouN3UG3KmL0+7IL1BUmSFoRjampKZHUcWyfGF10FHKaUKneMGVJwnmNAlHR4dR9TMr8G84kx2iKqNLtZLT2ixpuuCghN1zkLCCEsVLLWBSMB0VIHNcYKL0L1OHIZ9Nzcbe4MV8JrTbPGUbM4/uVUE3zjaj9Zu4b0VJlU5Dqjd8qOdOpWo8GjVncYGLsrIfhMa366x3DtUfkhJMLR2McJ7ralr/XkEIlZozclV7esFXG6Bn/39qz1Qb2qytbeFlMEL+CP0a7J/+1NRdz/nK+cZ55iDnuXPq/OKcOecO6e31nvdOez+4v7t/uH+5f69NHz9qfL50Os395z8bLiO7</latexit><latexit sha1_base64="Vns8whSYgDezZWFlFRNc/KQJIVo=">AAAK/Xic1VZLb+M2ENZuH+uqr0177GXa2MC2kB1RRrBpAgEpihY9puhmd4FYCCiKtolQoiDSsRVB6K/ppSh67W/pvylJK4lke4sc9rKEHsNvZj6SM0NRcc6ZVL7/76PH773/wYdPeh+5H3/y6WefP9374qUUi4LQcyK4KF7HWFLOMnqumOL0dV5QnMacvoqvfjT6V9e0kExkL1SZ0yjFs4xNGcFKQ5d7T/6cxHTGskqxq5ucEbUoaO02GF4xWV+4oJulDqszRgldMkmBiOyaroDqJxc5hakooH8Tri4RrC6Dfu2B9VtxHFMe9jXe96C86wW6d2N7EPZv+l4jS1WaYQqhsKLh8Hu/9jSNTDHn3jWjy7A68usKaRhmBUs8GIwTiMVKG5Upy8Ih0oOkeBUijUSuO5jgJMm5UOMLuSimHogcE6bK0B+NPZA4zTmVIfI9sKFMcX4Qc0yulnOmqAeJSLFlPUa3HShtN4Jq9V1Zn2yPsJ5Xm/oNLP4oODw2j7fAhY6Hb4fJTup+de49TydyoLCusINCLEHSPJxMPMixIvPmBabUwlzwciYyD3QBKl0rRCwyFY49Wxjr1lgbMlgyNYdcsExBShUOq0FjOIBcIX0H+h4DSbDCLQofEAQwhsmkBa6hDdBY7gBblnXkNkuDam2zghJuJhMjNk5DZC6kHWDg34KogQ2IWoYmnGAfRhPcW1tseKvRaxyb4U/0KNu5e0DWWil7VzIW7MpYsCtjW2DL8qEZ6yainbduJu6yh2B37oaNYiN369S9K7H3d8Xe3xX7LbBl+cDYbwS4FftuhO8jf7u9mpjb7bbeXO1gu5OkwMsLc/LpaCRqHgZp2nzIw4ImXx/6ETxD3tBco+BbGA5t1wzogYVO/pdDFDib0Tsa69dmejBRzBd3NLBFA+iORK+JZsn63F2L7WP58um+P/Jtg20BNcK+07Szy73Hx5NEkEVKM0U4lvIC+bmKKlwoRrg55xe6HvVxh2f0QosZTqmMKjvpGgYaSey5PhW6yiza9qhwKmWZxtoyxWouN3UG3KmL0+7IL1BUmSFoRjampKZHUcWyfGF10FHKaUKneMGVJwnmNAlHR4dR9TMr8G84kx2iKqNLtZLT2ixpuuCghN1zkLCCEsVLLWBSMB0VIHNcYKL0L1OHIZ9Nzcbe4MV8JrTbPGUbM4/uVUE3zjaj9Zu4b0VJlU5Dqjd8qOdOpWo8GjVncYGLsrIfhMa366x3DtUfkhJMLR2McJ7ralr/XkEIlZozclV7esFXG6Bn/39qz1Qb2qytbeFlMEL+CP0a7J/+1NRdz/nK+cZ55iDnuXPq/OKcOecO6e31nvdOez+4v7t/uH+5f69NHz9qfL50Os395z8bLiO7</latexit><latexit sha1_base64="Vns8whSYgDezZWFlFRNc/KQJIVo=">AAAK/Xic1VZLb+M2ENZuH+uqr0177GXa2MC2kB1RRrBpAgEpihY9puhmd4FYCCiKtolQoiDSsRVB6K/ppSh67W/pvylJK4lke4sc9rKEHsNvZj6SM0NRcc6ZVL7/76PH773/wYdPeh+5H3/y6WefP9374qUUi4LQcyK4KF7HWFLOMnqumOL0dV5QnMacvoqvfjT6V9e0kExkL1SZ0yjFs4xNGcFKQ5d7T/6cxHTGskqxq5ucEbUoaO02GF4xWV+4oJulDqszRgldMkmBiOyaroDqJxc5hakooH8Tri4RrC6Dfu2B9VtxHFMe9jXe96C86wW6d2N7EPZv+l4jS1WaYQqhsKLh8Hu/9jSNTDHn3jWjy7A68usKaRhmBUs8GIwTiMVKG5Upy8Ih0oOkeBUijUSuO5jgJMm5UOMLuSimHogcE6bK0B+NPZA4zTmVIfI9sKFMcX4Qc0yulnOmqAeJSLFlPUa3HShtN4Jq9V1Zn2yPsJ5Xm/oNLP4oODw2j7fAhY6Hb4fJTup+de49TydyoLCusINCLEHSPJxMPMixIvPmBabUwlzwciYyD3QBKl0rRCwyFY49Wxjr1lgbMlgyNYdcsExBShUOq0FjOIBcIX0H+h4DSbDCLQofEAQwhsmkBa6hDdBY7gBblnXkNkuDam2zghJuJhMjNk5DZC6kHWDg34KogQ2IWoYmnGAfRhPcW1tseKvRaxyb4U/0KNu5e0DWWil7VzIW7MpYsCtjW2DL8qEZ6yainbduJu6yh2B37oaNYiN369S9K7H3d8Xe3xX7LbBl+cDYbwS4FftuhO8jf7u9mpjb7bbeXO1gu5OkwMsLc/LpaCRqHgZp2nzIw4ImXx/6ETxD3tBco+BbGA5t1wzogYVO/pdDFDib0Tsa69dmejBRzBd3NLBFA+iORK+JZsn63F2L7WP58um+P/Jtg20BNcK+07Szy73Hx5NEkEVKM0U4lvIC+bmKKlwoRrg55xe6HvVxh2f0QosZTqmMKjvpGgYaSey5PhW6yiza9qhwKmWZxtoyxWouN3UG3KmL0+7IL1BUmSFoRjampKZHUcWyfGF10FHKaUKneMGVJwnmNAlHR4dR9TMr8G84kx2iKqNLtZLT2ixpuuCghN1zkLCCEsVLLWBSMB0VIHNcYKL0L1OHIZ9Nzcbe4MV8JrTbPGUbM4/uVUE3zjaj9Zu4b0VJlU5Dqjd8qOdOpWo8GjVncYGLsrIfhMa366x3DtUfkhJMLR2McJ7ralr/XkEIlZozclV7esFXG6Bn/39qz1Qb2qytbeFlMEL+CP0a7J/+1NRdz/nK+cZ55iDnuXPq/OKcOecO6e31nvdOez+4v7t/uH+5f69NHz9qfL50Os395z8bLiO7</latexit>

x1

x2 �(x̂s ) = x1,i · x2,j

x̂1x̂2 x̂3

x̂4

x̂5x̂6 x̂7

x̂8

x̂9x̂10 x̂11

x̂12

x1,1 x1,2 x1,3 x1,4

x2,1

x2,2

x2,3

z 11 z 21 z 31

z 12

z 22

<latexit sha1_base64="ScF//Mv//3mXXhCBEFheA8h9WNU=">AAAMb3icnZbdjttEFMfd5atJA+3CBRcgNLCJlJW8wXYSGihBlRCIyyK6baXYRGN7nAzxVz3jblLLVzwNt/A0PAZvwMzYjj/i3WZraVeTOf/z9++M54xthi4mVFH+vXPyzrvvvf/B3U73Xu/Dj+4/OP34GQniyEKXVuAG0QsTEuRiH11STF30IowQ9EwXPTc3P/L481coIjjwn9JdiAwPrnzsYAtSNrU87Xw+6OsvX8bQBvrh/3CNh/oa0kQ3PbBNl+QczMF2magyToFu2QHlvzT5j7QPdL2rm2iF/YTizesQWzSOUNod6HYEr8CCUBTOVcuTVxHcyQxpB+ga+wYYKrJyDlYRtsFwKk/PH3XzjO8vfjD4FIv6gY3AwkRucGWApL9dqv0UXFzkudlgUshc5NBMpfVT5pbNRni1ZtOQgqE6mnJ10r9Nfemei2FbG0amymrzllWvAlEbaaVQlADa5NpePmvKc/S6fpzrJ6W6VTdpJdduIp9WyLU3k39TIdeOIH+4J9duJJ+1ko9vIv+2Qr4XQjN4hVrJE1VJK/CNjFaoRFXTPf/4Rv5E1a7dNjyf13IQzXdLWUSLYlYqZm2KSRGfZNFa94gG4F3DG4RtdF7OIyAcFg52XSMPWziyXF4atHFM5spI0aZGmxnHLO20Q7tccIQhqDQpr620HbfZzm7FOanYTQ7tJm82y7YQ91L4CgsvrW0BRfh4L23v1bJ6Iny813jv1bJkInyN16DFbLI3a1kwEb7GrCATjSSLt9Q8QnZ5/IpH8Xqp/q5y3zZ5EEF/hYq9UMmoHurVBNONc/m4Kh833wFNHPawRtNMrQmcNnWVhj2RMkHQDFoyShy26qVe4GQNuwhCaGG6Y6s2lQF/gYMrbNP1XPM8Gewpv5wqRU8Wp4JS9PwxFhl65pK3YnF23MqHF1S4zAqXye089uUoxRHFt/dbFiM6I/Pgx9zgLSoRDVF8PjAM5Nu1r5flgzO2pcUFDgdqPjiT8uvJ8vTkO90OrNhDPrVcSMhCVUJqJDCimDVK2tVjghjhBq7Qgg196CFiJIIrBQM2YwMniNifTzPaakYCPUJ2nsmUHqRr0ozxydaY6dXv/FQ1En4L5FsNJOrMjAT7YSxioBYkjo0cGLtUJhZ0kT0fzaZG8jOO4G/QJzWjxEdXdEuclJfkxC6gAeCfn8DGEbKou2MDaEWYrQqw1jCCFmUfqTWHcOWEbkAbvtBdBSxt7eEGuVGGtPo6iyeaXuddDAmi7DF4IaRzxo4IzTPysIvNCEa7hMWtdZ5bT+4CgMRnLdxi8vUIhiHbTYDQHTsf5yARL+dUZgVvGpOy6UIe4rtNbe6tw8EzbaQqI/VX7ezxT/m+uyt9Jn0lDSVVeig9ln6RnkiXktX5s/NX5+/OP/f+633a+6IHMunJnTznE6l29c7/B7rO5Xs=</latexit><latexit sha1_base64="ScF//Mv//3mXXhCBEFheA8h9WNU=">AAAMb3icnZbdjttEFMfd5atJA+3CBRcgNLCJlJW8wXYSGihBlRCIyyK6baXYRGN7nAzxVz3jblLLVzwNt/A0PAZvwMzYjj/i3WZraVeTOf/z9++M54xthi4mVFH+vXPyzrvvvf/B3U73Xu/Dj+4/OP34GQniyEKXVuAG0QsTEuRiH11STF30IowQ9EwXPTc3P/L481coIjjwn9JdiAwPrnzsYAtSNrU87Xw+6OsvX8bQBvrh/3CNh/oa0kQ3PbBNl+QczMF2magyToFu2QHlvzT5j7QPdL2rm2iF/YTizesQWzSOUNod6HYEr8CCUBTOVcuTVxHcyQxpB+ga+wYYKrJyDlYRtsFwKk/PH3XzjO8vfjD4FIv6gY3AwkRucGWApL9dqv0UXFzkudlgUshc5NBMpfVT5pbNRni1ZtOQgqE6mnJ10r9Nfemei2FbG0amymrzllWvAlEbaaVQlADa5NpePmvKc/S6fpzrJ6W6VTdpJdduIp9WyLU3k39TIdeOIH+4J9duJJ+1ko9vIv+2Qr4XQjN4hVrJE1VJK/CNjFaoRFXTPf/4Rv5E1a7dNjyf13IQzXdLWUSLYlYqZm2KSRGfZNFa94gG4F3DG4RtdF7OIyAcFg52XSMPWziyXF4atHFM5spI0aZGmxnHLO20Q7tccIQhqDQpr620HbfZzm7FOanYTQ7tJm82y7YQ91L4CgsvrW0BRfh4L23v1bJ6Iny813jv1bJkInyN16DFbLI3a1kwEb7GrCATjSSLt9Q8QnZ5/IpH8Xqp/q5y3zZ5EEF/hYq9UMmoHurVBNONc/m4Kh833wFNHPawRtNMrQmcNnWVhj2RMkHQDFoyShy26qVe4GQNuwhCaGG6Y6s2lQF/gYMrbNP1XPM8Gewpv5wqRU8Wp4JS9PwxFhl65pK3YnF23MqHF1S4zAqXye089uUoxRHFt/dbFiM6I/Pgx9zgLSoRDVF8PjAM5Nu1r5flgzO2pcUFDgdqPjiT8uvJ8vTkO90OrNhDPrVcSMhCVUJqJDCimDVK2tVjghjhBq7Qgg196CFiJIIrBQM2YwMniNifTzPaakYCPUJ2nsmUHqRr0ozxydaY6dXv/FQ1En4L5FsNJOrMjAT7YSxioBYkjo0cGLtUJhZ0kT0fzaZG8jOO4G/QJzWjxEdXdEuclJfkxC6gAeCfn8DGEbKou2MDaEWYrQqw1jCCFmUfqTWHcOWEbkAbvtBdBSxt7eEGuVGGtPo6iyeaXuddDAmi7DF4IaRzxo4IzTPysIvNCEa7hMWtdZ5bT+4CgMRnLdxi8vUIhiHbTYDQHTsf5yARL+dUZgVvGpOy6UIe4rtNbe6tw8EzbaQqI/VX7ezxT/m+uyt9Jn0lDSVVeig9ln6RnkiXktX5s/NX5+/OP/f+633a+6IHMunJnTznE6l29c7/B7rO5Xs=</latexit><latexit sha1_base64="ScF//Mv//3mXXhCBEFheA8h9WNU=">AAAMb3icnZbdjttEFMfd5atJA+3CBRcgNLCJlJW8wXYSGihBlRCIyyK6baXYRGN7nAzxVz3jblLLVzwNt/A0PAZvwMzYjj/i3WZraVeTOf/z9++M54xthi4mVFH+vXPyzrvvvf/B3U73Xu/Dj+4/OP34GQniyEKXVuAG0QsTEuRiH11STF30IowQ9EwXPTc3P/L481coIjjwn9JdiAwPrnzsYAtSNrU87Xw+6OsvX8bQBvrh/3CNh/oa0kQ3PbBNl+QczMF2magyToFu2QHlvzT5j7QPdL2rm2iF/YTizesQWzSOUNod6HYEr8CCUBTOVcuTVxHcyQxpB+ga+wYYKrJyDlYRtsFwKk/PH3XzjO8vfjD4FIv6gY3AwkRucGWApL9dqv0UXFzkudlgUshc5NBMpfVT5pbNRni1ZtOQgqE6mnJ10r9Nfemei2FbG0amymrzllWvAlEbaaVQlADa5NpePmvKc/S6fpzrJ6W6VTdpJdduIp9WyLU3k39TIdeOIH+4J9duJJ+1ko9vIv+2Qr4XQjN4hVrJE1VJK/CNjFaoRFXTPf/4Rv5E1a7dNjyf13IQzXdLWUSLYlYqZm2KSRGfZNFa94gG4F3DG4RtdF7OIyAcFg52XSMPWziyXF4atHFM5spI0aZGmxnHLO20Q7tccIQhqDQpr620HbfZzm7FOanYTQ7tJm82y7YQ91L4CgsvrW0BRfh4L23v1bJ6Iny813jv1bJkInyN16DFbLI3a1kwEb7GrCATjSSLt9Q8QnZ5/IpH8Xqp/q5y3zZ5EEF/hYq9UMmoHurVBNONc/m4Kh833wFNHPawRtNMrQmcNnWVhj2RMkHQDFoyShy26qVe4GQNuwhCaGG6Y6s2lQF/gYMrbNP1XPM8Gewpv5wqRU8Wp4JS9PwxFhl65pK3YnF23MqHF1S4zAqXye089uUoxRHFt/dbFiM6I/Pgx9zgLSoRDVF8PjAM5Nu1r5flgzO2pcUFDgdqPjiT8uvJ8vTkO90OrNhDPrVcSMhCVUJqJDCimDVK2tVjghjhBq7Qgg196CFiJIIrBQM2YwMniNifTzPaakYCPUJ2nsmUHqRr0ozxydaY6dXv/FQ1En4L5FsNJOrMjAT7YSxioBYkjo0cGLtUJhZ0kT0fzaZG8jOO4G/QJzWjxEdXdEuclJfkxC6gAeCfn8DGEbKou2MDaEWYrQqw1jCCFmUfqTWHcOWEbkAbvtBdBSxt7eEGuVGGtPo6iyeaXuddDAmi7DF4IaRzxo4IzTPysIvNCEa7hMWtdZ5bT+4CgMRnLdxi8vUIhiHbTYDQHTsf5yARL+dUZgVvGpOy6UIe4rtNbe6tw8EzbaQqI/VX7ezxT/m+uyt9Jn0lDSVVeig9ln6RnkiXktX5s/NX5+/OP/f+633a+6IHMunJnTznE6l29c7/B7rO5Xs=</latexit>

The MILP to characterize the piecewise convex relaxation of the biliner function with three and two partitions on x1and x2, respectively, can constructed using the grid analogy (above, to the right). The mathematical formulation, thatcharacterizes all the facets of the MILP using an extreme-point representation, is given by:

x1x2y

=∑12s=1 λs

x̂1s

x̂2s

φ(x̂s )

∑12s=1 λs = 1

λs > 0 [s ∈ {1, . . . , 12}

z 11 + z 21 + z 31 = 1

z 12 + z 22 = 1

z 11 , z21 , z

31 , z

12 , z

22 ∈ {0, 1}

z 31 > λ4 + λ8 + λ12

z 31 6 λ3 + λ7 + λ11 + λ4 + λ8 + λ12

z 31 + z21 > λ3 + λ7 + λ11 + λ4 + λ8 + λ12

z 31 + z21 6 λ2 + λ6 + λ10 + λ3 + λ7 + λ11 + λ4 + λ8 + λ12

z 22 > λ9 + λ10 + λ11 + λ12

z 22 6 λ5 + λ6 + λ7 + λ8 + λ9 + λ10 + λ11 + λ12

outer-approximationPOD solves the piecewise convex relaxations via thetechnique of outer-approximation. For a function de-�ned in the domain x ∈ X

x

f (x )

f (x ) > f (xk ) + +f (xk )|(x � xk ) [xk 2 X<latexit sha1_base64="kmGxP8VIjrXPyZu50zMeN3HgUiU=">AAAGz3iclVTfj9Q2EA53xxaOUjh45MXlQNqlSZrsaQU6tBVSBeIRVA5O2uROE8fJWuv8wHa4XdI99bV/Yp/7jzDOhpYsd1qI5Gg8M9/nb+yxo1JwpT3vnytb2ztXez9cu75748ebP926vXfnrSoqSdkRLUQhjyNQTPCcHWmuBTsuJYMsEuxdNPvdxN99YFLxIn+jFyULM0hznnAKGl2ne9t/BhFLeV5rPvtYcqoryZa7hAQJF2ISFxnwfOz47ugQh62yotBT28TGZSVLwX4+8EJSikKTfjC3a/wNTobLwdPdIJZwNsGlF0RPeW43UsephEVI+s7Q9W3Hc0cDkkoek76Z40AcLt0gnd9WeUPbGxDHMSmNmRcxm0ieTnVI6gfzB8s1iNfyGoiHnKMWAlHxgRlI0p8PDAphLQ710Zm9qse+uOSLa+wSRKL6D+51N6wogXK9QPfjL5mGj4I5cYi/4nr43WSjy8ku42rqMju0QZrzbXSeO0RtG7gaIpO5Sdqht0nVt1NtEOWt8KY1yOd2Agw5B+6B7fiDtlFIkLL3SkCuCU5PZgPyC4IgEtDOT+qA55pJCmJJ+nOHNEnn50FSSBDCTAlmkGPTcgHL485FO72977le85GvDb819q32e3W6t3UYxAWtMpZrKkCpie+VOqxBak4F3tygUgwLnkHKJmjmkDEV1s3lW5KH6IkJKsOBFTXeLxE1ZEotsggzM9BTtR4zzgtjUdZd+Y0f1mYJltM1STp5EtY8L6smRjpBlcQsgUpoW+F2snjsPhmF9Qsu4Q/IVYeoztmZnqtkaUpKKkF0QczzRmIuGdVigQZQyXFXCJ2CBIpn1NVcponphjVeEGmBsGnG15SH/4eG3X1uTnR5GfdnUzGNx5CVoMeonSndItqw4JEEuagxTqcttgvGdmXNcwpzrn51oSyxm4jSC8HImNTNJVjaWPBszYk3A0zIdJu/3ltfG2/xHfZc//Vw/9nztu+uWfes+1bf8q3H1jPrpfXKOrLo9r8713fu7Nztve6d9c57f61St660mLtW5+v9/QmbpTFD</latexit><latexit sha1_base64="kmGxP8VIjrXPyZu50zMeN3HgUiU=">AAAGz3iclVTfj9Q2EA53xxaOUjh45MXlQNqlSZrsaQU6tBVSBeIRVA5O2uROE8fJWuv8wHa4XdI99bV/Yp/7jzDOhpYsd1qI5Gg8M9/nb+yxo1JwpT3vnytb2ztXez9cu75748ebP926vXfnrSoqSdkRLUQhjyNQTPCcHWmuBTsuJYMsEuxdNPvdxN99YFLxIn+jFyULM0hznnAKGl2ne9t/BhFLeV5rPvtYcqoryZa7hAQJF2ISFxnwfOz47ugQh62yotBT28TGZSVLwX4+8EJSikKTfjC3a/wNTobLwdPdIJZwNsGlF0RPeW43UsephEVI+s7Q9W3Hc0cDkkoek76Z40AcLt0gnd9WeUPbGxDHMSmNmRcxm0ieTnVI6gfzB8s1iNfyGoiHnKMWAlHxgRlI0p8PDAphLQ710Zm9qse+uOSLa+wSRKL6D+51N6wogXK9QPfjL5mGj4I5cYi/4nr43WSjy8ku42rqMju0QZrzbXSeO0RtG7gaIpO5Sdqht0nVt1NtEOWt8KY1yOd2Agw5B+6B7fiDtlFIkLL3SkCuCU5PZgPyC4IgEtDOT+qA55pJCmJJ+nOHNEnn50FSSBDCTAlmkGPTcgHL485FO72977le85GvDb819q32e3W6t3UYxAWtMpZrKkCpie+VOqxBak4F3tygUgwLnkHKJmjmkDEV1s3lW5KH6IkJKsOBFTXeLxE1ZEotsggzM9BTtR4zzgtjUdZd+Y0f1mYJltM1STp5EtY8L6smRjpBlcQsgUpoW+F2snjsPhmF9Qsu4Q/IVYeoztmZnqtkaUpKKkF0QczzRmIuGdVigQZQyXFXCJ2CBIpn1NVcponphjVeEGmBsGnG15SH/4eG3X1uTnR5GfdnUzGNx5CVoMeonSndItqw4JEEuagxTqcttgvGdmXNcwpzrn51oSyxm4jSC8HImNTNJVjaWPBszYk3A0zIdJu/3ltfG2/xHfZc//Vw/9nztu+uWfes+1bf8q3H1jPrpfXKOrLo9r8713fu7Nztve6d9c57f61St660mLtW5+v9/QmbpTFD</latexit><latexit sha1_base64="kmGxP8VIjrXPyZu50zMeN3HgUiU=">AAAGz3iclVTfj9Q2EA53xxaOUjh45MXlQNqlSZrsaQU6tBVSBeIRVA5O2uROE8fJWuv8wHa4XdI99bV/Yp/7jzDOhpYsd1qI5Gg8M9/nb+yxo1JwpT3vnytb2ztXez9cu75748ebP926vXfnrSoqSdkRLUQhjyNQTPCcHWmuBTsuJYMsEuxdNPvdxN99YFLxIn+jFyULM0hznnAKGl2ne9t/BhFLeV5rPvtYcqoryZa7hAQJF2ISFxnwfOz47ugQh62yotBT28TGZSVLwX4+8EJSikKTfjC3a/wNTobLwdPdIJZwNsGlF0RPeW43UsephEVI+s7Q9W3Hc0cDkkoek76Z40AcLt0gnd9WeUPbGxDHMSmNmRcxm0ieTnVI6gfzB8s1iNfyGoiHnKMWAlHxgRlI0p8PDAphLQ710Zm9qse+uOSLa+wSRKL6D+51N6wogXK9QPfjL5mGj4I5cYi/4nr43WSjy8ku42rqMju0QZrzbXSeO0RtG7gaIpO5Sdqht0nVt1NtEOWt8KY1yOd2Agw5B+6B7fiDtlFIkLL3SkCuCU5PZgPyC4IgEtDOT+qA55pJCmJJ+nOHNEnn50FSSBDCTAlmkGPTcgHL485FO72977le85GvDb819q32e3W6t3UYxAWtMpZrKkCpie+VOqxBak4F3tygUgwLnkHKJmjmkDEV1s3lW5KH6IkJKsOBFTXeLxE1ZEotsggzM9BTtR4zzgtjUdZd+Y0f1mYJltM1STp5EtY8L6smRjpBlcQsgUpoW+F2snjsPhmF9Qsu4Q/IVYeoztmZnqtkaUpKKkF0QczzRmIuGdVigQZQyXFXCJ2CBIpn1NVcponphjVeEGmBsGnG15SH/4eG3X1uTnR5GfdnUzGNx5CVoMeonSndItqw4JEEuagxTqcttgvGdmXNcwpzrn51oSyxm4jSC8HImNTNJVjaWPBszYk3A0zIdJu/3ltfG2/xHfZc//Vw/9nztu+uWfes+1bf8q3H1jPrpfXKOrLo9r8713fu7Nztve6d9c57f61St660mLtW5+v9/QmbpTFD</latexit>

dynamic variable partitioningThe variable partitioning in POD is done dynamically,in a non-uniform fashion, guided by the local and thelower bounding solutions

−3 −2 −1 0 1 2 3

−2.5 6 x 6 2.5

Iterations

−3 −2 −1 0 1 2 3

x ∗ Active partition

x ∗ Active partition

−3 −2 −1 0 1 2 3

resultsPerformance of POD is comparable to the state-of-the-art commercial solver, BARON, and better than thestate-of-the-art open-source solvers. In the �gure be-low, higher the curve, better the performance.

% gap remaining

%ofinstances

0.01% 0.10% 1% 10% 100%

0%

20%

40%

60%

80%

100%

BARON

POD

COUENNE

SCIP

Venn-diagram of instances solved to optimality

7

8

1

1

3

5

4

4

5

6

10

3

7

5

30

BARON POD

SCIPCOUENNE

source codeThe source code for POD is written using the Ju-lia programming language and can be found athttps://github.com/lanl-ansi/POD.jl

references[1] H. Nagarajan, M. Lu, S. Wang, R. Bent, and K. Sun-

dar, “An Adaptive, Multivariate Partitioning Algo-rithm for Tightening Convex Relaxations of Nonlin-ear Programs,” 2017.

[2] H. Nagarajan, M. Lu, E. Yamangil, and R. Bent, “Tight-ening McCormick Relaxations for Nonlinear Pro-grams via Dynamic Multivariate Partitioning,” in In-ternational Conference on Principles and Practice ofConstraint Programming, 2016.