MINLPLib

A Library of Mixed-Integer and Continuous Nonlinear Programming Instances

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


Instance cvxnonsep_psig40

convex MINLP test problem with non-separable signomial objective function
see also problem description (PDF).
In equation e1, two factors were included for x30 by mistake.
As the exponents were randomly generated anyway, adding a "fixed" version of the instance will be omitted.
Formats ams gms mod nl osil py
Primal Bounds (infeas ≤ 1e-08)
86.54463506 p1 ( gdx sol )
(infeas: 0)
85.49576764 p2 ( gdx sol )
(infeas: 0)
Other points (infeas > 1e-08)  
Dual Bounds
-1680.28145600 (ALPHAECP)
85.33988182 (ANTIGONE)
85.49576755 (BARON)
85.49576764 (BONMIN)
85.49576764 (LINDO)
82.83199647 (SCIP)
85.49248941 (SHOT)
References Kronqvist, Jan, Lundell, Andreas, and Westerlund, Tapio, Reformulations for utilizing separability when solving convex MINLP problems, submitted, 2017.
Application Test Problem
Added to library 11 Sep 2017
Problem type MINLP
#Variables 40
#Binary Variables 0
#Integer Variables 20
#Nonlinear Variables 40
#Nonlinear Binary Variables 0
#Nonlinear Integer Variables 20
Objective Sense min
Objective type signomial
Objective curvature convex
#Nonzeros in Objective 40
#Nonlinear Nonzeros in Objective 40
#Constraints 0
#Linear Constraints 0
#Quadratic Constraints 0
#Polynomial Constraints 0
#Signomial Constraints 0
#General Nonlinear Constraints 0
Operands in Gen. Nonlin. Functions  
Constraints curvature linear
#Nonzeros in Jacobian 0
#Nonlinear Nonzeros in Jacobian 0
#Nonzeros in (Upper-Left) Hessian of Lagrangian 1600
#Nonzeros in Diagonal of Hessian of Lagrangian 40
#Blocks in Hessian of Lagrangian 1
Minimal blocksize in Hessian of Lagrangian 40
Maximal blocksize in Hessian of Lagrangian 40
Average blocksize in Hessian of Lagrangian 40.0
#Semicontinuities 0
#Nonlinear Semicontinuities 0
#SOS type 1 0
#SOS type 2 0
Minimal coefficient 1.5000e-02
Maximal coefficient 4.0000e+04
Infeasibility of initial point 0
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
*          1        1        0        0        0        0        0        0
*  
*  Variable counts
*                   x        b        i      s1s      s2s       sc       si
*      Total     cont   binary  integer     sos1     sos2    scont     sint
*         41       21        0       20        0        0        0        0
*  FX      0
*  
*  Nonzero counts
*      Total    const       NL      DLL
*         41        1       40        0
*
*  Solve m using MINLP minimizing objvar;


Variables  i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16,i17,i18,i19
          ,i20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36
          ,x37,x38,x39,x40,objvar;

Integer Variables  i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12,i13,i14,i15,i16,i17
          ,i18,i19,i20;

Equations  e1;


e1.. 40000*i1**(-0.015)*i2**(-0.37)*i3**(-0.25)*i4**(-0.24)*i5**(-0.45)*i6**(-
     0.305)*i7**(-0.31)*i8**(-0.43)*i9**(-0.405)*i10**(-0.29)*i11**(-0.09)*i12
     **(-0.12)*i13**(-0.445)*i14**(-0.015)*i15**(-0.245)*i16**(-0.085)*i17**(-
     0.49)*i18**(-0.355)*i19**(-0.25)*i20**(-0.235)*x21**(-0.03)*x22**(-0.34)*
     x23**(-0.02)*x24**(-0.035)*x25**(-0.26)*x26**(-0.05)*x27**(-0.41)*x28**(-
     0.41)*x29**(-0.36)*x30**(-0.075)*x30**(-0.36)*x31**(-0.33)*x32**(-0.26)*
     x33**(-0.485)*x34**(-0.325)*x35**(-0.4)*x36**(-0.225)*x37**(-0.215)*x38**(
     -0.415)*x39**(-0.04)*x40**(-0.065) + i1 + i2 + i3 + i4 + i5 + i6 + i7 + i8
      + i9 + i10 + i11 + i12 + i13 + i14 + i15 + i16 + i17 + i18 + i19 + i20 + 
     x21 + x22 + x23 + x24 + x25 + x26 + x27 + x28 + x29 + x30 + x31 + x32 + 
     x33 + x34 + x35 + x36 + x37 + x38 + x39 + x40 - objvar =E= 0;

* set non-default bounds
i1.lo = 1; i1.up = 10;
i2.lo = 1; i2.up = 10;
i3.lo = 1; i3.up = 10;
i4.lo = 1; i4.up = 10;
i5.lo = 1; i5.up = 10;
i6.lo = 1; i6.up = 10;
i7.lo = 1; i7.up = 10;
i8.lo = 1; i8.up = 10;
i9.lo = 1; i9.up = 10;
i10.lo = 1; i10.up = 10;
i11.lo = 1; i11.up = 10;
i12.lo = 1; i12.up = 10;
i13.lo = 1; i13.up = 10;
i14.lo = 1; i14.up = 10;
i15.lo = 1; i15.up = 10;
i16.lo = 1; i16.up = 10;
i17.lo = 1; i17.up = 10;
i18.lo = 1; i18.up = 10;
i19.lo = 1; i19.up = 10;
i20.lo = 1; i20.up = 10;
x21.lo = 1; x21.up = 10;
x22.lo = 1; x22.up = 10;
x23.lo = 1; x23.up = 10;
x24.lo = 1; x24.up = 10;
x25.lo = 1; x25.up = 10;
x26.lo = 1; x26.up = 10;
x27.lo = 1; x27.up = 10;
x28.lo = 1; x28.up = 10;
x29.lo = 1; x29.up = 10;
x30.lo = 1; x30.up = 10;
x31.lo = 1; x31.up = 10;
x32.lo = 1; x32.up = 10;
x33.lo = 1; x33.up = 10;
x34.lo = 1; x34.up = 10;
x35.lo = 1; x35.up = 10;
x36.lo = 1; x36.up = 10;
x37.lo = 1; x37.up = 10;
x38.lo = 1; x38.up = 10;
x39.lo = 1; x39.up = 10;
x40.lo = 1; x40.up = 10;

Model m / all /;

m.limrow=0; m.limcol=0;
m.tolproj=0.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