MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance gasprod_sarawak01
Li et al. reformulated the natural gas production model of Selot et al. from a general MINLP to MIQCQP. The modeling files corresponding to these problems have been scaled in accordance with the design of Li et al. The 3 test cases are effectively the same problem with a different number of uncertain scenarios.
| Formatsⓘ | ams gms lp mod nl osil pip py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | -32445.40491000 (ANTIGONE) -32445.40491000 (BARON) -32445.40491000 (COUENNE) -32445.40491000 (GUROBI) -32445.40491000 (LINDO) -32445.40491000 (SCIP) -33085.40491000 (SHOT) |
| Referencesⓘ | Selot, Ajay, Kuok, Loi Kwong, Robinson, Mark, Mason, Thomas L, and Barton, Paul I, A short-term operational planning model for natural gas production systems, AIChE Journal, 54:2, 2008, 495-515. Li, Xiang, Armagan, Emre, Tomasgard, Asgeir, and Barton, Paul I, Stochastic pooling problem for natural gas production network design and operation under uncertainty, AIChE Journal, 57:8, 2011, 2120-2135. Li, Xiang, Tomasgard, Asgeir, and Barton, Paul I, Decomposition strategy for the stochastic pooling problem, Journal of Global Optimization, 54:4, 2012, 765-790. |
| Sourceⓘ | ANTIGONE test library model Other_MIQCQP/Sarawak_Scenario1 |
| Applicationⓘ | Natural Gas Production |
| Added to libraryⓘ | 24 Sep 2013 |
| Problem typeⓘ | MBQCP |
| #Variablesⓘ | 131 |
| #Binary Variablesⓘ | 38 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 25 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 37 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 212 |
| #Linear Constraintsⓘ | 178 |
| #Quadratic Constraintsⓘ | 34 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 0 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | indefinite |
| #Nonzeros in Jacobianⓘ | 551 |
| #Nonlinear Nonzeros in Jacobianⓘ | 68 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 68 |
| #Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 0 |
| #Blocks in Hessian of Lagrangianⓘ | 4 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 4 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 9 |
| Average blocksize in Hessian of Lagrangianⓘ | 6.25 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 2.6870e-03 |
| Maximal coefficientⓘ | 9.3000e+03 |
| Infeasibility of initial pointⓘ | 1 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 213 100 110 3 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 132 94 38 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 589 521 68 0
*
* Solve m using MINLP minimizing objvar;
Variables b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19
,b20,b21,b22,b23,b24,b25,b26,b27,b28,b29,b30,b31,b32,b33,b34,b35,b36
,b37,b38,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,objvar;
Positive Variables 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;
Binary Variables b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17
,b18,b19,b20,b21,b22,b23,b24,b25,b26,b27,b28,b29,b30,b31,b32,b33,b34
,b35,b36,b37,b38;
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,e151,e152,e153,e154,e155
,e156,e157,e158,e159,e160,e161,e162,e163,e164,e165,e166,e167,e168
,e169,e170,e171,e172,e173,e174,e175,e176,e177,e178,e179,e180,e181
,e182,e183,e184,e185,e186,e187,e188,e189,e190,e191,e192,e193,e194
,e195,e196,e197,e198,e199,e200,e201,e202,e203,e204,e205,e206,e207
,e208,e209,e210,e211,e212,e213;
e1.. - 20*b1 - 520*b2 - 20*b3 - 100*b4 - 20*b5 - 80*b6 - 550*b7 - 80*b9
- 400*b10 - 16*b11 - 50*b13 - 80*b15 - 300*b16 - 500*b17 - 500*b18
- 500*b19 - 500*b21 - 500*b22 - 320*b25 - 40*b26 - 40*b27 - 200*b28
- 200*b29 - 80*b30 - 10*b31 - 600*b32 - 420*b33 - 7500*b37 - 9300*b38
+ 12.822715454568*x82 + 12.822715454568*x83 + 12.822715454568*x84
+ 12.822715454568*x85 + 12.822715454568*x86 + 12.822715454568*x87
+ 12.822715454568*x88 + 12.822715454568*x89 + objvar =E= 14104.9870000248
;
e2.. - x39 =G= -130;
e3.. - x40 =G= -125;
e4.. - x41 =G= -212;
e5.. - x42 =G= -334;
e6.. - x43 =G= -833;
e7.. - x44 =G= -381;
e8.. - x45 =G= -5610;
e9.. - x46 =G= -155;
e10.. 401*b1 - x47 =G= 0;
e11.. 600*b2 - x48 - x49 =G= 0;
e12.. 532*b3 - x50 =G= 0;
e13.. 816*b4 - x51 =G= 0;
e14.. 161*b5 - x52 =G= 0;
e15.. 2467*b6 - x53 =G= 0;
e16.. 923*b7 - x54 - x55 =G= 0;
e17.. 401*b8 - x47 =G= 0;
e18.. 600*b9 - x48 =G= 0;
e19.. 600*b10 - x49 =G= 0;
e20.. 532*b11 - x50 =G= 0;
e21.. 816*b12 - x51 =G= 0;
e22.. 161*b13 - x52 =G= 0;
e23.. 2467*b14 - x53 =G= 0;
e24.. 900*b15 - x54 =G= 0;
e25.. 900*b16 - x55 =G= 0;
e26.. b1 - b8 =G= 0;
e27.. b2 - b9 =G= 0;
e28.. b2 - b10 =G= 0;
e29.. b3 - b11 =G= 0;
e30.. b4 - b12 =G= 0;
e31.. b5 - b13 =G= 0;
e32.. b6 - b14 =G= 0;
e33.. b7 - b15 =G= 0;
e34.. b7 - b16 =G= 0;
e35.. - b1 + b8 =G= 0;
e36.. - b2 + b9 + b10 =G= 0;
e37.. - b3 + b11 =G= 0;
e38.. - b4 + b12 =G= 0;
e39.. - b5 + b13 =G= 0;
e40.. - b6 + b14 =G= 0;
e41.. - b7 + b15 + b16 =G= 0;
e42.. - 0.007177*x39 - 0.008782*x40 + x56 =E= 0;
e43.. - 0.992823*x39 - 0.991218*x40 + x57 =E= 0;
e44.. - 0.002687*x41 - 0.092341*x42 + x58 =E= 0;
e45.. - 0.997313*x41 - 0.907659*x42 + x59 =E= 0;
e46.. - 0.00684*x44 - 0.016427*x45 + x60 =E= 0;
e47.. - 0.99316*x44 - 0.983573*x45 + x61 =E= 0;
e48.. - 0.088511*x47 - 0.015894*x48 + x62 =E= 0;
e49.. - 0.911489*x47 - 0.984106*x48 + x63 =E= 0;
e50.. - 0.024263*x50 - 0.009488*x51 - 0.023048*x52 + x64 =E= 0;
e51.. - 0.975737*x50 - 0.990512*x51 - 0.976952*x52 + x65 =E= 0;
e52.. - x64 - x66 + x70 =E= 0;
e53.. - x65 - x67 + x71 =E= 0;
e54.. - 0.0383*x55 - x68 - x76 + x80 =E= 0;
e55.. - 0.9617*x55 - x69 - x77 + x81 =E= 0;
e56.. x66 - 0.0334*x98 - 0.0383*x99 =E= 0;
e57.. x67 - 0.9666*x98 - 0.9617*x99 =E= 0;
e58.. x68 - 0.0334*x100 - 0.0383*x101 =E= 0;
e59.. x69 - 0.9666*x100 - 0.9617*x101 =E= 0;
e60.. x72 - 0.034121*x102 - 0.014483*x103 - x108 - x110 =E= 0;
e61.. x73 - 0.965879*x102 - 0.985517*x103 - x109 - x111 =E= 0;
e62.. x74 - 0.034121*x104 - 0.014483*x105 - x112 - x114 =E= 0;
e63.. x75 - 0.965879*x104 - 0.985517*x105 - x113 - x115 =E= 0;
e64.. x76 - 0.015894*x106 - x116 - x118 - x120 =E= 0;
e65.. x77 - 0.984106*x106 - x117 - x119 - x121 =E= 0;
e66.. x78 - 0.015894*x107 - x122 - x124 - x126 =E= 0;
e67.. x79 - 0.984106*x107 - x123 - x125 - x127 =E= 0;
e68.. -x90*x53 + x98 =E= 0;
e69.. -x90*x54 + x99 =E= 0;
e70.. -x91*x53 + x100 =E= 0;
e71.. -x91*x54 + x101 =E= 0;
e72.. -x92*x43 + x102 =E= 0;
e73.. -x92*x46 + x103 =E= 0;
e74.. -x93*x43 + x104 =E= 0;
e75.. -x93*x46 + x105 =E= 0;
e76.. -x94*x49 + x106 =E= 0;
e77.. -x95*x49 + x107 =E= 0;
e78.. -x92*x58 + x108 =E= 0;
e79.. -x92*x59 + x109 =E= 0;
e80.. -x92*x60 + x110 =E= 0;
e81.. -x92*x61 + x111 =E= 0;
e82.. -x93*x58 + x112 =E= 0;
e83.. -x93*x59 + x113 =E= 0;
e84.. -x93*x60 + x114 =E= 0;
e85.. -x93*x61 + x115 =E= 0;
e86.. -x94*x62 + x116 =E= 0;
e87.. -x94*x63 + x117 =E= 0;
e88.. -x94*x70 + x118 =E= 0;
e89.. -x94*x71 + x119 =E= 0;
e90.. -x94*x72 + x120 =E= 0;
e91.. -x94*x73 + x121 =E= 0;
e92.. -x95*x62 + x122 =E= 0;
e93.. -x95*x63 + x123 =E= 0;
e94.. -x95*x70 + x124 =E= 0;
e95.. -x95*x71 + x125 =E= 0;
e96.. -x95*x72 + x126 =E= 0;
e97.. -x95*x73 + x127 =E= 0;
e98.. - x56 - x74 + x82 =E= 0;
e99.. - x57 - x75 + x83 =E= 0;
e100.. - x80 + x88 =E= 0;
e101.. - x81 + x89 =E= 0;
e102.. x84 - x128 =E= 0;
e103.. x85 - x129 =E= 0;
e104.. x86 - x130 =E= 0;
e105.. x87 - x131 =E= 0;
e106.. -x96*x78 + x128 =E= 0;
e107.. -x96*x79 + x129 =E= 0;
e108.. -x97*x78 + x130 =E= 0;
e109.. -x97*x79 + x131 =E= 0;
e110.. x90 + x91 =E= 1;
e111.. x92 + x93 =E= 1;
e112.. x94 + x95 =E= 1;
e113.. x96 + x97 =E= 1;
e114.. - x56 - x57 =G= -255;
e115.. - x58 - x59 =G= -546;
e116.. - x60 - x61 =G= -1331;
e117.. - x74 - x75 =G= -1400;
e118.. 600*b25 - x62 - x63 =G= 0;
e119.. 1509*b26 - x64 - x65 =G= 0;
e120.. 2200*b27 - x66 - x67 =G= 0;
e121.. 900*b28 - x68 - x69 =G= 0;
e122.. 2200*b29 - x70 - x71 =G= 0;
e123.. 950*b30 - x72 - x73 =G= 0;
e124.. 720*b31 - x76 - x77 =G= 0;
e125.. 3000*b32 - x78 - x79 =G= 0;
e126.. 1800*b33 - x80 - x81 =G= 0;
e127.. - x82 - x83 =G= -1400;
e128.. 2200*b34 - x84 - x85 =G= 0;
e129.. 800*b35 - x86 - x87 =G= 0;
e130.. 1800*b36 - x88 - x89 =G= 0;
e131.. - b8 + b17 =G= 0;
e132.. - b9 + b17 =G= 0;
e133.. - b10 + b21 =G= 0;
e134.. - b11 + b18 =G= 0;
e135.. - b12 + b18 =G= 0;
e136.. - b13 + b18 =G= 0;
e137.. - b14 + b19 =G= 0;
e138.. - b15 + b19 =G= 0;
e139.. - b16 + b22 =G= 0;
e140.. b21 - b25 =G= 0;
e141.. b20 - b26 =G= 0;
e142.. b20 - b27 =G= 0;
e143.. b22 - b28 =G= 0;
e144.. b21 - b29 =G= 0;
e145.. b21 - b30 =G= 0;
e146.. b22 - b31 =G= 0;
e147.. b23 - b32 =G= 0;
e148.. b24 - b33 =G= 0;
e149.. b17 - b25 =G= 0;
e150.. b18 - b26 =G= 0;
e151.. b19 - b27 =G= 0;
e152.. b19 - b28 =G= 0;
e153.. b20 - b29 =G= 0;
e154.. b21 - b31 =G= 0;
e155.. b21 - b32 =G= 0;
e156.. b22 - b33 =G= 0;
e157.. b23 - b34 =G= 0;
e158.. b23 - b35 =G= 0;
e159.. b24 - b36 =G= 0;
e160.. b8 + b9 - b17 =G= 0;
e161.. b11 + b12 + b13 - b18 =G= 0;
e162.. b14 + b15 - b19 =G= 0;
e163.. - b20 + b26 + b27 =G= 0;
e164.. b10 - b21 + b25 + b29 + b30 =G= 0;
e165.. b16 - b22 + b28 + b31 =G= 0;
e166.. - b23 + b32 =G= 0;
e167.. - b24 + b33 =G= 0;
e168.. - b17 + b25 =G= 0;
e169.. - b18 + b26 =G= 0;
e170.. - b19 + b27 + b28 =G= 0;
e171.. - b20 + b29 =G= 0;
e172.. - b21 + b31 + b32 =G= 0;
e173.. - b22 + b33 =G= 0;
e174.. - b23 + b34 + b35 =G= 0;
e175.. - b24 + b36 =G= 0;
e176.. - x82 - x83 =G= -1100;
e177.. 1800*b37 - x84 - x85 =G= 0;
e178.. 2400*b38 - x86 - x87 - x88 - x89 =G= 0;
e179.. 0.972*x82 - 0.028*x83 =L= 0;
e180.. 0.972*x84 - 0.028*x85 =L= 0;
e181.. 0.972*x86 - 0.028*x87 + 0.972*x88 - 0.028*x89 =L= 0;
e182.. - b34 + b37 =G= 0;
e183.. - b35 + b38 =G= 0;
e184.. - b36 + b38 =G= 0;
e185.. b34 - b37 =G= 0;
e186.. b35 + b36 - b38 =G= 0;
e187.. b1 - b8 =E= 0;
e188.. - b8 + b17 =E= 0;
e189.. b4 - b12 =E= 0;
e190.. - b12 + b18 =E= 0;
e191.. b6 - b14 =E= 0;
e192.. - b14 + b19 =E= 0;
e193.. b23 - b34 =E= 0;
e194.. - b34 + b37 =E= 0;
e195.. b24 - b36 =E= 0;
e196.. - b36 + b38 =E= 0;
e197.. - x43 + x102 + x104 =E= 0;
e198.. - x46 + x103 + x105 =E= 0;
e199.. - x49 + x106 + x107 =E= 0;
e200.. - x53 + x98 + x100 =E= 0;
e201.. - x54 + x99 + x101 =E= 0;
e202.. - x58 + x108 + x112 =E= 0;
e203.. - x59 + x109 + x113 =E= 0;
e204.. - x60 + x110 + x114 =E= 0;
e205.. - x61 + x111 + x115 =E= 0;
e206.. - x62 + x116 + x122 =E= 0;
e207.. - x63 + x117 + x123 =E= 0;
e208.. - x70 + x118 + x124 =E= 0;
e209.. - x71 + x119 + x125 =E= 0;
e210.. - x72 + x120 + x126 =E= 0;
e211.. - x73 + x121 + x127 =E= 0;
e212.. - x78 + x128 + x130 =E= 0;
e213.. - x79 + x129 + x131 =E= 0;
* set non-default bounds
x39.up = 130;
x40.up = 125;
x41.up = 212;
x42.up = 334;
x43.up = 833;
x44.up = 381;
x45.up = 950;
x46.up = 155;
x47.up = 401;
x48.up = 600;
x49.up = 600;
x50.up = 532;
x51.up = 816;
x52.up = 161;
x53.up = 2467;
x54.up = 900;
x55.up = 900;
x56.up = 255;
x57.up = 255;
x58.up = 546;
x59.up = 546;
x60.up = 1331;
x61.up = 1331;
x62.up = 600;
x63.up = 600;
x64.up = 1509;
x65.up = 1509;
x66.up = 2200;
x67.up = 2200;
x68.up = 900;
x69.up = 900;
x70.up = 2200;
x71.up = 2200;
x72.up = 950;
x73.up = 950;
x74.up = 1400;
x75.up = 1400;
x76.up = 720;
x77.up = 720;
x78.up = 3000;
x79.up = 3000;
x80.up = 1800;
x81.up = 1800;
x82.up = 1400;
x83.up = 1400;
x84.up = 2200;
x85.up = 2200;
x86.up = 800;
x87.up = 800;
x88.up = 1800;
x89.up = 1800;
x90.up = 1;
x91.up = 1;
x92.up = 1;
x93.up = 1;
x94.up = 1;
x95.up = 1;
x96.up = 1;
x97.up = 1;
Model m / all /;
m.limrow=0; m.limcol=0;
m.tolproj=0.0;
$if NOT '%gams.u1%' == '' $include '%gams.u1%'
$if not set MINLP $set MINLP MINLP
Solve m using %MINLP% minimizing objvar;
Last updated: 2025-08-07 Git hash: e62cedfc

