我正在尝试了解 Drools 的N Queens和Cloud Balancer示例。我深入研究了手册的第 3 章和第 4 章以及这两个示例的来源。
我(错误)理解
- 问题必须从未分配或非最佳状态开始
- 那么,问题事实和计划实体,即 POJO,必须被实例化
- CloudBalance 或 NQueens 等解决方案类必须了解问题事实和计划实体
问题 1:在示例中,规划实体和问题事实类的对象在哪里初始化?
例如,当我加载云平衡时,我看到:
2012 .. INFO Loaded: data/cloudbalancing/unsolved/cb-0002comp-0006proc.xml
这意味着将序列化格式转换为真实对象并输入解决方案,对吗?
问题2:规划实体在哪里处理?
那条评论是什么意思?当初是怎么处理的?
public Collection<? extends Object> getProblemFacts() {
List<Object> facts = new ArrayList<Object>();
facts.addAll(columnList);
facts.addAll(rowList);
// Do not add the planning entity's (queenList) because that will be done automatically