JP2024035331A - スケジュール生成システム、スケジュール生成方法及びプログラム - Google Patents

スケジュール生成システム、スケジュール生成方法及びプログラム Download PDF

Info

Publication number
JP2024035331A
JP2024035331A JP2022139723A JP2022139723A JP2024035331A JP 2024035331 A JP2024035331 A JP 2024035331A JP 2022139723 A JP2022139723 A JP 2022139723A JP 2022139723 A JP2022139723 A JP 2022139723A JP 2024035331 A JP2024035331 A JP 2024035331A
Authority
JP
Japan
Prior art keywords
combination information
unit
activity
template
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
JP2022139723A
Other languages
English (en)
Inventor
智司 小野
Tomoji Ono
一杜 柏木
Kazuto Kashiwagi
良介 中渡瀬
Ryosuke Nakawatase
泰人 廣濱
Yasuhito Hirohama
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.)
Kagoshima University NUC
Ricoh Co Ltd
Original Assignee
Kagoshima University NUC
Ricoh 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 Kagoshima University NUC, Ricoh Co Ltd filed Critical Kagoshima University NUC
Priority to JP2022139723A priority Critical patent/JP2024035331A/ja
Publication of JP2024035331A publication Critical patent/JP2024035331A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】表に現れにくい制約条件を満たす最適なスケジュールを生成することができるスケジュール生成システム等を提供する。【解決手段】組み合わせ情報蓄積部10は、スタッフが実際に行った勤務シフトをスタッフ毎に時系列に並べて構成される勤務シフトの組み合わせ情報を蓄積する。テンプレート情報記憶部11は、組み合わせ情報の特徴を抽出するテンプレート情報を記憶する。特徴抽出部12は、テンプレート情報記憶部11に記憶されたテンプレート情報に従って、組み合わせ情報蓄積部10に蓄積された組み合わせ情報の特徴を抽出する。制約条件生成部13は、特徴抽出部12で抽出された特徴が条件を満たし、特徴抽出部12で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する。最適化ソルバ15は、制約条件生成部13で生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報をスタッフが行う予定の勤務シフトのスケジュール情報として生成する。【選択図】図1

Description

