Implement ConstraintFeatures.__getitem__

This commit is contained in:
2021-05-15 09:38:00 -05:00
parent 83c46d70a3
commit 53d3e9d98a
2 changed files with 66 additions and 0 deletions

View File

@@ -7,6 +7,7 @@ from miplearn.features import (
InstanceFeatures,
Constraint,
VariableFeatures,
ConstraintFeatures,
)
from miplearn.solvers.gurobi import GurobiSolver
from miplearn.solvers.tests import (
@@ -89,3 +90,43 @@ def test_knapsack() -> None:
lazy_constraint_count=0,
),
)
def test_constraint_getindex() -> None:
cf = ConstraintFeatures(
names=("c1", "c2", "c3"),
rhs=(1.0, 2.0, 3.0),
senses=("=", "<", ">"),
lhs=(
(
("x1", 1.0),
("x2", 1.0),
),
(
("x2", 2.0),
("x3", 2.0),
),
(
("x3", 3.0),
("x4", 3.0),
),
),
)
assert_equals(
cf[True, False, True],
ConstraintFeatures(
names=("c1", "c3"),
rhs=(1.0, 3.0),
senses=("=", ">"),
lhs=(
(
("x1", 1.0),
("x2", 1.0),
),
(
("x3", 3.0),
("x4", 3.0),
),
),
),
)