(58)【調査した分野】(Int.Cl.,DB名)
前記通信部は、更に、前記自律型移動ロボットと前記ネットワークを構成する、前記自律型移動ロボット及び前記第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、前記第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信し、
前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、前記第2情報に基づいて前記第2制御量を決定する、
請求項1記載の自律型移動ロボット。
前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、前記第2制御コマンドを前記駆動部に出力してから所定時間経過後に、前記第3制御量から前記第1制御量に切り替えて前記自律型移動ロボットを移動させる第3制御コマンドを前記駆動部に出力する、
請求項1記載の自律型移動ロボット。
前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した後、前記第1情報が再度前記通信部によって受信されるようになったことを検知した場合、前記第3制御量から前記第1制御量に切り替えて前記自律型移動ロボットを移動させる第3制御コマンドを前記駆動部に出力する、
請求項1記載の自律型移動ロボット。
前記通信部は、更に、前記自律型移動ロボットと前記ネットワークを構成する、前記自律型移動ロボット及び前記第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、前記第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信し、
前記制御部は、
前記第2情報に基づいて、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量を決定し、
前記第4制御量に基づいて前記第1制御量を更新する、
請求項1記載の自律型移動ロボット。
【発明を実施するための形態】
【0011】
(本開示の基礎となった知見)
通信機能を有する複数の移動体が、互いに自分以外の複数の移動体間の通信を中継することによって、直接的又は間接的に通信し合う、アドホックネットワークの技術が知られている(例えば、特許文献1参照)。
【0012】
移動体が構成するアドホックネットワークでは、アドホックネットワークを構成する複数の移動体の一部が故障したり、他の移動体と離れ過ぎたりすることによって、アドホックネットワークを構成する複数の移動体の一部又は全部の移動体間の通信が切断され、アドホックネットワークが分断されてしまうことがある。
【0013】
このような場合に、アドホックネットワークの分断を復旧させるための技術が、特許文献1などで開示されている。
【0014】
例えば、特許文献1には、アドホックネットワークとの通信が切断された際に、アドホックネットワークとの通信が切断された移動体が、今まで移動していた方向と反対の方向、切断前に通信していた別の移動体の位置に向かう方向、移動体群全体の中心位置に向かう方向、又は切断前の自分以外のノードの位置の変化に基づいていて通信復旧可能と推測した位置に向かう方向に移動する第1の技術が開示されている。
【0015】
しかしながら、特許文献1で開示されているこれらの第1の技術は、全て、アドホックネットワークとの通信が切断された移動体が一つだけである場合にのみ適用可能な技術であり、アドホックネットワークとの通信が切断された移動体が二つ以上である場合については、何の示唆もされておらず、そのままでは適用することができない。
【0016】
例えば、
図1のような状況を想定する。
【0017】
図1は、複数の移動体によって構成されるアドホックネットワークの全体像の一例を示す概念図である。
【0018】
図1において、アドホックネットワーク2は、通信機能を有する移動体201−207から構成されている。移動体を示す円の間に引かれている実線は、それらの移動体間で直接通信が可能であることを示している。以下、本明細書でアドホックネットワークを図示する際には、移動体を円で図示し、移動体間で直接通信が可能であることを、それらの円の間に引かれた実線で示すこととする。
【0019】
移動体201と移動体202とは互いに直接通信可能であり、移動体202と移動体203とは互いに直接通信可能であり、移動体202と移動体204とは互いに直接通信可能であり、移動体203と移動体204とは互いに直接通信可能であり、移動体204と移動体205とは互いに直接通信可能であり、移動体205と移動体206とは互いに直接通信可能であり、移動体206と移動体207とは互いに直接通信可能である。
【0020】
また、移動体201−207は、自分以外の複数の移動体間の通信を中継することができる。従って、例えば、移動体201と移動体207とは、移動体202、移動体204、移動体205及び移動体206という経路で通信を中継してもらうか、又は、移動体202、移動体203、移動体204、移動体205及び移動体206という経路で通信を中継してもらうことによって、間接的に通信を行うことができる。
【0021】
図2は、アドホックネットワーク2において、
図1の移動体205が故障した場合の、複数の移動体によって構成されるアドホックネットワーク群の全体像の一例を示す概念図である。
図2において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0022】
アドホックネットワーク2において、移動体205が故障した場合、移動体205と移動体204との間の直接通信、及び、移動体205と移動体206との間の直接通信の両者が切断され、アドホックネットワーク2は、アドホックネットワーク群3に変化する。
【0023】
アドホックネットワーク群3において、移動体201−204のそれぞれから見ると、移動体205−207のそれぞれとの(アドホックネットワークを介した)通信が切断され、移動体205−207のそれぞれから見ると、移動体201−204のそれぞれとの(アドホックネットワークを介した)通信が切断されたことになる。この場合、どの移動体から見ても、自身が属するアドホックネットワークとの通信が切断された移動体が二つ以上あるので、特許文献1で開示されている上記第1の技術を適用することはできない。
【0024】
また、アドホックネットワーク2において、移動体201−204が
図1の左側の方向へ、移動体206−207が
図1の右側の方向へ、それぞれ移動し、移動体204と移動体206の両者が、共に、移動体205から離れすぎて、それぞれ移動体205との直接通信が不可能になった場合を想定する。
【0025】
図3は、アドホックネットワーク2において、移動体201−204が
図1の左側の方向へ、移動体206−207が
図1の右側の方向へ、それぞれ移動し、移動体204と移動体206との両者が、共に、移動体205から離れすぎて、それぞれ移動体205との直接通信が不可能になった場合の、複数の移動体によって構成されるアドホックネットワーク群の全体像の一例を示す概念図である。
図3において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0026】
アドホックネットワーク2において、移動体201−204が
図1の左側の方向へ、移動体206−207が
図1の右側の方向へ、それぞれ移動し、移動体204と移動体206との両者が、共に、移動体205から離れすぎて、それぞれ移動体205との直接通信が不可能になった場合、アドホックネットワーク2は、アドホックネットワーク群4に変化する。
図3において、白色の矢印は、各移動体のおおよその移動方向を示している。以下、本明細書で移動体のおおよその移動方向を図示する際には、このような白色の矢印で示すこととする。
【0027】
アドホックネットワーク群4において、移動体205はアドホックネットワークから切断されたことを検知可能であるが、特許文献1で開示されている上記第1の技術を適用して移動体205が移動したとしても、移動体201−204と移動体206−207とが互いに遠ざかるような方向に移動し続けている限り、最善でも移動体201−204と移動体206−207とのどちらか一方に属する移動体のみとの直接通信が復旧するのみで、他方に属する移動体との直接通信を復旧することはできない。
【0028】
また、アドホックネットワーク2において、移動体201−206が
図1の左下の方向へそれぞれ移動し、移動体206が移動体207から離れすぎて、移動体207との直接通信が不可能になった場合を想定する。
【0029】
図4は、アドホックネットワーク2において、移動体201−206が
図1の左下の方向へそれぞれ移動し、移動体206が移動体207から離れすぎて、移動体207との直接通信が不可能になった場合の、複数の移動体によって構成されるアドホックネットワーク群の全体像の一例を示す概念図である。
図4において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0030】
アドホックネットワーク2において、移動体201−206が
図1の左下の方向へそれぞれ移動し、移動体206が移動体207から離れすぎて、移動体207との直接通信が不可能になった場合、アドホックネットワーク2は、アドホックネットワーク群5に変化する。
【0031】
アドホックネットワーク群5において、移動体207はアドホックネットワークから切断されたことを検知可能であるが、特許文献1で開示されている上記第1の技術を適用して移動体207が移動したとしても、移動体207が移動する方向に移動体201−206が存在するとは限らないので、移動体201−206との直接通信が復旧できる可能性は低い。また、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207が移動体201−206に追いつくことができず、移動体201−206との直接通信が復旧できない可能性が高い。
【0032】
以下、これらの課題を、
図4を用いて説明する。
【0033】
図1の状況から
図4の状況になるまでの間に、移動体207が移動した経路を、移動体207の移動経路501として
図4に示した。また、
図1の状況から
図4の状況になるまでの間に、移動体207と直前まで通信していた移動体206が移動した経路を、移動体206の実際の移動経路502として
図4に示した。
【0034】
まず、特許文献1で開示されている上記第1の技術のうち、アドホックネットワークとの通信が切断された移動体が、今まで移動していた方向と反対の方向に移動する、という技術を用いた場合について説明する。アドホックネットワークとの通信が切断された移動体207は、今まで
図4の右側に向かって移動していたので、通信の復旧のために
図4の左側に向かって移動を開始する。しかしながら、この方向には既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできない。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できない。
【0035】
次に、特許文献1で開示されている上記第1の技術のうち、アドホックネットワークとの通信が切断された移動体が、切断前に通信していた別の移動体の位置に向かう方向に移動する、という技術を用いた場合について説明する。アドホックネットワークとの通信が切断された移動体207は、切断前に移動体206と通信していたので、移動体206の位置に向かう方向に移動することになる。ここで、移動体206は、移動体206の実際の移動経路502を通って移動しており、移動体207と移動体206との間の直接通信が切断された時点では、
図4の、通信切断直前の移動体206の位置503にあったとする。この場合、移動体207は、通信切断直前の移動体206の位置503に向かって移動を開始する。しかしながら、この方向には既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできない。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できない。
【0036】
次に、特許文献1で開示されている上記第1の技術のうち、アドホックネットワークとの通信が切断された移動体が、移動体群全体の中心位置の方向に移動する、という技術を用いた場合について説明する。ここで、移動体207と移動体206との間の直接通信が切断された時点では、移動体群全体の中心位置は、
図4の、通信切断直前の移動体群全体の中心位置504であったとする。この場合、アドホックネットワークとの通信が切断された移動体207は、通信切断直前の移動体群全体の中心位置504に向かって移動を開始する。しかしながら、この方向には既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできない。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できない。
【0037】
次に、特許文献1で開示されている上記第1の技術のうち、アドホックネットワークとの通信が切断された移動体が、切断前の自分以外のノードの位置の変化に基づいて通信復旧可能と推測した位置に向かう方向に移動する、という技術を用いた場合について説明する。アドホックネットワークとの通信が切断された移動体207は、まず、切断前の自分以外のノードの位置の変化に基づいた予測位置を決定する。ここでは、移動体207は、直前まで通信していた移動体206の位置の変化に基づいて、移動体206の現在の位置を推測し、その位置を通信復旧可能と推測した位置として決定するとする。移動体207と移動体206との間の直接通信が切断された時点では、移動体206は、移動体206の実際の移動経路502を通って移動し、通信切断直前の移動体206の位置503に至っているので、移動体207は、移動体206の現在の位置を、その延長線上にある、
図4の、通信切断直前の自分以外のノードの位置の変化に基づいた予測位置506と推測したとする。
【0038】
この場合、移動体207は、通信切断直前の自分以外のノードの位置の変化に基づいて予測した予測位置506に向かって移動を開始する。しかしながら、この方向には既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできない。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できない。
【0039】
このため、特許文献1では、アドホックネットワークとの通信が切断された移動体が、今まで移動していた方向と反対の方向、切断前に通信していた別の移動体の位置に向かう方向、移動体群全体の中心位置に向かう方向、又は切断前の自分以外のノードの位置の変化に基づいて通信復旧可能と推測した位置に向かう方向に移動する際に、アドホックネットワークを構成する他の全ての移動体の移動を停止させる第2の技術が開示されている。
【0040】
しかしながら、特許文献1で開示されているこれら第2の技術を適用した場合には、アドホックネットワークとの通信が切断された移動体は復旧のための移動を行い、アドホックネットワークを構成する他の全ての移動体は、アドホックネットワークとの通信が切断された移動体との通信が復旧するまでの間、移動を停止するため、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう。
【0041】
また、特許文献1には、アドホックネットワークとの通信が切断された際に、移動体群全体が、移動体群全体の中心位置に向かう方向に移動する第3の技術が開示されている。
【0042】
しかしながら、特許文献1で開示されているこの第3の技術を適用した場合には、通信が復旧するまでの間、移動体群が展開していた領域がどんどん小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう。また、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう。
【0043】
また、特許文献1には、アドホックネットワークとの通信が切断された際に、アドホックネットワークとの通信が切断された移動体は停止し、アドホックネットワークとの通信が切断された移動体の切断前の位置(切断位置)に移動可能な移動体が一つ選択され、選択された移動体が切断位置の方向に移動する第4の技術が開示されている。
【0044】
しかしながら、特許文献1で開示されているこの第4の技術を適用した場合には、選択された移動体が切断位置の方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある。
【0045】
以下、これらの課題を、
図5を用いて説明する。
【0046】
図5は、アドホックネットワーク群において、特許文献1で開示されている第4の技術を適用した場合の、複数の移動体によって構成されるアドホックネットワーク群の全体像の一例を示す概念図である。
図5において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0047】
図4に示すアドホックネットワーク群5において、特許文献1で開示されている第4の技術を適用した場合、アドホックネットワーク群5は、
図5に示すアドホックネットワーク群23に変化する。この変化について、以下に説明する。
【0048】
アドホックネットワーク群23において、特許文献1で開示されている第4の技術を適用した場合、まず、アドホックネットワークとの通信が切断された移動体207は停止する。ここで、切断位置2301に移動可能な移動体として、移動体207と直前まで通信していた移動体206が選択されたとする。移動体206は、切断位置2301の方向に移動することにより、通信の復旧を図る。しかしながら、移動体206が、切断位置2301の方向に移動することにより、移動体205と移動体206とが離れすぎてしまい、移動体205と移動体206との間の通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されてしまう。この場合、移動体206の移動によって、仮に、移動体206と移動体207との間の通信が復旧したとしても、移動体205と移動体206とは、互いに遠ざかるような方向に移動しているので、移動体205と移動体206との間の通信が復旧することはなく、アドホックネットワーク全体としての通信の復旧を図ることはできない。
【0049】
このような課題を解決するために、本開示の一態様に係る自律型移動ロボットは、通信対象自律型移動ロボットと通信しながら自律して移動する自律型移動ロボットであって、前記自律型移動ロボットを駆動する駆動部と、第1移動距離及び第1移動方向の組み、第1速度絶対値及び第1速度方向の組み、並びに、第1加速度絶対値及び第1加速度方向の組みのいずれかを示す第1制御量で前記自律型移動ロボットを移動させる第1制御コマンドを前記駆動部に出力する制御部と、前記自律型移動ロボットとネットワークを構成する、前記自律型移動ロボットとは異なる第1の通信対象自律型移動ロボットから送信された、前記第1の通信対象自律型移動ロボットの第1位置、第1速度、及び第1加速度のいずれかを示す第1情報を受信する通信部と、を備え、前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、既に受信された前記第1情報に基づいて前記自律型移動ロボットを移動させる、第2移動距離及び第2移動方向の組み、第2速度絶対値及び第2速度方向の組み、並びに、第2加速度絶対値及び第2加速度方向の組みのいずれかを示す第2制御量を決定し、前記第1制御量と前記第2制御量とに基づいて、第3移動距離及び第3移動方向の組み、第3速度絶対値及び第3速度方向の組み、並びに、第3加速度絶対値及び第3加速度方向の組みのいずれかを示す第3制御量を決定し、前記第1制御量から前記第3制御量に切り替えて前記自律型移動ロボットを移動させる第2制御コマンドを生成して前記駆動部に出力する。
【0050】
この構成によれば、第1移動距離及び第1移動方向の組み、第1速度絶対値及び第1速度方向の組み、並びに、第1加速度絶対値及び第1加速度方向の組みのいずれかを示す第1制御量で自律型移動ロボットを移動させる第1制御コマンドが駆動部に出力される。自律型移動ロボットとネットワークを構成する、自律型移動ロボットとは異なる第1の通信対象自律型移動ロボットから送信された、第1の通信対象自律型移動ロボットの第1位置、第1速度、及び第1加速度のいずれかを示す第1情報が受信される。そして、第1情報が受信されなくなったことを検知した場合、既に受信された第1情報に基づいて自律型移動ロボットを移動させる、第2移動距離及び第2移動方向の組み、第2速度絶対値及び第2速度方向の組み、並びに、第2加速度絶対値及び第2加速度方向の組みのいずれかを示す第2制御量が決定される。第1制御量と第2制御量とに基づいて、第3移動距離及び第3移動方向の組み、第3速度絶対値及び第3速度方向の組み、並びに、第3加速度絶対値及び第3加速度方向の組みのいずれかを示す第3制御量が決定される。第1制御量から第3制御量に切り替えて自律型移動ロボットを移動させる第2制御コマンドが生成されて駆動部に出力される。
【0051】
したがって、第1制御量が自律型移動ロボットの本来の目的のための移動を制御する制御量であり、第2制御量が第1の通信対象自律型移動ロボットとの通信の復旧のための移動を制御する制御量である場合、第3制御量は第1制御量と第2制御量とに基づいて決定されるので、第1制御量から第3制御量に切り替えて自律型移動ロボットを移動させることにより、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動とを両立させることができる。
【0052】
更に、複数の自律型移動ロボットが存在するとともに、第3制御量を決定する際の第1制御量と第2制御量の比重が、個々の自律型移動ロボットごとに異なる場合、自律型移動ロボットの本来の目的のための移動の比重が大きい自律型移動ロボットと、第1の通信対象自律型移動ロボットとの通信の復旧のための移動の比重が大きい自律型移動ロボットとが存在することになり、複数の自律型移動ロボット全体の動きとしては、自律型移動ロボットの本来の目的のための移動を優先させる自律型移動ロボットと、第1の通信対象自律型移動ロボットとの通信の復旧のための移動を優先させる自律型移動ロボットとで役割分担することで、結果的に連携して移動し、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動とを両立させることができるので、自律型移動ロボットが一台である場合の効果に加えて、更に大きな効果を得ることができる。
【0053】
また、上記の自律型移動ロボットにおいて、前記第1の通信対象自律型移動ロボットは、複数の第1の通信対象自律型移動ロボットを含み、前記通信部は、前記複数の第1の通信対象自律型移動ロボットのそれぞれから前記第1情報を受信してもよい。
【0054】
この構成によれば、複数の第1の通信対象自律型移動ロボットのそれぞれから第1情報が受信されるので、自律型移動ロボットと複数の第1の通信対象自律型移動ロボットとを連携して移動させることができ、複数の第1の通信対象自律型移動ロボットとの通信の復旧と自律型移動ロボットの本来の目的のための移動とを両立させることができる。
【0055】
また、上記の自律型移動ロボットにおいて、前記通信部は、更に、前記自律型移動ロボットと前記ネットワークを構成する、前記自律型移動ロボット及び前記第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、前記第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信し、前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、前記第2情報に基づいて前記第2制御量を決定してもよい。
【0056】
この構成によれば、自律型移動ロボットとネットワークを構成する、自律型移動ロボット及び第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報が受信される。第1情報が受信されなくなったことが検知された場合、第2情報に基づいて第2制御量が決定される。
【0057】
したがって、第1の通信対象自律型移動ロボットからの第1情報が受信されなくなったことが検知された場合、第2の通信対象自律型移動ロボットからの第2情報に基づいて第2制御量が決定されるので、自律型移動ロボットと第2の通信対象自律型移動ロボットとを連携して移動させることができ、第1の通信対象自律型移動ロボットとの通信の復旧と自律型移動ロボット及び第2の通信対象自律型移動ロボットの本来の目的のための移動とを両立させることができる。
【0058】
また、上記の自律型移動ロボットにおいて、前記第2の通信対象自律型移動ロボットは、複数の第2の通信対象自律型移動ロボットを含み、前記通信部は、前記複数の第2の通信対象自律型移動ロボットのそれぞれから前記第2情報を受信してもよい。
【0059】
この構成によれば、複数の第2の通信対象自律型移動ロボットのそれぞれから第2情報が受信されるので、、自律型移動ロボットと複数の第2の通信対象自律型移動ロボットとを連携して移動させることができ、複数の第1の通信対象自律型移動ロボットとの通信の復旧と自律型移動ロボット及び複数の第2の通信対象自律型移動ロボットの本来の目的のための移動とを両立させることができる。
【0060】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記自律型移動ロボットの現在位置を示す第3情報を取得し、前記第1情報と前記第3情報とに基づいて前記自律型移動ロボットと前記第1の通信対象自律型移動ロボットとの距離を算出し、前記距離に基づいて前記第2制御量を決定してもよい。
【0061】
この構成によれば、自律型移動ロボットの現在位置を示す第3情報が取得される。第1情報と第3情報とに基づいて自律型移動ロボットと第1の通信対象自律型移動ロボットとの距離が算出される。距離に基づいて第2制御量が決定される。
【0062】
したがって、自律型移動ロボットと第1の通信対象自律型移動ロボットとの距離に基づいて第2制御量が決定されるので、より効率的に、通信の復旧と本来の目的とを両立させることができる。
【0063】
特に、複数の自律型移動ロボットが存在する場合には、個々の自律型移動ロボットと第1の通信対象自律型移動ロボットとの距離に基づいて、それぞれの自律型移動ロボットにおける、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動の比重が決まるので、より効率的に、自律型移動ロボットの本来の目的のための移動を優先させる自律型移動ロボットと、第1の通信対象自律型移動ロボットとの通信の復旧のための移動を優先させる自律型移動ロボットとの役割分担が決まり、複数の自律型移動ロボット全体の動きとして、より効率的に、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動とを両立させることができる。
【0064】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記距離が短いほど、前記第2移動距離、前記第2速度絶対値、又は前記第2加速度絶対値を小さくしてもよい。
【0065】
この構成によれば、自律型移動ロボットと第1の通信対象自律型移動ロボットとの距離が長いほど、第2移動距離、第2速度絶対値、又は第2加速度絶対値を大きくすることにより、第1の通信対象自律型移動ロボットとの通信の復旧を優先することになるので、より早く通信を復旧させることができる。
【0066】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記距離が長いほど、前記第2移動距離、前記第2速度絶対値、又は前記第2加速度絶対値を小さくしてもよい。
【0067】
この構成によれば、自律型移動ロボットと第1の通信対象自律型移動ロボットとの距離が長いほど、第2移動距離、第2速度絶対値、又は第2加速度絶対値を小さくすることにより、第1の通信対象自律型移動ロボットとの通信が切断されなかった場合の移動を優先することになるので、より効率的に、通信の復旧と本来の目的とを両立させることができる。
【0068】
特に、複数の自律型移動ロボットが存在する場合には、個々の自律型移動ロボットと第1の通信対象自律型移動ロボットとの距離が長いほど、それぞれの自律型移動ロボットにおける、自律型移動ロボットの本来の目的のための移動の比重が大きくなるので、より効率的に、自律型移動ロボットの本来の目的のための移動を優先させる自律型移動ロボットと、第1の通信対象自律型移動ロボットとの通信の復旧のための移動を優先させる自律型移動ロボットとの役割分担が決まるので、複数の自律型移動ロボット全体の動きとして、より効率的に、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動とを両立させることができる。
【0069】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、前記第2制御コマンドを前記駆動部に出力してから所定時間経過後に、前記第3制御量から前記第1制御量に切り替えて前記自律型移動ロボットを移動させる第3制御コマンドを前記駆動部に出力してもよい。
【0070】
この構成によれば、第1情報が受信されなくなったことが検知された場合、第2制御コマンドが駆動部に出力されてから所定時間経過後に、第3制御量から第1制御量に切り替えて自律型移動ロボットを移動させる第3制御コマンドが駆動部に出力される。
【0071】
したがって、通信を復旧させるための移動を行った後、所定時間が経過しても通信が復旧しなかった場合、通信を復旧させるための移動を中止することができ、通信を復旧させるための移動が際限なく行われるのを防止することができる。
【0072】
また、上記の自律型移動ロボットにおいて、前記第1情報は、前記第1位置を含み、前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、前記第1位置と、前記第2制御コマンドが前記駆動部に出力された後の前記自律型移動ロボットの位置を示す第3位置との距離が所定値以下であるか否かを判断し、前記距離が所定値以下であると判断した場合、前記第3制御量から前記第1制御量に切り替えて前記自律型移動ロボットを移動させる第3制御コマンドを前記駆動部に出力してもよい。
【0073】
この構成によれば、第1情報は、第1位置を含む。第1情報が受信されなくなったことが検知された場合、第1位置と、第2制御コマンドが駆動部に出力された後の自律型移動ロボットの位置を示す第3位置との距離が所定値以下であるか否かが判断される。距離が所定値以下であると判断された場合、第3制御量から第1制御量に切り替えて自律型移動ロボットを移動させる第3制御コマンドが駆動部に出力される。
【0074】
したがって、通信を復旧させるための移動を行った後、自律型移動ロボットと通信対象自律型移動ロボットとの間の距離が所定値以下に近づいたとしても通信が復旧しなかった場合、通信を復旧させるための移動を中止することができ、通信を復旧させるための移動が際限なく行われるのを防止することができる。
【0075】
また、上記の自律型移動ロボットにおいて、前記自律型移動ロボットは、メモリをさらに備え、前記通信部は、更に、前記自律型移動ロボットと前記ネットワークを構成する、前記自律型移動ロボット及び前記第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、前記第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信し、前記メモリは、前記第1情報及び前記第2情報を含む第4情報を格納し、前記制御部は、前記第3制御コマンドを前記駆動部に出力した時、前記メモリに格納された前記第4情報から前記第1情報を削除することによって前記第4情報を更新してもよい。
【0076】
この構成によれば、自律型移動ロボットとネットワークを構成する、自律型移動ロボット及び第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報が受信される。自律型移動ロボットが備えるメモリは、第1情報及び第2情報を含む第4情報を格納する。第3制御コマンドが駆動部に出力された時、メモリに格納された第4情報から第1情報を削除することによって第4情報が更新される。
【0077】
したがって、第3制御コマンドが駆動部に出力された時、メモリに格納された第4情報から第1情報を削除することによって第4情報が更新されるので、既に通信の復旧に失敗した第1の通信対象自律型移動ロボットとの通信を復旧させるための移動を再開して、通信復旧移動の中止と再開とを際限なく繰り返すのを防止することができる。
【0078】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記第4情報を更新したとき、前記通信部に対して、前記第4情報を前記第2の通信対象自律型移動ロボットへ送信させてもよい。
【0079】
この構成によれば、第4情報を更新したとき、第4情報が第2の通信対象自律型移動ロボットへ送信されるので、第2の通信対象自律型移動ロボットにおいても、通信復旧移動の中止と再開とを際限なく繰り返すのを防止することができる。
【0080】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記第1情報が前記通信部によって受信されなくなったことを検知した後、前記第1情報が再度前記通信部によって受信されるようになったことを検知した場合、前記第3制御量から前記第1制御量に切り替えて前記自律型移動ロボットを移動させる第3制御コマンドを前記駆動部に出力してもよい。
【0081】
この構成によれば、第1情報が受信されなくなったことが検知された後、第1情報が再度受信されるようになったことが検知された場合、第3制御量から第1制御量に切り替えて自律型移動ロボットを移動させる第3制御コマンドが駆動部に出力される。
【0082】
したがって、通信を復旧させるための移動を行った後、通信が復旧した場合、通信を復旧させるための移動を中止することができ、通信を復旧させるための移動が際限なく行われるのを防止することができる。
【0083】
また、上記の自律型移動ロボットにおいて、前記第1の通信対象自律型移動ロボットは、複数の第1の通信対象自律型移動ロボットを含み、前記通信部は、前記複数の第1の通信対象自律型移動ロボットのそれぞれから前記第1情報を再度受信してもよい。
【0084】
この構成によれば、第1情報が受信されなくなったことが検知された後、複数の第1の通信対象自律型移動ロボットのそれぞれから第1情報が再度受信されるようになったことが検知された場合、第3制御量から第1制御量に切り替えて自律型移動ロボットを移動させる第3制御コマンドが駆動部に出力される。
【0085】
したがって、通信を復旧させるための移動を行った後、複数の第1の通信対象自律型移動ロボットと通信が復旧した場合、通信を復旧させるための移動を中止することができ、通信を復旧させるための移動が際限なく行われるのを防止することができる。
【0086】
また、上記の自律型移動ロボットにおいて、前記自律型移動ロボットは、前記第1情報及び前記第2情報を含む第4情報を格納するメモリをさらに備え、前記第2の通信対象自律型移動ロボットは、前記自律型移動ロボットを示す情報と第3の通信対象自律型移動ロボットを示す情報とを含む第5情報から前記第3の通信対象自律型移動ロボットを示す情報を削除することによって前記第5情報を更新したとき、前記第5情報を前記自律型移動ロボットに送信し、前記通信部は、前記第2の通信対象自律型移動ロボットによって送信された前記第5情報を受信し、前記制御部は、前記メモリに格納されている前記第4情報を前記第5情報に更新してもよい。
【0087】
この構成によれば、自律型移動ロボットは、第1情報及び第2情報を含む第4情報を格納するメモリをさらに備える。第2の通信対象自律型移動ロボットは、自律型移動ロボットを示す情報と第3の通信対象自律型移動ロボットを示す情報とを含む第5情報から第3の通信対象自律型移動ロボットを示す情報を削除することによって第5情報を更新したとき、第5情報を自律型移動ロボットに送信する。自律型移動ロボットにおいて、第2の通信対象自律型移動ロボットによって送信された第5情報が受信される。メモリに格納されている第4情報が第5情報に更新される。
【0088】
したがって、第2の通信対象自律型移動ロボットにおいて、自律型移動ロボットを示す情報と第3の通信対象自律型移動ロボットを示す情報とを含む第5情報から第3の通信対象自律型移動ロボットを示す情報が削除された場合、第5情報が自律型移動ロボットに送信され、自律型移動ロボットのメモリに格納されている第4情報が第5情報に更新されるので、第2の通信対象自律型移動ロボットにおける判断結果を、自律型移動ロボットに反映させることができる。
【0089】
また、上記の自律型移動ロボットにおいて、前記第3の通信対象自律型移動ロボットは、前記第1の通信対象自律型移動ロボットであってもよい。
【0090】
この構成によれば、第2の通信対象自律型移動ロボットにおいて、自律型移動ロボットを示す情報と第1の通信対象自律型移動ロボットを示す情報とを含む第5情報から第1の通信対象自律型移動ロボットを示す情報が削除された場合、第5情報が自律型移動ロボットに送信され、自律型移動ロボットのメモリに格納されている第4情報が第5情報に更新されるので、第2の通信対象自律型移動ロボットにおける判断結果を、自律型移動ロボットに反映させることができ、自律型移動ロボットが既に通信の復旧に失敗した第1の通信対象自律型移動ロボットとの通信を復旧させるための移動を行うことを防止することができる。
【0091】
また、上記の自律型移動ロボットにおいて、前記通信部は、更に、前記自律型移動ロボットと前記ネットワークを構成する、前記自律型移動ロボット及び前記第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、前記第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信し、前記制御部は、前記第2情報に基づいて、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量を決定し、前記第4制御量に基づいて前記第1制御量を更新してもよい。
【0092】
この構成によれば、自律型移動ロボットとネットワークを構成する、自律型移動ロボット及び第1の通信対象自律型移動ロボットとは異なる第2の通信対象自律型移動ロボットから送信された、第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報が受信される。第2情報に基づいて、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量が決定され、第4制御量に基づいて第1制御量が更新される。
【0093】
したがって、第2の通信対象自律型移動ロボットの第2位置、第2速度、及び第2加速度のいずれかを示す第2情報に基づいて、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量が決定され、第4制御量に基づいて第1制御量を更新することができる。
【0094】
また、上記の自律型移動ロボットにおいて、前記第2情報は、前記第2位置を含み、前記制御部は、前記自律型移動ロボットの現在位置と前記第2位置とから算出された距離に基づいて、前記第4制御量を決定してもよい。
【0095】
この構成によれば、第2情報は、第2位置を含む。自律型移動ロボットの現在位置と第2位置とから算出された距離に基づいて、第4制御量が決定される。したがって、自律型移動ロボットと第2の通信対象自律型移動ロボットとの間の距離に基づいて、第4制御量を決定することができる。
【0096】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記距離が短いほど、前記第4移動距離、前記第4速度絶対値、又は前記第4加速度絶対値を小さくしてもよい。
【0097】
この構成によれば、自律型移動ロボットと第2の通信対象自律型移動ロボットとの間の距離が短いほど、第4移動距離、第4速度絶対値、又は第4加速度絶対値を小さくすることにより、第2の通信対象自律型移動ロボットとの通信を適切に維持することができる。
【0098】
また、上記の自律型移動ロボットにおいて、前記制御部は、前記距離が短いほど、前記第4移動距離、前記第4速度絶対値、又は前記第4加速度絶対値を大きくしてもよい。
【0099】
この構成によれば、自律型移動ロボットと第2の通信対象自律型移動ロボットとの間の距離が短いほど、第4移動距離、第4速度絶対値、又は第4加速度絶対値を大きくすることにより、第2の通信対象自律型移動ロボットとの通信が切断されないように制御することができる。
【0100】
また、上記の自律型移動ロボットにおいて、前記自律型移動ロボットは、前記自律型移動ロボットの移動経路を記憶するメモリをさらに備え、前記制御部は、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量に基づいて前記第1制御量を決定し、前記第4移動距離、前記第4速度絶対値、又は前記第4加速度絶対値は、所定値であり、前記第4移動方向、前記第4速度方向又は前記第4加速度方向は、前記移動経路によって特定される移動方向の逆方向であってもよい。
【0101】
この構成によれば、自律型移動ロボットは、自律型移動ロボットの移動経路を記憶するメモリをさらに備える。第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量に基づいて第1制御量が決定される。第4移動距離、第4速度絶対値、又は第4加速度絶対値は、所定値である。第4移動方向、第4速度方向又は第4加速度方向は、移動経路によって特定される移動方向の逆方向である。
【0102】
したがって、移動経路によって特定される移動方向の逆方向に移動することにより、通信が途絶する前の位置に戻ることができ、通信を迅速に復旧することができる。
【0103】
本開示の他の態様に係る移動制御方法は、通信対象自律型移動ロボットと通信しながら自律して移動する自律型移動ロボットにおける移動制御方法であって、第1移動距離及び第1移動方向の組み、第1速度絶対値及び第1速度方向の組み、並びに、第1加速度絶対値及び第1加速度方向の組みのいずれかを示す第1制御量で前記自律型移動ロボットを移動させる第1制御コマンドを出力し、前記自律型移動ロボットとネットワークを構成する、前記自律型移動ロボットとは異なる第1の通信対象自律型移動ロボットから送信された、前記第1の通信対象自律型移動ロボットの第1位置、第1速度、及び第1加速度のいずれかを示す第1情報を受信し、前記第1情報が前記通信部によって受信されなくなったことを検知した場合、既に受信された前記第1情報に基づいて前記自律型移動ロボットを移動させる、第2移動距離及び第2移動方向の組み、第2速度絶対値及び第2速度方向の組み、並びに、第2加速度絶対値及び第2加速度方向のいずれかを示す第2制御量を決定し、前記第1制御量と前記第2制御量に基づいて、第3移動距離及び第3移動方向の組み、第3速度絶対値及び第3速度方向の組み、並びに、第3加速度絶対値及び第3加速度方向の組みのいずれかを示す第3制御量を決定し、前記第1制御量から前記第3制御量に切り替えて前記自律型移動ロボットを移動させる第2制御コマンドを生成して出力する。
【0104】
この構成によれば、第1移動距離及び第1移動方向の組み、第1速度絶対値及び第1速度方向の組み、並びに、第1加速度絶対値及び第1加速度方向の組みのいずれかを示す第1制御量で自律型移動ロボットを移動させる第1制御コマンドが駆動部に出力される。自律型移動ロボットとネットワークを構成する、自律型移動ロボットとは異なる第1の通信対象自律型移動ロボットから送信された、第1の通信対象自律型移動ロボットの第1位置、第1速度、及び第1加速度のいずれかを示す第1情報が受信される。そして、第1情報が受信されなくなったことを検知した場合、既に受信された第1情報に基づいて自律型移動ロボットを移動させる、第2移動距離及び第2移動方向の組み、第2速度絶対値及び第2速度方向の組み、並びに、第2加速度絶対値及び第2加速度方向の組みのいずれかを示す第2制御量が決定される。第1制御量と第2制御量とに基づいて、第3移動距離及び第3移動方向の組み、第3速度絶対値及び第3速度方向の組み、並びに、第3加速度絶対値及び第3加速度方向の組みのいずれかを示す第3制御量が決定される。第1制御量から第3制御量に切り替えて自律型移動ロボットを移動させる第2制御コマンドが生成されて駆動部に出力される。
【0105】
したがって、第1制御量が自律型移動ロボットの本来の目的のための移動を制御する制御量であり、第2制御量が第1の通信対象自律型移動ロボットとの通信の復旧のための移動を制御する制御量である場合、第3制御量は第1制御量と第2制御量とに基づいて決定されるので、第1制御量から第3制御量に切り替えて自律型移動ロボットを移動させることにより、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動とを両立させることができる。
【0106】
更に、複数の自律型移動ロボットが存在するとともに、第3制御量を決定する際の第1制御量と第2制御量の比重が、個々の自律型移動ロボットごとに異なる場合、自律型移動ロボットの本来の目的のための移動の比重が大きい自律型移動ロボットと、第1の通信対象自律型移動ロボットとの通信の復旧のための移動の比重が大きい自律型移動ロボットとが存在することになり、複数の自律型移動ロボット全体の動きとしては、自律型移動ロボットの本来の目的のための移動を優先させる自律型移動ロボットと、第1の通信対象自律型移動ロボットとの通信の復旧のための移動を優先させる自律型移動ロボットとで役割分担することで、結果的に連携して移動し、自律型移動ロボットの本来の目的のための移動と第1の通信対象自律型移動ロボットとの通信の復旧のための移動とを両立させることができるので、自律型移動ロボットが一台である場合の効果に加えて、更に大きな効果を得ることができる。
【0107】
なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることも出来る。
【0108】
(実施の形態1)
図6は、本開示の実施の形態1における、複数の移動体によって構成されるアドホックネットワークの全体像を示す概念図である。
【0109】
図6において、アドホックネットワーク1は、通信機能を有する移動体101−107から構成されている。移動体を示す円の間に引かれている実線は、それらの移動体間で直接通信が可能であることを示している。以下、本明細書でアドホックネットワークを図示する際には、移動体を円で図示し、移動体間で直接通信が可能であることを、それらの円の間に引かれた実線で示すこととする。
【0110】
移動体101と移動体102とは互いに直接通信可能であり、移動体102と移動体103とは互いに直接通信可能であり、移動体102と移動体104とは互いに直接通信可能であり、移動体103と移動体104とは互いに直接通信可能であり、移動体104と移動体105とは互いに直接通信可能であり、移動体105と移動体106とは互いに直接通信可能であり、移動体106と移動体107とは互いに直接通信可能である。
【0111】
また、移動体101−107は、自分以外の複数の移動体間の通信を中継することができる。従って、例えば、移動体101と移動体107とは、移動体102、移動体104、移動体105及び移動体106という経路で通信を中継してもらうか、又は、移動体102、移動体103、移動体104、移動体105及び移動体106という経路で通信を中継してもらうことによって、間接的に通信を行うことができる。
【0112】
また、移動体101−107は、任意の方向に移動している。
図6において、白色の矢印は、各移動体の移動方向を示している。以下、本明細書で移動体の移動方向を図示する際には、このような白色の矢印で示すこととする。
【0113】
なお、
図6は、水平な二次元平面を、重力の向きと反対方向にある視点から眺めた図であり、
図6の右側が東方向、左側が西方向、上側が北方向、下側が南方向である。以下、本明細書では、特に明記しない限り、アドホックネットワークを構成する移動体を図示した平面図は、水平な二次元平面を、重力の向きと反対方向にある視点から眺めた図であり、図面の右側が東方向、左側が西方向、上側が北方向、下側が南方向であるとする。また、
図6では、簡単のため、移動体が二次元平面上を移動している例を示したが、本開示は、二次元平面上を移動する移動体の移動のみに制限されるものではなく、三次元空間内を移動する移動体の移動にも適用可能であることは、言うまでもない。
【0114】
通信機能を有する移動体の具体例としては、通信機能を有するドローン(無人飛行体)、通信機能を有する自律ロボット、人間が運転する通信機能を有する車両、通信機能を有する掃除ロボット、又は通信機を携帯した人間、など、多種多様な形態が存在する。
【0115】
以下、移動体101−107の機能構成と全体の動作について詳しく説明する。なお、移動体102−107の機能構成又は全体の動作のうち、移動体101と同様である部分については、移動体101についてのみ説明し、移動体102−107の説明は省略する。
【0116】
図7は、本開示の実施の形態1における移動体101の概観図であり、
図8は、本開示の実施の形態1における移動体101の機能構成を示すブロック図である。
図8において、
図6と同じ構成要素については同じ符号を用い、説明を省略する。
【0117】
図7に示すように、移動体(自律型移動ロボット)101は、本体A1と、移動体101の推進力を発生させる移動制御部605とを備える。移動制御部605は、本体A1から四方へ延在する支持部A2の先端に取り付けられる。本体A1の上側には、位置検出部604が取り付けられている。また、本体A1の内部には、通信部601、制御部602及び記憶部603を備えている。
【0118】
図8に示すように、移動体101は、通信部601、制御部602、記憶部603、位置検出部604及び移動制御部605を備える。
【0119】
通信部601は、Wi−Fiなどの通信技術を用いて、他の移動体(通信対象自律型移動ロボット)と通信を行い、情報の送受信を行う。また、通信部601は、他の移動体間の通信の中継も行う。
【0120】
制御部602は、通信部601、記憶部603、位置検出部604及び移動制御部605を制御する。
【0121】
記憶部603は、自身に関する情報である自移動体情報と、他の移動体から送信された他の移動体に関する情報である他移動体情報とを記憶する。記憶部603に記憶される情報の詳細については、
図9、
図10及び
図11を用いて後述する。
【0122】
位置検出部604は、自身の現在の位置情報を検出する。位置検出部604は、例えば、GPS(Global Positioning System)により自身の位置情報を測定する。
【0123】
移動制御部605は、制御部602からの指示を受け、自身の移動を制御する。具体的には、移動制御部605は、プロペラと、プロペラを回転させるモータとからなる。
図7では、移動体101は4個の移動制御部605を備えているがこれに限定されない。例えば、移動体101は、5個以上の移動制御部605を備えてもよい。制御部602は、移動制御部605のプロペラの回転数を適宜制御することで、移動体101の移動方向又は飛行状態を制御する。移動制御部605は、移動体101を駆動する。
【0124】
制御部602は、第1移動距離及び第1移動方向の組み、第1速度絶対値及び第1速度方向の組み、並びに、第1加速度絶対値及び第1加速度方向の組みのいずれかを示す第1制御量(基本移動ベクトル群情報)で移動体101を移動させる第1制御コマンドを移動制御部605に出力する。
【0125】
通信部601は、移動体101とネットワークを構成する、移動体101とは異なる第1の通信対象移動体(例えば、移動体105)から送信された、移動体105の第1位置、第1速度、及び第1加速度のいずれかを示す第1情報を受信する。
【0126】
制御部602は、第1情報が通信部601によって受信されなくなったことを検知した場合、既に受信された第1情報に基づいて移動体101を移動させる、第2移動距離及び第2移動方向の組み、第2速度絶対値及び第2速度方向の組み、並びに、第2加速度絶対値及び第2加速度方向の組みのいずれかを示す第2制御量(分断復旧ベクトル情報)を決定する。制御部602は、第1制御量と第2制御量とに基づいて、第3移動距離及び第3移動方向の組み、第3速度絶対値及び第3速度方向の組み、並びに、第3加速度絶対値及び第3加速度方向の組みのいずれかを示す第3制御量(実移動ベクトル情報)を決定する。制御部602は、第1制御量から第3制御量に切り替えて移動体101を移動させる第2制御コマンドを生成して移動制御部605に出力する。
【0127】
なお、通信部601は、複数の移動体(例えば、移動体105,106,107)のそれぞれから第1情報を受信してもよい。
【0128】
また、通信部601は、更に、移動体101とネットワークを構成する、移動体101及び移動体105とは異なる第2の通信対象移動体(例えば、移動体102)から送信された、移動体102の第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信する。制御部602は、第1情報が通信部601によって受信されなくなったことを検知した場合、第2情報に基づいて第2制御量を決定する。
【0129】
なお、通信部601は、複数の移動体(例えば、移動体102,103,104)のそれぞれから第2情報を受信してもよい。
【0130】
図9は、本開示の実施の形態1における、移動体101の記憶部603に記憶される情報の一例を示す図である。
図9において、
図6及び
図8と同じ構成要素については同じ符号を用い、説明を省略する。
【0131】
記憶部603は、移動体101自身に関する情報である自移動体情報701と、他の移動体に関する情報である他移動体情報702とを記憶する。
【0132】
自移動体情報701は、自身をユニークに識別するための移動体識別情報と、位置検出部604によって検出した自身の位置情報と、自身及びアドホックネットワークを介した通信を行うことが可能な移動体の移動体識別情報から成る既知群情報と、アドホックネットワークを介した通信を行うことが不可能な移動体の移動体識別情報から成る不明群情報と、不明群が存在する場合の通信の復旧のための移動における目標位置の位置情報である目標位置情報と、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群に関する情報である基本移動ベクトル群情報と、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルに関する情報である分断復旧ベクトル情報と、実際の移動を規定する実移動ベクトルに関する情報である実移動ベクトル情報とから構成される。
【0133】
他移動体情報702は、他の移動体をユニークに識別するための移動体識別情報と、他の移動体の位置を示す位置情報とから構成される。
【0134】
図10は、本開示の実施の形態1における、移動体101の記憶部603に記憶する自移動体情報701の一例を示す図である。
図10において、
図6及び
図9と同じ構成要素については同じ符号を用い、説明を省略する。
【0135】
移動体101は、例えば、
図10に示す形式で、自移動体情報701を記憶部603に記憶する。自移動体情報701は、自身をユニークに識別するための移動体識別情報と、位置検出部604によって検出した自身の位置情報と、自身及びアドホックネットワークを介した通信を行うことが可能な移動体の移動体識別情報から成る既知群情報と、アドホックネットワークを介した通信を行うことが不可能な移動体の移動体識別情報から成る不明群情報と、不明群が存在する場合の通信の復旧のための移動における目標位置の位置情報である目標位置情報と、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群に関する情報である基本移動ベクトル群情報と、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルに関する情報である分断復旧ベクトル情報と、実際の移動を規定する実移動ベクトルに関する情報である実移動ベクトル情報とを含む。
【0136】
ここで、移動ベクトルとは、移動体の移動を制御するためのベクトルで、典型的には、移動の変位、速度又は加速度を表す。
【0137】
図10に示す自移動体情報701は、自身の移動体識別情報の値が「移動体101」であり、自身の位置情報の値が「北緯34度41分37.0秒、東経135度30分7.1秒、海抜2m」であり、既知群情報の値が「移動体101、移動体102、移動体103、移動体104」であり、不明群情報の値が「移動体105、移動体106、移動体107」であり、目標位置情報の値が「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」であり、基本移動ベクトル群情報の主基本移動ベクトルの値が「(−5m/s,−2m/s,0m/s)」であり、基本移動ベクトル群情報の障害物回避基本移動ベクトルの値が「(0m/s,5m/s,0m/s)」であり、分断復旧ベクトル情報の値が「(10m/s,2m/s,0m/s)」であり、実移動ベクトル情報の値が「(7.5m/s,6m/s,0m/s)」であることを示している。
【0138】
図10では、位置情報は、緯度、経度及び海抜高度によって表現している。なお、もちろん、位置情報は、他の表現方法を用いても構わない。位置情報は、例えば、x軸、y軸、z軸からなる直交座標系を用いて表現してもよく、特定の地点を起点として、東方向をx軸の正の向きとし、北方向をy軸の正の向きとし、重力の向きと反対方向をz軸の正の向きとしてもよい。以下、本明細書では、特に明記しない限り、位置情報については、緯度、経度及び海抜高度によって表現する形式を用いて説明する。
【0139】
なお、移動ベクトル(制御量)は、移動距離及び移動方向の組み、速度絶対値及び速度方向の組み、並びに、加速度絶対値及び加速度方向の組みのいずれかを示す。
【0140】
図10では、移動ベクトルは、速度で表され、秒速(m/s)を単位として、x軸、y軸、z軸からなる直交座標系を用いて表現しており、東方向をx軸の正の向きとし、北方向をy軸の正の向きとし、重力の向きと反対方向をz軸の正の向きとしている。なお、もちろん、移動ベクトルは変位又は加速度であってもよく、他の表現方法を用いてもよい。例えば、移動ベクトルは、単位時間あたりの緯度の差分、経度の差分及び海抜高度の差分によって表現されてもよい。以下、本明細書では、特に明記しない限り、移動ベクトルについては、速度とし、秒速(m/s)を単位として、x軸、y軸、z軸からなる直交座標系を用いて表現し、東方向をx軸の正の向きとし、北方向をy軸の正の向きとし、重力の向きと反対方向をz軸の正の向きとして、説明する。
【0141】
図10では、基本移動ベクトル群情報は、主基本移動ベクトル情報と、障害物回避基本移動ベクトル情報との組みで表現される。すなわち、基本移動ベクトル群は、主基本移動ベクトルと、障害物回避基本移動ベクトルとの組みであるとしている。ここで、主基本移動ベクトルとは、移動体が本来の目的を達成する為の移動を表現した移動ベクトルである。また、障害物回避基本移動ベクトルとは、移動体が近くに存在する障害物を回避する為の移動を表現した移動ベクトルである。なお、基本移動ベクトル群を構成する移動ベクトルの数と、それらの移動ベクトルが表現する移動内容には、もちろん、様々なバリエーションが考えられ、本開示の主旨とは無関係であることは言うまでもない。以下、本明細書では、特に明記しない限り、基本移動ベクトル群については、ここで説明した主基本移動ベクトルと障害物回避基本移動ベクトルとの組みを用いて説明する。
【0142】
図11は、本開示の実施の形態1における、移動体101の記憶部603に記憶する他移動体情報702の一例を示す図である。
図11において、
図6及び
図9と同じ構成要素については同じ符号を用い、説明を省略する。
【0143】
移動体101は、例えば、
図11に示す形式で、他移動体情報702を記憶部603に記憶する。他移動体情報702は、他の移動体をユニークに識別するための移動体識別情報と、他の移動体から受信した他の移動体の位置情報とを含む。
【0144】
図11に示す他移動体情報702は、移動体102の移動体識別情報の値が「移動体102」であり、移動体102の位置情報の値が「北緯34度41分37.5秒、東経135度30分7.6秒、海抜2m」であることを示している。移動体103−107の移動体識別情報及び位置情報についても、同様である。
【0145】
制御部602は、基本移動ベクトル群で移動体101を移動させる制御コマンドを生成し、移動制御部605へ出力する。移動制御部605は、制御コマンドに従って実際に移動体101を移動させる。
【0146】
図12は、本開示の実施の形態1における、移動体101の移動制御の全体動作を示すフローチャートである。
【0147】
まず、移動体101の制御部602は、アドホックネットワークを介して、移動体102−107と通信を試み、通信が行えたか否かに従って、アドホックネットワークを介した通信を行うことが可能な移動体のグループである既知群と、アドホックネットワークを介した通信を行うことが不可能な移動体のグループである不明群とを、それぞれ特定する(ステップS1001)。そして、制御部602は、自移動体情報701のうち、既知群に属する全ての移動体の移動体識別情報から成る既知群情報と、不明群に属する全ての移動体の移動体識別情報から成る不明群情報とを更新する。
【0148】
次に、移動体101の制御部602は、既知群の位置情報を更新する(ステップS1002)。このとき、位置検出部604は、自身の位置情報を検出し、自移動体情報701の位置情報を更新する。更に、通信部601は、既知群に属する全ての移動体に対して、アドホックネットワークを介して、移動体識別情報と位置情報とを送信するよう要求し、既知群に属する移動体から移動体識別情報と位置情報とを受信する。そして、制御部602は、他移動体情報702の位置情報を更新する。
【0149】
次に、移動体101の制御部602は、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群を決定する(ステップS1003)。そして、制御部602は、基本移動ベクトル群の情報である基本移動ベクトル群情報を作成し、自移動体情報701の基本移動ベクトル群情報を更新する。
【0150】
図13は、本開示の実施の形態1における、基本移動ベクトル群の一例を示す概念図である。
図13において、
図6と同じ構成要素については同じ符号を用い、説明を省略する。
【0151】
図13に示した場面では、移動体101は、本来の目的を達成する為に、何の制約もなければ、西方向に5m/s、南方向に2m/sで移動するのが最善であるとする。この場合、主基本移動ベクトル1101は、(−5m/s,−2m/s,0m/s)となる。
【0152】
ところが、移動体101の西方向には、障害物が存在している。このため、移動体101は、この障害物を迂回して移動する必要がある。このため、障害物を迂回するために、北に5m/sの速度で移動する動作が必要であるとする。この場合、障害物回避基本移動ベクトル1102は、(0m/s,5m/s,0m/s)となる。
【0153】
次に、移動体101の制御部602は、不明群に属する移動体が存在するか否かを判断する(ステップS1004)。
【0154】
ステップS1004で不明群に属する移動体が存在しないと判断された場合(ステップS1004でNO)、移動体101の制御部602は、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、以下で説明するステップS1008の処理に移行する。
【0155】
例えば、
図13に示す場面では、不明群は存在せず、移動体101−107が全て既知群に属しているので、移動体101の制御部602は、分断復旧ベクトルの大きさを0に決定し、以下で説明するステップS1008の処理に移行する。
【0156】
一方、ステップS1004で不明群に属する移動体が存在すると判断された場合(ステップS1004でYES)、制御部602は、ステップS1005−ステップS1007の処理を実行する。
【0157】
ステップS1004で不明群に属する移動体が存在すると判断された場合、まず、移動体101の制御部602は、他移動体情報702から、不明群に属する全ての移動体の位置情報を取得する(ステップS1005)。
【0158】
図14は、本開示の実施の形態1における、1の移動体105が故障した場合の、既知群に属する移動体101−104と不明群に属する移動体105−107とを示す概念図である。
図14において、
図6と同じ構成要素については同じ符号を用い、説明を省略する。
【0159】
図14に示すように、移動体105の故障によって、移動体104と移動体105との間の直接通信が切断されるので、移動体101−104のそれぞれは、移動体105だけではなく、移動体106−107との間のアドホックネットワークを介した通信が切断される。従って、既知群1201に属する移動体は、移動体101−104であり、不明群1202に属する移動体は、移動体105−107である。
【0160】
図15は、本開示の実施の形態1における、1の移動体105が故障した場合の、既知群に属する移動体106−107と不明群に属する移動体101−104とを示す概念図である。
図15において、
図6と同じ構成要素については同じ符号を用い、説明を省略する。
【0161】
図15に示すように、移動体105の故障によって、移動体106と移動体105との間の直接通信が切断されるので、移動体106−107のそれぞれは、移動体105だけではなく、移動体101−104との間のアドホックネットワークを介した通信が切断される。従って、既知群1301に属する移動体は、移動体106−107であり、不明群1302に属する移動体は、移動体101−105である。
【0162】
次に、移動体101の制御部602は、ステップS1005で取得した不明群に属する移動体の位置情報に基づいて、一つ以上の目標位置を決定する(ステップS1006)。
【0163】
目標位置は、例えば、不明群に属する全ての移動体の位置の中心位置、又は不明群に属する全ての移動体の位置のうち、自身に最も近い位置である。
【0164】
図16は、本開示の実施の形態1において、1の移動体105が故障した場合の、他の移動体101−104のそれぞれにおける、目標位置の決定方法と、当該決定方法によって決定された目標位置との一例を示す図である。
図16において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。なお、移動体105−107のそれぞれは、
図11の他移動体情報702に記載した位置に存在するとする。
【0165】
例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、移動体101−104のそれぞれの目標位置は、
図16の目標位置1401となり、目標位置1401の値は「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」となる。また、不明群に属する全ての移動体の位置のうち、自身に最も近い移動体の位置を目標位置として決定する場合には、移動体101−104のそれぞれの目標位置は、
図16の目標位置1402、すなわち、移動体105の位置となり、目標位置1402の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。
【0166】
図17は、本開示の実施の形態1において、1の移動体105が故障した場合の、他の移動体106−107のそれぞれにおける、目標位置の決定方法と、当該決定方法によって決定された目標位置との一例を示す図である。
図17において、
図6及び
図15と同じ構成要素については同じ符号を用い、説明を省略する。なお、移動体101−105のそれぞれは、
図11の他移動体情報702に記載した位置に存在するとする。
【0167】
例えば、不明群に属する全ての移動体の位置の中位置を目標位置として決定する場合には、移動体106−107のそれぞれの目標位置は、
図17の目標位置1501となり、目標位置1501の値は「北緯34度41分37.48秒、東経135度30分7.82秒、海抜2m」となる。また、不明群に属する全ての移動体の位置のうち、自身に最も近い移動体の位置を目標位置として決定する場合には、目標位置は、
図17の目標位置1502、すなわち、移動体105の位置となり、目標位置1502の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。
【0168】
次に、移動体101の制御部602は、自移動体情報701の位置情報と、他移動体情報702の位置情報とから、アドホックネットワークを構成する全ての移動体を示す構成群に属するそれぞれの移動体の最新の位置を示す構成群位置情報を取得し、構成群位置情報に基づいて、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルを決定する(ステップS1007)。そして、制御部602は、分断復旧ベクトルの情報である分断復旧ベクトル情報を作成し、自移動体情報701の分断復旧ベクトル情報を更新する。
【0169】
例えば、自身との距離が一定の値以下の移動体が一つ以上存在する場合には、自身と一つ以上の移動体とのうち、いずれか一つの移動体のみの分断復旧ベクトルは、目標位置に向かう向きを持つとともに一定の大きさを有する分断復旧ベクトルに決定され、他の移動体の分断復旧ベクトルは、大きさが0である分断復旧ベクトルに決定される。
【0170】
ここで、分断復旧ベクトルの一例を説明する。以下の説明では、移動体101−107が、不明群に属する全ての移動体の位置の中心位置を目標位置として決定し、かつ、自身との距離が一定の値以下の移動体が一つ以上存在する場合には、自身と一つ以上の移動体とのうち、いずれか一つの移動体のみが目標位置に向かう向きを持つとともに一定の大きさを有する分断復旧ベクトルを決定し、他の移動体は大きさが0の分断復旧ベクトルを決定する。
【0171】
図18は、本開示の実施の形態1において、1の移動体105が故障した場合の、他の移動体101−104のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図18において、
図6、
図14及び
図16と同じ構成要素については同じ符号を用い、説明を省略する。
【0172】
移動体101の制御部602は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図18では、移動体101−104のそれぞれとの距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体101の判定円の範囲内には他の移動体が存在しないので、移動体101の制御部602は、自身の分断復旧ベクトルを、目標位置1401に向かう向きを持ち、一定の大きさの分断復旧ベクトル1601(10m/s,2m/s,0m/s)に決定する。
【0173】
また、移動体102及び移動体103の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体102の判定円の範囲内には移動体103が存在し、移動体103の判定円の範囲内には移動体102が存在するので、移動体102と移動体103とは互いに通信し、移動体103のみが目標位置1401に向かうと決定される。そして、移動体102の制御部602は、自身の分断復旧ベクトルを、大きさが0の分断復旧ベクトル1602に決定し、移動体103の制御部602は、自身の分断復旧ベクトルを、目標位置1401に向かう向きを持ち、一定の大きさの分断復旧ベクトル1603(10.1m/s,1m/s,0m/s)に決定する。
【0174】
また、移動体104の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体104の判定円の範囲内には他の移動体が存在しないので、移動体104の制御部602は、自身の分断復旧ベクトルを、目標位置1401に向かう向きを持ち、一定の大きさの分断復旧ベクトル1604(10m/s,−2m/s,0m/s)に決定する。
【0175】
図19は、本開示の実施の形態1において、1の移動体105が故障した場合の、他の移動体106−107のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図19において、
図6、
図15及び
図17と同じ構成要素については同じ符号を用い、説明を省略する。
【0176】
移動体106の制御部602は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図19では、移動体106−107のそれぞれとの距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体106の判定円の範囲内には他の移動体が存在しないので、移動体106の制御部602は、自身の分断復旧ベクトルを、目標位置1501に向かう向きを持ち、一定の大きさの分断復旧ベクトル1706(−10m/s,−2m/s,0m/s)に決定する。
【0177】
また、移動体107の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体107の判定円の範囲内には他の移動体が存在しないので、移動体107の制御部602は、自身の分断復旧ベクトルを、目標位置1501に向かう向きを持ち、一定の大きさの分断復旧ベクトル1707(−10.1m/s,1m/s,0m/s)に決定する。
【0178】
次に、移動体101の制御部602は、基本移動ベクトル群に属する全ての移動ベクトルと、分断復旧ベクトルに対してそれぞれ0以外の値を乗じた移動ベクトルとの和を計算し、計算結果の移動ベクトルを実移動ベクトルとして決定する(ステップS1008)。そして、制御部602は、実移動ベクトルの情報である実移動ベクトル情報を作成し、自移動体情報701の実移動ベクトル情報を更新する。
【0179】
図20は、本開示の実施の形態1において、1の移動体105が故障した場合の、他の移動体101における、実移動ベクトルの決定方法の一例を示す概念図である。
図20において、
図6、
図13、
図14、
図16及び
図18と同じ構成要素については同じ符号を用い、説明を省略する。
【0180】
ここでは、制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の各移動ベクトルの和を計算する。なお、基本移動ベクトル群に属するそれぞれの移動ベクトルに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0181】
図20に示したように、これまで説明してきた通り、今回の例では、移動体101の主基本移動ベクトル1101は(−5m/s,−2m/s,0m/s)であり、障害物回避基本移動ベクトル1102は(0m/s,5m/s,0m/s)であり、分断復旧ベクトル1601は(10m/s,2m/s,0m/s)であるから、計算結果の移動ベクトルは(7.5m/s,6m/s,0m/s)となる。移動体101の制御部602は、計算結果の移動ベクトル(7.5m/s,6m/s,0m/s)を実移動ベクトル1801として決定する。
【0182】
移動体101は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、主基本移動ベクトル1101(−5m/s,−2m/s,0m/s)に0.5を乗じたベクトルと、障害物回避基本移動ベクトル1102(0m/s,5m/s,0m/s)に1を乗じたベクトルと、ステップS1010で決定した大きさ0の分断復旧ベクトルに1を乗じたベクトルとを加算して求まる実移動ベクトル(−2.5m/s,4m/s,0m/s)に従って移動する。そのため、
図13に示したように、移動体101は、障害物を避けてほぼ北北西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体101は、
図20に示したように、実移動ベクトル1801(7.5m/s,6m/s,0m/s)に従って、ほぼ北東に向かって移動し、通信の復旧を図ることになる。
【0183】
移動体102−104,106−107の実移動ベクトルも、移動体101の場合と同様にして決定される。
【0184】
図21は、本開示の実施の形態1において、1の移動体105が故障した場合の、他の移動体101−104,106−107における、実移動ベクトルの一例を示す概念図である。
図21において、
図6及び
図20と同じ構成要素については同じ符号を用い、説明を省略する。
【0185】
ここでは、移動体102−104の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体106−107の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0186】
また、ここでは、制御部602は、主基本移動ベクトルに0.5を乗じ、障害物回避基本移動ベクトルに1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。
【0187】
移動体103は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(−5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体103は、
図21に示したように、実移動ベクトル2703(5.1m/s,1m/s,0m/s)に従って、ほぼ東北東に向かって移動し、通信の復旧を図ることになる。
【0188】
移動体104は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(−5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体104は、
図21に示したように、実移動ベクトル2704(5m/s,−2m/s,0m/s)に従って、ほぼ東南東に向かって移動し、通信の復旧を図ることになる。
【0189】
一方で、移動体102は、分断復旧ベクトル1602の大きさが0であるので、移動体105が故障して、不明群に属する移動体が出現した後も、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図21に示したように、実移動ベクトル2702(−5m/s,0m/s,0m/s)に従って、西に向かって移動し、本来の目的を遂行することができる。
【0190】
このように、移動体101、移動体103及び移動体104は主として通信復旧動作を行い、移動体102は不明群が存在しなかった場合の移動を行うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。通信復旧動作を開始した時点における移動体102と移動体103との距離は、
図18に示す判定円の半径以下であるので、移動体102と移動体103との間の直接通信が直ちに切断されるリスクは小さい。
【0191】
移動体105が故障したことにより、移動体101−104とは通信ができなくなっている、移動体106−107についても、上記と同様である。
【0192】
移動体106は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、東に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体106は、
図21に示したように、実移動ベクトル2706(−5m/s,−2m/s,0m/s)に従って、ほぼ西南西に向かって移動し、通信の復旧を図ることになる。
【0193】
移動体107は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、東に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体107は、
図21に示したように、実移動ベクトル2707(−5.1m/s,1m/s,0m/s)に従って、ほぼ西北西に向かって移動し、通信の復旧を図ることになる。
【0194】
以上より、結果として、移動体101、移動体103、移動体104、移動体106及び移動体107が、互いに集まるような移動を行うことになるので、通信の復旧は更に効率的に進むことになる。
【0195】
次に、移動体101の制御部602は、自移動体情報701から実移動ベクトル情報を取得し、取得した実移動ベクトル1801に従って実際に移動させる(ステップS1009)。制御部602は、実移動ベクトルで移動させる制御コマンドを生成し、移動制御部605へ出力する。移動制御部605は、制御コマンドに従って実際に移動体101を移動させる。
【0196】
以下、特許文献1で開示されている技術では解決できていなかった課題を、本開示の実施の形態1では解決できていることを、具体例を用いて、説明する。
【0197】
既に述べた通り、特許文献1で開示されている第1の技術は、
図2の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合については、そのままでは適用することができなかった。
【0198】
これに対して、本開示の実施の形態1では、上述した通り、
図21の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合でも、通信の復旧を図ることができる。このような場合、すなわち、どの移動体から見ても、不明群に属する移動体が二つ以上である場合でも、構成群に属する移動体のうちの一部又は全部が互いに集まるような移動を行うことになるので、通信の復旧を図ることができる。
図21の例では、移動体101、移動体103、移動体104、移動体106及び移動体107が、互いに集まるような移動を行うことにより、通信の復旧を図ることができている。
【0199】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態1では、例えば
図21の例では、移動体102は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0200】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態1では、例えば
図21の例では、移動体102は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0201】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態1では、例えば
図21の例では、移動体101、移動体103、移動体104、移動体106及び移動体107が、互いに集まるような移動を行うことにより、通信の復旧を図り、かつ、これらの通信の復旧を図る移動体のうちの一つである移動体103と、主として本来の目的のための移動を行う移動体102との距離は、
図18に示す判定円の半径以下であるので、移動体102と移動体103との間の直接通信が直ちに切断されるリスクは小さく、この課題を解決できている。
【0202】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図3の例のように、移動体の一部又は全部が互いに遠ざかるような方向に移動した場合には、最善でも一部の通信の復旧しか図ることができなかった。
図3の例では、移動体201−204と移動体206−207とが互いに遠ざかるような方向に移動し続けている場合には、最善でも移動体201−204と移動体206−207とのどちらか一方に属する移動体のみとの直接通信が復旧するのみで、他方に属する移動体との直接通信を復旧することはできなかった。
【0203】
これに対して、本開示の実施の形態1では、
図3の例のように、移動体の一部が互いに遠ざかるような方向に移動した場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0204】
なお、ここでは、制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の移動ベクトルの和を計算する。
【0205】
また、ここでは、移動体202−204の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体206−207の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0206】
また、ここでは、制御部602は、主基本移動ベクトルに0.5を乗じ、障害物回避基本移動ベクトルに1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。
【0207】
図22は、本開示の実施の形態1における、
図3に示す状況での、移動体201−204の分断復旧ベクトルの一例を示す概念図である。
図22において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0208】
図22に示した通り、移動体201−204のそれぞれにおいては、既知群1901に属する移動体は、移動体201−204であり、不明群1902に属する移動体は、移動体205−207である。
【0209】
移動体201の制御部602は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図22では、移動体201−204のそれぞれとの距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体201の判定円の範囲内には他の移動体が存在しないので、移動体201の制御部602は、自身の分断復旧ベクトルを、不明群に属する全ての移動体の位置の中心にある目標位置1911に向かう向きを持ち、一定の大きさの分断復旧ベクトル1921に決定する。
【0210】
また、移動体202及び移動体203の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体202の判定円の範囲内には移動体203が存在し、移動体203の判定円の範囲内には移動体202が存在するので、移動体202と移動体203とは互いに通信し、移動体203のみが目標位置1911に向かうと決定される。そして、移動体202の制御部602は、自身の分断復旧ベクトルを、大きさが0の分断復旧ベクトル1922に決定し、移動体203の制御部602は、自身の分断復旧ベクトルを、目標位置1911に向かう向きを持ち、一定の大きさの分断復旧ベクトル1923に決定する。
【0211】
また、移動体204の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体204の判定円の範囲内には他の移動体が存在しないので、移動体204の制御部602は、自身の分断復旧ベクトルを、目標位置1911に向かう向きを持ち、一定の大きさの分断復旧ベクトル1924に決定する。
【0212】
図23は、本開示の実施の形態1における、
図3に示す状況での、移動体205の分断復旧ベクトルの一例を示す概念図である。
図23において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0213】
図23に示した通り、移動体205においては、既知群2001に属する移動体は、移動体205であり、不明群2002に属する移動体は、移動体201−204、206−207である。
【0214】
移動体205は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図23では、移動体205との距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体205の判定円の範囲内には他の移動体が存在しないので、移動体205の制御部602は、自身の分断復旧ベクトルを、不明群に属する全ての移動体の位置の中心にある目標位置2011に向かう向きを持ち、一定の大きさの分断復旧ベクトル2025に決定する。
【0215】
図24は、本開示の実施の形態1における、
図3に示す状況での、移動体206−207の分断復旧ベクトルの一例を示す概念図である。
図24において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0216】
図24に示した通り、移動体206−207のそれぞれにおいては、既知群2101に属する移動体は、移動体206−207であり、不明群2102に属する移動体は、移動体201−205である。
【0217】
移動体206の制御部602は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図24では、移動体206−207のそれぞれとの距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体206の判定円の範囲内には他の移動体が存在しないので、移動体206の制御部602は、自身の分断復旧ベクトルを、不明群に属する全ての移動体の位置の中心にある目標位置2111に向かう向きを持ち、一定の大きさの分断復旧ベクトル2126に決定する。
【0218】
また、移動体207の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体207の判定円の範囲内には他の移動体が存在しないので、移動体207の制御部602は、自身の分断復旧ベクトルを、目標位置2111に向かう向きを持ち、一定の大きさの分断復旧ベクトル2127に決定する。
【0219】
図25は、本開示の実施の形態1における、
図3に示す状況での、移動体201−207の実移動ベクトルの一例を示す概念図である。
図25において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0220】
移動体201は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体201は、
図25に示したように、基本移動ベクトル群に加えて分断復旧ベクトル1921に基づいて計算して求めた実移動ベクトル2201に従って、ほぼ東北東に向かって移動し、通信の復旧を図ることになる。
【0221】
移動体203は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体203は、
図25に示したように、基本移動ベクトル群に加えて分断復旧ベクトル1923に基づいて計算して求めた実移動ベクトル2203に従って、ほぼ東北東に向かって移動し、通信の復旧を図ることになる。
【0222】
移動体204は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体204は、
図25に示したように、基本移動ベクトル群に加えて分断復旧ベクトル1924に基づいて計算して求めた実移動ベクトル2204に従って、ほぼ東南東に向かって移動し、通信の復旧を図ることになる。
【0223】
移動体205は、ほとんど移動しない基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、その場に停止する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体205は、
図25に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2025に基づいて計算して求めた実移動ベクトル2205に従って、ほぼ西北西に向かって移動し、通信の復旧を図ることになる。
【0224】
移動体206は、東に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、東に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体206は、
図25に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2126に基づいて計算して求めた実移動ベクトル2206に従って、ほぼ西南西に向かって移動し、通信の復旧を図ることになる。
【0225】
移動体207は、東に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、東に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体207は、
図25に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2127に基づいて計算して求めた実移動ベクトル2207に従って、ほぼ西に向かって移動し、通信の復旧を図ることになる。
【0226】
一方で、移動体202は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体202は、分断復旧ベクトル1922の大きさが0であるので、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現した後も、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合と同じく、
図25に示したように、基本移動ベクトル群に加えて大きさが0の分断復旧ベクトル1922に基づいて計算して求めた実移動ベクトル2202に従って、ほぼ西に向かって移動し、本来の目的を遂行することができる。
【0227】
このように、移動体201,203−207は主として通信復旧動作を行い、移動体202は不明群が存在しなかった場合の移動を行うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。通信復旧動作を開始した時点における移動体202と移動体203との距離は、
図22に示す判定円の半径以下であるので、移動体202と移動体203との間の直接通信が直ちに切断されるリスクは小さい。
【0228】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態1では、例えば
図25の例では、移動体202は主として本来の目的のための移動を行うことができており、この課題を解決できている。
【0229】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態1では、例えば
図25の例では、移動体202は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0230】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態1では、例えば
図25の例では、移動体201,203−207が、互いに集まるような移動を行うことにより、通信の復旧を効率的に行い、かつ、これらの通信の復旧を図る移動体のうちの一つである移動体203と、主として本来の目的のための移動を行う移動体202との距離は
図22の判定円の半径以下であるので、移動体202と移動体203との間の直接通信が直ちに切断されるリスクは小さく、この課題を解決できている。
【0231】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合には、通信を復旧させることはできなかった。
図4の例では、特許文献1で開示されている第1の技術のいずれを用いたとしても、アドホックネットワークとの通信が切断された移動体207が通信の復旧のために移動した方向に、既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできなかった。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できなかった。
【0232】
これに対して、本開示の実施の形態1では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0233】
図26は、本開示の実施の形態1において、
図4に示す状況の場合に、移動体201−206のそれぞれが、どのような分断復旧ベクトルを決定するかの一例を示す概念図である。
図26において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0234】
図26に示した通り、移動体201−206のそれぞれにおいては、既知群2401に属する移動体は、移動体201−206であり、不明群2402に属する移動体は、移動体207である。
【0235】
移動体201の制御部602は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図26では、移動体201−206のそれぞれとの距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体201の判定円の範囲内には他の移動体が存在しないので、移動体201の制御部602は、自身の分断復旧ベクトルを、不明群2402に属する全ての移動体の位置の中心にある目標位置2411に向かう向きを持ち、一定の大きさの分断復旧ベクトル2421に決定する。
【0236】
また、移動体202及び移動体203の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体202の判定円の範囲内には移動体203が存在し、移動体203の判定円の範囲内には移動体202が存在するので、移動体202と移動体203とは互いに通信し、移動体203のみが目標位置2411に向かうと決定される。そして、移動体202の制御部602は、自身の分断復旧ベクトルを、大きさが0の分断復旧ベクトル2422に決定し、移動体203の制御部602は、自身の分断復旧ベクトルを、目標位置2411に向かう向きを持ち、一定の大きさの分断復旧ベクトル2423に決定する。
【0237】
また、移動体204の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体204の判定円の範囲内には他の移動体が存在しないので、移動体204の制御部602は、自身の分断復旧ベクトルを、目標位置2411に向かう向きを持ち、一定の大きさの分断復旧ベクトル2424に決定する。
【0238】
また、移動体205の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体205の判定円の範囲内には他の移動体が存在しないので、移動体205の制御部602は、自身の分断復旧ベクトルを、目標位置2411に向かう向きを持ち、一定の大きさの分断復旧ベクトル2425に決定する。
【0239】
また、移動体206の制御部602も、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。移動体206の判定円の範囲内には他の移動体が存在しないので、移動体206の制御部602は、自身の分断復旧ベクトルを、目標位置2411に向かう向きを持ち、一定の大きさの分断復旧ベクトル2426に決定する。
【0240】
図27は、本開示の実施の形態1において、
図4に示す状況の場合に、移動体が、どのような分断復旧ベクトルを決定するかの一例を示す概念図である。
図27において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0241】
図27に示した通り、移動体207においては、既知群2501に属する移動体は、移動体207であり、不明群2502に属する移動体は、移動体201−206である。
【0242】
移動体207の制御部602は、構成群位置情報から、自身との距離が一定の値以下の移動体が一つ以上存在するか否かを判断する。
図27では、移動体207との距離が一定の値以下の地点を、点線で描いた判定円で囲んでいる。移動体207の判定円の範囲内には他の移動体が存在しないので、移動体207の制御部602は、自身の分断復旧ベクトルを、不明群2502に属する全ての移動体の位置の中心にある目標位置2511に向かう向きを持ち、一定の大きさの分断復旧ベクトル2527に決定する。
【0243】
図28は、本開示の実施の形態1における、
図4に示す状況での、移動体201−207の実移動ベクトルの一例を示す概念図である。
図28において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0244】
移動体201は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体201は、
図28に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2421に基づいて計算して求めた実移動ベクトル2601に従って、ほぼ東に向かって移動し、通信の復旧を図ることになる。
【0245】
移動体203は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体203は、
図28に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2423に基づいて計算して求めた実移動ベクトル2603に従って、ほぼ東に向かって移動し、通信の復旧を図ることになる。
【0246】
移動体204は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体204は、
図28に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2424に基づいて計算して求めた実移動ベクトル2604に従って、ほぼ東に向かって移動し、通信の復旧を図ることになる。
【0247】
移動体205は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体205は、
図28に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2425に基づいて計算して求めた実移動ベクトル2605に従って、ほぼ東北東に向かって移動し、通信の復旧を図ることになる。
【0248】
移動体206は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体206は、
図28に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2426に基づいて計算して求めた実移動ベクトル2606に従って、ほぼ東北東に向かって移動し、通信の復旧を図ることになる。
【0249】
移動体207は、ほぼ東に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ東に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体207は、
図28に示したように、基本移動ベクトル群に加えて分断復旧ベクトル2527に基づいて計算して求めた実移動ベクトル2607に従って、ほぼ南南西に向かって移動し、通信の復旧を図ることになる。
【0250】
一方で、移動体202は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体202は、分断復旧ベクトル2422の大きさが0なので、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現した後も、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合と同じく、
図28に示したように、基本移動ベクトル群に加えて大きさが0の分断復旧ベクトル2527に基づいて計算して求めた実移動ベクトル2602に従って、ほぼ南南西に向かって移動し、本来の目的を遂行することができる。
【0251】
このように、移動体201,203−207は主として通信復旧動作を行い、移動体202は不明群が存在しなかった場合の移動を行うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。通信復旧動作を開始した時点における移動体202と移動体203との距離は、
図26に示す判定円の半径以下であるので、移動体202と移動体203との間の直接通信が直ちに切断されるリスクは小さい。
【0252】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態1では、例えば
図28の例では、移動体202は主として本来の目的のための移動を行うことができており、この課題を解決できている。
【0253】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態1では、例えば
図28の例では、移動体202は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0254】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態1では、例えば
図28の例では、移動体201,203−207が、互いに集まるような移動を行うことにより、通信の復旧を効率的に行い、かつ、これらの通信の復旧を図る移動体のうちの一つである移動体203と、主として本来の目的のための移動を行う移動体202との距離は、
図26に示す判定円の半径以下であるので、移動体202と移動体203との間の直接通信が直ちに切断されるリスクは小さく、この課題を解決できている。
【0255】
本開示の実施の形態1のステップS1006の処理では、不明群に属する移動体が存在する限り、ステップS1007の処理で分断復旧ベクトルを決定する前に毎回目標位置を決定し直しているが、実施の形態1の第2の構成では、不明群に属する移動体が変更された場合にのみ目標位置を決定してもよい。
【0256】
実施の形態1の第2の構成の場合、不明群に属する移動体が変更された場合にのみ目標位置を決定するので、処理の効率化が図れる。
【0257】
本開示の実施の形態1のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS1007の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態1の第3の構成では、ステップS1005の処理を初めて実行した時刻を記憶しておき、ステップS1005の処理を初めて実行した時刻から0より大きい復旧期限が経過している場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。なお、復旧期限の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0258】
すなわち、制御部602は、第1情報が通信部601によって受信されなくなったことを検知した場合、第2制御コマンドを移動制御部605に出力してから所定時間経過後に、第3制御量から第1制御量に切り替えて移動体101を移動させる第3制御コマンドを移動制御部605に出力してもよい。
【0259】
実施の形態1の第3の構成の場合、復旧期限が経過しても通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0260】
なお、実施の形態1の第3の構成において、一旦、復旧期限が経過した後でも、不明群に属する移動体が変更された場合、又は更に一定の時間が経過した場合など、適切なタイミングで、ステップS1005の処理を初めて実行した時刻をリセットし、再び、ステップS1005−ステップS1007の処理を実行できるようにしてもよい(実施の形態1の第4の構成)。
【0261】
実施の形態1の第4の構成の場合、復旧期限が経過した後、一定の条件が成立した場合には、通信復旧動作をリトライすることができる。
【0262】
本開示の実施の形態1のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS1007の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態1の第5の構成では、目標位置までの距離が、移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。なお、移動中止判定距離の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0263】
すなわち、制御部602は、第1情報が通信部601によって受信されなくなったことを検知した場合、第1位置と、第2制御コマンドが移動制御部605に出力された後の移動体101の位置を示す第3位置との距離が所定値以下であるか否かを判断し、距離が所定値以下であると判断した場合、第3制御量から第1制御量に切り替えて移動体101を移動させる第3制御コマンドを移動制御部605に出力してもよい。
【0264】
実施の形態1の第5の構成の場合、目標位置までの距離が、移動中止判定距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0265】
なお、実施の形態1の第5の構成において、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい(実施の形態1の第6の構成)。
【0266】
実施の形態1の第6の構成の場合、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0267】
本開示の実施の形態1のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS1007の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態1の第7の構成では、特定の位置から目標位置までの距離に移動中止判定係数を乗じた距離を示す第2移動中止判定距離を算出し、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。なお、第2移動中止判定係数の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0268】
実施の形態1の第7の構成の場合、目標位置までの距離が、特定の位置から目標位置までの距離に第2移動中止判定係数を乗じた距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0269】
なお、実施の形態1の第7の構成において、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい(実施の形態1の第8の構成)。
【0270】
実施の形態1の第8の構成の場合、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、第2移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0271】
本開示の実施の形態1のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS1007の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態1の第9の構成では、目標位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。
【0272】
実施の形態1の第9の構成の場合、目標位置に到達しても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0273】
なお、実施の形態1の第9の構成において、一旦、目標位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい(実施の形態1の第10の構成)。
【0274】
実施の形態1の第10の構成の場合、一旦、目標位置に到達した後に、再び、目標位置から離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0275】
本開示の実施の形態1の第3から第10の構成において、ステップS1004の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行した時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割してもよい(実施の形態1の第11の構成)。
【0276】
通信部601は、更に、移動体101とネットワークを構成する、移動体101及び移動体105とは異なる第2の通信対象移動体(例えば、移動体102)から送信された、移動体102の第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信してもよい。記憶部603は、第1情報及び第2情報を含む第4情報(他移動体情報702)を格納してもよい。制御部602は、第3制御コマンドを移動制御部605に出力した時、記憶部603に格納された第4情報から第1情報を削除することによって第4情報を更新してもよい。
【0277】
実施の形態1の第11の構成の場合、既知群に属する移動体のそれぞれは、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0278】
本開示の実施の形態1の第3から第10の構成において、ステップS1004の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、アドホックネットワークを分割することを通知する分割通知を送信してもよい(実施の形態1の第12の構成)。また、他の移動体から分割通知を受信した時には、ステップS1004の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。これにより、通信復旧動作を中止し、その時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0279】
実施の形態1の第12の構成の場合、既知群に属する移動体のそれぞれは、同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0280】
本開示の実施の形態1の第3から第10の構成において、ステップS1004の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、既知群に属する移動体のグループを特定する既知群情報を送信してもよい(実施の形態1の第13の構成)。また、他の移動体から既知群情報を受信した時には、ステップS1004の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS1005−ステップS1007の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。これにより、通信復旧動作を中止し、既知群情報で特定される移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0281】
制御部602は、第4情報(他移動体情報702)を更新したとき、通信部601に対して、第4情報を第2の通信対象移動体(例えば、移動体102)へ送信させてもよい。
【0282】
記憶部603は、第1情報及び第2情報を含む第4情報を格納してもよい。第2の通信対象移動体(例えば、移動体102)は、移動体101を示す情報と第3の通信対象移動体(例えば、移動体105,106,107のいずれか)を示す情報とを含む第5情報(移動体102が記憶する他移動体情報)から第3の通信対象移動体を示す情報を削除することによって第5情報を更新したとき、第5情報を移動体101に送信してもよい。移動体101の通信部601は、第2の通信対象移動体によって送信された第5情報を受信してもよい。制御部602は、記憶部603に格納されている第4情報を第5情報に更新してもよい。
【0283】
実施の形態1の第13の構成の場合、既知群に属する移動体のそれぞれは、通信によるタイムラグの影響を受けずに、確実に同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0284】
なお、ステップS1009の処理で移動体101が実移動ベクトル1801に従って実際に移動した後、移動体105との通信が再開したとき、移動体101は、本来の移動に戻る。すなわち、制御部602は、基本移動ベクトル群で移動させる制御コマンドを生成し、移動制御部605へ出力する。移動制御部605は、制御コマンドに従って実際に移動体101を移動させる。
【0285】
すなわち、制御部602は、第1情報が通信部601によって受信されなくなったことを検知した後、第1情報が再度通信部601によって受信されるようになったことを検知した場合、第3制御量から第1制御量に切り替えて移動体101を移動させる第3制御コマンドを移動制御部605に出力してもよい。
【0286】
また、ステップS1009の処理で移動体101が実移動ベクトル1801に従って実際に移動した後、移動体105,106,107との通信が全て再開したとき、移動体101は、本来の移動に戻る。すなわち、制御部602は、基本移動ベクトル群で移動させる制御コマンドを生成し、移動制御部605へ出力する。移動制御部605は、制御コマンドに従って実際に移動体101を移動させる。
【0287】
すなわち、通信部601は、複数の第1の通信対象移動体(例えば、移動体105,106,107)のそれぞれから第1情報を再度受信してもよい。制御部602は、複数の第1情報が通信部601によって受信されなくなったことを検知した後、複数の第1情報が再度通信部601によって受信されるようになったことを検知した場合、第3制御量から第1制御量に切り替えて移動体101を移動させる第3制御コマンドを移動制御部605に出力してもよい。
【0288】
(実施の形態2)
本開示の実施の形態2における、複数の移動体によって構成されるアドホックネットワークの全体像を表した概念図は、
図6と同じであるので、説明を省略する。
【0289】
本開示の実施の形態2における、移動体101の機能構成を示したブロック図は、
図8と同じであるので、説明を省略する。
【0290】
本開示の実施の形態2における、移動体101の記憶部603に記憶される情報を示した図は、
図10と同じであるので、説明を省略する。
【0291】
本開示の実施の形態2における、移動体101の記憶部603に記憶する自移動体情報701の一例を示す図は、
図10と同じであるので、説明を省略する。
【0292】
本開示の実施の形態2における、移動体101の記憶部603に記憶する他移動体情報702の一例を示す図は、
図11と同じであるので、説明を省略する。
【0293】
図29は、本開示の実施の形態2における、移動体101の移動制御の全体動作を示すフローチャートである。
図29において、
図12と同じ処理については同じ符号を用い、説明を省略する。
【0294】
なお、本開示の実施の形態2では、ステップS1004の処理で不明群に属する移動体が存在した場合には、ステップS1005−ステップS2807の処理を実行する。
【0295】
移動体101の制御部602は、ステップS1006の処理で目標位置を決定した後、目標位置から自身の位置までの距離を算出する(ステップS2811)。
【0296】
基本移動ベクトル群の一例の概念図は、
図13と同じであるので、説明を省略する。
【0297】
移動体105が故障した場合の、移動体101−104のそれぞれにおける既知群と不明群とを示す概念図は、
図14と同じであるので、説明を省略する。
【0298】
移動体105が故障した場合の、移動体106−107のそれぞれにおける既知群と不明群とを示す概念図は、
図15と同じであるので、説明を省略する。
【0299】
移動体105が故障した場合の、移動体101−104のそれぞれにおける、目標位置の決定方法と、それらの決定方法によって決定された目標位置の一例を示す図は、
図16と同じである。なお、移動体105−107のそれぞれは、
図11の他移動体情報702に記載した位置にあるとする。
【0300】
移動体101−104のそれぞれにおいては、例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、目標位置は、
図16の目標位置1401となり、目標位置1401の値は「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」となる。この場合、移動体101−104のそれぞれにおける、目標位置1401から自身の位置までの距離は、それぞれ、53.3m、37.6m、35.5m及び27.9mとなる。
【0301】
また、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する場合には、目標位置は、
図16の目標位置1402、すなわち、移動体105の位置となり、目標位置1402の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。この場合、移動体101−104のそれぞれにおける、目標位置1402から自身の位置までの距離は、それぞれ、40.6m、25.0m、22.7m及び19.9mとなる。ただし、ここでは、緯度1秒分の距離を31mとし、経度1秒分の距離を25mとして、簡易的に近似値を計算しているが、緯度及び経度の差分から距離を計算する計算方法については、本開示の主旨とは無関係であることは言うまでもない。以下、本明細書では、特に明記しない限り、ここで示した簡易的な計算によって、緯度及び経度の差分から距離を計算することとする。
【0302】
移動体105が故障した場合の、移動体106−107のそれぞれにおける、目標位置の決定方法と、それらの決定方法によって決定された目標位置の一例を示す図は、
図17と同じである。なお、移動体101−105のそれぞれは、
図11の他移動体情報702に記載した位置にあるとする。
【0303】
移動体106−107のそれぞれにおいては、例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、目標位置は、
図17の目標位置1501となり、目標位置1501の値は「北緯34度41分37.48秒、東経135度30分7.82秒、海抜2m」となる。この場合、移動体106−107のそれぞれにおける、目標位置1501から自身の位置までの距離は、それぞれ、33.5m及び44.5mとなる。
【0304】
また、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する場合には、目標位置は、
図17の目標位置1502、すなわち、移動体105の位置となり、目標位置1502の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。この場合、移動体106−107のそれぞれにおける、目標位置1502から自身の位置までの距離は、それぞれ、15.6m及び25.0mとなる。
【0305】
次に、移動体101の制御部602は、目標位置から自身の位置までの距離に応じて、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルを決定する(ステップS2807)。そして、制御部602は、分断復旧ベクトルに関する情報である分断復旧ベクトル情報を作成し、自移動体情報701の分断復旧ベクトル情報を更新する。すなわち、制御部602は、移動体101の現在位置を示す第3情報を取得し、第1情報と第3情報とに基づいて移動体101と第1の通信対象移動体(例えば、移動体105)との距離を算出し、距離に基づいて第2制御量(分断復旧ベクトル)を決定する。
【0306】
分断復旧ベクトルの向きは、例えば、目標位置の方向とし、分断復旧ベクトルの大きさは、目標位置から自身の位置までの距離に反比例した値としてもよい。すなわち、制御部602は、距離が短いほど、第2移動距離、第2速度絶対値、又は第2加速度絶対値を小さくしてもよい。また、制御部602は、距離が長いほど、第2移動距離、第2速度絶対値、又は第2加速度絶対値を小さくしてもよい。
【0307】
ここで、移動体101−107が、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、向きが目標位置に向かう方向であり、大きさが目標位置から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトルを決定する場合の、分断復旧ベクトルの一例を説明する。なお、ここでは、定数80,000を、目標位置から自身の位置までの距離の三乗で割った値を、それぞれの分断復旧ベクトルの大きさとする。
【0308】
図30は、本開示の実施の形態2において、1の移動体105が故障した場合の、他の移動体101−104のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図30において、
図6、
図14及び
図16と同じ構成要素については同じ符号を用い、説明を省略する。
【0309】
上述した通り、目標位置1402から移動体101−104のそれぞれの位置までの距離は、40.6m、25.0m、22.7m、及び19.9mである。従って、移動体101−104の分断復旧ベクトルの大きさは、それぞれ、1.2m/s、5.1m/s、6.8m/s及び10.2m/sとなり、向きは目標位置1402に向かう方向であるので、移動体101の分断復旧ベクトル2901は(1.2m/s,0.2m/s,0m/s)となり、移動体102の分断復旧ベクトル2902は(5.1m/s,−0.6m/s,0m/s)となり、移動体103の分断復旧ベクトル2903は(6.8m/s,0.6m/s,0m/s)となり、移動体104の分断復旧ベクトル2904は(7.3m/s,−7.3m/s,0m/s)となる。
【0310】
図31は、本開示の実施の形態2において、1の移動体105が故障した場合の、他の移動体106−107のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図31において、
図6、
図15及び
図17と同じ構成要素については同じ符号を用い、説明を省略する。
【0311】
上述した通り、目標位置1502から移動体106−107のそれぞれの位置までの距離は15.6m及び25.0mである。従って、移動体106−107の分断復旧ベクトルの大きさは、それぞれ、21.1m/s及び5.1m/sとなり、向きは目標位置1502に向かう方向であるので、移動体106の分断復旧ベクトル3006は(−16.9m/s,−12.7m/s,0m/s)となり、移動体107の分断復旧ベクトル3007は(−5.1m/s,0m/s,0m/s)となる。
【0312】
次に、移動体101の制御部602は、基本移動ベクトル群に属する全ての移動ベクトルと、分断復旧ベクトルとに対して、それぞれ0以外の値を乗じた移動ベクトルの和を計算し、計算結果の移動ベクトルを実移動ベクトルとして決定する(ステップS1008)。そして、制御部602は、実移動ベクトルに関する情報である実移動ベクトル情報を作成し、自移動体情報701の実移動ベクトル情報を更新する。
【0313】
図32は、本開示の実施の形態2において、1の移動体105が故障した場合の、他の移動体101における、実移動ベクトルの決定方法の一例を示す概念図である。
図32において、
図6、
図14、
図16及び
図30と同じ構成要素については同じ符号を用い、説明を省略する。
【0314】
ここでは、制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の移動ベクトルの和を計算する。なお、基本移動ベクトル群に属するそれぞれの移動ベクトルに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0315】
図32に示す例では、移動体101の主基本移動ベクトル1101は(−5m/s,−2m/s,0m/s)であり、障害物回避基本移動ベクトル1102は(0m/s,5m/s,0m/s)であり、分断復旧ベクトル1601は(10m/s,2m/s,0m/s)であるから、計算結果の移動ベクトルは(−1.3m/s,4.2m/s,0m/s)となる。移動体101の制御部602は、計算結果の移動ベクトル(−1.3m/s,4.2m/s,0m/s)を実移動ベクトル3101として決定する。
【0316】
移動体101は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、主基本移動ベクトル1101(−5m/s,−2m/s,0m/s)に0.5を乗じたベクトルと、障害物回避基本移動ベクトル1102(0m/s,5m/s,0m/s)に1を乗じたベクトルと、ステップS1010で決定した大きさ0の分断復旧ベクトルに1を乗じたベクトルとを加算して求まる実移動ベクトル(−2.5m/s,4m/s,0m/s)に従って移動する。そのため、
図13に示したように、移動体101は、障害物を避けてほぼ北北西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体101は、
図32に示したように、実移動ベクトル3101(−1.3m/s,4.2m/s,0m/s)に従って、ほぼ北北西に向かって移動することになる。目標位置1402から自身の位置までの距離が移動体102−104よりも遠いので、通信の復旧を図る移動の比重も若干はあるものの、ほぼ本来の目的を遂行することができる。
【0317】
移動体102−104,106−107の実移動ベクトルも、移動体101の実移動ベクトルと同様にして決定される。
【0318】
図33は、本開示の実施の形態2において、1の移動体105が故障した場合の、他の移動体101−104,106−107における、実移動ベクトルの一例を示す概念図である。
図33において、
図6及び
図32と同じ構成要素については同じ符号を用い、説明を省略する。
【0319】
ここでは、移動体102−104の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体106−107の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0320】
また、ここでは、制御部602は、主基本移動ベクトルに0.5を乗じ、障害物回避基本移動ベクトルに1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。
【0321】
移動体102は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(−5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体102は、
図33に示したように、実移動ベクトル3202(0.1m/s,−0.6m/s,0m/s)に従って、ほぼ南南東に向かって移動することになる。
【0322】
移動体103は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(−5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体103は、
図33に示したように、実移動ベクトル3203(1.8m/s,0.6m/s,0m/s)に従って、ほぼ東北東に向かって移動することになる。
【0323】
移動体104は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(−5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、西に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体104は、
図33に示したように、実移動ベクトル3204(2.3m/s,−7.3m/s,0m/s)に従って、ほぼ南南東に向かって移動することになる。
【0324】
移動体102−103と比べて目標位置1402から自身の位置までの距離が近い移動体104は、通信の復旧が期待できる位置まで、移動体102−103と比べてより速く移動し、主として通信復旧動作を担うことになる。また、移動体104と比べて目標位置1402から自身の位置までの距離が遠い移動体102−103は、通信の復旧が期待できる位置へ向かって移動するが、移動体104と比べて低速度で移動するので、移動体104と離れすぎて直接通信が切断されることを防ぎつつ、本来の目的を遂行することができる。また、移動体102−103と比べて更に目標位置1402から自身の位置までの距離が遠い移動体101は、通信の復旧を図る移動の比重も若干はあるものの、ほぼ本来の目的を遂行することができる。
【0325】
移動体105が故障したことにより、移動体101−104とは通信ができなくなっている、移動体106−107についても、上記と同様である。
【0326】
移動体106は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、東に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体106は、
図33に示したように、実移動ベクトル3206(−11.9m/s,−12.7m/s,0m/s)に従って、ほぼ南西に向かって移動することになる。
【0327】
移動体107は、移動体105が故障せず、不明群に属する移動体が存在しなかった場合、実移動ベクトル(5m/s,0m/s,0m/s)に従って移動するので、
図13に示したように、東に向かって移動する予定であった。しかしながら、移動体105が故障して、不明群に属する移動体が出現したことによって、移動体107は、
図33に示したように、実移動ベクトル3207(−0.1m/s,0m/s,0m/s)に従って、ほぼ西に向かって移動することになる。
【0328】
移動体107と比べて目標位置1502から自身の位置までの距離が近い移動体106は、通信の復旧が期待できる位置まで、移動体107と比べてより速く移動し、主として通信復旧動作を担うことになる。また、移動体106と比べて目標位置1502から自身の位置までの距離が遠い移動体107は、通信の復旧が期待できる位置へ向かって移動するが、移動体106と比べて低速度で移動するので、移動体106と離れすぎて直接通信が切断されることを防ぎつつ、本来の目的を遂行することができる。
【0329】
以上より、結果として、移動体102−107が、互いに集まるような移動を行うことになるので、通信の復旧は更に効率的に進むことになる。
【0330】
次に、移動体101の制御部602は、自移動体情報701から実移動ベクトル情報を取得し、取得した実移動ベクトル1801に従って実際に移動を行う(ステップS1009)。制御部602は、実移動ベクトル1801で移動させる制御コマンドを生成し、移動制御部605へ出力する。移動制御部605は、制御コマンドに従って実際に移動体101を移動させる。
【0331】
以下、特許文献1で開示されている技術では解決できていなかった課題を、本開示の実施の形態2では解決できていることを、具体例を用いて、説明する。
【0332】
既に述べた通り、特許文献1で開示されている第1の技術は、
図2の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合については、そのままでは適用することができなかった。
【0333】
これに対して、本開示の実施の形態2では、上述した通り、
図33の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合でも、通信の復旧を図ることができる。このような場合、すなわち、どの移動体から見ても、不明群に属する移動体が二つ以上である場合でも、構成群に属する移動体のうちの一部又は全部が互いに集まるような移動を行うことになるので、通信の復旧を図ることができる。
図33の例では、移動体102−104,106−107が、互いに集まるような移動を行うことにより、通信の復旧を図ることができている。
【0334】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態2では、例えば
図33の例では、移動体101は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0335】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態2では、例えば
図33の例では、移動体101は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0336】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態2では、例えば
図33の例では、移動体102−104,106−107が、互いに集まるような移動を行うことにより、通信の復旧を図り、目標位置1402から最も遠い移動体101は主として本来の目的のための移動を行うことができる。
【0337】
そして、移動体101−104の移動速度は、目標位置1402から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体101、移動体102、移動体103及び移動体104の順で、目標位置1402からの距離が遠いので、移動体101は主として本来の目的のための移動を行うことができ、移動体102は通信の復旧が期待できる位置へ向かって移動体103よりも低速度で移動し、移動体103は通信の復旧が期待できる位置へ向かって移動体104よりも低速度で移動し、移動体104は、通信の復旧が期待できる位置へ向かって移動体102−103よりも速く移動し、主として通信復旧動作を担う。
【0338】
このため、移動体101−104が互いに離れる相対速度は小さな値に抑えることができるので、移動体101と移動体102との間、移動体102と移動体103との間、移動体102と移動体104との間、移動体103と移動体104との間の、それぞれの直接通信が直ちに切断されるリスクは小さい。
【0339】
また、移動体106−107の移動速度は、目標位置1502から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体107及び移動体106の順で、目標位置1502からの距離が遠いので、移動体107は通信の復旧が期待できる位置へ向かって移動体106よりも低速度で移動し、移動体106は、通信の復旧が期待できる位置へ向かって移動体107よりも速く移動し、主として通信復旧動作を担う。
【0340】
このため、移動体106−107が互いに離れる相対速度は小さな値に抑えることができるので、移動体106と移動体107との間の直接通信が直ちに切断されるリスクは小さい。以上により、特許文献1で開示されている第4の技術の課題を解決できていることがわかる。
【0341】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図3の例のように、移動体の一部又は全部が互いに遠ざかるような方向に移動した場合には、最善でも一部の通信の復旧しか図ることができなかった。
図3の例では、移動体201−204と移動体206−207とが互いに遠ざかるような方向に移動し続けている場合には、最善でも移動体201−204と移動体206−207とのどちらか一方に属する移動体のみとの直接通信が復旧するのみで、他方に属する移動体との直接通信を復旧することはできなかった。
【0342】
これに対して、本開示の実施の形態2では、
図3の例のように、移動体の一部が互いに遠ざかるような方向に移動した場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0343】
なお、ここでは、移動体201−207は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、向きが目標位置に向かう方向であり、大きさが目標位置から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトルを決定する。
【0344】
また、ここでは、移動体201−207の制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の移動ベクトルの和を計算する。
【0345】
また、ここでは、移動体202−204の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体206−207の基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0346】
また、ここでは、移動体201−207の制御部602は、は、主基本移動ベクトルに0.5を乗じ、障害物回避基本移動ベクトルに1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。
【0347】
図34は、本開示の実施の形態2における、
図3に示す状況での、移動体201−204の分断復旧ベクトルの一例を示す概念図である。
図34において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0348】
図34に示した通り、移動体201−204のそれぞれにおいては、既知群3301に属する移動体は、移動体201−204であり、不明群3302に属する移動体は、移動体205−207である。
【0349】
移動体201−204の制御部602は、向きが目標位置3311に向かう方向であり、大きさが目標位置3311から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトル3321−3324を決定する。
【0350】
図35は、本開示の実施の形態2における、
図3に示す状況での、移動体205の分断復旧ベクトルの一例を示す概念図である。
図35において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0351】
図35に示した通り、移動体205においては、既知群3401に属する移動体は、移動体205であり、不明群3402に属する移動体は、移動体201−204,206−207である。
【0352】
移動体205の制御部602は、向きが目標位置3411に向かう方向であり、大きさが目標位置3411から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトル3425を決定する。
【0353】
図36は、本開示の実施の形態2における、
図3に示す状況での、移動体の分断復旧ベクトルの一例を示す概念図である。
図36において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0354】
図36に示した通り、移動体206−207のそれぞれにおいては、既知群3501に属する移動体は、移動体206−207であり、不明群3502に属する移動体は、移動体201−205である。
【0355】
移動体206−207の制御部602は、向きが目標位置3511に向かう方向であり、大きさが目標位置3511から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトル3526−3527を決定する。
【0356】
図37は、本開示の実施の形態2における、
図3に示す状況での、移動体201−207の実移動ベクトルの一例を示す概念図である。
図37において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0357】
移動体201は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体201は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3321に基づいて計算して求めた実移動ベクトル3601に従って、ほぼ西に向かって移動することになる。移動体201は、目標位置3311から自身の位置までの距離が移動体202−204よりも遠いので、通信の復旧を図る移動の比重も若干はあるものの、ほぼ本来の目的を遂行することができる。
【0358】
移動体202は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体202は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3322に基づいて計算して求めた実移動ベクトル3602に従って、ほぼ西に向かって移動することになる。移動体202は、目標位置3311から自身の位置までの距離が移動体201よりも近いので、通信の復旧を図る移動の比重が移動体201よりは大きいものの、本来の目的を遂行することができる。
【0359】
移動体203は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体203は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3323に基づいて計算して求めた実移動ベクトル3603に従って、ほぼ北東に向かって移動することになる。移動体203は、目標位置3311から自身の位置までの距離が移動体204よりも遠いので、通信の復旧を図る移動の比重が移動体204よりは小さいものの、通信の復旧を図ることになる。
【0360】
移動体204は、西に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体204は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3324に基づいて計算して求めた実移動ベクトル3604に従って、ほぼ東南東に向かって移動し、主として通信の復旧を図ることになる。
【0361】
移動体205は、ほとんど移動しない基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、その場に停止する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体205は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3425に基づいて計算して求めた実移動ベクトル3605に従って、ほぼ東北東に向かって移動し、主として通信の復旧を図ることになる。
【0362】
移動体206は、東に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、東に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体206は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3526に基づいて計算して求めた実移動ベクトル3606に従って、ほぼ南西に向かって移動し、主として通信の復旧を図ることになる。
【0363】
移動体207は、東に向かって移動する基本移動ベクトル群を決定し、移動体205が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図3に示したように、東に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体205が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体207は、
図37に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3527に基づいて計算して求めた実移動ベクトル3607に従って、ほぼ東に向かって移動することになる。移動体207は、目標位置3311から自身の位置までの距離が移動体206よりも遠いので、通信の復旧を図る移動の比重はあるものの、本来の目的を遂行することができる。
【0364】
このように、移動体203−206は主として通信復旧動作を行い、移動体201−202及び移動体207は、主として不明群が存在しなかった場合の移動を行うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。移動体201−204の移動速度は、目標位置3311から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体201、移動体202、移動体203及び移動体204の順で、目標位置3311からの距離が遠い。そのため、移動体201は主として本来の目的のための移動を行うことができる。移動体202は通信の復旧を図る移動の比重が移動体201よりは大きいものの、本来の目的のための移動を行う。移動体203は通信の復旧が期待できる位置へ向かって移動体204よりも低速度で移動する。移動体204は、通信の復旧が期待できる位置へ向かって移動体203よりも速く移動し、主として通信復旧動作を担う。
【0365】
このため、移動体201−204が互いに離れる相対速度は小さな値に抑えることができるので、移動体201と移動体202との間、移動体202と移動体203との間、移動体202と移動体204との間、移動体203と移動体204との間の、それぞれの直接通信が直ちに切断されるリスクは小さい。
【0366】
また、移動体206−207の移動速度は、目標位置3511から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体207及び移動体206の順で、目標位置3511からの距離が遠い。そのため、移動体207は本来の目的のための移動を行うものの、通信の復旧を図る移動の比重もある。移動体206は、通信の復旧が期待できる位置へ向かって移動し、主として通信復旧動作を担う。
【0367】
このため、移動体206−207が互いに離れる相対速度は小さな値に抑えることができるので、移動体206と移動体207との間の直接通信が直ちに切断されるリスクは小さい。
【0368】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態2では、例えば
図37の例では、移動体201−202,207は、本来の目的のための移動を行うことができ、この課題を解決できている。
【0369】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態2では、例えば
図37の例では、移動体201−202,207は、本来の目的のための移動を行うことができ、この課題を解決できている。
【0370】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態2では、例えば
図37の例では、移動体203−206が、互いに集まるような移動を行うことにより、通信の復旧を図り、目標位置3311から遠い移動体201−202,207は、本来の目的のための移動を行うことができる。
【0371】
そして、移動体201−204の移動速度は、目標位置3311から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体201、移動体202、移動体203及び移動体204の順で、目標位置3311からの距離が遠い。そのため、移動体201は主として本来の目的のための移動を行うことができる。移動体202は通信の復旧を図る移動の比重が移動体201よりは大きいものの、本来の目的のための移動を行う。移動体203は通信の復旧が期待できる位置へ向かって移動体204よりも低速度で移動する。移動体204は、通信の復旧が期待できる位置へ向かって移動体203よりも速く移動し、主として通信復旧動作を担う。
【0372】
このため、移動体201−204が互いに離れる相対速度は小さな値に抑えることができるので、移動体201と移動体202との間、移動体202と移動体203との間、移動体202と移動体204との間、移動体203と移動体204との間の、それぞれの直接通信が直ちに切断されるリスクは小さい。
【0373】
また、移動体206−207の移動速度は、目標位置3511から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体207及び移動体206の順で、目標位置3511からの距離が遠い。そのため、移動体207は本来の目的のための移動を行うものの、通信の復旧を図る移動の比重もある。移動体206は、通信の復旧が期待できる位置へ向かって移動し、主として通信復旧動作を担う。
【0374】
このため、移動体206−207が互いに離れる相対速度は小さな値に抑えることができるので、移動体206と移動体207との間の直接通信が直ちに切断されるリスクは小さい。以上により、特許文献1で開示されている第4の技術の課題を解決できていることがわかる。
【0375】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合には、通信を復旧させることはできなかった。
図4の例では、特許文献1で開示されている第1の技術のいずれを用いたとしても、アドホックネットワークとの通信が切断された移動体207が通信の復旧のために移動した方向に、既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできなかった。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できなかった。
【0376】
これに対して、本開示の実施の形態2では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0377】
なお、移動体201−207の制御部602は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、向きが目標位置に向かう方向であり、大きさが目標位置から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトルを決定する。
【0378】
図38は、本開示の実施の形態2において、
図4に示す状況の場合に、複数の移動体201−206のそれぞれが、どのような分断復旧ベクトルを決定するかの一例を示す概念図である。
図38において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0379】
図38に示した通り、移動体201−206のそれぞれにおいては、既知群3701に属する移動体は、移動体201−206であり、不明群3702に属する移動体は、移動体207である。
【0380】
移動体201−206の制御部602は、向きが目標位置3711に向かう方向であり、大きさが目標位置3711から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトル3721−3726を決定する。
【0381】
図39は、本開示の実施の形態2において、
図4に示す状況の場合に、移動体207が、どのような分断復旧ベクトルを決定するかの一例を示す概念図である。
図39において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0382】
図39に示した通り、移動体207においては、既知群3801に属する移動体は、移動体207であり、不明群3802に属する移動体は、移動体201−206である。
【0383】
移動体207の制御部602は、向きが目標位置3811に向かう方向であり、大きさが目標位置3811から自身の位置までの距離の三乗に反比例した値である分断復旧ベクトル3827を決定する。
【0384】
図40は、本開示の実施の形態2における、
図4に示す状況での、複数の移動体201−207の実移動ベクトルの一例を示す概念図である。
図40において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0385】
移動体201は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体201は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3721に基づいて計算して求めた実移動ベクトル3901に従って、ほぼ南南西に向かって移動することになる。移動体201は、目標位置3711から自身の位置までの距離が移動体202−206よりも遠いので、通信の復旧を図る移動の比重も若干はあるものの、ほぼ本来の目的を遂行することができる。
【0386】
移動体202は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体202は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3722に基づいて計算して求めた実移動ベクトル3902に従って、ほぼ南南西に向かって移動することになる。移動体202は、目標位置3311から自身の位置までの距離が移動体201よりも近いので、通信の復旧を図る移動の比重が移動体201よりは大きいものの、本来の目的を遂行することができる。
【0387】
移動体203は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体203は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3723に基づいて計算して求めた実移動ベクトル3903に従って、ほぼ南南西に向かって移動することになる。移動体203は、目標位置3311から自身の位置までの距離が移動体202よりも近いので、通信の復旧を図る移動の比重が移動体202よりは大きいものの、本来の目的を遂行することができる。
【0388】
移動体204は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体204は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3724に基づいて計算して求めた実移動ベクトル3904に従って、ほぼ東南東に向かって移動することになる。移動体204は、目標位置3711から自身の位置までの距離が移動体205よりも遠いので、通信の復旧を図る移動の比重が移動体205よりは小さいものの、通信の復旧を図ることになる。
【0389】
移動体205は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体205は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3725に基づいて計算して求めた実移動ベクトル3905に従って、ほぼ北東に向かって移動することになる。移動体205は、目標位置3711から自身の位置までの距離が移動体206よりも遠いので、通信の復旧を図る移動の比重が移動体206よりは小さいものの、通信の復旧を図ることになる。
【0390】
移動体206は、ほぼ南南西に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ南南西に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体206は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3726に基づいて計算して求めた実移動ベクトル3906に従って、ほぼ北東に向かって移動し、主として通信の復旧を図ることになる。
【0391】
移動体207は、ほぼ東に向かって移動する基本移動ベクトル群を決定し、移動体207が他の移動体と離れ過ぎず、不明群に属する移動体が存在しなかった場合、
図4に示したように、ほぼ東に向かって移動する実移動ベクトルを決定する予定であった。しかしながら、移動体207が他の移動体と離れ過ぎて不明群に属する移動体が出現したことによって、移動体207は、
図40に示したように、基本移動ベクトル群に加えて分断復旧ベクトル3827に基づいて計算して求めた実移動ベクトル3907に従って、ほぼ南南西に向かって移動し、主として通信の復旧を図ることになる。
【0392】
このように、移動体204−207は主として通信復旧動作を行い、移動体201−203は主として不明群が存在しなかった場合の移動を行うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。移動体201−206の移動速度は、目標位置3711から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体201、移動体202、移動体203、移動体204、移動体205及び移動体206の順で、目標位置3711からの距離が遠い。
【0393】
そのため、移動体201は主として本来の目的のための移動を行うことができる。移動体202は通信の復旧を図る移動の比重が移動体201よりは大きいものの、本来の目的のための移動を行う。移動体203は通信の復旧を図る移動の比重が移動体202よりは大きいものの、本来の目的のための移動を行う。移動体204は通信の復旧が期待できる位置へ向かって移動体205よりも低速度で移動する。移動体205は通信の復旧が期待できる位置へ向かって移動体206よりも低速度で移動する。移動体206は、通信の復旧が期待できる位置へ向かって移動体205よりも速く移動し、主として通信復旧動作を担う。
【0394】
このため、移動体201−206が互いに離れる相対速度は小さな値に抑えることができるので、移動体201と移動体202との間、移動体202と移動体203との間、移動体202と移動体204との間、移動体203と移動体204との間、移動体204と移動体205との間、移動体205と移動体206との間の、それぞれの直接通信が直ちに切断されるリスクは小さい。
【0395】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態2では、例えば
図40の例では、移動体201−203は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0396】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態2では、例えば
図40の例では、移動体201−203は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0397】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態2では、例えば
図40の例では、移動体204−207が、互いに集まるような移動を行うことにより、通信の復旧を図り、目標位置3711から遠い移動体201−203は、本来の目的のための移動を行うことができる。そして、移動体201−206の移動速度は、目標位置3711から自身の位置までの距離の三乗に反比例した値の分断復旧ベクトルに従って決定され、移動体201、移動体202、移動体203、移動体204、移動体205及び移動体206の順で、目標位置3711からの距離が遠い。
【0398】
そのため、移動体201は主として本来の目的のための移動を行うことができる。移動体202は通信の復旧を図る移動の比重が移動体201よりは大きいものの、本来の目的のための移動を行う。移動体203は通信の復旧を図る移動の比重が移動体202よりは大きいものの、本来の目的のための移動を行う。移動体204は通信の復旧が期待できる位置へ向かって移動体205よりも低速度で移動する。移動体205は通信の復旧が期待できる位置へ向かって移動体206よりも低速度で移動する。移動体206は、通信の復旧が期待できる位置へ向かって移動体205よりも速く移動し、主として通信復旧動作を担う。
【0399】
このため、移動体201−206が互いに離れる相対速度は小さな値に抑えることができるので、移動体201と移動体202との間、移動体202と移動体203との間、移動体202と移動体204との間、移動体203と移動体204との間、移動体204と移動体205との間、移動体205と移動体206との間の、それぞれの直接通信が直ちに切断されるリスクは小さい。以上により、特許文献1で開示されている第4の技術の課題を解決できていることがわかる。
【0400】
本開示の実施の形態2のステップS1006の処理では、不明群に属する移動体が存在する限り、ステップS2807の処理で分断復旧ベクトルを決定する前に毎回目標位置を決定し直しているが、実施の形態2の第2の構成では、不明群に属する移動体が変更された場合にのみ目標位置を決定してもよい。
【0401】
実施の形態2の第2の構成の場合、不明群に属する移動体が変更された場合にのみ目標位置を決定するので、処理の効率化が図れる。
【0402】
本開示の実施の形態2のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS2807の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態2の第3の構成では、ステップS1005の処理を初めて実行した時刻を記憶しておき、ステップS1005の処理を初めて実行した時刻から0より大きい復旧期限が経過している場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。なお、復旧期限の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0403】
実施の形態2の第3の構成の場合、復旧期限が経過しても通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0404】
なお、実施の形態2の第3の構成において、一旦、復旧期限が経過した後でも、不明群に属する移動体が変更された場合、又は更に一定の時間が経過した場合など、適切なタイミングで、ステップS1005の処理を初めて実行した時刻をリセットし、再び、ステップS1005−ステップS2807の処理を実行できるようにしてもよい(実施の形態2の第4の構成)。
【0405】
実施の形態2の第4の構成の場合、復旧期限が経過した後、一定の条件が成立した場合には、通信復旧動作をリトライすることができる。
【0406】
本開示の実施の形態2のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS2807の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態2の第5の構成では、目標位置までの距離が、移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。なお、移動中止判定距離の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0407】
実施の形態2の第5の構成の場合、目標位置までの距離が、移動中止判定距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0408】
なお、実施の形態2の第5の構成において、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい(実施の形態2の第6の構成)。
【0409】
実施の形態2の第6の構成の場合、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0410】
本開示の実施の形態2のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS2807の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態2の第7の構成では、特定の位置から目標位置までの距離に移動中止判定係数を乗じた距離を示す第2移動中止判定距離を算出し、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。なお、第2移動中止判定係数の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0411】
実施の形態2の第7の構成の場合、目標位置までの距離が、特定の位置から目標位置までの距離に第2移動中止判定係数を乗じた距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0412】
なお、実施の形態2の第7の構成において、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい(実施の形態2の第8の構成)。
【0413】
実施の形態2の第8の構成の場合、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、第2移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0414】
本開示の実施の形態2のステップS1004の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS1005−ステップS2807の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態2の第9の構成では、目標位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。
【0415】
実施の形態2の第9の構成の場合、目標位置に到達しても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0416】
なお、実施の形態2の第9の構成において、一旦、目標位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい(実施の形態2の第10の構成)。
【0417】
実施の形態2の第10の構成の場合、一旦、目標位置に到達した後に、再び、目標位置から離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0418】
本開示の実施の形態2の第3から第10の構成において、ステップS1004の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行した時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割してもよい(実施の形態2の第11の構成)。
【0419】
実施の形態2の第11の構成の場合、既知群に属する移動体のそれぞれは、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0420】
本開示の実施の形態2の第3から第10の構成において、ステップS1004の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、アドホックネットワークを分割することを通知する分割通知を送信してもよい(実施の形態2の第12の構成)。また、他の移動体から分割通知を受信した時には、ステップS1004の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。これにより、通信復旧動作を中止し、その時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0421】
実施の形態2の第12の構成の場合、既知群に属する移動体のそれぞれは、同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0422】
本開示の実施の形態2の第3から第10の構成において、ステップS1004の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、既知群に属する移動体のグループを特定する既知群情報を送信してもよい(実施の形態2の第13の構成)。また、他の移動体から既知群情報を受信した時には、ステップS1004の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS1005−ステップS2807の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS1010)、ステップS1008の処理に移行してもよい。これにより、通信復旧動作を中止し、既知群情報で特定される移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0423】
実施の形態2の第13の構成の場合、既知群に属する移動体のそれぞれは、通信によるタイムラグの影響を受けずに、確実に同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0424】
(実施の形態3)
本開示の実施の形態3における、複数の移動体によって構成されるアドホックネットワークの全体像を表した概念図は、
図6と同じであるので、説明を省略する。
【0425】
本開示の実施の形態3における、移動体101の機能構成を示したブロック図は、
図8と同じであるので、説明を省略する。ただし、記憶部603に記憶される情報の詳細については、
図9、
図10及び
図11とは異なっているので、
図41、
図42及び
図43を用いて説明する。
【0426】
図41は、本開示の実施の形態3における、移動体101の記憶部603に記憶される情報の一例を示す図である。
図41において、
図6及び
図8と同じ構成要素については同じ符号を用い、説明を省略する。
【0427】
記憶部603は、移動体101自身に関する情報である自移動体情報5801と、他の移動体に関する情報である他移動体情報5802とを記憶する。
【0428】
自移動体情報5801は、自身をユニークに識別するための移動体識別情報と、位置検出部604によって検出した自身の位置情報と、直接通信可能な他の移動体を示す直接通信群に属する移動体の移動体識別情報から成る直接通信群情報と、自身及びアドホックネットワークを介した通信を行うことが可能な移動体の移動体識別情報から成る既知群情報と、アドホックネットワークを介した通信を行うことが不可能な移動体の移動体識別情報から成る不明群情報と、不明群が存在する場合の通信の復旧のための移動における目標位置の位置情報である目標位置情報と、直接通信群の一部又は全部の移動体との直接通信を維持するための移動ベクトルを示す通信維持移動ベクトルに関する情報である通信維持移動ベクトル情報と、直接通信の維持を図らない場合の移動を制御する一つ以上の移動ベクトルを示す第2基本移動ベクトル群に関する情報である第2基本移動ベクトル群情報と、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群に関する情報である基本移動ベクトル群情報と、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルに関する情報である分断復旧ベクトル情報と、実際の移動を規定する実移動ベクトルに関する情報である実移動ベクトル情報とから構成される。
【0429】
他移動体情報5802は、他の移動体をユニークに識別するための移動体識別情報と、他の移動体の位置を示す位置情報と、直接通信群に属する一つ以上の移動体のそれぞれに対して決定される、当該移動体に向かって移動するような移動ベクトルを示す接近ベクトルに関する情報である接近ベクトル情報と、直接通信群に属する一つ以上の移動体のそれぞれに対して決定される、当該移動体から離れるように移動するような移動ベクトルを示す反発ベクトルに関する情報である反発ベクトル情報とから構成される。
【0430】
通信部601は、更に、移動体101とネットワークを構成する、移動体101及び第1の通信対象移動体(例えば、移動体105)とは異なる第2の通信対象移動体(例えば、移動体102)から送信された、移動体102の第2位置、第2速度、及び第2加速度のいずれかを示す第2情報を受信する。制御部602は、第2情報に基づいて、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、又は、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量(第2基本移動ベクトル群情報)を決定する。制御部602は、第4制御量に基づいて第1制御量(基本移動ベクトル群情報)を更新する。制御部602は、移動体101の現在位置と、第2の通信対象移動体(例えば、移動体102)の第2位置とから算出された距離に基づいて、第4制御量(第2基本移動ベクトル群情報)を決定する。
【0431】
図42は、本開示の実施の形態3における、移動体101の記憶部603に記憶する自移動体情報5801の一例を示す図である。
図42において、
図6及び
図41と同じ構成要素については同じ符号を用い、説明を省略する。また、
図42において、
図10の自移動体情報701に含まれる情報と同じ情報については説明を省略する。
【0432】
移動体101は、例えば、
図42に示す形式で、自移動体情報5801を記憶部603に記憶する。自移動体情報5801は、自身をユニークに識別するための移動体識別情報と、位置検出部604によって検出した自身の位置情報と、直接通信可能な他の移動体を示す直接通信群に属する移動体の移動体識別情報から成る直接通信群情報と、自身及びアドホックネットワークを介した通信を行うことが可能な移動体の移動体識別情報から成る既知群情報と、アドホックネットワークを介した通信を行うことが不可能な移動体の移動体識別情報から成る不明群情報と、不明群が存在する場合の通信の復旧のための移動における目標位置の位置情報である目標位置情報と、直接通信群の一部又は全部の移動体との直接通信を維持するための移動ベクトルを示す通信維持移動ベクトルに関する情報である通信維持移動ベクトル情報と、直接通信の維持を図らない場合の移動を制御する一つ以上の移動ベクトルを示す第2基本移動ベクトル群に関する情報である第2基本移動ベクトル群情報と、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群に関する情報である基本移動ベクトル群情報と、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルに関する情報である分断復旧ベクトル情報と、実際の移動を規定する実移動ベクトルに関する情報である実移動ベクトル情報とを含む。
【0433】
図42で示す自移動体情報5801は、自身の移動体識別情報の値が「移動体101」であり、自身の位置情報の値が「北緯34度41分37.0秒、東経135度30分7.1秒、海抜2m」であり、既知群情報の値が「移動体101、移動体102、移動体103、移動体104」であり、不明群情報の値が「移動体105、移動体106、移動体107」であり、目標位置情報の値が「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」であり、通信維持移動ベクトル情報の値が「(1m/s,1m/s,0m/s)」であり、第2基本移動ベクトル群情報の第2主基本移動ベクトルの値が「(−5m/s,−2m/s,0m/s)」であり、第2基本移動ベクトル群情報の第2障害物回避基本移動ベクトルの値が「(0m/s,5m/s,0m/s)」であり、基本移動ベクトル群情報の主基本移動ベクトルの値が「(−4.5m/s,−1.5m/s,0m/s)」であり、基本移動ベクトル群情報の障害物回避基本移動ベクトルの値が「(0.5m/s,5.5m/s,0m/s)」であり、分断復旧ベクトル情報の値が「(0m/s,0m/s,0m/s)」であり、実移動ベクトル情報の値が「(−1.75m/s,4.75m/s,0m/s)」であることを示している。
【0434】
図42では、第2基本移動ベクトル群情報は、第2主基本移動ベクトル情報と、第2障害物回避基本移動ベクトル情報との組みで表現される。すなわち、第2基本移動ベクトル群は、第2主基本移動ベクトルと、第2障害物回避基本移動ベクトルとの組みであるとしている。ここで、第2主基本移動ベクトルとは、直接通信の維持を図らない場合の、移動体が本来の目的を達成する為の移動を表現した移動ベクトルである。また、第2障害物回避基本移動ベクトルとは、直接通信の維持を図らない場合の、移動体が近くに存在する障害物を回避する為の移動を表現した移動ベクトルである。なお、第2基本移動ベクトル群を構成する移動ベクトルの数と、それらの移動ベクトルが表現する移動内容には、もちろん、様々なバリエーションが考えられ、本開示の主旨とは無関係であることは言うまでもない。以下、本明細書では、特に明記しない限り、第2基本移動ベクトル群については、ここで説明した第2主基本移動ベクトルと、第2障害物回避基本移動ベクトルとの組みを用いて説明する。
【0435】
図43は、本開示の実施の形態3における、移動体101の記憶部603に記憶する他移動体情報5802の一例を示す図である。
図43において、
図6及び
図41と同じ構成要素については同じ符号を用い、説明を省略する。また、
図43において、
図11の他移動体情報702に含まれる情報と同じ情報については説明を省略する。
【0436】
移動体101は、例えば、
図43に示す形式で、他移動体情報5802を記憶部603に記憶する。他移動体情報5802は、他の移動体をユニークに識別するための移動体識別情報と、他の移動体から受信した他の移動体の位置情報と、直接通信群に属する一つ以上の移動体のそれぞれに対して決定される、当該移動体に向かって移動するような移動ベクトルを示す接近ベクトルに関する情報である接近ベクトル情報と、直接通信群に属する一つ以上の移動体のそれぞれに対して決定される、当該移動体から離れるように移動するような移動ベクトルを示す反発ベクトルに関する情報である反発ベクトル情報とを含む。
【0437】
図43で示す他移動体情報5802は、移動体102の移動体識別情報の値が「移動体102」であり、移動体102の位置情報の値が「北緯34度41分37.5秒、東経135度30分7.6秒、海抜2m」であり、接近ベクトル情報の値が「接近ベクトルの数が1であり、接近ベクトルの値が(3m/s,3m/s,0m/s)」であり、反発ベクトル情報の値が「反発ベクトルの数が1であり、反発ベクトルの値は(−2m/s,−2m/s,0m/s)」であることを示している。移動体103−107の移動体識別情報、位置情報、接近ベクトル情報及び反発ベクトル情報についても、同様である。
【0438】
図44は、本開示の実施の形態3における、移動体101の移動制御の全体動作を示す第1のフローチャートであり、
図45は、本開示の実施の形態3における、移動体101の移動制御の全体動作を示す第2のフローチャートである。
【0439】
なお、ステップS6101−ステップS6109の処理の実行においては、不明群に属する移動体が存在するか否かにかかわらず、実行する内容は同じであるので、以下、特に断らない限り、移動体105が故障した場合の例を用いて説明する。
【0440】
なお、基本移動ベクトル群の一例の概念図は、
図13と同じであるので、説明を省略する。
【0441】
また、移動体105が故障した場合の、移動体101−104のそれぞれにおける既知群及び不明群を示す概念図は、
図14と同じであるので、説明を省略する。
【0442】
また、移動体105が故障した場合の、移動体106−107のそれぞれにおける既知群及び不明群を示す概念図は、
図15と同じであるので、説明を省略する。
【0443】
まず、移動体101の制御部602は、移動体102−107と通信を試み、直接通信が行えた移動体を直接通信群として特定する(ステップS6101)。そして、制御部602は、自移動体情報5801のうち、直接通信群に属する全ての移動体の移動体識別情報から成る直接通信群情報を更新する。
【0444】
図6、
図13、
図14及び
図15に示されている通り、移動体105が故障していない場合でも、移動体105が故障した場合でも、移動体101は、移動体102とのみ直接通信が可能であるので、制御部602は、移動体102のみを直接通信群として特定し、自移動体情報5801の直接通信群情報を更新する。
【0445】
次に、移動体101の制御部602は、直接通信群に属する移動体のそれぞれの位置から自身の位置までの距離を算出する(ステップS6102)。
【0446】
なお、移動体105が故障した時点で、移動体105−107のそれぞれは、
図43の他移動体情報5802に記載した位置にあるとする。
【0447】
移動体101に対する直接通信群は移動体102のみであるので、移動体101の制御部602は、移動体102の位置から自身の位置までの距離を算出する。移動体101と移動体102との間の距離は、19.9mである。
【0448】
次に、移動体101の制御部602は、直接通信群に属する移動体のそれぞれに対する反発ベクトルを決定する(ステップS6103)。
【0449】
ここでは、制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離によらず、一定の大きさを持ち、当該移動体へ向かう向きと反対方向の向きを持つ移動ベクトルを、反発ベクトルとして決定する。反発ベクトルの大きさは2.8m/sとする。
【0450】
図46は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体101における、反発ベクトル、接近ベクトル及び通信維持移動ベクトルの決定方法を説明するための概念図である。
図46において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0451】
図46に示したように、移動体101の直接通信群に属する移動体は、移動体102のみである。従って、移動体101の制御部602は、大きさが2.8m/sであり、移動体102へ向かう向きとは反対方向の向きを持つ移動ベクトルを、移動体102に対する反発ベクトル4221として決定する。この場合、反発ベクトル4221は、(−2m/s,−2m/s,0m/s)となる。
【0452】
移動体102−104,106−107の反発ベクトルも、移動体101の反発ベクトルと同様にして決定される。
【0453】
図47は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体102における、反発ベクトル、接近ベクトル及び通信維持移動ベクトルの決定方法を説明するための概念図である。
図47において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0454】
図47に示したように、移動体102の直接通信群に属する移動体は、移動体101、移動体103及び移動体104の3つである。従って、移動体102の制御部602は、大きさが2.8m/sであり、移動体101へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体101に対する反発ベクトル4312として決定する。移動体102の制御部602は、大きさが2.8m/sであり、移動体103へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体103に対する反発ベクトル4332として決定する。移動体102の制御部602は、大きさが2.8m/sであり、移動体104へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体104に対する反発ベクトル4342として決定する。
【0455】
図48は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体103における、反発ベクトル、接近ベクトル及び通信維持移動ベクトルの決定方法を説明するための概念図である。
図48において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0456】
図48に示したように、移動体103の直接通信群に属する移動体は、移動体102及び移動体104の2つである。従って、移動体103の制御部602は、大きさが2.8m/sであり、移動体102へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体102に対する反発ベクトル4423として決定する。移動体103の制御部602は、大きさが2.8m/sであり、移動体104へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体104に対する反発ベクトル4443として決定する。
【0457】
図49は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体104における、反発ベクトル、接近ベクトル及び通信維持移動ベクトルの決定方法を説明するための概念図である。
図49において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0458】
図49に示したように、移動体104の直接通信群に属する移動体は、移動体102及び移動体103の2つである。従って、移動体104の制御部602は、大きさが2.8m/sであり、移動体102へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体102に対する反発ベクトル4524として決定する。移動体104の制御部602は、大きさが2.8m/sであり、移動体103へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体103に対する反発ベクトル4534として決定する。
【0459】
図50は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体106における、反発ベクトル、接近ベクトル及び通信維持移動ベクトルの決定方法を説明するための概念図である。
図50において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0460】
図50に示したように、移動体106の直接通信群に属する移動体は、移動体107のみである。従って、移動体106の制御部602は、大きさが2.8m/sであり、移動体107へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体107に対する反発ベクトル4676として決定する。
【0461】
図51は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体107における、反発ベクトル、接近ベクトル及び通信維持移動ベクトルの決定方法を説明するための概念図である。
図51において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0462】
図51に示したように、移動体107の直接通信群に属する移動体は、移動体106のみである。従って、移動体107の制御部602は、大きさが2.8m/sであり、移動体106へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体106に対する反発ベクトル4767として決定する。
【0463】
次に、移動体101の制御部602は、直接通信群に属する移動体のそれぞれに対する接近ベクトルを決定する(ステップS6104)。
【0464】
ここでは、制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離の二乗に比例した大きさを持ち、当該移動体へ向かう向きを持つ移動ベクトルを、接近ベクトルとして決定する。移動体102の位置から移動体101の位置までの距離19.9mの二乗に比例した大きさは、4.2m/sとする。つまり、制御部602は、移動体間の距離が大きいほど、大きさが大きい接近ベクトルを決定する。制御部602は、移動体101の現在位置と移動体102の位置とから算出された距離が短いほど、移動距離(第4移動距離)、速度絶対値(第4速度絶対値)、又は加速度絶対値(第4加速度絶対値)を小さくしてもよい。
【0465】
図46に示したように、移動体101の直接通信群に属する移動体は、移動体102のみである。従って、移動体101の制御部602は、移動体102の位置から自身の位置までの距離19.9mの二乗に比例した大きさ4.2m/sを持ち、移動体102へ向かう向きを持つ移動ベクトルを、移動体102に対する接近ベクトル4212として決定する。この場合、接近ベクトル4212は、(3m/s,3m/s,0m/s)となる。
【0466】
移動体102−104,106−107の接近ベクトルも、移動体101の接近ベクトルと同様にして決定される。
【0467】
図47に示したように、移動体102の直接通信群に属する移動体は、移動体101、移動体103及び移動体104の3つである。従って、移動体102の制御部602は、移動体101の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体101へ向かう向きを持つ移動ベクトルを、移動体101に対する接近ベクトル4321として決定する。移動体102の制御部602は、移動体103の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体103へ向かう向きを持つ移動ベクトルを、移動体103に対する接近ベクトル4323として決定する。移動体102の制御部602は、移動体104の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体104へ向かう向きを持つ移動ベクトルを、移動体104に対する接近ベクトル4324として決定する。
【0468】
図48に示したように、移動体103の直接通信群に属する移動体は、移動体102及び移動体104の2つである。従って、移動体103の制御部602は、移動体102の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体102へ向かう向きを持つ移動ベクトルを、移動体102に対する接近ベクトル4432として決定する。移動体103の制御部602は、移動体104の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体104へ向かう向きを持つ移動ベクトルを、移動体104に対する接近ベクトル4434として決定する。
【0469】
図49に示したように、移動体104の直接通信群に属する移動体は、移動体102及び移動体103の2つである。従って、移動体104の制御部602は、移動体102の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体102へ向かう向きを持つ移動ベクトルを、移動体102に対する接近ベクトル4542として決定する。移動体104の制御部602は、移動体103の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体103へ向かう向きを持つ移動ベクトルを、移動体103に対する接近ベクトル4543として決定する。
【0470】
図50に示したように、移動体106の直接通信群に属する移動体は、移動体107のみである。従って、移動体106の制御部602は、移動体107の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体107へ向かう向きを持つ移動ベクトルを、移動体107に対する接近ベクトル4667として決定する。
【0471】
図51に示したように、移動体107の直接通信群に属する移動体は、移動体106のみである。従って、移動体107の制御部602は、移動体106の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体106へ向かう向きを持つ移動ベクトルを、移動体106に対する接近ベクトル4776として決定する。
【0472】
なお、移動体の制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離の二乗に反比例した大きさを持ち、当該移動体へ向かう向きを持つ移動ベクトルを、接近ベクトルとして決定してもよい。すなわち、制御部602は、移動体101の現在位置と移動体102の位置とから算出された距離が短いほど、移動距離(第4移動距離)、速度絶対値(第4速度絶対値)、又は加速度絶対値(第4加速度絶対値)を大きくしてもよい。
【0473】
次に、移動体101の制御部602は、反発ベクトルのそれぞれと、接近ベクトルのそれぞれとに対して0以外の値を乗じた移動ベクトルの和を計算し、計算結果の移動ベクトルを通信維持移動ベクトルとして決定する(ステップS6105)。そして、制御部602は、通信維持移動ベクトルに関する情報である通信維持移動ベクトル情報を作成し、自移動体情報5801の通信維持移動ベクトル情報を更新する。
【0474】
ここでは、制御部602は、反発ベクトルのそれぞれと、接近ベクトルのそれぞれとに対して、1を乗じた上で、全ての移動ベクトルの和を計算する。なお、反発ベクトルのそれぞれと、接近ベクトルのそれぞれとに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0475】
図46に示したように、移動体101の直接通信群に属する移動体は、移動体102のみである。従って、移動体101の制御部602は、移動体102に対する反発ベクトル4221(−2m/s,−2m/s,0m/s)に1を乗じた移動ベクトルと、移動体102に対する接近ベクトル4212(3m/s,3m/s,0m/s)に1を乗じた移動ベクトルとの和(1m/s,1m/s,0m/s)を、通信維持移動ベクトル4201として決定する。
【0476】
移動体102−104,106−107の通信維持移動ベクトルも、移動体101の通信維持移動ベクトルと同様にして決定される。
【0477】
図47に示したように、移動体102の直接通信群に属する移動体は、移動体101、移動体103及び移動体104の3つである。従って、移動体102の制御部602は、移動体101に対する反発ベクトル4312に1を乗じた移動ベクトルと、移動体103に対する反発ベクトル4332に1を乗じた移動ベクトルと、移動体104に対する反発ベクトル4342に1を乗じた移動ベクトルと、移動体101に対する接近ベクトル4321に1を乗じた移動ベクトルと、移動体103に対する接近ベクトル4323に1を乗じた移動ベクトルと、移動体104に対する接近ベクトル4324に1を乗じた移動ベクトルとの和を、通信維持移動ベクトル4302として決定する。
【0478】
図48に示したように、移動体103の直接通信群に属する移動体は、移動体102及び移動体104の2つである。従って、移動体103の制御部602は、移動体102に対する反発ベクトル4423に1を乗じた移動ベクトルと、移動体104に対する反発ベクトル4443に1を乗じた移動ベクトルと、移動体102に対する接近ベクトル4432に1を乗じた移動ベクトルと、移動体104に対する接近ベクトル4434に1を乗じた移動ベクトルとの和を、通信維持移動ベクトル4403として決定する。
【0479】
図49に示したように、移動体104の直接通信群に属する移動体は、移動体102及び移動体103の2つである。従って、移動体104の制御部602は、移動体102に対する反発ベクトル4524に1を乗じた移動ベクトルと、移動体103に対する反発ベクトル4534に1を乗じた移動ベクトルと、移動体102に対する接近ベクトル4542に1を乗じた移動ベクトルと、移動体103に対する接近ベクトル4543に1を乗じた移動ベクトルとの和を、通信維持移動ベクトル4504として決定する。
【0480】
図50に示したように、移動体106の直接通信群に属する移動体は、移動体107のみである。従って、移動体106の制御部602は、移動体107に対する反発ベクトル4676に1を乗じた移動ベクトルと、移動体107に対する接近ベクトル4667に1を乗じた移動ベクトルとの和を、通信維持移動ベクトル4606として決定する。
【0481】
図51に示したように、移動体107の直接通信群に属する移動体は、移動体106のみである。従って、移動体107の制御部602は、移動体106に対する反発ベクトル4767に1を乗じた移動ベクトルと、移動体106に対する接近ベクトル4776に1を乗じた移動ベクトルとの和を、通信維持移動ベクトル4707として決定する。
【0482】
次に、移動体101の制御部602は、直接通信の維持を図らない場合の移動を制御する一つ以上の移動ベクトルを示す第2基本移動ベクトル群を決定する(ステップS6106)。そして、制御部602は、第2基本移動ベクトル群に関する情報である第2基本移動ベクトル群情報を作成し、自移動体情報5801の第2基本移動ベクトル群情報を更新する。
【0483】
図52は、本開示の実施の形態3における、第2基本移動ベクトル群の一例を示す概念図である。
図52において、
図6、
図14、
図16及び
図46と同じ構成要素については同じ符号を用い、説明を省略する。
【0484】
図52に示した場面では、移動体101は、直接通信の維持を図らない場合には、本来の目的を達成する為に、何の制約もなければ、西方向に5m/sの移動成分と、南方向に2m/sの移動成分とを含む移動ベクトルで移動するのが最善であるとする。この場合、第2主基本移動ベクトル4811は、(−5m/s,−2m/s,0m/s)となる。
【0485】
ところが、移動体101の西方向には、障害物が存在している。このため、移動体101は、この障害物を迂回して移動する必要がある。このため、直接通信の維持を図らない場合には、障害物を迂回するために、北に5m/sの移動成分を含む移動ベクトルで移動する動作が必要であるとする。この場合、第2障害物回避基本移動ベクトル4812は、(0m/s,5m/s,0m/s)となる。
【0486】
次に、移動体101の制御部602は、アドホックネットワークを介して、移動体102−107と通信を試み、通信が行えたか否かに従って、アドホックネットワークを介した通信を行うことが可能な移動体のグループである既知群と、アドホックネットワークを介した通信を行うことが不可能な移動体のグループである不明群とを、それぞれ特定する(ステップS6107)。そして、制御部602は、自移動体情報5801のうち、既知群に属する全ての移動体の移動体識別情報から成る既知群情報と、不明群に属する全ての移動体の移動体識別情報から成る不明群情報とを更新する。
【0487】
次に、移動体101の制御部602は、既知群の位置情報を更新する(ステップS6108)。このとき、位置検出部604は、自身の位置情報を検出し、自移動体情報5801の位置情報を更新する。更に、通信部601は、既知群に属する全ての移動体に対して、アドホックネットワークを介して、移動体識別情報と位置情報とを送信するよう要求し、既知群に属する移動体から移動体識別情報と位置情報とを受信する。そして、制御部602は、他移動体情報5802の位置情報を更新する。
【0488】
次に、移動体101の制御部602は、第2基本移動ベクトル群に属するそれぞれの移動ベクトルと、通信維持移動ベクトルとに対して、それぞれ0以外の値を乗じた移動ベクトルの和を計算し、計算結果の移動ベクトル群を基本移動ベクトル群として決定する(ステップS6109)。そして、制御部602は、基本移動ベクトル群に関する情報である基本移動ベクトル群情報を作成し、自移動体情報5801の基本移動ベクトル情報を更新する。
【0489】
ここでは、制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の2つの移動ベクトルの和を主基本移動ベクトルとして決定する。また、制御部602は、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の2つの移動ベクトルの和を障害物回避基本移動ベクトルとして決定する。なお、第2基本移動ベクトル群に属するそれぞれの移動ベクトルに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0490】
図52に示したように、これまで説明してきた通り、今回の例では、移動体101の第2主基本移動ベクトル4811は(−5m/s,−2m/s,0m/s)であり、通信維持移動ベクトル4201は(1m/s,1m/s,0m/s)であるから、計算結果の移動ベクトルは(−4.5m/s,−1.5m/s,0m/s)となる。そのため、移動体101の制御部602は、計算結果の移動ベクトル(−4.5m/s,−1.5m/s,0m/s)を、基本移動ベクトル群のうちの主基本移動ベクトル4801として決定する。また、今回の例では、移動体101の第2障害物回避基本移動ベクトル4812は(0m/s,5m/s,0m/s)であり、通信維持移動ベクトル4201は(1m/s,1m/s,0m/s)であるから、計算結果の移動ベクトルは(0.5m/s,5.5m/s,0m/s)となる。そのため、移動体101の制御部602は、計算結果の移動ベクトル(0.5m/s,5.5m/s,0m/s)を、基本移動ベクトル群のうちの障害物回避基本移動ベクトル4802として決定する。
【0491】
次に、移動体101の制御部602は、不明群に属する移動体が存在するか否かを判断する(ステップS6110)。
【0492】
ステップS6110で不明群に属する移動体が存在しないと判断された場合(ステップS6110でNO)、移動体101の制御部602は、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、以下で説明するステップS6115の処理に移行する。
【0493】
例えば、
図13の場面では、不明群は存在せず、移動体101−107が全て既知群に属しているので、移動体101の制御部602は、分断復旧ベクトルの大きさを0に決定し、以下で説明するステップS6115の処理に移行する。
【0494】
一方、ステップS6110で不明群に属する移動体が存在すると判断された場合(ステップS6110でYES)、制御部602は、ステップS6111−ステップS6114の処理を実行する。
【0495】
ステップS6110で不明群に属する移動体が存在すると判断された場合、まず、移動体101の制御部602は、他移動体情報5802から、不明群に属する全ての移動体の位置情報を取得する(ステップS6111)。
【0496】
本開示の実施の形態3における、1の移動体105が故障した場合の、既知群に属する移動体101−104と不明群に属する移動体105−107とを示す概念図は、
図14と同じであるので、説明を省略する。
【0497】
本開示の実施の形態3における、1の移動体105が故障した場合の、既知群に属する移動体106−107と不明群に属する移動体101−104とを示す概念図は、
図15と同じであるので、説明を省略する。
【0498】
次に、移動体101の制御部602は、ステップS6111で取得した不明群に属する移動体の位置情報に基づいて、一つ以上の目標位置を決定する(ステップS6112)。
【0499】
目標位置は、例えば、不明群に属する全ての移動体の位置の中心位置、又は不明群に属する全ての移動体の位置のうち、自身に最も近い位置である。
【0500】
次に、移動体101の制御部602は、目標位置から自身の位置までの距離を算出する(ステップS6113)。
【0501】
本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体101−104のそれぞれにおける、目標位置の決定方法と、当該決定方法によって決定された目標位置との一例を示す図は、
図16と同じである。なお、移動体105−107のそれぞれは、
図43の他移動体情報5802に記載した位置にあるとする。
【0502】
例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、移動体101−104のそれぞれの目標位置は、
図16の目標位置1401となり、目標位置1401の値は「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」となる。この場合、目標位置1401から移動体101−104のそれぞれの位置までの距離は、53.3m、37.6m、35.5m及び27.9mとなる。
【0503】
また、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する場合には、移動体101−104のそれぞれの目標位置は、
図16の目標位置1402、すなわち、移動体105の位置となり、目標位置1402の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。この場合、目標位置1402から移動体101−104のそれぞれの位置までの距離は、40.6m、25.0m、22.7m及び19.9mとなる。ただし、ここでは、緯度1秒分の距離を31mとし、経度1秒分の距離を25mとして、簡易的に近似値を計算しているが、緯度及び経度の差分から距離を計算する計算方法については、本開示の主旨とは無関係であることは言うまでもない。以下、本明細書では、特に明記しない限り、ここで示した簡易的な計算によって、緯度及び経度の差分から距離を計算することとする。
【0504】
本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体106−107のそれぞれにおける、目標位置の決定方法と、当該決定方法によって決定された目標位置との一例を示す図は、
図17と同じである。なお、移動体101−105のそれぞれは、
図43の他移動体情報5802に記載した位置にあるとする。
【0505】
例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、移動体106−107のそれぞれの目標位置は、
図17の目標位置1501となり、目標位置1501の値は「北緯34度41分37.48秒、東経135度30分7.82秒、海抜2m」となる。この場合、目標位置1501から移動体106−107のそれぞれの位置までの距離は、33.5m及び44.5mとなる。また、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する場合には、移動体106−107のそれぞれの目標位置は、
図17の目標位置1502、すなわち、移動体105の位置となり、目標位置1502の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。この場合、目標位置1502から移動体106−107のそれぞれの位置までの距離は、15.6m及び25.0mとなる。
【0506】
次に、移動体101の制御部602は、目標位置から自身の位置までの距離に応じて、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルを決定する(ステップS6114)。そして、制御部602は、分断復旧ベクトルに関する情報である分断復旧ベクトル情報を作成し、自移動体情報5801の分断復旧ベクトル情報を更新する。
【0507】
ここで、分断復旧ベクトルの一例を説明する。移動体101−107の制御部602は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、既知群に属する移動体の中で、自身が目標位置に最も近い場合には、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトルを決定し、自身が目標位置に最も近くない場合には、大きさが0である分断復旧ベクトルを決定する。
【0508】
図53は、本開示の実施の形態3において、1の移動体105が故障した場合の、複数の他の移動体101−104のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図53において、
図6、
図14及び
図16と同じ構成要素については同じ符号を用い、説明を省略する。
【0509】
上述した通り、目標位置1402から移動体101−104のそれぞれの位置までの距離は、40.6m、25.0m、22.7m及び19.9mである。従って、目標位置1402に最も近い移動体104の制御部602は、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトル(5m/s,−4m/s,0m/s)を、分断復旧ベクトル4004として決定する。また、移動体101−103の制御部602は、大きさが0である分断復旧ベクトル4001−4003を決定する。
【0510】
図54は、本開示の実施の形態3において、1の移動体105が故障した場合の、複数の他の移動体106−107のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図54において、
図6、
図15及び
図17と同じ構成要素については同じ符号を用い、説明を省略する。
【0511】
上述した通り、目標位置1502から移動体106−107のそれぞれの位置までの距離は、15.6m及び25.0mである。従って、目標位置1502に最も近い移動体106の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル(−5m/s,−4m/s,0m/s)を、分断復旧ベクトル4106として決定する。また、移動体107の制御部602は、大きさが0である分断復旧ベクトル4107を決定する。
【0512】
次に、移動体101の制御部602は、基本移動ベクトル群に属する全ての移動ベクトルと、分断復旧ベクトルとに対して、それぞれ0以外の値を乗じた移動ベクトルの和を計算し、計算結果の移動ベクトルを実移動ベクトルとして決定する(ステップS6115)。そして、制御部602は、実移動ベクトルに関する情報である実移動ベクトル情報を作成し、自移動体情報5801の実移動ベクトル情報を更新する。
【0513】
図55は、本開示の実施の形態3において、1の移動体105が故障した場合の、他の移動体101における、実移動ベクトルの決定方法の一例を示す概念図である。
図55において、
図6、
図14、
図16、
図52及び
図53と同じ構成要素については同じ符号を用い、説明を省略する。
【0514】
ここでは、制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の移動ベクトルの和を計算する。なお、基本移動ベクトル群に属するそれぞれの移動ベクトルに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0515】
図55に示す例では、移動体101の主基本移動ベクトル4801は(−4.5m/s,−1.5m/s,0m/s)であり、障害物回避基本移動ベクトル4802は(0.5m/s,5.5m/s,0m/s)であり、分断復旧ベクトル4001は(0m/s,0m/s,0m/s)であるから、計算結果の移動ベクトルは(−1.75m/s,4.75m/s,0m/s)となる。移動体101の制御部602は、計算結果の移動ベクトル(−1.75m/s,4.75m/s,0m/s)を実移動ベクトル4901として決定する。
【0516】
移動体105が故障した場合の分断復旧ベクトル4001の大きさは0である。そのため、移動体101は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図55に示したように、実移動ベクトル4901(−1.75m/s,4.75m/s,0m/s)に従って、ほぼ北北西に向かって移動することになる。移動体101の直接通信群に属する移動体102と移動体101との間の距離が、移動体102と移動体104との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体102よりも小さくなり、ほぼ本来の目的を遂行することができる。
【0517】
移動体102−104,106−107の基本移動ベクトル群及び実移動ベクトルも、移動体101の基本移動ベクトル群及び実移動ベクトルと同様にして決定される。
【0518】
図56は、本開示の実施の形態3において、1の移動体105が故障した場合の、複数の他の移動体101−104,106−107における、実移動ベクトルの一例を示す概念図である。
図56において、
図6及び
図55と同じ構成要素については同じ符号を用い、説明を省略する。
【0519】
ここでは、移動体102−104の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体106−107の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0520】
また、上述した通り、ここでは、制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、主基本移動ベクトルとして決定する。また、制御部602は、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0521】
また、ここでは、制御部602は、分断復旧ベクトルの大きさが0である場合には、主基本移動ベクトルに0.5を乗じ、障害物回避基本移動ベクトルに1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。また、制御部602は、分断復旧ベクトルの大きさが0でない場合には、主基本移動ベクトルに0.05を乗じ、障害物回避基本移動ベクトルに0.1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。
【0522】
移動体102の主基本移動ベクトルは、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図47に示した通信維持移動ベクトル4302に0.5を乗じた移動ベクトルとの和となる。また、移動体102の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図47に示した通信維持移動ベクトル4302に0.5を乗じた移動ベクトルとの和となる。そして、分断復旧ベクトル4002の大きさが0であるので、
図56に示したように、移動体102の実移動ベクトル5002は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0523】
移動体105が故障した場合の分断復旧ベクトル4002の大きさは0である。そのため、移動体102は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図56に示したように、実移動ベクトル5002に従って、ほぼ東北東に向かって移動することになる。移動体102の直接通信群に属する移動体104と移動体102との間の距離が、移動体101と移動体102との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体101よりも移動体104の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0524】
移動体103の主基本移動ベクトルは、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図48に示した通信維持移動ベクトル4403に0.5を乗じた移動ベクトルとの和となる。また、移動体103の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図48に示した通信維持移動ベクトル4403に0.5を乗じた移動ベクトルとの和となる。そして、分断復旧ベクトル4003の大きさが0であるので、
図56に示したように、移動体103の実移動ベクトル5003は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0525】
移動体105が故障した場合の分断復旧ベクトル4003の大きさは0である。そのため、移動体103は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図56に示したように、実移動ベクトル5003に従って、ほぼ北東に向かって移動することになる。移動体103の直接通信群に属する移動体104と移動体103との間の距離が、移動体101と移動体102との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体101よりも移動体104の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0526】
移動体104の主基本移動ベクトルは、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図49に示した通信維持移動ベクトル4504に0.5を乗じた移動ベクトルとの和となる。また、移動体104の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図49に示した通信維持移動ベクトル4504に0.5を乗じた移動ベクトルとの和となる。
【0527】
移動体105が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0である。そのため、移動体104の実移動ベクトル5004は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体104はほぼ南西に向かって移動する予定であった。ところが、移動体105が故障して、不明群に属する移動体が出現したことによって、
図56に示したように、移動体104の実移動ベクトル5004は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル4004(5m/s,−4m/s,0m/s)に1を乗じた移動ベクトルとの和となり、移動体104はほぼ南東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0528】
移動体106の主基本移動ベクトルは、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図50に示した通信維持移動ベクトル4606に0.5を乗じた移動ベクトルとの和となる。また、移動体106の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図50に示した通信維持移動ベクトル4606に0.5を乗じた移動ベクトルとの和となる。
【0529】
移動体105が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0である。そのため、移動体106の実移動ベクトル5006は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体106はほぼ東南東に向かって移動する予定であった。ところが、移動体105が故障して、不明群に属する移動体が出現したことによって、
図56に示したように、移動体106の実移動ベクトル5006は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル4106(5m/s,−4m/s,0m/s)に1を乗じた移動ベクトルとの和となり、移動体106はほぼ南西に向かって移動することになり、主として通信復旧動作を担うことになる。
【0530】
移動体107の主基本移動ベクトルは、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図51に示した通信維持移動ベクトル4707に0.5を乗じた移動ベクトルとの和となる。また、移動体103の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図51に示した通信維持移動ベクトル4707に0.5を乗じた移動ベクトルとの和となる。そして、分断復旧ベクトル4007の大きさは0であるので、
図56に示したように、移動体107の実移動ベクトル5007は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0531】
移動体105が故障した場合の分断復旧ベクトル4007の大きさは0である。そのため、移動体107は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図56に示したように、実移動ベクトル5007に従って、ほぼ北北西に向かって移動することになる。移動体107の直接通信群に属する移動体106と移動体107との間の距離が、移動体101と移動体102との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体101よりも移動体106の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0532】
以上より、結果として、移動体102−107が、互いに集まるような移動を行うことになるので、通信の復旧を図ることができる。また、移動体101は、ほぼ本来の目的を遂行することができ、かつ、移動体102との直接通信を維持することができる。このように、移動体102−107は主として通信復旧動作を行い、移動体101はほぼ本来の目的の遂行を行うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。
【0533】
次に、移動体101の制御部602は、自移動体情報5801から実移動ベクトル情報を取得し、取得した実移動ベクトル5701に従って実際に移動体101を移動させる(ステップS6116)。
【0534】
以下、特許文献1で開示されている技術では解決できていなかった課題を、本開示の実施の形態3では解決できていることを、具体例を用いて、説明する。
【0535】
既に述べた通り、特許文献1で開示されている第1の技術は、
図2の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合については、そのままでは適用することができなかった。
【0536】
これに対して、本開示の実施の形態3では、上述した通り、
図56の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合でも、通信の復旧を図ることができる。このような場合、すなわち、どの移動体から見ても、不明群に属する移動体が二つ以上である場合でも、構成群に属する移動体のうちの一部又は全部が互いに集まるような移動を行うことになるので、通信の復旧を図ることができる。
図56の例では、移動体102−104,106−107が、互いに集まるような移動を行うことにより、通信の復旧を図ることができている。
【0537】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態3では、例えば
図56の例では、移動体101は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0538】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態3では、例えば
図56の例では、移動体101は主として本来の目的のための移動を行うことができ、この課題を解決できている。
【0539】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態3では、例えば
図56の例では、移動体102−104,106−107が、互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体101−104,106−107の全ては、通信維持移動ベクトルの効果により、移動体間の直接通信を維持することができ、この課題を解決できている。
【0540】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図3の例のように、移動体の一部又は全部が互いに遠ざかるような方向に移動した場合には、最善でも一部の通信の復旧しか図ることができなかった。
図3の例では、移動体201−204と移動体206−207とが互いに遠ざかるような方向に移動し続けている場合には、最善でも移動体201−204と移動体206−207とのどちらか一方に属する移動体のみとの直接通信が復旧するのみで、他方に属する移動体との直接通信を復旧することはできなかった。
【0541】
これに対して、本開示の実施の形態3では、
図3の例のように、移動体の一部が互いに遠ざかるような方向に移動した場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0542】
なお、ここでは、移動体201−207は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、既知群に属する移動体の中で、自身が目標位置に最も近い場合には、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトルを決定する。また、移動体201−207は、不明群に属する全ての移動体の位置のうち、自身が目標位置に最も近くない場合には大きさが0である分断復旧ベクトルを決定する。
【0543】
また、ここでは、移動体201−207の制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離によらず、一定の大きさを持ち、当該移動体へ向かう向きと反対方向の向きを持つ移動ベクトルを、反発ベクトルとして決定する。反発ベクトルの大きさは2.8m/sとする。
【0544】
また、ここでは、移動体201−207の制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離の二乗に比例した大きさを持ち、当該移動体へ向かう向きを持つ移動ベクトルを、接近ベクトルとして決定するものとする。つまり、移動体間の距離が大きいほど、大きさが大きい接近ベクトルを決定するものとする。
【0545】
また、ここでは、移動体201−207の制御部602は、反発ベクトルのそれぞれと、接近ベクトルのそれぞれとに対して、1を乗じた上で、移動ベクトルの和を計算し、計算結果の移動ベクトルを通信維持移動ベクトルとして決定する。
【0546】
また、ここでは、移動体201−207の制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、主基本移動ベクトルとして決定する。また、移動体201−207の制御部602は、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0547】
また、ここでは、移動体201−207の制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の移動ベクトルの和を計算する。
【0548】
また、ここでは、移動体201−204の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体205の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(0m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体206−207の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0549】
また、ここでは、移動体201−207の制御部602は、分断復旧ベクトルの大きさが0である場合には、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。また、移動体201−207の制御部602は、分断復旧ベクトルの大きさが0でない場合には、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。
【0550】
図57は、本開示の実施の形態3における、
図3に示す状況での、複数の移動体201−204の分断復旧ベクトルの一例を示す概念図である。
図57において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0551】
図57に示した通り、移動体201−204のそれぞれにおいては、既知群5101に属する移動体は、移動体201−204であり、不明群5102に属する移動体は、移動体205−207である。
【0552】
移動体201−204の制御部602は、不明群5102に属する全ての移動体の位置のうち、自身に最も近い移動体205の位置を目標位置5111として決定する。
【0553】
目標位置5111に最も近い移動体204の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル5124を決定する。また、移動体201−203の制御部602は、大きさが0である分断復旧ベクトル5121−5123を決定する。
【0554】
図58は、本開示の実施の形態3における、
図3に示す状況での、移動体205の分断復旧ベクトルの一例を示す概念図である。
図58において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0555】
図58に示した通り、移動体205においては、既知群5201に属する移動体は、移動体205であり、不明群5202に属する移動体は、移動体201−204,206−207である。
【0556】
移動体205の制御部602は、不明群5202に属する全ての移動体の位置のうち、自身に最も近い移動体206の位置を目標位置5211として決定する。
【0557】
移動体205は、目標位置5211に最も近いので、移動体205の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル5225を決定する。
【0558】
図59は、本開示の実施の形態3における、
図3に示す状況での、複数の移動体206−207の分断復旧ベクトルの一例を示す概念図である。
図59において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0559】
図59に示した通り、移動体206−207のそれぞれにおいては、既知群5301に属する移動体は、移動体206−207であり、不明群5302に属する移動体は、移動体201−205である。
【0560】
移動体206−207の制御部602は、不明群5302に属する全ての移動体の位置のうち、自身に最も近い移動体205の位置を目標位置5311として決定する。
【0561】
目標位置5311に最も近い移動体206の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル5326を決定する。また、移動体207の制御部602は、大きさが0である分断復旧ベクトル5327を決定する。
【0562】
図60は、本開示の実施の形態3における、
図3に示す状況での、複数の移動体201−207の実移動ベクトルの一例を示す概念図である。
図60において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0563】
移動体201の直接通信群に属する移動体は、移動体202のみである。従って、移動体201の制御部602は、大きさが2.8m/sであり、移動体202へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体202に対する反発ベクトルとして決定する。また、移動体201の制御部602は、移動体202の位置から自身の位置までの距離19.9mの二乗に比例した大きさ4.2m/sを持ち、移動体202へ向かう向きを持つ移動ベクトルを、移動体202に対する接近ベクトルとして決定する。そして、移動体201の制御部602は、移動体202に対する反発ベクトルに1を乗じた移動ベクトルと、移動体202に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0564】
次に、移動体201の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体201の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0565】
そして、分断復旧ベクトル5121の大きさが0であるので、移動体201の実移動ベクトル5401は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0566】
移動体201は、移動体205が故障した場合の分断復旧ベクトル5121の大きさが0であるので、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図60に示したように、実移動ベクトル5401に従って、ほぼ北西に向かって移動することになる。移動体201の直接通信群に属する移動体202と移動体201との間の距離が、移動体202と移動体204との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体202よりも移動体201の方が小さくなり、ほぼ本来の目的を遂行することができる。
【0567】
移動体202の直接通信群に属する移動体は、移動体201、移動体203及び移動体204の3つである。従って、移動体202の制御部602は、大きさが2.8m/sであり、移動体201へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体201に対する反発ベクトルとして決定する。移動体202の制御部602は、移動体201の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体201へ向かう向きを持つ移動ベクトルを、移動体201に対する接近ベクトルとして決定する。移動体202の制御部602は、大きさが2.8m/sであり、移動体203へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体203に対する反発ベクトルとして決定する。移動体202の制御部602は、移動体203の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体203へ向かう向きを持つ移動ベクトルを、移動体203に対する接近ベクトルとして決定する。移動体202の制御部602は、大きさが2.8m/sであり、移動体204へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体204に対する反発ベクトルとして決定する。移動体202の制御部602は、移動体204の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体204へ向かう向きを持つ移動ベクトルを、移動体204に対する接近ベクトルとして決定する。
【0568】
そして、移動体202の制御部602は、移動体201に対する反発ベクトルに1を乗じた移動ベクトルと、移動体203に対する反発ベクトルに1を乗じた移動ベクトルと、移動体204に対する反発ベクトルに1を乗じた移動ベクトルと、移動体201に対する接近ベクトルに1を乗じた移動ベクトルと、移動体203に対する接近ベクトルに1を乗じた移動ベクトルと、移動体204に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0569】
次に、移動体202の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体202の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0570】
そして、分断復旧ベクトル5122の大きさが0であるので、移動体202の実移動ベクトル5402は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0571】
移動体205が故障した場合の分断復旧ベクトル5122の大きさは0である。そのため、移動体202は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図60に示したように、実移動ベクトル5402に従って、ほぼ東北東に向かって移動することになる。移動体202の直接通信群に属する移動体204と移動体202との間の距離が、移動体201と移動体202との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体201よりも移動体202の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0572】
移動体203の直接通信群に属する移動体は、移動体202及び移動体204の2つである。従って、移動体203の制御部602は、大きさが2.8m/sであり、移動体202へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体202に対する反発ベクトルとして決定する。移動体203の制御部602は、移動体202の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体202へ向かう向きを持つ移動ベクトルを、移動体202に対する接近ベクトルとして決定する。移動体203の制御部602は、大きさが2.8m/sであり、移動体204へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体204に対する反発ベクトルとして決定する。移動体203の制御部602は、移動体204の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体204へ向かう向きを持つ移動ベクトルを、移動体204に対する接近ベクトルとして決定する。
【0573】
そして、移動体203の制御部602は、移動体202に対する反発ベクトルに1を乗じた移動ベクトルと、移動体204に対する反発ベクトルに1を乗じた移動ベクトルと、移動体202に対する接近ベクトルに1を乗じた移動ベクトルと、移動体204に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0574】
次に、移動体203の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体203の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0575】
そして、分断復旧ベクトル5123の大きさが0であるので、移動体203の実移動ベクトル5403は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0576】
移動体205が故障した場合の分断復旧ベクトル5123の大きさは0である。そのため、移動体203は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図60に示したように、実移動ベクトル5403に従って、ほぼ北東に向かって移動することになる。移動体203の直接通信群に属する移動体204と移動体203との間の距離が、移動体201と移動体202との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体201よりも移動体203の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0577】
移動体204の直接通信群に属する移動体は、移動体202及び移動体203の2つである。従って、移動体204の制御部602は、大きさが2.8m/sであり、移動体202へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体202に対する反発ベクトルとして決定する。移動体204の制御部602は、移動体202の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体202へ向かう向きを持つ移動ベクトルを、移動体202に対する接近ベクトルとして決定する。移動体204の制御部602は、大きさが2.8m/sであり、移動体203へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体203に対する反発ベクトルとして決定する。移動体204の制御部602は、移動体203の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体203へ向かう向きを持つ移動ベクトルを、移動体203に対する接近ベクトルとして決定する。
【0578】
そして、移動体204の制御部602は、移動体202に対する反発ベクトルに1を乗じた移動ベクトルと、移動体203に対する反発ベクトルに1を乗じた移動ベクトルと、移動体202に対する接近ベクトルに1を乗じた移動ベクトルと、移動体203に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0579】
次に、移動体204の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体204の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0580】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体204の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体204はほぼ南西に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図60に示したように、移動体204の実移動ベクトルは、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5124に1を乗じた移動ベクトルとの和となり、移動体204はほぼ東南東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0581】
移動体205の直接通信群に属する移動体は、存在しない。従って、移動体205の制御部602は、大きさが0である反発ベクトルを決定し、大きさが0である接近ベクトルを決定する。そして、移動体205の制御部602は、大きさが0である反発ベクトルに1を乗じた移動ベクトルと、大きさが0である接近ベクトルに1を乗じた移動ベクトルとの和を計算し、大きさが0である通信維持移動ベクトルを決定する。
【0582】
次に、移動体205の制御部602は、第2主基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体205の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0583】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体205の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体205はその場に停止する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図60に示したように、移動体205の実移動ベクトルは、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5225に1を乗じた移動ベクトルとの和となり、移動体205はほぼ東北東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0584】
移動体206の直接通信群に属する移動体は、移動体207のみである。従って、移動体206の制御部602は、大きさが2.8m/sであり、移動体207へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体207に対する反発ベクトルとして決定する。移動体206の制御部602は、移動体207の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体207へ向かう向きを持つ移動ベクトルを、移動体207に対する接近ベクトルとして決定する。そして、移動体206の制御部602は、移動体207に対する反発ベクトルに1を乗じた移動ベクトルと、移動体207に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0585】
次に、移動体206の制御部602は、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体206の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0586】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体206の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体206はほぼ南東に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図60に示したように、移動体206の実移動ベクトルは、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5326に1を乗じた移動ベクトルとの和となり、移動体206はほぼ西南西に向かって移動することになり、主として通信復旧動作を担うことになる。
【0587】
移動体207の直接通信群に属する移動体は、移動体206のみである。従って、移動体207の制御部602は、大きさが2.8m/sであり、移動体206へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体206に対する反発ベクトルとして決定する。移動体207の制御部602は、移動体206の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体206へ向かう向きを持つ移動ベクトルを、移動体206に対する接近ベクトルとして決定する。そして、移動体207の制御部602は、移動体206に対する反発ベクトルに1を乗じた移動ベクトルと、移動体206に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0588】
次に、移動体207の制御部602は、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体207の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0589】
そして、分断復旧ベクトル5127の大きさは0であるので、移動体207の実移動ベクトル5407は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0590】
移動体205が故障した場合の分断復旧ベクトル5127の大きさは0である。そのため、移動体207は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図60に示したように、実移動ベクトル5407に従って、ほぼ北北西に向かって移動することになる。直接通信群に属する移動体206と移動体207との間の距離が、移動体201と移動体202との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体201よりも移動体207の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0591】
このように、移動体202−207が、互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体201−207の全ては、通信維持移動ベクトルの効果により、移動体間の直接通信を維持することができ、
図3の例のように、移動体の一部が互いに遠ざかるような方向に移動した場合でも、通信の復旧を図ることができている。
【0592】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態3では、例えば
図60の例では、移動体201は、本来の目的のための移動を行うことができ、この課題を解決できている。
【0593】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態3では、例えば
図60の例では、移動体201は、本来の目的のための移動を行うことができ、この課題を解決できている。
【0594】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態3では、例えば
図60の例では、移動体202−207が、互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体201−207の全ては、通信維持移動ベクトルの効果により、移動体間の直接通信を維持することができ、この課題を解決できている。
【0595】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合には、通信を復旧させることはできなかった。
図4の例では、特許文献1で開示されている第1の技術のいずれを用いたとしても、アドホックネットワークとの通信が切断された移動体207が通信の復旧のために移動した方向に、既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできなかった。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できなかった。
【0596】
これに対して、本開示の実施の形態3では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0597】
なお、ここでは、移動体201−207の制御部602は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する。また、移動体201−207の制御部602は、既知群に属する移動体の中で、自身が目標位置に最も近い場合には、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトルを決定し、自身が目標位置に最も近くない場合には大きさが0である分断復旧ベクトルを決定する。
【0598】
また、ここでは、移動体201−207の制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離によらず、一定の大きさを持ち、当該移動体へ向かう向きと反対方向の向きを持つ移動ベクトルを、反発ベクトルとして決定する。反発ベクトルの大きさは2.8m/sとする。
【0599】
また、ここでは、移動体201−207の制御部602は、直接通信群に属する移動体のそれぞれに対して、当該移動体の位置から自身までの距離の二乗に比例した大きさを持ち、当該移動体へ向かう向きを持つ移動ベクトルを、接近ベクトルとして決定する。つまり、移動体201−207の制御部602は、移動体間の距離が大きいほど、大きさが大きい接近ベクトルを決定する。
【0600】
また、ここでは、移動体201−207の制御部602は、反発ベクトルのそれぞれに1を乗じた移動ベクトルと、接近ベクトルのそれぞれに1を乗じた移動ベクトルとの和を計算し、計算結果の移動ベクトルを通信維持移動ベクトルとして決定する。
【0601】
また、ここでは、移動体201−207の制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、主基本移動ベクトルとして決定する。また、移動体201−207の制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0602】
また、ここでは、移動体201−207の制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルは1を乗じた上で、計算結果の移動ベクトルの和を計算する。
【0603】
また、ここでは、移動体201−206の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(−6m/s,−8m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体205の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(0m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体207の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0604】
また、ここでは、移動体201−207の制御部602は、分断復旧ベクトルの大きさが0である場合には、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。移動体201−207の制御部602は、分断復旧ベクトルの大きさが0でない場合には、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。
【0605】
図61は、本開示の実施の形態3において、
図4に示す状況の場合に、複数の移動体201−206のそれぞれが、どのような分断復旧ベクトルを決定するかの一例を示す概念図である。
図61において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0606】
図61に示した通り、移動体201−206のそれぞれにおいては、既知群5501に属する移動体は、移動体201−206であり、不明群5502に属する移動体は、移動体207である。
【0607】
移動体201−206の制御部602は、不明群5502に属する全ての移動体の位置のうち、自身に最も近い移動体207の位置を目標位置5511として決定する。
【0608】
目標位置5511に最も近い移動体206の制御部602は、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトル5526を決定する。移動体201−205の制御部602は、大きさが0である分断復旧ベクトル5521−5525を決定する。
【0609】
図62は、本開示の実施の形態3における、
図4に示す状況での、移動体207の分断復旧ベクトルの一例を示す概念図である。
図62において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0610】
図62に示した通り、移動体207においては、既知群5601に属する移動体は、移動体207であり、不明群5602に属する移動体は、移動体201−206である。
【0611】
移動体207の制御部602は、不明群5602に属する全ての移動体の位置のうち、自身に最も近い移動体206の通信切断直前の位置503を、目標位置5611として決定する。
【0612】
移動体207は、目標位置5611に最も近いので、移動体207の制御部602は、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトル5627を決定する。
【0613】
図63は、本開示の実施の形態3における、
図4に示す状況での、複数の移動体201−207の実移動ベクトルの一例を示す概念図である。
図63において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0614】
移動体201の直接通信群に属する移動体は、移動体202のみである。従って、移動体201の制御部602は、大きさが2.8m/sであり、移動体202へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体202に対する反発ベクトルとして決定する。移動体201の制御部602は、移動体202の位置から自身の位置までの距離19.9mの二乗に比例した大きさ4.2m/sを持ち、移動体202へ向かう向きを持つ移動ベクトルを、移動体202に対する接近ベクトルとして決定する。そして、移動体201の制御部602は、移動体202に対する反発ベクトルに1を乗じた移動ベクトルと、移動体202に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0615】
次に、移動体201の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体201の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0616】
そして、分断復旧ベクトル5521の大きさは0であるので、移動体201の実移動ベクトル5701は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0617】
移動体205が故障した場合の分断復旧ベクトル5521の大きさは0である。そのため、移動体201は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図63に示したように、実移動ベクトル5701に従って、ほぼ北北西に向かってゆっくり移動することになる。移動体201の直接通信群に属する移動体202と移動体201との間の距離が、移動体202と移動体204との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体202よりも移動体201の方が小さくなり、比重は小さいながらも本来の目的を遂行することができる。
【0618】
移動体202の直接通信群に属する移動体は、移動体201、移動体203及び移動体204の3つである。従って、移動体202の制御部602は、大きさが2.8m/sであり、移動体201へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体201に対する反発ベクトルとして決定する。移動体202の制御部602は、移動体201の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体201へ向かう向きを持つ移動ベクトルを、移動体201に対する接近ベクトルとして決定する。移動体202の制御部602は、大きさが2.8m/sであり、移動体203へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体203に対する反発ベクトルとして決定する。移動体202の制御部602は、移動体203の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体203へ向かう向きを持つ移動ベクトルを、移動体203に対する接近ベクトルとして決定する。移動体202の制御部602は、大きさが2.8m/sであり、移動体204へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体204に対する反発ベクトルとして決定する。移動体202の制御部602は、移動体204の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体204へ向かう向きを持つ移動ベクトルを、移動体204に対する接近ベクトルとして決定する。
【0619】
そして、移動体202の制御部602は、移動体201に対する反発ベクトルに1を乗じた移動ベクトルと、移動体203に対する反発ベクトルに1を乗じた移動ベクトルと、移動体204に対する反発ベクトルに1を乗じた移動ベクトルと、移動体201に対する接近ベクトルに1を乗じた移動ベクトルと、移動体203に対する接近ベクトルに1を乗じた移動ベクトルと、移動体204に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0620】
次に、移動体202の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体202の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0621】
そして、分断復旧ベクトル5522の大きさは0であるので、移動体202の実移動ベクトル5702は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0622】
移動体205が故障した場合の分断復旧ベクトル5522の大きさは0である。そのため、移動体202は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図63に示したように、実移動ベクトル5702に従って、ほぼ東北東に向かって移動することになる。移動体202の直接通信群に属する移動体204と移動体202との間の距離が、移動体201と移動体202との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体201よりも移動体202の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0623】
移動体203の直接通信群に属する移動体は、移動体202及び移動体204の2つである。従って、移動体203の制御部602は、大きさが2.8m/sであり、移動体202へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体202に対する反発ベクトルとして決定する。移動体203の制御部602は、移動体202の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体202へ向かう向きを持つ移動ベクトルを、移動体202に対する接近ベクトルとして決定する。移動体203の制御部602は、大きさが2.8m/sであり、移動体204へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体204に対する反発ベクトルとして決定する。移動体203の制御部602は、移動体204の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体204へ向かう向きを持つ移動ベクトルを、移動体204に対する接近ベクトルとして決定する。
【0624】
そして、移動体203の制御部602は、移動体202に対する反発ベクトルに1を乗じた移動ベクトルと、移動体204に対する反発ベクトルに1を乗じた移動ベクトルと、移動体202に対する接近ベクトルに1を乗じた移動ベクトルと、移動体204に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0625】
次に、移動体203の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体203の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0626】
そして、分断復旧ベクトル5523の大きさは0であるので、移動体203の実移動ベクトル5703は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0627】
移動体205が故障した場合の分断復旧ベクトル5523の大きさは0である。そのため、移動体203は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図63に示したように、実移動ベクトル5703に従って、ほぼ北東に向かって移動することになる。移動体203の直接通信群に属する移動体204と移動体203との間の距離が、移動体201と移動体202との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体201よりも移動体203の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0628】
移動体204の直接通信群に属する移動体は、移動体202及び移動体203の2つである。従って、移動体204の制御部602は、大きさが2.8m/sであり、移動体202へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体202に対する反発ベクトルとして決定する。移動体204の制御部602は、移動体202の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体202へ向かう向きを持つ移動ベクトルを、移動体202に対する接近ベクトルとして決定する。移動体204の制御部602は、大きさが2.8m/sであり、移動体203へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体203に対する反発ベクトルとして決定する。移動体204の制御部602は、移動体203の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体203へ向かう向きを持つ移動ベクトルを、移動体203に対する接近ベクトルとして決定する。
【0629】
そして、移動体204の制御部602は、移動体202に対する反発ベクトルに1を乗じた移動ベクトルと、移動体203に対する反発ベクトルに1を乗じた移動ベクトルと、移動体202に対する接近ベクトルに1を乗じた移動ベクトルと、移動体203に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0630】
次に、移動体204の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体204の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0631】
そして、分断復旧ベクトル5524の大きさは0であるので、移動体204の実移動ベクトル5704は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0632】
移動体205が故障した場合の分断復旧ベクトル5524の大きさは0である。そのため、移動体204は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図63に示したように、実移動ベクトル5704に従って、ほぼ南南西に向かって移動することになる。直接通信群に属する移動体202−203に対する接近ベクトルの効果によって実移動ベクトル5704は南南西を向いており、この向きは第2主基本移動ベクトルの向きとほぼ一致しているので、移動体204はほぼ本来の目的を遂行することができる。
【0633】
移動体205の直接通信群に属する移動体は、移動体204のみである。従って、移動体205の制御部602は、大きさが2.8m/sであり、移動体207へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体204に対する反発ベクトルとして決定する。移動体205の制御部602は、移動体204の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体204へ向かう向きを持つ移動ベクトルを、移動体204に対する接近ベクトルとして決定する。そして、移動体205の制御部602は、移動体204に対する反発ベクトルに1を乗じた移動ベクトルと、移動体204に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0634】
次に、移動体205の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体205の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0635】
移動体205が故障した場合の分断復旧ベクトル5525の大きさは0である。そのため、移動体205は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図63に示したように、実移動ベクトル5705に従って、ほぼ北北西に向かって移動することになる。移動体205の直接通信群に属する移動体204と移動体205との間の距離が、移動体201と移動体202との間の距離よりも近いので、直接通信を維持するための移動の比重は移動体201よりも移動体205の方が大きくなり、本来の目的の遂行よりも直接通信の維持のための移動の比重の方が大きくなっている。
【0636】
移動体206の直接通信群に属する移動体は、移動体205のみである。従って、移動体206の制御部602は、大きさが2.8m/sであり、移動体205へ向かう向きと反対方向の向きを持つ移動ベクトルを、移動体205に対する反発ベクトルとして決定する。移動体206の制御部602は、移動体205の位置から自身の位置までの距離の二乗に比例した大きさを持ち、移動体205へ向かう向きを持つ移動ベクトルを、移動体205に対する接近ベクトルとして決定する。そして、移動体206の制御部602は、移動体205に対する反発ベクトルに1を乗じた移動ベクトルと、移動体205に対する接近ベクトルに1を乗じた移動ベクトルとの和を、通信維持移動ベクトルとして決定する。
【0637】
次に、移動体206の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。移動体206の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0638】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体206の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体206はほぼ南西に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図63に示したように、移動体206の実移動ベクトルは、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5526に1を乗じた移動ベクトルとの和となり、移動体206はほぼ北東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0639】
移動体207の直接通信群に属する移動体は、存在しない。従って、移動体207の制御部602は、大きさが0である反発ベクトルを決定し、大きさが0である接近ベクトルを決定する。そして、移動体207の制御部602は、大きさが0である反発ベクトルに1を乗じた移動ベクトルと、大きさが0である接近ベクトルに1を乗じた移動ベクトルとの和である、大きさが0である通信維持移動ベクトルを決定する。
【0640】
次に、移動体207の制御部602は、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体207の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0641】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体206の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体207はほぼ東に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図63に示したように、移動体207の実移動ベクトル5707は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5627に1を乗じた移動ベクトルとの和となり、移動体206はほぼ西北西に向かって移動することになり、主として通信復旧動作を担うことになる。
【0642】
このように、移動体202−203,205−207が、互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体201−207の全ては、通信維持移動ベクトルの効果により、移動体間の直接通信を維持することができ、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合でも、通信の復旧を図ることができている。
【0643】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態3では、例えば
図63の例では、移動体201及び移動体204は、本来の目的のための移動を行うことができ、この課題を解決できている。
【0644】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態3では、例えば
図63の例では、移動体201及び移動体204は、本来の目的のための移動を行うことができ、この課題を解決できている。
【0645】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態3では、例えば
図63の例では、移動体202−203,205−207が、互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体201−207の全ては、通信維持移動ベクトルの効果により、移動体間の直接通信を維持することができ、この課題を解決できている。
【0646】
なお、移動体101の記憶部603は、移動体101の移動経路502を記憶してもよい。制御部602は、第4移動距離及び第4移動方向の組み、第4速度絶対値及び第4速度方向の組み、並びに、第4加速度絶対値及び第4加速度方向の組みのいずれかを示す第4制御量(通信維持移動ベクトル情報)に基づいて第1制御量(基本移動ベクトル群情報)を決定してもよい。第4移動距離、第4速度絶対値、又は第4加速度絶対値は、所定値であってもよい。第4移動方向、第4速度方向又は第4加速度方向は、移動経路502によって特定される移動方向の逆方向であってもよい。
【0647】
本開示の実施の形態3のステップS6112の処理では、不明群に属する移動体が存在する限り、ステップS6114の処理で分断復旧ベクトルを決定する前に毎回目標位置を決定し直しているが、実施の形態3の第2の構成では、不明群に属する移動体が変更された場合にのみ目標位置を決定してもよい。
【0648】
実施の形態3の第2の構成の場合、不明群に属する移動体が変更された場合にのみ目標位置を決定するので、処理の効率化が図れる。
【0649】
本開示の実施の形態3のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態3の第3の構成では、ステップS6111の処理を初めて実行した時刻を記憶しておき、ステップS6111の処理を初めて実行した時刻から0より大きい復旧期限が経過している場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。なお、復旧期限の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0650】
実施の形態3の第3の構成の場合、復旧期限が経過しても通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0651】
なお、実施の形態3の第3の構成において、一旦、復旧期限が経過した後でも、不明群に属する移動体が変更された場合、又は更に一定の時間が経過した場合など、適切なタイミングで、ステップS6111の処理を初めて実行した時刻をリセットし、再び、ステップS6111−ステップS6114の処理を実行できるようにしてもよい(実施の形態3の第4の構成)。
【0652】
実施の形態3の第4の構成の場合、復旧期限が経過した後、一定の条件が成立した場合には、通信復旧動作をリトライすることができる。
【0653】
本開示の実施の形態3のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態3の第5の構成では、目標位置までの距離が、移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。なお、移動中止判定距離の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0654】
実施の形態3の第5の構成の場合、目標位置までの距離が、移動中止判定距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0655】
なお、実施の形態3の第5の構成において、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい(実施の形態3の第6の構成)。
【0656】
実施の形態3の第6の構成の場合、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0657】
本開示の実施の形態3のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態3の第7の構成では、特定の位置から目標位置までの距離に移動中止判定係数を乗じた距離を示す第2移動中止判定距離を算出し、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。なお、第2移動中止判定係数の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0658】
実施の形態3の第7の構成の場合、目標位置までの距離が、特定の位置から目標位置までの距離に第2移動中止判定係数を乗じた距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0659】
なお、実施の形態3の第7の構成において、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい(実施の形態3の第8の構成)。
【0660】
実施の形態3の第8の構成の場合、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、第2移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0661】
本開示の実施の形態3のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態3の第9の構成では、目標位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。
【0662】
実施の形態3の第9の構成の場合、目標位置に到達しても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0663】
なお、実施の形態3の第9の構成において、一旦、目標位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい(実施の形態3の第10の構成)。
【0664】
実施の形態3の第10の構成の場合、一旦、目標位置に到達した後に、再び、目標位置から離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0665】
本開示の実施の形態3の第3から第10の構成において、ステップS6110の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行した時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割してもよい(実施の形態3の第11の構成)。
【0666】
実施の形態3の第11の構成の場合、既知群に属する移動体のそれぞれは、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0667】
本開示の実施の形態3の第3から第10の構成において、ステップS6110の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、アドホックネットワークを分割することを通知する分割通知を送信してもよい(実施の形態3の第12の構成)。また、他の移動体から分割通知を受信した時には、ステップS6110の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。これにより、通信復旧動作を中止し、その時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0668】
実施の形態3の第12の構成の場合、既知群に属する移動体のそれぞれは、同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0669】
本開示の実施の形態3の第3から第10の構成において、ステップS6110の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、既知群に属する移動体のグループを特定する既知群情報を送信してもよい(実施の形態3の第13の構成)。また、他の移動体から既知群情報を受信した時には、ステップS6110の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。これにより、通信復旧動作を中止し、既知群情報で特定される移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0670】
実施の形態3の第13の構成の場合、既知群に属する移動体のそれぞれは、通信によるタイムラグの影響を受けずに、確実に同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0671】
(実施の形態4)
本開示の実施の形態4における、複数の移動体によって構成されるアドホックネットワークの全体像を表した概念図は、
図6と同じであるので、説明を省略する。
【0672】
本開示の実施の形態4における、移動体101の機能構成を示したブロック図は、
図8と同じであるので、説明を省略する。ただし、移動体101の記憶部603に記憶される自移動体情報ついては、
図9及び
図10とは異なっているので、
図64及び
図65を用いて説明する。なお、移動体101の記憶部603に記憶する他移動体情報702については、
図11と同じであるので、説明を省略する。
【0673】
図64は、本開示の実施の形態4における、移動体101の記憶部603に記憶される情報の一例を示す図である。
図64において、
図6、
図8及び
図9と同じ構成要素については同じ符号を用い、説明を省略する。
【0674】
記憶部603は、移動体101自身に関する情報である自移動体情報5801と、他の移動体に関する情報である他移動体情報702とを記憶する。
【0675】
自移動体情報5801は、自身をユニークに識別するための移動体識別情報と、位置検出部604によって検出した自身の位置情報と、直接通信可能な他の移動体を示す直接通信群に属する移動体の移動体識別情報から成る直接通信群情報と、自身及びアドホックネットワークを介した通信を行うことが可能な移動体の移動体識別情報から成る既知群情報と、アドホックネットワークを介した通信を行うことが不可能な移動体の移動体識別情報から成る不明群情報と、不明群が存在する場合の通信の復旧のための移動における目標位置の位置情報である目標位置情報と、直接通信群の一部又は全部の移動体との直接通信を維持するための移動ベクトルを示す通信維持移動ベクトルに関する情報である通信維持移動ベクトル情報と、直接通信の維持を図らない場合の移動を制御する一つ以上の移動ベクトルを示す第2基本移動ベクトル群に関する情報である第2基本移動ベクトル群情報と、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群に関する情報である基本移動ベクトル群情報と、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルに関する情報である分断復旧ベクトル情報と、実際の移動を規定する実移動ベクトルに関する情報である実移動ベクトル情報から構成される。
【0676】
図65は、本開示の実施の形態4における、移動体101の記憶部603に記憶する自移動体情報5801の一例を示す図である。
図65において、
図6及び
図64と同じ構成要素については同じ符号を用い、説明を省略する。また、
図65において、
図10の自移動体情報701に含まれる情報と同じ情報については説明を省略する。
【0677】
移動体101は、例えば、
図65に示す形式で、自移動体情報5801を記憶部603に記憶する。自移動体情報5801は、自身をユニークに識別するための移動体識別情報と、位置検出部604によって検出した自身の位置情報と、直接通信可能な他の移動体を示す直接通信群に属する移動体の移動体識別情報から成る直接通信群情報と、自身及びアドホックネットワークを介した通信を行うことが可能な移動体の移動体識別情報から成る既知群情報と、アドホックネットワークを介した通信を行うことが不可能な移動体の移動体識別情報から成る不明群情報と、不明群が存在する場合の通信の復旧のための移動における目標位置の位置情報である目標位置情報と、直接通信群の一部又は全部の移動体との直接通信を維持するための移動ベクトルを示す通信維持移動ベクトルに関する情報である通信維持移動ベクトル情報と、直接通信の維持を図らない場合の移動を制御する一つ以上の移動ベクトルを示す第2基本移動ベクトル群に関する情報である第2基本移動ベクトル群情報と、不明群が存在しなかった場合の移動を制御する一つ以上の移動ベクトルを示す基本移動ベクトル群に関する情報である基本移動ベクトル群情報と、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルに関する情報である分断復旧ベクトル情報と、実際の移動を規定する実移動ベクトルに関する情報である実移動ベクトル情報とを含む。
【0678】
図65で示す自移動体情報5801は、自身の移動体識別情報の値が「移動体101」であり、自身の位置情報の値が「北緯34度41分37.0秒、東経135度30分7.1秒、海抜2m」であり、既知群情報の値が「移動体101、移動体102、移動体103、移動体104」であり、不明群情報の値が「移動体105、移動体106、移動体107」であり、目標位置情報の値が「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」であり、通信維持移動ベクトル情報の値が「(1m/s,1m/s,0m/s)」であり、第2基本移動ベクトル群情報の第2主基本移動ベクトルの値が「(−5m/s,−2m/s,0m/s)」であり、第2基本移動ベクトル群情報の第2障害物回避基本移動ベクトルの値が「(0m/s,5m/s,0m/s)」であり、基本移動ベクトル群情報の主基本移動ベクトルの値が「(−4.5m/s,−1.5m/s,0m/s)」であり、基本移動ベクトル群情報の障害物回避基本移動ベクトルの値が「(0.5m/s,5.5m/s,0m/s)」であり、分断復旧ベクトル情報の値が「(0m/s,0m/s,0m/s)」であり、実移動ベクトル情報の値が「(−1.75m/s,4.75m/s,0m/s)」であることを示している。
【0679】
図65では、第2基本移動ベクトル群情報は、第2主基本移動ベクトル情報と、第2障害物回避基本移動ベクトル情報との組みで表現される。すなわち、第2基本移動ベクトル群は、第2主基本移動ベクトルと、第2障害物回避基本移動ベクトルとの組みであるとしている。ここで、第2主基本移動ベクトルとは、直接通信の維持を図らない場合の、移動体が本来の目的を達成する為の移動を表現した移動ベクトルである。また、第2障害物回避基本移動ベクトルとは、直接通信の維持を図らない場合の、移動体が近くに存在する障害物を回避する為の移動を表現した移動ベクトルである。なお、第2基本移動ベクトル群を構成する移動ベクトルの数と、それらの移動ベクトルが表現する移動内容には、もちろん、様々なバリエーションが考えられ、本開示の主旨とは無関係であることは言うまでもない。以下、本明細書では、特に明記しない限り、第2基本移動ベクトル群については、ここで説明した第2主基本移動ベクトルと、第2障害物回避基本移動ベクトルとの組みを用いて説明する。
【0680】
図66は、本開示の実施の形態4における、移動体101の移動制御の全体動作を示すフローチャートである。
【0681】
なお、ステップS6101−ステップS6109の処理の実行においては、不明群に属する移動体が存在するか否かにかかわらず、実行する内容は同じであるので、以下、特に断らない限り、移動体105が故障した場合の例を用いて説明する。
【0682】
なお、基本移動ベクトル群の一例の概念図は、
図13と同じであるので、説明を省略する。
【0683】
また、移動体105が故障した場合の、移動体101−104のそれぞれにおける既知群及び不明群を示す概念図は、
図14と同じであるので、説明を省略する。
【0684】
また、移動体105が故障した場合の、移動体106−107のそれぞれにおける既知群及び不明群を示す概念図は、
図15と同じであるので、説明を省略する。
【0685】
まず、移動体101の制御部602は、移動体102−107と通信を試み、直接通信が行えた移動体を直接通信群として特定する(ステップS6101)。そして、制御部602は、自移動体情報5801のうち、直接通信群に属する全ての移動体の移動体識別情報から成る直接通信群情報を更新する。
【0686】
図6、
図13、
図14及び
図15に示されている通り、移動体105が故障していない場合でも、移動体105が故障した場合でも、移動体101は、移動体102とのみ直接通信が可能であるので、制御部602は、移動体102のみを直接通信群として特定し、自移動体情報5801の直接通信群情報を更新する。
【0687】
次に、移動体101の制御部602は、直接通信群に属する移動体のそれぞれの位置から自身の位置までの距離を算出する(ステップS6102)。
【0688】
なお、移動体105が故障した時点で、移動体105−107のそれぞれは、
図11の他移動体情報702に記載した位置にあるとする。
【0689】
移動体101に対する直接通信群は移動体102のみであるので、移動体101の制御部602は、移動体102の位置から自身の位置までの距離を算出する。移動体101と移動体102との間の距離は、19.9mである。
【0690】
次に、移動体101の制御部602は、直接通信群に属する移動体のそれぞれに対する通信維持移動ベクトルを決定する(ステップS6105)。
【0691】
ここでは、制御部602は、一定の大きさを持ち、直接通信群に属する全ての移動体の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。通信維持移動ベクトルの大きさは、2.8m/sとする。
【0692】
図67は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体101における、通信維持移動ベクトルの決定方法を説明するための概念図である。
図67において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0693】
図67に示したように、移動体101の直接通信群に属する移動体は、移動体102のみである。従って、移動体101の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置4210へ向かう移動ベクトルを、通信維持移動ベクトル4201として決定する。なお、移動体102のみが直接通信群に属しているので、直接通信群に属する全ての移動体の位置の中心位置4210は、移動体102の位置となる。この場合、通信維持移動ベクトル4201は、(2m/s,2m/s,0m/s)となる。
【0694】
移動体102−104,106−107の通信維持移動ベクトルも、移動体101の通信維持移動ベクトルと同様にして決定される。
【0695】
図68は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体102における、通信維持移動ベクトルの決定方法を説明するための概念図である。
図68において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0696】
図68に示したように、移動体102の直接通信群に属する移動体は、移動体101、移動体103及び移動体104の3つである。従って、移動体102の制御部602は、大きさが2.8m/sであり、移動体101、移動体103及び移動体104の位置の中心位置4310へ向かう移動ベクトルを、通信維持移動ベクトル4302として決定する。
【0697】
図69は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体103における、通信維持移動ベクトルの決定方法を説明するための概念図である。
図69において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0698】
図69に示したように、移動体103の直接通信群に属する移動体は、移動体102及び移動体104の2つである。従って、移動体103の制御部602は、大きさが2.8m/sであり、移動体102及び移動体104の位置の中心位置4410へ向かう移動ベクトルを、通信維持移動ベクトル4403として決定する。
【0699】
図70は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体104における、通信維持移動ベクトルの決定方法を説明するための概念図である。
図70において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0700】
図70に示したように、移動体104の直接通信群に属する移動体は、移動体102及び移動体103の2つである。従って、移動体104の制御部602は、大きさが2.8m/sであり、移動体102及び移動体103の位置の中心位置4510へ向かう移動ベクトルを、通信維持移動ベクトル4504として決定する。
【0701】
図71は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体106における、通信維持移動ベクトルの決定方法を説明するための概念図である。
図71において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0702】
図71に示したように、移動体106の直接通信群に属する移動体は、移動体107のみである。従って、移動体106の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置4610へ向かう移動ベクトルを、通信維持移動ベクトル4606として決定する。なお、移動体107のみが直接通信群に属しているので、直接通信群に属する全ての移動体の位置の中心位置4610は、移動体107の位置となる。
【0703】
図72は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体107における、通信維持移動ベクトルの決定方法を説明するための概念図である。
図72において、
図6及び
図14と同じ構成要素については同じ符号を用い、説明を省略する。
【0704】
図72に示したように、移動体107の直接通信群に属する移動体は、移動体106のみである。従って、移動体107の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置4710へ向かう移動ベクトルを、通信維持移動ベクトル4707として決定する。なお、移動体106のみが直接通信群に属しているので、直接通信群に属する全ての移動体の位置の中心位置4710は、移動体106の位置となる。
【0705】
次に、移動体101の制御部602は、直接通信の維持を図らない場合の移動を制御する一つ以上の移動ベクトルを示す第2基本移動ベクトル群を決定する(ステップS6106)。そして、制御部602は、第2基本移動ベクトル群に関する情報である第2基本移動ベクトル群情報を作成し、自移動体情報5801の第2基本移動ベクトル群情報を更新する。
【0706】
図73は、本開示の実施の形態4における、第2基本移動ベクトル群の一例を示す概念図である。
図73において、
図6、
図14、
図16及び
図67と同じ構成要素については同じ符号を用い、説明を省略する。
【0707】
図73に示した場面では、移動体101は、直接通信の維持を図らない場合には、本来の目的を達成する為に、何の制約もなければ、西方向に5m/sの移動成分と、南方向に2m/sの移動成分とを含む移動ベクトルで移動するのが最善であるとする。この場合、第2主基本移動ベクトル4811は、(−5m/s,−2m/s,0m/s)となる。
【0708】
ところが、移動体101の西方向には、障害物が存在している。このため、移動体101は、この障害物を迂回して移動する必要がある。このため、直接通信の維持を図らない場合には、障害物を迂回するために、北に5m/sの移動成分を含む移動ベクトルで移動する動作が必要であるとする。この場合、第2障害物回避基本移動ベクトル4812は、(0m/s,5m/s,0m/s)となる。
【0709】
次に、移動体101の制御部602は、アドホックネットワークを介して、移動体102−107と通信を試み、通信が行えたか否かに従って、アドホックネットワークを介した通信を行うことが可能な移動体のグループである既知群と、アドホックネットワークを介した通信を行うことが不可能な移動体のグループである不明群とを、それぞれ特定する(ステップS6107)。そして、制御部602は、自移動体情報5801のうち、既知群に属する全ての移動体の移動体識別情報から成る既知群情報と、不明群に属する全ての移動体の移動体識別情報から成る不明群情報とを更新する。
【0710】
次に、移動体101の制御部602は、既知群の位置情報を更新する(ステップS6108)。このとき、位置検出部604は、自身の位置情報を検出し、自移動体情報5801の位置情報を更新する。更に、通信部601は、既知群に属する全ての移動体に対して、アドホックネットワークを介して、移動体識別情報と位置情報とを送信するよう要求し、既知群に属する移動体から移動体識別情報と位置情報とを受信する。そして、制御部602は、他移動体情報702の位置情報を更新する。
【0711】
次に、移動体101の制御部602は、第2基本移動ベクトル群に属するそれぞれの移動ベクトルと、通信維持移動ベクトルとに対して、それぞれ0以外の値を乗じた移動ベクトルの和を計算し、計算結果の移動ベクトル群を基本移動ベクトル群として決定する(ステップS6109)。そして、制御部602は、基本移動ベクトル群に関する情報である基本移動ベクトル群情報を作成し、自移動体情報5801の基本移動ベクトル情報を更新する。
【0712】
ここでは、制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の2つの移動ベクトルの和を主基本移動ベクトルとして決定する。また、制御部602は、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の2つの移動ベクトルの和を障害物回避基本移動ベクトルとして決定する。なお、第2基本移動ベクトル群に属するそれぞれの移動ベクトルに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0713】
図73に示したように、これまで説明してきた通り、今回の例では、移動体101の第2主基本移動ベクトル4811は(−5m/s,−2m/s,0m/s)であり、通信維持移動ベクトル4201は(2m/s,2m/s,0m/s)であるから、計算結果の移動ベクトルは(−4m/s,−1m/s,0m/s)となる。そのため、移動体101の制御部602は、計算結果の移動ベクトル(−4m/s,−1m/s,0m/s)を、基本移動ベクトル群のうちの主基本移動ベクトル4801として決定する。また、今回の例では、移動体101の第2障害物回避基本移動ベクトル4812は(0m/s,5m/s,0m/s)であり、通信維持移動ベクトル4201は(2m/s,2m/s,0m/s)であるから、計算結果の移動ベクトルは(1m/s,6m/s,0m/s)となる。そのため、移動体101の制御部602は、計算結果の移動ベクトル(1m/s,6m/s,0m/s)を、基本移動ベクトル群のうちの障害物回避基本移動ベクトル4802として決定する。
【0714】
次に、移動体101の制御部602は、不明群に属する移動体が存在するか否かを判断する(ステップS6110)。
【0715】
ステップS6110で不明群に属する移動体が存在しないと判断された場合(ステップS6110でNO)、移動体101の制御部602は、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、以下で説明するステップS6115の処理に移行する。
【0716】
例えば、
図13の場面では、不明群は存在せず、移動体101−107が全て既知群に属しているので、移動体101の制御部602は、分断復旧ベクトルの大きさを0とし、以下で説明するステップS6115の処理に移行する。
【0717】
一方、ステップS6110で不明群に属する移動体が存在すると判断された場合(ステップS6110でYES)、制御部602は、ステップS6111−ステップS6114の処理を実行する。
【0718】
ステップS6110で不明群に属する移動体が存在すると判断された場合、まず、移動体101の制御部602は、他移動体情報702から、不明群に属する全ての移動体の位置情報を取得する(ステップS6111)。
【0719】
本開示の実施の形態4における、1の移動体105が故障した場合の、既知群に属する移動体101−104と不明群に属する移動体105−107とを示す概念図は、
図14と同じであるので、説明を省略する。
【0720】
本開示の実施の形態4における、1の移動体105が故障した場合の、既知群に属する移動体106−107と不明群に属する移動体101−104とを示す概念図は、
図15と同じであるので、説明を省略する。
【0721】
次に、移動体101の制御部602は、ステップS6111で取得した不明群に属する移動体の位置情報に基づいて、一つ以上の目標位置を決定する(ステップS6112)。
【0722】
目標位置は、例えば、不明群に属する全ての移動体の位置の中心位置、又は不明群に属する全ての移動体の位置のうち、自身に最も近い位置である。
【0723】
次に、移動体101の制御部602は、目標位置から自身の位置までの距離を算出する(ステップS6113)。
【0724】
本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体101−104のそれぞれにおける、目標位置の決定方法と、当該決定方法によって決定された目標位置との一例を示す図は、
図16と同じである。なお、移動体105−107のそれぞれは、
図11の他移動体情報702に記載した位置にあるとする。
【0725】
例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、移動体101−104のそれぞれの目標位置は、
図16の目標位置1401となり、目標位置1401の値は「北緯34度41分37.6秒、東経135度30分9.1秒、海抜2m」となる。この場合、目標位置1401から移動体101−104のそれぞれの位置までの距離は、53.3m、37.6m、35.5m及び27.9mとなる。
【0726】
また、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する場合には、移動体101−104のそれぞれの目標位置は、
図16の目標位置1402、すなわち、移動体105の位置となり、目標位置1402の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。この場合、目標位置1402から移動体101−104のそれぞれの位置までの距離は、40.6m、25.0m、22.7m及び19.9mとなる。ただし、ここでは、緯度1秒分の距離を31mとし、経度1秒分の距離を25mとして、簡易的に近似値を計算しているが、緯度及び経度の差分から距離を計算する計算方法については、本開示の主旨とは無関係であることは言うまでもない。以下、本明細書では、特に明記しない限り、ここで示した簡易的な計算によって、緯度及び経度の差分から距離を計算することとする。
【0727】
本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体106−107のそれぞれにおける、目標位置の決定方法と、当該決定方法によって決定された目標位置との一例を示す図は、
図17と同じである。なお、移動体101−105のそれぞれは、
図11の他移動体情報702に記載した位置にあるとする。
【0728】
例えば、不明群に属する全ての移動体の位置の中心位置を目標位置として決定する場合には、移動体106−107のそれぞれの目標位置は、
図17の目標位置1501となり、目標位置1501の値は「北緯34度41分37.48秒、東経135度30分7.82秒、海抜2m」となる。この場合、目標位置1501から移動体106−107のそれぞれの位置までの距離は、33.5m及び44.5mとなる。また、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する場合には、移動体106−107のそれぞれの目標位置は、
図17の目標位置1502、すなわち、移動体105の位置となり、目標位置1502の値は「北緯34度41分37.5秒、東経135度30分8.6秒、海抜2m」となる。この場合、目標位置1502から移動体106−107のそれぞれの位置までの距離は、15.6m及び25.0mとなる。
【0729】
次に、移動体101の制御部602は、目標位置から自身の位置までの距離に応じて、目標位置に向かうための移動ベクトルを示す分断復旧ベクトルを決定する(ステップS6114)。そして、制御部602は、分断復旧ベクトルに関する情報である分断復旧ベクトル情報を作成し、自移動体情報5801の分断復旧ベクトル情報を更新する。
【0730】
ここで、分断復旧ベクトルの一例を説明する。移動体101−107の制御部602は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、既知群に属する移動体の中で、自身が目標位置に最も近い場合には、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトルを決定し、自身が目標位置に最も近くない場合には、大きさが0である分断復旧ベクトルを決定する。
【0731】
図74は、本開示の実施の形態4において、1の移動体105が故障した場合の、複数の他の移動体101−104のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図74において、
図6、
図14及び
図16と同じ構成要素については同じ符号を用い、説明を省略する。
【0732】
上述した通り、目標位置1402から移動体101−104のそれぞれの位置までの距離は、40.6m、25.0m、22.7m及び19.9mである。従って、目標位置1402に最も近い移動体104の制御部602は、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトル(5m/s,−4m/s,0m/s)を、分断復旧ベクトル4004として決定する。また、移動体101−103の制御部602は、大きさが0である分断復旧ベクトル4001−4003を決定する。
【0733】
図75は、本開示の実施の形態4において、1の移動体105が故障した場合の、複数の他の移動体106−107のそれぞれにおける、分断復旧ベクトルの一例を示す概念図である。
図75において、
図6、
図15及び
図17と同じ構成要素については同じ符号を用い、説明を省略する。
【0734】
上述した通り、目標位置1502から移動体101−104のそれぞれの位置までの距離は、15.6m及び25.0mである。従って、目標位置1502に最も近い移動体106の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル(−5m/s,−4m/s,0m/s)を、分断復旧ベクトル4106として決定する。また、移動体107の制御部602は、大きさが0である分断復旧ベクトル4107を決定する。
【0735】
次に、移動体101の制御部602は、基本移動ベクトル群に属する全ての移動ベクトルと、分断復旧ベクトルとに対して、それぞれ0以外の値を乗じた移動ベクトルの和を計算し、計算結果の移動ベクトルを実移動ベクトルとして決定する(ステップS6115)。そして、制御部602は、実移動ベクトルに関する情報である実移動ベクトル情報を作成し、自移動体情報5801の実移動ベクトル情報を更新する。
【0736】
図76は、本開示の実施の形態4において、1の移動体105が故障した場合の、他の移動体101における、実移動ベクトルの決定方法を説明するための概念図である。
図76において、
図6、
図14、
図16、
図73及び
図74と同じ構成要素については同じ符号を用い、説明を省略する。
【0737】
ここでは、制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルには1を乗じた上で、計算結果の移動ベクトルの和を計算する。なお、基本移動ベクトル群に属するそれぞれの移動ベクトルに乗ずる値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0738】
図76に示す例では、移動体101の主基本移動ベクトル4801は(−4m/s,−1m/s,0m/s)であり、障害物回避基本移動ベクトル4802は(1m/s,6m/s,0m/s)であり、分断復旧ベクトル4001は(0m/s,0m/s,0m/s)であるから、計算結果の移動ベクトルは(−3m/s,5m/s,0m/s)となる。移動体101の制御部602は、計算結果の移動ベクトル(−3m/s,5m/s,0m/s)を実移動ベクトル4901として決定する。
【0739】
移動体105が故障した場合の分断復旧ベクトル4001の大きさは0である。そのため、移動体101は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図76に示したように、実移動ベクトル4901(−3m/s,5m/s,0m/s)に従って、ほぼ北北西に向かって移動することになる。そのため、障害物を適切に回避し、かつ、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0740】
移動体102−104,106−107の基本移動ベクトル群及び実移動ベクトルも、移動体101の基本移動ベクトル群及び実移動ベクトルと同様にして決定される。
【0741】
図77は、本開示の実施の形態4において、1の移動体105が故障した場合の、複数の他の移動体101−104,106−107における、実移動ベクトルの一例を示す概念図である。
図77において、
図6及び
図76と同じ構成要素については同じ符号を用い、説明を省略する。
【0742】
ここでは、移動体102−104の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体106−107の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0743】
また、上述した通り、ここでは、制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、主基本移動ベクトルとして決定する。また、制御部602は、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0744】
また、ここでは、制御部602は、分断復旧ベクトルの大きさが0である場合には、主基本移動ベクトルに0.5を乗じ、障害物回避基本移動ベクトルに1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。また、制御部602は、分断復旧ベクトルの大きさが0でない場合には、主基本移動ベクトルに0.05を乗じ、障害物回避基本移動ベクトルに0.1を乗じ、分断復旧ベクトルに1を乗じて求まる各移動ベクトルの和を、実移動ベクトルとして決定する。
【0745】
移動体102の主基本移動ベクトルは、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図68に示した通信維持移動ベクトル4302に0.5を乗じた移動ベクトルとの和となる。また、移動体102の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図68に示した通信維持移動ベクトル4302に0.5を乗じた移動ベクトルとの和となる。そして、分断復旧ベクトル4002の大きさが0であるので、
図77に示したように、移動体102の実移動ベクトル5002は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0746】
移動体105が故障した場合の分断復旧ベクトル4002の大きさは0である。そのため、移動体102は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図77に示したように、実移動ベクトル5002に従って、ほぼ西南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0747】
移動体103の主基本移動ベクトルは、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図69に示した通信維持移動ベクトル4403に0.5を乗じた移動ベクトルとの和となる。また、移動体103の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図69に示した通信維持移動ベクトル4403に0.5を乗じた移動ベクトルとの和となる。そして、分断復旧ベクトル4003の大きさが0であるので、
図77に示したように、移動体103の実移動ベクトル5003は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0748】
移動体105が故障した場合の分断復旧ベクトル4003の大きさは0である。そのため、移動体103は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図77に示したように、実移動ベクトル5003に従って、ほぼ西北西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0749】
移動体104の主基本移動ベクトルは、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図70に示した通信維持移動ベクトル4504に0.5を乗じた移動ベクトルとの和となる。また、移動体104の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図70に示した通信維持移動ベクトル4504に0.5を乗じた移動ベクトルとの和となる。
【0750】
移動体105が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0である。そのため、移動体104の実移動ベクトル5004は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体104はほぼ西南西に向かって移動する予定であった。ところが、移動体105が故障して、不明群に属する移動体が出現したことによって、
図77に示したように、移動体104の実移動ベクトル5004は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル4004(5m/s,−4m/s,0m/s)に1を乗じた移動ベクトルとの和となり、移動体104はほぼ東南東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0751】
移動体106の主基本移動ベクトルは、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図71に示した通信維持移動ベクトル4606に0.5を乗じた移動ベクトルとの和となる。また、移動体106の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図71に示した通信維持移動ベクトル4606に0.5を乗じた移動ベクトルとの和となる。
【0752】
移動体105が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0である。そのため、移動体106の実移動ベクトル5006は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体106はほぼ東南東に向かって移動する予定であった。ところが、移動体105が故障して、不明群に属する移動体が出現したことによって、
図77に示したように、移動体106の実移動ベクトル5006は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル4106(5m/s,−4m/s,0m/s)に1を乗じた移動ベクトルとの和となり、移動体106はほぼ西南西に向かって移動することになり、主として通信復旧動作を担うことになる。
【0753】
移動体107の主基本移動ベクトルは、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図72に示した通信維持移動ベクトル4707に0.5を乗じた移動ベクトルとの和となる。また、移動体103の障害物回避基本移動ベクトルは、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、
図72に示した通信維持移動ベクトル4707に0.5を乗じた移動ベクトルとの和となる。そして、分断復旧ベクトル4007の大きさは0であるので、
図77に示したように、移動体107の実移動ベクトル5007は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0754】
移動体105が故障した場合の分断復旧ベクトル4007の大きさは0である。そのため、移動体107は、移動体105が故障して、不明群に属する移動体が出現しても、移動体105が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図77に示したように、実移動ベクトル5007に従って、ほぼ東北東に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0755】
以上より、結果として、移動体101−104,106−107のそれぞれが、直接通信を維持できるような移動を行うと同時に、移動体104と移動体106とが互いに集まるような移動を行うことになるので、通信の復旧を図ることができる。また、移動体101−103及び移動体107は、直接通信の維持と本来の目的の遂行とをバランスよく実施し、移動体104及び移動体106は主として通信復旧動作を担うことになり、構成群全体として通信の復旧と本来の目的とを両立させることができる。
【0756】
次に、移動体101の制御部602は、自移動体情報5801から実移動ベクトル情報を取得し、取得した実移動ベクトル5701に従って実際に移動体101を移動させる(ステップS6116)。
【0757】
以下、特許文献1で開示されている技術では解決できていなかった課題を、本開示の実施の形態4では解決できていることを、具体例を用いて、説明する。
【0758】
既に述べた通り、特許文献1で開示されている第1の技術は、
図2の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合については、そのままでは適用することができなかった。
【0759】
これに対して、本開示の実施の形態4では、上述した通り、
図77の例のように、どの移動体から見ても、アドホックネットワークとの通信が切断された移動体が二つ以上である場合でも、通信の復旧を図ることができる。このような場合、すなわち、どの移動体から見ても、不明群に属する移動体が二つ以上である場合でも、構成群に属する全ての移動体が直接通信を維持できるような移動を行うと同時に、構成群に属する移動体のうちの一部又は全部が互いに集まるような移動を行うことになるので、通信の復旧を図ることができる。
図77の例では、移動体101−104,106−107のそれぞれが、直接通信を維持できるような移動を行うと同時に、移動体104と移動体106が互いに集まるような移動を行うことにより、通信の復旧を図ることができている。
【0760】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態4では、例えば
図77の例では、移動体101−103及び移動体107は、直接通信の維持と本来の目的の遂行とをバランスよく実施でき、この課題を解決できている。
【0761】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態4では、例えば
図77の例では、移動体101−103及び移動体107は、直接通信の維持と本来の目的の遂行とをバランスよく実施でき、この課題を解決できている。
【0762】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態4では、例えば
図77の例では、移動体104及び移動体106が互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体101−104及び移動体106−107のそれぞれが、直接通信を維持できるような移動を行うことにより、移動体間の直接通信を維持することができ、この課題を解決できている。
【0763】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図3の例のように、移動体の一部又は全部が互いに遠ざかるような方向に移動した場合には、最善でも一部の通信の復旧しか図ることができなかった。
図3の例では、移動体201−204と移動体206−207とが互いに遠ざかるような方向に移動し続けている場合には、最善でも移動体201−204と移動体206−207とのどちらか一方に属する移動体のみとの直接通信が復旧するのみで、他方に属する移動体との直接通信を復旧することはできなかった。
【0764】
これに対して、本開示の実施の形態4では、
図3の例のように、移動体の一部が互いに遠ざかるような方向に移動した場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0765】
なお、ここでは、移動体201−207は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定し、かつ、既知群に属する移動体の中で、自身が目標位置に最も近い場合には、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトルを決定する。また、移動体201−207は、不明群に属する全ての移動体の位置のうち、自身が目標位置に最も近くない場合には大きさが0である分断復旧ベクトルを決定する。
【0766】
また、ここでは、移動体201−207の制御部602は、一定の大きさを持ち、直接通信群に属する全ての移動体の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。なお、通信維持移動ベクトルの大きさは2.8m/sとする。
【0767】
また、ここでは、移動体201−207の制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、主基本移動ベクトルとして決定する。また、移動体201−207の制御部602は、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0768】
また、ここでは、移動体201−207の制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルは1を乗じた上で、計算結果の移動ベクトルの和を計算する。
【0769】
また、ここでは、移動体201−204の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(−10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体205の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(0m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体206−207の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0770】
また、ここでは、移動体201−207の制御部602は、分断復旧ベクトルの大きさが0である場合には、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。また、移動体201−207の制御部602は、分断復旧ベクトルの大きさが0でない場合には、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。
【0771】
図78は、本開示の実施の形態4における、
図3に示す状況での、複数の移動体201−204の分断復旧ベクトルの一例を示す概念図である。
図78において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0772】
図78に示した通り、移動体201−204のそれぞれにおいては、既知群5101に属する移動体は、移動体201−204であり、不明群5102に属する移動体は、移動体205−207である。
【0773】
移動体201−204の制御部602は、不明群5102に属する全ての移動体の位置のうち、自身に最も近い移動体205の位置を目標位置5111として決定する。
【0774】
目標位置5111に最も近い移動体204の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル5124を決定する。また、移動体201−203の制御部602は、大きさが0である分断復旧ベクトル5121−5123を決定する。
【0775】
図79は、本開示の実施の形態4における、
図3に示す状況での、移動体205の分断復旧ベクトルの一例を示す概念図である。
図79において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0776】
図79に示した通り、移動体205においては、既知群5201に属する移動体は、移動体205であり、不明群5202に属する移動体は、移動体201−204,206−207である。
【0777】
移動体205の制御部602は、不明群5202に属する全ての移動体の位置のうち、自身に最も近い移動体206の位置を目標位置5211として決定する。
【0778】
移動体205は、目標位置5211に最も近いので、移動体205の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル5225を決定する。
【0779】
図80は、本開示の実施の形態4における、
図3に示す状況での、複数の移動体206−207の分断復旧ベクトルの一例を示す概念図である。
図80において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0780】
図80に示した通り、移動体206−207のそれぞれにおいては、既知群5301に属する移動体は、移動体206−207であり、不明群5302に属する移動体は、移動体201−205である。
【0781】
移動体206−207の制御部602は、不明群5302に属する全ての移動体の位置のうち、自身に最も近い移動体205の位置を目標位置5311として決定する。
【0782】
目標位置5311に最も近い移動体206の制御部602は、向きが目標位置に向かう方向であり、大きさが6.4m/sである分断復旧ベクトル5326を決定する。また、移動体207の制御部602は、大きさが0である分断復旧ベクトル5327を決定する。
【0783】
図81は、本開示の実施の形態4における、
図3に示す状況での、複数の移動体201−207の実移動ベクトルの一例を示す概念図である。
図81において、
図1と同じ構成要素については同じ符号を用い、説明を省略する。
【0784】
移動体201の直接通信群に属する移動体は、移動体202のみである。従って、移動体201の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置(移動体202の位置)へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0785】
次に、移動体201の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体201の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0786】
そして、分断復旧ベクトル5121の大きさが0であるので、移動体201の実移動ベクトル5401は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0787】
移動体201は、移動体205が故障した場合の分断復旧ベクトル5121の大きさが0であるので、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図81に示したように、実移動ベクトル5401に従って、ほぼ西北西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0788】
移動体202の直接通信群に属する移動体は、移動体201、移動体203及び移動体204の3つである。従って、移動体202の制御部602は、大きさが2.8m/sであり、移動体201、移動体203及び移動体204の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0789】
次に、移動体202の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体202の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0790】
そして、分断復旧ベクトル5122の大きさが0であるので、移動体202の実移動ベクトル5402は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0791】
移動体205が故障した場合の分断復旧ベクトル5122の大きさは0である。そのため、移動体202は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図81に示したように、実移動ベクトル5402に従って、ほぼ西南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0792】
移動体203の直接通信群に属する移動体は、移動体202及び移動体204の2つである。従って、移動体203の制御部602は、大きさが2.8m/sであり、移動体202及び移動体204の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0793】
次に、移動体203の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体203の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0794】
そして、分断復旧ベクトル5123の大きさが0であるので、移動体203の実移動ベクトル5403は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0795】
移動体205が故障した場合の分断復旧ベクトル5123の大きさは0である。そのため、移動体203は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図81に示したように、実移動ベクトル5403に従って、ほぼ西北西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0796】
移動体204の直接通信群に属する移動体は、移動体202及び移動体203の2つである。従って、移動体204の制御部602は、大きさが2.8m/sであり、移動体202、移動体203の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0797】
次に、移動体204の制御部602は、第2主基本移動ベクトル(−10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体204の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0798】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体204の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体204はほぼ西南西に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図81に示したように、移動体204の実移動ベクトル5404は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5124に1を乗じた移動ベクトルとの和となり、移動体204はほぼ東南東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0799】
移動体205の直接通信群に属する移動体は、存在しない。従って、移動体205の制御部602は、大きさが0である通信維持移動ベクトルを決定する。
【0800】
次に、移動体205の制御部602は、第2主基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体205の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0801】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体205の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体205はその場に停止する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図81に示したように、移動体205の実移動ベクトル5405は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5225に1を乗じた移動ベクトルとの和となり、移動体205はほぼ東北東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0802】
移動体206の直接通信群に属する移動体は、移動体207のみである。従って、移動体206の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置(移動体207の位置)へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0803】
次に、移動体206の制御部602は、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体206の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0804】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体206の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体206はほぼ東南東に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図81に示したように、移動体206の実移動ベクトル5406は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5326に1を乗じた移動ベクトルとの和となり、移動体206はほぼ西南西に向かって移動することになり、主として通信復旧動作を担うことになる。
【0805】
移動体207の直接通信群に属する移動体は、移動体206のみである。従って、移動体207の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置(移動体206の位置)へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0806】
次に、移動体207の制御部602は、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体207の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0807】
そして、分断復旧ベクトル5127の大きさは0であるので、移動体207の実移動ベクトル5407は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0808】
移動体205が故障した場合の分断復旧ベクトル5127の大きさは0である。そのため、移動体207は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図81に示したように、実移動ベクトル5407に従って、ほぼ東北東に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0809】
このように、移動体201−204,206−207のそれぞれが、直接通信を維持できるような移動を行うと同時に、移動体204−206が互いに集まるような移動を行うことになるので、
図3の例のように、移動体の一部が互いに遠ざかるような方向に移動した場合でも、通信の復旧を図ることができている。
【0810】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態4では、例えば
図81の例では、移動体201−203及び移動体207は、直接通信の維持と本来の目的の遂行とをバランスよく実施でき、この課題を解決できている。
【0811】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態4では、例えば
図81の例では、移動体201−203及び移動体207は、直接通信の維持と本来の目的の遂行とをバランスよく実施でき、この課題を解決できている。
【0812】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態4では、例えば
図81の例では、移動体204−206が互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体201−204及び移動体206−207のそれぞれが、直接通信を維持できるような移動を行うことにより、移動体間の直接通信を維持することができ、この課題を解決できている。
【0813】
また、既に述べた通り、特許文献1で開示されている第1の技術では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合には、通信を復旧させることはできなかった。
図4の例では、特許文献1で開示されている第1の技術のいずれを用いたとしても、アドホックネットワークとの通信が切断された移動体207が通信の復旧のために移動した方向に、既に移動体201−206は存在せず、移動体201−206は
図4の左下の方向に向かって移動を続けているので、移動体207は移動体201−206に近づくことはできず、直接通信を復旧させることはできなかった。また、仮に、移動体207が移動する方向に移動体201−206が存在したとしても、移動体201−206は移動体207から遠ざかるような方向に移動し続けているので、移動体207は移動体201−206に追いつくことができず、移動体201−206との直接通信は復旧できなかった。
【0814】
これに対して、本開示の実施の形態4では、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合でも、通信の復旧を図ることができる。このことを、以下に説明する。
【0815】
なお、ここでは、移動体201−207の制御部602は、不明群に属する全ての移動体の位置のうち、自身に最も近い位置を目標位置として決定する。また、移動体201−207の制御部602は、既知群に属する移動体の中で、自身が目標位置に最も近い場合には、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトルを決定し、自身が目標位置に最も近くない場合には大きさが0である分断復旧ベクトルを決定する。
【0816】
また、ここでは、移動体201−207の制御部602は、一定の大きさを持ち、直接通信群に属する全ての移動体の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。なお、通信維持移動ベクトルの大きさは2.8m/sとする。
【0817】
また、ここでは、移動体201−207の制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、主基本移動ベクトルとして決定する。また、移動体201−207の制御部602は、第2基本移動ベクトル群に属する移動ベクトルのうち、第2障害物回避基本移動ベクトルには1を乗じ、通信維持移動ベクトルには、1を第2基本移動ベクトル群に属する移動ベクトルの数で割った値、すなわち、0.5を乗じた上で、計算結果の移動ベクトルの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0818】
また、ここでは、移動体201−207の制御部602は、障害物を回避するための移動の比重を大きくするため、基本移動ベクトル群に属する移動ベクトルのうち、主基本移動ベクトルには0.5を乗じ、障害物回避基本移動ベクトルには1を乗じ、分断復旧ベクトルは1を乗じた上で、計算結果の移動ベクトルの和を計算する。
【0819】
また、ここでは、移動体201−206の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(−6m/s,−8m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体205の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(0m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。また、移動体207の第2基本移動ベクトル群に属する移動ベクトルのうち、第2主基本移動ベクトルの値を(10m/s,0m/s,0m/s)とし、第2障害物回避基本移動ベクトルの値を(0m/s,0m/s,0m/s)とする。
【0820】
また、ここでは、移動体201−207の制御部602は、分断復旧ベクトルの大きさが0である場合には、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。移動体201−207の制御部602は、分断復旧ベクトルの大きさが0でない場合には、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和を、実移動ベクトルとして決定する。
【0821】
図82は、本開示の実施の形態4において、
図4に示す状況の場合に、複数の移動体201−206のそれぞれが、どのような分断復旧ベクトルを決定するかの一例を示す概念図である。
図82において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0822】
図82に示した通り、移動体201−206のそれぞれにおいては、既知群5501に属する移動体は、移動体201−206であり、不明群5502に属する移動体は、移動体207である。
【0823】
移動体201−206の制御部602は、不明群5502に属する全ての移動体の位置のうち、自身に最も近い移動体207の位置を目標位置5511として決定する。
【0824】
目標位置5511に最も近い移動体206の制御部602は、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトル5526を決定する。移動体201−205の制御部602は、大きさが0である分断復旧ベクトル5521−5525を決定する。
【0825】
図83は、本開示の実施の形態4における、
図4に示す状況での、移動体207の分断復旧ベクトルの一例を示す概念図である。
図83において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0826】
図83に示した通り、移動体207においては、既知群5601に属する移動体は、移動体207であり、不明群5602に属する移動体は、移動体201−206である。
【0827】
移動体207の制御部602は、不明群5602に属する全ての移動体の位置のうち、自身に最も近い移動体206の通信切断直前の位置503を、目標位置5611として決定する。
【0828】
移動体207は、目標位置5611に最も近いので、移動体207の制御部602は、目標位置に向かう向きを持ち、大きさが6.4m/sである分断復旧ベクトル5627を決定する。
【0829】
図84は、本開示の実施の形態4における、
図4に示す状況での、複数の移動体201−207の実移動ベクトルの一例を示す概念図である。
図84において、
図1及び
図4と同じ構成要素については同じ符号を用い、説明を省略する。
【0830】
移動体201の直接通信群に属する移動体は、移動体202のみである。従って、移動体201の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置(移動体202の位置)へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0831】
次に、移動体201の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体201の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0832】
そして、分断復旧ベクトル5521の大きさは0であるので、移動体201の実移動ベクトル5701は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0833】
移動体205が故障した場合の分断復旧ベクトル5521の大きさは0である。そのため、移動体201は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図81に示したように、実移動ベクトル5701に従って、ほぼ南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0834】
移動体202の直接通信群に属する移動体は、移動体201、移動体203及び移動体204の3つである。従って、移動体202の制御部602は、大きさが2.8m/sであり、移動体201、移動体203及び移動体204の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0835】
次に、移動体202の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体202の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0836】
そして、分断復旧ベクトル5522の大きさは0であるので、移動体202の実移動ベクトル5702は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0837】
移動体205が故障した場合の分断復旧ベクトル5522の大きさは0である。そのため、移動体202は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図84に示したように、実移動ベクトル5702に従って、ほぼ南南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0838】
移動体203の直接通信群に属する移動体は、移動体202及び移動体204の2つである。従って、移動体203の制御部602は、大きさが2.8m/sであり、移動体202及び移動体204の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0839】
次に、移動体203の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体203の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0840】
そして、分断復旧ベクトル5523の大きさは0であるので、移動体203の実移動ベクトル5703は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0841】
移動体205が故障した場合の分断復旧ベクトル5523の大きさは0である。そのため、移動体203は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図84に示したように、実移動ベクトル5703に従って、ほぼ南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0842】
移動体204の直接通信群に属する移動体は、移動体202及び移動体203の2つである。従って、移動体204の制御部602は、大きさが2.8m/sであり、移動体202及び移動体203の位置の中心位置へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0843】
次に、移動体204の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体204の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0844】
そして、分断復旧ベクトル5524の大きさは0であるので、移動体204の実移動ベクトル5704は、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルと、分断復旧ベクトルに1を乗じた移動ベクトルとの和となる。
【0845】
移動体205が故障した場合の分断復旧ベクトル5524の大きさは0である。そのため、移動体204は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図84に示したように、実移動ベクトル5704に従って、ほぼ南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0846】
移動体205の直接通信群に属する移動体は、移動体204のみである。従って、移動体205の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置(移動体204の位置)へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0847】
次に、移動体205の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体205の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0848】
移動体205が故障した場合の分断復旧ベクトル5525の大きさは0である。そのため、移動体205は、移動体205が故障して、不明群に属する移動体が出現しても、移動体205が故障せず、不明群に属する移動体が存在しなかった場合と同じく、
図84に示したように、実移動ベクトル5705に従って、ほぼ西南西に向かって移動することになる。そのため、直接通信の維持と本来の目的の遂行とを、バランスよく実施することができる。
【0849】
移動体206の直接通信群に属する移動体は、移動体205のみである。従って、移動体206の制御部602は、大きさが2.8m/sであり、直接通信群に属する全ての移動体の位置の中心位置(移動体205の位置)へ向かう移動ベクトルを、通信維持移動ベクトルとして決定する。
【0850】
次に、移動体206の制御部602は、第2主基本移動ベクトル(−6m/s,−8m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。移動体206の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0851】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体206の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体206はほぼ西南西に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図84に示したように、移動体206の実移動ベクトルは、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5526に1を乗じた移動ベクトルとの和となり、移動体206はほぼ北東に向かって移動することになり、主として通信復旧動作を担うことになる。
【0852】
移動体207の直接通信群に属する移動体は、存在しない。従って、移動体207の制御部602は、大きさが0である通信維持移動ベクトルを決定する。
【0853】
次に、移動体207の制御部602は、第2主基本移動ベクトル(10m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、主基本移動ベクトルとして決定する。また、移動体207の制御部602は、第2障害物回避基本移動ベクトル(0m/s,0m/s,0m/s)に1を乗じた移動ベクトルと、通信維持移動ベクトルに0.5を乗じた移動ベクトルとの和を計算し、障害物回避基本移動ベクトルとして決定する。
【0854】
移動体205が故障せず、不明群に属する移動体が存在しなかった場合、分断復旧ベクトルの大きさは0であるので、移動体206の実移動ベクトルは、主基本移動ベクトルに0.5を乗じた移動ベクトルと、障害物回避基本移動ベクトルに1を乗じた移動ベクトルとの和となり、移動体207はほぼ東に向かって移動する予定であった。ところが、移動体205が故障して、不明群に属する移動体が出現したことによって、
図84に示したように、移動体207の実移動ベクトル5707は、主基本移動ベクトルに0.05を乗じた移動ベクトルと、障害物回避基本移動ベクトルに0.1を乗じた移動ベクトルと、分断復旧ベクトル5627に1を乗じた移動ベクトルとの和となり、移動体206はほぼ西に向かって移動することになり、主として通信復旧動作を担うことになる。
【0855】
このように、移動体201−206が直接通信を維持できるような移動を行うと同時に、移動体206及び移動体207が互いに集まるような移動を行うことになるので、
図4の例のように、アドホックネットワークとの通信が切断された移動体が通信の復旧のために移動した方向に他の移動体が存在しない場合、又は他の移動体がアドホックネットワークとの通信が切断された移動体から遠ざかるような方向に移動していた場合でも、通信の復旧を図ることができている。
【0856】
また、特許文献1で開示されている第2の技術では、通信が復旧するまでの間、全ての移動体が、本来の目的のための移動を行うことができなくなってしまう、という課題があった。これに対して、本開示の実施の形態4では、例えば
図84の例では、移動体201−205は、直接通信の維持と本来の目的の遂行とをバランスよく実施でき、この課題を解決できている。
【0857】
また、特許文献1で開示されている第3の技術では、通信が復旧するまでの間、移動体群が展開していた領域が徐々に小さくなっていき、全ての移動体が、本来の目的のための移動を行うことができなくなるとともに、通信の復旧後も、通信が復旧した時点における位置から、本来の目的のための移動をやり直すことになってしまう、という課題があった。これに対して、本開示の実施の形態4では、例えば
図84の例では、移動体201−205は、直接通信の維持と本来の目的の遂行とをバランスよく実施でき、この課題を解決できている。
【0858】
また、特許文献1で開示されている第4の技術では、選択された移動体が切断位置に向かう方向に移動することにより、その移動体と、アドホックネットワークとの通信が切断された移動体以外の移動体との通信が切断されてしまい、二次的にアドホックネットワークの分断が拡大されていく恐れがある、という課題があった。これに対して、本開示の実施の形態4では、例えば
図84の例では、移動体206及び移動体207が互いに集まるような移動を行うことにより、通信の復旧を図ることができ、かつ、移動体201−206が直接通信を維持できるような移動を行うことにより、移動体間の直接通信を維持することができ、この課題を解決できている。
【0859】
本開示の実施の形態4のステップS6112の処理では、不明群に属する移動体が存在する限り、ステップS6114の処理で分断復旧ベクトルを決定する前に毎回目標位置を決定し直しているが、実施の形態4の第2の構成では、不明群に属する移動体が変更された場合にのみ目標位置を決定してもよい。
【0860】
実施の形態4の第2の構成の場合、不明群に属する移動体が変更された場合にのみ目標位置を決定するので、処理の効率化が図れる。
【0861】
本開示の実施の形態4のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態4の第3の構成では、ステップS6111の処理を初めて実行した時刻を記憶しておき、ステップS6111の処理を初めて実行した時刻から0より大きい復旧期限が経過している場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。なお、復旧期限の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0862】
実施の形態4の第3の構成の場合、復旧期限が経過しても通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0863】
なお、実施の形態4の第3の構成において、一旦、復旧期限が経過した後でも、不明群に属する移動体が変更された場合、又は更に一定の時間が経過した場合など、適切なタイミングで、ステップS6111の処理を初めて実行した時刻をリセットし、再び、ステップS6111−ステップS6114の処理を実行できるようにしてもよい(実施の形態4の第4の構成)。
【0864】
実施の形態4の第4の構成の場合、復旧期限が経過した後、一定の条件が成立した場合には、通信復旧動作をリトライすることができる。
【0865】
本開示の実施の形態4のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態4の第5の構成では、目標位置までの距離が、移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。なお、移動中止判定距離の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0866】
実施の形態4の第5の構成の場合、目標位置までの距離が、移動中止判定距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0867】
なお、実施の形態4の第5の構成において、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい(実施の形態4の第6の構成)。
【0868】
実施の形態4の第6の構成の場合、一旦、目標位置までの距離が、移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0869】
本開示の実施の形態4のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態4の第7の構成では、特定の位置から目標位置までの距離に移動中止判定係数を乗じた距離を示す第2移動中止判定距離を算出し、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。なお、第2移動中止判定係数の値は、定数でもよいし、実際の処理を行う際に動的に決定する値であってもよい。
【0870】
実施の形態4の第7の構成の場合、目標位置までの距離が、特定の位置から目標位置までの距離に移動中止判定係数を乗じた距離以下になるまで近づいても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0871】
なお、実施の形態4の第7の構成において、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい(実施の形態4の第8の構成)。
【0872】
実施の形態4の第8の構成の場合、一旦、目標位置までの距離が、第2移動中止判定距離以内の位置に到達した後に、再び、目標位置までの距離が、第2移動中止判定距離よりも遠い位置に離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0873】
本開示の実施の形態4のステップS6110の処理では、不明群に属する移動体が存在するか否かを判断し、不明群に属する移動体が存在する限り、ステップS6111−ステップS6114の処理を実行して、大きさが0でない分断復旧ベクトルを決定しているが、実施の形態4の第9の構成では、目標位置に到達した場合には、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。
【0874】
実施の形態4の第9の構成の場合、目標位置に到達しても、通信の復旧が完了しなかった場合には、復旧のための動作を中止するので、通信復旧動作を際限なく続けることを回避することができる。
【0875】
なお、実施の形態4の第9の構成において、一旦、目標位置に到達した後は、不明群に属する移動体が変更されるまでは、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい(実施の形態4の第10の構成)。
【0876】
実施の形態4の第10の構成の場合、一旦、目標位置に到達した後に、再び、目標位置から離れた場合に、再度通信復旧動作を開始して、通信復旧動作と本来の目的のための移動とを交互に繰り返すような事態を回避することができる。
【0877】
本開示の実施の形態4の第3から第10の構成において、ステップS6110の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行した時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割してもよい(実施の形態4の第11の構成)。
【0878】
実施の形態4の第11の構成の場合、既知群に属する移動体のそれぞれは、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0879】
本開示の実施の形態4の第3から第10の構成において、ステップS6110の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、アドホックネットワークを分割することを通知する分割通知を送信してもよい(実施の形態4の第12の構成)。また、他の移動体から分割通知を受信した時には、ステップS6110の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。これにより、通信復旧動作を中止し、その時点で既知群に属する移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0880】
実施の形態4の第12の構成の場合、既知群に属する移動体のそれぞれは、同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0881】
本開示の実施の形態4の第3から第10の構成において、ステップS6110の処理を実行する際に、それぞれの構成の説明で明記した条件が成立し、通信復旧動作を中止するために、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行した時点で、既知群に属する自分以外の全ての移動体に対して、既知群に属する移動体のグループを特定する既知群情報を送信してもよい(実施の形態4の第13の構成)。また、他の移動体から既知群情報を受信した時には、ステップS6110の処理を実行する際に、不明群に属する移動体が存在したとしても、ステップS6111−ステップS6114の処理を実行せずに、分断復旧ベクトルの大きさを0に決定し(ステップS6117)、ステップS6115の処理に移行してもよい。これにより、通信復旧動作を中止し、既知群情報で特定される移動体のグループを構成群として特定し直すことにより、アドホックネットワークを分割する。
【0882】
実施の形態4の第13の構成の場合、既知群に属する移動体のそれぞれは、通信によるタイムラグの影響を受けずに、確実に同一の構成群を特定することができ、更に、既に通信の復旧に失敗した不明群に対する通信復旧動作を再開して通信復旧動作の中止と再開とを際限なく繰り返すことを回避することができる。
【0883】
本開示において、ユニット、装置、部材又は部の全部又は一部、又は図面に示されるブロック図の機能ブロックの全部又は一部は、半導体装置、半導体集積回路(IC)、又はLSI(Large Scale Integration)を含む一つ又は複数の電子回路によって実行されてもよい。LSI又はICは、一つのチップに集積されてもよいし、複数のチップを組み合わせて構成されてもよい。例えば、記憶素子以外の機能ブロックは、一つのチップに集積されてもよい。ここでは、LSIやICと呼んでいるが、集積の度合いによって呼び方が変わり、システムLSI、VLSI(Very Large Scale Integration)、若しくはULSI(Ultra Large Scale Integration)と呼ばれるものであってもよい。LSIの製造後にプログラムされる、Field Programmable Gate Array(FPGA)、又はLSI内部の接合関係の再構成又はLSI内部の回路区画のセットアップができるReconfigurable Logic Deviceも同じ目的で使うことができる。
【0884】
さらに、ユニット、装置、部材又は部の全部又は一部の機能又は操作は、ソフトウエア処理によって実行することが可能である。この場合、ソフトウエアは一つ又は複数のROM、光学ディスク、ハードディスクドライブなどの非一時的記録媒体に記録され、ソフトウエアが処理装置(Processor)によって実行されたときに、そのソフトウエアで特定された機能が処理装置(Processor)および周辺装置によって実行される。システム又は装置は、ソフトウエアが記録されている一つ又は複数の非一時的記録媒体、処理装置(Processor)、及び必要とされるハードウエアデバイス、例えばインターフェース、を備えていてもよい。