(mi)nlplib2 - gams · 2011 polip mixed-integerpolynomialprogramming 2014 cblib conicprogramming ......

85
(MI)NLPLib 2 Stefan Vigerske 16th July 2015 ISMP, Pittsburgh

Upload: others

Post on 03-Feb-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

(MI)NLPLib 2

Stefan Vigerske

16th July 2015

ISMP, Pittsburgh

Page 2: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Model instance collectionsCollecting optimization problems has been a popular “hobby” for long time, e.g.,

first release library problem types1985 Netlib Linear Programming1992 MIPLIB Mixed-Integer Programming1993 CUTE Nonlinear Programming1998 SDPLib Semidefinite Programming1999 CSPLib Constraint Satisfaction Programming199x MacMINLP Mixed-Integer Nonlinear Programming2001 GAMS World LP, MIP, NLP, MINLP, SOCP, MPEC2003 COCONUT Nonlinear and Constraint Satisfaction Programming2008 mintOC Mixed-Integer Optimal Control2009 minlp.org MINLP, General Disjunctive Programming2011 POLIP Mixed-Integer Polynomial Programming2014 CBLIB Conic ProgrammingI for solver developers, access to a wide set of interesting problem instances

with different characteristics has always been importantI commercial solver vendors test their solver on thousands of test problems

before releasing a new software versionI the evaluation of algorithmic improvements (w.r.t. robustness and efficiency)

requires well-balanced test sets of significantly many real-world instances 2 / 64

Page 3: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib and GLOBALLib http://www.gamsworld.org

I Initiated in 2001 (as part of GamsWorld/MinlpWorld/GlobalWorld):M. Bussieck, A. Drud, and A. MeerausMINLPLib – A Collection of Test Models for Mixed-Integer Nonlinear ProgrammingINFORMS Journal on Computing 15, 114–119 (2003)

I “white-box” NLPs (GLOBALLib) and MINLPs (MINLPLib)

I frequently used for testing, but also benchmarking

3 / 64

Page 4: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib and GLOBALLib InstancesI scalar GAMS format

Variables x1,x2,b3,b4,b5,objvar;Positive Variables x1,x2;Binary Variables b3,b4,b5;Equations e1,e2,e3,e4,e5,e6;e1.. - 2*x1 - 3*x2 - 1.5*b3 - 2*b4 + 0.5*b5 + objvar =E= 0;e2.. sqr(x1) + b3 =E= 1.25;e3.. x2**1.5 + 1.5*b4 =E= 3;e4.. x1 + b3 =L= 1.6;e5.. 1.333*x2 + b4 =L= 3;e6.. - b3 - b4 + b5 =L= 0;

I varying from small scale (great for debugging!) to large scale real worldinstances (agricultural economics, chemical-, civil-, and electrical engineering,finance, management, OR)

I intentionally including instances from badly formulated models or differentformulations of the same problem

I including solution points for many instancesI solely an instance collection, i.e., consisting of instantiations of models by

specific data sets

4 / 64

Page 5: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib and GLOBALLib InstancesI scalar GAMS format

Variables x1,x2,b3,b4,b5,objvar;Positive Variables x1,x2;Binary Variables b3,b4,b5;Equations e1,e2,e3,e4,e5,e6;e1.. - 2*x1 - 3*x2 - 1.5*b3 - 2*b4 + 0.5*b5 + objvar =E= 0;e2.. sqr(x1) + b3 =E= 1.25;e3.. x2**1.5 + 1.5*b4 =E= 3;e4.. x1 + b3 =L= 1.6;e5.. 1.333*x2 + b4 =L= 3;e6.. - b3 - b4 + b5 =L= 0;

I varying from small scale (great for debugging!) to large scale real worldinstances (agricultural economics, chemical-, civil-, and electrical engineering,finance, management, OR)

I intentionally including instances from badly formulated models or differentformulations of the same problem

I including solution points for many instancesI solely an instance collection, i.e., consisting of instantiations of models by

specific data sets

4 / 64

Page 6: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib and GLOBALLib InstancesI scalar GAMS format

Variables x1,x2,b3,b4,b5,objvar;Positive Variables x1,x2;Binary Variables b3,b4,b5;Equations e1,e2,e3,e4,e5,e6;e1.. - 2*x1 - 3*x2 - 1.5*b3 - 2*b4 + 0.5*b5 + objvar =E= 0;e2.. sqr(x1) + b3 =E= 1.25;e3.. x2**1.5 + 1.5*b4 =E= 3;e4.. x1 + b3 =L= 1.6;e5.. 1.333*x2 + b4 =L= 3;e6.. - b3 - b4 + b5 =L= 0;

I varying from small scale (great for debugging!) to large scale real worldinstances (agricultural economics, chemical-, civil-, and electrical engineering,finance, management, OR)

I intentionally including instances from badly formulated models or differentformulations of the same problem

I including solution points for many instances

I solely an instance collection, i.e., consisting of instantiations of models byspecific data sets

4 / 64

Page 7: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib and GLOBALLib InstancesI scalar GAMS format

Variables x1,x2,b3,b4,b5,objvar;Positive Variables x1,x2;Binary Variables b3,b4,b5;Equations e1,e2,e3,e4,e5,e6;e1.. - 2*x1 - 3*x2 - 1.5*b3 - 2*b4 + 0.5*b5 + objvar =E= 0;e2.. sqr(x1) + b3 =E= 1.25;e3.. x2**1.5 + 1.5*b4 =E= 3;e4.. x1 + b3 =L= 1.6;e5.. 1.333*x2 + b4 =L= 3;e6.. - b3 - b4 + b5 =L= 0;

I varying from small scale (great for debugging!) to large scale real worldinstances (agricultural economics, chemical-, civil-, and electrical engineering,finance, management, OR)

I intentionally including instances from badly formulated models or differentformulations of the same problem

I including solution points for many instancesI solely an instance collection, i.e., consisting of instantiations of models by

specific data sets

4 / 64

Page 8: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib and GLOBALLib HistoryI instances were harvested from existing collections, initially:

I GAMS Model LibraryI MacMINLP (Leyffer)I MINOPT library (Floudas)I Handbook of Test Problems in Local and Global Optimization (Floudas et.al.)

I 2001 – 2009: maintained by Michael BussieckI new instances were addedI new incumbent solutions were addedI in 2009: Michael “volunteered” me as maintainer

2003 2005 2007 2009 2011 20130

100

200

300

400

500

600

700GLOBALLib + MINLPLib - Number of Instances

5 / 64

Page 9: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

MINLPLib 2

Tasks:I Adding new problem instances:

I both convex and nonconvex problemsI (MI)QPs, (MI)QCQPs, and (MI)NLPsI easy solvable, solvable, difficult to solve, but not trivial

I Categorizing instancesI convexityI problem type (quadratic, polynomial, general nonlinear)I function types (powers, exp/log, trigonometric, ...)I solved to global optimality?

I Providing feasible best known solutions

