MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance wastewater14m1
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | 475.03216820 (ANTIGONE) 513.00086760 (BARON) 384.88194780 (COUENNE) 513.00086810 (GUROBI) 339.86496110 (LINDO) 512.94957130 (SCIP) 0.00000000 (SHOT) |
| Referencesⓘ | Castro, Pedro M, Matos, Henrique A, and Novais, Augusto Q, An efficient heuristic procedure for the optimal design of wastewater treatment systems, Resources, Conservation and Recycling, 50:2, 2007, 158-185. Castro, Pedro M, Teles, João P, and Novais, Augusto Q, Linear program-based algorithm for the optimal design of wastewater treatment systems, Clean Technologies and Environmental Policy, 11:1, 2009, 83-93. |
| Sourceⓘ | ANTIGONE test library model Other_MIQCQP/castro_etal_2007_wts_Ex14_M1.gms |
| Applicationⓘ | Waste Water Treatment |
| Added to libraryⓘ | 15 Aug 2014 |
| Problem typeⓘ | QCP |
| #Variablesⓘ | 74 |
| #Binary Variablesⓘ | 0 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 55 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 5 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 46 |
| #Linear Constraintsⓘ | 34 |
| #Quadratic Constraintsⓘ | 12 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 315 |
| #Nonlinear Nonzeros in Jacobianⓘ | 140 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 140 |
| #Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 0 |
| #Blocks in Hessian of Lagrangianⓘ | 10 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 3 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 8 |
| Average blocksize in Hessian of Lagrangianⓘ | 5.5 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 1.0000e-01 |
| Maximal coefficientⓘ | 2.0000e+02 |
| Infeasibility of initial pointⓘ | 120 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 47 35 0 12 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 75 75 0 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 321 181 140 0
*
* Solve m using NLP minimizing objvar;
Variables x1,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,objvar;
Positive Variables x1,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;
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;
e1.. - x70 - x71 - x72 - x73 - x74 + objvar =E= 0;
e2.. - x46 - x54 - x55 - x56 - x57 - x58 =E= -50;
e3.. - x47 - x59 - x60 - x61 - x62 - x63 =E= -120;
e4.. - x48 - x64 - x65 - x66 - x67 - x68 =E= -70;
e5.. - x21 - x26 - x31 - x36 - x41 - x54 - x59 - x64 + x70 =E= 0;
e6.. - x22 - x27 - x32 - x37 - x42 - x55 - x60 - x65 + x71 =E= 0;
e7.. - x23 - x28 - x33 - x38 - x43 - x56 - x61 - x66 + x72 =E= 0;
e8.. - x24 - x29 - x34 - x39 - x44 - x57 - x62 - x67 + x73 =E= 0;
e9.. - x25 - x30 - x35 - x40 - x45 - x58 - x63 - x68 + x74 =E= 0;
e10.. - x21 - x22 - x23 - x24 - x25 - x49 + x70 =E= 0;
e11.. - x26 - x27 - x28 - x29 - x30 - x50 + x71 =E= 0;
e12.. - x31 - x32 - x33 - x34 - x35 - x51 + x72 =E= 0;
e13.. - x36 - x37 - x38 - x39 - x40 - x52 + x73 =E= 0;
e14.. - x41 - x42 - x43 - x44 - x45 - x53 + x74 =E= 0;
e15.. - x46 - x47 - x48 - x49 - x50 - x51 - x52 - x53 + x69 =E= 0;
e16.. x21*x11 + x26*x13 + x31*x15 + x36*x17 + x41*x19 - x70*x1 + 10*x54
+ 110*x59 + 100*x64 =E= 0;
e17.. x21*x12 + x26*x14 + x31*x16 + x36*x18 + x41*x20 - x70*x2 + 200*x54
+ 140*x59 + 25*x64 =E= 0;
e18.. x22*x11 + x27*x13 + x32*x15 + x37*x17 + x42*x19 - x71*x3 + 10*x55
+ 110*x60 + 100*x65 =E= 0;
e19.. x22*x12 + x27*x14 + x32*x16 + x37*x18 + x42*x20 - x71*x4 + 200*x55
+ 140*x60 + 25*x65 =E= 0;
e20.. x23*x11 + x28*x13 + x33*x15 + x38*x17 + x43*x19 - x72*x5 + 10*x56
+ 110*x61 + 100*x66 =E= 0;
e21.. x23*x12 + x28*x14 + x33*x16 + x38*x18 + x43*x20 - x72*x6 + 200*x56
+ 140*x61 + 25*x66 =E= 0;
e22.. x24*x11 + x29*x13 + x34*x15 + x39*x17 + x44*x19 - x73*x7 + 10*x57
+ 110*x62 + 100*x67 =E= 0;
e23.. x24*x12 + x29*x14 + x34*x16 + x39*x18 + x44*x20 - x73*x8 + 200*x57
+ 140*x62 + 25*x67 =E= 0;
e24.. x25*x11 + x30*x13 + x35*x15 + x40*x17 + x45*x19 - x74*x9 + 10*x58
+ 110*x63 + 100*x68 =E= 0;
e25.. x25*x12 + x30*x14 + x35*x16 + x40*x18 + x45*x20 - x74*x10 + 200*x58
+ 140*x63 + 25*x68 =E= 0;
e26.. x1 =L= 145;
e27.. x2 =L= 400;
e28.. x3 =L= 110;
e29.. x4 =L= 90;
e30.. x5 =L= 90;
e31.. x6 =L= 100;
e32.. x7 =L= 200;
e33.. x8 =L= 90;
e34.. x9 =L= 50;
e35.. x10 =L= 80;
e36.. - 0.1*x1 + x11 =E= 0;
e37.. - x2 + x12 =E= 0;
e38.. - 0.3*x3 + x13 =E= 0;
e39.. - 0.1*x4 + x14 =E= 0;
e40.. - x5 + x15 =E= 0;
e41.. - 0.2*x6 + x16 =E= 0;
e42.. - 0.5*x7 + x17 =E= 0;
e43.. - x8 + x18 =E= 0;
e44.. - 0.35*x9 + x19 =E= 0;
e45.. - 0.4*x10 + x20 =E= 0;
e46.. x49*x11 + x50*x13 + x51*x15 + x52*x17 + x53*x19 + 10*x46 + 110*x47
+ 100*x48 - 10*x69 =L= 0;
e47.. x49*x12 + x50*x14 + x51*x16 + x52*x18 + x53*x20 + 200*x46 + 140*x47
+ 25*x48 - 5*x69 =L= 0;
* set non-default bounds
x1.up = 1000000;
x2.up = 1000000;
x3.up = 1000000;
x4.up = 1000000;
x5.up = 1000000;
x6.up = 1000000;
x7.up = 1000000;
x8.up = 1000000;
x9.up = 1000000;
x10.up = 1000000;
x11.up = 1000000;
x12.up = 1000000;
x13.up = 1000000;
x14.up = 1000000;
x15.up = 1000000;
x16.up = 1000000;
x17.up = 1000000;
x18.up = 1000000;
x19.up = 1000000;
x20.up = 1000000;
x21.up = 1000000;
x22.up = 1000000;
x23.up = 1000000;
x24.up = 1000000;
x25.up = 1000000;
x26.up = 1000000;
x27.up = 1000000;
x28.up = 1000000;
x29.up = 1000000;
x30.up = 1000000;
x31.up = 1000000;
x32.up = 1000000;
x33.up = 1000000;
x34.up = 1000000;
x35.up = 1000000;
x36.up = 1000000;
x37.up = 1000000;
x38.up = 1000000;
x39.up = 1000000;
x40.up = 1000000;
x41.up = 1000000;
x42.up = 1000000;
x43.up = 1000000;
x44.up = 1000000;
x45.up = 1000000;
x46.up = 1000000;
x47.up = 1000000;
x48.up = 1000000;
x49.up = 1000000;
x50.up = 1000000;
x51.up = 1000000;
x52.up = 1000000;
x53.up = 1000000;
x54.up = 1000000;
x55.up = 1000000;
x56.up = 1000000;
x57.up = 1000000;
x58.up = 1000000;
x59.up = 1000000;
x60.up = 1000000;
x61.up = 1000000;
x62.up = 1000000;
x63.up = 1000000;
x64.up = 1000000;
x65.up = 1000000;
x66.up = 1000000;
x67.up = 1000000;
x68.up = 1000000;
x69.up = 1000000;
x70.up = 1000000;
x71.up = 1000000;
x72.up = 1000000;
x73.up = 1000000;
x74.up = 1000000;
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