本発明は、スケジュール生成システム、スケジュール生成方法及びプログラムに関する。
病院、介護施設のような多くのスタッフが働く組織では、スタッフのスケジュールが予め生成される。スケジュールを生成する際には、必要なスタッフ数、遵守しなければならない就業条件、各スタッフの勤務日、勤務時間、休暇希望のような様々な制約条件を考慮する必要がある。多岐に亘る制約条件を考慮したスケジュールの生成は、非常に負担のかかる作業である。そこで、スケジュールを自動生成する装置が開示されている(例えば、特許文献1~3参照)。
特開2020-170422号公報 特開2021-92939号公報 特開2012-181719号公報
しかしながら、職場には、表には現れにくいスタッフの人間関係、スキル、都合等があるため、それらを無視してスケジュールを生成しても業務を円滑に遂行できるとは限らない。そこで、スケジュールを生成する前に、スタッフにヒアリングを実施し、そのヒアリングの結果から表に現れにくい人間関係等の制約条件を明確化することが行われる。このような作業が、スケジュールの生成作業をさらに負担の大きいものにしている。そこで、必要なスタッフ数、遵守しなければならない就業条件に加え、表に現れにくい制約条件を明確化し、明確化された制約条件の下でスケジュールを自動的に生成することができるシステムの登場が望まれている。
上記特許文献1~3に開示された装置の中には、過去の活動実績をスケジュールの生成に反映するものもあるが、この場合、表に現れにくい制約条件をスケジュールに反映できるとは限らない。これらの装置であっても、制約条件は、ヒアリングの結果から得る必要があるためである。
本発明は、上記実情の下になされたものであり、表に現れにくい制約条件を満たす最適なスケジュールを生成することができるスケジュール生成システム、スケジュール生成方法及びプログラムを提供することを目的とする。
上記目的を達成するために、本発明の第1の観点に係るスケジュール生成システムは、
活動主体が実際に行った活動内容を前記活動主体毎に時系列に並べて構成される前記活動内容の組み合わせ情報を蓄積する組み合わせ情報蓄積部と、
前記組み合わせ情報蓄積部に蓄積された組み合わせ情報の特徴を抽出するテンプレート情報を記憶するテンプレート情報記憶部と、
前記テンプレート情報記憶部に記憶されたテンプレート情報に従って、前記組み合わせ情報蓄積部に蓄積された組み合わせ情報の特徴を抽出する特徴抽出部と、
前記特徴抽出部で抽出された特徴が条件を満たし、前記特徴抽出部で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する制約条件生成部と、
前記制約条件生成部で生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を前記活動主体が行う予定の前記活動内容のスケジュール情報として生成する最適化ソルバと、
を備える。
この場合、前記組み合わせ情報蓄積部に蓄積された組み合わせ情報に基づいて、同じ時間で複数の活動主体が行う活動内容の余裕を示す余裕度を時系列で算出する余裕度算出部と、
前記組み合わせ情報蓄積部で蓄積された組み合わせ情報のうち、前記余裕度算出部で算出された余裕度が閾値以下となった時間に対応する組み合わせ情報を、前記特徴抽出部で特徴を抽出する組み合わせ情報から除外する組み合わせ除外部と、
を備える、
こととしてもよい。
前記組み合わせ情報蓄積部に蓄積された組み合わせ情報に対して統計的に外れ値とみなせる組み合わせ情報を検出する外れ値検出部と、
前記外れ値検出部で検出された組み合わせ情報を、前記特徴抽出部で特徴を抽出する組み合わせ情報から除外する外れ値除外部と、
を備える、
こととしてもよい。
前記最適化ソルバは、
前記制約条件生成部で生成された複数の制約条件のうち、前記組み合わせ情報が満足する制約条件の数に応じて値が増減する関数を前記目的関数として、前記スケジュール情報を生成する、
こととしてもよい。
前記最適化ソルバは、
前記制約条件生成部で生成された制約条件に加え、付加された制約条件の下で、前記スケジュール情報を生成する、
こととしてもよい。
前記活動内容は、勤務シフトにおける勤務時間である、
こととしてもよい。
本発明の第2の観点に係るスケジュール生成方法は、
スケジュール生成システムによって実行されるスケジュール生成方法であって、
活動主体が実際に行った活動内容を前記活動主体毎に時系列に並べて構成される前記活動内容の組み合わせ情報を蓄積する組み合わせ情報の特徴を、前記組み合わせ情報の特徴を抽出するテンプレート情報に従って抽出し、
抽出された特徴が条件を満たし、抽出されなかった特徴が条件を満たさないものとする制約条件を生成し、
生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を前記活動主体が行う予定の前記活動内容のスケジュール情報として生成する。
本発明の第3の観点に係るプログラムは、
コンピュータを、
活動主体が実際に行った活動内容を前記活動主体毎に時系列に並べて構成される前記活動内容の組み合わせ情報を蓄積する組み合わせ情報蓄積部、
前記組み合わせ情報の特徴を抽出するテンプレート情報を記憶するテンプレート情報記憶部、
前記テンプレート情報記憶部に記憶されたテンプレート情報に従って、前記組み合わせ情報蓄積部に蓄積された組み合わせ情報の特徴を抽出する特徴抽出部、
前記特徴抽出部で抽出された特徴が条件を満たし、前記特徴抽出部で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する制約条件生成部、
前記制約条件生成部で生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を前記活動主体が行う予定の前記活動内容のスケジュール情報として生成する最適化ソルバ、
として機能させる。
本発明によれば、活動主体が実際に行った活動内容を活動主体毎に時系列に並べて構成される活動内容の組み合わせ情報の特徴を抽出し、抽出された特徴が条件を満たし、抽出されなかった特徴が条件を満たさないとする制約条件の下で、組み合わせ最適化を行って組み合わせ情報を生成する。これにより、ヒアリング等を行うことなく、表に現れにくい制約条件を満たす最適なスケジュールを生成することができる。
本発明の実施の形態1に係るスケジュール生成システムのソフトウエア構成を示すブロック図である。 勤務シフト表の一例を示す図である。 図2の勤務シフト表の3次元座標系で表現したデータの一例を示す図である。 (A)~(D)は、テンプレート情報の一例を示す図である。 (A)は、各スタッフの勤務シフトの頻度を示すヒストグラムである。(B)は、各スタッフの勤務日数、勤務時間、休暇日数を頻度/時間を示すヒストグラムである。(C)は、勤務シフトの出願頻度をスタッフ間で比較して示すヒストグラムである。 2日連続する勤務シフトの組み合わせを示す表である。 (A)は、同日に勤務する2人のスタッフの組み合わせを示す表である。(B)は、曜日毎のスタッフの人数の最大値を示す図である。 希望休暇表の一部を示す図である。 図1のスケジュール生成システムのハードウエア構成を示すブロック図である。 図1のスケジュール生成システムの動作であるスケジュール生成処理を示すフローチャートである。 本発明の実施の形態2に係るスケジュール生成システムのソフトウエア構成を示すブロック図である。 本発明の実施の形態3に係るスケジュール生成システムのソフトウエア構成を示すブロック図である。
以下、本発明の実施の形態について図面を参照して詳細に説明する。各図面においては、同一又は同等の部分に同一の符号を付す。
以下の実施の形態に係るスケジュール生成システムは、活動主体が行う活動内容を活動主体毎に時系列に並べて構成される活動内容の組み合わせ情報であるスケジュールを生成する。活動主体は、個々に独立して活動することができる人又は装置である。すなわち、活動主体は、人である場合もあるし、装置である場合もある。活動主体が人であれば、活動内容には、その人が行う活動(仕事、業務)に関する事項が含まれる。また、活動主体が装置であれば、その装置が行う処理に関する事項が含まれる。いずれにしても、複数の人の仕事内容又は複数の装置の処理内容であって、スケジューリングを行う必要があるものが、活動内容となる。
実施の形態1
まず、本発明の実施の形態1について説明する。本実施の形態1では、活動主体を介護スタッフ(以下、単に「スタッフ」と呼ぶ)とし、その活動内容を、介護業務における勤務シフト(勤務時間の態様)とする。本実施形態1に係るスケジュール生成システム1は、複数のスタッフの勤務シフトの時系列の組み合わせである組み合わせ情報をスケジュールとして生成する。
[全体構成]
図1に示すように、本実施の形態1に係るスケジュール生成システム1は、組み合わせ情報蓄積部10と、テンプレート情報記憶部11と、特徴抽出部12と、制約条件生成部13と、付加制約条件記憶部14と、最適化ソルバ15と、を備える。
[組み合わせ情報蓄積部]
組み合わせ情報蓄積部10は、複数のスタッフが過去に実際に行った勤務シフトをスタッフ毎に時系列に並べて構成される勤務シフトの組み合わせ情報を蓄積する。勤務シフトは、例えば、図2に示す勤務シフト表で表現される。
この勤務シフト表では、複数のスタッフの1日(土)から14日(金)までの2週間分のスタッフの勤務シフトが示されている。この表において、スタッフは、計16人であり、それぞれが10001~10008、10010~10015、10017、10044の識別番号で識別される。10001~10008のスタッフは、基本的にユニットU1のスタッフであり、10010、10011のスタッフは、夜間専門のスタッフであり、10012~10044のスタッフは、ユニットU2のスタッフである。なお、スタッフには、常勤の者もいれば、非常勤の者もいる。
この勤務シフトには、例えば、A勤務、B勤務、C勤務、D勤務、夜勤入、夜勤明がある。A勤務は、通常の勤務時間より開始及び終了の時刻が早い早番の勤務である。B勤務は通常の勤務時間での勤務である。C勤務は、通常の勤務時間より開始及び終了の時刻が遅い遅番の勤務である。D勤務は、デイケア担当であり、通常の勤務時間より短時間の業務である。夜勤入は、夕方から明け方までの夜勤勤務である。夜勤明は、夜半から通常の勤務時間が始まるまでの夜勤業務である。なお、他に、午前だけのE勤務があってもよいし、午後だけのF勤務があってもよい。
この勤務シフト表における介護業務は、ユニットU1での業務と、ユニットU2での業務に分けられている。この勤務シフト表では、ユニットU1でのA勤務、B勤務、C勤務、D勤務をそれぞれ「1A」、「1B」、「1C」、「1D」として示しており、ユニットU2でのA勤務、B勤務、C勤務、D勤務をそれぞれ「2A」、「2B」、「2C」、「2D」として示している。また、ユニットU1の夜勤入、ユニットU2の夜勤入は、それぞれ「1→」、「2→」で示している。また、ユニットU1の夜勤明、ユニットU2の夜勤明は、「1←」、「2←」で示している。
また、休暇には、「休」と、「年休」とがある。「休」は、有給休暇ではなく、「年休」は、有給休暇である。この勤務表では、「休」は、薄く塗りつぶされており、「年休」は、濃く塗りつぶされている。なお、休暇希望を出したがかなえられず、勤務した日の勤務シフトは、太枠で示されている。以下では、勤務シフトとして、「1A」~「1D」、「2A」~「2D」、「1→」、「1←」、「2→」、「2←」、「休」、「年休」があるものとする。
なお、組み合わせ情報蓄積部10は、勤務シフト表に記憶された日の希望休暇人数も記憶している。希望休暇人数は、ユニットU1、ユニットU2、夜間業務に分けて記憶している。
組み合わせ情報蓄積部10は、例えば、図2に示す過去の勤務シフト表を示すデータを蓄積している。勤務シフト表を示すデータは、図3に示す3次元座標系で表現することができる。この3次元座標系では、3つの座標軸d、s、tが、それぞれスタッフ、日程、勤務シフトを表すものとする。図2に示す勤務シフト表の各要素は、この3次元座標系の3つの座標軸で規定される位置に割り当てられている。
例えば、スタッフ10001の勤務シフトは、s=1の空間に割り当てられる。また、1日(土)の勤務シフトはd=1の空間に割り当てられる。図2によれば、スタッフ10001(s=1)の1日(土)(d=1)の勤務シフトは「休」であるため、s=1、d=1の空間では、座標軸tにおける「休」の部分が「1」となり、他の部分が「0」となる。
さらに、図2によれば、スタッフ10001(s=1)の2日(日)(d=2)の勤務シフトは「1A」であるため、座標軸tにおける「1A」の部分が「1」となり、他の部分は「0」となる。同様に、スタッフ10001(s=1)の3日から14日まで(d=3~14)の勤務シフトは、座標軸tにおける該当部分が「1」となり、他の部分が「0」となる。このようにして、座標軸sがスタッフ10001(s=1)にある部分での1、0の行列が決定される。
同様に、座標軸sにおける各スタッフの1日~14日(d=1~14)における勤務シフトを1,0の行列で表現することができる。勤務シフト表が示すデータは、以下の設計変数で表現することができる。
設計変数:xd,s,t={0,1}
設計変数xd,s,tは、図3に示すように、dを日付とし、sをスタッフとし、tを業務種別とする3次元行列の要素である。前述のように、1日~14日をd=1~14に割り当て、スタッフ10001~10044をs=1~16に割り当て、勤務種別「1A」~「1D」、「2A」~「2D」、「1夜入」、「2夜入」、「1夜明」、「2夜明」、「休」、「年休」をt=1~14に割り当てれば、3次元行列で、図2の勤務シフト表を表現することができる。組み合わせ情報蓄積部10は、このような形式で、勤務シフト表のデータを蓄積する。実際には、組み合わせ情報蓄積部10には、数ヶ月、数年にわたる勤務シフト表に対応する組み合わせ情報が蓄積されている。なお、3次元行列では、t=1~12が勤務であり、t=13,14は、休暇であることが予め定められている。
[テンプレート情報記憶部]
図1に戻り、テンプレート情報記憶部11は、組み合わせ情報蓄積部10に蓄積された組み合わせ情報の特徴を抽出するテンプレート情報を記憶する。テンプレート情報は、組み合わせ情報の特徴を抽出するためのひな形となる情報である。テンプレート情報は、要素の数が膨大な勤務シフト表のどのような特徴に注目するか、特徴を抽出する際のその抽出方針を示す情報である。
本実施の形態では、テンプレート情報は、予め用意されており、テンプレート情報記憶部11に記憶されている。テンプレート情報は、介護職場間で共通の情報であり、最適化する問題に応じて一度生成すれば、他の介護施設でのスケジュールの生成にも用いることができる。
テンプレート情報には以下のような情報が含まれる。
(1)1人×1日の業務シフトを抽出するテンプレートT1(図4(A))
テンプレートT1は、各スタッフの1日の勤務シフトを抽出する基本的なテンプレート情報である。3次元行列においては、テンプレートT1は、図4(A)に示すように、同じs位置、同じd位置の要素xd,s,tを抜き出すように構成されている。テンプレートT1は、d方向に走査され、1ずつシフトする度に、テンプレートT1内の情報が読み出される。テンプレートT1を用いて抽出される特徴は、各スタッフがその日に行った勤務シフトを表している。例えば、テンプレートT1を用いれば、例えば、図2に示す勤務シフト表から、スタッフ10001が行った勤務シフトには、1A、1B、1D、1→、1←が含まれることを抽出することができる。
テンプレートT1に関連して、テンプレート情報記憶部11には、特徴抽出部12が抽出すべき特徴が記憶されている。これらの特徴は、テンプレートT1によって求められる。
(1-A)各スタッフが対応した勤務シフト
(1-B)各スタッフの勤務日数、勤務時間、休暇日数
(1-C)各スタッフの勤務シフト毎の日数
(2)1人×複数日の業務シフトをまとめて抽出するテンプレートT2(図4(B))
テンプレートT2は、各スタッフの複数日の勤務可能な勤務シフトの組み合わせを一度に抽出するテンプレート情報である。複数日は、連続する日を指定することができる。この場合、テンプレートT2は、図4(B)に示すように、同じs位置、連続する複数のd位置の要素xd,s,tにおける業務シフトを一度に抜き出すように構成されている。図4(B)では、複数日は、2日として示しているが、3日~7日とすることも可能である。テンプレートT2は、d方向に走査され、1ずつシフトする度に、テンプレートT2内の情報が読み出される。テンプレートT2に関連して、テンプレート情報記憶部11には、特徴抽出部12が抽出すべき特徴が記憶されている。この特徴は、テンプレートT2によって求められる。
(2-A)連続勤務可能な勤務シフトの組み合わせ
(3)複数人×1日の業務シフトをまとめて抽出するテンプレートT3(図4(C))
テンプレートT3は、複数のスタッフの1日の勤務シフトの組み合わせを一度に抽出するテンプレート情報である。テンプレートT3には、様々な形態がある。図4(C)に示すテンプレートT3は、2つのs位置、2つのd位置で要素xd,s,tを抜き出す。テンプレートT3は、2人のスタッフのすべての組み合わせについて、それぞれ用意されている。また、テンプレートT3は、2人だけでなく、3人以上のスタッフの業務シフトを一度に抽出可能なものが用意されていてもよい。テンプレートT3は、d方向に走査され、1ずつシフトする度に、テンプレートT3内の情報が読み出される。テンプレートT3に関連して、テンプレート情報記憶部11には、特徴抽出部12が抽出すべき特徴が記憶されている。この特徴は、テンプレートT3によって求められる。
(3-A)同日に勤務する2人のスタッフの組み合わせ
(4)複数人×複数日の業務シフトをまとめて抽出するテンプレートT4(図4(D))
テンプレートT4は、複数のスタッフの複数日の勤務シフトの組み合わせを抽出するテンプレート情報である。テンプレートT4には、様々な形態がある。例えば、図4(D)に示すテンプレートT4は、すべてのs位置、複数のd位置で要素xd,s,tを抜き出す。テンプレートT4の各枠は、例えば同じ曜日に指定することができる(図4(D)参照)。テンプレートT4は、d方向に走査され、1ずつシフトする度に、テンプレートT4内の情報が読み出される。テンプレートT4に関連して、テンプレート情報記憶部11には、特徴抽出部12が抽出すべき特徴が記憶されている。この特徴は、テンプレートT4によって求められる。
(4-A)各曜日に勤務するスタッフの人数
なお、テンプレートT1~T4は、ユニットU1、U2、夜間業務、別々に用意されていてもよい。
[特徴抽出部]
図1に戻り、特徴抽出部12は、テンプレート情報記憶部11に記憶されたテンプレート情報に従って、組み合わせ情報蓄積部10に蓄積された組み合わせ情報の特徴を抽出する。
(テンプレートT1)
特徴抽出部12は、図4(A)に示す上記(1)の1人×1日のテンプレートT1を用いて、各スタッフにおける勤務シフトを抽出する。特徴抽出部12は、テンプレートT1を過去の勤務シフトのデータを示す3次元行列のd方向に1つずつシフトさせてその都度、枠内の要素xd,s,tを抜き出していく処理を、例えば所定期間分、例えば2週間、1か月又は1年分行う。テンプレートT1を用いて抜き出された結果から、特徴抽出部12は、以下に示すような特徴を抽出する。
(1-A)各スタッフが対応可能な勤務シフト
テンプレートT1を用いて抽出された要素xd,s,tで、同じ勤務シフトが出現した回数(「1」となっている回数)で、その出現頻度を求めることにより、各スタッフが対応可能な勤務シフトと、対応可能でない勤務シフトとを、明確に区別することができる。例えば、図5(A)に示すように、各スタッフの勤務シフトの出現頻度をヒストグラムの形式で得ることができる。特徴抽出部12は、これらの情報を、勤務シフトの組み合わせ情報の特徴として抽出する。
(1-B)各スタッフの勤務日数、勤務時間、休暇日数
特徴抽出部12は、テンプレートT1を用いて抽出された要素xd,s,tについて、各スタッフが勤務した日数(「休」及び「年休」でない日数)を加算して、図5(B)に示すように、所定期間における各スタッフの勤務日数を勤務シフトの組み合わせ情報の特徴として求める。また、特徴抽出部12は、テンプレートT1を用いて抽出された要素xd,s,tについて、各スタッフの各日の勤務シフトに応じて、各日の勤務時間を算出し、算出した値を加算して、所定期間における勤務時間を勤務シフトの組み合わせ情報の特徴として求める。また、特徴抽出部12は、テンプレートT1を用いて抽出された要素xd,s,tについて、「休」及び「年休」が出現した回数を求め、図5(B)に示すように、所定期間における各スタッフの休暇日数を勤務シフトの組み合わせ情報の特徴として求める。
(1-C)各スタッフの勤務シフト毎の日数
特徴抽出部12は、テンプレートT1を用いて抽出された要素xd,s,tで同じ勤務シフトが出現した回数で、その出現頻度を求めることにより、特徴抽出部12は、テンプレートT1を用いて抽出された要素xd,s,tについて、各スタッフの勤務シフト(例えば夜勤)が出現した回数(日数)を勤務シフトの組み合わせ情報の特徴として求める。図5(C)に示すように、これらの特徴をスタッフ間で比較すれば、後述のように、勤務シフトの平滑化も可能となる。
(テンプレートT2)
また、特徴抽出部12は、図4(B)に示す(2)の1人×複数日の業務シフトをまとめて抽出するテンプレートT2を用いて、各スタッフにおける複数日にまたがる勤務シフトの組み合わせ情報を抽出する。特徴抽出部12は、このテンプレートT2を3次元行列のd方向に1つずつシフトさせてその都度、d方向にテンプレートT2内の要素xd,s,tを抜き出していく処理を、例えば所定期間分、例えば2週間、1か月又は1年分行う。テンプレートT2を用いて抜き出された結果から、特徴抽出部12は、以下に示すような特徴を抽出する。
(2-A)連続勤務可能な勤務シフトの組み合わせ
連続する複数日が設定されたテンプレートT2を設定すれば、連続する複数日の勤務シフトの組み合わせが抽出される。テンプレートT2を、図2に示す勤務シフト表で連続する2日間に対応するものとした場合、例えば、「休」→「1A」、「1A」→「1B」、「1B」→「1夜入」、「1夜入」→「1夜明」、「1夜明」→「休」などの組み合わせが抽出され、その組み合わせの出現頻度が算出される。図6では、この2日間の組み合わせが、1日目の勤務シフトを「前」とし、2日目の勤務シフトを「後」として示されている。なお、連続する複数日は、2日に限らず、3~7日を設定することが可能である。すなわち、連続する3日、4日、5日、6日、7日での勤務シフトの組み合わせを抽出可能である。
(テンプレートT3)
また、特徴抽出部12は、図4(C)に示す(3)の複数人×1日の業務シフトをまとめて抽出する様々な形のテンプレートT3を用いて、複数のスタッフにおける1日の勤務シフトの組み合わせ情報を抽出する。特徴抽出部12は、このテンプレートT3を3次元行列のd方向に1つずつシフトさせてその都度、d方向にテンプレートT3内の要素xd,s,tを抜き出していく処理を、例えば所定期間分、例えば2週間、1か月又は1年分行う。テンプレートT3を用いて抜き出された結果から、特徴抽出部12は、以下に示すような特徴を抽出する。
(3-A)スタッフの人間関係
人数を2人とすれば、同日に勤務した2人のスタッフの組み合わせの頻度を求めることができる。図7(A)には、同日に勤務した2人のスタッフの組み合わせの頻度を表形式でまとめたものが示されている。この表を見れば、同日勤務の頻度が閾値以上スタッフの組み合わせと、同日勤務の頻度が閾値未満のスタッフの組み合わせを把握することができる。
(テンプレートT4)
また、特徴抽出部12は、図4(D)に示す(4)の複数人×複数日の業務シフトをまとめて抽出するテンプレートT4を用いて、複数のスタッフにおける複数日にまたがる勤務シフトの組み合わせ情報を抽出する。特徴抽出部12は、このテンプレートT4を3次元行列のd方向に1つずつシフトさせてその都度、d方向にテンプレートT4内の要素xd,s,tを抜き出していく処理を、例えば所定期間分、例えば2週間、1か月又は1年分行う。テンプレートT4を用いて抜き出された結果から、特徴抽出部12は、以下に示すような特徴を抽出する。
(4-A)同じ曜日に勤務するスタッフの人数
テンプレートT4の人数を全員とすれば、テンプレートT4から抽出された勤務シフトに基づいて、図7(B)に示すように、例えば、各曜日に勤務したスタッフの人数の最大値を求めることができる。
このように、テンプレート情報記憶部11は、テンプレートT1~T4と、テンプレートT1~T4で抽出されたデータから算出すべき内容を示す項目(1-A)~(1-C)、(2-A)、(3-A)、(4-A)を含むテンプレート情報が記憶されている。
[制約条件生成部13]
制約条件生成部13は、特徴抽出部12で抽出された特徴が条件を満たし、特徴抽出部12で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する。
(1-A)各スタッフが対応可能な勤務シフト
制約条件生成部13は、例えば上述の(1-A)について、各スタッフが勤務可能な勤務シフトを、特徴抽出部12で抽出された各スタッフの勤務シフトに限定する制約条件を生成する。例えば、制約条件生成部13は、図5(A)に示すように、特徴抽出部12で抽出されたスタッフの勤務シフトの頻度が、点線で示す閾値より高い「1A」、「1B」、[1D]、「休」、「年休」を抽出する。この場合、制約条件生成部13は、抽出された勤務シフトが「1A」、「1B」、[1D]、「休」、「年休」である場合に条件を満たし、抽出されなかった残りの勤務シフトが条件を満たさないものとする制約条件を生成する。
(1-B)各スタッフの勤務日数、勤務時間、休暇日数
また、制約条件生成部13は、上述の(1-B)について、特徴抽出部12で抽出された各スタッフの勤務日数、勤務時間以下の勤務日数、勤務時間が条件を満たし、それらを超える勤務日数、勤務時間が条件を満たしないものとする制約条件を生成する。すなわち、特徴抽出部12で抽出された各スタッフの勤務日数、勤務時間を上限とする制約条件が生成される。なお、特徴抽出部12で抽出された各スタッフの勤務日数、この勤務時間が、法定の上限を超える場合、制約条件生成部13は、法定の勤務日数、勤務時間を上限とする制約条件を生成する。
また、制約条件生成部13は、特徴抽出部12で抽出された各スタッフの休暇日数以上の休暇日数が条件を満たし、抽出された休暇日数未満の休暇日数が条件を満たしないものとする制約条件を生成する。すなわち、制約条件生成部13は、特徴抽出部12で抽出された各スタッフの休暇日数を下限とする制約条件を生成する。なお、この休暇日数が、法定の下限を下回る場合、制約条件生成部13は、法定の休暇日数をそれらの下限とする制約条件を生成する。
(1-C)各スタッフの勤務シフト毎の日数
また、制約条件生成部13は、上述の(1-C)について、特徴抽出部12で抽出された各スタッフの勤務シフト毎の日数以下の日数が条件を満たし、その回数を上回る回数が条件を満たさないとする制約条件を生成する。なお、スタッフ間で、勤務シフトの日数、例えば夜勤の日数、A勤務の日数に偏りが所定値以上である場合、制約条件生成部13は、それらを平滑化するような制約条件を生成するようにしてもよい。
(2-A)連続勤務可能な勤務シフトの組み合わせ
また、制約条件生成部13は、上述の(2-A)について、特徴抽出部12で抽出された複数日にわたって連続勤務可能な勤務シフトの組み合わせを、各スタッフが連続勤務可能な勤務シフトとして許可する制約条件を生成する。この場合、抽出された勤務シフトの組み合わせが条件を満たし、抽出されていない勤務シフトの組み合わせが条件を満たさないとする制約条件が生成される。例えば、以下のような制約条件が生成される。
(2-A-1)2日連続の勤務シフトの組み合わせから生成される制約条件
(例1)夜勤入の次の日が夜勤明以外である組み合わせが抽出されていないため、夜勤明以外は許可しない。
(例2)夜勤明の翌日は休み以外である組み合わせが抽出されていないため、休み以外は許可しない。
(例3)B勤務は連続で割り当てられていないため、B勤務の連続する組み合わせは禁止
(2-A-2)4日以上連続した勤務シフトの組み合わせから生成される制約条件
(例1)日勤が4日以上続いた組み合わせが抽出されていないため、日勤が3日以上続いた次の日について、休み以外は許可しない。
(例2)夜勤明→休→夜勤入の組み合わせが抽出されていないため、この組み合わせを禁止
(例3)間に休みがない連続日での勤務のうち、A勤務は2回以上割り当てられていないため、A勤務の割り当てを1回のみとする。
このような例に限られず、制約条件は、抽出された特徴を許可し、抽出されなかった特徴を不許可とするように生成される。
(3-A)同日に勤務する2人のスタッフの組み合わせ
制約条件生成部13は、上述の(3-A)について、特徴抽出部12で抽出された、同じ日に勤務したことがあるスタッフの組み合わせが条件を満たし、同じ日に勤務したことがないスタッフの組み合わせが条件を満たさないとする制約条件を生成する。
(4-A)1日の人員数
制約条件生成部13は、上述の(4-A)について、特徴抽出部12で抽出された各曜日のスタッフの人数の最大値以上が条件を満たし、その最大値未満が条件を満たさないとする曜日毎の制約条件を生成する。
なお、上述の制約条件は、以下のようにまとめて定式化することができる。
制約条件:g(xd,s,t)≧0 (i=1、2、3、…)
このように、制約条件は、設計変数xd,s,tを引数とする関数g(xd,s,t)の形で表すことができる。g(xd,s,t)は、それぞれ上述の(1-A)、(1-B)及び(1-C)、(2-A)、(3-A)、(4-A)の制約条件に対応する。設計変数xd,s,tが制約条件g(i=1、2、・・・)を満たせばg(xd,s,t)は0以上の値を返し、満たさなければ負の値を返す。制約条件g(i=1、2、・・・)の返り値は、設計変数xd,s,tが制約条件g(xd,s,t)で表現される集合に含まれるか否かで判定することができる。集合に含まれる否かの演算は、設計変数xd,s,tを用いた演算処理又は論理演算処理で行われる。
[最適化ソルバ]
最適化ソルバ15は、制約条件生成部13で生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報をスタッフが行う予定の勤務シフトのスケジュール情報として生成する。
目的関数は、以下のように定式化される。
目的関数:Σ(xd,s,t
目的関数には、様々なものを設定することができる。例えば、設計変数xd,s,tを引数とする関数f(xd,s,t)(j=1、2、3、・・・)の重み付け線形結合和で目的関数を表現することができる。wは、関数f(xd,s,t)の重みである。本実施の形態では、f(xd,s,t)=g(xd,s,t)とする。したがって、本実施の形態に係る目的関数は、満たされる制約条件g(xd,s,t)の重み付け線形結合和となる。
付加制約条件記憶部14には、付加的な制約条件が記憶されている。最適化ソルバ15は、制約条件生成部13で生成された制約条件に加え、付加制約条件記憶部14に記憶された付加的な制約条件を、組み合わせ最適化を行う際の制約条件に組み込むことが可能である。付加的な制約条件としては、例えば、図8に示すような、希望休暇のデータがある。希望休暇のデータを制約条件として付加することにより、希望休暇を可能な限り満たす勤務シフトの組み合わせ情報を生成することができる。例えば、最適化ソルバ15は、制約条件生成部13で生成された制約条件下で、目的関数の値が良好な(例えば閾値以上の)幾つかの組み合わせ情報の候補を求め、それらの複数の候補の中から、休暇希望がかなえられる数が最も多い組み合わせ情報を、最適なスケジュールとして決定するようにしてもよい。また、目的関数に、希望休暇の希望が通る希望休暇の日数によって値が増減する項を含めるようにしてもよい。
すなわち、最適化ソルバ15は、制約条件生成部13で生成された制約条件と、付加制約条件記憶部14に記憶された付加的な制約条件との下で、予め定められた目的関数の値が最大又は最小となる、すなわち満たされる制約条件の数が最も多い組み合わせ情報をスケジュール情報として生成する。
この他、付加制約条件記憶部14に記憶される付加的な制約条件には、新たに加わったスタッフに関する情報、対応可能な勤務シフトの変化、体調不良による病欠など、各スタッフの状況の変化に関する情報、生成されるスケジュールに含まれる日の状況の変化に関する情報など、過去の勤務シフトの組み合わせ情報には含まれ得ない様々なものを含めることができる。これらの情報を含むデータは、人手によって(操作入力により)、コンピュータが読み取り可能なデータとして生成される。最適化ソルバ15は、生成されたデータを読み取ってその内容を付加的な制約条件として用いる。
図1に示すスケジュール生成システム1は、例えば、図9に示すハードウエア構成を有するコンピュータによって実現される。具体的には、スケジュール生成システム1は、装置全体の制御を司るCPU(Central Processing Unit)31と、CPU31の作業領域等として動作する主記憶部32と、CPU31の動作プログラム等を記憶する外部記憶部33と、オペレータの操作入力を入力するマンマシンインターフェイスである操作部34と、画像を表示するマンマシンインターフェイスである表示部35と、これらを接続する内部バス38から構成される。
CPU31は、図1の特徴抽出部12、制約条件生成部13、最適化ソルバ15の処理を行うプロセッサである。
主記憶部32は、RAM(Random Access Memory)等から構成されている。主記憶部32には、外部記憶部33に記憶されており、CPU31を図1の特徴抽出部12、制約条件生成部13、最適化ソルバ15として動作させるための動作プログラム及びデータがロードされる。また、主記憶部32は、CPU31の作業領域(データの一時記憶領域)としても用いられる。
外部記憶部33は、フラッシュメモリ、ハードディスク等の不揮発性メモリから構成される。外部記憶部33には、CPU31に実行させるための動作プログラム39が予め記憶されている。また、組み合わせ情報、テンプレート情報及び付加制約条件等のデータ40も記憶されている。外部記憶部33に記憶された動作プログラム39及びデータ40が読み込まれて、主記憶部32に読み込まれた動作プログラム39をCPU31が実行し、動作プログラム39の実行によって、データ40が用いられる。このように、主記憶部32及び外部記憶部33によって、組み合わせ情報蓄積部10、テンプレート情報記憶部11及び付加制約条件記憶部14が、実現される。
操作部34は、キーボード及びマウス等のデバイスと、これらのデバイスを内部バス38に接続するインターフェイス装置から構成されている。操作部34から、例えば、動作プログラム39の実行が開始される。
表示部35は、CRT(Cathode Ray Tube)、液晶モニタ等の表示用デバイスから構成される。表示部35には、生成された最適なスケジュールである勤務シフト表が表示される。
次に、本実施の形態1に係るスケジュール生成システム1の動作、すなわちスケジュール生成処理(図10参照)について説明する。
図10に示すように、まず、特徴抽出部12は、組み合わせ情報蓄積部10に蓄積された勤務シフトの組み合わせ情報の特徴を、テンプレート情報記憶部11に記憶されたテンプレート情報に従って抽出する(ステップS10)。ここで、上述の(1-A)~(1-C)、(2-A)、(3-A)、(4-A)に関する特徴が抽出される。
続いて、制約条件生成部13は、特徴抽出部12で抽出された特徴が条件を満たし、特徴抽出部12で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する(ステップS11)。ここで、上述の(1-A)~(1-C)、(2-A)、(3-A)、(4-A)に関する制約条件が生成される。
続いて、最適化ソルバ15は、制約条件生成部13で生成された制約条件と、付加制約条件記憶部14に記載された制約条件との下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を、スタッフが行う予定の勤務シフトのスケジュール情報として生成する(ステップS12)。ステップS12でスケジュール情報が生成された後、スケジュール生成処理を終了する。
実施の形態2
次に、本発明の実施の形態2について説明する。上記実施の形態1に係るスケジュール生成システム1では、組み合わせ情報蓄積部10に蓄積されたすべての組み合わせ情報の特徴を抽出している。これに対して、本実施の形態2に係るスケジュール生成システム1は、条件を満たさない組み合わせ情報を、特徴を抽出する組み合わせ情報から除外する。
図11に示すように、本実施の形態2に係るスケジュール生成システム1の構成は、余裕度算出部20と、組み合わせ除外部21と、を備える点が、上記実施の形態1に係るスケジュール生成システム1の構成と異なる。
余裕度算出部20は、組み合わせ情報蓄積部10に蓄積された組み合わせ情報に基づいて、同じ時間で必要なスタッフの数に対する活動可能なスタッフの数の割合を示す余裕度を時系列で算出する。「余裕度」とは、一般的には、タスクの実行に必要な資源の量に対する割り当て可能な資源の量をいう。余裕度は、同じ時間で複数の活動主体が行う活動内容の余裕を示している。
介護業務におけるスタッフの勤務シフトでは、日単位の余裕度の定義は、以下の式で表される。
余裕度=(勤務可能なスタッフ数)/(必要なスタッフ数)
ここで、勤務可能なスタッフ数は、図2の勤務シフト表において、スタッフの総数から、希望休暇人数を引いたものとすることができる。また、必要なスタッフ数は、その日に実際に勤務したスタッフの数から算出される。なお、余裕度は、ユニットU1、U2、夜間担当に分けて算出するようにしてもよいし、全体で算出するようにしてもよい。
組み合わせ除外部21は、組み合わせ情報蓄積部10で蓄積された組み合わせ情報のうち、余裕度算出部20で算出された余裕度が閾値以下となった時間に対応する組み合わせ情報を、特徴抽出部12で特徴を抽出する組み合わせ情報から除外する。除外されなかった組み合わせ情報が、特徴抽出部12に入力され、特徴の抽出に用いられる。
このように、余裕度の低い組み合わせ情報を、特徴を抽出する組み合わせ情報から除外することにより、余裕度の高いスケジュール情報を生成することができる。なお、余裕度は、上述の定義によるものには限られない。例えば、それぞれのスタッフの能力に応じた係数を重みづけして余裕度を算出するようにしてもよい。
また、各勤務シフトにおける時間的な余裕、所定期間における休日の取得日数の多さを余裕度として算出するようにしてもよい。
実施の形態3
次に、本発明の実施の形態3について説明する。上記実施の形態1に係るスケジュール生成システム1では、組み合わせ情報蓄積部10に蓄積されたすべての組み合わせ情報の特徴を抽出している。これに対して、本実施の形態3に係るスケジュール生成システム1は、条件を満たさない組み合わせ情報を、特徴を抽出する組み合わせ情報から除外する。
図12に示すように、本実施の形態3に係るスケジュール生成システム1の構成は、外れ値検出部22と、外れ値除外部23と、を備える点が、上記実施の形態1に係るスケジュール生成システム1の構成と異なる。
外れ値検出部22は、組み合わせ情報蓄積部10に蓄積された組み合わせ情報の中から、統計的に外れ値(異常値)とみなせる組み合わせ情報を検出する。例えば、勤務シフトの組み合わせに統計的に見て通常と異なるパターンが含まれている場合には、そのパターンを通常でないパターンとして検出する。
例えば、図3に示す3次元座標系の設計変数xd,s,tにおいて、1になった回数が閾値以下である要素xd,s,tについては、1となった日の勤務シフトの組み合わせ情報を外れ値として検出することができる。例えば、ユニットU1での勤務しか行わないユニットU1のスタッフが、ユニットU2で勤務した日の組み合わせ情報を、異常な状態での組み合わせ情報として検出することができる。また、通常夜勤を行わないスタッフが夜勤を行った場合、管理者として勤務するスタッフの単位期間当たりの勤務日数が通常よりも極めて多くなった場合も異常な勤務シフトの組み合わせ情報として検出することができる。外れ値であるか否かは、統計的な処理によって判定される。例えば、機械学習による異常判定処理は、その一例である。
外れ値除外部23は、外れ値検出部22で検出された組み合わせ情報を、特徴抽出部12で特徴を抽出する組み合わせ情報から除外する。除外されなかった組み合わせ情報が、特徴抽出部12に入力され、特徴の抽出に用いられる。
このように、統計的に外れ値であると判定された組み合わせ情報を、特徴を抽出する組み合わせ情報から除外することにより、正常な状態である組み合わせ情報だけで制約条件を生成して、スケジュール情報を生成することができる。
以上詳細に説明したように、上記実施の形態に係るスケジュール生成システム1によれば、スタッフが実際に行った勤務シフトをスタッフ毎に時系列に並べて構成される勤務シフトの組み合わせ情報の特徴を抽出し、抽出された特徴が条件を満たし、抽出されなかった特徴が条件を満たさない制約条件の下で、組み合わせ最適化を行って組み合わせ情報を生成する。この結果、ヒアリング等を行うことなく、表に現れにくい制約条件を満たす最適な勤務シフトの組み合わせ情報をスケジュールとして生成することができる。
また、上記実施の形態2に係るスケジュール生成システム1によれば、余裕度の低い組み合わせ情報を、特徴を抽出する組み合わせ情報から除外する。これにより、余裕度の高いスケジュール情報を生成することができる。
また、上記実施の形態3に係るスケジュール生成システム1によれば、通常とは異なる状況で行われた勤務シフトの組み合わせ情報を、特徴を抽出する組み合わせ情報から除外する。これにより、正常な状態である組み合わせ情報に限定して、スケジュール情報を生成することができる。
また、上記実施の形態1に係るスケジュール生成システム1によれば、組み合わせ情報が満足する制約条件の数に応じて値が増減する関数を目的関数として、組み合わせ情報を生成する。これにより、制約条件を可能な限り満たすスケジューリングが可能となる。
また、上記実施の形態1に係るスケジュール生成システム1によれば、制約条件生成部で生成された制約条件に加え、入力された制約条件の下で、スケジュール情報を生成する。これにより、刻々を変わる状況に制約条件を変化させることができるので、状況に応じたスケジューリングが可能となる。
なお、上記実施の形態では、予め設定されたテンプレート情報を用いて特徴を抽出している。しかしながら、このようなテンプレート情報は、膨大な数に上る。そこで、多数のテンプレート情報の中から、特徴の抽出を用いられるテンプレート情報を絞り込むようにしてもよい。そこで、介護業務の勤務シフトの組み合わせ情報を様々な介護施設から収集し、収集された多種多様な組み合わせ情報で、多数のテンプレート情報の中から、有意差のある特徴を抽出できるテンプレート情報を抽出し、抽出されたテンプレート情報のみを用いて組み合わせ情報の特徴を抽出するようにしてもよい。
また、上記実施の形態に係るスケジュール生成システム1は、介護施設におけるスタッフの勤務シフトのスケジューリングを行う。しかしながら、本発明がスケジューリングの対象とするものはこれには限られない。例えば、以下の様なスケジュールの生成にも適用することができる。
(訪問型の介護における勤務シフトのスケジューリング)
例えば、上記各実施の形態に係るスケジュール生成システム1を、訪問型の介護における勤務シフトのスケジューリングに適用することができる。この場合、担当ヘルパが活動主体であり、活動内容は、利用者から訪問希望(タスク)となる。タスクは、「〇月〇日午前に〇〇をお願いしたい」といった内容となる。
制約条件としては、以下のようなものを設定することができる。
(xd,s,t):タスクを担当可能なヘルパであること
(xd,s,t):利用者を担当可能なヘルパであること
(xd,s,t):希望時間帯に訪問することができること
目的関数Σ(xd,s,t)は、上記実施の形態1と同様に、満足する制約条件の数(f(xd,s,t)=g(xd,s,t))とすることができる。
このシステムを用いれば、例えばある日に依頼が集中し、かつ、介護ヘルパの数が不足し、管理者が昼食を摂る時間がないなどの例外的な状況を、特徴を抽出する組み合わせパターンから除外することができる。
(工場における生産スケジュールの生成)
工場における生産スケジュールの生成にも、上記実施の形態に係るスケジュール生成システム1を適用することができる。順序関係のあるいくつかの作業J1、J2、J3を複数の機械M1、M2、M3で分担して処理する場合に、全体の工程に要する時間を目的関数とし、目的関数が最小となるような機械の稼働スケジュールを決定することができる。機械M1、M2、M3では、それぞれ作業J1、J2、J3を処理する時間が異なるため、全体の工程に要する時間を短くするためには、効率的な分担が必要となる。
この場合、活動主体は、機械M1、M2、M3となり、活動内容は、作業J1、J2、J3となる。それらのこれまでの稼働スケジュールを活動内容(稼働実績)の組み合わせ情報として、制約条件が生成される。例えば、制約条件では、その工場において、機械M1だけ3日に一度のメンテナンスが必要などといった制約条件が生成される。ただし、これまでの稼働実績において、繁忙期はメンテナンス時間を確保できない場合があったため、特徴を抽出する稼働実績から、上記実施の形態2に係るスケジュール生成システムのように、繁忙期の稼働実績(活動内容の組み合わせ情報)は除外することができる。
(配送スケジュールの生成)
複数の車両で複数の顧客のいる場所に訪れ、荷物の集荷/配達をするときに、その移動コストを最小化する経路を最適化するのにも適用することができる。この場合、配送する車両を活動主体とし、顧客(集荷先/配送先)を活動内容とし、過去の荷物の集荷/配達の実績に基づいて制約条件を生成する。そして、制約条件下で、例えば移動コストで値が増減する関数を目的関数として組み合わせ最適化を行って、配送のスケジュール情報を生成することができる。
このように、スケジュール生成システム1のハードウエア構成やソフトウエア構成は一例であり、任意に変更および修正が可能である。
CPU31、主記憶部32、外部記憶部33、操作部34、表示部36及び内部バス38などから構成されるスケジュール生成システム1の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD-ROM、DVD-ROM等)に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行するスケジュール生成システム1を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することでスケジュール生成システム1を構成してもよい。
スケジュール生成システム1の機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS, Bulletin Board System)にコンピュータプログラムを掲示し、ネットワークを介してコンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
この発明は、この発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、この発明の範囲を限定するものではない。すなわち、この発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
本発明は、複数の活動主体の活動内容の組み合わせ情報であるスケジュールの生成に適用することができる。
1 スケジュール生成システム、10 組み合わせ情報蓄積部、11 テンプレート情報記憶部、12 特徴抽出部、13 制約条件生成部、14 付加制約条件記憶部、15 最適化ソルバ、20 余裕度算出部、21 組み合わせ除外部、22 外れ値検出部、23 外れ値除外部、31 CPU、32 主記憶部、33 外部記憶部、34 操作部、35 表示部、38 内部バス、39 動作プログラム、40 データ

