作为我论文项目的一部分,我遇到了一个房屋建筑问题。总共有 17 个任务,有些任务需要先完成。还有 5 种不同的工人类型(建造者、建筑师等),每个任务需要不同类型和数量的工人。
我是 CPLEX OPL 的完整初学者,并且使用提供的教程,我能够最大限度地减少完成 17 个任务所花费的时间。为此,我使用了dvar intervals
和。endBeforeStart()
但是,我花了无数个小时试图将工人添加到我的问题中,但没有成功。这些例子只包括有名字的工人;但在我的问题中,我有不同类型的任务需要的工人,每种类型都有不同数量的工人可用。
如何将工作人员添加到我的问题中并以最佳方式将他们分配给每个任务?