MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance pooling_bental5stp
STP formulation of pooling problem. Explicitly added RLT constraints were removed from the original formulation of Alfaki and Haugland.
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | -3500.00000300 (ANTIGONE) -3500.00000000 (BARON) -3500.00000000 (COUENNE) -3500.00000000 (GUROBI) -3500.00000000 (LINDO) -3500.00000000 (SCIP) |
| Referencesⓘ | Ben-Tal, Aharon, Eiger, Gideon, and Gershovitz, Vladimir, Global minimization by reducing the duality gap, Mathematical Programming, 63:1, 1994, 193-212. Alfaki, Mohammed and Haugland, Dag, Strong formulations for the pooling problem, Journal of Global Optimization, 56:3, 2013, 897-916. |
| Sourceⓘ | Bental5.gms from Standard Pooling Problem Instances |
| Applicationⓘ | Pooling problem |
| Added to libraryⓘ | 12 Sep 2017 |
| Problem typeⓘ | QCP |
| #Variablesⓘ | 119 |
| #Binary Variablesⓘ | 0 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 54 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 59 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 149 |
| #Linear Constraintsⓘ | 29 |
| #Quadratic Constraintsⓘ | 120 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 694 |
| #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ⓘ | 6 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 9 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 9 |
| Average blocksize in Hessian of Lagrangianⓘ | 9.0 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 1.0000e-01 |
| Maximal coefficientⓘ | 1.3000e+01 |
| Infeasibility of initial pointⓘ | 1 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 150 127 0 23 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 120 120 0 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 754 514 240 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;
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;
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,e97,e98,e99,e100,e101,e102,e103
,e104,e105,e106,e107,e108,e109,e110,e111,e112,e113,e114,e115,e116
,e117,e118,e119,e120,e121,e122,e123,e124,e125,e126,e127,e128,e129
,e130,e131,e132,e133,e134,e135,e136,e137,e138,e139,e140,e141,e142
,e143,e144,e145,e146,e147,e148,e149,e150;
e1.. objvar + 8*x14 + 5*x15 + 9*x16 + 6*x17 + 4*x18 + 12*x61 + 9*x62
+ 13*x63 + 10*x64 + 8*x65 + 12*x66 + 9*x67 + 13*x68 + 10*x69 + 8*x70
+ 12*x71 + 9*x72 + 13*x73 + 10*x74 + 8*x75 + 2*x76 - x77 + 3*x78 - 2*x80
+ 2*x81 - x82 + 3*x83 - 2*x85 + 2*x86 - x87 + 3*x88 - 2*x90 + 3*x91
+ 4*x93 + x94 - x95 + 3*x96 + 4*x98 + x99 - x100 + 3*x101 + 4*x103 + x104
- x105 + 6*x106 + 3*x107 + 7*x108 + 4*x109 + 2*x110 + 6*x111 + 3*x112
+ 7*x113 + 4*x114 + 2*x115 + 6*x116 + 3*x117 + 7*x118 + 4*x119 + 2*x120
=E= 0;
e2.. x61 + x62 + x63 + x64 + x65 + x66 + x67 + x68 + x69 + x70 + x71 + x72
+ x73 + x74 + x75 =L= 600;
e3.. x76 + x77 + x78 + x79 + x80 + x81 + x82 + x83 + x84 + x85 + x86 + x87
+ x88 + x89 + x90 =L= 600;
e4.. x91 + x92 + x93 + x94 + x95 + x96 + x97 + x98 + x99 + x100 + x101
+ x102 + x103 + x104 + x105 =L= 50;
e5.. x106 + x107 + x108 + x109 + x110 + x111 + x112 + x113 + x114 + x115
+ x116 + x117 + x118 + x119 + x120 =L= 600;
e6.. x14 + x15 + x16 + x17 + x18 =L= 600;
e7.. x61 + x62 + x63 + x64 + x65 + x76 + x77 + x78 + x79 + x80 + x91 + x92
+ x93 + x94 + x95 + x106 + x107 + x108 + x109 + x110 =L= 600;
e8.. x66 + x67 + x68 + x69 + x70 + x81 + x82 + x83 + x84 + x85 + x96 + x97
+ x98 + x99 + x100 + x111 + x112 + x113 + x114 + x115 =L= 600;
e9.. x71 + x72 + x73 + x74 + x75 + x86 + x87 + x88 + x89 + x90 + x101 + x102
+ x103 + x104 + x105 + x116 + x117 + x118 + x119 + x120 =L= 600;
e10.. x14 + x61 + x66 + x71 + x76 + x81 + x86 + x91 + x96 + x101 + x106
+ x111 + x116 =L= 100;
e11.. x15 + x62 + x67 + x72 + x77 + x82 + x87 + x92 + x97 + x102 + x107
+ x112 + x117 =L= 200;
e12.. x16 + x63 + x68 + x73 + x78 + x83 + x88 + x93 + x98 + x103 + x108
+ x113 + x118 =L= 100;
e13.. x17 + x64 + x69 + x74 + x79 + x84 + x89 + x94 + x99 + x104 + x109
+ x114 + x119 =L= 100;
e14.. x18 + x65 + x70 + x75 + x80 + x85 + x90 + x95 + x100 + x105 + x110
+ x115 + x120 =L= 100;
e15.. - 0.5*x14 + 0.5*x61 + 0.5*x66 + 0.5*x71 - 1.5*x76 - 1.5*x81 - 1.5*x86
- 1.5*x91 - 1.5*x96 - 1.5*x101 - x106 - x111 - x116 =L= 0;
e16.. 0.5*x14 - x61 - x66 - x71 + x76 + x81 + x86 + 0.5*x91 + 0.5*x96
+ 0.5*x101 + 0.5*x106 + 0.5*x111 + 0.5*x116 =L= 0;
e17.. 0.5*x15 + 1.5*x62 + 1.5*x67 + 1.5*x72 - 0.5*x77 - 0.5*x82 - 0.5*x87
- 0.5*x92 - 0.5*x97 - 0.5*x102 =L= 0;
e18.. - 1.5*x62 - 1.5*x67 - 1.5*x72 + 0.5*x77 + 0.5*x82 + 0.5*x87 =L= 0;
e19.. x63 + x68 + x73 - x78 - x83 - x88 - x93 - x98 - x103 - 0.5*x108
- 0.5*x113 - 0.5*x118 =L= 0;
e20.. - 0.1*x16 - 1.6*x63 - 1.6*x68 - 1.6*x73 + 0.4*x78 + 0.4*x83 + 0.4*x88
- 0.1*x93 - 0.1*x98 - 0.1*x103 - 0.1*x108 - 0.1*x113 - 0.1*x118 =L= 0;
e21.. x64 + x69 + x74 - x79 - x84 - x89 - x94 - x99 - x104 - 0.5*x109
- 0.5*x114 - 0.5*x119 =L= 0;
e22.. 0.5*x17 - x64 - x69 - x74 + x79 + x84 + x89 + 0.5*x94 + 0.5*x99
+ 0.5*x104 + 0.5*x109 + 0.5*x114 + 0.5*x119 =L= 0;
e23.. x65 + x70 + x75 - x80 - x85 - x90 - x95 - x100 - x105 - 0.5*x110
- 0.5*x115 - 0.5*x120 =L= 0;
e24.. 0.5*x18 - x65 - x70 - x75 + x80 + x85 + x90 + 0.5*x95 + 0.5*x100
+ 0.5*x105 + 0.5*x110 + 0.5*x115 + 0.5*x120 =L= 0;
e25.. x34 + x37 + x40 + x43 =E= 1;
e26.. x35 + x38 + x41 + x44 =E= 1;
e27.. x36 + x39 + x42 + x45 =E= 1;
e28.. x46 + x47 + x48 + x49 + x50 =E= 1;
e29.. x51 + x52 + x53 + x54 + x55 =E= 1;
e30.. x56 + x57 + x58 + x59 + x60 =E= 1;
e31.. -x34*x19 + x61 =E= 0;
e32.. -x34*x20 + x62 =E= 0;
e33.. -x34*x21 + x63 =E= 0;
e34.. -x34*x22 + x64 =E= 0;
e35.. -x34*x23 + x65 =E= 0;
e36.. -x35*x24 + x66 =E= 0;
e37.. -x35*x25 + x67 =E= 0;
e38.. -x35*x26 + x68 =E= 0;
e39.. -x35*x27 + x69 =E= 0;
e40.. -x35*x28 + x70 =E= 0;
e41.. -x36*x29 + x71 =E= 0;
e42.. -x36*x30 + x72 =E= 0;
e43.. -x36*x31 + x73 =E= 0;
e44.. -x36*x32 + x74 =E= 0;
e45.. -x36*x33 + x75 =E= 0;
e46.. -x37*x19 + x76 =E= 0;
e47.. -x37*x20 + x77 =E= 0;
e48.. -x37*x21 + x78 =E= 0;
e49.. -x37*x22 + x79 =E= 0;
e50.. -x37*x23 + x80 =E= 0;
e51.. -x38*x24 + x81 =E= 0;
e52.. -x38*x25 + x82 =E= 0;
e53.. -x38*x26 + x83 =E= 0;
e54.. -x38*x27 + x84 =E= 0;
e55.. -x38*x28 + x85 =E= 0;
e56.. -x39*x29 + x86 =E= 0;
e57.. -x39*x30 + x87 =E= 0;
e58.. -x39*x31 + x88 =E= 0;
e59.. -x39*x32 + x89 =E= 0;
e60.. -x39*x33 + x90 =E= 0;
e61.. -x40*x19 + x91 =E= 0;
e62.. -x40*x20 + x92 =E= 0;
e63.. -x40*x21 + x93 =E= 0;
e64.. -x40*x22 + x94 =E= 0;
e65.. -x40*x23 + x95 =E= 0;
e66.. -x41*x24 + x96 =E= 0;
e67.. -x41*x25 + x97 =E= 0;
e68.. -x41*x26 + x98 =E= 0;
e69.. -x41*x27 + x99 =E= 0;
e70.. -x41*x28 + x100 =E= 0;
e71.. -x42*x29 + x101 =E= 0;
e72.. -x42*x30 + x102 =E= 0;
e73.. -x42*x31 + x103 =E= 0;
e74.. -x42*x32 + x104 =E= 0;
e75.. -x42*x33 + x105 =E= 0;
e76.. -x43*x19 + x106 =E= 0;
e77.. -x43*x20 + x107 =E= 0;
e78.. -x43*x21 + x108 =E= 0;
e79.. -x43*x22 + x109 =E= 0;
e80.. -x43*x23 + x110 =E= 0;
e81.. -x44*x24 + x111 =E= 0;
e82.. -x44*x25 + x112 =E= 0;
e83.. -x44*x26 + x113 =E= 0;
e84.. -x44*x27 + x114 =E= 0;
e85.. -x44*x28 + x115 =E= 0;
e86.. -x45*x29 + x116 =E= 0;
e87.. -x45*x30 + x117 =E= 0;
e88.. -x45*x31 + x118 =E= 0;
e89.. -x45*x32 + x119 =E= 0;
e90.. -x45*x33 + x120 =E= 0;
e91.. -x46*x2 + x61 =E= 0;
e92.. -x47*x2 + x62 =E= 0;
e93.. -x48*x2 + x63 =E= 0;
e94.. -x49*x2 + x64 =E= 0;
e95.. -x50*x2 + x65 =E= 0;
e96.. -x51*x3 + x66 =E= 0;
e97.. -x52*x3 + x67 =E= 0;
e98.. -x53*x3 + x68 =E= 0;
e99.. -x54*x3 + x69 =E= 0;
e100.. -x55*x3 + x70 =E= 0;
e101.. -x56*x4 + x71 =E= 0;
e102.. -x57*x4 + x72 =E= 0;
e103.. -x58*x4 + x73 =E= 0;
e104.. -x59*x4 + x74 =E= 0;
e105.. -x60*x4 + x75 =E= 0;
e106.. -x46*x5 + x76 =E= 0;
e107.. -x47*x5 + x77 =E= 0;
e108.. -x48*x5 + x78 =E= 0;
e109.. -x49*x5 + x79 =E= 0;
e110.. -x50*x5 + x80 =E= 0;
e111.. -x51*x6 + x81 =E= 0;
e112.. -x52*x6 + x82 =E= 0;
e113.. -x53*x6 + x83 =E= 0;
e114.. -x54*x6 + x84 =E= 0;
e115.. -x55*x6 + x85 =E= 0;
e116.. -x56*x7 + x86 =E= 0;
e117.. -x57*x7 + x87 =E= 0;
e118.. -x58*x7 + x88 =E= 0;
e119.. -x59*x7 + x89 =E= 0;
e120.. -x60*x7 + x90 =E= 0;
e121.. -x46*x8 + x91 =E= 0;
e122.. -x47*x8 + x92 =E= 0;
e123.. -x48*x8 + x93 =E= 0;
e124.. -x49*x8 + x94 =E= 0;
e125.. -x50*x8 + x95 =E= 0;
e126.. -x51*x9 + x96 =E= 0;
e127.. -x52*x9 + x97 =E= 0;
e128.. -x53*x9 + x98 =E= 0;
e129.. -x54*x9 + x99 =E= 0;
e130.. -x55*x9 + x100 =E= 0;
e131.. -x56*x10 + x101 =E= 0;
e132.. -x57*x10 + x102 =E= 0;
e133.. -x58*x10 + x103 =E= 0;
e134.. -x59*x10 + x104 =E= 0;
e135.. -x60*x10 + x105 =E= 0;
e136.. -x46*x11 + x106 =E= 0;
e137.. -x47*x11 + x107 =E= 0;
e138.. -x48*x11 + x108 =E= 0;
e139.. -x49*x11 + x109 =E= 0;
e140.. -x50*x11 + x110 =E= 0;
e141.. -x51*x12 + x111 =E= 0;
e142.. -x52*x12 + x112 =E= 0;
e143.. -x53*x12 + x113 =E= 0;
e144.. -x54*x12 + x114 =E= 0;
e145.. -x55*x12 + x115 =E= 0;
e146.. -x56*x13 + x116 =E= 0;
e147.. -x57*x13 + x117 =E= 0;
e148.. -x58*x13 + x118 =E= 0;
e149.. -x59*x13 + x119 =E= 0;
e150.. -x60*x13 + x120 =E= 0;
* set non-default bounds
x2.up = 600;
x3.up = 600;
x4.up = 600;
x5.up = 600;
x6.up = 600;
x7.up = 600;
x8.up = 50;
x9.up = 50;
x10.up = 50;
x11.up = 600;
x12.up = 600;
x13.up = 600;
x14.up = 100;
x15.up = 200;
x16.up = 100;
x17.up = 100;
x18.up = 100;
x19.up = 100;
x20.up = 200;
x21.up = 100;
x22.up = 100;
x23.up = 100;
x24.up = 100;
x25.up = 200;
x26.up = 100;
x27.up = 100;
x28.up = 100;
x29.up = 100;
x30.up = 200;
x31.up = 100;
x32.up = 100;
x33.up = 100;
x34.up = 1;
x35.up = 1;
x36.up = 1;
x37.up = 1;
x38.up = 1;
x39.up = 1;
x40.up = 1;
x41.up = 1;
x42.up = 1;
x43.up = 1;
x44.up = 1;
x45.up = 1;
x46.up = 1;
x47.up = 1;
x48.up = 1;
x49.up = 1;
x50.up = 1;
x51.up = 1;
x52.up = 1;
x53.up = 1;
x54.up = 1;
x55.up = 1;
x56.up = 1;
x57.up = 1;
x58.up = 1;
x59.up = 1;
x60.up = 1;
x61.up = 100;
x62.up = 200;
x63.up = 100;
x64.up = 100;
x65.up = 100;
x66.up = 100;
x67.up = 200;
x68.up = 100;
x69.up = 100;
x70.up = 100;
x71.up = 100;
x72.up = 200;
x73.up = 100;
x74.up = 100;
x75.up = 100;
x76.up = 100;
x77.up = 200;
x78.up = 100;
x79.up = 100;
x80.up = 100;
x81.up = 100;
x82.up = 200;
x83.up = 100;
x84.up = 100;
x85.up = 100;
x86.up = 100;
x87.up = 200;
x88.up = 100;
x89.up = 100;
x90.up = 100;
x91.up = 50;
x92.up = 50;
x93.up = 50;
x94.up = 50;
x95.up = 50;
x96.up = 50;
x97.up = 50;
x98.up = 50;
x99.up = 50;
x100.up = 50;
x101.up = 50;
x102.up = 50;
x103.up = 50;
x104.up = 50;
x105.up = 50;
x106.up = 100;
x107.up = 200;
x108.up = 100;
x109.up = 100;
x110.up = 100;
x111.up = 100;
x112.up = 200;
x113.up = 100;
x114.up = 100;
x115.up = 100;
x116.up = 100;
x117.up = 200;
x118.up = 100;
x119.up = 100;
x120.up = 100;
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

