Optaplanner定制的几个疑惑

A couple of Optaplanner customizacion doubts

我一直在评估 Optaplanner 与 optashift,最后(由于部署错误和 Openshift 依赖性)我决定使用 Optaplanner,尽管我可能不得不处理我不熟悉的 Drool。

我一直在玩弄 Optaplanner 项目,我需要 implement/parameter 两个尚未找到处理方法的功能。

1.- 我有一个复杂的工作班次(6 个工作日,2 个休息日,6 个工作日,2 个休息日,6 个工作日和 3 个休息日)。这可以在 import.xml 的 Pattern/PatternEntry 部分进行参数化吗?如果我可以在某处说明总工作班次为 25 天,也许我可以假设 6+2 个周期(所以它应该是 6+2+6+2+6+2,然后第 25 天有 1 个空闲日)。

2.- 我还必须考虑他们在 'continue' 6,2,6,2,6,3 模式之前的 27 天做了什么,但我不知道如何去做这个。我想我应该为每个工人分配一个变量,以便指定 27 周期的哪一天应该开始。例如,iDayOfShift = 0 工人在第 27 个工作日的第一天重新开始,但如果 iDayOfShift = 8 则意味着他正在开始第二个 6 个工作日的工作日。这也可以配置为 import.xml 中员工信息的一部分吗?

optashift-employee-rostering 正处于非常活跃的开发阶段,目前 master 往往不稳定(2018 年 3 月)。这会变得更好 - 罗马不是一天建成的。

听起来像 1) 比 "a pattern matching" 更像 "a rotation matching",在 optashift 中看看如何使用 Employee.rotationEmployee。

2)我不明白。但这就是 optashift-employee-rostering 在接下来的几个月里正在建设的目标: