2

我一直在寻找一个明显比我最初想象的更不寻常的问题的解决方案。Optaplanner 看起来很有前途,但相对缺乏 Java 经验,我想在深入研究之前调查这是否完全不可能。

我正在尝试为 n 名员工安排任务。这里的主要区别在于,目的是让所有员工在任何特定时间都保持忙碌。完成任务所需的时间在很大程度上是次要的。这形成了具有以下变体的装箱/作业车间问题:

  • 一维
  • 任务之间的“相互关系”。例如,一项任务在开始之前可能依赖于另一项完成,而该任务可能归属于不同的工作人员
  • 每个任务只能归于某些人
  • 在任何给定时间跨箱的最小值将被最大化

据此,我认为任务所需的输入将是“最早开始时间”、“最晚完成时间”、“持续时间”、“与其他任务的链接”、“合适的工作人员”。然后任务应该落入每个员工的垃圾箱 - 就像俄罗斯方块一样!

这显然是我阅读的调度示例的一个转折点。你认为这是可以实现的吗?您是否会推荐任何预先存在的示例(手册中没有一个完全匹配)?

任何朝着正确方向的轻推将不胜感激 - 为这个问题的新手性质道歉。

4

1 回答 1

0

“让所有成员尽可能忙碌”约束听起来像是公平或负载平衡约束:请参阅此视频以了解如何实现它。

开始/结束时间听起来像 VRP 的时间窗口

于 2014-03-20T12:46:27.960 回答