1
我們如何使用OptaPlanner 6解決許多問題?例如,在雲平衡示例中,如果我們想要將每個進程放在多臺計算機/線程上,我們需要做什麼?更像是過程的並行執行。如何使用OptaPlanner解決多對多的關係?
我們如何使用OptaPlanner 6解決許多問題?例如,在雲平衡示例中,如果我們想要將每個進程放在多臺計算機/線程上,我們需要做什麼?更像是過程的並行執行。如何使用OptaPlanner解決多對多的關係?
如果您想在關係數據庫中存儲many2many關係,請使用與解決該問題相同的方法:創建一個額外的Class。
例如:在雲平衡中,創建一個類別Assignment
,該類別與Process
有許多關係,並與Computer
有許多關係。在課程安排中,情況已經如此:Course
和Period
/Room
之間有很多關係,這是由類Lecture
實施的。
現在,它變得有趣的是,如果在規劃期間many2many級實例的數量是可變的,因爲這意味着您的計劃實體的數量是變量。在課程安排中,情況並非如此:每個課程都有固定數量的講座(每個講座都有一個indexInCourse),這些講座在調用solve()之前被初始化。
如果計劃實體的數量是可變的:OptaPlanner 6.0是爲此設計的(有管道,Selector
,...),但尚未測試。在未來的版本中,我們將添加這樣一個示例和集成測試和壓力測試...
有一點可以直接支持many2many關係,就像hibernate一樣。所以'課程'有一個'列表'(和'期間'可能有一個'列表'甚至)。隨意爲此提出一個jira。 –