(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-07-01
(45)【発行日】2025-07-09
(54)【発明の名称】方法、システム及びコンピュータ・プログラム(デバイス配置の評価)
(51)【国際特許分類】
G01S 5/02 20100101AFI20250702BHJP
【FI】
G01S5/02 Z
(21)【出願番号】P 2021170617
(22)【出願日】2021-10-19
【審査請求日】2024-03-07
(32)【優先日】2020-10-27
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(72)【発明者】
【氏名】村田 将之
【審査官】藤脇 昌也
(56)【参考文献】
【文献】米国特許出願公開第2010/0246485(US,A1)
【文献】特開2019-184572(JP,A)
【文献】特表2016-502652(JP,A)
【文献】米国特許第9860706(US,B2)
【文献】米国特許出願公開第2018/321353(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 5/00 - 5/14
19/00 - 19/55
(57)【特許請求の範囲】
【請求項1】
コンピュータの情報処理によって環境内の
ビーコンのセットの配置を評価する方法であって、
前記環境内
に定められた離散点のセット内の離散点の1つとして与えられるターゲット位置について、少なくとも複数の近傍位置を選択することと、
ある配置の下で位置が与えられた場合の
受信信号強度(RSS)ベクトルを取得するための観測モデルを用いることによって、前記複数の近傍位置の各々について前記ターゲット位置を条件とした推定位置の確率を計算することと、
前記少なくとも複数の近傍位置の各々について計算された前記確率を用いることによって評価メトリックを算出することと、
を含
み、
前記確率が、前記ターゲット位置において予測されるRSSベクトルに対して推定位置の対数尤度の期待値を算出し、前記期待値の指数関数を算出することによって幾何平均を算出することにより、計算される、
方法。
【請求項2】
前記幾何平均が、正規化定数によって正規化される、請求項
1に記載の方法。
【請求項3】
前記正規化定数が、前記少なくとも複数の近傍位置について算出された期待値に基づいて計算される、請求項
2に記載の方法。
【請求項4】
前記正規化定数によって正規化された前記幾何平均が、前記ターゲット位置を条件とした前記推定位置の確率分布を近似し、前記評価メトリックが、前記確率分布の分散に基づいて前記ターゲット位置について計算される、請求項
2に記載の方法。
【請求項5】
前記観測モデルが、信号伝搬モデルに基づいて計算される、請求項1から請求項
4までのいずれか1項に記載の方法。
【請求項6】
前記少なくとも複数の近傍位置が、信号伝搬モデルに基づく方式で前記ターゲット位置において予測される
RSSベクトルによって定められる範囲内の位置を見いだすことによって選択される、請求項1から請求項
5までのいずれか1項に記載の方法。
【請求項7】
前記方法が、
前記ターゲット位置を
前記離散点のセットの中で変更することと、
前記離散点について計算された評価メトリックに基づく方式で、
前記環境の全体にわたる測位誤差分布マップを出力することと
をさらに含む、請求項1から請求項
6までのいずれか1項に記載の方法。
【請求項8】
前記方法が、
前記ターゲット位置を
前記離散点のセットの中で変更することと、
前記離散点について計算された評価メトリックの統計量に基づく方式で、前記
ビーコンのセットの前記配置
の質を表わすインデックスを出力することと
をさらに含む、請求項1から請求項
7までのいずれか1項に記載の方法。
【請求項9】
前記方法が、
前記評価メトリックに基づいて、前
記環境内に
前記ビーコンを配置すること
をさらに含む、請求項1から請求項
8までのいずれか1項に記載の方法。
【請求項10】
プログラム命令を実行することによって、環境内の
ビーコンのセットの配置を評価するためのシステムであって、
前記プログラム命令を格納するメモリと、
前記メモリと通信し、前記プログラム命令を実行するための処理回路であって、
前記環境内
に定められた離散点のセット内の離散点の1つとして与えられるターゲット位置について、少なくとも複数の近傍位置を選択することと、
ある配置の下で位置が与えられた場合の
受信信号強度(RSS)ベクトルを取得するための観測モデルを用いることによって、推定位置としての前記少なくとも複数の近傍位置の各々について、前記ターゲット位置を条件とした前記推定位置の確率を計算することと、
前記少なくとも複数の近傍位置の各々について計算された前記確率を用いることによって、評価メトリックを算出することと
を行うように構成される処理回路と
を含
み、
前記確率が、幾何平均を算出することによって計算され、前記幾何平均が、前記ターゲット位置における予測されるRSSベクトルに対して推定位置の対数尤度の期待値を算出し、前記期待値の指数関数を算出することによって計算される、
システム。
【請求項11】
前記幾何平均が、正規化定数によって正規化され、前記正規化定数が、前記少なくとも複数の近傍位置について算出された期待値に基づいて計算される、請求項
10に記載のシステム。
【請求項12】
前記少なくとも複数の近傍位置が、信号伝搬モデルに基づく方式で前記ターゲット位置において予測される
RSSベクトルによって定められる範囲内の位置を見いだすことによって選択される、請求項
10又は請求項11に記載のシステム。
【請求項13】
前記処理回路が、
前記ターゲット位置を
前記離散点のセットの中で変更する
ことと、
前記離散点について計算された前記評価メトリックに基づく方式で、所与の位置についての評価メトリックと、
前記環境の全体にわたる測位誤差分布マップと
、前記
ビーコンのセットの
前記配置の質を各々が表わすインデックスと、からなる群から選択される少なくとも1つを提供する
ことと
を行うように構成される、
請求項
10から請求項
12までのいずれか1項に記載のシステム。
【請求項14】
環境内の
ビーコンのセットの配置を評価するためのコンピュータ・プログラムであって、前記コンピュータ・プログラムが、
前記環境内
に定められた離散点のセット内の離散点の1つとして与えられるターゲット位置について、少なくとも複数の近傍位置を選択することと、
ある配置の下で位置が与えられた場合の
受信信号強度(RSS)ベクトルを取得するための観測モデルを用いることによって、推定位置としての前記少なくとも複数の近傍位置の各々について、前記ターゲット位置を条件とした前記推定位置の確率を計算することと、
前記少なくとも複数の近傍位置の各々について計算された前記確率を用いることによって、評価メトリックを算出することと
を行うように構成される命令を含
み、
前記確率が、幾何平均を算出することによって計算され、前記幾何平均が、前記ターゲット位置における予測されるRSSベクトルに対して推定位置の対数尤度の期待値を算出し、前記期待値の指数関数を算出することによって計算される、コンピュータ・プログラム。
【請求項15】
請求項
14に記載されるコンピュータ・プログラム命令が格納されたコンピュータ可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、デバイスのセットを配置するための支援技術に関し、より具体的には、環境内のデバイスのセットの配置を評価する方法に関する。
【背景技術】
【0002】
屋内環境で利用可能なナビゲーションアプリケーションを提供するために、様々な屋内測位(localization、またはpositioning)技術が検討されている。そうした測位技術の中でも、Wi-Fi(商標)又はBluetooth(商標)Low Energy(BLE)の無線信号強度、いわゆるRSS(受信信号強度、Received Signal Strength)を測定することに基づく技術は、インフラコストが比較的低いこと、特別なハードウェアを必要としないこと、及び潜在的に高精度であることから、最も有望な手法の一つとなっている。
【先行技術文献】
【非特許文献】
【0003】
【文献】Bishop、Adrian N.他、「Optimality analysis of sensor-target localization geometries」Automatica 46.3(2010年):479-492
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明は、デバイスの配置を評価することが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【0005】
実施形態によると、方法、システム、及びコンピュータ・プログラム製品が開示される。
【0006】
本開示の実施形態によれば、環境内のデバイスのセットの配置を評価するコンピュータ実施方法が提供される。本方法は、環境内のターゲット位置について、少なくとも複数の近傍位置を選択することを含む。本方法はまた、ある配置の下で位置が与えられた場合の観測値のセットを得るための観測モデルを用いることによって、推定位置としての少なくとも複数の近傍位置の各々について、ターゲット位置を条件とした推定位置の確率を計算することを含む。計算は、近似的に行うことができる。本方法は、少なくとも複数の近傍位置の各々について計算された確率を用いることによって評価メトリックを算出することをさらに含む。
【0007】
本開示の1つ又は複数の態様に関連したコンピュータ・システム及びコンピュータ・プログラム製品もまた、本明細書において説明され、特許請求される。
【0008】
本開示の実施形態によれば、環境内のデバイスのセットの配置を評価するコンピュータ実施方法が提供される。本方法は、ターゲット位置xを条件とした推定位置
【数1】
(以後、x^とも記載する。以下同様)の関数
【数2】
(以後、p~0(x^;x)とも記載する。以下同様)に基づいて評価メトリックを計算し、評価メトリックを出力することを含む。評価メトリックは、確率分布
【数3】
(以後、p(x^|x)とも記載する。以下同様)を用いることによって評価される。確率分布p(x^|x)は、ターゲット位置xで予測される観測値rのセットに対して、観測値rのセットを条件とした推定位置x^の確率分布p(x^|r)の算術平均Ep(r|x)として計算され、関数p~0(x^;x)で近似される。関数p~0(x^;x)は、算術平均E
p(r|x)を幾何平均G
p(r|x)で置き換えることによって得られる。
【0009】
付加的な特徴及び利点は、本開示の技術によって実現される。本開示の他の実施形態及び態様は、本明細書で詳細に説明され、特許請求される発明の一部とみなされる。
【図面の簡単な説明】
【0010】
本出願に含まれる図面は、本明細書に組み込まれ、本明細書の一部を構成する。これらは、本開示の実施形態を示しており、説明とともに、本開示の原理を説明する役割を果たす。図面は、特定の実施形態を例示するものに過ぎず、本開示を限定するものではない。
【0011】
【
図1】本開示のいくつかの実施形態による、測位誤差推定システムを含む、ビーコン配置を評価するシステムのブロック図を示す。
【
図2】本開示のいくつかの実施形態による、測位誤差推定システムの詳細なブロック図を示す。
【
図3】本開示のいくつかの実施形態による、測位誤差推定システムと組み合わせて用いられる電波伝搬モデルの概略を示す。
【
図4】本開示のいくつかの実施形態による、所与のビーコン配置についての測位誤差を推定するプロセスを示すフローチャートである。
【
図5】本開示のいくつかの実施形態による、ターゲット環境内に設定された離散点及びビーコン配置の概略を示す。
【
図6】本開示のいくつかの実施形態による、ターゲット環境内のターゲット点の周囲の近傍点を抽出する方法を示す。
【
図7】本開示のいくつかの実施形態による、ターゲット環境内のターゲット点の周囲の近傍点を抽出する方法を示す。
【
図8】40m×40mの区域に25個のビーコンがランダムに配置された環境について、モンテカルロ・シミュレーションによって算出された測位誤差RMSEMCの分布のマップを示す。
【
図9】
図8に示した環境においてモンテカルロ・シミュレーションによって算出されたRMSEMCに対しての、関連方法で算出されたRMSECE1及び提案方法で算出されたRMSEE1の相関を表わすプロットを示す。
【
図10】30m×30mの区域に9個のビーコンがランダムに配置された環境について、モンテカルロ・シミュレーションによって算出された測位誤差RMSEMCの分布のマップを示す。
【
図11】
図10に示した環境においてモンテカルロ・シミュレーションによって算出されたRMSEMCに対しての、関連方法で算出されたRMSECE2及び提案方法で算出されたRMSEE2の相関を表わすプロットを示す。
【
図12】本開示の1つ又は複数の実施形態によるコンピュータ・システムの概略を示す。
【0012】
本開示は、様々な修正及び代替形態に適応可能であるが、その具体的な内容は、図面に例として示されており、詳細に説明されるであろう。しかしながら、本開示を説明された特定の実施形態に限定する意図はないことを理解すべきである。逆に、本開示の精神と範囲内に入るすべての修正、均等物、及び代替物をカバーすることが意図される。
【発明を実施するための形態】
【0013】
以下、本開示を特定の実施形態に関して説明するが、以下に説明する実施形態は例示としてのみ言及されており、本開示の範囲を限定することを意図するものではないことは、当業者には理解されるであろう。
【0014】
屋内環境で利用可能なナビゲーションアプリケーションを提供するために、様々な屋内測位技術が検討されている。そうした測位技術の中でも、Wi-Fi(商標)又はBluetooth(商標)Low Energy(BLE)の無線信号強度、いわゆるRSS(受信信号強度、Received Signal Strength)を測定することに基づく技術は、インフラコストが比較的低いこと、特別なハードウェアを必要としないこと、及び潜在的に高精度であることから、最も有望な手法の一つとなっている。
【0015】
BLEベースの測位技術は、ビーコンなどの信号放出デバイスを追加で設置することを必要とすることがある。しかしながら、デバイス配置を設計するには、屋内測位方法に関する専門的な知識を要する場合があるため、ビーコンベースの測位システムのスケール変更は、依然として困難な課題である。
【0016】
したがって、計算コストと評価精度とのバランスを取ってデバイスの配置を評価することが可能な新規の技術が必要とされるであろう。
【0017】
本開示による1つ又は複数の実施形態は、ターゲット環境内のデバイスのセットの配置を評価するためのコンピュータ実施方法、コンピュータ・システム、及びコンピュータ・プログラム製品に向けられる。屋内測位のためのデバイスのセットの配置(ビーコン配置)が判定され、また、ターゲット環境又は空間内のターゲット位置に対する測位誤差も判定される。ビーコンが設置される場所は、配置を評価するための評価メトリックとして算出される。
【0018】
以下、最初に
図1-
図3を参照して、本開示のいくつかの実施形態による屋内測位のためのビーコン配置を評価するコンピュータ・システムについて説明する。次に、
図4-
図7を参照して、本開示のいくつかの実施形態による屋内測位のためのビーコン配置を評価するコンピュータ実施方法について説明する。次に
図8-
図11を参照して、本開示のいくつかの実施形態による新規のビーコン配置評価に関する実験的研究について説明する。最後に
図12を参照して、本開示の1つ又は複数の実施形態によるコンピュータ・システムのハードウェア構成について説明する。
【0019】
システム構成
以下、
図1を参照して、本開示のいくつかの実施形態による測位誤差推定システムを含む、ビーコン配置評価システムのブロック図を説明する。
【0020】
図1に示すように、システム100は、測位誤差推定を行うための測位誤差推定システム110と、測位誤差推定システム110と組み合わせて用いられる電波伝搬モデル150とを含むことができる。
【0021】
測位誤差推定システム110は、測位誤差推定のための条件を記述する入力データを受け取り、所与の条件下での測位誤差推定の結果を出力するように構成することができる。
【0022】
測位誤差推定の条件は、ターゲット環境及びターゲット環境内のビーコンのセットの配置102を含むことができ、測位誤差推定のための1つ又は複数のパラメータを含むことができる。
【0023】
配置が評価されるビーコンは、RSS(受信信号強度、Received Signal Strength)の測定に基づく屋内測位に用いられるBLE又はWi-Fi(商標)のビーコンとすることができる。いくつかの実施形態では、各ビーコンは、電波を通じてその識別子を一斉送信する又は放出することができる信号放出デバイスであり、特定の場所に固定されて、特定の区域をカバーすることができる。ビーコンは、一般に、電波、音波、光などの物理現象によって信号を送信するデバイスとして定義することができる。Wi-Fiベースの屋内測位で用いられる「アクセスポイント」も「ビーコン」という用語の範囲に含めることができることに留意されたい。
【0024】
ビーコンベースの屋内測位では、受信機は、ターゲット環境内の特定の場所に配置されたビーコンから放出された電波を受信し、ビーコンから得られたRSSに基づいて受信機自体の位置を推定することができる。受信機は、どのようなデバイスであってもよく、受信機の例として、スマートフォン、タブレットコンピュータ、スマートスーツケース、ロボットなどを挙げることができるが、これらに限定されない。
【0025】
ビーコンのセットが配置されるターゲット環境は、いくつかの実施形態では、2次元(2D)データの形で与えられることがある。電波が伝搬し、かつ受信機が移動可能なターゲット区域を、ターゲット環境内の幾何学的形状として定義することができる。ターゲット区域は、例えば、屋内測位の場合には、建物内の通路及び室内空間を含むことができる。ビーコンの数及びビーコンの場所をターゲット環境内で定義することができる。いくつかの実施形態では、電波を減衰し、反射し、もしくは回折する又はその組合せを生じさせる1つ又は複数の障害物(例えば、壁、窓など)もまたターゲット環境内に配置されていることがある。
【0026】
いくつかの実施形態では、位置(又は場所)及び2つの位置間の距離は、二次元座標(例えば、(x,y)、(緯度、経度))で与えることができる。しかしながら、二次元は一例であり、いくつかの実施形態では三次元座標(例えば、(x,y,z)、(緯度、経度、レベル/高度))も想定することができる。
【0027】
パラメータに関して、測位誤差推定の粒度(例えば、グリッドサイズ/解像度など)を与えることができる。また、電波伝搬モデルのパラメータも、測位誤差推定の条件において与えることができる。
【0028】
電波伝搬モデル150は、電波伝搬の特徴付けを提供し、RSSをビーコンと受信機との間の距離(又は範囲)の関数として予測することができる。いくつかの実施形態では、電波伝搬モデル150は、距離の代わりに又は距離に加えて、基準方向に対する方位角も考慮することができる。電波伝搬モデル150は、位置を条件としたRSSベクトル(又はRSS値のセット)の観測についての観測モデル(又は確率分布)、例えば所与の位置において複数のビーコンから観測される強度がどのくらいであるかについてのモデルを、測位誤差推定システム110に提供することができる。
【0029】
電波伝搬モデルの例として、信号がある距離にわたってターゲット環境内で遭遇する経路損失を予測するLDPL(対数距離経路損失、Log-Distance Path Loss)モデルが挙げられるが、これに限定されるものではない。前述の条件には、LDPLモデルを使用した場合の基準距離における経路損失を含めることができる。電波伝搬モデルの他の例としては、屋内減衰に関するITU(国際電気通信連合、International Telecommunication Union)モデル、ITU地形モデルなどの屋外減衰に関するモデル、自由空間の経路損失などの自由空間減衰に関するモデルなどが挙げられる。
【0030】
所与の条件について測位誤差推定システム110によって与えられる結果104は、任意の位置について推定された測位誤差、ターゲット環境全体にわたる測位誤差分布のマップ、推定測位誤差の統計的解析のヒストグラムなどの図形表現、推定測位誤差の統計量(例えば、平均、中央値、分位など)、又はそれらの組合せを含むことができるが、これらに限定されない。
【0031】
特定の使用例では、オペレータは、測位誤差推定システム110にビーコン配置の候補を入力102し、その候補についての評価結果104を得て、これをさらに用いて、その後の推定のためにビーコン配置の候補を更新することができる。オペレータは、ビーコン配置の候補について算出された測位誤差分布をチェックすることによって、ビーコン配置を対話形式で設計することができる。
【0032】
他の具体的な使用例では、オペレータは、例えば、現場調査を行うことによって、事前にビーコン配置の複数の候補を挙げておくことができ、そして、ビーコン配置の複数の候補について算出された測位誤差の統計量に基づいて、候補の中から最適なサブセットを選択することができる。オペレータは、ビーコンの場所などの条件を変更することによって、統計量を最適化する(例えば、測位誤差の平均を最小化する)ようにビーコン配置の最適化を行うことができる。
【0033】
図2は、本開示のいくつかの実施形態による測位誤差推定システムに関するさらなる詳細を含む。
図2は、測位誤差推定システム110の詳細なブロック図を示す。
図2に示す測位誤差推定システム110は、近傍点選択モジュール112と、確率分布計算モジュール114と、誤差推定モジュール116と、結果生成モジュール118とを含むことができる。
【0034】
測位及び測位誤差
測位誤差推定システム110を構成するモジュール112-118の各々について説明する前に、受信機の位置を推定する方法、及び、所与のビーコン配置について測位誤差を評価する方法について説明する。
【0035】
ビーコンから得られるRSSベクトルから受信機の位置を推定することは、所与の任意の位置においてRSSベクトルを観測するという因果関係を逆に辿る作業であるということができる。ここで、所与の配置Xb(=(xb1,....,xbM))の下で位置x(=(x,y)T)のRSSベクトルr(=(r1,...,rM)T)を観測することの関係を表わす観測モデルを定義することができる。Mはターゲット環境内に配置されたビーコンの数とすることができることに留意されたい。所与の位置で観測される受信信号の強度の値は様々な要因によって変動するので、観測モデルは、所与の位置xを条件としたRSSベクトルrを観測することの条件付き確率分布p(r|x)によって適切に表わすことができる。受信機の位置xは、条件付き確率分布p(r|x)に基づいて、RSSベクトルrが観測された場合の位置xの確率p(x|r)として推定することができる。RSSベクトルrは、いくつかの実施形態では、観測値のセットとすることができる。
【0036】
所与の観測モデルp(r|x)について、測位誤差は、真の位置xを条件とした推定位置x^の確率分布p(x^|x)の分散又は分散の平方根として評価することができる。確率分布p(x^|x)は、真の位置xにおいて予測されるRSSベクトルrに対して、RSSベクトルrを条件とした推定位置x^の事後確率分布p(x^|r)の算術期待値として、以下のように計算することができる。
【数4】
【0037】
式中、ハット(^)アクセント符号を付したパラメータは、特定のパラメータの推定値を表わし、本明細書の文中で「b^」のように表記することができ、ここで「b」は特定のパラメータを表し、「^」はハットを表すことに留意されたい。
【0038】
上記式(1)の右辺の期待値を算出することは困難であるため、いくつかの実施形態では、測位誤差を、確率分布p(x^|x)を以下のように近似する代替関数p~0(x^|x)に基づいて近似的に計算することができる。
【数5】
【0039】
ここでは、式(1)における算術期待値(平均)Ep(r|x)を幾何期待値(平均)Gp(r|x)で近似することができ、さらに正規化定数を掛けて、関数p~0(x^|x)が正規化条件を満たすようにすることができる。第2の式中のXは、確率変数とすることができる。式中、チルダ(~)アクセント符号を付した関数は、近似関数を表わすものとすることができ、本明細書の文中では「f~」のように表記することができ、fは関数を表わすことに留意されたい。また、ξ^は、推定位置x^の正規化のための代替とすることができることに留意されたい。
【0040】
上述のように、式(1)の算術期待値(平均)Ep(r|x)を幾何期待値(平均)Gp(r|x)で置き換えることによって代替関数p~0(x^|x)を得ることができる。幾何期待値(平均)Gp(r|x)を正規化定数(式(2)の分母)によって正規化して関数p~0(x^|x)が正規化条件を満たすようにすることができ、それにより、代替関数p~0(x^|x)を確率として扱うことができる。
【0041】
関数p~0(x^|x)は、解析的に評価することができる対数尤度の算術期待値Ep(r|x)[log p(r|x^)]を含んでいるだけなので、容易に計算することができる。
【0042】
任意の位置xについての測位誤差を評価するためのスカラーメトリックとして、平均二乗誤差E[(x^-x)
2]を、関数p~0(x^|x)を用いて近似的に評価することができる。特に、平均二乗誤差E[(x^-x)
2]は、以下のように数値積分によって算出される。
【数6】
【0043】
数値積分のためにターゲット環境内に離散点(discrete point)のセットを定義することができ、x^(j)は関数p~0(x^|x)が大きくなることが予期され得る領域内のj番目の離散点を表し、Nxはその領域内の離散点のサブセットを表す。
【0044】
上記式(3)の評価メトリックとして、MSE(平均二乗誤差:Mean Squared Error)を使用することができることに留意されたい。しかしながら、MAE(平均絶対誤差:Mean Absolute Error)、RMSE(二乗平均誤差の平方根:Root Mean Squared Error)、RMSPE(平均二乗パーセント誤差の平方根:Root Mean Square Percentage Error)、MAPE(平均絶対パーセント誤差:Mean Absolute Percentage Error)といった他の誤差メトリックも想定することができる。MSEは確率分布p(x^|x)の分散に対応し得るものであり、RMSEは確率分布p(x^|x)の分散の平方根に対応することに留意されたい。
【0045】
代替関数p(x^|x)の導出
以下、確率分布p(x^|x)の近似について、より詳細に説明する。真の位置xを条件とした推定位置x^の確率分布p(x^|x)は、少なくとも1つのRSSベクトルrのセットに対する事後確率分布p(x^|r)の期待値として、以下のように評価することができる。
【数7】
【0046】
p~q(x^|x)を近似確率密度関数とすると、式中、期待値Ep(r|x)[p(x^|r)]を一般化平均
【数8】
で置き換えることができ、以下のように、正規化定数を掛けて、p~q(x^|x)が正規化条件を満たすようにする。
【数9】
【0047】
q=1のとき、近似確率密度関数p~1(x^|x)は元の確率密度関数p(x^|x)に対応する。
【0048】
元の確率密度関数p(x^|x)を近似する代替関数として、以下のように、算術平均(q=1)の代わりに幾何平均(qがゼロに近づいた(q→0)ときの極限を取ることによって得られる)を用いることができる。
【数10】
【0049】
上述のように、近似確率分布p~0(x^|x)は、所与の観測モデルp(r|x)に基づいた方式で解析的に評価及び計算することができる項Ep(r|x)[log p(r|x^)]を含んでいるだけなので、元の確率密度関数p(x^|x)と比べて容易に計算することができる。
【0050】
観測モデルP(r|x)の例示的な形
観測モデルp(r|x)は、複数のビーコン(i={1,...,M})についての確率p(ri|x)の積として与えることができる。電波伝搬モデルがLDPLモデルの場合、観測モデルp(r|x)の具体的な形は以下のように与えることができる。
【数11】
【0051】
図3は、測位誤差推定システム110と組み合わせて用いられる電波伝搬モデル150の概略を示す。
図3のグラフ210に示されるように、受信機202の位置xとビーコン(i)204の場所xbiとの間の距離diが増大するにつれて、電波の受信信号の強度(RSS)は低減することがある。いくつかの実施形態では、各ビーコンのRSSは、平均mi(x)及び標準偏差σを有する正規分布N(r;mi(x),σ2)に従うものとすることができると仮定される。しかしながら、RSSについて他の分布も想定することができる。
【0052】
LDPLモデルは電波伝搬モデルの一例であって、より精巧な電波伝搬モデル又はシミュレータを使用することもできることに留意されたい。いくつかの実施形態では、距離di(x)に代えて又はそれに加えて、基準方向に対する、ビーコン(i)204から見た受信機202の方向の方位角qiを考慮する電波伝搬モデルを使用することもできる。電波伝搬モデルは、いくつかの実施形態において、信号伝搬モデルに対応するものとすることができる。
【0053】
測位誤差推定システムのモジュールについての詳細
図2に戻って、測位誤差推定システム110のモジュール112-118について、より詳細に説明する。
【0054】
近傍点選択モジュール112は、関数p~0(x^(j)|x(i))が大きくなることが予期され得るターゲット環境内の各ターゲット位置x(i)について少なくとも複数の近傍位置x^(j)を選択するように構成することができる。いくつかの実施形態では、ターゲット環境内に離散点のセットを定義することができる。近傍位置x^(j)及びターゲット位置x(i)の各々は、そのセット内の離散点の1つとして与えられるものとすることができる。ターゲット位置x(i)についての近傍位置x^(j)のセットをNx(i)で表すことができる。ターゲット環境で定義されたすべての離散点の中で、離散点x^(j)が所定の条件を満たす場合に、近傍位置のセットNx(i)にインデックスjを付加することができる。インデックスは、配置の質を判断するためのメトリック、例えば、配置の有効性を測定するためのメトリックとすることができる。
【0055】
いくつかの実施形態では、複数の近傍位置は、観測モデルp(r|x)に基づく方式でターゲット位置x(i)において予測されるRSSベクトルr(x(i))によって定められる範囲内の位置を見いだすことによって、選択することができる。近傍位置を選択する所定の条件については、後で詳しく説明する。
【0056】
確率分布計算モジュール114は、電波伝搬モデル150によって提供される観測モデルp(r|x)を用いることによって、ターゲット位置x(i)ごとに、ターゲット位置x(i)を条件とした推定位置x^(j)の確率分布p~0(x^(j)|x(i))を、近傍位置x^(j)(jはNx(i)に含まれる)にわたって近似的に計算するように構成することができる。
【0057】
いくつかの実施形態では、ターゲット位置x(i)を条件とした推定位置x^(j)の確率p~0(x^(j)|x(i))は、幾何平均Gp(r|x(i))を算出することによって計算することができる。幾何平均Gp(r|x(i))は、ターゲット位置x(i)において予測されるRSSベクトルr(x(i))に対して、推定位置x^(j)の対数尤度の算術期待値(平均)であるEp(r|x(i))[log p(r|x^(j))]を算出し、期待値の指数関数exp[Ep(r|x(i))[log p(r|x^(j))]]を算出することによって計算することができる。幾何平均Gp(r|x(i))は、近傍位置のセットx^(j)(jはNx(i)に含まれる)について算出された期待値Ep(r|x(i))[log p(r|x^(j))]から計算できる正規化定数によって正規化することができる。上述したように、正規化定数で正規化された幾何平均Gp(r|x(i))は、ターゲット位置x(i)を条件とした推定位置x^の確率分布p(x^|x(i))を近似することができる。幾何平均Gp(r|x(i))は、観測モデルp(r|x)が、正規分布の、ビーコン(i={1,...,M})についての確率p(ri|x)の積の形で与えられる場合に好適であり得る。
【0058】
いくつかの実施形態では、ターゲット位置x(i)を条件とした推定位置x^(j)の確率p~q(x^(j)|x(i))は、ターゲット位置x(i)において予測されるRSSベクトルr(x(i))に対する推定位置x^(j)の尤度の一般化平均の特殊な場合(special case)であるMqp(r|x(i))[p(x^(j)|r)]を算出することによって計算することができ、これを正規化定数によって正規化することができる。qがゼロに近づいた(q→0)ときの極限を取ったとき、この特殊な場合は、幾何平均Gp(r|x(i))となり得るものであり、確率p~q(x^(j)|x(i))はいくつかの実施形態におけるものと同等なものとなり得る。観測モデルp(r|x)の詳細に応じて、一般化平均Mqp(r|x(i))の、他の特殊な場合も想定することができる。
【0059】
誤差推定モジュール116は、近傍位置x^(j)(jはNx(i)に含まれる)にわたって計算された確率分布p~0(x^(j)|x(i))を用いることによって、各ターゲット位置x^(i)の評価メトリックを算出するように構成することができる。いくつかの実施形態では、測位誤差を評価するための評価メトリックは、以下のように確率分布p~0(x^(j)|x(i))の分散として定義することができる。
【数12】
【0060】
ターゲット位置x(i)は、離散点のセットX(={x(1),x(2),...,x(N)})の中で変更することができる。このようにして、セットX(={x(1),x(2),...,x(N)})内のターゲット位置の各々について評価メトリックを得ることができる。結果生成モジュール118は、任意の位置x(i)について推定された測位誤差、ターゲット環境X(={x(1),x(2),...,x(N)})全体にわたる測位誤差分布のマップ、推定定位誤差の統計的解析のヒストグラムなどの図形表現、推定測位誤差の統計量(例えば、平均、中央値、分位など)、又はそれらの組合せからなる群から選択された少なくとも1つを生成し、それを出力するように構成することができる。
【0061】
いくつかの実施形態では、誤差推定モジュール116は、ルールベース解析、機械学習などを実行することによって、前述の結果に基づいて、所与のビーコン配置についての弱点もしくは改善プラン又はその両方の指標を生成するようにさらに構成することができる。
【0062】
いくつかの実施形態では、
図1で説明した測位誤差推定システム110及び電波伝搬モデル150、並びに
図2で説明した測位誤差推定システム110のモジュール112-118は、プロセッサ、メモリなどのハードウェア・コンポーネントと併用されるプログラム命令もしくはデータ構造又はその両方を含むソフトウェアモジュールとして実装することができ、電子回路を含むハードウェアモジュールとして実装することもでき、又はそれらの組合せとして実装することもできる。
【0063】
モジュール112-118は、パーソナルコンピュータ及びサーバマシンなどの単一のコンピュータデバイス上に実装されてもよく、又は、コンピュータデバイスのコンピュータクラスタ、クライアントサーバシステム、クラウドコンピューティングシステム、エッジコンピューティングシステムなど、分散方式で複数のデバイス上に実装されてもよい。
【0064】
以下、
図4-
図6を参照して、本開示のいくつかの実施形態による、所与のビーコン配置について測位誤差を推定するための新規のプロセスを説明する。
図4は、測位誤差推定のための新規プロセスを示すフローチャートである。
図4に示すプロセスは、
図1に示す測位誤差推定システム110及び
図2に示すそのモジュール112-118を実装するコンピュータ・システムの処理ユニットなどの処理回路によって実行することができる。
【0065】
図4に示すプロセスは、例えば、オペレータから測位誤差推定要求を受け取ったことに応答して、ステップS100で開始することができる。
【0066】
ステップS101において、処理ユニットは、ビーコン配置及びビーコンが設置されるターゲット環境の入力データを取得することができる。ステップS100で受け取る要求は、ビーコン配置及びターゲット環境を含む、測位誤差推定の条件を指定することができる。ステップS102において、処理ユニットは、ターゲット環境内に離散点X(={x(1),x(2),...,x(N)})を設定することができる。
【0067】
図5は、ターゲット環境内に設定される離散点及びビーコン配置の概略を示す。
図5は、正方形のグリッド又は格子を用いる場合を説明することができる。
図5では、ターゲット環境220内に垂直線222のセット及び水平線224のセットを定義することができる。垂直線222及び水平線224は、それぞれ所定の間隔を有することができる。グリッド点226は、垂直線222と水平線224との交点として定義することができる。
図5では、ビーコン(i=1,....M)204.1、204.2、204.3、204.4、204.5から204.nまでのセットがターゲット環境内に配置され、ビーコン配置はXb(=(xb1,....,xbM))で表わされ、ビーコン(i)の場所xbiは二次元座標(xbi,ybi)Tで与えられる。
【0068】
いくつかの実施形態では、ターゲット環境内の位置xの領域を離散化して、等間隔のグリッド点、特に正方格子にすることができる。しかしながら、ターゲット環境内のxの領域を離散化する方式は、正方格子に限定されなくてもよい。いくつかの実施形態では、正方格子以外の六角格子などの等間隔のグリッド点、及び間隔が一様ではない離散点も想定することができる。
【0069】
図4に戻って、セットXの各離散点x(i)に対して、ステップS103からステップS108までのループを処理ユニットが実行することができる。現在のループで処理される注目される離散点をターゲット点(位置)x(i)と呼ぶことができる。
【0070】
ステップS104において、処理ユニットは、ターゲット点x(i)について近傍点(位置)x(j)(jはNx(i)に含まれる)を選択することができ、この近傍点x(j)において予測されるRSSベクトルr(x(j))は、ターゲット点x(i)に対して所定範囲内に含まれるものとすることができる。所定範囲は、電波伝搬モデル150を用いることによってターゲット点x(i)において予測されるRSSベクトルr(x(i))によって定めることができる。
【0071】
いくつかの実施形態では、以下の条件:r(x^((i)))-3σ≦r(x^((j)))≦r(x^((i)))+3σを満たすj番目の点x(j)が近傍点として識別され、そのインデックスjが、x(i)の近傍のインデックスのセットNx(i)に追加される。RSSベクトルのすべての成分について、前述の条件を満たす要素のサブセットをセットXから抽出することができる。
【0072】
セットXからのサブセットの抽出は任意とすることができることに留意されたい。しかしながら、ビーコンの数に対する計算コストのバランスを取るために、サブセットの抽出を行うことが好ましい場合がある。ビーコンの数が増えると、計算コストは典型的には増大する傾向があるが、精度も向上する。それゆえ評価が必要とされる近傍点の数が減ることになる。したがって、離散点のセットXの中から近傍点x(j)を抽出することによって、ビーコン数の増加に伴う計算コストの増大を抑制することができる。
【0073】
図6は、ターゲット環境220内でターゲット点x(i)228の周辺の近傍点x(j)を抽出する方法を示す。
図6に示されるように、ターゲット点x(i)によって与えられる所定範囲230に含まれる近傍点x(j)229を抽出して、サブセット(Nx(i))を生成することができる。ターゲット点x(i)のグリッドと近傍点x(j)のグリッドは、いくつかの実施形態では共有されてもよいことに留意されたい。しかしながら、いくつかの実施形態では、
図7に示されるように、近傍点x(j)用のグリッドは、ターゲット点x(i)用のグリッドとは異なっていてもよい。
【0074】
図7は、いくつかの実施形態による、ターゲット環境250内のターゲット点の周囲の近傍点を抽出する方法を示す。垂直線の第1のセット252及び水平線の第1のセット254が、ターゲット環境250内に定義される。
図7に示すように、垂直線の第2のセット262及び水平線264の第2のセットも定義される。ターゲット点x(i)用のグリッド点256は、第1の垂直線252と第1の水平線254との交点として定義される。近傍点x(j)用のグリッド点260は、第2の垂直線262と第2の水平線264との交点として定義される。
図7に示す実施形態では、近傍点x(j)用のグリッドをターゲット点x(i)用のグリッドよりも密なものとすることができる。
【0075】
図4に戻って、ステップS105において、処理ユニットは、電波伝搬モデル150に基づいて、各近傍点x^(j)(jはNx(i)に含まれる)について対数尤度の算術期待値Ep(r|x(i))[log p(r|x^(j))]を計算することができる。正規化前の各近傍点x^(j)についての対数尤度の期待値Ep(r|x(i))[log p(r|x^(j))]を、メモリ空間に格納される配列f(x(j);x(i))に設定することができる。
【0076】
ステップS106において、処理ユニットは、近傍点x^(j)(jはサブセットNx(i)に含まれる)の各々について、ターゲット位置x(i)を条件とした推定位置x^(j)の近似確率p~0(x^(j)|x(i))を、以下のように正規化を行うことによって算出することができる。
【数13】
【0077】
正規化を行って、関数p~0(x^(j)|x(i))が正規化条件を満たすようにすることができ、それにより、関数p~0(x^(j)|x(i))を確率として扱うことができることに留意されたい。しかしながら、いくつかの実施形態では、正規化を省略することができる。f(x(j);x(i))の分布は、一般に、ターゲット位置x(i)の近くでは高くなり、ターゲット位置x(i)からの距離が大きくなるにつれて低くなるように得ることができる。確率p~0(x^(j)|x(i))は、ターゲット位置x(i)228の周囲の分布f(x(j);x(i))の形230(広げる又は狭める、曲率など)を考慮して、何らかのやり方で計算することができる。
【0078】
ステップS107において、処理ユニットは、近似確率分布p~0(x^(j)|x(i))を用いることによって評価メトリックを計算することができる。MSE(x(i))は、以下のように計算することができる。
【数14】
【0079】
別の評価メトリックであるRMSE(x(i))は、以下のように算出することができる。
【数15】
【0080】
セットX内のすべての離散点x(i)についてステップS104からステップS107までのプロセスが実行されると、プロセスは、ループを抜けてステップS109に進むことができる。
【0081】
ステップS109において、処理ユニットは、セットX内の離散点x(i)について算出された評価メトリックに基づいて、結果を生成することができる。ステップS110において、処理ユニットは生成された結果を出力し、ステップS111においてプロセスは終了することができる。
【0082】
上述の実施形態によれば、後述の実験的研究セクションでも示すように、計算コストと評価精度とのバランスを取ってデバイスの配置を評価することが可能な新規技術を提供することができる。
【0083】
ビーコン配置の評価については、LDPLモデルなどの電波伝搬モデルと、受信機及びビーコンの幾何学的配置とによって定義される、測位誤差の下界(クラメール・ラオの下限、Crame´r-Rao Lower Bound)を用いることによって測位精度を定量化する関連技術が適切な場合がある。位置x^の不偏推定量の共分散の下限(クラメール・ラオの下限)は、FIM(フィッシャー情報行列、Fisher Information Matrix)J(x)の逆行列(inverse)で与えることができる。例えば、平均二乗誤差の下限であるトレース(J(x)-1)を、測位精度を評価するメトリックとして用いることができる。
【0084】
しかしながら、この関連技術は、観測されたRSS値から位置を正確に推定できる場合の測位精度の評価にしか適用できず、測位精度が低い場合には測位精度の評価が困難であるため、ビーコン配置の設計には適していない。具体的には、この関連技術は、推定位置の確率密度関数が正規分布で近似できる場合にのみ有効であると考えられる。推定位置の確率密度を正規分布で近似することが困難な場合には、致命的な誤差が生じる。したがって、ビーコンが疎に分布している、又は受信機がビーコンに非常に接近している条件下では、正確に測位精度を評価することが困難な場合がある。
【0085】
対照的に、本開示の1つ又は複数の実施形態による新規の測位誤差推定は、合理的な計算コストで、測位誤差の下界を用いて測位精度を定量化する関連技術よりも正確に測位精度を評価する方法を提供することができる。
【0086】
前述の実施形態では、ビーコン配置を評価するためのコンピュータ実施方法、コンピュータ・システム、及びコンピュータ・プログラム製品は、ターゲット位置についての測位誤差が評価メトリックとして計算される場合の屋内測位に用いることができる。しかしながら、新規の配置評価技術は、屋外測位に用いられる基地局配置の評価に適用することができる。さらに、新規の配置評価技術は、電波以外の物理現象(例えば、音波、超音波、電磁波など)の形で信号を放出する信号放出デバイスのセットの配置の評価にも適用することができる。新規の配置評価技術は、測位誤差以外の、用途の評価メトリックに適用することができる。
【0087】
実験的研究
いくつかの実施形態による
図1及び
図2に示された測位推定システムと
図4に記載されたプロセスとを実装したプログラムをコード化し、所与の条件で実行する。
【0088】
実験I
40m×40mの区域に25個のビーコンがランダムに配置されたターゲット環境を定義した。隣接する2つのグリッド間の間隔は、縦横両方の次元とも1mとすることができる。グリッドは、ターゲット位置x(i)とターゲット位置x(i)の周囲の近傍位置x^(j)との両方で共有することができる。
【0089】
真の測位誤差の代わりに、モンテカルロ・シミュレーションによって、各グリッド点のスカラー評価メトリックとして、二乗平均誤差の平方根を計算することができる。より具体的には、反復ごとに、正規分布乱数により観測モデルp(y|x)から所与の位置xについてのRSSベクトルy(l)を生成し、生成されたRSSベクトルy(l)について、その位置の最尤推定(MLE)であるx^(l)MLEを見いだすことができる。この反復をNMC回繰り返すことで、各位置xについてRMSEを計算することができ、これをRMSEMC(x)と呼ぶ。
【0090】
比較例1として、測位誤差の下界に基づいて測位精度を定量化する関連技術の方法(関連方法と呼ぶ)によって、各位置xについてRMSECE1(x)の推定値を計算することができる(非特許文献1)。
【0091】
実施例1として、上述した新規の測位誤差推定(提案方法と呼ぶ)によって、各位置xについてRMSEE1(x)の推定値を計算することができる。
【0092】
計算時間は、比較例1及び実施例1の両方について、インテル(登録商標)Core(商標)i7-6820HQ CPU(2.70GHz)を搭載したコンピュータで測定することができる。また、モンテカルロ・シミュレーションによってRMSEMC(x)との間の相関係数を推定することができ、比較例1のRMSECE1(x)及び実施例1のRMSEE1(x)の両方について測位誤差の推定値を計算することができる。実施例1及び比較例1について、相関係数及び計算時間を表1にまとめることができる。
【表1】
【0093】
図8は、25個のビーコンがランダムに配置された40m×40mの区域のターゲット環境について、モンテカルロ・シミュレーションによって計算された測位誤差RMSEMC(x)の分布のマップ300を示す。マップ300において、ビーコンの位置を黒丸で示すことができ、グレースケールの値がRMSEMCを表わす。
【0094】
図9は、
図8に示した環境においてモンテカルロ・シミュレーションによって計算されたRMSEMCに対する、関連方法によって計算されたRMSECE1の相関を表わす第1のプロット310を示す。さらに
図9は、
図8に示す環境におけるRMSEMCに対する、提案方法によって計算されたRMSEE1の相関を表わす第2のプロット320を示す。相関係数は、測位誤差推定の評価精度を表わすことができる。相関係数の値が大きいほど、評価精度が高いことを示すことができ、より良好な測位誤差推定を示している。
図9のプロットでは、理想的に、測位誤差は、点が対角線上にプロットされるので妥当な値と推定することができる。
【0095】
表1及び
図9に示すように、提案方法は、実用上十分な速さで、かつ他の方法よりも高い精度で、測位誤差分布を推定することが可能であることを実証することができる。関連方法(比較例1)の計算時間が短くなり得る理由は、関連方法では、推定位置の確率密度を正規分布で近似した後、測位誤差を解析的に評価しているためであることに留意されたい。
【0096】
実験II
30m×30mの区域に9個のビーコンがランダムに配置されたターゲット環境を定義した。グリッドの間隔は1mとし、ターゲット位置x(i)及び近傍位置x^(j)の両方でグリッドを共有した。
【0097】
ベースラインのRMSEMCは、モンテカルロ・シミュレーションによって計算することができる。比較例2に関して、RMSECE2(x)の推定値を関連方法によって計算することができる。実施例2に関して、RMSEE2(x)の推定値を提案方法によって各位置xについて計算することができる。
【0098】
図10は、9個のビーコンがランダムに配置された30m×30mの区域のターゲット環境について、モンテカルロ・シミュレーションによって計算された測位誤差RMSEMC(x)の分布のマップ330を示す。
【0099】
図11では、第1のプロット340は、
図10に示した環境におけるRMSEMCに対する関連方法のRMSECE2の相関を表わす。第2のプロット350は、
図10に示す環境におけるRMSEMCに対する提案方法のRMSEE2の相関を表わすことができる。
図11に示すように、ビーコンが疎に分布している環境においても、提案方法は、関連方法よりも正確に測位誤差分布を推定することができる。対照的に、関連方法の性能は、疎な条件下では明らかに低下する。
【0100】
本開示による1つ又は複数の特定の実施形態に関して得られる利点を説明してきたが、いくつかの実施形態はこれらの潜在的な利点を有さないことがあり、これらの潜在的な利点は必ずしもすべての実施形態で必要とされるものではないことを理解すべきである。
【0101】
さらに、本開示のいくつかの実施形態では、付加的に、方法は、環境内のデバイスのセットの配置を評価するコンピュータ実装方法を含むことができる。評価メトリックを、ターゲット位置を条件とした推定位置の関数に基づいて計算することができる。評価メトリックを出力することができる。評価メトリックは、確率分布を用いて算出することができ、確率分布は、ターゲット位置において予測される観測値のセットに対する、観測値のセットを条件とした推定位置の確率分布の算術平均として計算され、関数によって近似され、関数は、算術平均を幾何平均に置き換えることによって得られる。
【0102】
さらに、いくつかの実施形態では、幾何平均を正規化定数で正規化して、関数が正規化条件を満たすようにすることができる。
【0103】
コンピュータ・ハードウェア・コンポーネント
ここで
図12を参照すると、測位誤差推定システム110に用いることができるコンピュータ・システム10の例の概略が示される。
図12に示すコンピュータ・システム10は、コンピュータ・システムとして実装することができる。コンピュータ・システム10は、好適な処理デバイスの一例に過ぎず、本発明で説明される開示の実施形態の使用範囲又は機能に関する何らかの制限を示唆することを意図するものではない。それにも関わらず、コンピュータ・システム10は、上述した機能のいずれも実装もしくは実行し又はその両方を行うことができる。
【0104】
コンピュータ・システム10は、多数の他の汎用又は専用コンピューティング・システム環境又は構成と共にオペレーション可能である。コンピュータ・システム10と共に用いるのに好適であり得る周知のコンピューティング・システム、環境もしくは構成又はそれらの組合せの例として、これらに限定されるものではないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち式又はラップトップ・デバイス、車載デバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベースのシステム、セットトップボックス、プログラム可能民生電子機器、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、及び、上述のシステムもしくはデバイスのいずれかを含む分散型クラウド・コンピューティング環境等が含まれる。
【0105】
コンピュータ・システム10は、コンピュータ・システムによって実行される、プログラム・モジュールなどのコンピュータ・システム実行可能命令の一般的な文脈で説明することができる。一般に、プログラム・モジュールは、特定のタスクを実行する又は特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造などを含むことができる。
【0106】
図12に示されるように、コンピュータ・システム10は、汎用コンピューティング・デバイスの形で示すことができる。コンピュータ・システム10のコンポーネントは、これらに限定されるものではないが、プロセッサ(又は処理ユニット)12と、メモリバス又はメモリコントローラを含むバス、及び様々なバス・アーキテクチャのいずれかを用いるプロセッサ又はローカルバスによってプロセッサ12に結合されたメモリ16とを含むことができる。
【0107】
コンピュータ・システム10は、典型的には、種々のコンピュータ・システム可読媒体を含む。こうした媒体は、コンピュータ・システム10によってアクセス可能な任意の利用可能媒体とすることができ、揮発性媒体及び不揮発性媒体の両方と、取り外し可能媒体及び取り外し不能媒体の両方とを含むことができる。
【0108】
メモリ16は、ランダム・アクセス・メモリ(RAM)など、揮発性メモリの形のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム10は、他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ・システム・ストレージ媒体をさらに含むことができる。単なる例として、取り外し不能の不揮発性磁気媒体との間の読み出し及び書き込みのために、ストレージ・システム18を設けることができる。ストレージ・システム18は、本開示の実施形態の機能を実行するように構成されたプログラム・モジュールのセット(例えば、少なくとも1つ)を有する少なくとも1つのプログラム製品を含むことができる。
【0109】
限定ではなく例として、ストレージ・システム18内に、プログラム・モジュールのセット(少なくとも1つ)を有するプログラム/ユーティリティ、並びにオペレーティング・システム、1つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データを格納することができる。オペレーティング・システム、1つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データ、又はそれらの何らかの組合せの各々は、ネットワーキング環境の実装を含むことができる。プログラム・モジュールは、一般に、本明細書で説明される開示の実施形態の機能もしくは方法又はその両方を実行する。
【0110】
コンピュータ・システム10は、キーボード、ポインティング・デバイス、カー・ナビゲーション・システム、オーディオ・システム等といった1つ又は複数の周辺装置24、ディスプレイ26、ユーザがコンピュータ・システム10と対話することを可能にする1つ又は複数のデバイス、もしくはコンピュータ・システム10が1つ又は複数の他のコンピューティング・デバイスと通信することを可能にするいずれかのデバイス(例えば、ネットワーク・カード、モデムなど)、又はそれらの組合せと通信することもできる。こうした通信は、入力/出力(I/O)インターフェース22を経由して行うことができる。さらにまた、コンピュータ・システム10は、ネットワーク・アダプタ20を介して、ローカル・区域・ネットワーク(LAN)、汎用広域ネットワーク(WAN)、もしくはパブリック・ネットワーク(例えば、インターネット)、又はそれらの組合せのような、1つ又は複数のネットワークと通信することもできる。示されるように、ネットワーク・アダプタ20は、バスを介して、コンピュータ・システム10の他のコンポーネントと通信する。図示されていないが、コンピュータ・システム10と共に他のハードウェア・コンポーネントもしくはソフトウェア・コンポーネント又はその両方を使用できることを理解されたい。例としては、これらに限定されるものではないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、及びデータ・アーカイブ・ストレージ・システムなどが含まれる。
【0111】
コンピュータ・プログラムの実装
本開示の態様は、本発明の実施形態による方法、装置(システム)及びコンピュータ・プログラム製品のフローチャート図もしくはブロック図又はその両方を参照して説明される。フローチャート図もしくはブロック図又はその両方の各ブロック、並びにフローチャート図もしくはブロック図又はその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装できることが理解されるであろう。
【0112】
これらのコンピュータ可読プログラム命令を、コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて機械を製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロック内で指定された機能/動作を実施するための手段を作り出すようにすることができる。これらのコンピュータ・プログラム命令を、コンピュータ、プログラム可能データ処理装置、もしくは他のデバイス又はその組み合わせを特定の方式で機能させるように指示することができるコンピュータ可読媒体内に格納し、それにより、そのコンピュータ可読媒体内に格納された命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックにおいて指定された機能/動作の態様を実施する命令を含む製品を含むようにすることもできる。
【0113】
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連のオペレーションステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生成し、それにより、コンピュータ、他のプログラム可能装置、又は他のデバイス上で実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックにおいて指定された機能/動作を実行するようにすることもできる。
【0114】
図面内のフローチャート及びブロック図は、本発明の実施形態による、システム、方法、及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及びオペレーションを示す。この点に関して、フローチャート又はブロック図内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を含む、モジュール、セグメント、又は命令の一部を表すことができる。幾つかの代替的な実装において、ブロック内に示される機能は、図に示される順序とは異なる順序で行われることがある。例えば、連続して示される2つのブロックは、関与する機能に応じて、実際には、1ステップで、同時に、実質的に同時に、部分的に又は完全に時間的に重なる様式で、実行されることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図もしくはフローチャート図又はその両方の各ブロック、及びブロック図もしくはフローチャート図又はその両方におけるブロックの組合せは、指定された機能又は動作を実行する、又は専用のハードウェアとコンピュータ命令との組み合わせを実行する、専用ハードウェア・ベースのシステムによって実装できることにも留意されたい。
【0115】
本開示の種々の実施形態の説明は、例証の目的のために提示されたが、これらは、網羅的であること、又は開示した実施形態に限定することを意図するものではない。当業者には、説明される実施形態の範囲及び趣旨から逸脱することなく、多くの修正及び変形が明らかであろう。本明細書で用いられる用語は、実施形態の原理、実際の適用、又は市場に見られる技術に優る技術的改善を説明するため、又は、当業者が、本明細書に開示される実施形態を理解するのを可能にするために選択された。
【0116】
本開示の種々の実施形態の説明は、例証の目的のために提示されたが、これらは、網羅的であること、又は開示した実施形態に限定することを意図するものではない。当業者には、説明される実施形態の範囲及び趣旨から逸脱することなく、多くの修正及び変形が明らかであろう。本明細書で用いられる用語は、実施形態の原理、実際の適用、又は市場に見られる技術に優る技術的改善を説明するため、又は、当業者が、本明細書に開示される実施形態を理解するのを可能にするために選択された。