我找不到在 CPLEX java API 中有效使用 MIP 启动的方法。
我有一个线性问题,我需要通过仅更改一个约束或更改目标来解决多次,因此我认为从解决方案开始(使用 MIP 启动)可能是加快计算速度的好方法。
因此,为了做到这一点,在我第一次解决问题后,我将所有变量保存在一个 IloNumVar 数组中,并使用 cplex.addMIPStart 将其加倍传递给我的其他 cplex 对象。
问题是它并没有加快任何速度,而是让它变慢并给我这个消息:
警告:从 1 个 MIP 开始没有找到解决方案。
所以也许我不应该给 MIP 启动所有变量,但我怎么知道要给它什么变量?
我也试图改变 MIP 启动努力,但它似乎没有任何区别......
为什么它不能使计算更快?有没有更好的方法来解决只有一些差异的许多问题?