(57)【要約】【課題】走行車の走行経路をより適切に選定することができる走行車制御装置、走行車システム、及び走行車制御方法を提供する。【解決手段】コントローラ３は、複数の走行車２のうちの１つの走行車２である対象走行車２Ａと、目的地への移動の要求を含む走行要求と、の組合せについて、対象走行車２Ａの走行経路を選定する。コントローラ３は、複数のノード、複数のリンク、及びリンク毎に関連付けられた、走行車２がリンクを通過するのにかかる時間を示す静的走行コスト、を含むマップ情報を記憶する記憶部３２と、対象走行車２Ａと非対象走行車２Ｂとの関係により対象走行車２Ａ及び非対象走行車２Ｂの少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する算出部３４と、静的走行コストと遅延コストとに基づいて算出される総走行コストに基づいて複数の候補経路から走行経路を選定する選定部３５と、を備える。【選択図】図１
2020030724.tif 000002
【特許請求の範囲】
【請求項１】
搬送路に沿って走行する複数の走行車のうちの１つの走行車である対象走行車と、予め設定された目的地への移動の要求を含む走行要求と、の組合せについて、前記対象走行車の現在位置から前記目的地までの走行経路を選定する走行車制御装置であって、
前記走行要求を取得する取得部と、
前記搬送路において、前記対象走行車が走行可能なエリアに含まれる特定の地点をそれぞれ示す複数のノードと、前記ノード間を接続する複数のリンクと、前記リンク毎に関連付けられた、前記走行車が前記リンクを通過するのにかかる時間を示す静的走行コストと、を含むマップ情報を記憶する記憶部と、
前記対象走行車と前記対象走行車以外の前記走行車である非対象走行車との関係により当該対象走行車及び当該非対象走行車の少なくとも１つが前記リンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する算出部と、
前記静的走行コストと前記遅延コストとに基づいて総走行コストを前記リンク毎に算出し、算出された前記総走行コストに基づいて、前記対象走行車の現在位置から前記目的地までの複数の候補経路から前記走行経路を選定する選定部と、を備える、走行車制御装置。
【請求項２】
前記選定部は、前記静的走行コストと前記遅延コストとの総和である前記総走行コストを前記リンク毎に算出し、複数の前記候補経路のうち当該候補経路に含まれる前記リンクの前記総走行コストの総和が最小となる前記候補経路を前記走行経路として選定する、請求項１に記載の走行車制御装置。
【請求項３】
前記遅延コストは、前記対象走行車の前記搬送路に沿った前方の前記非対象走行車である前方走行車の影響により前記対象走行車が前記リンクを通過するのにかかる時間が増加する量を示す第１遅延コストを含む、請求項１又は２に記載の走行車制御装置。
【請求項４】
複数の前記走行車のそれぞれについて、将来の各時刻での当該走行車の位置に関する走行スケジュールを作成する計画部を備え、
前記計画部は、
前記対象走行車と前記非対象走行車との関係を考慮しない前記走行車の走行スケジュールである静的走行スケジュールを作成し、
前記対象走行車の前記静的走行スケジュールと前記前方走行車の前記走行スケジュールとに基づいて、前記対象走行車と前記前方走行車との干渉を避けるように前記対象走行車の前記静的走行スケジュールを修正した修正走行スケジュールを作成し、
前記算出部は、前記対象走行車の前記静的走行スケジュールと前記対象走行車の前記修正走行スケジュールとに基づいて前記第１遅延コストを算出する、請求項３に記載の走行車制御装置。
【請求項５】
複数の前記走行車から当該走行車の現在位置及び走行速度に関する状態情報を所定のタイミングで受信する通信部を備え、
前記ノードは、前記搬送路が分岐又は合流する地点である分岐合流部を含み、
前記算出部は、前記走行車の前記状態情報に基づいて、前記対象走行車の前記搬送路に沿った前方に位置する前記分岐合流部において、前記対象走行車と前記前方走行車との関係により前記対象走行車が前記分岐合流部の手前で待機する場合に、前記対象走行車の待機時間を示す第１待機遅延コストを算出し、
前記第１遅延コストは、前記第１待機遅延コストを含む、請求項３又は４に記載の走行車制御装置。
【請求項６】
前記走行車は、物品の搬送及び移載を行う無人搬送車であり、
複数の前記走行車から、当該走行車の現在位置及び走行速度に関する状態情報と、当該走行車が前記物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する通信部を備え、
前記算出部は、前記走行車の前記状態情報及び前記移載情報に基づいて、前記前方走行車による前記物品の移載により前記対象走行車が前記前方走行車による前記移載位置の手前で待機する場合に、前記対象走行車の待機時間を示す第１移載遅延コストを算出し、
前記第１遅延コストは、前記第１移載遅延コストを含む、請求項３〜５のいずれか一項に記載の走行車制御装置。
【請求項７】
前記遅延コストは、前記対象走行車の影響により前記対象走行車の前記搬送路に沿った後方の前記非対象走行車である後方走行車が前記リンクを通過するのにかかる時間が増加する量を示す第２遅延コストを含む、請求項１〜６のいずれか一項に記載の走行車制御装置。
【請求項８】
複数の前記走行車のそれぞれについて、将来の各時刻での当該走行車の位置に関する走行スケジュールを作成する計画部を備え、
前記計画部は、
前記対象走行車と前記非対象走行車との関係を考慮しない前記走行車の走行スケジュールである静的走行スケジュールを作成し、
前記対象走行車の前記走行スケジュールと前記後方走行車の前記静的走行スケジュールとに基づいて、前記対象走行車と前記後方走行車との干渉を避けるように前記後方走行車の前記静的走行スケジュールを修正した修正走行スケジュールを作成し、
前記算出部は、前記後方走行車の前記静的走行スケジュールと前記後方走行車の前記修正走行スケジュールとに基づいて前記第２遅延コストを算出する、請求項７に記載の走行車制御装置。
【請求項９】
複数の前記走行車から当該走行車の現在位置及び走行速度に関する状態情報を所定のタイミングで受信する通信部を備え、
前記ノードは、前記搬送路が分岐又は合流する地点である分岐合流部を含み、
前記算出部は、前記走行車の前記状態情報に基づいて、前記対象走行車の前記搬送路に沿った前方に位置する前記分岐合流部において、前記対象走行車と前記後方走行車との関係により前記後方走行車が前記分岐合流部の手前で待機する場合に、前記後方走行車の待機時間を示す第２待機遅延コストを算出し、
前記第２遅延コストは、前記第２待機遅延コストを含む、請求項７又は８に記載の走行車制御装置。
【請求項１０】
前記走行車は、物品の搬送及び移載を行う無人搬送車であり、
複数の前記走行車から、当該走行車の現在位置及び走行速度に関する状態情報と、当該走行車が前記物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する通信部を備え、
前記算出部は、前記走行車の前記状態情報及び前記移載情報に基づいて、前記対象走行車による前記物品の移載により前記後方走行車が前記対象走行車による前記移載位置の手前で待機する場合に、前記後方走行車の待機時間を示す第２移載遅延コストを算出し、
前記第２遅延コストは、前記第２移載遅延コストを含む、請求項７〜９のいずれか一項に記載の走行車制御装置。
【請求項１１】
前記取得部は、複数の前記走行要求を取得して蓄積し、
前記選定部は、前記対象走行車としての複数の前記走行車のそれぞれと、前記取得部により蓄積された複数の前記走行要求のそれぞれと、の組合せ毎に前記走行経路を選定し、
前記組合せ毎に選定された前記走行経路にそれぞれ対応する前記総走行コストに基づいて、複数の前記走行要求のそれぞれに１つの前記走行車を対応付けたペアリング情報を導出する導出部を備える、請求項１〜１０のいずれか一項に記載の走行車制御装置。
【請求項１２】
請求項１〜１１のいずれか一項に記載の走行車制御装置と、
前記搬送路と、
前記搬送路に沿って走行可能な複数の前記走行車と、を含む、走行車システム。
【請求項１３】
搬送路に沿って走行する複数の走行車のうちの１つの走行車である対象走行車と、予め設定された目的地への移動の要求を含む走行要求と、の組合せについて、前記対象走行車の現在位置から前記目的地までの走行経路を選定する走行車制御方法であって、
前記走行要求を取得する取得ステップと、
前記搬送路において、前記対象走行車が走行可能なエリアに含まれる特定の地点をそれぞれ示す複数のノード間を接続する複数のリンク毎に関連付けられた、前記走行車が前記リンクを通過するのにかかる時間を示す静的走行コストに対して、前記対象走行車と前記対象走行車以外の前記走行車である非対象走行車との関係により前記対象走行車及び前記非対象走行車の少なくとも１つが前記リンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する算出ステップと、
前記静的走行コストと前記遅延コストとに基づいて総走行コストを前記リンク毎に算出し、算出された前記総走行コストに基づいて、前記対象走行車の現在位置から前記目的地までの複数の候補経路から前記走行経路を選定する選定ステップと、を含む、走行車制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、走行車制御装置、走行車システム、及び走行車制御方法に関する。
【背景技術】
【０００２】
従来、例えば半導体製造工場等において、半導体等の物品を搬送する走行車の走行を制御する無人走行車システムが知られている。このような無人走行車システムでは、新たな走行要求（一例として、搬送対象となる物品、荷掴み位置（Ｆｒｏｍ地点）、及び荷降ろし位置（Ｔｏ地点）の各々を示す情報を含む搬送要求）が発生する毎に、例えば以下のような最適台車優先制御が実行される。まず、荷掴み位置を含むモジュール（ベイ）内に存在する複数の空き走行車（物品搬送中ではない走行車）のうちから、最短経路又は最短時間で荷掴み位置に到達可能な走行車が特定される。そして、特定された走行車に上記搬送要求が割り付けられる。
【０００３】
このような無人搬送車システムとして、例えば特許文献１には、走行車の現在位置から目的地までの複数の候補経路のうち、当該候補経路の距離及び制限速度等に基づいて効率的に走行可能と判定される候補経路が、当該走行車の走行経路として選定されるシステムが開示されている。また、例えば特許文献２には、各走行車について、予め選定された走行経路において走行車が加速又は減速する位置及び時刻を示す走行計画を作成し、当該走行計画に基づいて前後の走行車が干渉すると判定される場合に、後続の走行車の走行計画を修正するシステムが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４９１５３０２号公報
【特許文献２】特許第５７４３１６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示される無人搬送車システムでは、走行車同士の関係によって走行車の走行が互いに妨げられることを考慮しないで、複数の候補経路のうちから走行経路が選定される。しかし、実際には、走行車は例えば他の走行車との干渉を避けながら走行する必要があり、常に制限速度の上限の速度で走行できるとは限らない。このため、走行車同士の関係によっては、各走行車が効率的に走行することができない候補経路が走行経路として選定されてしまう場合がある。
【０００６】
また、特許文献２に開示される無人搬送車システムでは、走行車同士の関係を考慮しないで予め走行経路が選定されており、当該走行経路に応じた走行計画が事後的に修正される。したがって、走行経路を選定するに際し、事前に走行車同士の関係を考慮することで、より適切な走行経路を選定することが望まれる。
【０００７】
そこで、本開示は、走行車の走行経路をより適切に選定することができる走行車制御装置、走行車システム、及び走行車制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本開示の一態様に係る走行車制御装置は、搬送路に沿って走行する複数の走行車のうちの１つの走行車である対象走行車と、予め設定された目的地への移動の要求を含む走行要求と、の組合せについて、対象走行車の現在位置から目的地までの走行経路を選定する走行車制御装置であって、走行要求を取得する取得部と、搬送路において、対象走行車が走行可能なエリアに含まれる特定の地点をそれぞれ示す複数のノードと、ノード間を接続する複数のリンクと、リンク毎に関連付けられた、走行車がリンクを通過するのにかかる時間を示す静的走行コストと、を含むマップ情報を記憶する記憶部と、対象走行車と対象走行車以外の走行車である非対象走行車との関係により当該対象走行車及び当該非対象走行車の少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する算出部と、静的走行コストと遅延コストとに基づいて総走行コストをリンク毎に算出し、算出された総走行コストに基づいて、対象走行車の現在位置から目的地までの複数の候補経路から走行経路を選定する選定部と、を備える。
【０００９】
本開示の一態様に係る走行車制御方法は、搬送路に沿って走行する複数の走行車のうちの１つの走行車である対象走行車と、予め設定された目的地への移動の要求を含む走行要求と、の組合せについて、対象走行車の現在位置から目的地までの走行経路を選定する走行車制御方法であって、走行要求を取得する取得ステップと、搬送路において、対象走行車が走行可能なエリアに含まれる特定の地点をそれぞれ示す複数のノード間を接続する複数のリンク毎に関連付けられた、走行車がリンクを通過するのにかかる時間を示す静的走行コストに対して、対象走行車と対象走行車以外の走行車である非対象走行車との関係により対象走行車及び非対象走行車の少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する算出ステップと、静的走行コストと遅延コストとに基づいて総走行コストをリンク毎に算出し、算出された総走行コストに基づいて、対象走行車の現在位置から目的地までの複数の候補経路から走行経路を選定する選定ステップと、を含む。
【００１０】
この走行車制御装置又は走行車制御方法では、リンク毎に関連付けられた固有の静的走行コストだけでなく、対象走行車と非対象走行車との関係により当該対象走行車及び当該非対象走行車の少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを考慮して、リンク毎に総走行コストが算出される。そして、算出された総走行コストに基づいて、複数の候補経路から走行経路が選定される。このため、走行車同士の関係により当該走行車の走行が妨げられる場合を考慮して、対象走行車が走行要求の目的地までより効率的に走行することができる候補経路を走行経路として選定することができる。よって、この走行車制御装置又は走行車制御方法によれば、対象走行車の走行経路をより適切に選定することが可能になる。
【００１１】
本開示の一態様に係る走行車制御装置では、選定部は、静的走行コストと遅延コストとの総和である総走行コストをリンク毎に算出し、複数の候補経路のうち当該候補経路に含まれるリンクの総走行コストの総和が最小となる候補経路を走行経路として選定する。これにより、この走行車制御装置では、静的走行コストと遅延コストとの総和である総走行コストが算出されるため、総走行コストを簡便な処理で算出することができる。また、この走行車制御装置では、複数の候補経路のうち当該候補経路に含まれるリンクの総走行コストの総和が最小となる候補経路が走行経路として選定されるため、対象走行車が走行要求の目的地まで特に効率的に走行することができる候補経路が走行経路として選定することができる。
【００１２】
本開示の一態様に係る走行車制御装置では、遅延コストは、対象走行車の搬送路に沿った前方の非対象走行車である前方走行車の影響により対象走行車がリンクを通過するのにかかる時間が増加する量を示す第１遅延コストを含む。これにより、この走行車制御装置では、前方走行車の影響により対象走行車がリンクを通過するのにかかる時間が増加する量を遅延コストに反映させることで、走行車が当該リンクを通過するのにかかる時間を適切に見積もることが可能となる。よって、対象走行車の走行経路をより適切に選定することができる。
【００１３】
本開示の一態様に係る走行車制御装置は、複数の走行車のそれぞれについて、将来の各時刻での当該走行車の位置に関する走行スケジュールを作成する計画部を備え、計画部は、対象走行車と非対象走行車との関係を考慮しない走行車の走行スケジュールである静的走行スケジュールを作成し、対象走行車の静的走行スケジュールと前方走行車の走行スケジュールとに基づいて、対象走行車と前方走行車との干渉を避けるように対象走行車の静的走行スケジュールを修正した修正走行スケジュールを作成し、算出部は、対象走行車の静的走行スケジュールと対象走行車の修正走行スケジュールとに基づいて第１遅延コストを算出する。これにより、この走行車制御装置では、対象走行車と前方走行車との干渉の影響を考慮して、対象走行車の走行経路をより適切に選定することができる。
【００１４】
本開示の一態様に係る走行車制御装置は、複数の走行車から当該走行車の現在位置及び走行速度に関する状態情報を所定のタイミングで受信する通信部を備え、ノードは、搬送路が分岐又は合流する地点である分岐合流部を含み、算出部は、走行車の状態情報に基づいて、対象走行車の搬送路に沿った前方に位置する分岐合流部において、対象走行車と前方走行車との関係により対象走行車が分岐合流部の手前で待機する場合に、対象走行車の待機時間を示す第１待機遅延コストを算出し、第１遅延コストは、第１待機遅延コストを含む。これにより、この走行車制御装置では、対象走行車が走行している搬送路に対して分岐又は合流しようとする前方走行車との干渉を避けるために対象走行車が分岐合流部の手前で待機する制御を実行する場合において、対象走行車の走行経路をより適切に選定することができる。
【００１５】
本開示の一態様に係る走行車制御装置では、走行車は、物品の搬送及び移載を行う無人搬送車であり、複数の走行車から、当該走行車の現在位置及び走行速度に関する状態情報と、当該走行車が物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する通信部を備え、算出部は、走行車の状態情報及び移載情報に基づいて、前方走行車による物品の移載により対象走行車が前方走行車による移載位置の手前で待機する場合に、対象走行車の待機時間を示す第１移載遅延コストを算出し、第１遅延コストは、第１移載遅延コストを含む。これにより、この走行車制御装置では、物品の移載を行う前方走行車との干渉を避けるために対象走行車が移載位置の手前で待機する制御を実行する場合において、対象走行車の走行経路をより適切に選定することができる。
【００１６】
本開示の一態様に係る走行車制御装置では、遅延コストは、対象走行車の影響により対象走行車の搬送路に沿った後方の非対象走行車である後方走行車がリンクを通過するのにかかる時間が増加する量を示す第２遅延コストを含む。これにより、この走行車制御装置では、対象走行車の影響により後方走行車がリンクを通過するのにかかる時間が増加する量を遅延コストに反映させることで、対象走行車が他の走行車の走行に与える影響を考慮することができる。よって、対象走行車の走行経路をより適切に選定することができる。
【００１７】
本開示の一態様に係る走行車制御装置は、複数の走行車のそれぞれについて、将来の各時刻での当該走行車の位置に関する走行スケジュールを作成する計画部を備え、計画部は、対象走行車と非対象走行車との関係を考慮しない走行車の走行スケジュールである静的走行スケジュールを作成し、対象走行車の走行スケジュールと後方走行車の静的走行スケジュールとに基づいて、対象走行車と後方走行車との干渉を避けるように後方走行車の静的走行スケジュールを修正した修正走行スケジュールを作成し、算出部は、後方走行車の静的走行スケジュールと後方走行車の修正走行スケジュールとに基づいて第２遅延コストを算出する。これにより、この走行車制御装置では、対象走行車と後方走行車との干渉の影響を考慮して、対象走行車の走行経路をより適切に選定することができる。
【００１８】
本開示の一態様に係る走行車制御装置は、複数の走行車から当該走行車の現在位置及び走行速度に関する状態情報を所定のタイミングで受信する通信部を備え、ノードは、搬送路が分岐又は合流する地点である分岐合流部を含み、算出部は、走行車の状態情報に基づいて、対象走行車の搬送路に沿った前方に位置する分岐合流部において、対象走行車と後方走行車との関係により後方走行車が分岐合流部の手前で待機する場合に、後方走行車の待機時間を示す第２待機遅延コストを算出し、第２遅延コストは、第２待機遅延コストを含む。これにより、この走行車制御装置では、対象走行車が走行している搬送路に対して分岐又は合流しようとする後方走行車との干渉を避けるために後方走行車が分岐合流部の手前で待機する制御を実行する場合において、対象走行車の走行経路をより適切に選定することができる。
【００１９】
本開示の一態様に係る走行車制御装置では、走行車は、物品の搬送及び移載を行う無人搬送車であり、複数の走行車から、当該走行車の現在位置及び走行速度に関する状態情報と、当該走行車が物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する通信部を備え、算出部は、走行車の状態情報及び移載情報に基づいて、対象走行車による物品の移載により後方走行車が対象走行車による移載位置の手前で待機する場合に、後方走行車の待機時間を示す第２移載遅延コストを算出し、第２遅延コストは、第２移載遅延コストを含む。これにより、この走行車制御装置では、物品の移載を行う対象走行車との干渉を避けるために後方走行車が移載位置の手前で待機する制御を実行する場合において、対象走行車の走行経路をより適切に選定することができる。
【００２０】
本開示の一態様に係る走行車制御装置では、取得部は、複数の走行要求を取得して蓄積し、選定部は、対象走行車としての複数の走行車のそれぞれと、取得部により蓄積された複数の走行要求のそれぞれと、の組合せ毎に走行経路を選定し、組合せ毎に選定された走行経路にそれぞれ対応する総走行コストに基づいて、複数の走行要求のそれぞれに１つの走行車を対応付けたペアリング情報を導出する導出部を備える。これにより、この走行車制御装置では、複数の走行要求が一旦蓄積された後に、当該複数の走行要求のそれぞれに対して走行車を１対１に対応付けたペアリング情報が導出される。このため、単一の走行要求だけでなく複数の走行要求間の相互の影響を考慮して、複数の走行要求のそれぞれに対する走行車の対応付け（割り付け）を行うことが可能となる。したがって、この走行車制御装置では、１つの走行要求が発生する毎に当該走行要求に対する走行車の割り付けを行う場合と比較して、走行車に対して走行要求をより適切に割り付けることが可能となる。
【００２１】
本開示の一態様に係る走行車システムは、上述した走行車制御装置と、搬送路と、搬送路に沿って走行可能な複数の走行車と、を含む。この走行車システムは上述した走行車制御装置を含んでいるため、この走行車システムでは、上述した理由により、対象走行車の走行経路をより適切に選定することが可能となる。
【発明の効果】
【００２２】
本開示の種々の態様によれば、走行車の走行経路をより適切に選定することが可能となる。
【図面の簡単な説明】
【００２３】
【図１】図１は、本実施形態に係る走行車システムのレイアウト例を示す図である。
【図２】図２は、コントローラのハードウェア構成の一例を示すブロック図である。
【図３】図３は、コントローラの機能構成を示すブロック図である。
【図４】図４は、選定部の処理の一例を説明するための図である。
【図５】図５は、選定部の処理の一例を説明するための図である。
【図６】図６は、選定部の処理結果の一例を示す図である。
【図７】図７は、図６の処理結果について導出されるペアリング情報を示す図である。
【図８】図８は、導出部の処理の一例を説明するための図である。
【図９】図９は、導出部の処理の一例を示すフローチャートである。
【図１０】図１０は、導出部の処理の一例を説明するための図である。
【図１１】図１１は、導出部の処理の一例を説明するための図である。
【図１２】図１２は、導出部の処理の一例を説明するための図である。
【図１３】図１３は、導出部の処理の一例を説明するための図である。
【図１４】図１４は、導出部の処理の一例を説明するための図である。
【図１５】図１５は、導出部の処理の一例を説明するための図である。
【図１６】図１６は、計画部により作成される走行スケジュールについて説明するための図である。
【図１７】図１７は、計画部により作成される走行スケジュールについて説明するための図である。
【図１８】図１８は、計画部により作成される走行スケジュールについて説明するための図である。
【図１９】図１９は、計画部により作成される走行スケジュールについて説明するための図である。
【図２０】図２０は、計画部により作成される走行スケジュールについて説明するための図である。
【図２１】図２１は、計画部により作成される走行スケジュールについて説明するための図である。
【図２２】図２２は、計画部により作成される走行スケジュールについて説明するための図である。
【図２３】図２３は、計画部により作成される走行スケジュールについて説明するための図である。
【図２４】図２４は、走行車制御方法を示すフローチャートである。
【発明を実施するための形態】
【００２４】
以下、図面を参照して、例示的な実施形態について説明する。なお、各図において同一又は相当部分には同一符号を付し、重複する説明を省略する。
【００２５】
図１は、本実施形態に係る走行車システム１のレイアウト例を示す図である。図２は、コントローラ３のハードウェア構成の一例を示すブロック図である。図３は、コントローラ３の機能構成を示すブロック図である。図１〜図３に示されるように、本実施形態に係る走行車システム１は、搬送路４と、搬送路４に沿って走行可能な複数の走行車２と、各走行車２の動作を制御するコントローラ（走行車制御装置）３と、を含む。
【００２６】
走行車２は、無人走行車であり、例えば天井走行車、有軌道台車等である。本実施形態では、走行車２は、例えば工場内に敷設された搬送路４に沿って走行可能に設けられ、物品の搬送及び移載を行う無人搬送車である。図１に示されるように、本実施形態では一例として、走行車２は、工場内の天井付近に敷設されたレール（軌道）等の搬送路４に沿って走行可能に設けられた天井搬送車である。例えば、走行車２は、天井走行式無人搬送車（ＯＨＴ：Overhead  Hoist  Transfer）である。一例として、走行車２によって搬送される物品は、複数枚の半導体ウェハが収容されるカセット（いわゆるＦＯＵＰ（Front  Opening  Unified  Pod））である。走行車２は、状態情報と移載情報とを所定のタイミングでコントローラ３に送信する。状態情報とは、当該走行車２の現在位置及び走行速度に関する情報である。移載情報とは、当該走行車が物品の移載を行う移載位置、時刻、及び所要時間に関する情報である。
【００２７】
搬送路４は、複数（図１の例では１２個）の区画（ベイ）に分けられている。搬送路４は、ベイ内のルートであるイントラベイルート５と、異なるベイ間を接続するルートであるインターベイルート６と、を含む。搬送路４に沿って、ロードポート７及びバッファ８が設けられている。ロードポート７は、図示しない半導体処理装置と走行車２との間でＦＯＵＰの受け渡しをする地点である。バッファ８は、走行車２がＦＯＵＰを仮置きできる地点である。分岐合流部９は、搬送路４が分岐又は合流する地点である。分岐合流部９では、搬送路４上において、複数の走行車２が同時に進入することを排除する排他制御が必要となる。
【００２８】
コントローラ３は、各走行車２に対して例えば無線通信によって搬送命令を出力することにより、各走行車２の搬送動作を制御する。ここで、搬送動作は、ＦＯＵＰの搬送及び移載のために行われる一連の動作であり、例えば、ロードポート７及びバッファ８等においてＦＯＵＰを掴む動作（荷掴み動作）及びＦＯＵＰを降ろす動作（荷降ろし動作）、並びに搬送路４を走行する走行動作等を含む。コントローラ３は、例えば図示しないＭＥＳ（Manufacturing  Execution  System）及びＭＣＳ（Material  Control  System）等の上位コントローラから、ＦＯＵＰの搬送に関する搬送要求（搬送指令）を受け付けて、走行車２に割り付ける。すなわち、コントローラ３は、上位コントローラから搬送要求を受け付けると、当該搬送要求を実行する走行車２を決定し、決定された走行車２に対して当該搬送要求を実行するように命令する。ここで、搬送要求は、搬送対象となる物品、荷掴み位置（Ｆｒｏｍ地点）、及び荷降ろし位置（Ｔｏ地点）等を特定するための情報を含んでいる。すなわち、搬送要求は、目的地としての荷掴み位置（Ｆｒｏｍ地点）に配置されたＦＯＵＰ（物品）を荷掴みして所定の荷降ろし位置（Ｔｏ地点）で荷降ろしすることを要求する指令である。
【００２９】
コントローラ３は、図１に示される制御対象エリア（複数のベイを含むエリア）に存在する走行車２を直接的に制御してもよいし、コントローラ３よりも下位のコントローラを介して走行車２を間接的に制御してもよい。例えば、制御対象エリアが複数のゾーン（例えばベイ単位）に分割され、ゾーン内の走行車２を制御するためのゾーンコントローラ（ベイコントローラ）が、ゾーン毎に設けられてもよい。この場合、コントローラ３は、各ゾーンコントローラに対して制御信号を送信し、各ゾーンコントローラが、各ゾーン内の走行車２に対して制御信号を送信してもよい。すなわち、各ゾーン内の走行車２は、各ゾーンのゾーンコントローラを介して、コントローラ３によって間接的に制御されてもよい。
【００３０】
図２に示されるように、コントローラ３は、一以上のＣＰＵ（Central  Processing  Unit）等のプロセッサ３０１と、主記憶装置である一以上のＲＡＭ（Random  Access  Memory）３０２及び一以上のＲＯＭ（Read  Only  Memory）３０３と、オペレータが操作入力を行うためのキーボード等の入力装置３０４と、オペレータに情報を提示するディスプレイ等の出力装置３０５と、上位コントローラ及び走行車２等との間で有線通信又は無線通信を行うための通信モジュール３０６と、ＨＤＤ及びＳＳＤ等の補助記憶装置３０７と、を含むコンピュータシステムとして構成され得る。コントローラ３は、１台のサーバ装置として構成されてもよいし、互いに協調して動作する複数のサーバ装置として構成されてもよい。後述するコントローラ３の各機能は、例えば、ＲＡＭ３０２等のメモリ上に所定のプログラムを読み込ませ、プロセッサ３０１の制御のもとで入力装置３０４及び出力装置３０５を動作させると共に通信モジュール３０６を動作させ、ＲＡＭ３０２及び補助記憶装置３０７におけるデータの読み出し及び書き込みを行うことで実現される。
【００３１】
図３に示されるように、コントローラ３は、機能的構成要素として、取得部３１と、記憶部３２と、計画部３３と、算出部３４と、選定部３５と、導出部３６と、通信部３７と、を備えている。コントローラ３は、これらの各機能により、予め設定された目的地への移動の要求を含む走行要求を複数の走行車２のうちから選択される１つの走行車２である対象走行車２Ａに割り付ける処理を実行する。本実施形態では、走行要求は、上述した搬送要求であり、予め設定された目的地は、搬送要求に含まれる荷掴み位置である。コントローラ３は、対象走行車２Ａと搬送要求との組合せについて、対象走行車２Ａの現在位置から当該搬送要求の目的地までの走行経路を選定する。以下の説明では、走行要求の割り付け対象として着目されている走行車２を対象走行車２Ａという場合がある。また、対象走行車２Ａ以外の走行車２を非対象走行車２Ｂという場合がある。また、対象走行車２Ａの搬送路４に沿った前方の非対象走行車２Ｂを前方走行車２Ｆという場合があり、対象走行車２Ａの搬送路４に沿った後方の非対象走行車２Ｂを後方走行車２Ｒという場合がある。
【００３２】
取得部３１は、上位コントローラから出力された複数の搬送要求を取得して蓄積する。取得部３１は、上位コントローラから取得した搬送要求をコントローラ３が備えるメモリ等に一時的に保存する。本実施形態では、取得部３１は、所定の周期（第１制御周期）で、上位コントローラから周期的に搬送要求を受け付けるように構成されている。つまり、取得部３１は、第１制御周期で繰り返し到来する受付タイミングにおいて、上位コントローラから搬送要求を受け付ける。例えば、取得部３１は、前回の受付タイミングから今回の受付タイミングまでの間に上位コントローラにおいて発生した一以上の搬送要求を、今回の受付タイミングにおいて取得する。なお、前回の受付タイミングから今回の受付タイミングまでの間に一つも搬送要求が発生しなかった場合、今回の受付タイミングにおいては、取得部３１によって搬送要求は取得されなくてもよい。
【００３３】
記憶部３２は、走行車システム１のレイアウトに関するマップ情報を記憶している。マップ情報は、複数のノードと、複数のリンクと、リンク毎に関連付けられた静的走行コストと、を含む情報である。マップ情報は、後述する計画部３３によって参照される。
【００３４】
ノードは、搬送路４において、対象走行車２Ａが走行可能なエリア（例えば図１に示される制御対象エリア）に含まれる特定の地点をそれぞれ示す情報である。特定の地点は、搬送路４上において予め登録された任意の地点である。特定の地点は、例えば、ロードポート７、バッファ８等の所定の作業装置が配置された地点や、搬送路４が分岐又は合流する地点である分岐合流部９等を含む地点である。リンクは、ノード間を接続する部分（搬送路４の一部）を示す情報である。各リンクには、走行車２が走行可能な方向が関連付けられている。すなわち、マップ情報に含まれる複数のノードと複数のリンクとは、有向グラフを構成している。
【００３５】
静的走行コストは、走行車２がリンクを通過するのにかかる時間（以下、「コスト」ともいう）を示す情報である。静的走行コストは、リンクに予め関連付けられたコストであり、対象走行車２Ａと非対象走行車２Ｂとの関係を考慮しない場合のコストである。換言すると、静的走行コストは、他の走行車２の影響を受けないコストである。例えば、静的走行コストは、一の走行車２が他の走行車２の影響を受けない状況においてリンクを通過可能な最短時間を示すコストである。このような静的走行コストは、例えば、リンクの長さ（距離）、リンクに関連付けられた制限速度等に基づいて算出され得る。
【００３６】
計画部３３は、複数の走行車２のそれぞれについて、将来の各時刻での当該走行車２の位置に関する走行スケジュールを作成する（図１７参照）。より詳細には、計画部３３は、まず、対象走行車２Ａと非対象走行車２Ｂとの関係を考慮しない走行車２の走行スケジュールである静的走行スケジュールを作成する。
【００３７】
その後、計画部３３は、対象走行車２Ａの静的走行スケジュールと前方走行車２Ｆの走行スケジュール（前方走行車２Ｆの確定済みの走行スケジュール）とに基づいて、対象走行車２Ａと前方走行車２Ｆとの干渉を避けるように対象走行車２Ａの静的走行スケジュールを修正した修正走行スケジュールを作成する。すなわち、計画部３３は、対象走行車２Ａと前方走行車２Ｆとの干渉を検出し、当該干渉を排除するように、対象走行車２Ａの修正走行スケジュールを作成する。
【００３８】
また、計画部３３は、対象走行車２Ａの走行スケジュール（対象走行車２Ａの確定済みの走行スケジュール）と後方走行車２Ｒの静的走行スケジュールとに基づいて、対象走行車２Ａと後方走行車２Ｒとの干渉を避けるように後方走行車２Ｒの静的走行スケジュールを修正した修正走行スケジュールを作成する。すなわち、計画部３３は、対象走行車２Ａと後方走行車２Ｒとの干渉を検出し、当該干渉を排除するように、後方走行車２Ｒの修正走行スケジュールを作成する。計画部３３により作成される走行スケジュールについて、詳しくは後述する。
【００３９】
算出部３４は、対象走行車２Ａと非対象走行車２Ｂとの関係により対象走行車２Ａ及び非対象走行車２Ｂの少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する。遅延コストには、前方走行車２Ｆの影響により対象走行車２Ａがリンクを通過するのにかかる時間が増加する量を示す第１遅延コストＴｉ１と、対象走行車２Ａの影響により後方走行車２Ｒがリンクを通過するのにかかる時間が増加する量を示す第２遅延コストＴｉ２と、が含まれる（図２３参照）。より詳細には、算出部３４は、対象走行車２Ａの静的走行スケジュールと対象走行車２Ａの修正走行スケジュールとに基づいて第１遅延コストＴｉ１を算出する。また、算出部３４は、後方走行車２Ｒの静的走行スケジュールと後方走行車２Ｒの修正走行スケジュールとに基づいて第２遅延コストＴｉ２を算出する。
【００４０】
選定部３５は、対象走行車２Ａとしての複数の走行車２のそれぞれと、取得部３１により蓄積された複数の走行要求のそれぞれと、の組合せ毎に走行経路を選定する。選定部３５は、静的走行コストと遅延コストとに基づいて総走行コストをリンク毎に算出する。そして、選定部３５は、算出された総走行コストに基づいて、対象走行車２Ａの現在位置から目的地までの複数の候補経路から走行経路を選定する。例えば、選定部３５は、静的走行コストと遅延コストとの総和である総走行コストをリンク毎に算出し、複数の候補経路のうち当該候補経路に含まれるリンクのそれぞれの総走行コストの総和が最小となる候補経路を走行経路として選定する。
【００４１】
選定部３５による処理について、図４及び図５を参照して説明する。図４及び図５は、選定部３５の処理の一例を説明するための図である。
【００４２】
選定部３５は、取得部３１により蓄積された複数の搬送要求のうちの１つの搬送要求と複数の走行車２のうちの１つの走行車２との組み合わせ毎に、走行車２が搬送要求を実行する場合にかかる時間（本実施形態では、走行車２が搬送要求の目的地（Ｆｒｏｍ地点）に到達するまでにかかる時間）を示す経路コストを算出する。具体的には、選定部３５は、搬送要求と走行車２との組合せ毎に、記憶部３２に記憶されたマップ情報に含まれる静的走行コストと、算出部３４により算出された遅延コストとに基づいて、総走行コストをリンク毎に算出する。そして、選定部３５は、算出された総走行コストに基づいて、対象走行車２Ａの現在位置から目的地（荷掴み位置であるＦｒｏｍ地点）までの複数の候補経路から走行経路を選定する。
【００４３】
本実施形態では、上述したように、選定部３５は、搬送要求と走行車２との任意の組み合わせについて、走行車２の現在位置から搬送要求の目的地（Ｆｒｏｍ地点）までの複数の候補経路のうち、候補経路に含まれるリンクの総走行コストの和（すなわち経路コスト）が最小となる候補経路（すなわち最短経路）を走行経路として決定する。選定部３５は、例えばダイクストラ法、Ａ＊（Ａ−ｓｔａｒ）等の公知の最短経路探索アルゴリズムを用いることにより、搬送要求と走行車２との組み合わせ毎に、走行経路（最短経路）を決定し、その経路コストを算出することができる。
【００４４】
図４を参照して、走行車２と搬送要求とのある組み合わせについての選定部３５の処理について説明する。ここでは一例として、ダイクストラ法を用いた処理について説明する。図４において、「Ｅ」、及び「１」〜「６」が記されたノードＮは、上述したマップ情報に含まれるノードに対応している。「Ｓ」が記されたノードＮ（以下「始点Ｓ」ともいう。）は、ルート探索の出発地（すなわち、走行車２の現在位置）を示している。「Ｅ」が記されたノードＮ（以下「終点Ｅ」ともいう。）は、ルート探索の目的地（すなわち、搬送要求のＦｒｏｍ地点）を示している。「１」〜「６」が記されたノードＮは、出発地でも目的地でもないノードである。これらのノードＮ間を接続するリンクＬは、マップ情報に含まれるリンクに対応している。各リンクＬに関連付けられた「Ｃｏｓｔ」は、マップ情報に含まれるコストに対応している。ここでは、各リンクＬのコストは、静的走行コストと遅延コストとの総和である総走行コストとされている。各リンクＬの向きは、走行車２が走行可能な方向を示している。なお、始点Ｓがマップ情報に予め登録されたノードと一致しない場合（すなわち、始点Ｓがマップ情報に予め登録された第１ノードと第２ノードとを接続するリンクの途中位置に対応する場合）には、選定部３５は、始点Ｓと第１ノードとを接続する第１リンクと始点Ｓと第２ノードとを接続する第２リンクとを新たに設定することにより、図４に示したようなマップの情報を取得してもよい。この場合、第１リンク及び第２リンクの各々に関連付けられる走行コストは、例えば、第１ノードと第２ノードとを接続するリンクに関連付けられた走行コストと、第１リンク及び第２リンクの距離の比と、に基づいて決定され得る。
【００４５】
選定部３５は、図４に示されるような有向グラフに対して最短経路探索アルゴリズム（ここではダイクストラ法）を実行することにより、始点Ｓから終点Ｅまでの最短経路と、当該最短経路に含まれる一以上のリンクＬの走行コストの和である経路コストと、を導出する。図５は、最短経路探索アルゴリズムの実行結果を示す図である。図５に示されるように、選定部３５は、始点Ｓから終点Ｅまでの最短経路として、「Ｓ」→「１」→「２」→「４」→「６」→「５」→「Ｅ」の順に辿るルートを決定する。また、選定部３５は、当該最短経路の経路コストとして、当該最短経路に含まれるリンクＬの走行コストの和（すなわち、経路コスト）である「１６（＝２＋３＋３＋４＋２＋２）」を算出する。このように、選定部３５は、公知の最短経路探索アルゴリズムを実行することにより、走行車２と搬送要求との１つの組み合わせについて、走行経路（最短経路）とその経路コストとを導出する。選定部３５は、取得部３１により蓄積された複数の搬送要求と制御対象エリアに存在する複数の走行車２との間で可能な全ての組み合わせについて、上記最短経路探索アルゴリズムを実行する。これにより、選定部３５は、組み合わせ毎の走行経路とその経路コストとを導出する。
【００４６】
上述した選定部３５の処理により、取得部３１により蓄積された複数の搬送要求と複数の走行車２との間で可能な各組み合わせについての経路コストが得られる。図６は、複数（ここでは４つ）の搬送要求（搬送要求１〜搬送要求４）と複数（ここでは７つ）の走行車２（Ａ〜Ｇの走行車ＩＤにより識別される走行車２）との組み合わせ毎に算出された経路コストの一例を示す図である。例えば、図６の搬送要求１の表における第１行目は、搬送要求１を走行車ＩＤが「Ａ」である走行車２（以下、走行車ＩＤが「Ｘ」である走行車２のことを、単に「走行車Ｘ」と表記する。）に割り付けた場合に、走行車Ａが走行車Ａの現在位置から搬送要求１のＦｒｏｍ地点に到達するまでにかかる最短時間が「３」であることを示している。なお、図６の例では、経路コストが所定の閾値（ここでは３０）以上となる走行車２が除外されている。
【００４７】
導出部３６は、組合せ毎に選定された走行経路にそれぞれ対応する経路コストに基づいて、複数の走行要求のそれぞれに１つの走行車を対応付けたペアリング情報を導出する。より具体的には、導出部３６は、取得部３１により蓄積された複数の搬送要求の各々に１つの走行車２を対応付けた（割り付けた）ペアリング情報を導出する。導出部３６は、選定部３５によって組み合わせ毎に算出された経路コスト（すなわち、図６に示されるような算出結果）に基づいて、ペアリング情報を導出する。本実施形態では、導出部３６は、取得部３１により蓄積された複数の搬送要求と複数の走行車２との組み合わせにおける経路コストの総和が最小となるように、ペアリング情報を導出する。
【００４８】
図７は、図６の例について導出されたペアリング情報を示す図である。図７に示されるように、搬送要求１に走行車Ｃを対応付け、搬送要求２に走行車Ｅを対応付け、搬送要求３に走行車Ｂを対応付け、搬送要求４に走行車Ａを対応付けた場合に、経路コストの総和が最小値「２１（＝６＋５＋６＋４）」を取る。したがって、このような対応付けを示すペアリング情報が、導出部３６によって導出される。このように、導出部３６によれば、経路コストの総和が最小となるように全体最適が図られたペアリング情報（以下「最適ペアリング情報」ともいう。）が得られる。
【００４９】
続いて、図８〜図１５を参照して、最適ペアリング情報を導出するための導出部３６の処理の一例について説明する。この例では、導出部３６は、搬送要求と走行車２との対応付け（ペアリング）を最小費用流問題として定式化し、当該最小費用流問題を解くことにより、ペアリング情報を導出する。ここでは、図８に示されるように、２つの搬送要求１，２と３つの走行車Ａ，Ｂ，Ｃとの間で経路コストの総和が最小となる最適ペアリング情報を導出する場合の処理について説明する。図８の（Ａ）は、本例の説明のために用意された選定部３５による算出結果の一例を図６と同様の表形式で表現したものである。図８の（Ｂ）は、図８の（Ａ）に示される関係を無向グラフとして表現したものである。図８の（Ｂ）に示されるグラフは、搬送要求１，２と走行車Ａ，Ｂ，Ｃとをそれぞれノードとして表現すると共に、搬送要求１，２と走行車Ａ，Ｂ，Ｃとの各組み合わせの経路コストを搬送要求と走行車とを結ぶリンクのコストとして表現したものである。
【００５０】
図９は、処理手順を示すフローチャートである。まず、ステップＳ１１において、導出部３６は、最適ペアリング情報を導出する問題を最小費用流問題として定式化するために、図１０に示されるコスト付きネットワークを作成する。具体的には、図１０に示されるように、導出部３６は、搬送要求１，２を示すノード１，２の各々とコスト「０」のリンクによって接続される始点ｓを設定すると共に、走行車Ａ，Ｂ，Ｃを示すノードＡ，Ｂ，Ｃの各々とコスト「０」のリンクによって接続される終点ｅを設定する。また、導出部３６は、グラフ全体が「始点ｓ→搬送要求ノード（ノード１，２）→走行車ノード（ノードＡ，Ｂ，Ｃ）→終点ｅ」の方向に流れる有向グラフとなるように、各リンクの向きを設定する。ここで、各リンクの容量は１に設定される。以上により、２つの搬送要求１，２と３つの走行車Ａ，Ｂ，Ｃとの間の最適ペアリング情報を導出する問題は、図１０に示されるコスト付きネットワーク（有向グラフ）に対する最小費用流問題に変換される。
【００５１】
続いて、ステップＳ１２において、導出部３６は、図１０に示されるコスト付きネットワークについて、ダイクストラ法等の最短経路探索アルゴリズムを実行することにより、始点ｓから終点ｅまでの最短経路Ｐ１を求めると共に、始点ｓから各ノードへの最短コスト（始点ｓから各ノードへの最短経路を辿った場合に通過するリンクのコストの和）を求める。これにより、図１１に示されるように、太線で示される最短経路Ｐ１（始点ｓ→ノード１→ノードＡ→終点ｅ）と各ノードの最短コストとが求まる。
【００５２】
続いて、ステップＳ１３において、導出部３６は、最短経路Ｐ１について、補助ネットワーク（残余容量ネットワーク）を作成する。具体的には、まず、図１２に示されるように、導出部３６は、最短経路Ｐ１上の各リンクの向きを逆転させると共に、最短経路Ｐ１上の各リンクのコストをマイナスにする（すなわち、各リンクのコストに「−１」を乗算する）。これにより、ノード１とノードＡとを結ぶリンクのコストは、「１」から「−１」に変化する。続いて、図１３に示されるように、導出部３６は、有向グラフの各リンクのコストに、「リンクの始点の最短コスト−リンクの終点の最短コスト」を加える。これにより、図１３に示されるように、各リンクのコストが更新された補助ネットワークＡＮ１が得られる。
【００５３】
続いて、ステップＳ１４において、導出部３６は、補助ネットワークＡＮ１において、始点ｓから終点ｅに向かう経路が存在するか否かを判定する。ここでは、補助ネットワークＡＮ１において、始点ｓから終点ｅに向かう経路が存在し、判定結果は「ＹＥＳ」となるため、導出部３６は、ステップＳ１５の処理へと進む。
【００５４】
ステップＳ１５において、導出部３６は、補助ネットワークＡＮ１に対して、ダイクストラ法等の最短経路探索アルゴリズムを実行することにより、始点ｓから終点ｅまでの最短経路Ｐ２を求めると共に、始点ｓから各ノードへの最短コストを求める。これにより、図１４に示されるように、太線で示される最短経路Ｐ２（始点ｓ→ノード２→ノードＡ→ノード１→ノードＢ→終点ｅ）が求まると共に、各ノードの最短コストが更新される。
【００５５】
続いて、ステップＳ１３に戻って、導出部３６は、最短経路Ｐ１についての処理と同様の手順により、最短経路Ｐ２について、補助ネットワークを求める。これにより、図１５に示されるように、最短経路Ｐ２上の各リンクの向きが逆転させられると共に、各リンクのコストが更新された補助ネットワークＡＮ２が得られる。補助ネットワークＡＮ２が得られた時点で、始点ｓから終点ｅに向かう経路は存在しなくなる。したがって、ステップＳ１４の判定結果は「ＮＯ」となるため、導出部３６は、ステップＳ１６の処理へと進む。なお、本例のように「走行車２の数（ここでは３）＞搬送要求の数（ここでは２）」が成立する場合、反復回数（補助ネットワークの導出回数）は、搬送要求の数と等しくなる。このため、本例では、２つ目の補助ネットワークＡＮ２を導出した段階で、始点ｓから終点ｅに向かう経路が存在しなくなる。
【００５６】
続いて、ステップＳ１６において、導出部３６は、上述した繰り返し処理（最短経路探索及び補助ネットワーク作成）を終了した時点の状態（図１５に示される補助ネットワークＡＮ２）における走行車（ノードＡ〜Ｃ）から搬送要求（ノード１，２）に向かうリンクに基づいて、最適ペアリング情報を導出する。図１５の例では、ノードＡからノード２に向かうリンクとノードＢからノード１に向かうリンクとが、搬送要求と走行車との最適な組み合わせを示している。この場合、導出部３６は、搬送要求１を走行車Ｂに対応付けると共に搬送要求２を走行車Ａに対応付けたペアリング情報を最適ペアリング情報として導出する。
【００５７】
なお、この例では、ステップＳ１２又はステップＳ１５において、ダイクストラ法等の最短経路探索アルゴリズムによって得られる最短経路が複数存在する場合（すなわち、始点ｓから終点ｅまでのコストが同一となる複数の最短経路が存在する場合）があり得る。このような場合、導出部３６は、複数の最短経路のうちの任意の１つの最短経路を選択して、引き続きの処理（ステップＳ１３における補助ネットワークの作成）を実行すればよい。このような方策によれば、最終的に、最適ペアリング情報を得ることができる。なお、図８の例では、複数の搬送要求１，２と複数の走行車Ａ，Ｂ，Ｃとの間の全ての組み合わせが可能なケース（すなわち、全ての走行車Ａ，Ｂ，Ｃが全ての搬送要求１，２を実行可能なケース）について説明した。ただし、上述した処理は、一部の搬送要求のみを実行可能な走行車が存在する場合、及び一部の走行車のみによって実行されることが可能な搬送要求が存在する場合においても、適用可能である。
【００５８】
図１〜図３に戻り、通信部３７は、走行車２と例えば無線通信により情報を送受信する。通信部３７は、導出部３６により導出されたペアリング情報に基づいて、各走行車２に対応付けられた走行要求に関する情報を当該走行車２に送信する。これにより、コントローラ３は、各走行車２に走行要求を割り付ける。また、通信部３７は、複数の走行車２から、当該走行車２の現在位置及び走行速度に関する状態情報と、当該走行車が物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する。
【００５９】
続いて、計画部３３により作成される走行スケジュールについて説明する。図１６は、搬送路４の一部を示す図である。搬送路４において図１６に示される部分には、３つのリンク（以下、リンクＡ、リンクＢ、及びリンクＣという）が含まれている。リンクＡ、リンクＢ、及びリンクＣは、この順に接続されている。リンクＡは、リンクＡの上流側のリンクＸ及びリンクＹとノードａで接続されている。また、リンクＡとリンクＢとはノードｂで接続されており、リンクＢとリンクＣとはノードｃで接続されている。リンクＣは、リンクＣの下流側のリンクＺとノードｄで接続されている。初期状態として、リンクＢに位置する１つの走行車２がリンクＣ側に向かって走行しており、リンクＡに位置する走行車２がリンクＢ側に向かって走行しており、リンクＸに位置する走行車２がリンクＡ側に向かって走行している状態を想定する。
【００６０】
ここで、図１６に示されるように、リンクＡに位置する走行車２よりもノードａ側（すなわち、リンクＡに位置する走行車２とリンクＸに位置する走行車２との間）に、例えば搬送路Ｙから新たに走行車２が進入する状況を想定する。以下、新たに進入した走行車２を対象走行車２Ａとするとともに、初期状態においてリンクＸに位置していた走行車２を後方走行車２Ｒ、初期状態においてリンクＡに位置していた走行車２を前方走行車２Ｆとする。また、初期状態においてリンクＢに位置していた走行車２を先頭走行車２Ｔということとする。
【００６１】
図１７は、対象走行車２ＡがリンクＡに進入する時点での先頭走行車２Ｔ、前方走行車２Ｆ、及び後方走行車２Ｒの走行スケジュールを示すグラフである。図１７では、横軸に時間を表し、縦軸に搬送路４に沿った位置を表す。グラフの傾きは、走行車２の走行速度を表し、他の走行車２の影響を受けない場合には例えば各リンクの制限速度によって規定される。対象走行車２ＡがリンクＡに進入する前には、図１７に示されるように、先頭走行車２ＴがリンクＢにおいて物品を移載するために停止することが予定されており、物品を移載するために停止した先頭走行車２Ｔの手前（上流側）で、先頭走行車２Ｔとの干渉を避けるために前方走行車２Ｆが停止することが予定されている。後方走行車２Ｒは、先頭走行車２Ｔ及び前方走行車２Ｆの影響を受けずに搬送路４を走行することが予定されている。
【００６２】
図１８は、対象走行車２ＡのリンクＡ内における静的走行スケジュールを説明するための図である。対象走行車２ＡがリンクＡに進入すると、図１８に示されるように、対象走行車２Ａの現在位置からノードｂまでの範囲について、対象走行車２ＡがリンクＡの制限速度で走行する静的走行スケジュールが作成される。なお、対象走行車２Ａの現在位置からノードｂまでの所要時間Ｔ１は、下記の式（１）で表される。ここで、Ｃｏｓｔは、走行車２がリンクＡの制限速度でノードａからノードｂまで走行した場合の所要時間であり、ＬはリンクＡの全長であり、Ｐはノードａから対象走行車２Ａの現在位置までの距離である。
Ｔ１＝Ｃｏｓｔ×（（Ｌ−Ｐ）／Ｌ）…（１）
【００６３】
図１９は、対象走行車２ＡのリンクＡ内における走行スケジュールの修正を説明するための図である。図１９に示されるように、先頭走行車２Ｔによる物品の移載のためにリンクＢ内で待機している前方走行車２Ｆとの車間距離を保つために、対象走行車２Ａはノードｂまでの走行速度を低下させる。より具体的には、前方走行車２Ｆがノードｂを通過する時刻と対象走行車２Ａがノードｂに到達する時刻との時間間隔が、下記の式（２）で表される安全時間Ｔ２となるように、対象走行車２Ａはノードｂまでの走行速度を低下させる。ここで、ｖはリンクＡの制限速度であり、ａは対象走行車２Ａの走行速度であり、Ｌｖは走行車２の全長である。
Ｔ２＝−（ｖ／ａ）＋（Ｌｖ／ｖ）…（２）
【００６４】
図２０は、流量制限制御に基づいた対象走行車２ＡのリンクＡ内における走行スケジュールの修正を説明するための図である。流量制限制御とは、図２０に示されるように、各リンク内に存在することができる走行車２の数に上限を設定し、上限を超える数の走行車２が当該リンクに進入しようとする場合には、当該走行車２を当該リンクに進入させない制御である。ここでは、一例として、リンクＢに対して、リンクＢ内に存在することができる走行車２の上限を２つに設定する流量制限制御が実行されている。このため、リンクＢ内に先頭走行車２Ｔ及び前方走行車２Ｆが存在している期間は、対象走行車２ＡはリンクＢに進入しない。そして、先頭走行車２ＴがリンクＢを退出することでリンクＢ内に前方走行車２Ｆのみが存在するようになった後に対象走行車２ＡがリンクＢに進入するように、対象走行車２Ａはノードｂまでの走行速度を低下させる。
【００６５】
図２１は、対象走行車２ＡのリンクＢ内における静的走行スケジュールを説明するための図である。図２１に示されるように、ノードｂからノードｃまでの範囲について、対象走行車２ＡがリンクＢの制限速度で走行する静的走行スケジュールが作成される。なお、この場合、静的走行スケジュールでは対象走行車２Ａと非対象走行車２Ｂとの関係が考慮されていないため、作成された対象走行車２Ａの静的走行スケジュールは、対象走行車２Ａが前方走行車２Ｆの走行スケジュールと干渉する。
【００６６】
図２２は、対象走行車２ＡのリンクＢ内における走行スケジュールの修正を説明するための図である。図２２に示されるように、対象走行車２Ａの静的走行スケジュールと前方走行車２Ｆの走行スケジュールとに基づいて、対象走行車２Ａと前方走行車２Ｆとの干渉を避けるように対象走行車２Ａの静的走行スケジュールを修正した修正走行スケジュールが作成される。より具体的には、対象走行車２Ａが前方走行車２Ｆに追いついて干渉しないように、対象走行車２Ａのノードｂからノードｃまでの走行速度を低下させる。このとき、対象走行車２Ａの静的走行スケジュールにおいて対象走行車２Ａがノードｂを通過する時刻とノードｃに到達する時刻との時間間隔が、リンクＢの静的走行コストに相当する。また、対象走行車２Ａの静的走行スケジュールにおいて対象走行車２Ａがノードｃに到達する時刻と、対象走行車２Ａの修正走行スケジュールにおいて対象走行車２Ａがノードｃに到達する時刻と、の時間間隔が、図２２の状況におけるリンクＢの遅延コスト（より詳しくは、第１遅延コストＴｉ１）に相当する。なお、作成された対象走行車２Ａの修正走行スケジュールは、対象走行車２Ａが後方走行車２Ｒと干渉するような走行スケジュールとなっている。
【００６７】
図２３は、後方走行車２ＲのリンクＢ内における走行スケジュールの修正を説明するための図である。図２３に示されるように、対象走行車２Ａの走行スケジュール（ここでは、修正走行スケジュール）と後方走行車２Ｒの静的走行スケジュールとに基づいて、対象走行車２Ａと後方走行車２Ｒとの干渉を避けるように後方走行車２Ｒの静的走行スケジュールを修正した修正走行スケジュールが作成される。より具体的には、後方走行車２Ｒが対象走行車２Ａに追いついて干渉しないように、後方走行車２Ｒのノードｂからノードｃまでの走行速度を低下させる。このとき、後方走行車２Ｒの静的走行スケジュールにおいて後方走行車２Ｒがノードｃに到達する時刻と、後方走行車２Ｒの修正走行スケジュールにおいて後方走行車２Ｒがノードｃに到達する時刻と、の時間間隔が、図２３の状況におけるリンクＢの遅延コスト（より詳しくは、第２遅延コストＴｉ２）に相当する。そして、対象走行車２Ａの静的走行スケジュールにおいて対象走行車２Ａがノードｂを通過する時刻と、後方走行車２Ｒの修正走行スケジュールにおいて後方走行車２Ｒがノードｃに到達する時刻と、の時間間隔が、図２３の状況における対象走行車２ＡのリンクＢの総走行コストに相当する。つまり、ここでは、リンクＢの総走行コストは、静的走行コストに第１遅延コストＴｉ１及び第２遅延コストＴｉ２を加算したコストである。
【００６８】
次に、走行車制御方法について説明する。走行車制御方法は、対象走行車２Ａと走行要求との組合せについて、対象走行車２Ａの現在位置から走行要求の目的地までの走行経路を選定する方法である。ここでは、一例として上述したコントローラ３を用いた走行車制御方法を説明する。
【００６９】
図２４は、走行車制御方法を示すフローチャートである。図２４のフローチャートは、例えば上位コントローラから走行要求が出力されたときに開始される。図２４に示されるように、走行車制御方法では、ステップＳ２１において、コントローラ３は、走行要求を取得する（取得ステップ）。より具体的には、取得部３１により、上位コントローラから出力された走行要求が取得される。続いて、ステップＳ２２において、コントローラ３は、複数のノード間を接続する複数のリンク毎に関連付けられた静的走行コストに対して、対象走行車２Ａと非対象走行車２Ｂとの関係により対象走行車２Ａ及び非対象走行車２Ｂの少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する（算出ステップ）。続いて、ステップＳ２３において、コントローラ３は、静的走行コストと遅延コストとに基づいて総走行コストをリンク毎に算出し、算出された総走行コストに基づいて、対象走行車２Ａの現在位置から目的地までの複数の候補経路から走行経路を選定する（選定ステップ）。以上により、走行車制御方法の今回の処理が終了する。
【００７０】
なお、上述した第１遅延コストＴｉ１には、第１待機遅延コストと第１移載遅延コストとが含まれてもよい。また、上述した第２遅延コストＴｉ２には、第２待機遅延コストと第２移載遅延コストとが含まれてもよい。以下、第１待機遅延コスト、第１移載遅延コスト、第２待機遅延コスト、及び第２移載遅延コストについて説明する。
【００７１】
第１待機遅延コストとは、対象走行車２Ａの搬送路４に沿った前方に位置する分岐合流部９において分岐又は合流しようとする前方走行車２Ｆが存在する場合に、当該前方走行車２Ｆが分岐合流部９から退出するまで対象走行車２Ａが分岐合流部９の手前で待機することにより発生するコストである。第１待機遅延コストは、分岐合流部９に複数の走行車２が同時に進入することを排除する排他制御が実行されるために発生する。このように、算出部３４は、走行車２の状態情報に基づいて、対象走行車２Ａの搬送路４に沿った前方に位置する分岐合流部９において、対象走行車２Ａと前方走行車２Ｆとの関係により対象走行車２Ａが分岐合流部９の手前で待機する場合に、対象走行車２Ａの待機時間を示す第１待機遅延コストを算出する。より詳細には、算出部３４は、各走行車２の状態情報に基づいて対象走行車２Ａの待機の要否を判定し、対象走行車２Ａの待機が必要であると判定した場合には、各走行車２の状態情報に基づいて対象走行車２Ａの待機時間を算出する。
【００７２】
第１移載遅延コストとは、前方走行車２Ｆによる物品の移載により対象走行車２Ａが前方走行車２Ｆによる移載位置の手前で待機することにより発生するコストである。第１移載遅延コストは、対象走行車２Ａが走行している搬送路４の前方で移載のために停止している前方走行車２Ｆを当該対象走行車２Ａが追い越すことができないために発生する。このように、算出部３４は、走行車２の状態情報及び移載情報に基づいて、前方走行車２Ｆによる物品の移載により対象走行車２Ａが前方走行車２Ｆによる移載位置の手前で待機する場合に、対象走行車２Ａの待機時間を示す第１移載遅延コストを算出する。より詳細には、算出部３４は、各走行車２の状態情報及び移載情報に基づいて対象走行車２Ａの待機の要否を判定し、対象走行車２Ａの待機が必要であると判定した場合には、各走行車２の状態情報及び移載情報に基づいて対象走行車２Ａの待機時間を算出する。
【００７３】
第２待機遅延コストとは、対象走行車２Ａが分岐合流部９において分岐又は合流しようとする場合に、当該対象走行車２Ａが分岐合流部９から退出するまで後方走行車２Ｒが分岐合流部９の手前で待機することにより発生するコストである。第２待機遅延コストは、分岐合流部９に複数の走行車２が同時に進入することを排除する排他制御が実行されるために発生する。このように、算出部３４は、走行車２の状態情報に基づいて、対象走行車２Ａの搬送路４に沿った前方に位置する分岐合流部９において、対象走行車２Ａと後方走行車２Ｒとの関係により後方走行車２Ｒが分岐合流部９の手前で待機する場合に、後方走行車２Ｒの待機時間を示す第２待機遅延コストを算出する。より詳細には、算出部３４は、各走行車２の状態情報に基づいて後方走行車２Ｒの待機の要否を判定し、後方走行車２Ｒの待機が必要であると判定した場合には、各走行車２の状態情報に基づいて後方走行車２Ｒの待機時間を算出する。
【００７４】
第２移載遅延コストとは、対象走行車２Ａによる物品の移載により後方走行車２Ｒが対象走行車２Ａによる移載位置の手前で待機することにより発生するコストである。第２移載遅延コストは、後方走行車２Ｒが走行している搬送路４の前方で移載のために停止している対象走行車２Ａを当該後方走行車２Ｒが追い越すことができないために発生する。このように、算出部３４は、走行車２の状態情報及び移載情報に基づいて、対象走行車２Ａによる物品の移載により後方走行車２Ｒが対象走行車２Ａによる移載位置の手前で待機する場合に、後方走行車２Ｒの待機時間を示す第２移載遅延コストを算出する。より詳細には、算出部３４は、各走行車２の状態情報及び移載情報に基づいて後方走行車２Ｒの待機の要否を判定し、後方走行車２Ｒの待機が必要であると判定した場合には、各走行車２の状態情報及び移載情報に基づいて後方走行車２Ｒの待機時間を算出する。
【００７５】
以上説明したように、コントローラ３は、搬送路４に沿って走行する複数の走行車２のうちの１つの走行車２である対象走行車２Ａと、予め設定された目的地への移動の要求を含む走行要求と、の組合せについて、対象走行車２Ａの現在位置から目的地までの走行経路を選定するコントローラ３であって、走行要求を取得する取得部３１と、搬送路４において、対象走行車２Ａが走行可能なエリアに含まれる特定の地点をそれぞれ示す複数のノードと、ノード間を接続する複数のリンクと、リンク毎に関連付けられた、走行車２がリンクを通過するのにかかる時間を示す静的走行コストと、を含むマップ情報を記憶する記憶部３２と、対象走行車２Ａと対象走行車２Ａ以外の走行車２である非対象走行車２Ｂとの関係により当該対象走行車２Ａ及び当該非対象走行車２Ｂの少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを算出する算出部３４と、静的走行コストと遅延コストとに基づいて総走行コストをリンク毎に算出し、算出された総走行コストに基づいて、対象走行車２Ａの現在位置から目的地までの複数の候補経路から走行経路を選定する選定部３５と、を備える。
【００７６】
このコントローラ３では、リンク毎に関連付けられた固有の静的走行コストだけでなく、対象走行車２Ａと非対象走行車２Ｂとの関係により当該対象走行車２Ａ及び当該非対象走行車２Ｂの少なくとも１つがリンクを通過するのにかかる時間が増加する量を示す遅延コストを考慮して、リンク毎に総走行コストが算出される。そして、算出された総走行コストに基づいて、複数の候補経路から走行経路が選定される。このため、走行車２同士の関係により当該走行車２の走行が妨げられる場合を考慮して、対象走行車２Ａが走行要求の目的地までより効率的に走行することができる候補経路を走行経路として選定することができる。よって、このコントローラ３によれば、対象走行車２Ａの走行経路をより適切に選定することが可能になる。
【００７７】
また、コントローラ３では、選定部３５は、静的走行コストと遅延コストとの総和である総走行コストをリンク毎に算出し、複数の候補経路のうち当該候補経路に含まれるリンクの総走行コストの総和が最小となる候補経路を走行経路として選定する。これにより、このコントローラ３では、静的走行コストと遅延コストとの総和である総走行コストが算出されるため、総走行コストを簡便な処理で算出することができる。また、このコントローラ３では、複数の候補経路のうち当該候補経路に含まれるリンクの総走行コストの総和が最小となる候補経路が走行経路として選定されるため、対象走行車２Ａが走行要求の目的地まで特に効率的に走行することができる候補経路が走行経路として選定することができる。
【００７８】
また、コントローラ３では、遅延コストは、対象走行車２Ａの搬送路４に沿った前方の非対象走行車２Ｂである前方走行車２Ｆの影響により対象走行車２Ａがリンクを通過するのにかかる時間が増加する量を示す第１遅延コストＴｉ１を含む。これにより、このコントローラ３では、前方走行車２Ｆの影響により対象走行車２Ａがリンクを通過するのにかかる時間が増加する量を遅延コストに反映させることで、走行車２が当該リンクを通過するのにかかる時間を適切に見積もることが可能となる。よって、対象走行車２Ａの走行経路をより適切に選定することができる。
【００７９】
また、コントローラ３は、複数の走行車２のそれぞれについて、将来の各時刻での当該走行車２の位置に関する走行スケジュールを作成する計画部３３を備え、計画部３３は、対象走行車２Ａと非対象走行車２Ｂとの関係を考慮しない走行車２の走行スケジュールである静的走行スケジュールを作成し、対象走行車２Ａの静的走行スケジュールと前方走行車２Ｆの走行スケジュールとに基づいて、対象走行車２Ａと前方走行車２Ｆとの干渉を避けるように対象走行車２Ａの静的走行スケジュールを修正した修正走行スケジュールを作成し、算出部３４は、対象走行車２Ａの静的走行スケジュールと対象走行車２Ａの修正走行スケジュールとに基づいて第１遅延コストＴｉ１を算出する。これにより、このコントローラ３では、対象走行車２Ａと前方走行車２Ｆとの干渉の影響を考慮して、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８０】
また、コントローラ３は、複数の走行車２から当該走行車２の現在位置及び走行速度に関する状態情報を所定のタイミングで受信する通信部３７を備え、ノードは、搬送路４が分岐又は合流する地点である分岐合流部９を含み、算出部３４は、走行車２の状態情報に基づいて、対象走行車２Ａの搬送路４に沿った前方に位置する分岐合流部９において、対象走行車２Ａと前方走行車２Ｆとの関係により対象走行車２Ａが分岐合流部９の手前で待機する場合に、対象走行車２Ａの待機時間を示す第１待機遅延コストを算出し、第１遅延コストＴｉ１は、第１待機遅延コストを含む。これにより、このコントローラ３では、対象走行車２Ａが走行している搬送路４に対して分岐又は合流しようとする前方走行車２Ｆとの干渉を避けるために対象走行車２Ａが分岐合流部９の手前で待機する制御を実行する場合において、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８１】
また、コントローラ３では、走行車２は、物品の搬送及び移載を行う無人搬送車であり、複数の走行車２から、当該走行車２の現在位置及び走行速度に関する状態情報と、当該走行車２が物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する通信部３７を備え、算出部３４は、走行車２の状態情報及び移載情報に基づいて、前方走行車２Ｆによる物品の移載により対象走行車２Ａが前方走行車２Ｆによる移載位置の手前で待機する場合に、対象走行車２Ａの待機時間を示す第１移載遅延コストを算出し、第１遅延コストＴｉ１は、第１移載遅延コストを含む。これにより、このコントローラ３では、物品の移載を行う前方走行車２Ｆとの干渉を避けるために対象走行車２Ａが移載位置の手前で待機する制御を実行する場合において、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８２】
また、コントローラ３では、遅延コストは、対象走行車２Ａの影響により対象走行車２Ａの搬送路４に沿った後方の非対象走行車２Ｂである後方走行車２Ｒがリンクを通過するのにかかる時間が増加する量を示す第２遅延コストＴｉ２を含む。これにより、このコントローラ３では、対象走行車２Ａの影響により後方走行車２Ｒがリンクを通過するのにかかる時間が増加する量を遅延コストに反映させることで、対象走行車２Ａが他の走行車２の走行に与える影響を考慮することができる。よって、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８３】
また、コントローラ３は、複数の走行車２のそれぞれについて、将来の各時刻での当該走行車２の位置に関する走行スケジュールを作成する計画部３３を備え、計画部３３は、対象走行車２Ａと非対象走行車２Ｂとの関係を考慮しない走行車２の走行スケジュールである静的走行スケジュールを作成し、対象走行車２Ａの走行スケジュールと後方走行車２Ｒの静的走行スケジュールとに基づいて、対象走行車２Ａと後方走行車２Ｒとの干渉を避けるように後方走行車２Ｒの静的走行スケジュールを修正した修正走行スケジュールを作成し、算出部３４は、後方走行車２Ｒの静的走行スケジュールと後方走行車２Ｒの修正走行スケジュールとに基づいて第２遅延コストＴｉ２を算出する。これにより、このコントローラ３では、対象走行車２Ａと後方走行車２Ｒとの干渉の影響を考慮して、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８４】
また、コントローラ３は、複数の走行車２から当該走行車２の現在位置及び走行速度に関する状態情報を所定のタイミングで受信する通信部３７を備え、ノードは、搬送路４が分岐又は合流する地点である分岐合流部９を含み、算出部３４は、走行車２の状態情報に基づいて、対象走行車２Ａの搬送路４に沿った前方に位置する分岐合流部９において、対象走行車２Ａと後方走行車２Ｒとの関係により後方走行車２Ｒが分岐合流部９の手前で待機する場合に、後方走行車２Ｒの待機時間を示す第２待機遅延コストを算出し、第２遅延コストＴｉ２は、第２待機遅延コストを含む。これにより、このコントローラ３では、対象走行車２Ａが走行している搬送路４に対して分岐又は合流しようとする後方走行車２Ｒとの干渉を避けるために後方走行車２Ｒが分岐合流部９の手前で待機する制御を実行する場合において、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８５】
また、コントローラ３では、走行車２は、物品の搬送及び移載を行う無人搬送車であり、複数の走行車２から、当該走行車２の現在位置及び走行速度に関する状態情報と、当該走行車２が物品の移載を行う移載位置、時刻、及び所要時間に関する移載情報と、を所定のタイミングで受信する通信部３７を備え、算出部３４は、走行車２の状態情報及び移載情報に基づいて、対象走行車２Ａによる物品の移載により後方走行車２Ｒが対象走行車２Ａによる移載位置の手前で待機する場合に、後方走行車２Ｒの待機時間を示す第２移載遅延コストを算出し、第２遅延コストＴｉ２は、第２移載遅延コストを含む。これにより、このコントローラ３では、物品の移載を行う対象走行車２Ａとの干渉を避けるために後方走行車２Ｒが移載位置の手前で待機する制御を実行する場合において、対象走行車２Ａの走行経路をより適切に選定することができる。
【００８６】
また、コントローラ３では、取得部３１は、複数の走行要求を取得して蓄積し、選定部３５は、対象走行車２Ａとしての複数の走行車２のそれぞれと、取得部３１により蓄積された複数の走行要求のそれぞれと、の組合せ毎に走行経路を選定し、組合せ毎に選定された走行経路にそれぞれ対応する総走行コストに基づいて、複数の走行要求のそれぞれに１つの走行車２を対応付けたペアリング情報を導出する導出部３６を備える。これにより、このコントローラ３では、複数の走行要求が一旦蓄積された後に、当該複数の走行要求のそれぞれに対して走行車２を１対１に対応付けたペアリング情報が導出される。このため、単一の走行要求だけでなく複数の走行要求間の相互の影響を考慮して、複数の走行要求のそれぞれに対する走行車２の対応付け（割り付け）を行うことが可能となる。したがって、このコントローラ３では、１つの走行要求が発生する毎に当該走行要求に対する走行車２の割り付けを行う場合と比較して、走行車２に対して走行要求をより適切に割り付けることが可能となる。
【００８７】
また、走行車システム１は、上述したコントローラ３と、搬送路４と、搬送路４に沿って走行可能な複数の走行車２と、を含む。この走行車システム１は上述したコントローラ３を含んでいるため、この走行車システム１では、上述した理由により、対象走行車２Ａの走行経路をより適切に選定することが可能となる。
【００８８】
また、上述した走行車制御方法は、取得ステップと、算出ステップと、選定ステップと、を含むことにより、上述したコントローラ３と同様の作用及び効果を奏することができる。
【００８９】
上述した実施形態は、当業者の知識に基づいて種々の変更、改良を施した様々な形態で実施することができる。
【００９０】
例えば、走行要求は、予め設定された目的地への移動の要求を含む要求であればよく、物品を搬送する搬送要求でなくてもよい。
【００９１】
また、選定部３５は、総走行コストを、静的走行コストと遅延コストとの総和として算出しなくてもよい。例えば、選定部３５は、静的走行コストと、遅延コストを予め設定された基準で重みづけしたコストと、の総和として総走行コストを算出してもよい。また、選定部３５は、複数の候補経路のうち総走行コストが最小となる候補経路を走行経路として選定しなくてもよい。
【００９２】
なお、遅延コストは、第１遅延コストＴｉ１を含まなくてもよく、第２遅延コストＴｉ２を含まなくてもよい。
【００９３】
また、算出部３４は、必ずしも計画部３３により作成された走行スケジュールに基づいて遅延コストを算出しなくてもよく、例えば走行車２の過去の走行履歴に基づいて統計的に遅延コストを算出してもよい。例えば、各リンクについて、過去に走行車２が当該リンクを通過するのにかかる時間が静的走行コストに対して増加した量に基づいて、当該リンクの遅延コストを算出してもよい。より具体的には、各リンクについて、過去に走行車２が当該リンクを通過するのにかかる時間が静的走行コストに対して増加した量の平均値を、当該リンクの遅延コストとしてもよい。この場合、コントローラ３は、計画部３３を備えていなくてもよい。
【００９４】
また、第１遅延コストＴｉ１は、第１待機遅延コストを含まなくてもよく、第１移載遅延コストを含まなくてもよい。第２遅延コストＴｉ２は、第２待機遅延コストを含まなくてもよく、第２移載遅延コストを含まなくてもよい。
【００９５】
また、コントローラ３は、取得部３１により１つの走行要求を取得し、選定部３５により１つの対象走行車２Ａと当該走行要求との組合せのみについて走行経路を選定してもよい。この場合、コントローラ３は、複数の走行要求のそれぞれに１つの走行車２を対応付けたペアリング情報を導出しなくてもよく、すなわち、導出部３６を備えていなくてもよい。
【００９６】
また、上記実施形態では、走行車２によって搬送される物品（被搬送物）として、複数の半導体ウェハが収容されたＦＯＵＰを例示したが、物品はこれに限定されず、例えば、ガラスウェハ、レチクル等が収容されたその他の容器であってもよい。また、走行車システム１は、半導体製造工場に限定されず、その他の施設にも適用可能である。
【符号の説明】
【００９７】
１…走行車システム、２…走行車、２Ａ…対象走行車、２Ｂ…非対象走行車、２Ｆ…前方走行車、２Ｒ…後方走行車、３…コントローラ（走行車制御装置）、４…搬送路、９…分岐合流部、３１…取得部、３２…記憶部、３３…計画部、３４…算出部、３５…選定部、３６…導出部、３７…通信部。
【図１】
2020030724.tif 000003
【図２】
2020030724.tif 000004
【図３】
2020030724.tif 000005
【図４】
2020030724.tif 000006
【図５】
2020030724.tif 000007
【図６】
2020030724.tif 000008
【図７】
2020030724.tif 000009
【図８】
2020030724.tif 000010
【図９】
2020030724.tif 000011
【図１０】
2020030724.tif 000012
【図１１】
2020030724.tif 000013
【図１２】
2020030724.tif 000014
【図１３】
2020030724.tif 000015
【図１４】
2020030724.tif 000016
【図１５】
2020030724.tif 000017
【図１６】
2020030724.tif 000018
【図１７】
2020030724.tif 000019
【図１８】
2020030724.tif 000020
【図１９】
2020030724.tif 000021
【図２０】
2020030724.tif 000022
【図２１】
2020030724.tif 000023
【図２２】
2020030724.tif 000024
【図２３】
2020030724.tif 000025
【図２４】
2020030724.tif 000026