mirror of
https://github.com/ANL-CEEESA/MIPLearn.git
synced 2025-12-06 09:28:51 -06:00
Make Sample abstract; create MemorySample
This commit is contained in:
@@ -11,7 +11,7 @@ from miplearn.classifiers import Classifier
|
||||
from miplearn.classifiers.threshold import MinProbabilityThreshold
|
||||
from miplearn.components import classifier_evaluation_dict
|
||||
from miplearn.components.dynamic_lazy import DynamicLazyConstraintsComponent
|
||||
from miplearn.features.sample import Sample
|
||||
from miplearn.features.sample import Sample, MemorySample
|
||||
from miplearn.instance.base import Instance
|
||||
from miplearn.solvers.tests import assert_equals
|
||||
|
||||
@@ -22,13 +22,13 @@ E = 0.1
|
||||
def training_instances() -> List[Instance]:
|
||||
instances = [cast(Instance, Mock(spec=Instance)) for _ in range(2)]
|
||||
samples_0 = [
|
||||
Sample(
|
||||
MemorySample(
|
||||
{
|
||||
"lazy_enforced": {"c1", "c2"},
|
||||
"instance_features_user": [5.0],
|
||||
},
|
||||
),
|
||||
Sample(
|
||||
MemorySample(
|
||||
{
|
||||
"lazy_enforced": {"c2", "c3"},
|
||||
"instance_features_user": [5.0],
|
||||
@@ -53,7 +53,7 @@ def training_instances() -> List[Instance]:
|
||||
}
|
||||
)
|
||||
samples_1 = [
|
||||
Sample(
|
||||
MemorySample(
|
||||
{
|
||||
"lazy_enforced": {"c3", "c4"},
|
||||
"instance_features_user": [8.0],
|
||||
|
||||
@@ -10,14 +10,14 @@ from numpy.testing import assert_array_equal
|
||||
|
||||
from miplearn.classifiers import Regressor
|
||||
from miplearn.components.objective import ObjectiveValueComponent
|
||||
from miplearn.features.sample import Sample
|
||||
from miplearn.features.sample import Sample, MemorySample
|
||||
from miplearn.solvers.learning import LearningSolver
|
||||
from miplearn.solvers.pyomo.gurobi import GurobiPyomoSolver
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def sample() -> Sample:
|
||||
sample = Sample(
|
||||
sample = MemorySample(
|
||||
{
|
||||
"mip_lower_bound": 1.0,
|
||||
"mip_upper_bound": 2.0,
|
||||
|
||||
@@ -12,7 +12,7 @@ from miplearn.classifiers import Classifier
|
||||
from miplearn.classifiers.threshold import Threshold
|
||||
from miplearn.components import classifier_evaluation_dict
|
||||
from miplearn.components.primal import PrimalSolutionComponent
|
||||
from miplearn.features.sample import Sample
|
||||
from miplearn.features.sample import Sample, MemorySample
|
||||
from miplearn.problems.tsp import TravelingSalesmanGenerator
|
||||
from miplearn.solvers.learning import LearningSolver
|
||||
from miplearn.solvers.tests import assert_equals
|
||||
@@ -20,7 +20,7 @@ from miplearn.solvers.tests import assert_equals
|
||||
|
||||
@pytest.fixture
|
||||
def sample() -> Sample:
|
||||
sample = Sample(
|
||||
sample = MemorySample(
|
||||
{
|
||||
"var_names": ["x[0]", "x[1]", "x[2]", "x[3]"],
|
||||
"var_categories": ["default", None, "default", "default"],
|
||||
|
||||
@@ -11,7 +11,7 @@ from numpy.testing import assert_array_equal
|
||||
from miplearn.classifiers import Classifier
|
||||
from miplearn.classifiers.threshold import Threshold, MinProbabilityThreshold
|
||||
from miplearn.components.static_lazy import StaticLazyConstraintsComponent
|
||||
from miplearn.features.sample import Sample
|
||||
from miplearn.features.sample import Sample, MemorySample
|
||||
from miplearn.instance.base import Instance
|
||||
from miplearn.solvers.internal import InternalSolver, Constraints
|
||||
from miplearn.solvers.learning import LearningSolver
|
||||
@@ -22,7 +22,7 @@ from miplearn.types import (
|
||||
|
||||
@pytest.fixture
|
||||
def sample() -> Sample:
|
||||
sample = Sample(
|
||||
sample = MemorySample(
|
||||
{
|
||||
"constr_categories": [
|
||||
"type-a",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
import numpy as np
|
||||
|
||||
from miplearn.features.extractor import FeaturesExtractor
|
||||
from miplearn.features.sample import Sample
|
||||
from miplearn.features.sample import Sample, MemorySample
|
||||
from miplearn.solvers.internal import Variables, Constraints
|
||||
from miplearn.solvers.gurobi import GurobiSolver
|
||||
from miplearn.solvers.tests import assert_equals
|
||||
@@ -19,7 +19,7 @@ def test_knapsack() -> None:
|
||||
model = instance.to_model()
|
||||
solver.set_instance(instance, model)
|
||||
extractor = FeaturesExtractor()
|
||||
sample = Sample()
|
||||
sample = MemorySample()
|
||||
|
||||
# after-load
|
||||
# -------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user