我是optaplanner的新手,现在我专注于尝试理解项目作业调度。我尝试使用optaplanner手册中的示例数据来运行这个示例,如下图所示:
我对此示例中的域类有一些疑问:
如果有人可以帮助我创建像optaplanner发行版中的xml示例数据,我将非常感激,因为它将帮助我更快地理解这个示例。谢谢&问候。
答案 0 :(得分:2)
LocalResource属于特定项目,GlobalResource在项目之间共享。 因此,LocalResource只需担心同一项目中的其他作业也会被使用,而GlobalResource必须担心所有其他任务。
这是一个实施技巧。源和接收器工作基本上是虚拟的。由于项目可能并行启动多个作业,因此将SOURCE作业放在其前面,以获得单个根。同样结束:它可以以多个结束,因此在它之后放置一个SINK作业,以便有一个尾部。这样可以更容易,更快地确定完工时间等。
IIRC,releaseDate是我们开始第一份工作的第一个日期。例如:你必须创建一本书,但是你只能在下周一获得实际的最终内容,所以releaseDate是下周一(你不能在那个日期之前开始任何工作)。
criticalPathDuration是理论上的最小持续时间(如果我们可以愉快地忽略资源IIRC)。例如:如果工作A需要5天而工作B需要2天而B必须在A之后完成,则关键路径持续时间为7天。添加工作C需要1天,并且可以与其他人并行完成,不会影响到这一点。