问题描述
我正在尝试使用PuLP 2.3和CBC 2.10.3解决混合整数线性规划问题。 问题是最小化问题。有2个决策变量:A(连续)和B(二进制)。 可变计数为〜30.5K,约束计数为〜91.5K。 CBC求解器无法在约12小时内返回解决方案。为了克服运行时问题,我为CBC使用了多线程,线程数为8。解决方案在时间限制内运行,但每次迭代的结果都在不断变化。由于生成的输出无效,因此该解决方案非常不稳定且不正确。有时我们会获得具有最佳决策变量值的最优解的正确值,有时对于目标函数来说这些值完全不可用。
这是多线程可重复性问题的常见问题吗?
如果没有线程,可以使用什么来减少求解器的运行时间? 注意:当变量计数为〜2K并且约束计数为〜5K时,求解器可以正常工作,即使使用多线程,我也可以得到相同的解决方案。
有什么建议吗?
求解器的代码段:
solver = pulp.PULP_CBC_CMD(maxSeconds=Settings.model_runtime_max_seconds,gapRel=0.0001,msg=True,threads=self.threads,warmStart=False)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)