(57)【要約】【課題】より的確なネットワーク構造解析に適用可能な情報を、効率よく提供する。【解決手段】管理装置１０の受信部２０Ａは、複数の通信装置１２から存在情報を受信する。第１算出部２４は、複数の通信装置１２の少なくとも一部の識別情報を、複数の通信装置１２の各々で検出可能な他の通信装置１２の集合を示す第１集合として、複数の通信装置１２の各々ごとに算出する。第２算出部２６は、複数の通信装置１２の各々から受信した存在情報と、複数の通信装置１２の各々に対応する第１集合と、に基づいて、第１集合より偽陽性の低い第２集合を、複数の通信装置１２の各々と他の通信装置１２の各々との間のリンクの存在確率を示す存在確率情報として、複数の通信装置１２の各々ごとに算出する。【選択図】図１
2016063479.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置から、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を確率的に表した存在情報を受信する受信部と、
複数の前記通信装置の少なくとも一部の識別情報を、複数の前記通信装置の各々で検出可能な他の前記通信装置の集合を示す第１集合として、前記複数の通信装置の各々ごとに算出する第１算出部と、
複数の前記通信装置の各々から受信した前記存在情報と、複数の前記通信装置の各々に対応する前記第１集合と、に基づいて、前記第１集合より偽陽性の低い第２集合を、複数の前記通信装置の各々と他の前記通信装置の各々との間のリンクの存在確率を示す存在確率情報として、複数の前記通信装置の各々ごとに算出する第２算出部と、
を備えた、
管理装置。
【請求項２】
前記存在情報は、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を、該識別情報のハッシュ値に対応するビット位置によるビットパターンで表した、ブルームフィルタである、請求項１に記載の管理装置。
【請求項３】
前記第２算出部は、
複数の前記通信装置の各々から受信した前記存在情報としての前記ブルームフィルタにおける、複数の前記通信装置の各々に対応する前記第１集合に含まれる前記通信装置の各々の識別情報のハッシュ値に対応するビット位置のビット値に基づいて、前記第２集合を複数の前記通信装置の各々ごとに算出する、請求項２に記載の管理装置。
【請求項４】
前記第２算出部は、
複数の前記通信装置の各々から受信した前記存在情報と、複数の前記通信装置の各々に対応する前記第１集合と、に基づくベイズ推定によって、前記第２集合を複数の前記通信装置の各々ごとに算出する、
請求項１に記載の管理装置。
【請求項５】
前記第１算出部は、
複数の前記通信装置の内、経路制御プロトコルとしてのＲＰＬ（ＩＰｖ６  Ｒｏｕｔｉｎｇ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｌｏｗ  ｐｏｗｅｒ  ａｎｄ  Ｌｏｓｓｙ  Ｎｅｔｗｏｒｋｓ）の非循環有向グラフにおける、同じランク情報の付与された他の前記通信装置の集合を前記第１集合として、複数の前記通信装置の各々ごとに算出する、請求項１に記載の管理装置。
【請求項６】
前記第１算出部は、
複数の前記通信装置の内、経路制御プロトコルとしてのＲＰＬの非循環有向グラフにおける上り経路方向に隣接する他の前記通信装置に対して、下り経路方向に隣接する他の前記通信装置の集合を前記第１集合として、複数の前記通信装置の各々ごとに算出する、請求項１に記載の管理装置。
【請求項７】
前記受信部は、
前記存在情報と、前記存在情報の送信元の前記通信装置の位置情報と、を受信し、
前記第１算出部は、
前記通信装置の各々から予め定めた範囲内に位置する他の前記通信装置の識別情報を、前記第１集合として複数の前記通信装置の各々ごとに算出する、
請求項１に記載の管理装置。
【請求項８】
前記第１算出部は、
複数の前記通信装置の内、予め定められた領域の出入口に設置された検出部で検出された前記通信装置の識別情報を、前記第１集合として算出する、請求項１に記載の管理装置。
【請求項９】
前記第１算出部は、
複数の前記通信装置の内、予め定められた領域の入口部に設けられた第１検出部で検出された前記通信装置から、該領域の出口部に設けられた第２検出部で検出された前記通信装置を除いた前記通信装置の識別情報を、前記第１集合として算出する、請求項１に記載の管理装置。
【請求項１０】
前記受信部は、
複数の前記通信装置の各々から、前記存在情報を含むＤＡＯ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｖｅｒｔｉｓｅｍｅｎｔ  Ｏｂｊｅｃｔ）を受信する、請求項１に記載の管理装置。
【請求項１１】
前記存在確率情報を用いて、複数の前記通信装置間におけるリンクの存在を示すグラフを構築する構築部を更に備えた、
請求項１に記載の管理装置。
【請求項１２】
前記受信部は、複数の前記通信装置から、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を、予め定めた固定長で表した前記存在情報を受信する、請求項１に記載の管理装置。
【請求項１３】
前記受信部は、複数の前記通信装置から、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を、可変長で表した前記存在情報を受信する、
請求項１に記載の管理装置。
【請求項１４】
検出可能な他の通信装置から該他の通信装置の識別情報を取得する取得部と、
前記識別情報の特徴を予め定めた固定長で表した存在情報を生成する生成部と、
前記存在情報を管理装置へ送信する送信部と、
を備えた、通信装置。
【請求項１５】
過去に取得した複数の前記識別情報の少なくとも一部を抽出する抽出部を備え、
前記生成部は、
抽出した前記識別情報の特徴を予め定めた固定長で表した前記存在情報を生成する、
請求項１４に記載の通信装置。
【請求項１６】
前記存在情報は、前記識別情報の特徴を、前記識別情報のハッシュ値に対応するビット位置によるビットパターンで表した、ブルームフィルタである、請求項１４に記載の通信装置。
【請求項１７】
前記生成部は、
前記存在情報の生成に用いる前記識別情報の第１の数と、前記存在情報のデータ長を示すビット数と、ハッシュ関数と、前記ハッシュ関数の第２の数と、を算出し、
取得した前記識別情報の内、前記第１の数の前記識別情報と、前記ビット数と、前記第２の数の前記ハッシュ関数と、を用いて、前記存在情報を生成する、
請求項１４に記載の通信装置。
【請求項１８】
複数の通信装置と、管理装置と、を備えた管理システムであって、
前記通信装置は、
検出可能な他の前記通信装置から該他の前記通信装置の識別情報を取得する取得部と、
前記識別情報の特徴を予め定めた固定長で表した存在情報を生成する生成部と、
前記存在情報を前記管理装置へ送信する送信部と、
を備え、
前記管理装置は、
複数の前記通信装置の各々から前記存在情報を受信する受信部と、
複数の前記通信装置の少なくとも一部の識別情報を、複数の前記通信装置の各々で検出可能な他の前記通信装置の集合を示す第１集合として、前記複数の通信装置の各々ごとに算出する第１算出部と、
複数の前記通信装置の各々から受信した前記存在情報と、複数の前記通信装置の各々に対応する前記第１集合と、に基づいて、前記第１集合より偽陽性の低い第２集合を、複数の前記通信装置の各々と他の前記通信装置の各々との間のリンクの存在確率を示す存在確率情報として、複数の前記通信装置の各々ごとに算出する第２算出部と、
を備えた、
管理システム。
【請求項１９】
複数の通信装置から、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を確率的に表した存在情報を受信するステップと、
複数の前記通信装置の少なくとも一部の識別情報を、複数の前記通信装置の各々で検出可能な他の前記通信装置の集合を示す第１集合として、前記複数の通信装置の各々ごとに算出するステップと、
複数の前記通信装置の各々から受信した前記存在情報と、複数の前記通信装置の各々に対応する前記第１集合と、に基づいて、前記第１集合より偽陽性の低い第２集合を、複数の前記通信装置の各々と他の前記通信装置の各々との間のリンクの存在確率を示す存在確率情報として、複数の前記通信装置の各々ごとに算出するステップと、
を含む、管理方法。
【請求項２０】
コンピュータに、
複数の通信装置から、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を確率的に表した存在情報を受信するステップと、
複数の前記通信装置の少なくとも一部の識別情報を、複数の前記通信装置の各々で検出可能な他の前記通信装置の集合を示す第１集合として、前記複数の通信装置の各々ごとに算出するステップと、
複数の前記通信装置の各々から受信した前記存在情報と、複数の前記通信装置の各々に対応する前記第１集合と、に基づいて、前記第１集合より偽陽性の低い第２集合を、複数の前記通信装置の各々と他の前記通信装置の各々との間のリンクの存在確率を示す存在確率情報として、複数の前記通信装置の各々ごとに算出するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施の形態は、管理装置、通信装置、管理システム、管理方法、およびプログラムに関する。
【背景技術】
【０００２】
経路制御プロトコルとしてのＲＰＬ（ＩＰｖ６  Ｒｏｕｔｉｎｇ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｌｏｗ  ｐｏｗｅｒ  ａｎｄ  Ｌｏｓｓｙ  Ｎｅｔｗｏｒｋｓ）では、ネットワークをＤＯＤＡＧ（Ｄｅｓｔｉｎａｔｉｏｎ  Ｏｒｉｅｎｔｅｄ  Ｄｉｒｅｃｔｅｄ  Ａｃｙｃｌｉｃ  Ｇｒａｐｈ）で表すことが知られている。
【０００３】
また、マルチホップネット―ワークにおいて、経路情報を格納した経路応答を隣接ノードにブロードキャストする方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２１７１６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＤＯＤＡＧでは、ＤＡＰ（Ｄａｔａ  Ａｇｇｒｅｇａｔｉｏｎ  Ｐｏｉｎｔ）により近いノードへの上向きのリンクについては複数持つことができる。しかし、上向きのリンク以外のリンク、特にｓｉｂｌｉｎｇのリンクについては、情報として捨ててしまっている。このため、ネットワーク解析に用いる情報が限定されていた。また、経路応答に経路情報を格納するためには、ノード毎に情報量に比例した量のビット数が必要であり、効率良く構造解析に用いる情報を収集することができなかった。
【０００６】
本発明が解決しようとする課題は、より的確なネットワーク構造解析に適用可能な情報を、効率よく提供することができる、管理装置、通信装置、管理システム、管理方法、およびプログラムを提供することである。
【課題を解決するための手段】
【０００７】
実施の形態の管理装置は、受信部と、第１算出部と、第２算出部と、を備える。受信部は、複数の通信装置から、複数の前記通信装置の各々で検出した他の前記通信装置の識別情報の特徴を確率的に表した存在情報を受信する。第１算出部は、複数の前記通信装置の少なくとも一部の識別情報を、複数の前記通信装置の各々で検出可能な他の前記通信装置の集合を示す第１集合として、前記複数の通信装置の各々ごとに算出する。第２算出部は、複数の前記通信装置の各々から受信した前記存在情報と、複数の前記通信装置の各々に対応する前記第１集合と、に基づいて、前記第１集合より偽陽性の低い第２集合を、複数の前記通信装置の各々と他の前記通信装置の各々との間のリンクの存在確率を示す存在確率情報として、複数の前記通信装置の各々ごとに算出する。
【図面の簡単な説明】
【０００８】
【図１】管理システムの概略図。
【図２】ブルームフィルタの説明図。
【図３】ＤＯＤＡＧの一例を示す図。
【図４】第１集合と第２集合との関係の一例を示す模式図。
【図５】通信処理の手順の一例を示すフローチャート。
【図６】管理処理の手順を示すフローチャート。
【図７】管理システムの概略図。
【図８】検出装置の設置位置の説明図。
【図９】管理処理の手順を示すフローチャート。
【図１０】ハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、管理装置、通信装置、管理システム、管理方法、およびプログラムの実施の形態を詳細に説明する。
【００１０】
（第１の実施の形態）
図１は、管理システム１の概略図である。管理システム１は、管理装置１０と、複数の通信装置１２と、を含む。
【００１１】
管理装置１０は、複数の通信装置１２の各々と、該複数の通信装置１２の各々に対する他の通信装置１２の各々と、の間のリンクの存在確率を示す存在確率情報を、複数の通信装置１２の各々ごとに算出する（詳細後述）。存在確率情報は、例えば、複数の通信装置１２を含むネットワークの構造解析に用いられる。
【００１２】
通信装置１２は、各種データや信号の送信機能を、少なくとも備えた装置である。通信装置１２は、例えば、公知のパーソナルコンピュータである。
【００１３】
管理装置１０と、複数の通信装置１２の各々とは、後述する通信部による通信または受信が可能である。なお、以下では、通信（すなわち、送受信）、および、受信、を総称して、単に、「通信」と称する場合がある。
【００１４】
管理装置１０と、複数の通信装置１２の各々とは、直接通信可能であってもよいし、中継通信（マルチホップ通信）可能であってもよい。管理装置１０と通信装置１２の各々との通信には、ＴＣＰ／ＩＰ、６ｌｏｗＰＡＮ（ＩＰｖ６  ｏｖｅｒ  Ｌｏｗ  ｐｏｗｅｒ  Ｗｉｒｅｌｅｓｓ  Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ）、ＲＰＬ（ＩＰｖ６  Ｒｏｕｔｉｎｇ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｌｏｗ  ｐｏｗｅｒ  ａｎｄ  Ｌｏｓｓｙ  Ｎｅｔｗｏｒｋｓ）、８０２．１５．４、などの公知技術を利用することができる。
【００１５】
まず、通信装置１２について説明する。
【００１６】
通信装置１２は、通信部３０と、記憶部３２と、制御部３４と、を備える。通信部３０および記憶部３２は、制御部３４に接続されている。
【００１７】
通信部３０は、管理装置１０および他の通信装置１２との間で、無線または有線による通信を行うための公知の通信部器である。なお、通信部３０は、他の通信装置１２からデータや信号を、無線または有線により受信可能な通信機器であってもよい。記憶部３２は、各種データを記憶する。
【００１８】
制御部３４は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などを含んで構成されるコンピュータである。なお、制御部３４は、ＣＰＵ以外の回路等であってもよい。
【００１９】
制御部３４は、通信制御部３６と、取得部３８と、抽出部４０と、生成部４２と、を含む、通信制御部３６は、受信部３６Ａと、送信部３６Ｂと、を含む。
【００２０】
通信制御部３６、受信部３６Ａ、送信部３６Ｂ、取得部３８、抽出部４０、および生成部４２の一部またはすべては、例えば、ＣＰＵなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００２１】
通信制御部３６は、通信部３０を介して、複数の他の通信装置１２の各々との通信を制御する。なお、通信制御部３６は、複数の他の通信装置１２の少なくとも１つとの受信を制御してもよい。
【００２２】
本実施の形態では、通信制御部３６は、メッシュネットワークにおいて必要な通信機能を備える。通信制御部３６は、例えば、ＲＰＬなどの公知技術を用いる。
【００２３】
通信制御部３６は、通信制御部３６の搭載された通信装置１２で検出可能な他の通信装置１２を検出する。検出可能とは、データまたは信号を受信可能、あるいは、データまたは信号を通信可能であることを示す。
【００２４】
通信制御部３６は、受信部３６Ａと、送信部３６Ｂと、を含む。受信部３６Ａは、複数の他の通信装置１２の各々から各種データまたは信号を受信する。
【００２５】
本実施の形態では、受信部３６Ａは、通信部３０を介して、無線または有線により、直接（すなわち、１対１で）データ通信またはデータ受信可能な他の通信装置１２の識別情報を受信する。
【００２６】
すなわち、受信部３６Ａは、通信装置１２が直接通信可能または直接信号受信可能な他の通信装置１２の識別情報を、該他の通信装置１２から受信する。受信部３６Ａは、送信部３６Ｂが他の通信装置１２に対して送信した通信要求信号に対する返答信号を読取ることで、他の通信装置１２の識別情報を受信してもよい。また、受信部３６Ａは、他の通信装置１２が通信要求信号に関わらず発信する、識別情報を含む信号を受信することで、他の通信装置１２の識別情報を受信してもよい。
【００２７】
通信装置１２の識別情報は、通信装置１２を一意に識別する情報である。通信装置１２の識別情報は、例えば、各通信装置１２に設けられた通信部３０に予め付与された、ＭＡＣアドレスや、通信ノードなどであるが、これらに限定されない。
【００２８】
取得部３８は、検出可能な他の通信装置１２から、該他の通信装置１２の識別情報を取得する。取得部３８は、通信制御部３６で受信した他の通信装置１２の識別情報を取得することで、検出可能な他の通信装置１２の識別情報を取得する。
【００２９】
取得部３８は、取得した通信装置１２の識別情報と、該識別情報の検出日時（すなわち受信日時）と、を対応づけて順次記憶部３２に記憶する。また、取得部３８は、通信装置１２の識別情報と、検出日時と、無線品質と、を対応づけて記憶してもよい。無線品質は、通信制御部３６から取得すればよい。無線品質は、例えば、受信信号強度（ＲＳＳＩ：Ｒｅｃｅｉｖｅｄ  Ｓｉｇｎａｌ  Ｓｔｒｅｎｇｔｈ  Ｉｎｄｉｃａｔｏｒ）である。
【００３０】
抽出部４０は、過去に取得した複数の識別情報の少なくとも一部を抽出する。
【００３１】
本実施の形態では、抽出部４０は、例えば、記憶部３２に記憶されている複数の識別情報の内、予め定めた時間以上検出されていない識別情報を削除する。この削除のための時間の閾値は、例えば、通信部３０によるビーコン（Ｂｅａｃｏｎ）の送信間隔などに基づいて予め設定すればよい。そして、抽出部４０は、記憶部３２に記憶されている識別情報の一覧を、抽出する。
【００３２】
なお、抽出部４０は、現時点から過去に向かって予め定めた時間内に検出された識別情報を、記憶部３２から抽出してもよい。この予め定めた時間は、削除のための時間の閾値と同様である。
【００３３】
また、抽出部４０は、予め定めた閾値以上の無線品質の識別情報を、記憶部３２から抽出してもよい。また、抽出部４０は、予め定めた時間内に検出され、且つ、予め定めた閾値以上の識別情報を、記憶部３２から抽出してもよい。無線品質の閾値は、予め設定すればよい。
【００３４】
生成部４２は、取得部３８で取得した識別情報の特徴を、確率的に表した存在情報を生成する。なお、存在情報は、予め定めた固定長であってもよいし、可変長であってもよい。例えば、この存在情報の長さは、後述するハッシュ関数の数（第２の数）に相当する。
【００３５】
生成部４２は、取得部３８で取得した識別情報の内、抽出部４０で抽出された識別情報の特徴を、予め定めた固定長で表した存在情報を生成することが好ましい。
【００３６】
存在情報は、識別情報そのものではなく、識別情報の特徴を、統計的性質を用いて固定長のビットで表した情報である。本実施の形態では、存在情報が、識別情報の特徴を、ハッシュ値に対応するビット位置によるビットパターンで表した、ブルームフィルタである場合を説明する。なお、存在情報は、ブルームフィルタに限定されない。
【００３７】
本実施の形態では、生成部４２は、予め定めた時間ごとに、抽出部４０で抽出された複数の識別情報を用いて、ブルームフィルタを生成する。
【００３８】
図２は、ブルームフィルタの概要の説明図である。図２に示すように、空のブルームフィルタは、各ビット位置のビット値を全て「０」に設定されたｍビットのビットパターンである。ブルームフィルタは、パラメータとして、ブルームフィルタのビット数（ｍビット（ｍは、２以上の整数））と、ｋ個のハッシュ関数と、をパラメータとして有する。
【００３９】
本実施の形態では、生成部４２は、存在情報の生成の度に、存在情報の生成に用いる識別情報の第１の数と、存在情報のデータ長を示すビット数ｍと、ハッシュ関数と、ハッシュ関数の第２の数（ｋ個）と、を算出する。そして、生成部４２は、識別情報の内、第１の数の識別情報と、ビット数ｍと、ｋ個のハッシュ関数と、を用いて、存在情報を生成する。
【００４０】
このため、生成部４２は、存在情報の生成の前に、生成に用いるパラメータを算出し、算出したパラメータを用いて、存在情報を生成する。
【００４１】
生成部４２は、まず、抽出部４０で抽出された複数の識別情報を、ブルームフィルタ生成のためのキー集合Ｓ０として読取る。
【００４２】
また、生成部４２は、管理装置１０との間で予め定めた共有変数Ｘを読取る。共有変数Ｘは、例えば、ブルームフィルタ生成時の時刻、ＲＰＬにおける非循環有向グラフ（Ｄｅｓｔｉｎａｔｉｏｎ−Ｏｒｉｅｎｔｅｄ  Ｄｉｒｅｃｔｅｄ  Ａｃｙｃｌｉｃ  Ｇｒａｐｈ）のバージョンなどを用いる。
【００４３】
次に、生成部４２は、キー集合Ｓ０に含まれる識別情報の数が、第１の数となるように集合集約を行う。なお、生成部４２は、集合集約を行わない形態であってもよい。
【００４４】
具体的には、生成部４２は、第１の数ｎを下記式（１）で表したときの、ビット長ｍのブルームフィルタの飽和度ａの期待値を、下記式（２）により計算する。
【００４５】
ｎ＝｜Ｓ０｜      ・・・式（１）
ａ＝１−（１／ｍ）ｎ−ｋ      式（２）
【００４６】
なお、式（２）中、ｋは、ハッシュ関数の数（第３の数）を示す。
【００４７】
そして、生成部４２は、飽和度ａが、予め定めた飽和度の閾値ａＴを超える場合、ビット数ｍから「１」減じた数（ｍ−１）を、新たなビット数ｍとして設定する。
【００４８】
また、生成部４２は、識別情報の数である第１の数ｎを、１／ｒの値に設定する。なお、ｒは、「１」を初期値として、集合制約の繰り返しの度に値「１」増える、集合制約繰り返し数である。
【００４９】
生成部４２は、この集合集約を、飽和度ａが閾値ａＴを下回るまで、繰り返す。そして、生成部４２は、識別情報の数である第１の数ｎが、１／ｒの値と一致したときに、共有変数Ｘに基づいて、抽出部４０で抽出された識別情報から、１／ｒの数（すなわち第１の数）の識別情報を選択する。
【００５０】
例えば、生成部４２は、抽出部４０で抽出された複数の識別情報の内、識別情報のハッシュ値をｒで除算した剰余が、共有変数Ｘをｒで除算した剰余と一致する識別情報を、選択する。
【００５１】
なお、具体的には、ブルームフィルタの生成に用いる集合Ｓ⊆Ｓ０は、集合制約の繰り返し数をｒとすると、例えば、以下の式（３）を用いて算出する。
【００５２】
Ｓ＝｛ｓ｜ｓ∈Ｓ０  かつ  ｈａｓｈ（ｓ）％ｒ＝Ｘ％ｒ｝    ・・式（３）
【００５３】
式（３）中、ｈａｓｈ（ｓ）は、任意のハッシュ関数であり、％は、剰余演算である。
【００５４】
なお、生成部４２は、集合制約を実行しない形態であってもよい。この場合には、Ｓ＝Ｓ０として取り扱えばよい。
【００５５】
次に、生成部４２は、前回生成したブルームフィルタを初期化する。具体的には、生成部４２は、ビット数ｍの長さのビット列Ｂを用意し、各ビット位置のビット値を全て「０」とすることで、初期化する。なお、本実施の形態では、ブルームフィルタにおける各ビット位置を、インデックスｉを用いて、Ｂ［ｉ］で表す。なお、インデックスｉは、０以上ｍ−１以下の値である。
【００５６】
そして、生成部４２は、ブルームフィルタを生成する。
【００５７】
生成部４２は、ｓ∈Ｓとなる各要素ｓ（すなわち、抽出され、適宜、集合集約された各識別情報の各々）について、ｋ個のハッシュ関数を用いてハッシュ値ｈｋ’（ｓ＋Ｘ）を計算する。ｋ’は、１以上ｋ（第２の数）以下の整数である。そして、生成部４２は、ハッシュ値に対応するインデックスｉのビット位置（すなわち、Ｂ［ｈｋ’（ｓ＋Ｘ）］）のビット値を「１」にセットする。
【００５８】
このように、生成部４２は、管理装置１０と通信装置１２との間で（１対１で）共有する共有変数Ｘを用いて、ハッシュ値（ｈｋ’（ｓ＋Ｘ））を計算する。このため、生成部４２は、同じ識別情報に対して、共有変数Ｘが変更されるたびに、異なるビット位置のビット値を「１」にセットすることができる。このため、本実施の形態では、生成するブルームフィルタの偽陽性の固定化を抑制することができる。
【００５９】
送信部３６Ｂは、生成したブルームフィルタとしての存在情報を、管理装置１０へ送信する。送信部３６Ｂは、直接、管理装置１０へ存在情報を送信してもよいし、他の通信装置１２を介したマルチホップ通信により、管理装置１０へ存在情報を送信してもよい。
【００６０】
なお、送信部３６Ｂは、存在情報を含むＤＡＯ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｖｅｒｔｉｓｅｍｅｎｔ  Ｏｂｊｅｃｔ）を、管理装置１０へ送信してもよい。この場合、例えば、送信部３６Ｂは、存在情報を、ＤＡＯ  Ｏｐｔｉｏｎの形式でＤＡＯに記載し、管理装置１０へ送信すればよい。
【００６１】
また、送信部３６Ｂは、存在情報と、存在情報としてのブルームフィルタの生成に用いた共有変数Ｘと、を含むＤＡＯを、管理装置１０へ送信してもよい。
【００６２】
また、送信部３６Ｂは、存在情報と、通信装置１２の現在位置情報と、を含むＤＡＯを、管理装置１０へ送信してもよい。この場合、通信装置１２に、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）を設けた構成とする。そして、送信部３６Ｂは、存在情報送信時の、通信装置１２の現在位置情報をＧＰＳから取得し、現在位置情報を含むＤＡＯを管理装置１０へ送信すればよい。
【００６３】
なお、送信部３６Ｂは、ＤＡＯの送信とは別に、別途、存在情報を管理装置１０へ送信してもよい。
【００６４】
次に、管理装置１０について説明する。
【００６５】
管理装置１０は、通信部１４と、記憶部１６と、制御部１８と、を備える。通信部１４および記憶部１６は、制御部１８に接続されている。
【００６６】
通信部１４は、複数の通信装置１２との間で、無線または有線による通信を行うための公知の通信機器である。なお、通信部１４は、通信装置１２からデータや信号を、無線または有線により受信可能な通信機器であってもよい。記憶部１６は、各種データを記憶する。
【００６７】
制御部１８は、ＣＰＵなどを含んで構成されるコンピュータである。なお、制御部１８は、ＣＰＵ以外の回路等であってもよい。
【００６８】
制御部１８は、通信制御部２０と、管理部２２と、第１算出部２４と、第２算出部２６と、構築部２８と、を含む。
【００６９】
通信制御部２０、管理部２２、第１算出部２４、第２算出部２６、および構築部２８の一部またはすべては、例えば、ＣＰＵなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣなどのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００７０】
通信制御部２０は、通信部１４を介して、複数の通信装置１２の各々との通信を制御する。なお、通信制御部２０は、複数の通信装置１２の各々との受信を制御してもよい。
【００７１】
本実施の形態では、通信制御部２０は、メッシュネットワークにおいて必要な通信機能を備える。通信制御部２０は、例えば、ＲＰＬなどの公知技術を用いる。
【００７２】
本実施の形態では、通信制御部２０は、公知のメッシュネットワークのボーダールータや、ＲＰＬにおける非循環有向グラフ（ＤＯＤＡＧ：Ｄｅｓｔｉｎａｔｉｏｎ−Ｏｒｉｅｎｔｅｄ  Ｄｉｒｅｃｔｅｄ  Ａｃｙｃｌｉｃ  Ｇｒａｐｈ）のｒｏｏｔノードとして機能する。管理装置１０では、通信制御部２０によって、メッシュネットワークに属する各通信装置１２の識別情報や、通信装置１２との間の通信経路を特定する。
【００７３】
送信部２０Ｂは、各種データや信号を通信装置１２へ送信する。
【００７４】
受信部２０Ａは、複数の通信装置１２の各々から、複数の通信装置１２の各々で検出した他の通信装置１２の識別情報の特徴を確率的に表した存在情報を受信する。
【００７５】
本実施の形態では、受信部２０Ａは、存在情報と、共有変数Ｘおよび位置情報の少なくとも一方と、を含むＤＡＯを通信装置１２から受信する。なお、受信部２０Ａは、ＤＡＯとは別に、通信装置１２から存在情報や、共有変数Ｘや、位置情報を受信してもよい。なお、管理装置１０は、各通信装置１２に対応する共有変数Ｘを予め記憶しておいてもよい。また、管理装置１０は、各通信装置１２の各々に対応する共有変数Ｘの算出規則を予め記憶し、該算出規則を用いて共有変数Ｘを算出してもよい。
【００７６】
受信部２０Ａは、受信した存在情報を、該存在情報の送信元である通信装置１２の各々ごとに記憶部１６に記憶する。例えば、受信部２０Ａは、複数の通信装置１２の各々から受信した存在情報を、各々の送信元の通信装置１２の識別情報に対応づけて記憶部１６に記憶する。このため、存在情報は、送信元である通信装置１２ごとに、記憶部１６に管理されることとなる。
【００７７】
管理部２２は、基本ネットワーク構造を生成する。本実施の形態では、複数の通信装置１２から受信したＤＡＯを用いて、公知の方法により、ＤＯＤＡＧを基本ネットワーク構造として生成する。管理部２２は、生成したＤＯＤＡＧを記憶部１６へ記憶する。
【００７８】
一方、受信部２０Ａは、複数の通信装置１２の各々から受信した存在情報を、第１算出部２４へ出力する。
【００７９】
制御部１８では、各通信装置１２から存在情報を受信する度に、各通信装置１２に対応する第１算出部２４および第２算出部２６を構築し、下記処理を実行させる。なお、制御部１８では、１組の第１算出部２４および第２算出部２６を備えた構成とし、この１組の第１算出部２４および第２算出部２６を用いて、複数の通信装置１２の各々に対応する後述する第１集合（詳細後述）および第２集合（詳細後述）の算出を行ってもよい。
【００８０】
第１算出部２４は、複数の通信装置１２の少なくとも一部の識別情報を、複数の通信装置１２の各々で検出可能な他の通信装置１２の集合を示す第１集合として、複数の通信装置１２の各々ごとに算出する。
【００８１】
第１算出部２４は、例えば、第１算出部２４が管理可能な複数の通信装置１２の内、少なくとも一部の通信装置１２の識別情報の集合を、複数の通信装置１２の各々に近接して配置されている可能性のある通信装置１２の第１集合として算出する。近接して配置、とは、各通信装置１２が通信またはデータ受信可能な範囲内に配置されていることを意味する。
【００８２】
具体的には、第１算出部２４は、管理部２２で構築したＤＯＤＡＧによる基本ネットワーク構造における、ＤＡＧ  ｒｏｏｔである管理装置１０からのホップカウントｃを用いて、再帰的に第１集合を算出する。なお、ＤＡＧ  ｒｏｏｔである管理装置１０（ホップカウントｃ＝０）では、管理装置１０に近接する他の通信装置１２の識別情報が既知であるものとする。
【００８３】
詳細には、第１算出部２４は、基本ネットワーク構造として生成した、ＰＲＬの非循環有向グラフ（ＤＯＤＡＧ）における、同じランク情報の付与された他の通信装置１２の集合を第１集合として、複数の通信装置１２の各々ごとに算出する。
【００８４】
図３は、ＤＯＤＡＧの一例を示す図である。例えば、通信装置１２６に対応する第１集合を算出する場合、第１算出部２４は、通信装置１２６と同じランク情報の付与された他の通信装置１２４、１２５、１２７の各々の識別情報を、通信装置１２６に対応する第１集合として算出する（図３中、線図Ａ内参照）。
【００８５】
また、例えば、第１算出部２４は、複数の通信装置１２の内、経路制御プロトコルとしてのＲＰＬの非循環有向グラフにおける上り経路方向に隣接する他の通信装置１２に対して、下り経路方向に隣接する他の通信装置１２の集合を第１集合として、複数の通信装置１２の各々ごとに算出してもよい。すなわち、第１算出部２４は、各通信装置１２について、同じ親ノードである他の通信装置１２に対する、子ノードである他の通信装置１２を、第１集合として通信装置１２ごとに算出する。
【００８６】
例えば、通信装置１２６に対応する第１集合を算出する場合、第１算出部２４は、通信装置１２６の親ノードである通信装置１２２および通信装置１２３の各々に対する、子ノードである他の通信装置１２５、１２７の識別情報を、通信装置１２６に対応する第１集合として算出する（図３中、線図Ｂ内参照）。
【００８７】
言い換えると、第１算出部２４は、ある通信装置１２のホップカウントｃがｈであるとすると（ｃ＝ｈ）、ホップカウントｃがｈ−１である他の通信装置１２（親ノード）の子ノードである他の通信装置１２をＤＯＤＡＧから取得し、ホップカウントｃ＝ｈの通信装置１２に対応する第１集合として算出する。
【００８８】
なお、受信部２０Ａが、存在情報の送信元である通信装置１２の位置情報を含むＤＡＯを受信した場合、第１算出部２４は、以下の方法により第１集合を算出してもよい。また、受信部２０Ａが、各通信装置１２の各々から、各通信装置１２の各々の位置情報を受信した場合についても、同様である。
【００８９】
この場合、第１算出部２４は、各通信装置１２の各々の位置情報を用いて、通信装置１２の各々から予め定めた範囲内に位置する他の通信装置１２を特定し、特定した他の通信装置１２の識別情報を第１集合として、各通信装置１２の各々ごとに算出する。この「予め定めた範囲」は、予め任意の範囲を設定すればよい。
【００９０】
また、第１算出部２４は、各通信装置１２の各々に対応する、契約者の住所情報を予め記憶部１６に記憶してもよい。そして、第１算出部２４は、存在情報の送信元である通信装置１２の識別情報に対応する住所情報から、予め定めた範囲内の住所情報に対応する他の通信装置１２の識別情報を、第１集合として算出してもよい。
【００９１】
図１に戻り、第２算出部２６は、複数の通信装置１２の各々から受信した存在情報と、複数の通信装置１２の各々に対応する第１集合と、に基づいて、第１集合より偽陽性の低い他の通信装置１２を示す第２集合を、複数の通信装置１２の各々と他の通信装置１２の各々との間のリンクの存在確率を示す存在確率情報として、複数の通信装置１２の各々ごとに算出する。
【００９２】
第１算出部２４が算出した第１集合は、各通信装置１２の各々から受信した存在情報に関わりなく、第１算出部２４が算出した集合である。このため、各通信装置１２の各々に対応する第１集合には、各通信装置１２では検出困難な他の通信装置１２が含まれている可能性が高い。すなわち、第１集合は、偽陽性の高い他の通信装置１２の識別情報を含む集合である。
【００９３】
このため、第２算出部２６は、各通信装置１２から受信した存在情報を用いて、各通信装置１２の各々に対応する、第１集合より偽陽性の低い第２集合を算出する。
【００９４】
本実施の形態では、第２算出部２６は、存在情報としてのブルームフィルタを用いて、第２集合を算出する。
【００９５】
ここで、ブルームフィルタは、確率的な情報である。このため、ブルームフィルタのみを用いて第２集合を算出した場合、偽陽性を避けることができない。すなわち、通信装置１２で検出不可能な他の通信装置１２の識別情報から算出した、ｋ個（第２の数）のハッシュ値に対応するビット位置のビット値が、全て「１」となる場合がある。
【００９６】
ブルームフィルタの飽和度（全ビット数中でビット値「１」となっているビット数の割合）をＰｓとすると、偽陽性の発生確率は、Ｐｓｋで表すことができる。ｋは、該ブルームフィルタのハッシュ関数の数（第２の数）である。
【００９７】
このため、第２算出部２６が、各通信装置１２の各々から受信したブルームフィルタ（存在情報）を用いて第２集合を算出すると、Ｐｓｋの確率で、実際には検出不可能な他の通信装置１２が第２集合に含まれることとなる。
【００９８】
偽陽性の発生確率Ｐｓｋを低下させ、偽陽性を低くするためには、ブルームフィルタのサイズを大きくする必要があり、現実的ではない。
【００９９】
一方、本実施の形態では、上述したように、各通信装置１２から受信するブルームフィルタは、各通信装置１２において、ブルームフィルタの生成に用いる識別情報の第１の数と、存在情報のデータ長を示すビット数と、ハッシュ関数と、ハッシュ関数の第２の数と、を、共有変数Ｘを利用して変更したものである。このため、各通信装置１２から受信するブルームフィルタの各々は、確率的には独立試行であるといえる。このため、第２算出部２６では、本実施の形態における、複数のブルームフィルタからの情報からベイズ推定を用いて第２集合を算出することで、偽陽性確率の低下を図ることができる。
【０１００】
第２算出部２６では、ＤＡＯに含まれる、ブルームフィルタと、共有変数Ｘと、を用いて、該ブルームフィルタに用いられているｋ個のハッシュ関数を算出する。第２算出部２６は、通信装置１２の生成部４２と同様にして、ｋ個のハッシュ関数を算出する。そして、第２算出部２６は、第１集合に含まれる各識別情報の各々について、ｋ個のハッシュ関数の各々を用いてｋ個のハッシュ値を算出する。そして、第２算出部２６は、ブルームフィルタにおける、算出したｋ個のハッシュ値の各々に対応するビット位置のビット値が全て「１」（すなわち、ｐｏｓｉｔｉｖｅ）である識別情報を用い、第１集合に対し、個々のブルームフィルタを適用することで、その時どきのリンクの存在・不存在を観測し、第2集合を算出する。さらに、個々の観測情報に対し、時系列にベイズ推定を行い、その結果第２集合を算出してもよい。
【０１０１】
詳細には、第２算出部２６では、第１集合に含まれる他の通信装置１２の識別情報の各々の内、対応するブルームフィルタに対して陽性（すなわち、ｐｏｓｉｔｉｖｅ：ｋ個のハッシュ関数により指示されるビットが全て１である場合）であるものについては、観測される存在確率を例えば「１」と仮定する。一方、第２算出部２６では、第１集合に含まれる他の通信装置１２の識別情報の各々の内、対応するブルームフィルタに対して陰性（すなわち、ｎｅｇｔｉｖｅ：ｋ個のハッシュ関数により指示されるビットのうち、一つでも０が含まれる場合）であるものについては、観測される存在確率を例えば「０．０５」等の任意の低い値と仮定する。
【０１０２】
なお、ｎｅｇａｔｉｖｅの場合に、存在確率を「０」とせず、「０．０５」等の任意の低い値とする理由は、リンクの不存在が一時的である場合に対応するためである。
【０１０３】
このようにして、第２算出部２６は、各通信装置１２に対応する存在情報（ブルームフィルタ）を用いて、第２集合を、リンクの存在確率を示す存在確率情報として算出する。
【０１０４】
なお、第２算出部２６は、複数の通信装置１２の各々から受信した存在情報と、複数の通信装置１２の各々に対応する第１集合と、に基づくベイズ推定によって、第２集合（存在確率情報）を複数の通信装置１２の各々ごとに算出してもよい。
【０１０５】
メッシュネットワークでは、ネットワークに属する複数の通信装置１２の間の隣接関係は、経時変化しないことが多い。各通信装置１２間の隣接関係が変化しないと仮定することで、偽陽性の発生確率に関わらず、各通信装置１２から時系列で取得した連続した独立のブルームフィルタによる陽性および偽陽性を、ベイズ推定による主観確率とすることができる。
【０１０６】
具体的には、第２算出部２６は、複数の通信装置１２の各々における時系列のブルームフィルタ（存在情報）を利用して、ベイズ推定を用いて、存在確率情報を、複数の通信装置１２の各々ごとに算出する。
【０１０７】
詳細には、実際の各通信装置１２同士が隣接関係にあるか否かを、“真に知りたい事象”（Ｔ：Ｔｒｕｅ，−Ｔ：Ｆａｌｓｅ）とする。また、ブルームフィルタから得られた情報（各識別情報に対応する、ｐｏｓｉｔｉｖｅ、または、ｎｅｇａｔｉｖｅ）を、確率的情報（Ｐ：Ｐｏｓｉｔｉｖｅ，−Ｐ：Ｎｅｇａｔｉｖｅ）とする。それぞれの事象Ｔの確率をＰγ（Ｔ）、事象Ｐが発生したときの事象Ｔの条件付確率をＰγ（Ｔ｜Ｐ）とすると、ベイズの公式より、以下の式（４）が成り立つ。
【０１０８】
【数１】
2016063479.tif 000003
【０１０９】
すなわち、Ｐγ（Ｔ｜Ｐ）は、第１集合に含まれる通信装置１２の各々が、第１集合に対応する通信装置１２に対して、真に近傍に位置する確率（真にリンクの存在する確率）を示す。なお、第１集合に対応する通信装置１２は、例えば、第１集合を形成する中心となる通信装置１２である。
【０１１０】
ここで、Ｐγ（Ｔ）が主観確率であることから、第２算出部２６は、Ｐγ（Ｔ）を予め定めた初期値（例えば、０．５）から開始し、ブルームフィルタによる情報（各識別情報に対応する、ｐｏｓｉｔｉｖｅ、または、ｎｅｇａｔｉｖｅ）が得られるたびにＰγ（Ｔ）を更新する。
【０１１１】
すなわち、第２算出部２６は、ブルームフィルタに対して、対応する第１集合に含まれる識別情報のハッシュ値に相当するビット位置のビット値が全て「１」（Ｐｏｓｉｔｉｖｅ）であった場合、式（４）を更新する。一方、対応する第１集合に属する識別情報のハッシュ値に相当するビット位置のビット値の少なくとも１つが「０」（Ｎｅｇａｔｉｖｅ）であった場合、該識別情報によって特定される他の通信装置１２は、該第１集合に対応する通信装置１２の近傍に位置しない確率が高いことが確定する。
【０１１２】
ただし、リンクの切断が一時的である場合や、環境要因等によってリンクの切断状態が回復する場合もある。このため、第２算出部２６は、ブルームフィルタに対して、対応する第１集合に含まれる識別情報のハッシュ値に相当するビット位置のビット値の少なくとも１つが「０」（Ｎｅｇａｔｉｖｅ）であった場合、第２算出部２６は、リンク復活の確率の期待値をＰγ（Ｔ）に設定する（例えば、０：０５など）。
【０１１３】
このように、第２算出部２６は、各通信装置１２の各々と、各通信装置１２に対応する第１集合に含まれる他の通信装置１２の識別情報の各々と、について、リンクの存在確率を示す存在確率情報（第２集合）を、ベイズ推定を用いて算出してもよい。
【０１１４】
図４は、第１集合と第２集合との関係の一例を示す模式図である。
【０１１５】
例えば、管理装置１０（図４では図示省略）が、通信装置１２１から存在情報を受信したとする。この場合、第１算出部２４は、管理装置１０で管理可能な複数の通信装置１２（通信装置１２１〜１２２７）の内、例えば、通信装置１２６〜１２２０を、第１集合として算出する。そして、更に、第２算出部２６は、第１集合より偽陽性の低い第２集合（例えば、通信装置１２２〜１２５）を算出する。
【０１１６】
図１に戻り、構築部２８は、複数の通信装置１２の各々ごとに算出した存在確率情報を用いて、複数の通信装置１２間におけるリンクの存在を示すグラフを構築する。
【０１１７】
例えば、構築部２８は、第２算出部２６で、複数の通信装置１２の各々ごとに算出された存在確率情報から、各通信装置１２間におけるリンクの存在を示すグラフを構築する。詳細には、存在確率情報を各通信装置１２間のリンクの重みとして用いる場合（重み付きグラフ）と、存在確率情報が予め定めた閾値以上であるもののみをリンクとして用いる場合と、がある。
【０１１８】
構築部２８が構築したグラフは、異なるメッシュネットワークとの間での安定性の比較などを分析するために用いることができる。
【０１１９】
なお、本実施の形態では、制御部１８は、構築部２８を備えた構成である場合を説明するが、制御部１８は、構築部２８を備えない構成であってもよい。
【０１２０】
次に、管理システム１における各通信装置１２の各々が実行する通信処理を説明する。
【０１２１】
図５は、通信装置１２が実行する通信処理の手順の一例を示すフローチャートである。
【０１２２】
まず、通信制御部３６が、通信装置１２で検出可能な他の通信装置１２を検出する（Ｓ１００）。次に、取得部３８が、検出可能な他の通信装置１２から、該他の通信装置１２の識別情報を取得する（ステップＳ１０２）。
【０１２３】
次に、取得部３８は、取得した通信装置１２の識別情報と、該識別情報の検出日時（すなわち受信日時）と、を対応づけて、記憶部３２に記憶する（ステップＳ１０４）。
【０１２４】
次に、抽出部４０、生成部４２、および送信部３６Ｂが、所定時間ごとに、ステップＳ１０６〜ステップＳ１１０の処理を実行する。
【０１２５】
まず、抽出部４０が、取得部３８で過去に取得した複数の識別情報の少なくとも一部を抽出する（ステップＳ１０６）。次に、生成部４２が、抽出部４０で抽出された識別情報から、存在情報を生成する（ステップＳ１０８）。次に、送信部３６Ｂが、生成した存在情報を、管理装置１０へ送信する（ステップＳ１１０）。そして、本ルーチンを終了する。
【０１２６】
次に、管理装置１０で実行する管理処理の手順を説明する。図６は、管理装置１０で実行する管理処理の手順を示すフローチャートである。
【０１２７】
まず、受信部２０Ａが、複数の通信装置１２の各々から存在情報を受信する（ステップＳ２００）。上述したように、例えば、受信部２０Ａは、存在情報と、共有変数Ｘおよび通信装置１２の位置情報の少なくとも一方と、を含むＤＡＯを受信する。
【０１２８】
次に、管理部２２が、複数の通信装置１２の各々から受信したＤＡＯを用いて、基本ネットワーク構造（例えば、ＤＯＤＡＧ）を生成する（ステップＳ２０２）。管理部２２は、生成した基本ネットワーク構造を、記憶部１６へ記憶する（ステップＳ２０４）。
【０１２９】
次に、制御部１８は、ステップＳ２００で存在情報を受信した通信装置１２ごとに、ステップＳ２０６〜ステップＳ２０８の処理を繰り返し実行する。
【０１３０】
まず、制御部１８の第１算出部２４が、受信した存在情報の送信元である通信装置１２に対応する第１集合を算出する（ステップＳ２０６）。
【０１３１】
次に、第２算出部２６が、通信装置１２から受信した存在情報を用いて、該通信装置１２に対応する、ステップＳ２０６で算出した第１集合より偽陽性の低い第２集合を算出する（ステップＳ２０８）。そして、第２算出部２６は、通信装置１２の識別情報に対応づけて、ステップＳ２０８で算出した第２集合である存在確率情報を、記憶部１６に記憶する。
【０１３２】
制御部１８が、ステップＳ２０６〜ステップＳ２０８の処理を各通信装置１２の各々ごとに実行することで、制御部１８は、各通信装置１２の各々に対応する第２集合を、各通信装置１２の各々に対応する存在確率情報として算出する。
【０１３３】
次に、構築部２８は、複数の通信装置１２の各々ごとに算出した存在確率情報を用いて、複数の通信装置１２間におけるリンクの存在を示すグラフを構築する（ステップＳ２１０）。そして、本ルーチンを終了する。なお、ステップＳ２１０の処理を行わない形態であってもよい。この場合、第２算出部２６は、各通信装置１２の識別情報に対応づけて、ステップＳ２０８で算出した各通信装置１２に対応する第２集合である存在確率情報を、記憶部１６に記憶すればよい。
【０１３４】
以上説明したように、本実施の形態の管理装置１０は、受信部２０Ａと、第１算出部２４と、第２算出部２６と、を備える。受信部２０Ａは、複数の通信装置１２から、複数の通信装置１２の各々で検出した他の通信装置１２の識別情報の特徴を確率的に表した存在情報を受信する。第１算出部２４は、複数の通信装置１２の少なくとも一部の識別情報を、複数の通信装置１２の各々で検出可能な他の通信装置１２の集合を示す第１集合として、複数の通信装置１２の各々ごとに算出する。第２算出部２６は、複数の通信装置１２の各々から受信した存在情報と、複数の通信装置１２の各々に対応する第１集合と、に基づいて、第１集合より偽陽性の低い第２集合を、複数の通信装置１２の各々と他の通信装置１２の各々との間のリンクの存在確率を示す存在確率情報として、複数の通信装置１２の各々ごとに算出する。
【０１３５】
このように、管理装置１０では、複数の通信装置１２の各々で検出した他の通信装置１２の識別情報の特徴を確率的に表した存在情報を、複数の通信装置１２の各々から受信する。そして、管理装置１０では、受信した存在情報を用いて、複数の通信装置１２の各々と他の通信装置１２の各々との間のリンクの存在確率を示す存在確率情報を、複数の通信装置１２の各々ごとに算出する。
【０１３６】
このため、管理装置１０では、従来に比べて短いデータ量で、存在確率情報の算出に用いる情報（本実施の形態では、存在情報）を取得することができる。
【０１３７】
また、複数の通信装置１２の各々ごとに算出した存在確率情報は、複数の通信装置１２の各々と他の通信装置１２の各々との間のリンクの存在確率を示す情報である。
【０１３８】
このため、本実施の形態の管理装置１０では、ＤＯＤＡＧなどでは把握することの困難であった、ｓｉｂｌｉｎｇのリンクなどの、上り経路方向以外のリンクについても分析可能な情報（存在確率情報）を提供することができる。
【０１３９】
従って、本実施の形態の管理装置１０では、より的確なネットワーク構造解析に適用可能な情報（すなわち、存在確率情報）を、効率よく提供することができる。
【０１４０】
また、本実施の形態の管理装置１０では、存在情報を用いることによって、少ないシステム負荷で、ＤＯＤＡＧに含まれないがバックアップになりうる通信装置１２間のリンクの存在確率情報を、提供することができる。
【０１４１】
また、無線メッシュネットワークにおいて、ルーティングプロトコルにＩＥＴＦ  ＲＦＣ６５５０などで定義されるＲＰＬを利用する場合を考える。ＲＰＬでは、メッシュノード間で接続するトポロジは、広域網と接続するノード（境界ルータ）をルートノードとするＤＡＧ（Ｄｉｒｅｃｔｅｄ  Ａｃｙｃｌｉｃ  Ｇｒａｐｈ）となる。逆に、各通信装置１２間では接続（通信または受信）可能であっても、ＤＡＧを構成しないリンクについては、ＲＰＬでは取り扱われない。一方、通信装置１２の障害などによりＤＡＧを構成するリンクが利用できなくなった場合、各通信装置１２は、ＤＡＧを構成しないリンクのうち、もっとも適切なものを利用する。
【０１４２】
すなわち、ＤＡＧを構成しないリンクの数や質が、ＲＰＬで構成されているネットワークの耐障害性に大きな影響を与える。このため、これらのリンクの数やリンクの位置を管理装置１０で把握することは、ＲＰＬにより構成されたメッシュネットワークの耐障害性診断に必須である。
【０１４３】
本実施の形態の管理装置１０では、上述したように、複数の通信装置１２から、複数の通信装置１２の各々で検出した他の通信装置１２の識別情報の特徴を確率的に表した存在情報を受信する。そして、管理装置１０では、受信した存在情報を用いて、複数の通信装置１２の各々と他の通信装置１２の各々との間のリンクの存在確率を示す存在確率情報を複数の通信装置１２の各々ごとに算出する。
【０１４４】
このため、管理装置１０では、限られた通信量で、メッシュネットワークの耐障害性判断に用いることの可能な情報（存在確率情報）を提供することができる。
【０１４５】
また、各通信装置１２から受信する存在情報としてのブルームフィルタは、通信装置１２側で、共有変数Ｘを用いて生成されたものである。このため、ブルームフィルタにおける偽陽性の固定化を抑制することができる。
【０１４６】
また、存在情報は、送信元である通信装置１２ごとに、記憶部１６に管理される。このため、各通信装置１２の各々に対応する一連の存在情報は、共有変数Ｘの効果により、個々に独立した確率事象としての情報を管理装置１０に与えることとなる。
【０１４７】
そして、第２算出部２６では、各通信装置１２に対応する存在情報を用いて、複数の通信装置１２の各々と、他の通信装置１２の各々と、の間のリンクの存在確率を示す存在確率情報を、複数の通信装置１２の各々ごとに算出する。
【０１４８】
このため、本実施の形態の管理装置１０では、より的確なネットワーク構造解析に適用可能な情報（すなわち、存在確率情報）を、効率よく提供することができる。また、管理装置１０は、最小のシステム負荷で、より的確なネットワーク構造解析に適用可能な情報（すなわち、存在確率情報）を、効率よく提供することができる。
【０１４９】
また、構築部２８は、通信装置１２の各々に対応する存在確率情報を用いて、複数の通信装置１２間におけるリンクの存在を示すグラフを構築する。このため、構築部２８は、管理装置１０が管理可能な複数の通信装置１２の各々の間における、リンクの存在を示すグラフを構築することができる。構築したグラフは、例えば、グラフによって示されるネットワークの詳細な全体像の分析や、グラフによって示されるネットワークの健全性の定量的な算出に用いることができる。ネットワークの健全性には、例えば、ネットワークトポロジにおける、複数の通信装置１２の内の一部に故障などが発生した場合に、故障していないにも関わらず到達不能な通信装置１２が発生しているか（トポロジが非連続になるか）否か、や、一つの通信装置１２が故障した際のグラフ半径増分の最悪値、などの指標が考えられる。
【０１５０】
（第２の実施の形態）
本実施の形態では、第１の実施の形態とは異なる方法で、第１集合を算出する場合を説明する。
【０１５１】
図７は、本実施の形態の管理システム１Ａの概略図である。管理システム１Ａは、管理装置１０Ａと、複数の通信装置１２と、検出装置５０と、を備える。
【０１５２】
検出装置５０は、通信装置１２の識別情報を検出する。検出装置５０は、第１検出部５２と、第２検出部５４と、を備える。
【０１５３】
図８は、検出装置５０の設置位置の説明図である。
【０１５４】
本実施の形態では、検出装置５０は、実空間上における、予め定められた領域Ｃの出入口Ｐに設置されている。領域Ｃは、例えば、特定の部屋や、店舗や、倉庫などである。検出装置５０は、出入口Ｐを介して領域Ｃ内に入る通信装置１２、および、出入口Ｐを介して領域Ｃ外へ出る通信装置１２、の各々の識別情報を検出する。本実施の形態では、各通信装置１２は、人物などの移動体に携帯され、移動体の移動に伴って移動する場合を想定している。
【０１５５】
検出装置５０には、通信装置１２の識別情報を検出可能な公知の装置を用いる。例えば、各通信装置１２の該表面に、識別情報を示す画像（例えば、バーコードなど）が付与されているとする。この場合、検出装置５０として、公知の画像読取装置を用いればよい。また、通信装置１２に電子データとして格納された識別情報を検出する場合、検出装置５０には、通信装置１２へ識別情報の送信要求を送信し、通信装置１２から受信した返信に含まれる識別情報を読取ることで、識別情報を検出する公知の検出装置を用いればよい。
【０１５６】
本実施の形態では、領域Ｃには、出入口Ｐとして、入口部Ｐ１と、出口部Ｐ２と、が設けられている。そして、入口部Ｐ１には、第１検出部５２が配置され、出口部Ｐ２には、第２検出部５４が配置されている場合を説明する。
【０１５７】
このため、第１検出部５２は、領域Ｃ内に入る通信装置１２の識別情報を検出する。そして、第１検出部５２は、検出した識別情報を含む検出結果を、識別情報を検出する度に管理装置１０Ａへ送信する。
【０１５８】
第２検出部５４は、領域Ｃから外へ出る通信装置１２の識別情報を検出する。そして、第２検出部５４は、検出した識別情報を含む検出結果を、識別情報を検出する度に、管理装置１０Ａへ送信する。
【０１５９】
図７に戻り、通信装置１２は、第１の実施の形態と同様である。管理装置１０Ａと、複数の通信装置１２の各々とは、通信部（通信部１４、通信部３０）による通信が可能である。管理装置１０Ａと、複数の通信装置１２の各々とは、直接通信可能であってもよいし、中継通信（マルチホップ通信）可能であってもよい。管理装置１０Ａと通信装置１２の各々との通信には、ＴＣＰ／ＩＰ、６ｌｏｗＰＡＮ、ＲＰＬ、８０２．１５．４、などの公知技術を利用することができる。
【０１６０】
管理装置１０Ａは、通信部１４と、記憶部１６と、制御部１８Ａと、を備える。通信部１４および記憶部１６は、制御部１８に接続されている。
【０１６１】
通信部１４および記憶部１６は、第１の実施の形態と同様である。制御部１８Ａは、通信制御部２０と、管理部２２と、第１算出部２５と、第２算出部２６と、構築部２８と、を含む。
【０１６２】
通信制御部２０、管理部２２、第１算出部２５、第２算出部２６、および構築部２８の一部またはすべては、例えば、ＣＰＵなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣなどのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【０１６３】
通信制御部２０、管理部２２、第２算出部２６、構築部２８は、第１の実施の形態と同様である。なお、通信制御部２０は、通信部１４を介して、検出装置５０から検出結果を受信する。検出結果は、検出装置５０で検出した通信装置１２の識別情報を含む。
【０１６４】
第１算出部２５は、複数の通信装置１２の内、予め定められた領域Ｃの出入口Ｐに設置された検出装置５０で検出された通信装置１２の識別情報を、第１集合として算出する。
【０１６５】
また、第１算出部２５は、複数の通信装置１２の内、予め定められた領域Ｃの入口部Ｐ１に設けられた第１検出部５２で検出された通信装置１２から、該領域Ｃの出口部Ｐ２に設けられた第２検出部５４で検出された通信装置１２を除いた通信装置１２の識別情報を、第１集合として算出することが好ましい。
【０１６６】
このため、第１算出部２５は、領域Ｃ内に存在する通信装置１２の識別情報を、第１集合として算出する。
【０１６７】
次に、管理装置１０Ａが実行する管理処理の手順を説明する。図９は、管理装置１０Ａで実行する管理処理の手順を示すフローチャートである。なお、第１の実施の形態の管理装置１０と同様の処理には、同じステップ番号を付与して詳細な説明を省略する。
【０１６８】
まず、受信部２０Ａが、複数の通信装置１２の各々から存在情報を受信する（ステップＳ２００）。次に、管理部２２が、複数の通信装置１２の各々から受信したＤＡＯを用いて、基本ネットワーク構造を生成する（ステップＳ２０２）。管理部２２は、生成した基本ネットワーク構造を記憶部１６へ記憶する（ステップＳ２０４）。
【０１６９】
次に、制御部１８Ａは、ステップＳ２００で存在情報を受信した通信装置１２ごとに、ステップＳ３０６、およびステップＳ２０８の処理を繰り返し実行する。
【０１７０】
まず、制御部１８Ａの第１算出部２５が、受信した存在情報の送信元である通信装置１２に対応する第１集合を算出する（ステップＳ３０６）。本実施の形態では、第１算出部２５は、ステップＳ３０６の処理時または処理直前に、第１検出部５２から受信した検出結果に含まれる識別情報から、第２検出部５４から受信した検出結果に含まれる識別情報を除いた残りの識別情報を、第１集合として算出する。
【０１７１】
具体的には、第１算出部２５は、第１検出部５２から検出結果を受信すると、該検出結果に含まれる識別情報を記憶部１６に記憶する。また、第１算出部２５は、第２検出部５４から検出結果を受信すると、該検出結果の含まれる識別情報を、記憶部１６から削除する。そして、第１算出部２５は、ステップＳ３０６の第１集合の算出時に、記憶部１６に記憶されている識別情報を第１集合として読取ることで、第１集合を算出する。
【０１７２】
次に、第２算出部２６が、通信装置１２から受信した存在情報を用いて、該通信装置１２に対応する、ステップＳ３０６で算出した第１集合より偽陽性の低い第２集合を算出する（ステップＳ２０８）。そして、第２算出部２６は、通信装置１２の識別情報に対応づけて、ステップＳ２０８で算出した第２集合である存在確率情報を、記憶部１６に記憶する。
【０１７３】
次に、構築部２８は、複数の通信装置１２の各々ごとに算出した存在確率情報を用いて、複数の通信装置１２間におけるリンクの存在を示すグラフを構築する（ステップＳ２１０）。そして、本ルーチンを終了する。なお、第１の実施の形態と同様に、ステップＳ２１０の処理を行わない形態であってもよい。
【０１７４】
以上説明したように、本実施の形態の管理装置１０Ａは、第１の実施の形態の第１算出部２４に代えて、第１算出部２５を備える。第１算出部２５は、複数の通信装置１２の内、領域Ｃの出入口Ｐに設置された検出装置５０で検出された通信装置１２の識別情報を、第１集合として算出する。
【０１７５】
このため、本実施の形態の管理装置１０Ａでは、上記第１の実施の形態で得られる効果に加えて、更に、特定の領域内に存在する可能性のある通信装置１２の識別情報を用いて、複数の通信装置１２の各々に対応する存在確率情報を算出することができる。
【０１７６】
（第３の実施の形態）
次に、上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０のハードウェア構成について説明する。図１０は、上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０のハードウェア構成例を示すブロック図である。
【０１７７】
上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０は、通信Ｉ／Ｆ部８２０、表示部８４０、入力部９４０、ＣＰＵ８６０、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８８０、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９００、及びＨＤＤ９２０等がバス９６０により相互に接続されており、通常のコンピュータを利用したハードウェア構成となっている。
【０１７８】
ＣＰＵ８６０は、演算装置である。ＲＡＭ９００は、ＣＰＵ８６０による各種処理に必要なデータを記憶する。ＲＯＭ８８０は、ＣＰＵ８６０による各種処理を実現するプログラム等を記憶する。ＨＤＤ９２０は、上述した記憶部１６や記憶部３２などに格納されるデータを記憶する。通信Ｉ／Ｆ部８２０は、他の装置に通信回線等を介して接続し、接続した装置との間でデータを受信または通信（送受信）するためのインタフェースである。表示部８４０は、各種画像などを表示する。入力部９４０は、各種指示を入力するときにユーザによって操作される。
【０１７９】
上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０で実行される上記各種処理を実行するためのプログラムは、ＲＯＭ８８０等に予め組み込んで提供される。
【０１８０】
なお、上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０で実行されるプログラムは、これらの装置にインストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されて提供するように構成してもよい。
【０１８１】
また、上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１８２】
上記実施の形態の管理装置１０、管理装置１０Ａ、通信装置１２、および検出装置５０で実行されるプログラムは、上述した各部が主記憶装置上に生成されるようになっている。
【０１８３】
なお、上記には、いくつかの実施の形態を説明したが、これらの実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１８４】
１  管理システム
１０  管理装置
１２  通信装置
２０Ａ  受信部
２４  第１算出部
２６  第２算出部
２８  構築部
３６Ｂ  送信部
３８  取得部
４０  抽出部
４２  生成部
【図１】
2016063479.tif 000004
【図２】
2016063479.tif 000005
【図３】
2016063479.tif 000006
【図４】
2016063479.tif 000007
【図５】
2016063479.tif 000008
【図６】
2016063479.tif 000009
【図７】
2016063479.tif 000010
【図８】
2016063479.tif 000011
【図９】
2016063479.tif 000012
【図１０】
2016063479.tif 000013