MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance waterund08
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | 164.48977450 (ANTIGONE) 164.48975950 (BARON) 164.48407390 (COUENNE) 164.48977370 (GUROBI) 164.48977470 (LINDO) 164.48940210 (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_Ex08.gms |
| Applicationⓘ | Water Network Design |
| Added to libraryⓘ | 15 Aug 2014 |
| Problem typeⓘ | QCP |
| #Variablesⓘ | 90 |
| #Binary Variablesⓘ | 0 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 70 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 15 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 95 |
| #Linear Constraintsⓘ | 55 |
| #Quadratic Constraintsⓘ | 40 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 460 |
| #Nonlinear Nonzeros in Jacobianⓘ | 300 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 280 |
| #Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 0 |
| #Blocks in Hessian of Lagrangianⓘ | 5 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 14 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 14 |
| Average blocksize in Hessian of Lagrangianⓘ | 14.0 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 1.0000e+00 |
| Maximal coefficientⓘ | 5.0000e+00 |
| Infeasibility of initial pointⓘ | 1.9e+05 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 96 51 0 45 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 91 91 0 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 476 176 300 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,x62,x63,x64,x65,x66,x67,x68,x69
,x70,x71,x72,x73,x74,x75,x76,x77,x78,x79,x80,x81,x82,x83,x84,x85,x86
,x87,x88,x89,x90,x91;
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,x62,x63,x64,x65,x66,x67,x68
,x69,x70,x71,x72,x73,x74,x75,x76,x77,x78,x79,x80,x81,x82,x83,x84,x85
,x86,x87,x88,x89,x90,x91;
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,e66,e67,e68,e69,e70
,e71,e72,e73,e74,e75,e76,e77,e78,e79,e80,e81,e82,e83,e84,e85,e86,e87
,e88,e89,e90,e91,e92,e93,e94,e95,e96;
e1.. objvar - x2 - x3 - x4 - x5 - x6 - x7 - x8 - x9 - x10 - x11 - x12 - x13
- x14 - x15 - x16 =E= 0;
e2.. - x2 - x7 - x12 + x17 - x27 - x32 - x37 - x42 - x47 =E= 0;
e3.. - x3 - x8 - x13 + x18 - x28 - x33 - x38 - x43 - x48 =E= 0;
e4.. - x4 - x9 - x14 + x19 - x29 - x34 - x39 - x44 - x49 =E= 0;
e5.. - x5 - x10 - x15 + x20 - x30 - x35 - x40 - x45 - x50 =E= 0;
e6.. - x6 - x11 - x16 + x21 - x31 - x36 - x41 - x46 - x51 =E= 0;
e7.. x17 - x22 - x27 - x28 - x29 - x30 - x31 =E= 0;
e8.. x18 - x23 - x32 - x33 - x34 - x35 - x36 =E= 0;
e9.. x19 - x24 - x37 - x38 - x39 - x40 - x41 =E= 0;
e10.. x20 - x25 - x42 - x43 - x44 - x45 - x46 =E= 0;
e11.. x21 - x26 - x47 - x48 - x49 - x50 - x51 =E= 0;
e12.. x17*x52 - (x27*x72 + x32*x76 + x37*x80 + x42*x84 + x47*x88) - 5*x2 =E= 0;
e13.. x17*x53 - (x27*x73 + x32*x77 + x37*x81 + x42*x85 + x47*x89) - 2*x7
- 4*x12 =E= 0;
e14.. x17*x54 - (x27*x74 + x32*x78 + x37*x82 + x42*x86 + x47*x90) - 3*x7 =E= 0;
e15.. x17*x55 - (x27*x75 + x32*x79 + x37*x83 + x42*x87 + x47*x91) - 2*x2 - 2*x7
- 3*x12 =E= 0;
e16.. x18*x56 - (x28*x72 + x33*x76 + x38*x80 + x43*x84 + x48*x88) - 5*x3 =E= 0;
e17.. x18*x57 - (x28*x73 + x33*x77 + x38*x81 + x43*x85 + x48*x89) - 2*x8
- 4*x13 =E= 0;
e18.. x18*x58 - (x28*x74 + x33*x78 + x38*x82 + x43*x86 + x48*x90) - 3*x8 =E= 0;
e19.. x18*x59 - (x28*x75 + x33*x79 + x38*x83 + x43*x87 + x48*x91) - 2*x3 - 2*x8
- 3*x13 =E= 0;
e20.. x19*x60 - (x29*x72 + x34*x76 + x39*x80 + x44*x84 + x49*x88) - 5*x4 =E= 0;
e21.. x19*x61 - (x29*x73 + x34*x77 + x39*x81 + x44*x85 + x49*x89) - 2*x9
- 4*x14 =E= 0;
e22.. x19*x62 - (x29*x74 + x34*x78 + x39*x82 + x44*x86 + x49*x90) - 3*x9 =E= 0;
e23.. x19*x63 - (x29*x75 + x34*x79 + x39*x83 + x44*x87 + x49*x91) - 2*x4 - 2*x9
- 3*x14 =E= 0;
e24.. x20*x64 - (x30*x72 + x35*x76 + x40*x80 + x45*x84 + x50*x88) - 5*x5 =E= 0;
e25.. x20*x65 - (x30*x73 + x35*x77 + x40*x81 + x45*x85 + x50*x89) - 2*x10
- 4*x15 =E= 0;
e26.. x20*x66 - (x30*x74 + x35*x78 + x40*x82 + x45*x86 + x50*x90) - 3*x10 =E= 0
;
e27.. x20*x67 - (x30*x75 + x35*x79 + x40*x83 + x45*x87 + x50*x91) - 2*x5
- 2*x10 - 3*x15 =E= 0;
e28.. x21*x68 - (x31*x72 + x36*x76 + x41*x80 + x46*x84 + x51*x88) - 5*x6 =E= 0;
e29.. x21*x69 - (x31*x73 + x36*x77 + x41*x81 + x46*x85 + x51*x89) - 2*x11
- 4*x16 =E= 0;
e30.. x21*x70 - (x31*x74 + x36*x78 + x41*x82 + x46*x86 + x51*x90) - 3*x11 =E= 0
;
e31.. x21*x71 - (x31*x75 + x36*x79 + x41*x83 + x46*x87 + x51*x91) - 2*x6
- 2*x11 - 3*x16 =E= 0;
e32.. -x17*(x72 - x52) =E= -1080;
e33.. -x17*(x73 - x53) =E= -28296;
e34.. -x17*(x74 - x54) =E= -2520;
e35.. -x17*(x75 - x55) =E= -2016;
e36.. -x18*(x76 - x56) =E= -3400;
e37.. -x18*(x77 - x57) =E= -32300;
e38.. -x18*(x78 - x58) =E= -4590;
e39.. -x18*(x79 - x59) =E= -1122;
e40.. -x19*(x80 - x60) =E= -5600;
e41.. -x19*(x81 - x61) =E= -1400;
e42.. -x19*(x82 - x62) =E= -11200;
e43.. -x19*(x83 - x63) =E= -2408;
e44.. -x20*(x84 - x64) =E= -3348;
e45.. -x20*(x85 - x65) =E= -2108;
e46.. -x20*(x86 - x66) =E= -1860;
e47.. -x20*(x87 - x67) =E= -1364;
e48.. -x21*(x88 - x68) =E= -1500;
e49.. -x21*(x89 - x69) =E= -190000;
e50.. -x21*(x90 - x70) =E= -1500;
e51.. -x21*(x91 - x71) =E= -4425;
e52.. x52 =L= 0;
e53.. x53 =L= 7;
e54.. x54 =L= 0;
e55.. x55 =L= 12;
e56.. x56 =L= 20;
e57.. x57 =L= 300;
e58.. x58 =L= 45;
e59.. x59 =L= 34;
e60.. x60 =L= 120;
e61.. x61 =L= 20;
e62.. x62 =L= 200;
e63.. x63 =L= 56;
e64.. x64 =L= 23;
e65.. x65 =L= 43;
e66.. x66 =L= 15;
e67.. x67 =L= 123;
e68.. x68 =L= 90;
e69.. x69 =L= 400;
e70.. x70 =L= 60;
e71.. x71 =L= 57;
e72.. x72 =L= 15;
e73.. x73 =L= 400;
e74.. x74 =L= 35;
e75.. x75 =L= 40;
e76.. x76 =L= 120;
e77.. x77 =L= 1250;
e78.. x78 =L= 180;
e79.. x79 =L= 67;
e80.. x80 =L= 220;
e81.. x81 =L= 45;
e82.. x82 =L= 400;
e83.. x83 =L= 99;
e84.. x84 =L= 50;
e85.. x85 =L= 60;
e86.. x86 =L= 30;
e87.. x87 =L= 134;
e88.. x88 =L= 150;
e89.. x89 =L= 8000;
e90.. x90 =L= 120;
e91.. x91 =L= 234;
e92.. x17 =L= 72;
e93.. x18 =L= 34;
e94.. x19 =L= 56;
e95.. x20 =L= 124;
e96.. x21 =L= 25;
* 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;
x62.up = 100000;
x63.up = 100000;
x64.up = 100000;
x65.up = 100000;
x66.up = 100000;
x67.up = 100000;
x68.up = 100000;
x69.up = 100000;
x70.up = 100000;
x71.up = 100000;
x72.up = 100000;
x73.up = 100000;
x74.up = 100000;
x75.up = 100000;
x76.up = 100000;
x77.up = 100000;
x78.up = 100000;
x79.up = 100000;
x80.up = 100000;
x81.up = 100000;
x82.up = 100000;
x83.up = 100000;
x84.up = 100000;
x85.up = 100000;
x86.up = 100000;
x87.up = 100000;
x88.up = 100000;
x89.up = 100000;
x90.up = 100000;
x91.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

