(57)【要約】乗務員により連続的に乗り継がれる複数の移動タスク単位で複数の移動タスクをグループ化する処理において、まず、複数の処理対象移動タスクを、一の移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割し、当該時点で各グループに含まれている移動タスクを、当該グループを割り当てられた乗務員が業として乗務する乗務移動タスクとして決定し、その後、乗務外移動タスクが必要なグループに乗務外移動タスクを含めるスケジュール生成装置（１）。
2014069041.tif 000002
【特許請求の範囲】
【請求項１】
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶する移動タスク情報記憶手段と、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピング手段と、を有し、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピング手段は、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行うスケジュール生成装置。
【請求項２】
請求項１に記載のスケジュール生成装置において、
前記グルーピング手段は、
前記第１の処理において、乗り継ぎ可能な２つの前記移動タスク同士、及び／又は、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいくことで、前記処理対象移動タスク群を、一の前記移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割するスケジュール生成装置。
【請求項３】
請求項２に記載のスケジュール生成装置において、
前記グルーピング手段は、
前記第２の処理において、グループ毎に、各グループに含まれる複数の前記移動タスクの乗り継ぎ経路の最初の出発地及び最後の到着地の両方が所定のベース地となっているか判断し、前記最初の出発地及び前記最後の到着地の少なくとも一方が前記所定のベース地となっていない場合、当該グループに前記乗務外移動タスクを含めて、前記最初の出発地及び前記最後の到着地の両方を前記所定のベース地とするスケジュール生成装置。
【請求項４】
請求項２又は３に記載のスケジュール生成装置において、
前記グルーピング手段は、
前記第２の処理において、グループ毎に、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいるか否かを判断し、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいる場合、当該２つの前記移動タスクの間で乗り継ぎ可能な前記乗務外移動タスクをそのグループに含めるスケジュール生成装置。
【請求項５】
請求項１から４のいずれか１項に記載のスケジュール生成装置において、
前記グルーピング手段が生成した複数のグループ各々に含まれる前記移動タスクを識別する情報を記憶するグループ情報記憶手段をさらに有するスケジュール生成装置。
【請求項６】
請求項５に記載のスケジュール生成装置において、
前記グループ情報記憶手段は、各グループに含まれる前記移動タスクが前記乗務移動タスク及び前記乗務外移動タスクのいずれであるか識別可能に前記情報を記憶するスケジュール生成装置。
【請求項７】
請求項１から６のいずれか１項に記載のスケジュール生成装置において、
前記グルーピング手段は、前記処理対象移動タスク群に対して、前記第１の処理及び前記第２の処理を含むグループ化処理を繰り返し実行することができ、
前記第２の処理後のグループが満たすべき制約条件を記憶する制約条件記憶手段と、
前記グルーピング手段によるＮ回目（Ｎは１以上の整数）の前記グループ化処理で生成されたグループ群を処理対象とし、前記グループ群の中に前記制約条件を満たさない前記グループがないか判断する制約違反判断手段と、
前記グループ群を処理対象とし、前記グループ毎に、各グループに含まれる複数の前記移動タスクの従事に要する時間である従事時間を算出した後、前記グループ群に含まれるすべての前記グループの前記従事時間の合計時間を算出する従事時間算出手段と、
前記制約条件を満たさない前記グループが存在せず、かつ、前記従事時間の合計時間が最適値となるまで、前記グルーピング手段に前記グループ化処理を繰り返し実行させるグルーピング制御手段と、
を有するスケジュール生成装置。
【請求項８】
請求項７に記載のスケジュール生成装置において、
前記従事時間は、前記移動タスク各々の出発日時及び到着日時を用いて算出される前記移動タスクの移動時間、前記移動タスクの到着日時と当該移動タスクに続いて乗り継がれる前記移動タスクの出発日時を用いて算出される前記移動タスク間の乗り継ぎ待ち時間、show-up時間、及び、duty-off時間の中の少なくとも１つを含むスケジュール生成装置。
【請求項９】
請求項１から８のいずれか１項に記載のスケジュール生成装置において、
前記移動タスクは、飛行機のフライトであるスケジュール生成装置。
【請求項１０】
コンピュータを、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶する移動タスク情報記憶手段、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピング手段、として機能させ、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピング手段に、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行わせるプログラム。
【請求項１１】
コンピュータが、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶しておき、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピングステップを実行し、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピングステップでは、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行うスケジュール生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スケジュール生成装置、スケジュール生成方法及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、航空機の乗務員のスケジュールを作成する技術が開示されている。具体的には、所定の手法により探索空間を小さくすることで、短時間で質の良い解が得られるようにした技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−９２８０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
航空機の乗務員は、所定のベース地（例：羽田空港）から出発した後、複数のフライトを乗り継いで、再びベース地に戻ってくるというパターンで職務をこなす。乗務員に乗り継がれる複数のフライトの中には、乗務員が所定の業務（操縦等）を行うために乗務するフライト（オペレーションフライト）が少なくとも１つ含まれ、かつ、所定の業務を行うことなく空港間の移動を目的として例えば客席に乗るフライト（デッドヘッド）が含まれる場合がある。【０００５】
このような航空機の乗務員のスケジュールの作成は、まず、乗務員に連続的に乗り継がれる複数のフライト（オペレーションフライトを含み、デッドヘッドを含んでもよい）単位で複数のフライトをグループ化し、その後、各グループを乗務員に割り当てるという流れで行うことができる。【０００６】
従来、例えばこのような流れで行われる乗務員のスケジュールの作成は多くの処理時間を費やすという問題があり、処理時間の短縮が望まれていた。特許文献１に記載の技術においても、その効果は十分なものではなかった。【０００７】
なお、当該問題は航空機の乗務員のスケジュールの作成のみならず、電車、船、その他の乗り物の乗務員のスケジュール作成においても発生し得る。【０００８】
そこで、本発明は、乗務員のスケジュールの作成を効率的に行うための技術を提供することを課題とする。
【課題を解決するための手段】
【０００９】
本発明によれば、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶する移動タスク情報記憶手段と、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピング手段と、を有し、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピング手段は、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行うスケジュール生成装置が提供される。【００１０】
また、本発明によれば、
コンピュータを、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶する移動タスク情報記憶手段、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピング手段、として機能させ、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピング手段に、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行わせるプログラムが提供される。【００１１】
また、本発明によれば、
コンピュータが、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶しておき、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピングステップを実行し、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピングステップでは、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行うスケジュール生成方法が提供される。
【発明の効果】
【００１２】
本発明によれば、乗務員のスケジュールの作成を効率的に行うことが可能となる。
【図面の簡単な説明】
【００１３】
上述した目的、および、その他の目的、特徴および利点は、以下に述べる好適な実施の形態、および、それに付随する以下の図面によって、さらに明らかになる。
【図１】本実施形態のスケジュール生成装置の機能ブロック図の一例である。
【図２】本実施形態のスケジュール生成方法の処理の流れの一例を示すフローチャートである。
【図３】本実施形態のスケジュール生成方法の処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について図面を用いて説明する。
【００１５】
なお、本実施形態の装置は、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラム（あらかじめ装置を出荷する段階からメモリ内に格納されているプログラムのほか、ＣＤ等の記憶媒体やインターネット上のサーバ等からダウンロードされたプログラムも含む）、そのプログラムを格納するハードディスク等の記憶ユニット、ネットワーク接続用インタフェイスを中心にハードウェアとソフトウェアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。
【００１６】
また、本実施形態の説明において利用する機能ブロック図は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。これらの図においては、各装置は１つの機器により実現されるよう記載されているが、その実現手段はこれに限定されない。すなわち、物理的に分かれた構成であっても、論理的に分かれた構成であっても構わない。
【００１７】
まず、本実施形態の概要について説明する。なお、本実施形態では、航空機の乗務員のスケジュールを作成する場合を例にとり説明するが、電車、船、その他の乗り物の乗務員のスケジュールを作成する場合も同様である。
【００１８】
上述の通り、航空機の乗務員は、所定のベース地（例：羽田空港）から出発した後、複数のフライトを乗り継いで、再びベース地に戻ってくるというパターンで職務をこなす。なお、このパターンを１日でこなす場合もあれば、複数日に跨ってこなす場合もある。
【００１９】
ところで、乗務員が乗り継ぐ一連の複数のフライトの中には、乗務員が所定の業務（操縦など）を行うために乗務するフライト（オペレーションフライト）が少なくとも１つ含まれ、かつ、所定の業務を行うことなく空港間の移動を目的として例えば客席に乗るフライト（デッドヘッド）が含まれる場合がある。このため、航空機の乗務員のスケジュールは、オペレーションフライトのみならず、デッドヘッドをも考慮して作成する必要がある。
【００２０】
航空機の乗務員のスケジュールの作成は、まず、乗務員に連続的に乗り継がれる複数のフライト（オペレーションフライトを含み、デッドヘッドを含んでもよい）単位で複数のフライトをグループ化し（グループ化処理）、その後、各グループを乗務員に割り当てる（割り当て処理）という流れで行うことができる。
【００２１】
デッドヘッドを考慮して複数のフライトをグループ化する場合、あるフライトが複数のグループに重複して含まれる場合がある。例えば、あるフライトが、ある１つのグループにオペレーションフライトとして含まれ、かつ、他の１つ又は複数のグループにデッドヘッドとして含まれる場合がある。
【００２２】
デッドヘッドを考慮したグループ化処理の例としては、例えば、以下のようなものが考えられる。
【００２３】
まず、スケジュール作成処理対象の複数のフライト（第１のフライト群）を処理対象とし、連続的に乗り継ぎ可能な複数のフライトを組み合わせていくことで、複数のグループを作成する。なお、いずれのグループ作成処理時においても、処理対象は第１のフライト群すべてとする。すなわち、それ以前の処理によりあるグループに含められたフライトも探索空間に含め、あるフライトが複数のグループに重複して含まれる事を許可する。
【００２４】
そして、すべてのフライトがいずれかのグループに含まれるように複数のグループを作成した後、各グループのフライト各々に対して、オペレーションフライト又はデッドヘッドを割り当てる。具体的には、複数のグループに重複して含まれていないフライトには、オペレーションフライトを割り当てる。一方、複数のグループに重複して含まれているフライトについては、１つのグループに含まれるフライトのみにオペレーションフライトを割り当て、その他のグループに含まれるフライトにはデッドヘッドを割り当てる。その後、このようにして作成された複数のグループが最適解か判断するとともに、最適解が得られるまで上記グループ化処理を繰り返す。
【００２５】
当該処理の場合、グループ化処理時の探索空間は、常に、スケジュール作成処理対象の複数のフライト（第１のフライト群）すべてであるため、探索空間は常に膨大であり、結果、多くの処理時間を要してしまう。
【００２６】
本発明者は、特徴的なグループ化処理により、航空機の乗務員のスケジュール作成処理の時間短縮を実現する技術を発明した。以下、詳細に説明する。
【００２７】
図１に、本実施形態のスケジュール生成装置の機能ブロック図の一例を示す。図示するように、スケジュール生成装置１は、移動タスク情報記憶部１０と、グルーピング部２０と、グループ情報記憶部３０と、制約違反判断部４０と、制約条件記憶部５０と、従事時間算出部６０と、グルーピング制御部７０とを有する。以下、各部について説明する。
【００２８】
移動タスク情報記憶部１０は、移動タスクの出発地（空港、駅、港等）、到着地（空港、駅、港等）、出発日時及び到着日時を含む複数の移動タスク情報を記憶する。移動タスクは、飛行機のフライトなどが該当する。
【００２９】
移動タスク情報は、移動タスクの出発地、到着地、出発日時及び到着日時以外の情報、例えば、各フライトの機種を識別する情報等が含まれてもよい。
【００３０】
グルーピング部２０は、処理対象の複数の移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の移動タスク単位でグループ化する。乗務員に連続的に乗り継がれる複数の移動タスクの中には、乗務員が所定の業務を行うために乗務する移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、乗務員が所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよい。所定の業務は、例えば、操縦、客対応等である。
【００３１】
グルーピング部２０は、一の移動タスクが複数のグループに重複して含まれることがないように処理対象移動タスク群をグループ化する処理（第１の処理）と、当該グループ化する処理で生成された複数のグループ各々に含まれている移動タスクを、各グループを割り当てられた乗務員が所定の業務を行うために乗務する乗務移動タスクとして決定するとともに、いずれかのグループに乗務外移動タスクが必要な場合、他のグループに含まれている移動タスクを乗務外移動タスクとして含める処理（第２の処理）と、を行うことで、処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の移動タスク単位でグループ化する。すなわち、まず、乗務移動タスクのみでグループ化し、その後、必要に応じて各グループに乗務外移動タスクを追加する。第１の処理において、あるグループを生成した後に他のグループをさらに生成する際、すでに生成されたグループに含まれる移動タスクは、グループ化処理の対象から外される。すなわち、第１の処理では、生成されるグループの数が増えるほど、探索空間が小さくなっていく。
【００３２】
上述のような流れでグループ化処理を行うグルーピング部２０により、スケジュール作成処理の大幅な時間短縮が実現される。以下、上述のような流れで行うグループ化処理の一例を説明するが、グルーピング部２０による処理は上述のような流れを満たすものであればよく、以下で説明する例に限定されない。
【００３３】
グルーピング部２０による上記第１の処理は、例えば、乗り継ぎ可能な２つの移動タスク同士、及び／又は、他の移動タスクを挟んで乗り継ぎ可能な２つの移動タスク同士を、一の移動タスクが複数のグループに重複して含まれることがないように繋いでいき、繋がった複数の移動タスクを１つのグループとする処理を含んでもよい。
【００３４】
まず、乗り継ぎ可能な２つの移動タスク同士について説明する。
【００３５】
例えば、グルーピング部２０は、第１の移動タスクの到着地と第２の移動タスクの出発地が一致し、かつ、第１の移動タスクの到着日時よりも第２の移動タスクの出発日時の方が後である場合、第１の移動タスクの後に第２の移動タスクを乗り継ぎ可能と判断してもよい。
【００３６】
または、グルーピング部２０は、第１の移動タスクの到着地と第２の移動タスクの出発地が一致し、かつ、第１の移動タスクの到着日時よりも第２の移動タスクの出発日時の方が所定時間後である場合、第１の移動タスクの後に第２の移動タスクを乗り継ぎ可能と判断してもよい。当該所定時間は、乗り継ぎのための準備時間（空港内の移動等）等を考慮して決定することができる。
【００３７】
なお、乗務員は同じ機種のみに業として乗務することが望ましく、そのようにルールが定められている場合がある。このため、グルーピング部２０は、上述の条件を満たし、さらに、第１の移動タスク（フライト）の機種と第２の移動タスク（フライト）の機種とが一致する場合、第１の移動タスクの後に第２の移動タスクを乗り継ぎ可能と判断してもよい。なお、第１の移動タスクの後に第２の移動タスクを乗り継ぎ可能と判断するためのその他の条件が存在してもよい。
【００３８】
次に、他の移動タスクを挟んで乗り継ぎ可能な２つの移動タスク同士について説明する。
【００３９】
例えば、グルーピング部２０は、以下の（１）及び（２）の条件を満たす場合、第１の移動タスクと第２の移動タスクが、第３の移動タスクを挟んで乗り継ぎ可能であると判断してもよい。
【００４０】
（１）第１の移動タスクの到着地と第３の移動タスクの出発地とが一致し、かつ、第３の移動タスクの到着地と第２の移動タスクの出発地が一致する。
【００４１】
（２）第１の移動タスクの到着日時よりも第３の移動タスクの出発日時の方が後であり、かつ、第３の移動タスクの到着日時よりも第２の移動タスクの出発日時の方が後である。
【００４２】
なお、グルーピング部２０は、（２）の条件に代えて、以下の（２´）の条件を満たす場合、第１の移動タスクと第２の移動タスクが、第３の移動タスクを挟んで乗り継ぎ可能であると判断してもよい。
【００４３】
（２´）第１の移動タスクの到着日時よりも第３の移動タスクの出発日時の方が所定時間後であり、かつ、第３の移動タスクの到着日時よりも第２の移動タスクの出発日時の方が所定時間後である。
【００４４】
当該所定時間は、乗り継ぎのための準備時間（空港内の移動等）等を考慮して決定することができる。
【００４５】
なお、第３の移動タスクは１つであってもよいし、乗り継ぎ可能な複数の移動タスクであってもよい。第３の移動タスクとなる乗り継ぎ可能な複数の移動タスクは、少なくとも、上述した出発地と到着地の条件、及び、出発日時と到着日時の条件を満たす。
【００４６】
第３の移動タスクが乗り継ぎ可能な複数の移動タスクである場合、上記条件（１）、（２）、（２´）は以下のように読み直すことができる。
【００４７】
（１）第１の移動タスクの到着地と、第３の移動タスクに含まれる複数の移動タスクを乗り継ぐ経路の最初の出発地とが一致し、かつ、第３の移動タスクに含まれる複数の移動タスクを乗り継ぐ経路の最後の到着地と第２の移動タスクの出発地が一致する。
【００４８】
（２）第１の移動タスクの到着日時よりも、第３の移動タスクに含まれる乗り継ぎ可能な複数の移動タスクの中の最初に乗られる移動タスクの出発日時の方が後であり、かつ、第３の移動タスクに含まれる乗り継ぎ可能な複数の移動タスクの中の最後に乗られる移動タスクの到着日時よりも、第２の移動タスクの出発日時の方が後である。
【００４９】
（２´）第１の移動タスクの到着日時よりも、第３の移動タスクに含まれる乗り継ぎ可能な複数の移動タスクの中の最初に乗られる移動タスクの出発日時の方が所定時間後であり、かつ、第３の移動タスクに含まれる乗り継ぎ可能な複数の移動タスクの中の最後に乗られる移動タスクの到着日時よりも、第２の移動タスクの出発日時の方が所定時間後である。
【００５０】
また、グルーピング部２０は、（１）及び（２）に加えて、又は、（１）及び（２´）に加えて、「第１の移動タスク（フライト）の機種と第２の移動タスク（フライト）の機種とが一致する」という条件を満たす場合に、第１の移動タスクと第２の移動タスクが、第３の移動タスクを挟んで乗り継ぎ可能であると判断してもよい。第３の移動タスク（フライト）の機種が一致する必要はない。なお、第１の移動タスクと第２の移動タスクが、第３の移動タスクを挟んで乗り継ぎ可能であると判断するためのその他の条件が存在してもよい。
【００５１】
グルーピング部２０は、第１の処理で生成されたグループに含まれている移動タスクを、当該グループを割り当てられた乗務員が所定の業務を行うために乗務する乗務移動タスクとして決定するとともに、当該グループに乗務外移動タスクが必要な場合、当該グループに含まれていない移動タスクを乗務外移動タスクとして含める（第２の処理）。
【００５２】
例えば、グルーピング部２０は、グループ毎に、各グループに含まれる複数の移動タスクの乗り継ぎ経路の最初の出発地及び最後の到着地の両方が所定のベース地（例：羽田空港）となっているか判断する。そして、最初の出発地及び最後の到着地の少なくとも一方が所定のベース地となっていない場合、当該グループに乗務外移動タスクを含めて、最初の出発地及び最後の到着地の両方を所定のベース地とする。すなわち、当該乗り継ぎ経路の最初及び／又は最後に、乗り継ぎ可能な乗務外移動タスクを含める。
【００５３】
例えば、所定のベース地が羽田空港であり、あるグループに含まれる移動タスクの乗り継ぎ経路が、広島空港→名古屋空港→静岡空港→羽田空港であったとする。かかる場合、グルーピング部２０は、出発地：広島空港、到着地：名古屋空港のフライトに乗り継ぎ可能な１つ又は複数のフライト、例えば、出発地：羽田空港、到着地：広島空港のフライトを乗務外移動タスクとして当該グループに含め、当該グループの乗り継ぎ経路を、羽田空港→広島空港→名古屋空港→静岡空港→羽田空港とする。
【００５４】
当該処理により、各グループの乗り継ぎ経路は、所定のベース地（例：羽田空港）から出発した後、複数のフライトを乗り継いで、再びベース地に戻ってくるというパターンを満たすこととなる。
【００５５】
その他、グルーピング部２０は、グループ毎に、他の移動タスクを挟んで乗り継ぎ可能な２つの移動タスク同士をつないでいるか否かを判断し、他の移動タスクを挟んで乗り継ぎ可能な２つの移動タスク同士をつないでいる場合、当該２つの移動タスクの間で乗り継ぎ可能な乗務外移動タスクをそのグループに含める。
【００５６】
なお、グルーピング部２０は、処理対象移動タスク群に対するグループ化処理（第１の処理及び第２の処理）を、最適解が得られるまで繰り返し実行することができる。当該繰り返し処理は、以下で説明するグルーピング制御部７０により制御される。
【００５７】
グループ情報記憶部３０は、グルーピング部２０が生成した複数のグループ各々に含まれる移動タスクを識別する情報を記憶する。すなわち、グループ情報記憶部３０は、いずれのグループにいずれの移動タスクが含まれているかを識別する情報を記憶する。なお、グループ情報記憶部３０は、各グループに含まれる移動タスクが乗務移動タスク及び乗務外移動タスクのいずれとして含まれているのかを識別可能に上記情報を記憶する。
【００５８】
制約条件記憶部５０は、第２の処理後のグループが満たすべき制約条件を記憶する。制約条件は特段制限されないが、例えば、「連続２４時間において乗務時間の合計（乗務移動タスクの合計時間）の上限はＡ分」、「連続２４時間において着陸回数の合計（乗務移動タスクの着陸回数の合計）の上限はＢ回」、「連続勤務日数の上限はＣ日（国際便の場合）」、「連続勤務日数の上限はＤ日（国内便の場合）」、「ベース地からの乗務外移動タスクのフライト乗り継ぎ回数の上限はＥ回」、「ベース地までの乗務外移動タスクのフライト乗り継ぎ回数の上限はＦ回」等であってもよい。なお、ここでの例示はあくまで一例であり、これらに限定されない。
【００５９】
制約違反判断部４０は、グルーピング部２０によるＮ回目（Ｎは１以上の整数）のグループ化処理で生成されたグループ群を処理対象とし、グループ群の中に制約条件を満たさないグループがないか判断する。すなわち、制約違反判断部４０は、グルーピング部２０による複数回のグループ化処理各々毎に制約条件違反がないか判断し、各々毎に、結果を得る。判断結果は、例えば、制約条件違反の有無、ある場合はその数や、制約条件違反の内容を識別する情報等とすることができる。制約違反判断部４０は、グルーピング部２０によるグループ化処理毎に得た上記判断結果を、以下で説明するグルーピング制御部７０に入力する。
【００６０】
従事時間算出部６０は、グルーピング部２０によるＮ回目（Ｎは１以上の整数）のグループ化処理で生成されたグループ群を処理対象とし、まず、グループ毎に、各グループに含まれる複数の移動タスクの従事に要する時間である従事時間を算出する。その後、従事時間算出部６０は、上記グループ群に含まれるすべてのグループの従事時間の合計時間を算出する。すなわち、従事時間算出部６０は、グルーピング部２０による複数回のグループ化処理各々毎に上記処理を行い、従事時間の合計時間を算出する。
【００６１】
従事時間は、移動タスク各々の出発日時及び到着日時を用いて算出される移動タスクの移動時間（当該出発日時から当該到着日時までの時間）、移動タスクの到着日時と当該移動タスクに続いて乗り継がれる移動タスクの出発日時を用いて算出される移動タスク間の乗り継ぎ待ち時間（当該到着日時から当該出発日時までの時間）、いわゆるshow-up時間、duty-off時間の中の少なくとも１つを含む。
【００６２】
従事時間算出部６０は、グルーピング部２０によるグループ化処理毎に算出した従事時間の合計時間を、以下で説明するグルーピング制御部７０に入力する。なお、従事時間算出部６０は、従事時間の合計時間の代わりに、従事時間の合計時間をグループ数で割った平均時間を、以下で説明するグルーピング制御部７０に入力してもよい。
【００６３】
グルーピング制御部７０は、制約条件を満たさないグループが存在せず、かつ、従事時間の合計時間（又は平均時間）が最適値となるまで、グルーピング部２０にグループ化処理を繰り返し実行させる。
【００６４】
すなわち、グルーピング制御部７０は、制約違反判断部４０及び従事時間算出部６０から入力された情報を利用して、制約条件を満たさないグループが存在するか否かを判断するとともに、従事時間の合計時間（又は平均時間）が最適値となっているか否かを判断する。そして、制約条件を満たさないグループが存在する、及び、従事時間の合計時間（又は平均時間）が最適値となっていない、の少なくとも一方を満たす場合、前記グルーピング部２０を制御し、再度、処理対象移動タスク群に対するグループ化処理を実行させる。
【００６５】
なお、グルーピング部２０は、やり直しのグループ化処理の際、それ以前のグループ化処理と異なる結果が得られるように、グループ化処理を実行する。
【００６６】
すなわち、本実施形態は、グルーピング部２０、グループ情報記憶部３０、制約条件記憶部５０、制約違反判断部４０、従事時間算出部６０、及び、グルーピング制御部７０の連動した処理により、処理対象移動タスク群に対するグループ化処理の最適解を見つける。最適解を見つける手法は特段制限されず、例えば、シミュレーテッドアニーリング等の手法を採用してもよい。例えば、グルーピング制御部７０は、制約違反判断部４０から得た判断結果を所定のルール（設計的事項）に従いポイント化するとともに、従事時間算出部６０から得た従事時間を所定のルール（設計的事項）に従いポイント化する。そして、これら両ポイントを合算（例：足し合わせる）したトータルポイントの最適解を、例えばシミュレーテッドアニーリング等の手法を用いて求める。
【００６７】
次に、図２及び３のフローチャートを用いて、本実施形態のスケジュール生成方法の処理の流れの一例を説明する。なお、ここで説明する例はあくまで一例であり、本実施形態のスケジュール生成方法の処理の流れはこれに限定されない。
【００６８】
図２に示すように、まず、スケジュール生成装置１は、処理対象の複数の移動タスク情報の入力を受付ける（Ｓ１０）。その後、Ｓ１０で入力を受付けた複数の移動タスク情報で特定される処理対象移動タスク群に対して、グルーピング部２０が１回目のグルーピング処理を行う（Ｓ２０）。
【００６９】
ここで、図３のフローチャートを用いて、グルーピング処理の流れの一例を説明する。
【００７０】
まず、グルーピング部２０は、処理対象移動タスク群の中から、その時点でいずれのグループにも含まれていない移動タスクを特定する（Ｓ２１）。当該処理の開始時点においては、それ以前に生成されたグループは存在しないので、グルーピング部２０は、処理対象移動タスク群のすべてを、いずれのグループにも含まれていない移動タスクとして特定する。
【００７１】
その後、グルーピング部２０は、Ｓ２１で特定した移動タスクの中から、１つの移動タスクを任意に選択する（Ｓ２２）。ここでは、ランダムに選択してもよいし、所定のルール（例：出発日時が最も早いもの等）に従い選択してもよい。以下、ここで選択した移動タスクを第１の選択移動タスクという。
【００７２】
その後、グルーピング部２０は、第１の選択移動タスクの後ろに乗り継ぎ可能な移動タスク、又は、他の移動タスクを挟んで乗り継ぎ可能な移動タスクを繋ぐか否かを決定する（Ｓ２３）。ここでは、ランダムに決定してもよいし、所定のルール（例：所定の乗り継ぎ時間で乗り継ぎ可能な移動タスクがある場合繋ぐ等）に従い決定してもよい。
【００７３】
Ｓ２３において、他の移動タスクを繋がないと決定した場合（Ｓ２３のＮｏ）、グルーピング部２０は、第１の選択移動タスクのみを含むグループを決定するとともに、当該グループにおける第１の選択移動タスクを乗務移動タスクとする（Ｓ２６）。すなわち、グルーピング部２０は、第１の選択移動タスクのみを乗務移動タスクとして含むグループを決定する。そして、Ｓ２７に進む。
【００７４】
一方、Ｓ２３において、他の移動タスクを繋ぐと決定した場合（Ｓ２３のＹｅｓ）、グルーピング部２０は、Ｓ２１で特定した移動タスクの中から、第１の選択移動タスクに続いて乗り継ぎ可能な１つの移動タスク、又は、他の移動タスクを挟んで乗り継ぎ可能な１つの移動タスクを任意に決定する（Ｓ２４）。
【００７５】
グルーピング部２０は、第１の選択移動タスクに続いて乗り継ぎ可能な移動タスク、及び、他の移動タスクを挟んで乗り継ぎ可能な移動タスクが複数存在する場合、ランダムに、または、所定のルール（例：フライト間の乗り継ぎ待ち時間が最も短いもの等）に従い、１つを決定することができる。以下、ここで決定した移動タスクを第２の選択移動タスクという。
【００７６】
その後、グルーピング部２０は、第２の選択移動タスクの後ろに乗り継ぎ可能な移動タスク、又は、他の移動タスクを挟んで乗り継ぎ可能な移動タスクを繋ぐか否かを決定する（Ｓ２５）。ここでは、ランダムに決定してもよいし、所定のルール（例：所定の乗り継ぎ時間で乗り継ぎ可能な移動タスクがある場合組み合わせる等）に従い決定してもよい。
【００７７】
Ｓ２５において、他の移動タスクを繋がないと決定した場合（Ｓ２５のＮｏ）、グルーピング部２０は、第１及び第２の選択移動タスクのみを乗務移動タスクとして含むグループを決定し（Ｓ２６）、Ｓ２７に進む。
【００７８】
一方、Ｓ２５において、他の移動タスクを繋ぐと決定した場合（Ｓ２５のＹｅｓ）、Ｓ２４に戻り同様の処理を繰り返す。
【００７９】
Ｓ２７では、グルーピング部２０は、Ｓ２６で決定したグループに乗務外移動タスクが必要か否かを判断する（Ｓ２７）。
【００８０】
当該グループに乗務外移動タスクが不要と判断した場合（Ｓ２７のＮｏ）、グルーピング部２０は、Ｓ２６で決定したグループに関する情報、すなわち、当該グループを識別する情報に当該グループに含まれる乗務移動タスクを識別する情報を対応付けた情報をグループ情報記憶部３０に記憶し、Ｓ２９に進む。
【００８１】
一方、当該グループに乗務外移動タスクが必要と判断した場合（Ｓ２７のＹｅｓ）、グルーピング部２０は、当該グループに含まれていない移動タスクを乗務外移動タスクとして当該グループに含める（Ｓ２８）。そして、グルーピング部２０は、Ｓ２６で決定したグループに関する情報、及び、Ｓ２８で追加した乗務外移動タスクに関する情報をグループ情報記憶部３０に記憶し、Ｓ２９に進む。すなわち、グルーピング部２０は、当該グループを識別する情報に当該グループに含まれる乗務移動タスク、及び、乗務外移動タスクを識別する情報を対応付けた情報をグループ情報記憶部３０に記憶し、Ｓ２９に進む。
【００８２】
Ｓ２９では、処理対象移動タスク群の中にいずれのグループにも含まれていない移動タスクがあるか否かを判断する。ある場合（Ｓ２９のＹｅｓ）、Ｓ２１に戻り、同様の処理を繰り返す。一方、ない場合（Ｓ２９のＮｏ）、グループを生成する処理を終了し、図２のフローチャートのＳ３０に進む。
【００８３】
なお、図３を用いて説明した例では、Ｓ２２で特定した移動タスクの後ろに他の移動タスクを繋いでいくことでグループを生成したが、Ｓ２２で特定した移動タスクの前に他の移動タスクを繋いでいくことでグループを生成してもよい。
【００８４】
また、図３を用いて説明した例では、１つのグループを生成する毎に、乗務外移動タスクが必要か否かを判断し（Ｓ２７）、必要に応じて乗務外移動タスクを追加したが（Ｓ２８）、Ｓ２６の後、Ｓ２７及びＳ２８を経ずにＳ２９に進むようにしてもよい。すなわち、図３のフローチャートからＳ２７及びＳ２８を外してもよい。そして、乗務移動タスクのみを含む複数のグループを生成した後、すなわち、Ｓ２７及びＳ２８を外した図３のフローチャートの処理を終了した後、グループ毎に乗務外移動タスクが必要か否か判断し（Ｓ２７）、必要に応じて乗務外移動タスクを追加してもよい（Ｓ２８）。
【００８５】
図２に戻り、Ｓ３０では、グループ情報記憶部３０に記憶されているＮ回目（例：最新）のグルーピング処理で生成された複数のグループを処理対象とし、制約違反判断部４０が、処理対象のグループの中に、制約条件を満たさないグループがないか判断する（Ｓ３０）。
【００８６】
次いで、Ｓ４０では、グループ情報記憶部３０に記憶されているＮ回目（例：最新）のグルーピング処理で生成された複数のグループを処理対象とし、従事時間算出部６０が、グループ毎に、各グループに含まれる複数の移動タスクの従事に要する時間である従事時間を算出した後、当該グループ群に含まれるすべてのグループの従事時間の合計時間を算出する（Ｓ４０）。なお、Ｓ３０とＳ４０の処理順は特段制限されない。
【００８７】
Ｓ５０では、Ｓ３０及びＳ４０で算出された結果に基づいて、グルーピング制御部７０が、グルーピング部２０にグルーピング処理を再度実行させるか否かを判断する。なお、グルーピング制御部７０は、制約条件を満たさないグループが存在せず、かつ、従事時間の合計時間が最適値となるまで、グルーピング部２０にグループ化処理を繰り返し実行させる。
【００８８】
Ｓ５０において、グルーピング部２０にグルーピング処理を再度実行させると判断すると（Ｓ５０のＹｅｓ）、Ｓ２０に戻り、同様の処理を繰り返す。
【００８９】
一方、Ｓ５０において、グルーピング部２０にグルーピング処理を再度実行させないと判断すると（Ｓ５０のＮｏ）、Ｎ回目（例：最新）のグルーピング処理で生成された複数のグループを最適グループ群として、記憶装置に記憶する（Ｓ６０）。
【００９０】
その後、最適グループ群に含まれる複数のグループを、従業員に割り当てる処理が実行される。
【００９１】
次に、本実施形態の作用効果について説明する。
【００９２】
本実施形態では、複数の移動タスクを、一の移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割し、当該時点で各グループに含まれている移動タスクを、当該グループを割り当てられた乗務員が業として乗務する乗務移動タスクとして決定する。すなわち、まず、乗務移動タスクのみでグループ化する。
【００９３】
その後、乗務外移動タスクが必要なグループに、他のグループに含まれている移動タスクを乗務外移動タスクとして含める。
【００９４】
このような本実施形態の場合、複数の移動タスクを一の移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割する処理（乗務移動タスクのみでグループ化する処理：第１の処理）において、グループが生成されるごとに、既にいずれかのグループに含まれた移動タスクを探索空間から外していくことができる。すなわち、グループ生成処理が進むにつれて探索空間を小さくすることができる。結果、本実施形態によれば、スケジュール作成処理の時間短縮を大幅に実現することができる。
＜＜付記＞＞
【００９５】
上記説明によれば、以下の発明の説明がなされている。
＜発明１＞
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶する移動タスク情報記憶手段と、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピング手段と、を有し、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピング手段は、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行うスケジュール生成装置。
＜発明２＞
発明１に記載のスケジュール生成装置において、
前記グルーピング手段は、
前記第１の処理において、乗り継ぎ可能な２つの前記移動タスク同士、及び／又は、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいくことで、前記処理対象移動タスク群を、一の前記移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割するスケジュール生成装置。
＜発明３＞
発明２に記載のスケジュール生成装置において、
前記グルーピング手段は、
前記第２の処理において、グループ毎に、各グループに含まれる複数の前記移動タスクの乗り継ぎ経路の最初の出発地及び最後の到着地の両方が所定のベース地となっているか判断し、前記最初の出発地及び前記最後の到着地の少なくとも一方が前記所定のベース地となっていない場合、当該グループに前記乗務外移動タスクを含めて、前記最初の出発地及び前記最後の到着地の両方を前記所定のベース地とするスケジュール生成装置。
＜発明４＞
発明２又は３に記載のスケジュール生成装置において、
前記グルーピング手段は、
前記第２の処理において、グループ毎に、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいるか否かを判断し、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいる場合、当該２つの前記移動タスクの間で乗り継ぎ可能な前記乗務外移動タスクをそのグループに含めるスケジュール生成装置。
＜発明５＞
発明１から４のいずれかに記載のスケジュール生成装置において、
前記グルーピング手段が生成した複数のグループ各々に含まれる前記移動タスクを識別する情報を記憶するグループ情報記憶手段をさらに有するスケジュール生成装置。
＜発明６＞
発明５に記載のスケジュール生成装置において、
前記グループ情報記憶手段は、各グループに含まれる前記移動タスクが前記乗務移動タスク及び前記乗務外移動タスクのいずれであるか識別可能に前記情報を記憶するスケジュール生成装置。
＜発明７＞
発明１から６のいずれかに記載のスケジュール生成装置において、
前記グルーピング手段は、前記処理対象移動タスク群に対して、前記第１の処理及び前記第２の処理を含むグループ化処理を繰り返し実行することができ、
前記第２の処理後のグループが満たすべき制約条件を記憶する制約条件記憶手段と、
前記グルーピング手段によるＮ回目（Ｎは１以上の整数）の前記グループ化処理で生成されたグループ群を処理対象とし、前記グループ群の中に前記制約条件を満たさない前記グループがないか判断する制約違反判断手段と、
前記グループ群を処理対象とし、前記グループ毎に、各グループに含まれる複数の前記移動タスクの従事に要する時間である従事時間を算出した後、前記グループ群に含まれるすべての前記グループの前記従事時間の合計時間を算出する従事時間算出手段と、
前記制約条件を満たさない前記グループが存在せず、かつ、前記従事時間の合計時間が最適値となるまで、前記グルーピング手段に前記グループ化処理を繰り返し実行させるグルーピング制御手段と、
を有するスケジュール生成装置。
＜発明８＞
発明７に記載のスケジュール生成装置において、
前記従事時間は、前記移動タスク各々の出発日時及び到着日時を用いて算出される前記移動タスクの移動時間、前記移動タスクの到着日時と当該移動タスクに続いて乗り継がれる前記移動タスクの出発日時を用いて算出される前記移動タスク間の乗り継ぎ待ち時間、show-up時間、及び、duty-off時間の中の少なくとも１つを含むスケジュール生成装置。
＜発明９＞
発明１から８のいずれかに記載のスケジュール生成装置において、
前記移動タスクは、飛行機のフライトであるスケジュール生成装置。
＜発明１０＞
コンピュータを、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶する移動タスク情報記憶手段、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピング手段、として機能させ、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピング手段に、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行わせるプログラム。
＜発明１０−２＞
発明１０に記載のプログラムにおいて、
前記グルーピング手段に、
前記第１の処理において、乗り継ぎ可能な２つの前記移動タスク同士、及び／又は、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいくことで、前記処理対象移動タスク群を、一の前記移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割させるプログラム。
＜発明１０−３＞
発明１０−２に記載のプログラムにおいて、
前記グルーピング手段に、
前記第２の処理において、グループ毎に、各グループに含まれる複数の前記移動タスクの乗り継ぎ経路の最初の出発地及び最後の到着地の両方が所定のベース地となっているか判断させ、前記最初の出発地及び前記最後の到着地の少なくとも一方が前記所定のベース地となっていない場合、当該グループに前記乗務外移動タスクを含めて、前記最初の出発地及び前記最後の到着地の両方を前記所定のベース地とさせるプログラム。
＜発明１０−４＞
発明１０−２又は１０−３に記載のプログラムにおいて、
前記グルーピング手段に、
前記第２の処理において、グループ毎に、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいるか否かを判断させ、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいる場合、当該２つの前記移動タスクの間で乗り継ぎ可能な前記乗務外移動タスクをそのグループに含めさせるプログラム。
＜発明１０−５＞
発明１０から１０−４のいずれかに記載のプログラムにおいて、
前記コンピュータを、さらに、
前記グルーピング手段が生成した複数のグループ各々に含まれる前記移動タスクを識別する情報を記憶するグループ情報記憶手段として機能させるためのプログラム。
＜発明１０−６＞
発明１０−５に記載のプログラムにおいて、
前記グループ情報記憶手段に、各グループに含まれる前記移動タスクが前記乗務移動タスク及び前記乗務外移動タスクのいずれであるか識別可能に前記情報を記憶させるプログラム。
＜発明１０−７＞
発明１０から１０−６のいずれかに記載のプログラムにおいて、
前記グルーピング手段に、前記処理対象移動タスク群に対して前記第１の処理及び前記第２の処理を含むグループ化処理を繰り返し実行させることができ、
前記コンピュータを、さらに、
前記第２の処理後のグループが満たすべき制約条件を記憶する制約条件記憶手段、
前記グルーピング手段によるＮ回目（Ｎは１以上の整数）の前記グループ化処理で生成されたグループ群を処理対象とし、前記グループ群の中に前記制約条件を満たさない前記グループがないか判断する制約違反判断手段、
前記グループ群を処理対象とし、前記グループ毎に、各グループに含まれる複数の前記移動タスクの従事に要する時間である従事時間を算出した後、前記グループ群に含まれるすべての前記グループの前記従事時間の合計時間を算出する従事時間算出手段、
前記制約条件を満たさない前記グループが存在せず、かつ、前記従事時間の合計時間が最適値となるまで、前記グルーピング手段に前記グループ化処理を繰り返し実行させるグルーピング制御手段、
として機能させるためのプログラム。
＜発明１０−８＞
発明１０−７に記載のプログラムにおいて、
前記従事時間は、前記移動タスク各々の出発日時及び到着日時を用いて算出される前記移動タスクの移動時間、前記移動タスクの到着日時と当該移動タスクに続いて乗り継がれる前記移動タスクの出発日時を用いて算出される前記移動タスク間の乗り継ぎ待ち時間、show-up時間、及び、duty-off時間の中の少なくとも１つを含むプログラム。
＜発明１０−９＞
発明１０から１０−８のいずれかに記載のプログラムにおいて、
前記移動タスクは、飛行機のフライトであるプログラム。
＜発明１１＞
コンピュータが、
移動タスクの出発地、到着地、出発日時及び到着日時を含む複数の移動タスク情報を記憶しておき、
処理対象の複数の前記移動タスク情報で特定される処理対象移動タスク群を、乗務員に連続的に乗り継がれる複数の前記移動タスク単位でグループ化するグルーピングステップを実行し、
前記乗務員に連続的に乗り継がれる複数の前記移動タスクの中には、前記乗務員が所定の業務を行うために乗務する前記移動タスクである乗務移動タスクが少なくとも１つ含まれ、さらに、前記乗務員が前記所定の業務を行うことなく移動を目的として乗る乗務外移動タスクが含まれてもよく、
前記グルーピングステップでは、
一の前記移動タスクが複数のグループに重複して含まれることがないように前記処理対象移動タスク群をグループ化する第１の処理と、当該第１の処理で生成された複数のグループ各々に含まれている前記移動タスクを、各グループを割り当てられた前記乗務員が前記所定の業務を行うために乗務する前記乗務移動タスクとして決定するとともに、いずれかのグループに前記乗務外移動タスクが必要な場合、他のグループに含まれている前記移動タスクを前記乗務外移動タスクとして含める第２の処理と、を行うスケジュール生成方法。
＜発明１１−２＞
発明１１に記載のスケジュール生成方法において、
前記グルーピングステップでは、
前記第１の処理において、乗り継ぎ可能な２つの前記移動タスク同士、及び／又は、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいくことで、前記処理対象移動タスク群を、一の前記移動タスクが複数のグループに重複して含まれることがないように複数のグループに分割するスケジュール生成方法。
＜発明１１−３＞
発明１１−２に記載のスケジュール生成方法において、
前記グルーピングステップでは、
前記第２の処理において、グループ毎に、各グループに含まれる複数の前記移動タスクの乗り継ぎ経路の最初の出発地及び最後の到着地の両方が所定のベース地となっているか判断し、前記最初の出発地及び前記最後の到着地の少なくとも一方が前記所定のベース地となっていない場合、当該グループに前記乗務外移動タスクを含めて、前記最初の出発地及び前記最後の到着地の両方を前記所定のベース地とするスケジュール生成方法。
＜発明１１−４＞
発明１１−２又は１１−３に記載のスケジュール生成方法において、
前記グルーピングステップでは、
前記第２の処理において、グループ毎に、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいるか否かを判断し、他の前記移動タスクを挟んで乗り継ぎ可能な２つの前記移動タスク同士をつないでいる場合、当該２つの前記移動タスクの間で乗り継ぎ可能な前記乗務外移動タスクをそのグループに含めるスケジュール生成方法。
＜発明１１−５＞
発明１１から１１−４のいずれかに記載のスケジュール生成方法において、
前記コンピュータが、さらに、
前記グルーピングステップで生成した複数のグループ各々に含まれる前記移動タスクを識別する情報を記憶装置に記憶させるグループ情報記憶ステップをさらに実行するスケジュール生成方法。
＜発明１１−６＞
発明１１−５に記載のスケジュール生成方法において、
前記グループ情報記憶ステップでは、各グループに含まれる前記移動タスクが前記乗務移動タスク及び前記乗務外移動タスクのいずれであるか識別可能に前記情報を前記記憶装置に記憶させるスケジュール生成方法。
＜発明１１−７＞
発明１１から１１−６のいずれかに記載のスケジュール生成方法において、
前記グルーピングステップでは、前記処理対象移動タスク群に対して、前記第１の処理及び前記第２の処理を含むグループ化処理を繰り返し実行することができ、
前記コンピュータは、前記第２の処理後のグループが満たすべき制約条件を予め記憶しておき、
前記グルーピングステップでのＮ回目（Ｎは１以上の整数）の前記グループ化処理で生成されたグループ群を処理対象とし、前記グループ群の中に前記制約条件を満たさない前記グループがないか判断する制約違反判断ステップと、
前記グループ群を処理対象とし、前記グループ毎に、各グループに含まれる複数の前記移動タスクの従事に要する時間である従事時間を算出した後、前記グループ群に含まれるすべての前記グループの前記従事時間の合計時間を算出する従事時間算出ステップと、
前記制約条件を満たさない前記グループが存在せず、かつ、前記従事時間の合計時間が最適値となるまで、前記グルーピングステップで前記グループ化処理を繰り返し実行させるグルーピング制御ステップと、
を実行するスケジュール生成方法。
＜発明１１−８＞
発明１１−７に記載のスケジュール生成方法において、
前記従事時間は、前記移動タスク各々の出発日時及び到着日時を用いて算出される前記移動タスクの移動時間、前記移動タスクの到着日時と当該移動タスクに続いて乗り継がれる前記移動タスクの出発日時を用いて算出される前記移動タスク間の乗り継ぎ待ち時間、show-up時間、及び、duty-off時間の中の少なくとも１つを含むスケジュール生成方法。
＜発明１１−９＞
発明１１から１１−８のいずれかに記載のスケジュール生成方法において、
前記移動タスクは、飛行機のフライトであるスケジュール生成方法。
【００９６】
この出願は、２０１２年１０月３１日に出願された日本特許出願特願２０１２−２４１０６０号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2014069041.tif 000003
【図２】
2014069041.tif 000004
【図３】
2014069041.tif 000005
【国際調査報告】
2014069041.tif 000006
2014069041.tif 000007
2014069041.tif 000008
2014069041.tif 000009