Work in progress, current version publicly available:http://www.gamsworld.org/minlp/minlplib2/html/index.html.

6 / 64

Page 10: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

New NLP and MINLP Instances

2003 2005 2007 2009 2011 2013 20150

200

400

600

800

1000

1200

1400MINLPLib 2 - Number of Instances

GLOBALLib + MINLPLib 1

MINLPLib 2

7 / 64

Page 11: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Sources of newly added instancesHarvesting mainly from

I CMU-IBM open source MINLP project (convex MINLPs)I minlp.orgI POLIP (polynomial MINLPs)

Vecchietti libraryMINOPT Model LibraryGAMS clients

Westerlund

MacMINLP

ANTIGONE test library

BARON bookminlp.org

Bonmin test library

Floudas e.a. handbook

GAMS Model Library

POLIP

other

MINLPLib 2 instance sources (1357 in total)

8 / 64

Page 12: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Instance Formats

Format #instancesGAMS .gms 1363AIMMS .ams 1352 (no Gamma, latest additions missing)AMPL .mod 1337 (no errorf/signpower/Gamma/...)AMPL .nl 1331 (no errorf/signpower/Gamma/..., latest missing)OSIL XML 1342 (no signpower/Gamma/...)CPLEX LP .lp 667 (limited to quadratics)PIP .pip 770 (limited to polynomial)

9 / 64

Page 13: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Problem types

quadratic polynomial signomial general0

200

400

600

800

1000

1200

Num

ber

of

inst

ance

s

Equation Types

GLOBALLib + MINLPLib 1

new in MINLPLib 2

mul di

vsq

rlog

exp

vcpo

wersq

rt sin

powerco

s

cvpo

wer

log1

0

erro

rfab

s

rpow

erm

odmin

signp

ower

cent

ropy

gam

ma

0

100

200

300

400

Num

ber

of

inst

ance

s

Operands in general nonlinear functions

GLOBALLib + MINLPLib 1

new in MINLPLib 2

10 / 64

Page 14: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Sparsity Pattern – Examplesdosemin2d eg_all_s feedtray2 johnall mbtd qapwRadiation Therapy Feed Tray Location Asset Management Quadratic Assigment

(top: Objective Gradient and Jacobian; bottom: Lagrangian Hessian)11 / 64

Page 15: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Sparsity Pattern – Examples (cont.)Jacobian densitymod (Density modification based on single-crystal X-ray diffraction data; 23529 vars, 550 cons.)

Jacobian lop97ic (Rail Line Optimization, MIQCQP)

milinfract (Solving Mixed-Integer Linear Fractional Programming Problems with Dinkelbach’s Algorithm)

Objective Gradient + Jacobian Lagrangian Hessian

12 / 64

Page 16: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

(Non)Convexity Detection for FunctionsAnalyze the Hessian:

I Given twice differentiable function h(x) and variable bounds [x , x̄ ].I Compute the spectrum of the Hessian in one random point and conclude

I convexity/concavity/indefiniteness if h(x) is quadraticI nonconvexity/nonconcavity if h(x) is general nonlinear

Analyze the Algebraic Expression:

f (x) convex⇒ a · f (x)

