【文献】
守田 了,外1名,引力斥力モデルに基づく集団行動の獲得,情報処理学会研究報告 知能と複雑系,社団法人情報処理学会,2000年 6月 2日,No.120,p.17−p.24
【文献】
原田 隆宏,SPHにおける壁境界計算手法の改良,情報処理学会論文誌,日本,社団法人情報処理学会,2007年 4月15日,第48巻 第4号,第1838−1846ページ
(58)【調査した分野】(Int.Cl.,DB名)
前記物理量が、連続体力学に基づいて仮想的に表現した密度、質量、圧力、温度、内部エネルギー、変位、歪、歪応力、接触圧の内、少なくとも1つを含むことを特徴とする、請求項1又は請求項2に記載の移動体の群制御システム。
前記物理量が、連続体力学に基づいて仮想的に表現した密度、質量、圧力、温度、内部エネルギー、変位、歪、歪応力、接触圧の内、少なくとも1つを含むことを特徴とする、請求項6又は請求項7に記載の移動体の群制御プログラム。
【背景技術】
【0002】
近年では、制御技術などの発展に伴い、自律的に稼働するロボットやドローンなどの無人機が広く用いられている。これらの移動体は、単体で稼働するものもあるが、複数を同一の空間内で利用するような用途で用いられることも多い。
【0003】
例えば、倉庫内での荷物の運搬、上空での環境情報の収集などにおいては、複数の移動体を協調して動作させることで、高効率化を図ることができる。また、複数の車両に車列をなして自動運転する場合などについても同様に、自律的に稼働する複数の移動体を協調して動作させるものと言える。
【0004】
このように、複数の移動体を操作するためには、移動体と障害物などとの衝突はもちろんのこと、移動体同士の衝突を避けることが不可欠である。これを実現するために、移動体を群れとしてとらえ、制御する、群制御と呼ばれる手法を用いた技術が開発されている。
【0005】
例えば、特許文献1には、複数の移動体の群制御を行うに際し、各移動体の周囲に、外側から内側に向かって、接近領域、平行領域、反発領域を順に設定して、移動体を群れとして扱い、かつ、移動体同士の接触を避けるような制御を行う技術が記載されている。
【0006】
また、気体や液体などの流体や弾塑性体や粘弾性体などの固体といった計算対象物を粒子の集まりとして表し、それらの粒子の挙動のシミュレーションを行う方法として、粒子法と呼ばれる数値解析手法が挙げられる。より詳細には、代表的な手法として、SPH(Smoothed Particle Hydrodynamics)法や、MPS(Moving Particle Semi−implicit)法が挙げられる。
【0007】
非特許文献1には、上述したSPH法を用いて物体同士が衝突した際に生じる現象の数値解析を行う方法について記載されている。また、非特許文献2には、MPS法による物理現象の数値解析を行う方法について記載されている。
【発明の概要】
【発明が解決しようとする課題】
【0010】
上述したように、特許文献1に記載されるような技術を用いることにより、複数の移動体の群制御を行うことができる。しかし、より安定して群れを形成させるためには、各移動体の速度や、旋回性能などの条件を加味し、適切な影響範囲を設定しなければ、群れとして収束できず、発散してしまう恐れがある。また、特許文献1に記載される群制御方法では、移動体群と移動体群の制御には対応できない。
【0011】
そこで、本発明では、安定した移動体の群れを維持し、移動体同士の衝突などを回避することのできる、移動体の群制御方法を提供することを課題とする。
【課題を解決するための手段】
【0012】
上記課題を解決するために、本発明に係る移動体の群制御方法は、
複数の移動体の群制御方法であって、
それぞれの前記移動体の状態を取得する状態取得工程と、
前記状態に基づいて、それぞれの前記移動体に関する物理量を算出する物理量算出工程と、
前記状態及び前記物理量に基づいて、それぞれの前記移動体の軌道変化を算出する軌道変化算出工程と、
前記軌道変化に基づいて、それぞれの前記移動体へと軌道の変更の指示を出す軌道変更指示工程と、を備え、
前記物理量算出工程が、前記移動体を系を構成する構成要素に見立て、前記物理量を、前記系における物理法則に基づいて、数値解析手法を用いて算出し、
前記物理量が、少なくとも、前記移動体とその近傍の他の移動体との間に生じる引力及び斥力を含むことを特徴とする。
【0013】
このように、移動体を系を構成する構成要素に見立て、その系における物理法則に基づいた数値解析手法を用いて制御することにより、移動体群を安定して制御することができる。
【0014】
本発明の好ましい形態では、前記物理法則として連続体力学を用い、
前記物理量算出工程が、前記移動体の群を連続体に見立て、前記物理量を算出することを特徴とする。
このように、移動体群を連続体と見立て、弾塑性体・粘弾性体・超弾性体などの固体、完全流体・粘性流体・圧縮性流体・非圧縮性流体などの流体の現象を扱う連続体力学および数値解析手法に基づいて群内部の状態を把握し、群間の相互作用を算出することで、それぞれの群内部の移動体と群と群の相互作用を安定的に制御することができる。
【0015】
本発明の好ましい形態では、前記数値解析手法の一つである粒子法を用い、
前記物理量算出工程が、その移動体の物理量を自身と近傍の移動体の物理量からKernel関数を加味して算出することを特徴とする。
これにより、移動体群内部状態と群間の相互作用に基づいて、移動体および移動体群の群制御を行うことができる。ここで、粒子法とは、固体・流体・粉粒体などを、複数の粒子によって構成されているものと見立て、それらの粒子を用いたシミュレーションを行うことにより、系の時間変化のシミュレーションを行うものである。また、Kernel関数とは、距離に応じた重み付け関数であり、ガウス関数や多項式を用い、着目する移動体の位置で最大値をとり、その移動体から離れると値が漸減し、空間を積分すると1に正規化される関数である。
このように、粒子法を用いて物理量の算出を行うことにより、それぞれの移動体の周囲の複数の移動体に起因する物理量の算出を効率よく行うことができる。
【0016】
本発明の好ましい形態では、前記状態が、各移動体の位置・速度・加速度などの移動体の状態を示す情報、及び外力・操舵力などの移動体の運動変更指示情報を含むことを特徴とする。
【0017】
本発明の好ましい形態では、前記物理量が、移動体の状態を前記物理法則を用いて仮想的に表現した密度、質量、圧力、温度、内部エネルギー、変位、歪、応力、接触圧などの情報を更に含むことを特徴とする。
【0018】
本発明の好ましい形態では、前記移動体が複数の群を構成し、
前記状態が、前記移動体の所属する群の情報を含むことを特徴とする。
これにより、複数の移動体群の間の相互作用を安定的に制御することができる。
【0019】
本発明の好ましい形態では、移動体の群制御方法が、前記移動体の内の少なくとも1つの位置を固定して行うことを特徴とする。
このように、移動体の固定を行うことで、壁などの障害物を想定した群制御を行うことができる。
【0020】
本発明の好ましい形態では、前記物理量算出工程、及び前記軌道変化算出工程を、それぞれの前記移動体によって行うことを特徴とする。
【発明の効果】
【0021】
複数の移動体を含む移動体の群れを、安定的に制御することができる
【発明を実施するための形態】
【0023】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。本実施形態に係る移動体の群制御方法は、数値解析の手法の一つである粒子法をアナロジー的に用いることで、移動体および移動体群の群制御を行うものである。粒子法とは、固体や流体、粉粒体などを、複数の粒子によって構成されているものと見立て、それらの粒子を用いたシミュレーションを行うことにより、系の時間変化のシミュレーションを行うものである。なお、本実施形態においては、より具体的には、粒子法の代表的な手法のひとつであるSPH(Smoothing Particle Hydrodynamics)法を用いるが、粒子法の一種であるMPS(Moving Particle Semi−implicit)法やDEM(Discrete Element Method)等の粒子法を用いることも排除しない。
【0024】
<SPH法によるシミュレーションの概略>
図6は、SPH法による粒子の運動のシミュレーションに係る処理を示すフローチャートである。ここでは、n個の粒子の集合について、mタイムステップのシミュレーションを行う場合の処理を例示する。また、記号iはタイムステップ、j・kは粒子のIDを示す。また、粒子法では、固体や流体などの連続体を、複数の微小要素に分割する。粒子法では、それらの微小要素を粒子とみたて、その位置での物理量は影響半径r内にある近傍粒子の物理量にKernel関数を考慮して重ね合わせて表現する。
【0025】
まず、ステップS301で、タイムステップi=0とし、0番目のタイムステップについての計算を開始する。続く、ステップS302で、粒子j=0とし、n個の粒子の集合の内の0番目の粒子を計算の対象とする。ここでタイムステップi=0と初期値を定めたが、任意の時刻でも良い。
【0026】
そして、ステップS303で、i番目のタイムステップにおけるj番目の粒子についての計算を行う。ここでの計算処理を、
図7に示す。なお、ここでは、予め粒子同士で影響を及ぼしあう範囲として影響半径rを定めておき、j番目の粒子と、それを中心とした影響半径rの球内または円内に含まれるnr個の粒子との間の関係から、物理量の算出を行うものである。また、影響半径は、一定値を取るだけでなく、物理場に応じて変化してもよい。
【0027】
まず、ステップS401で、i番目のタイムステップにおけるj番目の粒子から半径rの球内または円内に含まれる粒子kとその個数nrを特定する。ここで、粒子kには粒子jも含まれる。
【0028】
ステップS402で、i番目のタイムステップにおけるj番目の粒子の状態を取得する。i=0である場合には、j番目の粒子の初期状態として予め指定された状態を用い、i>0である場合には、i−1番目のタイムステップにおいて算出した値を用いる。ここで、ステップS401とステップS402は同時に行っても良い。
【0029】
そしてステップS403で、k=0とする。これは、上述した影響半径rの円内に含まれるnr個の粒子の内、0個目の粒子についての計算を行うことを示す。
【0030】
そしてステップS404で、j番目の粒子の物理量の時間変化を、j番目とk番目の粒子における物理量を用い、Kernel関数を用いて近似・離散化された連続体の保存則や材料力学の構成則等に基づいて算出する。例えば、連続体においては質量、運動量、内部エネルギーなど物理量は時間変化が起こっても系全体で保存される。これを定式化した質量保存式・運動量保存式・エネルギー保存式をKernel関数を用いて離散化し、j番目とk番目の粒子における物理量を用い、密度や速度、圧力、内部エネルギー等の物理量の時間変化を求める。また、歪と変位の関係式や歪速度と速度の関係式などの構成則をKernel関数用いて離散化し、j番目とk番目の粒子における物理量を用い、歪や歪速度の時間変化を求める。これらの各保存式や構成則は、Kernel関数を用いて離散化され、影響半径r内にある粒子の物理量にKernel関数で重みづけをして重ね合わせられている。
【0031】
そして、ステップS405でkの値がnrの値よりも小さいと判定された場合には、ステップS406に進み、kを1進める。
【0032】
そしてステップS407で、次のタイムステップ(i+1番目のタイムステップ)における、j番目の粒子の残りの物理量を、弾塑性体・粘弾性体・超弾性体などの固体、完全流体・粘性流体・圧縮性流体・非圧縮性流体などの流体の現象を扱う連続体力学に基づいて、算出する。
例えば、金属やゴムなどの固体であれば、粒子間の相対変位から歪を求め、構成方程式に従って弾性係数や降伏条件などを用いた歪から応力の計算、また、流体であれば、密度や内部エネルギー、温度から気体定数を用いた圧力の計算、また、隣接する粒子間の距離を用いた引力・斥力の計算などが挙げられる。
【0033】
以上のように、i番目のタイムステップにおけるj番目の粒子と、それらの周囲の影響半径r以内の距離のnr個の粒子との関係と、Kernel関数で離散化された各種保存則や構成則にもとづいて、i+1番目のステップにおけるj番目の粒子の状態を算出することができる。
【0034】
続いてステップS304に進み、jの値がnの値よりも小さいと判定された場合には、ステップS305に進み、jを1進めてから、再びステップS303でj番目の粒子についての計算を行う。
【0035】
以上の処理を繰り返し行い、i番目のステップにおけるj個の粒子それぞれについての計算を終えた後には、ステップS307に進む。ステップS307では、iの値がmの値よりも小さいか、すなわち、mステップの全ての計算を終えたかを判定する。
【0036】
iの値がmの値よりも小さく、まだmステップの計算を終えていないと判定された場合には、ステップS307に進み、iを1進める。そして、ステップS302からステップS304までの、n個の粒子のそれぞれに関する計算を再び行う。
【0037】
そして、ステップS306で、mステップの全ての計算が終了した後に、処理を終了する。このようにして、n個の粒子が、各ステップにおいて影響範囲rに含まれるnr個の粒子と互いに影響しあい、mステップの間においてどのような挙動を示すかをシミュレーションすることができる。
【0038】
なお、ここでは任意のタイムステップを設定して、上述したような計算を行えばよい。例えば、タイムステップを0.5ミリ秒として設定すれば、ステップS302からステップS307までの1ステップ分の計算によって、0.5ミリ秒の時間における粒子の状態の変化を計算し、mステップ全ての計算が終了すれば、0.5ミリ×m秒間における粒子の状態変化のシミュレーション結果を得ることができる。
【0039】
<群制御システムの構成>
本実施形態では、以上に示した流体や固体などの連続体の変形・膨張・剛体運動を粒子の運動として表現したSPH法によるシミュレーションと同様の手順により、複数の移動体を粒子と見立てて群制御を行う。
図1は、本実施形態に係る群制御システムの構成を示す図である。
【0040】
ここに示すように、本実施形態に係る群制御システムは、群制御装置1と、図中に2a〜2eとして示すような、複数の移動体2が、ネットワークNWを介して互いに通信可能に構成されている。
【0041】
なお、移動体2は、マルチコプターのような小型の飛行体や、台車のような走行体など、任意の物であってよい。なお、空中や水中のように、各移動体が3次元的な移動を行う場合においては、後述する群制御処理を3次元空間について行えばよいし、陸上や水上のように、各移動体が2次元的な移動を行う場合においては、後述する群制御処理を2次元空間について行えばよい。
【0042】
また、ネットワークNWについては、無線LAN(Local Area Network)や、Bluetooth(登録商標)のような種々の無線通信を利用すればよい。あるいは、移動体2の移動の制約が許容されるのであれば、有線によって構築してもよい。
【0043】
なお、
図1においては、群制御装置1及び各移動体2がそれぞれネットワークNWに接続するようなスター型のネットワークトポロジを例示したが、本発明はこれに限るものではない。例えば、群制御装置1の備える手段の一部又は全部をそれぞれの移動体2に搭載し、それぞれの移動体2同士がアドホック通信を行うような構成など、任意のネットワーク構成としてよい。
【0044】
図2は、群制御装置1の機能ブロック図である。ここに示すように、群制御装置1は、各移動体2の状態を取得する状態取得手段101と、各移動体2についての物理量の算出を行う物理量算出手段102と、各移動体の軌道変化を算出する軌道変化算出手段103と、各移動体に軌道の変更を指示する軌道変更指示手段104と、を備える。
【0045】
図3は、移動体2の機能ブロック図である。ここに示すように、移動体2は、自身の状態を群制御装置1へと送信する状態送信手段201と、群制御装置1より軌道変更指示を受信する軌道変更指示受信手段202と、軌道変更指示に基づいて自身の軌道の制御を行う軌道制御手段203と、を備える。
【0046】
なお、群制御装置1としては、CPUなどの演算装置、RAMなどの主記憶装置、HDDやSSD、その他の不揮発性メモリといった補助記憶装置、ネットワークNWとの通信手段を含む各種の入出力装置などを備えた、汎用的なサーバ装置を用いることができる。より詳細には、補助記憶装置へと、
図2に示した各手段を実現するための群制御プログラムを配し、それを主記憶装置上へ展開して、演算装置による処理を行うことによって、本実施形態に係る群制御を行うことができる。なお、群制御装置1は、単一のサーバ装置による構成としてもよいし、ネットワークNWや図示しないその他のネットワークなどを介して接続される複数台のサーバ装置などによって実現するような構成としてもよい。
【0047】
<群制御処理>
図4は、本実施形態に係る群制御装置による群制御の処理を示すフローチャートである。これは、n台の移動体2によって構成される群について、mステップのシミュレーションを示す。なお、これは先に
図6を用いて説明した、SPH法による粒子の移動のシミュレーション処理において、粒子を移動体2へと置き換えたものであると言える。
【0048】
まず、ステップS101で、タイムステップi=0とし、0番目のタイムステップについての計算を開始する。続く、ステップS102で、移動体j=0とし、n台の移動体2の集合の内の0番目の移動体2を計算の対象とする。
【0049】
そして、ステップS103で、i番目のタイムステップにおけるj番目の移動体2についての計算を行う。ここでの計算処理を、
図5に示す。なお、ここでは、予め移動体2同士で影響を及ぼしあう範囲として影響半径rを定めておき、j番目の移動体と、それを中心とした影響半径rの円内に含まれるnr台の移動体との間の関係から、物理量の算出を行うものである。また、影響半径は、一定値を取るだけでなく、物理場に応じて変化してもよい。
【0050】
まず、ステップS201で、i番目のタイムステップにおけるj番目の移動体から半径rの球内または円内に含まれる移動体kとその個数を特定する。ここで、移動体kには移動体jも含まれる。
【0051】
ステップS202で、i番目のタイムステップにおけるj番目の移動体2の状態を取得する。ここで、ステップS201とステップS202は同時に行っても良い。i=0である場合には、j番目の移動体の初期状態として予め指定された状態を用いてもよいし、実際に各移動体2の状態送信手段201より送信された状態についての情報を用いてもよい。i>0である場合には、i−1番目のステップにおいて算出した値を用いてもよいし、実際に各移動体2の状態送信手段201より送信された状態についての情報を用いてもよい。なお、特にi>0である場合においては、i−1番目のステップにおいて算出した値と、実際に各移動体2の状態送信手段201より送信された値との両方を加味し、後に説明するように軌道変更指示手段104によって移動体2へと送信した軌道変更指示と、軌道制御手段203によって軌道制御を行い、移動体2が実際に移動した軌道との誤差を訂正するような構成とすることが好ましい。また、例えば、移動体2aの制御を行う時、移動体2a近傍の他の移動体2から情報を取得する、あるいは、移動体2aから半径r以内にあるk番目の移動体2からk番目の移動体2の近傍の移動体2の状態を取得する、といったように、冗長性を持たせても良い。ここでの移動体2の状態としては、移動体2の位置、速度、加速度、外力、操舵力などの情報が挙げられる。
【0052】
そしてステップS203で、k=0とする。これは、上述した影響半径rの円内に含まれるnr台の移動体2の内、0台目の移動体2についての計算を行うことを示す。
【0053】
そして、ステップS204で、j番目の移動体2の物理量の時間変化を、j番目とk番目の移動体2における物理量を用い、Kernel関数を用いて近似・離散化された連続体の保存則や材料力学の構成則等に基づいて算出する。ここでの物理量の時間変化とは、例えば、密度、質量、圧力、温度、内部エネルギー、変位、歪、応力、接触圧、引力や斥力などが挙げられる。これはすなわち、先に説明したSPH法によるシミュレーションにおいて、流体や固体などの連続体を近似・離散化した粒子において計算された密度、速度、内部エネルギー、歪や応力、引力や斥力などが、各移動体2において疑似的に生じるものとして計算を行うものである。
【0054】
そして、ステップS205でkの値がnrの値よりも小さいと判定された場合には、ステップS205に進み、kを1進める。
【0055】
そしてステップS207で、次のタイムステップ(i+1番目のタイムステップ)における、j番目の移動体2の残りの物理量を算出する。ここでの物理用の算出は、先に説明したSPH法によるシミュレーションにおいて用いた、弾塑性体・粘弾性体・超弾性体などの固体、完全流体・粘性流体・圧縮性流体・非圧縮性流体などの流体、また流体や固体の挙動を示す粉粒体の現象を扱う連続体力学に基づいて、算出する。
【0056】
なお、移動体2間の距離や移動体2の密度については、当然粒子のそれとはオーダーが大きく異なることが多いため、弾性率、降伏条件、気体定数、粘性係数などの物理定数について、倍率の設定などを行い、計算を行うことが好ましい。これにより、移動体群を、例えば、金属やゴムなどの固体、水や油などの流体などの挙動に模して、制御することが可能になる。
【0057】
そして、ステップS208で、算出したi+1番目のステップにおける状態へとj番目の移動体2を移動させるための軌道変更指示を作成する。なお、ここでの軌道変更指示とはより詳細には、移動体2の進行方向や速度、移動体2が3次元的に移動する場合には、その高度を変化させる、といった内容の指示となる。
【0058】
以上のように、i番目のタイムステップにおけるj番目の移動体2と、それらの周囲の影響半径r以内の距離のnr台の移動体2との関係と、Kernel関数で離散化された各種保存則や構成則にもとづいて、i+1番目のステップにおけるj番目の移動体2の状態を算出することができる。
【0059】
続いてステップS104に進み、jの値がnの値よりも小さいと判定された場合には、ステップS105に進み、jを1進めてから、再びステップS103でj番目の移動体2についての計算を行う。
【0060】
以上の処理を繰り返し行い、i番目のステップにおけるj台の移動体2のそれぞれについての計算を終えた後には、ステップS106へと進む。ステップS106では、ステップS208で生成した各移動体2に対する軌道変更指示を、対応する移動体2へと送信する。
【0061】
続くステップS107では、iの値がmの値よりも小さいか、すなわち、mステップの全ての計算を終えたかを判定する。
【0062】
iの値がmの値よりも小さく、まだmステップの計算を終えていないと判定された場合には、ステップS107に進み、iを1進める。そして、ステップS102からステップS104までの、n台の移動体2のそれぞれに関する計算を再び行う。
【0063】
そして、ステップS106で、mステップの全ての計算が終了した後に、処理を終了する。このようにして、n台の移動体2が、各ステップにおいて影響範囲rに含まれるnr個の移動体2との影響を考え、mステップの間における群制御を行うことができる。
【0064】
なお、上述したような計算に用いるタイムステップについて、移動体2の制御に適した値は、粒子の移動のシミュレーションに適した値とはオーダーが大きく異なることが多くなる。そのため、先に説明した移動体2間の距離や移動体2の密度と同様、タイムステップについても任意の倍率設定などを行うことが好ましい。
【0065】
また、実際に移動体2の群制御を行うにあたっては、mステップ、といったようにステップによって制御の終了時点を指定するよりも、例えば全ての移動体2が停止した時点、作業を終えた時点など、実際の移動体2の動作に基づいて終了条件を指定することが好ましい。
【0066】
以上のように、移動体2を、流体や弾塑性体、粘弾性体などを構成する粒子に見立てて、SPH法をアナロジー的に用いることによって、移動体2の群制御を行うことができる。これにより、実在する物理モデルに基づいたより安定的な群制御を行うことができる。
【0067】
なお、移動体2の群れの制御を行うにあたっては、例えば、1つ又は少数の移動体2に対して軌道変更の指示を与え、群れに属するその他の移動体2を上述したような方法によって制御することによって、安定した群れを維持したまま、群れ全体の移動を操作することができる。
【0068】
なお、本実施形態においては、群制御装置1に物理量算出手段102や軌道変化算出手段103を備え、各移動体2への軌道変更指示を生成する構成を示したが、本発明はこれに限るものではない。例えば、それぞれの移動体2に物理量算出手段102や軌道変化算出手段103などを備え、各移動体2へと軌道変更の演算処理を分散させるような構成としてもよい。
【0069】
図8は、本実施形態に係る移動体2の配置を例示する図である。ここで、移動体2aに着目すれば、影響半径rによって定まる領域La内に存在する他の移動体2との関係に基づいて制御を行う。
【0070】
また、同じく
図8に示すように、群を構成する移動体2の中に、空間に固定された移動体3をガイドとして配置し、他の移動体2の移動範囲を制限するような構成としてもよい。このように、固定された移動体3を含めて群制御を行うことにより、例えばビルの外壁に固定された移動体3を配置し、それによって飛行機などの移動体2とビルとの接触を防ぐ、といった利用を行うことができる。
【0071】
なお、群れを構成する移動体2は、全て同種の移動体である必要はない。例えば、上述したように固定された移動体3を用いる場合に、それを他の移動体2とは異なる移動体としてもよいし、また、実際には存在しない移動体を、仮想的に配置するような構成としてもよい。これにより、例えば地形や障害物を数値化し固定した粒子を地表面等に仮想的に配置することで、地表や障害物との衝突を避けるように移動体2の運動を制御することができる。
【0072】
また、固定された移動体3を信号機に設置し、仮想的な壁を作ることで、移動体を静止させるなど、可動する移動体2の流れをコントロールしてもよい。
【0073】
本発明に係る移動体群の他の利用方法として、移動体2として自動運転車を用いれば、渋滞や事故を回避することのできる自動運転システムを構成することができる。この際、道路の端にあたる位置に固定された移動体3、あるいはその役割を果たす仮想的な移動体を設置することが好ましい。
【0074】
また、完全に自律的に動作する移動体のみならず、操縦者が搭乗して、あるいは遠隔で操作するような移動体を、移動体2として用いるような構成としてもよい。このような構成とすることにより、例えば先に例示したような自動車において、運転手の操作によって走行しながらも、衝突を回避する、前を走る他の自動車に追従するなど、補助的な制御を行うことができる。あるいは、一人乗りのより小型な移動体などにおいても同様に、衝突を避けて安全に走行することができる。
【0075】
あるいは、自動車などの移動体と、歩行者の保持するスマートフォン端末装置などの携帯型端末装置を、共に移動体2として利用するような構成も挙げられる。このような構成とすれば、自動車などの移動体と歩行者との接触を避けることができる。
【0076】
なお、本発明に係る群制御方法によれば、移動体2によって構成される群の分裂や合体についても、固体や流体の分裂や合体を模擬して制御することができる。例えば、金属などの固体にある一定上の力が加わった際には、降伏応力を超えると伸びて、破壊応力を超えると破壊し、複数の物体となる。これと同じように、移動体2の群に仮想的な力や強制変位を加えることで、群の変形や分裂を制御することができる。
【0077】
また、水などの流体が混ざり合うと、一体とした挙動を示すように、複数の移動体の群れの合流も制御することができる。更に、単一の群を構成する移動体2の仮想的な物性をある時点で変更すれば、水と油が分離するように、分離させることもできる。
【0078】
複数の群の制御としては、固体と固体の接触条件のように、群同士が近づく際には力が作用し、離れるときには力が作用しないようにすることで、複数の群の衝突を回避し、それぞれの群を維持するような制御を行うこともできる。
【0079】
以上のように、本実施形態に係る移動体の群制御方法によれば、複数の移動体を粒子と見立て、粒子法によるシミュレーションと同様の手順によって群制御を行うことより、実在する物理モデルを用いた安定的な計算によって、複数の移動体を群として制御することができる。
【0080】
更に、群の分裂や合体、複数の群の制御などについても同様に、安定的な計算によって行うことができる。
【0081】
なお、本実施形態においては、連続体力学に基づいた粒子法によって各移動体の物理量を算出する構成を示したが、本発明はこれに限るものではない。すなわち、各移動体を連続体力学以外の物理法則によって支配される系の構成要素に見立て、その物理法則に基づいた数値解析手法によって物理量を算出するような構成としてもよい。
【0082】
例えば、各移動体を銀河や星の生成を扱う天体物理学によって支配される系の構成要素に見立て、粒子法を用いて物理量を算出することが出来る。あるいは、流体や固体の挙動を示す粉粒体の現象を扱う粉粒体力学によって支配される系の構成要素に見立て、個別要素法(DEM:Discrete Element Method)を用いて物理量を算出することが出来る。あるいは、大変形を伴う弾塑性体やゴムなどの超弾性体の力学によって支配される系の構成要素に見立て、格子法の一種である有限要素法を用いても物理量を算出することが出来る。
【0083】
このように、移動体を任意の系の構成要素に見立て、その系における物理法則に基づいた数値解析手法を用いることで、本実施形態において示した群制御方法と同様に、複数の移動体の群制御を行うことができる。ただし、移動体同士、あるいは移動体と障害物などとの衝突を避けるためには、構成要素同士の衝突を許さないような物理法則を適用することが好ましい。また、適用する物理法則が、構成要素の集団の衝突や分離、合体などを想定したものであれば、本実施形態において示した群制御方法と同様に、複数の移動体の群についても制御を行うことができる。