【发布时间】:2019-06-30 18:43:48
【问题描述】:
最近,我一直在尝试了解一些关于 CPLEX 的知识,并希望有人可以帮助我理解解决整数与二进制约束时的复杂性。
例如,假设我们试图分配一个大约 10 人的馅饼以获得最大效用,其中每个人的效用与他们收到的馅饼数量成线性关系。但是,我们要引入至少 3 人必须得到一点馅饼的约束。
将其视为单个整数约束(number_of_people_with_pie >= 3)与 10 个二进制变量(person_1_has_pie + person_2_has_pie + ... person_10_has_pie >= 3)之间有什么区别?我想前者是最简单的,但想知道用二进制变量形成问题是否有任何好处?
除此之外,任何推荐阅读以更好地理解 MIP 和 CPLEX 将不胜感激,特别是在更好地理解问题在哪里变成 NP 或在什么情况下单纯形难以找到全局最小值时。
谢谢!
【问题讨论】:
-
在大多数情况下,最好选择使模型最简单的表示。复杂性并不是其中的一个重要因素。
标签: optimization linear-programming cplex mixed-integer-programming