Claims (8)

  1. 活動主体が実際に行った活動内容を前記活動主体毎に時系列に並べて構成される前記活動内容の組み合わせ情報を蓄積する組み合わせ情報蓄積部と、
    前記組み合わせ情報蓄積部に蓄積された組み合わせ情報の特徴を抽出するテンプレート情報を記憶するテンプレート情報記憶部と、
    前記テンプレート情報記憶部に記憶されたテンプレート情報に従って、前記組み合わせ情報蓄積部に蓄積された組み合わせ情報の特徴を抽出する特徴抽出部と、
    前記特徴抽出部で抽出された特徴が条件を満たし、前記特徴抽出部で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する制約条件生成部と、
    前記制約条件生成部で生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を前記活動主体が行う予定の前記活動内容のスケジュール情報として生成する最適化ソルバと、
    を備えるスケジュール生成システム。
  2. 前記組み合わせ情報蓄積部に蓄積された組み合わせ情報に基づいて、同じ時間で複数の活動主体が行う活動内容の余裕を示す余裕度を時系列で算出する余裕度算出部と、
    前記組み合わせ情報蓄積部で蓄積された組み合わせ情報のうち、前記余裕度算出部で算出された余裕度が閾値以下となった時間に対応する組み合わせ情報を、前記特徴抽出部で特徴を抽出する組み合わせ情報から除外する組み合わせ除外部と、
    を備える、
    請求項1に記載のスケジュール生成システム。
  3. 前記組み合わせ情報蓄積部に蓄積された組み合わせ情報に対して統計的に外れ値とみなせる組み合わせ情報を検出する外れ値検出部と、
    前記外れ値検出部で検出された組み合わせ情報を、前記特徴抽出部で特徴を抽出する組み合わせ情報から除外する外れ値除外部と、
    を備える、
    請求項1に記載のスケジュール生成システム。
  4. 前記最適化ソルバは、
    前記制約条件生成部で生成された複数の制約条件のうち、前記組み合わせ情報が満足する制約条件の数に応じて値が増減する関数を前記目的関数として、前記スケジュール情報を生成する、
    請求項1に記載のスケジュール生成システム。
  5. 前記最適化ソルバは、
    前記制約条件生成部で生成された制約条件に加え、付加された制約条件の下で、前記スケジュール情報を生成する、
    請求項1に記載のスケジュール生成システム。
  6. 前記活動内容は、勤務シフトにおける勤務時間である、
    請求項1に記載のスケジュール生成システム。
  7. スケジュール生成システムによって実行されるスケジュール生成方法であって、
    活動主体が実際に行った活動内容を前記活動主体毎に時系列に並べて構成される前記活動内容の組み合わせ情報を蓄積する組み合わせ情報の特徴を、前記組み合わせ情報の特徴を抽出するテンプレート情報に従って抽出し、
    抽出された特徴が条件を満たし、抽出されなかった特徴が条件を満たさないものとする制約条件を生成し、
    生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を前記活動主体が行う予定の前記活動内容のスケジュール情報として生成する、
    スケジュール生成方法。
  8. コンピュータを、
    活動主体が実際に行った活動内容を前記活動主体毎に時系列に並べて構成される前記活動内容の組み合わせ情報を蓄積する組み合わせ情報蓄積部、
    前記組み合わせ情報の特徴を抽出するテンプレート情報を記憶するテンプレート情報記憶部、
    前記テンプレート情報記憶部に記憶されたテンプレート情報に従って、前記組み合わせ情報蓄積部に蓄積された組み合わせ情報の特徴を抽出する特徴抽出部、
    前記特徴抽出部で抽出された特徴が条件を満たし、前記特徴抽出部で抽出されなかった特徴が条件を満たさないものとする制約条件を生成する制約条件生成部、
    前記制約条件生成部で生成された制約条件下で、予め定められた目的関数の値が最大又は最小となる組み合わせ情報を前記活動主体が行う予定の前記活動内容のスケジュール情報として生成する最適化ソルバ、
    として機能させるプログラム。
