MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance waterund25
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | 395.14352860 (ANTIGONE) 390.10376180 (BARON) 375.06207940 (COUENNE) 410.54454590 (GUROBI) 388.71356520 (LINDO) 408.34610570 (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_Ex25.gms |
| Applicationⓘ | Water Network Design |
| Added to libraryⓘ | 15 Aug 2014 |
| Problem typeⓘ | QCP |
| #Variablesⓘ | 121 |
| #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ⓘ | 28 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 87 |
| #Linear Constraintsⓘ | 51 |
| #Quadratic Constraintsⓘ | 36 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 591 |
| #Nonlinear Nonzeros in Jacobianⓘ | 285 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 270 |
| #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ⓘ | 1.0520e+03 |
| Infeasibility of initial pointⓘ | 1.182e+05 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 88 45 6 37 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 122 122 0 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 620 335 285 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,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;
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,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;
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;
e1.. 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 =E= 0;
e2.. - x2 - x9 - x16 - x23 + x30 - x44 - x51 - x58 - x65 - x72 - x79 - x86
=E= 0;
e3.. - x3 - x10 - x17 - x24 + x31 - x45 - x52 - x59 - x66 - x73 - x80 - x87
=E= 0;
e4.. - x4 - x11 - x18 - x25 + x32 - x46 - x53 - x60 - x67 - x74 - x81 - x88
=E= 0;
e5.. - x5 - x12 - x19 - x26 + x33 - x47 - x54 - x61 - x68 - x75 - x82 - x89
=E= 0;
e6.. - x6 - x13 - x20 - x27 + x34 - x48 - x55 - x62 - x69 - x76 - x83 - x90
=E= 0;
e7.. - x7 - x14 - x21 - x28 - x49 - x56 - x63 - x70 - x77 - x84 - x91 =E= -95;
e8.. - x8 - x15 - x22 - x29 - x50 - x57 - x64 - x71 - x78 - x85 - x92 =E= -50;
e9.. x30 - x37 - x44 - x45 - x46 - x47 - x48 - x49 - x50 =E= 0;
e10.. x31 - x38 - x51 - x52 - x53 - x54 - x55 - x56 - x57 =E= 0;
e11.. x32 - x39 - x58 - x59 - x60 - x61 - x62 - x63 - x64 =E= 0;
e12.. x33 - x40 - x65 - x66 - x67 - x68 - x69 - x70 - x71 =E= 0;
e13.. x34 - x41 - x72 - x73 - x74 - x75 - x76 - x77 - x78 =E= 0;
e14.. - x42 - x79 - x80 - x81 - x82 - x83 - x84 - x85 =E= -55;
e15.. - x43 - x86 - x87 - x88 - x89 - x90 - x91 - x92 =E= -80;
e16.. x30*x93 - (x44*x108 + x51*x111 + x58*x114 + x65*x117 + x72*x120) - 4*x2
- 7*x9 - 7*x16 - 6*x23 - 809*x79 - 1052*x86 =E= 0;
e17.. x30*x94 - (x44*x109 + x51*x112 + x58*x115 + x65*x118 + x72*x121) - 5*x2
- 8*x9 - 3*x16 - 4*x23 - 899*x79 - 229*x86 =E= 0;
e18.. x30*x95 - (x44*x110 + x51*x113 + x58*x116 + x65*x119 + x72*x122) - 9*x2
- x9 - x16 - 9*x23 - 985*x79 - 783*x86 =E= 0;
e19.. x31*x96 - (x45*x108 + x52*x111 + x59*x114 + x66*x117 + x73*x120) - 4*x3
- 7*x10 - 7*x17 - 6*x24 - 809*x80 - 1052*x87 =E= 0;
e20.. x31*x97 - (x45*x109 + x52*x112 + x59*x115 + x66*x118 + x73*x121) - 5*x3
- 8*x10 - 3*x17 - 4*x24 - 899*x80 - 229*x87 =E= 0;
e21.. x31*x98 - (x45*x110 + x52*x113 + x59*x116 + x66*x119 + x73*x122) - 9*x3
- x10 - x17 - 9*x24 - 985*x80 - 783*x87 =E= 0;
e22.. x32*x99 - (x46*x108 + x53*x111 + x60*x114 + x67*x117 + x74*x120) - 4*x4
- 7*x11 - 7*x18 - 6*x25 - 809*x81 - 1052*x88 =E= 0;
e23.. x32*x100 - (x46*x109 + x53*x112 + x60*x115 + x67*x118 + x74*x121) - 5*x4
- 8*x11 - 3*x18 - 4*x25 - 899*x81 - 229*x88 =E= 0;
e24.. x32*x101 - (x46*x110 + x53*x113 + x60*x116 + x67*x119 + x74*x122) - 9*x4
- x11 - x18 - 9*x25 - 985*x81 - 783*x88 =E= 0;
e25.. x33*x102 - (x47*x108 + x54*x111 + x61*x114 + x68*x117 + x75*x120) - 4*x5
- 7*x12 - 7*x19 - 6*x26 - 809*x82 - 1052*x89 =E= 0;
e26.. x33*x103 - (x47*x109 + x54*x112 + x61*x115 + x68*x118 + x75*x121) - 5*x5
- 8*x12 - 3*x19 - 4*x26 - 899*x82 - 229*x89 =E= 0;
e27.. x33*x104 - (x47*x110 + x54*x113 + x61*x116 + x68*x119 + x75*x122) - 9*x5
- x12 - x19 - 9*x26 - 985*x82 - 783*x89 =E= 0;
e28.. x34*x105 - (x48*x108 + x55*x111 + x62*x114 + x69*x117 + x76*x120) - 4*x6
- 7*x13 - 7*x20 - 6*x27 - 809*x83 - 1052*x90 =E= 0;
e29.. x34*x106 - (x48*x109 + x55*x112 + x62*x115 + x69*x118 + x76*x121) - 5*x6
- 8*x13 - 3*x20 - 4*x27 - 899*x83 - 229*x90 =E= 0;
e30.. x34*x107 - (x48*x110 + x55*x113 + x62*x116 + x69*x119 + x76*x122) - 9*x6
- x13 - x20 - 9*x27 - 985*x83 - 783*x90 =E= 0;
e31.. -x30*(x108 - x93) =E= -702;
e32.. -x30*(x109 - x94) =E= -3294;
e33.. -x30*(x110 - x95) =E= -918;
e34.. -x31*(x111 - x96) =E= -102138;
e35.. -x31*(x112 - x97) =E= -32364;
e36.. -x31*(x113 - x98) =E= -2088;
e37.. -x32*(x114 - x99) =E= -118198;
e38.. -x32*(x115 - x100) =E= -36838;
e39.. -x32*(x116 - x101) =E= -113678;
e40.. -x33*(x117 - x102) =E= -8568;
e41.. -x33*(x118 - x103) =E= -44948;
e42.. -x33*(x119 - x104) =E= -19788;
e43.. -x34*(x120 - x105) =E= -82600;
e44.. -x34*(x121 - x106) =E= -4100;
e45.. -x34*(x122 - x107) =E= -90400;
e46.. x93 =L= 857;
e47.. x94 =L= 479;
e48.. x95 =L= 781;
e49.. x96 =L= 71;
e50.. x97 =L= 990;
e51.. x98 =L= 998;
e52.. x99 =L= 650;
e53.. x100 =L= 759;
e54.. x101 =L= 54;
e55.. x102 =L= 905;
e56.. x103 =L= 120;
e57.. x104 =L= 452;
e58.. x105 =L= 366;
e59.. x106 =L= 169;
e60.. x107 =L= 169;
e61.. x108 =L= 870;
e62.. x109 =L= 540;
e63.. x110 =L= 798;
e64.. x111 =L= 658;
e65.. x112 =L= 1176;
e66.. x113 =L= 1010;
e67.. x114 =L= 1173;
e68.. x115 =L= 922;
e69.. x116 =L= 557;
e70.. x117 =L= 1031;
e71.. x118 =L= 781;
e72.. x119 =L= 743;
e73.. x120 =L= 1192;
e74.. x121 =L= 210;
e75.. x122 =L= 1073;
e76.. -(x49*x108 + x56*x111 + x63*x114 + x70*x117 + x77*x120) - 4*x7 - 7*x14
- 7*x21 - 6*x28 - 809*x84 - 1052*x91 =G= -22990;
e77.. -(x49*x109 + x56*x112 + x63*x115 + x70*x118 + x77*x121) - 5*x7 - 8*x14
- 3*x21 - 4*x28 - 899*x84 - 229*x91 =G= -61940;
e78.. -(x49*x110 + x56*x113 + x63*x116 + x70*x119 + x77*x122) - 9*x7 - x14
- x21 - 9*x28 - 985*x84 - 783*x91 =G= -8740;
e79.. -(x50*x108 + x57*x111 + x64*x114 + x71*x117 + x78*x120) - 4*x8 - 7*x15
- 7*x22 - 6*x29 - 809*x85 - 1052*x92 =G= -30900;
e80.. -(x50*x109 + x57*x112 + x64*x115 + x71*x118 + x78*x121) - 5*x8 - 8*x15
- 3*x22 - 4*x29 - 899*x85 - 229*x92 =G= -6700;
e81.. -(x50*x110 + x57*x113 + x64*x116 + x71*x119 + x78*x122) - 9*x8 - x15
- x22 - 9*x29 - 985*x85 - 783*x92 =G= -37200;
e82.. x30 =L= 54;
e83.. x31 =L= 174;
e84.. x32 =L= 226;
e85.. x33 =L= 68;
e86.. x34 =L= 100;
e87.. x35 =L= 0;
e88.. x36 =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;
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;
x92.up = 100000;
x93.up = 100000;
x94.up = 100000;
x95.up = 100000;
x96.up = 100000;
x97.up = 100000;
x98.up = 100000;
x99.up = 100000;
x100.up = 100000;
x101.up = 100000;
x102.up = 100000;
x103.up = 100000;
x104.up = 100000;
x105.up = 100000;
x106.up = 100000;
x107.up = 100000;
x108.up = 100000;
x109.up = 100000;
x110.up = 100000;
x111.up = 100000;
x112.up = 100000;
x113.up = 100000;
x114.up = 100000;
x115.up = 100000;
x116.up = 100000;
x117.up = 100000;
x118.up = 100000;
x119.up = 100000;
x120.up = 100000;
x121.up = 100000;
x122.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