{convex, a ≥ 0concave, a ≤ 0

f (x), g(x) convex⇒ f (x) + g(x) convexf (x) concave⇒ log(f (x)) concave

f (x) =∏i

xeii , xi ≥ 0⇒ f (x)

convex, ei ≤ 0 ∀iconvex, ∃j : ei ≤ 0 ∀i 6= j ;

∑i ei ≥ 1

concave, ei ≥ 0 ∀i ;∑

i ei ≤ 1

Analyze manually.

13 / 64

Page 17: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

(Non)Convexity Detection for FunctionsAnalyze the Hessian:

I Given twice differentiable function h(x) and variable bounds [x , x̄ ].I Compute the spectrum of the Hessian in one random point and conclude

I convexity/concavity/indefiniteness if h(x) is quadraticI nonconvexity/nonconcavity if h(x) is general nonlinear

Analyze the Algebraic Expression:

f (x) convex⇒ a · f (x)

{convex, a ≥ 0concave, a ≤ 0

f (x), g(x) convex⇒ f (x) + g(x) convexf (x) concave⇒ log(f (x)) concave

f (x) =∏i

xeii , xi ≥ 0⇒ f (x)

convex, ei ≤ 0 ∀iconvex, ∃j : ei ≤ 0 ∀i 6= j ;

∑i ei ≥ 1

concave, ei ≥ 0 ∀i ;∑

i ei ≤ 1

Analyze manually.

13 / 64

Page 18: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

(Non)Convexity Detection for FunctionsAnalyze the Hessian:

I Given twice differentiable function h(x) and variable bounds [x , x̄ ].I Compute the spectrum of the Hessian in one random point and conclude

I convexity/concavity/indefiniteness if h(x) is quadraticI nonconvexity/nonconcavity if h(x) is general nonlinear

Analyze the Algebraic Expression:

f (x) convex⇒ a · f (x)

{convex, a ≥ 0concave, a ≤ 0

f (x), g(x) convex⇒ f (x) + g(x) convexf (x) concave⇒ log(f (x)) concave

f (x) =∏i

xeii , xi ≥ 0⇒ f (x)

convex, ei ≤ 0 ∀iconvex, ∃j : ei ≤ 0 ∀i 6= j ;

∑i ei ≥ 1

concave, ei ≥ 0 ∀i ;∑

i ei ≤ 1

Analyze manually.

13 / 64

Page 19: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

(Non)Convexity in MINLPLibI Numerical analysis of (pointwise) Hessians by LAPACK.I Symbolic analysis of expressions by SCIP.I Mark additional 71 instances (5%) as convex.

convex26%

nonconvex71%

undecided3%

MINLPLib instances convexity

14 / 64

Page 20: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Solution Points

MINLPLib instances traditionally come with known feasible solution points.

For MINLPLib 2, we added

Feasibility checking:I compute maximal (unscaled) violation of constraints, variable bounds, and

discreteness restrictionsI uses GAMS/EXAMINER2

Solution polishing: For a given point,1. project onto variable bounds2. round values for discrete variables to exact integers3. ensure that semicontinuity/semiintegrality and special-ordered-set constraints

are exactly satisfied4. run CONOPT on MINLP with all binary/integer/semi*/SOS variables fixed,

start from updated point, scaling disabled, feasibility tolerance 10−9

15 / 64

Page 21: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Solution Points

MINLPLib instances traditionally come with known feasible solution points.

For MINLPLib 2, we added

Feasibility checking:I compute maximal (unscaled) violation of constraints, variable bounds, and

discreteness restrictionsI uses GAMS/EXAMINER2

Solution polishing: For a given point,1. project onto variable bounds2. round values for discrete variables to exact integers3. ensure that semicontinuity/semiintegrality and special-ordered-set constraints

are exactly satisfied4. run CONOPT on MINLP with all binary/integer/semi*/SOS variables fixed,

start from updated point, scaling disabled, feasibility tolerance 10−9

15 / 64

Page 22: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Solution Points

MINLPLib instances traditionally come with known feasible solution points.

For MINLPLib 2, we added

Feasibility checking:I compute maximal (unscaled) violation of constraints, variable bounds, and

discreteness restrictionsI uses GAMS/EXAMINER2

Solution polishing: For a given point,1. project onto variable bounds2. round values for discrete variables to exact integers3. ensure that semicontinuity/semiintegrality and special-ordered-set constraints

are exactly satisfied4. run CONOPT on MINLP with all binary/integer/semi*/SOS variables fixed,

start from updated point, scaling disabled, feasibility tolerance 10−9

15 / 64

Page 23: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Polished Solution Points

10-15 10-13 10-11 10-9 10-7 10-5 10-3 10-1 101 103 105 107 109

Infeasibility

0

20

40

60

80

100

120

140

160

Num

ber

of

poin

ts

MINLPLib 1 solution points w.r.t. infeasibility

10-1510-1310-1110-9 10-7 10-5 10-3 10-1 101 103 105 107 109

Infeasibility

0

200

400

600

800

1000

1200

Num

ber

of

poin

ts

MINLPLib 2 solution points w.r.t. infeasibility

Available in two formats:

GAMS Data Exchange (GDX) ASCII (.sol)

x1 1.11803398874989001754x2 1.31037069710444997739b4 1.00000000000000000000b5 1.00000000000000000000objvar 7.66718006881313041134

16 / 64

Page 24: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Polished Solution Points

10-15 10-13 10-11 10-9 10-7 10-5 10-3 10-1 101 103 105 107 109

Infeasibility

0

20

40

60

80

100

120

140

160

Num

ber

of

poin

ts

MINLPLib 1 solution points w.r.t. infeasibility

10-1510-1310-1110-9 10-7 10-5 10-3 10-1 101 103 105 107 109

Infeasibility

0

200

400

600

800

1000

1200

Num

ber

of

poin

ts

MINLPLib 2 solution points w.r.t. infeasibility

Available in two formats:

GAMS Data Exchange (GDX) ASCII (.sol)

x1 1.11803398874989001754x2 1.31037069710444997739b4 1.00000000000000000000b5 1.00000000000000000000objvar 7.66718006881313041134

16 / 64

Page 25: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Dual Bounds

dual bound =

{lower bound on optimal value, if minimizationupper bound on optimal value, if maximization

Collected dual bounds fromI solvers for general (MI)NLP

(ANTIGONE, BARON, Couenne, Lindo, SCIP)I solvers for convex MINLP on proven convex MINLPs

(AlphaECP, Bonmin BB, Bonmin Hyb)

But: No way to verify correctness of bound!

Conservative approach: Only trust a solvers dual bound claim if it has beenverified by at least 2 other solvers.

17 / 64

Page 26: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Dual Bounds

dual bound =

{lower bound on optimal value, if minimizationupper bound on optimal value, if maximization

Collected dual bounds fromI solvers for general (MI)NLP

(ANTIGONE, BARON, Couenne, Lindo, SCIP)I solvers for convex MINLP on proven convex MINLPs

(AlphaECP, Bonmin BB, Bonmin Hyb)

But: No way to verify correctness of bound!

Conservative approach: Only trust a solvers dual bound claim if it has beenverified by at least 2 other solvers.

17 / 64

Page 27: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Dual Bounds

dual bound =

{lower bound on optimal value, if minimizationupper bound on optimal value, if maximization

Collected dual bounds fromI solvers for general (MI)NLP

(ANTIGONE, BARON, Couenne, Lindo, SCIP)I solvers for convex MINLP on proven convex MINLPs

(AlphaECP, Bonmin BB, Bonmin Hyb)But: No way to verify correctness of bound!

Conservative approach: Only trust a solvers dual bound claim if it has beenverified by at least 2 other solvers.

17 / 64

Page 28: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Dual Bounds

dual bound =

{lower bound on optimal value, if minimizationupper bound on optimal value, if maximization

Collected dual bounds fromI solvers for general (MI)NLP

(ANTIGONE, BARON, Couenne, Lindo, SCIP)I solvers for convex MINLP on proven convex MINLPs

(AlphaECP, Bonmin BB, Bonmin Hyb)But: No way to verify correctness of bound!

Conservative approach: Only trust a solvers dual bound claim if it has beenverified by at least 2 other solvers.

17 / 64

Page 29: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

“Open” instancesFeasible solution points ⊕ trusted dual bounds ⇒ trusted gap

0.0 0.2 0.4 0.6 0.8 1.0Trusted Gap

0

200

400

600

800

1000N

um

ber

of

inst

ance

s

MINLPLib histogram w.r.t. trusted gap

GLOBALLib + MINLPLib 1

new in MINLPLib 2

0.0 , ≤ 10−9 1.0 , ≥ 1.0

18 / 64

Page 30: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Query the MINLPLib

Simple script to select instances by specific criteria, e.g.:I all large convex instances, show # var. and # cons.:

$ ./query.py "(nvars > 4242) & (convex == True)" -c nvars -c nconsnvars ncons

jbearing100 5304 0squfl030-150 4530 4650watercontamination0202 106711 107209watercontamination0303 107222 108217

I all quadratic instances:./query.py "npolynomfunc == 0 & nsignomfunc == 0 & ngennlfunc == 0"

I all instances with trigonometric functions:./query.py "(opsin == True) or (opcos == True)"

I all separable instances, sorted by problem type:./query.py "nlaghessiannz == nlaghessiandiagnz" -s probtype -c probtype

I all unsolved instances (w.r.t. “trusted” dual bounds), zipped up:./query.py "gap > 0.1" -c gap -z open.zip

19 / 64

Page 31: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

What to do with all these instances?

General Purpose Global Solvers Benchmark?date GAMS ANTIGONE BARON COUENNE LINDO SCIP

07/15 24.5α 1.1 15.6.5 0.5 9.0.1983.157 3.2.0

. . .

20 / 64

Page 32: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

What to do with all these instances?

General Purpose Global Solvers Benchmark?date GAMS ANTIGONE BARON COUENNE LINDO SCIP

07/15 24.5α 1.1 15.6.5 0.5 9.0.1983.157 3.2.0

. . .

20 / 64

Page 33: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Today: Go Columnwisedate GAMS ANTIGONE BARON COUENNE LINDO SCIP

08/11 23.7.3 – 9.3.1 0.3 6.1.1.588 –04/12 23.8.2 – 10.2.0 0.4 7.0.1.421 2.1.111/12 23.9.5 – 11.5.2 0.4 7.0.1.497 2.1.202/13 24.0.2 – 11.9.1 0.4 7.0.1.497 3.007/13 24.1.3 1.1 12.3.3 0.4 8.0.1283.385 3.005/14 24.2.3 1.1 12.7.7 0.4 8.0.1694.498 3.009/14 24.3.3 1.1 14.0.3 0.4 8.0.1694.550 3.106/15 24.4.6 1.1 14.4.0 0.4 9.0.1983.157 3.107/15 24.5α 1.1 15.6.5 0.5 9.0.1983.157 3.2.0

I ANTIGONE by R. Misener (Imperial College) and Ch. Floudas (Texas A&M)I BARON by N. Sahinidis (CMU), M. Tawarmalani (Purdue), et.al.I Couenne by P. Belotti (now FICO), et.al.; open-source (COIN-OR)I Lindo API by Lindo Systems Inc.I SCIP by Zuse Institute Berlin, TU Darmstadt, FAU Erlangen; free for academic use

Quantify Improvements of global MINLP solvers over the last 4 years!

21 / 64

Page 34: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications× dominance of certain models, e.g.,

I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.

22 / 64

Page 35: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications× dominance of certain models, e.g.,

I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.

22 / 64

Page 36: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications

× dominance of certain models, e.g.,I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.

22 / 64

Page 37: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications× dominance of certain models, e.g.,

I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.

22 / 64

Page 38: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications× dominance of certain models, e.g.,

I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.

22 / 64

Page 39: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications× dominance of certain models, e.g.,

I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.

With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.

22 / 64

Page 40: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Which instances to run?Does the current MINLPLib 2 with its 1363 instances qualify as a good test set?

X large number of instances⇒ 40 solver versions × 1363 instances = 54520 runs (!)

X wide variety of applications× dominance of certain models, e.g.,

I 32 block layout design problemsI 60 small investor portfolio optimization instancesI ...

× many trivial, some hopeless, some numerically dubious instances

Thus, need to select a reasonable subset of (e.g., 87) instances.With 15 co-authors and 8 months of time, this would be no problem.

But with 3 weeks until ISMP: Apply the P.I.T.T. heuristic.22 / 64

Page 41: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Prune Instances by Tractability and Triviality Heuristic

1. Remove intractable instancesI consider only the 881 instances that are

marked as solved in MINLPLib 2

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

0.0 0.2 0.4 0.6 0.8 1.0Trusted Gap

0

200

400

600

800

1000

Num

ber

of

inst

ance

s

MINLPLib histogram w.r.t. trusted gap

GLOBALLib + MINLPLib 1

new in MINLPLib 2

23 / 64

Page 42: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Prune Instances by Tractability and Triviality Heuristic2. For each solver separately:

I Remove instances that are solved within 60 seconds by the oldest solverversion (e.g., as in GAMS 23.7).

I Remove instances that the solver cannot handle (due to trigonometricfunctions, SOS, . . .).

In case of SCIP:

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

24 / 64

Page 43: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Prune Instances by Tractability and Triviality HeuristicFor SCIP, this leaves 312 instances:

alkylationarki0003arki0005arki0006arki0019arki0024autocorr_bern20-10autocorr_bern20-15autocorr_bern25-06autocorr_bern25-13autocorr_bern30-04autocorr_bern35-04batch0812_ncbatchs201210mbayes2_50blend480blend531blend718blend852carton7casctankscecil_13chemclay0203hclay0204hclay0205hclay0303h

clay0304hclay0305hcrudeoil_lee2_10crudeoil_lee3_07crudeoil_lee3_08crudeoil_lee3_09crudeoil_lee3_10crudeoil_li06csched1aedgecross10-060edgecross10-070edgecross10-080edgecross14-039edgecross14-058edgecross14-078edgecross14-176edgecross20-040edgecross22-048emfl050_5_5emfl100_5_5ethanolhethanolmex1252aex14_1_1ex14_1_7ex4_1_5ex4_1_6

ex6_1_1ex6_1_3ex6_2_12ex6_2_14ex6_2_8ex6_2_9ex7_2_4ex8_1_7ex8_2_1bex8_2_4bex8_4_1ex8_4_3ex8_4_4ex8_4_5ex8_4_8_bndfilterfin2bbflay05hfo7fo8fo8_ar25_1fo8_ar2_1fo9fo9_ar25_1fo9_ar2_1fo9_ar3_1fo9_ar4_1

fo9_ar5_1gasnetgenpooling_meyer04ghg_1vehghg_3vehglider100graphpart_2g-0066-0066graphpart_2g-0077-0077graphpart_2g-0088-0088graphpart_2g-0099-9211graphpart_2pm-0066-0066graphpart_2pm-0077-0777graphpart_2pm-0088-0888graphpart_2pm-0099-0999graphpart_3g-0334-0334graphpart_3g-0344-0344graphpart_3g-0444-0444graphpart_3pm-0244-0244graphpart_3pm-0333-0333graphpart_3pm-0334-0334graphpart_3pm-0344-0344graphpart_3pm-0444-0444graphpart_clique-30graphpart_clique-40gsg_0001hdaheatexch_trigen

housejbearing25jbearing75johnallkall_circles_c6akall_circles_c6bkall_circles_c7akall_circles_c8akall_circlespolygons_c1p12kall_circlespolygons_c1p13kall_circlesrectangles_c1r12kall_circlesrectangles_c1r13kall_congruentcircles_c71kall_diffcircles_10kall_diffcircles_5bkall_diffcircles_7kall_diffcircles_8kall_diffcircles_9launchlop97icxmathopt5_7mathopt5_8mhw4dmilinfractminlphixminsurf100...

25 / 64

Page 44: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Prune Instances by Tractability and Triviality HeuristicFor SCIP, this leaves 312 instances – obvious dominance by some models:

alkylationarki0003arki0005arki0006arki0019arki0024autocorr_bern20-10autocorr_bern20-15autocorr_bern25-06autocorr_bern25-13autocorr_bern30-04autocorr_bern35-04batch0812_ncbatchs201210mbayes2_50blend480blend531blend718blend852carton7casctankscecil_13chemclay0203hclay0204hclay0205hclay0303h

clay0304hclay0305hcrudeoil_lee2_10crudeoil_lee3_07crudeoil_lee3_08crudeoil_lee3_09crudeoil_lee3_10crudeoil_li06csched1aedgecross10-060edgecross10-070edgecross10-080edgecross14-039edgecross14-058edgecross14-078edgecross14-176edgecross20-040edgecross22-048emfl050_5_5emfl100_5_5ethanolhethanolmex1252aex14_1_1ex14_1_7ex4_1_5ex4_1_6

ex6_1_1ex6_1_3ex6_2_12ex6_2_14ex6_2_8ex6_2_9ex7_2_4ex8_1_7ex8_2_1bex8_2_4bex8_4_1ex8_4_3ex8_4_4ex8_4_5ex8_4_8_bndfilterfin2bbflay05hfo7fo8fo8_ar25_1fo8_ar2_1fo9fo9_ar25_1fo9_ar2_1fo9_ar3_1fo9_ar4_1

fo9_ar5_1gasnetgenpooling_meyer04ghg_1vehghg_3vehglider100graphpart_2g-0066-0066graphpart_2g-0077-0077graphpart_2g-0088-0088graphpart_2g-0099-9211graphpart_2pm-0066-0066graphpart_2pm-0077-0777graphpart_2pm-0088-0888graphpart_2pm-0099-0999graphpart_3g-0334-0334graphpart_3g-0344-0344graphpart_3g-0444-0444graphpart_3pm-0244-0244graphpart_3pm-0333-0333graphpart_3pm-0334-0334graphpart_3pm-0344-0344graphpart_3pm-0444-0444graphpart_clique-30graphpart_clique-40gsg_0001hdaheatexch_trigen

housejbearing25jbearing75johnallkall_circles_c6akall_circles_c6bkall_circles_c7akall_circles_c8akall_circlespolygons_c1p12kall_circlespolygons_c1p13kall_circlesrectangles_c1r12kall_circlesrectangles_c1r13kall_congruentcircles_c71kall_diffcircles_10kall_diffcircles_5bkall_diffcircles_7kall_diffcircles_8kall_diffcircles_9launchlop97icxmathopt5_7mathopt5_8mhw4dmilinfractminlphixminsurf100...

25 / 64

Page 45: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

P.I.T.T.E.D. Heuristic: P.I.T.T. with Eased Dominance3. Ensure uniqueness of 6-characters-prefix of instances names.

alkylationarki0003arki0005arki0006arki0019arki0024autocorr_bern20-10autocorr_bern20-15autocorr_bern25-06autocorr_bern25-13autocorr_bern30-04autocorr_bern35-04batch0812_ncbatchs201210mbayes2_50blend480blend531blend718blend852carton7casctankscecil_13chemclay0203hclay0204hclay0205hclay0303h

clay0304hclay0305hcrudeoil_lee2_10crudeoil_lee3_07crudeoil_lee3_08crudeoil_lee3_09crudeoil_lee3_10crudeoil_li06csched1aedgecross10-060edgecross10-070edgecross10-080edgecross14-039edgecross14-058edgecross14-078edgecross14-176edgecross20-040edgecross22-048emfl050_5_5emfl100_5_5ethanolhethanolmex1252aex14_1_1ex14_1_7ex4_1_5ex4_1_6

ex6_1_1ex6_1_3ex6_2_12ex6_2_14ex6_2_8ex6_2_9ex7_2_4ex8_1_7ex8_2_1bex8_2_4bex8_4_1ex8_4_3ex8_4_4ex8_4_5ex8_4_8_bndfilterfin2bbflay05hfo7fo8fo8_ar25_1fo8_ar2_1fo9fo9_ar25_1fo9_ar2_1fo9_ar3_1fo9_ar4_1

fo9_ar5_1gasnetgenpooling_meyer04ghg_1vehghg_3vehglider100graphpart_2g-0066-0066graphpart_2g-0077-0077graphpart_2g-0088-0088graphpart_2g-0099-9211graphpart_2pm-0066-0066graphpart_2pm-0077-0777graphpart_2pm-0088-0888graphpart_2pm-0099-0999graphpart_3g-0334-0334graphpart_3g-0344-0344graphpart_3g-0444-0444graphpart_3pm-0244-0244graphpart_3pm-0333-0333graphpart_3pm-0334-0334graphpart_3pm-0344-0344graphpart_3pm-0444-0444graphpart_clique-30graphpart_clique-40gsg_0001hdaheatexch_trigen

housejbearing25jbearing75johnallkall_circles_c6akall_circles_c6bkall_circles_c7akall_circles_c8akall_circlespolygons_c1p12kall_circlespolygons_c1p13kall_circlesrectangles_c1r12kall_circlesrectangles_c1r13kall_congruentcircles_c71kall_diffcircles_10kall_diffcircles_5bkall_diffcircles_7kall_diffcircles_8kall_diffcircles_9launchlop97icxmathopt5_7mathopt5_8mhw4dmilinfractminlphixminsurf100...

26 / 64

Page 46: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

P.I.T.T.E.D. Heuristic: P.I.T.T. with Eased Dominance3. Ensure uniqueness of 6-characters-prefix of instances names.

alkylationarki0003arki0005arki0006arki0019arki0024autocorr_bern20-10autocorr_bern20-15autocorr_bern25-06autocorr_bern25-13autocorr_bern30-04autocorr_bern35-04batch0812_ncbatchs201210mbayes2_50blend480blend531blend718blend852carton7casctankscecil_13chemclay0203hclay0204hclay0205hclay0303h

clay0304hclay0305hcrudeoil_lee2_10crudeoil_lee3_07crudeoil_lee3_08crudeoil_lee3_09crudeoil_lee3_10crudeoil_li06csched1aedgecross10-060edgecross10-070edgecross10-080edgecross14-039edgecross14-058edgecross14-078edgecross14-176edgecross20-040edgecross22-048emfl050_5_5emfl100_5_5ethanolhethanolmex1252aex14_1_1ex14_1_7ex4_1_5ex4_1_6

ex6_1_1ex6_1_3ex6_2_12ex6_2_14ex6_2_8ex6_2_9ex7_2_4ex8_1_7ex8_2_1bex8_2_4bex8_4_1ex8_4_3ex8_4_4ex8_4_5ex8_4_8_bndfilterfin2bbflay05hfo7fo8fo8_ar25_1fo8_ar2_1fo9fo9_ar25_1fo9_ar2_1fo9_ar3_1fo9_ar4_1

fo9_ar5_1gasnetgenpooling_meyer04ghg_1vehghg_3vehglider100graphpart_2g-0066-0066graphpart_2g-0077-0077graphpart_2g-0088-0088graphpart_2g-0099-9211graphpart_2pm-0066-0066graphpart_2pm-0077-0777graphpart_2pm-0088-0888graphpart_2pm-0099-0999graphpart_3g-0334-0334graphpart_3g-0344-0344graphpart_3g-0444-0444graphpart_3pm-0244-0244graphpart_3pm-0333-0333graphpart_3pm-0334-0334graphpart_3pm-0344-0344graphpart_3pm-0444-0444graphpart_clique-30graphpart_clique-40gsg_0001hdaheatexch_trigen

housejbearing25jbearing75johnallkall_circles_c6akall_circles_c6bkall_circles_c7akall_circles_c8akall_circlespolygons_c1p12kall_circlespolygons_c1p13kall_circlesrectangles_c1r12kall_circlesrectangles_c1r13kall_congruentcircles_c71kall_diffcircles_10kall_diffcircles_5bkall_diffcircles_7kall_diffcircles_8kall_diffcircles_9launchlop97icxmathopt5_7mathopt5_8mhw4dmilinfractminlphixminsurf100...

26 / 64

Page 47: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

P.I.T.T.E.D. SCIP testsetIn summary:1. Keep only instances that are marked as solved in MINLPLib 2.2. Keep only instances that take ≥ 60s with oldest version of solver and that can

be handled by solver.3. Reduce instances with similar names.

For SCIP, this reduces from 1363 to 881 to 123 instances:

alkylationarki0003autocorr_bern20-10batch0812_ncbatchs201210mbayes2_50blend480blend531blend718blend852carton7casctankscecil_13chemclay0203hclay0303hcrudeoil_lee2_10csched1aedgecross10-060

emfl050_5_5emfl100_5_5ethanolhex1252aex14_1_1ex4_1_5ex6_1_1ex6_2_12ex7_2_4ex8_1_7ex8_2_1bex8_4_1filterfin2bbflay05hfo7fo8fo8_ar25_1fo9

fo9_ar25_1gasnetgenpooling_meyer04ghg_1vehghg_3vehglider100graphpart_2g-0066-0066gsg_0001hdaheatexch_trigenhousejbearing25johnallkall_circles_c6akall_diffcircles_10launchlop97icxmathopt5_7mhw4d

milinfractminlphixminsurf100multiplants_mtg1ano7_ar3_1nous1nvs09nvs22o7o7_2o7_ar25_1o7_ar3_1o7_ar4_1o7_ar5_1o8_ar4_1o9_ar4_1oiloil2parallel

pinene50pointpack08pooling_epa1prob07processprocsynprologqp3routingdelay_bigmrsyn0805m02hsepasequ_conventsfacloc2_2_80slay07hslay09hslay10hsmallinvDAXr1b020-022sporttournament14squfl010-025sssd08-04

sssd12-05sssd15-04sssd16-07sssd18-06sssd20-04sssd25-04st_e35stockcyclesupplychainp1_020306syn10m03hsyn15m02hsyn20m02hsyn30hsyn30m02hsyn40hsyn40m02h

tln5tln6tln7torsion100tspn05wastewastewater05m1water4watercontamination0202waternd1watertreatnd_flowweapons

27 / 64

Page 48: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

PITT test set for each solver

Removed easy and unsolvable instances:

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

ANTIGONE

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

BARON

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

COUENNE

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

LINDO

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

SCIP

28 / 64

Page 49: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

PITTED test set for each solver

Removed easy and unsolvable instances, then filter by name:

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

ANTIGONE

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

BARON

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

COUENNE

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

LINDO

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

SCIP

29 / 64

Page 50: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Run jobs

date GAMS ANTIGONE BARON COUENNE LINDO SCIP

08/11 23.7.3 – 9.3.1 0.3 6.1.1.588 –04/12 23.8.2 – 10.2.0 0.4 7.0.1.421 2.1.111/12 23.9.5 – 11.5.2 0.4 7.0.1.497 2.1.202/13 24.0.2 – 11.9.1 0.4 7.0.1.497 3.007/13 24.1.3 1.1 12.3.3 0.4 8.0.1283.385 3.005/14 24.2.3 1.1 12.7.7 0.4 8.0.1694.498 3.009/14 24.3.3 1.1 14.0.3 0.4 8.0.1694.550 3.106/15 24.4.6 1.1 14.4.0 0.4 9.0.1983.157 3.107/15 24.5α 1.1 15.6.5 0.5 9.0.1983.157 3.2.0

for GAMS in $GAMSS ; dofor SOLVER in $SOLVERS($GAMS) ; dofor INSTANCE in $TESTSET($SOLVER) ; dosbatch --exclusive --time=0:1800 $GAMS $INSTANCE SOLVER=$SOLVER

donedone

done

Hardware: Dell PowerEdge M1000e, 48GB RAM, Intel Xeon [email protected]

30 / 64

Page 51: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

BARON: FailsA solver failed, if it

I crashed, orI reported an infeasible point as feasible (tolerance: 10−4), orI reported a suboptimal solution as optimal (tolerance: 10−4)

9.3 10.2 11.5 11.9 12.3 12.7 14.0 14.4 15.60

20

40

60

80

100

4.3 4.8 3.2 4.3 5.31 1.6 1.1 1

BARON version

%failedinstances(out

of188)

same as previous versionadditional to previous version

31 / 64

Page 52: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

BARON: SolvedSolved: solver did not fail and reports a relative optimality gap ≤ 10−4

9.3 10.2 11.5 11.9 12.3 12.7 14.0 14.4 15.60

20

40

60

80

100

45.2 47.9

60.1 62.867.1 68.6

79.283.5 84.6

BARON version

%solved

instances(out

of188)

same as previous versionadditional to previous version

only in previous version

32 / 64

Page 53: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

BARON: Solved – What happened?

9.3 10.2 11.5 11.9 12.3 12.7 14.0 14.4 15.60

20

40

60

80

100

45.2 47.9

60.1 62.867.1 68.6

79.283.5 84.6

BARON version

%solved

instances(out

of18

8)

From the release notes:11.0: “This version comes with a wealth of new branching, relaxation, convexity

exploitation, local search, and range reduction techniques.”11.5: “Improvements in local search” (dive-and-round heuristic for MINLPs,

automatically select and switch back and forth between NLP solvers)12.3: “New relaxations for certain types of quadratic problems”, “Improved integer

presolve”, “Incorporation of convex envelopes for certain low-dimensionalfunctions”

14.0: “Significant advances in the handling of integer programs.” (integer cuttingplanes, calls to MIP solvers, hybrid LP/MIP/NLP relaxations)

33 / 64

Page 54: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

BARON: Found optimal solution

9.3 10.2 11.5 11.9 12.3 12.7 14.0 14.4 15.60

20

40

60

80

100

66 63.868.6 67

71.376

87.893.1 93.1

BARON version

%foun

dop

timal

solutio

n(out

of188)

same as previous versionadditional to previous version

only in previous version

34 / 64

Page 55: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

BARON: Solving time on instances that never failed (163)

9.3 10.2 11.5 11.9 12.3 12.7 14.0 14.4 15.60

5

10

15

20

25nan

1.56

1.43

1.481.18

0.74

2.02

2.12 0.77

BARON version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

Overall speedup: 9.0012.7: “Automatic setting of many options based on problem characteristics and learningalgorithms.“

35 / 64

Page 56: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

BARON: Solving time on instances solved by all vers. (69)

9.3 10.2 11.5 11.9 12.3 12.7 14.0 14.4 15.60

0.2

0.4

0.6

0.8

nan

1.461.06 1.00

1.131.20

1.25

1.58 0.88

BARON version

meansolvingtim

e(s)

mean time, speedup

0510

20

50

75

100

100×

Wilcoxon

p-value

wilcoxon p

Overall speedup: 3.6736 / 64

Page 57: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

ANTIGONE: Fails

1.1 1.1 1.1 1.1 1.10

20

40

60

80

100

2.6 2.6 2.6 6.3 6.3

ANTIGONE version

%failedinstances(out

of189)

same as previous versionadditional to previous version

37 / 64

Page 58: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

ANTIGONE: Solved

1.1 1.1 1.1 1.1 1.10

20

40

60

80

100

61.9 62.4 62.4 59.3 59.3

ANTIGONE version

%solved

instances(out

of189)

same as previous versionadditional to previous version

only in previous version

38 / 64

Page 59: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

ANTIGONE: Found optimal solution

1.1 1.1 1.1 1.1 1.10

20

40

60

80

100

83.6 85.2 84.680.4 80.4

ANTIGONE version

%foun

dop

timal

solutio

n(out

of189)

same as previous versionadditional to previous version

only in previous version

39 / 64

Page 60: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

ANTIGONE: Solving time on instances that never failed (177)

1.1 1.1 1.1 1.1 1.10

2

4

6

8

10

12

nan

1.18 1.00 1.05 1.00

ANTIGONE version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

40 / 64

Page 61: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

ANTIGONE: Solving time on instances solved by all (110)

1.1 1.1 1.1 1.1 1.10

0.5

1

1.5

2

nan

1.19 1.03 0.99 1.00

ANTIGONE version

meansolvingtim

e(s)

mean time, speedup

0510

20

50

75

100

100×

Wilcoxon

p-value

wilcoxon p

41 / 64

Page 62: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Fails

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

20

40

60

80

100

16.9

37.1

20.9 22.6 20.1 20.1 19.3 17.7 14.6

COUENNE version

%failedinstances(out

of124)

same as previous versionadditional to previous version

only in previous version

42 / 64

Page 63: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Solved

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

20

40

60

80

100

2921.8

27.5 25 25 25.8 26.6 26.634.7

COUENNE version

%solved

instances(out

of124)

same as previous versionadditional to previous version

only in previous version

43 / 64

Page 64: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Found optimal solution

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

20

40

60

80

100

46

35.5

45.2 43.5 42.7 40.3 41.9 41.9 43.6

COUENNE version

%foun

dop

timal

solutio

n(out

of124)

same as previous versionadditional to previous version

only in previous version

44 / 64

Page 65: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Solving time on instances that never failed (65)

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

200

400

600

800nan

1.25 0.98 1.000.94 1.03 1.02 1.00

1.11

COUENNE version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

Overall speedup: 1.3545 / 64

Page 66: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Solving time on instances that never failed (65)[Couenne] Couenne stable release0.4Pietro Belotti pbelott at clemson.eduMon Aug 8 05:13:15 EDT 2011

Next message: [Couenne] stable/0.4 does not compileMessages sorted by: [ date ] [ thread ] [ subject ] [ author ]

Dear Couenne users,

this is to announce the 0.4 stable version of Couenne. There are a number of additions and improvements, including:

1) a Feasibility Pump heuristic for non-convex MINLP, developed with Timo Berthold at the ZIB institute.

2) Orbital Branching for MINLP, developed with Jim Ostrowski and Leo Liberti.

3) Fixed Point Bound tightening, a bound reduction procedure developed with Sonia Cafieri, Jon Lee, and Leo Liberti.

4) "semi-auxiliaries", i.e., auxiliary variables defined as y >= f(x) or y <= f(x) instead of just y = f(x). The purpose is to save on the number of auxiliaries generated and hence on the size of the LP relaxation.

5) "Two-Implied bound tightening", a new bound reduction procedure described in http://www.optimization-online.org/DB_FILE/2011/02/2931.pdf

6) various bug fixes.

Release 0.4.0 is a snapshot of the new stable version. The new features will soon be documented in Couenne's user manual, available at http://www.coin-or.org/Couenne/couenne-user-manual.pdf

Happy MINLPing,Pietro

--Pietro BelottiDept. of Mathematical SciencesClemson Universityemail: pbelott at clemson.eduphone: 864-656-6765web: myweb.clemson.edu/~pbelott

Next message: [Couenne] stable/0.4 does not compileMessages sorted by: [ date ] [ thread ] [ subject ] [ author ]

More information about the Couenne mailing list

[Couenne] Couenne stable release 0.4 http://list.coin-or.org/pipermail/couenne/2011-A...

1 of 1 07/14/2015 06:00 AM

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

200

400

600

800nan

1.25 0.98 1.000.94 1.03 1.02 1.00

1.11

COUENNE version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

1. Feasibility Pump

feasibility_pump no

2. Orbital Branching

orbital_branching no

3. Fixed Point BT

fixpoint_bt 0

4. “semi-auxiliaries”

use_semiaux yes

5. Two-Implied BT

two_implied_bt 0

6. various bug fixes46 / 64

Page 67: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Solving time on instances that never failed (65)[Couenne] Couenne stable release0.4Pietro Belotti pbelott at clemson.eduMon Aug 8 05:13:15 EDT 2011

Next message: [Couenne] stable/0.4 does not compileMessages sorted by: [ date ] [ thread ] [ subject ] [ author ]

Dear Couenne users,

this is to announce the 0.4 stable version of Couenne. There are a number of additions and improvements, including:

1) a Feasibility Pump heuristic for non-convex MINLP, developed with Timo Berthold at the ZIB institute.

