用户削减和懒惰的约束是相似但有一些重要的区别。
- 用户削减帮助收紧松弛的MIP通过移除部分解决方案。他们不需要为模型,但他们可能帮助解决MIP更快。
- 懒惰的约束所需的模型,即,该模型是不正确的,如果没有这些约束。对于一些模型,这有助于指定一些约束懒惰时计算速度包括只有当它们违反了。一般来说,它们是用于模型包含相对较大数量的限制,其中大多数是非常满意。
用户削减
减少用户应该从来没有消除一个整数解,否则是可行的。因此,削减模型+所有可能的用户应该完全相同的整数可行解集模型没有用户削减。
懒惰的约束
相反,懒惰的约束通常是用于消除整数解,否则是可行的。添加延迟约束将影响的一组整数可行的解决方案。请注意,如果您添加延迟约束通过回调,你必须设置参数LazyConstraint= 1。否则,Gurobi可能应用双重presolve削减不懒惰的有效约束。
如果你设置LazyConstraint = 1没有添加任何延迟约束,那么Gurobi的算法行为会改变(由于隐式地禁用双presolve减少),但最佳的客观价值不应改变。
最后,请注意,您可以直接添加延迟约束模型和Gurobi治疗他们的懒惰通过设置懒惰属性在这些约束。在这种情况下,没有必要设置LazyConstraint参数。
评论
0评论
请登录留下你的评论。