(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-14
(45)【発行日】2022-01-25
(54)【発明の名称】無線通信システム
(51)【国際特許分類】
G05D 1/02 20200101AFI20220118BHJP
【FI】
G05D1/02 H
(21)【出願番号】P 2017103057
(22)【出願日】2017-05-24
【審査請求日】2020-05-20
(73)【特許権者】
【識別番号】399030060
【氏名又は名称】学校法人 関西大学
(74)【代理人】
【識別番号】100125704
【氏名又は名称】坂根 剛
(72)【発明者】
【氏名】滝沢 泰久
(72)【発明者】
【氏名】北之馬 貴正
【審査官】中田 善邦
(56)【参考文献】
【文献】中国特許出願公開第105091884(CN,A)
【文献】米国特許第08260485(US,B1)
【文献】中国特許出願公開第105203097(CN,A)
【文献】古木 翔大ら,複数の協調タスクに対するロボット群の行動制御に関する研究,ロボティクス・メカトロニクス 講演会2014 講演論文集,日本,一般社団法人日本機械学会,2014年05月24日,2A2-J04
【文献】中村優太ら,屋内環境におけるA*とPSOを組み合わせた経路計画,第30回日本ロボット学会学術講演会予稿集DVD-ROM 2012年,日本,日本ロボット学会,2012年09月17日,RSJ2012AC2F3-8
【文献】三福健太,PSOを用いた無線センサネットワークにおけるシンクノードの配置手法の検討,南山大学大学院理工学研究科修士論文要旨集2016年度,日本,南山大学大学院,2017年03月,http://www.st.nanzan-u.ac.jp/info/ma-thesis/2016/sc/m15sc011.pdf
(58)【調査した分野】(Int.Cl.,DB名)
G05D1/00-1/12
B25J1/00-21/02
(57)【特許請求の範囲】
【請求項1】
第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムであって、
前記第1無線ノードは、
前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストする送信部と、
前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信する受信部と、
前記第1無線ノードを含まず、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて前記局所最良評価値を有する局所最良ノードの位置とを用いて、前記第1評価値を計算する評価値計算部と、
前記局所最良ノー
ドの位置を、局所最良位置として取得する最良位置取得部と、
前記第1無線ノードの位置と前記最良位置取得部により取得された前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算する位置計算部と、
前記第2無線ノードの位置を中心として所定の半径を有する衝突予想領域を設定し、前記新たな位置が前記衝突予想領域内に存在せず、かつ、前記新たな位置から前記局所最良ノードの位置まで
の距離が前記
第1無線ノードの位置から前記局所最良ノードの位置までの距離よりも増加しないように、前記新たな位置を修正する衝突抑制部と、
前記衝突抑制部により修正された新たな位置に前記第1無線ノードを移動させる駆動部と、を備え
、
前記第1評価値および前記第2評価値を含む前記評価値は、前記目的ノードまでの距離が小さいほど、小さくなる、無線通信システム。
【請求項2】
請求項1に記載の無線通信システムにおいて、
前記第1無線ノードの位置から前記新たな位置に向かうベクトルが、前記第2無線ノードの位置を始点とし、前記衝突予想領域の外周と前記第1無線ノードを通過する前記衝突予想領域の接線との接点を終点とする2つのベクトルのいずれか一方と交差する場合、前記衝突抑制部は、前記新たな位置を修正する、無線通信システム。
【請求項3】
請求項2に記載の無線通信システムにおいて、
前記衝突抑制部は、前記新たな位置が前記接点となるように前記新たな位置を修正する、無線通信システム。
【請求項4】
請求項1ないし請求項3のいずれかに記載の無線通信ステムであって、
前記新たな位置が前記衝突予想領域内に位置し、かつ、
前記第1無線ノードの位置から前記新たな位置に向かうベクトルが、前記第2無線ノードの位置を始点とし、前記衝突予想領域の外周と前記第1無線ノードを通過する前記衝突予想領域の接線との接点を終点とする2つのベクトルの両者と交差しない場合、前記衝突抑制部は、前記新たな位置を修正する、無線通信システム。
【請求項5】
請求項4に記載の無線通信システムであって、
前記接線は、第1接線と第2接線とを含み、
前記衝突抑制部は、前記衝突予想領域の外周において前記第1接線と交わる第1交点と、前記衝突予想領域の外周において前記第2接線と交わる第2交点とを結ぶ前記衝突予想領域の外周上の曲線であって、前記第2無線ノードの位置から見て前記第1無線ノード側に位置する曲線上の点を、前記新たな位置に設定する、無線通信システム。
【請求項6】
第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムであって、
前記第1無線ノードは、
前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストする送信部と、
前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信する受信部と、
前記第1無線ノードと前記第2無線ノードとの間の空間に位置する無線ノードの数に基づいて、前記第2無線ノードの群れ度合いを計算する群れ度合い取得部と、
前記第1無線ノードを含まず、前記第2無線ノードを含む少なくとも1つの無線ノードにおける過去の評価値を取得し、前記少なくとも1つの無線ノードの群れ度合いを用いて前記少なくとも1つの無線ノードにおける過去の評価値を修正し、修正された過去の評価値の中から、最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する局所最良ノードの位置とを用いて、第1評価値を計算する評価値計算部と、
前記局所最良ノー
ドの位置を、局所最良位置として取得する最良位置取得部と、
前記第1無線ノードの位置と前記最良位置取得部により取得された前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算する位置計算部と、
前記位置計算部により計算された新たな位置に前記第1無線ノードを移動させる駆動部と、を備え
、
前記第1評価値および前記第2評価値を含む前記評価値は、前記目的ノードまでの距離が小さいほど、小さくなる、無線通信システム。
【請求項7】
第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムであって、
前記第1無線ノードは、
前記第1無線ノードの位置と、前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストする送信部と、
前記第2無線ノードの位置と、前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信する受信部と、
前記第1無線ノードを含まず、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する局所最良ノードの位置とを用いて、第1評価値を計算する評価値計算部と、
前記過去に計算された第1評価値において最小の評価値である自己最小評価値を所定の忘却度を用いて修正し、前記局所最良評価値と、前記所定の忘却度を用いて修正された自己最小評価値とを含む評価値の中で最小の評価値を自己最良評価値として取得し、前記自己最良評価値が取得された無線ノードの位置を自己最良位置として取得する最良位置取得部と、
前記第1無線ノードの位置と、前記自己最良位置と、前記局所最良ノードの位置とを用いて、前記第1無線ノードの新たな位置を計算する位置計算部と、
前記位置計算部により計算された新たな位置に前記第1無線ノードを移動させる駆動部と、を備え
、
前記第1評価値および前記第2評価値を含む前記評価値は、前記目的ノードまでの距離が小さいほど、小さくなる、無線通信システム。
【請求項8】
第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムにおいて、前記第1無線ノードに実行させるための無線通信プログラムであって、
前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストするステップと、
前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信するステップと、
前記第1無線ノードを含まず、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて前記局所最良評価値を有する局所最良ノードの位置とを用いて、前記第1評価値を計算するステップと、
前記局所最良ノー
ドの位置を、局所最良位置として取得するステップと、
前記第1無線ノードの位置と、前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算するステップと、
前記第2無線ノードの位置を中心として所定の半径を有する衝突予想領域を設定し、前記新たな位置が前記衝突予想領域内に存在せず、かつ、前記新たな位置から前記局所最良ノードの位置まで
の距離が前記
第1無線ノードの位置から前記局所最良ノードの位置までの距離よりも増加しないように、前記新たな位置を修正するステップと、を備え
、
前記第1評価値および前記第2評価値を含む前記評価値は、前記目的ノードまでの距離が小さいほど、小さくなる、無線通信プログラム。
【請求項9】
第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムにおいて、前記第1無線ノードに実行させるための無線通信プログラムであって、
前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストするステップと、
前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信するステップと、 前記第1無線ノードと前記第2無線ノードとの間の空間に位置する無線ノードの数に基づいて、前記第2無線ノードの群れ度合いを計算するステップと、
前記第1無線ノードを含まず、前記第2無線ノードを含む少なくとも1つの無線ノードにおける過去の評価値を取得し、前記少なくとも1つの無線ノードの群れ度合いを用いて前記少なくとも1つの無線ノードにおける過去の評価値を修正し、修正された過去の評価値の中から、最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する
局所最良ノードの位置とを用いて、第1評価値を計算するステップと、
前記局所最良ノードの位置を、局所最良位置として取得するステップと、
前記第1無線ノードの位置と、前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算するステップと、を備え
、
前記第1評価値および前記第2評価値を含む前記評価値は、前記目的ノードまでの距離が小さいほど、小さくなる、無線通信プログラム。
【請求項10】
第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムにおいて、前記第1無線ノードに実行させるための無線通信プログラムであって、
前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストするステップと、
前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信するステップと、
前記第1無線ノードを含まず、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する局所最良ノードの位置とを用いて、第1評価値を計算するステップと、
前記過去に計算された第1評価値において最小の評価値である自己最小評価値を所定の忘却度を用いて修正し、前記局所最良評価値と、前記所定の忘却度を用いて修正された自己最小評価値とを含む評価値の中で最小の評価値を自己最良評価値として取得し、前記自己最良評価値が取得された無線ノードの位置を自己最良位置として取得するステップと、 前記第1無線ノードの位置と、前記自己最良位置と、前記局所最良ノードの位置とを用いて、前記第1無線ノードの新たな位置を計算するステップと、を備え
、
前記第1評価値および前記第2評価値を含む前記評価値は、前記目的ノードまでの距離が小さいほど、小さくなる、無線通信プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無線通信システムに関し、さらに詳しくは、自律移動可能な無線ノードを含む無線通信システムに関する。
【背景技術】
【0002】
近年、防災を目的とした環境モニタリングや、社会インフラの維持管理を目的した構造物ヘルスモニタリングにおいて、無線センサネットワークの利用検討が進められている。これらのモニタリングでは、モニタリング対象となる空間における定点にセンサを配置した定点センシングによる無線センサネットワークが用いられる。
【0003】
定点センシングの利点として、例えば、以下の3点が挙げられる。すなわち、定点センシングは、定点に設置されたセンサによりリアルタイムにセンシングデータを取得できる。定転センシングは、センシングデータを継続的に取得することにより経時的な変化を把握することができる。また、定点センシングは、広範な範囲にセンサを設置することによりセンシングデータを空間的に解析することができる。
【0004】
しかし、定点センシングでは、センサが固定されるために、柔軟性が低い、空間的な制約がある等の欠点がある。
【0005】
災害発生時の被災状況調査では、災害発生状況を事前に予測してセンサの位置を決定することが困難である。定点センシングは、災害発生時に、被災状況に応じた柔軟なセンシングを行うことができない。また、空間的な制約として、例えば、構造物ヘルスモニタリングにおける以下の例が挙げられる。すなわち、センサを構造物に設置することが構造上困難である場合、センサの取付作業に危険が伴うため構造物における所望の位置にセンサを取り付けることができない場合、構造物において定点センシングを行うことができない。
【0006】
定点センシングに不向きな環境において、単独移動体によるモニタリングが検討されている。単独移動体とは、例えば、各種センサを搭載した自立探索型ロボットである。しかし、モニタリング対象となる広い空間を単独移動体が探索する場合には、膨大な時間が必要となるという問題がある。また、単独移動体の性能によっては探索範囲が限定されるという問題がある。
【0007】
そこで、各々がセンサを搭載した複数の移動体を使用し、これらの複数の移動体によりセンシングを行うことが考えられる。この場合、複数の移動体の各々を操縦者が操縦することは効率的でない。各々が自律移動可能な複数の移動体が集団で移動することにより、効率的なセンシングが可能となると考えられる。
【0008】
非特許文献1には、自律移動可能な複数の無線モバイルノードにおいて群知能を適用することにより、複数の無線モバイルノードの知的集団を構成して、モニタリング空間の探索を行うことが開示されている。
【0009】
非特許文献2には、群知能の一種である多目的粒子群最適化(MOPSO:Multi-Objective Particle Swarm Optimization)が開示されている。多目的粒子群最適化は、連続空間に広がる多目的解を、自律した粒子が協調して探索を行う多点探索アルゴリズムである。
【先行技術文献】
【非特許文献】
【0010】
【文献】Beekma, M., Sword, G., and Simpson, S.J.: Swarm Intelligence in Cellular Robotic Systems, Natural Computing Series, pp.3--41(2008).
【文献】Moore, J., ChaPcan, R.,Application Of Particle Swarm To Multiobjective Optimization(1999).
【発明の概要】
【発明が解決しようとする課題】
【0011】
しかし、多目的粒子群最適化を用いて、各々が自律自立可能な複数の移動体が集団を構成しながら、モニタリング対象である目的地を探索するようにした場合、以下の問題が発生する。すなわち、多目的粒子群最適化を用いた場合、移動体同士が衝突する可能性がある。移動体が衝突により破壊された場合、移動体はモニタリングを継続することができない。
【0012】
また、多目的粒子群最適化は、1つの解を得た場合に探索を終了する。クラスタを構成する移動体は、複数の目的地のうち一の目的地に到達した後に、他の目的地に向かって移動しない。つまり、移動体は、モニタリング対象である一の目的地に到達した後に、モニタリングを継続することができない。
【0013】
本発明の目的は、自律移動可能な移動体が継続してモニタリングすることが可能な技術を提供することである。
【課題を解決するための手段】
【0014】
上記課題を解決するため、請求項1記載の発明は、第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムであって、前記第1無線ノードは、前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストする送信部と、前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信する受信部と、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて前記局所最良評価値を有する局所最良ノードの位置とを用いて、前記第1評価値を計算する評価値計算部と、前記局所最良ノードが前記局所最良評価値を取得した時の位置を、局所最良位置として取得する最良位置取得部と、前記第1無線ノードの位置と前記最良位置取得部により取得された前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算する位置計算部と、前記第2無線ノードの位置を中心として所定の半径を有する衝突予想領域を設定し、前記新たな位置が前記衝突予想領域内に存在せず、かつ、前記新たな位置から前記局所最良ノードの位置まで距離が前記無線ノードの位置から前記局所最良ノードの位置までの距離よりも増加しないように、前記新たな位置を修正する衝突抑制部と、前記衝突抑制部により修正された新たな位置に前記第1無線ノードを移動させる駆動部と、を備える。
【0015】
請求項2記載の発明は、請求項1に記載の無線通信システムであって、前記第1無線ノードの位置から前記新たな位置に向かうベクトルが、前記第2無線ノードの位置を始点とし、前記衝突予想領域の外周と前記第1無線ノードを通過する前記衝突予想領域の接線との接点を終点とする2つのベクトルのいずれか一方と交差する場合、前記衝突抑制部は、前記新たな位置を修正する。
【0016】
請求項3記載の発明は、請求項2に記載の無線通信システムであって、前記衝突抑制部は、前記新たな位置が前記接点となるように前記新たな位置を修正する。
【0017】
請求項4記載の発明は、請求項1ないし請求項3のいずれかに記載の無線通信ステムであって、前記新たな位置が前記衝突予想領域内に位置し、かつ、前記第2無線ノードの位置を始点とし、前記衝突予想領域の外周と前記第1無線ノードを通過する前記衝突予想領域の接線との接点を終点とする2つのベクトルの両者と交差しない場合、前記衝突抑制部は、前記新たな位置を修正する。
【0018】
請求項5記載の発明は、請求項4に記載の無線通信システムであって、前記接線は、第1接線と第2接線とを含み、前記衝突抑制部は、前記衝突予想領域の外周において前記第1接線と交わる第1交点と、前記衝突予想領域の外周において前記第2接線と交わる第2交点とを結ぶ前記衝突予想領域の外周上の曲線であって、前記第2無線ノードの位置から見て前記第1無線ノード側に位置する曲線上の点を、前記新たな位置に設定する。
【0019】
請求項6記載の発明は、第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムであって、前記第1無線ノードは、前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストする送信部と、前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信する受信部と、前記第1無線ノードと前記第2無線ノードとの間の空間に位置する無線ノードの数に基づいて、前記第2無線ノードの群れ度合いを計算する群れ度合い取得部と、前記第2無線ノードを含む少なくとも1つの無線ノードにおける過去の評価値を取得し、前記少なくとも1つの無線ノードの群れ度合いを用いて前記少なくとも1つの無線ノードにおける過去の評価値を修正し、修正された過去の評価値の中から、最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する局所最良ノードの位置とを用いて、第1評価値を計算する評価値計算部と、前記局所最良無線ノードが前記局所最良評価値を取得した時の位置を、局所最良位置として取得する最良位置取得部と、前記第1無線ノードの位置と前記最良位置取得部により取得された前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算する位置計算部と、前記位置計算部により計算された新たな位置に前記第1無線ノードを移動させる駆動部と、を備える。
【0020】
請求項7記載の発明は、第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムであって、前記第1無線ノードは、前記第1無線ノードの位置と、前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストする送信部と、前記第2無線ノードの位置と、前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信する受信部と、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する局所最良ノードの位置とを用いて、第1評価値を計算する評価値計算部と、前記過去に計算された第1評価値において最小の評価値である自己最小評価値を所定の忘却度を用いて修正し、前記局所最良評価値と、前記所定の忘却度を用いて修正された自己最小評価値とを含む評価値の中で最小の評価値を自己最良評価値として取得し、前記自己最良評価値が取得された無線ノードの位置を自己最良位置として取得する最良位置取得部と、前記第1無線ノードの位置と、前記自己最良位置と、前記局所最良ノードの位置とを用いて、前記第1無線ノードの新たな位置を計算する位置計算部と、前記位置計算部により計算された新たな位置に前記第1無線ノードを移動させる駆動部と、を備える。
【0021】
請求項8記載の発明は、第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムにおいて、前記第1無線ノードに実行させるための位置計算プログラムであって、前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストするステップと、前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信するステップと、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて前記局所最良評価値を有する局所最良ノードの位置とを用いて、前記第1評価値を計算するステップと、前記少なくとも1つの無線ノードにおいて前記局所最良ノードが前記局所最良評価値を取得した時の位置を、局所最良位置として取得するステップと、前記第1無線ノードの位置と、前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算するステップと、前記第2無線ノードの位置を中心として所定の半径を有する衝突予想領域を設定し、前記新たな位置が前記衝突予想領域内に存在せず、かつ、前記新たな位置から前記局所最良ノードの位置まで距離が前記無線ノードの位置から前記局所最良ノードの位置までの距離よりも増加しないように、前記新たな位置を修正するステップと、を備える。
【0022】
請求項9記載の発明は、第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムにおいて、前記第1無線ノードに実行させるための位置計算プログラムであって、前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストするステップと、前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信するステップと、前記第1無線ノードと前記第2無線ノードとの間の空間に位置する無線ノードの数に基づいて、前記第2無線ノードの群れ度合いを計算するステップと、前記第2無線ノードを含む少なくとも1つの無線ノードにおける過去の評価値を取得し、前記少なくとも1つの無線ノードの群れ度合いを用いて前記少なくとも1つの無線ノードにおける過去の評価値を修正し、修正された過去の評価値の中から、最小の評価値を局所最良評価値として取得し、前記局所最良評価値と、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する無線ノードの位置とを用いて、第1評価値を計算するステップと、前記少なくとも1つの無線ノードにおいて前記局所最良評価値を有する無線ノードが前記局所最良評価値を取得した時の位置を、局所最良位置として取得するステップと、前記第1無線ノードの位置と、前記局所最良位置とを用いて、前記第1無線ノードの新たな位置を計算するステップと、を備える。
【0023】
請求項10記載の発明は、第1無線ノードと第2無線ノードとを含むk(kは2以上の整数)個の自律移動可能な無線ノードを備える無線通信システムにおいて、前記第1無線ノードに実行させるための位置計算プログラムであって、前記第1無線ノードの位置と前記第1無線ノードから目的ノードまでの距離の指標である第1評価値を含む第1通知パケットをブロードキャストするステップと、前記第2無線ノードの位置と前記第2無線ノードから目的ノードまでの距離の指標である第2評価値とを含む第2通知パケットを前記第2無線ノードから受信するステップと、前記第2無線ノードを含む少なくとも1つの無線ノードにおいて過去に取得された評価値の中から最小の評価値を局所最良評価値として取得し、前記第1無線ノードの位置と、前記少なくとも1つの無線ノードにおいて局所最良評価値を有する局所最良ノードの位置とを用いて、第1評価値を計算するステップと、前記過去に計算された第1評価値において最小の評価値である自己最小評価値を所定の忘却度を用いて修正し、前記局所最良評価値と、前記所定の忘却度を用いて修正された自己最小評価値とを含む評価値の中で最小の評価値を自己最良評価値として取得し、前記自己最良評価値が取得された無線ノードの位置を自己最良位置として取得するステップと、前記第1無線ノードの位置と、前記自己最良位置と、前記局所最良ノードの位置とを用いて、前記第1無線ノードの新たな位置を計算するステップと、を備える。
【発明の効果】
【0024】
本発明によれば、自律移動可能な移動体が継続してモニタリングすることが可能な技術を提供することができる。
【図面の簡単な説明】
【0025】
【
図1】本発明の実施の形態に係るモニタリングシステムの構成を示す図である。
【
図2】
図1に示す目的ノードの構成を示す機能ブロック図である。
【
図3】
図1に示す無線ノードの構成を示す機能ブロック図である。
【
図4】
図1に示す無線ノードの動作を示すフローチャートである。
【
図5】
図1に示す無線ノードにより送信される通信パケットを示す図である。
【
図6】
図1に示す無線ノードの近傍に位置する無線ノードを説明する図である。
【
図8】
図4に示す評価値計算処理のフローチャートである。
【
図9】
図1に示す無線ノードと、当該無線ノードの近傍ノードとの位置関係の一例を示す図である。
【
図10】
図1に示す無線ノードの位置の修正方法の一例を示す図である。
【
図11】
図1に示す無線ノードの位置の修正方法の他の例を示す図である。
【
図12】
図1に示す無線ノードの位置の修正方法の他の例を示す図である。
【
図13】
図1に示す無線ノードが一の目的ノードに到達した後に他の目的ノードへ移動する動作を説明する図である。
【
図14】
図4に示す位置計算方法のシミュレーション結果を示すグラフである。
【
図15】
図4に示す位置計算方法のシミュレーション結果を示すグラフである。
【
図16】
図1に示す無線ノードの他の構成例を示す機能ブロック図である。
【発明を実施するための形態】
【0026】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【0027】
[1.モニタリングシステム100の構成]
[1.1全体構成]
図1は、本発明の実施の形態に係るモニタリングシステム100の構成図である。
図1に示すように、モニタリングシステム100は、無線ノードM-1~M-kと、目的ノードD-1~D-mとを備える。ここで、k及びmの各々は、2以上の自然数である。
図1に示す例では、8個の無線ノードM-1~M-8と、4個の目的ノードD-1~D-4を示している。
【0028】
無線ノードM-1~M-kは、モニタリング空間10内を移動して、目的ノードD-1~D-4のいずれかに向かう。無線ノードM-1~M-kの各々は、目的ノードD-1~D-kのうち一の目的ノードに向かう場合、他の無線ノードと集団(クラスタ)を構成しながら当該一の目的ノードに移動することがある。
【0029】
例えば、無線ノードM-1~M-3が、1つの集団を構成しながら目的ノードD-1に向かい、その他の無線ノードが、別の集団を構成しながら目的ノードD-2に向かう場合が考えられる。ただし、本実施の形態では、無線ノード及び目的ノードの位置関係によっては、一の無線ノードが単独で目的ノードに向かって移動することがあり得る。
【0030】
無線ノードM-1~M-kは、後述する通知パケットPcを互いにやり取りする。通知パケットPcの送受信には、近距離無線通信が用いられる。無線ノードM-1~M-kは、例えば、BLE(Bluetooth Low Energy)や、IEEE802.15.4などの通信規格に準拠した無線通信を行う。
【0031】
目的ノードD-1~D-4の各々は、モニタリング空間10に配置され、モニタリング対象となる物体の近傍に配置される。目的ノードD-1~D-mは、近距離無線通信よりも通信距離の長い通信規格を用いて、自己の位置及び自己の識別データを含む広告パケットPadをブロードキャストする。
【0032】
無線ノードM-1~M-kは、定期的に通知パケットPcを生成し、その生成した通知パケットPcをブロードキャストする。例えば、無線ノードM-1の通知パケットPcは、無線ノードM-1の識別データと、無線ノードM-1の位置データと、無線ノードM-1により計算された評価値とを含む。無線ノードM-1の評価値は、無線ノードM-1から目的ノードD-1~D-mのうちいずれか1つのノードまでの距離の指標である。
【0033】
図1では、無線ノードM-2,M-4~M-7が無線ノードM-1によりブロードキャストされた通知パケットPcを受信する様子を示している。無線ノードM-iは、他の無線ノードとの位置関係によっては、他の無線ノードからブロードキャストされる通知パケットPcを受信できない場合がある。iは、1以上k以下の整数である。
【0034】
また、
図1では、無線ノードM-2,M-3,M-7が、目的ノードD-1によりブロードキャストされた広告パケットPadを受信する様子を示している。無線ノードM-iは、目的ノードD-1~D-mとの位置関係によっては、一部の目的ノードの広告パケットPadを受信できない場合がある。しかし、本実施の形態では、無線ノードM-1~M-kが、全ての目的ノードから広告パケットPadを受信できると仮定して説明する。
【0035】
無線ノードM-1~M-kは、自律移動可能な移動体であり、例えば、ドローンと呼ばれる無人航空機である。無線ノードM-1~M-kは、互いに異なるモニタリング装置を備えている。モニタリング装置は、例えば、カメラや、様々な種類のセンサである。無線ノードM-1~M-kは、目的ノードD-1~D-mへ自律的に移動して、目的ノードD-1~D-m近傍に配置されたモニタリング対象についてのデータを取得する。
【0036】
複数の無線ノードが1つの集団を構成しながら移動する場合、無線ノード同士が衝突する虞がある。そこで、無線ノードM-1~M-kは、他の無線ノードから送信される通知パケットPcに含まれるデータを利用して、無線ノード同士の衝突を抑制する制御を行う。無線ノード同士の衝突を抑制する制御の詳細については、後述する。
【0037】
また、多目的粒子群最適化では、自律移動可能な粒子は、複数の目的地が設定されている場合であっても、複数の目的地のうち一の目的地に到達した場合に目的地の探索を終了する。しかし、無線ノードM-1~M-kは、後述するように、目的ノードD-1~D-mのうち一の目的ノードに到達した場合であっても、一の目的ノードから他の目的ノードへ向かって移動を開始する。無線ノードが一の目的ノードに到達した後の無線ノードの動作については、後述する。
【0038】
[1.2.目的ノードD-1の構成]
図2は、
図1に示す目的ノードD-1の構成を示す機能ブロック図である。
図2に示すように、目的ノードD-1は、アンテナ21と、位置取得部22と、広告パケット生成部23と、送信部24とを含む。
【0039】
位置取得部22は、目的ノードD-1が配置された位置を検出し、その検出された位置を記録した位置データを生成する。位置取得部22は、その生成した位置データを広告パケット生成部23に出力する。位置取得部22は、例えば、GPS(Global Positioning System)装置である。
【0040】
広告パケット生成部23は、目的ノードD-1の識別データを予め保持している。広告パケット生成部23は、目的ノードD-1の識別データと、位置取得部22から出力された位置データとを含む広告パケットPadを生成する。広告パケット生成部23は、その生成した広告パケットPadを送信部24に出力する。
【0041】
送信部24は、目的ノードD-1の識別データ及び位置データを含む広告パケットPadを広告パケット生成部23から受けた場合、その生成した広告パケットPadをアンテナ21を介してブロードキャストする。広告パケットPadは、定期的にブロードキャストされる。
【0042】
なお、
図1に示す目的ノードD-2~D-4の構成は、
図2に示す目的ノードD-1の構成と同じである。
【0043】
[1.3.無線ノードM-iの構成]
図3は、
図1に示す無線ノードM-iの構成を示す機能ブロック図である。上述のように、iは、1以上k以下の整数である。
【0044】
図3に示すように、無線ノードM-iは、自己の位置x
i(t)を更新して新たな位置x
i(t+1)を生成し、生成された新たな位置x
i(t+1)に移動する。ここで、tは、無線ノードM-iの位置更新を繰り返した回数である。無線ノードM-iは、自己の位置x
i(t)の更新を繰り返すことにより、目的ノードD-1~D-mのいずれかに向かって移動する。
【0045】
無線ノードM-iは、アンテナ101と、送受信部102と、広告パケット取得部103と、通知パケット生成部104と、通知パケット取得部105と、群れ度合い取得部106と、評価値計算部107と、忘却度設定部108と、最良位置取得部109と、位置計算部110と、衝突抑制部111と、駆動部112とを備える。
【0046】
(送受信部102)
送受信部102は、アンテナ101を介して、目的ノードから広告パケットPadを受信した場合、その受信した広告パケットPadを広告パケット取得部103に出力する。
【0047】
送受信部102は、無線ノードM-iの通知パケットPcを通知パケット生成部104から受けた場合、アンテナ101を介して、その受けた無線ノードM-iの通知パケットPcをブロードキャストする。
【0048】
送受信部102は、他の無線ノードから通知パケットPcを受信した場合、その受信した通知パケットPcを通知パケット取得部105に出力する。
【0049】
上述のように、無線ノードM-1~M-kは、近距離無線通信を用いて通知パケットPcをブロードキャストするため、無線ノードM-iは、他の全ての無線ノードから通知パケットPcを受信できるとは限らない。無線ノードM-iは、通知パケットPcを受信した場合、通知パケットPcの送信元である他の無線ノードを、自己(無線ノードM-i)の近傍に位置する近傍ノードであると判断する。
【0050】
以下、無線ノードM-iの近傍に位置する近傍ノードを、「近傍ノードM-j」と記載する。ここで、jは、1以上k以下であり、かつ、iと異なる整数である。
【0051】
(広告パケット取得部103)
広告パケット取得部103は、広告パケットPadを送受信部102から受け、その受けた広告パケットPadから目的ノードの位置データを取得する。広告パケット取得部103は、その取得した目的ノードの位置データを評価値計算部107に出力する。
【0052】
(通知パケット生成部104)
通知パケット生成部104は、評価値Ei(t+1)を評価値計算部107から受け、無線ノードM-iの位置xi(t+1)を位置計算部110から受ける。通知パケット生成部104は、無線ノードM-iの識別データを予め保持している。通知パケット生成部104は、無線ノードM-iの識別データと、評価値Ei(t+1)と、位置xi(t+1)とを含む通知パケットPcを生成する。通知パケット生成部104は、その生成した通知パケットPcを送受信部102に出力する。
【0053】
(通知パケット取得部105)
通知パケット取得部105は、近傍ノードM-jの通知パケットPcを送受信部102から受ける。通知パケット取得部105は、その受けた他の近傍ノードM-jの通知パケットPcから、近傍ノードM-jの評価値Ej(t)及び位置xj(t)を取得する。
【0054】
通知パケット取得部105は、その取得した位置xj(t)を群れ度合い取得部106に出力し、その取得した評価値Ej(t)を評価値計算部107に出力する。通知パケット取得部105は、その取得した評価値Ej(t)及び位置xj(t)を最良位置取得部109に出力する。
【0055】
(群れ度合い取得部106)
群れ度合い取得部106は、近傍ノードM-jの位置xj(t)を通知パケット取得部105から受け、無線ノードM-iの位置xi(t)を位置計算部110から受ける。群れ度合い取得部106は、無線ノードM-iの位置xi(t)及び近傍ノードM-jの位置xj(t)に基づいて、群れ度合いsij(t)を取得する。群れ度合いsij(t)は、無線ノードM-iと近傍ノードM-jとの間に存在する無線ノードの数を示す。
【0056】
(忘却度設定部108)
忘却度設定部108は、忘却度Dを設定する。忘却度Dは、直前に取得された自己最良評価値に乗算されるパラメータであり、直前に取得された自己最良評価値を新たな自己最良評価値に更新する際に用いられる。詳細に付いては後述するが、無線ノードM-iは、新たな自己最良評価値を取得する際に忘却度Dを用いることにより、一の目的ノードに到達した後に他の目的ノードに到達することを可能とする。
【0057】
(評価値計算部107)
評価値計算部107は、近傍ノードM-jの評価値Ej(t)を通知パケット取得部105から受け、群れ度合いsij(t)を群れ度合い取得部106から受ける。評価値計算部107は、自己最良位置xi_Lbest(t)を最良位置取得部109から受ける。評価値計算部107は、近傍ノードの評価値Ej(t)と、近傍ノードの位置xj(t)と、群れ度合いsij(t)と、自己の位置xi(t)を用いて、無線ノードM-iの評価値Ei(t+1)を計算する。評価値計算部107は、計算により得られた評価値Ei(t+1)を最良位置取得部109に出力する。
【0058】
(最良位置取得部109)
最良位置取得部109は、近傍ノードM-jの評価値Ej(t)及び位置xj(t)を通知パケット取得部105から受ける。最良位置取得部109は、無線ノードM-iの評価値Ei(t)を評価値計算部107から受け、無線ノードM-iの位置xi(t)を位置計算部110から受ける。最良位置取得部109は、忘却度Dを忘却度設定部108から受ける。
【0059】
最良位置取得部109は、忘却度Dと、過去に計算した自己の評価値E1(1)~E1(t)と、過去に受けた近傍ノードM-jの評価値Ej(1)~Ej(t)とを用いて、自己最良評価値を特定する。最良位置取得部109は、その特定した自己最良評価値に対応する無線ノードの位置を、自己最良位置xi_Pbest(t)として評価値計算部107及び位置計算部110に出力する。
【0060】
最良位置取得部109は、過去に受けた近傍ノードM-jの評価値Ej(1)~Ej(t)における最小の評価値を、局所最良評価値として特定する。最良位置取得部109は、近傍ノードのうち、局所最良評価値を有する局所最良ノードの位置を、局所最良位置xLbest(t)として位置計算部110に出力する。
【0061】
(位置計算部110)
位置計算部110は、自己最良位置xi_Pbest(t)及び局所最良位置xLbest(t)を最良位置取得部109から受ける。位置計算部110は、無線ノードM-iの位置xi(t)を自己最良位置xi_Pbest(t)及び局所最良位置xLbest(t)を用いて更新して、無線ノードM-iの新たな位置xi(t+1)を計算する。位置計算部110は、その新たな位置xi(t+1)を駆動部112に出力する。
【0062】
(駆動部112)
駆動部112は、無線ノードM-iの位置xi(t+1)を位置計算部110から受ける。駆動部112は、無線ノードM-iがその受けた位置xi(t+1)に移動するように、無線ノードM-iを制御する。
【0063】
[2.無線ノードの動作]
図4は、
図1に示す無線ノードの動作を示すフローチャートである。
図4を参照しながら、無線ノードM-iの動作を説明する。
【0064】
[2.1.初期化]
無線ノードM-iは、最初に、初期化処理を実行する(ステップS101)。具体的には、無線ノードM-iにおいて、位置計算部110は、予め設定されていた無線ノードM-iの位置を、1回目の無線ノードM-iの位置Mi(1)に設定する。
【0065】
また、評価値計算部107は、目的ノードD-i~D-mから広告パケットPadを受信することができた場合、1回目の無線ノードM-iの評価値Ei(1)を計算する。例えば、評価値計算部107は、目的ノードD-1から広告パケットPadを受信した場合、目的ノードD-1の位置と、1回目の無線ノードM-iの位置Mi(1)の位置から、目的ノードD-1から無線ノードM-iまでの距離を計算する。評価値計算部107は、計算した距離を、1回目の無線ノードM-iの評価値Ei(1)に設定する。
【0066】
評価値計算部107は、複数の目的ノードから広告パケットを受信した場合、この複数の目的ノードの各々に対する評価値を計算し、その計算した評価値の中から最小の評価値を、評価値Ei(1)に設定する。
【0067】
評価値計算部107は、全ての目的ノードから広告パケットを受信することができない場合、目的ノードの位置を用いて評価値Ei(1)を計算することができない。この場合、評価値Ei(1)は、予め設定されている評価値の最大値に設定される。評価値Ei(1)を、目的ノードから最大限に離れていることを示す値に設定するためである。
【0068】
[2.2.通信パケットPcの送信]
無線ノードM-iにおいて、通知パケット生成部104は、通知パケットPcを生成して、モニタリング空間10にブロードキャストする(ステップS102)。
【0069】
図5は、ステップS101の実行直後に生成される通知パケットPcを示す図である。
図5に示すように、無線ノードM-i通知パケットPcは、無線ノードM-iの識別データと、無線ノードM-iの位置x
i(t)と、無線ノードM-iの評価値E
i(t)とを含む。無線ノードM-iの通知パケットPcには、無線ノードM-iの識別データとして、「Address M-i」が記録される。
【0070】
ステップS101において、位置計算部110は、1回目の無線ノードM-iの位置x
i(1)を取得し、評価値計算部107は、1回目の無線ノードM-iの評価値E
i(1)を計算している。このため、
図5に示す通知パケットPcには、1回目の無線ノードM-iの位置x
i(1)と、1回目の無線ノードM-iの評価値E
i(1)が記録される。
【0071】
[2.3.他の無線ノードの位置及び評価値の取得]
無線ノードM-iにおいて、通知パケット取得部105は、送受信部102により受信された近傍ノードM-jの通知パケットPcから、近傍ノードM-jの位置xj(t)及び評価値Ej(t)を取得する(ステップS103)。無線ノードM-1~M-kは、近距離無線通信を利用して無線ノード同士で通信する。このため、無線ノードM-iは、無線ノードM-i以外の全ての無線ノードから、位置及び評価値を取得するとは限らない。
【0072】
図6は、無線ノードM-5の通信範囲を示す図である。
図6を参照して、破線で描かれた円形領域は、無線ノードM-5が他の無線ノードと無線通信をすることができる通信可能範囲を示す。
図6において、無線ノードM-5は、通信可能範囲内に位置している無線ノードM-1~M-4,M-6から通知パケットPcを受信し、無線ノードM-1~M-4,M-6の位置及び評価値を取得することができる。この場合、無線ノードM-5の近傍ノードは、無線ノードM-1~M-4,M-6である。また、無線ノードM-1~M-6が1つの集団としてある目的ノードに向かっているとみなすことができる。
【0073】
一方、
図6において、無線ノードM-5は、通信可能範囲の外に位置している無線ノードM-7~M-10から通知パケットPcを受信することができない。このため、無線ノードM-5は、無線ノードM-7~M-10の評価値を用いて自己の評価値を計算しない。無線ノードM-5は、無線ノードM-7~M-10の位置を用いて自己の新たな位置x
i(t)を計算しない。
【0074】
[2.4.群れ度合いの計算]
無線ノードM-iにおいて、群れ度合い取得部106は、自己の位置と、ステップS103において通知パケット取得部105により取得された近傍ノードの位置とに基づいて、群れ度合いを計算する(ステップS104)。群れ度合いは、無線ノードM-iと、近傍ノードM-jとの間の空間に位置する無線ノードの数に相当する。つまり、群れ度合いは、無線ノードM-iと、近傍ノードM-jとの間の空間において、無線ノードがどのくらい密集しているかを示す指標である。無線ノードM-iに関して、複数の近傍ノードが存在する場合、群れ度合いは、近傍ノードごとに計算される。
【0075】
図7は、群れ度合いの計算方法を説明する図である。無線ノードM-1~M-kは、実際には、3次元空間に配置されているが、説明の便宜上、無線ノードM-i及び近傍ノードM-jを
図7において2次元平面上に配置する。
図7を参照して、無線ノードM-iの位置x
i(t)を中心とした円C-iと、近傍ノードM-jの位置x
j(t)を中心とした円C-jとを想定する。円C-i,C-jの半径は、無線ノードM-iから無線ノードM-kまでの距離dである。
【0076】
群れ度合い取得部106は、円C-i内に位置し、かつ、円C-j内に位置する無線ノードの数をカウントする。無線ノードM-i及び近傍ノードM-jは、カウントの対象から除かれる。群れ度合い取得部106は、円C-i内に存在し、かつ、円C-j内に位置する無線ノードの数に基づいて、群れ度合いsij(t)を取得する。
【0077】
つまり、無線ノードM-iを基準とした、近傍ノードM-jの群れ度合いは、下記の式(1)により計算される。
【0078】
【0079】
式(1)において、nij(t)は、円C-i内に位置し、かつ、円C-j内に位置する無線ノードの数である。Sは、正規化パラメータである。群れ度合いsij(t)の計算に、正規化パラメータSを使用しなくてもよい。
【0080】
群れ度合いsij(t)が大きいほど、無線ノードが、無線ノードM-iと近傍ノードM-kとの間の空間に多く集まっていることを示す。群れ度合いsij(t)は、後述するように、無線ノードM-iの評価値Ei(t)の計算に用いられる。
【0081】
[2.5.評価値の計算]
無線ノードM-iにおいて、評価値計算部107は、無線ノードM-iの近傍ノードの評価値と、ステップS104で計算された群れ度合いとを用いて、自己の評価値Ei(t)を計算する(ステップS105)。
【0082】
図8は、
図4に示す評価値計計算(ステップS105)のフローチャートである。
図8を参照しながら、無線ノードM-iの評価値E
i(t)の計算方法を説明する。
【0083】
評価値計算部107は、ステップS103で取得された各近傍ノードの評価値を修正する(ステップS501)。近傍ノードの評価値は、下記式(2)により修正される。
【0084】
【0085】
式(2)において、eij(t)は、無線ノードM-iによって修正された近傍ノードM-jの評価値である。Ej(t)は、近傍ノードM-jの評価値である。sij(t)は、無線ノードM-iと近傍ノードM-jとの間における群れ度合いである。
【0086】
評価値計算部107は、ステップS501で計算された各近傍ノードの修正評価値の中から局所最良評価値を特定する(ステップS502)。具体的には、評価値計算部107は、下記の式(3)に従って、各近傍ノードの修正評価値の中から局所最良評価値を特定する。
【0087】
【0088】
式(3)において、ei_LBest(t)は、無線ノードM-iにおける局所最良評価値である。
【0089】
評価値計算部107は、ステップS502で特定された局所最良評価値と、自己(無線ノードM-i)の位置とに基づいて、自己の評価値を計算する(ステップS503)。自己の評価値は、下記式(4)により得られる。
【0090】
【0091】
式(4)において、Ei(t+1)は、ステップS503で得られる無線ノードM-iの新たな評価値である。xi_LBest(t)は、後述するステップS506で得られる局所最良評価値に対応する近傍ノードである局所最良ノードの位置である。なお、t=1の場合、xi_LBest(t)は、初期化(ステップS101)で得られる無線ノードM-1の位置xi(t)である。
【0092】
以下、評価値計算部107が無線ノードM-iの評価値Ei(t)を近傍ノードの最小評価値に基づいて決定する理由を説明する。
【0093】
無線ノードM-iは、近傍ノードの中で最小の評価値を有するノードに近づくことにより、目標ノードに近づくことができると想定して、自己の位置xi(t)を更新する。このため、後述するステップS110において、無線ノードM-iは、自己の位置xi(t)を更新する際に、局所最良位置xi_LBest(t)を使用する。最良位置取得部109が局所最良位置xi_LBest(t)を取得できるようにするために、評価値計算部107は、自己の評価値Ei(t)を近傍ノードの最小評価値に基づいて決定する。
【0094】
(群れ度合いの使用による効果)
評価値計算部107は、ステップS501において、群れ度合いSij(t)を用いて、近傍ノードM-jの評価値Ej(t)を修正する。上述のように、無線ノードM-iは、近傍ノードの中で最小の評価値を有するノードに近づくことにより、目標ノードに近づくことができると想定して、自己の位置xi(t)を更新する。
【0095】
しかし、無線ノードM-iと、最小の評価値を有する近傍ノードとの間の空間に、多くの無線ノードが存在する場合がある。この場合、無線ノードM-iが最小の評価値を有する近傍ノードに近づくことにより、無線ノードM-iが他の無線ノードと衝突する可能性が高くなる。評価値計算部107は、このような衝突を回避するために、式(2)に示すように、無線ノードM-iと近傍ノードM-jとの間の空間における無線ノードの数に応じて、近傍ノードM-jの評価値Ej(t)を修正する。修正により、近傍ノードM-jの修正評価値は、群れ度合いSij(t)に比例して増加する。
【0096】
この結果、近傍ノードM-jが最小の評価値を有しているにも関わらず無線ノードM-iと近傍ノードM-jとの間の空間において無線ノードが密集している場合、無線ノードM-iの評価値が、近傍ノードM-jの評価値に基づいて決定されることが抑制される。群れ度合いSij(t)を用いて、近傍ノードM-jの評価値Ej(t)を修正することにより、無線ノードM-iが、他の無線ノードが密集している空間に向かって移動することが抑制されるため、無線ノードM-iが他の無線ノードと衝突することを防ぐことができる。
【0097】
[2.6.局所最良位置の決定]
無線ノードM-iにおいて、最良位置取得部109は、目的ノードに向かって移動を開始してから目的ノードに到着するまでの間に取得した近傍ノードの評価値の中で、最小の評価値を有する近傍ノードである局所最良ノードの位置を、局所最良位置x
i_Lbest(t)として決定する(ステップS106)。局所最良位置x
i_Lbest(t)は、無線ノードM-iの通信可能範囲(
図6参照)において最も目的ノードに近いと想定される無線ノードの位置に相当する。
【0098】
なお、最良位置取得部109は、局所最良位置xi_Lbest(t)を決定するにあたって、近傍ノードの評価値に代えて、式(1)で得られる群れ度合いsij(t)を近傍ノードM-jの評価値Ej(t)に乗じた値を使用してもよい。後述するように、無線ノードM-iの位置xi(t)を更新する際に、群最良位置xi_Lbest(t)が用いられる。群れ度合いを考慮した近傍ノードの評価値を用いて群最良位置xi_Lbest(t)を決定することにより、無線ノードM-iが、他の無線ノードに向かって移動することを抑制することができる。この結果、無線ノードM-iが他の無線ノードと衝突することを防ぐことができる。
【0099】
[2.7.自己最良位置の決定]
無線ノードM-iにおいて、最良位置取得部109は、自己最良評価値に対応する自己の位置を、自己最良位置として決定する(ステップS107)。具体的には、最良位置取得部109は、下記の式(5)を用いて、自己最良評価値を決定する。
【0100】
【0101】
式(5)において、ei_PBest(t)は、自己最良評価値である。Dは、忘却度であり、1以上の数値である。自己最良評価値ei_PBest(t)は、局所最良評価値ei_LBest(t)と、直前に計算された自己最良評価値ei_PBest(t-1)に忘却度Dを乗じた値とのうち、小さい方の評価値である。
【0102】
最良位置取得部109は、式(5)により得られる自己最良評価値ei_PBest(t)に基づいて、自己最良位置xi_Pbest(t)を取得する。式(5)において、局所最良評価値ei_LBest(t)が自己最良評価値ei_PBest(t)として決定された場合、無線ノードM-iの自己最良位置xi_Pbest(t)は、近傍ノードのうち、局所最良評価値ei_LBest(t)を有する局所最良ノードの位置に決定される。忘却度Dを用いることにより得られる効果については、後述する。
【0103】
[2.8.自己位置の更新]
無線ノードM-iにおいて、位置計算部110は、無線ノードM-iの位置xi(t)を更新して、無線ノードM-iの新たな位置xi(t+1)を生成する(ステップS108)。新たな位置のxi(t+1)の計算には、ステップS106で決定された自己最良位置xi_Pbest(t)と、ステップS107で決定された群最良位置xi_Lbest(t)と、自己の位置xi(t)とが用いられる。
【0104】
ステップS108において、位置計算部110は、最初に、下記の式(6)を用いて、無線ノードM-iの速度vi(t+1)を計算する。
【0105】
【0106】
式(6)において、vi(t+1)は、無線ノードM-iの速度を示し、無線ノードM-iの移動ベクトルに相当する。wは、無線ノードM-iの慣性質量である。c1は、認知的パラメータと呼ばれる。c2は、社会的パラメータと呼ばれる。r1及びr2は、0以上1以下の乱数である。
【0107】
式(6)の右辺第2項は、自己(無線ノードM-i)が目的ノードに最も近づいた時の位置に向かって移動する成分(パーソナルベスト成分)である。認知的パラメータc1は、パーソナルベスト成分の重み付け定数である。パーソナルベスト成分は、無線ノードM-iが、自己における位置の履歴に基づいて目的ノードに向かって移動する成分である。
【0108】
式(6)の右辺第3項は、無線ノードM-iの通信可能範囲内に位置する無線ノードの群に含まれるいずれかのノードが目的ノードに最も近づいた時の位置に向かって移動する成分(ローカルベスト成分)を示す。社会的パラメータc2は、ローカルベスト成分の重み付け定数である。ローカルベスト成分は、無線ノードM-iが無線ノードM-iの通信可能範囲内に位置する無線ノードの動きに合わせつつ、目的ノードに向かって移動することを示している。
【0109】
式(6)において、社会的パラメータc2が認知的パラメータc1よりも大きくなるように設定される。無線ノードM-iが、自己の無線通信範囲内に位置する他の無線ノードと構成する集団とともに移動することを優先させるためである。
【0110】
ステップS108において、位置計算部110は、式(6)を用いて無線ノードM-iの速度vi(t+1)を計算した後に、下記式(7)を用いて無線ノードM-iの位置xi(t)を更新することにより、新たな位置xi(t+1)を計算する。
【0111】
【0112】
ステップS108において、無線ノードM-iの新たな位置xi(t+1)の計算に用いられる式(6)及び式(7)は、従来の多目的粒子群最適化において粒子の位置更新に用いられる式と同じである。
【0113】
[2.9.衝突抑制制御]
衝突抑制部111は、ステップS108で生成された無線ノードM-iの新たな位置xi(t+1)を修正することにより、衝突抑制制御を実行する(ステップS109)。
【0114】
無線ノードM-iは、ステップS108で生成された新たな位置xi(t+1)に移動することにより、目的ノードに近づく。無線ノードM-iと近傍ノードとの位置関係によっては、無線ノードM-iが、新たな位置xi(t+1)に移動する時に近傍ノードと衝突する虞がある。衝突抑制部111は、無線ノードM-iと近傍ノードとの位置関係を考慮して、ステップS108で生成された無線ノードM-iの新たな位置xi(t+1)を修正する。
【0115】
(衝突抑制制御の考え方)
図9は、無線ノードM-iと、近傍ノードM-jとの位置関係の一例を示す図である。無線ノードM-1~M-kは、実際には、3次元空間に配置されているが、説明の便宜上、
図9において無線ノードM-i及び近傍ノードM-jを2次元平面上に配置する。
【0116】
図9において、無線ノードM-iの現在位置をx
i(t)で示す。ステップS108で生成された無線ノードM-iの新たな位置をx
i(t+1)で示す。近傍ノードM-jの現在位置を、x
j(t)で示す。
【0117】
ステップS109の衝突抑制制御において、近傍ノードM-jの現在位置xj(t)を中心とした半径Lの球である衝突予想領域RLを想定する。衝突予想領域RLは、近傍ノードM-jが現在位置xj(t)から移動する可能性ある範囲を示している。半径Lは、近傍ノードM-jが次の位置更新の際に移動可能な最大距離であり、例えば、近傍ノードM-jの大きさ、近傍ノードM-jの仕様上の最大速度に基づいて決定される。
【0118】
衝突予想領域RLの外周と、無線ノードM-iの現在位置xi(t)を通過する衝突予想領域RLの接線とが接する点を、接点p1,p2とする。無線ノードM-iの現在位置xi(t)から接点p1に向かうベクトルをベクトルT1とする。無線ノードM-iの現在位置xi(t)から接点p2に向かうベクトルをベクトルT2とする。近傍ノードM-jの現在位置xj(t)から接点p1に向かうベクトルをベクトルP1とする。近傍ノードM-jの現在位置xj(t)から接点p2に向かうベクトルをベクトルP2とする。
【0119】
衝突抑制部111は、以下の条件(A)及び条件(B)のいずれか一方が満たされる場合、無線ノードM-iが近傍ノードM-jに衝突する虞が非常に高いと判断し、無線ノードM-iの新たな位置xi(t+1)を修正する。
【0120】
条件(A):無線ノードM-iの現在位置xi(t)から無線ノードM-iの新たな位置xi(t+1)に向かうベクトルが、ベクトルP1又はベクトルP2と交差する場合。
条件(B):無線ノードM-iの現在位置xi(t)から無線ノードM-iの新たな位置xi(t+1)に向かうベクトルが、ベクトルP1及びベクトルP2の両者と交差せず、かつ、無線ノードM-iの新たな位置xi(t+1)が、衝突予想領域RL内に存在する場合。
【0121】
条件(A)及び条件(B)の両者が満たされない場合、衝突抑制部111は、ステップS109で生成された無線ノードM-iの新たな位置xi(t+1)を修正しない。
【0122】
(条件(A)に該当する場合)
図9において、無線ノードM-iの現在位置x
i(t)から無線ノードM-iの新たな位置x
i(t+1)に向かうベクトルが、ベクトルN
1,N
2,N
3である場合、条件(A)に該当する。
【0123】
近傍ノードM-jが、ベクトルP1,P2を基準にして無線ノードM-iの位置する方向と反対方向に移動する場合、近傍ノードM-jの移動後の位置は、ベクトルP1と、ベクトルP2と、衝突予想領域RLの円弧RA1により囲まれる領域の中である。円弧RA1は、衝突予想領域RLの外周を接点p1,p2により分割することにより形成される2つの円弧のうち、近傍ノードM-jの現在位置xj(t)を基準にして、無線ノードM-iの現在位置xi(t)の反対側に位置している。この場合、無線ノードM-iが、現在位置xi(t)からベクトルN1,N2,N3が指し示す位置に移動することにより、近傍ノードM-jに衝突する可能性が高くなる。
【0124】
図10及び
図11は、条件(A)に該当する場合における、無線ノードM-iの新たな位置x
i(t+1)の修正位置を示す図である。
【0125】
図10において、ベクトルN
2は、無線ノードM-iの現在位置x
i(t)から無線ノードM-iの新たな位置x
i(t+1)に向かうベクトルであり、ベクトルP
1と交差する。条件(A)に該当するため、衝突抑制部111は、無線ノードM-iの新たな位置x
i(t+1)が修正される。
【0126】
具体的には、
図10に示すように、ベクトルN
2がベクトルP
1と交差する場合、無線ノードM-iの新たな位置x
i(t+1)は、接点p
1に修正される。つまり、無線ノードM-iの新たな位置x
i(t+1)は、下記式(8)に従って修正される。
【0127】
【0128】
式(8)において、T
1は、無線ノードM-iの現在位置x
i(t)から接点p
1に向かうベクトルをベクトルである。p
1は、
図10に示す接点p
1の位置である。また、式(8)における演算子crossは、下記式(9)に示す演算を表す。
【0129】
【0130】
ベクトルN2がベクトルP1と交差する場合、衝突抑制部111は、無線ノードM-iの新たな位置xi(t+1)が接点p2よりも接点p1に近いため、新たな位置xi(t+1)を接点p1の位置に修正する。この結果、ベクトルVxiの終端位置(xi(t+1))を衝突予想領域RLの外周よりも内側に位置しないため、無線ノードM-iが近傍ノードM-jに衝突することを回避することができる。また、衝突抑制部111は、無線ノードM-iの新たな位置xi(t)を式(8)に従って修正することにより、無線ノードM-iが局所最良ノードから遠ざかる方向に移動させることなく、無線ノードM-iと近傍ノードM-jとの衝突を回避することができる。
【0131】
一方、ベクトルN
3が、
図11に示すようにベクトルP
2と交差する場合、無線ノードM-iの新たな位置x
i(t+1)は、接点p
2に修正される。つまり、無線ノードM-iの新たな位置x
i(t+1)は、下記式(10)に従って修正される。
【0132】
【0133】
式(10)において、T
2は、無線ノードM-iの現在位置x
i(t)から接点p
1に向かうベクトルである。p
2は、
図11に示す接点p
2の位置である。
【0134】
ベクトルN2がベクトルP2と交差する場合、衝突抑制部111は、無線ノードM-iの新たな位置xi(t+1)が接点p1よりも接点p2に近いため、新たな位置xi(t+1)を接点p2の位置に修正する。この結果、ベクトルN2の終端位置(xi(t+1))が衝突予想領域RLの外周よりも内側に位置しないため、無線ノードM-iが近傍ノードM-jに衝突することを回避することができる。また、衝突抑制部111は、無線ノードM-iの新たな位置xi(t+1)を式(10)に従って修正することにより、無線ノードM-iを局所最良ノードから遠ざかる方向に移動させることなく、無線ノードM-iと近傍ノードM-jとの衝突を回避することができる。
【0135】
(条件(B)に該当する場合)
図9において、無線ノードM-iの現在位置x
i(t)から無線ノードM-iの新たな位置x
i(t+1)に向かうベクトルが、ベクトルN
4,N
5である場合、条件(B)に該当する。
【0136】
近傍ノードM-jが、自己の現在位置xj(t)を基準にして、無線ノードM-iの現在位置xi(t)に近づくように移動する場合、近傍ノードM-jは、自己の現在位置xj(t)から、ベクトルP1、ベクトルP2と、衝突予想領域RLの円弧RA2により囲まれる領域の中に移動する。円弧RA2は、衝突予想領域RLの外周を接点p1,p2により分割することにより形成される2つの円弧のうち、近傍ノードM-jの現在位置xj(t)を基準にして、無線ノードM-iの現在位置xi(t)側に位置する円弧である。この場合、無線ノードM-iは、現在位置xi(t)からベクトルN4,N5が指し示す位置に移動することにより、近傍ノードM-jに衝突する可能性が高くなる。
【0137】
図12は、条件(B)に該当する場合における、無線ノードM-iの新たな位置x
i(t+1)の修正位置を示す図である。条件(B)に該当する場合、衝突抑制部111は、
図12に示すように、無線ノードM-iの新たな位置x
i(t+1)を、衝突予想領域R
Lの外周の円弧R
A2上の位置に修正する。
【0138】
具体的には、近傍ノードM-jの現在位置xj(t)から、無線ノードM-iの新たな位置xi(t+1)に向かうベクトルをベクトルKとした場合、無線ノードM-iの新たな位置xi(t+1)は、衝突予想領域RLの外周の円弧RA2とベクトルKを仮想的に延長した直線LKとの交点p3に修正される。
【0139】
つまり、条件(B)に該当する場合、無線ノードM-iの新たな位置xi(t+1)は、下記の式(11)に従って修正される。
【0140】
【0141】
式(11)において、V
kは、無線ノードM-iの現在位置x
i(t)から無線ノードM-iの新たな位置x
i(t+1)に向かうベクトルV
k(
図13参照)である。Lは、衝突予想領域R
Lの半径である。
【0142】
条件(B)に該当する場合、無線ノードM-iの新たな位置xi(t+1)を近傍ノードM-jの移動可能範囲内に入らない円弧RA2上の交点p3の位置に修正することにより、無線ノードM-iが近傍ノードM-jと衝突することを回避することができる。また、無線ノードM-iの新たな位置xi(t+1)を衝突予想領域の中に入らない円弧RA2上の交点p3の位置に修正することにより、無線ノードM-iの新たな位置xi(t+1)の変位量を小さくすることができる。
【0143】
つまり、衝突抑制部111は、無線ノードM-iの新たな位置xi(t)を式(11)に従って修正することにより、無線ノードM-iが局所最良ノードから遠ざかる方向に移動させることなく、無線ノードM-iと近傍ノードM-jとの衝突を回避することができる。
【0144】
なお、上記では、衝突抑制部111が、条件(A)が満たされる場合、式(8)又は式(10)に従って無線ノードM-iの新たな位置xi(t+1)を修正し、条件(B)が満たされる場合、式(11)に従って新たな位置xi(t+1)を修正する例を説明したが、これに限られない。
【0145】
衝突抑制部111は、条件(A)又は条件(B)が満たされる場合、下記の第1修正条件及び第2修正条件を満たすように無線ノードM-iの新たな位置xi(t+1)を修正すればよい。すなわち、第1の修正条件は、修正された無線ノードM-iの新たな位置xi(t+1)が衝突予想領域RL内に存在しないことである。第2修正条件は、修正された無線ノードM-iの新たな位置xi(t+1)から局所最良ノードの現在位置までの距離が、無線ノードM-iの現在位置xi(t)から局所最良ノードの現在位置までの距離よりも増加しないことである。
【0146】
これにより、無線ノードM-iが局所最良ノードに向かって移動する場合において、無線ノードM-iを局所最良ノードから離れる方向に移動させることなく、無線ノードM-iと近傍ノードとの衝突を回避することができる。
【0147】
[2.10.終了判断]
無線ノードM-iは、自己の位置xi(t)の更新回数が予め設定された終了判断値を超えた場合、終了条件を満たしたと判断する(ステップS110においてYes)。この場合、無線ノードM-iは、目的ノードを探索するための位置計算を終了する。無線ノードM-iは、位置計算を終了した後に、初期位置に戻る。
【0148】
無線ノードM-iは、自己の位置xi(t)の更新回数が予め設定された終了判断値を超えていない場合、終了条件を満たしていないと判断する(ステップS110においてNo)。この場合、無線ノードM-iは、自己の位置xi(t)を更新するために、ステップS102に戻る。
【0149】
なお、無線ノードM-iは、全ての目的ノードに到達した場合に終了条件を満たしたと判断してもよい。あるいは、無線ノードM-iは、自己の位置xi(t)の更新を開始してから所定時間が経過した場合に、終了条件を満たしたと判断してもよい。
【0150】
[2.11.忘却度Dによる効果]
以下、忘却度Dを用いることにより、無線ノードM-1が、一の目的ノードに到達した後に他の目的ノードへの移動を開始できる理由を説明する。説明を簡単にするために、無線ノードM-1~M-2及び目的ノードD-1~D-2以外のノードを考慮せず、群れ度合いを考慮しない。
【0151】
図13は、無線ノードM-1~M-2及び目的ノードD-1~D-2の配置の一例を示す図である。
【0152】
図13を参照して、無線ノードM-1,M-2は、それぞれ以下の条件を満たしている。無線ノードM-1は、目的ノードD-2よりも目的ノードD-1の近くに位置しており、目的ノードD-1に到達している。無線ノードM-2は、無線ノードM-1の近傍ノードであり、目的ノードD-1よりも目的ノードD-2に近くに位置している。また、無線ノードM-1から目的ノードD-1までの距離L
M1は、無線ノードM-2から目的ノードD-2までの距離L
M2よりも短い。
【0153】
上記の条件が満たされている場合、無線ノードM-1~M-2の評価値の中で、最小の評価値は、無線ノードM-1の評価値E1(t)である。無線ノードの評価値は、当該無線ノードから目的ノードまでの距離の指標であるためである。
【0154】
従って、
図13に示す無線ノードM-1における自己最良評価値は、式(5)における忘却度Dを考慮しない場合、評価値E
1(t)である。
【0155】
しかし、式(5)を用いて、無線ノードM-1の自己最良評価値ei_PBest(t)を取得する場合、忘却度Dが、無線ノードM-1の評価値E1(t)に乗算される。忘却度Dが乗算された評価値E1(t)が無線ノードM-1の自己最良評価値として取得される状態が継続した場合、忘却度Dが評価値E1(t)に対して累積的に乗算される。忘却度Dは、1以上の数値であり、忘却度Dが乗算された評価値E1(t)は、評価値E1(t)よりも大きい。
【0156】
一方で、無線ノードM-1の近傍ノードである無線ノードM-2の評価値E2(t)には、忘却度Dが乗算されない。忘却度Dが評価値E1(t)に対して累積的に乗算されることにより、無線ノードM-1から目的ノードD-1までの距離LM1が、無線ノードM-2から目的ノードD-2までの距離LM1よりも短いにも関わらず、無線ノードM-2の評価値E2(t)が、忘却度Dが累積的に乗算された無線ノードM-1の評価値E1(t)よりも小さくなる。この結果、評価値E2(t)が、無線ノードM-1の自己最良評価値ei_PBest(t)に決定される。
【0157】
無線ノードM-2の評価値E2(t)が、無線ノードM-1の自己最良評価値ei_PBest(t)に決定された場合、無線ノードM-1の自己最良位置は、無線ノードM-2の評価値E2(t)に対応する無線ノードM-2の位置x2(t)に設定される。
【0158】
無線ノードM-1の速度vi(t)を更新する式(6)において、右辺第2項のxi_PBest(t)が、無線ノードM-2の位置x2(t)に設定される。右辺第3稿のxi_LBest(t)は、無線ノードM-1の近傍ノードの中で、最小評価値を有する近傍ノードの位置であるため、無線ノードM-2の位置x2(t)に設定される。従って、式(6)により計算される無線ノードM-1の速度ベクトルvi(t+1)は、無線ノードM-2に向かうように設定され、無線ノードM-1は、到達した目的ノードD-1から、目的ノードD-2に向かって移動を開始する。
【0159】
このように、忘却度Dを用いて、無線ノードM-iの自己最良評価値ei_PBest(t)を決定することにより、無線ノードM-iは、一の目的ノードに到達した後に、他の目的ノードに向かって移動することが可能となる。
【0160】
また、
図13において、無線ノードM-3が無線ノードM-1の近傍ノードであり、無線ノードM-1とともに目的ノードD-1に到達した場合を想定する。この場合、無線ノードM-3の評価値E
3(t)が、無線ノードM-1の自己最良評価値として連続して設定されることが考えられる。この場合であっても、無線ノードM-3の評価値E
3(t)に忘却度Dが累積的に乗算されるため、無線ノードM-2の評価値E2(t)が、無線ノードM-1の自己最良評価値に最終的に設定される。
【0161】
従って、無線ノードM-3が無線ノードM-1とともに目的ノードD-1に到達した場合であっても、無線ノードM-1は、目的ノードD-1から目的ノードD-3に向かって移動することが可能である。
【0162】
[3.シミュレーション評価]
本実施の形態で説明した位置計算方法を用いて、2次元空間に配置された無線ノードの動きをシミュレーションし、そのシミュレーション結果を評価した。
【0163】
シミュレーション条件は、以下の通りである。仮想的な2次元のフィールドとして、正方形の空間を想定した。100個の無線ノードを正方形内の空間における一の頂点の近傍にランダムに配置し、100個の目的ノードを正方形内の空間に配置した。無線ノードの位置計算の繰り返し回数tを500に設定した。無線ノードの慣性重量を0.8に設定した。認知的パラメータc1を0.005に設定した。社会的パラメータc2を0.025に設定した。無線ノードが他の無線ノードと通信可能な距離を0.3に設定した。無線ノードの移動量の上限を0.8に設定した。無線ノードが目的ノードを中心として半径0.05の円の中に入った場合、無線ノードが目的ノードに到達したと判定した。
【0164】
比較のために、従来のMOPSOに基づく位置計算方法と、ランダムウォークに基づく位置計算方法を用いて、2次元空間に配置された無線ノードの動きをシミュレーションした。そして、これら2つのシミュレーション結果を比較した。
【0165】
図14は、シミュレーションにより得られた、無線ノード数と累積到達数との関係を示す図である。
図13に示すように、本実施の形態に係る位置計算方法は、無線ノードの数を30個以上とすることにより、無線ノードを全ての目的ノードに到達させることが可能である。つまり、本実施の形態に係る位置計算方法は、無線ノードの位置計算を行う際に、忘却度Dを考慮した自己最良位置を用いることにより、無線ノードが一の目的ノードに到達した後も他の無線ノードに向かって移動できることを確認ができた。つまり、本実施の形態に係る位置計算方法は、忘却度Dを用いることにより、無線ノードを継続的に移動させることが可能であることを確認できた。
【0166】
一方で、従来のMOPSOに基づく位置計算方法は、無線ノードの数の増加に伴って累積補足数が増加する傾向にあるが、100個の無線ノードを用いても、全ての目的ノードに無線ノードを到達させることができなかった。従来のMOPSOを用いた位置計算方法では、無線ノードは、1つの目的ノードに到達した後に他の目的ノードに移動しないために、無線ノードが全ての目的ノードに到達することができないと考えられる。
【0167】
図15は、シミュレーションにより得られた、無線ノードの数と、無線ノード同士の衝突回数との関係を示す図である。
図15に示すように、本実施の形態に係る位置計算方法及び従来のMOPSOに基づく位置計算方法は、無線ノードの数が増加するにつれて、累積衝突回数が増加する。しかし、本実施の形態に係る位置計算方法は、従来のMOPSOに基づく位置計算方法に比べて、無線ノードの衝突回数を5分の1以下に削減することができている。
【0168】
つまり、本実施の形態に係る位置計算方法は、群れ度合いを考慮して評価値を決定し、衝突抑制制御を用いて無線ノードの位置を修正することにより、無線ノード同士の衝突を回避し、無線ノードを継続的に移動させることが可能であることを確認できた。
【0169】
以上説明したように、無線ノードM-iは、自己の位置xi(t)を更新して新たな位置xi(t+1)を生成した場合、自己の位置xi(t)と、自己の新たな位置xi(t+1)と、近傍ノードM-jの位置xj(t+1)とに基づいて、自己の新たな位置xi(t+1)が近傍ノードM-jの位置xj(t+1)を中心とした衝突予想領域の範囲内に張らないように自己の新たな位置xi(t+1)を修正する。これにより、無線ノード同士の衝突を回避することができるため、無線ノードM-1~M-kを用いたモニタリングを継続的に行うことができる。
【0170】
また、無線ノードM-iは、無線ノードM-iと近傍ノードM-jとの間の空間に位置する無線ノードの数に基づいて、近傍ノードM-jについての群れ度合いSij(t)を計算し、計算した群れ度合いSij(t)を用いて近傍ノードM-jの評価値Ej(t)を修正する。これにより、無線ノードM-iが、他の無線ノードが密集している空間に向かって移動することを抑制することができる。この結果、無線ノード同士の衝突を回避することができるため、無線ノードM-1~M-kを用いたモニタリングを継続的に行うことができる。
【0171】
また、無線ノードM-iは、忘却度Dを自己最良評価値ei_PBestに累積的に乗算することにより、自己の位置xi(t)が自己最良評価値ei_PBestとして連続して決定されることを抑制する。これにより、無線ノードM-iが、一の目的ノードに到達した後に、この一の目的モードの近傍に留まり続けることが抑制される。無線ノードM-iが、複数の目的ノードに到達することが可能となるため、モニタリングを継続することが可能となる。
【0172】
[変形例]
上記実施の形態では、無線ノードM-iが、忘却度Dと、群れ度合いSij(t)とを用いて自己の新たな位置xi(t+1)を計算し、計算した自己の新たな位置xi(t+1)を衝突抑制制御により修正する例を説明した。しかし、無線ノードM-iは、忘却度Dを用いた自己の新たな位置xi(t+1)を計算、群れ度合いSij(t)を用いた自己の新たな位置xi(t+1)の計算、計算した自己の新たな位置xi(t+1)の衝突抑制制御による修正のうちいずれか1つを実行すればよい。
【0173】
また、上記実施の形態に係る無線ノードM-iの各機能ブロック(各機能部)の処理の一部または全部は、プログラムにより実現されるものであってもよい。そして、上記実施の形態に係る無線ノードM-iにおいて、各機能ブロックの処理の一部または全部は、コンピュータにおいて、中央演算装置(CPU)により行われる。また、それぞれの処理を行うためのプログラムは、ハードディスク、ROMなどの記憶装置に格納されており、ROMにおいて、あるいはRAMに読み出されて実行される。例えば、無線ノードM-iの構成を、
図19に示すような構成とすることにより、上記実施の形態に係る無線ノードM-iの各機能ブロック(各機能部)の処理の一部または全部が実行されるものであってもよい。
【0174】
また、上記実施の形態の各処理をハードウェアにより実現してもよいし、ソフトウェア(OS(オペレーティングシステム)、ミドルウェア、あるいは、所定のライブラリとともに実現される場合を含む。)により実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現してもよい。
【0175】
また、上記実施の形態における処理方法の実行順序は、必ずしも、上記実施形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えることができるものである。
【0176】
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、大容量DVD、次世代DVD、半導体メモリを挙げることができる。
【0177】
上記コンピュータプログラムは、上記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
【0178】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【符号の説明】
【0179】
M-1~M-k,M-i 無線ノード
D-1~D-m 目的ノード
102 送受信部
103 広告パケット生成部
104 通知パケット生成部
105 通知パケット取得部
106 群れ度合い取得部
107 評価値計算部
108 忘却度設定部
109 最良位置取得部
110 位置計算部
111 衝突抑制部
112 駆動部