2) Orbital Branching for MINLP, developed with Jim Ostrowski and Leo Liberti.

3) Fixed Point Bound tightening, a bound reduction procedure developed with Sonia Cafieri, Jon Lee, and Leo Liberti.

4) "semi-auxiliaries", i.e., auxiliary variables defined as y >= f(x) or y <= f(x) instead of just y = f(x). The purpose is to save on the number of auxiliaries generated and hence on the size of the LP relaxation.

5) "Two-Implied bound tightening", a new bound reduction procedure described in http://www.optimization-online.org/DB_FILE/2011/02/2931.pdf

6) various bug fixes.

Release 0.4.0 is a snapshot of the new stable version. The new features will soon be documented in Couenne's user manual, available at http://www.coin-or.org/Couenne/couenne-user-manual.pdf

Happy MINLPing,Pietro

--Pietro BelottiDept. of Mathematical SciencesClemson Universityemail: pbelott at clemson.eduphone: 864-656-6765web: myweb.clemson.edu/~pbelott

Next message: [Couenne] stable/0.4 does not compileMessages sorted by: [ date ] [ thread ] [ subject ] [ author ]

More information about the Couenne mailing list

[Couenne] Couenne stable release 0.4 http://list.coin-or.org/pipermail/couenne/2011-A...

