MINLPLib

A Library of Mixed-Integer and Continuous Nonlinear Programming Instances

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


Instance: ex1252

Formats ams gms mod nl osil pip
Primal Bounds
128893.74100000 p1 ( gdx sol )
(infeas: 6e-14)
Dual Bounds
128893.74100000 (ANTIGONE)
128893.74100000 (BARON)
128893.73460000 (COUENNE)
128893.74100000 (LINDO)
128893.74100000 (SCIP)
References Floudas, C A, Pardalos, Panos M, Adjiman, C S, Esposito, W R, Gumus, Zeynep H, Harding, S T, Klepeis, John L, Meyer, Clifford A, and Schweiger, C A, Handbook of Test Problems in Local and Global Optimization, Kluwer Academic Publishers, 1999.
Westerlund, Tapio, Petterson, Frank, and Grossmann, I E, Optimization of Pump Configurations as a MINLP Problem, Computers and Chemical Engineering, 18:9, 1994, 845-858.
Source Test Problem ex12.5.2 of Chapter 12 of Floudas e.a. handbook
Application Pump configuration problem
Added to library 01 May 2001
Problem type MBNLP
#Variables 39
#Binary Variables 15
#Integer Variables 0
#Nonlinear Variables 21
#Nonlinear Binary Variables 0
#Nonlinear Integer Variables 0
Objective Sense min
Objective type polynomial
Objective curvature indefinite
#Nonzeros in Objective 12
#Nonlinear Nonzeros in Objective 12
#Constraints 43
#Linear Constraints 31
#Quadratic Constraints 9
#Polynomial Constraints 3
#Signomial Constraints 0
#General Nonlinear Constraints 0
Operands in Gen. Nonlin. Functions  
Constraints curvature indefinite
#Nonzeros in Jacobian 105
#Nonlinear Nonzeros in Jacobian 24
#Nonzeros in (Upper-Left) Hessian of Lagrangian 60
#Nonzeros in Diagonal of Hessian of Lagrangian 6
#Blocks in Hessian of Lagrangian 3
Minimal blocksize in Hessian of Lagrangian 7
Maximal blocksize in Hessian of Lagrangian 7
Average blocksize in Hessian of Lagrangian 7.0
#Semicontinuities 0
#Nonlinear Semicontinuities 0
#SOS type 1 0
#SOS type 2 0
Infeasibility of initial point 1560
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
*         44       23        0       21        0        0        0        0
*  
*  Variable counts
*                   x        b        i      s1s      s2s       sc       si
*      Total     cont   binary  integer     sos1     sos2    scont     sint
*         40       25       15        0        0        0        0        0
*  FX      0
*  
*  Nonzero counts
*      Total    const       NL      DLL
*        118       82       36        0
*
*  Solve m using MINLP minimizing objvar;


Variables  x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,b19
          ,b20,b21,b22,b23,b24,x25,x26,x27,b28,b29,b30,b31,b32,b33,x34,x35,x36
          ,b37,b38,b39,objvar;

Positive Variables  x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17
          ,x18,x25,x26,x27,x34,x35,x36;

Binary Variables  b19,b20,b21,b22,b23,b24,b28,b29,b30,b31,b32,b33,b37,b38,b39;

Equations  e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15,e16,e17,e18,e19
          ,e20,e21,e22,e23,e24,e25,e26,e27,e28,e29,e30,e31,e32,e33,e34,e35,e36
          ,e37,e38,e39,e40,e41,e42,e43,e44;


e1.. -((6329.03 + 1800*x1)*x16*x25*x34 + (2489.31 + 1800*x2)*x17*x26*x35 + (
     3270.27 + 1800*x3)*x18*x27*x36) + objvar =E= 0;

e2.. (-19.9*POWER(0.000338983050847458*x4,3)) - 0.161*sqr(0.000338983050847458*
     x4)*x10 + 1.90169491525424e-7*sqr(x10)*x4 + x1 =E= 0;

e3.. (-1.21*POWER(0.000338983050847458*x5,3)) - 0.0644*sqr(0.000338983050847458
     *x5)*x11 + 1.91186440677966e-7*sqr(x11)*x5 + x2 =E= 0;

