diff --git a/app/helpers/common_helper.py b/app/helpers/common_helper.py new file mode 100644 index 0000000..8f3da37 --- /dev/null +++ b/app/helpers/common_helper.py @@ -0,0 +1,5 @@ +def boolean_to_int(value: bool) -> int: + if value: + return 1 + else: + return 0 diff --git a/app/helpers/solver_helper.py b/app/helpers/solver_helper.py index 1a82079..f6ea4e4 100644 --- a/app/helpers/solver_helper.py +++ b/app/helpers/solver_helper.py @@ -3,6 +3,8 @@ from random import randint, sample import logging +from helpers.common_helper import * + from models.bundle import Bundle from models.solver_run import SolverRun from models.item import Item @@ -26,7 +28,7 @@ def build_constraints(solver_run: SolverRun, problem: LpProblem, logging.info('Metadata Constraint Generating...') con = dict( zip([item.id for item in solver_run.items], [ - item.attribute_exists(attribute) + boolean_to_int(item.attribute_exists(attribute)) for item in solver_run.items ])) problem += lpSum(