1 of 1 07/14/2015 06:00 AM

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

200

400

600

800nan

1.25 0.98 1.000.94 1.03 1.02 1.00

1.11

COUENNE version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

1. Feasibility Pumpfeasibility_pump no

2. Orbital Branchingorbital_branching no

3. Fixed Point BTfixpoint_bt 0

4. “semi-auxiliaries”use_semiaux yes

5. Two-Implied BTtwo_implied_bt 0

6. various bug fixes46 / 64

Page 68: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

COUENNE: Solving time on instances solved by all (16)

0.3 0.4 0.4 0.4 0.4 0.4 0.4 0.4 0.50

20

40

60

80

100

120

nan

2.100.91 1.00

0.871.14

1.09 1.02 1.04

COUENNE version

meansolvingtim

e(s)

mean time, speedup

0510

20

50

75

100

100×

Wilcoxon

p-value

wilcoxon p

Overall speedup: 2.1647 / 64

Page 69: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

LINDO: Fails

6.1 7.0 7.0 7.0 8.0 8.0 8.0 9.0 9.00

20

40

60

80

100

5.514.8

24.2 23.4

6.2 8.6 8.612.4 12.5

LINDO version

%failedinstances(out

of128)

same as previous versionadditional to previous version

only in previous version

48 / 64

