MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance waterund18
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | 237.14317200 (ANTIGONE) 237.08510780 (BARON) 236.84070550 (COUENNE) 238.73313120 (GUROBI) 236.95696980 (LINDO) 238.66091520 (SCIP) |
| Referencesⓘ | Castro, Pedro M and Teles, João P, Comparison of global optimization algorithms for the design of water-using networks, Computers and Chemical Engineering, 52, 2013, 249-261. Teles, João P, Castro, Pedro M, and Novais, Augusto Q, LP-based solution strategies for the optimal design of industrial water networks with multiple contaminants, Chemical Engineering Science, 63:2, 2008, 376-394. Teles, João P, Castro, Pedro M, and Matos, Henrique A, Global optimization of water networks design using multiparametric disaggregation, Computers and Chemical Engineering 40, 2012, 132-147. |
| Sourceⓘ | ANTIGONE test library model Other_MIQCQP/teles_etal_2009_WUN_Ex18.gms |
| Applicationⓘ | Water Network Design |
| Added to libraryⓘ | 15 Aug 2014 |
| Problem typeⓘ | QCP |
| #Variablesⓘ | 60 |
| #Binary Variablesⓘ | 0 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 39 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 12 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 64 |
| #Linear Constraintsⓘ | 36 |
| #Quadratic Constraintsⓘ | 28 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 274 |
| #Nonlinear Nonzeros in Jacobianⓘ | 156 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 144 |
| #Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 0 |
| #Blocks in Hessian of Lagrangianⓘ | 3 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 13 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 13 |
| Average blocksize in Hessian of Lagrangianⓘ | 13.0 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 1.0000e+00 |
| Maximal coefficientⓘ | 2.5000e+02 |
| Infeasibility of initial pointⓘ | 1.23e+04 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 65 33 4 28 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 61 61 0 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 287 131 156 0
*
* Solve m using NLP minimizing objvar;
Variables objvar,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18
,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35
,x36,x37,x38,x39,x40,x41,x42,x43,x44,x45,x46,x47,x48,x49,x50,x51,x52
,x53,x54,x55,x56,x57,x58,x59,x60,x61;
Positive Variables x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17
,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34
,x35,x36,x37,x38,x39,x40,x41,x42,x43,x44,x45,x46,x47,x48,x49,x50,x51
,x52,x53,x54,x55,x56,x57,x58,x59,x60,x61;
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,e45,e46,e47,e48,e49,e50,e51,e52,e53
,e54,e55,e56,e57,e58,e59,e60,e61,e62,e63,e64,e65;
e1.. objvar - x2 - x3 - x4 - x5 - x6 - x7 - x8 - x9 - x10 - x11 - x12 - x13
=E= 0;
e2.. - x2 - x6 - x10 + x14 - x22 - x26 - x30 - x34 =E= 0;
e3.. - x3 - x7 - x11 + x15 - x23 - x27 - x31 - x35 =E= 0;
e4.. - x4 - x8 - x12 + x16 - x24 - x28 - x32 - x36 =E= 0;
e5.. - x5 - x9 - x13 - x25 - x29 - x33 - x37 =E= -170;
e6.. x14 - x18 - x22 - x23 - x24 - x25 =E= 0;
e7.. x15 - x19 - x26 - x27 - x28 - x29 =E= 0;
e8.. x16 - x20 - x30 - x31 - x32 - x33 =E= 0;
e9.. - x21 - x34 - x35 - x36 - x37 =E= -140;
e10.. x14*x38 - (x22*x50 + x26*x54 + x30*x58) - 2*x6 - 250*x34 =E= 0;
e11.. x14*x39 - (x22*x51 + x26*x55 + x30*x59) - 3*x2 - x6 - 180*x34 =E= 0;
e12.. x14*x40 - (x22*x52 + x26*x56 + x30*x60) - x10 - 90*x34 =E= 0;
e13.. x14*x41 - (x22*x53 + x26*x57 + x30*x61) - 3*x10 - 90*x34 =E= 0;
e14.. x15*x42 - (x23*x50 + x27*x54 + x31*x58) - 2*x7 - 250*x35 =E= 0;
e15.. x15*x43 - (x23*x51 + x27*x55 + x31*x59) - 3*x3 - x7 - 180*x35 =E= 0;
e16.. x15*x44 - (x23*x52 + x27*x56 + x31*x60) - x11 - 90*x35 =E= 0;
e17.. x15*x45 - (x23*x53 + x27*x57 + x31*x61) - 3*x11 - 90*x35 =E= 0;
e18.. x16*x46 - (x24*x50 + x28*x54 + x32*x58) - 2*x8 - 250*x36 =E= 0;
e19.. x16*x47 - (x24*x51 + x28*x55 + x32*x59) - 3*x4 - x8 - 180*x36 =E= 0;
e20.. x16*x48 - (x24*x52 + x28*x56 + x32*x60) - x12 - 90*x36 =E= 0;
e21.. x16*x49 - (x24*x53 + x28*x57 + x32*x61) - 3*x12 - 90*x36 =E= 0;
e22.. -x14*(x50 - x38) =E= -3690;
e23.. -x14*(x51 - x39) =E= -3690;
e24.. -x14*(x52 - x40) =E= -1230;
e25.. -x14*(x53 - x41) =E= -3690;
e26.. -x15*(x54 - x42) =E= -940;
e27.. -x15*(x55 - x43) =E= -2350;
e28.. -x15*(x56 - x44) =E= -1175;
e29.. -x15*(x57 - x45) =E= -1880;
e30.. -x16*(x58 - x46) =E= -12300;
e31.. -x16*(x59 - x47) =E= -12300;
e32.. -x16*(x60 - x48) =E= -6150;
e33.. -x16*(x61 - x49) =E= -4920;
e34.. x38 =L= 20;
e35.. x39 =L= 30;
e36.. x40 =L= 20;
e37.. x41 =L= 10;
e38.. x42 =L= 50;
e39.. x43 =L= 20;
e40.. x44 =L= 20;
e41.. x45 =L= 20;
e42.. x46 =L= 100;
e43.. x47 =L= 150;
e44.. x48 =L= 30;
e45.. x49 =L= 20;
e46.. x50 =L= 50;
e47.. x51 =L= 60;
e48.. x52 =L= 30;
e49.. x53 =L= 40;
e50.. x54 =L= 70;
e51.. x55 =L= 70;
e52.. x56 =L= 45;
e53.. x57 =L= 60;
e54.. x58 =L= 200;
e55.. x59 =L= 250;
e56.. x60 =L= 80;
e57.. x61 =L= 60;
e58.. -(x25*x50 + x29*x54 + x33*x58) - 2*x9 - 250*x37 =G= -34000;
e59.. -(x25*x51 + x29*x55 + x33*x59) - 3*x5 - x9 - 180*x37 =G= -13600;
e60.. -(x25*x52 + x29*x56 + x33*x60) - x13 - 90*x37 =G= -3400;
e61.. -(x25*x53 + x29*x57 + x33*x61) - 3*x13 - 90*x37 =G= -10200;
e62.. x14 =L= 123;
e63.. x15 =L= 47;
e64.. x16 =L= 123;
e65.. x17 =L= 0;
* set non-default bounds
x2.up = 100000;
x3.up = 100000;
x4.up = 100000;
x5.up = 100000;
x6.up = 100000;
x7.up = 100000;
x8.up = 100000;
x9.up = 100000;
x10.up = 100000;
x11.up = 100000;
x12.up = 100000;
x13.up = 100000;
x14.up = 100000;
x15.up = 100000;
x16.up = 100000;
x17.up = 100000;
x18.up = 100000;
x19.up = 100000;
x20.up = 100000;
x21.up = 100000;
x22.up = 100000;
x23.up = 100000;
x24.up = 100000;
x25.up = 100000;
x26.up = 100000;
x27.up = 100000;
x28.up = 100000;
x29.up = 100000;
x30.up = 100000;
x31.up = 100000;
x32.up = 100000;
x33.up = 100000;
x34.up = 100000;
x35.up = 100000;
x36.up = 100000;
x37.up = 100000;
x38.up = 100000;
x39.up = 100000;
x40.up = 100000;
x41.up = 100000;
x42.up = 100000;
x43.up = 100000;
x44.up = 100000;
x45.up = 100000;
x46.up = 100000;
x47.up = 100000;
x48.up = 100000;
x49.up = 100000;
x50.up = 100000;
x51.up = 100000;
x52.up = 100000;
x53.up = 100000;
x54.up = 100000;
x55.up = 100000;
x56.up = 100000;
x57.up = 100000;
x58.up = 100000;
x59.up = 100000;
x60.up = 100000;
x61.up = 100000;
Model m / all /;
m.limrow=0; m.limcol=0;
m.tolproj=0.0;
$if NOT '%gams.u1%' == '' $include '%gams.u1%'
$if not set NLP $set NLP NLP
Solve m using %NLP% minimizing objvar;
Last updated: 2025-08-07 Git hash: e62cedfc

