MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance wastewater12m1
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | 1201.03846000 (ANTIGONE) 1201.03827900 (BARON) 945.24787590 (COUENNE) 1201.03846000 (GUROBI) 811.02148500 (LINDO) 1200.91857300 (SCIP) |
| 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_Ex12_M1.gms |
| Applicationⓘ | Waste Water Treatment |
| Added to libraryⓘ | 15 Aug 2014 |
| Problem typeⓘ | QCP |
| #Variablesⓘ | 196 |
| #Binary Variablesⓘ | 0 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 140 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 10 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 57 |
| #Linear Constraintsⓘ | 46 |
| #Quadratic Constraintsⓘ | 11 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 677 |
| #Nonlinear Nonzeros in Jacobianⓘ | 240 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 240 |
| #Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 0 |
| #Blocks in Hessian of Lagrangianⓘ | 20 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 2 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 12 |
| Average blocksize in Hessian of Lagrangianⓘ | 7.0 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 5.0000e-02 |
| Maximal coefficientⓘ | 3.3000e+02 |
| Infeasibility of initial pointⓘ | 350 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 58 47 0 11 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 197 197 0 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 688 448 240 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,x75,x76,x77,x78,x79,x80,x81,x82,x83,x84,x85,x86,x87
,x88,x89,x90,x91,x92,x93,x94,x95,x96,x97,x98,x99,x100,x101,x102,x103
,x104,x105,x106,x107,x108,x109,x110,x111,x112,x113,x114,x115,x116
,x117,x118,x119,x120,x121,x122,x123,x124,x125,x126,x127,x128,x129
,x130,x131,x132,x133,x134,x135,x136,x137,x138,x139,x140,x141,x142
,x143,x144,x145,x146,x147,x148,x149,x150,x151,x152,x153,x154,x155
,x156,x157,x158,x159,x160,x161,x162,x163,x164,x165,x166,x167,x168
,x169,x170,x171,x172,x173,x174,x175,x176,x177,x178,x179,x180,x181
,x182,x183,x184,x185,x186,x187,x188,x189,x190,x191,x192,x193,x194
,x195,x196,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,x75,x76,x77,x78,x79,x80,x81,x82,x83,x84,x85
,x86,x87,x88,x89,x90,x91,x92,x93,x94,x95,x96,x97,x98,x99,x100,x101
,x102,x103,x104,x105,x106,x107,x108,x109,x110,x111,x112,x113,x114
,x115,x116,x117,x118,x119,x120,x121,x122,x123,x124,x125,x126,x127
,x128,x129,x130,x131,x132,x133,x134,x135,x136,x137,x138,x139,x140
,x141,x142,x143,x144,x145,x146,x147,x148,x149,x150,x151,x152,x153
,x154,x155,x156,x157,x158,x159,x160,x161,x162,x163,x164,x165,x166
,x167,x168,x169,x170,x171,x172,x173,x174,x175,x176,x177,x178,x179
,x180,x181,x182,x183,x184,x185,x186,x187,x188,x189,x190,x191,x192
,x193,x194,x195,x196;
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;
e1.. - x187 - x188 - x189 - x190 - x191 - x192 - x193 - x194 - x195 - x196
+ objvar =E= 0;
e2.. - x121 - x136 - x137 - x138 - x139 - x140 - x141 - x142 - x143 - x144
- x145 =E= -90;
e3.. - x122 - x146 - x147 - x148 - x149 - x150 - x151 - x152 - x153 - x154
- x155 =E= -350;
e4.. - x123 - x156 - x157 - x158 - x159 - x160 - x161 - x162 - x163 - x164
- x165 =E= -200;
e5.. - x124 - x166 - x167 - x168 - x169 - x170 - x171 - x172 - x173 - x174
- x175 =E= -40;
e6.. - x125 - x176 - x177 - x178 - x179 - x180 - x181 - x182 - x183 - x184
- x185 =E= -130;
e7.. - x21 - x31 - x41 - x51 - x61 - x71 - x81 - x91 - x101 - x111 - x136
- x146 - x156 - x166 - x176 + x187 =E= 0;
e8.. - x22 - x32 - x42 - x52 - x62 - x72 - x82 - x92 - x102 - x112 - x137
- x147 - x157 - x167 - x177 + x188 =E= 0;
e9.. - x23 - x33 - x43 - x53 - x63 - x73 - x83 - x93 - x103 - x113 - x138
- x148 - x158 - x168 - x178 + x189 =E= 0;
e10.. - x24 - x34 - x44 - x54 - x64 - x74 - x84 - x94 - x104 - x114 - x139
- x149 - x159 - x169 - x179 + x190 =E= 0;
e11.. - x25 - x35 - x45 - x55 - x65 - x75 - x85 - x95 - x105 - x115 - x140
- x150 - x160 - x170 - x180 + x191 =E= 0;
e12.. - x26 - x36 - x46 - x56 - x66 - x76 - x86 - x96 - x106 - x116 - x141
- x151 - x161 - x171 - x181 + x192 =E= 0;
e13.. - x27 - x37 - x47 - x57 - x67 - x77 - x87 - x97 - x107 - x117 - x142
- x152 - x162 - x172 - x182 + x193 =E= 0;
e14.. - x28 - x38 - x48 - x58 - x68 - x78 - x88 - x98 - x108 - x118 - x143
- x153 - x163 - x173 - x183 + x194 =E= 0;
e15.. - x29 - x39 - x49 - x59 - x69 - x79 - x89 - x99 - x109 - x119 - x144
- x154 - x164 - x174 - x184 + x195 =E= 0;
e16.. - x30 - x40 - x50 - x60 - x70 - x80 - x90 - x100 - x110 - x120 - x145
- x155 - x165 - x175 - x185 + x196 =E= 0;
e17.. - x21 - x22 - x23 - x24 - x25 - x26 - x27 - x28 - x29 - x30 - x126
+ x187 =E= 0;
e18.. - x31 - x32 - x33 - x34 - x35 - x36 - x37 - x38 - x39 - x40 - x127
+ x188 =E= 0;
e19.. - x41 - x42 - x43 - x44 - x45 - x46 - x47 - x48 - x49 - x50 - x128
+ x189 =E= 0;
e20.. - x51 - x52 - x53 - x54 - x55 - x56 - x57 - x58 - x59 - x60 - x129
+ x190 =E= 0;
e21.. - x61 - x62 - x63 - x64 - x65 - x66 - x67 - x68 - x69 - x70 - x130
+ x191 =E= 0;
e22.. - x71 - x72 - x73 - x74 - x75 - x76 - x77 - x78 - x79 - x80 - x131
+ x192 =E= 0;
e23.. - x81 - x82 - x83 - x84 - x85 - x86 - x87 - x88 - x89 - x90 - x132
+ x193 =E= 0;
e24.. - x91 - x92 - x93 - x94 - x95 - x96 - x97 - x98 - x99 - x100 - x133
+ x194 =E= 0;
e25.. - x101 - x102 - x103 - x104 - x105 - x106 - x107 - x108 - x109 - x110
- x134 + x195 =E= 0;
e26.. - x111 - x112 - x113 - x114 - x115 - x116 - x117 - x118 - x119 - x120
- x135 + x196 =E= 0;
e27.. - x121 - x122 - x123 - x124 - x125 - x126 - x127 - x128 - x129 - x130
- x131 - x132 - x133 - x134 - x135 + x186 =E= 0;
e28.. x21*x11 + x31*x12 + x41*x13 + x51*x14 + x61*x15 + x71*x16 + x81*x17 + x91
*x18 + x101*x19 + x111*x20 - x187*x1 + 330*x136 + 50*x146 + 150*x156
+ 240*x166 + 120*x176 =E= 0;
e29.. x22*x11 + x32*x12 + x42*x13 + x52*x14 + x62*x15 + x72*x16 + x82*x17 + x92
*x18 + x102*x19 + x112*x20 - x188*x2 + 330*x137 + 50*x147 + 150*x157
+ 240*x167 + 120*x177 =E= 0;
e30.. x23*x11 + x33*x12 + x43*x13 + x53*x14 + x63*x15 + x73*x16 + x83*x17 + x93
*x18 + x103*x19 + x113*x20 - x189*x3 + 330*x138 + 50*x148 + 150*x158
+ 240*x168 + 120*x178 =E= 0;
e31.. x24*x11 + x34*x12 + x44*x13 + x54*x14 + x64*x15 + x74*x16 + x84*x17 + x94
*x18 + x104*x19 + x114*x20 - x190*x4 + 330*x139 + 50*x149 + 150*x159
+ 240*x169 + 120*x179 =E= 0;
e32.. x25*x11 + x35*x12 + x45*x13 + x55*x14 + x65*x15 + x75*x16 + x85*x17 + x95
*x18 + x105*x19 + x115*x20 - x191*x5 + 330*x140 + 50*x150 + 150*x160
+ 240*x170 + 120*x180 =E= 0;
e33.. x26*x11 + x36*x12 + x46*x13 + x56*x14 + x66*x15 + x76*x16 + x86*x17 + x96
*x18 + x106*x19 + x116*x20 - x192*x6 + 330*x141 + 50*x151 + 150*x161
+ 240*x171 + 120*x181 =E= 0;
e34.. x27*x11 + x37*x12 + x47*x13 + x57*x14 + x67*x15 + x77*x16 + x87*x17 + x97
*x18 + x107*x19 + x117*x20 - x193*x7 + 330*x142 + 50*x152 + 150*x162
+ 240*x172 + 120*x182 =E= 0;
e35.. x28*x11 + x38*x12 + x48*x13 + x58*x14 + x68*x15 + x78*x16 + x88*x17 + x98
*x18 + x108*x19 + x118*x20 - x194*x8 + 330*x143 + 50*x153 + 150*x163
+ 240*x173 + 120*x183 =E= 0;
e36.. x29*x11 + x39*x12 + x49*x13 + x59*x14 + x69*x15 + x79*x16 + x89*x17 + x99
*x18 + x109*x19 + x119*x20 - x195*x9 + 330*x144 + 50*x154 + 150*x164
+ 240*x174 + 120*x184 =E= 0;
e37.. x30*x11 + x40*x12 + x50*x13 + x60*x14 + x70*x15 + x80*x16 + x90*x17 +
x100*x18 + x110*x19 + x120*x20 - x196*x10 + 330*x145 + 50*x155 + 150*x165
+ 240*x175 + 120*x185 =E= 0;
e38.. x1 =L= 30;
e39.. x2 =L= 100;
e40.. x3 =L= 50;
e41.. x4 =L= 227;
e42.. x5 =L= 100;
e43.. x6 =L= 300;
e44.. x7 =L= 12;
e45.. x8 =L= 970;
e46.. x9 =L= 20;
e47.. x10 =L= 250;
e48.. - 0.05*x1 + x11 =E= 0;
e49.. - 0.2*x2 + x12 =E= 0;
e50.. - 0.15*x3 + x13 =E= 0;
e51.. - 0.88*x4 + x14 =E= 0;
e52.. - 0.7*x5 + x15 =E= 0;
e53.. - 0.4*x6 + x16 =E= 0;
e54.. - 0.33*x7 + x17 =E= 0;
e55.. - 0.3*x8 + x18 =E= 0;
e56.. - 0.4*x9 + x19 =E= 0;
e57.. - 0.3*x10 + x20 =E= 0;
e58.. x126*x11 + x127*x12 + x128*x13 + x129*x14 + x130*x15 + x131*x16 + x132*
x17 + x133*x18 + x134*x19 + x135*x20 + 330*x121 + 50*x122 + 150*x123
+ 240*x124 + 120*x125 - 10*x186 =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;
x75.up = 1000000;
x76.up = 1000000;
x77.up = 1000000;
x78.up = 1000000;
x79.up = 1000000;
x80.up = 1000000;
x81.up = 1000000;
x82.up = 1000000;
x83.up = 1000000;
x84.up = 1000000;
x85.up = 1000000;
x86.up = 1000000;
x87.up = 1000000;
x88.up = 1000000;
x89.up = 1000000;
x90.up = 1000000;
x91.up = 1000000;
x92.up = 1000000;
x93.up = 1000000;
x94.up = 1000000;
x95.up = 1000000;
x96.up = 1000000;
x97.up = 1000000;
x98.up = 1000000;
x99.up = 1000000;
x100.up = 1000000;
x101.up = 1000000;
x102.up = 1000000;
x103.up = 1000000;
x104.up = 1000000;
x105.up = 1000000;
x106.up = 1000000;
x107.up = 1000000;
x108.up = 1000000;
x109.up = 1000000;
x110.up = 1000000;
x111.up = 1000000;
x112.up = 1000000;
x113.up = 1000000;
x114.up = 1000000;
x115.up = 1000000;
x116.up = 1000000;
x117.up = 1000000;
x118.up = 1000000;
x119.up = 1000000;
x120.up = 1000000;
x121.up = 1000000;
x122.up = 1000000;
x123.up = 1000000;
x124.up = 1000000;
x125.up = 1000000;
x126.up = 1000000;
x127.up = 1000000;
x128.up = 1000000;
x129.up = 1000000;
x130.up = 1000000;
x131.up = 1000000;
x132.up = 1000000;
x133.up = 1000000;
x134.up = 1000000;
x135.up = 1000000;
x136.up = 1000000;
x137.up = 1000000;
x138.up = 1000000;
x139.up = 1000000;
x140.up = 1000000;
x141.up = 1000000;
x142.up = 1000000;
x143.up = 1000000;
x144.up = 1000000;
x145.up = 1000000;
x146.up = 1000000;
x147.up = 1000000;
x148.up = 1000000;
x149.up = 1000000;
x150.up = 1000000;
x151.up = 1000000;
x152.up = 1000000;
x153.up = 1000000;
x154.up = 1000000;
x155.up = 1000000;
x156.up = 1000000;
x157.up = 1000000;
x158.up = 1000000;
x159.up = 1000000;
x160.up = 1000000;
x161.up = 1000000;
x162.up = 1000000;
x163.up = 1000000;
x164.up = 1000000;
x165.up = 1000000;
x166.up = 1000000;
x167.up = 1000000;
x168.up = 1000000;
x169.up = 1000000;
x170.up = 1000000;
x171.up = 1000000;
x172.up = 1000000;
x173.up = 1000000;
x174.up = 1000000;
x175.up = 1000000;
x176.up = 1000000;
x177.up = 1000000;
x178.up = 1000000;
x179.up = 1000000;
x180.up = 1000000;
x181.up = 1000000;
x182.up = 1000000;
x183.up = 1000000;
x184.up = 1000000;
x185.up = 1000000;
x186.up = 1000000;
x187.up = 1000000;
x188.up = 1000000;
x189.up = 1000000;
x190.up = 1000000;
x191.up = 1000000;
x192.up = 1000000;
x193.up = 1000000;
x194.up = 1000000;
x195.up = 1000000;
x196.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

