Optaplanner和实时重新规划,无需简单的备份规划,最大限度地减少更改



如果我有以下情况 - 一种以车辆路线为模型的"旅行技术人员"问题,但不是车辆,而是技术人员前往现场。

我们希望:

  • 为未来一周制定计划
  • 将该计划发送给每个技术人员和站点,包括访问者,原因和时间

到目前为止一切正常,我们生成本周的计划。

但周二,一名技术人员打电话生病(或在11:30,技术人员的车抛锚了)。假设我们没有备份(因此简单的备份计划将不起作用)。如何重做计划以尽量减少任何更改?基本上保留原始计划约束,但添加一个约束,奖励尽可能接近原始计划并最大限度地减少我们打扰的客户数量。

是的,基本上每个实体都有一个额外的字段,用于保存原始计划变量值。该额外字段本身不是计划变量。然后你添加规则,说如果plannign变量!=原始值,它会造成一定的软成本。软成本越高,您的日程安排波动性越小。软成本越低,您的日程安排就越灵活,以适应新情况。

有关示例实现,请参阅计算机重新分配示例。这实际上有3种类型的软成本。

最新更新