【发布时间】:2020-06-30 21:33:38
【问题描述】:
我是混合整数编程的新手。我之前使用过 gurobi 工具来构建这个模型。但由于成本原因,我想切换到 or-tools,但我无法执行相同的逻辑。
我要解决的问题是最小化变量总和的差异。
换句话说,我有员工,我想按时间表平均分配他们,以确保他们的分配对每个人都公平。
所以我按照以下步骤构建了我的模型:
1- 为每天每个班次的每位员工创建 IntVar。 2- 我添加了一个约束,即每个员工每天都应该轮班
现在我希望我的模型能够解决每个员工参加的便便次数的总和,并尝试最小化员工参加的最小轮班和最大轮班之间的差异。
这可以通过多种方式实现
1-得到linearExpr的最小值和最大值(雇员的总和)并最小化差异 2- 或 , 平均班次与每位员工参加的每个班次之间差异的绝对总和。
很遗憾,我无法为此找到最大、最小或绝对实现。
如果你们有一个建议我可以做到这一点,请解释一下。
谢谢
【问题讨论】:
标签: python c# linear-programming or-tools mixed-integer-programming