Ans.
ナーススケジューリング問題は、精緻な制約の積み重ねで成り立っています。新しくプロジェクトを始める場合は、ステップバイステップ、一つ制約を書いて確認、一つ制約を書いて確認...をしながら構築していきましょう。大事なことなので、もう一度書きます。一つ制約を書いて確認、一つ制約を書いて確認.
次は、頂いたプロジェクトの状態です。赤のメッセージがあるので、「解がない」状態であることが分かります。
●次の組み合わせが充足していません。
● 列制約全体.長日勤は4人 2024-12-29
● 列制約全体.入りは4人 2024-12-14
● 列制約全体.入りは4人 2024-12-21
● 列制約全体.明けは4人 2024-12-15
● 列制約全体.明けは4人 2024-12-22
● 列制約全体.平日日勤者5名以上 2024-12-11
● 列制約全体.平日日勤者5名以上 2024-12-12
● 列制約全体.平日日勤者5名以上 2024-12-17
● 列制約全体.休日日勤者3名以上 2024-12-28
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.休日・夏季・正月休暇回数
● 平準化絶対的制約.入り回数
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
● 行制約同数カウントグループ2.長日勤=入り
次に行うことは、制約グループのチェックをオフにしてみます。
具体的には、列制約グループのチェックをオフにして求解してみます。
列制約内にハード制約が矛盾要因となっていることが分かりました。
解は、ありました。
解のソフトエラー部(黄色)は、最小夜勤回数を満たしていません。エラーは、全て設定夜勤回数を下回っています。設定夜勤回数を下回っているということは、人余り方向のエラーであるということです。今回Aチームのみ発生しているので、原因は、
0 件のコメント:
コメントを投稿