Strip Packing#
This model packs a set of rectangles without rotation or overlap within a strip of a given width, while minimizing the length of the strip.
This is a Strip-packing example from http://minlp.org/library/lib.php?lib=GDP
import pyomo.environ as pyo
from pyomo.gdp import Disjunct, Disjunction
model = pyo.ConcreteModel()
model.RECTANGLES = pyo.Set(ordered=True, initialize=[0,1,2,3])
# Width and Lenght of each rectangle
model.Width = pyo.Param(model.RECTANGLES, initialize={0:6, 1:3, 2:4, 3:2})
model.Length = pyo.Param(model.RECTANGLES, initialize={0:6, 1:8, 2:5, 3:3})
model.StripWidth = pyo.Param(initialize=10, doc="Width of the strip" )
# upperbound on length (default is sum of lengths of rectangles)
model.LengthUB = pyo.Param(initialize=sum(model.Length[i] for i in
model.RECTANGLES))
# x (length) and y (width) coordinates of each of the rectangles
model.x = pyo.Var(model.RECTANGLES, bounds=(0, model.LengthUB),
doc="rectangle corner x-position (position down length)")
def y_bounds(m, i):
return (0, m.StripWidth-m.Width[i])
model.y = pyo.Var(model.RECTANGLES,
bounds=y_bounds,
doc="rectangle corner y-position (position across width)")
# length of strip (this will be the objective)
model.MaxLength = pyo.Var(within=pyo.NonNegativeReals)
# generate the list of possible rectangle conflicts (which are any pair)
def rec_pairs_filter(model, i, j):
return i < j
model.OVERLAP_PAIRS = pyo.Set(initialize=model.RECTANGLES * model.RECTANGLES,
dimen=2, filter=rec_pairs_filter)
# strip length constraint
@model.Constraint(model.RECTANGLES)
def strip_ends_after_last_rec(model, i):
return model.MaxLength >= model.x[i] + model.Length[i]
# minimize length
model.total_length = pyo.Objective(expr=model.MaxLength)
#
# Insert the no-overlap disjunctions here!
#
@model.Disjunction(model.OVERLAP_PAIRS)
def noOverlap(m,i,j):
return [
m.x[i] + m.Length[i] <= m.x[j],
m.x[j] + m.Length[j] <= m.x[i],
m.y[i] + m.Width[i] <= m.y[j],
m.y[j] + m.Width[j] <= m.y[i],
]
#
# Transform the model using the BigM relaxation
#
pyo.TransformationFactory('gdp.bigm').apply_to(model)
#
# Solve and print the solution
#
pyo.SolverFactory('glpk').solve(model, tee=True)
model.pprint()
for i in model.RECTANGLES:
print("Rectangle %s: (%s, %s)" % (i, pyo.value(model.x[i]), pyo.value(model.y[i])))
model.total_length.display()
WARNING: DEPRECATED: OrderedScalarSet OVERLAP_PAIRS: 'filter=' callback
signature matched (block, *value). Please update the callback to match the
signature (block, value). (deprecated in 6.8.0) (called from
/home/murraybj/CHE498/pyomo_jupyter_book/.venv/lib/python3.10/site-
packages/pyomo/core/base/disable_methods.py:124)
GLPSOL--GLPK LP/MIP Solver 5.0
Parameter(s) specified in the command line:
--write /tmp/tmp0j28vhms.glpk.raw --wglp /tmp/tmp40t_dwqy.glpk.glp --cpxlp
/tmp/tmp81ict0el.pyomo.lp
Reading problem data from '/tmp/tmp81ict0el.pyomo.lp'...
/tmp/tmp81ict0el.pyomo.lp:250: warning: lower bound of variable 'x12' redefined
/tmp/tmp81ict0el.pyomo.lp:250: warning: upper bound of variable 'x12' redefined
34 rows, 33 columns, 104 non-zeros
24 integer variables, all of which are binary
274 lines were read
Writing problem data to '/tmp/tmp40t_dwqy.glpk.glp'...
218 lines were written
GLPK Integer Optimizer 5.0
34 rows, 33 columns, 104 non-zeros
24 integer variables, all of which are binary
Preprocessing...
34 rows, 33 columns, 104 non-zeros
24 integer variables, all of which are binary
Scaling...
A: min|aij| = 1.000e+00 max|aij| = 3.000e+01 ratio = 3.000e+01
GM: min|aij| = 7.577e-01 max|aij| = 1.320e+00 ratio = 1.742e+00
EQ: min|aij| = 5.958e-01 max|aij| = 1.000e+00 ratio = 1.679e+00
2N: min|aij| = 5.000e-01 max|aij| = 1.000e+00 ratio = 2.000e+00
Constructing initial basis...
Size of triangular part is 34
Solving LP relaxation...
GLPK Simplex Optimizer 5.0
34 rows, 33 columns, 104 non-zeros
0: obj = 6.000000000e+00 inf = 4.750e+00 (7)
8: obj = 8.000000000e+00 inf = 0.000e+00 (0)
OPTIMAL LP SOLUTION FOUND
Integer optimization begins...
Long-step dual simplex will be used
+ 8: mip = not found yet >= -inf (1; 0)
+ 22: >>>>> 1.100000000e+01 >= 8.000000000e+00 27.3% (6; 0)
+ 45: mip = 1.100000000e+01 >= tree is empty 0.0% (0; 15)
INTEGER OPTIMAL SOLUTION FOUND
Time used: 0.0 secs
Memory used: 0.1 Mb (95163 bytes)
Writing MIP solution to '/tmp/tmp0j28vhms.glpk.raw'...
76 lines were written
2 Set Declarations
OVERLAP_PAIRS : Size=1, Index=None, Ordered=Insertion
Key : Dimen : Domain : Size : Members
None : 2 : Any : 6 : {(0, 1), (0, 2), (0, 3), (1, 2), (1, 3), (2, 3)}
RECTANGLES : Size=1, Index=None, Ordered=Insertion
Key : Dimen : Domain : Size : Members
None : 1 : Any : 4 : {0, 1, 2, 3}
4 Param Declarations
Length : Size=4, Index=RECTANGLES, Domain=Any, Default=None, Mutable=False
Key : Value
0 : 6
1 : 8
2 : 5
3 : 3
LengthUB : Size=1, Index=None, Domain=Any, Default=None, Mutable=False
Key : Value
None : 22
StripWidth : Width of the strip
Size=1, Index=None, Domain=Any, Default=None, Mutable=False
Key : Value
None : 10
Width : Size=4, Index=RECTANGLES, Domain=Any, Default=None, Mutable=False
Key : Value
0 : 6
1 : 3
2 : 4
3 : 2
3 Var Declarations
MaxLength : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 11.0 : None : False : False : NonNegativeReals
x : rectangle corner x-position (position down length)
Size=4, Index=RECTANGLES
Key : Lower : Value : Upper : Fixed : Stale : Domain
0 : 0 : 0.0 : 22.0 : False : False : Reals
1 : 0 : 0.0 : 22.0 : False : False : Reals
2 : 0 : 6.0 : 22.0 : False : False : Reals
3 : 0 : 8.0 : 22.0 : False : False : Reals
y : rectangle corner y-position (position across width)
Size=4, Index=RECTANGLES
Key : Lower : Value : Upper : Fixed : Stale : Domain
0 : 0 : 4.0 : 4 : False : False : Reals
1 : 0 : 0.0 : 7 : False : False : Reals
2 : 0 : 3.0 : 6 : False : False : Reals
3 : 0 : 0.0 : 8 : False : False : Reals
1 Objective Declarations
total_length : Size=1, Index=None, Active=True
Key : Active : Sense : Expression
None : True : minimize : MaxLength
1 Constraint Declarations
strip_ends_after_last_rec : Size=4, Index=RECTANGLES, Active=True
Key : Lower : Body : Upper : Active
0 : -Inf : x[0] + 6 - MaxLength : 0.0 : True
1 : -Inf : x[1] + 8 - MaxLength : 0.0 : True
2 : -Inf : x[2] + 5 - MaxLength : 0.0 : True
3 : -Inf : x[3] + 3 - MaxLength : 0.0 : True
1 Block Declarations
_pyomo_gdp_bigm_reformulation : Size=1, Index=None, Active=True
1 Constraint Declarations
noOverlap_xor : Size=6, Index=Any, Active=True
Key : Lower : Body : Upper : Active
(0, 1) : 1.0 : noOverlap_disjuncts[0].binary_indicator_var + noOverlap_disjuncts[1].binary_indicator_var + noOverlap_disjuncts[2].binary_indicator_var + noOverlap_disjuncts[3].binary_indicator_var : 1.0 : True
(0, 2) : 1.0 : noOverlap_disjuncts[4].binary_indicator_var + noOverlap_disjuncts[5].binary_indicator_var + noOverlap_disjuncts[6].binary_indicator_var + noOverlap_disjuncts[7].binary_indicator_var : 1.0 : True
(0, 3) : 1.0 : noOverlap_disjuncts[8].binary_indicator_var + noOverlap_disjuncts[9].binary_indicator_var + noOverlap_disjuncts[10].binary_indicator_var + noOverlap_disjuncts[11].binary_indicator_var : 1.0 : True
(1, 2) : 1.0 : noOverlap_disjuncts[12].binary_indicator_var + noOverlap_disjuncts[13].binary_indicator_var + noOverlap_disjuncts[14].binary_indicator_var + noOverlap_disjuncts[15].binary_indicator_var : 1.0 : True
(1, 3) : 1.0 : noOverlap_disjuncts[16].binary_indicator_var + noOverlap_disjuncts[17].binary_indicator_var + noOverlap_disjuncts[18].binary_indicator_var + noOverlap_disjuncts[19].binary_indicator_var : 1.0 : True
(2, 3) : 1.0 : noOverlap_disjuncts[20].binary_indicator_var + noOverlap_disjuncts[21].binary_indicator_var + noOverlap_disjuncts[22].binary_indicator_var + noOverlap_disjuncts[23].binary_indicator_var : 1.0 : True
1 Block Declarations
relaxedDisjuncts : Size=24, Index=NonNegativeIntegers, Active=True
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[0] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[0] + 6 - x[1] - 28.0*(1 - noOverlap_disjuncts[0].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[0].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[1] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[1] + 8 - x[0] - 30.0*(1 - noOverlap_disjuncts[1].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[1].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[2] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[0] + 6 - y[1] - 10.0*(1 - noOverlap_disjuncts[2].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[2].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[3] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[1] + 3 - y[0] - 10.0*(1 - noOverlap_disjuncts[3].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[3].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[4] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[0] + 6 - x[2] - 28.0*(1 - noOverlap_disjuncts[4].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[4].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[5] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[2] + 5 - x[0] - 27.0*(1 - noOverlap_disjuncts[5].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[5].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[6] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[0] + 6 - y[2] - 10.0*(1 - noOverlap_disjuncts[6].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[6].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[7] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[2] + 4 - y[0] - 10.0*(1 - noOverlap_disjuncts[7].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[7].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[8] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[0] + 6 - x[3] - 28.0*(1 - noOverlap_disjuncts[8].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[8].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[9] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[3] + 3 - x[0] - 25.0*(1 - noOverlap_disjuncts[9].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[9].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[10] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[0] + 6 - y[3] - 10.0*(1 - noOverlap_disjuncts[10].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[10].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[11] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[3] + 2 - y[0] - 10.0*(1 - noOverlap_disjuncts[11].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[11].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[12] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[1] + 8 - x[2] - 30.0*(1 - noOverlap_disjuncts[12].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[12].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[13] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[2] + 5 - x[1] - 27.0*(1 - noOverlap_disjuncts[13].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[13].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[14] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[1] + 3 - y[2] - 10.0*(1 - noOverlap_disjuncts[14].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[14].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[15] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[2] + 4 - y[1] - 10.0*(1 - noOverlap_disjuncts[15].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[15].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[16] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[1] + 8 - x[3] - 30.0*(1 - noOverlap_disjuncts[16].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[16].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[17] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[3] + 3 - x[1] - 25.0*(1 - noOverlap_disjuncts[17].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[17].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[18] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[1] + 3 - y[3] - 10.0*(1 - noOverlap_disjuncts[18].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[18].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[19] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[3] + 2 - y[1] - 10.0*(1 - noOverlap_disjuncts[19].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[19].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[20] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[2] + 5 - x[3] - 27.0*(1 - noOverlap_disjuncts[20].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[20].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[21] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : x[3] + 3 - x[2] - 25.0*(1 - noOverlap_disjuncts[21].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[21].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[22] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[2] + 4 - y[3] - 10.0*(1 - noOverlap_disjuncts[22].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[22].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
_pyomo_gdp_bigm_reformulation.relaxedDisjuncts[23] : Active=True
1 Constraint Declarations
transformedConstraints : Size=1, Index=Any, Active=True
Key : Lower : Body : Upper : Active
('constraint[1]_0', 1, 'ub') : -Inf : y[3] + 2 - y[2] - 10.0*(1 - noOverlap_disjuncts[23].binary_indicator_var) : 0.0 : True
1 Block Declarations
localVarReferences : Size=1, Index=None, Active=True
1 Var Declarations
binary_indicator_var : Size=1, Index=UnindexedComponent_ReferenceSet, ReferenceTo=noOverlap_disjuncts[23].binary_indicator_var
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Declarations: binary_indicator_var
2 Declarations: transformedConstraints localVarReferences
2 Declarations: relaxedDisjuncts noOverlap_xor
1 Disjunct Declarations
noOverlap_disjuncts : Size=24, Index=Any, Active=False
noOverlap_disjuncts[0] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[0] + 6 - x[1] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[1] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[1] + 8 - x[0] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[2] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[0] + 6 - y[1] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[3] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[1] + 3 - y[0] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : True : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[4] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[0] + 6 - x[2] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : True : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[5] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[2] + 5 - x[0] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[6] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[0] + 6 - y[2] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[7] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[2] + 4 - y[0] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[8] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[0] + 6 - x[3] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[9] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[3] + 3 - x[0] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[10] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[0] + 6 - y[3] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[11] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[3] + 2 - y[0] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : True : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[12] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[1] + 8 - x[2] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[13] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[2] + 5 - x[1] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[14] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[1] + 3 - y[2] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : True : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[15] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[2] + 4 - y[1] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[16] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[1] + 8 - x[3] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : True : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[17] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[3] + 3 - x[1] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[18] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[1] + 3 - y[3] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[19] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[3] + 2 - y[1] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[20] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[2] + 5 - x[3] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[21] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : x[3] + 3 - x[2] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[22] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 0.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[2] + 4 - y[3] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : False : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
noOverlap_disjuncts[23] : Active=False
1 Var Declarations
binary_indicator_var : Size=1, Index=None
Key : Lower : Value : Upper : Fixed : Stale : Domain
None : 0 : 1.0 : 1 : False : False : Binary
1 Constraint Declarations
constraint : Size=1, Index={1}, Active=True
Key : Lower : Body : Upper : Active
1 : -Inf : y[3] + 2 - y[2] : 0.0 : False
1 BooleanVar Declarations
indicator_var : Size=1, Index=None
Key : Value : Fixed : Stale
None : True : False : False
1 LogicalConstraint Declarations
propositions : Size=0, Index={}, Active=False
Key : Body : Active
4 Declarations: indicator_var binary_indicator_var constraint propositions
1 Disjunction Declarations
noOverlap : Size=6, Index=OVERLAP_PAIRS, Active=False
Key : Disjuncts : Active : XOR
(0, 1) : ['noOverlap_disjuncts[0]', 'noOverlap_disjuncts[1]', 'noOverlap_disjuncts[2]', 'noOverlap_disjuncts[3]'] : False : True
(0, 2) : ['noOverlap_disjuncts[4]', 'noOverlap_disjuncts[5]', 'noOverlap_disjuncts[6]', 'noOverlap_disjuncts[7]'] : False : True
(0, 3) : ['noOverlap_disjuncts[8]', 'noOverlap_disjuncts[9]', 'noOverlap_disjuncts[10]', 'noOverlap_disjuncts[11]'] : False : True
(1, 2) : ['noOverlap_disjuncts[12]', 'noOverlap_disjuncts[13]', 'noOverlap_disjuncts[14]', 'noOverlap_disjuncts[15]'] : False : True
(1, 3) : ['noOverlap_disjuncts[16]', 'noOverlap_disjuncts[17]', 'noOverlap_disjuncts[18]', 'noOverlap_disjuncts[19]'] : False : True
(2, 3) : ['noOverlap_disjuncts[20]', 'noOverlap_disjuncts[21]', 'noOverlap_disjuncts[22]', 'noOverlap_disjuncts[23]'] : False : True
14 Declarations: RECTANGLES Width Length StripWidth LengthUB x y MaxLength OVERLAP_PAIRS strip_ends_after_last_rec total_length noOverlap noOverlap_disjuncts _pyomo_gdp_bigm_reformulation
Rectangle 0: (0.0, 4.0)
Rectangle 1: (0.0, 0.0)
Rectangle 2: (6.0, 3.0)
Rectangle 3: (8.0, 0.0)
total_length : Size=1, Index=None, Active=True
Key : Active : Value
None : True : 11.0