特許第6987319号(P6987319)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱電機株式会社の特許一覧

特許6987319制御装置、制御対象機器、及び制御対象機器の制御方法
<>
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000003
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000004
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000005
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000006
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000007
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000008
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000009
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000010
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000011
  • 特許6987319-制御装置、制御対象機器、及び制御対象機器の制御方法 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6987319
(24)【登録日】2021年12月2日
(45)【発行日】2021年12月22日
(54)【発明の名称】制御装置、制御対象機器、及び制御対象機器の制御方法
(51)【国際特許分類】
   G05D 1/00 20060101AFI20211213BHJP
【FI】
   G05D1/00 Z
【請求項の数】7
【全頁数】23
(21)【出願番号】特願2021-539713(P2021-539713)
(86)(22)【出願日】2019年8月9日
(86)【国際出願番号】JP2019031691
(87)【国際公開番号】WO2021028979
(87)【国際公開日】20210218
【審査請求日】2021年7月20日
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110003166
【氏名又は名称】特許業務法人山王内外特許事務所
(72)【発明者】
【氏名】河尻 翔太
(72)【発明者】
【氏名】平嶋 一貴
(72)【発明者】
【氏名】白石 將
【審査官】 大古 健一
(56)【参考文献】
【文献】 国際公開第2018/154633(WO,A1)
【文献】 特開2018−180604(JP,A)
【文献】 特開2019−101770(JP,A)
【文献】 特開2018−147032(JP,A)
【文献】 特開2018−147359(JP,A)
【文献】 伊藤 太清 TAISEI ITO,UAV協調型センシングにおける探索効率の向上について On Improvement of Efficiency of Exploration in UAV-Collaborative Sensing,マルチメディア,分散,協調とモバイル(DICOMO2019)シンポジウム論文集 情報処理学会シンポジウムシリーズ Vol.2019 No.1 [CD−ROM] IPSJ Symposium Series,日本,一般社団法人情報処理学会,2019年07月24日,第2019巻,957〜962
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00−1/12
(57)【特許請求の範囲】
【請求項1】
制御対象である制御対象機器に関する制御対象機器情報と、他の制御装置によって制御される非制御対象機器に関する非制御対象機器情報とに基づいて、当該制御対象機器が複数の領域セルに区分された探索エリアを探索するように当該制御対象機器を制御する制御装置であって、
前記制御対象機器の位置を少なくとも含む制御対象機器情報を取得する制御対象機器情報取得部と、
前記非制御対象機器の位置を少なくとも含む非制御対象機器情報を取得する非制御対象機器情報取得部と、
前記制御対象機器又は前記非制御対象機器が最後に領域セルに滞在した時刻からの経過時間を領域セル毎に示すAGEマップ、前記制御対象機器情報取得部が取得した制御対象機器情報が示す前記制御対象機器の位置、及び、前記非制御対象機器情報取得部が取得した非制御対象機器情報が示す前記非制御対象機器の位置に基づいて、前記制御対象機器が領域セルを探索する優先度を領域セル毎に示す優先度マップを生成する優先度マップ生成部と、
前記優先度マップ生成部が生成した優先度マップに基づいて、前記制御対象機器を制御する制御実行部と、を備え、
前記優先度マップ生成部は、評価関数の出力値を前記優先度とし、
前記評価関数は、領域セル毎に、前記経過時間が大きくなるに従って前記出力値が大きくなり、前記制御対象機器の位置から領域セルの位置までの第1の距離が小さくなるに従って前記出力値が大きくなり、前記制御対象機器の位置から前記非制御対象機器の位置までの第2の距離に基づいて、前記第1の距離が前記出力値に与える影響が相対的に変化することを特徴とする、制御装置。
【請求項2】
前記評価関数は、前記第2の距離に基づいて、前記第1の距離が小さくなるに従って前記出力値が大きくなる度合いが調整され、前記第2の距離が小さくなるに従って、当該度合いが大きくなり、前記第2の距離が大きくなるに従って、当該度合いが小さくなることを特徴とする、請求項1に記載の制御装置。
【請求項3】
前記評価関数は、分子が前記経過時間であり、分母が、前記第1の距離を底とし、前記第2の距離に基づいた関数をべき指数としたべき乗であることを特徴とする、請求項2に記載の制御装置。
【請求項4】
前記優先度マップ生成部が生成した優先度マップに基づいて、前記制御対象機器に対する制御ベクトルを算出する制御ベクトル算出部をさらに備え、
前記制御実行部は、前記制御ベクトル算出部が生成した制御ベクトルに基づいて、前記制御対象機器を制御することを特徴とする、請求項1から請求項3の何れか1項に記載の制御装置。
【請求項5】
前記制御対象機器情報取得部が取得した制御対象機器情報に基づいて、前記AGEマップを生成するAGEマップ生成部をさらに備えていることを特徴とする、請求項1から請求項4の何れか1項に記載の制御装置。
【請求項6】
請求項1から請求項5の何れか1項に記載の制御装置を備えていることを特徴とする、制御対象機器。
【請求項7】
制御対象である制御対象機器に関する制御対象機器情報と、他の制御装置によって制御される非制御対象機器に関する非制御対象機器情報とに基づいて、当該制御対象機器が複数の領域セルに区分された探索エリアを探索するように当該制御対象機器を制御する、制御対象機器の制御方法であって、
前記制御対象機器の位置を少なくとも含む制御対象機器情報を取得する制御対象機器情報取得ステップと、
前記非制御対象機器の位置を少なくとも含む非制御対象機器情報を取得する非制御対象機器情報取得ステップと、
前記制御対象機器又は前記非制御対象機器が最後に領域セルに滞在した時刻からの経過時間を領域セル毎に示すAGEマップ、前記制御対象機器情報取得ステップで取得した制御対象機器情報が示す制御対象機器の位置、及び、前記非制御対象機器情報取得ステップで取得した非制御対象機器情報が示す非制御対象機器の位置に基づいて、前記制御対象機器が領域セルを探索する優先度を領域セル毎に示す優先度マップを生成する優先度マップ生成ステップと、
前記優先度マップ生成ステップで生成した優先度マップに基づいて、前記制御対象機器を制御する制御実行ステップと、を含み、
前記優先度マップ生成ステップは、評価関数の出力値を前記優先度とし、
前記評価関数は、領域セル毎に、前記経過時間が大きくなるに従って前記出力値が大きくなり、前記制御対象機器の位置から領域セルの位置までの第1の距離が小さくなるに従って前記出力値が大きくなり、前記制御対象機器の位置から前記非制御対象機器の位置までの第2の距離に基づいて、前記第1の距離が前記出力値に与える影響が相対的に変化することを特徴とする、制御対象機器の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御対象機器を制御する制御装置に関する。
【背景技術】
【0002】
防衛、防災、セキュリティ又は清掃等の分野において、監視作業、観測作業、又は保守作業等は、高い危険度を有し且つ長時間の作業であることが一般的である。そのため、これらの分野における監視作業、観測作業、又は保守作業等に対して、無人機の活用が検討されている。通常、無人機のセンシング範囲には限界があるため、複数の無人機が協調動作により作業を効率的に実現するための開発が盛んに行われている。
【0003】
例えば、非特許文献1では、無人機群を構成する少なくとも1機の無人機を制御する、鳥の行動モデルを拡張した制御アルゴリズムを用いた制御装置が提案されている。当該制御装置は、探索エリアを微小領域セルに区切り、その領域セル毎に評価関数を計算して優先度を求めた後、制御対象機器が最も優先度の高い領域セルを探索するように当該制御対象機器を制御する。その評価関数の変数は、1)制御対象機器の位置ベクトル、2)制御対象機器から領域セルまでの位置ベクトル、及び3)制御対象機器等が最後にその領域セルに滞在した時刻からの経過時間の3つである。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】W. Yuan et al., “Semi-Flocking-Controlled Mobile Sensor Networks for Dynamic Area Coverage and Multiple Target Tracking,” IEEE SENSORS JOURNAL, VOL.18, No.21, Nov 1, 2018.
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述の非特許文献1に記載の制御装置による制御では、制御対象機器と、他の制御装置によって制御されている非制御対象機器とが近づいた場合、これらの機器が同一の領域セルを同時に探索してしまうことがあり、探索任務が効率的に行えないという問題がある。
【0006】
この発明は、上記のような問題点を解決するためになされたものであり、制御対象機器と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制する技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
この発明に係る制御装置は、制御対象である制御対象機器に関する制御対象機器情報と、他の制御装置によって制御される非制御対象機器に関する非制御対象機器情報とに基づいて、当該制御対象機器が複数の領域セルに区分された探索エリアを探索するように当該制御対象機器を制御する制御装置であって、制御対象機器の位置を少なくとも含む制御対象機器情報を取得する制御対象機器情報取得部と、非制御対象機器の位置を少なくとも含む非制御対象機器情報を取得する非制御対象機器情報取得部と、制御対象機器又は非制御対象機器が最後に領域セルに滞在した時刻からの経過時間を領域セル毎に示すAGEマップ、制御対象機器情報取得部が取得した制御対象機器情報が示す制御対象機器の位置、及び、非制御対象機器情報取得部が取得した非制御対象機器情報が示す非制御対象機器の位置に基づいて、制御対象機器が領域セルを探索する優先度を領域セル毎に示す優先度マップを生成する優先度マップ生成部と、優先度マップ生成部が生成した優先度マップに基づいて、前記制御対象機器を制御する制御実行部と、を備え、優先度マップ生成部は、評価関数の出力値を前記優先度とし、評価関数は、領域セル毎に、経過時間が大きくなるに従って出力値が大きくなり、制御対象機器の位置から領域セルの位置までの第1の距離が小さくなるに従って出力値が大きくなり、制御対象機器の位置から非制御対象機器の位置までの第2の距離に基づいて、第1の距離が出力値に与える影響が相対的に変化する
【発明の効果】
【0008】
この発明によれば、制御対象機器と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができる。
【図面の簡単な説明】
【0009】
図1】実施の形態1に係る制御対象機器の構成を示すブロック図である。
図2】実施の形態1に係る制御装置による制御対象機器の制御方法を示すフローチャートである。
図3】実施の形態1に係る制御装置による制御対象機器の制御方法におけるステップST4の詳細を示すフローチャートである。
図4】実施の形態1に係る制御装置による制御対象機器の制御方法におけるステップST8の詳細を示すフローチャートである。
図5】実施の形態1に係る制御対象機器が探索する探索エリアのAGEマップを示す図である。
図6】実施の形態1に係る制御対象機器の通信部と非制御対象機器の通信部とが互いに無線通信を行っている様子を示す図である。
図7】実施の形態1に係る制御対象機器が生成した優先度マップを示す図である。
図8】実施の形態1に係る制御対象機器及び複数の非制御対象機器を含むシステムを示す図である。
図9】実施の形態1に係る制御装置が評価関数を用いて優先度を算出する場合の具体例を説明するための図である。
図10図10Aは、制御装置の機能を実現するハードウェア構成を示すブロック図である。図10Bは、制御装置の機能を実現するソフトウェアを実行するハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【0010】
以下、この発明をより詳細に説明するため、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
図1は、実施の形態1に係る制御装置1を備えている制御対象機器100の構成を示すブロック図である。図1が示すように、制御対象機器100は、センサ2、通信部3、記憶部4、制御装置1、及び駆動部5を備えている。制御装置1は、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18を備えている。
【0011】
制御装置1は、制御対象である制御対象機器100に関する制御対象機器情報と、他の制御装置によって制御される非制御対象機器に関する非制御対象機器情報とに基づいて、制御対象機器100が探索エリアを探索するように制御する。
【0012】
なお、実施の形態1では、制御対象機器100が探索する対象である探索エリアは、複数の領域セルに区分される。また、当該複数の領域セルは、後述するAGEマップにおいて、個々に、後述するAGE及び優先度がそれぞれ対応付けられる。また、実施の形態1では、各領域セルの位置ベクトルは、記憶部4に記憶されているものとする。
【0013】
センサ2は、制御対象機器100周囲の環境を検知することにより制御対象機器100に関する制御対象機器情報を取得する。センサ2は、取得した制御対象機器情報を制御対象機器情報取得部11に出力する。センサ2は、例えば、制御対象機器100の位置を検出するGPS、又は制御対象機器100の速度を検出する速度検出器等である。制御対象機器情報は、少なくとも、制御対象機器100の位置を含む。
【0014】
なお、本明細書において、簡略化のため、「制御対象機器100の位置に関する位置情報」を単に制御対象機器100の位置と呼称する。また、制御対象機器情報は、例えば、制御対象機器100の速度等をさらに含む。
【0015】
通信部3は、制御装置1以外の他の制御装置の通信部と無線通信を行い、情報の送受信を行う。ここにおける他の制御装置は、複数であり得る。より詳細には、通信部3は、他の制御装置が制御する非制御対象機器に関する非制御対象機器情報を他の制御装置の通信部から受信する。非制御対象機器情報は、少なくとも、非制御対象機器の位置を含む。
【0016】
なお、通信部3は、現時点の非制御対象機器の位置のみならず、過去に非制御対象機器のセンサが取得した位置と、何ステップ前に当該センサが取得した位置であるかを示す情報とが組み合わさった情報を、他の制御装置の通信部から受信してもよい。
【0017】
また、実施の形態1では、通信部3は、他の制御装置によって生成されたAGEマップを、他の制御装置の通信部からさらに受信する。通信部3は、受信した非制御対象機器情報及び受信AGEマップを、非制御対象機器情報取得部12に出力する。
【0018】
なお、本明細書において、通信部3が受信するAGEマップを、受信AGEマップと呼称する。受信AGEマップ及び後述する生成AGEマップにおける「AGE」とは、制御対象機器100又は非制御対象機器が最後に領域セルに滞在した時刻からの経過時間を意味する。受信AGEマップ及び後述する生成AGEマップにおける「AGEマップ」とは、AGEを、上述の領域セル毎に示す情報を意味する。
【0019】
より詳細には、AGEは、AGEマップにおいて、各領域セルに設定された値であり、例えば、制御対象機器100又は非制御対象機器のいずれかの機器に搭載されたセンサが最後に領域セルの位置を観測した時刻からの経過時間を示す値である。実施の形態1では、当該値は、1タイムステップを単位とする値である。1タイムステップとは、後述するAGEマップ生成部15がAGEマップを更新する時間間隔の単位を意味する。1タイムステップは、例えば、予め設定された時間間隔である。
【0020】
また、通信部3は、後述する制御対象機器情報取得部11から制御対象機器情報を取得し、取得した制御対象機器情報を、他の制御装置の通信部に送信する。上述の通り、当該制御対象機器情報は、少なくとも、制御対象機器100の位置を含む。
【0021】
なお、通信部3は、現時点の制御対象機器100の位置のみならず、過去にセンサ2が取得した位置を、何ステップ前にセンサ2が取得した位置であるかを示す情報と組み合わせて、バッファ等に蓄積し、適宜、他の制御装置の通信部に送信してもよい。また、実施の形態1では、通信部3は、後述するAGEマップ生成部15が生成したAGEマップを、他の制御装置の通信部にさらに送信する。
【0022】
制御対象機器情報取得部11は、センサ2から、制御対象機器情報を取得する。制御対象機器情報取得部11は、取得した制御対象機器情報を通信部3及び情報処理部13に出力する。
【0023】
非制御対象機器情報取得部12は、通信部3から、非制御対象機器情報を取得する。非制御対象機器情報取得部12は、取得した非制御対象機器情報を情報処理部13に出力する。また、実施の形態1では、非制御対象機器情報取得部12は、受信AGEマップを通信部3から取得する。非制御対象機器情報取得部12は、取得した受信AGEマップをAGEマップ生成部15に出力する。
【0024】
情報処理部13は、制御対象機器情報取得部11から取得した制御対象機器情報と、非制御対象機器情報取得部12から取得した非制御対象機器情報とに対して、後述するAGEマップ生成部15、優先度マップ生成部16及び制御ベクトル算出部17がそれぞれ計算処理可能な形式とする処理を行う。
【0025】
より詳細には、情報処理部13は、制御対象機器情報が示す制御対象機器100の位置に基づいて、制御対象機器100の位置ベクトルを算出する。情報処理部13は、制御対象機器100の位置ベクトルを少なくとも含む処理済の制御対象機器情報をAGEマップ生成部15、優先度マップ生成部16及び制御ベクトル算出部17にそれぞれ出力する。
【0026】
また、情報処理部13は、非制御対象機器情報取得部12から取得した非制御対象機器情報が示す非制御対象機器の位置に基づいて、非制御対象機器101の位置ベクトルを算出する。情報処理部13は、非制御対象機器の位置ベクトルを含む処理済の非制御対象機器情報を優先度マップ生成部16及び制御ベクトル算出部17にそれぞれ出力する。
【0027】
AGEマップ生成部15は、制御対象機器情報取得部11が取得した制御対象機器情報に基づいて、AGEマップを生成する。当該AGEマップは、上述の通り、制御対象機器100又は非制御対象機器が最後に領域セルに滞在した時刻からの経過時間を領域セル毎に示す。AGEマップ生成部15は、生成したAGEマップを記憶部4に記憶させる。なお、本明細書において、AGEマップ生成部15が生成したAGEマップを、「生成AGEマップ」と呼称する。
【0028】
AGEマップ生成部15の構成についてより詳細には、実施の形態1では、AGEマップ生成部15は、時間の経過を示す情報と、情報処理部13から取得した制御対象機器100の位置ベクトルと、非制御対象機器情報取得部12から取得した受信AGEマップと、後述する情報出力部14から取得した1タイムステップ前の生成AGEマップと、に基づいて、領域セル毎にAGEを算出し、生成AGEマップを生成する。
【0029】
また、実施の形態1では、通信部3が他の制御装置の通信部から受信AGEマップを受信し、AGEマップ生成部15が受信AGEマップに基づいて生成AGEマップを生成する構成について説明するが、通信部3は、受信AGEマップを受信せずに、AGEマップ生成部15は、受信AGEマップに基づかずに生成AGEマップを生成してもよい。つまり、制御装置1は、AGEマップを他の制御装置と共有せずに、単独で生成してもよい。
【0030】
AGEマップ生成部15の構成についてさらに詳細には、実施の形態1では、AGEマップ生成部15は、制御対象機器情報が示す制御対象機器100の位置に基づいて、制御対象機器100が上述の複数の領域セルのうちの何れかに滞在したか否かを判定する。そして、AGEマップ生成部15は、制御対象機器100が複数の領域セルのうちの何れかに滞在したと判定した場合、生成AGEマップにおいて対応する領域セルのAGEの値を下げることにより生成AGEマップを更新する。より詳細には、AGEマップ生成部15は、制御対象機器100が最後に該当の領域セルに滞在した時刻から現在時刻までの経過時間に対応するAGEの値まで、生成AGEマップにおいて、当該該当の領域セルのAGEの値を下げる。
【0031】
また、実施の形態1では、AGEマップ生成部15は、受信AGEマップにおいて、複数の領域セルのうちの何れかのAGEが更新されているか否かを判定する。AGEマップ生成部15は、複数の領域セルのうちの何れかのAGEが更新されていると判定した場合、更新されているAGEに基づいて、生成AGEマップにおいて対応する領域セルのAGEの値を下げることにより生成AGEマップを更新する。
また、実施の形態1では、AGEマップ生成部15は、生成した生成AGEマップにおいて、1タイムステップ毎に、全ての領域セルの各AGEの値に「1」を加算する。
【0032】
情報出力部14は、記憶部4に記憶された生成AGEマップを読み込み、読み込んだAGEマップをAGEマップ生成部15に出力する。また、情報出力部14は、読み込んだ生成AGEマップを、通信部3を介して他の制御装置の通信部に出力する。情報出力部14が生成AGEマップを通信部3を介して他の制御装置の通信部に出力するタイミングは、適宜設定可能である。当該タイミングの例として、予め設定されたタイミング、又は他の制御装置から要求を受けたタイミング等が挙げられる。
【0033】
優先度マップ生成部16は、AGEマップ、制御対象機器情報取得部11が取得した制御対象機器情報が示す制御対象機器100の位置、及び、非制御対象機器情報取得部12が取得した非制御対象機器情報が示す非制御対象機器の位置に基づいて、制御対象機器100が領域セルを探索する優先度を領域セル毎に示す優先度マップを生成する。なお、実施の形態1では、当該優先度が高いほど、制御対象機器100が対応する領域セルを探索するべき度合いが高いものとする。
【0034】
より詳細には、実施の形態1では、優先度マップ生成部16は、AGEマップ生成部15が記憶部4に記憶させた生成AGEマップ、記憶部4に記憶されている各領域セルの位置ベクトル、並びに、情報処理部13から取得した制御対象機器100の位置ベクトル及び非制御対象機器101の位置ベクトルに基づいて、優先度マップを生成する。
【0035】
さらに詳細には、優先度マップ生成部16は、評価関数の出力値を優先度とする。当該評価関数は、領域セル毎に、AGEが大きくなるに従って出力値が大きくなり、制御対象機器100の位置から領域セルの位置までの第1の距離が小さくなるに従って出力値が大きくなる。これを具体的に説明すると、当該評価関数は、制御対象機器100又は非制御対象機器が対応する領域セルに最後に滞在した時刻からの経過時間が長くなるに従って出力値が大きくなり、制御対象機器100が対応する領域セルに近づくに従って出力値が大きくなる。
【0036】
また、当該評価関数は、制御対象機器100の位置から非制御対象機器101の位置までの第2の距離に基づいて、第1の距離が出力値に与える影響が相対的に変化する。例えば、当該評価関数は、第2の距離が小さくなるに従って、第1の距離が出力値に与える影響が大きくなることにより、第1の距離が出力値に与える影響が相対的に大きくなる。または、例えば、当該評価関数は、第2の距離が小さくなるに従って、AGEが出力値に与える影響が小さくなることにより、第1の距離が出力値に与える影響が相対的に大きくなる。
【0037】
さらに詳細には、当該評価関数は、第1の距離が小さくなるに従って出力値が大きくなる度合いが調整されている。なお、以下では、簡略化のため、「第1の距離が小さくなるに従って出力値が大きくなる度合い」を、単に「上記の度合い」と呼称する。
【0038】
さらに詳細には、当該評価関数は、第2の距離が小さくなるに従って、上記の度合いが大きくなり、第2の距離が大きくなるに従って、上記の度合いが小さくなる。これを具体的に説明すると、当該評価関数は、制御対象機器100が非制御対象機器に近づくに従って、制御対象機器100が対応する領域セルに近づくことにより出力値が大きくなる度合いが大きくなり、制御対象機器100が非制御対象機器から遠ざかるに従って、制御対象機器100が対応する領域セルに近づくことにより評価関数の出力値が大きくなる度合いが小さくなる。
【0039】
さらに詳細には、当該評価関数は、分子がAGEであり、分母が、第1の距離を底とし、第2の距離に基づいた関数をべき指数としたべき乗である。
より具体的には、実施形態1では、優先度マップ生成部16は、領域セル毎の優先度を算出する際に、予め定めておいた評価関数Jを用いる。
評価関数Jは、下記の式(1)で示される。
【0040】
上記の式(1)において、Aはある領域セルのAGEを示し、Xはその領域セルの位置ベクトルを示し、xは制御対象機器100の位置ベクトルを示し、xNは、通信可能な非制御対象機器のうち、制御対象機器100と距離が最も近い最近傍の非制御対象機器の位置ベクトルを示し、|| ||は、ユークリッドノルムを示す。つまり、||X-x||は、制御対象機器100の位置から領域セルの位置までの第1の距離を示し、||xN-x||は、制御対象機器100の位置から非制御対象機器の位置までの第2の距離を示す。上記の式(1)において、g(||xN-x||)のg( )は、広義単調減少関数である。なお、X及びxはそれぞれ規格化されており、||X-x||は、以下の式(2)の条件を満たすものとする。
0 < ||X - x|| < 1 …式(2)
【0041】
以上のような評価関数Jは、領域セル毎に、Aが大きくなるに従って出力値が大きくなり、第1の距離||X-x||が小さくなるに従って出力値が大きくなる。また、当該評価関数Jは、第2の距離||xN-x||に基づいて、第1の距離||X-x||が出力値に与える影響が相対的に変化する。
より詳細には、評価関数Jは、第1の距離||X-x||が小さくなるに従って出力値が大きくなる度合いが調整されている。さらに詳細には、評価関数Jは、第2の距離||xN-x||が小さくなるに従って、上記の度合いが大きくなり、第2の距離||xN-x||が大きくなるに従って、上記の度合いが小さくなる。
さらに詳細には、評価関数Jは、分子がAGEであり、分母が、第1の距離||X-x||を底とし、第2の距離||xN-x||に基づいた関数g(||xN-x||)をべき指数としたべき乗である。
【0042】
以上のような評価関数Jを具体的に説明すると、制御対象機器100と最近傍の非制御対象機器101とが近づき、第2の距離||xN-x||が小さくなるに従って、g(||xN-x||)は、広義単調減少関数であることから大きくなる。これにより、評価関数Jは、上記の度合いが大きくなる。よって、制御対象機器100と最近傍の非制御対象機器101とが近づくに従って、優先度マップが示す各領域セルは、制御対象機器100に近ければ近いほど、優先度が高くなりやすくなる。つまり、制御対象機器100は、自身により近い領域セルを優先して探索するようになる。
【0043】
そして、非制御対象機器も、上記のような評価関数Jに基づいた制御と同様の制御を受けた場合、自身により近い領域セルを優先して探索するようになる。このように、制御対象機器100と非制御対象機器とは、互いに近づいた場合、それぞれが、自身により近い領域セルを優先して探索するようになるため、同一の領域セルを探索してしまう可能性が低くなる。
【0044】
一方で、制御対象機器100と最近傍の非制御対象機器101とが遠ざかり、第2の距離||xN-x||が大きくなるに従って、g(||xN-x||)は、広義単調減少関数であることから小さくなる。これにより、評価関数Jは、上記の度合いが小さくなる。よって、制御対象機器100と最近傍の非制御対象機器101とが遠ざかるに従って、各領域セルは、AGEが大きければ大きいほど、優先度が高くなりやすくなる。つまり、制御対象機器100は、AGEがより大きい領域セルを優先して探索するようになる。
【0045】
なお、通信部3が通信可能な非制御対象機器を検出できず、非制御対象機器の位置を示す非制御対象機器情報を受信できない場合には、優先度マップ生成部16は、評価関数Jのg(||xN-x||)を、第1の距離||X-x||が評価関数Jの出力値に与える影響が相対的に小さくなるのに十分な小さい値に置き換えてもよい。当該値は、例えば、制御対象機器100と最近傍の非制御対象機器であるドローンとの距離が通信可能距離の限界に一致するときのg(||xN-x||)の値をαとしたとき、α以下の値であり得る。
【0046】
また、上記の評価関数Jに入力される第2の距離||xN−x||のxNを最近傍の非制御対象機器の位置ベクトルとしたが、評価関数Jにその他の非制御対象機器の位置ベクトルを任意の個数だけ変数として加えてもよい。
【0047】
制御ベクトル算出部17は、優先度マップ生成部16が生成した優先度マップに基づいて、制御対象機器100に対する制御ベクトルを算出する。なお、制御ベクトルとは、後述する制御実行部18による制御により駆動部5が制御対象機器100を移動させる方向及び距離を示すベクトルを意味する。
【0048】
まず、制御ベクトルを算出するために、制御ベクトル算出部17は、優先度マップ生成部16が生成した優先度マップを参照して、優先度マップに含まれる複数の領域セルのうち、優先度が最も大きい領域セルを検出する。また制御ベクトル算出部17は、検出した領域セルを、制御対象機器100が向かうべき目的の領域セルに設定する。
【0049】
次に、制御ベクトル算出部17は、導出した目的の領域セルの位置ベクトルと、情報処理部13から取得した処理済の制御対象機器情報が示す制御対象機器100の位置ベクトルとに基づいて、制御対象機器100の位置から目的の領域セルの位置までの方向と距離を示す探索方向ベクトルを算出する。より詳細には、制御ベクトル算出部17は、目的の領域セルの位置ベクトルから、制御対象機器100の位置ベクトルを減算することにより制御対象機器100の位置から目的の領域セルの位置までのベクトルを算出し、当該ベクトルの長さを1とすることにより探索方向ベクトルを算出する。
【0050】
また、制御ベクトル算出部17は、情報処理部13から取得した処理済の制御対象機器情報が示す制御対象機器100の位置ベクトルと処理済の非制御対象機器情報が示す非制御対象機器の位置ベクトルとに基づいて、制御対象機器100と非制御対象機器との衝突を回避するための作用力を示す斥力ベクトルを算出する。
【0051】
より詳細には、通信部3が通信可能な非制御対象機器を検出できる場合に、制御ベクトル算出部17は、制御対象機器100と当該通信可能な非制御対象機器との距離に応じた斥力を設定する。当該斥力は、例えば、当該距離をxとしたフックの法則F=-kx(kは定数)のような関数の出力値として算出される。制御ベクトル算出部17は、設定した斥力、並びに、情報処理部13から取得した処理済の制御対象機器情報及び処理済の非制御対象機器情報に基づいた制御対象機器100と非制御対象機器との位置関係とに基づいて、斥力ベクトルを算出する。
【0052】
また、制御ベクトル算出部17は、障害物に関する情報に基づいて、制御対象機器100が障害物から離れるための作用力を示す障害物ベクトルを算出する。当該障害物は、例えば、探索エリア内に存在する壁、又は進入禁止領域である。障害物に関する情報は、障害物の位置と共に、AGEマップに予め登録されていてもよいし、記憶部4に予め記憶されていてもよい。
【0053】
より詳細には、制御ベクトル算出部17は、障害物の情報を参照し、制御対象機器100が障害物が存在する位置に近づいたか否かを判定する。そして、制御ベクトル算出部17は、制御対象機器100が、障害物が存在する位置に近づいたと判定した場合に、上述した斥力ベクトルの算出方法と同様の方法に基づいて、制御対象機器100が障害物から離れるための作用力を示す障害物ベクトルを算出する。
【0054】
また、制御ベクトル算出部17は、情報処理部13から取得した処理済の制御対象機器情報が示す制御対象機器100の位置ベクトル又は制御対象機器100の速度ベクトルに基づいて、制御対象機器100の速度が過大になるのを抑制するための作用力を示す速度調整ベクトルを算出する。
【0055】
当該速度調整ベクトルが示す作用力は、例えば、当該速度をvとしたF=-kv(kは定数)のような関数の出力値として算出される。または、制御ベクトル算出部17は、当該速度と当該作用力との対応を示す離散的なテーブルを参照して、当該作用力を算出してもよい。
【0056】
制御ベクトル算出部17は、上記の各ベクトル以外にも、制御対象機器100が探索する探索方向を調整する調整ベクトルを算出してもよい。そして、制御ベクトル算出部17は、算出した探索方向ベクトル、斥力ベクトル、障害物ベクトル及び速度調整ベクトルのそれぞれに重み付け係数を乗算し、乗算後の各ベクトルを加算することにより、制御ベクトルを算出する。当該重み付け係数は、探索方向ベクトル、斥力ベクトル、障害物ベクトル及び速度調整ベクトルの何れを重視するかによって予め設定される。制御ベクトル算出部17は、算出した制御ベクトルを制御実行部18に出力する。
【0057】
制御実行部18は、制御ベクトル算出部17から取得した制御ベクトルに基づいて、制御対象機器100を制御する。より詳細には、制御実行部18は、制御ベクトルが示す方向に、制御ベクトルが示す距離の分、駆動部5が制御対象機器100を移動させるように駆動部5を制御する。
【0058】
次に、実施の形態1に係る制御装置1による制御対象機器100の制御方法について図面を参照して説明する。図2は、実施の形態1に係る制御装置1による制御対象機器100の制御方法を示すフローチャートである。図2が示す制御対象機器100の制御方法が行われる前に、センサ2は、制御対象機器100周囲の環境を検知することにより制御対象機器100に関する制御対象機器情報を取得し、通信部3は、他の制御装置が制御する非制御対象機器に関する非制御対象機器情報と受信AGEマップとを他の制御装置の通信部から受信したものとする。なお、センサ2が取得する制御対象機器情報は、制御対象機器100の位置と、制御対象機器100周囲の画像とを含み、通信部3が受信する非制御対象機器情報は、非制御対象機器の位置を含むものとする。
【0059】
まず、図2が示すように、制御対象機器情報取得部11は、センサ2から、制御対象機器情報を取得する(ステップST1)。制御対象機器情報取得部11は、取得した制御対象機器情報を通信部3及び情報処理部13に出力する。
【0060】
次に、非制御対象機器情報取得部12は、通信部3から、非制御対象機器情報及び受信AGEマップを取得する(ステップST2)。非制御対象機器情報取得部12は、取得した非制御対象機器情報を情報処理部13に出力し、取得した受信AGEマップをAGEマップ生成部15に出力する。
【0061】
次に、ステップST3において、情報処理部13は、制御対象機器情報取得部11から取得した制御対象機器情報が示す制御対象機器100の位置に基づいて、制御対象機器100の位置ベクトルを算出する。また、ステップST3において、情報処理部13は、非制御対象機器情報取得部12から取得した非制御対象機器情報が示す非制御対象機器の位置に基づいて、非制御対象機器の位置ベクトルを算出する。
【0062】
情報処理部13は、制御対象機器100の位置ベクトルを含む処理済の制御対象機器情報をAGEマップ生成部15、優先度マップ生成部16及び制御ベクトル算出部17にそれぞれ出力し、非制御対象機器の位置ベクトルを含む処理済の非制御対象機器情報を優先度マップ生成部16及び制御ベクトル算出部17にそれぞれ出力する。また、次のステップST4の前に、情報出力部14は、1タイムステップ前の生成AGEマップを記憶部4から読み込み、AGEマップ生成部15に出力したものとする。
【0063】
次に、AGEマップ生成部15は、時間の経過情報と、情報処理部13から取得した制御対象機器100の位置ベクトルと、非制御対象機器情報取得部12から取得した受信AGEマップと、情報出力部14から取得した1タイムステップ前の生成AGEマップと、に基づいて、領域セル毎にAGEを算出し、現在のタイムステップの生成AGEマップを生成する(ステップST4)。
【0064】
次に、AGEマップ生成部15は、生成した生成AGEマップを記憶部4に記憶させる(ステップST5)。
次に、情報出力部14は、AGEマップ生成部15が記憶部4に記憶させた生成AGEマップを、通信部3を介して他の制御装置の通信部に出力する(ステップST6)。
【0065】
次に、優先度マップ生成部16は、AGEマップ生成部15が記憶部4に記憶させた生成AGEマップ、記憶部4が記憶している各領域セルの位置ベクトル、並びに、情報処理部13から取得した制御対象機器100の位置ベクトル及び非制御対象機器101の位置ベクトルに基づいて、優先度マップを生成する(ステップST7)。優先度マップ生成部16は、生成した優先度マップを制御ベクトル算出部17に出力する。
【0066】
次に、制御ベクトル算出部17は、情報処理部13から取得した制御対象機器100の位置ベクトルと、優先度マップ生成部16が生成した優先度マップとに基づいて、上述の探索方向ベクトルを算出する(ステップST8)。
【0067】
次に、制御ベクトル算出部17は、情報処理部13から取得した制御対象機器100の位置ベクトルに基づいて、上述の斥力ベクトル、障害物ベクトル及び速度調整ベクトルをそれぞれ算出する(ステップST9)。
【0068】
次に、制御ベクトル算出部17は、算出した探索方向ベクトル、斥力ベクトル、障害物ベクトル及び速度調整ベクトルに基づいて、上述の制御ベクトルを算出する(ステップST10)。制御ベクトル算出部17は、算出した制御ベクトルを制御実行部18に出力する。
【0069】
次に、制御実行部18は、制御ベクトル算出部17から取得した制御ベクトルに基づいて、制御対象機器100を制御する(ステップST11)。次に、制御装置1は、ステップST1の処理に戻り、ステップST1以降の処理を繰り返し実行する。
【0070】
次に、AGEマップ生成部15による上述のステップST4の詳細な処理動作について図面を参照して説明する。図3は、実施の形態1に係る制御装置1による制御対象機器100の制御方法におけるステップST4の詳細を示すフローチャートである。
【0071】
図3が示すように、AGEマップ生成部15は、前回のステップST4で生成し、前回のステップST5で記憶部4に記憶させた生成AGEマップを記憶部4から読み込み、読み込んだ生成AGEマップが生成又は更新されてから、予め設定された1タイムステップ経過したか否かを判定する(ステップST21)。
【0072】
AGEマップ生成部15は、1タイムステップ経過したと判定した場合(ステップST21のYES)、当該生成AGEマップにおける全ての領域セルの各AGEの値に「1」を加算する(ステップST22)。一方、AGEマップ生成部15は、1タイムステップ経過していないと判定した場合(ステップST21のNO)、ステップST23の処理に進む。
【0073】
ステップST21又はステップST22の次のステップとして、AGEマップ生成部15は、情報処理部13から取得した制御対象機器100の位置ベクトルに基づいて、制御対象機器100が存在する位置を認識し、制御対象機器100が上述の複数の領域セルのうちの何れかに滞在したか否か判定を行う(ステップST23)。
【0074】
AGEマップ生成部15は、制御対象機器100が上述の複数の領域セルのうちの何れかに滞在したと判定した場合(ステップST23のYES)、ステップST22で各AGEの値に「1」を加算した生成AGEマップ、又はステップST21で記憶部4から読み込んだ生成AGEマップにおいて、対応する領域セルのAGEの値を下げる(ステップST24)。一方、AGEマップ生成部15は、制御対象機器100が上述の複数の領域セルのうちの何れにも滞在していないと判定した場合(ステップST23のNO)、ステップST25の処理に進む。
【0075】
ステップST23又はステップST24の次のステップとして、AGEマップ生成部15は、情報処理部13から取得した受信AGEマップの情報を参照し、複数の領域セルのうちの何れかのAGEが更新されているか否かを判定する(ステップST25)。
【0076】
AGEマップ生成部15は、複数の領域セルのうちの何れかのAGEが更新されていると判定した場合(ステップST25のYES)、ステップST24でAGEの値を下げた生成AGEマップ、ステップST22で各AGEの値に「1」を加算した生成AGEマップ、又はステップST21で記憶部4から読み込んだ生成AGEマップにおいて、対応する領域セルのAGEの値を下げる(ステップST26)。
一方、AGEマップ生成部15は、複数の領域セルのうちの何れのAGEも更新されていないと判定した場合(ステップST25のNO)、上述のステップST5の処理に進む。
【0077】
ステップST25又はステップST26の次のステップとしての上述のステップST5において、AGEマップ生成部15は、ステップST26でAGEの値を下げた生成AGEマップ、ステップST24でAGEの値を下げた生成AGEマップ、ステップST22で各AGEの値に「1」を加算した生成AGEマップ、又はステップST21で記憶部4から読み込んだ生成AGEマップを記憶部4に記憶させる。
【0078】
次に、制御ベクトル算出部17による上述のステップST8の詳細な処理動作について図面を参照して説明する。図4は、実施の形態1に係る制御装置1による制御対象機器100の制御方法におけるステップST8の詳細を示すフローチャートである。
【0079】
図4が示すように、まず、制御ベクトル算出部17は、優先度マップ生成部16から取得した優先度マップを参照して、優先度マップに含まれる複数の領域セルのうち、優先度が最も大きい領域セルを検出する(ステップST31)。
【0080】
次に、制御ベクトル算出部17は、検出した領域セルを、制御対象機器100が向かうべき目的の領域セルに設定する(ステップST32)。
次に、制御ベクトル算出部17は、導出した目的の領域セルの位置ベクトルから、情報処理部13から取得した制御対象機器100の位置ベクトルを減算することにより制御対象機器100の位置から目的の領域セルの位置までのベクトルを算出する(ステップST33)。
【0081】
次に、制御ベクトル算出部17は、算出したベクトルの長さを1とすることにより探索方向ベクトルを算出する(ステップST34)。次に、制御ベクトル算出部17は、上述のステップST9の処理に進む。
【0082】
次に、実施の形態1に係る制御装置1による制御対象機器100の制御方法の具体例について図面を参照して説明する。なお、当該具体例では、制御対象機器100と複数の非制御対象機器101とが1つの探索エリアAを協調して巡回する場合を例にして説明する。なお、複数の非制御対象機器101は、それぞれ、制御対象機器100と同様の構成を有しているものとする。
【0083】
図5は、探索エリアAのAGEマップを示す図である。図6は、図5が示す制御対象機器100の通信部3と非制御対象機器101の通信部とが互いに無線通信を行っている様子を示す図である。図7は、図5が示す制御対象機器100が生成した優先度マップを示す図である。図8は、探索エリアAをそれぞれ探索する制御対象機器100及び複数の非制御対象機器101を含むシステムを示す図である。なお、図8では、図5が示す制御対象機器100と複数の非制御対象機器101との合計の数と異なり、制御対象機器100と複数の非制御対象機器101との合計の数が6である。つまり、制御対象機器100と複数の非制御対象機器101との合計の数は、特に限定はない。
【0084】
図5が示すように、探索エリアAは、グリッド状に複数の領域セルに区分されている。図5において、ドットは、制御対象機器100の位置又は非制御対象機器101の位置を示し、ドット周囲の点線は、制御対象機器100の通信部3又は非制御対象機器101の通信部が通信可能な範囲を示す。
【0085】
また、図5において、各領域セルの色の濃淡は、制御対象機器100のセンサ2又は非制御対象機器101のセンサが最後に領域セルの位置を観測した時刻からの経過時間であるAGEを示す。当該色の濃淡は、色が濃ければ濃いほど、AGEが大きいことを示しており、色が薄ければ薄いほど、AGEが小さいことを示している。例えば、図5が示す領域セルBと領域セルCの色の濃淡を比較すると、領域セルBの色が領域セルCの色よりも濃い。これは、領域セルBのほうが、領域セルCよりも、制御対象機器100のセンサ2又は非制御対象機器101のセンサによって領域セルの位置が観測されてからより長い時間が経過していることを示している。
【0086】
図6が示すように、制御対象機器100と非制御対象機器101とが互いに通信可能な範囲に入った場合、制御対象機器100の通信部3は、受信AGEマップDを、非制御対象機器101の制御装置の通信部から受信する。その際、制御対象機器100の通信部3は、非制御対象機器101に関する非制御対象機器情報を非制御対象機器101の制御装置の通信部からさらに受信する。
【0087】
また、制御対象機器100の通信部3は、上述のAGEマップ生成部15が生成した生成AGEマップEを、非制御対象機器101の制御装置の通信部に送信する。その際、制御対象機器100の通信部3は、制御対象機器100に関する制御対象機器情報を非制御対象機器101の制御装置の通信部にさらに送信する。また、一方で、制御対象機器100のセンサ2は、制御対象機器100周囲の環境を検知することにより制御対象機器100に関する制御対象機器情報を取得する。
【0088】
そして上述のステップST1において、制御対象機器情報取得部11は、センサ2から、制御対象機器情報を取得する。次に、上述のステップST2において、非制御対象機器情報取得部12は、通信部3から、受信AGEマップDを取得する。次に、ステップST3において、情報処理部13は、制御対象機器情報取得部11から取得した制御対象機器情報が示す制御対象機器100の位置に基づいて、制御対象機器100の位置ベクトルを算出する。
【0089】
次に、上述のステップST4において、AGEマップ生成部15は、時間の経過情報と、情報処理部13から取得した制御対象機器100の位置ベクトルと、非制御対象機器情報取得部12から取得した受信AGEマップDと、情報出力部14から取得した1タイムステップ前の生成AGEマップEと、に基づいて、領域セル毎にAGEを算出し、現在のタイムステップの生成AGEマップFを生成する。
【0090】
なお、当該具体例では、図6の生成AGEマップFにおける各領域セルの色の濃淡が示すように、生成AGEマップFの各領域セルは、生成AGEマップの対応する領域セル、及び受信AGEマップDの対応する領域セルのうち、AGEがより小さい領域セルが選択されて更新されたものである。
【0091】
次に、上述のステップST5において、AGEマップ生成部15は、生成した生成AGEマップFを記憶部4に記憶させる。次に、上述のステップST6において、情報出力部14は、AGEマップ生成部15が記憶部4に記憶させた生成AGEマップFを、通信部3を介して非制御対象機器101の制御装置の通信部に出力する。
【0092】
次に、上述のステップST6において、優先度マップ生成部16は、AGEマップ生成部15が記憶部4に記憶させた生成AGEマップF、記憶部4が記憶している各領域セルの位置ベクトル、並びに、情報処理部13から取得した制御対象機器100の位置ベクトル及び非制御対象機器101の位置ベクトルに基づいて、図7が示す優先度マップGを生成する。なお、図7において、各領域セルの色の濃淡は、色が濃ければ濃いほど、優先度が高いことを示す。
【0093】
次に、制御ベクトル算出部17は、情報処理部13から取得した制御対象機器100の位置ベクトルと、優先度マップ生成部16が生成した優先度マップGとに基づいて、図7の矢印が示す探索方向ベクトルを算出する。より詳細には、図7が示すように、制御ベクトル算出部17は、優先度マップGに含まれる複数の領域セルのうち、優先度が最も大きい領域セルを、目的の領域セルHに設定する。また、図7が示すように、制御ベクトル算出部17が算出する探索方向ベクトルは、制御対象機器100の位置から当該目的の領域セルHの位置に向かう方向のベクトルである。
【0094】
次に、制御ベクトル算出部17は、上述のステップST9及びステップST10を行うことにより、上述の制御ベクトルを算出する。次に、上述のステップST11において、制御実行部18は、制御ベクトル算出部17から取得した制御ベクトルに基づいて、制御対象機器100を制御する。これにより、制御対象機器100は、目的の領域セルの位置に移動するように制御される。
【0095】
なお、上記のような各ステップは、複数の非制御対象機器101の各制御装置においても行われる。上述のように、ステップST6で優先度マップ生成部16は、非制御対象機器101の位置に基づいて優先度マップGを生成する。非制御対象機器101の制御装置もまた、自身とは別の機器の位置に基づいて優先度マップを生成する。
【0096】
よって、図8に示すようなシステムでは、制御対象機器100の制御装置1及び複数の非制御対象機器101の各制御装置は、それぞれ、自身とは別の機器の位置に基づいて、優先度マップを生成し、当該優先度マップに基づいて、自身の機器を制御する。これにより、制御対象機器100の制御装置1及び複数の非制御対象機器101の各制御装置は、それぞれ、自身とは別の機器の位置に基づいて、制御対象機器100と非制御対象機器101とが同一の領域セルを同時に探索してしまうことを抑制することができ、探索任務を効率的に行うことができる。
【0097】
次に、上述のステップST6において優先度マップ生成部16が評価関数を用いて優先度を算出する場合の具体例を、図面を参照して説明する。図9は、優先度マップ生成部16が評価関数を用いて優先度を算出する場合の具体例を説明するための図である。
【0098】
上述の式(1)が示す評価関数Jの説明では、第2の距離||xN-x||が小さくなるに従って、第1の距離||X-x||が評価関数Jの出力値に与える影響が相対的に大きくなり、第2の距離||xN-x||が大きくなるに従って、AGEが評価関数Jの出力値に与える影響が相対的に大きくなる構成を説明した。以下では、当該構成を、図9を参照してより具体的に説明する。
【0099】
図9の(1)では、非制御対象機器101が制御対象機器100の通信部3の通信範囲外に存在する場合の例を示している。当該例では、AGEの値が1であり、制御対象機器100の位置から領域セルの位置までの第1の距離||X-x||が0.1である。また、制御対象機器100の位置から非制御対象機器101の位置までの第2の距離||xN-x||は、不明であるため、g(||xN-x||)が1に設定されている。
【0100】
図9の(2)では、非制御対象機器101が制御対象機器100の通信部3の通信範囲内且つ制御対象機器100のセンサ2のセンシング範囲外に存在する場合の例を示している。当該例においても、AGEの値が1であり、制御対象機器100の位置から領域セルの位置までの第1の距離||X-x||は0.1であるが、制御対象機器100の位置から非制御対象機器101の位置までの第2の距離||xN-x||に基づいて、g(||xN-x||)が2に設定されている。
【0101】
図9の(3)では、非制御対象機器101が制御対象機器100のセンサ2のセンシング範囲内に存在する場合の例を示している。当該例においても、AGEの値が1であり、制御対象機器100の位置から領域セルの位置までの第1の距離||X-x||は0.1であるが、制御対象機器100の位置から非制御対象機器101の位置までの第2の距離||xN-x||に基づいて、g(||xN-x||)が3に設定されている。
【0102】
つまり、これらの例では、AGEの値と第1の距離||X-x||とは、それぞれ共通であるが、第2の距離||xN-x||がそれぞれ異なる。上述の通り、g(||xN-x||)は広義単調減少関数であることから、図9の(1)の例における第2の距離は、図9の(2)の例における第2の距離よりも大きく、図9の(2)の例における第2の距離は、図9の(3)の例における第2の距離よりも大きい。
【0103】
以上のように評価関数Jの各パラメータを設定した場合、図9の(1)の例では、評価関数Jの出力値は、10となり、図9の(2)の例では、評価関数Jの出力値は、100となり、図9の(3)の例では、評価関数Jの出力値は、1000となる。つまり、評価関数Jは、第2の距離||xN-x||が小さくなるに従って、出力値が高くなることがわかる。
【0104】
ここで、これらの例における第1の距離||X-x||が0.1から0.01に変化した場合を想定すると、図9の(1)の例では、評価関数Jの出力値は、1から100となり、その差は99である。図9の(2)の例では、評価関数Jの出力値は、100から10000となり、その差は、9900である。図9の(3)の例では、評価関数Jの出力値は、1000から1000000となる。その差は、999000である。
【0105】
つまり、第2の距離||xN-x||が小さくなるに従って、第1の距離||X-x||が評価関数Jの出力値に与える影響が相対的に大きくなり、第1の距離が小さくなるに従って評価関数Jの出力値が大きくなる度合いが大きくなることがわかる。また、反対に言えば、第2の距離||xN-x||が大きくなるに従って、第1の距離||X-x||が評価関数Jの出力値に与える影響が相対的に小さくなり、第1の距離||X-x||が小さくなるに従って評価関数Jの出力値が大きくなる度合いが小さくなることがわかる。
【0106】
つまり、上述のステップST6において優先度マップ生成部16が上記のような評価関数Jを用いて優先度を算出した場合、制御対象機器100と非制御対象機器101とが近づくに従って、優先度マップが示す各領域セルは、制御対象機器100に近ければ近いほど、優先度が高くなりやすくなる。つまり、制御対象機器100は、自身により近い領域セルを優先して探索するようになる。
【0107】
そして、非制御対象機器101も、上記のような評価関数Jに基づいた制御と同様の制御を受けた場合、自身により近い領域セルを優先して探索するようになる。このように、制御対象機器100と非制御対象機器とは、互いに近づいた場合、それぞれが、自身により近い領域セルを優先して探索するようになるため、同一の領域セルを探索してしまう可能性が低くなる。
【0108】
一方で、通信可能な非制御対象機器101が存在しない場合など、制御対象機器100と最近傍の非制御対象機器101とが遠ざかるに従って、各領域セルは、AGEが大きければ大きいほど、優先度が高くなりやすくなる。つまり、制御対象機器100は、AGEがより大きい領域セルを優先して探索するようになる。
【0109】
制御装置1における、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18のそれぞれの機能は、処理回路により実現される。すなわち、制御装置1は、図2に示したステップST1からステップST11までの処理と図3に示したステップST21からステップST26までの処理と図4に示したステップST31からステップST34までの処理とを実行するための処理回路を備える。この処理回路は、専用のハードウェアであってもよいが、メモリに記憶されたプログラムを実行するCPU(Central Processing Unit)であってもよい。
【0110】
図10Aは、制御装置1の機能を実現するハードウェア構成を示すブロック図である。図10Bは、制御装置1の機能を実現するソフトウェアを実行するハードウェア構成を示すブロック図である。図10A及び図10Bに示す検知装置111は、上述のセンサ2として機能する。図10A及び図10Bに示す送受信装置112は、上述の通信部3として機能する。図10A及び図10Bに示す記憶装置113は、上述の記憶部4として機能する。図10A及び図10Bに示す駆動装置114は、上述の駆動部5として機能する。
【0111】
上記処理回路が図10Aに示す専用のハードウェアの処理回路110である場合、処理回路110は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field−Programmable Gate Array)又はこれらを組み合わせたものが該当する。
【0112】
制御装置1における、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18のそれぞれの機能を別々の処理回路で実現してもよいし、これらの機能をまとめて1つの処理回路で実現してもよい。
【0113】
上記処理回路が図10Bに示すプロセッサ115である場合、制御装置1における、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18のそれぞれの機能は、ソフトウェア、ファームウェア又はソフトウェアとファームウェアとの組み合わせによって実現される。
なお、ソフトウェア又はファームウェアは、プログラムとして記述されてメモリ116に記憶される。
【0114】
プロセッサ115は、メモリ116に記憶されたプログラムを読み出して実行することにより、制御装置1における、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18のそれぞれの機能を実現する。すなわち、制御装置1は、プロセッサ115によって実行されるときに、図2に示したステップST1からステップST11までの処理と図3に示したステップST21からステップST26までの処理と図4に示したステップST31からステップST34までの処理とが結果的に実行されるプログラムを記憶するためのメモリ116を備える。
【0115】
これらのプログラムは、制御装置1における、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18の手順又は方法をコンピュータに実行させる。メモリ116は、コンピュータを、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18として機能させるためのプログラムが記憶されたコンピュータ可読記憶媒体であってもよい。
【0116】
メモリ116には、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically−EPROM)などの不揮発性又は揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVDなどが該当する。
【0117】
制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15、優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18のそれぞれの機能について一部を専用のハードウェアで実現し、一部をソフトウェア又はファームウェアで実現してもよい。
【0118】
例えば、制御対象機器情報取得部11、非制御対象機器情報取得部12、情報処理部13、情報出力部14、AGEマップ生成部15は、専用のハードウェアとしての処理回路で機能を実現する。優先度マップ生成部16、制御ベクトル算出部17、及び制御実行部18については、プロセッサ115がメモリ116に記憶されたプログラムを読み出して実行することにより機能を実現してもよい。
このように、処理回路は、ハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせにより上記機能のそれぞれを実現することができる。
【0119】
以上のように、実施の形態1に係る制御装置1は、制御対象である制御対象機器100に関する制御対象機器情報と、他の制御装置によって制御される非制御対象機器に関する非制御対象機器情報とに基づいて、当該制御対象機器100が複数の領域セルに区分された探索エリアを探索するように当該制御対象機器100を制御する制御装置1であって、制御対象機器100の位置を少なくとも含む制御対象機器情報を取得する制御対象機器情報取得部11と、非制御対象機器101の位置を少なくとも含む非制御対象機器情報を取得する非制御対象機器情報取得部12と、制御対象機器100又は非制御対象機器101が最後に領域セルに滞在した時刻からの経過時間を領域セル毎に示すAGEマップ、制御対象機器情報取得部11が取得した制御対象機器情報が示す制御対象機器100の位置、及び、非制御対象機器情報取得部12が取得した非制御対象機器情報が示す非制御対象機器101の位置に基づいて、制御対象機器100が領域セルを探索する優先度を領域セル毎に示す優先度マップを生成する優先度マップ生成部16と、優先度マップ生成部16が生成した優先度マップに基づいて、制御対象機器100を制御する制御実行部18と、を備えている。
【0120】
上記の構成によれば、非制御対象機器の位置に基づいて優先度マップを生成し、当該優先度マップに基づいて制御対象機器100を制御する。これにより、適宜、非制御対象機器の位置に基づいて、非制御対象機器の制御装置が用いる優先度マップの優先度とは異なる優先度を有する優先度マップを生成することで、制御対象機器100と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができる。よって、探索任務を効率的に行うことができる。
【0121】
また、実施の形態1に係る制御装置1の優先度マップ生成部16は、評価関数の出力値を優先度とし、評価関数は、領域セル毎に、経過時間が大きくなるに従って出力値が大きくなり、制御対象機器100の位置から領域セルの位置までの第1の距離が小さくなるに従って出力値が大きくなり、制御対象機器100の位置から非制御対象機器101の位置までの第2の距離に基づいて、第1の距離が出力値に与える影響が相対的に変化する。
【0122】
上記の構成によれば、評価関数は、制御対象機器100又は非制御対象機器が対応する領域セルに最後に滞在した時刻からの経過時間が長くなるに従って出力値が大きくなり、制御対象機器100が対応する領域セルに近づくに従って出力値が大きくなる。また、評価関数は、制御対象機器100と非制御対象機器101とが近づくに従って、制御対象機器100の位置から領域セルの位置までの第1の距離が出力値に与える影響が相対的に変化する。これにより、適宜、制御対象機器100と非制御対象機器101とが近づく場合に、優先度が、非制御対象機器の制御装置が用いる優先度マップの優先度とは異なる優先度マップを生成することで、制御対象機器100と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができる。よって、探索任務を効率的に行うことができる。
【0123】
また、実施の形態1に係る制御装置1の優先度マップ生成部16が用いる評価関数は、第2の距離に基づいて、第1の距離が小さくなるに従って出力値が大きくなる度合いが調整され、前記第2の距離が小さくなるに従って、当該度合いが大きくなり、前記第2の距離が大きくなるに従って、当該度合いが小さくなる。
【0124】
上記の構成によれば、制御対象機器100が非制御対象機器に近づくに従って、制御対象機器100が対応する領域セルに近づくことにより出力値が大きくなる度合いが大きくなる。これにより、制御対象機器100と最近傍の非制御対象機器とが近づくに従って、優先度マップが示す各領域セルは、制御対象機器100に近ければ近いほど、優先度が高くなりやすくなる。つまり、制御対象機器100は、自身により近い領域セルを優先して探索するようになる。よって、制御対象機器100と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができ、探索任務を効率的に行うことができる。
【0125】
また、実施の形態1に係る制御装置1の優先度マップ生成部16が用いる評価関数は、分子が経過時間であり、分母が、第1の距離を底とし、第2の距離に基づいた関数をべき指数としたべき乗である。
上記の構成によれば、上述の評価関数に関する各構成及び各効果を好適に実現することができる。
【0126】
また、実施の形態1に係る制御装置1は、優先度マップ生成部16が生成した優先度マップに基づいて、制御対象機器100に対する制御ベクトルを算出する制御ベクトル算出部17をさらに備え、制御実行部18は、制御ベクトル算出部17が生成した制御ベクトルに基づいて、制御対象機器100を制御する。
【0127】
上記の構成によれば、上述の各構成における優先度マップが反映された制御ベクトルに基づいて、制御対象機器100を制御することができる。よって、制御対象機器100と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができ、探索任務を効率的に行うことができる。
【0128】
また、実施の形態1に係る制御装置1は、制御対象機器情報取得部11が取得した制御対象機器情報に基 づいて、AGEマップを生成するAGEマップ生成部15をさらに備えている。
上記の構成によれば、生成したAGEマップに基づいて、上述の各構成における優先度マップを生成することができる。よって、制御対象機器100と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができ、探索任務を効率的に行うことができる。
【0129】
また、実施の形態1に係る制御対象機器100は、上記の各構成の何れか1つの制御装置1を備えている。
上記の構成によれば、上述の制御装置1の各構成が奏する効果を制御対象機器100において実現することができる。
【0130】
また、実施の形態1に係る制御対象機器100の制御方法は、制御対象である制御対象機器100に関する制御対象機器情報と、他の制御装置によって制御される非制御対象機器に関する非制御対象機器情報とに基づいて、当該制御対象機器100が複数の領域セルに区分された探索エリアを探索するように当該制御対象機器100を制御する、制御対象機器100の制御方法であって、制御対象機器100の位置を少なくとも含む制御対象機器情報を取得する制御対象機器情報取得ステップと、非制御対象機器の位置を少なくとも含む非制御対象機器情報を取得する非制御対象機器情報取得ステップと、制御対象機器100又は非制御対象機器が最後に領域セルに滞在した時刻からの経過時間を領域セル毎に示すAGEマップ、制御対象機器情報取得ステップで取得した制御対象機器情報が示す制御対象機器100の位置、及び、非制御対象機器情報取得ステップで取得した非制御対象機器情報が示す非制御対象機器の位置に基づいて、制御対象機器100が領域セルを探索する優先度を領域セル毎に示す優先度マップを生成する優先度マップ生成ステップと、優先度マップ生成ステップで生成した優先度マップに基づいて、制御対象機器100を制御する制御実行ステップと、を含む。
上記の構成によれば、上述の制御装置1の各構成が奏する効果と同様の効果を奏する。
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【産業上の利用可能性】
【0131】
この発明に係る制御装置は、制御対象機器と非制御対象機器とが同一の領域セルを同時に探索してしまうことを抑制することができるため、制御対象機器に利用可能であり、監視作業、観測作業又は保守作業等の無人の機器が活用される分野における、当該機器群を制御する制御システム等に適用するのが好ましい。
【符号の説明】
【0132】
1 制御装置、2 センサ、3 通信部、4 記憶部、5 駆動部、11 制御対象機器情報取得部、12 非制御対象機器情報取得部、13 情報処理部、14 情報出力部、15 AGEマップ生成部、16 優先度マップ生成部、17 制御ベクトル算出部、18 制御実行部、100 制御対象機器、101 非制御対象機器、110 処理回路、111 検知装置、112 送受信装置、113 記憶装置、114 駆動装置、115 プロセッサ、116 メモリ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10