(57)【要約】［課題］複数の移動体を協調して動作させるための機能部分を、移動体を単体で動作させるための機能部分に合わせて個別に設計しなければならないこと。［解決手段］第１の移動体は、第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、第１の移動体および第２の移動体の状態を取得する状態取得部と、取得した上記状態に基づいて、第１の移動体を第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、第１の制御情報と第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、第３の制御情報に従って第１の移動体の動作を制御する動作制御部と、を有する。
2017221859.tif 000002
【特許請求の範囲】
【請求項１】
第１の移動体であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成手段と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得手段と、
取得した前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成手段と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成手段と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御手段と、
を有する移動体。
【請求項２】
前記状態取得手段は、前記第１の移動体の動作量に対する第１の評価関数値と前記第２の移動体の動作量に対する第２の評価関数値とを取得する、
請求項１に記載の移動体。
【請求項３】
前記第２の制御情報生成手段は、前記第１の移動体の動作量に対する第１の評価関数値を、前記第２の移動体の動作量に対する第２の評価関数値と比較した結果に基づいて、前記第２の制御情報を生成する、
請求項２に記載の移動体。
【請求項４】
前記第２の制御情報生成手段は、前記第１の移動体の動作量に対する第１の評価関数値または前記第１の評価関数値から導かれる値を、前記第２の移動体の動作量に対する第２の評価関数値または前記第２の評価関数値から導かれる値に等しくなるように、前記第２の制御情報を生成する、
請求項２に記載の移動体。
【請求項５】
前記第１の評価関数値は、前記第１の移動体における探索対象の探索確率を表し、
前記第２の評価関数値は、前記第２の移動体における前記探索対象の探索確率を表す、請求項２乃至４の何れかに記載の移動体。
【請求項６】
前記第１の制御情報および前記第２の制御情報の少なくとも一方は、前記第１の移動体の動作種別毎の動作設定値と重要度とを含む、
請求項１乃至５の何れかに記載の移動体。
【請求項７】
前記第３の制御情報生成手段は、前記第１の移動体の動作種別毎の前記動作設定値と前記重要度とに基づいて、前記第１の移動体を単体で動作させるための第１の動作設定値および前記第１の動作設定値の重要度を示す第１の重要度と、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の動作設定値および前記第２の動作設定値の重要度を示す第２の重要度とのうち、少なくとも一方を生成する、
請求項６に記載の移動体。
【請求項８】
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を示す第１の重要度を含み、
前記第２の制御情報は、第２の動作設定値と前記第２の動作設定値の重要度を示す第２の重要度を含み、
前記第３の制御情報は、第３の動作設定値を含み、
前記第３の制御情報生成手段は、前記第１の動作設定値と前記第１の重要度と前記第２の動作設定値と前記第２の重要度とに基づいて、前記第３の動作設定値を決定する、
請求項１乃至７の何れかに記載の移動体。
【請求項９】
前記状態取得手段は、前記第１の移動体の位置、移動速度および移動方向と、前記第２の移動体の位置、移動速度および移動方向とを取得する、
請求項１に記載の移動体。
【請求項１０】
前記第２の制御情報生成手段は、前記第１の移動体と前記第２の移動体との位置関係が予め設定されたものになるように、前記第２の制御情報を生成する、
請求項９に記載の移動体。
【請求項１１】
前記第１の制御情報を、前記第１の移動体から取得する取得手段を有する、
付記１乃至１０の何れかに記載の移動体。
【請求項１２】
前記第３の制御情報を、前記第１の移動体に設定する設定手段を有する、
付記１乃至１１の何れかに記載の移動体。
【請求項１３】
移動体であって、
前記移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有する、
移動体。
【請求項１４】
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を表す第１の重要度とを含む、
請求項１３に記載の移動体。
【請求項１５】
前記第１の動作設定値は、前記移動体の動作種別毎の動作設定値と重要度とを含む、
請求項１４に記載の移動体。
【請求項１６】
前記第１の動作設定値の代わりに使用する第２の動作設定値を前記移動体の外部から入力する第２のインターフェースを有する、
請求項１３乃至１５の何れかに記載の移動体。
【請求項１７】
移動体のインターフェース装置であって、
前記移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有する、
インターフェース装置。
【請求項１８】
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を表す第１の重要度とを含む、
請求項１７に記載のインターフェース装置。
【請求項１９】
前記第１の動作設定値は、前記移動体の動作種別毎の動作設定値と重要度とを含む、
請求項１８に記載のインターフェース装置。
【請求項２０】
前記第１の動作設定値の代わりに使用する第２の動作設定値を前記移動体の外部から入力する第２のインターフェースを有する、
請求項１７乃至１９の何れかに記載のインターフェース装置。
【請求項２１】
第１の移動体を制御する方法であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成し、
前記第１の移動体および第２の移動体の状態を取得し、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成し、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成し、
前記第３の制御情報に従って前記第１の移動体の動作を制御する、
移動体制御方法。
【請求項２２】
第１の移動体に搭載されたコンピュータに、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成処理と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得処理と、
取得した前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成処理と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成処理と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御処理と、
を実行させるプログラムが記録された記録媒体。
【請求項２３】
第１の移動体を制御する移動体制御システムであって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成手段と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得手段と、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成手段と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成手段と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御手段と、
を有する移動体制御システム。
【請求項２４】
前記状態取得手段は、前記第１の移動体の動作量に対する第１の評価関数値と前記第２の移動体の動作量に対する第２の評価関数値とを取得する、
請求項２３に記載の移動体制御システム。
【請求項２５】
前記第２の制御情報生成手段は、前記第１の移動体の動作量に対する第１の評価関数値を、前記第２の移動体の動作量に対する第２の評価関数値と比較した結果に基づいて、前記第２の制御情報を生成する、
請求項２４に記載の移動体制御システム。
【請求項２６】
前記第２の制御情報生成手段は、前記第１の移動体の動作量に対する第１の評価関数値または前記第１の評価関数値から導かれる値を、前記第２の移動体の動作量に対する第２の評価関数値または前記第２の評価関数値から導かれる値に等しくなるように、前記第２の制御情報を生成する、
請求項２４に記載の移動体制御システム。
【請求項２７】
前記第１の評価関数値は、前記第１の移動体における探索対象の探索確率を表し、
前記第２の評価関数値は、前記第２の移動体における前記探索対象の探索確率を表す、請求項２４乃至２６の何れかに記載の移動体制御システム。
【請求項２８】
前記第１の制御情報および前記第２の制御情報の少なくとも一方は、前記第１の移動体の動作種別毎の動作設定値と重要度とを含む、
請求項２３乃至２７の何れかに記載の移動体制御システム。
【請求項２９】
前記第３の制御情報生成手段は、前記第１の移動体の動作種別毎の前記動作設定値と前記重要度とに基づいて、前記第１の移動体を単体で動作させるための第１の動作設定値および前記第１の動作設定値の重要度を示す第１の重要度と、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の動作設定値および前記第２の動作設定値の重要度を示す第２の重要度とのうち、少なくとも一方を生成する、
請求項２８に記載の移動体制御システム。
【請求項３０】
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を示す第１の重要度を含み、
前記第２の制御情報は、第２の動作設定値と前記第２の動作設定値の重要度を示す第２の重要度を含み、
前記第３の制御情報は、第３の動作設定値を含み、
前記第３の制御情報生成手段は、前記第１の動作設定値と前記第１の重要度と前記第２の動作設定値と前記第２の重要度とに基づいて、前記第３の動作設定値を決定する、
請求項２３に記載の移動体制御システム。
【請求項３１】
前記状態取得手段は、前記第１の移動体の位置、移動速度および移動方向と、前記第２の移動体の位置、移動速度および移動方向とを取得する、
請求項２３に記載の移動体制御システム。
【請求項３２】
前記第２の制御情報生成手段は、前記第１の移動体と前記第２の移動体との位置関係が予め設定されたものになるように、前記第２の制御情報を生成する、
請求項３１に記載の移動体制御システム。
【請求項３３】
前記第１の制御情報を、前記第１の移動体から取得する取得手段を有する、
請求項２３乃至３２の何れかに記載の移動体制御システム。
【請求項３４】
前記第３の制御情報を、前記第１の移動体に設定する設定手段を有する、
請求項２３乃至３３の何れかに記載の移動体制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無人機などの移動体、移動体制御システム、移動体制御方法、インターフェース装置、およびプログラムに関する。
【背景技術】
【０００２】
移動体の一種である無人機が、各種提案ないし実用化されている。例えば、特許文献１には、自己の状態や周囲の状態に応じて自律的に動作する２足歩行ロボット装置が記載されている。また、特許文献２には、風に煽られても自律的に定点状態を維持するクアドリコプター等の回転翼無人機が記載されている。【０００３】
一方、移動体単体の制御だけではなく、複数の移動体を群として扱い、移動体の群を制御するシステムが、提案ないし実用化されている。例えば、特許文献３には、複数の移動体によるフォーメーション飛行が可能な制御システムが記載されている。特許文献３に記載される制御システムは、移動体に搭載された、通信ユニット、移動体単体としての動作を制御するオートパイロット装置、および自機を他機と協調して動作させるためのフォーメーション飛行制御部から構成される。通信ユニットは、フォーメーション飛行を形成している自機以外の移動体との間で通信を行う。フォーメーション飛行制御部は、通信ユニットを通じて得た自機以外の移動体の情報（相対位置および相対速度など）に基づいて、自機以外の移動体との間でフォーメーション飛行を実現するためのコマンドをオートパイロット装置に出力する。オートパイロット装置は、コマンドに従って自機の移動速度、移動方向などの制御情報を制御することにより、追随すべき他機に対する相対位置を調整する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１９９４０２号公報
【特許文献２】特表２０１５−５１４２６３号公報
【特許文献３】特開２００４−２５９７１号公報
【特許文献４】特許第４６１７２９３号
【特許文献５】特許第４９２６９５８号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した特許文献３に記載される制御システムでは、移動体に搭載したフォーメーション飛行制御部から同機に搭載したオートパイロット装置に対してコマンドを出力している。換言すれば、特許文献３に記載される制御システムでは、移動体を単体で動作させるための機能部分（特許文献３ではオートパイロット装置）と複数の移動体を協調して動作させるための機能部分（特許文献３ではフォーメーション飛行制御部）との間でコマンドを授受している。このため、単体で動作可能な移動体が複数存在し、それぞれの移動体に搭載された、単体で動作させるための機能部分が相違する場合、複数の移動体を協調して動作させるための機能部分を単体で動作させるための機能部分に合わせて個別に設計する必要がある。移動体を単体で動作させるための機能部分の決定と複数の移動体を協調して動作させるための機能部分の決定を統合する手法は現在汎用的なものはなく、個別に設計していかなければならない。このような課題は、オートパイロット装置以外にも、飛行条件によらずに移動体を安定して飛行させるための安定化装置など、移動体を単体で動作させるための他の種類の機能部分を利用して、複数の移動体の群を制御する場合にも生じる。
また、このような課題は、空中を自律飛行する飛行体のみならず、道路を自律走行する自動車や、水中を自律走行する船舶などにおいても生じる。【０００６】
本発明の目的は、上述した課題、すなわち、複数の移動体を協調して動作させるための機能部分を、移動体を単体で動作させるための機能部分に合わせて個別に設計しなければならない、という課題を解決する移動体、移動体制御システム、移動体制御方法、インターフェース、およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一形態に係る移動体は、
第１の移動体であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、
前記第１の移動体および第２の移動体の状態を取得する状態取得部と、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御部と、
を有する。【０００８】
また、本発明の他の形態に係る移動体の制御方法は、
第１の移動体を制御する方法であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成し、
前記第１の移動体および第２の移動体の状態を取得し、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成し、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成し、
前記第３の制御情報に従って前記第１の移動体の動作を制御する。【０００９】
また、本発明の他の形態に係る移動体は、
移動体であって、
第１の移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有する。【００１０】
また、本発明の他の形態に係るプログラムは、
第１の移動体に搭載されたコンピュータを、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、
前記第１の移動体および第２の移動体の状態を取得する状態取得部と、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御部と、
して機能させる。【００１１】
また、本発明の他の形態に係るインターフェース装置は、
移動体のインターフェース装置であって、
第１の移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有する。【００１２】
また、本発明の一形態に係る移動体制御システムは、
第１の移動体を制御する制御システムであって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、
前記第１の移動体および第２の移動体の状態を取得する状態取得部と、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御部と、
を有する。
【発明の効果】
【００１３】
本発明は上述した構成を有することにより、複数の移動体を協調して動作させるための機能部分を、移動体を単体で動作させるための機能部分に合わせて個別に設計する必要がない。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係る制御システムのブロック図である。
【図２】本発明の第１の実施形態に係る制御システムによって制御される複数の無人機を示す図である。
【図３】本発明の第１の実施形態に係る制御システムにおける単体動作情報取得部の構成例を示すブロック図である。
【図４】本発明の第１の実施形態に係る制御システムにおける単体動作情報取得部の別の構成例を示すブロック図である。
【図５】本発明の第１の実施形態に係る制御システムにおける状態情報取得部の構成例を示すブロック図である。
【図６】本発明の第１の実施形態に係る制御システムにおける状態情報取得部の別の構成例を示すブロック図である。
【図７】本発明の第１の実施形態に係る制御システムにおける動作設定部の構成例を示すブロック図である。
【図８】本発明の第１の実施形態に係る制御システムにおける動作設定部の別の構成例を示すブロック図である。
【図９】本発明の第１の実施形態に係る制御システムの動作を説明するための流れ図である。
【図１０】本発明の第１の実施形態に係る制御システムで使用する式を示す図である。
【図１１】本発明の第２の実施形態に係る制御システムのブロック図である。
【図１２】本発明の第２の実施形態に係る制御システムのうちクラウド上に搭載される制御システムを実現するためのハードウェアの構成例を示す図である。
【図１３】本発明の第２の実施形態に係る制御システムのうち無人機上に搭載される制御システムを実現するためのハードウェアの構成例を示す図である。
【図１４】本発明の第２の実施形態に係る制御システムの動作結果の一例の概略を示す図である。
【図１５】本発明の第２の実施形態に係る制御システムの動作結果の他の例の概略を示す図である。
【図１６】本発明の第３の実施形態に係る制御システムのブロック図である。
【図１７】本発明の第３の実施形態に係る制御システムを実現するためのハードウェアの構成例を示す図である。
【図１８】本発明の第４の実施形態に係る制御システムのブロック図である。
【発明を実施するための形態】
【００１５】
次に本発明の実施の形態について図面を参照して詳細に説明する。
［第１の実施形態］
本実施形態では、複数の移動体を協調動作させ、効率的なフォーメーションで行動させたり、ターゲットを効率的に探索したりするための移動体制御システムおよび移動体について説明する。
【００１６】
［本実施形態の背景技術］
近年、移動体の一種である無人機を使った応用が多く提案されている。例えば、自動的に部屋の掃除を行ってくれる円盤型ロボットや、空を飛ぶ無人機（ドローンと呼ぶ）による宅配などである。また、原子力発電所などの危険な環境で活動するロボットなども挙げられる。
【００１７】
これらは通常１体の無人機を使用している。しかし、複数の無人機を使用した応用例なども提案されている。例えば、特許文献４には、Ｅコマース用の工場にて、複数の荷物運び用のロボットを使用し、顧客のオーダーした商品をいち早く集めるなどの応用例が記載されている。また特許文献５には、探索対象を複数の無人機を使用して探索するなどの応用例が記載されている。
【００１８】
特に探索対象を複数の無人機で探索するという応用は、防衛関連技術として近年盛んに研究されている。一般的に、無人機は、ＵｘＶ（Ｕｎｍａｎｎｅｄ  ｘ  Ｖｅｈｉｃｌｅ）と呼ばれる。たとえば、無人飛行機ならＵＡＶ（Ｕｎｍａｎｎｅｄ  Ａｉｒ  Ｖｅｈｉｃｌｅ）、無人船ならＵＳＶ（Ｕｎｍａｎｎｅｄ  Ｓｕｒｆａｃｅ  Ｖｅｈｉｃｌｅ）、無人水中船ならＵＵＶ（Ｕｎｍａｎｎｅｄ  Ｕｎｄｅｒｓｅａ  Ｖｅｈｉｃｌｅ）、無人自動車ならＵＧＶ（Ｕｕｍａｎｎｅｄ  Ｇｒｏｕｎｄ  Ｖｅｈｉｃｌｅ）と呼ばれている。
【００１９】
上記の無人機は、遠隔から人間が操作するものと、搭載されたプログラムにより自律的に行動を行えるものとの２種類がある。しかし、技術の方向としては、できるだけ搭載されたプログラムにより自律的に行動を行えるものを目指している。人間不在でも、人間に代わり様々な行動または労働を肩代わりする無人機あるいは無人機群が望まれている。近年、人工知能の研究が盛んにおこなわれている一因は、優れた人工知能を搭載することで、無人機が賢く自律動作可能となる期待からである。
【００２０】
上述のように、単体の無人機および複数の無人機群の検討は広くおこなわれている。そして、無人機群を制御する応用の場合、単体の無人機の動作特性がわかっている前提で、無人機群の協調動作の制御アルゴリズムが作られている。つまり、使用する無人機の種類と、無人機群としての応用とが決定した後、制御アルゴリズムが作られる。そのため、使用する無人機の種類毎に、無人機群の協調動作の制御アルゴリズムを特別に開発する必要があった。
【００２１】
一方、近年、単体の無人機自体に自律的な動作をさせる制御アルゴリズムが組み込まれていることが多くなってきており、価格も年々安価になってきている。このような状況を鑑みると、単体の無人機の動作特性がわかっている前提で、無人機群の協調動作の制御アルゴリズムを特別な開発で作るよりも、市販の安価な無人機を購入し、無人機群を用いたアプリケーションを作っていく方が経済的に合理的である。また、運用の途中で安価な違う機種の無人機に交換する、あるいは、複数の種類の無人機が混在する状態になり、一度作った無人機群のアプリケーションを変更する場合があることも十分考えられる。
【００２２】
しかしながら、自律動作の制御アルゴリズムを持っている無人機を、種別を問わず、簡単に組み合わせて、無人機群のアプリケーションを作ることができる有効なプラットフォームが存在していない。
【００２３】
［本実施形態が解決しようとする課題］
上述の通り、単体の無人機が自律動作するようになり、さらに、様々な種類の自律動作可能な無人機が購入できるような状況になっている。その一方で、そのような単体の無人機を組み合わせて、単体の無人機が持つ自律動作も活用しながら、無人機群のアプリケーションを作ることは難しい。本実施形態は、そのような困難を解決するためのものであり、様々な単体の無人機を組み合わせて、容易に無人機群のアプリケーションを形成できる制御システム、無人機またはインターフェースを提案するものである。
【００２４】
［本実施形態の詳細］
図１は本実施形態に係る制御システム１１０のブロック図である。制御システム１１０は、無人機に１対１に対応する。即ち、図２に示すように複数の無人機１０１、１０２が存在する場合、無人機１０１に一つの制御システム１１０が対応し、無人機１０２に別の一つの制御システム１１０が対応する。以下では、図１の制御システム１１０は、無人機１０１に対応しているものとして説明する。なお、図２には２台の無人機が描かれているが、協調動作する無人機の台数は２台に限定されず、３台以上であってもよい。
【００２５】
図１を参照すると、制御システム１１０は、単体動作情報生成部１１１、単体動作情報取得部１１２、状態情報取得部１１３、協調動作情報生成部１１４、動作調停部１１５、動作設定部１１６および動作制御部１１７から構成される。
【００２６】
単体動作情報生成部１１１は、無人機１０１を単体で動作させるための動作設定値を生成する機能を有する。単体動作情報生成部１１１は第１の制御情報生成部とも呼ばれ、動作設定値は第１の制御情報とも呼ばれる。単体動作情報生成部１１１は、無人機１０１に存在する。単体動作情報生成部１１１は、ＣＰＵ等の演算処理部とこの演算処理部で実行されるプログラムとにより実現される。或いは、単体動作情報生成部１１１は、専用のＬＳＩで実現されてもよい。
【００２７】
無人機１０１が単体として決定した動作設定値は、無人機１０１が単体で動作するときの動作設定値である。動作設定値は、例えば、ドローンで言えば、前後左右上下方向への移動速度などを意味する。また、自動車で言えば、目標操舵角やブレーキ力などを意味する。動作設定値は、最終的に、無人機１０１の駆動部分（プロペラを回転させるモータやステアリングを回転させる電動パワーステアリングモータ等のアクチュエータ）を動作させる電圧値、電流値、あるいはトルク値に変換される。
【００２８】
一般的に、単体の無人機は、ある種の自律動作ができるようになっていることが多い。例えば、ある種の自律動作としては、障害物を発見したらその障害物を避ける方向に移動することが挙げられる。別の自律動作としては、認識対象を見つけるとその対象に近づく方向に移動することが挙げられる。さらに別の自律的な動作としては、風または波などに煽られたら、本来の位置に戻る方向に移動することが挙げられる。このように複数種類の自律動作を行う無人機の単体動作情報生成部１１１は、動作種別ｉごとの動作設定値Ａｉとその重要度ｋｉとを生成し、単体動作情報取得部１１２に出力する。
【００２９】
なお、一般的に、自律動作を行う無人機は、図１には図示していないが、自機の周辺環境を認識する装置、自機の動きを検出する装置および自機の位置を検出する装置を有している。例えば、自機の周辺環境を認識する装置は、外部環境を撮影するカメラ装置、およびその撮像画像をもとに外部に存在する立体物データ等を抽出し、当該立体物データ等に対する自機からの相対的な位置を速度と共に検出する画像処理装置などから構成される。また、自機の動きを検出する装置は、移動速度および加速度を検出するセンサなどから構成される。また、自機の位置を検出する装置は、例えば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）衛星から発信された電波を受信して現在位置を検出するセンサなどから構成される。
【００３０】
上記重要度ｋｉは０以上、１以下の値をとる。例えば、単体動作情報生成部１１１は、障害物を発見したらその障害物を避ける方向に移動するための動作設定値Ａｉに対して、その障害物に今にも衝突しそうなら、重要度ｋｉを最大の１とし、また、まだ衝突まで余裕があるなら、その余裕の度合いに逆比例するように１より低い値を重要度ｋｉに設定する。同様に、単体動作情報生成部１１１は、認識対象を見つけるとその認識対象に近づく方向に移動する種類の自律動作や、風または波などに煽られたら、本来の位置に戻る方向に移動する種類の自律動作に関しても、動作設定値Ａｉと重要度ｋｉとを生成して出力する。
【００３１】
或いは、複数種類の自律動作を行う無人機の単体動作情報生成部１１１は、それぞれの動作種別ｉごとの動作設定値Ａｉとその重要度ｋｉとを生成し、それらを統合した最終的な動作設定値を出力する構成であってもよい。例えば、単体動作情報生成部１１１は、動作種別ｉごとの動作設定値Ａｉと重要度ｋｉとを乗算し、それらの乗算結果をすべて積算した値Ａ＝ΣＡｉ・ｋｉを、最終的な動作設定値として出力する構成であってよい。
【００３２】
或いは、１種類の自律動作を行う無人機の単体動作情報生成部１１１は、１種類の動作設定値Ａを出力する構成であってよい。
【００３３】
また、単体動作情報生成部１１１は、さらに、単体動作の重要度αを出力する構成であってもよい。例えば、単体動作情報生成部１１１は、動作種別ｉごとの動作設定値Ａｉとその重要度ｋｉとに加えて、単体動作の重要度αを出力してよい。或いは、単体動作情報生成部１１１は、動作種別ｉごとの動作設定値Ａｉとその重要度ｋｉとを統合した最終的な動作設定値Ａに加えて、単体動作の重要度αを出力してよい。或いは、単体動作情報生成部１１１は、１種類の動作設定値Ａと単体動作の重要度αとを出力してよい。単体動作の重要度αは、例えば、重要度ｋｉのうちの最大値を使用してよい。
【００３４】
単体動作情報取得部１１２は、単体動作情報生成部１１１の出力情報を動作調停部１１５に伝達する手段である。動作調停部１１５は、無人機１０１に存在する形態と、無人機１０１とは地理的に離れた場所に存在する情報処理装置に存在する形態とがある。この形態の違いに応じて、単体動作情報取得部１１２の構成が相違する。
【００３５】
図３は、単体動作情報取得部１１２の構成例を示すブロック図である。この例の単体動作情報取得部１１２は、通信インターフェース１１２１、１１２２から構成される。通信インターフェース１１２１は、単体動作情報生成部１１１を有する無人機１０１に存在し、単体動作情報生成部１１１の出力情報を受け取って無線通信によって通信インターフェース１１２２へ送信する機能を有する。通信インターフェース１１２２は、無人機１０１とは地理的に離れた場所に存在する情報処理装置に存在し、単体動作情報生成部１１１の出力情報を無線通信によって通信インターフェース１１２１から受信し、情報処理装置に設けられた動作調停部１１５へ出力する機能を有する。
【００３６】
図４は、単体動作情報取得部１１２の別の構成例を示すブロック図である。この例の単体動作情報取得部１１２は、インターフェース１１２３から構成される。インターフェース１１２３は、単体動作情報生成部１１１を有する無人機１０１に存在し、単体動作情報生成部１１１の出力情報を受け取って、無人機１０１に存在する動作調停部１１５へ伝達する機能を有する。インターフェース１１２３は、単体動作情報生成部１１１の出力情報を一時的に保持して動作調停部１１５に出力するレジスタや、単体動作情報生成部１１１の出力端子と動作調停部１１５の入力端子とを接続するコネクタや接続スイッチなどで構成することができる。あるいは、インターフェース１１２３は、単体動作情報生成部１１１の出力情報を取得するＡＰＩ（アプリケーション・プログラム・インターフェース）で構成することができる。
【００３７】
再び図１を参照すると、状態情報取得部１１３は、無人機１０１の状態と、当該無人機１０１と協調動作する無人機１０２の状態とを取得し、協調動作情報生成部１１４に伝達する機能を有する。状態情報取得部１１３が取得する無人機１０１および１０２の状態は、協調動作の種類や目的によって相違する。例えば、協調動作が複数の無人機によるフォーメーション飛行である場合、状態情報取得部１１３は、自機および他機の位置情報や速度情報などを取得する。また、例えば、協調動作がある探索対象を探索し或いは追跡することである場合、状態情報取得部１１３は、後述するように、自機および他機の位置に加え、評価関数値や探索対象の位置などを取得する。
【００３８】
状態情報取得部１１３は、その全てが無人機１０１に存在する形態と、その一部が無人機１０１に存在し、残りが無人機１０１とは地理的に離れた場所に存在する情報処理装置に存在する形態とがある。
【００３９】
図５は、状態情報取得部１１３の構成例を示すブロック図である。この例の状態情報取得部１１３は、無人機１０１に存在する取得部１１３１と、通信インターフェース１１３２とから構成される。取得部１１３１は、無人機１０１の状態を取得する機能を有する。通信インターフェース１１３２は、取得部１１３１が取得した無人機１０１の状態を無人機１０１に存在する協調動作情報生成部１１４に伝達する機能を有する。また、通信インターフェース１１３２は、無人機１０２に存在する状態情報取得部の通信インターフェースとの間で通信を行って無人機１０２の状態を取得し、協調動作情報生成部１１４に伝達する機能を有する。
【００４０】
図６は、状態情報取得部１１３の別の構成例を示すブロック図である。この例の状態情報取得部１１３は、無人機１０１に存在する取得部１１３３と、通信インターフェース１１３４と、無人機１０１とは地理的に離れた場所に存在する情報処理装置に存在する通信インターフェース１１３５とから構成される。取得部１１３３は、無人機１０１の状態を取得する機能を有する。通信インターフェース１１３４は、取得部１１３３が取得した無人機１０１の状態を通信インターフェース１１３５へ送信する機能を有する。通信インターフェース１１３５は、通信インターフェース１１３４から受信した無人機１０１の状態を上記情報処理装置に存在する協調動作情報生成部１１４に伝達する機能を有する。また、通信インターフェース１１３５は、無人機１０２に存在する状態情報取得部の通信インターフェースとの間で通信を行って無人機１０２の状態を取得し、協調動作情報生成部１１４に送信する機能を有する。
【００４１】
協調動作情報生成部１１４は、状態情報取得部１１３が取得した無人機１０１の状態と無人機１０２の状態とに基づいて、無人機１０１を無人機１０２と協調して動作させるための動作設定値を生成する機能を有する。協調動作情報生成部１１４は、無人機１０１に存在する形態と、無人機１０１とは地理的に離れた場所に存在する情報処理装置に存在する形態とがある。動作設定値の意味は、単体動作情報生成部１１１が生成する動作設定値と同じである。協調動作情報生成部１１４は第２の制御情報生成部とも呼ばれ、動作設定値は第２の制御情報とも呼ばれる。
【００４２】
協調動作情報生成部１１４は、複数種類の協調動作を行う場合、それぞれの動作種別ｊごとの動作設定値Ｂｊとその重要度ｋｊとを生成し、動作調停部１１５に出力する。重要度ｋｊは０以上、１以下の値をとる。或いは、複数種類の協調動作を行う無人機の協調動作情報生成部１１４は、それぞれの動作種別ｊごとの動作設定値Ｂｊとその重要度ｋｊとを生成し、それらを統合した最終的な動作設定値を出力する構成であってもよい。例えば、協調動作情報生成部１１４は、動作種別ｊごとの動作設定値Ｂｊと重要度ｋｊとを乗算し、それらの乗算結果をすべて積算した値Ｂ＝ΣＢｊ・ｋｊを、最終的な動作設定値として出力する構成であってよい。或いは、１種類の協調動作を行う無人機の協調動作情報生成部１１４は、１種類の動作設定値Ｂを出力する構成であってよい。
【００４３】
また、協調動作情報生成部１１４は、さらに、協調動作の重要度βを出力する構成であってもよい。例えば、協調動作情報生成部１１４は、動作種別ｊごとの動作設定値Ｂｊとその重要度ｋｊとに加えて、協調動作の重要度βとを出力してよい。或いは、協調動作情報生成部１１４は、動作種別ｊごとの動作設定値Ｂｊとその重要度ｋｊとを統合した最終的な動作設定値Ｂに加えて、協調動作の重要度βを出力してよい。或いは、協調動作情報生成部１１４は、１種類の動作設定値Ｂと協調動作の重要度βとを出力してよい。協調動作の重要度βは、例えば、重要度ｋｊのうちの最大値を使用してよい。
【００４４】
動作調停部１１５は、単体動作情報取得部１１２を通じて与えられる単体動作情報生成部１１１の出力情報と、協調動作情報生成部１１４の出力情報とから、最終的な動作設定値を決定する機能を有する。動作設定値の意味は、単体動作情報生成部１１１および協調動作情報生成部１１４が生成する動作設定値と同じである。動作調停部１１５は第３の制御情報生成部とも呼ばれ、最終的な動作設定値は第３の制御情報とも呼ばれる。
【００４５】
動作調停部１１５は、単体動作情報生成部１１１の出力情報によって決定される、無人機１０１単体としての動作設定値Ａおよび単体動作の重要度αと、協調動作情報生成部１１４の出力情報によって決定される、無人機１０１の協調動作としての動作設定値Ｂおよび協調動作の重要度βとから、例えば、αＡ＋βＢを最終的な動作設定値として決定する。
【００４６】
動作設定部１１６は、動作調停部１１５の出力情報を動作制御部１１７に伝達する手段である。動作制御部１１７は、無人機１０１に存在する。他方、動作調停部１１５は、前述したように無人機１０１に存在する形態と、無人機１０１とは地理的に離れた場所に存在する形態とがある。これらの形態の違いに応じて、動作設定部１１６の構成が相違する。
【００４７】
図７は、動作設定部１１６の構成例を示すブロック図である。この例の動作設定部１１６は、通信インターフェース１１６１および１１６２から構成される。通信インターフェース１１６１は、動作調停部１１５を有する情報処理装置に存在し、動作調停部１１５の出力情報を受け取って無線通信によって通信インターフェース１１６２へ送信する機能を有する。通信インターフェース１１６２は、動作制御部１１７を有する無人機１０１に存在し、動作調停部１１５の出力情報を無線通信によって通信インターフェース１１６１から受信し、動作制御部１１７へ出力する機能を有する。
【００４８】
図８は、動作設定部１１６の別の構成例を示すブロック図である。この例の動作設定部１１６は、インターフェース１１６３から構成される。インターフェース１１６３は、動作調停部１１５を有する無人機１０１に存在し、動作調停部１１５の出力情報を受け取って、無人機１０１に存在する動作制御部１１７へ伝達する機能を有する。インターフェース１１６３は、動作調停部１１５の出力情報を一時的に保持して動作制御部１１７に出力するレジスタや、動作調停部１１５の出力端子と動作制御部１１７の入力端子とを接続するコネクタや接続スイッチなどで構成することができる。あるいは、インターフェース１１６３は、動作調停部１１５の出力情報を取得するＡＰＩ（アプリケーション・プログラム・インターフェース）で構成することができる。
【００４９】
動作制御部１１７は、動作設定部１１６を通じて入力される動作調停部１１５の出力情報に従って、無人機１０１の動作を制御する機能を有する。動作調停部１１５の出力情報である動作設定値は、例えば、ドローンの場合、前後左右上下方向への移動速度などを意味する。従って、無人機１０１がドローンの場合、動作制御部１１７は、前後左右上下方向への移動速度などの動作設定値に従って、複数のプロペラを回転させる複数のモータの回転数をそれぞれ制御することにより、無人機１０１の動作（スロットル、ピッチ、ロールおよびラダー）を制御する。また、無人機１０１が無人自動車の場合、動作調停部１１５の出力情報である動作設定値は、目標操舵角などを意味する。従って、無人機１０１が無人自動車の場合、動作制御部１１７は、ステアリングを回転させる電動パワーステアリングモータによって操舵角などを制御する。
【００５０】
図９は制御システム１１０の動作を説明するための流れ図である。以下、図９を参照して、無人機１０１を制御する制御システム１１０の動作を説明する。
【００５１】
制御システム１１０の単体動作情報生成部１１１は、無人機１０１を単体で動作させるための動作設定値Ａｉおよびその重要度ｋｉを生成する（ステップＳ１１１）。次に、単体動作情報取得部１１２は、上記動作設定値Ａｉおよび重要度ｋｉを単体動作情報生成部１１１から取得し、動作調停部１１５へ伝達する（ステップＳ１１２）。
【００５２】
他方、状態情報取得部１１３は、無人機１０１の状態と無人機１０２の状態とを取得する（ステップＳ１１３）。次に、協調動作情報生成部１１４は、上記取得された状態に基づいて、無人機１０１を無人機１０２と協調して動作させるための動作設定値Ｂｊおよびその重要度ｋｊを生成し、動作調停部１１５へ伝達する（ステップＳ１１４）。
【００５３】
動作調停部１１５は、単体動作情報生成部１１１が生成した無人機１０１を単体で動作させるための動作設定値Ａｉおよび重要度ｋｉと、協調動作情報生成部１１４が生成した無人機１０１を無人機１０２と協調して動作させるための動作設定値Ｂｊおよび重要度ｋｊとから、最終的な動作設定値を生成する（ステップＳ１１５）。次に、動作設定部１１６は、上記最終的な動作設定値を動作制御部１１７へ伝達する（ステップＳ１１６）。次に、動作制御部１１７は、上記最終的な動作設定値に従って、無人機１０１の動作を制御する（ステップＳ１１７）。
【００５４】
上記ステップＳ１１１〜Ｓ１１７は、所定の時間間隔で繰り返し実行される。
【００５５】
このように本実施形態に係る制御システム１１０では、無人機１０１を単体で動作させるための機能部分である単体動作情報生成部１１１と、無人機１０１を他の無人機と協調して動作させるための機能部分である協調動作情報生成部１１４とが互いに独立している。このため、協調動作情報生成部１１４を、単体動作情報生成部１１１とは独立に設計することができる。従って、単体で動作可能な無人機が複数存在し、それぞれの無人機に搭載される単体で動作させるための機能部分である単体動作情報生成部１１１の設計が相違する場合であっても、協調動作情報生成部１１４を単体動作情報生成部１１１に合わせて個別に設計する必要がない。
【００５６】
続いて、状態情報取得部１１３および協調動作情報生成部１１４を中心に、本実施形態に係る制御システム１１０をより詳細に説明する。
【００５７】
今、複数の無人機に、或る目的を持たせ、或る価値を最大化するような応用を考える。即ち、或る価値を無人機全体で最大化しながら、或る目的を達成するような無人機群を動作させるシステムを考える。制御システム１１０の状態情報取得部１１３は、近隣の協調動作すべき無人機から、無人機の状態に関わる情報として、複数の無人機全体の目的に関わる評価値（評価関数とも呼ぶ）、あるいはそれに付随する付随情報を取得する。制御システム１１０の協調動作情報生成部１１４は、上記複数の無人機全体の目的に関わる評価値、あるいはその付随情報を用いて、複数の無人機の群全体としてどう動くべきかを決定する。
【００５８】
実際に無人機の群をどのように協調させていくかを以下に説明し、複数の無人機全体の目的に関わる評価値とは具体的にどういうものかを明らかにする。
【００５９】
複数の無人機全体で最大化したいのは、探索対象の探索確率であることが多いので、複数の無人機全体の目的（全体で最大化したい価値）を探索対象の探索確率として説明を行う。
【００６０】
探索対象の存在確率密度ｇを図１０の式１で表す。式１において、ｘ、ｙ、ｚは無人機の座標（位置）を表し、ｘｔ、ｙｔ、ｚｔは探索対象のｘ座標、ｙ座標、ｚ座標（位置）を表す。
【００６１】
探索対象の存在確率密度ｇはいろいろな記述の仕方が考えられるが、ここでは、直近に発見された探索対象の位置を存在確率密度ｇのピークにし、その位置から離れるほど存在確率密度ｇが減っていく山型の形状を用いた。より確かな存在確率密度ｇにするためには、直近に発見された探索対象の位置から現時点の探索対象の位置を予測し、予測した位置に探索対象がいるとして、存在確率密度ｇを記述する方法も考えられる。
【００６２】
各無人機が探索対象を発見できる発見確率ｐｉを図１０の式２で表す。式２において、ψiは、無人機ｉに与えられた探索努力である。探索努力ψiは動作量と考えてもよい。
【００６３】
発見確率ｐｉは、各無人機が存在する環境によって変わってくることが多い。例えば、海中でソナーにより探索物を発見するような場合の発見確率ｐｉは、図１０の式３で表されることが知られている。式３において、γiは電波伝搬に依存する量である。つまり、無人機が存在する海域によって変わる量である。無人機の存在する環境にふさわしい係数を常に使うことが望ましい。
【００６４】
各無人機における探索対象の探索確率ｆｉは、図１０の式４に示すように、探索対象の存在確率密度ｇと無人機の発見確率ｐｉの積で表すことができる。式４において、ｘi、ｙi、ｚiは無人機ｉのｘ座標、ｙ座標、ｚ座標（位置）を表す。
【００６５】
従って、複数の無人機全体での全体探索確率は、図１０の式５で表される。
【００６６】
無人機のエネルギーを考えれば、探索努力は有限と考えるべきである。そのため、有限の探索努力に対して、できるだけ探索確率を上げなくてはならない。従って、全体探索確率は、全体で投入する、ある既定の探索努力に対して最大化することになる。ここでは、ある単位時間当たりに全体で投入する探索努力、即ち全探索努力Ψを設定し、その上で全体探索確率を最大化する手法を考える。
【００６７】
数学的に言えば、式５の全体探索確率を、図１０の式６に示す全探索努力Ψに対する制約条件のもとで最大化する最適化問題を解かなければならない。
【００６８】
協調動作情報生成部１１４は、上述のような、限りがある全探索努力Ψの中、どの無人機をどれだけ動かせば、複数の無人機（無人機全体）で全体探索確率を最大にできるかを勘案して、無人機の動作設定値を決定するユニットである。したがって、上述の例の場合、複数の無人機全体の目的に関わる評価値は、式４の値（探索確率ｆｉ）になり、また、それに付随する付随情報というのは、探索対象の位置情報（ｘｔ、ｙｔ、ｚｔ）、無人機の位置情報（ｘi、ｙi、ｚi）および探索努力ψiなどである。動作設定値を決めるアルゴリズムとして、ここでは、以下のアルゴリズムを考案した。
【００６９】
即ち、単位探索努力当たりの全体探索確率が最大となるように、近隣の無人機の評価関数（探索確率ｆｉ）の状態を勘案し、自機の動作量（探索努力ψi）を決定する、というアルゴリズムである。例えば、単位探索努力を投入した場合、近隣の無人機よりも自機による全体探索確率の増分が大きいならば、次の制御ステップでは単位探索努力を自機に投入することを決める。逆に、近隣の無人機より自機による全体探索確率の増分が低いならば、次の制御ステップでは単位探索努力を自機に投入しない。つまり、自機が動作しないことを決める。換言すれば、協調動作情報生成部１１４は、無人機１０１の動作量に対する評価関数値を、無人機１０２の動作量に対する評価関数値と比較した結果に基づいて、無人機１０１の動作設定値を生成する。
【００７０】
単位探索努力あたりの探索確率とは、評価関数の微分と等価である。したがって、単位探索努力あたりの探索確率が最も上がるように動作量を決めるというのは、その操作を繰り返すと、評価関数の微分がすべての無人機で等しくなってくる。したがって、評価関数の微分を等しくするように動作量を決めるという手法も有効である。換言すれば、協調動作情報生成部１１４は、無人機１０１の動作量に対する評価関数値または当該評価関数値から導かれる値を、無人機１０２の動作量に対する評価関数値または当該評価関数値から導かれる値に等しくなるように、無人機１０１の動作設定値を生成する。
【００７１】
上記アルゴリズムは、ある無人機が自機の動作量を決定するときに、協調すべき他のすべての無人機の状態情報を取得する必要がなく、近隣の状態情報が取得可能な無人機の状態情報だけを使って、全体目的に近づくことができる。
【００７２】
動作設定値は、無人機の制御の場合、スカラー量ではなく、３次元の方向を持つベクトル量で設定する必要がある。したがって、上述のアルゴリズムで決めた動作量を３次元方向の出力に振り分け、最終的な動作設定値にしなければならない。そこで、様々な決め方があるが、ここでは以下のようなアルゴリズムで動作方向を決定した。まず、無人機の現在位置を始点とし、始点と探索対象の位置とを結ぶベクトルを作成する。後々の処理のため、そのベクトルを単位ベクトル化（長さが１のベクトルに規格化）し、これを動作ベクトルとする。動作ベクトルの長さを先ほど決定した動作量とすれば、各方向の動作設定値が求められる。
【００７３】
本実施形態により、様々な単体の無人機を組み合わせて、容易に無人機群のアプリケーションを形成できる制御システムもしくは無人機またはインターフェースを実現できる。
【００７４】
［第２の実施形態］
以下、本発明の第２の実施形態を、複数の無人機が全体で探索対象の探索確率を最大にしながら動作する例をもとに、図面を参照しながら詳細に説明する。
【００７５】
本実施形態では、クラウド上に複数の無人機の中央管理システムを実装する。本実施形態は、第１の実施形態の制御システム１１０の一部をクラウド上に搭載した例となる。図１１にシステムの概略図を示す。また、図１２および図１３にハードウェア構成例を示す。
【００７６】
図１１を参照すると、クラウド上に搭載される制御システム１１０−１は、図１に記載した制御システム１１０の単体動作情報取得部１１２の一部（通信インターフェース１１２２）１１２−１と、状態情報取得部１１３の一部（通信インターフェース１１３５）１１３−１と、協調動作情報生成部１１４と、動作調停部１１５と、動作設定部１１６の一部（通信インターフェース１１６１）１１６−１とを含む。
【００７７】
図１２を参照すると、制御システム１１０−１を実現するためのハードウェアは、通信インターフェース部２１０と、入出力部２２０と、記憶部２３０と、演算処理部２４０とから構成される。通信インターフェース部２１０は、無線通信によって無人機との間で通信を行う機能を有する。入出力部２２０は、キーボードやマウス等の操作入力部と液晶ディスプレイ等の画面表示部とを有し、操作者からのデータや指示を入力して演算処理部２４０に伝達する機能と、演算処理部２４０からの情報を操作者に通知する機能とを有する。記憶部２３０は、演算処理部２４０での各種処理に必要な情報やプログラム２５０を記憶する機能を有している。プログラム２５０は、演算処理部２４０に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信インターフェース部２１０などのデータ入出力機能を介して外部装置（図示せず）や記憶媒体（図示せず）から予め読み込まれて記憶部２３０に保存される。演算処理部２４０は、ＣＰＵなどのマイクロプロセッサとその周辺回路を有し、記憶部２３０からプログラム２５０を読み込んで実行することにより、上記ハードウェアとプログラム２５０とを協働させて図１１に示す制御システム１１０−１を実現する機能を有している。
【００７８】
また図１１を参照すると、無人機１０３に搭載される制御システム１１０−２は、図１に記載した制御システム１１０の単体動作情報生成部１１１と、単体動作情報取得部１１２の一部（通信インターフェース１１２１）１１２−２と、状態情報取得部１１３の一部（取得部１１３３と通信インターフェース１１３４）１１３−２と、動作設定部１１６の一部（通信インターフェース１１６２）１１６−２と、動作制御部１１７とを含む。
【００７９】
図１３を参照すると、制御システム１１０−２を実現するためのハードウェアは、通信インターフェース部３１０と、入出力部３２０と、駆動部３３０と、記憶部３４０と、演算処理部３５０とから構成される。通信インターフェース部３１０は、無線通信によって他の装置との間で通信を行う機能を有する。入出力部３２０および駆動部３３０は、無人機１０３に備わる入出力部および駆動部である。例えば、移動体である無人機１０３がドローンの場合、入出力部３２０は、カメラ、３軸の磁気センサ、３軸ジャイロスコープおよび対地面の高度測定用超音波センサなどから構成される。また、無人機１０３がドローンの場合、駆動部３３０は、各プロペラを駆動するモータなどから構成される。記憶部３４０は、演算処理部３５０での各種処理に必要な情報やプログラム３６０を記憶する機能を有している。プログラム３６０は、演算処理部３５０に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信インターフェース部３１０などのデータ入出力機能を介して外部装置（図示せず）や記憶媒体（図示せず）から予め読み込まれて記憶部３４０に保存される。演算処理部３５０は、ＣＰＵなどのマイクロプロセッサとその周辺回路とを有し、記憶部３４０からプログラム３６０を読み込んで実行することにより、上記ハードウェアとプログラム３６０とを協働させて図１３に示す制御システム１１０−２を実現する機能を有している。
【００８０】
本実施形態における無人機１０３は、空中を自律動作し、レーダーで探索対象を探索する無人機、Ｕｎｍａｎｎｅｄ  Ａｉｒ  Ｖｅｈｉｃｌｅ（ＵＡＶ）と呼ばれるものを使用した。このＵＡＶ１０３の単体動作情報生成部１１１は、単体でも自律的な動作をする幾つかの動作種別の動作設定値を生成する。一つの動作種別の動作設定値は、障害物があると回避行動をするためのものである。また、他の一つの動作種別の動作設定値は、風に煽られた場合（急激にポジションが変わった場合）、もとのポジションにＧＰＳ情報に基づいて戻るような自律動作を行うためのものである。このＵＡＶ１０３は、図示しないコントローラから、所望の移動方向およびスピードを与えると、上述の自律動作を勘案して動作する。本実施形態では、ＵＡＶ単体の所望の移動方向およびスピードを０（０ベクトル）とし、基本的に、上空で静止するように動作する設定で実施した。
【００８１】
このＵＡＶ１０３は、図３で説明したような通信インターフェース１１２１を有しており、単体動作情報生成部１１１が生成した動作設定値とその重要度を、クラウド側の制御システム１１０−１に出力する。具体的には、障害物回避およびポジション補正（風に煽られた場合）の２種類の動作種別に対して、動作設定値と、その動作種別の重要度とを０から１の間で出力する。
【００８２】
各ＵＡＶ１０３単体から出力される、動作種別ごとの動作設定値および重要度は、無線通信を介して、クラウド上に搭載した制御システム１１０−１の単体動作情報取得部１１２の一部１１２−１を構成する通信インターフェース１１２２で受信され、動作調停部１１５に入力される。
【００８３】
また、クラウド上に搭載した制御システム１１０−１の状態情報取得部１１３の一部１１３−１は、自らが担当する無人機１０３の状態を当該無人機１０３の状態情報取得部１１３の一部１１３−２との通信によって取得すると共に、他の無人機を担当する制御システム１１０−１とそれぞれの状態情報を交換する。無人機１０３の状態としては、捕捉した探索対象の位置情報および自機の位置情報がある。このように本実施形態の場合、各無人機１０３を担当する各制御システム１１０−１がバーチャルにクラウド上に配備され、あたかも無人機１０３が近隣の無人機１０３と情報交換するように、バーチャルな制御システム１１０−１が近隣の無人機１０３を担当するバーチャルな制御システム１１０−１と情報交換する。そして、各々の制御システム１１０−１は、図７で説明したような通信インターフェース１１６１を有しており、この通信インターフェース１１６１を通じて各々が担当する無人機１０３に制御指示を出す。
【００８４】
状態情報取得部１１３を通じて協調動作情報生成部１１４で使用する評価関数としては、上述の式４と同じものを設定した。探索対象の存在確率密度ｇは、探索対象が直近に発見された位置をピークにし、その位置から離れるほど存在確率密度ｇが減っていくガウシアン型の関数を用いた。また、各ＵＡＶの発見確率ｐiは、式３と同じものを用いた。ＵＡＶが存在する空域によって、式３のγiは異なる。従って、ここでは、空域ごとのγiを予めデータベース化しておき、ＵＡＶが存在する位置情報に基づきγiを変える手法を採用した。
【００８５】
また協調動作情報生成部１１４で使用する付随情報として、各ＵＡＶの状態情報取得部１１３は、捕捉した探索対象の位置情報および自機の位置情報を適宜アップロードする。各ＵＡＶは非同期に動作しており、アップロードされる情報も非同期となる。従って、クラウド上に中央管理システムがあるとしても、すべての情報が同期的に集まらない。このため、探索確率に関する通常の最適化計算を行うことができないため、上述のアルゴリズムを使用しＵＡＶ群を全体最適にする。
【００８６】
図１４に実際の動作結果の一例の概略を示す。この例では、障害物や風がない状態であり、基本的に単体の自律動作が発動せず、複数のＵＡＶの協調動作が実行されるはずの例となっている。予め所望のフォーメーションをＵＡＶ群が形成しており（初期状態）、そこに探索対象がやってくるという場合である。三角で記載したものが探索対象で、丸で記載したものがＵＡＶである。下段に行くにつれ時間が経過していることを表している。探索対象の動きに合わせ、探索対象を包み込むように、ＵＡＶが接近し、探索対象を追跡できていることがわかる。探索対象から遠方に位置するＵＡＶは動作しておらず（例えば、点線の丸で囲んだ右端の２つのＵＡＶ）、無駄な動作が行われていないことがわかる。
【００８７】
上記動作中に、全体探索確率がどの程度高いかを評価した。探索確率を上昇させるのは、協調動作情報生成部１１４の評価関数を設定する機能および動作量を生成する機能がその役割を担っている。そこで、その２つの機能を故意に止めた制御を行った場合と、本実施形態とを比較した。比較した項目は、単位探索努力あたりの全体探索確率である。探索確率は、原理上、探索努力を投入すればするほど上がっていく特性を持っているので、投入した探索努力あたり（単位探索努力あたり）の値で比較する必要がある。評価関数を設定する機能と動作量を生成する機能とを停止した場合、すべてのＵＡＶは探索対象に徐々に近づいていく制御となる。二つの手法を評価した結果、本実施形態の制御システムでは、平均３０％程度高い全体探索確率（単位探索努力あたり）が得られた。また、単体のＵＡＶの自律動作が発動せず、良好な協調動作が得られていることがわかる。
【００８８】
図１５に実際の動作結果の一例の概略をさらに示す。この例では、障害物が存在し、図１４のような協調動作だけを勘案した制御では、図中の黒丸のＵＡＶが障害物に衝突することが想定される。障害物以外は、図１４と全く同じシナリオである。図１５を参照すると、注目している黒丸のＵＡＶは、障害物を当初回避し、障害物の危機がなくなると、探索対象を協調的に追跡している様子が分かる。この結果は、必要に応じて、単体の自律性と協調動作としての群の自律性とを適宜調停していることを表している。
【００８９】
以上より、本実施形態によれば、単体として自律動作をする無人機を、単体の自律動作特性を維持しつつ、群制御のアプリケーションに適用できる。
【００９０】
［第３の実施形態］
本実施形態では、各無人機に制御システム１１０の全ての要素を実装する。図１６に無人機１０４に搭載する制御システムの概略図を示す。搭載される制御システム１１０は図１に記載したものと同じものを使用する。
【００９１】
図１７を参照すると、制御システム１１０を実現するためのハードウェアは、通信インターフェース部４１０と、入出力部４２０と、駆動部４３０と、記憶部４４０と、演算処理部４５０とから構成される。通信インターフェース部４１０は、無線通信によって他の装置との間で通信を行う機能を有する。入出力部４２０および駆動部４３０は、移動体である無人機１０４に備わる入出力部および駆動部である。例えば、無人機１０４がドローンの場合、第２の実施形態で説明した入出力部３２０および駆動部３３０と同様に構成される。記憶部４４０は、演算処理部４５０での各種処理に必要な情報やプログラム４６０を記憶する機能を有している。プログラム４６０は、演算処理部４５０に読み込まれて実行されることにより各種処理部を実現するプログラムであり、通信インターフェース部４１０などのデータ入出力機能を介して外部装置（図示せず）や記憶媒体（図示せず）から予め読み込まれて記憶部４４０に保存される。演算処理部４５０は、ＣＰＵなどのマイクロプロセッサとその周辺回路とを有し、記憶部４４０からプログラム４６０を読み込んで実行することにより、上記ハードウェアとプログラム４６０とを協働させて図１６に示す制御システム１１０を実現する機能を有している。
【００９２】
本実施形態では、各無人機１０４が近隣の通信可能な無人機１０４とそれぞれ情報交換し、自機に搭載された制御システム１１０の指示を受けて自律分散的に行動する。本実施形態は、無人機群が動作するフィールドから情報が取りにくく、無人機群に自律分散的な動作を期待すべきケースを想定している。こういうケースは実際の応用局面では非常に多い。また、中央管理システムを想定するのが難しいケース、あるいは中央管理システムが機能しなくなってしまったケースなどでも有効な実施形態である。
【００９３】
本実施形態で使用した無人機１０４や評価関数などの条件はすべて、第２の実施形態と同様である。大きな違いは、無人機１０４が中央管理システムと情報を送受信するか否かであり、本実施形態では情報を送受信しないケースである。探索対象の位置を取得する機能は無人機１０４の状態情報取得部１１３に搭載されており、探索対象に関する情報も近隣の無人機１０４と交換される。
【００９４】
本実施形態が第２の実施形態と同様の探索対象を追跡できるかについて実験を行ったが、第２の実施形態と同様、探索対象を良好に追跡できた。また、第２の実施形態と同様の全体探索確率（単位探索努力あたり）の評価を行った。本実施形態でも第２の実施形態と同様に３０％高い全体探索確率（単位探索努力あたり）が得られた。また、障害物を第２の実施形態と同様に設置したケースでは、制御システムが、単体の障害物の回避行動と群の協調動作とを自律的に調停することで、第２の実施形態と同様に本実施形態が良好に動作した。
【００９５】
本実施形態により、本発明の制御システムは、各無人機１０４に搭載し制御を行っても有効に働くことがわかった。
【００９６】
［第４の実施形態］
本実施形態では、本発明の移動体制御システムの基本的な構成および動作について説明する。
【００９７】
図１８を参照すると、本実施形態に係る移動体制御システム１２０は、第１の移動体を制御するシステムであり、第１の制御情報生成部１２１と、状態取得部１２２と、第２の制御情報生成部１２３と、第３の制御情報生成部１２４と、動作制御部１２５とを含む。
【００９８】
第１の制御情報生成部１２１は、第１の移動体を単体で動作させるための第１の制御情報を生成する機能を有する。状態取得部１２２は、第１の移動体と図１８には図示しない第２の移動体の状態を取得する機能を有する。第２の制御情報生成部１２３は、上記状態に基づいて、第１の移動体を第２の移動体と協調して動作させるための第２の制御情報を生成する機能を有する。第３の制御情報生成部１２４は、上記第１の制御情報と上記第２の制御情報とから第３の制御情報を生成する機能を有する。動作制御部１２５は、上記第３の制御情報に従って第１の移動体の動作を制御する機能を有する。これらは、第１の実施形態における単体動作情報生成部１１１、状態情報取得部１１３、協調動作情報生成部１１４、動作調停部１１５、および動作制御部１１７に相当する。
【００９９】
このように構成された本実施形態に係る移動体制御システム１２０は、以下のように機能する。即ち、まず、第１の制御情報生成部１２１は、第１の移動体を単体で動作させるための第１の制御情報を生成する。次に、状態取得部１２２は、第１の移動体と第２の移動体との状態を取得し、第２の制御情報生成部１２３は、上記状態に基づいて、第１の移動体を第２の移動体と協調して動作させるための第２の制御情報を生成する。次に、第３の制御情報生成部１２４は、上記第１の制御情報と上記第２の制御情報とから第３の制御情報を生成する。そして、動作制御部１２５は、上記第３の制御情報に従って第１の移動体の動作を制御する。
【０１００】
このように本実施形態は、第１の移動体を第２の移動体と協調して動作させるための機能部分である第２の制御情報生成部１２３を、第１の移動体を単体で動作させるための機能部分である第１の制御情報生成部１２１に合わせて個別に設計する必要がない。その理由は、第１の制御情報生成部１２１と第２の制御情報生成部１２３とが互いに独立しているためである。
【０１０１】
［発明の他の実施の形態］
上述の第２の実施形態では、クラウドに中央管理システムを実装するケースを示したが、中央管理システムを特別なシステムとして構築してもよい。例えば、中央管理システムを構築し、それを海岸に設営し、複数のＵＡＶに指示を出しても構わない。また、中央管理システムを、複数のＵＡＶを取りまとめる母船に設営してもよい。
【０１０２】
また、上述の第２の実施形態および第３の実施形態では、ＵＡＶを事例に説明したが、空を飛ぶ飛行機型の無人機や、陸上を走る無人機など無人機の種類は問わず、本発明は利用できる。
【０１０３】
また、上述の第１乃至第３の実施形態では、探索対象を追跡する目的のもと、探索確率を最大化する制御を行った。しかし、目的や最大化する価値はこれらに留まらず、適宜変更可能である。例えば、固定的に散らばっている探索対象を、もっともエネルギー効率よく、沢山見つけるための制御なども考えられる。また、無人機に無線機を搭載し、最も広範囲に、所望の転送レートで情報が送れるように無人機でフォーメーションを組むなどの制御にも使用できる。つまり、複数の無人機に、ある目的を持たせ、ある価値を最大化するような応用に関しては、本発明を有効に利用することが可能である。
【０１０４】
また、上述の第１乃至第３の実施形態では、探索対象を追跡する目的のために複数の移動体を協調動作させた。しかし、協調動作の目的はこれらに留まらず、適宜変更可能である。例えば、複数の移動体を単にフォーメーションさせるための協調動作であってもよい。具体的には、例えば第１の移動体が、第２の移動体の後方の所定位置を維持するように第２の移動体に追従して移動するような制御に対しても、本発明を有効に利用することが可能である。この場合、状態情報取得部１１３は、例えば、第１の移動体の位置、移動速度および移動方向と第２の移動体の位置、移動速度および移動方向とを取得する。また、協調動作情報生成部１１４は、第１の移動体と第２の移動体との位置関係が予め設定されたものになるように、第１の移動体を第２の移動体と協調して動作させるための動作設定値を生成する。
【０１０５】
また、上述の実施形態では、第１の移動体の協調相手である第２の移動体は無人機であったが、第２の移動体は有人機であってもよい。
【０１０６】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
［付記１］
第１の移動体であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得部と、
取得した前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御部と、
を有する移動体。
［付記２］
前記状態取得部は、前記第１の移動体の動作量に対する第１の評価関数値と前記第２の移動体の動作量に対する第２の評価関数値とを取得する、
付記１に記載の移動体。
［付記３］
前記第２の制御情報生成部は、前記第１の移動体の動作量に対する第１の評価関数値を、前記第２の移動体の動作量に対する第２の評価関数値と比較した結果に基づいて、前記第２の制御情報を生成する、
付記２に記載の移動体。
［付記４］
前記第２の制御情報生成部は、前記第１の移動体の動作量に対する第１の評価関数値または前記第１の評価関数値から導かれる値を、前記第２の移動体の動作量に対する第２の評価関数値または前記第２の評価関数値から導かれる値に等しくなるように、前記第２の制御情報を生成する、
付記２に記載の移動体。
［付記５］
前記第１の評価関数値は、前記第１の移動体における探索対象の探索確率を表し、
前記第２の評価関数値は、前記第２の移動体における前記探索対象の探索確率を表す、付記２乃至４の何れかに記載の移動体。
［付記６］
前記第１の制御情報および前記第２の制御情報の少なくとも一方は、前記第１の移動体の動作種別毎の動作設定値と重要度とを含む、
付記１乃至５の何れかに記載の移動体。
［付記７］
前記第３の制御情報生成部は、前記第１の移動体の動作種別毎の前記動作設定値と前記重要度とに基づいて、前記第１の移動体を単体で動作させるための第１の制御情報である第１の動作設定値および前記第１の動作設定値の重要度を示す第１の重要度と、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の動作設定値および前記第２の動作設定値の重要度を示す第２の重要度とのうち、少なくとも一方を生成する、
付記６に記載の移動体。
［付記８］
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を示す第１の重要度を含み、
前記第２の制御情報は、第２の動作設定値と前記第２の動作設定値の重要度を示す第２の重要度を含み、
前記第３の制御情報は、第３の動作設定値を含み、
前記第３の制御情報生成部は、前記第１の動作設定値と前記第１の重要度と前記第２の動作設定値と前記第２の重要度とに基づいて、前記第３の動作設定値を決定する、
付記１に記載の移動体。
［付記９］
前記状態取得部は、前記第１の移動体の位置、移動速度および移動方向と、前記第２の移動体の位置、移動速度および移動方向とを取得する、
付記１に記載の移動体。
［付記１０］
前記第２の制御情報生成部は、前記第１の移動体と前記第２の移動体との位置関係が予め設定されたものになるように、前記第２の制御情報を生成する、
付記９に記載の移動体。
［付記１１］
前記第１の制御情報を、前記第１の移動体から取得する取得部を有する、
付記１乃至１０の何れかに記載の移動体。
［付記１２］
前記第３の制御情報を、前記第１の移動体に設定する設定部を有する、
付記１乃至１１の何れかに記載の移動体。
［付記１３］
移動体であって、
前記移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有する、
移動体。
［付記１４］
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を表す第１の重要度とを含む、
付記１３に記載の移動体。
［付記１５］
前記第１の動作設定値は、前記移動体の動作種別毎の動作設定値と重要度とを含む、
付記１４に記載の移動体。
［付記１６］
前記第１の動作設定値の代わりに使用する第２の動作設定値を前記移動体の外部から入力する第２のインターフェースを有する、
付記１３乃至１５の何れかに記載の移動体。
［付記１７］
移動体のインターフェース装置であって、
前記移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有する、
インターフェース装置。
［付記１８］
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を表す第１の重要度とを含む、
付記１７に記載のインターフェース装置。
［付記１９］
前記第１の動作設定値は、前記移動体の動作種別毎の動作設定値と重要度とを含む、
付記１８に記載のインターフェース装置。
［付記２０］
前記第１の動作設定値の代わりに使用する第２の動作設定値を前記移動体の外部から入力する第２のインターフェースを有する、
付記１７乃至１９の何れかに記載のインターフェース装置。
［付記２１］
第１の移動体を制御する方法であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成し、
前記第１の移動体と第２の移動体の状態を取得し、
前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成し、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成し、
前記第３の制御情報に従って前記第１の移動体の動作を制御する、
移動体制御方法。
［付記２２］
第１の移動体に搭載されたコンピュータを、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得部と、
前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御部と、
して機能させるためのプログラム。
［付記２３］
第１の移動体を制御する移動体制御システムであって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成部と、
前記第１の移動体と少なくとも１つの第２の移動体の状態を取得する状態取得部と、
前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成部と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成部と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御部と、
を有する移動体制御システム。
［付記２４］
前記状態取得部は、前記第１の移動体の動作量に対する第１の評価関数値と前記第２の移動体の動作量に対する第２の評価関数値とを取得する、
付記２３に記載の移動体制御システム。
［付記２５］
前記第２の制御情報生成部は、前記第１の移動体の動作量に対する第１の評価関数値を、前記第２の移動体の動作量に対する第２の評価関数値と比較した結果に基づいて、前記第２の制御情報を生成する、
付記２４に記載の移動体制御システム。
［付記２６］
前記第２の制御情報生成部は、前記第１の移動体の動作量に対する第１の評価関数値または前記第１の評価関数値から導かれる値を、前記第２の移動体の動作量に対する第２の評価関数値または前記第２の評価関数値から導かれる値に等しくなるように、前記第２の制御情報を生成する、
付記２４に記載の移動体制御システム。
［付記２７］
前記第１の評価関数値は、前記第１の移動体における探索対象の探索確率を表し、
前記第２の評価関数値は、前記第２の移動体における前記探索対象の探索確率を表す、付記２４乃至２６の何れかに記載の移動体制御システム。
［付記２８］
前記第１の制御情報および前記第２の制御情報の少なくとも一方は、前記第１の移動体の動作種別毎の動作設定値と重要度とを含む、
付記２３乃至２７の何れかに記載の移動体制御システム。
［付記２９］
前記第３の制御情報生成部は、前記第１の移動体の動作種別毎の前記動作設定値と前記重要度とに基づいて、前記第１の移動体を単体で動作させるための第１の動作設定値および前記第１の動作設定値の重要度を示す第１の重要度と、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の動作設定値と前記第２の動作設定値の重要度を示す第２の重要度とのうち、少なくとも一方を生成する、
付記２８に記載の移動体制御システム。
［付記３０］
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を示す第１の重要度を含み、
前記第２の制御情報は、第２の動作設定値と前記第２の動作設定値の重要度を示す第２の重要度を含み、
前記第３の制御情報は、第３の動作設定値を含み、
前記第３の制御情報生成部は、前記第１の動作設定値と前記第１の重要度と前記第２の動作設定値と前記第２の重要度とに基づいて、前記第３の動作設定値を決定する、
付記２３に記載の移動体制御システム。
［付記３１］
前記状態取得部は、前記第１の移動体の位置、移動速度および移動方向と、前記第２の移動体の位置、移動速度および移動方向とを取得する、
付記２３に記載の移動体制御システム。
［付記３２］
前記第２の制御情報生成部は、前記第１の移動体と前記第２の移動体との位置関係が予め設定されたものになるように、前記第２の制御情報を生成する、
付記３１に記載の移動体制御システム。
［付記３３］
前記第１の制御情報を、前記第１の移動体から取得する取得部を有する、
付記２３乃至３２の何れかに記載の移動体制御システム。
［付記３４］
前記第３の制御情報を、前記第１の移動体に設定する設定部を有する、
付記２３乃至３３の何れかに記載の移動体制御システム。
【０１０７】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１０８】
この出願は、２０１６年６月２１日に出願された日本出願特願２０１６−１２２４６５を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１０９】
本発明は、移動体の制御に利用でき、特に、単体として自律動作する複数の移動体を用いて、ある価値を無人機群全体で最大化しながら、ある目的を達成するように無人機群を動作させるシステムなどに利用可能である。
【符号の説明】
【０１１０】
１０１…無人機
１０２…無人機
１０３…無人機（ＵＡＶ）
１０４…無人機
１１０…制御システム
１１０−１…制御システム
１１０−２…制御システム
１１１…単体動作情報生成部
１１２…単体動作情報取得部
１１２−１…単体動作情報取得部の一部
１１２−２…単体動作情報取得部の一部
１１３…状態情報取得部
１１３−１…状態情報取得部の一部
１１３−２…状態情報取得部の一部
１１４…協調動作情報生成部
１１５…動作調停部
１１６…動作設定部
１１６−１…動作設定部の一部
１１６−２…動作設定部の一部
１１７…動作制御部
２１０…通信インターフェース部
２２０…入出力部
２３０…記憶部
２４０…演算処理部
２５０…プログラム
３１０…通信インターフェース部
３２０…入出力部
３３０…駆動部
３４０…記憶部
３５０…演算処理部
３６０…プログラム
４１０…通信インターフェース部
４２０…入出力部
４３０…駆動部
４４０…記憶部
４５０…演算処理部
４６０…プログラム
１１２１…通信インターフェース
１１２２…通信インターフェース
１１２３…インターフェース
１１３１…取得部
１１３２…通信インターフェース
１１３３…取得部
１１３４…通信インターフェース
１１３５…通信インターフェース
１１６１…通信インターフェース
１１６２…通信インターフェース
１１６３…インターフェース
【図１】
2017221859.tif 000003
【図２】
2017221859.tif 000004
【図３】
2017221859.tif 000005
【図４】
2017221859.tif 000006
【図５】
2017221859.tif 000007
【図６】
2017221859.tif 000008
【図７】
2017221859.tif 000009
【図８】
2017221859.tif 000010
【図９】
2017221859.tif 000011
【図１０】
2017221859.tif 000012
【図１１】
2017221859.tif 000013
【図１２】
2017221859.tif 000014
【図１３】
2017221859.tif 000015
【図１４】
2017221859.tif 000016
【図１５】
2017221859.tif 000017
【図１６】
2017221859.tif 000018
【図１７】
2017221859.tif 000019
【図１８】
2017221859.tif 000020
【手続補正書】
【提出日】平成30年12月11日(2018.12.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の移動体であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成手段と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得手段と、
取得した前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成手段と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成手段と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御手段と、
を有する移動体。
【請求項２】
前記状態取得手段は、前記第１の移動体の動作量に対する第１の評価関数値と前記第２の移動体の動作量に対する第２の評価関数値とを取得する、
請求項１に記載の移動体。
【請求項３】
前記第２の制御情報生成手段は、前記第１の移動体の動作量に対する第１の評価関数値を、前記第２の移動体の動作量に対する第２の評価関数値と比較した結果に基づいて、前記第２の制御情報を生成する、
請求項２に記載の移動体。
【請求項４】
前記第２の制御情報生成手段は、前記第１の移動体の動作量に対する第１の評価関数値または前記第１の評価関数値から導かれる値を、前記第２の移動体の動作量に対する第２の評価関数値または前記第２の評価関数値から導かれる値に等しくなるように、前記第２の制御情報を生成する、
請求項２に記載の移動体。
【請求項５】
前記第１の評価関数値は、前記第１の移動体における探索対象の探索確率を表し、
前記第２の評価関数値は、前記第２の移動体における前記探索対象の探索確率を表す、請求項２乃至４の何れかに記載の移動体。
【請求項６】
移動体であって、
前記移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有し、
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を表す第１の重要度とを含む、
移動体。
【請求項７】
移動体のインターフェース装置であって、
前記移動体を単体で動作させるための第１の制御情報を前記移動体の外部へ出力する第１のインターフェースを有し、
前記第１の制御情報は、第１の動作設定値と前記第１の動作設定値の重要度を表す第１の重要度とを含む、
インターフェース装置。
【請求項８】
第１の移動体を制御する方法であって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成し、
前記第１の移動体および第２の移動体の状態を取得し、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成し、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成し、
前記第３の制御情報に従って前記第１の移動体の動作を制御する、
移動体制御方法。
【請求項９】
第１の移動体に搭載されたコンピュータに、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成処理と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得処理と、
取得した前記状態に基づいて、前記第１の移動体を前記少なくとも１つの第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成処理と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成処理と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御処理と、
を実行させるプログラム。
【請求項１０】
第１の移動体を制御する移動体制御システムであって、
前記第１の移動体を単体で動作させるための第１の制御情報を生成する第１の制御情報生成手段と、
前記第１の移動体および少なくとも１つの第２の移動体の状態を取得する状態取得手段と、
取得した前記状態に基づいて、前記第１の移動体を前記第２の移動体と協調して動作させるための第２の制御情報を生成する第２の制御情報生成手段と、
前記第１の制御情報と前記第２の制御情報とから第３の制御情報を生成する第３の制御情報生成手段と、
前記第３の制御情報に従って前記第１の移動体の動作を制御する動作制御手段と、
を有する移動体制御システム。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図１０
【補正方法】変更
【補正の内容】
【図１０】
2017221859.tif 000021
【国際調査報告】
2017221859.tif 000022
2017221859.tif 000023