(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-09
(45)【発行日】2024-09-18
(54)【発明の名称】割り当て決定装置、割り当て決定方法、及びプログラム
(51)【国際特許分類】
G01S 5/00 20060101AFI20240910BHJP
G01S 13/00 20060101ALI20240910BHJP
【FI】
G01S5/00
G01S13/00
(21)【出願番号】P 2022558708
(86)(22)【出願日】2020-10-29
(86)【国際出願番号】 JP2020040623
(87)【国際公開番号】W WO2022091293
(87)【国際公開日】2022-05-05
【審査請求日】2023-04-21
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】千嶋 博
(72)【発明者】
【氏名】須佐 友紀
(72)【発明者】
【氏名】加藤 正徳
【審査官】佐藤 宙子
(56)【参考文献】
【文献】米国特許出願公開第2005/0004759(US,A1)
【文献】特表2005-505209(JP,A)
【文献】特開2000-075023(JP,A)
【文献】特開2020-166802(JP,A)
【文献】特開2013-042409(JP,A)
【文献】特表2010-503874(JP,A)
【文献】SERIK,M.R., KADDOUR,M.,Optimizing Deployment Cost in Camera-Based Wireless Sensor Networks,IFIP International Federation for Information Processing,CIIA 2015,2015年,AICT,VOL.456,pp.454-464,http://doi.org/10.1007/978-3-319-19578-0_37
(58)【調査した分野】(Int.Cl.,DB名)
G01S 5/00- 5/14
G01S 7/00- 7/42
G01S 13/00-13/95
G01S 19/00-19/55
G01C 21/00-21/36
G01C 23/00-25/00
(57)【特許請求の範囲】
【請求項1】
複数の移動物体を観測するセンサを、複数のセンサから前記複数の移動物体の位置に基づき決定する場合に、前記複数のセンサのいずれによっても観測されない前記移動物体が多いほど値が大きく、前記複数のセンサのいずれによっても観測されない前記移動物体が少ないほど値が小さいモデルについてのアニーリングの実行によって、前記モデルの値が減少する場合における各前記センサに対する前記移動物体の割り当てを決定する実行制御手段を有
し、
前記センサが観測可能な方向は、複数の区画に区分けされ、
前記センサに観測させる前記区画が、前記センサに観測させている前記区画から遠いほど前記モデルの値は大きく、前記センサに観測させる前記区画が、前記センサに観測させている前記区画に近いほど前記モデルの値は小さい、割り当て決定装置。
【請求項2】
前記モデルは、前記複数のセンサが各前記移動物体を観測するか否かを表す変数を含み、
前記実行制御手段は、前記アニーリングによって前記変数の値を決定する、請求項1に記載の割り当て決定装置。
【請求項3】
前記センサによって観測されない前記区画にある前記移動物体に前記センサを割り当てる個数が多いほど、前記モデルの値が大きい、請求項1又は2に記載の割り当て決定装置。
【請求項4】
前記センサによって観測される前記区画の個数が1に近いほど前記モデルの値が小さく、前記センサによって観測される前記区画の個数が1から離れるほど前記モデルの値が大きい、請求項3に記載の割り当て決定装置。
【請求項5】
前記実行制御手段によって決定された前記移動物体の割り当てが反映される時点における各前記移動物体の位置を推定し、前記推定した各前記移動物体の位置を前記モデルに反映させる、請求項1から4いずれか一項に記載の割り当て決定装置。
【請求項6】
前回割り当てられ
た前記
移動物体と
は異なる前記移動物体に
今回割り当て
られる前記センサ
が多いほど前記モデルの値は大きく、
前回割り当てられ
た前記
移動物体と同じ前記移動物体に今回割り当てられる前記センサが多いほど前記モデルの値は小さい、請求項1から
5いずれか一項に記載の割り当て決定装置。
【請求項7】
各前記移動物体に割り当てるセンサの時間が長いほど前記モデルの値は小さく、前記時間が短いほど前記モデルの値は大きい、請求項1から
6いずれか一項に記載の割り当て決定装置。
【請求項8】
コンピュータが、複数の移動物体を観測するセンサを、複数のセンサから前記複数の移動物体の位置に基づき決定する場合に、前記複数のセンサのいずれによっても観測されない前記移動物体が多いほど値が大きく、前記複数のセンサのいずれによっても観測されない前記移動物体が少ないほど値が小さいモデルについてのアニーリングの実行によって、前記モデルの値が減少する場合における各前記センサに対する前記移動物体の割り当てを決定
し、
前記センサが観測可能な方向は、複数の区画に区分けされ、
前記センサに観測させる前記区画が、前記センサに観測させている前記区画から遠いほど前記モデルの値は大きく、前記センサに観測させる前記区画が、前記センサに観測させている前記区画に近いほど前記モデルの値は小さい、、割り当て決定方法。
【請求項9】
コンピュータに、複数の移動物体を観測するセンサを、複数のセンサから前記複数の移動物体の位置に基づき決定する場合に、前記複数のセンサのいずれによっても観測されない前記移動物体が多いほど値が大きく、前記複数のセンサのいずれによっても観測されない前記移動物体が少ないほど値が小さいモデルについてのアニーリングの実行によって、前記モデルの値が減少する場合における各前記センサに対する前記移動物体の割り当てを決定する処理を実行させ
、
前記センサが観測可能な方向は、複数の区画に区分けされ、
前記センサに観測させる前記区画が、前記センサに観測させている前記区画から遠いほど前記モデルの値は大きく、前記センサに観測させる前記区画が、前記センサに観測させている前記区画に近いほど前記モデルの値は小さい、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示はセンサを用いた移動物体の観測に関する。
【背景技術】
【0002】
センサを利用して移動物体を観測する技術が開発されている。例えば特許文献1は、複数のセンサで移動物体を観測するシステムを開示している。このシステムでは、移動物体がセンサのセンシング範囲に存在する確率やセンサのキャパシティなどに基づくコストが定義され、当該コストが最小化されるように、各移動物体に対する各センサの割り当てが決定される。
【先行技術文献】
【特許文献】
【0003】
【文献】米国特許出願公開第2005/0004759号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明者は、複数のセンサに複数の移動物体を観測させる環境において、センサに対する移動物体の割り当ての決定にアニーリングを利用することを検討した。本発明の目的の1つは、複数のセンサに複数の移動物体を観測させる環境において、センサに対する移動物体の割り当ての決定にアニーリングを利用する新たな技術を提供することである。
【課題を解決するための手段】
【0005】
本開示の割り当て決定装置は、複数の移動物体を観測するセンサを、複数のセンサから前記複数の移動物体の位置に基づき決定する場合に、前記複数のセンサのいずれによっても観測されない前記移動物体が多いほど値が大きく、前記複数のセンサのいずれによっても観測されない前記移動物体が少ないほど値が小さいモデルについてのアニーリングの実行によって、前記モデルの値が減少する場合における各前記センサに対する前記移動物体の割り当てを決定する実行制御手段を有する。
【0006】
本開示の割り当て決定方法は、コンピュータが、複数の移動物体を観測するセンサを、複数のセンサから前記複数の移動物体の位置に基づき決定する場合に、前記複数のセンサのいずれによっても観測されない前記移動物体が多いほど値が大きく、前記複数のセンサのいずれによっても観測されない前記移動物体が少ないほど値が小さいモデルについてのアニーリングの実行によって、前記モデルの値が減少する場合における各前記センサに対する前記移動物体の割り当てを決定する。
【0007】
本開示のコンピュータ可読媒体は、本開示の制御方法をコンピュータに実行させるプログラムを格納している。
【発明の効果】
【0008】
本開示によれば、複数のセンサに複数の移動物体を観測させる環境において、センサに対する移動物体の割り当ての決定にアニーリングを利用する新たな技術が提供される。
【図面の簡単な説明】
【0009】
【
図1】実施形態1の割り当て決定装置の動作の概要を例示する図である。
【
図2】実施形態1の割り当て決定装置の機能構成を例示するブロック図である。
【
図3】割り当て決定装置を実現するコンピュータのハードウエア構成を例示するブロック図である。
【
図4】実施形態1の割り当て決定装置によって実行される処理の流れを例示するフローチャートである。
【
図6】集合 T_[n,d]の生成方法を概念的に例示する図である。
【
図7】センサの姿勢の変化に応じて定まるペナルティを例示する図である。
【発明を実施するための形態】
【0010】
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。また、特に説明しない限り、所定値や閾値などといった予め定められている値は、その値を利用する装置からアクセス可能な記憶装置に予め格納されている。
【0011】
図1は、実施形態1の割り当て決定装置2000の動作の概要を例示する図である。ここで、
図1は、割り当て決定装置2000の概要の理解を容易にするための図であり、割り当て決定装置2000の動作は、
図1に示したものに限定されない。
【0012】
割り当て決定装置2000は、複数の移動物体20を複数のセンサ10を利用して観測する環境で利用される。センサ10は、そのセンシング範囲に含まれる各移動物体20の観測を行う。ただし、センサ10に対して観測対象を指定可能である場合、センサ10は、指定された移動物体20のみを観測してもよい。以下、複数のセンサ10の集合を「センサ群」とも表記する。
【0013】
センサ10は、離れた物体を観測可能な任意のセンサである。例えばセンサ10は、ドローンやミサイルなどの飛来物の観測を行うためのレーダー、人や車などの観測を行うためのカメラ、又は無線通信端末を捕捉するための無線基地局などである。
【0014】
移動物体20は、その位置が移動しうる任意の物体である。例えば移動物体20は、前述したドローンなどの飛来物、人その他の動物や車その他の乗り物、又は無線通信端末などである。
【0015】
ここで、センサ群によって観測されない移動物体20の数をできる限り少なくするためには、各センサ10に対して移動物体20を適切に割り当てることが好適である。「センサ群によって観測されない移動物体20の数をできる限り少なくする」は、「センサ群によって観測される移動物体20の数をできる限り多くする」とも言い換えることができる。なお、「移動物体20がセンサ群によって観測されない」とは、いずれのセンサ10によっても移動物体20が観測されないことを意味する。一方、「移動物体20がセンサ群によって観測される」とは、いずれか1つ以上のセンサ10によって移動物体20が観測されることを意味する。
【0016】
「センサ10に対して移動物体20を割り当てる」とは、センサ10に移動物体20を観測させること、又はセンサ10によって観測された移動物体20に関する情報を後段の処理(観測結果を利用した解析処理など)に利用することを意味する。後者の場合において、例えば、センサ10がカメラであるとする。この場合、例えば、センサ10によって撮像された移動物体20のうち、そのセンサ10に対して割り当てられた移動物体20についてのみが、そのセンサ10から得られた撮像画像を用いた画像解析の対象として扱われるようにする。このようにセンサ10に対する移動物体20の割り当てを定めることで、処理負荷の分散などを実現できる。
【0017】
割り当て決定装置2000は、センサ群によって観測されない移動物体20の数をできる限り少なくできるように、各センサ10に対する移動物体20の割り当てを決定する。このような割り当ては、「センサ群によって観測されない移動物体20の数を最小化するように、各センサ10に対する移動物体20の割り当てを決定する」という最適化問題の解を探索することで実現できる。
【0018】
割り当て決定装置2000は、上記最適化問題の解(センサ10に対する移動物体20の割り当ての組み合わせ)の探索に、アニーリングマシン30を利用する。そのために、割り当て決定装置2000は、上記最適化問題を表すモデル(以下、割り当て決定モデル)を生成する。割り当て決定モデルには、上記最適化問題の目的関数が含まれる。例えば、解の探索を行う最適化問題を、目的関数を最小化する最適化問題として表すとする。この場合、目的関数は、その値が小さくなるほど、センサ群によって観測されない移動物体20の数が少なくなる(センサ群によって観測される移動物体20の数が多くなる)という性質を持つ関数である。
【0019】
割り当て決定モデルには、各センサ10に対する移動物体20の割り当てが反映される変数が利用される。当該変数は、センサ10に対する移動物体20の割り当てを直接的に表す変数であってもよいし、センサ10に対する移動物体20の割り当てに依存する他の情報を表す変数であってもよい。各センサ10に対する移動物体20の割り当てが反映される変数については後述する。
【0020】
ここで、或るセンサ10が或る移動物体20を観測できるか否かは、そのセンサ10の位置とその移動物体20の位置に依存する。そのため、割り当て決定モデルには、これらの値が反映される必要がある。
【0021】
そこで割り当て決定装置2000は、各センサ10の位置と各移動物体20の位置を特定し、これらの値が反映された割り当て決定モデルを生成する。そして、割り当て決定装置2000は、生成した割り当て決定モデルについてのアニーリングを、アニーリングマシン30に実行させる。こうすることで、アニーリングマシン30により、割り当て決定モデルによって表されている最適化問題の解の探索が行われる。前述したように、目的関数の変数には、各センサ10に対する移動物体20の割り当てが反映される変数が含まれる。そのため、上記最適化問題の解の探索結果として、各センサ10について、そのセンサ10に対して割り当てるべき移動物体20が反映された変数の値が得られる。割り当て決定装置2000は、このようにして得た変数の値を用いることで、各センサ10に対して割り当てるべき移動物体20を特定する。なお、各センサ10の位置と各移動物体20の位置を割り当て決定モデルに反映させる具体的な方法については後述する。
【0022】
ここで、アニーリングによる最適化問題の解の探索では、最適解が得られるとは限らない。そのため、割り当て決定装置2000が特定する、各センサ10に対して割り当てるべき移動物体20は、割り当て決定モデルについてのアニーリングによって上記最適化問題の解を探索した結果を利用して特定できるものであればよく、必ずしも、最適化問題の最適解である(すなわち、センサ群によって観測されない移動物体20の数が最小となるような、各センサ10に対する移動物体20の割り当てである)必要はない。
【0023】
<作用効果の例>
本実施形態の割り当て決定装置2000によれば、「センサ群によって観測することができないセンサ10の数を最小化するように、各センサ10に対する移動物体20の割り当てを決定する」という最適化問題を表す割り当て決定モデルについてのアニーリングを実行することにより、当該最適化問題の解が探索される。その結果、移動物体20を観測する各センサ10に対して割り当てるべき移動物体20が決定される。よって、本開示により、移動物体20を観測する各センサ10に対する移動物体20の割り当てを、アニーリングを利用して適切に決定する技術が提供される。
【0024】
ここで、センサ10や移動物体20の数が多いと、センサ10に対する移動物体20の割り当てを決定する処理に要する時間が長くなる。そのため、リアルタイムでセンサ10に対する移動物体20の割り当てを決定することが難しい。また、貪欲法などのアルゴリズムで処理時間を削減する方法では、結果の精度が低くなり、センサ10に対する移動物体20の割り当てを適切に決定できない可能性がある。この点、アニーリングによって最適化問題の解を探索する手法を利用すれば、センサ10に対する移動物体20の適切な割り当てを短い時間で決定することができる。そのため、例えば、各センサ10に対する移動物体20の割り当てをリアルタイムかつ適切に制御できるようになる。
【0025】
以下、本実施形態の割り当て決定装置2000について、より詳細に説明する。
【0026】
<機能構成の例>
図2は、実施形態1の割り当て決定装置2000の機能構成を例示するブロック図である。割り当て決定装置2000は、特定部2020及び実行制御部2040を有する。特定部2020は、各センサ10の位置と各移動物体20の位置を特定する。実行制御部2040は、各センサ10の位置と各移動物体20の位置が反映された割り当て決定モデルについてのアニーリングを、アニーリングマシン30に実行させる。これにより、実行制御部2040は、各センサ10に対する移動物体20の割り当てを特定する。
【0027】
<ハードウエア構成の例>
割り当て決定装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、割り当て決定装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
【0028】
図3は、割り当て決定装置2000を実現するコンピュータ500のハードウエア構成を例示するブロック図である。コンピュータ500は、任意のコンピュータである。例えばコンピュータ500は、PC(Personal Computer)やサーバマシンなどといった、据え置き型のコンピュータである。その他にも例えば、コンピュータ500は、スマートフォンやタブレット端末などといった可搬型のコンピュータである。コンピュータ500は、割り当て決定装置2000を実現するために設計された専用のコンピュータであってもよいし、汎用のコンピュータであってもよい。
【0029】
例えば、コンピュータ500に対して所定のアプリケーションをインストールすることにより、コンピュータ500で、割り当て決定装置2000の各機能が実現される。上記アプリケーションは、割り当て決定装置2000の機能構成部を実現するためのプログラムで構成される。なお、上記プログラムの取得方法は任意である。例えば、当該プログラムが格納されている記憶媒体(DVD や USB メモリなど)から、当該プログラムを取得することができる。その他にも例えば、当該プログラムが格納されている記憶装置を管理しているサーバ装置から、当該プログラムをダウンロードすることにより、当該プログラムを取得することができる。
【0030】
コンピュータ500は、バス502、プロセッサ504、メモリ506、ストレージデバイス508、入出力インタフェース510、及びネットワークインタフェース512を有する。コンピュータ500は、量子チップ520を有してもよい。バス502は、プロセッサ504、メモリ506、ストレージデバイス508、入出力インタフェース510、及びネットワークインタフェース512が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ504などを互いに接続する方法は、バス接続に限定されない。
【0031】
量子チップ520は、量子力学における量子状態を用いて動作するチップである。量子チップ520は、アニーリングマシンについて上述したように動作する。アニーリングマシンにおける動作は、量子チップ520によって実現されていてもよいし、プロセッサ504によって実現されていてもよいし、アニーリングマシン30によって実現されていてもよい。
【0032】
プロセッサ504は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、又は FPGA(Field-Programmable Gate Array)などの種々のプロセッサである。メモリ506は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス508は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
【0033】
入出力インタフェース510は、コンピュータ500と入出力デバイスとを接続するためのインタフェースである。例えば入出力インタフェース510には、キーボードなどの入力装置や、ディスプレイ装置などの出力装置が接続される。
【0034】
ネットワークインタフェース512は、コンピュータ500をネットワークに接続するためのインタフェースである。このネットワークは、LAN(Local Area Network)であってもよいし、WAN(Wide Area Network)であってもよい。例えば、割り当て決定装置2000は、ネットワークインタフェース512を介して、各センサ10やアニーリングマシン30と接続されている。
【0035】
ストレージデバイス508は、割り当て決定装置2000の各機能構成部を実現するプログラム(前述したアプリケーションを実現するプログラム)を記憶している。プロセッサ504は、このプログラムをメモリ506に読み出して実行することで、割り当て決定装置2000の各機能構成部を実現する。
【0036】
割り当て決定装置2000は、1つのコンピュータ500で実現されてもよいし、複数のコンピュータ500で実現されてもよい。後者の場合において、各コンピュータ500の構成は同一である必要はなく、それぞれ異なるものとすることができる。
【0037】
<アニーリングマシン30について>
アニーリングマシン30は、最適化問題を表すモデルについてのアニーリングを実行することにより、最適化問題の解を探索することが可能な、任意のコンピュータである。アニーリングマシン30によって実行されるアニーリングは、例えば、量子アニーリング又はシミュレーテッドアニーリングである。
【0038】
アニーリングマシン30は、割り当て決定装置2000を実現するコンピュータ500とは別のコンピュータで実現されてもよいし、割り当て決定装置2000を実現するコンピュータ500で実現されてもよい。後者の場合、割り当て決定装置2000がアニーリングを実行する機能を備えているとも言える。
【0039】
<センサ10について>
前述したように、センサ10は、移動物体20を観測可能な任意のセンサである。後述するようにセンサ10の姿勢の制御を行う場合、センサ10は、姿勢を制御することができるように構成されている。例えばセンサ10は、特定の軸を中心として回転させることで、その向きを変更することができるように構成されている。回転軸は、1つであってもよいし、複数あってもよい。
【0040】
センサ10の位置は、固定であってもよいし、固定でなくてもよい。後者の場合、例えばセンサ10は、移動物体20以外の移動物体(車やドローンなど)に取り付けられており、当該移動物体の移動に伴ってその位置が変化する。
【0041】
<処理の流れ>
図4は、実施形態1の割り当て決定装置2000によって実行される処理の流れを例示するフローチャートである。なお、ここでは、センサ10の位置が固定されていることを前提としている。
【0042】
特定部2020は、各センサ10の位置を特定する(S102)。S104からS110は、所定の終了条件が満たされるまで繰り返し実行さえるループ処理Aである。S104において、割り当て決定装置2000は、終了条件が満たされているか否かを判定する。終了条件が満たされている場合、
図4の処理は終了する。一方、終了条件が満たされていない場合、
図4の処理はS106に進む。
【0043】
特定部2020は、各移動物体20の位置を特定する(S106)。実行制御部2040は、各センサ10の位置及び各移動物体20の位置が反映された割り当て決定モデルについてのアニーリングを、アニーリングマシン30に実行させる(S108)。S110はループ処理Aの終端であるため、
図4の処理はS104に進む。
【0044】
図4に示すように、割り当て決定装置2000は、「各移動物体20の位置の特定し、それらの位置が反映された割り当て決定モデルについてのアニーリングを実行させる」というループ処理Aを繰り返し実行する。こうすることで、各移動物体20の移動に追従して、各センサ10に対する移動物体20の割り当てを適切に決定できるようになる。
【0045】
ここで、前述したように、
図4のフローチャートでは、センサ10の位置が固定されていることを前提としている。そのため、センサ10の位置を特定する処理がループ処理Aの前に一度だけ行われている。センサ10が移動する場合、実行制御部2040は、S106において、各移動物体20の位置に加え、各センサ10の位置の特定をさらに行う。
【0046】
ここで、ループ処理Aの実行には、所定のインターバルが設けられてもよい。例えば割り当て決定装置2000は、1秒に1回などの所定の頻度でループ処理Aを実行する。こうすることで、割り当て決定装置2000は、各センサ10に対する移動物体20の割り当てを所定の頻度で制御する。
【0047】
ループ処理Aの終了条件は任意である。例えば、移動物体20の観測が特定の期間のみ行われる場合、終了条件は、当該期間の終了時刻になったことである。その他にも例えば、移動物体20の観測を行うべき空間(以下、観測空間)が限定されている場合、終了条件は、全ての移動物体20が当該観測空間の外に出たことであってもよい。
【0048】
全ての移動物体20が観測空間から出たことを特定する方法は様々である。例えば、観測空間全体を網羅するように、移動物体20を検出可能なセンサを設けておく。このセンサは、センサ10であってもよいし、センサ10でなくてもよい。この場合、当該センサによって移動物体20が検出されなくなった場合に、全ての移動物体20が観測空間の外に出たことが分かる。
【0049】
例えば、センサ10がカメラであり、センサ10を用いて観測空間内の各人物の顔を撮像しながら、各人物をトラッキングするとする。この場合、センサ10よりも広範囲を俯瞰して撮像するように別のカメラを設けることで、観測空間に存在する人が検出されるようにすることが考えられる。なお、観測空間を複数の区間に分割し、区間ごとに別のセンサを用いて、移動物体20が検出されてもよい。また、観測空間とその外との境界を監視するようにセンサを設けることで、境界における移動物体20の出入りを監視することにより、観測空間に移動物体20が存在するか否かを把握してもよい。
【0050】
観測空間に存在する移動物体20の検出は、
図4の一連の処理を開始するトリガとして利用されてもよい。すなわち、割り当て決定装置2000は、観測空間に移動物体20が存在しない間は、
図4の一連の処理を行わず、観測空間に移動物体20が入ったことが検出されたら、
図4の一連の処理を開始する。ただし、
図4の一連の処理を開始するトリガは、移動物体20が観測空間に入ったことに限定されない。例えば、特定の期間のみ移動物体20の観測を行う場合には、当該期間の開始時刻になったことをトリガとして、一連の処理が開始されてもよい。
【0051】
<センサ10の位置の特定:S102>
特定部2020は、各センサ10の位置を特定する(S102)。そのために、例えば特定部2020は、各センサ10に関する情報を示すセンサ情報を取得する。センサ情報には少なくとも、各センサ10の位置を表す情報が含まれる。
【0052】
センサ10の位置を表す方法は任意である。例えばセンサ10の位置は GPS(Global Positioning System)座標で表される。この場合、例えば、各センサ10に GPS センサを設けることにより、各センサ10の位置を特定することができる。なお、センサ10が他の物体に取り付けられている場合、当該物体に設けられている GPS センサから得られる GPS 座標を、センサ10の位置として扱ってもよい。また、センサ10の位置は、2次元平面上の座標で表されてもよいし、3次元空間上の座標で表されてもよい。
【0053】
その他にも例えば、センサ10の位置は、緯度、経度、及び標高で表されてもよい。この場合、各センサ10の位置は、測量機器を用いた測量などによって特定することができる。
【0054】
その他にも例えば、センサ10の位置は、任意に設定された座標系における座標で表されてもよい。例えば前述したように、観測空間に存在する移動物体20を検出可能なセンサを設けるとする。この場合、例えば、観測空間に任意の座標系を設定し、当該センサを用いてセンサ10及び移動物体20を検出することにより、当該座標系における各センサ10と移動物体20の位置を特定することができる。この場合、センサ10や移動物体20の位置の特定は、割り当て決定装置2000によって行われてもよいし、割り当て決定装置2000以外の装置によって行われてもよい。
【0055】
特定部2020がセンサ情報を取得する方法は様々である。例えば特定部2020は、センサ情報が格納されている記憶装置から、センサ情報を取得する。当該記憶装置は、割り当て決定装置2000の内部に設けられているもの(例えばストレージデバイス508)であってもよいし、割り当て決定装置2000の外部に設けられているものであってもよい。その他にも例えば、特定部2020は、他の装置から送信されるセンサ情報を受信することで、センサ情報を取得してもよい。
【0056】
ここで、センサ10が移動する場合、特定部2020は、センサ10の位置を繰り返し特定する。例えばセンサ10が移動物体に取り付けられている場合、特定部2020は、その移動物体又はセンサ10からセンサ情報を繰り返し取得することで、センサ10の位置を繰り返し特定する。その他にも例えば、観測空間において移動物体20を検出するセンサを利用する場合、当該センサによってセンサ10も検出するようにし、その検出結果を利用して、センサ10の位置が繰り返し特定されるようにしてもよい。
【0057】
<移動物体20の位置の特定:S106>
特定部2020は、各移動物体20の位置を特定する(S106)。割り当て決定モデルに反映される移動物体20の位置は、例えば、観測された移動物体20の最新の位置である。移動物体20の位置を特定する方法は様々である。例えば移動物体20の位置は、その移動物体20を観測したセンサ10によって特定される。例えばセンサ10が測距が可能なセンサである場合、センサ10の位置と姿勢、並びにセンサ10から移動物体20までの距離に基づいて、移動物体20の位置を特定することができる。その他にも例えば、1つの移動物体20を複数のセンサ10で観測することで、いわゆる三角測量により、移動物体20の位置を特定することができる。その他にも例えば、前述したように、観測空間に移動物体20がを検出する
【0058】
移動物体20の位置の特定に利用されるセンサは、センサ10以外であってもよい。例えば前述したように、観測空間に存在する移動物体20を検出可能なセンサを設け、そのセンサの検出結果を利用して、移動物体20の位置が特定されてもよい。
【0059】
センサの検出結果から移動物体20の位置を算出する処理は、割り当て決定装置2000によって行われてもよいし、割り当て決定装置2000以外の装置(例えばセンサ)によって行われてもよい。後者の場合、割り当て決定装置2000は、移動物体20の位置を示す情報を取得することにより、移動物体20の位置を特定する。
【0060】
<<将来の位置の特定>>
移動物体20の位置は、移動物体20が観測されてからその観測に基づいてセンサ10に対する移動物体20の割り当てが変更されるまでの間に、変わる可能性がある。そこで割り当て決定装置2000は、割り当て決定装置2000によって決定されたセンサ10に対する移動物体20の割り当てが反映されるタイミングにおける移動物体20の予測位置を特定し、当該予測位置を、割り当て決定モデルに反映する移動物体20の位置として扱ってもよい。
【0061】
例えば特定部2020は、複数回の観測に基づいて移動物体20の速度を特定し、当該速度と観測された移動物体20の位置とに基づいて、移動物体20の将来の位置を推定する。例えば、時点 Ta における移動物体20の位置と速度がそれぞれ、Pa と Va であるとする。また、時点 Tb におけるセンサ10に対する移動物体20の割り当てを、割り当て決定装置2000を用いて決定するとする。この場合、特定部2020は、割り当て決定モデルに反映する移動物体20の位置として、時点 Tb における移動物体20の予測位置 Pb=Pa+Va*(Tb-Ta) を特定する。
【0062】
また、特定部2020は、複数回の観測に基づいて移動物体20の加速度をさらに特定し、特定した加速度も加味して、移動物体20の将来の位置を推定してもよい。
【0063】
なお、移動する物体をセンサで複数回測定し、その位置の時間変化からその物体の速度や加速度を特定する技術には、既存の技術を利用することができる。
【0064】
<<新しい移動物体20の検出>>
センサ10のみを用いて移動物体20の検出を行う場合、新たな移動物体20が出現した時に、いずれのセンサ10もその移動物体20を検出できる状態になく、当該移動物体20の出現を把握できないことがある。そこで例えば、新たな移動物体20の出現は、センサ10以外のセンサを用いて検出されてもよい。例えば前述したように、観測空間を網羅的に観測できるように、センサ10とは別のセンサを設けるようにする。そして、このセンサを用いて、観測空間に新たに出現した移動物体20を検出するようにする。
【0065】
ただし、新たな移動物体20の出現も、センサ10を用いて検出するようにしてもよい。例えば、複数のセンサ10のうちの少なくとも1つ以上を、観測空間とその外との境界を観測できる位置に設置する。そして、これらのセンサ10については、当該境界を観測できない状態にはならないようにする。このようにすることで、観測空間に対して移動物体20が入ること(すなわち、新たな移動物体20が出現すること)を、センサ10を用いて検出できるようになる。
【0066】
<割り当て決定モデルについて>
前述したように、例えば割り当て決定モデルは、「センサ群によって観測されない移動物体20の数を最小化するように、各センサ10に対する移動物体20の割り当てを決定する」という最適化問題の解を探索するためのモデルである。割り当て決定モデルは、当該問題を解くための目的関数を含む。ただし、前述したように、この最適化問題は、「センサ群によって観測される移動物体20の数を最大化するように、各センサ10に対する移動物体20の割り当てを決定する」とも表現できる。
【0067】
解の探索を行う最適化問題を、目的関数を最小化する最適化問題として表す場合、目的関数は、「その値が小さくなるほど、センサ群によって観測されない移動物体20の数が少なくなる(センサ群によって観測される移動物体20の数が多くなる)」という性質を持つ関数である。一方、解の探索を行う最適化問題を、目的関数を最大化する最適化問題として表す場合、目的関数は、「その値が大きくなるほど、センサ群によって観測されない移動物体20の数が少なくなる(センサ群によって観測される移動物体20の数が多くなる)」という性質を持つ関数である。
【0068】
アニーリングマシン30が量子アニーリングマシンである場合、例えば割り当て決定モデルは、イジングモデルと等価な形式(例えば QUBO(Quadratic Unconstrained Binary Optimization)形式)の式で表される。ただし、アニーリングマシン30は量子アニーリングマシンには限定されず、割り当て決定モデルもイジングモデルには限定されない。以下では、割り当て決定モデルを QUBO 形式の式で表す場合について、その具体例を説明する。また、解の探索を行う最適化問題は、目的関数を最小化する問題として表される。
【0069】
割り当て決定モデルが持つ目的関数は、例えば以下の式(1)で表される。
【数1】
【0070】
α は移動物体20の識別子を表す。Tnum は移動物体20の総数を表す。n はセンサ10の識別子を表す。Snum はセンサ10の総数を表す。変数 z は 0 から sum-1 までの値を表すために利用される補助変数であり、その値は0又は1である。
【0071】
変数 x は、センサ10に対する移動物体20の割り当てを表す。以下、変数 x を割り当て変数と呼ぶ。割り当て変数は0又は1の値を取る。具体的には、識別子がαの移動物体20(以下、移動物体20-α)を、識別子がnのセンサ10(以下、センサ10-n)に対して割り当てる場合、x_[n,α]=1 とする。一方、移動物体20-αをセンサ10-nに対して割り当てない場合、x_[n,α]=0 とする。言い換えると、センサ10-nが移動物体20-αを観測する場合に、「x_[n,α]=1」である。一方、センサ10-nが移動物体20-αを観測しない場合に、「x_[n,α]=0」である。
【0072】
式(1)において、Σx がΣz よりも1大きくなるように各 x と z を設定することで、1-Σz-Σx の値を0にすることができる。こうすることで、式(1)を最小化することができる。しかしながら、Σx が0である場合(すなわち、いずれのセンサ10も移動物体20に対して割り当てられない場合)、1-Σz-Σx が1以上になってしまう。このことから、式(1)を最小化する解を探索すると、いずれの移動物体20-αについて、できる限り Σx を0にしないようにする、変数の値の組み合わせが得られる。すなわち、いずれの移動物体20-αに対しても、できる限り1つ以上のセンサ10が割り当てられるようにする、変数の値の組み合わせが得られる。よって、センサ群によって観測されない移動物体20をできる限り少なくするように、変数の値の組み合わせが得られる。
【0073】
言い換えると、いずれのセンサ10によっても観測されない移動物体20が多いほど、式(1)が表す目的関数の値は増大する。一方、いずれのセンサ10によっても観測されない移動物体20が少ないほど、式(1)が表す目的関数の値は減少する。したがって、アニーリングマシン30は、該目的関数の値が減少する場合を探索することによって、センサの割り当てを決定する。また、式(1)が表す目的関数は、割り当て変数xを含んでいるため、S106(または、「将来の位置の特定」にて上述したような予測)等の処理によって取得された位置にある各移動物体を複数のセンサが観測するか否かを表す関数であるともいうことができる。以降、制約条件と目的関数とを総称して「モデル」とも表す。ただし、モデルは、必ずしも、少なくとも目的関数を表していればよく、制約条件を含んでいなくてもよい。
【0074】
割り当て決定モデルは、目的関数に加え、制約条件を含んでもよい。例えば、前述した目的関数と制約条件を合わせて、割り当て決定モデルは以下の式で表すことができる。この例における最適化問題は、制約条件を満たしつつ目的関数を最小化するというものである。
【数2】
C1 と C2 は、各制約の強さを表す正の実数である。d は姿勢(センサ10の向き)の識別子を表す。Dnum はセンサ10がとりうる姿勢の総数を表す。s_[n,d] は、センサ10-nの姿勢を表す変数(以下、姿勢変数)である。集合 T_[n,d] は、方位 d を向いているセンサ10-nによって観測可能な移動物体20の識別子の集合である。
【0075】
上記式(2)において、右辺の第1項は前述した式(1)の目的関数を表す。一方、右辺の第2項と第3項はそれぞれ、制約条件を表す(詳しくは後述)。このように最小化したい目的関数と制約条件を加算したモデルでは、目的関数の項を小さくした代わりに制約条件の項が大きくなってしまうと、モデル全体の値(すなわち H の値)を最小化できない。よって、このように最小化したい目的関数と制約条件とを加算した割り当て決定モデルを作成し、当該モデル全体の値を最小化する変数の値の組み合わせを探索することにより、制約条件を満たしながら目的関数を最小化する変数の値の組み合わせを探索することができる。
【0076】
上記割り当て決定モデルには、姿勢変数と割り当て変数が含まれている。そのため、このような割り当て決定モデルで表される最適化問題の解を探索することにより、センサ群によって観測されない移動物体20の数をできる限り少なくするように、姿勢変数の値の組み合わせと割り当て変数の値の組み合わせが決定される。このようにして決定された姿勢変数の値の組み合わせによれば、各センサ10に設定すべき姿勢を特定することができる。また、このようにして決定された割り当て変数の値の組み合わせによれば、各センサ10に対して割り当てるべき移動物体20を特定することができる。
【0077】
以下、式(2)について、より詳細に説明する。まず、姿勢変数 s について説明する。イジングモデルと等価な形式のモデルにおいて、変数が取り得る値は2つである必要がある(言い換えれば、変数は二値変数である必要がある)。その一方で、センサ10がとりうる姿勢は2つには限られない。そこで上記割り当て決定モデルでは、姿勢変数 s を導入することにより、3つ以上の値を取り得るセンサ10の姿勢を二値変数で表現している。
【0078】
図5は、姿勢変数を説明するための図である。この例では、センサ10の姿勢が2次元平面上の方位で表されている。センサ10が向くことができる方位は、d1 から dnum の num 通りである。
【0079】
姿勢変数 s_[i,j] は、センサ10-iが方位 dj を向いている場合に1を示し、向いていない場合に0を示す。このようにすることで、センサ10-iの姿勢を表す姿勢変数 s を二値変数で実現できる。
【0080】
なお、特定の時点においてセンサ10-iが取ることができる姿勢は1つのみなので、センサ10-iについての姿勢変数が列挙された姿勢ベクトル (s_[i,1], s_[i,2],..., s_[i,num]) は、いずれか1つの要素のみが1を示し、その他の要素は0を示す one-hot ベクトルとなる。例えば
図5において、センサ10-1は方位 d1 を向いている。そのため、センサ10-1についての姿勢ベクトルは、(s_[1,1]=1, s_[1,2]=0,..., s_[1,num]=0) となる。
【0081】
ここで、センサ10の姿勢の変更可能な範囲は、1つの平面上に限定されない。例えば、互いに直交する x 平面、y 平面、及び z 平面のそれぞれについて、センサ10の姿勢が変更可能であってもよい。言い換えれば、センサ10の姿勢が、x 平面上の方位、y 平面上の方位、及び z 平面上の方位の組み合わせで表されてもよい。
【0082】
この場合、例えば、姿勢変数として s_[i,u,v,w] を導入する。u は x 平面上の方位についての識別子であり、v は y 平面上の方位についての識別子であり、w は z 平面上の方位についての識別子である。また、x 平面上におけるセンサ10の向きは x 平面上の方位 d_[1,1] から d_[1,num] で表され、y 平面上におけるセンサ10の向きは y 平面上の方位 d_[2,1] から d_[2,num] で表され、z 平面上におけるセンサ10の向きは z 平面上の方位 d_[3,1] から d_[3,num] で表されるとする。そして、センサ10-iが向いている方向が、x 方向について d_[1,3] であり、y 方向について d_[2,5] であり、z 方向について d_[3,1] であるとする。この場合、センサ10-iについての姿勢変数は、s_[i,3,5,1] のみが1となり、その他は0となる。
【0083】
式(2)における2つの制約条件について説明する。右辺の第2項である第1の制約条件は、特定のタイミングで各センサ10がとりうる姿勢が1つであるという制約を表している。第2項のカッコ内は、センサ10-nの姿勢が、Dnum 種類の姿勢のうちいずれか1つの姿勢dであるという、姿勢についての条件(以下、「姿勢条件」と表す)を表す。説明の便宜上、姿勢の種類を離散的に表したが、姿勢は連続的に変化してもよい。特定のセンサ10-nについて、1-Σs_[n,d] の値は、値が1であるs_[n,d] が1つである場合のみ0となり、その他の場合は正の値となる。ここで、値が1であるs_[n,d] が1つである場合とは、センサ10-nが1方向のみを向いていることを意味する。そのため、この項を含む割り当て決定モデルを最小化する変数の組み合わせを探索することで、各センサ10が1方向のみを向くように姿勢変数が決定される。
【0084】
したがって、各センサが観測可能な方向は、複数の区画に区分けされている。式(2)に例示されたモデルのうち右辺の第2項は、センサが観測する区画の個数が1に近いほどモデルの値が小さく、センサが観測する区画の個数が1から離れるほどモデルの値が大きいことを表す。したがって、式(2)の右辺の第2項を含むモデルをアニーリング処理することによって、センサが観測する区画の個数が1に近くなるように、センサの割り当てを決めるという効果を奏する。
【0085】
右辺の第3項である第2の制約条件は、センサ10に対し、そのセンサ10が観測できない移動物体20を割り当てないという制約を表す。第3項のうち、Σx_[n,α]は、センサ10-nの方位dが表すセンシング範囲外に存在している移動物体についての割り当て状態を表す。そして、Σ_{d=1}(…) は、センサ10-nが方位dを向いている場合に、方位dが表すセンシング範囲外に存在している移動物体についての割り当て状態についての条件(以降、「センシング範囲条件」を表す)を表す。したがって、第3項は、すべてのセンサについてのセンシング範囲条件を表す。言い換えると、第3項は、センサ10が向いている方位におけるセンシング範囲に移動物体が存在している場合には、移動物体のセンシングを、そのセンサ10に割り当てるようにする条件を表しているともいうことができる。
【0086】
右辺の第3項において、s_[n,d]*Σx_[n,α] は、センサ10-nが方位 d を向いている場合(s_[n,d]=1 である場合)、方位 d を向いているセンサ10-nによって観測できない移動物体20(T_[n,d] に含まれない移動物体20)の1つ以上がセンサ10-nに対して割り当てられていると(いずれか1つ以上の x_[n,α] が1であると)、正の値となる。一方、センサ10-nが方位 d を向いている場合に、方位 d を向いているセンサ10-nによって観測できない移動物体20のいずれに対してもセンサ10-nが割り当てられていなければ(いずれの x_[n,α] も0であれば)、s_[n,d]*Σx_[n,α]=0 となる。そのため、この項を含む割り当て決定モデルを最小化する変数の組み合わせを探索することにより、観測できない移動物体20がセンサ10に対して割り当てられないようになることができる。
【0087】
言い換えると、式(2)に例示されたモデルのうち右辺の第3項は、センサが観測していない区画にある移動物体にセンサを割り当てる個数が多いほど、モデルの値が大きいことを表す。したがって、式(2)の右辺の第3項を含むモデルをアニーリング処理することによって、センサが観測していない区画にある移動物体に、該センサを割り当てることを抑止することができるという効果を奏する。
【0088】
なお、式(2)で表される割り当て決定モデルの解を探索するためには、第3の制約条件に含まれている集合 Tn,d を生成しておく必要がある。そこで、実行制御部2040は、各センサ10の位置と各移動物体20の位置に基づいて、集合 T_[n,d] を生成する。以下、その方法の具体例を説明する。
【0089】
ここで、各センサ10について、そのセンサ10自身の位置及び姿勢を基準としてどの範囲をセンシング可能であるかが、予め定められているとする。例えば、予め定められているセンシング可能な範囲は、距離については「センサ10からの距離が、β1[m] 以上 β2[m] 以下の範囲」、方向については「センサ10の正面方向を基準の方向0度として、-γ1[度] 以上γ2[度] 以下(γ>0)」のように表すことができる。この情報は、例えばセンサ10の位置と共に、センサ情報に含まれる。
【0090】
実行制御部2040は、上記情報とセンサ10の位置に基づいて、センサ10がとりうる姿勢ごとに、センサ10のセンシング範囲を特定する。そして、実行制御部2040は、特定したセンシング範囲に含まれる移動物体20を特定することで、集合 T_[n,d] を生成する。
【0091】
図6は、集合 T_[n,d]の生成方法を概念的に例示する図である。この図では、センサ10-iが方位 d を向いているケースが例示されている。領域40は、方位 d を向いているセンサ10-iのセンシング範囲を表している。この例において、領域40には、移動物体20-c、移動物体20-e、及び移動物体20-fが含まれている。そのため、実行制御部2040は、集合 T_[i,d]={c, e,f} を生成する。
【0092】
なお、目的関数は、補助変数 z を用いないように定義されてもよい。この場合、例えば以下のように目的関数を定めることができる。
【数3】
【0093】
式(3)において、移動物体20-αについての[]内の値は、x_[n,α] が1となるセンサ10が1つ又は2つの場合に0となり、それ以外の場合には正の値となる。よって、できる限り多くの移動物体20がそれぞれ、1つ又は2つのセンサ10に対して割り当てられるようにすることで、上記目的関数の値を小さくすることができる。このことから、上記目的関数を最小化する最適化問題の解を探索することで、観測されない移動物体20の数を少なくすることができる。
【0094】
<アニーリングの実行:S106>
実行制御部2040は、特定部2020によって特定された各センサ10の位置と各移動物体20の位置が反映された割り当て決定モデルについてのアニーリングを、アニーリングマシン30に実行させる(S106)。ここで、特定のモデルを対象としたアニーリングをアニーリングマシン30に実行させる具体的な方法には、既存の種々の方法を採用できる。
【0095】
例えば特定部2020は、特定部2020によって特定されたセンサ10の位置及び移動物体20の位置を用いて、前述した式(2)などで表される割り当て決定モデルを生成する。そして実行制御部2040は、生成した割り当て決定モデルを示すリクエストをアニーリングマシン30に送信する。これに応じて、アニーリングマシン30が、割り当て決定モデルを利用したアニーリングを実行することで、割り当て決定モデルによって表されている最適化問題の解を探索する。その後、アニーリングマシン30は、決定された変数の組み合わせを示す情報(後述する結果情報)が含まれるレスポンスを、割り当て決定装置2000へ送信する。
【0096】
<結果の取得>
割り当て決定装置2000は、アニーリングマシン30によるアニーリングの結果を示す情報を取得する。以下、この情報を結果情報と呼ぶ。結果情報は、アニーリングによって決定された各変数の値を示す。例えば割り当て決定モデルが式(2)で表される場合、割り当て変数 x、姿勢変数 s、及び補助変数 z の値がアニーリングによって決定される。
【0097】
ただし、補助変数 z は、センサ10の制御に利用されない。そのため、アニーリングマシン30から提供される結果情報には、補助変数 z についての情報は含まれなくてもよい。
【0098】
割り当て決定装置2000が結果情報を取得する方法は様々である。例えば割り当て決定装置2000は、アニーリングマシン30から送信される結果情報を受信することにより、結果情報を取得する。その他にも例えば、アニーリングマシン30が、割り当て決定装置2000からアクセス可能な記憶装置に結果情報を格納してもよい。この場合、割り当て決定装置2000は、当該記憶装置から結果情報を読み出すことにより、結果情報を取得する。
【0099】
<センサ10の制御>
割り当て決定装置2000は、各センサ10について決定された変数の値に基づいて、センサ10の制御を行う。例えば割り当て決定装置2000は、姿勢変数の値に基づいて、センサ10の姿勢を制御する。例えば割り当て決定モデルが式(2)で表される場合、実行制御部2040は、s_[n,d]=1 となる方位 d を向くように、センサ10-nの姿勢を制御する。
【0100】
その他にも例えば、割り当て決定装置2000は、割り当て変数に基づいて、センサ10による移動物体20の観測を制御する。例えば、指定された物体のみを観測するようにセンサ10を制御可能である場合、割り当て決定装置2000は、x_[n,α]=1 となる各移動物体20-αを観測するように、センサ10-nを制御する。なお、指定された物体のみを観測するようにセンサを制御する技術には、既存の技術を利用することができる。
【0101】
その他にも例えば、センサ10に対して割り当てられている移動物体20のみを、センサ10の観測結果を利用した解析の対象とするとする。この場合、割り当て決定装置2000は、各センサ10について、そのセンサ10の観測結果を利用した解析の対象とする移動物体20を特定し、特定した移動物体20のみが解析の対象となるようにする。例えば、センサ10-nの観測結果を利用した解析の対象は、x_[n,α]=1 となる各移動物体20-αである。
【0102】
なお、解析処理は、割り当て決定装置2000によって行われてもよいし、割り当て決定装置2000以外の装置によって行われてもよい。後者の場合、割り当て決定装置2000は、「センサ10、そのセンサ10による観測結果を利用した解析の対象」という組み合わせを示す情報を、解析処理を行う解析装置へ提供する。
【0103】
<その他の制約>
割り当て決定装置2000は、割り当て決定モデルに対してさらに制約条件を加えることにより、種々の条件を満たすように各センサ10に対する移動物体20の割り当てを決定することができる。以下、そのような制約条件について、いくつか例示する。
【0104】
<<センサ10のキャパシティに関する制約条件>>
各センサ10に対して割り当てる移動物体20の数に上限が設けられてもよい。以下、センサ10に対して割り当て可能な移動物体20の数を、センサ10のキャパシティと呼ぶ。センサ10に対して割り当てる移動物体20の数に上限を設けることで、特定のセンサ10に負荷が集中してしまうことを防いだり、センサ10による観測漏れが発生してしまうことを防いだりすることができる。
【0105】
センサ10のキャパシティに上限を設けるための制約条件は、例えば以下の式(4)で表される。
【数4】
C3 は上記制約条件の制約の強さを表す正の実数である。capa は、1つのセンサ10に対して割り当て可能な移動物体20の数を表す。y_[n,m] は0又は1を示す補助変数である。なお、式(4)では、キャパシティが全てのセンサ10で共通となっている。しかしながら、キャパシティはセンサ10ごとに異なっていてもよい。
【0106】
式(4)において、Σy_[n,m] は0以上 capa 以下の値を取り得る。そのため、Σx_[n,α]<=capa である(すなわち、センサ10-nに対して割り当てられる移動物体20の数が capa 以下である)場合には、Σy_[n,m]-Σx_[n,α]=0 となるように y_[n,m] を適切に設定することで、式(4)の値を0にすることができる。一方で、Σx_[n,α]>capa である場合、Σy_[n,m]-Σx_[n,α]=0 とすることができないため、式(4)の値が0より大きくなってしまう。このことから、式(4)を最小化する変数の探索により、センサ10に対して割り当てられる移動物体20の数がセンサ10のキャパシティを超えないようにすることができる。
【0107】
<<センサ10の姿勢変化の大きさに基づく制限>>
センサ10の姿勢を大きく変化させると、センサ10の姿勢を変化させるために要する時間が長くなるため、センサ10が観測を行えない時間や、センサ10が正確な観測を行えない時間が長くなることがある。また、センサ10の姿勢の変化が大きいほど、センサ10のメカニカル機構にかかる負荷が大きくなり、センサ10の寿命が短くなる可能性がある。
【0108】
そこで例えば、センサ10の姿勢の変化を小さくするための制約条件を割り当て決定モデルに加えてもよい。こうすることで、センサ10の姿勢の変化ができる限り小さくなるように、センサ10の姿勢が決定される。よって、センサ10が観測を行えない時間やセンサ10が正確な観測を行えない時間を短くしたり、センサ10の寿命を長くしたりすることができる。
【0109】
センサ10の姿勢の変化を小さくするための制約条件を表す項は、例えば以下の式(5)で表される。
【数5】
C4 は、制約の強さを表す正の実数である。P_[n,d] は、センサ10-nが方位 d を向いた場合に与えられるペナルティの大きさを表す。
【0110】
上記制約条件において、ペナルティ P_[n,d] は、センサ10の姿勢の変化が大きくなるほど値が大きくなるように定められる。
図7は、センサ10の姿勢の変化に応じて定まるペナルティを例示する図である。各姿勢に対して与えられるペナルティは、円の内側に記載されている。
【0111】
図7の例において、センサ10-nの現在の向きは d3 である。そのため、同一の向き d3 についてのペナルティ P_[n,3] は0である。また、d3 とは向きが1段階異なる d2 と d4 についてはそれぞれ、ペナルティが1である(P_[n,2]=P_[n,4]=1)。
【0112】
これを一般化すると、センサ10-nの現在の向きが方位 dj である場合、方位 dj とは向きが k 段階異なる d_[j+k] と d_[j-k] についてのペナルティが k となる(P_[n,j±k]=k)。ただし、k は k<=dnum/2 を満たす正の整数である。
【0113】
したがって、センサが観測する(センサを割り当てる)移動物体が存在する区画が、該センサが観測している区画から遠いほど、式(5)を含むモデルの値は大きい。一方、センサが観測する(センサを割り当てる)移動物体が存在する区画が、該センサが観測している区画に近いほど、式(5)を含むモデルの値は小さい。したがって、式(5)を含むモデルをアニーリング処理することによって、センサの姿勢の変化を小さくするような割り当てを決めることができるという効果を奏する。
【0114】
<<センサ10の切り替えを抑制するための制限>>
或る移動物体20を割り当てるセンサ10を、これまでこの移動物体20が割り当てられていたセンサ10から別のセンサ10に切り替える場合(別のセンサ10へハンドオーバーする場合)、当該変更に伴った種々の処理が発生することがある。例えばセンサ10が、無線通信端末の基地局であり、移動物体20が無線通信端末であるとする。或る無線通信端末を観測する基地局が切り替わる場合、担当する基地局を切り替えるためのハンドオーバーの処理が行われる。このようにセンサ10の切り替えが発生すると、切り替え中はセンサ10の観測が難しくなったり、切り替えのための処理負荷が発生したりする。そのため、センサ10の切り替えはできる限り少なくすることが好ましい。言い換えれば、或るセンサ10が移動物体20を観測したら、そのセンサ10ができる限り長い時間移動物体20を観測し続けることが好ましい。
【0115】
そこで例えば、センサ10の切り替えを抑制するための制約条件を割り当て決定モデルに追加してもよい。例えばこのような制約条件は、以下の式(6)で表される。
【0116】
【数6】
C5 は、制約の強さを表す正の実数である。px_[n,α]は、前回の x_[n,α] の値を示す。すなわち、移動物体20-αが前回
センサ10-nに対して割り当てられていたか否かを表す。
【0117】
式(6)において、(px_[n,α]- x_[n,α])^2 は、センサ10-nに対する移動物体20-αの割り当てに変更がなければ0となり、変更があれば1となる。そのため、移動物体20の割り当ての変更が少ないほど、式(6)の値は小さくなる。よって、式(6)の値が小さくなるように x_[n,α] を決めることで、センサ10に対する移動物体20の割り当ての変更を少なくすることができる。
【0118】
言い換えると、前回の割り当てで各移動物体20に割り当てられたセンサ10と、今回の割り当てで各移動物体20に割り当てられるセンサ10との違いが大きいほど、式(6)を含むモデルの値は大きい。一方、前回の割り当てで各移動物体に割り当てられたセンサと、今回の割り当てで各移動物体に割り当てられるセンサとの違いが小さいほど、式(6)を含むモデルの値は小さい。したがって、式(6)を含むモデルをアニーリング処理することによって、切り替えを抑制するような割り当てを決めることができるという効果を奏する。
【0119】
また、センサ10の切り替えの抑制には、式(6)に加えて、又は式(6)に代えて、以下の式(7)で表される制約条件が利用されてもよい。
【数7】
C6 は、制約の強さを表す正の実数である。DB_[n,α]は、センサ10-nが移動物体20-αを継続して観測可能な予測時間(以下、追尾継続時間)を表す。
【0120】
追尾継続時間 DB_[n,α] は、将来の複数の時点それぞれについて、その時点における移動物体20-αの位置を推定し、その推定された位置の移動物体20をセンサ10-nで観測可能であるか否かを判定することにより算出することができる。例えばセンサ10の姿勢の制御を1秒ごとに行うとする。また、1秒後から t 秒後それぞれについて推定された位置の移動物体20-αがいずれも、センサ10-nによって観測可能な位置であるとする。さらに、t+1 秒後について推定された位置の移動物体20-αは、センサ10-nが観測できない位置であるとする。この場合、DB_[n,α]=t となる。
【0121】
ここで、或る位置の移動物体20がセンサ10によって観測可能であるか否かは、センサ10の各姿勢それぞれについて、その姿勢におけるセンサ10のセンシング範囲にその位置が含まれるか否かを判定することにより、判定することができる。移動物体20の位置をセンシング範囲に含めることができるセンサ10の姿勢が存在すれば、その位置の移動物体20は、センサ10によって観測可能である。一方、移動物体20の位置をセンシング範囲に含めることができるセンサ10の姿勢が存在しなければ、その位置の移動物体20は、センサ10によって観測できない。
【0122】
言い換えると、各移動物体に割り当てるセンサの時間が長いほど式(7)を含むモデルの値は小さい。一方、各移動物体に割り当てるセンサの時間が短いほど式(7)を含むモデルの値は大きい。したがって、式(7)を含むモデルをアニーリング処理することによって、切り替えを抑制するような割り当てを決めることができるという効果を奏する。
【0123】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0124】
なお、上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに提供することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM、CD-R、CD-R/W、半導体メモリ(例えば、マスク ROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに提供されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【0125】
10 センサ
20 移動物体
30 アニーリングマシン
40 領域
500 コンピュータ
502 バス
504 プロセッサ
506 メモリ
508 ストレージデバイス
510 入出力インタフェース
512 ネットワークインタフェース
2000 割り当て決定装置
2020 特定部
2040 実行制御部