AIと最適化は、別物
AIを使えば、最適値が得られるのでしょうか?
実は、昨今の深層化学習によるAIによってシフトの最適値が得られるものではありません。
最適値を求めることと深層化学習AIとは、極論すると無関係です。
そもそもナーススケジューリング問題は、NP困難な問題であり、問題規模が大きくなれば、実用的な時間内に最適値を求めるのは、難しくなることがわかっている問題です。この種のベンチマーク世界記録は、大半をスケジュールナースが保持していますが、全くの別物であると言うことです。
何度も言いますが、看護師や介護士の勤務表スケジューリング問題は、世界最高の汎用MIPソルバGurobiを持ってしても未だに解くのが難しい問題です。深層化学習によって、最適値が得られるならば、とっくに各種ベンチマークは更新されているでしょう。
狭義的には、人工知能技術も使われている
私は、人工知能学会正会員であり、実際その技術をソルバに使っています。ですから、狭義的には、AI術を使っているとも言えなくはないのですが、昨今の深層化学習とは異なる分野なので、「AIを使ってシフト作成」とは言っていません。
一般の最適化技術は部分的に同じ技術を使っているので、最適化技術とAIは別物とも言い切れないところはあるのですが、少なくとも「深層化学習AIを使えば最適値が得られる」というものではありません。
最適化値とは?
ナーススケジューリング問題は、組み合わせ最適値問題の一種であり、言うなれば、砂漠の中の最適な一粒を見つけ出す作業です。
具体的なスケールは、もっと大きく、探索空間は、全宇宙の原子数よりもはるかに多いです。そのような空間中のたった一つの最適を求めるのが、最適化エンジンになります。
深層化学習の使いどころは?
「それではシフトでAIの使いどころはないのか?」ですが、有望なのは、モデリングです。
つまりどのように制約を記述したらよいのか、そのアシスト方法については、大いに見込みがあると思います。
しかし、ちょっと考えれば分かるのですが、過渡な期待は出来ません。例えば、土日休みというテーマがあったとして、
■土日に2連休
■土日のどちらかに休み
■土日以外に2連休
■土日以外に単発休み
という風に個人毎に好みが分かれるのではないでしょうか? で、それをAIが勝手に判断して割りあててくれる訳ではないのです。
個人毎に聞いてそれをコンピュータに設定する作業が必要になります。
それって、スケジュールナースのスタッフプロパティシートに記載するのと何が違うのでしょうか?
結局のところ、細かい部分では、コンピュータに入力しなくてはいけない、ということです。AIが皆さんの頭の中を勝手に読み取って設定してくれるわけではないのです。