年休といっても、スケジュールとして自動挿入する年休とスタッフ希望で取得する年休とは、違います。スケジュールして挿入する年休は、5日連続を回避するための年休なので、その数は、極小に抑える必要があります。(可能ならば0) 逆にそういう制約がないと年休だらけになってしまいます。
よって、スケジュールで生じる年休のラベルを”す”と表記することにしてラベルを分けます。
制約は、次のように記述しています。
休みxは、公休(Y)または、祝休(H)または、年休(y) または、スケジュールされた休み(h)になります。(一言で休みとは言っても、それぞれに制約式が異なるので、異なる名前をつけざるをえないのです。)
5日連続勤務がないことは、この場合MUSTですからソフト制約の列は空欄になります。
代わりにスケジュールされた休みをソフト制約としています。試しに、このソフト制約のチェック5を外して求解すると、下のように”す"でいっぱい入ってしまいます。前月で”す”が入っているのは、制約が効かないからです。
これではいけないので、やはりソフト制約5をEnableしてみると
ちゃんと最小化してくれて、”す”がない勤務表になりました。
今月は、たまたま、必要がありませんでしたが、この制約がないと、スタッフの希望や予定を入れたり、あるいは、休みの少ない月に”解がありません”、とスケジュールナースに言われる可能性があります。そうならないように、しっかり予防的制約を入れました。
ここまで、フレキシブルに対応できるのは、勤務表作成ソフト、スケジュールナースが、制約プログラミングを採用しているためだと思います。
0 件のコメント:
コメントを投稿