2024年5月28日火曜日

Q x医師が、拘束のみで休日の25日、 26日と2日連続していま すが

 Q.

拘束のみで休日の25日、26日と2日連続している点が気になります。ただし、こちらも、実際の予定表にあるケースで、さらに、今回は、実際の予定表がこれと同じになっていますが、休日は拘束のみであれば連続していない方が望ましいです。


Ans.

実装しましたが、今回の例では、回避することが出来ず同じになります。

証明は、以下に示しますが、結論的には、予定をハード制約と考えると、物理的必然となるからです。

<実装>

以下が追加した制約になります。


<解>

依然として休日2連勤拘束のままです。

<ハード制約化>

言うことを聞かないときの最終手段は、ハード制約化です。ソフト制約のレベルを空白にするとハード制約となります。



<解>

すると次のようなエラーとなりました。この状態は、解がないことを示しています。解がない理由は、ハード制約同士に矛盾があるからです。矛盾要因は通常、複数あります。要因がヒントとして列挙されています。



特に、茶色枠部に着目します。クリックすると当該予定にマークが付き飛びます。


<解析>

以下の予定を見ると、X大医師の当直があり、なおかつ他の整形の先生方が両日共休みになっています。



他の整形の先生方は、全てハード予定休みであり、かつX大医師が2日共、宿・当直ですので、希望を出していないX先生が2日共、拘束勤務を行うしかない状況です。つまり、

■X先生が2日共、拘束をやる

選択一択しかありません。しかし、ハード制約で2連拘束休日禁止にしたので、矛盾となり解が存在しません。

以上、ハード制約化することにより、要因が列挙され原因が特定できました。

予定をセル毎に任意のレベルのソフト制約化すれば、回避できますが、予定はハード制約のまま、制約もソフト制約にしておいて、必要がある場合のみ上記のような解析を行うのが通常です。いずれにせよ、このシステムを使いこなすには、制約に対する深い理解が必要である、ということです。GUI操作自体は、誰でも出来ますが、エラーメッセージを理解して原因を理解するには、ハード制約とソフト制約を理解する必要があります。

また、今回追加実装した程度の制約追加は、造作ないことですので、ユーザ様ご自身が必要に応じて追加することも可能です。


0 件のコメント:

コメントを投稿