2.2.2. プロジェクトファクトおよびプランニングエンティティー
従業員勤務表の計画問題の各ドメインクラスは、以下のいずれかに分類されます。
- 関連性のないクラス: どのスコア制約にも使用されません。計画に関して言えば、このデータは使用されません。
-
問題ファクト クラス: スコア制約に使用されますが、(問題が変わらない限り) 計画時には変化しません (例:
Shift
、Employee
)。問題ファクトクラスのプロパティーはすべて問題のプロパティーです。 プランニングエンティティークラス クラス: スコア制約に使用され、計画時に変化します (例:
ShiftAssignment
)。計画時に変更するプロパティーは プランニング変数 です。その他のプロパティーは問題プロパティーです。以下の点についてお考え下さい。
- 計画時にどのクラスを変更しますか?
Solver
で変更する変数はどのクラスにありますか?そのクラスが、プランニングエンティティーです。
プランニングエンティティークラスは、
@PlanningEntity
アノテーションでアノテートする必要があります。または、ドメインデザイナーで Red Hat Business Optimizer ドックを使用して Business Central に定義する必要があります。各プランニングエンティティークラスには、1 つ以上の プランニング変数 があり、1 つ以上の定義プロパティーが必要です。
多くのユースケースには、プランニングエンティティークラスが 1 つだけあり、1 つのプランニングエンティティークラスに対してプランニング変数が 1 つだけ含まれます。