0

我尝试用 PuLP 和 CBC 解决 MILP 问题。

除了问题的其余部分,我面临一组正整数变量的问题。我有一个松弛约束,这意味着正整数变量中的一些变量由于约束而没有固定为某个值。

因此,换个说法,在一组正整数约束中,一些因约束而获得值,但是当这个相同的约束放松(大 M 松弛)时,其余变量不必获得某个值。

由 CBC 赋予他们价值。它们中的大多数变为 0,但其中一些得到变量上限的值,即 1440。这是为什么呢?CBC 是否随机地将这些值赋予这些变量?sovler 是否遵循任何规则?

如果您不明白某些内容,请告诉我,以便我添加信息或改写,我对此很陌生。谢谢你。

4

1 回答 1

1

我相信 CBC 求解器通常会进行“标准”B&B 搜索,在搜索树时求解一系列 LP 松弛。如果您正在使用其中一种单纯形法求解 LP,则该 LP 的搜索过程通常会在可行空间的表面上行走,因此其他约束不足的变量通常取其上限值或下限值.

于 2016-07-09T14:09:16.530 回答