(57)【要約】  本発明は、協調動作する複数のノードのそれぞれに関する情報を集中管理する必要なく、所望の全体的な価値をより高めるよう、複数のノードの動作をそれぞれ制御する技術を提供する。  状態情報取得部１１は、移動可能な複数のノード９０のうち担当ノード９０を含む少なくとも一部の各ノード９０について、そのノード９０の位置に応じた所定の価値に関わる状態を表す状態情報を取得する。また、制御情報生成部１２は、少なくとも一部の各ノード９０の状態情報に基づいて、担当ノード９０の移動を制御する制御情報を生成する。また、制御部１３は、制御情報に基づいて担当ノードの移動を制御する。状態情報取得部１１、制御情報生成部１２および制御部１３を有する制御装置１０を、複数のノード９０のそれぞれについて備える。
2016166983.tif 000002
【特許請求の範囲】
【請求項１】
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得手段と、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成手段と、
前記制御情報に基づいて前記担当ノードの移動を制御する制御手段と、
を備えた制御装置。
【請求項２】
前記状態情報取得手段は、前記複数のノードの空間的配置により実現される全体的な前記所定の価値の向上に対して前記ノードが任意の位置において寄与する度合いを評価する評価関数を用いて、前記担当ノードを含む少なくとも一部の各ノードについてその状態情報を生成することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記制御情報生成手段は、前記担当ノードについて前記評価関数を用いて得られる情報と、他の前記ノードについて前記評価関数を用いて得られる情報との比較結果に基づいて、前記制御情報を生成することを特徴とする請求項２に記載の制御装置。
【請求項４】
前記制御情報生成手段は、前記担当ノードについて前記評価関数を用いて得られる情報と、他の前記ノードについて前記評価関数を用いて得られる情報とが略同一になるよう、前記制御情報を生成することを特徴とする請求項３に記載の制御装置。
【請求項５】
前記複数のノードによる探索対象であるターゲットに関する位置情報を取得するターゲット位置取得手段をさらに有し、
前記制御情報生成手段は、前記少なくとも一部の各ノードの状態情報に加えて前記ターゲットに関する位置情報に基づいて、前記ノードに関する制御情報を生成することを特徴とする請求項１から請求項４のいずれか１項に記載の制御装置。
【請求項６】
前記状態情報取得手段は、前記評価関数として、前記ターゲットの任意の位置における存在確率を表す情報に基づく関数を用いることを特徴とする請求項５に記載の制御装置。
【請求項７】
前記状態情報取得手段は、前記評価関数として、前記ノードによる前記ターゲットに対する発見能力の高さに基づく関数を用いることを特徴とする請求項５または請求項６に記載の制御装置。
【請求項８】
前記制御情報生成手段は、前記制御情報として、前記ノードの移動方向および移動制御量を表す情報を生成することを特徴とする請求項１から請求項７のいずれか１項に記載の制御装置。
【請求項９】
前記制御情報生成手段は、前記複数のノードの移動に関する制約に基づいて、前記制御情報を生成することを特徴とする請求項１から請求項８のいずれか1項に記載の制御装置。
【請求項１０】
前記制御情報生成手段は、前記移動に関する制約として、前記複数のノードに対して合計として割り当てられた移動制御量の上限を考慮して、前記担当ノードの移動制御量を調整することを特徴とする請求項９に記載の制御装置。
【請求項１１】
前記制御情報生成手段は、前記移動に関する制約として、前記担当ノードの探索可能範囲と他の前記ノードの探索可能範囲との重複状況が満たすよう定められた所定条件を考慮して、前記担当ノードの移動方向を調整することを特徴とする請求項９または請求項１０に記載の制御装置。
【請求項１２】
自らの移動を制御する装置として、請求項１から請求項１１のいずれか１項に記載の制御装置を搭載した機器。
【請求項１３】
複数の請求項１から請求項１１のいずれか１項に記載の制御装置を備えることにより、前記複数のノードのそれぞれの前記状態の変化に応じて前記複数のノードの空間的配置を変化させる情報処理システム。
【請求項１４】
コンピュータ装置が、
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、
前記制御情報に基づいて前記担当ノードの移動を制御する制御方法。
【請求項１５】
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、前記制御情報に基づいて前記担当ノードの移動を制御することを、前記複数のノードのそれぞれを前記担当ノードとするコンピュータ装置が実行することにより、前記複数のノードのそれぞれの前記状態の変化に応じて前記複数のノードの空間的配置を変化させる制御方法。
【請求項１６】
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得ステップと、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成ステップと、
前記制御情報に基づいて前記担当ノードの移動を制御する制御ステップと、
をコンピュータ装置に実行させる制御プログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動する複数のノードの配置を制御する技術に関する。
【背景技術】
【０００２】
近年、無人機を使った応用が多く提案されている。例えば、自動的に部屋の掃除を行ってくれる円盤型ロボットや、空を飛ぶ無人機（ドローンと呼ぶ）による宅配などがある。また、原子力発電所などの危険な環境で活動するロボットなどもその一例である。これらは、通常１体の無人機を使用しているが、複数の無人機を使用した応用例も提案されている。【０００３】
例えば、特許文献１には、Ｅコマース用の工場にて、複数の荷物運び用のロボットを使用し、顧客のオーダーした商品をいち早く集める技術が記載されている。また、特許文献２には、複数の雑草群が存在する圃場において、複数の除草ロボットを使用して除草作業を行う技術が記載されている。また、特許文献３には、複数の無人機を使用して探索対象を探索する技術が記載されている。【０００４】
ここで、探索対象を複数の無人機で探索するという応用は、防衛関連技術として近年盛んに研究されている。一般的に、無人機は、その動作空間を表す語句がｘであるとすると、ＵｘＶ（Unmanned x Vehicle）と呼ばれる。例えば、無人飛行機はＵＡＶ（Unmanned Air Vehicle）、無人船はＵＳＶ（Unmanned Surface Vehicle）、無人水中船はＵＵＶ（Unmanned Undersea Vehicle）等と呼ばれている。【０００５】
上述したような無人機には、遠隔から人間が操作するものと、搭載されたプログラムにより自律的に行動するものがある。技術の方向は、できるだけ、搭載されたプログラムにより自律的に行動するものを目指している。つまり、人間不在でも、人間に変わり様々な行動や労働を肩代わりする無人機あるいは無人機群が望まれている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第４６１７２９３号
【特許文献２】特開２００９−１９９３５９号公報
【特許文献３】特許第４９２６９５８号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述のように、無人機の検討は広くおこなわれているが、複数の無人機の協調動作により、ある価値を無人機全体で最大化するのは難しい。ある価値としては、例えば、無人機全体でのバッテリーの消費効率の良さや、探索対象の探索確率の高さ等が挙げられる。これらの価値の最大化は、無人機全体の最適化問題を解くことと等価である。【０００８】
このような価値を最大化する方法の１つとして、全ての無人機からアップロードされる情報を取得し、取得した情報を用いて最適化問題を解き、その結果に基づき各無人機に指示を出す中央管理システムが考えられる。しかしながら、全ての無人機の情報を同期的に（ある時間間隔で）取得することは、困難であることが多い。例えば、無人機が中央管理システムと通信できない場合がある。また、例えば、無人機が多数ある場合は、それぞれの無人機の情報を全て取得するのには膨大な時間がかかる場合がある。【０００９】
また、上記の中央管理システムをあきらめ、個々の無人機が近隣の無人機とのみ通信し、分散的に動作するという手法も考えられる。しかしながら、分散的な動作環境で、無人機全体に関する、ある価値を最大化するのは難しく、有効な手法はまだ提案されていない。【００１０】
例えば、特許文献１に記載された関連技術は、作業者の操作コストを低減することを目的としている。しかしながら、この関連技術は、複数の荷物運びロボットによる全体的なある価値（例えば商品収集効率の高さなど）を向上させることについては考慮していない。【００１１】
また、特許文献２に記載された関連技術は、複数の除草ロボットについて、それぞれの作業効率を向上させるよう、次に除草作業を実施する雑草群を決定する。しかしながら、この関連技術は、全ての除草ロボットによる全体的な作業効率を向上させることについては考慮していない。【００１２】
また、特許文献３に記載された関連技術は、各ロボットが、同一のアルゴリズムを用いて物体の存在確率を表す動的な粒子クラスタを更新し、互いの挙動をモデル化することで、ロボット間のデータ通信を低減する。しかしながら、この関連技術は、複数のロボットによる全体的な探索確率を向上することについては、考慮が不十分である。【００１３】
このように、これらの関連技術は、複数の無人機を協調動作させているように見えるが、全体で何らかの価値を向上させることについては、充分に考慮していない。無人機の群れがある目的で動くことと、群れ全体の価値を最大化しながら動くこととの間には、大きなギャップがある。【００１４】
このような課題は、無人機の協調動作に留まらない。例えば、複数の警備員や警官で不審者を探索するなど、複数の人が１つの目的に対してそれぞれ分散的に動作する事例がある。このような事例において、全ての人の位置情報等を集中管理することなく、ある全体的な価値を高めるために誰がどのように動作すればよいかを指示する技術は、まだ提案されていない。【００１５】
以上述べた通り、これらの関連技術では、複数のノード（無人機や人等）に関する情報を集中管理することなく、複数のノードの協調動作により、ある価値をノード全体でより大きくしながらその目的を達成することは困難である。【００１６】
本発明は、上述の課題を解決するためになされたものである。すなわち、本発明は、協調動作する複数のノードのそれぞれに関する情報を集中管理する必要なく、所望の全体的な価値をより高めるよう、複数のノードの動作をそれぞれ制御する技術を提供することを目的とする。
【課題を解決するための手段】
【００１７】
上記目的を達成するために、本発明の制御装置は、移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得手段と、前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成手段と、前記制御情報に基づいて前記担当ノードの移動を制御する制御手段と、を備える。【００１８】
また、本発明の機器は、自らの移動を制御する装置として、上述の制御装置を搭載する。【００１９】
また、本発明の情報処理システムは、複数の上述の制御装置を備えることにより、前記複数のノードのそれぞれの前記状態の変化に応じて前記複数のノードの空間的配置を変化させる。【００２０】
また、本発明の制御方法は、コンピュータ装置が、移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、前記制御情報に基づいて前記担当ノードの移動を制御する。【００２１】
また、本発明の制御方法は、移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、前記制御情報に基づいて前記担当ノードの移動を制御することを、前記複数のノードのそれぞれを前記担当ノードとするコンピュータ装置が実行することにより、前記複数のノードのそれぞれの前記状態の変化に応じて前記複数のノードの空間的配置を変化させる。【００２２】
また、本発明の記憶媒体は、移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得ステップと、前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成ステップと、前記制御情報に基づいて前記担当ノードの移動を制御する制御ステップと、をコンピュータ装置に実行させる制御プログラムを記憶している。
【発明の効果】
【００２３】
本発明は、協調動作する複数のノードのそれぞれに関する情報を集中管理する必要なく、所望の全体的な価値をより高めるよう、複数のノードの動作をそれぞれ制御する技術を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の第１の実施の形態としての情報処理システムの構成を示すブロック図である。
【図２】本発明の第１の実施の形態としての制御装置の機能ブロック図である。
【図３】本発明の第１の実施の形態としての制御装置のハードウェア構成の一例を示す図である。
【図４】本発明の第１の実施の形態としての制御装置の動作を説明するフローチャートである。
【図５】本発明の第２の実施の形態としての情報処理システムの構成を示すブロック図である。
【図６】本発明の第２の実施の形態としての制御装置の機能ブロック図である。
【図７】本発明の第２の実施の形態としての制御装置の動作を説明するフローチャートである。
【図８】本発明の第２の実施の形態の具体例を模式的に説明する図である。
【図９】本発明の第２の実施の形態の具体例のシミュレーション結果を模式的に説明する図である。
【図１０】本発明の第２の実施の形態の他の具体例を模式的に説明する図である。
【図１１】本発明の第２の実施の形態のさらに他の具体例を模式的に説明する図である。
【発明を実施するための形態】
【００２５】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００２６】
（第１の実施の形態）
本発明の第１の実施の形態としての情報処理システム１の構成を図１に示す。図１において、情報処理システム１は、複数のノード９０のそれぞれを制御する複数の制御装置１０を備えている。ノード９０は、例えば、無人機であってもよいし人であってもよいが、これらに限らない。ノード９０としては、様々な移動体を適用可能である。各制御装置１０は、それぞれが担当するノード９０の移動を制御する。以降、各制御装置１０が担当するノード９０を、担当ノード９０とも記載する。
【００２７】
また、各制御装置１０は、他の制御装置１０と通信可能に接続される。ただし、各制御装置１０は、他の制御装置１０の全てと必ずしも通信可能である必要はない。また、各制御装置１０は、他の制御装置１０と、常に通信可能である必要はない。
【００２８】
情報処理システム１は、複数のノード９０を所定の目的のために協調動作させる。所定の目的の一例としては、例えば、ターゲットの探索や、好適なフォーメーションの形成等が挙げられるが、これらに限らない。また、情報処理システム１には、複数のノード９０を用いた協調動作において向上させることを目標とする全体的な所定の価値があらかじめ定められているものとする。所定の価値の一例としては、例えば、ノード９０全体でのバッテリー消費量や、全体での探索確率の高さ等が挙げられるが、これらに限らない。
【００２９】
次に、制御装置１０の機能ブロック構成を図２に示す。図２において、制御装置１０は、状態情報取得部１１と、制御情報生成部１２と、制御部１３とを備える。なお、図２において、構成要素を示す矩形間を結ぶ矢印の向きは、一例を示すものであり、構成要素間の信号の向きは、限定されない。
【００３０】
ここで、制御装置１０は、図３に示すようなハードウェア要素によって構成可能である。図３において、制御装置１０は、ＣＰＵ（Central Processing Unit）１００１、メモリ１００２、および、ネットワークインタフェース１００３を含むコンピュータ装置によって構成される。メモリ１００２は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、補助記憶装置（ハードディスク等）等によって構成される。ネットワークインタフェース１００３は、インターネット、ＬＡＮ（Local Area Network）、公衆回線網、無線通信網またはこれらの組合せ等によって構成されるネットワークに接続するインタフェースである。この場合、制御装置１０の各機能ブロックは、メモリ１００２に格納されるコンピュータ・プログラムを読み込んで実行するとともに各部を制御するＣＰＵ１００１によって構成される。
【００３１】
なお、情報処理システム１に含まれる複数の制御装置１０は、それぞれが異なるコンピュータ装置によって構成されていてもよいし、一部の複数の制御装置１０が、同一のコンピュータ装置によって構成されていてもよい。あるいは、全ての制御装置１０が、同一のコンピュータ装置によって構成されていてもよい。また、各制御装置１０は、担当ノード９０と離れた場所に実現されていてもよいし、担当ノード９０上に実現されていてもよい。なお、制御装置１０およびその各機能ブロックのハードウェア構成は、上述の構成に限定されない。
【００３２】
次に、各機能ブロックの詳細について述べる。
【００３３】
状態情報取得部１１は、複数のノード９０のうち担当ノード９０を含む少なくとも一部の各ノード９０について状態情報を取得する。ここで、状態情報は、そのノード９０の位置に応じた所定の価値に関わる状態を表す。例えば、状態情報は、そのノード９０の現在の位置そのものを表す情報を含んでいてもよい。また、状態情報は、そのノード９０が現在の位置から任意の位置に移動した場合の所定の価値に関わる情報を含んでいてもよい。また、例えば、そのノード９０が有する機能であって、所定の価値に関わる機能の能力の高さが、そのノード９０の位置に応じて変化する場合がある。そのような場合、状態情報は、そのノード９０の機能の現在の位置における能力の高さに基づく情報を含んでいてもよい。
【００３４】
さらに、例えば、状態情報取得部１１は、担当ノード９０に関する位置情報を取得し、取得した位置情報に基づいて、担当ノード９０の状態情報を求めてもよい。もし、担当ノード９０が通信可能な装置によって構成されていれば、状態情報取得部１１は、担当ノード９０と通信することによりその位置情報を取得し、状態情報を求めてもよい。また、もし、担当ノード９０が人等のように通信不可能な移動体によって構成されていれば、状態情報取得部１１は、担当ノード９０に携帯される端末や担当ノード９０を監視する装置等と通信することによりその位置情報を取得し、状態情報を求めてもよい。また、もし、制御装置９０が担当ノード９０において実現されている場合、状態情報取得部１１は、自装置の位置情報を取得し、状態情報を求めてもよい。また、状態情報取得部１１は、他のノード９０を担当する他の制御装置１０から、その担当ノード９０についての状態情報を受信してもよい。
【００３５】
ここで、複数のノード９０をそれぞれ担当する制御装置１０は、他の制御装置１０と同期して担当ノード９０の状態情報を取得する必要はない。したがって、状態情報取得部１１は、他の制御装置１０のうち、現時点を含む所定期間内に担当ノード９０の状態情報を取得できた制御装置１０から、その状態情報を取得してもよい。また、情報処理システム１が複数のコンピュータ装置によって構成されている場合、あるコンピュータ装置上の制御装置１０は、ネットワーク状況やその他の要因により、他のコンピュータ装置上の他の制御装置１０と必ずしも通信可能であるとは限らない。その場合、状態情報取得部１１は、現時点で通信可能な制御装置１０から、その担当ノード９０の状態情報を取得してもよい。このように、状態情報取得部１１は、全てのノード９０についてその状態情報を取得する必要はない。状態情報取得部１１は、担当ノード９０を含む少なくとも一部のノード９０について状態情報を取得すればよい。
【００３６】
制御情報生成部１２は、少なくとも一部の各ノード９０の状態情報に基づいて、担当ノード９０の移動を制御する制御情報を生成する。具体的には、制御情報生成部１２は、状態情報が得られている少なくとも一部のノード９０において所定の価値をより大きくする（価値をより向上する）アルゴリズムを用いて、担当ノード９０の制御情報を生成する。例えば、制御情報生成部１２は、制御情報として、移動方向および移動制御量を表す情報を生成してもよい。移動制御量とは、例えば、移動距離であってもよい。あるいは、移動制御量とは、その担当ノード９０を移動させるために用いるエネルギー量であってもよい。また、制御情報生成部１２は、各ノード９０の移動に関する制約があれば、さらにその制約を考慮して、制御情報を生成してもよい。
【００３７】
制御部１３は、制御情報に基づいて担当ノード９０の移動を制御する。例えば、制御情報が移動方向および移動制御量を表すとする。この場合、制御部１３は、担当ノード９０に対して移動方向および移動制御量を指示する情報（指示情報）を出力することにより、担当ノード９０を該当する移動方向に該当する移動制御量の分だけ移動させる。例えば、担当ノード９０が無人機である場合、制御部１３は、無人機に搭載された移動機構に対して、制御情報に基づく指示情報を送信してもよい。また、担当ノード９０が人である場合、制御部１３は、その人に所持される携帯情報端末の表示装置に、制御情報に基づく指示情報を表示してもよい。
【００３８】
以上のように構成された情報処理システム１における制御装置１０の動作について、図４を参照して説明する。
【００３９】
まず、状態情報取得部１１は、担当ノード９０を含む少なくとも一部の各ノード９０について、そのノード９０の位置に応じた所定の価値に関わる状態情報を取得する（ステップＳ１）。
【００４０】
前述のように、状態情報取得部１１は、担当ノード９０について得られる位置情報に基づいて、その状態情報を求めてもよい。また、状態情報取得部１１は、通信可能な他の制御装置１０からその担当ノード９０の状態情報を取得してもよい。
【００４１】
次に、制御情報生成部１２は、ステップＳ１で取得された状態情報に基づいて、担当ノード９０の移動を制御する制御情報を生成する（ステップＳ２）。
【００４２】
前述のように、制御情報生成部１２は、状態情報が得られている少なくとも一部のノード９０の範囲内で、所定の価値をより大きくするアルゴリズムを用いて担当ノード９０の制御情報を生成してもよい。また、制御情報生成部１２は、移動方向および移動制御量を表す情報を生成してもよい。
【００４３】
次に、制御部１３は、ステップＳ２で決定された制御情報に基づいて、担当ノード９０の移動を制御する（ステップＳ３）。
【００４４】
前述のように、制御部１３は、担当ノード９０が無人機である場合、無人機に搭載された移動機構に対して、制御情報に基づく指示情報を送信してもよい。また、担当ノード９０が人である場合、制御部１３は、その人に所持される携帯情報端末の表示装置に、制御情報に基づく指示情報を表示してもよい。
【００４５】
以上の動作を、制御装置１０は繰り返す。なお、制御装置１０は、ステップＳ１〜Ｓ３の動作を、必ずしもこの順で行わなくてもよい。例えば、状態情報取得部１１、制御情報生成部１２、および、制御部１３は、それぞれ非同期に、所定のタイミング毎に動作してもよい。そして、この場合、制御情報生成部１２は、状態情報取得部１１によって直近に取得された状態情報を用いて動作すればよい。また、制御部１３は、制御情報生成部１２によって直近に生成された制御情報を用いて動作すればよい。
【００４６】
このように各制御装置１０が動作することにより、情報処理システム１は、複数のノード９０のそれぞれの位置に応じた所定の価値に関わる状態の変化に応じて、複数のノード９０の空間的配置を調整する。
【００４７】
次に、本発明の第１の実施の形態の効果について述べる。
【００４８】
本発明の第１の実施の形態としての情報処理システムは、協調動作する複数のノードのそれぞれに関する情報を集中管理する必要なく、所望の全体的な価値をより高めるよう、複数のノードの動作をそれぞれ制御することができる。
【００４９】
その理由について述べる。本実施の形態では、複数のノードのそれぞれを担当する制御装置において、状態情報取得部が、移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する。そして、制御情報生成部が、これらの少なくとも一部のノードの状態情報に基づいて、担当ノードの移動を制御する制御情報を生成する。そして、制御部が、制御情報に基づいて、担当ノードの移動を制御するからである。
【００５０】
これにより、本実施の形態では、各制御装置が、担当ノードを含む少なくとも一部のノードの状態情報を用いて担当ノードの移動を制御するので、全てのノードの状態を集中管理する必要がない。また、各制御装置が、担当ノードの移動を、一部のノードの状態情報に基づいてそれらのノードにおける所定の価値を向上させるよう制御するので、複数のノードの空間的配置に基づいて実現される全体的な所定の価値を、より高めることができる。
【００５１】
（第２の実施の形態）
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。なお、本実施の形態の説明において参照する各図面において、本発明の第１の実施の形態と同一の構成および同様に動作するステップには同一の符号を付して本実施の形態における詳細な説明を省略する。
【００５２】
本実施の形態では、本発明の情報処理システムを、複数のノードの協調動作により、探索対象であるターゲットを探索する用途に適用する例について説明する。ターゲットは移動するものとする。また、本実施の形態では、複数のノードによるターゲットの探索において向上させることを目標とする全体的な所定の価値として、ターゲットの探索確率の高さを適用する。
【００５３】
ここで、ターゲットの存在確率密度は、次式（１）で表される。
2016166983.tif 000003
【００５４】
ここで、ｘ、ｙ、ｚは、座標（位置）を表す。また、ｘｔ、ｙｔ、ｚｔは、ターゲットのｘ座標、ｙ座標、ｚ座標（位置）を表す。
【００５５】
例えば、式（１）は、ターゲットの位置（ｘｔ、ｙｔ、ｚｔ）をピークにしてその位置から離れるほど存在確率密度が減っていく山型の形状を示すよう定義されていてもよい。また、式（１）におけるターゲットの位置（ｘｔ、ｙｔ、ｚｔ）には、ターゲットが直近に発見された位置が適用されてもよい。あるいは、ターゲットの位置（ｘｔ、ｙｔ、ｚｔ）には、ターゲットが直近に発見された位置に基づき算出される現時点でのターゲットの予測位置が適用されてもよい。
【００５６】
また、各ノードが探索対象を発見する発見確率は、次式（２）で表される。
2016166983.tif 000004
【００５７】
ここで、ψｉは、複数のノードのうちｉ番目のノードｉに与えられた探索努力である（ｉは正の整数）。探索努力とは、移動制御量と考えても良い。また、発見とは、ノードが有する認識機能（例えば、目やソナー等）により、ターゲットを認識することをいう。また、発見確率とは、自ノードを中心とした周辺領域におけるターゲットを認識できる確率（能力の高さ）をいう。発見確率は、各ノードが存在する環境によって変わってくることが多い。
【００５８】
例えば、ノードが海中でソナーにより探索物を発見する無人機であるような場合、発見確率は、次式（３）で表されることが知られている。
2016166983.tif 000005
【００５９】
ここで、γｉは、電波伝搬に依存する量である。例えば、ノードが前述の海中で動作する無人機の場合、γｉは、ノードが存在する海域によって変わる量であり、その環境に適した係数が定められる。このように、ノードが海域でターゲットを探索する場合に限らず、ノードによるターゲットの発見確率は、ノードの存在する環境に応じて変化する。
【００６０】
また、各ノードにおけるターゲットの探索確率は、次式（４）のように、探索対象の存在確率密度とノードの発見確率との積で表すことができる。
2016166983.tif 000006
【００６１】
ここで、ｘｉ、ｙｉ、ｚｉは、ノードｉのｘ座標、ｙ座標、ｚ座標（位置）を表す。
【００６２】
従って、複数のノード全体での探索確率は、次式（５）で表される。
2016166983.tif 000007
【００６３】
ノードのエネルギーを考えれば、探索努力は有限と考えるべきである。従って、全体の探索確率は、全体に投入される、ある既定の探索努力に対して最大化することになる。つまり、有限の探索努力に対して、できるだけ探索確率を上げなくてはならない。本実施の形態は、ある単位時間当たりに全体に投入される探索努力の上限Ψを制約として設定し、その上で探索確率を最大化する。
【００６４】
数学的に言えば、式（５）を以下の探索努力に対する制約条件のもと最大化する最適化問題を解かなければならない。
2016166983.tif 000008
【００６５】
上述の最適化問題は、全てのノードの状態情報を同期的に取得することができれば、容易に解くことが可能である。しかしながら、実際の環境では、各ノードの状態情報を同期的に収集することは難しいケースが多い。また、実際の環境では、複数のノードを集中管理するシステムを設けることは難しいケースが多い。
【００６６】
本実施の形態の情報処理システムは、このような各ノードの状態情報を同期的に収集できないケースや、複数のノードを集中管理するシステムを設けることができないケースにおいて、複数のノードにより、ターゲットを探索しながら探索確率をより向上させる。以下、本実施の形態の情報処理システムの詳細について説明する。
【００６７】
まず、本発明の第２の実施の形態としての情報処理システム２の構成を図５に示す。図５において、情報処理システム２は、複数のノード９０のそれぞれを制御する複数の制御装置２０を備えている。
【００６８】
次に、制御装置２０の機能ブロック構成を図６に示す。図６において、制御装置２０は、状態情報取得部２１と、制御情報生成部２２と、制御部２３と、ターゲット位置取得部２４とを備える。また、状態情報取得部２１は、評価関数設定部２１１を含む。また、制御情報生成部２２は、制約取得部２２１と、移動方向決定部２２２と、移動制御量決定部２２３とを含む。
【００６９】
なお、図６において、構成要素を示す矩形間を結ぶ矢印の向きは、一例を示すものであり、構成要素間の信号の向きは、限定されない。
【００７０】
また、制御装置２０およびその各機能ブロックは、図３を参照して説明した本発明の第１の実施の形態と同一のハードウェア要素によって構成可能である。ただし、制御装置２０およびその各機能ブロックのハードウェア構成は、上述の構成に限定されない。
【００７１】
ターゲット位置取得部２４は、ターゲットに関する位置情報を取得する。ターゲットは、前述したように、複数のノード９０により探索する対象である。ターゲット位置取得部２４は、自装置の担当ノード９０によってターゲットが発見された場合には、自装置の担当ノード９０からその位置情報を取得する。もし、ノード９０が通信可能な装置であれば、ターゲット位置取得部２４は、ノード９０によって送信されるターゲットの位置情報を受信すればよい。また、もし、ノード９０が通信不可能な人等の移動体であれば、ターゲット位置取得部２４は、ノード９０に所持される携帯情報端末等によって送信されるターゲットの位置情報を受信すればよい。また、もし、自装置が担当ノード９０上に実現されている場合、ターゲット位置取得部２４は、担当ノード９０に備えられたターゲット位置特定機能または入力等により、ターゲットの位置情報を取得すればよい。
【００７２】
このように、担当ノード９０からその位置情報を取得した場合、ターゲット位置取得部２４は、他の制御装置２０に対して、ターゲットの位置情報を送信する。また、担当ノード９０からその位置情報が取得されない場合には、ターゲット位置取得部２４は、他の制御装置２０からターゲットの位置情報を受信することにより取得してもよい。また、ターゲット位置取得部２４は、担当ノード９０または他の制御装置２０から直近に受信したターゲットの位置情報を用いて、現時点でのターゲットの位置を予測することによりその位置情報を取得してもよい。なお、ターゲットの位置の予測処理には、ターゲットの特性や環境等を考慮した公知の技術を採用可能である。
【００７３】
状態情報取得部２１は、担当ノード９０を含む少なくとも一部のノード９０について、評価関数設定部２１１により設定される評価関数を用いて、その状態情報を取得する。
【００７４】
評価関数設定部２１１は、担当ノード９０に関する評価関数を設定する。評価関数とは、複数のノード９０の空間的配置により実現される全体的な所定の価値の向上に対して、あるノード９０が任意の位置において寄与する度合いを評価する関数である。具体的には、評価関数としては、該当するノード９０の位置での環境に応じた発見能力の高さ（発見確率）と、ターゲットの存在確率密度とに基づき、ノード９０の任意の位置における探索確率を表す関数が適用可能である。ノード９０の位置での環境に応じた発見確率は、あらかじめ定められているものとする。例えば、評価関数設定部２１１は、式（４）で表される探索確率を、評価関数として用いてもよい。このような評価関数は、該当するノード９０の位置またはターゲットの位置の更新に応じて定まる。したがって、評価関数設定部２１１は、担当ノード９０の状態情報の取得またはターゲットの位置情報の取得に応じて、評価関数を更新する。
【００７５】
このようにして、状態情報取得部２１は、担当ノード９０については、評価関数設定部２１１によって設定された評価関数に基づく情報を、状態情報として取得する。また、状態情報取得部２１は、さらに、他のノード９０については、他のノード９０を担当する制御装置２０の状態情報取得部２１によってそのノード９０について設定された評価関数に基づく情報を、その状態情報として取得する。つまり、状態情報取得部２１は、通信可能な他の制御装置２０の状態情報取得部２１との間で、互いの評価関数設定部２１１によって設定された評価関数に基づく情報を送受信すればよい。
【００７６】
なお、状態情報取得部２１は、本発明の第１の実施の形態における状態情報取得部１１と同様に、全てのノード９０についてその状態情報を取得する必要はない。状態情報取得部２１は、担当ノード９０を含む少なくとも一部のノード９０について状態情報を取得すればよい。
【００７７】
制御情報生成部２２は、少なくとも一部の各ノード９０の状態情報およびターゲットの位置情報に基づいて、担当ノード９０に関する制御情報（移動方向および移動制御量）を生成する。詳細には、制御情報生成部２２は、制約取得部２２１と、移動方向決定部２２２と、移動制御量決定部２２３とを用いて、担当ノード９０に関する制御情報を生成する。
【００７８】
制約取得部２２１は、複数のノード９０の移動に関する制約を表す情報を取得する。移動に関する制約としては、例えば、複数のノード９０の配置に関する制約や、移動制御量に関する制約がある。
【００７９】
配置に関する制約として、例えば、制約取得部２２１は、各ノード９０間の距離が閾値以上であるという制約を表す情報を取得してもよい。また、制約取得部２２１は、各ノード９０の探索可能範囲の重複状況が所定条件を満たすという制約を表す情報を取得してもよい。探索可能範囲とは、ノード９０の位置を中心とした所定の周辺領域である。また、所定条件とは、あるノード９０の探索可能範囲が、他のノード９０の探索可能範囲と重複しないことであってもよい。また、所定条件とは、あるノード９０の索可能範囲のうち、他のノード９０の探索可能範囲と重複する領域の大きさが閾値以下であることであってもよい。このような配置に関する制約は、複数のノード９０が密集してしまうと、全体として探索できる範囲が狭くなることを防止するために設けられる。
【００８０】
また、移動制御量に関する制約として、例えば、制約取得部２２１は、全てのノード９０に単位時間あたりに投入可能な合計の移動制御量の上限を定めた制約を表す情報を取得してもよい。
【００８１】
移動方向決定部２２２は、担当ノード９０の位置情報と、ターゲットの位置情報と、配置に関する制約があればその制約とを考慮しながら、担当ノード９０の移動方向を決定する。
【００８２】
例えば、移動方向決定部２２２は、担当ノード９０の位置を始点としてターゲットの位置に伸びるベクトルを、移動方向を示すものとして作成する。また、移動方向決定部２２２は、配置に関する制約が取得されている場合は、その制約を考慮して、このベクトルの方向を調整する。以降、移動方向を示すベクトルを、移動ベクトルとも記載する。
【００８３】
移動制御量決定部２２３は、担当ノード９０を含む少なくとも一部の各ノード９０の状態情報と、ターゲットの位置情報と、移動制御量に関する制約があればその制約とを考慮しながら、担当ノード９０の移動制御量を決定する。なお、移動制御量の一例としては、移動距離や、ノード９０を移動させるために投入するエネルギー量（例えば、モータのトルク量等）が挙げられるが、これらに限らない。
【００８４】
例えば、移動制御量決定部２２３は、担当ノード９０を含む少なくとも一部のノード９０全体に対して単位探索努力を投入した場合に、それらのノード９０全体の探索確率をより大きくするアルゴリズムを用いて、担当ノード９０の移動制御量を決定してもよい。少なくとも一部のノード９０とは、状態情報が得られた全てのノード９０であってもよいし、そのうち所定条件を満たすノード９０であってもよい。所定条件とは、例えば、担当ノード９０からの距離が閾値以内である（近隣である）という条件であってもよい。
【００８５】
例えば、移動制御量決定部２２３は、担当ノード９０について評価関数を用いて得られる情報と、他のノード９０について評価関数を用いて得られる情報とを比較する。そして、移動制御量決定部２２３は、その比較結果に基づくことにより、担当ノード９０を含む少なくとも一部のノード９０に対して単位探索努力を投入した場合の探索確率の合計をより大きくするよう移動制御量を決定することができる。
【００８６】
具体的には、移動制御量決定部２２３は、担当ノード９０について、移動方向決定部２２２によって決定された方向に単位探索努力を投入した場合の探索確率の現時点からの増分を、現在設定されている評価関数を用いて求める。また、移動制御量決定部２２３は、状態情報が得られている他のノード９０について、そのノード９０について決定された方向に単位探索努力を投入した場合の探索確率の現時点からの増分を取得する。この場合、他のノード９０についての探索確率の増分としては、他のノード９０を担当する制御装置２０の移動制御量決定部２２３によって算出された単位探索努力あたりの探索確率の増分が、状態情報として状態情報取得部２１によって取得されているものとする。そして、移動制御量決定部２２３は、他のノード９０の探索確率の増分よりも担当ノード９０の探索確率の増分が大きいならば、次の制御ステップでの担当ノード９０の移動制御量として、単位探索努力を決定してもよい。また、移動制御量決定部２２３は、他のノード９０の探索確率の増分よりも担当ノード９０の探索確率の増分が小さいならば、次の制御ステップでの担当ノード９０の移動制御量として、ゼロを決定してもよい。すなわち、この場合、移動制御量決定部２２３は、次の制御ステップでは担当ノード９０に探索努力を投入せず、動作しないことを決定してもよい。なお、担当ノード９０を含む少なくとも一部のノード９０のうち担当ノード９０以外の他のノード９０が複数ある場合について説明する。この場合、移動制御量決定部２２３は、担当ノード９０および他のノード９０のそれぞれとの間で前述のように増分を比較し、その比較結果を統合することにより、担当ノード９０の移動制御量を決定すればよい。
【００８７】
ここで、単位探索努力あたりの探索確率とは、評価関数の微分と等価である。したがって、上述のように、担当ノード９０を含む少なくとも一部のノード９０における単位探索努力あたりの探索確率をより大きくするように移動制御量を決める操作が繰り返されると、評価関数の微分が、それらの各ノード９０で等しくなってくる。そこで、移動制御量決定部２２３は、担当ノード９０を含む少なくとも一部の各ノード９０に設定される評価関数の微分を等しくするように、移動制御量を決定してもよい。
【００８８】
このように、移動制御量決定部２２３は、担当ノード９０について設定された評価関数から得られる情報（微分）と、他のノード９０について設定された評価関数から得られる情報（微分）とが略同一になるよう、担当ノード９０の移動制御量を決定してもよい。
【００８９】
また、移動制御量決定部２２３は、移動制御量を決定する際に、さらに、移動制御量に関する制約があればその制約を考慮する。例えば、移動制御量の合計の上限が定められていることを想定する。この場合、移動制御量決定部２２３は、複数のノード９０のそれぞれを担当する制御装置２０の全てから、決定された移動制御量を取得できれば、その合計が上限を超えないよう、移動制御量を調整する。また、移動制御量決定部２２３は、移動制御量を取得できない制御装置２０がある場合は、その制御装置２０が担当するノード９０について決定される移動制御量の推定値を求める。推定の手法には、あらかじめ定められた想定値を用いてもよいし、その他公知の推定技術を用いてもよい。
【００９０】
また、制御情報生成部２２は、移動方向決定部２２２によって決定された移動方向に、移動制御量決定部２２３によって決定された移動制御量の分だけ、担当ノード９０を移動させるための制御情報を生成する。
【００９１】
制御部２３は、制御情報生成部２２によって生成された制御情報にしたがって、担当ノード９０の移動を制御する。具体的には、制御部２３は、移動制御量決定部２２３によって生成された制御情報に基づく指示情報を、担当ノード９０に対して出力することにより、担当ノード９０を、移動方向に移動制御量の分だけ移動させる。
【００９２】
以上のように構成された情報処理システム２における各制御装置２０の動作について、図７を参照して説明する。なお、以下では、既に制約取得部２２１により、配置に関する制約と、移動制御量に関する制約とが取得されているものとする。
【００９３】
図７において、まず、ターゲット位置取得部２４は、ターゲットの位置情報を取得する（ステップＳ１１）。
【００９４】
前述したように、ターゲット位置取得部２４は、担当ノード９０によって発見されたターゲットの位置情報を取得するか、他のノード９０によって発見されたターゲットの位置情報をそのノード９０を担当する他の制御装置２０から取得してもよい。また、前述したように、ターゲット位置取得部２４は、過去に取得されたターゲットの位置情報に基づいて、現在のターゲットの位置を予測することにより取得してもよい。
【００９５】
次に、状態情報取得部２１は、担当ノード９０の位置情報を取得する（ステップＳ１２）。
【００９６】
次に、状態情報取得部２１は、評価関数設定部２１１を用いて、ターゲットの位置と担当ノード９０の位置とを反映させた評価関数を設定する。そして、状態情報取得部２１は、担当ノード９０の状態情報として、設定した評価関数に基づく情報を求める（ステップＳ１３）。
【００９７】
次に、状態情報取得部２１は、少なくとも一部の他の各ノード９０の状態情報として、そのノード９０を制御する制御装置２０から、そのノード９０について設定された評価関数に基づく情報を取得する（ステップＳ１４）。
【００９８】
次に、制御情報生成部２２は、移動方向決定部２２２を用いて、配置に関する制約を考慮しながら、担当ノード９０の移動方向を決定する（ステップＳ１５）。
【００９９】
具体的には、前述のように、移動方向決定部２２２は、担当ノード９０の位置を始点としてターゲットの位置の方向に伸びる移動ベクトルを生成した上で、配置に関する制約を考慮してその方向を調整してもよい。
【０１００】
次に、制御情報生成部２２は、移動制御量決定部２２３を用いて、担当ノード９０に投入する移動制御量を決定する（ステップＳ１６）。
【０１０１】
具体的には、前述のように、移動制御量決定部２２３は、担当ノード９０の状態情報が表す評価関数から得られる情報と、他のノード９０の状態情報が表す評価関数から得られる情報との比較結果に基づいて、担当ノード９０の移動制御量を決定してもよい。
【０１０２】
次に、制御情報生成部２２は、ステップＳ１４で決定された方向に、ステップＳ１５で決定された移動制御量の分だけ、担当ノード９０を移動させるよう制御する制御情報を生成する（ステップＳ１７）。
【０１０３】
次に、制御部２３は、ステップＳ１７で生成された制御情報に基づく指示情報を、担当ノード９０に対して出力することにより、その移動を制御する（ステップＳ１８）。
【０１０４】
例えば、制御部２３は、担当ノード９０としての無人機に搭載された移動機構に対して、制御情報に基づく指示情報を送信してもよい。また、例えば、制御部２３は、担当ノード９０としての人に所持される携帯情報端末の表示装置に、制御情報に基づく指示情報を表示させてもよい。
【０１０５】
以上の動作を、制御装置２０は繰り返す。なお、制御装置２０は、ステップＳ１１〜Ｓ１８の動作を、必ずしもこの順で行わなくてもよい。例えば、状態情報取得部２１、制御情報生成部２２、制御部２３、および、ターゲット位置取得部２４は、それぞれ非同期に、所定のタイミング毎に動作してもよい。そして、この場合、制御情報生成部２２は、状態情報取得部２１（評価関数設定部２１１）によって直近に設定された評価関数に基づく状態情報と、ターゲット位置取得部２４によって直近に取得されたターゲットの位置情報とを用いて動作すればよい。また、制御部２３は、制御情報生成部２２によって直近に生成された制御情報を用いて動作すればよい。
【０１０６】
このように各制御装置２０が動作することにより、情報処理システム２は、複数のノード９０のそれぞれの位置に応じた探索確率に関わる状態の変化に応じて、複数のノード９０の空間的配置を調整する。
【０１０７】
次に、情報処理システム２の具体例について説明する。
【０１０８】
＜具体例１＞
具体例１では、ノード９０として、ＵＵＶ（Unmanned Undersea Vehicle）と呼ばれる無人機を想定する。ＵＵＶは、水中を自律動作し、ソナーでターゲットを探索する無人機である。ＵＵＶは、外部から受信する制御情報に応じて移動可能である。以降、ノード９０としてのＵＵＶを、ＵＵＶ９０とも記載する。また、この具体例１では、情報処理システム２を、図８に示すように、クラウドコンピューティングにおけるクラウド上に実現したことを想定する。つまり、各制御装置２０は、担当するＵＵＶ９０を、クラウド上から遠隔制御する。これにより、情報処理システム２は、複数のＵＵＶ９０を用いてターゲットを探索する。
【０１０９】
この場合、各制御装置２０は、あたかもＵＵＶ９０が近隣のＵＵＶ９０と情報交換するように、近隣のＵＵＶ９０を担当する制御装置２０と状態情報等を送受信しながら、自らが担当するＵＵＶ９０に対してその移動を制御することになる。
【０１１０】
また、評価関数設定部２１１は、評価関数として、上述の式（４）を適用する。式（４）におけるターゲットの存在確率密度ｇとしては、ターゲットが直近に発見された位置（ｘｔ、ｙｔ、ｚｔ）をピークにし、その位置から離れるほど存在確率密度が減っていくガウシアン型の関数を用いる。また、式（４）における各ＵＵＶ９０の発見確率ｐｉとしては、式（３）を適用する。ＵＵＶ９０が存在する海域によって、式（３）におけるγｉは異なる。従って、この具体例１では、海域ごとのγｉを予めデータベース化しておく。状態情報取得部２１は、ＵＵＶ９０の位置情報に基づきγｉを変更する。
【０１１１】
また、この具体例１では、各ＵＵＶ９０は、各種情報を制御装置２０等に送信するアップロード機能を有する。ＵＵＶ９０は、自機でターゲットを発見した場合、その位置情報を取得する。そして、ＵＵＶ９０は、自機で発見したターゲットの位置情報を、他のＵＵＶ９０および自機を担当するクラウド上の制御装置２０に対して送信する。また、ＵＵＶ９０は、他のＵＵＶ９０からターゲットの位置情報を受信した場合も、その位置情報を、自機を担当するクラウド上の制御装置２０に対して送信する。これにより、各制御装置２０のターゲット位置取得部２４は、ターゲットの位置情報を取得する。
【０１１２】
また、ＵＵＶ９０は、自機の位置情報を、自機を担当するクラウド上の制御装置２０に対して送信する。これにより、各制御装置２０の状態情報取得部２１は、自装置が担当するＵＵＶ９０の位置情報を取得し、担当するＵＵＶ９０の位置情報およびターゲット位置情報に基づいて、評価関数を設定することになる。
【０１１３】
なお、各ＵＵＶ９０は、このような情報の送信動作を非同期に実行している。つまり、制御装置２０に対する各種位置情報のアップロードは、非同期に実行される。そのため、クラウド上に実現された情報処理システム２において、各制御装置２０が互いに通信可能であったとしても、全てのＵＵＶ９０に関する情報は、同期的に集まらない。したがって、ＵＵＶ９０全体での探索確率を向上させるために一般的な最適化技術を適用することができない。もっとも、一般的な最適化技術を用いて、各ＵＵＶ９０に関する情報が非同期にしか集まらない環境であっても、強引に古い情報を織り交ぜて最適化計算をすることは可能である。しかしながら、古い情報が全体に悪影響を与えるため、実際には好適な最適化が行われない。このように、制御装置２０に対する各種位置情報のアップロードが非同期に実行される環境を想定する。
【０１１４】
以上説明した具体例１の想定に基づいて、情報処理システム２における各制御装置２０の動作を計算機シミュレーションした結果を、図面を参照して説明する。図９は、情報処理システム２の動作により移動制御されるＵＵＶ９０群の空間的配置が、時間の経過にしたがって変化する様子を示している。
【０１１５】
まず、ＵＵＶ９０群のフォーメーションは、図９の「初期状態」に示すように形成されているものとした。このようなＵＵＶ９０群が存在する空間内において、ターゲットが移動する。図９において、三角形は、ターゲットを示す。また、丸は、ＵＵＶ９０を示す。図９は、上段から下段に行くにつれ、時間が経過していることを表している。図９からは、ターゲットの移動に合わせて、ターゲットを包み込むようにＵＵＶ９０群が接近し、ターゲットを追跡できていることがわかる。また、図９からは、ターゲットから遠方に位置するＵＵＶ９０（例えば、点線の丸で囲んだ右端の２つのＵＵＶ９０）は移動しておらず、無駄な移動が行われていないことがわかる。
【０１１６】
上述のシミュレーション中に、全体の探索確率がどの程度高いかを評価した。ここで、探索確率を上昇させる役割は、主に、評価関数設定部２１１および移動制御量決定部２２３が担っている。そこで、図９に示した具体例１のシミュレーションに対する比較対象として、その２つの機能ブロック要素を動作させないシミュレーションを行い、単位探索努力あたりの全体の探索確率を比較した。比較対象のシミュレーションでは、移動制御量として固定の値を用いた。なお、固定の移動制御量としては、できるだけ良い全探索確率を出すようチューニングした値を用いた。その結果、比較対象のシミュレーションでは、全てのＵＵＶ９０は、ターゲットに対して徐々に近づいていくよう制御される。
【０１１７】
なお、探索確率は、原理上、探索努力を投入すればするほど上がっていく特性を持っているので、投入した探索努力あたり（単位探索努力あたり）の値で比較を行った。比較の結果、情報処理システム２の具体例１のシミュレーションは、比較対象のシミュレーションに対して、平均３０％程度高い全体探索確率（単位探索努力あたり）が得られた。
【０１１８】
このように、情報処理システム２の具体例１では、各ＵＵＶ９０の情報が同期的に得られない環境においても、複数のＵＵＶ９０群によりターゲットを追跡しながら、全体での探索確率をより大きくする制御が可能であることがわかった。
【０１１９】
＜具体例２＞
具体例２では、具体例１と同様に、ノード９０として、ＵＵＶ９０を適用する。ただし、この具体例２では、図１０に示すように、複数のＵＵＶ９０のそれぞれに、本実施の形態における制御装置２０を搭載した例について説明する。つまり、この具体例２では、各ＵＵＶ９０は、自機に搭載された制御装置２０を用いて、近隣の通信可能な他のＵＵＶ９０に搭載された制御装置２０と情報を送受信し、制御装置２０の制御の元に自律分散的に移動することになる。このようなＵＵＶ９０は、本発明の機器の一実施形態を構成する。
【０１２０】
このような具体例２は、ＵＵＶ９０群が移動するフィールドから遠隔地に対する情報送信が難しく、各ＵＵＶ９０に自律分散的な移動を期待しなくてはならないケースを想定している。このようなケースは、実際の応用局面では非常に多い。このように、具体例２は、具体例１のように遠隔地に情報処理システム２を設置するのが難しいケースに有効である。あるいは、具体例２は、具体例１のような遠隔地の情報処理システム２が機能しなくなってしまったケース等にも有効である。
【０１２１】
具体例２は、具体例１に対して、ＵＵＶ９０がアップロード機能を備える必要がない点が相違する。この具体例２では、ＵＵＶ９０に搭載された制御装置２０のターゲット位置取得部２４が、自機でターゲットを発見した場合、その位置情報を取得し、他のＵＵＶ９０に対して送信する。また、ターゲット位置取得部２４は、自機でターゲットを発見しない場合、他のＵＵＶ９０からターゲットの位置情報を受信することにより取得する。また、ターゲット位置取得部２４は、自機でターゲットを発見できず、他のＵＵＶ９０からも新たなターゲットの位置情報を取得できない状態が所定期間続いた場合には、過去の位置情報に基づく現在地の予測によりターゲットの位置情報を取得してもよい。また、状態情報取得部２１および制御情報生成部２２は、必要に応じて、自機の位置情報を取得する。その他、評価関数、ターゲットの存在確率密度ｇ、発見確率ｐｉ、海域ごとのγｉ等についての想定については、具体例１と同様である。
【０１２２】
このような具体例２の想定に基づいて、情報処理システム２における各制御装置２０の動作の計算機シミュレーションを行った。その結果、情報処理システム２の具体例２のシミュレーションは、具体例１と同様に、ターゲットを良好に追跡できた。また、具体例２のシミュレーションと、具体例１で説明した比較対象のシミュレーションとで、単位探索努力あたりの全体の探索確率を比較した。その結果、情報処理システム２の具体例２のシミュレーションは、具体例１と同様に、比較対象のシミュレーションに対して、平均３０％程度高い全体探索確率（単位探索努力あたり）が得られた。
【０１２３】
このように、情報処理システム２の具体例２では、複数のＵＵＶ９０のそれぞれに制御装置２０を搭載した場合も、複数のＵＵＶ９０群によりターゲットを追跡しながらその全体での探索確率をより大きくする制御が可能であることがわかった。
【０１２４】
＜具体例３＞
具体例３では、ノード９０として、人（警備員）を想定する。これは、例えば、複数の警備員で対象地域を警備し、不審者を発見したら、しかるべき人数で不審者を追跡・捕獲するというような応用例を想定している。以降、ノード９０としての警備員を、警備員９０とも記載する。また、具体例３では、図１１に示すように、警備員９０に携帯されるタブレット端末上に、制御装置２０を実現したことを想定する。
【０１２５】
各制御装置２０の制御部２３は、タブレット端末の表示装置に、制御情報に基づく指示情報を表示する。例えば、制御部２３は、移動方向決定部２２２によって決定された移動方向および移動制御量決定部２２３によって決定された移動制御量の分だけ移動した移動先の地点を表す情報を、表示装置に表示してもよい。その結果、警備員９０は、表示装置に表示された移動先の地点に向かって移動することになる。これにより、制御装置２０は、警備員９０の移動を制御する。
【０１２６】
また、制御装置２０は、ターゲット位置取得部２４の一部の一実施例として、表示装置に、不審者発見を通知するユーザインタフェース（例えば、押下操作可能なボタン型の図形等）を表示してもよい。これにより、不審者を見つけた警備員９０は、そのユーザインタフェースを操作する。操作を受けたターゲット位置取得部２４は、その時点での自装置の位置情報を、不審者の位置情報として、他の警備員９０に携帯されるタブレット端末上の制御装置２０に送信すればよい。
【０１２７】
具体例３は、具体例２の説明において、ターゲットを不審者と読み替え、ＵＵＶを警備員と読み替えることにより、同様に説明される。評価関数およびターゲットの存在確率密度ｇについては、具体例１および２と同様の想定が可能である。また、発見確率ｐｉについては、各警備員９０の視界に関連した関数を設定すればよい。つまり、環境に応じたγｉとして、視界に比例した量に設定した関数を適用すればよい。
【０１２８】
これにより、情報処理システム２の具体例３は、複数の警備員９０のそれぞれに携帯されるタブレット端末上の制御装置２０を用いて、不審者を追跡しながらその全体での探索確率をより大きくすることができる。その結果、情報処理システム２の具体例３は、効率的な警備および不審者の追尾、捕獲を可能とする。
【０１２９】
なお、具体例３において、ノード９０として、警備員に限らず、警察官、ランニングポリスなど、他の人に適用することが可能である。また、ターゲットして不審者を想定したが、これに限らない。例えば、ターゲットとして、「人混み」のように問題が発生しやすい集団を適用してもよい。これにより、情報処理システム２の具体例３は、人混みの効率的な警備に応用できる。また、具体例３では、各制御装置２０が、タブレット端末上に実現される例を説明したが、これに限らない。例えば、各制御装置２０は、ウェアラブル端末や眼鏡型端末上に実現されてもよい。また、各制御装置２０は、警備員や警察官等が移動手段として用いる小型のビークルや車に設置された情報端末上に実現されてもよい。また、情報処理システム２は、具体例１と同様にクラウド上に実現されることも可能である。この場合、クラウド上の各制御装置２０は、担当するノード９０としての人と共に移動する端末から各種情報を受信するとともに、端末の表示装置に表示させるよう、制御情報に基づく指示情報を送信すればよい。
【０１３０】
以上で、具体例の説明を終了する。
【０１３１】
次に、本発明の第２の実施の形態の効果について述べる。
【０１３２】
本発明の第２の実施の形態としての情報処理システムは、協調動作によりターゲットを探索する複数のノード全てに関する情報を集中管理する必要なく、良好にターゲットを追跡しながら、全体的な探索確率を高めることができる。
【０１３３】
その理由について述べる。本実施の形態では、ターゲット位置取得部が、ターゲットの位置情報を取得する。また、状態情報取得部が、評価関数を用いて、担当ノードを含む少なくとも一部の各ノードについてその状態情報を生成する。評価関数は、複数のノードの空間的配置により実現される全体的な所定の価値の向上に対してノードが任意の位置において寄与する度合いを評価する関数である。状態情報取得部は、評価関数設定部を用いて、ターゲットの位置情報の更新や担当ノードの位置情報の更新に応じて、担当ノードに関する評価関数を更新する。そして、制御情報生成部は、移動方向決定部を用いて、配置に関する制約を考慮しながら、担当ノードの現在の位置からターゲットの位置に向かう方向を、移動方向として決定する。また、制御情報生成部は、移動制御量決定部を用いて、移動制御量に関する制約を考慮しながら、担当ノードの評価関数から得られる情報と、他のノードの評価関数から得られる情報との比較結果に基づいて、担当ノードの移動制御量を決定する。そして、制御部が、担当ノードを、決定された方向に決定された移動制御量の分だけ移動させるよう制御するからである。
【０１３４】
なお、本実施の形態において、情報処理システムをクラウド上に実現するケース（具体例１）、制御対象の機器上にそれぞれの制御装置を実現するケース（具体例２）、人に携帯される端末上にそれぞれの制御装置を実現するケース（具体例３）を説明した。その他、情報処理システムは、例えば、情報処理システムを実装したコンピュータ装置を海岸に設営し、複数のＵＵＶの移動を遠隔制御してもよい。また、情報処理システムは、複数のＵＵＶをとりまとめる母船に搭載されたコンピュータ装置上に実現してもよい。
【０１３５】
また、本実施の形態において、ノードとして適用する無人機として、ＵＵＶを一例として説明したが、その他の無人機をノードとして適用してもよい。例えば、本実施の形態は、ノードとして、空を飛ぶ飛行機型の無人機や、陸上を走る無人機など、様々な種類の無人機を適用可能である。
【０１３６】
また、本実施の形態では、複数のノードを用いて、移動するターゲットを探索・追跡する用途において、所定の価値として、全体の探索確率を向上させることを適用し、制御を行った。これに限らず、本実施の形態は、例えば、固定的に散らばっている探索対象を発見する用途において、所定の価値として、より良いエネルギー効率かつより沢山の探索対象を見つけることを適用し、制御を行ってもよい。また、本実施の形態は、それぞれ無線機を搭載した複数の無人機を、互いに情報を送受信可能に配置する用途において、所定の価値として、より広範囲に所望の転送レートで互いに情報を送受信できるフォーメーションを組むことを適用して、制御を行ってもよい。このように、本実施の形態は、複数のノードを用いて、全体的な所定の価値をより高めながら、所定の目的を達成する用途について、適用することが可能である。
【０１３７】
また、本実施の形態において、ノードとして無人機または人（警備員）を適用する具体例について説明したが、その他の移動体をノードとして適用してもよい。
【０１３８】
また、本実施の形態において、ターゲットの存在確率密度、ノードの発見確率、探索確率が、式（１）〜（４）により表されるものとして説明したが、これらは、他の式により表されていてもよい。また、本実施の形態において、制約条件および所定の価値が式（５）〜（６）により表されるものとして説明したが、これらは、他の式により表されていてもよい。
【０１３９】
また、本実施の形態において、制約取得部は、配置に関する制約および移動制御量に関する制約を取得するものとして説明した。ただし、制約取得部は、必ずしもこれらの制約を取得しなくてもよいし、さらに多くの他の制約を取得してもよい。
【０１４０】
また、上述した本発明の各実施の形態において、制御装置の各機能ブロックが、記憶装置またはＲＯＭに記憶されたコンピュータ・プログラムを実行するＣＰＵによって実現される例を中心に説明した。これに限らず、各機能ブロックの一部、全部、または、それらの組み合わせが専用のハードウェアにより実現されていてもよい。
【０１４１】
また、上述した本発明の各実施の形態において、制御装置の機能ブロックは、複数の装置に分散されて実現されてもよい。
【０１４２】
また、上述した本発明の各実施の形態において、各フローチャートを参照して説明した制御装置の動作を、本発明のコンピュータ・プログラムとしてコンピュータ装置の記憶装置（記憶媒体）に格納しておく。そして、係るコンピュータ・プログラムを当該ＣＰＵが読み出して実行するようにしてもよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコードあるいは記憶媒体によって構成される。
【０１４３】
また、上述した各実施の形態は、適宜組み合わせて実施されることが可能である。
また、上述した各実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得部と、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成部と、
前記制御情報に基づいて前記担当ノードの移動を制御する制御部と、
を備えた制御装置。
（付記２）
前記状態情報取得部は、前記複数のノードの空間的配置により実現される全体的な前記所定の価値の向上に対して前記ノードが任意の位置において寄与する度合いを評価する評価関数を用いて、前記担当ノードを含む少なくとも一部の各ノードについてその状態情報を生成することを特徴とする付記１に記載の制御装置。
（付記３）
前記制御情報生成部は、前記担当ノードについて前記評価関数を用いて得られる情報と、他の前記ノードについて前記評価関数を用いて得られる情報との比較結果に基づいて、前記制御情報を生成することを特徴とする付記２に記載の制御装置。
（付記４）
前記制御情報生成部は、前記担当ノードについて前記評価関数を用いて得られる情報と、他の前記ノードについて前記評価関数を用いて得られる情報とが略同一になるよう、前記制御情報を生成することを特徴とする付記３に記載の制御装置。
（付記５）
前記複数のノードによる探索対象（ターゲット）に関する位置情報を取得するターゲット位置取得部をさらに有し、
前記制御情報生成部は、前記少なくとも一部の各ノードの状態情報に加えて前記ターゲットに関する位置情報に基づいて、前記ノードに関する制御情報を生成することを特徴とする付記１から付記４のいずれか１つに記載の制御装置。
（付記６）
前記状態情報取得部は、前記評価関数として、前記ターゲットの任意の位置における存在確率を表す情報に基づく関数を用いることを特徴とする付記５に記載の制御装置。
（付記７）
前記状態情報取得部は、前記評価関数として、前記ノードによる前記ターゲットに対する発見能力の高さに基づく関数を用いることを特徴とする付記５または付記６に記載の制御装置。
（付記８）
前記制御情報生成部は、前記制御情報として、前記ノードの移動方向および移動制御量を表す情報を生成することを特徴とする付記１から付記７のいずれか１つに記載の制御装置。
（付記９）
前記制御情報生成部は、前記複数のノードの移動に関する制約に基づいて、前記制御情報を生成することを特徴とする付記１から付記８のいずれか1項に記載の制御装置。
（付記１０）
前記制御情報生成部は、前記移動に関する制約として、前記複数のノードに対して合計として割り当てられた移動制御量の上限を考慮して、前記担当ノードの移動制御量を調整することを特徴とする付記９に記載の制御装置。
（付記１１）
前記制御情報生成部は、前記移動に関する制約として、前記担当ノードの探索可能範囲と他の前記ノードの探索可能範囲との重複状況が満たすよう定められた所定条件を考慮して、前記担当ノードの移動方向を調整することを特徴とする付記９または付記１０に記載の制御装置。
（付記１２）
自らの移動を制御する装置として、付記１から付記１１のいずれか１つに記載の制御装置を搭載した機器。
（付記１３）
複数の付記１から付記１１のいずれか１つに記載の制御装置を備えることにより、前記複数のノードのそれぞれの前記状態の変化に応じて前記複数のノードの空間的配置を変化させる情報処理システム。
（付記１４）
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、
前記制御情報に基づいて前記担当ノードの移動を制御する制御方法。
（付記１５）
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、前記制御情報に基づいて前記担当ノードの移動を制御することを、前記複数のノードのそれぞれを前記担当ノードとして実行することにより、前記複数のノードのそれぞれの前記状態の変化に応じて前記複数のノードの空間的配置を変化させる制御方法。
（付記１６）
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得ステップと、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成ステップと、
前記制御情報に基づいて前記担当ノードの移動を制御する制御ステップと、
をコンピュータ装置に実行させる制御プログラム。
【０１４４】
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【０１４５】
この出願は、２０１５年４月１６日に出願された日本出願特願２０１５−０８３９６０を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１４６】
１、２    情報処理システム
１０、２０    制御装置
１１、２１    状態情報取得部
１２、２２    制御情報生成部
１３、２３    制御部
２４    ターゲット位置取得部
２１１    評価関数設定部
２２１    制約取得部
２２２    移動方向決定部
２２３    移動制御量決定部
９０    ノード、ＵＵＶ、警備員
１００１    ＣＰＵ
１００２    メモリ
１００３    ネットワークインタフェース
【図１】
2016166983.tif 000009
【図２】
2016166983.tif 000010
【図３】
2016166983.tif 000011
【図４】
2016166983.tif 000012
【図５】
2016166983.tif 000013
【図６】
2016166983.tif 000014
【図７】
2016166983.tif 000015
【図８】
2016166983.tif 000016
【図９】
2016166983.tif 000017
【図１０】
2016166983.tif 000018
【図１１】
2016166983.tif 000019
【手続補正書】
【提出日】平成29年9月20日(2017.9.20)
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得手段と、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成手段と、
前記制御情報に基づいて前記担当ノードの移動を制御する制御手段と、
を備えた制御装置。
【請求項２】
前記状態情報取得手段は、前記複数のノードの空間的配置により実現される全体的な前記所定の価値の向上に対して前記ノードが任意の位置において寄与する度合いを評価する評価関数を用いて、前記担当ノードを含む少なくとも一部の各ノードについてその状態情報を生成することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記制御情報生成手段は、前記担当ノードについて前記評価関数を用いて得られる情報と、他の前記ノードについて前記評価関数を用いて得られる情報との比較結果に基づいて、前記制御情報を生成することを特徴とする請求項２に記載の制御装置。
【請求項４】
前記制御情報生成手段は、前記担当ノードについて前記評価関数を用いて得られる情報と、他の前記ノードについて前記評価関数を用いて得られる情報とが略同一になるよう、前記制御情報を生成することを特徴とする請求項３に記載の制御装置。
【請求項５】
前記複数のノードによる探索対象であるターゲットに関する位置情報を取得するターゲット位置取得手段をさらに有し、
前記制御情報生成手段は、前記少なくとも一部の各ノードの状態情報に加えて前記ターゲットに関する位置情報に基づいて、前記ノードに関する制御情報を生成することを特徴とする請求項１から請求項４のいずれか１項に記載の制御装置。
【請求項６】
前記状態情報取得手段は、前記評価関数として、前記ターゲットの任意の位置における存在確率を表す情報に基づく関数を用いることを特徴とする請求項５に記載の制御装置。
【請求項７】
前記状態情報取得手段は、前記評価関数として、前記ノードによる前記ターゲットに対する発見能力の高さに基づく関数を用いることを特徴とする請求項５または請求項６に記載の制御装置。
【請求項８】
前記制御情報生成手段は、
前記制御情報として、前記複数のノードの移動に関する制約に基づいて、前記ノードの移動方向および移動制御量を表す情報を生成し、
前記移動に関する制約として、前記複数のノードに対して合計として割り当てられた前記移動制御量の上限を考慮して、前記担当ノードの前記移動制御量を調整し、
前記移動に関する制約として、前記担当ノードの探索可能範囲と他の前記ノードの探索可能範囲との重複状況が満たすよう定められた所定条件を考慮して、前記担当ノードの前記移動方向を調整することを特徴とする、
請求項１から請求項７のいずれか１項に記載の制御装置。
【請求項９】
コンピュータ装置が、
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得し、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成し、
前記制御情報に基づいて前記担当ノードの移動を制御する制御方法。
【請求項１０】
移動可能な複数のノードのうち担当ノードを含む少なくとも一部の各ノードについて、そのノードの位置に応じた所定の価値に関わる状態を表す状態情報を取得する状態情報取得ステップと、
前記少なくとも一部の各ノードの状態情報に基づいて、前記担当ノードの移動を制御する制御情報を生成する制御情報生成ステップと、
前記制御情報に基づいて前記担当ノードの移動を制御する制御ステップと、
をコンピュータ装置に実行させる制御プログラム。
【国際調査報告】
2016166983.tif 000020
2016166983.tif 000021