我对使用7.2.0的optaplanner来说还是个新手。我有一个关于车辆路线规划的链子的问题。
它是否要求影子变量需要一个注释@planningentity,即使它是一个问题事实?
举个例子:我有技术和工作要分配给技术人员。对我来说,技术(问题事实)需要分配给我的工作(计划),因为它与VRP密切相关。我遵循链接(与工作和技术形式的链与技术是锚)。
我看到了有关影子变量的文档。我的问题是,"ProblemFact“POJO是否可以定义为规划实体,并且仍然合法?
发布于 2017-10-11 15:21:25
阴影变量是字段或属性(=getter/setter)。一个问题的事实是一个类。规划实体也是类(这不是一个问题,事实和签证相反)。
所以,我想问题是:“我能有一个问题事实类型的影子变量吗?”答案是,是,。
发布于 2020-07-08 18:03:59
不是的。ProblemFacts是不响应于PlanningVariables更改而更改的类,因此可以在工作解决方案之间重用。
PlanningEntities是响应于PlanningVariables更改而进行更改的类,因此需要为每个工作解决方案提供一个单独的克隆。
ShadowVariable是响应PlanningVariable变化而变化的变量。如果一个类包含一个ShadowVariable,这意味着它对一个PlanningVariable的响应会发生变化,因此需要对每个工作解决方案进行克隆,并对一个PlanningEntity进行克隆。
如果将ShadowVariable放在ProblemFact上,我相信它在运行时会失败。
https://stackoverflow.com/questions/46691472
复制相似问题