e4.. (-6.52*POWER(0.000338983050847458*x6,3)) - 0.102*sqr(0.000338983050847458*
     x6)*x12 + 7.86440677966102e-8*sqr(x12)*x6 + x3 =E= 0;

e5.. (-0.00023593220338983*x4*x10) - 629*sqr(0.000338983050847458*x4) + 0.0116*
     sqr(x10) + x7 =E= 0;

e6.. (-0.001*x5*x11) - 215*sqr(0.000338983050847458*x5) + 0.115*sqr(x11) + x8
      =E= 0;

e7.. (-0.000179661016949153*x6*x12) - 361*sqr(0.000338983050847458*x6) + 
     0.00946*sqr(x12) + x9 =E= 0;

e8..    x13 + x14 + x15 =E= 1;

e9.. 0.00285714285714286*x10*x16 - x13 =E= 0;

e10.. 0.00285714285714286*x11*x17 - x14 =E= 0;

e11.. 0.00285714285714286*x12*x18 - x15 =E= 0;

e12.. 0.0025*x7*x25 - x34 =E= 0;

e13.. 0.0025*x8*x26 - x35 =E= 0;

e14.. 0.0025*x9*x27 - x36 =E= 0;

e15..    0.000338983050847458*x4 - x34 =L= 0;

e16..    0.000338983050847458*x5 - x35 =L= 0;

e17..    0.000338983050847458*x6 - x36 =L= 0;

e18..    0.0125*x1 - x34 =L= 0;

e19..    0.04*x2 - x35 =L= 0;

e20..    0.0222222222222222*x3 - x36 =L= 0;

e21..    0.0025*x7 - x34 =L= 0;

e22..    0.0025*x8 - x35 =L= 0;

e23..    0.0025*x9 - x36 =L= 0;

e24..    0.00285714285714286*x10 - x34 =L= 0;

e25..    0.00285714285714286*x11 - x35 =L= 0;

e26..    0.00285714285714286*x12 - x36 =L= 0;

e27..    x13 - x34 =L= 0;

e28..    x14 - x35 =L= 0;

e29..    x15 - x36 =L= 0;

e30..    x16 - 3*x34 =L= 0;

e31..    x17 - 3*x35 =L= 0;

e32..    x18 - 3*x36 =L= 0;

e33..    x25 - 3*x34 =L= 0;

e34..    x26 - 3*x35 =L= 0;

e35..    x27 - 3*x36 =L= 0;

e36..    x16 - b19 - 2*b20 =E= 0;

e37..    x17 - b21 - 2*b22 =E= 0;

e38..    x18 - b23 - 2*b24 =E= 0;

e39..    x25 - b28 - 2*b29 =E= 0;

e40..    x26 - b30 - 2*b31 =E= 0;

e41..    x27 - b32 - 2*b33 =E= 0;

e42..    x34 - b37 =E= 0;

e43..    x35 - b38 =E= 0;

e44..    x36 - b39 =E= 0;

* set non-default bounds
x1.up = 80;
x2.up = 25;
x3.up = 45;
x4.up = 2950;
x5.up = 2950;
x6.up = 2950;
x7.up = 400;
x8.up = 400;
x9.up = 400;
x10.up = 350;
x11.up = 350;
x12.up = 350;
x13.up = 1;
x14.up = 1;
x15.up = 1;
x16.up = 3;
x17.up = 3;
x18.up = 3;
x25.up = 3;
x26.up = 3;
x27.up = 3;
x34.up = 1;
x35.up = 1;
x36.up = 1;

* set non-default levels
x4.l = 983.333333333333;
x5.l = 983.333333333333;
x6.l = 983.333333333333;
x7.l = 133.333333333333;
x8.l = 133.333333333333;
x9.l = 133.333333333333;
x10.l = 116.666666666667;
x11.l = 116.666666666667;
x12.l = 116.666666666667;
x13.l = 0.333333333333333;
x14.l = 0.333333333333333;
x15.l = 0.333333333333333;
x16.l = 1;
x17.l = 1;
x18.l = 1;
x25.l = 1;
x26.l = 1;
x27.l = 1;
x34.l = 0.333333333333333;
x35.l = 0.333333333333333;
x36.l = 0.333333333333333;

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: 2018-09-14 Git hash: ac5a5314
Imprint / Privacy Policy