Page 70: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

LINDO: Solved

6.1 7.0 7.0 7.0 8.0 8.0 8.0 9.0 9.00

20

40

60

80

100

39.135.2 34.4 32.8

48.4 48.5 46.943 43

LINDO version

%solved

instances(out

of128)

same as previous versionadditional to previous version

only in previous version

LINDO 8.0: improvements in primal heuristics for MIP (feas. pump) andnonconvex NLP (multistart)

49 / 64

Page 71: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

LINDO: Found optimal solution

6.1 7.0 7.0 7.0 8.0 8.0 8.0 9.0 9.00

20

40

60

80

100

59.453.1

47.6 46.1

64.8 63.3 66.462.5 62.5

LINDO version

%foun

dop

timal

solutio

n(out

of128)

same as previous versionadditional to previous version

only in previous version

50 / 64

Page 72: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

LINDO: Solving time on instances that never failed (72)

6.1 7.0 7.0 7.0 8.0 8.0 8.0 9.0 9.00

200

400

600

nan

2.011.10 1.04

1.851.32 1.06 0.93 1.00

LINDO version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

Overall speedup: 5.4851 / 64

Page 73: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

LINDO: Solving time on instances solved by all vers. (16)

6.1 7.0 7.0 7.0 8.0 8.0 8.0 9.0 9.00

