MINLPLib

A Library of Mixed-Integer and Continuous Nonlinear Programming Instances

Home // Instances // Documentation // Download // Statistics


Instance ball_mk4_15

A simple MINLP with a feasible set described by a ball.
The basic model over which these variations are made is:
min  sum_i=1^n x_i
s.t. sum_i=1^n (x_i - 0.5)^2 <= (n-1)/4
x integer between -1 and 1.
Obvisouly, this problem is infeasible and has no solution.
It can be shown that any outer-approximation based method will need 2^n linear inequalities to show infeasibility, see reference.
In this instance, the ball is an empty ellipse and the quadratic form is not diagonal.
Formats ams gms lp mod nl osil pip py
Primal Bounds (infeas ≤ 1e-08)  
Other points (infeas > 1e-08)  
Dual Bounds
-72.51527744 (ALPHAECP)
2.99708480 (ANTIGONE)
52.00000000 (BARON)
58.82885900 (BONMIN)
-40992.00000000 (COUENNE)
inf (CPLEX)
-35.00000000 (GUROBI)
0.00000000 (LINDO)
29.00626902 (SCIP)
References Hijazi, Hassan, Bonami, Pierre, and Ouorou, Adam, An Outer-Inner Approximation for Separable Mixed-Integer Nonlinear Programs, INFORMS Journal on Computing, 26:1, 2014, 31-44.
Source Pierre Bonami
Application Geometry
Added to library 11 Sep 2017
Problem type IQCP
#Variables 30
#Binary Variables 0
#Integer Variables 30
#Nonlinear Variables 30
#Nonlinear Binary Variables 0
#Nonlinear Integer Variables 30
Objective Sense min
Objective type linear
Objective curvature linear
#Nonzeros in Objective 30
#Nonlinear Nonzeros in Objective 0
#Constraints 1
#Linear Constraints 0
#Quadratic Constraints 1
#Polynomial Constraints 0
#Signomial Constraints 0
#General Nonlinear Constraints 0
Operands in Gen. Nonlin. Functions  
Constraints curvature convex
#Nonzeros in Jacobian 30
#Nonlinear Nonzeros in Jacobian 30
#Nonzeros in (Upper-Left) Hessian of Lagrangian 60
#Nonzeros in Diagonal of Hessian of Lagrangian 30
#Blocks in Hessian of Lagrangian 15
Minimal blocksize in Hessian of Lagrangian 2
Maximal blocksize in Hessian of Lagrangian 2
Average blocksize in Hessian of Lagrangian 2.0
#Semicontinuities 0
#Nonlinear Semicontinuities 0
#SOS type 1 0
#SOS type 2 0
Minimal coefficient 1.0000e+00
Maximal coefficient 1.0000e+02
Infeasibility of initial point 1
Sparsity Jacobian Sparsity of Objective Gradient and Jacobian
Sparsity Hessian of Lagrangian Sparsity of Hessian of Lagrangian

$offlisting
*  
*  Equation counts
*      Total        E        G        L        N        X        C        B
*          2        1        0        1        0        0        0        0
*  
*  Variable counts
*                   x        b        i      s1s      s2s       sc       si
*      Total     cont   binary  integer     sos1     sos2    scont     sint
*         31        1        0       30        0        0        0        0
*  FX      0
*  
*  Nonzero counts
*      Total    const       NL      DLL
*         61       31       30        0
*
*  Solve m using MINLP minimizing objvar;


Variables  objvar,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16,i17,i18
          ,i19,i20,i21,i22,i23,i24,i25,i26,i27,i28,i29,i30,i31;

Integer Variables  i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16,i17,i18
          ,i19,i20,i21,i22,i23,i24,i25,i26,i27,i28,i29,i30,i31;

Equations  e1,e2;


e1..    objvar - 29*i2 - 28*i3 - 27*i4 - 26*i5 - 25*i6 - 24*i7 - 23*i8 - 22*i9
      - 21*i10 - 20*i11 - 19*i12 - 18*i13 - 17*i14 - 16*i15 - 15*i16 - 14*i17
      - 13*i18 - 12*i19 - 11*i20 - 10*i21 - 9*i22 - 8*i23 - 7*i24 - 6*i25
      - 5*i26 - 4*i27 - 3*i28 - 2*i29 - i30 - 30*i31 =E= 0;

e2.. 100*sqr(i30) - 98*i30 + 100*sqr(i29) - 98*i29 + 100*sqr(i28) - 98*i28 + 
     100*sqr(i27) - 98*i27 + 100*sqr(i26) - 98*i26 + 100*sqr(i25) - 98*i25 + 
     100*sqr(i24) - 98*i24 + 100*sqr(i23) - 98*i23 + 100*sqr(i22) - 98*i22 + 
     100*sqr(i21) - 98*i21 + 100*sqr(i20) - 98*i20 + 100*sqr(i19) - 98*i19 + 
     100*sqr(i18) - 98*i18 + 100*sqr(i17) - 98*i17 + 100*sqr(i16) - 98*i16 + 
     100*sqr(i15) - 98*i15 + 100*sqr(i14) - 98*i14 + 100*sqr(i13) - 98*i13 + 
     100*sqr(i12) - 98*i12 + 100*sqr(i11) - 98*i11 + 100*sqr(i10) - 98*i10 + 
     100*sqr(i9) - 98*i9 + 100*sqr(i8) - 98*i8 + 100*sqr(i7) - 98*i7 + 100*sqr(
     i6) - 98*i6 + 100*sqr(i5) - 98*i5 + 100*sqr(i4) - 98*i4 + 100*sqr(i3) - 98
     *i3 + 100*sqr(i2) - 98*i2 + 100*sqr(i31) - 98*i31 - 2*i30*i29 - 2*i30*i29
      - 2*i28*i27 - 2*i28*i27 - 2*i26*i25 - 2*i26*i25 - 2*i24*i23 - 2*i24*i23
      - 2*i22*i21 - 2*i22*i21 - 2*i20*i19 - 2*i20*i19 - 2*i18*i17 - 2*i18*i17
      - 2*i16*i15 - 2*i16*i15 - 2*i14*i13 - 2*i14*i13 - 2*i12*i11 - 2*i12*i11
      - 2*i10*i9 - 2*i10*i9 - 2*i8*i7 - 2*i8*i7 - 2*i6*i5 - 2*i6*i5 - 2*i4*i3
      - 2*i4*i3 - 2*i2*i31 - 2*i2*i31 =L= -1;

* set non-default bounds
i2.lo = -100;
i3.lo = -100;
i4.lo = -100;
i5.lo = -100;
i6.lo = -100;
i7.lo = -100;
i8.lo = -100;
i9.lo = -100;
i10.lo = -100;
i11.lo = -100;
i12.lo = -100;
i13.lo = -100;
i14.lo = -100;
i15.lo = -100;
i16.lo = -100;
i17.lo = -100;
i18.lo = -100;
i19.lo = -100;
i20.lo = -100;
i21.lo = -100;
i22.lo = -100;
i23.lo = -100;
i24.lo = -100;
i25.lo = -100;
i26.lo = -100;
i27.lo = -100;
i28.lo = -100;
i29.lo = -100;
i30.lo = -100;
i31.lo = -100;

Model m / all /;

m.limrow=0; m.limcol=0;
m.tolproj=0.0;
$if gamsversion 242 option intvarup = 0;

$if NOT '%gams.u1%' == '' $include '%gams.u1%'

$if not set MINLP $set MINLP MINLP
Solve m using %MINLP% minimizing objvar;


Last updated: 2024-03-25 Git hash: 1dae024f
Imprint / Privacy Policy / License: CC-BY 4.0