1

我按照示例在 MIP 的 control(branch) 回调中使用make_branch()进行分支。但我注意到,在变量选择策略的不同设置下,求解过程出人意料地不同。自从我用自己的决定替换了所有 CPLEX 的决定后,这怎么可能?

4

1 回答 1

1

CPLEX 无法判断您是否要从回调中查询其分支决策。因此,在调用回调之前,CPLEX 计算它将在哪些变量上分支,以便可以将此信息报告给回调。

即使您从未查询此信息,它仍然会被计算,并且计算该信息可能会改变其余的执行,从而导致不同的搜索树。

于 2020-02-20T14:15:49.300 回答