(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-20
(45)【発行日】2025-01-28
(54)【発明の名称】搬送計画システム、搬送計画方法、及びプログラム
(51)【国際特許分類】
G05D 1/43 20240101AFI20250121BHJP
【FI】
G05D1/43
(21)【出願番号】P 2021031738
(22)【出願日】2021-03-01
【審査請求日】2023-09-12
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】森國 洋平
(72)【発明者】
【氏名】吉澤 真太郎
【審査官】大古 健一
(56)【参考文献】
【文献】特開2021-092929(JP,A)
【文献】特開平10-320044(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00 - 1/87
(57)【特許請求の範囲】
【請求項1】
複数のノード及びエッジを含むと共に複数の搬送機が走行する走行路の情報である搬送路情報に基づいて、各搬送機が荷物を受ける始点ノードと各搬送機が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、を用いて、夫々特徴付け、該搬送要求に対し特徴付けた量に基づいて、前記搬送要求を組み分けする搬送要求組分手段と、
前記搬送要求組分手段により組み分けられた搬送要求の組を各搬送機へ割り当てる搬送要求割当手段と、
前記搬送要求割当手段により各搬送機に割り当てられた搬送要求の組に基づいて、前記各搬送機同士の衝突が起こらないような各搬送機の走行の計画を行う搬送機経路計画手段と、
を備え、
前記搬送要求組分手段は、
前記(a)離れた位置にある搬送要求同士は離れた値となる量に対応して、(a1) 搬送要求の始点ノードと終点ノードを結ぶ直線の中点の座標を導入し、
前記(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量に対応して、(b1) 搬送要求における始点ノードから終点ノードまでの搬送路上のノードに対して、該ノードを通る搬送路の本数に基づいて重み付けを行い、該重みを搬送路に沿って合計した値を導入し、
前記搬送要求に対し特徴付けた量に基づいて、各搬送要求の組の仕事量が所定量以下になるようにクラスタリングを行うことで、前記搬送要求の組分けを行い、前記搬送要求の組の仕事量は、前記搬送要求の組に含まれる各搬送要求の始点ノードと終点ノードとの最短距離の合計値であり、
前記搬送要求割当手段は、
前記搬送要求組分手段により組み分けされた搬送要求の組の中から、前の搬送計画の終了時刻が早い搬送機から順に搬送要求の組を割り当てると共に、
前記各搬送機に対して、該各搬送機の搬送計画の終了地点と前記始点ノードとが最も近い距離にある搬送要求の組を割り当て、
前記搬送機経路計画手段は、
前記搬送要求組分手段により組み分けされた搬送要求の組に含まれる各搬送要求の始点ノードから終点ノードまでの最短経路を、予め設定された搬送要求の処理の順番で繋げた経路を搬送機の走行経路に決定し、
前記決定した各搬送機の走行経路に基づいて、前記ノードに前記搬送機がいるとき、該ノードにいる搬送機が移動するまで、他の搬送機が該ノードへ移動する事象を発生させないことで、各搬送機同士の衝突が起こらないような前記各搬送機の走行タイミングを決定する、
搬送計画システム。
【請求項2】
請求項1記載の搬送計画システムであって、
前記搬送機経路計画手段は、前記決定した全搬送機の走行経路についてのペトリネットを結合して、搬送機全体のペトリネットを作成し、該作成した搬送機全体のペトリネットに所定のトークンの規則を適応することで、前記各搬送機同士の衝突が起こらないような各搬送機の走行タイミングを計画する、
搬送計画システム。
【請求項3】
搬送要求組分手段が、複数のノード及びエッジを含むと共に複数の搬送機が走行する走行路の情報である搬送路情報に基づいて、各搬送機が荷物を受ける始点ノードと各搬送機が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、を用いて、夫々特徴付け、該搬送要求に対し特徴付けた量に基づいて、前記搬送要求を組み分けするステップと、
搬送要求割当手段が、前記組み分けられた搬送要求の組を各搬送機へ割り当てるステップと、
搬送機経路計画手段が、前記各搬送機に割り当てられた搬送要求の組に基づいて、前記各搬送機同士の衝突が起こらないような各搬送機の走行の計画を行うステップと、
を含み、
前記搬送要求組分手段が、前記(a)離れた位置にある搬送要求同士は離れた値となる量に対応して、(a1) 搬送要求の始点ノードと終点ノードを結ぶ直線の中点の座標を導入し、
前記(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量に対応して、(b1) 搬送要求における始点ノードから終点ノードまでの搬送路上のノードに対して、該ノードを通る搬送路の本数に基づいて重み付けを行い、該重みを搬送路に沿って合計した値を導入し、
前記搬送要求に対し特徴付けた量に基づいて、各搬送要求の組の仕事量が所定量以下になるようにクラスタリングを行うことで、前記搬送要求の組分けを行い、
前記搬送要求の組の仕事量は、前記搬送要求の組に含まれる各搬送要求の始点ノードと終点ノードとの最短距離の合計値であり、
前記搬送要求割当手段が、前記組み分けされた搬送要求の組の中から、前の搬送計画の終了時刻が早い搬送機から順に搬送要求の組を割り当てると共に、
前記各搬送機に対して、該各搬送機の搬送計画の終了地点と前記始点ノードとが最も近い距離にある搬送要求の組を割り当て、
前記搬送機経路計画手段が、前記組み分けされた搬送要求の組に含まれる各搬送要求の始点ノードから終点ノードまでの最短経路を、予め設定された搬送要求の処理の順番で繋げた経路を搬送機の走行経路に決定し、
前記決定した各搬送機の走行経路に基づいて、前記ノードに前記搬送機がいるとき、該ノードにいる搬送機が移動するまで、他の搬送機が該ノードへ移動する事象を発生させないことで、各搬送機同士の衝突が起こらないような前記各搬送機の走行タイミングを決定する、
搬送計画方法。
【請求項4】
複数のノード及びエッジを含むと共に複数の搬送機が走行する走行路の情報である搬送路情報に基づいて、各搬送機が荷物を受ける始点ノードと各搬送機が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、を用いて、夫々特徴付け、該搬送要求に対し特徴付けた量に基づいて、前記搬送要求を組み分けする処理と、
前記組み分けられた搬送要求の組を各搬送機へ割り当てる処理と、
前記各搬送機に割り当てられた搬送要求の組に基づいて、前記各搬送機同士の衝突が起こらないような各搬送機の走行の計画を行う処理と、
をコンピュータに実行させ、
前記(a)離れた位置にある搬送要求同士は離れた値となる量に対応して、(a1) 搬送要求の始点ノードと終点ノードを結ぶ直線の中点の座標を導入し、
前記(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量に対応して、(b1) 搬送要求における始点ノードから終点ノードまでの搬送路上のノードに対して、該ノードを通る搬送路の本数に基づいて重み付けを行い、該重みを搬送路に沿って合計した値を導入し、
前記搬送要求に対し特徴付けた量に基づいて、各搬送要求の組の仕事量が所定量以下になるようにクラスタリングを行うことで、前記搬送要求の組分けを行い、前記搬送要求の組の仕事量は、前記搬送要求の組に含まれる各搬送要求の始点ノードと終点ノードとの最短距離の合計値であり、
前記組み分けされた搬送要求の組の中から、前の搬送計画の終了時刻が早い搬送機から順に搬送要求の組を割り当てると共に、
前記各搬送機に対して、該各搬送機の搬送計画の終了地点と前記始点ノードとが最も近い距離にある搬送要求の組を割り当て、
前記組み分けされた搬送要求の組に含まれる各搬送要求の始点ノードから終点ノードまでの最短経路を、予め設定された搬送要求の処理の順番で繋げた経路を搬送機の走行経路に決定し、
前記決定した各搬送機の走行経路に基づいて、前記ノードに前記搬送機がいるとき、該ノードにいる搬送機が移動するまで、他の搬送機が該ノードへ移動する事象を発生させないことで、各搬送機同士の衝突が起こらないような前記各搬送機の走行タイミングを決定する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、搬送機の搬送を計画する搬送計画システム、搬送計画方法、及びプログラムに関する。
【背景技術】
【0002】
荷物などを搬送する際の搬送要求、搬送機の数、走行路などを表現するノード数やエッジ数が増加すると、その組合せ数が爆発的に増加する。これにより、最適な搬送計画にかかる計算時間が膨大になるという問題が生じる。これに対し、遺伝的アルゴリズムを用いて各搬送機に対し最適な搬送の計画を行う搬送計画システムが知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記遺伝的アルゴリズムは偶然の変化によって解の探査が行われるため、たとえ同じ搬送要求がなされた場合でも、上記搬送計画システムは、異なる搬送の計画を行う可能性がある。このため、最適な搬送計画にかかる計算時間が変動し、その計算時間を十分に抑制できない虞がある。
【0005】
本発明は、かかる課題を解決するためになされたものであり、搬送計画にかかる計算時間を十分に抑制できる搬送計画システム、搬送計画方法、及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するための本発明の一態様は、
複数のノード及びエッジを含むと共に複数の搬送機が走行する走行路の情報である搬送路情報に基づいて、各搬送機が荷物を受ける始点ノードと各搬送機が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、のうちの少なくとも一方を用いて、夫々特徴付け、該搬送要求に対し特徴付けた量に基づいて、前記搬送要求を組み分けする搬送要求組分手段と、
前記搬送要求組分手段により組み分けられた搬送要求の組を各搬送機へ割り当てる搬送要求割当手段と、
前記搬送要求割当手段により各搬送機に割り当てられた搬送要求の組に基づいて、前記各搬送機同士の衝突が起こらないような各搬送機の走行の計画を行う搬送機経路計画手段と、
を備える搬送計画システム
である。
この一態様において、前記搬送要求組分手段は、前記複数の搬送要求を、前記(a)離れた位置にある搬送要求同士は離れた値となる量、及び、前記(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、を用いて、夫々特徴付けてもよい。
この一態様において、前記搬送要求組分手段は、前記(a)離れた位置にある搬送要求同士は離れた値となる量に対応して、(a1) 搬送要求の始点ノードと終点ノードを結ぶ直線の中点の座標を導入し、前記(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量に対応して、(b1) 搬送要求における始点ノードから終点ノードまでの搬送路上のノードに対して、該ノードを通る搬送路の本数に基づいて重み付けを行い、該重みを搬送路に沿って合計した値を導入してもよい。
この一態様において、前記搬送要求組分手段は、前記搬送要求に対し特徴付けた量に基づいて、各搬送要求の組の仕事量が所定量以下になるようにクラスタリングを行うことで、前記搬送要求の組分けを行ってもよい。
この一態様において、前記搬送要求割当手段は、前記搬送要求組分手段により組み分けされた搬送要求の組の中から、前の搬送計画の終了時刻が早い搬送機から順に搬送要求の組を割り当てると共に、前記各搬送機に対して、該各搬送機の搬送計画の終了地点に最も近い距離にある搬送要求の組を割り当ててもよい。
この一態様において、前記搬送機経路計画手段は、前記搬送要求組分手段により組み分けされた搬送要求の組に含まれる各搬送要求の始点ノードから終点ノードまでの最短経路を、予め設定された搬送要求の処理の順番で繋げた経路を搬送機の走行経路に決定してもよい。
この一態様において、前記搬送機経路計画手段は、前記決定した全搬送機の走行経路についてのペトリネットを結合して、搬送機全体のペトリネットを作成し、該作成した搬送機全体のペトリネットに所定のトークンの規則を適応することで、前記各搬送機同士の衝突が起こらないような各搬送機の走行タイミングを計画してもよい。
上記目的を達成するための本発明の一態様は、
複数のノード及びエッジを含むと共に複数の搬送機が走行する走行路の情報である搬送路情報に基づいて、各搬送機が荷物を受ける始点ノードと各搬送機が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、のうちの少なくとも一方を用いて、夫々特徴付け、該搬送要求に対し特徴付けた量に基づいて、前記搬送要求を組み分けするステップと、
前記組み分けられた搬送要求の組を各搬送機へ割り当てるステップと、
前記各搬送機に割り当てられた搬送要求の組に基づいて、前記各搬送機同士の衝突が起こらないような各搬送機の走行の計画を行うステップと、
を含む搬送計画方法
であってもよい。
上記目的を達成するための本発明の一態様は、
複数のノード及びエッジを含むと共に複数の搬送機が走行する走行路の情報である搬送路情報に基づいて、各搬送機が荷物を受ける始点ノードと各搬送機が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、のうちの少なくとも一方を用いて、夫々特徴付け、該搬送要求に対し特徴付けた量に基づいて、前記搬送要求を組み分けする処理と、
前記組み分けられた搬送要求の組を各搬送機へ割り当てる処理と、
前記各搬送機に割り当てられた搬送要求の組に基づいて、前記各搬送機同士の衝突が起こらないような各搬送機の走行の計画を行う処理と、
をコンピュータに実行させるプログラム
であってもよい。
【発明の効果】
【0007】
本発明によれば、搬送計画にかかる計算時間を十分に抑制できる搬送計画システム、搬送計画方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態に係る搬送計画システムの概略的なシステム構成を示すブロック図である。
【
図2】本実施形態に係る搬送計画装置の概略的な構成を示すブロック図である。
【
図3】格子状の走行路と搬送要求の一例を示す図である。
【
図4】本実施形態に係るクラスタリングによる搬送要求の組分け方法のフローを示すフローチャートである。
【
図5】搬送要求の組を各搬送機に対して割り当てる際の具体的な割当て方法のフローを示すフローチャートである。
【
図6】本実施形態に係る搬送機経路計画部の概略的なシステム構成を示すブロック図である。
【
図7】各搬送要求を処理する順序を決定するフローを示すフローチャートである。
【
図8】走行経路の決定方法を具体的に説明するための図である。
【
図9】走行経路から終点ノードと終点ノードからの矢印を除いた走行経路を示す図である。
【
図10】走行路の丸円と棒にラベルを付けた走行路であり、搬送機が走行路に沿って移動することを表現するペトリネットを示す図である。
【
図11】搬送要求の始点ノードのプレースと始点ノードからの移動を表すトランジションとを矢印で結合した図である。
【
図12】搬送要求の終点ノードのプレースと終点ノードからの移動を表すトランジションとを矢印で結合した図である。
【
図13】搬送要求の終点ノードと次の搬送要求の始点ノードが一致する場合の結合を示す図である。
【
図14】受け渡しのペトリネットの追加をすべての搬送要求に対して行った場合の図である。
【
図15】搬送要求の終点ノードの受け渡しのペトリネットを示す図である。
【
図17】走行路上に2台の搬送機A及びBがいる場合を示す図である。
【
図18】搬送機A及びBのペトリネットを示す図である。
【
図19】搬送機A及びBのペトリネットと、リソースプレースp
res,nとを結合した場合の図である。
【
図20】トークンの移動の規則を説明するための図である。
【
図21】本実施形態に係る搬送計画方法のフローを示すフローチャートである。
【
図22】搬送計画装置を備えない搬送計画システムの構成を示すブロック図である。
【発明を実施するための形態】
【0009】
実施形態1
以下、図面を参照して本発明の実施の形態について説明する。
本実施形態に係る搬送計画システムは、走行路上を走る複数の搬送機に対し、搬送機が搬送する荷物の受取地点および受渡地点の情報を含む搬送要求を割り当て、その搬送要求の割り当てに基づいて各搬送機の搬送経路を決定するものである。また、本実施形態に係る搬送計画システムは、搬送要求の特徴を表す量を求め、この量に基づいて搬送要求を小さい単位に組分けし、この組分けた搬送要求の組を搬送機へ割り当てて、搬送経路を決定するものである。
【0010】
これにより、搬送機の走行路を表現するノード数やエッジ数の増加を抑制し、その組合せ数の増加を抑制し、最適な搬送計画にかかる計算時間を大幅に短縮できる。
【0011】
図1は、本実施形態に係る搬送計画システムの概略的なシステム構成を示すブロック図である。本実施形態に係る搬送計画システム1は、複数の搬送機2と、各搬送機2の搬送計画を行う搬送計画装置3と、を備えている。
【0012】
複数の搬送機2と搬送計画装置3とは、例えば、LAN(Local Area Network)、WAN(Wide Area Network)などの無線通信ネットワーク4を介して、相互に通信接続されている。
【0013】
搬送機2は、例えば、距離センサなどの複数のセンサを有し、各センサの情報に基づいて自律的に移動し、荷物などを搬送できる搬送ロボットとして構成されている。
【0014】
搬送計画装置3は、各搬送機2が荷物を搬送する際の各搬送機2の走行順序、走行経路、走行タイミングなどを計画する。搬送計画装置3は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサ11と、RAM(Random Access Memory)やROM(Read Only Memory)などの内部メモリ12と、HDD(Hard Disk Drive)やSDD(Solid State Drive)などのストレージデバイス13と、ディスプレイなどの周辺機器を接続するための入出力I/F14と、装置外部の機器と通信を行う通信I/F15と、を備えた通常のコンピュータのハードウェア構成を有する。
【0015】
図2は、本実施形態に係る搬送計画装置の概略的な構成を示すブロック図である。本実施形態に係る搬送計画装置3は、搬送路情報記憶部31と、搬送機情報記憶部32と、搬送要求組分部33と、搬送要求割当部34と、搬送機経路計画部35と、を備えている。
【0016】
搬送路情報記憶部31は、搬送機2の搬送路情報を記憶する。搬送路情報は、搬送機2が移動できる走行路の情報である。走行路は、複数のノード及びエッジを含むグリッド状のグラフで構成されている。搬送路情報は、搬送路情報記憶部31に予め設定されている。
【0017】
搬送機情報記憶部32は、搬送機情報を記憶する。搬送機情報は、搬送機2の現在地を表すノードと、搬送機2が搬送を行うための搬送計画と、を含む。搬送機情報は、各搬送機2から送信され、搬送機情報記憶部32に記憶される。
【0018】
搬送路情報記憶部31および搬送機情報記憶部32は、例えば、上記内部メモリ12やストレージデバイス13などで構成されている。搬送路情報記憶部31および搬送機情報記憶部32は、別体として構成されているが、これに限定されず、一体的に構成されていてもよい。
【0019】
搬送要求組分部33は、搬送路情報記憶部31に記憶された搬送路情報に基づいて、複数の搬送要求を組み分けする。搬送要求は、搬送機2が荷物を受ける始点ノードと、搬送機2が受け取った荷物を届ける地点を表す終点ノードと、を含む情報である。搬送要求は、例えば、搬送を指示するサーバやユーザなどによって生成され、搬送要求組分部33に入力される。搬送要求は、搬送路情報記憶部31、搬送機情報記憶部32、搬送要求組分部33などに予め設定されていてもよい。
【0020】
搬送要求割当部34は、搬送要求組分部33により組み分けられた搬送要求の組を各搬送機2へ割り当てる。搬送機経路計画部35は、搬送要求割当部34により各搬送機2に割り当てられた搬送要求に基づいて、搬送機2同士の衝突が起こらないような各搬送機2の搬送を計画する。
【0021】
続いて、上述した搬送要求組分部33、搬送要求割当部34、および、搬送機経路計画部35について、夫々、詳細に説明する。
【0022】
[搬送要求組分部]
まず、搬送要求組分部33による搬送要求の組分け方法について説明する。
搬送要求組分部33は、以下の(i)及び(ii)の組分けの基本的な考え方に基づいて、複数の搬送要求を組み分けする。
【0023】
(i)搬送機2の走行距離が長くならないように、離れた位置にある搬送要求同士をできるだけ別の組にする。
(ii)搬送機2の渋滞が発生する可能性を減らすために、搬送路が重なる搬送要求同士をできるだけ同じ組にする。
このため、搬送要求組分部33は、
(a)離れた位置にある搬送要求同士は離れた値となる量((i)に対応)、及び
(b)搬送機2の搬送路が重なる搬送要求同士は近い値となる量((ii)に対応)、
を用いて複数の搬送要求を夫々特徴付ける。
このように、2つの量(a)及び(b)を用いて各搬送要求を特徴付けることで、搬送機2の走行距離を短くしつつ搬送機2の渋滞を抑制でき搬送効率を向上させることができる。
【0024】
搬送要求組分部33は、上記搬送要求に対して特徴付けた量に基づいて組み分けされた各組の搬送要求の仕事量が、所定量以下になるようにクラスタリングを行うことで、搬送要求の組分けを行う。搬送要求組分部33は、複数の搬送要求の中で、類似するもの同士を同一のものとして統合するクラスタリングを行うことで、搬送要求の組分けを行う。搬送要求組分部33は、クラスタリング処理として、例えば、MeanShift法などを用いる。
【0025】
上述のような搬送要求の組分けを行うことで、搬送要求の組合せ数を抑制でき搬送計画にかかる計算時間を抑制できる。さらに、各組の搬送要求の仕事量が所定量以下になるようにクラスタリングを行い、一組の搬送要求当たりの仕事量の上限を決めることで、搬送要求にかかる仕事量を容易に見積もることが可能になる。
【0026】
上記(a)を満たす具体的な量の一例として、(a1) 搬送要求の始点ノードと終点ノードを結ぶ直線の中点の座標(x、y) を導入する。また、上記(b)を満たす具体的な量の一例として、(b1) 搬送要求における始点ノードから終点ノードまでの搬送路上のノードに対して、ノードを通る搬送路の本数に基づいて重み付けを行い、この重みを搬送路に沿って合計した値wを導入する。これらの量の組(x、y、w)を、搬送要求を特徴付ける量とする。
【0027】
上述した(b1) の搬送要求の重なりの程度を示す量(以下、重なり度)wについて、
図3に示す搬送要求の例を用いてより具体的に説明する。
図3は、格子状の走行路と搬送要求の一例を示す図である。搬送要求は、搬送の始点ノードを表すOと、搬送の終点ノードを表すDとの組(O、 D) で与えられる。
図3において、(O1、D1)、(O2、D2)、(O3、D3)、(O4、D4)、(O5、D5)の5つの搬送要求が与えられている。
【0028】
搬送要求組分部33は、以下の(1)乃至(3)で、上記5つの搬送要求の重なり度wを算出する。
【0029】
(1)搬送要求組分部33は、5つの搬送要求(O1、D1)、(O2、D2)、(O3、D3)、(O4、D4)、(O5、D5)の夫々に対して、代表としての最短経路を求める。以下、この搬送要求の最短経路を代表路と称す。
図3において、実線以外の点線及び破線が、上記実際に求めた各搬送要求の代表路である。なお、最短経路が複数存在する場合、搬送要求組分部33は、その複数の最短経路の中から任意に1つを選択する。
【0030】
(2)搬送要求組分部33は、求めた代表路に基づいて、各ノードを通る代表路の本数から1を引いた値をノードの重みとする。但し、
図3に示す如く、1本の代表路も通らないノードの重みは0とする。
【0031】
例えば、D3のノードは3つの搬送要求(O1、D1)、(O2、D2)、(O3、D3) の代表路が夫々通るので、ノードD3を通る代表路の本数3から1を引いた値2がD3のノードの重みとなる。
【0032】
(3)搬送要求組分部33は、各搬送要求の代表路に含まれるノードの重みの合計値を、各搬送要求の重なり度wとして、算出する。
【0033】
図3の場合、5つの搬送要求(O1、 D1)、 (O2、 D2)、 (O3、 D3)、 (O4、 D4)、 (O5、 D5) の重なり度は、それぞれ、w
(O1、D1)=6、w
(O2、D2)=5、w
(O3、D3)=3、w
(O6、D6)=1、w
(O5、D5)=1、となる。
【0034】
次に、上述した搬送要求を特徴付ける量(x、y、w)を用いて、クラスタリングによる搬送要求の組分け方法について、具体的な例で説明する。
【0035】
まず、搬送要求のクラスタリングを行うに際して、一組当たりの組分けの大きさの上限値を設定する。上限値は、例えば、組分けに含まれる搬送要求の代表路長の合計値の上限などであり、一組あたりの仕事量の上限である。上限値は、搬送要求組分部33などに予め設定されていてもよい。
【0036】
図4は、本実施形態に係るクラスタリングによる搬送要求の組分け方法のフローを示すフローチャートである。
【0037】
搬送要求組分部33は、搬送要求のすべての集まりをSとする(ステップS401)。
搬送要求組分部33は、搬送要求の集まりS内の搬送要求を、搬送要求を特徴づける量で2つにクラスタリングする(ステップS402)。
【0038】
搬送要求組分部33は、上記クラスタリングして求めた2つのクラスタのそれぞれの大きさを計算し、各クラスタの大きさが上記設定した上限値以下であるか否かを確認する。搬送要求組分部33は、上限値以下の大きさのクラスタをOKとし、上限値を超えた大きさのクラスタをNGとして記録する(ステップS403)。
【0039】
搬送要求組分部33は、上記記録したクラスタに、NGのクラスタがあるか否かを確認する(ステップS404)。搬送要求組分部33は、NGのクラスタがある場合(ステップS404のYES)、NGのクラスタを1つ取り出し、そのクラスタの搬送要求の集まりをSにし(ステップS405)、上記(ステップS402)に戻る。
【0040】
搬送要求組分部33は、NGのクラスタがない場合(ステップS404のNO)、OKのクラスタを搬送要求の組として搬送要求割当部34に出力し、本処理を終了する(ステップS406)。
【0041】
なお、上記説明では、搬送要求組分部33は、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、を用いて複数の搬送要求を夫々特徴付けているが、これに限定されない。搬送要求組分部33は、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機の搬送路が重なる搬送要求同士は近い値となる量、のうちの少なくとも一方を用いて、複数の搬送要求を夫々特徴付けてもよい。
【0042】
例えば、荷物を搬送する搬送機2の数が少ない場合などは、搬送要求組分部33は、(a)離れた位置にある搬送要求同士は離れた値となる量のみを用いて複数の搬送要求を夫々特徴付けてもよい。これにより、計算を簡略化でき、搬送計画の決定にかかる計算時間をより抑制できる。
【0043】
[搬送要求割当部]
搬送要求割当部34は、搬送要求組分け部で組分けされた搬送要求の組を、各搬送機2に対して割り当てる。搬送要求割当部34は、搬送機情報記憶部32に記憶された各搬送機2の搬送機情報から、前の搬送計画がすべて終了する終了時刻を取得する。搬送要求割当部34は、前の搬送計画の終了時刻が早い搬送機2から順に、搬送要求の組を割り当てる。
【0044】
搬送要求割当部34は、搬送機情報記憶部32の各搬送機2の搬送機情報に基づいて、各搬送機2に対して、その搬送機2の終了地点に最も近い距離にある搬送要求の組を、割り当てる。これにより、搬送機2の移動距離を最小に抑え、搬送効率を向上させることができる。
【0045】
図5は、上記搬送要求の組を各搬送機に対して割り当てる際の具体的な割当て方法のフローを示すフローチャートである。
【0046】
搬送要求割当部34は、搬送機情報記憶部32に記憶された各搬送機2の搬送機情報から、各搬送機2の搬送計画がすべて終了したときに各搬送機2がいる位置のノード(終点ノード)を取得する(ステップS501)。
【0047】
搬送要求割当部34は、終点ノードから未割当の搬送要求の始点ノードまでの最短距離を算出する(ステップS502)。
【0048】
搬送要求割当部34は、終点ノードから始点ノードまでの距離が最も短い搬送要求を求め、求めた搬送要求が含まれる搬送要求の組を搬送機2に割り当てる(ステップS503)。
【0049】
搬送要求割当部34は、上述の如く、各搬送機2に対して割り当てた搬送要求の組の結果を搬送機経路計画部35に出力する。
【0050】
[搬送機経路計画部]
搬送機経路計画部35は、搬送要求割当部34により各搬送機2に割り当てられた搬送要求の組に基づいて、各搬送機2が割当てられた搬送要求の組の各搬送要求を処理する際の、順序、走行経路、及び、走行タイミングを決定する。
【0051】
図6は、本実施形態に係る搬送機経路計画部の概略的なシステム構成を示すブロック図である。本実施形態に係る搬送機経路計画部35は、搬送要求の順序を決定する処理順序決定部351と、搬送機2の走行経路を決定する走行経路決定部352と、搬送機2の走行タイミングを決定する走行タイミング決定部353と、を有している。
【0052】
[処理順序決定部]
処理順序決定部351は、各搬送機2が割当てられた搬送要求の組の中において各搬送要求を処理する順序を決定する。
図7は、各搬送要求を処理する順序を決定するフローを示すフローチャートである。なお、上記割り当てられた搬送要求には、処理の順序を表す番号が予め設定されている。この番号が大きくなると処理順序が遅くなる。この番号が設定されていない搬送要求は、未決定搬送要求とする。処理順序決定部351は、以下のように、搬送機2がこの未決定搬送要求を処理する順序を決定する。
【0053】
処理順序決定部351は、順序決定済みの搬送要求の中から一番大きい番号を記録し、記録した番号をkとする(ステップS701)。
【0054】
処理順序決定部351は、記録した番号kの搬送要求の終点ノードから、全ての未決定搬送要求の始点ノードまでの最短経路長を算出し、最も短い最短経路長の未決定搬送要求を取得する(ステップS702)。
【0055】
処理順序決定部351は、取得した未決定搬送要求の番号をk+1 に設定する(ステップS703)。
【0056】
処理順序決定部351は、未決定搬送要求が存在するか否かを確認する(ステップS704)。処理順序決定部351は、未決定搬送要求が存在すると判断した場合(ステップS704のYES)、k+1をkとして記録し(ステップS705)、上記(ステップS702) の処理に戻る。一方、処理順序決定部351は、未決定搬送要求が存在しないと判断した場合(ステップS704のNO)、本処理を終了する。
【0057】
処理順序決定部351は、上述のようにして決定した各搬送要求の処理順序を走行経路決定部352に出力する。
【0058】
[走行経路決定部]
走行経路決定部352は、処理順序決定部351により決定された搬送要求の処理の順序に基づいて、搬送機2の走行経路を決定する。
【0059】
具体的には、走行経路決定部352は、搬送要求組分部33で用いた搬送要求の代表路を走行経路に選ぶ。また、走行経路決定部352は、搬送要求終了後、次の搬送要求の始点ノードに向かう走行経路には、最短経路の中の一つを選ぶ。そして、走行経路決定部352は、搬送要求の処理の順番で繋げた経路を搬送機2の走行経路に決定する。これにより、設定された搬送要求の処理の順番で、最短経路で荷物を効率良く搬送できる。
【0060】
図8は、走行経路の決定方法を具体的に説明するための図である。
図8の(a)は、格子状の走行路の一例であり、
図8の(b)は、搬送要求の一例である。
【0061】
図8の(b)に示す如く、走行経路決定部352は、番号2の搬送要求(O1、 D1)の代表路(8→5→2)と、番号3の搬送要求(O2、 D2)の代表路(6→5→4→1)を選び、2番の搬送要求終了後、次の3番の搬送要求の始点ノードに向かう走行経路には、最短経路となるノード3を選ぶ。そして、
図8の(c)に示す如く、走行経路決定部352は、前の終点ノード7から、これら選んだノードを搬送要求の処理の順番につなげた経路(7→(8→5→2)→3→(6→5→4→1))を搬送機2の走行経路に決定する。
【0062】
走行経路決定部352は、上述のようにして決定した各搬送機2の走行経路を走行タイミング決定部353に出力する。
【0063】
[走行タイミング決定部]
走行タイミング決定部353は、走行経路決定部352により決定された各搬送機2の走行経路に基づいて、各搬送機2同士の衝突の発生を防ぐような各搬送機2の走行タイミングを決定する。
【0064】
走行タイミング決定部353は、走行経路決定部352で決定された各搬送機2の走行経路を、例えば、ペトリネットと呼ばれる表現方法で記述する。走行タイミング決定部353は、全搬送機2の走行路についてのペトリネットを結合し、相互に衝突しない各搬送機2の走行タイミングを算出する。なお、走行タイミング決定部353は、前回までに作成したペトリネットを記憶しており、読み出すことができるものとする。
【0065】
まず初めに、ペトリネットの作成方法について上述した
図8(c)に示す走行経路を用いて具体的に説明する。
【0066】
(ステップ1)
図8(c)に示す走行経路から終点ノードと終点ノードからの矢印を除いた走行経路を作成する(
図9)。
【0067】
(ステップ2)
図9に示す走行経路からノード番号を丸円(○)に、矢印(→)を矢印と棒の組「→ | →」に置き換える。また、丸円と棒には、以下のようにラベルを付ける(
図10)。
・番号nの搬送要求の中のノード番号m に対応する丸円をp
n,m
・番号nの搬送要求終了後、次の搬送要求へ移動する間のノード番号kに対応する丸円をp
*n,k
・番号nの搬送要求の中のノード番号mからm′への移動に対応する棒をt
n,m,m′
・番号nの搬送要求終了後、次の搬送要求へ移動中のノード番号kからk′への移動に対応する棒をt
*n,k,k′
とする。
【0068】
但し、番号nの搬送要求の終点と次の搬送要求の始点が一致したノードがある場合は、対応する丸円のラベルはp′n,m(mはノード番号)とする。
【0069】
図10は、
図9の走行路の丸円と棒に上記ラベルを付けた走行路であり、搬送機2が走行路に沿って移動することを表現するペトリネットを示している。
【0070】
図10の丸円及び棒は、それぞれ、プレース、及びトランジションと呼び、以下のようなことを表している:
・p
n,m:搬送機2が番号nの搬送要求の搬送中にノード番号mにいる状態
・p
*n,m:搬送機2が番号nの搬送要求を終了後、次の搬送要求までの移動中にノード番号mにいる状態
・t
n,i,j:搬送機2が番号nの搬送要求の搬送中にノード番号iからjに移動する事象
・t
*n,i,j:搬送機2が番号nの搬送要求を終了後、次の搬送要求までの移動にノード番号iからjに移動する事象
【0071】
ペトリネットのプレースとトランジションをつなぐ矢印は、状態の変化の条件と向きを表現する。例えば、
図10のt
2,8,5は、「番号2の搬送要求の中のノード番号8からノード番号5への移動の状態」を表現している。
【0072】
(ステップ3)
図10に示すペトリネットに対し、荷物の受け取り、受け渡しを表現するペトリネットを追加する。以下、番号2の搬送要求を例に説明する。
【0073】
まず、番号2の搬送要求の荷物の受け取りを表現するために、次のトランジションとプレースを導入する。
・始点ノードで荷物を受け取る事象を表すトランジションをt2,0
・始点ノードで荷物の受け取りが完了した状態を表すプレースをp2,0
とする。
【0074】
そして、番号2の搬送要求の始点ノードのプレースp
2、8と、始点ノードからの移動を表すトランジションt
2,8,5と、を
図11に示す如く、矢印で結合する。
【0075】
荷物の受け渡しについても、上記荷物の受け取りと同様に、次のようなプレース及びトランジションを導入する。
・終点ノードで荷物を受け取る事象を表すトランジションをt2,D
・終点ノードで荷物の受け取りが完了した状態を表すプレースをp2,D
とする。
【0076】
そして、番号2の搬送要求の終点ノードのプレースp
2、Dと、終点ノードからの移動を表すトランジションt
*2,2,3と、を
図12(a)に示す如く、矢印で結合する。但し、終点ノードからの移動を表すトランジションt
*2,2,3が存在しない場合、
図12(b)に示すように結合する。
【0077】
図13(a)の如く、番号2の搬送要求の終点ノードと次の番号3の搬送要求の始点ノードがノード番号2で一致する場合、
図13(b)のように結合させる。
【0078】
以上の受け取り、受け渡しのペトリネットの追加をすべての搬送要求に対して行うと、
図14のようになる。
【0079】
(ステップ4)最後に搬送機2自身が持つペトリネットと
図13のペトリネットを結合する。
図8に示す走行経路の場合、搬送機2が持つペトリネットは
図15のような番号1の搬送要求の終点ノードの受け渡しのペトリネットとなっている。なお、
図15において、理解し易くするために説明に必要な部分以外は省略している。
【0080】
図15に示すこの搬送機2が持つペトリネットと、
図14に示すペトリネットと、を上記(ステップ2及び3)の方法を用いて結合することで、
図16に示す走行経路のペトリネットが作成される。なお、
図16において、理解し易くするために一部を省略している。
【0081】
次に、上述の如く作成したペトリネットから走行タイミングを求める方法を、
図17に示す如く、走行路上に2台の搬送機A及びBがいる場合について説明する。なお、
図18は、
図17の搬送機A及びBのペトリネットを示している。
【0082】
(ステップ1)
図17のすべてのノード番号に、対応するプレースp
res,n(n=
1、2、・・・、9)を導入する。このp
res,nは、ノード番号nに搬送機2が入ることが可能な状態であることを示すプレースである。resは搬送機2を受け入れるリソース(Resource)を意味する。以下、このp
res,nをリソースプレースと称す。
【0083】
リソースプレースpres,nを各搬送機2のペトリネットのトランジションに以下の規則で矢印を付ける。
・ノード番号nから別のノードへ移動を表すトランジションからリソースプレースpres,nへ矢印を付ける
・リソースプレースpres,nからノード番号n以外からノード番号nへ移動を表すトランジションへ矢印を付ける。
【0084】
図18に示す搬送機A及びBのペトリネットと、リソースプレースp
res,nと、を結合した場合、
図19のように結合される。
【0085】
(ステップ2)上述のように結合した全ペトリネットに対して、黒点のトークン●を加え、現在の状態を表現する。
【0086】
このトークン●は、プレース○の中に置かれ、トークンが置かれたプレースが示す状態が現在の状態を表す。
【0087】
図17に示す如く、搬送機Aはノード番号7で荷物の受け取りが完了しているので、
図19に示す如く、搬送機Aのプレースp
A1,7と、プレースp
A1,0にトークンが置かれる。同様に、
図17に示す如く、搬送機Bはノード番号6にいるため、
図19に示す如く、搬送機Bのプレースp
B1,6にトークンが置かれ、また、搬送機2がいないノードに対応するプレースp
res,nにもトークンが置かれる。
【0088】
(ステップ3)ペトリネット上のトークンを規則に従い移動させる。
ペトリネットのプレース上のトークンは、次の規則で変化させることができる。
・あるトランジションtに対し、すべてのtへ向かう矢印を持つプレースがトークンを一つ以上持っているとき、すべてのtへ向かう矢印を持つプレースからトークンを一つ除き、すべてのtから向かう矢印を持つプレースにトークンを一つ加える。
【0089】
これは現在の状態から次の状態への移行を表現した規則であり、トークンの変化を見ることで、搬送機2の動きをシミュレーションすることが可能である。
【0090】
一例として、
図19のトランジションt
A1,7,8に着目する。
図20(a)に示す如く、トランジションt
A1,7,8へ向かう矢印を持つプレースp
A1,0、p
A1,7、p
res,8のすべてがトークンを持つ。このため、トークンの移動の規則に従うとトークンの位置は
図20(b)のようになる。
【0091】
これは、
図20(a)の現在の状態が、
・搬送機Aがノード番号7にいて(p
A1,7)、
・荷物の受け取りが完了しており(p
A1,0)、
・ノード番号8に搬送機2が入るにことが可能である(p
res,8)
様子を表現している(
図20(b))。
また、t
A1,7,8の事象「搬送機Aがノード番号7から8に移動」が可能であり、この事象が発生した後の次の状態
・搬送機Aがノード番号8にいて(p
A1,8)
・ノード番号7に搬送機2が入るにことが可能である状態(p
res,7)
に移行する様子を表現している(
図20(b))。
【0092】
重要な点として、このトークンの変化の規則に従うと、ノード番号nに搬送機2がいるとき、リソースプレースpres,nはトークンを持たない。このため、ノード番号nにいる搬送機2が移動するまで、他の搬送機2がノード番号nへ移動する事象を発生させることができなくなり、搬送機2同士の衝突が発生しなくなることである。
【0093】
例えば、
図19に示すノード番号5のリソースプレースp
res,5によって、搬送機Aと搬送機Bとの衝突が発生しないことがわかる。そのため、このトークンの変化の規則を搬送機2全体のペトリネットに適応し、トークンの変化を記録することで、搬送機2同士が衝突しない走行タイミングを決定することが可能となる。
【0094】
走行タイミング決定部353は、上述の如く、走行経路決定部352により決定された全搬送機2の走行経路についてのペトリネットを結合して、搬送機2全体のペトリネットを作成する。そして、走行タイミング決定部353は、作成した搬送機2全体のペトリネットに上記トークンの規則を適応することで、各搬送機同士の衝突が起こらないような各搬送機の走行タイミングを計画する。これにより、ペトリネットを利用して、各搬送機同士の衝突が起こらないような各搬送機2の最適な走行タイミングを計画できる。なお、走行タイミング決定部353は、上記ペトリネット以外の任意の手法を用いて、各搬送機同士の衝突が起こらないような各搬送機2の最適な走行タイミングを計画してもよい。
【0095】
続いて、本実施形態に係る搬送計画方法について詳細に説明する。
図21は、本実施形態に係る搬送計画方法のフローを示すフローチャートである。
【0096】
搬送要求組分部33は、搬送路情報記憶部31に記憶された搬送路情報に基づいて、複数の搬送要求を組み分けし、搬送要求割当部34に対して出力する(ステップS211)。
【0097】
搬送要求割当部34は、搬送要求組分部33により組み分けられた搬送要求の組を各搬送機2への割り当てを行い(ステップS212)、その割当てた結果を搬送機経路計画部35に出力する。
【0098】
搬送機経路計画部35は、搬送要求割当部34により各搬送機2に割り当てられた搬送要求の組に基づいて、搬送機2同士の衝突が起こらないような各搬送機2の搬送を計画する(ステップS213)。
【0099】
以上、本実施形態1に係る搬送計画システム1は、複数のノード及びエッジを含むと共に複数の搬送機2が走行する走行路の情報である搬送路情報に基づいて、各搬送機2が荷物を受ける始点ノードと各搬送機2が受け取った荷物を届ける地点を表す終点ノードとの組の情報を含む複数の搬送要求を、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機2の搬送路が重なる搬送要求同士は近い値となる量、のうちの少なくとも一方を用いて、夫々特徴付け、搬送要求に対し特徴付けた量に基づいて、搬送要求を組み分けする搬送要求組分部33と、搬送要求組分部33により組み分けられた搬送要求の組を各搬送機2へ割り当てる搬送要求割当部34と、搬送要求割当部34により各搬送機2に割り当てられた搬送要求の組に基づいて、各搬送機2同士の衝突が起こらないような各搬送機2の走行の計画を行う搬送機経路計画部35と、を備えている。
【0100】
本実施形態1に係る搬送計画システム1によれば、(a)離れた位置にある搬送要求同士は離れた値となる量、及び、(b)搬送機2の搬送路が重なる搬送要求同士は近い値となる量、のうちの少なくとも一方を用いて、搬送要求を特徴付け、該搬送要求に対し特徴付けた量に基づいて、搬送要求を組み分けする。これにより、搬送要求の組合せ数を抑制でき搬送計画にかかる計算時間を抑制できる。
【0101】
実施形態2
上記説明した搬送計画システム1では、搬送計画装置3、及び、搬送機2に設けられる機能については、使用に応じていずれの装置側に配置されてもよい。搬送計画装置3の搬送路情報記憶部31、搬送機情報記憶部32、搬送要求組分部33、搬送要求割当部34、及び搬送機経路計画部35のうちの少なくとも1つは、搬送機2側に配置されてもよい。
【0102】
例えば、
図22に示す如く、搬送計画システム10は、搬送計画装置3を備えない構成であってもよい。この場合、搬送機30は、搬送路情報記憶部31、搬送機情報記憶部32、搬送要求組分部33、搬送要求割当部34、及び搬送機経路計画部35を備えている。
【0103】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他のさまざまな形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0104】
本発明は、例えば、
図20に示す処理を、プロセッサにコンピュータプログラムを実行させることにより実現することも可能である。
【0105】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
【0106】
プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0107】
上述した各実施形態に係る搬送計画装置3を構成する各部は、プログラムにより実現するだけでなく、その一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより実現することもできる。
【符号の説明】
【0108】
1 搬送計画システム、2 搬送機、3 搬送計画装置、4 無線通信ネットワーク、10 搬送計画システム、11 プロセッサ、12 内部メモリ、13 ストレージデバイス、30 搬送機、31 搬送路情報記憶部、32 搬送機情報記憶部、33 搬送要求組分部、34 搬送要求割当部、35 搬送機経路計画部、351 処理順序決定部、352 走行経路決定部、353 走行タイミング決定部