Q.以下の組み合わせの夜勤ペアを禁止したい
水越智哉 と 新人
水越智哉 と 徳重駿介
水越智哉 と 杉村青空
水越智哉 と 水野真吾
徳重駿介 と 杉村青空
Ans.
禁止したいペアの集合を作って、最大スタッフ数≦1 とすればよいです。
ただし、水越智哉さん 徳重駿介さん 杉村青空さんの3人については、どの二人を選んでも禁止であることに注意して記述します。(夜勤禁止ペアCで記述)
また、水越さんは、その他に新人や、水野さんともペア禁止であるので、属性を増やして記述する必要があります。
1)グループ定義で、青部記述を追加します。
新たに、弱めの重みの4で制約しましたが、今回禁止したペアでのエラーはありません。
今回は、使っていない禁止ペア集合もあります。新たに禁止ペアを追加したくなった場合にご活用ください。
このように、スタッフ個人名ではなく、スタッフプロパティシートで抽象化して実装すると、メンテナンス上好ましいです。(退職したり、新たに追加したりするときは、スタッフプロパティシートをメンテするだけでよい。)
一般に、禁止ペアは、解空間を狭める割合が小さく、多くのペアを禁止しても障害にはならないようです。
0 件のコメント:
コメントを投稿