2014年3月17日月曜日

5日連続日勤を回避するには?

5日連続勤務(特に日勤)は、夜勤ナースにとってかなりきついらしいです。
そこで、
  1. 勤務は最大で4日連続
という制約について、物理的に配置可能かスケジュールナースを使って調べてみました。結論的には、ご提示頂いた条件で、殆どの月は初期割り当てなしという条件化で配置可能でしたが、一部配置不可能な月がありました。(公休日が少ない6月が難しい、ただし、毎年配置不能という訳ではなさそう。)

スケジュールナースで、タイムアウトが出ていないときは、厳密解です。この場合タイムアウトは出ていませんでしたので物理的に配置不可能な場合が存在する、という結論です。

解決案としては、二つあり
  1. 最大の努力をし配置不能のときは諦める(最大5日も可とする。配置不能の数を最小にするソフト制約)
  2. 年休を割り当てる(配置できないときは、年休を割り当て最大4日連続をKeepする)
があります。スケジュールナースでは、どちらも制約プログラミング可能です。

まず、1からプログラムしましょう。

5日連続勤務を不可とし、それをソフト制約とすればよさそうです。

”不可”=最大でその数が0

であるので、xを休みとすると、なんらかの勤務はその否定!xになります。
5日連続勤務は、

!x!x!x!x!x 最大数 0

という制約になります。これをソフト制約とすればよいのです。
(勤務表ソフト、スケジュールナースは、制約プログラミングでスケジュール制約を記述します。)

職場は、ICUです。
結構、スタッフ希望と予定を入れても組めるようですね。

勤務表ソフト、スケジュールナースで自動作成した結果は下図です。

ちゃんと4日MAXになっています。この求解に要した時間は3秒でした。





0 件のコメント:

コメントを投稿