【发布时间】:2021-11-17 19:49:43
【问题描述】:
我使用 IBM CPLEX 为课程安排优化问题设置了代码。
决策变量是dvar boolean x[course][roomtype][timeslot];,如果课程在时间段 t 期间发生在房间类型 r 中,则 x 为 1。
该模型运行良好,适用于我尝试过的所有实例和场景。现在,对于一个新场景,我将时隙数从 46 个增加到 240 个,这将决策变量的总数增加到超过 200 万个,而不是大约 300,000 个。
现在,我仍然可以运行模型,运行时间稍长后,我得到了一个最佳解决方案。然而,我之前的分析过程是显示决策变量,对值为 1 的变量进行排序,然后将它们复制并粘贴到 Excel 中以供进一步分析。
这现在不可能了,因为 CPLEX 将在很长一段时间内不响应,然后从那时起不再让我做任何事情 (Limited extent of decision variable display)。我必须关闭程序并重新开始。
我认为问题出在 RAM 或整体内存上,因此我选择了我所在大学的云服务。但是即使手头有 128GB 的 RAM、12 核和 500GB 的内存也不够用,而且性能与我自己的私人笔记本电脑完全一样。
关于可能是什么问题或如何导出解决方案的任何建议?
CPLEX 是否存在变量限制导致无法解决?
提前非常感谢!
【问题讨论】:
标签: optimization cplex mixed-integer-programming integer-programming