(57)【要約】      （修正有）【課題】公共交通などにおける乗務員や車両等のシフトを最適化することが可能なスケジューリングシステム、スケジューリング方法及びプログラムを提供する。【解決手段】スケジューリングシステム１００は、リソースの割付パターンを定義した計画データを取得する計画データ取得部１１０と、計画データの組み合わせに関する制約条件を取得する制約条件取得部１２０と、計画データ及び制約条件に基づいてスケジュールを作成するスケジュール作成部１３０と、スケジュールを出力するスケジュール出力部１４０と、を有する。典型的には、計画データは交通機関の運行に関する仕業情報であり、制約条件は、法令などで定められた乗務員の勤務条件に関する情報を絶対制約として、また絶対制約に対して劣後する乗務員の勤務条件に関する制約を考慮制約として含む。【選択図】図４
2018185639.tif 000002
【特許請求の範囲】
【請求項１】
リソースの割付パターンを定義した計画データを取得する計画データ取得部と、
計画データの組み合わせに関する制約条件を取得する制約条件取得部と、
前記計画データ及び前記制約条件に基づいてスケジュールを作成するスケジュール作成部と、
前記スケジュールを出力するスケジュール出力部と、を有する
スケジューリングシステム。
【請求項２】
前記計画データは交通機関の運行に関する仕業情報であり、
前記制約条件は、法令などで定められた乗務員の勤務条件に関する情報を絶対制約として含む
請求項１記載のスケジューリングシステム。
【請求項３】
前記制約条件は、前記絶対制約に対して劣後する前記乗務員の勤務条件に関する制約を考慮制約として含む
請求項２記載のスケジューリングシステム。
【請求項４】
前記計画データ取得部は、外部のダイヤ編成システムから前記仕業情報を取得する
請求項２記載のスケジューリングシステム。
【請求項５】
前記スケジュール出力部は、前記スケジュールを外部の勤怠管理システムに対して出力し、
前記勤怠管理システムは、前記スケジュールを前記乗務員の勤怠管理用データとして取得する
請求項２記載のスケジューリングシステム。
【請求項６】
前記制約条件取得部は、前記勤怠管理システムから前記乗務員の勤怠に関する実績データを取得し、
前記スケジュール作成部は、前記実績データを前記制約条件として使用し、前記スケジュールを再作成する
請求項５記載のスケジューリングシステム。
【請求項７】
前記スケジュール出力部は、前記スケジュールを外部の交通機関ロケーションシステムに対して出力し、
前記交通機関ロケーションシステムは、前記スケジュールを前記交通機関の運行管理用データとして取得する
請求項１記載のスケジューリングシステム。
【請求項８】
前記スケジュール作成部は、重み付き制約充足問題を解くことにより前記スケジュールを作成する
請求項１記載のスケジューリングシステム。
【請求項９】
コンピュータが、
リソースの割付パターンを定義した計画データを取得する計画データ取得ステップと、
計画データの組み合わせに関する制約条件を取得する制約条件取得ステップと、
前記計画データ及び前記制約条件に基づいてスケジュールを作成するスケジュール作成ステップと、
前記スケジュールを出力するスケジュール出力ステップと、を有する
スケジューリング方法。
【請求項１０】
前記スケジューリング方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はスケジューリングシステム、スケジューリング方法及びプログラムに関し、例えば公共交通などにおける乗務員や車両等のシフトを最適化する技術に関する。
【背景技術】
【０００２】
従業者が交替で勤務を行うような業種においては、従業者間で勤務時間や勤務条件をできるだけ平等にしつつ、法令や従業者の休暇希望などに対応した勤務シフトを作成することが必要である。
【０００３】
例えば路線バスや電車など公共交通機関の乗務員については、各種法令や社内規定などによる勤務上の制約が存在する。退勤から出勤までの時間内における休息時間、所定期間内における総拘束時間、５勤２休といった休日パターンなどの制約である。加えて、出庫から入庫までの勤務時間が日々一定ではないこと（日によって乗務する行路（系統）等が異なることが通常であるため）、平日・土曜・休日で勤務内容に差があることなどの事情から、従業者間で勤務条件を平準化しなければならないことも制約条件となる。仮に勤務条件にばらつきがあると、乗務員が病欠した場合などにやりくりが難しくなったり、給与差が発生したりといった問題が生じるためである。公共交通機関の勤務シフトの作成にあたっては、このような様々な制約条件を満たすことが求められる。会社側が制約条件を遵守できるか否かは、労使交渉における重要な問題点ともなり得る。
【０００４】
図１乃至図３を用いて、従来の公共交通機関の勤務シフトの作成方法の一例について説明する。まず、シフト作成担当者は、ダイヤ編成担当者から乗務員の一日の勤務パターンを定義した仕業（しぎょう）情報を得る。図１に示すように、仕業情報はそれぞれ、ある一日の勤務開始時間、勤務終了時間、拘束時間、休息時間などの情報を含むことが一般的である。乗務員は通常、運行ダイヤで定められた複数の行路を、一日のうちに何本か続けて運行する。仕業情報とは、乗務員が一日の中で運行する行路の組み合わせと、そこから計算される勤務時間の情報といえる。仕業情報の作成にあたっては、例えば連続運転時間の制限や一日の最大拘束時間などの制約条件を考慮しなければならない。
【０００５】
次に、シフト作成担当者は、複数の仕業を配列した帯を作成する。帯は、ある一定の期間における、ある乗務員の勤務シフトとなる。図２に帯の一例を示す。帯の作成にあたっては、例えば所定期間内における総拘束時間や休息時間（退勤から次の出勤までの時間）などの制約条件を考慮しなければならない。
【０００６】
続いて、シフト作成担当者は、この帯を複数の乗務員に割り当てる作業を行う。この割り当てを行った結果を示す表を交番表という。図３に交番表の一例を示す。この典型的な交番表では、全ての乗務員に対し同じ帯が日をずらして割り当てられている。こうして乗務員間の勤務条件の公平性が達成される。
【０００７】
従来、シフト作成担当者は、上述の作業を過去の経験を頼りにほぼ手作業で行っていた。交番表の作成までには通常３日乃至１０日程度要していた。そして、交番表の作成作業はダイヤ改正の度に行う必要があった。
【０００８】
加えて、近時は、シフトに個々人の希望や属性を反映させたいというニーズが大きい。例えば、特定の日に休暇を取りたいとする乗務員の希望、乗務員のスキルレベルに応じた運転可能な行路の限定、乗務員の職種毎に異なる残業時間の上限といった新たな制約条件の導入が求められることがある。また、コミュニティバスやスクールバスなど、特定の曜日にのみ適用可能な仕業情報への対応が求められることもある。
【０００９】
このように制約条件が膨大になると、シフト作成担当者の業務負荷は甚大である。人手で全ての制約条件を考慮することが事実上不可能となれば、ダイヤ改正の実施を妨げる要因ともなりかねない。
【００１０】
上述の問題に関連する従来技術として特許文献１がある。特許文献１には、バス乗務員の勤務割予定表（上述の交番表に相当）を作成する装置であって、特定の乗務員に仕事が偏らないよう仕業を割り当てることを特徴とするものが記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００４−２２７２３５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、特許文献１記載の装置は、単に、仕業の配列である帯を１段ずつずらしながら各乗務員に割り当てるという作業を自動化するものにすぎない。そのため特許文献１は、例えば乗務員個々人の希望や属性、不定期運行路線といった複雑な制約条件に対応することができない。また、制約条件が多くなり、全ての制約条件を満たすことができない状況になったときに、如何にして最適解を導くかについては何ら開示も示唆もしていない。
【００１３】
本発明は、このような問題点を解決するためになされたものであり、公共交通などにおける乗務員や車両等のシフトを最適化することが可能なスケジューリングシステム、スケジューリング方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の一実施形態に係るスケジューリングシステムは、リソースの割付パターンを定義した計画データを取得する計画データ取得部と、計画データの組み合わせに関する制約条件を取得する制約条件取得部と、前記計画データ及び前記制約条件に基づいてスケジュールを作成するスケジュール作成部と、前記スケジュールを出力するスケジュール出力部と、を有する。
【００１５】
本発明の一実施形態に係るスケジューリングシステムは、前記計画データは交通機関の運行に関する仕業情報であり、前記制約条件は、法令などで定められた乗務員の勤務条件に関する情報を絶対制約として含む。
【００１６】
本発明の一実施形態に係るスケジューリングシステムは、前記制約条件は、前記絶対制約に対して劣後する前記乗務員の勤務条件に関する制約を考慮制約として含む。
【００１７】
本発明の一実施形態に係るスケジューリングシステムは、前記計画データ取得部は、外部のダイヤ編成システムから前記仕業情報を取得する。
【００１８】
本発明の一実施形態に係るスケジューリングシステムは、前記スケジュール出力部は、前記スケジュールを外部の勤怠管理システムに対して出力し、前記勤怠管理システムは、前記スケジュールを前記乗務員の勤怠管理用データとして取得する。
【００１９】
本発明の一実施形態に係るスケジューリングシステムは、前記制約条件取得部は、前記勤怠管理システムから前記乗務員の勤怠に関する実績データを取得し、前記スケジュール作成部は、前記実績データを前記制約条件として使用し、前記スケジュールを再作成する。
【００２０】
本発明の一実施形態に係るスケジューリングシステムは、前記スケジュール出力部は、前記スケジュールを外部の交通機関ロケーションシステムに対して出力し、前記交通機関ロケーションシステムは、前記スケジュールを前記交通機関の運行管理用データとして取得する。
【００２１】
本発明の一実施形態に係るスケジューリングシステムは、前記スケジュール作成部は、重み付き制約充足問題を解くことにより前記スケジュールを作成する。
【００２２】
本発明の一実施形態に係るスケジューリング方法は、コンピュータが、リソースの割付パターンを定義した計画データを取得する計画データ取得ステップと、計画データの組み合わせに関する制約条件を取得する制約条件取得ステップと、前記計画データ及び前記制約条件に基づいてスケジュールを作成するスケジュール作成ステップと、前記スケジュールを出力するスケジュール出力ステップと、を有する。
【００２３】
本発明の一実施形態に係るプログラムは、コンピュータに上記スケジューリング方法を実行させるためのプログラムである。
【発明の効果】
【００２４】
本発明により、公共交通などにおける乗務員や車両等のシフトを最適化することが可能なスケジューリングシステム、スケジューリング方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００２５】
【図１】従来のシフト作成業務の一例（仕業の作成）を示す図である。
【図２】従来のシフト作成業務の一例（帯の作成）を示す図である。
【図３】従来のシフト作成業務の一例（交番表の作成）を示す図である。
【図４】本発明の実施の形態にかかるスケジューリングシステム１００の構成を示すブロック図である。
【図５】計画データの一例を示す図である。
【図６】制約条件の一例を示す図である。
【図７】制約条件を入力するためのユーザインターフェイスの一例を示す図である。
【図８】スケジュール出力部１４０が作成するスケジュールの一例を示す図である。
【図９】スケジューリングシステム１００の構成を示すフローチャートである。
【図１０】スケジュール出力部１４０が出力する通知の一例を示す図である。
【図１１】スケジュール出力部１４０が出力する通知の一例を示す図である。
【発明を実施するための形態】
【００２６】
本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。まず、図４のブロック図を用いて、本発明の実施の形態にかかるスケジューリングシステム１００の構成について説明する。
【００２７】
スケジューリングシステム１００は、計画データ取得部１１０、制約条件取得部１２０、スケジュール作成部１３０、スケジュール出力部１４０を有する。また、スケジューリングシステム１００は、外部システムである計画データ作成システム２００及びスケジュール利用システム３００と任意の有線又は無線通信手段を介して通信可能に接続される。
【００２８】
スケジューリングシステム１００は、典型的には中央処理装置（ＣＰＵ）、記憶装置及び入出力装置を備え、中央処理装置が記憶装置に予め格納されたプログラムを読み出して実行することにより上述の各処理部を論理的に実現する１又は複数の情報処理装置である。例えば、スケジューリングシステム１００はスタンドアロンのコンピュータであっても良く、ローカルエリアネットワーク内に設置されるサーバとして構成されても良く、インターネットなどのネットワークを介してユーザに情報処理サービスを提供するクラウドサービスとして構成されても良い。
【００２９】
計画データ取得部１１０は、スケジュールを作成するための部品である計画データを取得する。例えば路線バスの運行スケジュールである交番表を作成することが目的である場合、計画データ取得部１１０は、計画データとして仕業情報を取得する。典型的には、仕業情報は計画データ作成システム２００としてのダイヤ編成システム２００により作成される。この場合、計画データ取得部１１０は通信インターフェイス（図示しない）を介してダイヤ編成システム２００と通信を行い、ダイヤ編成システム２００から仕業情報を受信する。あるいは、計画データ取得部１１０は、スケジューリングシステム１００の内部又は外部の記憶領域に予め格納された計画データを読み込んでも良く、入力手段（図示しない）を介してユーザ入力を受け付けることにより計画データを取得しても良い。
【００３０】
計画データとは、リソースの割付パターンを定義した情報である。計画データを所定の制約条件（後述）に従って組み合わせることでスケジュールが構成される。図５に計画データの一形式を示す。この計画データは複数の仕業情報を含む。各仕業情報は、仕業情報を一意に識別するための情報（仕業番号、仕業区分など）、運行ルートに関する情報（営業所コード、営業所名称、棒ダイヤコード、棒ダイヤ名称など）、乗務員の勤務時間に関する情報（出勤時刻、退勤時刻、実働時間、超勤時間、中休時間、つなぎ時間、拘束時間など）などを含んでいる。ここで出勤時刻とは、乗務員が出社する時刻である。通常、乗務員は出社後に点呼を受け、それから乗務に就く。退勤時刻とは、乗務員が代謝する時刻である。通常、乗務員は乗務終了後に点呼を受け、それから代謝する。拘束時間とは、出勤時刻から退勤時刻までの時間である。乗務員はこの時間にわたり会社に拘束される。中休時間とは、中休勤務において拘束が解かれている時間のことである。中休勤務とは、出勤時刻から退勤事項までの間に拘束が解かれている時間（中休時間）が存在する勤務をいう。実働時間とは、拘束時間から休憩時間及び中休時間を差し引いた時間である。実働時間は給与の対象となる。超勤時間とは、実働時間のうち残業手当の対象となる時間をいう。つなぎ時間とは、運行ダイヤと運行ダイヤの間の折り返しの時間をいう。
【００３１】
制約条件取得部１２０は、計画データを用いてスケジュールを作成する際の制約条件、すなわち遵守することが求められるルールの集合を取得する。制約条件取得部１２０は、計画データ作成システム２００としてのダイヤ編成システム２００から制約条件の一部又は全部を取得できる。また、制約条件取得部１２０は、制約条件を入力するためのユーザインターフェイスを備え、一部又は全部の制約条件をユーザに入力させても良い。図７に制約条件を入力するためのユーザインターフェイスの一例を示す。
【００３２】
路線バスの運行スケジュールである交番表を作成するための制約条件には、例えば以下のようなものがある。法令、通達、その他基準などに由来する制約条件として、週拘束時間（例えば、４週間平均で１週間あたり６５時間まで勤務可など）、日拘束時間（例えば、１日１３時間以内を原則とし、１６時間を限度として勤務可。例外的に１３時間から延長する場合、１５時間を超える回数は１週間につき２回までなど）、休息時間（例えば、退勤から出勤まで８時間以上空けるなど）などがある。また、勤務時間を乗務員間で均等化すること、任意に指定された勤務パターン（例えば、５勤２休（５日間の勤務＋２日間の休暇）、６勤１休（６日間の勤務＋１日の休暇）など）を考慮すること、任意に指定された公休を考慮すること、といった制約条件も指定し得る。また、仕業情報は、同じ番号であっても曜日（すなわち平日、土曜及び日曜）によって内容（例えば出勤時間及び退勤時間など）が異なる。そこで、平日と土曜、土曜と日曜、日曜と平日のように異なる曜日を跨ぐ場合でも、上述の制約条件（例えば休息時間を確保することなど）を成立させる必要がある。さらには、乗務員毎に異なる残業時間の上限、乗務員の雇用条件（例えば正社員か嘱託社員かなど）に応じて異なる勤務条件、乗務員のスキルレベル（例えば経験年数や資格など）に応じて異なる担当可能路線、特定の仕業情報（例えばコミュニティバスやスクールバスなどの運行に関わるもの）を割付可能な曜日などを、制約条件として設定することとしても良い。例えば、平日、土曜日、日祝日など曜日に応じて運行内容が異なる路線、コミュニティバスなど特定曜日に運行する路線、大学などの登校日にあわせて運行するスクールバス路線などは、仕業情報を日付に割り付ける際の制約条件として表現することができる。
【００３３】
図６に制約条件の一形式を示す。この例では、制約条件は、交番表の作成パラメータ（コマ数、最大計算時間など）、法令、社内規定、個人の希望などによる条件（２８日間の労働上限時間、必要休息時間、拘束時間平準化を行うか否かを示すフラグ、週内１５時間以上２回以内を適用するか否かを示すフラグ、予備勤務（乗務員の急な欠勤や車両故障などに対応するために営業所で待機する勤務をいう）の出勤時刻及び退勤時刻など）などを含んでいる。
【００３４】
スケジュール作成部１３０は、制約条件に従って計画データを組み合わせることでスケジュールを作成する。すなわち、交番表の作成を行う場合にあっては、制約条件取得部１２０が取得した各種制約条件を用いて、計画データ取得部１１０が取得した仕業情報を組み合わせる処理を行う。
【００３５】
スケジュール作成部１３０は、例えば制約充足問題（ｃｏｎｓｔｒａｉｎｔ  ｓａｔｉｓｆａｃｔｉｏｎ  ｐｒｏｂｌｅｍ）を解くことにより最適なスケジュールを算出する。制約充足問題とは、与えられた制約を満たす解が存在するかを判定する問題をいう。本実施の形態では、重み付き制約充足問題（ｗｅｉｇｈｔｅｄ  ｃｏｎｓｔｒａｉｎｔ  ｓａｔｉｓｆａｃｔｉｏｎ  ｐｒｏｂｌｅｍ）を用いてモデル化を行う。重み付き制約充足問題とは、単に制約を満たす解を求めるだけでなく、制約からの逸脱量の重み付き和（ペナルティ）を最小化することを目的とした問題をいう。重み付き制約充足問題は、制約条件と目的関数とを定義することでモデル化することができる。
【００３６】
制約条件は、逸脱を許さない制約（絶対制約、ハード制約）と逸脱を許す制約（考慮制約、ソフト制約）とに分別される。考慮制約には種々の制約条件が含まれ得るが、それらの制約条件間に重みの差を設けても良い。例えば交番表の作成を行う場合であれば、法令、通達、その他基準などに由来する制約条件（週拘束時間、日拘束時間、休息時間など）が絶対制約となり得る。そして、その他の制約条件、例えば個人的な休暇の希望などについては考慮制約とすることができる。このとき、例えば希望の強さに応じて数段階の優先度が設定されても良い。
【００３７】
目的関数は、考慮制約からの逸脱量を示す関数とすることができる。すなわち目的関数は、重みの大きい考慮制約に違反するほど、逸脱量が相対的に大きく評価される関数として定義される。スケジュール作成部１３０は、この目的関数が最小となる諸条件を算出する。すなわち、絶対制約及び考慮制約の全てを満たすことが最も望ましいのであるが、もしそれが不可能である場合、本実施の形態ではできるだけ逸脱量が少なくなるよう考慮制約を選択的に適用することで最適解を目指すものとする。具体的には、スケジュール作成部１３０はモデル化された最適化問題を制約最適化ソルバーを使って計算し、最適解を求める。
【００３８】
数１に、交番表の最適解を求めるために定式化されたモデルの一例を示す。ここで、Ｍはスケジューリングの対象となる乗務員の集合、Ｎはスケジューリングの対象となる日の集合、Ｗは仕業の集合、Ｓは達成すべき制約条件の集合、ｘｉｊｋは乗務員ｉがｊ日目のｋ勤務を行うかどうかを決定する０−１変数、ｆｓはｘｉｊｋで与えられる交番表において達成したい条件ｓに対する未達成度（達成目標値との差など）に重要度の重み付けをしたペナルティを与える関数である。なお関数ｆｓは、本モデルを適用しようとする業務の性質などに応じて種々の定義が可能であるため、本明細書ではこれ以上の詳細な説明を省略する。スケジュール１３０が数１のモデルを解くことにより、日付、乗務員、仕業の最適な組み合わせが求められる。
【数１】
2018185639.tif 000003
【００３９】
スケジュール出力部１４０は、スケジュール作成部１３０が作成したスケジュール、すなわち日付、乗務員、仕業の最適な組み合わせを外部に出力する。例えばスケジュール出力部１４０は、作成されたスケジュールを表やリストなどの形に整形してファイルを作成する。スケジュール出力部１４０は、当該ファイルを所定の記憶領域（図示しない）に保存しても良く、通信インターフェイス（図示しない）を介して外部システムと有線又は無線により通信を行い、外部システムであるスケジュール利用システム３００に対しファイルを送信しても良い。
【００４０】
例えばスケジュール出力部１４０は、スケジュール利用システム３００であるバス営業所の管理システム３００などに対して交番表を出力しても良い。管理システム３００は、スケジューリングシステム１００から取得した交番表を用いて、例えば乗務員の勤怠管理を行うことができる。また管理システム３００は、例えば乗務員が予定外の休暇を取得した場合や予定外の超過勤務を行った場合などに、その勤務実績を記録できる。そしでスケジューリングシステム１００が、管理システムから勤務実績に関するデータを取得し、実績を織り込んだ最適スケジュールを再作成することも可能である。すなわちスケジューリングシステム１００は、所定期間の休暇実績や超勤実績を絶対制約条件のひとつとして用い、当該所定期間を含み将来にわたる一定期間のスケジュールを改めて作成、出力する。これにより、乗務員間の労働条件をいっそう均等化できる。
【００４１】
またスケジュール出力部１４０は、スケジュール利用システム３００としてのバスロケーションシステム３００に対して交番表を出力しても良い。バスロケーションシステム３００は、運行中のバスの位置のトラッキングなどができるシステムである。バスロケーションシステム３００は、スケジュールシステム１００と連携することで、例えば所定の日時にどの乗務員がどの路線を運行しているかを特定することができるようになる。
【００４２】
図８に、スケジュール出力部１４０が作成する交番表ファイルの一例を示す。表の１行目には１から１３までの列番号が記載されている。１列は１日に相当し、各列には１０種類の仕業、法休又は公休のうちいずれか１つが割り付けられている。すなわち、この表は、１人の乗務員の１３日間の勤務パターンを示す帯である。
【００４３】
２、９及び１６行目（「１７５−１７６」「６０４」「２１１３」など）は、仕業を識別するための仕業番号である。ここでは、同一の仕業番号のもとにそれぞれ平日用（２−８行目）、土曜日用（９−１５行目）及び日曜日用（１６−２２行目）の３種類の勤務パターンが作成されている。同一の仕業番号であっても、勤務時間等が曜日により異なることがあるためである。乗務員は、乗務を行う曜日に応じて、平日用、土曜日用又は日曜日用のいずれかの仕業に従ってその日の乗務を行う。
【００４４】
この帯を作成する際に満足できなかった制約条件がある場合、スケジュール出力部１４０は、関係する交番を強調表示したり（図１０）、結果をサマリ表示したり（図１１）してユーザに通知することができる。
【００４５】
次に、図９のフローチャートを用いて、スケジューリングシステム１００の動作について説明する。
Ｓ１：計画データの取得
計画データ取得部１１０は、計画データ作成システム２００から計画データを取得する。
Ｓ２：制約条件の取得
制約条件取得部１２０は、計画データ作成システム２００から制約条件を取得する。及び／又は、所定の入力手段から制約条件を取得する。
Ｓ３：スケジュール作成
スケジュール作成部１３０は、制約条件に従って計画データの最適な組み合わせを算出する。好ましくは、重み付き制約充足問題を解くことによりスケジュールを作成する。
Ｓ４：スケジュール出力
スケジュール出力部１４０は、スケジュール作成部１３０が作成したスケジュールをスケジュール利用システム３００に対し出力する。
スケジュール利用システム３００から実績データをフィードバックする場合は、ステップＳ２に遷移し、実績データを制約条件として利用して、以降の処理を再度実行する。
【００４６】
本実施の形態によれば、スケジューリングシステム１００は、計画データを基に、種々の制約条件に適合するスケジュールを短時間で作成することができる。特に、スケジューリングシステム１００を計画データ作成システム２００と接続した場合には、計画データに基づくスケジューリング業務をほぼ自動化することが可能である。これにより、シフト作成担当者の負荷を大幅に軽減できる。例えば、ダイヤ改正時の交番表作成負荷を軽減することができる。
【００４７】
また、本実施の形態によれば、スケジューリングシステム１００は、制約条件を組み込んだモデルに基づいて交番表を算出する。そのため、人手で交番表を作成する場合に比べて制約条件の見落としなどのリスクを抑制でき、コンプライアンス及び安全性を高いレベルで担保できる。また、乗務員数や車両数の最適化（最小化）によるコスト削減、勤務時間の平準化による公平性の担保も可能である。さらに、法令や各種基準などに加え、個人の属性や希望といったより複雑な条件にも対応することが可能となる。加えて、従来は属人的であったシフト作成ノウハウを共有化できる。
【００４８】
また、本実施の形態によれば、制約条件にその重要度に応じて重み付けを行うことができる。これにより、現実的な解としてのスケジュールを得ることができる。制約条件を全て満たそうとすると適切な解が存在しないことがあり得るし、解が存在する場合であっても計算に多大な時間を要することがあり得る。しかし本実施の形態では、少なくとも一部の制約条件を考慮制約とし、ある程度の逸脱を許容しつつも逸脱量を最小化するような計算を行う。そのため、多様な制約条件の下でも少ない計算時間で適切な解を発見できる。
【００４９】
また、本実施の形態によれば、スケジューリングシステム１００は、スケジュール利用システム３００に対しスケジュールの最適化計算結果を出力する。これにより、営業所でのシフト計画の簡略化、バスロケーションシステムでの配車登録の軽減などが可能となる。また、スケジューリングシステム１００は、スケジュール利用システム３００から実績データをフィードバックし、スケジュールを再作成することができる。これにより、実績に応じて最適化されたスケジュールを提供することが可能である。しかも、本発明では従来に比べ格段に短時間で再スケジュールが可能であるので、常に適切なタイミングで最適なスケジュールを提供できる。
【００５０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。本発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【００５１】
例えば、上述の実施の形態では、スケジューリングシステム１００が乗務員の勤務スケジュールである交番表を作成する例について主に説明した。しかしながら、本発明はこれに限定されるものではない。例えばスケジューリングシステム１００を、車両（バスなど）の運行スケジュールである車両シフトの作成に適用することも可能である。このときスケジューリングシステム１００は、例えば乗務員と車両とが紐づけされた担当者制での車両運用、特定路線における専用車両の運用、及び定期点検や車検などの際の車両の運用制限などを制約条件として、最適な車両シフトを作成することができる。この場合、計画データ作成システム２００としてのダイヤ編成システム３００が、例えば計画データとして車両ダイヤ、制約条件として路線毎の車両制限などの情報を設定する。スケジューリングシステム１００は、ダイヤ編成システム３００からこれらの情報を取得するとともに、追加的な制約条件として、車両の担当者、点検での使用制限、団体輸送での車両使用条件といった情報を入力する。スケジューリングシステム１００は、これらの計画データ及び制約条件を用いて最適化問題を解き、スケジュールとしての車両シフトを算出する。そしてスケジュール利用システム３００としての車両管理システム３００に対し、作成した車両シフトを出力することができる。車両シフトの作成は、乗務員の勤務シフトの作成と同時に行うことが可能である。
【００５２】
また、上述の実施の形態では、スケジュール出力部１４０が、図８に示すような帯、すなわち１人の乗務員の複数日にわたる勤務パターンを出力する例を示したが、本発明はこれに限定されるものではない。例えばスケジュール出力部１４０は、図３に示すような、複数の乗務員に帯を割り当てた交番表を出力することとしても良い。この場合、スケジュール作成部１３０又はスケジュール出力部１４０は、いわゆる１日ずらしという技法を用いて、複数の乗務員に対して同じ帯を割り当てることができる。すなわち、ある日ｎに乗務員Ａが仕業ａで乗務を行ったならば、ｎ＋１日には乗務員Ｂが仕業ａで乗務を行い、ｎ＋２日には乗務員Ｃが仕業ａで乗務を行う、といったように、複数の乗務員に同じ帯を１日ずつずらして割り当てる。これにより、乗務員間で勤務負担の均等化を図ることができる。
【００５３】
また、上述の実施の形態では、スケジューリングシステム１００をバスの乗務員のスケジューリングに適用した例を示したが、本発明はこれに限定されるものではない。例えば鉄道をはじめ、路線、時刻表、運行要員などを擁し、計画を基に運行する様々な公共交通のスケジューリングにも適用可能である。さらに、公共交通に限らず、計画と制約条件とに基づいてリソースの割り付けを行うことが必要な任意の業務に適用しても良い。
【００５４】
また、本発明はハードウェアにより実現されても良く、ＣＰＵがコンピュータプログラムを実行することにより実現されても良い。コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）又は一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によりコンピュータに供給され得る。
【符号の説明】
【００５５】
１００  スケジューリングシステム
１１０  計画データ取得部
１２０  制約条件取得部
１３０  スケジュール作成部
１４０  スケジュール出力部
２００  計画データ作成システム（ダイヤ編成システム）
３００  スケジュール利用システム（管理システム）
【図１】
2018185639.tif 000004
【図２】
2018185639.tif 000005
【図３】
2018185639.tif 000006
【図４】
2018185639.tif 000007
【図５】
2018185639.tif 000008
【図６】
2018185639.tif 000009
【図７】
2018185639.tif 000010
【図８】
2018185639.tif 000011
【図９】
2018185639.tif 000012
【図１０】
2018185639.tif 000013
【図１１】
2018185639.tif 000014