JP2004151790A - Nurse wopk schedule preparation support software or the like - Google Patents

Nurse wopk schedule preparation support software or the like Download PDF

Info

Publication number
JP2004151790A
JP2004151790A JP2002313544A JP2002313544A JP2004151790A JP 2004151790 A JP2004151790 A JP 2004151790A JP 2002313544 A JP2002313544 A JP 2002313544A JP 2002313544 A JP2002313544 A JP 2002313544A JP 2004151790 A JP2004151790 A JP 2004151790A
Authority
JP
Japan
Prior art keywords
work
nurse
evaluation
mutation
work schedule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002313544A
Other languages
Japanese (ja)
Inventor
Takeshi Inoue
武士 井上
Takeshi Furuhashi
武 古橋
Hiroshi Maeda
宏 前田
Minoru Takahane
実 高羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mie TLO Co Ltd
Original Assignee
Mie TLO Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mie TLO Co Ltd filed Critical Mie TLO Co Ltd
Priority to JP2002313544A priority Critical patent/JP2004151790A/en
Publication of JP2004151790A publication Critical patent/JP2004151790A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide software capable of fulfilling a complicate evaluation rule, and preparing a nurse work schedule in a relatively short period of time without getting into any local solution. <P>SOLUTION: This nurse work schedule preparation support software comprises a step 10 for displaying a picture for promoting the input of an evaluation rule including a skill level/service series/daily allocated service/required number of persons associated with each nurse, a step 12 for carrying out automatic calculation by a computer to fulfill the evaluation rule as much as possible, and for displaying a temporary solution on the picture after predetermined end conditions are fulfilled, and a step 14 for promoting a user to manually correct the temporary solution and a step 18 for updating the evaluation rule. Then, the user ends a work when it is decided that the outputted a work schedule candidate is finally prepared one in a step 16. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、看護師勤務表作成ソフトウエア等に関するものである。
【0002】
【従来の技術】
複数の看護師の勤務スケジュール(看護師勤務表)を作成する問題(看護師勤務表作成問題(Nurse Scheduling Problem: NSP)は、複数の評価規則(制約条件)を含んだ複雑な組合せ最適化問題である。一般に看護師勤務表は、月毎に各病棟の婦長によって作成される。この勤務表作成には、多くの時間と労力を必要とすることから、多忙な婦長にとって大きな負担となっている。この問題を解決するため、従来には遺伝的アルゴリズム(GeneticAlgorithm: GA)を用いた勤務表作成システム(山村、小林、山岸、阿瀬「遺伝的アルゴリズムによるナーススケジューリング」北野宏明 著 遺伝的アルゴリズムpp.89−125,1993)等が開発 されてきた。
【0003】
しかしながら、この従来システムは、婦長の人的負担を軽減することを目的として、全自動型アルゴリズムを採用していた。このため、かえって局所解に陥りやすく、婦長が満足する解を得るためには、何度も始めからやり直さなければならないという問題点があった(竹本「コンピュータを導入した看護師勤務表作成の現状と課題」看護管理Vol.3 No.1 pp38−42 1993)。
【0004】
そこで、本発明者らは、上記の問題点に対して検討を加えた結果、解探索の過程にユーザが関与しながら、ユーザとソフトウエアとが協調して勤務表作成を行う対話型看護師勤務表作成支援ソフトウエア及び、このソフトウエアを含むシステムを提案した(井上、古橋、前田、高羽「インタラクティブEAを用いたナーススケジューリング支援システムのためのEAエンジンに関する一考察」第16回ファジィシステムシンポジウム(秋田),9月6日〜8日,2000、講演集pp619−622)。このソフトウエアは、全自動型アルゴリズムではなく、解探索の過程で勤務表案がユーザ(例えば、婦長)に呈示され、これに対してユーザがこの勤務表案のデータに対して、修正及び/または一部固定等を行いながら、ユーザの求める勤務表案の作成を進める。このため、評価規則を充分に満足しないままでも、ユーザとソフトウエアとの協調により勤務表作成を進めることができる。勤務表案の修正時には評価規則の修正を行うことができる。このソフトウエアに用いたバクテリア進化的計算(Bacterial Evolutionary Algorithm:BEA)は、短い日数(例えば、3日間〜5日間)からなる勤務形態の改善には効果的である。しかしながら、各看護師の勤務負荷を一月にわたって平等に割付けることには工夫の余地が残されていた。
【0005】
【非特許文献1】山村、小林、山岸、阿瀬「遺伝的アルゴリズムによるナーススケジューリング」北野宏明著 遺伝的アルゴリズム pp.89−125, 1993
【非特許文献2】竹本「コンピュータを導入した看護師勤務表作成の現状と課題」看護管理Vol.3 No.1 pp38−42 1993
【非特許文献3】井上、古橋、前田、高羽「インタラクティブEAを用いたナーススケジューリング支援システムのためのEAエンジンに関する一考察」第16回ファジィシステムシンポジウム(秋田),9月6日〜8日,2000、講演集pp619−622
【0006】
【発明が解決しようとする課題】
本発明は、上記した事情に鑑みてなされたものであり、その目的は、複雑な評価規則を満足しつつ、局所解に陥ることなく、比較的短時間で看護師勤務表を作成することが可能なソフトウエアを提供することにある。
【0007】
【課題を解決するための手段】
本発明者らは、バクテリア進化的計算のみでは、長期間(例えば、二週間以上、約1ヶ月程度)に渡る看護師勤務表を平等に割り付けることが困難であるという問題点を解決するために鋭意検討を行った。その結果、▲1▼適当に発生させた親勤務表(「親個体」と表記することがある。)群に対して交叉演算を行い、▲2▼その交叉演算によって生成された子勤務表(「子個体」ということがある。)の交叉点近傍に対して、突然変異または/およびヒューリスティクスを適用することにより、所期の目的を達成することができることを見出し、基本的には本発明を完成するに至った。また、更に局所的な解に陥ることを防ぐために、勤務表全体に突然変異を発生させることにより、公平さを良好とすることができた。
【0008】
すなわち、本発明者らの検討によれば、交叉演算を勤務表全体に対する突然変異と組み合わせることにより、各看護師の一月の勤務負荷の均等化に対して効果が期待された。それでもなお、交叉演算によって、交叉点の前後の勤務形態が大きく崩れてしまうという問題点が残されてしまう。そこで、本発明者らは、更に交叉点の修復に看護師勤務表作成問題の性質を利用したヒューリスティックスを導入することで、交叉演算の適用を可能とし、局所解に陥らないで勤務表全体に対する探索を必要とする評価項目「勤務負荷の公平さ」に対しても効率的な探索手法を提供することができるに至った。
【0009】
上記の課題を解決するために第1の発明は、複数の看護師の勤務工程を2週間以上の長期間に渡って備えた勤務表を作成するために、▲1▼各看護師に関する熟練度合・勤務系列・各曜日の割付勤務・必要人数を含む評価規則の入力を促す画面を表示するステップ、▲2▼前記評価規則をできるだけ満足するようにコンピュータによって自動計算するステップ、▲3▼自動計算によって所定の終了条件を満たした後に、暫定解を画面に表示するステップ、▲4▼前記暫定解に対して、ユーザの手入力による修正を促すステップ、▲5▼前記評価規則の更新を行うステップを含むソフトウエアであって、前記▲2▼ステップには、(a)ランダムに発生させた親勤務表の二個を交叉させる交叉ステップ、(b)前記交叉させた点を含む所定の近傍箇所を突然変異または/およびヒューリスティクスによって子勤務表を再生成するステップ、(c)前記子勤務表に較べて劣パレートな親勤務表を子勤務表と置き換えるステップを含むことを特徴とする。
また、前記▲2▼ステップには、更に(d)所定の回数だけ前記(a)〜(c)ステップを繰り返した後に評価値の改善が認められない場合に、全体への突然変異を行うステップを含むことが好ましい。
【0010】
<看護師勤務表作成問題>
看護師勤勤務表作成問題(NSP)は、勤務制約、看護の質、各看護師からの要求等の制約の下で、「日勤」(AM8:00〜PM4:00)、「準夜勤」(PM4:00〜AM0:00)、「深夜勤」(AM0:00〜AM8:00)の3つの勤務形態を各看護師に割り付ける組合せ最適化問題である。図1には、具体的な勤務表の例を示す。この勤務表には、10人(StaffA〜J)の看護師について、14日分の勤務日程が表されている。表中の記号「日」は「日勤」、「準」は「準夜勤」、「深」は「深夜勤」を表している。また、勤務表中の空欄は休みを表している。一番左の列は各看護師の熟練の度合いを表し、熟練度の高いAから経験の浅いCまでにランク付けされている。下段の3つの行は、各日の各勤務形態を割付けられた看護師数を表す。右側の4つの列は各看護師への各勤務の割付け日数を表している。
【0011】
勤務表の評価規則には、▲1▼勤務系列、▲2▼各曜日の割付け勤務、▲3▼必要人数、および▲4▼割付け日数に関するもの等がある。▲1▼勤務系列は、一人の看護師に注目したときに、その勤務日が、「日勤」〜「深夜勤」や、「日勤」〜「休み」〜「準夜勤」のように複数日にわたる勤務形態についての系列を意味している。この勤務系列は、看護師の健康面で無理のないものとする必要がある。▲2▼各曜日の割付け勤務に関する規則は、例えば、「看護師Aは土曜日に準夜勤を割付けない」等、看護師の特殊性を反映した制約である。▲3▼必要人数は、例えば深夜勤2人の内の1人は必ず熟練の看護師を割付ける等、看護の質を維持するための制約である。▲4▼割付け日数は、看護師間で均等に割付けることが基本であるが、各看護師の事情や先月分の割付け日数も考慮し、広い視点で公平感を与える割付けを行う必要がある。さらに、現場では、看護師間の相性、アクシデントによる急な日程変更等の細かな制約が加わることがあるので、評価規則について柔軟な対応が要求される。
【0012】
<看護師勤務表作成支援ソフトウエア>
本発明者らが、 解決しようとした問題点は、主として次の3つであった。▲1▼看護師勤務表作成問題の評価規則は病院毎に異なり、ユーザ(例えば、婦長)は勤務表の自動作成に必要な全ての評価規則を定義しなければならない。従来のように手作業で勤務表を作成していた場合には、評価規則は整理されていないことが多かったことから、評価規則の設定漏れが起きやすかった(問題点1.評価規則設定の困難性)。▲2▼勤務表の自動計算アルゴリズムでは、局所解に陥りやすいため、ユーザは満足のいく解を得るためには何度も初めからスケジューリングをやり直さなくてはならなかった(問題点2.解探索の困難性)。▲3▼解探索に長時間が掛かるため、多忙なユーザ(特に婦長)にとって長い計算待ち時間は心理的負担となり得た(問題点3.計算時間の長さ)。
これらの問題に対処するために、図2に示す対話型勤務表作成支援システムを提案する。このシステムによる勤務表作成は、例えば図3に示すように、次の手順で行うことができる。
【0013】
まず、ユーザは、評価規則をできる限り洗い出し、システムに入力する(ステップ10.評価規則入力)。次に、定義された評価規則の下で自動スケジューリングを行う。ただし、解候補の呈示を待っているユーザに対して、長時間の演算によって心理的な負担を与える前に探索を打ち切り、暫定的な解を呈示する(ステップ12.突然変異(「バクテリア進化的計算(BEA)」と称することがある。)を用いた勤務表候補の生成)。すなわち、本発明のアルゴリズムを実行するにあたり、自動計算実行時の終了判定は、多くの場合に繰り返し計算回数で与えることが好ましい(或いは、自動計算実行中の時間で判定することもできる。多くの場合に、ユーザが自動計算中のコンピュータの結果表示を待てる時間は、せいぜい1分間〜2分間程度のものである。そのため、使用するコンピュータのスペックにより、自動演算の繰り返し回数または、自動演算時間によって、終了条件を設定しておくことが実際的である。それは、勤務演算表の大きさを考えてみれば分かる。例えば、10人の看護師について、30日間の勤務表を作成するには、各々のセルに割り付ける場合の数は日勤・準夜勤・夜勤・休日の四種類であるから、全部で410x30通りの勤務表群ができうる。これらの広大な勤務表群の中から評価規則を満たすものを作成することになる。
【0014】
自動計算方法としては、後述するように、(1)親個体間の交叉演算、(2−1)交叉点の近傍におけるヒューリスティクス、(2−2)交叉点の近傍における突然変異、及び(3)個体全体への突然変異を適当に組み合わせて用いることができる。
また、暫定的な解を呈示する場合には、評価規則を満たさない問題箇所については、評価規則を満足する他の箇所とは異なる背景色を用いることによって、ユーザが分かり易いようにすることが好ましい。このとき、評価規則に二つ以上の段階がある場合には、それぞれ異なる背景色を用いることが好ましい(例えば、後述のように、絶対禁止の評価規則を満たさない箇所には「赤色」、妥協禁止の評価規則を満たさない箇所には「黄色」、評価規則を満足する箇所には「青色」の背景色をそれぞれ用いることができる。)。解の質と演算時間とはトレードオフの関係にあるため、演算時間を短くするためには、効率的な探索アルゴリズムを採用する必要がある。看護師勤務表作成問題の探索には、局所部分の探索(例えば、3日間〜5日間)に有効なバクテリアEAを採用することができる。
【0015】
次に、ユーザはシステムが呈示した解候補に対し、手入力による直接修正を加える(ステップ14.勤務表候補の修正と部分的固定)。このステップ14では、ユーザは、勤務表データの一部を変更・置換等の作業を行うことができる。このとき、解候補は唯一ではなく、複数のものを並列的に呈示することができる。また、特定の解候補について、部分的に満足のいく箇所があれば、その箇所を固定して、再計算箇所の絞り込みを行うことができる。
【0016】
ここでユーザは、出力された勤務表候補について判断を行い(ステップ16)、最終的なものであると認める場合には作業を終了する。また、上記ステップ10において気付かなかった評価規則にユーザが気付いた場合には、その評価規則の更新を行い(ステップ18.評価規則の更新)、更新された評価規則の下で、ステップ14において修正された勤務表を初期個体として、ステップ12から再度実行する(未固定個所の再計算)。このとき、ステップ14において、ユーザが固定を指定した部分については、突然変異の対象外とする。
以下、ユーザが満足できる勤務表を獲得できるまで、上記のステップ12〜ステップ18を繰り返す。最後に完成した勤務表は、次回の勤務表作成時にステップ10で利用される。
【0017】
<交叉とヒューリステックスとの併用>
問題点3の課題は、システムとユーザとが円滑に協調作業を行う上で最も重要な課題である。すなわち、上記ステップ12においては、ユーザの手作業による負担を軽減するために、良質の解候補を迅速に導出することが望まれる。ここで解の質と演算時間とは、トレードオフの関係にあるため、効率的な探索アルゴリズムが必要である。本発明者らは、看護師勤務表作成問題の探索に、局所探索に有効なバクテリアEA(BEA)を適用した。BEAはバクテリアの進化過程を参考にしたアルゴリズムであり、染色体の局所部分の改善に有効である。看護師勤務表作成問題では、勤務系列に関する評価規則は、連続する2日〜4日程度のものが多いことから、隔たった日の間の依存関係は低い。このため、染色体の局所部分毎に集中的に解の改善を図るBEAのバクテリア演算が効果的であった。しかしながら、勤務表においては各看護師の1ヶ月間の勤務負荷を平等とする「割付け日数の公平さ」が要求される。そこで、本発明者らは、良質の解を迅速に導出するために、通常の交叉と看護師勤務表作成問題の性質を利用したヒューリスティクスとを組み合わせることを試みた。
【0018】
本発明者らは、 良質な解候補を迅速に提示するため、進化的計算における交叉に着目した。この方法では、交叉を効率的に行うため、交叉演算とヒューリスティクスとを組合せることで、勤務系列の劣化を抑えると共に、パレート最適解探索により染色体群の多様性を保証した。次に、その手法の詳細について説明する。
【0019】
<パレート最適解探索>
次に、パレート最適解探索について説明する。パレート最適解探索を行う理由は、(1)ユーザに呈示する勤務表候補に多様性を持たせること、(2)染色体群に多様性を持たせることで交叉の際に似通った個体同士が組になることを抑えることの2点がある。本手法では、トレードオフの関係にある割付け日数とそれ以外の評価項目の2つの評価軸を用いたパレート最適解探索を行うこととした。ただし、評価規則の中には必ず満たさなければならない「絶対制約」と、勤務日数との兼ね合いで妥協することのある「妥協制約」とが存在する。そこで、絶対制約は双方の軸に加えることとし、評価関数を以下の式(1)〜式(5)のように定義した。
【0020】
= A + B (1)
= A + C (2)
A = 1 − 1 / ( 1 + a ) (3)
B = 1 − 1 / ( 1 + b ) (4)
C = 1 − 1 / ( 1 + c ) (5)
【0021】
ここで、aは絶対制約違反数、bは妥協制約違反数 、cは平均勤務日数からの差の絶対値の総和である。制約違反数とは、絶対制約または妥協制約を満足しない個数を意味しており、勤務表内の割付けが何らかの評価規則に違反した場合に+1だけ加算される。H,Hのいずれにおいても優れた個体が存在しない場合には、その個体をパレート最適個体とする。但し、サブ染色体群の個体がパレート最適であり、かつ染色体群に劣パレート最適な個体が存在しない場合は、次式(6)の評価関数に従って保存個体を選択することとした。
H = A + B + C (6)
【0022】
<GAとヒューリスティクスとの複合手法>
上記の看護師勤務表作成問題における各評価項目は、進化的計算による最適化を行う上で互いに影響を及ぼし合うために、解探索を困難にしている。割付け日数以外の評価項目は、互いに隔たった日の間の依存関係が低い。そのため、染色体全体に対して均等に突然変異を行うのではなく、BEAのように一部分に突然変異を集中し、局所部分の探索を行う手法が効果的である。BEAによる局所部分の探索は、勤務表作成者が勤務表のある期間(例えば、3日間〜5日間の数日間)に限定して、看護師同士で勤務割付けを入れ替えて試行錯誤する作業に相当する。一方、割付け日数に関しては、各看護師の一月の勤務負荷が均等となるように考慮する必要があるため、BEAのように狭い期間に集中的に突然変異を加える手法では、良好な解を得る効果が低い。この問題を解決するには、染色体全体に対する突然変異と交叉との両方の効果が期待される。しかし、交叉を行うと、その交叉点の前後で勤務系列が途切れるために、評価値を著しく悪化させてしまう。そこで、交叉演算による勤務系列の劣化を補修しながら解探索を行う手法として、本発明者らは次の手法を提案する。
【0023】
交叉演算を行い、その交叉点の周辺(例えば、3日間〜5日間)の修復に、手動作成時のヒューリスティクスを用いる。また、この手法は局所解に陥る危険があることから、更に突然変異を加えることとした。次に、図4及び図5を参照しつつ、その方法のアルゴリズムの一例を説明する。
【0024】
まず、N個の初期個体群を生成する(ステップ20)。ここで、全体への突然変異が必要か否かを判断する(ステップ21)。なお、下記実施例において、方法論を検討する場合には、本方法と全体への突然変異を含む方法(ステップ21のYes方向)と切り離して実施することがある。ステップ21でYESの場合には、「A」に進んで、全体への突然変異アルゴリズムを実施する(後に詳述する。)。一方、NOの場合(或いは、全体への突然変異アルゴリズムを切り離して実施する場合)には、染色体群から2個の親個体をランダムに選択し、一点交叉によって新たな子個体を1つ生成する(ステップ22)。また、ステップ21において、全体への突然変異アルゴリズムを実施した後に、再び「B」からヒューリスティクスのアルゴリズムに戻ってくる場合がある(後述)。このように、ヒューリスティクスと全体への突然変異とは、相互に組み合わせて用いることができる。
次に、予め設定されたLBM日の局所部分(親個体の交叉箇所を中心として再生成する長さ)について、子個体の再作成箇所をヒューリスティクスによって再作成する(ステップ24:ヒューリスティクスの詳細については後述する。)。次に、子個体の再作成範囲内の各日に対して確率PBM/LBMで突然変異を施す(ステップ26)。ここで、子個体の評価値を計算し、染色体群の評価値と比較し、子個体がパレート最適な個体であれば、染色体群の劣パレートな個体の中から1個体をランダムに選択し置き換える(ステップ28)。こうして再計算された染色体群が終了条件を満たすか否かを判断し(ステップ30)、YESの場合には操作を終了し、NOの場合には、ステップ21からステップ28を繰り返す。
【0025】
<手動作成をモデル化したヒューリスティクス>
次に、ヒューリスティクスの手順について説明する。本手法では、勤務表の未割付け箇所を逐次的に決定する作業をモデル化した。手作業で逐次的に割付けを行っていく場合には、必要人員数や勤務系列などの制約により、選択可能な勤務形態が少ない箇所から割付けを決定する。また、手作業による勤務表作成では、通常は、日付の早い方から優先的に割付けを行う。このため、日付毎に各看護師の割付け優先度を求めることとした。まず、解析に用いたパラメータについて説明する。
【0026】
パラメータL(s)は、看護師sの看護技能ランクを意味する。パラメータW(d,s)は、作成過程の勤務表における日付dの看護師sへの割付け内容を示し、S(d,s)の割付けは、勤務形態n∈{“日勤”,“準夜勤”,など}および未割付け:φの状態をとる。パラメータR(d,n,l)は、日付dの勤務形態nにおける看護技能ランクlの必要人員数に対するランク別不足人員数を示す(ただし、l=#(don’t care)の場合は、総必要人員に対する不足人員数を示す)。パラメータV(d,s,n)は、日付dにおける看護師sへ割付けを勤務形態nとした場合の勤務系列、各曜日の割付け勤務および必要人員の評価規則に対する割付け判定を示す。パラメータM(d,n)は、日付dにおける勤務形態nの必要人員制約を満たすことができる看護師の数を示す。パラメータU(d,s,n)は、日付dにおける看護師sへ割付けを勤務形態nとする割付け作業に対する優先度を示す。
ここで、割付け 判定V(d,s,n)について説明する。V(d,s,n)は、勤務系列、各曜日の割付け勤務、及び必要人員の各評価規則に従い、次の判定を行うこととした。
【0027】
割付け判定のうち、V(d,s,n) = 0 は、絶対禁止を意味し、勤務系列の絶対制約違反、各曜日の割付け勤務の絶対制約違反、および総人員数もしくはランク別人員数が必要人員に対し定員超過を起こした場合がある。また、V(d,s,n)= 1 は、妥協禁止を意味し、V(d,s,n) = “絶対禁止”の条件を満たさず、勤務系列の妥協制約違反もしくは各曜日の割付け勤務の妥協制約違反の何れかを起こした場合がある。また、V(d,s,n)= 2 は、配置可能を意味し、勤務系列、各曜日の割付け勤務、および必要人員の評価規則の何れの評価規則に対しても制約違反を起こすことがない場合である。
【0028】
次に、優先度U(d,s,n)の決定法について説明する。U(d,s,n) = 0 は、割付け不可を意味し、条件{W(d,s)z≠φ}を満たす場合である。また、U(d,s,n)= 1 は、優先度最低を意味し、条件{W(d,s) =φ and V(d,s,n) = 0}を満たす場合である。また、U(d,s,n) = 2 は、優先度低を意味し、条件{W(d,s)=φ and V(d,s,n) = 1}を満たす場合である。また、U(d,s,n) = 3 は、優先度中を意味し、条件{W(d,s) =φ and V(d,s,n) = 2 and R(d,n,#) = 0 and R(d,n,L(s)) = 0}を満たす場合である。また、U(d,s,n) = 4 は、優先度高を意味し、条件{W(d,s)=φ and V(d,s,n) = 2 and (N(d,n) > 0 or R(d,n,L(s)) > 0)}を満たす場合である。また、U(d,s,n)= 5 は、優先度最高を意味し、条件{W(d,s) =φ andV(d,s,n) = 2 and (N(d,n) > 0 or R(d,n,L(s))> 0)and (M(n)≦R(d,n,#) or M(n)≦R(d,n,L(s)))}を満たす場合である。
ヒューリスティクスは、前述のパラメータを用いて割付けを行う。そのアルゴリズムの一例について、図6を参照しつつ説明する。このアルゴリズムは、例えば既述のステップ24中において、用いることができる。
【0029】
まず、再作成箇所を未割付けとして空白にする(ステップ40)。次に、未割付けが存在する最も早い日付を選択して、割付け日Dとする(ステップ42)。次に、日付DにおけるR(D,s,#)およびR(D,s,l)を計算する(ステップ44)。次いで、日付Dにおける全ての看護師sおよび勤務形態nに対して、優先度U(D,s,n)を計算する(ステップ46)。次に、日付Dにおける優先度U(D,s,n)の最大値Umaxを計算する(ステップ48)。更に、日付Dにおいて、優先度が条件{U(D,s,n)= Umax}を満たす看護師sの人数の最少の値を計算し、最小値をとる勤務形態を割付け勤務Nとする(ステップ50)。このとき、最小値をとる勤務形態が複数存在する場合は、これらの中からランダムに1つを選択し、割付け勤務Nとする。
【0030】
次に、日付Dにおいて、優先度が条件{U(D,s,N) = Umax}を満たす看護師sの中からランダムに1つ選択し、割付け看護師Sとする(ステップ52)。次いで、勤務表の割付けW(D,S)に対して割付け勤務Nを割付ける(ステップ54)。ここで、未割付けが存在するか否かを判断し(ステップ56)、存在しない場合には作業を終了し、存在する場合にはステップ42〜ステップ54を繰り返す。
【0031】
<交叉点近傍の修復にバクテリア突然変異を用いた手法>
交叉による勤務系列の破壊の修復は、交叉点近傍に突然変異を集中するバクテリア突然変異を適用する手法が考えられる。そのアルゴリズムの一例について、図7及び図8を参照しつつ説明する。
【0032】
まず、染色体群を初期化した後に(ステップ59)、全体への突然変異が必要であるか否かが判断される(ステップ60)。ここでYesの場合には、後述の染色体全体への突然変異アルゴリズムを行う(なお、下記実施例において、方法論を検討する場合には、本方法と全体への突然変異を含む方法(ステップ60のYes方向)と切り離して実施することがある。)。
ステップ60でNoの場合には、染色体群から2個の親個体をランダムに選択し、一点交叉によって新たな子個体を1つ生成する(ステップ62)。次いで、親個体の交叉箇所を中心に長さがLBM日の局所部分を局所改善範囲に選定し、子個体をN個に増殖し、サブ染色体群を生成する(ステップ64)。次に、サブ染色体群から1個体をランダムに選択し、その複製を1個生成し、選択した個体の局所改善範囲内の各日に対して確率PBM/LBMで突然変異を施す(ステップ66)。
【0033】
次に、突然変異個体を評価する。つまり、この個体とサブ染色体プールからランダムに選択した個体とを比較し、評価値の良い個体を残し、劣悪な個体を削除する(ステップ68)。ここで、ステップ66〜ステップ68をNST回繰り返す(ステップ70)。次に、サブ染色体群の個体の評価値を染色体群の個体の評価値を比較し、パレート最適な個体を染色体群の劣パレートな個体の中からランダムに選択したものと置き換える(ステップ72)。終了条件を満たすまで、ステップ62〜ステップ72を繰り返す(ステップ74)。
【0034】
<染色体全体への突然変異>
勤務日数の公平さに対する探索は、染色体全体への一様な突然変異によって探索効率が向上する可能性がある。特に、染色体群の多様性が無くなると、交叉演算の効果が消失するため、解探索が停滞する可能性がある。そこで、上述のアルゴリズムにおける親個体の淘汰演算(ステップ28及び、ステップ72)を所定の回数(NXT回)だけ行う間にパレート最適な子個体が新たな親個体として染色体群に加えられず、評価値の改善が見られない場合には、交叉の代わりに染色体全体への突然変異による探索を行う。そのためのアルゴリズムの一例を図9を参照しつつ説明する。このアルゴリズムは、ステップ21又はステップ60において、全体への突然変異が必要である(すなわち、所定回数(NXT)の淘汰演算によっても評価値の改善が見られない場合)と判断された場合に実施することができる。
【0035】
まず、更に全体への突然変異が必要か否かを判断し(ステップ78)、Yesの場合には、以下のステップ80〜ステップ90のアルゴリズムを実行する。一方、ステップ78において、全体への突然変異が必要でないと判断された場合には、「B」に進み、ステップ22(<GAとヒューリスティクスとの複合手法>)又は、ステップ62(<交叉点近傍の修復にバクテリア突然変異を用いた手法>)に進むことができる。つまり、本法は、▲1▼GAとヒューリスティクスとの複合手法、又は▲2▼交叉点近傍の修復にバクテリア突然変異を用いた手法を組み合わせて実施することができる。
ステップ78でYesの場合には、染色体群から親個体をランダムに選択し(ステップ80)、その親個体を複製してN個に増殖し、サブ染色体群を生成する(ステップ82)。次いで、サブ染色体群から1個体をランダムに選択し、その複製を1個生成し、選択した個体の染色体全体に確率PBM/(1month)で一様な突然変異を施す(ステップ84)。次いで、突然変異個体を評価する。つまり、この個体とサブ染色体プールからランダムに選択した個体とを比較して、評価値の良い個体を残し、劣悪な個体を削除する(ステップ86)。次に、ステップ84〜ステップ86をNLT回繰り返す(ステップ88)。そして、サブ染色体群の個体の評価値を染色体群の個体の評価値と比較し、パレート最適な個体があれば染色体群の劣パレートな個体と置き換える(ステップ90)。終了条件を満たした場合にはアルゴリズムを終了し(ステップ92のYes)、終了条件を満足しない場合にはステップ78に戻る(ステップ92のNo)。
【0036】
【発明の実施の形態】
次に、本発明の一実施形態について、図面を参照しつつ詳細に説明するが、本発明の技術的範囲は、下記の実施形態によって限定されるものではなく、その要旨を変更することなく、様々に改変して実施することができる。また、本発明の技術的範囲は、均等の範囲にまで及ぶものである。
次に、上記の各種アルゴリズムを単独で、或いは複数を組み合わせて用いることにより、実際に看護師勤務表の作成を行った。
【0037】
<問題設定>
看護師勤務表作成には、看護師数20人の病棟の例を用いた。その際に用いた評価規則を以下に示す。
(1) 勤務系列 に関する規則
勤務系列に関する規則についての絶対制約と妥協制約とは。それぞれ次の通りである。
まず、絶対制約としては、▲1▼ 「準夜勤」 の次に「深夜勤」 を割り付けない、▲2▼深夜勤は4日以上連続して割り付けない、▲3▼深夜勤と深夜勤を挟んで深夜勤以外の割り付けをしない、及び▲4▼6日以上の連続勤務は禁止とする、の四点である。
また、妥協制約としては、▲1▼「休み」の次に「深夜勤」を割り付けない、▲2▼「準夜勤」、「日勤」、「深夜勤」をこの順に割り付けない、▲3▼日勤のリーダは3日間または4日間連続して割り付ける、及び▲4▼深夜勤を3日連続して割り付けない、の四点である。
【0038】
(2)各曜日の割付け規則
各曜日の割付け規則についての絶対制約と妥協制約とは、それぞれ次の通りである。
絶対制約としては、▲1▼Staff J は日勤と日勤リーダのみ、▲2▼Staff S は土日休み、及び▲3▼Staff T は土日休み、の三点である。
また、妥協制約としては、▲1▼Staff A は日勤以外割り付けない、及び▲2▼StaffA は土日休み、の二点である。
【0039】
(3)必要人数に関する規則
必要人数に関する規則の絶対制約は、次の通りである。
絶対制約としては、▲1▼「準夜勤」に2人以上ランクCの看護師を割り付けない、▲2▼「深夜勤」に2人以上ランクCの看護師を割り付けない、▲3▼「準夜勤」に1人以上ランクAの看護師を割り付ける、▲4▼「深夜勤」に1人以上ランクAの看護師を割り付ける、及び▲5▼「日勤のリーダ」はランクAもしくはBを割り付ける、の五点である。
【0040】
(4)割付け日数に関する規則
上記の規則の他に、▲1▼Staff A とStaff J 以外は出来るだけ公平に割り付ける、という割付け日数に関する規則を設けた。
次に、各実験で用いたパラメータを示す。局所探索/再作成の幅はLBM = 4と、染色体群内の個体数はN = 8と、突然変異パラメータはPBM= 0.05と、サブ染色体群内の個体数N = 2と、局所改善回数NST = 100と、探索変更確認周期NXT= 50と、大域突然変異回数NLT = 100と、それぞれの数値を設定した。
【0041】
ただし、LBM は解探索が停滞した場合に変化することとし、親個体の淘汰演算において染色体群内に新たなパレート最適個体が加えられない状態が10回続く毎に、LBM を1増加させることとし、染色体群に新たなパレート最適個体が追加された場合は元の値に戻すこととした。
【0042】
<実施例1 GAとヒューリスティクスの複合手法>
上記したGAとヒューリスティクスとの複合手法の効果を調べた。また、ステップ26の突然変異の効果についても併せて調べた。▲1▼交叉後にヒューリスティクスのみを用いた場合(ステップ26を飛ばして実行した場合)、▲2▼交叉後にヒューリスティクスとステップ26の突然変異を用いた場合、及び▲3▼交叉を行わずステップ24のLBM日の局所部分をランダムに設定してヒューリスティクスとステップ26の突然変異を行った場合、のそれぞれについて、得られる看護師勤務管理表を比較した。各方法の比較には、親個体の淘汰演算回数が5,000回までの演算を50回施行し、染色体群において式(6)による最良個体の評価値の平均を求め、初期個体からの平均評価値の改善値の推移を調べた。ただし、ステップ21の判断を行わず、図9に示す染色体全体への一様な突然変異は行わなかった。
【0043】
図10及び図11には、各実施例に用いたソフトウエアの表示画面を示した。本ソフトウエアには、三種類のメニュータブ15が設けられており、それぞれ勤務表作成を実行させるメニュー画面(図10)、勤務表設定用メニュー画面(図11)、及び抽出ルール設定画面とされている。
【0044】
このうち勤務作成実行用メニュー画面(図10)の左欄10には、20名の看護師(Staff_A〜Staff_T)が示されており、そこから右には、約一ヶ月分(例示する画面上には、37日分)の勤務行程マトリックスデータ11が示されている。また、このデータ11の下欄12には、各日についての日勤スタッフ数・準夜勤スタッフ数・深夜勤スタッフ数・リーダ数が示されている。更に、データ11の右欄13には、各看護師についての一ヶ月当たりの休日数・日勤数・準夜勤数・深夜勤数・リーダ担当数が示されている。
【0045】
また、勤務表設定用メニュー画面(図11)は、大きく5個の枠16〜20に分けられている。このうち最も左の枠16は、各スタッフに関する設定(例えば、技能・リーダ適応・勤務割付の公平さ・最大連動数)がなされる。また、中央上枠17では、特定のスタッフについての個別的な禁止勤務制約(例えば、▲1▼特定の曜日には勤務できない(或いは、日勤のみ可能)・リーダを4日間に渡って割付可能・深夜勤4日間連続は不可等の内容と、▲2▼その制約の優先度との組合せデータとなっている。)が設定できる。右上枠18には、日勤・準夜勤・深夜勤・リーダについて、所定の技能(左枠16において、各スタッフについて設定されたもの)を備えた者の上限数と下限数とが設定される。また、下枠19,20では、各曜日の日勤・準夜勤・深夜勤・リーダ・休みについて、最低割付数と最大割付数とが設定される。このようにして、勤務表設定用メニュー画面において設定された評価規則に基づいて、勤務作成実行用メニュー画面で所定の計算及びマニュアル処理がなされる。
【0046】
図12には、式(6)の総合評価値の改善値の推移を、図13には、勤務日数の公平さのみの評価値の改善値の推移を、また図14には、勤務日数の公平さを除いた評価値の改善値の推移を示した。この結果より、交叉が公平さの評価値の改善に効果があり、突然変異が公平さを除いた評価値の改善に効果があることが分かった。
【0047】
<実施例 2 ヒューリスティクスの効果>
交叉後の勤務系列の破壊の修復に、ステップ20〜ステップ30のヒューリスティクスを用いた場合と、ステップ60〜ステップ74のバクテリア突然変異を用いた場合とについて比較した。なお、ステップ20〜ステップ30のアルゴリズムでは、純粋にヒューリスティクスのみの効果を確認するために、ステップ26の突然変異は用いなかった。また、ステップ21の判断を行わず、図9に示す染色体全体への一様な突然変異は行わなかった。
【0048】
各場合について、親個体の淘汰演算回数が5,000回までの演算を50回施行し、染色体群において式(6)による最良個体の評価値の平均を求め、初期個体からの平均評価値の改善値の推移を調べた。ただし、染色体全体への一様な突然変異(ステップ78〜ステップ90)は行わなかった。尚、実験パラメータである局所改善回数NSTは、親個体の淘汰演算回数を5,000回行うために必要な演算時間が、それぞれの場合においてほぼ等しくなるようにするため、NST= 100とした。初期個体から評価値の改善値の推移を図15に示した。
この結果、バクテリア突然変異に較べると、ヒューリスティクスの方が探索効率が良いことが示された。
【0049】
<実施例 3 全体への突然変異の効果>
次に、染色体全体への突然変異の効果を調べた。交叉後に、ステップ20〜ステップ30のヒューリスティクスと突然変異とを併用する場合のアルゴリズムについて、ステップ78〜ステップ92の染色体全体への一様な突然変異の有無の効果を調べた。染色体の評価演算回数が5,000回までの演算を50回施行し、染色体群において式(6)による最良個体の評価値の平均を求め、初期個体からの平均評価値の改善値の推移を調べた。但し、全体への突然変異を行う場合は、ヒューリスティクスを用いた交叉を行う場合に較べて、評価演算時間が約20倍高速となることを考慮して、全体への突然変異が行われている時は、評価演算回数20回を改めて評価演算回数1回とした。
【0050】
図16には、式(6)の総合評価値の改善値の推移を、図17には、勤務日数の公平さのみの評価値の改善値の推移を、図18には、勤務日数の公平さを除いた評価値の改善値の推移をそれぞれ示した。
この結果、染色体全体への一様な突然変異を加えることで、勤務日数の公平さに対する探索効率が向上することが判明した。但し、染色体全体への突然変異のみを加える手法では、探索効率が著しく悪くなってしまった。
【0051】
<考 察>
本発明者らの検討によれば、交叉点近傍の勤務系列の修復にヒューリスティクスを組合せることで、勤務日数の公平さに対する効率的な探索が実現できることが示された。また、ヒューリスティクスと突然変異とを併用することにより、更に良好な結果を得ることができた。これは、手動作成にヒントを得たヒューリスティクスのみを用いるアルゴリズムでは、局所解に陥りやすいが、突然変異を併用することにより、そのような局所解を回避できたためと考えられた。
ヒューリスティクスのみを用いた場合に局所解に陥りやすい原因としては、ヒューリスティクスに関するアルゴリズムが不完全であるため、解の探索方向を誤ったためであると考えられた。しかし、本発明者らの検討結果によれば、事前知識を用いた探索であるヒューリスティクスに、確率的探索である突然変異を併用することで、ヒューリスティクスの不完全さを補うことができたことを示している。
【0052】
以上の改善に、更に全体への一様な突然変異を加えることによって、勤務日数の公平さに対する探索の更なる効率化が示された。これは、全体への一様な突然変異が公平さのような大域的探索には効果があることを示唆している。
また、交叉点近傍の修復について、ヒューリスティクスを用いないで、バクテリア突然変異のみを行った場合では、探索性能はあまり良好ではないことが示された。
このように本実施形態によれば、複雑な評価規則を満足しつつ、かつ局所解に陥ることなく、比較的短時間で勤務時間の公平な看護師勤務表の作成を行うことが可能となる。
【0053】
【発明の効果】
本発明者らの発明によれば、複雑な評価規則を更新しながら満足させつつ、局所解に陥ることなく、かつ比較的短時間で看護師勤務表を作成することができる。
【図面の簡単な説明】
【図1】具体的な看護師勤務表の一例を示す図である。図中の左欄(熟練度)中の、「A」は熟練を、「B」は非熟練を、「C」は新人を示す。また、「日」は日勤(AM 8:00〜PM4:00)を、「準」は、準夜勤(PM4:00〜AM0:00)を、「深」は深夜勤(AM0:00〜AM8:00)を示す。
【図2】対話型看護師勤務表作成支援システムの概要を示す図である。
【図3】実施形態に記述した看護師勤務表作成支援システムによる勤務表の作成手順を示す図である。
【図4】BEAとヒューリスティクスとの複合手法による看護師勤務表作成支援ソフトウエアのアルゴリズムを示す図である。
【図5】BEAとヒューリスティクスとの複合手法による看護師勤務表作成支援ソフトウエアのフローチャートである。
【図6】手動作成をモデル化したヒューリスティクスのフローチャートである。
【図7】
交叉点近傍の修復にバクテリア突然変異を用いた手法のアルゴリズムを示す図である。
【図8】交叉点近傍の修復にバクテリア突然変異を用いた手法のフローチャートである。
【図9】全体への突然変異を加えるためのフローチャートである。
【図10】各実施例を実行したときに用いたソフトウエアの実行用メニュー画面1である。
【図11】各実施例を実行したときに用いたソフトウエアの実行用メニュー画面2である。
【図12】実施例1において、
総合評価値の改善値の推移を示すグラフ図である。なお、図中■は、交叉とヒューリスティクスと突然変異とを併用したアルゴリズム、▲は、交叉とヒューリスティクスとを併用したアルゴリズム、×は、ヒューリスティクスと突然変異とを併用したアルゴリズム、を用いてそれぞれ計算したときの結果を示す。
【図13】実施例1において、公平さ評価値の改善値の推移を示すグラフ図である。なお、図中の記号の意味は、図12と同様である。
【図14】実施例1において、公平さを除いた評価値の改善値の推移を示すグラフ図である。なお、図中の記号の意味は、図12と同様である。
【図15】実施例2において、評価値改善値の推移を示すグラフ図である。なお、図中◆は、交叉とヒューリスティクスとを併用したアルゴリズム、■は、交叉とバクテリア突然変異とを併用したアルゴリズム、を用いて、それぞれ計算したときの結果を示す。
【図16】実施例3において、
総合評価値の改善値の推移を示すグラフ図である。なお、図中◆は、交叉とヒューリスティクスと突然変異と全体変移とを併用したアルゴリズム、■は、交叉とヒューリスティクスと突然変異とを併用したアルゴリズム、を用いてそれぞれ計算したときの結果を示す。
【図17】実施例3において、公平さ評価値の改善値の推移を示すグラフ図である。なお、図中の記号の意味は、図16と同様である。
【図18】実施例3において、公平さを除いた評価値の改善値の推移を示すグラフ図である。なお、図中の記号の意味は、図16と同様である。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to nurse work schedule creation software and the like.
[0002]
[Prior art]
The problem of creating a work schedule (nurse worktable) for a plurality of nurses (Nurse Scheduling Problem: NSP) is a complex combination optimization problem including a plurality of evaluation rules (constraint conditions). In general, nurse work schedules are created monthly by the nurses in each ward, and creating such a schedule requires a lot of time and effort, which is a great burden for busy nurses. To solve this problem, a work schedule creation system using a genetic algorithm (Genetic Algorithm: GA) (Yamamura, Kobayashi, Yamagishi, Ase, "Nurse Scheduling by Genetic Algorithm" by Hiroaki Kitano Genetic Algorithm pp 89-125, 1993).
[0003]
However, this conventional system employs a fully automatic algorithm for the purpose of reducing the human burden on the nurse. For this reason, there is a problem in that it is rather easy to fall into a local solution, and in order to obtain a solution that is satisfied by the nurse, it is necessary to start over from the beginning many times. And issues "Nursing Management Vol.3 No.1 pp38-42 1993).
[0004]
Thus, the present inventors have examined the above problems, and as a result, an interactive nurse in which a user and software cooperate to create a work table while the user is involved in the solution search process. Proposal of a work schedule creation support software and a system including this software (Inoue, Furuhashi, Maeda, Takaba "A Study on EA Engine for Nurse Scheduling Support System Using Interactive EA" The 16th Fuzzy System Symposium (Akita), September 6-8, 2000, Lecture Book pp619-622). This software is not a fully automatic algorithm, but a work schedule is presented to a user (eg, a nurse) during the solution search, and the user corrects and / or modifies the work schedule data. Alternatively, while making a fixed part of the work, a work schedule required by the user is created. For this reason, even if the evaluation rules are not sufficiently satisfied, the work schedule can be created in cooperation with the user and the software. When the work schedule is revised, the evaluation rules can be modified. The Bacterial Evolutionary Algorithm (BEA) used in this software is effective for improving work styles consisting of a short number of days (for example, three to five days). However, there was room for ingenuity in allocating the workload of each nurse equally over a month.
[0005]
[Non-Patent Document 1] Yamamura, Kobayashi, Yamagishi, Ase "Nurse Scheduling by Genetic Algorithm" by Hiroaki Kitano Genetic Algorithm pp. 89-125, 1993
[Non-Patent Document 2] Takemoto, "Current state and issues of creating a nurse work schedule using a computer", Nursing Management Vol. 3 No. 1 pp38-42 1993
[Non-Patent Document 3] Inoue, Furuhashi, Maeda, Takaba "A Study on EA Engine for Nurse Scheduling Support System Using Interactive EA" The 16th Fuzzy System Symposium (Akita), September 6-8, 2000, Lecture Book pp619-622
[0006]
[Problems to be solved by the invention]
The present invention has been made in view of the above circumstances, and an object thereof is to create a nurse work table in a relatively short time without falling into a local solution while satisfying a complicated evaluation rule. To provide possible software.
[0007]
[Means for Solving the Problems]
The inventors of the present invention have proposed a solution to the problem that it is difficult to evenly assign a nurse work table over a long period of time (for example, two weeks or more, about one month) using only bacterial evolutionary calculations. We worked diligently. As a result, (1) a cross-over operation is performed on a group of appropriately generated parent work tables (sometimes referred to as “parent individuals”), and (2) a child work table ( It has been found that the intended purpose can be achieved by applying mutation and / or heuristics to the vicinity of the crossover point of "child offspring." Was completed. In addition, in order to prevent further local solutions, fairness could be improved by generating mutations in the entire work schedule.
[0008]
That is, according to the study of the present inventors, the effect of equalizing the monthly work load of each nurse was expected by combining the crossover operation with the mutation for the entire work table. Nevertheless, there still remains a problem that the work form before and after the crossing point is largely destroyed by the crossover operation. Therefore, the present inventors further introduce a heuristic using the nature of the nurse work table creation problem to repair the crossover point, thereby making it possible to apply the crossover operation and avoiding a local solution to the entire work table. An efficient search method can be provided even for the evaluation item "fairness of work load" that requires a search.
[0009]
In order to solve the above-mentioned problems, the first invention is to create a work schedule including a plurality of nurses' work processes over a long period of two weeks or more.・ Steps to display a screen prompting the user to enter evaluation rules including work series, assigned work on each day of the week, and the required number of people; (2) a step of automatically calculating by a computer so as to satisfy the evaluation rules as much as possible; and (3) an automatic calculation. Displaying a provisional solution on a screen after satisfying a predetermined termination condition, (4) a step of prompting a user to manually correct the provisional solution, and (5) a step of updating the evaluation rule. Wherein the (2) step includes: (a) a crossover step of crossing two randomly generated parent work tables; and (b) a predetermined neighborhood including the crossed points. The step of regenerating a slave roster the part by mutation and / or heuristics, characterized in that it comprises a step of replacing a child roster the inferior Pareto parent roster compared to (c) said child roster.
The step (2) further includes the step of (d) mutating the whole if the evaluation value is not improved after repeating the steps (a) to (c) a predetermined number of times. It is preferable to include
[0010]
<Nurse work table creation problem>
The nurse work schedule creation problem (NSP) is based on the constraints such as work constraints, quality of nursing, and requests from each nurse, etc., and the "day shift" (AM 8:00 to PM 4:00), "semi-night shift" ( This is a combination optimization problem in which three work modes, PM 4:00 to AM 0:00) and “midnight shift” (AM 0:00 to AM 8:00), are assigned to each nurse. FIG. 1 shows an example of a specific work schedule. This work schedule shows work schedules for 14 days for 10 nurses (Staff A to J). The symbols “day” in the table indicate “day shift”, “quasi” indicates “semi-night shift”, and “deep” indicates “midnight shift”. In addition, blanks in the work schedule indicate holidays. The leftmost column shows the level of skill of each nurse, and is ranked from A with high skill to C with little experience. The lower three rows show the number of nurses assigned to each work style on each day. The four columns on the right represent the number of days assigned to each nurse for each job.
[0011]
The work schedule evaluation rules include (1) work series, (2) assigned work on each day of the week, (3) required number of workers, and (4) assignment days. (1) When working on a single nurse, the work day spans multiple days, such as “day shift” to “late night shift” or “day shift” to “off” to “semi-night shift”. It means a series about work style. This work sequence should be reasonable for the health of the nurse. {Circle around (2)} The rules regarding the assignment work on each day of the week are restrictions that reflect the specialty of nurses, such as “Nurse A does not assign quasi-night work on Saturday”. {Circle around (3)} The required number is a constraint to maintain the quality of nursing, for example, one of the two late-night shifts must be assigned to a skilled nurse. (4) The number of days allocated is basically to be allocated evenly among nurses, but it is necessary to give a fair perspective from a broad perspective, taking into account the circumstances of each nurse and the number of days allocated last month. . Furthermore, in the field, there are cases where detailed restrictions such as compatibility between nurses and sudden schedule changes due to accidents are added, so that a flexible response to evaluation rules is required.
[0012]
<Nurse work schedule creation support software>
The inventors tried to solve the following three problems. {Circle around (1)} The evaluation rules for the nurse work schedule creation problem differ from hospital to hospital, and the user (eg, nurse) must define all the evaluation rules necessary for automatic creation of the work schedule. When the work schedule was manually created as in the past, the evaluation rules were often not organized, so that the evaluation rules were likely to be omitted. (Problem 1. Difficulty). (2) In the automatic calculation algorithm of the work schedule, the user tends to fall into a local solution, so that the user has to repeat the scheduling from the beginning many times in order to obtain a satisfactory solution (Problem 2. Solution search). Difficulties). {Circle around (3)} Since it takes a long time to search for a solution, a long calculation waiting time can be a psychological burden for busy users (especially nurses) (Problem 3. Length of calculation time).
In order to address these problems, an interactive work schedule creation support system shown in FIG. 2 is proposed. The work schedule creation by this system can be performed in the following procedure, for example, as shown in FIG.
[0013]
First, the user identifies evaluation rules as much as possible and inputs them to the system (Step 10. Input evaluation rules). Next, automatic scheduling is performed under the defined evaluation rules. However, before giving a psychological burden to a user waiting for the presentation of a solution candidate, the search is terminated and a provisional solution is presented (step 12. Mutation (“bacterial evolutionary”). Calculation (BEA) ”) is used to generate a work schedule candidate). That is, in executing the algorithm of the present invention, it is preferable in many cases that the termination determination at the time of execution of the automatic calculation is given by the number of repetition calculations (or it can be determined by the time during execution of the automatic calculation. In this case, the user can wait at most one to two minutes for displaying the result of the computer during the automatic calculation, so the number of repetitions of the automatic calculation or the automatic calculation time depends on the specifications of the computer used. It is practical to set an end condition, which can be understood by considering the size of the work calculation table.For example, to create a work table for 10 nurses for 30 days, There are four types of assignments to each cell: day shift, quasi-night shift, night shift, and holiday. 10x30 A work schedule group of streets can be created. From these vast work schedule groups, those that satisfy the evaluation rules will be created.
[0014]
As described below, the automatic calculation methods include (1) crossover operation between parent individuals, (2-1) heuristics near the intersection, (2-2) mutation near the intersection, and (3) ) Mutations in the entire individual can be used in any suitable combination.
In addition, when presenting a provisional solution, for a problem part that does not satisfy the evaluation rule, a background color different from other parts that satisfy the evaluation rule may be used so that the user can easily understand the problem part. preferable. At this time, if there are two or more stages in the evaluation rule, it is preferable to use different background colors (for example, as described later, a portion that does not satisfy the evaluation rule of absolute prohibition is “red”, A background color "yellow" can be used for a part that does not satisfy the evaluation rule of prohibition, and a blue color can be used for a part that satisfies the evaluation rule.) Since there is a trade-off between the quality of the solution and the operation time, it is necessary to employ an efficient search algorithm in order to shorten the operation time. Bacteria EA which is effective in searching for a local part (for example, 3 to 5 days) can be employed for searching for the nurse work schedule creation problem.
[0015]
Next, the user makes a manual correction directly to the solution candidate presented by the system (step 14. Correction and partial fixation of the work schedule candidate). In step 14, the user can perform operations such as changing or replacing part of the work schedule data. At this time, the solution candidates are not unique, and a plurality of solution candidates can be presented in parallel. Further, if there is a part that is partially satisfactory for a specific solution candidate, the part can be fixed and the recalculation part can be narrowed down.
[0016]
Here, the user makes a judgment on the output work table candidate (step 16), and terminates the work if it is determined to be final. If the user notices an evaluation rule that has not been noticed in step 10, the evaluation rule is updated (step 18: update of the evaluation rule), and a correction is made in step 14 under the updated evaluation rule. Using the completed work schedule as an initial individual, the process is executed again from step 12 (recalculation of an unfixed portion). At this time, in step S14, the part designated by the user to be fixed is excluded from the mutation.
Hereinafter, steps 12 to 18 described above are repeated until the user obtains a satisfactory work schedule. The finally completed work schedule is used in step 10 when the next work schedule is created.
[0017]
<Combination and Heuristics>
The problem 3 is the most important problem for the smooth cooperation between the system and the user. That is, in step 12, it is desired to quickly derive good-quality solution candidates in order to reduce the burden of the user's manual work. Here, since the quality of the solution and the operation time are in a trade-off relationship, an efficient search algorithm is required. The present inventors applied bacterial EA (BEA), which is effective for local search, to search for a nurse work schedule creation problem. BEA is an algorithm that refers to the evolutionary process of bacteria, and is effective in improving local portions of chromosomes. In the problem of creating a nurse work schedule, since there are many evaluation rules related to work series on two to four consecutive days, the dependency between separate days is low. For this reason, the bacterial operation of BEA, which aims to intensively improve the solution for each local portion of the chromosome, was effective. However, in the work schedule, "fairness in the number of assignment days" is required to equalize the work load of each nurse for one month. Thus, the present inventors have attempted to combine normal crossover with heuristics utilizing the nature of the nurse work schedule creation problem in order to quickly derive a good quality solution.
[0018]
The present inventors have focused on crossover in evolutionary computation in order to quickly present good-quality solution candidates. In this method, in order to perform the crossover efficiently, crossover operation and heuristics are combined to suppress the deterioration of the work sequence and to guarantee the diversity of the chromosome group by Pareto optimal solution search. Next, details of the method will be described.
[0019]
<Pareto optimal solution search>
Next, the Pareto optimal solution search will be described. The reason for performing the Pareto optimal solution search is that (1) diversity is given to the work table candidates presented to the user, and (2) individuals similar to each other at the time of crossover are formed by giving diversity to chromosome groups. There are two points to keep from becoming. In this method, a Pareto optimal solution search is performed using two evaluation axes, ie, the number of assignment days and the other evaluation items that are in a trade-off relationship. However, there are "absolute restrictions" that must be satisfied in the evaluation rules and "compromise restrictions" that may be compromised in view of the number of working days. Therefore, an absolute constraint is applied to both axes, and the evaluation function is defined as in the following equations (1) to (5).
[0020]
H 1 = A + B (1)
H 2 = A + C (2)
A = 1−1 / (1 + a) (3)
B = 1−1 / (1 + b) (4)
C = 1−1 / (1 + c) (5)
[0021]
Here, a is the number of absolute constraint violations, b is the number of compromise constraint violations, and c is the sum of absolute values of differences from the average number of working days. The constraint violation number means a number that does not satisfy the absolute constraint or the compromise constraint, and is added by +1 when the assignment in the work schedule violates some evaluation rule. H 1 , H 2 If no excellent individual exists in any of the above, the individual is determined to be a Pareto optimal individual. However, when the individual in the subchromosome group is Pareto-optimal, and there is no subpareto-optimal individual in the chromosome group, a preserved individual is selected according to the evaluation function of the following equation (6).
H = A + B + C (6)
[0022]
<A combined method of GA and heuristics>
Each evaluation item in the above-mentioned nurse work schedule creation problem influences each other in performing optimization by evolutionary calculation, which makes solution search difficult. Evaluation items other than the number of allocated days have low dependence between days separated from each other. Therefore, it is effective to use a technique in which mutations are concentrated on one part and a local part is searched, as in BEA, instead of performing mutation evenly on the entire chromosome. Searching for a local part by BEA is equivalent to the work of the work schedule creator, who limits the work schedule to a certain period (for example, several days of 3 to 5 days), changes the work assignment among nurses, and performs trial and error. I do. On the other hand, regarding the number of days assigned, it is necessary to consider the work load of each nurse in a month to be equal. Low effect. To solve this problem, both mutation and crossover effects on the entire chromosome are expected. However, when crossover is performed, the work sequence is interrupted before and after the crossover point, so that the evaluation value is significantly deteriorated. Therefore, the present inventors propose the following method as a method for performing a solution search while repairing the deterioration of the work sequence due to the crossover operation.
[0023]
A crossover operation is performed, and heuristics at the time of manual creation are used to repair the vicinity (for example, 3 to 5 days) of the crossing point. In addition, since this method has the risk of falling into a local solution, we decided to add more mutations. Next, an example of the algorithm of the method will be described with reference to FIGS.
[0024]
First, N initial populations are generated (step 20). Here, it is determined whether or not the entire mutation is required (step 21). In the following examples, when the methodology is examined, the method may be performed separately from the method including mutation to the whole (Yes direction in step 21). In the case of YES in step 21, the process proceeds to "A" to execute a mutation algorithm for the whole (described in detail later). On the other hand, in the case of NO (or in the case where the whole mutation algorithm is performed separately), two parent individuals are randomly selected from the chromosome group, and one new child individual is generated by one-point crossover. (Step 22). Also, in step 21, after performing the whole mutation algorithm, the algorithm may return from "B" to the heuristic algorithm again (described later). Thus, heuristics and global mutations can be used in combination with each other.
Next, a predetermined L BM For the local part of the day (the length of re-creation centering on the intersection of the parent individual), the re-creation location of the child individual is recreated by heuristics (step 24: details of the heuristics will be described later). Next, for each day within the re-creation range of the offspring individual, the probability P BM / L BM (Step 26). Here, the evaluation value of the child individual is calculated and compared with the evaluation value of the chromosome group. If the child individual is a Pareto-optimal individual, one individual is randomly selected and replaced from among the poorly Pareto individuals of the chromosome group. (Step 28). It is determined whether or not the recalculated chromosome group satisfies the termination condition (step 30). If the result is YES, the operation is terminated. If the result is NO, steps 21 to 28 are repeated.
[0025]
<Heuristics modeling manual creation>
Next, heuristic procedures will be described. In this method, the task of sequentially determining the unassigned part of the work schedule was modeled. In the case where the assignment is manually performed one by one, the assignment is determined from a place where there are few selectable work modes due to restrictions such as the required number of employees and work series. In addition, when manually creating a work schedule, usually, priority is assigned from the earliest date. For this reason, the assignment priority of each nurse was determined for each date. First, the parameters used for the analysis will be described.
[0026]
The parameter L (s) means the nursing skill rank of the nurse s. The parameter W (d, s) indicates the contents of the assignment of the date d to the nurse s in the work schedule in the process of preparation, and the assignment of S (d, s) is based on the work form n∈ {“day shift”, “quasi-night shift”. ", Etc. and unassigned: Take the state of φ. The parameter R (d, n, l) indicates the number of insufficient personnel by rank with respect to the required number of nursing skills rank 1 in the work form n on the date d (however, if l = # (don't care), Insufficient number of personnel required). The parameter V (d, s, n) indicates a work sequence when the assignment to the nurse s on the date d is the work form n, the assignment work for each day of the week, and the assignment determination for the evaluation rule of the required staff. The parameter M (d, n) indicates the number of nurses who can satisfy the required staff restriction of the work mode n on the date d. The parameter U (d, s, n) indicates the priority for the assignment work with the work form n as the assignment to the nurse s on the date d.
Here, the assignment determination V (d, s, n) will be described. For V (d, s, n), the following judgment is made in accordance with each evaluation rule of work series, assigned work on each day of the week, and required staff.
[0027]
In the assignment determination, V (d, s, n) = 0 means absolute prohibition, and requires the violation of the absolute constraint of the work series, the violation of the assignment constraint on each day of the week, and the total number of employees or the number of employees by rank. In some cases, the number of employees has been exceeded. Also, V (d, s, n) = 1 means no prohibition of compromise, does not satisfy the condition of V (d, s, n) = “absolute prohibition”, violates the compromise constraint of the work series or assigns each day of the week. There have been cases where one of the work compromise restrictions has been violated. Also, V (d, s, n) = 2 means that allocation is possible, and a constraint violation may occur for any of the evaluation rules of the work series, the assigned work of each day of the week, and the evaluation rules of the required staff. If not.
[0028]
Next, a method of determining the priority U (d, s, n) will be described. U (d, s, n) = 0 means that allocation is not possible, which is a case where the condition {W (d, s) z {φ} is satisfied. U (d, s, n) = 1 means the lowest priority, and is a case where the condition {W (d, s) = φ and V (d, s, n) = 0} is satisfied. U (d, s, n) = 2 means that the priority is low, and is a case where the condition {W (d, s) = φ and V (d, s, n) = 1} is satisfied. U (d, s, n) = 3 means that the priority is medium, and the condition {W (d, s) = φ and V (d, s, n) = 2 and R (d, n, # ) = 0 and R (d, n, L (s)) = 0}. U (d, s, n) = 4 means high priority, and the condition {W (d, s) = φ and V (d, s, n) = 2 and (N (d, n) > 0 or R (d, n, L (s))> 0)}. U (d, s, n) = 5 means the highest priority, and the condition {W (d, s) = φ and V (d, s, n) = 2 and (N (d, n)> 0 or R (d, n, L (s))> 0) and (M (n) ≦ R (d, n, #) or M (n) ≦ R (d, n, L (s)))} Is satisfied.
Heuristics are assigned using the above-mentioned parameters. An example of the algorithm will be described with reference to FIG. This algorithm can be used, for example, during step 24 described above.
[0029]
First, the recreated portion is left blank as unallocated (step 40). Next, the earliest date on which unassigned data exists is selected and assigned as the assigned date D (step 42). Next, R (D, s, #) and R (D, s, l) on the date D are calculated (step 44). Next, the priority U (D, s, n) is calculated for all the nurses s and the work form n on the date D (step 46). Next, the maximum value U of the priority U (D, s, n) on the date D max Is calculated (step 48). Further, on the date D, the priority is the condition {U (D, s, n) = U max The minimum value of the number of nurses s that satisfies} is calculated, and the work form that takes the minimum value is assigned as work N (step 50). At this time, if there are a plurality of work forms that take the minimum value, one is randomly selected from these work forms and assigned as work assignment N.
[0030]
Next, on the date D, the priority is the condition {U (D, s, N) = U max One is randomly selected from the nurses s satisfying}, and is set as an assigned nurse S (step 52). Next, the assignment work N is assigned to the assignment W (D, S) in the work table (step 54). Here, it is determined whether or not unallocated data exists (step 56). If no data is allocated, the operation is terminated. If not, steps 42 to 54 are repeated.
[0031]
<Method using bacterial mutation for repair near crossing point>
For repairing the destruction of the work series due to crossover, a method of applying a bacterial mutation that concentrates mutations near the crossover point can be considered. An example of the algorithm will be described with reference to FIGS.
[0032]
First, after the chromosome group is initialized (step 59), it is determined whether or not a mutation is required for the whole (step 60). Here, in the case of Yes, a mutation algorithm for the entire chromosome described below is performed (in the following examples, when the methodology is examined, the method includes a method including mutation to the whole (step 60). Yes direction).
If No in step 60, two parent individuals are randomly selected from the chromosome group, and one new child individual is generated by one-point crossover (step 62). Next, the length L around the intersection of the parent individual BM The local part of the day is selected as the local improvement range, and C The individual chromosomes are multiplied to generate a subchromosome group (step 64). Next, one individual is randomly selected from the subchromosome group, one copy is generated, and the probability P for each day within the local improvement range of the selected individual is determined. BM / L BM (Step 66).
[0033]
Next, the mutant individuals are evaluated. That is, this individual is compared with an individual selected at random from the subchromosome pool, and individuals with good evaluation values are left, and inferior individuals are deleted (step 68). Here, steps 66 to 68 are set to N ST This is repeated twice (step 70). Next, the evaluation value of the individual in the sub-chromosome group is compared with the evaluation value of the individual in the chromosome group, and the Pareto-optimal individual is replaced with a randomly selected one among the poorly Pareto individuals of the chromosome group (step 72). Steps 62 to 72 are repeated until the termination condition is satisfied (step 74).
[0034]
<Mutation to whole chromosome>
The search for fairness in working days may improve search efficiency by uniform mutations throughout the chromosome. In particular, when the diversity of the chromosome group is lost, the effect of the crossover operation is lost, and the solution search may be stagnated. Therefore, the selection operation (step 28 and step 72) of the parent individual in the above-described algorithm is performed a predetermined number of times (N XT If the pareto-optimal offspring is not added to the chromosome group as a new parent individual during this time, and the evaluation value does not improve, a search is performed by mutation to the entire chromosome instead of crossover. . An example of an algorithm for that will be described with reference to FIG. The algorithm requires a global mutation in step 21 or step 60 (ie, a predetermined number of times (N XT It can be carried out when it is determined that the evaluation value is not improved even by the selection operation of ())).
[0035]
First, it is determined whether or not the entire mutation is necessary (step 78), and in the case of Yes, the algorithm of the following steps 80 to 90 is executed. On the other hand, if it is determined in step 78 that mutation to the whole is not necessary, the process proceeds to “B” and proceeds to step 22 (<combined method of GA and heuristics>) or step 62 (<crossing point Approach using bacterial mutation for repair of the neighborhood>). That is, the present method can be performed by combining (1) a combined method of GA and heuristics, or (2) a method using bacterial mutation for repair near the crossing point.
If Yes in step 78, a parent individual is randomly selected from the chromosome group (step 80), and the parent individual is copied to C The sub-chromosomes are multiplied into individual chromosomes (step 82). Next, one individual is randomly selected from the subchromosome group, one copy is generated, and the probability P BM A uniform mutation is performed at / (1 month) (step 84). The mutant individuals are then evaluated. That is, this individual is compared with an individual randomly selected from the subchromosome pool, and individuals with good evaluation values are left, and inferior individuals are deleted (step 86). Next, step 84 to step 86 LT This is repeated twice (step 88). Then, the evaluation value of the individual in the sub chromosome group is compared with the evaluation value of the individual in the chromosome group, and if there is a Pareto-optimal individual, it is replaced with an inferior Pareto individual in the chromosome group (step 90). When the termination condition is satisfied, the algorithm is terminated (Yes in step 92), and when the termination condition is not satisfied, the process returns to step 78 (No in step 92).
[0036]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, an embodiment of the present invention will be described in detail with reference to the drawings, but the technical scope of the present invention is not limited by the following embodiment, without changing the gist, Various modifications can be made. Further, the technical scope of the present invention extends to an equivalent range.
Next, a nurse work table was actually created by using the above-mentioned various algorithms alone or in combination.
[0037]
<Question setting>
The example of a ward with 20 nurses was used to create a nurse work schedule. The evaluation rules used at that time are shown below.
(1) Rules related to work schedule
What are the absolute and compromise restrictions on the rules regarding work series? Each is as follows.
First, the absolute constraints are: (1) Do not assign “midnight shift” after “quasi-night shift”, (2) Do not assign late night shift for more than 4 consecutive days, and (3) sandwich midnight shift and late night shift. No assignment other than late-night work, and (4) continuous work for more than 6 days is prohibited.
In addition, as a compromise constraint, (1) do not assign "midnight shift" after "rest", (2) do not assign "quasi-night shift", "day shift", "midnight shift" in this order, and (3) day shift. Leaders are assigned for three or four consecutive days, and (4) midnight shift is not assigned for three consecutive days.
[0038]
(2) Assignment rules for each day of the week
Absolute constraints and compromise constraints on the assignment rules for each day are as follows.
As absolute constraints, there are three points: (1) Stafff J is a day shift and a day shift leader only, (2) Stafff S is a weekend break, and (3) Stafff T is a weekend break.
Also, there are two compromise restrictions: (1) Staff A is not assigned except for day shifts, and (2) Staff A is holiday off.
[0039]
(3) Rules on the required number of people
The absolute restrictions on the rules regarding the required number of people are as follows.
Absolute restrictions are as follows: (1) Do not assign more than 2 rank C nurses to “Night shift”, (2) Do not assign more than 2 rank C nurses to “Mid night shift”, (3) “Near shift” One or more nurses of rank A are assigned to "night shift"; (4) One or more nurses of rank A are assigned to "midnight shift"; and (5) A leader of day shift is assigned rank A or B. The five points.
[0040]
(4) Rules regarding the number of days allocated
In addition to the above rules, (1) rules other than Stuff A and Stuff J are allocated as fairly as possible, with respect to the number of days to be allocated.
Next, parameters used in each experiment are shown. Local search / recreate width is L BM = 4, the number of individuals in the chromosome group is N = 8, and the mutation parameter is P BM = 0.05 and the number of individuals in the subchromosome group N C = 2 and the number of local improvements N ST = 100 and search change confirmation cycle N XT = 50 and the number of global mutations N LT = 100 and the respective numerical values were set.
[0041]
Where L BM Is assumed to change when the solution search is stagnant. Each time the state where no new Pareto optimal individual is added to the chromosome group in the selection operation of the parent individual continues for 10 times, L BM Is increased by 1, and when a new Pareto optimal individual is added to the chromosome group, the value is returned to the original value.
[0042]
<Example 1 A combined method of GA and heuristics>
The effect of the combined method of GA and heuristic described above was examined. The effect of the mutation in step 26 was also examined. (1) When only heuristics are used after crossover (when step 26 is skipped and executed), (2) When heuristics and mutation of step 26 are used after crossover, and (3) Step without crossover 24 L BM When the local part of the day was set at random and the heuristics and the mutation in step 26 were performed, the obtained nurse work management tables were compared for each case. For comparison of each method, 50 operations were performed until the number of selection operations of the parent individual was 5,000, and the average of the evaluation values of the best individual according to equation (6) in the chromosome group was obtained. Changes in the evaluation value were examined. However, the determination in step 21 was not performed, and the uniform mutation to the entire chromosome shown in FIG. 9 was not performed.
[0043]
FIG. 10 and FIG. 11 show display screens of software used in each embodiment. This software is provided with three types of menu tabs 15, each of which is a menu screen (FIG. 10) for executing a work table creation, a menu screen for setting a work table (FIG. 11), and an extraction rule setting screen. ing.
[0044]
Of these, 20 nurses (Staff_A to Staff_T) are shown in the left column 10 of the work creation execution menu screen (FIG. 10), and to the right there is approximately one month's worth (on the screen illustrated). Shows the work process matrix data 11 for (37 days). The lower column 12 of the data 11 shows the number of day shift staff, the number of quasi-night shift staff, the number of late night shift staff, and the number of leaders for each day. Further, the right column 13 of the data 11 shows the number of holidays, the number of day shifts, the number of quasi-night shifts, the number of late night shifts, and the number of leaders per month for each nurse.
[0045]
The work schedule setting menu screen (FIG. 11) is roughly divided into five frames 16 to 20. In the leftmost frame 16 among them, settings relating to each staff (for example, skills, adaptation of leaders, fairness of work assignment, maximum number of interlocks) are made. In the upper center frame 17, individual prohibited work restrictions for specific staff (for example, (1) cannot work on a specific day of the week (or only work on a daily basis)), leaders can be assigned for four days. The data is a combination of the content such as "impossible for the last night shift for 4 consecutive days" and (2) the priority of the constraint.). In the upper right frame 18, the upper limit number and the lower limit number of persons having predetermined skills (specified for each staff in the left frame 16) are set for day shift, semi-night shift, late night shift, and leader. In the lower frames 19 and 20, a minimum number of assignments and a maximum number of assignments are set for day shift, semi-night shift, late night shift, leader, and rest on each day of the week. In this manner, predetermined calculations and manual processing are performed on the menu screen for executing work creation based on the evaluation rules set on the menu screen for setting work schedule.
[0046]
FIG. 12 shows the transition of the improvement value of the total evaluation value of the equation (6), FIG. 13 shows the transition of the improvement value of the evaluation value only for fairness of the working days, and FIG. The change of the improvement value of the evaluation value except fairness was shown. From these results, it was found that crossover was effective in improving the evaluation value of fairness, and mutation was effective in improving the evaluation value excluding fairness.
[0047]
<Example 2 Effect of heuristics>
A comparison was made between the case where heuristics in Steps 20 to 30 were used for repairing the disruption of the work sequence after crossover and the case where bacterial mutations in Steps 60 to 74 were used. In the algorithm of Steps 20 to 30, the mutation of Step 26 was not used in order to confirm the effect of purely heuristics. In addition, the judgment in step 21 was not performed, and the uniform mutation to the entire chromosome shown in FIG. 9 was not performed.
[0048]
In each case, 50 operations are performed until the number of selection operations of the parent individual is up to 5,000, and the average of the evaluation values of the best individual according to Expression (6) in the chromosome group is obtained. The transition of the improvement value was examined. However, uniform mutation (steps 78 to 90) to the entire chromosome was not performed. Note that the local improvement frequency N, which is an experimental parameter, ST Is calculated so that the operation time required to perform 5,000 selection operations of the parent individual is substantially equal in each case. ST = 100. FIG. 15 shows the transition of the improvement value of the evaluation value from the initial individual.
As a result, it was shown that heuristics had better search efficiency than bacterial mutations.
[0049]
<Example 3 Effect of Mutation on Whole>
Next, the effect of the mutation on the entire chromosome was examined. After the crossover, the effect of the use of the heuristics and the mutations in Steps 20 to 30 together with the mutation was examined for the effect of the presence or absence of the uniform mutation on the entire chromosome in Steps 78 to 92. The chromosome evaluation calculation is performed 50 times up to 5,000 times, the average of the evaluation values of the best individual according to the formula (6) is obtained in the chromosome group, and the transition of the improvement value of the average evaluation value from the initial individual is calculated. Examined. However, when performing mutation to the whole, the mutation to the whole is performed in consideration of the fact that the evaluation operation time is about 20 times faster than when performing crossover using heuristics. In this case, the number of evaluation calculations was changed from 20 to 1, once.
[0050]
FIG. 16 shows the transition of the improvement value of the overall evaluation value of the equation (6), FIG. 17 shows the transition of the improvement value of the evaluation value of only the fairness of the working days, and FIG. The transition of the improvement of the evaluation value excluding the difference is shown.
As a result, it was found that by adding uniform mutations to the entire chromosome, the search efficiency for fairness in working days was improved. However, the method of adding only mutations to the entire chromosome significantly reduced the search efficiency.
[0051]
<Discussion>
According to the study of the present inventors, it has been shown that an efficient search for fairness in the number of working days can be realized by combining heuristics with the repair of the working sequence near the crossing point. Further, by using heuristics and mutation together, even better results could be obtained. This was thought to be due to the fact that algorithms using only heuristics that were inspired by manual creation tended to fall into local solutions, but by using mutations together, such local solutions could be avoided.
It is considered that the cause of the local solution when heuristics alone is used is that the algorithm for heuristics is incomplete and the solution search direction is incorrect. However, according to the study results of the present inventors, it was possible to compensate for incomplete heuristics by using a mutation that is a stochastic search in combination with a heuristic that is a search using prior knowledge. It is shown that.
[0052]
In addition to the above improvements, the addition of uniform mutations throughout showed that the search for fairness in working days was more efficient. This suggests that uniform mutations throughout are effective for global searches such as fairness.
In addition, it was shown that the search performance was not very good when only bacterial mutation was performed without using heuristics for repair near the crossing point.
As described above, according to the present embodiment, it is possible to create a nurse work table with a fair working time in a relatively short time while satisfying a complicated evaluation rule and without falling into a local solution. .
[0053]
【The invention's effect】
According to the inventions of the present inventors, it is possible to create a nurse work schedule in a relatively short time without updating a complicated evaluation rule and satisfying it, without falling into a local solution.
[Brief description of the drawings]
FIG. 1 is a diagram showing an example of a specific nurse work schedule. In the left column (skill level) in the figure, "A" indicates skill, "B" indicates unskilled, and "C" indicates a newcomer. Further, “day” indicates day shift (AM 8:00 to PM 4:00), “quasi” indicates semi-night shift (PM 4:00 to AM 0:00), and “deep” indicates midnight shift (AM 0:00 to AM8: 00).
FIG. 2 is a diagram showing an outline of an interactive nurse work table creation support system.
FIG. 3 is a diagram showing a procedure for creating a work table by the nurse work table creation support system described in the embodiment.
FIG. 4 is a diagram showing an algorithm of a nurse work table creation support software by a combined method of BEA and heuristics.
FIG. 5 is a flowchart of nurse work schedule creation support software based on a combined method of BEA and heuristics.
FIG. 6 is a flowchart of a heuristic modeling manual creation.
FIG. 7
FIG. 4 is a diagram showing an algorithm of a technique using a bacterial mutation for repairing near an intersection.
FIG. 8 is a flowchart of a method using a bacterial mutation for repair near an intersection.
FIG. 9 is a flowchart for adding a mutation to the whole.
FIG. 10 is a software execution menu screen 1 used when each embodiment is executed.
FIG. 11 is a software execution menu screen 2 used when executing each embodiment.
FIG. 12
It is a graph which shows transition of the improvement value of a comprehensive evaluation value. In the figure, ■ indicates an algorithm using crossover, heuristics and mutation, ▲ indicates an algorithm using crossover and heuristics, and × indicates an algorithm using heuristics and mutation. The results of each calculation are shown.
FIG. 13 is a graph showing a change in the improvement value of the fairness evaluation value in the first embodiment. In addition, the meaning of the symbol in a figure is the same as that of FIG.
FIG. 14 is a graph showing a transition of an improvement value of an evaluation value excluding fairness in the first embodiment. In addition, the meaning of the symbol in a figure is the same as that of FIG.
FIG. 15 is a graph showing a transition of an evaluation value improvement value in Example 2. In the figure, ◆ shows the results of calculation using an algorithm that uses crossover and heuristics in combination, and ■ shows the results of calculation using an algorithm that uses crossover and bacterial mutation in combination.
FIG. 16 shows a third embodiment.
It is a graph which shows transition of the improvement value of total evaluation value. In the figure, ◆ shows the results obtained by using an algorithm that uses crossover, heuristics, mutation, and total shift, and ■ shows the results obtained by using an algorithm that uses crossover, heuristics, and mutation. .
FIG. 17 is a graph showing a change in the improvement value of the fairness evaluation value in the third embodiment. The meanings of the symbols in the figure are the same as those in FIG.
FIG. 18 is a graph showing a transition of an improvement value of an evaluation value excluding fairness in the third embodiment. The meanings of the symbols in the figure are the same as those in FIG.

Claims (2)

複数の看護師の勤務工程を2週間以上の長期間に渡って備えた勤務表を作成するために、▲1▼各看護師に関する熟練度合・勤務系列・各曜日の割付勤務・必要人数を含む評価規則の入力を促す画面を表示するステップ、▲2▼前記評価規則をできるだけ満足するようにコンピュータによって自動計算するステップ、▲3▼自動計算によって所定の終了条件を満たした後に、暫定解を画面に表示するステップ、▲4▼前記暫定解に対して、ユーザの手入力による修正を促すステップ、▲5▼前記評価規則の更新を行うステップを含むソフトウエアであって、
前記▲2▼ステップには、(a)ランダムに発生させた親勤務表の二個を交叉させる交叉ステップ、(b)前記交叉させた点を含む所定の近傍箇所を突然変異または/およびヒューリスティクスによって子勤務表を再生成するステップ、(c)前記子勤務表に較べて劣パレートな親勤務表を子勤務表と置き換えるステップを含むことを特徴とするソフトウエア。
In order to create a work schedule with multiple nurses working over a long period of two weeks or more, (1) include the level of skill, work sequence, assigned work on each day, and the required number of workers for each nurse A step of displaying a screen for prompting the user to input an evaluation rule; (2) a step of automatically calculating by a computer so as to satisfy the evaluation rule as much as possible; and (3) a screen of a provisional solution after a predetermined termination condition is satisfied by the automatic calculation. (4) a step of prompting the user to manually correct the provisional solution, and (5) a step of updating the evaluation rule.
The step (2) includes (a) a crossover step of crossing two randomly generated parent work tables, and (b) a mutation or / and / or heuristics of a predetermined neighborhood including the crossed points. Regenerating a child work table by using the following method: (c) replacing a parent work table, which is inferior to the child work table, with a child work table.
前記▲2▼ステップには、更に(d)所定の回数だけ前記(a)〜(c)ステップを繰り返した後に評価値の改善が認められない場合に、全体への突然変異を行うステップを含むことを特徴とする請求項1に記載のソフトウエア。The step (2) further includes the step of (d) mutating the whole if the evaluation value is not improved after repeating the steps (a) to (c) a predetermined number of times. The software according to claim 1, wherein:
JP2002313544A 2002-10-28 2002-10-28 Nurse wopk schedule preparation support software or the like Pending JP2004151790A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002313544A JP2004151790A (en) 2002-10-28 2002-10-28 Nurse wopk schedule preparation support software or the like

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002313544A JP2004151790A (en) 2002-10-28 2002-10-28 Nurse wopk schedule preparation support software or the like

Publications (1)

Publication Number Publication Date
JP2004151790A true JP2004151790A (en) 2004-05-27

Family

ID=32458104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002313544A Pending JP2004151790A (en) 2002-10-28 2002-10-28 Nurse wopk schedule preparation support software or the like

Country Status (1)

Country Link
JP (1) JP2004151790A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012064031A (en) * 2010-09-16 2012-03-29 Ritsumeikan Scheduling device, computer program, and data
CN102760253A (en) * 2012-06-05 2012-10-31 广东智华计算机科技有限公司 Medical personnel intelligent scheduling and emergency-processing method
CN108986208A (en) * 2018-07-11 2018-12-11 辽宁工程技术大学 A kind of reconstructing method of coal mine gob inbreak form
JP2019057075A (en) * 2017-09-20 2019-04-11 株式会社東芝 Scheduling device, scheduling method, and program
CN110020805A (en) * 2019-04-11 2019-07-16 广东工业大学 A kind of task calendar formulating method, device and medium
JP2019144609A (en) * 2018-02-15 2019-08-29 ウィンワークス株式会社 Work schedule utilization apparatus and program

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012064031A (en) * 2010-09-16 2012-03-29 Ritsumeikan Scheduling device, computer program, and data
CN102760253A (en) * 2012-06-05 2012-10-31 广东智华计算机科技有限公司 Medical personnel intelligent scheduling and emergency-processing method
JP2019057075A (en) * 2017-09-20 2019-04-11 株式会社東芝 Scheduling device, scheduling method, and program
JP2019144609A (en) * 2018-02-15 2019-08-29 ウィンワークス株式会社 Work schedule utilization apparatus and program
JP7075075B2 (en) 2018-02-15 2022-05-25 ウィンワークス株式会社 Schedule creation operation device, program
CN108986208A (en) * 2018-07-11 2018-12-11 辽宁工程技术大学 A kind of reconstructing method of coal mine gob inbreak form
CN108986208B (en) * 2018-07-11 2023-04-07 辽宁工程技术大学 Reconstruction method for caving form of coal mine goaf
CN110020805A (en) * 2019-04-11 2019-07-16 广东工业大学 A kind of task calendar formulating method, device and medium
CN110020805B (en) * 2019-04-11 2023-11-07 广东工业大学 Task schedule making method, device and medium

Similar Documents

Publication Publication Date Title
Burke et al. A memetic approach to the nurse rostering problem
Topaloglu et al. A constraint programming-based solution approach for medical resident scheduling problems
Beaulieu et al. A mathematical programming approach for scheduling physicians in the emergency room
Kawanaka et al. Genetic algorithm with the constraints for nurse scheduling problem
Benavides et al. Flow shop scheduling with heterogeneous workers
JP2006277060A (en) Schedule preparation support system, schedule preparation method and program
Guo et al. A column generation-based algorithm for midterm nurse scheduling with specialized constraints, preference considerations, and overtime
Smith The application of an interactive algorithm to develop cyclical rotational schedules for nursing personnel
Böðvarsdóttir et al. A flexible mixed integer programming-based system for real-world nurse rostering
Ma et al. Integration routing and scheduling for multiple home health care centers using a multi-objective cooperation evolutionary algorithm with stochastic simulation
Çetin et al. Nurse scheduling using binary fuzzy goal programming
JP2004151790A (en) Nurse wopk schedule preparation support software or the like
Younespour et al. Using mixed integer programming and constraint programming for operating rooms scheduling with modified block strategy
Lahijanian et al. Proposing a model for operating room scheduling based on fuzzy surgical duration
Triki et al. A two-phase approach for periodic home health care planning
Vieira et al. Optimizing an integrated home care problem: A heuristic-based decision-support system
JP6706169B2 (en) Production schedule creation system and production schedule creation method
JP5843902B2 (en) Care staff career path formation device
Velásquez et al. A set packing approach for scheduling elective surgical procedures
Saharan et al. Graph coloring based optimized algorithm for resource utilization in examination scheduling
Ehlers School choice with control
JP2006236173A (en) Roster creation system
Hansen et al. Planning of high school examinations in Denmark
JPH09244706A (en) Method and device for plan correction
CN107148637A (en) Information processor, information processing method and program

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20040413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040729