50

100

150

200nan

1.57 1.06 0.98

2.370.80 0.91 1.07 1.00

LINDO version

meansolvingtim

e(s)

mean time, speedup

0510

20

50

75

100

100×

Wilcoxon

p-value

wilcoxon p

Overall speedup: 3.0252 / 64

Page 74: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

SCIP: Fails

2.1 2.1 3.0 3.0 3.0 3.1 3.1 3.20

20

40

60

80

100

139 10.5 8.9 8.1

1.6 1.6 1.6

SCIP version

%failedinstances(out

of123)

same as previous versionadditional to previous version

only in previous version

53 / 64

Page 75: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

SCIP: Solved

2.1 2.1 3.0 3.0 3.0 3.1 3.1 3.20

20

40

60

80

100

32.5 34.2

44.7 48 45.5

55.3 52 54.5

SCIP version

%solved

instances(out

of123)

same as previous versionadditional to previous version

only in previous version

54 / 64

Page 76: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

SCIP: Found optimal solution

2.1 2.1 3.0 3.0 3.0 3.1 3.1 3.20

20

40

60

80

100

61.8 60.265.1 66.6 68.3

75.6 73.277.2

SCIP version

%foun

dop

timal

solutio

n(out

of123)

same as previous versionadditional to previous version

only in previous version

