MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance gastrans
The problem of distributing gas through a network of pipelines is formulated as a cost minimization subject to nonlinear flow-pressure relations, material balances, and pressure bounds. The Belgian gas network is used as an example.
Formatsⓘ | ams gms mod nl osil pip py |
Primal Bounds (infeas ≤ 1e-08)ⓘ | |
Other points (infeas > 1e-08)ⓘ | |
Dual Boundsⓘ | 89.08584000 (ANTIGONE) 89.08584000 (BARON) 89.08584000 (COUENNE) 89.08584000 (LINDO) 89.08584000 (SCIP) 89.08584000 (SHOT) |
Referencesⓘ | de Wolf, Daniel and Smeers, Yves, The Gas Transmission Problem Solved by and Extension of the Simplex Algorithm, Management Science, 46:11, 2000, 1454-1465. |
Sourceⓘ | GAMS Model Library model gastrans, Wolf & Smeers formulation |
Applicationⓘ | Gas Transmission |
Added to libraryⓘ | 01 May 2001 |
Problem typeⓘ | MBNLP |
#Variablesⓘ | 106 |
#Binary Variablesⓘ | 21 |
#Integer Variablesⓘ | 0 |
#Nonlinear Variablesⓘ | 45 |
#Nonlinear Binary Variablesⓘ | 0 |
#Nonlinear Integer Variablesⓘ | 0 |
Objective Senseⓘ | min |
Objective typeⓘ | linear |
Objective curvatureⓘ | linear |
#Nonzeros in Objectiveⓘ | 5 |
#Nonlinear Nonzeros in Objectiveⓘ | 0 |
#Constraintsⓘ | 149 |
#Linear Constraintsⓘ | 125 |
#Quadratic Constraintsⓘ | 3 |
#Polynomial Constraintsⓘ | 21 |
#Signomial Constraintsⓘ | 0 |
#General Nonlinear Constraintsⓘ | 0 |
Operands in Gen. Nonlin. Functionsⓘ | |
Constraints curvatureⓘ | indefinite |
#Nonzeros in Jacobianⓘ | 413 |
#Nonlinear Nonzeros in Jacobianⓘ | 45 |
#Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 66 |
#Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 24 |
#Blocks in Hessian of Lagrangianⓘ | 24 |
Minimal blocksize in Hessian of Lagrangianⓘ | 1 |
Maximal blocksize in Hessian of Lagrangianⓘ | 2 |
Average blocksize in Hessian of Lagrangianⓘ | 1.875 |
#Semicontinuitiesⓘ | 0 |
#Nonlinear Semicontinuitiesⓘ | 0 |
#SOS type 1ⓘ | 0 |
#SOS type 2ⓘ | 0 |
Minimal coefficientⓘ | 1.6883e-03 |
Maximal coefficientⓘ | 6.4000e+03 |
Infeasibility of initial pointⓘ | 1.847e+04 |
Sparsity Jacobianⓘ | |
Sparsity Hessian of Lagrangianⓘ |
$offlisting * * Equation counts * Total E G L N X C B * 150 63 45 42 0 0 0 0 * * Variable counts * x b i s1s s2s sc si * Total cont binary integer sos1 sos2 scont sint * 107 86 21 0 0 0 0 0 * FX 5 * * Nonzero counts * Total const NL DLL * 419 374 45 0 * * Solve m using MINLP 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,b46,b47,b48,b49,b50,b51,b52,b53 ,b54,b55,b56,b57,b58,b59,b60,b61,b62,b63,b64,b65,b66,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,objvar; Positive Variables x10,x11,x22,x67,x73,x76,x80,x87,x89,x90,x93,x96,x97,x98 ,x100,x101,x103,x104,x105,x106; Binary Variables b46,b47,b48,b49,b50,b51,b52,b53,b54,b55,b56,b57,b58,b59,b60 ,b61,b62,b63,b64,b65,b66; 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.. - 2.28*x73 - 2.28*x76 - 1.68*x80 - 1.68*x82 - 2.28*x85 + objvar =E= 0; e2.. - x17 + x18 - x67 =E= 0; e3.. - x6 + x7 - x68 =E= 0; e4.. - x23 + x24 - x69 =E= 0; e5.. - x10 - x11 + x12 + x13 - x70 =E= 0; e6.. - x20 - x71 =E= 0; e7.. - x3 - x4 + x5 - x72 =E= 0; e8.. - x1 - x2 + x3 + x4 - x73 =E= 0; e9.. - x7 + x8 - x74 =E= 0; e10.. - x12 - x13 + x14 + x15 - x75 =E= 0; e11.. x6 - x76 =E= 0; e12.. - x19 + x20 - x77 =E= 0; e13.. - x16 + x17 - x78 =E= 0; e14.. - x24 - x79 =E= 0; e15.. - x9 - x18 + x19 - x80 =E= 0; e16.. - x22 + x23 - x81 =E= 0; e17.. x10 + x11 - x82 =E= 0; e18.. - x21 + x22 - x83 =E= 0; e19.. - x14 - x15 + x16 + x21 - x84 =E= 0; e20.. x1 + x2 - x85 =E= 0; e21.. - x5 - x8 + x9 - x86 =E= 0; e22.. sqr(x1)*x25 + 8.99076279639865*x93 - 8.99076279639865*x105 =E= 0; e23.. sqr(x2)*x26 + 8.99076279639865*x93 - 8.99076279639865*x105 =E= 0; e24.. sqr(x3)*x27 + 5.99384186426577*x92 - 5.99384186426577*x93 =E= 0; e25.. sqr(x4)*x28 + 5.99384186426577*x92 - 5.99384186426577*x93 =E= 0; e26.. sqr(x5)*x29 - 1.38319427636902*x92 + 1.38319427636902*x106 =E= 0; e27.. sqr(x6)*x30 + 0.0993769948466698*x88 - 0.0993769948466698*x96 =E= 0; e28.. sqr(x7)*x31 - 0.147352095807131*x88 + 0.147352095807131*x94 =E= 0; e29.. sqr(x8)*x32 - 0.224905830442463*x94 + 0.224905830442463*x106 =E= 0; e30.. sqr(x9)*x33 + 0.653873657919902*x100 - 0.653873657919902*x106 =E= 0; e31.. sqr(x12)*x34 - 1.79815255927973*x90 + 1.79815255927973*x95 =E= 0; e32.. sqr(x13)*x35 - 0.0265962529480588*x90 + 0.0265962529480588*x95 =E= 0; e33.. sqr(x14)*x36 - 1.43852204742378*x95 + 1.43852204742378*x104 =E= 0; e34.. sqr(x15)*x37 - 0.021277002358447*x95 + 0.021277002358447*x104 =E= 0; e35.. sqr(x16)*x38 + 0.856263123466538*x98 - 0.856263123466538*x104 =E= 0; e36.. sqr(x17)*x39 + 0.899076279639865*x87 - 0.899076279639865*x98 =E= 0; e37.. sqr(x18)*x40 - 7.19261023711892*x87 + 7.19261023711892*x100 =E= 0; e38.. sqr(x19)*x41 + 3.59630511855946*x97 - 3.59630511855946*x100 =E= 0; e39.. sqr(x20)*x42 + 1.43852204742378*x91 - 1.43852204742378*x97 =E= 0; e40.. sqr(x21)*x43 + 0.0509935163731392*x103 - 0.0509935163731392*x104 =E= 0; e41.. sqr(x23)*x44 + 0.0016882734118691*x89 - 0.0016882734118691*x101 =E= 0; e42.. sqr(x24)*x45 - 0.0275751323938619*x89 + 0.0275751323938619*x99 =E= 0; e43.. -sqr(x10) + 7.19261023711892*x90 - 7.19261023711892*x102 =G= 0; e44.. -sqr(x11) + 0.106385011792235*x90 - 0.106385011792235*x102 =G= 0; e45.. -sqr(x22) + 0.00636349209089121*x101 - 0.00636349209089121*x103 =G= 0; e46.. x25 - 2*b46 =E= -1; e47.. x26 - 2*b47 =E= -1; e48.. x27 - 2*b48 =E= -1; e49.. x28 - 2*b49 =E= -1; e50.. x29 - 2*b50 =E= -1; e51.. x30 - 2*b51 =E= -1; e52.. x31 - 2*b52 =E= -1; e53.. x32 - 2*b53 =E= -1; e54.. x33 - 2*b54 =E= -1; e55.. x34 - 2*b55 =E= -1; e56.. x35 - 2*b56 =E= -1; e57.. x36 - 2*b57 =E= -1; e58.. x37 - 2*b58 =E= -1; e59.. x38 - 2*b59 =E= -1; e60.. x39 - 2*b60 =E= -1; e61.. x40 - 2*b61 =E= -1; e62.. x41 - 2*b62 =E= -1; e63.. x42 - 2*b63 =E= -1; e64.. x43 - 2*b64 =E= -1; e65.. x44 - 2*b65 =E= -1; e66.. x45 - 2*b66 =E= -1; e67.. - 5929*b46 - x93 + x105 =G= -5929; e68.. - 5929*b47 - x93 + x105 =G= -5929; e69.. - 6400*b48 - x92 + x93 =G= -6400; e70.. - 6400*b49 - x92 + x93 =G= -6400; e71.. - 5500*b50 + x92 - x106 =G= -5500; e72.. - 6400*b51 - x88 + x96 =G= -6400; e73.. - 5500*b52 + x88 - x94 =G= -5500; e74.. - 5500*b53 + x94 - x106 =G= -5500; e75.. - 4382.44*b54 - x100 + x106 =G= -4382.44; e76.. - 4382.44*b55 + x90 - x95 =G= -4382.44; e77.. - 4382.44*b56 + x90 - x95 =G= -4382.44; e78.. - 3482.44*b57 + x95 - x104 =G= -3482.44; e79.. - 3482.44*b58 + x95 - x104 =G= -3482.44; e80.. - 4382.44*b59 - x98 + x104 =G= -4382.44; e81.. - 4382.44*b60 - x87 + x98 =G= -4382.44; e82.. - 4382.44*b61 + x87 - x100 =G= -4382.44; e83.. - 4382.44*b62 - x97 + x100 =G= -4382.44; e84.. - 4382.44*b63 - x91 + x97 =G= -4382.44; e85.. - 4382.44*b64 - x103 + x104 =G= -4382.44; e86.. - 4382.44*b65 - x89 + x101 =G= -4382.44; e87.. - 4382.44*b66 + x89 - x99 =G= -4382.44; e88.. - 5929*b46 - x93 + x105 =L= 0; e89.. - 5929*b47 - x93 + x105 =L= 0; e90.. - 5029*b48 - x92 + x93 =L= 0; e91.. - 5029*b49 - x92 + x93 =L= 0; e92.. - 6400*b50 + x92 - x106 =L= 0; e93.. - 5029*b51 - x88 + x96 =L= 0; e94.. - 5500*b52 + x88 - x94 =L= 0; e95.. - 6400*b53 + x94 - x106 =L= 0; e96.. - 6400*b54 - x100 + x106 =L= 0; e97.. - 3482.44*b55 + x90 - x95 =L= 0; e98.. - 3482.44*b56 + x90 - x95 =L= 0; e99.. - 4382.44*b57 + x95 - x104 =L= 0; e100.. - 4382.44*b58 + x95 - x104 =L= 0; e101.. - 4382.44*b59 - x98 + x104 =L= 0; e102.. - 4382.44*b60 - x87 + x98 =L= 0; e103.. - 4382.44*b61 + x87 - x100 =L= 0; e104.. - 4382.44*b62 - x97 + x100 =L= 0; e105.. - 1882.44*b63 - x91 + x97 =L= 0; e106.. - 4382.44*b64 - x103 + x104 =L= 0; e107.. - 3969*b65 - x89 + x101 =L= 0; e108.. - 3757.44*b66 + x89 - x99 =L= 0; e109.. x1 - 230.881425454383*b46 =G= -230.881425454383; e110.. x2 - 230.881425454383*b47 =G= -230.881425454383; e111.. x3 - 195.858591670881*b48 =G= -195.858591670881; e112.. x4 - 195.858591670881*b49 =G= -195.858591670881; e113.. x5 - 87.2213765084548*b50 =G= -87.2213765084548; e114.. x6 - 25.2192935471771*b51 =G= -25.2192935471771; e115.. x7 - 28.4681669051455*b52 =G= -28.4681669051455; e116.. x8 - 35.1707558553061*b53 =G= -35.1707558553061; e117.. x9 - 53.5309450076729*b54 =G= -53.5309450076729; e118.. x12 - 88.7710296317997*b55 =G= -88.7710296317997; e119.. x13 - 10.7961327691767*b56 =G= -10.7961327691767; e120.. x14 - 70.7782927092091*b57 =G= -70.7782927092091; e121.. x15 - 8.6078966125965*b58 =G= -8.6078966125965; e122.. x16 - 61.2578302162646*b59 =G= -61.2578302162646; e123.. x17 - 62.7705970255575*b60 =G= -62.7705970255575; e124.. x18 - 177.542059263599*b61 =G= -177.542059263599; e125.. x19 - 125.541194051115*b62 =G= -125.541194051115; e126.. x20 - 79.3992226757409*b63 =G= -79.3992226757409; e127.. x21 - 14.9491145521834*b64 =G= -14.9491145521834; e128.. x23 - 2.72006561154535*b65 =G= -2.72006561154535; e129.. x24 - 10.9930142912741*b66 =G= -10.9930142912741; e130.. x1 - 230.881425454383*b46 =L= 0; e131.. x2 - 230.881425454383*b47 =L= 0; e132.. x3 - 173.61748395652*b48 =L= 0; e133.. x4 - 173.61748395652*b49 =L= 0; e134.. x5 - 94.0874240733678*b50 =L= 0; e135.. x6 - 22.3554670513479*b51 =L= 0; e136.. x7 - 28.4681669051455*b52 =L= 0; e137.. x8 - 37.939390016601*b53 =L= 0; e138.. x9 - 64.6899637554959*b54 =L= 0; e139.. x12 - 79.1325369145847*b55 =L= 0; e140.. x13 - 9.62392098452798*b56 =L= 0; e141.. x14 - 79.3992226757409*b57 =L= 0; e142.. x15 - 9.65635470639685*b58 =L= 0; e143.. x16 - 61.2578302162646*b59 =L= 0; e144.. x17 - 62.7705970255575*b60 =L= 0; e145.. x18 - 177.542059263599*b61 =L= 0; e146.. x19 - 125.541194051115*b62 =L= 0; e147.. x20 - 52.0377886055166*b63 =L= 0; e148.. x21 - 14.9491145521834*b64 =L= 0; e149.. x23 - 2.58858207745253*b65 =L= 0; e150.. x24 - 10.1789933422708*b66 =L= 0; * set non-default bounds x67.up = 1.2; x68.up = -4.034; x69.up = -0.222; x70.fx = 0; x71.up = -15.616; x72.up = -3.918; x73.up = 8.4; x74.up = -5.256; x75.up = -6.385; x76.up = 4.8; x77.up = -6.848; x78.up = -2.12; x79.up = -1.919; x80.up = 0.96; x81.fx = 0; x82.lo = 20.344; x82.up = 22.012; x83.fx = 0; x84.fx = 0; x85.lo = 8.87; x85.up = 11.594; x86.fx = 0; x87.up = 4382.44; x88.lo = 900; x88.up = 6400; x89.up = 4382.44; x90.up = 4382.44; x91.lo = 2500; x91.up = 4382.44; x92.lo = 900; x92.up = 6400; x93.up = 5929; x94.lo = 900; x94.up = 6400; x95.lo = 900; x95.up = 4382.44; x96.up = 5929; x97.up = 4382.44; x98.up = 4382.44; x99.lo = 625; x99.up = 4382.44; x100.up = 4382.44; x101.up = 3969; x102.lo = 2500; x102.up = 4382.44; x103.up = 4382.44; x104.up = 4382.44; x105.up = 5929; x106.up = 6400; * set non-default levels x1.l = 5.45594117499038; x2.l = 3.49005882500962; x3.l = 8.46373378118172; x4.l = 8.88226621881828; x5.l = 13.428; x6.l = 4.8; x7.l = 0.766; x8.l = -4.49; x9.l = 8.938; x10.l = 22.012; x12.l = 18.1380867287228; x13.l = 3.87391327127718; x14.l = 12.1798336524591; x15.l = 3.44716634754093; x16.l = 13.486; x17.l = 11.366; x18.l = 12.566; x19.l = 22.464; x20.l = 15.616; x21.l = 2.141; x22.l = 2.141; x23.l = 2.141; x24.l = 1.919; x27.l = -75.3049979497412; x28.l = -68.3754533453309; x29.l = 6.90403568495296; x32.l = 10.0403890555214; x34.l = 19.0338757369553; x35.l = 6.17166731394037; x36.l = 8.7272279190673; x37.l = 1.6114349200345; x42.l = -14.7474499350948; x44.l = 1.46180871006652; x45.l = -4.68001962388774; x85.l = 8.946; x96.l = 900; objvar.l = 89.0858399999993; * set non-default marginals e1.m = 1; e2.m = 1; e3.m = 1; e4.m = 1; e5.m = 1; e6.m = 1; e7.m = 1; e8.m = 1; e9.m = 1; e10.m = 1; e11.m = 1; e12.m = 1; e13.m = 1; e14.m = 1; e15.m = 1; e16.m = 1; e17.m = 1; e18.m = 1; e19.m = 1; e20.m = 1; e21.m = 1; e22.m = 1; e23.m = 1; e24.m = 1; e25.m = 1; e26.m = 1; e27.m = 1; e28.m = 1; e29.m = 1; e30.m = 1; e31.m = 1; e32.m = 1; e33.m = 1; e34.m = 1; e35.m = 1; e36.m = 1; e37.m = 1; e38.m = 1; e39.m = 1; e40.m = 1; e41.m = 1; e42.m = 1; x1.m = 1; x11.m = 1; x12.m = 1; x14.m = 1; x28.m = 1; x30.m = 1; x67.m = 1; x68.m = 1; x69.m = 1; x70.m = 1; x71.m = 1; x72.m = 1; x73.m = 1; x74.m = 1; x75.m = 1; x76.m = 1; x77.m = 1; x78.m = 1; x79.m = 1; x80.m = 1; x81.m = 1; x82.m = 1; x83.m = 1; x84.m = 1; x86.m = 1; x87.m = 1; x88.m = 1; x89.m = 1; x90.m = 1; x91.m = 1; x92.m = 1; x93.m = 1; x94.m = 1; x95.m = 1; x97.m = 1; x98.m = 1; x99.m = 1; x100.m = 1; x101.m = 1; x102.m = 1; x103.m = 1; x104.m = 1; x105.m = 1; x106.m = 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: 2024-12-17 Git hash: 8eaceb91