fix trailing whitespace
This commit is contained in:
@ -62,24 +62,35 @@ class LoftService(Base):
|
||||
problem = LpProblem("ata-form-generate", LpMinimize)
|
||||
|
||||
# constraints
|
||||
problem += lpSum([used[i]*items[i]
|
||||
for i in items]) == self.solver_run.total_form_items
|
||||
|
||||
problem += lpSum([items[item.id]
|
||||
for item in self.solver_run.items]) == self.solver_run.total_form_items, 'Total form items'
|
||||
|
||||
for constraint in self.solver_run.constraints:
|
||||
con = dict(zip([item.id for item in self.solver_run.items],
|
||||
[item.attribute_exists(constraint.reference_attribute.id, constraint.reference_attribute.value)
|
||||
for item in self.solver_run.items]))
|
||||
problem += lpSum([con[item.id]
|
||||
* items[item.id]
|
||||
for item in self.solver_run.items]) >= round(self.solver_run.total_form_items * (constraint.minimum / 100)), f'{constraint.reference_attribute.id} - {constraint.reference_attribute.value} - min'
|
||||
problem += lpSum([con[item.id]
|
||||
* items[item.id]
|
||||
for item in self.solver_run.items]) <= round(self.solver_run.total_form_items * (constraint.maximum / 100)), f'{constraint.reference_attribute.id} - {constraint.reference_attribute.value} - max'
|
||||
|
||||
# multi-objective functions and constraints
|
||||
for target in self.solver_run.objective_function.tif_targets:
|
||||
tif = lpSum([item.iif(self.solver_run, target.theta)*items[item.id]
|
||||
for item in self.solver_run.items])
|
||||
problem += lpSum([item.iif(self.solver_run, target.theta)*items[item.id]
|
||||
for item in self.solver_run.items]) <= target.value
|
||||
for item in self.solver_run.items]) <= target.value, f'min tif theta ({target.theta}) target value {target.value}'
|
||||
problem_objection_functions.append(tif)
|
||||
|
||||
for target in self.solver_run.objective_function.tcc_targets:
|
||||
tcc = lpSum([item.irf(self.solver_run, target.theta)*items[item.id]
|
||||
for item in self.solver_run.items])
|
||||
problem += lpSum([item.irf(self.solver_run, target.theta)*items[item.id]
|
||||
for item in self.solver_run.items]) <= target.value
|
||||
for item in self.solver_run.items]) <= target.value, f'min tcc theta ({target.theta}) target value {target.value}'
|
||||
problem_objection_functions.append(tcc)
|
||||
|
||||
|
||||
# solve problem
|
||||
problem.sequentialSolve(problem_objection_functions)
|
||||
|
||||
|
Reference in New Issue
Block a user