MINLPLib
A Library of Mixed-Integer and Continuous Nonlinear Programming Instances
Home // Instances // Documentation // Download // Statistics
Instance flay06m
Determine the optimal length and width of a number of rectangular patches of land with fixed area, such that the perimeter of the set of patches is minimized.
| Formatsⓘ | ams gms mod nl osil py |
| Primal Bounds (infeas ≤ 1e-08)ⓘ | |
| Other points (infeas > 1e-08)ⓘ | |
| Dual Boundsⓘ | 64.65684245 (ALPHAECP) 64.90201256 (ANTIGONE) 65.17733320 (BARON) 63.26935000 (BONMIN) 66.92606590 (COUENNE) 66.93272443 (GUROBI) 59.21748980 (LINDO) 66.93279471 (SCIP) 64.49308655 (SHOT) 66.93240231 (XPRESS) |
| Referencesⓘ | Sawaya, Nicolas W, Reformulations, relaxations and cutting planes for generalized disjunctive programming, PhD thesis, Carnegie Mellon University, 2006. |
| Sourceⓘ | FLay06M.gms from CMU-IBM MINLP solver project page |
| Applicationⓘ | Layout |
| Added to libraryⓘ | 28 Sep 2013 |
| Problem typeⓘ | MBNLP |
| #Variablesⓘ | 86 |
| #Binary Variablesⓘ | 60 |
| #Integer Variablesⓘ | 0 |
| #Nonlinear Variablesⓘ | 6 |
| #Nonlinear Binary Variablesⓘ | 0 |
| #Nonlinear Integer Variablesⓘ | 0 |
| Objective Senseⓘ | min |
| Objective typeⓘ | linear |
| Objective curvatureⓘ | linear |
| #Nonzeros in Objectiveⓘ | 2 |
| #Nonlinear Nonzeros in Objectiveⓘ | 0 |
| #Constraintsⓘ | 93 |
| #Linear Constraintsⓘ | 87 |
| #Quadratic Constraintsⓘ | 0 |
| #Polynomial Constraintsⓘ | 0 |
| #Signomial Constraintsⓘ | 6 |
| #General Nonlinear Constraintsⓘ | 0 |
| Operands in Gen. Nonlin. Functionsⓘ | |
| Constraints curvatureⓘ | convex |
| #Nonzeros in Jacobianⓘ | 348 |
| #Nonlinear Nonzeros in Jacobianⓘ | 6 |
| #Nonzeros in (Upper-Left) Hessian of Lagrangianⓘ | 6 |
| #Nonzeros in Diagonal of Hessian of Lagrangianⓘ | 6 |
| #Blocks in Hessian of Lagrangianⓘ | 6 |
| Minimal blocksize in Hessian of Lagrangianⓘ | 1 |
| Maximal blocksize in Hessian of Lagrangianⓘ | 1 |
| Average blocksize in Hessian of Lagrangianⓘ | 1.0 |
| #Semicontinuitiesⓘ | 0 |
| #Nonlinear Semicontinuitiesⓘ | 0 |
| #SOS type 1ⓘ | 0 |
| #SOS type 2ⓘ | 0 |
| Minimal coefficientⓘ | 1.0000e+00 |
| Maximal coefficientⓘ | 1.0400e+02 |
| Infeasibility of initial pointⓘ | 74 |
| Sparsity Jacobianⓘ | ![]() |
| Sparsity Hessian of Lagrangianⓘ | ![]() |
$offlisting
*
* Equation counts
* Total E G L N X C B
* 94 16 12 66 0 0 0 0
*
* Variable counts
* x b i s1s s2s sc si
* Total cont binary integer sos1 sos2 scont sint
* 87 27 60 0 0 0 0 0
* FX 0
*
* Nonzero counts
* Total const NL DLL
* 351 345 6 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,b27,b28,b29,b30,b31,b32,b33,b34,b35,b36
,b37,b38,b39,b40,b41,b42,b43,b44,b45,b46,b47,b48,b49,b50,b51,b52,b53
,b54,b55,b56,b57,b58,b59,b60,b61,b62,b63,b64,b65,b66,b67,b68,b69,b70
,b71,b72,b73,b74,b75,b76,b77,b78,b79,b80,b81,b82,b83,b84,b85,b86
,objvar;
Positive Variables x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x25,x26;
Binary Variables b27,b28,b29,b30,b31,b32,b33,b34,b35,b36,b37,b38,b39,b40,b41
,b42,b43,b44,b45,b46,b47,b48,b49,b50,b51,b52,b53,b54,b55,b56,b57,b58
,b59,b60,b61,b62,b63,b64,b65,b66,b67,b68,b69,b70,b71,b72,b73,b74,b75
,b76,b77,b78,b79,b80,b81,b82,b83,b84,b85,b86;
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;
e1.. - 2*x25 - 2*x26 + objvar =E= 0;
e2.. - x1 - x13 + x25 =G= 0;
e3.. - x2 - x14 + x25 =G= 0;
e4.. - x3 - x15 + x25 =G= 0;
e5.. - x4 - x16 + x25 =G= 0;
e6.. - x5 - x17 + x25 =G= 0;
e7.. - x6 - x18 + x25 =G= 0;
e8.. - x7 - x19 + x26 =G= 0;
e9.. - x8 - x20 + x26 =G= 0;
e10.. - x9 - x21 + x26 =G= 0;
e11.. - x10 - x22 + x26 =G= 0;
e12.. - x11 - x23 + x26 =G= 0;
e13.. - x12 - x24 + x26 =G= 0;
e14.. 40/x19 - x13 =L= 0;
e15.. 50/x20 - x14 =L= 0;
e16.. 60/x21 - x15 =L= 0;
e17.. 35/x22 - x16 =L= 0;
e18.. 75/x23 - x17 =L= 0;
e19.. 20/x24 - x18 =L= 0;
e20.. x1 - x2 + x13 + 69*b27 =L= 69;
e21.. x1 - x3 + x13 + 69*b28 =L= 69;
e22.. x1 - x4 + x13 + 69*b29 =L= 69;
e23.. x1 - x5 + x13 + 69*b30 =L= 69;
e24.. x1 - x6 + x13 + 69*b31 =L= 69;
e25.. x2 - x3 + x14 + 79*b32 =L= 79;
e26.. x2 - x4 + x14 + 79*b33 =L= 79;
e27.. x2 - x5 + x14 + 79*b34 =L= 79;
e28.. x2 - x6 + x14 + 79*b35 =L= 79;
e29.. x3 - x4 + x15 + 89*b36 =L= 89;
e30.. x3 - x5 + x15 + 89*b37 =L= 89;
e31.. x3 - x6 + x15 + 89*b38 =L= 89;
e32.. x4 - x5 + x16 + 64*b39 =L= 64;
e33.. x4 - x6 + x16 + 64*b40 =L= 64;
e34.. x5 - x6 + x17 + 104*b41 =L= 104;
e35.. - x1 + x2 + x14 + 79*b42 =L= 79;
e36.. - x1 + x3 + x15 + 89*b43 =L= 89;
e37.. - x1 + x4 + x16 + 64*b44 =L= 64;
e38.. - x1 + x5 + x17 + 104*b45 =L= 104;
e39.. - x1 + x6 + x18 + 49*b46 =L= 49;
e40.. - x2 + x3 + x15 + 89*b47 =L= 89;
e41.. - x2 + x4 + x16 + 64*b48 =L= 64;
e42.. - x2 + x5 + x17 + 104*b49 =L= 104;
e43.. - x2 + x6 + x18 + 49*b50 =L= 49;
e44.. - x3 + x4 + x16 + 64*b51 =L= 64;
e45.. - x3 + x5 + x17 + 104*b52 =L= 104;
e46.. - x3 + x6 + x18 + 49*b53 =L= 49;
e47.. - x4 + x5 + x17 + 104*b54 =L= 104;
e48.. - x4 + x6 + x18 + 49*b55 =L= 49;
e49.. - x5 + x6 + x18 + 49*b56 =L= 49;
e50.. x7 - x8 + x19 + 69*b57 =L= 69;
e51.. x7 - x9 + x19 + 69*b58 =L= 69;
e52.. x7 - x10 + x19 + 69*b59 =L= 69;
e53.. x7 - x11 + x19 + 69*b60 =L= 69;
e54.. x7 - x12 + x19 + 69*b61 =L= 69;
e55.. x8 - x9 + x20 + 79*b62 =L= 79;
e56.. x8 - x10 + x20 + 79*b63 =L= 79;
e57.. x8 - x11 + x20 + 79*b64 =L= 79;
e58.. x8 - x12 + x20 + 79*b65 =L= 79;
e59.. x9 - x10 + x21 + 89*b66 =L= 89;
e60.. x9 - x11 + x21 + 89*b67 =L= 89;
e61.. x9 - x12 + x21 + 89*b68 =L= 89;
e62.. x10 - x11 + x22 + 64*b69 =L= 64;
e63.. x10 - x12 + x22 + 64*b70 =L= 64;
e64.. x11 - x12 + x23 + 104*b71 =L= 104;
e65.. - x7 + x8 + x20 + 79*b72 =L= 79;
e66.. - x7 + x9 + x21 + 89*b73 =L= 89;
e67.. - x7 + x10 + x22 + 64*b74 =L= 64;
e68.. - x7 + x11 + x23 + 104*b75 =L= 104;
e69.. - x7 + x12 + x24 + 49*b76 =L= 49;
e70.. - x8 + x9 + x21 + 89*b77 =L= 89;
e71.. - x8 + x10 + x22 + 64*b78 =L= 64;
e72.. - x8 + x11 + x23 + 104*b79 =L= 104;
e73.. - x8 + x12 + x24 + 49*b80 =L= 49;
e74.. - x9 + x10 + x22 + 64*b81 =L= 64;
e75.. - x9 + x11 + x23 + 104*b82 =L= 104;
e76.. - x9 + x12 + x24 + 49*b83 =L= 49;
e77.. - x10 + x11 + x23 + 104*b84 =L= 104;
e78.. - x10 + x12 + x24 + 49*b85 =L= 49;
e79.. - x11 + x12 + x24 + 49*b86 =L= 49;
e80.. b27 + b42 + b57 + b72 =E= 1;
e81.. b28 + b43 + b58 + b73 =E= 1;
e82.. b29 + b44 + b59 + b74 =E= 1;
e83.. b30 + b45 + b60 + b75 =E= 1;
e84.. b31 + b46 + b61 + b76 =E= 1;
e85.. b32 + b47 + b62 + b77 =E= 1;
e86.. b33 + b48 + b63 + b78 =E= 1;
e87.. b34 + b49 + b64 + b79 =E= 1;
e88.. b35 + b50 + b65 + b80 =E= 1;
e89.. b36 + b51 + b66 + b81 =E= 1;
e90.. b37 + b52 + b67 + b82 =E= 1;
e91.. b38 + b53 + b68 + b83 =E= 1;
e92.. b39 + b54 + b69 + b84 =E= 1;
e93.. b40 + b55 + b70 + b85 =E= 1;
e94.. b41 + b56 + b71 + b86 =E= 1;
* set non-default bounds
x1.up = 29;
x2.up = 29;
x3.up = 29;
x4.up = 29;
x5.up = 29;
x6.up = 29;
x7.up = 29;
x8.up = 29;
x9.up = 29;
x10.up = 29;
x11.up = 29;
x12.up = 29;
x13.lo = 1; x13.up = 40;
x14.lo = 1; x14.up = 50;
x15.lo = 1; x15.up = 60;
x16.lo = 1; x16.up = 35;
x17.lo = 1; x17.up = 75;
x18.lo = 1; x18.up = 20;
x19.lo = 1; x19.up = 40;
x20.lo = 1; x20.up = 50;
x21.lo = 1; x21.up = 60;
x22.lo = 1; x22.up = 35;
x23.lo = 1; x23.up = 75;
x24.lo = 1; x24.up = 20;
x25.up = 30;
x26.up = 30;
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