55 / 64

Page 77: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

SCIP: Solving time on instances that never failed (96)

2.1 2.1 3.0 3.0 3.0 3.1 3.1 3.20

200

400

600

nan 1.03

2.53 0.97 1.01

1.67 0.901.17

SCIP version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

Overall speedup: 4.49

56 / 64

Page 78: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

SCIP: Solving time on instances solved by all vers. (31)

2.1 2.1 3.0 3.0 3.0 3.1 3.1 3.20

50

100

150

200

nan1.10

2.780.87 0.99 1.07 0.92 0.93

SCIP version

meansolvingtim

e(s)

mean time, speedup

0510

20

50

75

100

100×

Wilcoxon

p-value

wilcoxon p

Overall speedup: 2.4257 / 64

Page 79: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

“Virtual Best” SolverI common subset of instancesI for each instance and GAMS version, pick best results among all solvers

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

ANTIGONE

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

BARON

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

COUENNE

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

LINDO

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

SCIP

100 101 102 103

100

101

102

103

104

Number of Discrete Variables (+1)

Num

berof

Non

linearNon

zerosin

Jacobian

Virtual Best

58 / 64

Page 80: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Virtual Best: Fails

23.7 23.8 23.9 24.0 24.1 24.2 24.3 24.4 24.50

5

10

15

20

1.40 0 0 0 0 0 0 0

GAMS version

%failedinstances(out

of71)

same as previous versionadditional to previous version

59 / 64

Page 81: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Virtual Best: Solved

23.7 23.8 23.9 24.0 24.1 24.2 24.3 24.4 24.50

20

40

60

80

100

GAMS version

%solved

instances(out

of71)

virt.best ANTIGONE BARON COUENNE LINDO API SCIP

60 / 64

Page 82: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Virtual Best: Solving time on instances that never failed (70)

23.7 23.8 23.9 24.0 24.1 24.2 24.3 24.4 24.50

200

400

600

800

1,000

1,200

nan

3.100.87

3.33 1.00 0.732.22 1.32 0.85

GAMS version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

Overall speedup: 14.8461 / 64

Page 83: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Virtual Best: Solving time on instances that never failed (70)

23.7 23.8 23.9 24.0 24.1 24.2 24.3 24.4 24.50

200

400

600

800

1,000

1,200

nan

3.100.87

3.33 1.00 0.732.22 1.32 0.85

GAMS version

meansolvingtim

e(s)

virt.best ANTIGONE BARON COUENNE LINDO SCIP

0

20

40

60

80

100wilcoxon p virt. best

Overall speedup: 14.84

62 / 64

Page 84: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

Virtual Best: Solving time on instances solved by all (17)

23.7 23.8 23.9 24.0 24.1 24.2 24.3 24.4 24.50

50

100

150

200

nan

4.300.76

2.33 0.94 1.121.56 1.19 0.96

GAMS version

meansolvingtim

e(s)

mean time, speedup

0

20

40

60

80

100

wilcoxon p

Overall speedup: 14.3063 / 64

Page 85: (MI)NLPLib2 - GAMS · 2011 POLIP Mixed-IntegerPolynomialProgramming 2014 CBLIB ConicProgramming ... CPLEXLP .lp 667 (limitedtoquadratics) PIP .pip 770 (limitedtopolynomial) 9/64

End.http://www.gamsworld.org/minlp/minlplib2/html/

Future Work:I add more NLPs (from PrincetonLib, COCONUT, NEOS, ...)I semi-automatic identification of duplicatesI more structure recognition, e.g., second-order conesI define interesting subsets, especially a benchmark set for

global solvers

Call for contributions:I Contribute your own (MI)NLP instances! (Or send your model to minlp.org!)I Ideally from a model for a real life problem.I Also infeasible instances are welcomed.I Any (well-known) format is good (e.g., AMPL, GAMS, ZIMPL, BARON, CPLEX

LP, MPS, PIP, OSiL).I MINLPLib instances are anonymized (scalar format using generic names).I Your benefit: Solver developers may test and tune their solver for your

problem.64 / 64