ナーススケジューリングの場合は、シフトがKeyでした。一方、アルバイトの場合は、時間毎の場合が殆どで、シフトという明確な概念がない場合もあります。この対応をどうするかということを解決する必要があります。
で、シフトとフェーズの対応を考えたのが次です。フェーズとシフトは無数とも言える対応が可能ですが、予めフェーズ数に応じてシフトとの対応を定義しておきます。こうすると、これをベースに考えるように自然に誘導出来ます。(シフトとフェーズの対応は意外に難しく、何かテンプレートがあった方がよいようです。私自身、記述してみてシフトを使わずにフェース変数で記述してみたのですが、
シフトを使った方が自然な考え方のような気がしています。制約のデザインパターンと言うべきかもしれません。)
こうしたテンプレートを用意しておくことで、見かけ上記述が
簡単にでき、Excel上で、日毎のスタッフ要求数の表を用意するだけで、そのまま使えるようになります。(実際は、制約があって、自動割り当てとするには、あれこもこれもは..後から行制約として記述しないといけないのですが。それは、ユーザが追加することになります。シフトとして行制約として記述してもよいし、それでも足りなければフェーズ変数を定義することもでき,さらに、それでも足りなければPython..と無限の拡張記述能力を持つことががSC3の特徴です。)
| 1Phases | ||||||
| 1 | □ | |||||
| 2 | ||||||
| 2Phases | ||||||
| 1 | □ | □ | ||||
| 2 | □ | |||||
| 3 | □ | |||||
| 4 | ||||||
| 3Phases | ||||||
| 1 | □ | □ | □ | |||
| 2 | □ | □ | ||||
| 3 | □ | □ | ||||
| 4 | □ | |||||
| 5 | □ | |||||
| 6 | □ | |||||
| 7 | ||||||
| 4Phases | ||||||
| 1 | □ | □ | □ | □ | ||
| 2 | □ | □ | □ | |||
| 3 | □ | □ | □ | |||
| 4 | □ | □ | ||||
| 5 | □ | □ | ||||
| 6 | □ | □ | ||||
| 7 | □ | |||||
| 8 | □ | |||||
| 9 | □ | |||||
| 10 | □ | |||||
| 11 | ||||||
| 5Phases | ||||||
| 1 | □ | □ | □ | □ | □ | |
| 2 | □ | □ | □ | □ | ||
| 3 | □ | □ | □ | □ | ||
| 4 | □ | □ | □ | |||
| 5 | □ | □ | □ | |||
| 6 | □ | □ | □ | |||
| 7 | □ | □ | ||||
| 8 | □ | □ | ||||
| 9 | □ | □ | ||||
| 10 | □ | □ | ||||
| 11 | ||||||
| 6Phases | ||||||
| 1 | □ | □ | □ | □ | □ | □ |
| 2 | □ | □ | □ | □ | □ | |
| 3 | □ | □ | □ | □ | □ | |
| 4 | □ | □ | □ | □ | ||
| 5 | □ | □ | □ | □ | ||
| 6 | □ | □ | □ | □ | ||
| 7 | □ | □ | □ | |||
| 8 | □ | □ | □ | |||
| 9 | □ | □ | □ | |||
| 10 | □ | □ | □ | |||
| 11 | □ | □ | ||||
| 12 | □ | □ | ||||
| 13 | □ | □ | ||||
| 14 | □ | □ | ||||
| 15 | □ | □ | ||||
| 16 |
0 件のコメント:
コメントを投稿