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
Primal Bounds (infeas ≤ 1e-08)
1201.03846200 p1 ( gdx sol )
(infeas: 7e-12)
Other points (infeas > 1e-08)  
Dual Bounds
1201.03846000 (ANTIGONE)
839.06974970 (BARON)
945.24787590 (COUENNE)
811.02148500 (LINDO)
1053.78944500 (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
Infeasibility of initial point 350
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
*         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: 2019-07-12 Git hash: 46a7b4f1
Imprint / Privacy Policy