我们如何使用OptaPlanner 6解决许多问题?例如,在云平衡示例中,如果我们想将每个进程放在多台计算机/线程上,我们需要做什么?更像是并行执行流程。
答案 0 :(得分:2)
如果要在关系数据库中存储many2many关系,就像解决它一样:创建一个额外的类。
例如:在云平衡中,创建一个与Assignment
具有多重关系的类Process
以及与Computer
的多重关系。在课程安排中,情况已经如此:Course
和Period
/ Room
之间存在许多关系,由Lecture
班实现。
现在,有趣的是,在规划期间,many2many级实例的数量是可变的,因为意味着您的规划实体数量是可变的。在课程安排中,情况并非如此:每门课程都有固定数量的讲座(每个讲座都有一个indexInCourse),这些讲座在调用solve()之前初始化。
如果规划实体的数量是可变的:OptaPlanner 6.0就是为此而设计的(ScoreDirector
,Selector
,...)中有管道,但尚未测试。在未来的版本中,我们将添加这样的示例和集成测试以及压力测试......