JP2022139723A 2022-09-02 2022-09-02 スケジュール生成システム、スケジュール生成方法及びプログラム Pending JP2024035331A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022139723A JP2024035331A (ja) 2022-09-02 2022-09-02 スケジュール生成システム、スケジュール生成方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022139723A JP2024035331A (ja) 2022-09-02 2022-09-02 スケジュール生成システム、スケジュール生成方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2024035331A true JP2024035331A (ja) 2024-03-14

Family

ID=90194961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022139723A Pending JP2024035331A (ja) 2022-09-02 2022-09-02 スケジュール生成システム、スケジュール生成方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2024035331A (ja)

Similar Documents

Publication Publication Date Title
Erdogan et al. Online appointment sequencing and scheduling
Lamiri et al. Column generation approach to operating theater planning with elective and emergency patients
Blake et al. Operating room managers’ use of integer programming for assigning block time to surgical groups: a case study
US6415259B1 (en) Automatic work progress tracking and optimizing engine for a telecommunications customer care and billing system
Koeleman et al. Optimal patient and personnel scheduling policies for care-at-home service facilities
US7860728B2 (en) System, method, and computer program product for reducing the burden on scheduling systems by forecasting a demand for medical resources using retrieved billing data
US20090043635A1 (en) Scheduling chart creation system and program for the same
Hamid et al. A multi-objective mathematical model for nurse scheduling problem with hybrid DEA and augmented ε-constraint method: a case study
Lee et al. Analysis of an open access scheduling system in outpatient clinics: a simulation study
US20180018614A1 (en) Method and apparatus for optimizing constraint-based data
Maass et al. Incorporating nurse absenteeism into staffing with demand uncertainty
Yang et al. A model to create an efficient and equitable admission policy for patients arriving to the cardiothoracic ICU
Altner et al. A two-stage stochastic program for multi-shift, multi-analyst, workforce optimization with multiple on-call options
US20140372161A1 (en) Method for Generating a Discrete Forecasted Staff Report
JP2009037568A (ja) スケジュール表作成装置、プログラム
JP5587814B2 (ja) 勤務シフト表作成装置
Breuer et al. Joint robust optimization of bed capacity, nurse staffing, and care access under uncertainty
JP2021144756A (ja) プロジェクト計画策定システム
Aydas et al. Short-Term nurse schedule adjustments under dynamic patient demand
JP2024035331A (ja) スケジュール生成システム、スケジュール生成方法及びプログラム
Harris et al. The effect of cancelled appointments on outpatient clinic operations
Zhou et al. An M/E k/1 queues with emergency non-preemptive priority of a diagnostic resource
Lin Dynamic appointment scheduling with forecasting and priority-specific access time service level standards
Wickert et al. Quantifying and enforcing robustness in staff rostering
Lee et al. Appointment scheduling optimization for specialist outpatient services