(57)【特許請求の範囲】
【請求項１】
相互に関連するニューラルネットワークが割り当てられた空間的なサブネットワークによって少なくとも１つの物体のリアルタイム位置決定を行うためのスケーラブルなシステムであって、
前記少なくとも１つの物体の各々に関連付けられた少なくとも１つの送信タグ（１１０）と、
ルータ／基地局／アクセスポイント（１０５、２０５）による、先験的に定義された、相互に関連する複数の空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）と、
を備え、
前記ルータ／基地局／アクセスポイント（１０５、２０５）は、前記少なくとも１つの送信タグ（１１０）から少なくとも１つの送信を受信するように構成され、
前記システムは、前記相互に関連するニューラルネットワークの前記複数のニューラルネットワークの内の１つのみを、前記少なくとも１つの物体の位置の出力に関与させるように構成され、
前記システムのスケーリングは、前記相互に関連するニューラルネットワークの１つのニューラルネットワークのみを、前記少なくとも１つの物体の各々の前記位置の出力に関与させることによって達成され、
前記システムは、前記少なくとも１つの送信タグから少なくとも１つの送信を受信している前記ルータ／基地局／アクセスポイント（１０５、２０５）の数が最大である空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）を選択するように構成されており、
前記少なくとも１つの送信タグは、少なくとも１つのルータ／基地局／アクセスポイント（１０５、２０５）から少なくとも１つの信号を受信するように構成されている、システム。
【請求項２】
請求項１に記載のシステムであって、前記空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）は、空間的に重複する、システム。
【請求項３】
請求項１に記載のシステムであって、前記少なくとも１つの送信タグ（１１０）は、少なくとも１つのルータ／基地局／アクセスポイント（１０５、２０５）から少なくとも１つの物理測定値を受信して、前記少なくとも１つの物理測定値をシステムの中央サーバ処理／命令ステーション（１１５）に送信するように構成されている、システム。
【請求項４】
請求項２に記載のシステムであって、前記少なくとも１つの送信タグ（１１０）は、少なくとも１つのルータ／基地局／アクセスポイント（１０５、２０５）から少なくとも１つの物理測定値を受信して、前記少なくとも１つの物理測定値をシステムの中央サーバ処理／命令ステーション（１１５）に送信するように構成されている、システム。
【請求項５】
請求項１に記載のシステムであって、前記システムは、展開のためにトレーニングデータおよびテストデータを収集し、前記トレーニングデータおよびテストデータをシステムのトレーニングおよびテストに利用し、適応的な誤差の監視および追跡を実行するように構成されている、システム。
【請求項６】
請求項５に記載のシステムであって、適応的な誤差の監視および追跡のための前記構成は、既知の位置にある基準トランスミッタからの読み取り値に基づいてネットワーク出力を補正することにより、周期的な適応サイクルを通して追従誤差を監視することを含む、システム。
【請求項７】
請求項１に記載のシステムであって、前記システムは、特定の空間座標位置からサンプリングパケットを受信していないルータの識別情報を記録することを含め、サンプリングされたデータを収集するように構成されている、システム。
【請求項８】
請求項１に記載のシステムであって、前記空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）は、フィルタリングされていないデータ、または、平滑化されていないデータ、または、フィルタリングも平滑化もされていないデータを含むトレーニングのために構成されている、システム。
【請求項９】
請求項１に記載のシステムであって、前記空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）は、空間的に重複しない、システム。
【請求項１０】
相互に関連するニューラルネットワークの複数のサブネットワークによって少なくとも１つの物体のスケーラブルなリアルタイム位置決定を行うための方法であって、
相互に関連するニューラルネットワークの前記サブネットワークを先験的に規定する工程と、
サンプリングによってトレーニングデータを収集する工程（５０５Ａ）と、
相互に関連するニューラルネットワークの前記サブネットワークを前記トレーニングデータでトレーニングする工程（５１０）と、
相互に関連するニューラルネットワークの前記サブネットワークを前記トレーニングデータでテストする工程（５１０）と、
相互に関連するニューラルネットワークの前記サブネットワークを動作させて、前記複数のサブネットワークの内の１サブネットワークのみを、前記少なくとも１つの物体の位置の出力に関与させる工程（５１５Ｃ）と、
誤差を適応的に監視および追跡する工程（５１５Ｃ）と、
を備え、
前記サブネットワークの出力の各々の計算は、
入力データを中心化および正規化する工程（８０５Ａ）と、
ネットワーク応答を計算する工程（８０１Ｂ）と、
サブネットワーク出力タグ位置をネットワーク出力ベクトルから計算する工程（８１５Ｃ）と、
を含む、方法。
【請求項１１】
請求項１０に記載の方法であって、前記サンプリング工程は、
特定の時間間隔で前記サンプリングを繰り返して、ＲＦ信号伝搬に関連する環境の時間変動を取得する工程を含む、方法。
【請求項１２】
請求項１０に記載の方法であって、前記サブネットワークをトレーニングする工程は、スケーリング共役勾配法を含み、バックプロパゲーションを用いて、前記サブネットワークの結合重みおよびバイアスベクトルに関するパフォーマンスの導関数が得られる、方法。
【請求項１３】
請求項１０に記載の方法であって、ネットワーク応答が、
入力データを再スケーリングする工程（９０５）と、
最初の中間結果を計算する工程（９１０）と、
ベクトルａｒｇ１を関数ａｒｇ２に通す工程（９１５）と、
後続の中間結果を計算する工程（９２０）と、
最終結果を再スケーリングする工程（９２５）と、
を含む、方法。
【請求項１４】
請求項１０に記載の方法であって、受信信号強度（ＲＳＳＩ）の変動を重心ｋ平均法フィルタで処理する工程を備える、方法。
【請求項１５】
請求項１０に記載の方法であって、受信信号強度（ＲＳＳＩ）の変動をメジアンフィルタで処理する工程を備える、方法。
【請求項１６】
請求項１０に記載の方法であって、受信信号強度（ＲＳＳＩ）の変動を埋め戻しで処理する工程を備える、方法。
【請求項１７】
請求項１１に記載の方法であって、ネットワーク応答が、
入力データを再スケーリングする工程と、
最初の中間結果を計算する工程と、
ベクトルａｒｇ１を関数ａｒｇ２に通す工程と、
後続の中間結果を計算する工程と、
最終結果を再スケーリングする工程と、
を含む、方法。
【請求項１８】
請求項１０に記載の方法であって、前記サブネットワークの出力の各々の前記計算は、サブネットワーク変換を含み、前記サブネットワーク変換は、
システムサブネットワークｉのニューラルネットワーク変換関数ｎｎｉ（）に等しい位置ベクトルｌを含み、
前記ニューラルネットワーク変換関数は、前記サブネットワークｉに属するすべてのルータ／携帯トランシーバからのすべての受信信号強度（ＲＳＳＩ）読み取り値を含むベクトル（ｒｓｓｉｉ）の関数である、方法。
【請求項１９】
請求項１０に記載の方法であって、前記サブネットワークの出力の各々の前記計算は、ニューラル層応答を含み、前記ニューラル層応答は、
層ｉからの信号出力ｓｉ（層ｉ−１のｓｉ−１）を含むネットワーク結合行列Ｗｉ−１，ｉと、
バイアスベクトルｂｉと、
を含む、方法。
【請求項２０】
ニューラルネットワークが割り当てられた、重複する空間的なサブネットワークによって少なくとも１つの物体のリアルタイム位置決定を行うためのスケーラブルなシステムであって、
前記少なくとも１つの物体の各々に関連付けられた少なくとも１つの送信タグ（１１０）を備え、
前記重複する空間的なサブネットワークは、柔軟なトポロジを有し、先験的に規定され、相互に関連し、ルータ／基地局／アクセスポイント（１０５、２０５）を備えた複数の空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）を備え、
前記システムは、
前記少なくとも１つの送信タグ（１１０）から少なくとも１つの送信を前記ルータ／基地局／アクセスポイント（１０５、２０５）の少なくとも１つで受信し、
前記重複する空間的なサブネットワークにおける前記少なくとも１つの受信された送信を少なくとも１つの中央処理／命令ステーション（１１５）で処理し、
前記空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）の内の１つのみが、前記少なくとも１つの物体の位置の出力に関与し、
前記スケーリングが、前記複数の空間的なサブネットワーク（２１０、２１５、２２０、３１０、３１５、３２５）のうちの１つの空間的なサブネットワークのみを、前記少なくとも１つの物体の各々の前記位置の出力に関与させることによって達成され、
前記システムは、展開のためにトレーニングデータおよびテストデータを収集し、前記トレーニングデータおよびテストデータをシステムのトレーニングおよびテストに利用し、適応的な誤差の監視および追跡を実行するように構成されている、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本願は、２０１３年５月２日出願の米国仮出願第６１／８１８，５６５号の利益を主張する。
【０００２】
本発明は、無線物体位置追跡に関し、特に、相互に関連する重複ニューラルネットワークを用いた物体位置検出のためのシステムおよび方法に関する。
【背景技術】
【０００３】
リアルタイム位置情報システム（ＲＴＬＳ：Ｒｅａｌ  Ｔｉｍｅ  Ｌｏｃａｔｉｏｎ  Ｓｙｓｔｅｍ）は、通例、関連付けられたタグによって物体を追跡する。個人に対しては、医療施設、倉庫、および、位置が重要となるその他の場所などの環境で追跡を行うために、バッジが用いられる。社員バッジおよび資産タグが、高周波識別（ＲＦＩＤ）（パッシブまたはアクティブ）を含み、固定または携帯型のリーダと通信しうる。
【０００４】
周知のタグおよび通信規格（ＷｉＦｉ（８０２．１１）など）が、フルスケール展開される（リアルタイムで多くの物体を追跡する）可能性があるが、実際には不十分である。例えば、追跡環境のマルチパス効果を克服できないことにより、精度が損なわれる。現実的な数の物体が追跡される場合に、処理のボトルネックから時間遅延が生じる。これは、古くて不正確な物体位置示唆、そして、さらには追跡不能にまでつながる。
【０００５】
用途の要件に対応しつつリアルタイムで人物および物品の位置を監視するためのシステムが求められている。
【発明の概要】
【０００６】
本発明の実施形態は、無線トランスミッタのリアルタイム位置検出のためのシステムおよび方法を含む。実施形態は、送信機能を備えたＲＦＩＤタグまたはその他の通信デバイスを含む。実施形態は屋内のリアルタイム追跡に関連するが、システム展開は、これに限定されず、屋外または屋内外にシステムを展開することもできる。実施形態は、別のシナリオにも適用される。
【０００７】
一実施形態では、相互に関連するニューラルネットワークのサブネットワークによって少なくとも１つの物体のリアルタイム位置決定を行うためのスケーラブルなシステムが提供されており、そのシステムは：少なくとも１つの物体の各々に関連付けられた少なくとも１つの送信タグと；位置分類子レシーバを含む複数の先験的に定義された相互に関連する位置分類子サブネットワークと、を備え；位置分類子レシーバは、少なくとも１つの送信タグから少なくとも１つの送信を受信するように構成され；システムは、複数のサブネットワークの内の１サブネットワークのみを、少なくとも１つの物体の位置の出力に関与させるように構成され；システムのスケーリングは、複数のサブネットワークの内の１サブネットワークのみを、少なくとも１つの物体の各々の位置の出力に関与させることによって達成される。別の実施形態において、相互に関連するニューラルネットワークのサブネットワークは、空間的に重複している。続く実施形態では、少なくとも１つの送信タグは、少なくとも１つのルータ／基地局／アクセスポイントから少なくとも１つの物理測定値を受信して、少なくとも１つの物理測定値をシステムの中央サーバ処理／命令ステーションに送信するように構成されている。次の実施形態において、システムは、少なくとも１つの送信を少なくとも１つの送信タグから受信している位置分類子レシーバの数が最大であるサブネットワークを選択するように構成されており、少なくとも１つの送信タグは、少なくとも１つの信号を少なくとも１つのルータ／基地局／アクセスポイントから受信するように構成されている。さらなる実施形態では、システムは、展開のためにトレーニングデータおよびテストデータを収集し、トレーニングデータおよびテストデータをシステムのトレーニングおよびテストに利用し、適応的な誤差の監視および追跡を実行するように構成されている。実施形態において、適応的な誤差の監視および追跡のための構成は、既知の位置にある基準トランスミッタからの読み取り値に基づいてネットワーク出力を補正することにより、周期的な適応サイクルを通して追従誤差を監視することを含む。上記の実施形態において、システムは、特定の空間座標位置からサンプリングパケットを受信していないルータの識別情報を記録することを含め、サンプリングされたデータを収集するように構成されている。さらに別の実施形態において、サブネットワークは、直接データを含むトレーニングのために構成されており、そのデータは、フィルタリングされていない、または、平滑化されていない、または、フィルタリングも平滑化もされていない。続く実施形態において、サブネットワークは、空間的に重複していない。
【０００８】
さらなる実施形態では、相互に関連するニューラルネットワークのサブネットワークによって少なくとも１つの物体のスケーラブルなリアルタイム位置決定を行うための方法が開示されており、その方法は：相互に関連するニューラルネットワークのサブネットワークを先験的に規定する工程と；相互に関連するニューラルネットワークのサブネットワークをトレーニングデータでトレーニングする工程と；相互に関連するニューラルネットワークのサブネットワークをトレーニングデータでテストする工程と；相互に関連するニューラルネットワークのサブネットワークを動作させて、複数のサブネットワークの内の１サブネットワークのみを、少なくとも１つの物体の位置の出力に関与させる工程と；誤差を適応的に監視および追跡する工程と、を備える。続く実施形態では、サンプリング工程は、特定の時間間隔でサンプリングを繰り返して、ＲＦ信号伝搬に関連する環境の時間変動を取得する工程を含む。次の実施形態において、サブネットワークをトレーニングする工程は、スケーリング共役勾配法に従って実行され、バックプロパゲーションを用いて、サブネットワークの結合重みおよびバイアスベクトルに関するパフォーマンスの導関数が得られる。実施形態において、ネットワーク応答が：最初の中間結果を計算する工程と；ベクトルａｒｇ１を関数ａｒｇ２に通す工程と；後続の中間結果を計算する工程と；最終結果を再スケーリングする工程と、を含む。上記に含まれる実施形態は、受信信号強度（ＲＳＳＩ）の読み取り欠損および極端な変動を重心ｋ平均法フィルタで処理する工程を備える。別の実施形態は、受信信号強度（ＲＳＳＩ）の極端な変動をメジアンフィルタで処理する工程を備える。さらなる実施形態は、受信信号強度（ＲＳＳＩ）の極端な変動を埋め戻しで処理する工程を備える。次の実施形態において、サブネットワークの出力の各々の計算は：入力データを中心化および正規化する工程と；ネットワーク応答を計算する工程と；サブネットワーク出力タグ位置をネットワーク出力ベクトルから計算する工程と、を含む。さらに別の実施形態において、サブネットワーク変換式が、ｌ＝ｎｎｉ（ｒｓｓｉｉ）を含む。次の実施形態において、ニューラル層応答が、ｓｉ＝ｆ（Ｗｉ−１，ｉｓｉ−１＋ｂｉ）を含む。
【０００９】
さらに別の実施形態では、ニューラルネットワークの重複サブネットワークによって少なくとも１つの物体のリアルタイム位置決定を行うためのスケーラブルなシステムが提供されており、そのシステムは：少なくとも１つの物体の各々に関連付けられた少なくとも１つの送信タグを備え；重複サブネットワークは、柔軟なトポロジを有し、先験的に規定され、相互に関連し、レシーバを備えた複数のサブネットワーク位置分類子を備え；システムは、少なくとも１つの送信を少なくとも１つの送信タグからレシーバの少なくとも１つで受信し；ニューラルネットワークの重複サブネットワークにおける少なくとも１つの受信された送信を少なくとも１つの中央処理／命令ステーションで処理し；サブネットワークの内の１サブネットワークのみが、少なくとも１つの物体の位置の出力に関与し；スケーリングが、複数のサブネットワークの内の１サブネットワークのみを、少なくとも１つの物体の各々の位置の出力に関与させることによって達成される。
【００１０】
本明細書に記載された特徴および利点はすべてを包含しているわけではなく、特に、図面、明細書、および、特許請求の範囲を鑑みれば、多くのさらなる特徴および利点が当業者にとって明らかになる。さらに、本明細書で用いられている言語は、主に読みやすさと教示を目的として選択されたものであり、本発明の主題の範囲を限定しない。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に従って構成されたシステムアーキテクチャを示す図。
【００１２】
【図２】本発明の一実施形態に従って構成された重複マルチサブネットワークモデルの柔軟に一様なトポロジを示す図。
【００１３】
【図３】本発明の一実施形態に従って構成された重複サブネットワークのトポロジを通して移動する携帯デバイス／タグを示す図。
【００１４】
【図４】本発明の一実施形態に従って各サブネットワークのフィードフォワード型ニューラルネットワークアーキテクチャの構成を示す図。
【００１５】
【図５】本発明の一実施形態に従って構成されたシステム展開の段階を示すフローチャート。
【００１６】
【図６】本発明の一実施形態に従って構成された電磁場強度サンプリングを示すフローチャート。
【００１７】
【図７】本発明の一実施形態に従って構成された全体的な動作工程を示すフローチャート。
【００１８】
【図８】本発明の一実施形態に従って構成されたネットワーク出力計算工程を示すフローチャート。
【００１９】
【図９】本発明の一実施形態に従って構成された図８の工程８１０のネットワーク応答のための工程を示すフローチャート。
【００２０】
【図１０】本発明の一実施形態に従って構成されたサンプリング工程を示すフローチャート。
【発明を実施するための形態】
【００２１】
複数の相互に関連するニューラルネットワークが、現実世界の用途に向けて多数の物体を正確に追跡するためにスケーリングするリアルタイム位置データを提供する。システム動作は、トレーニング、稼働、および、適応的誤差修正を含む。実施形態では、２つのタイプのデータを用いて、ネットワークをトレーニングする。一方のデータタイプは、屋内電磁場伝播の数理モデルから生成されたデータである。他方のデータタイプは、施設内でサンプリングした実際のデータに由来する。実施形態は、一方のデータタイプまたは他方のデータタイプのいずれかを利用する。また、両方のタイプがマージされて、トレーニングのために同時に利用されてもよい。このトレーニングは、基本的に、代表的な伝達関数を生成するために、ニューラルネットワークにそのための複数の異なるパターンを与えるものである。各パターンは、何らかの物理的に測定可能な特性（例えば、電磁信号強度、振動、磁場配向、大気圧、加速度、回転速度、到達時間、または、飛行時間）を、三次元空間内の位置と関連付ける。発明の説明における項目は、システムアーキテクチャ、位置検出モデル、位置モデル展開構成、ならびに、データ収集システムトレーニングおよびネットワーク生成、を含む４つのセクションに編成されている。リアルタイム位置検出のためのシステムは、３つのグループの構成要素からなる。Ｉ．追跡される携帯デバイスが、所定の高周波（ＲＦ）帯域でデータを送信そして任意選択的に受信できる無線トランシーバを備える。ＩＩ．携帯ユニットと通信するために１または複数の所定のＲＦ帯域でデータを送受信できる無線トランシーバを備えたルータ／基地局／アクセスポイントデバイス。ルータは、特定のルータグループに統合され、各グループは、空間的なサブネットワークを形成する。実施形態は、例えば、物体のタイプごとに、非空間的なサブネットワークを備える。ＩＩＩ．実施形態において、システムの中央処理／命令ステーションが、携帯ユニット位置を決定する計算モデルのデータ処理および実装を実行する。実施形態について、システム展開は、３つの段階からなる：Ａ．トレーニングデータおよびテストデータの収集を含む段階；Ｂ．ニューラルネットワークのトレーニングおよびテストを含む段階；Ｃ．稼働およびネットワーク適応保守を含む最後の段階。
【００２２】
実施形態は、ルータ上での受信信号強度（ＲＳＳＩ：ｒｅｃｅｉｖｅｄ  ｓｉｇｎａｌ  ｓｔｒｅｎｇｔｈ  ｉｎｄｉｃａｔｏｒ）測定値を用いる；別の実施形態は、携帯ユニット上で測定されたＲＳＳＩも用いる。上述のように、電磁信号強度に加えて、振動、磁場配向、大気圧、加速度、回転速度、到達時間、および、飛行時間が、利用されるその他の物理特性の例であるが、これらに限定されない。
【００２３】
実施形態において、モジュラリティ／スケーリングが、先験的（ａ  ｐｒｉｏｒｉ）に規定されたサブネットワークを重複させることによって実施される。先験的とは、サブネットワークのレイアウトが、システム動作の始まる前に規定されることを意味する。空間的に重複する組織構造は、任意の組み合わせの入力が適切な位置決定につながることを保証する。実施形態では、１つのルータが、２以上のサブネット内に存在しうる。特定のタグに関与するサブネットワークの選択は、ルータ／アクセスポイントとＲＦトランシーバとの通信リンクのカウントに基づく。実施形態では、かかる通信リンクの最大カウントを有するサブネットワークが選択される。実施形態において、同順位の場合は、交互に選択することによって解決される。この方法の利点は、特定の領域をカバーするために必要な分類子（すなわち、ニューラルネットワーク）の数が少ないことを含む。利点の別の例として、この方法は、メモリ要件を驚くほど低減する。「可視性マトリクスモジュール（ｖｉｓｉｂｉｌｉｔｙ  ｍａｔｒｉｘ  ｍｏｄｕｌｅ）」選択ロジックは必要ない。
【００２４】
通常の実行時間中、いくつかの位置からの読み取り欠損、および、ＲＳＳＩ値の極端な変動が、データの埋め戻し（ｄａｔａ  ｂａｃｋｆｉｌｌｉｎｇ）、重心法（ｋ平均法）、および／または、メジアン型フィルタを実施することによって同時に対処される。重心とは、幾何学的形状を等しいモーメントの２つの部分に分割するｎ次元空間内のすべての超平面の交点を意味する。ｋ平均法の実施形態は、計算の難しさ（ＮＰ困難）および入力クラスタ数ｋに対する感受性に関する問題を考慮すると、予想外によい結果を提供する。ＮＰ困難とは、計算複雑性理論における非決定性多項式時間困難のことである。実施形態において、読み取り欠損とは、ゼロＲＳＳＩ値を意味する。実施形態において、極端な変動とは、最小／最大に近い読み取り値を意味しており、すなわち、読み取り値の値が互いに同等である場合、例えば、その同等の値の２倍ないし３倍である。
【００２５】
実施形態において、フィルタリング動作も平滑化動作も、トレーニングデータセットには実施されない。そのアプローチは、各特定の位置について、典型的なシナリオが大量のデータを含むことであり、分類子は、欠損データの極端なシナリオケースに対して可能な限り耐性を示すことが好ましい。さらに、トレーニング段階中、極端に小さいＲＳＳＩ値を取り除くために、欠損データフィルタを実装することがない。最後に、ニューラルモデルのターゲットおよび出力が、連続的な座標または離散的な位置のいずれかでありうる。
【００２６】
システムアーキテクチャ
上述のように、リアルタイム位置検出のためのシステムの実施形態は、３つの主なグループの構成要素からなる。Ｉ．追跡される携帯デバイス。これらは、所定の高周波（ＲＦ）帯域で、データを送信でき、そして、いくつかの実施形態ではデータを受信できる無線トランスミッタ／トランシーバを備える。
【００２７】
ＩＩ．ルータ／基地局アクセスポイントデバイス。実施形態において、これらは、携帯ユニットと通信するために所定の高周波（ＲＦ）帯域でデータを送受信できる無線トランシーバを備える。これらのデバイスの実施形態は、さらに、携帯ユニットから受信したデータを他のシステムモジュールに有線または無線リンクを介して中継できる。
【００２８】
ＩＩＩ．システム中央処理／命令ステーション。実施形態は、システム中央処理／命令ステーションにおいて、携帯ユニット位置を決定する計算モデルのデータ処理および実装を行う。これらのステーション（通例は、サーバタイプのデバイス）の実施形態は、さらに、システム内のすべての他のユニットに特定のメッセージを送信できる。
【００２９】
図１は、システムアーキテクチャ１００の一実施形態を示す図である。構成要素は、ルータ／基地局アクセスポイント１０５、携帯デバイス１１０、および、中央処理／命令ステーション１１５を含む。中央処理／命令１１５および携帯ユニット１１０の間のデータ転送は、ルータステーション１０５で中継される。ルータステーションおよび中央処理／コマンドユニットの間の情報のやり取りは、有線または無線リンク１２０を介して行うことができる。システムネットワークの空間トポロジ（すなわち、ルータの位置）は、固定されておらず、実施形態では、ルータの再配置後に再トレーニングを必要とし、特定の配置選択ルールには全く従う必要がない。実施形態において、ルータの配置は、実際の現場での要件および制限に左右される。システム内の各デバイスは、一意的な識別子またはアドレスを有する。実施形態では、様々な無線システムデバイスの間の通信が、非同期動作（疑似ランダム伝送）および同期動作（ＴＤＭＡ様の動作）の両方を仮定して、１または複数の特定の通信プロトコルを用いて達成される。
【００３０】
位置検出モデル
位置検出のための方法の実施形態は、通信パケットを携帯ユニットとの間でやり取りするルータ／基地局アクセスポイントおよび携帯トランシーバから転送された受信信号強度（ＲＳＳＩ）読み取り値に基づく。位置決定方法の実施形態で用いられる他の物理特性の例は、振動、磁場配向、大気圧、加速度、回転速度、到達時間、および、飛行時間を含むが、これらに限定されない。実施形態において、システムルータは、特定のルータグループに統合され、各グループは、システムのための空間的なサブネットワークを形成する。位置決定方法の中心的な態様は、ニューラルネットワークを利用したパターン認識ソリューションに基づく。
【００３１】
用語体系では、特定の三次元スキームにおける屋内環境にわたって配置されたＮ個のルータユニットを有するシステムが定義される。ルータの分布は、厳密に一様である必要はなく、特定のグリッド構造には全く従う必要がない。実施形態では、１つのサブネットワークが、すべてのＮ個のルータを含むように規定されてもよい。
【００３２】
図２は、より容易に三次元システムトポロジを視覚化するために提供された一様タイプのルータ分布２００の一例である。重複した複数ネットワークのモデルのトポロジを図示するに当たって、個々のサブネットワーク構成要素は、ルータドット２０５で区別されている。
【００３３】
図２に示したシステムの特定の例は、３つのサブネットワーク２１０、２１５、および、２２０を含むネットワークを提示している。サブネットワークは重複しうる。図２の例は、共通のルータを有する３つのサブネットワークを含むモデルを示す。いくつかの実施形態では、１つのルータが、２以上のサブネット内に存在しうる。実施形態において、重複は、空間的であってよい、および／または、任意の測定または定義されたパラメータによるものであってよい。サブネットワーク２１５のルータが、破線の囲いの中に図示されている。各サブネットワークは、任意の数のルータを含んでよく、また、任意の他のサブネットワークと実際に重複することなしに、システムの残り部分から隔離されうる。システムがＭ個のサブネットワークを有すると仮定する。サブネットワークｉに属するルータの数は、Ｎｉである。携帯デバイス位置決定方法の実施形態では、各システムサブネットワークが、以下に示す変換に関連すると仮定する。
【００３４】
ｌ＝ｎｎｉ（ｒｓｓｉｉ）      （２．１）
【００３５】
ここで、ｌ（小文字のエル）は、位置ベクトル、ｎｎｉ（）は、特定のシステムサブネットワークのニューラルネットワーク変換関数、（ｒｓｓｉｉ）は、サブネットワークｉに属するルータ／携帯トランシーバからのすべてのＮｉ個のＲＳＳＩ読み取り値を含むベクトルである。ベクトルｌは、次元３×１を有しており、その成分は、特定の携帯トランスミッタの検出された座標と相関する。ニューラルネットワーク伝達関数は、通例、行列およびベクトルの乗算と中間結果のさらなるマッピングとを通して表現できる非線形変換（実施形態は線形モデルを含む）である。正確なニューラルマッピングの形態は、各サブネットワークに関連するニューラルネットワークの選択されたパラメータに依存する。用語に関しては、個別のルータサブネットワークに割り当てられた特定のニューラルネットワークと、ルータサブネットワーク自体との間の区別は、必ずしも明確ではない。
【００３６】
図３は、重複サブネットワーク３００のトポロジを通して移動する携帯デバイス／タグを示している。トポロジは、図２からのものである。最初のタグ位置３０５は、サブネットワーク１（太い短破線）３１０内にある。次のタグ位置３２０は、サブネットワーク２（太い長破線）３１５内にある。３番目のタグ位置３３０は、サブネットワーク３（太い二点鎖線）３２５である。各場合において、この実施形態では、タグの信号を受信するルータの数が最大であるサブネットワークが、タグの位置検出決定の実行に関与している。
【００３７】
図４は、各サブネットワークのフィードフォワード型ニューラルネットワークアーキテクチャ４００の一実施形態を示す。構成要素は、データ前処理４２０への入力４０５、４１０、および、４１５；層１  ４２５；層ｐ−１  ４３０；層ｐ  ４３５；データ後処理４４０；ならびに、出力４４５、４５０、および４５５を含む。図４のネットワークアーキテクチャは、フィードフォワード型アーキテクチャのニューラルネットワークを示しているが、別のタイプのニューラルモデルを用いることを妨げうる前提も制限もない。各サブネットワークは、Ｎｉ個の入力、ｐ個の層（ｐ−層ネットワークは、一般に、１つの出力および（ｐ−１）個の隠れ層を備えたネットワークと見なされる）、および、最大３個の出力を有する。別の実施形態は、第４の次元として時間を含む。実施形態は、ゆっくりとした環境変動を補償するためだけではなく、予測するためにも時間を利用する。一例として、システムの実施形態は、ナースステーションと診察室との間で繰り返し移動する看護師など、決まり切ったルーチンを観察することによって位置精度を改善するが、これに限定されない。各ニューラル層は、特定の数のニューロン（処理ユニット）を有しており、それらの数は、異なるネットワーク層では異なってよい。ネットワークのシナプス荷重（伝達関数ｆ（））がバイアスベクトルと共に、前層から受信した入力または後層からフィードバックされた入力に対する各ニューラル層の応答を決定する。この応答は、以下のように行列形式で記述できる：
【００３８】
【数１】
0006045747.tif 000002
【００３９】
ここで、行列Ｗｉ−１，ｉは、層ｉ−１および層ｉのネットワーク結合行列を表し、ｓｉは、層ｉから出力された信号であり（ｓｉ−１は、層ｉ−１からの信号）、ｂｉは、以下の形態のバイアスベクトルである：
【００４０】
【数２】
0006045747.tif 000003
【００４１】
層ｉ内のニューロンの数は、ｎｎ＿ｉと示される。伝達関数ｆ（）は、いくつかの標準形の内の１つを有しうる。一例は、タンジェントシグモイド伝達関数である。
【００４２】
【数３】
0006045747.tif 000004
【００４３】
実施形態において、２つのブロック（信号前処理４２０および信号後処理４４０）は、ニューラルネットワーク処理に適した範囲にデータを正規化するために用いられる。正規化パラメータが、ネットワークトレーニング中に決定され、ネットワーク入力におけるトレーニングデータベクトルおよびネットワーク出力におけるターゲットベクトルに依存する。本明細書で扱うモデルの実施形態の場合、これらのパラメータは、トレーニング段階中にサブネットワークルータで受信される有効ＲＳＳＩ範囲の影響を受ける。
【００４４】
図５のフローチャート５００は、３つのシステム展開段階を示す。上述のように、システム展開の実施形態は、３つの段階からなる。すなわち、Ａ．トレーニングデータおよびテストデータの収集を含む段階５０５；Ｂ．ネットワーク／システムのトレーニングおよびテストを含む段階５１０；ならびに、Ｃ．稼働およびネットワーク適応保守を含む最後の段階５１５、である。すべてのルータユニットが、特定の環境内に設置された後、トレーニングデータが、物理測定値サンプリング、数理モデリング、または、両者の組み合わせによって収集される。サンプリング手順は、対象空間内のｘ、ｙ、および、ｚ座標によって決定された既知の位置からＲＦ信号特性を捕捉することからなる。実施形態では、サンプリングは、所与の位置からのパケットのバーストの送信を通して実施される。バーストは、所与の位置の信号強度を適切に特徴付けるのに適当な数の送信（例えば、１０〜３０）を含む。サンプリング処理は、ＲＦ信号伝搬に関連する環境の時間変動を得るために、特定の時間間隔（時間、日、月・・・）にわたって、潜在的に繰り返し可能である。各サンプリングパケットは、システムがパケット構造を認識および解釈することを可能にする一意的な識別子を有する。サンプリングパケットを受信するすべてのルータが、情報内容を抽出し、サンプリングされたデータを格納する中央サーバにその情報内容を中継する。対象となる情報は、実施形態において、各ルータ／携帯トランシーバで受信されたＲＳＳＩと、現在の携帯トランシーバ位置とを含む。また、特定の（ｘ，ｙ，ｚ）位置からサンプリングパケットを受信していないルータ（すなわち、タイムアウトしたルータ）に関する情報が記録される。
【００４５】
図６は、一実施形態のサンプリングの概略工程を示すフローチャート６００である。工程６０５で開始したサンプリング処理中、携帯トランシーバデバイス（実施形態では、ＲＦＩＤタグ）が、対象空間にわたって物理的に漸次移動される（工程６１０）。各サンプリングデータバーストが捕捉される前に、サンプリングユニットの位置に関する情報が、中央サーバに送信される（工程６１５）。並行して、電磁場伝播の数理モデルが、対象空間について生成され（工程６２０）、モデル空間がサンプリングされる（工程６２５）。中央サーバは、トランシーバのｘ，ｙ，ｚ位置と、携帯トランシーバ／システムルータまたは両方の組み合わせからモデル化されたデータまたは捕捉されたデータからのＲＳＳＩ読み取り値の対応するセットと、を含むネットワークトレーニングデータベースを作成し（工程６３０）、シーケンスを終了する（工程６３５）。このデータセットの一実施形態の構造を表１に示す。
【００４６】
【表１】
0006045747.tif 000005
【００４７】
実施形態において、トレーニングデータ収集の空間的な位置は、ランダムであるか、または、規則的なグリッド様パターンとして構築される。いくつかの実施形態では、サンプリングは、約３フィートごとに行われる。別の実施形態では、選択された単一のｘ，ｙ，ｚ位置を持つ一群の携帯トランシーバを用いる。
【００４８】
各システムサブネットワークは、以下のように定義された境界を持つ独自の空間領域を有する：
【００４９】
ｘＭＩＮ＜ｘ＜ｘＭＡＸ      （２．５）
ｙＭＩＮ＜ｙ＜ｙＭＡＸ
ｚＭＩＮ＜ｚ＜ｚＭＡＸ
【００５０】
各サブネットワークのトレーニングは、（サブ）ネットワークの領域に属するトレーニングデータを用いて実行される。ネットワークへの入力は、特定のネットワークに属するリーダからのＲＳＳＩ（および／またはその他のパラメータ）の値を含む特徴ベクトルである。ターゲット出力は、入力ベクトルに関連するタグのｘ、ｙ、および、ｚ座標である。トレーニングの実施形態の実装は、ＭＡＴＬＡＢ  Ｎｅｕｒａｌ  Ｔｏｏｌｂｏｘ（登録商標）によって達成される。ＭＡＴＬＡＢ（登録商標）およびＭＡＴＬＡＢ  Ｎｅｕｒａｌ  Ｔｏｏｌｂｏｘ（登録商標）は、カリフォルニア州のＭａｔｈＷｏｒｋｓ社の登録商標である。ネットワークのトレーニングが、スケーリング共役勾配法（ｓｃａｌｅｄ  ｃｏｎｊｕｇａｔｅ  ｇｒａｄｉｅｎｔ  ｍｅｔｈｏｄ）に従って実行され、バックプロパゲーションを用いて、ネットワークの結合重みおよびバイアスベクトルに関するパフォーマンスの導関数が得られる。ＭＡＴＬＡＢ  Ｎｅｕｒａｌ  Ｔｏｏｌｂｏｘ（登録商標）によるニューラルネットワークトレーニングの実装は、データの前処理および後処理のためのモデルを含む。ネットワークのトレーニングが終了すると、数セットの行列／係数が生成される。それらは、データの前処理および後処理のパラメータ、ネットワーク結合重み、および、ネットワークバイアスベクトルを表す。
【００５１】
図７のフローチャート７００は、開始７０５と、電磁場強度サンプルトレーニングデータを取得する工程７１０と、ランダム位置からデータを取得する工程７１５と、トレーニング工程７２０と、稼働させて、適応サイクルを通して追従誤差を監視する工程７２５と、を含む全体的な動作工程を示す。以下で詳述する。
【００５２】
トレーニングデータが取得される（工程７１０）と、トレーニングデータと同じフォーマットを有するさらなるセットのデータが、ランダムな空間位置から取得される（工程７１５）。このデータセットは、ネットワークパフォーマンスをテストするために用いられる。
【００５３】
ネットワークが展開された後、追従誤差が、既知の位置に配置されたトランスミッタからの読み取り値に基づいてネットワーク出力を補正することによって、周期的な適応サイクルを通して監視される（工程７２５）。これらのトランスミッタは、基準ユニットと呼ばれ、実行時トレーニングおよび適応データを提供する。
【００５４】
位置モデル展開構成
このセクションでは、１セットの受信されたＲＳＳＩ読み取り値に基づいてタグ位置を決定するために、ニューラルネットワーク出力のシミュレーションを行う方法の一実施形態を記載する。各システムサブネットワークについて、処理アプリケーションは、典型的に以下のような名称のテキストファイルの内容をロードする：Ｂ１、Ｂ２、Ｂ３、Ｂ４、ＩＮ、ＬＷ１２、ＬＷ２３、Ｍ、ｍａｘ＿Ｘ、ｍａｘ＿Ｙ、ｍａｘ＿Ｚ、ＯＵＴ、ｓｕｂｎｅｔＣｏｎｆｉｇ、ｔａｒｇｅｔＭａｇ、Ｖ、ｘＭａｘ１、ｘＭａｘ２、ｘＭｉｎ１、ｘＭｉｎ２、ｙＭａｘ１、ｙＭａｘ２、ｙＭｉｎ１、ｙＭｉｎ２  （ｚ）。実施形態において、上述のファイルはすべて、システムトレーニング中に生成される。３つの隠れ層を備えるシステムについて、それらのファイルは、以下の解釈を有する：
【００５５】
Ｂ１、Ｂ２、Ｂ３、Ｂ４は、ネットワークバイアスベクトルを含む；
【００５６】
ＩＮは、入力された結合重み行列である；
【００５７】
ＬＷ１２およびＬＷ２３は、それぞれ、層１−２間および層２−３間の結合行列である；
【００５８】
ＯＵＴは、層３と出力層との間の結合行列である；
【００５９】
ＭおよびＶは、実施形態において、入力されたＲＳＳＩデータのための平均および分散の正規化パラメータである；
【００６０】
ｍａｘ＿Ｘ、ｍａｘ＿Ｙ、および、ｍａｘ＿Ｚは、ネットワークのｘ、ｙ、および、ｚ方向の最大座標スパンである；
【００６１】
ｓｕｂｎｅｔＣｏｎｆｉｇは、以下の表２に示すネットワーク構成パラメータを含む；
【００６２】
ｔａｒｇｅｔＭａｇは、ニューラルネットワークの最大出力である；
【００６３】
ｘＭａｘ１、ｘＭａｘ２、ｘＭｉｎ１、ｘＭｉｎ２、ｙＭａｘ１、ｙＭａｘ２、ｙＭｉｎ１、ｙＭｉｎ２（任意選択的にｚ）は、例えば、ＭＡＴＬＡＢ  Ｎｅｕｒａｌ  Ｔｏｏｌｂｏｘ（登録商標）で用いられるデータ正規化パラメータである。これらのパラメータは、最大および最小のトレーニングデータ値ならびに入力層の出力および出力層の入力での所望のデータ範囲に基づいて取得される。サブネット構成テキストファイルの一実施形態の構造を表２に示す。
【００６４】
【表２】
0006045747.tif 000006
【００６５】
図８のフローチャート８００は、ネットワークの出力の各々を計算するための工程を示す。実施形態では、これは、以下の工程を実施することによって達成される：Ａ．中心化および正規化を含む工程８０５；Ｂ．ネットワーク応答手順を行う工程８１０；ならびに、Ｃ．ネットワーク出力８１５（４層ネットワークを仮定する）。詳細は以下の通りである。
【００６６】
Ａ．中心化および正規化
ニューラルネットワークによって処理される前に、ベクトルｉｎＲｓｓｉ［Ｎｉｘ１］によって表された全ＲＳＳＩデータが、中心化および正規化される。この処理の実施形態は、以下を含む：
【００６７】
ａ．正規化パラメータＭ［Ｎｉｘ１］およびＶ［Ｎｉｘ１］のロード；
【００６８】
ｂ．中心化・正規化されたベクトルの計算：ｉｎ＝（ｉｎＲｓｓｉ−Ｍ）．／Ｖ
【００６９】
ここで、「−」は、標準的な行列の減算であり、「．／」は、要素ごとのベクトル除算である。実施形態では、平均Ｍおよび分散Ｖの正規化ベクトルは省かれてもよい（すなわち、Ｍは零ベクトルであり、Ｖは単位ベクトルである）；ＭＡＴＬＡＢ  Ｎｅｕｒａｌ  Ｔｏｏｌｂｏｘ（登録商標）は、入力データの正規化を実施できる。
【００７０】
Ｂ．ネットワーク応答
入力パラメータを読み込んだ後、以下の手順により、実施形態のネットワーク応答を生み出す。
【００７１】
図９のフローチャート９００は、図８のネットワーク応答手順（工程８１０）に含まれる工程を要約した図である。ネットワーク応答の工程は、以下を含む：入力データを再スケーリングする工程９０５；（最初の）中間結果を計算する工程９１０；ベクトルａｒｇ１を関数ａｒｇ２に通す工程９１５；次の（後続の）中間結果の計算を進める工程９２０；ならびに、最終結果を再スケーリングする工程９２５。ネットワーク応答の工程の詳細は、以下の通りである。
【００７２】
１．以下の式に従って、入力データを再スケーリングする：
【００７３】
ｏｕｔ１＝（ｙＭａｘ１−ｙＭｉｎ１）＊（ｉｎ−ｘＭｉｎ１）．／（ｘＭａｘ１−ｘＭｉｎ１）＋ｙＭｉｎ１
【００７４】
ここで：「．／」は、要素ごとの行列除算を表し、「−」は、要素ごとの行列減算を表し、「＊」は、行列のスカラー倍の演算を表し、「＋」は、行列の各要素に定数項を加算することを表す。
【００７５】
２．以下の式に従って、（最初の）中間結果を計算する：
【００７６】
ａｒｇ１＝（ＩＮ＊ｏｕｔ１）＋Ｂ１
【００７７】
ここでは、すべての演算が標準的な行列演算子である；
【００７８】
３．ベクトルａｒｇ１を以下の関数に通す：
【００７９】
ａｒｇ２＝２／（１＋ｅｘｐ（−２＊ａｒｇ１））−１
【００８０】
ここで、ａｒｇ１の各要素について変換が計算される；
【００８１】
４．次の（後続の）中間結果の計算を進める：
【００８２】
ａｒｇ３＝（ＬＷ１２＊ａｒｇ２）＋Ｂ２；
【００８３】
ａｒｇ４＝ｔａｎｓｉｇ（ａｒｇ３）；ここで、ｔａｎｓｉｇ（ｘ）＝２／（１＋ｅｘｐ（−２＊ｘ））−１
【００８４】
ａｒｇ５＝（ＬＷ２３＊ａｒｇ４）＋Ｂ３；
【００８５】
ａｒｇ６＝ｔａｎｓｉｇ（ａｒｇ５）；
【００８６】
ａｒｇ７＝（ＯＵＴ＊ａｒｇ６）＋Ｂ４；
【００８７】
ａｒｇ８＝ｔａｎｓｉｇ（ａｒｇ７）；
【００８８】
５．以下の式に従って、最終結果を再スケーリングする：
【００８９】
ｏｕｔＦｉｎａｌ＝（ｘＭａｘ２−ｘＭｉｎ２）．＊（ａｒｇ８−ｙＭｉｎ２）．／（ｙＭａｘ２−ｙＭｉｎ２）＋ｘＭｉｎ２
【００９０】
ここで、最初の「−」は、２つのベクトルの減算であり、「．＊」は２つの行列の要素ごとの乗算であり、「ａｒｇ８−ｙＭｉｎ２」は、各ベクトル成分からの定数の減算であり、「．／」は、要素ごとの除算であり、最後の「＋」は、標準的なベクトル＋ベクトルの演算である。
【００９１】
Ｃ．ネットワーク出力
ネットワークの出力は、２成分または３成分ベクトルであり、すべての成分が範囲［−１，１］内にある。（ｘ，ｙ）タグ位置の計算は、以下の手順を用いて達成される：
【００９２】
ｘＦｅｅｔ＝（ｏｕｔＦｉｎａｌ（１）／（２＊ｔａｒｇｅｔＭａｇ）＋０．５）＊ｍａｘ＿Ｘ＋ｘＭｉｎ；
【００９３】
ｙＦｅｅｔ＝（ｏｕｔＦｉｎａｌ（２）／（２＊ｔａｒｇｅｔＭａｇ）＋０．５）＊ｍａｘ＿Ｙ＋ｙＭｉｎ；
【００９４】
ｚＦｅｅｔ＝（ｏｕｔＦｉｎａｌ（２）／（２＊ｔａｒｇｅｔＭａｇ）＋０．５）＊ｍａｘ＿Ｚ＋ｚＭｉｎ；
【００９５】
ここで、ｘＭｉｎ、ｙＭｉｎ、および、ｚＭｉｎは、ローカル（サブ）ネットワークによってカバーされる最小のｘ、ｙ、および、ｚ座標を表す。パラメータｍａｘ＿Ｘ、ｍａｘ＿Ｙ、および、ｍａｘ＿Ｚは、（サブ）ネットワークパラメータファイルにすでに提供されており；以下の通りである：
【００９６】
ｍａｘ＿Ｘ＝ｘＭａｘ−ｘＭｉｎ；
【００９７】
ｍａｘ＿Ｙ＝ｙＭａｘ−ｙＭｉｎ；
【００９８】
ｍａｘ＿Ｚ＝ｚＭａｘ−ｚＭｉｎ；
【００９９】
ここで、ｘＭａｘ、ｙＭａｘ、および、ｚＭａｘは、ローカルネットワークによってカバーされる最大のｘおよびｙ座標を表す。
【０１００】
パラメータｍａｘ＿Ｚが０の場合、ネットワークは、２つの有効出力のみを有し、１つのフロアのみ（すなわち、二次元のみ）をカバーすることに注意されたい。この場合、出力ｚＦｅｅｔは、以下のように設定できる：
【０１０１】
ｚＦｅｅｔ＝ｚＭｉｎ；
【０１０２】
有効化する特定のサブネットワークを（すべての可能なサブネットワークから）選択する処理は、特定のトランスミッタからパケットを受信したルータの数が最多（非ＮａＮまたは−９９読み取り値が最多）であるサブネットワークを選択する工程からなる。
【０１０３】
データ収集、システムトレーニング、および、ネットワーク生成
システムニューラルネットワークの生成は、例えば、ＭＡＴＬＡＢ（登録商標）に基づいた以下のようなスクリプトを用いて実行される：
【０１０４】
−ｔｒａｉｎ  Ｏｖｅｒｌａｐ
【０１０５】
−ｔｅｓｔ  Ｏｖｅｒｌａｐ
【０１０６】
−ｃｒｅａｔｅ  Ｇｏｌｄｅｎ  Ｖｅｃｔｏｒ
【０１０７】
−ｅｘｃｌｕｄｅ  Ｄａｔａ  Ｐｏｉｎｔｓ
【０１０８】
−ｍｅｒｇｅ  Ｃｈｉｐ  １２  （＊）
【０１０９】
サンプリング手順が、実際のネットワークトレーニングの前にある。この処理については、「位置検出モデル」のセクションで最初に説明した。サンプリング手順は、システムが設置された領域において注意深く座標を検証することを伴う。実施形態において、サンプリングは、規則的なグリッドに沿って分配され、隣接するサンプリングの間の距離は３フィートである。別の実施形態では、規則的なグリッド間隔は利用されない。実施形態では、別個のアプリケーション（ＭａｐＲｅａｄｅｒ）が、施設の地図を読み取り、現在の座標を表示する。それは、サンプリング位置（すなわち、ｘ、ｙ、および、ｚ座標）を検証するために利用できる。サンプリング処理中、方向付けを容易にするために、施設の各部屋で基準座標ラベルを用いることも可能である。実施形態において、各サンプリングバースト中に処理／受信するパケットの最小数は、２０である（これは様々でありうる）。２つのグループのデータが、実施形態で収集される：１．設置空間全体にわたって３フィートごとにサンプリングされた比較的多いサンプルトレーニングデータのセット；２．ネットワークトレーニング結果を検証するためのテストデータとして機能するランダムポイント（１００〜２００）のセット。以下は、サンプリング手順前および手順中に対応する実施形態の詳細を表す。
【０１１０】
サンプリング
図１０のフローチャート１０００は、サンプリング方法のより詳細な工程を示す。十分な数のサンプリングタグを提供する；タグがすべてのルータで同様のＲＳＳＩ読み取り値を生み出すことを検証するために、サンプリングタグをテスト／較正する（工程１００５）。システムがインストールされる施設の１または複数の地図を準備する（工程１０１０）。実施形態において、地図は、例えば、ＭａｐＲｅａｄｅｒアプリケーションが地図の精度を検証するために用いられる場合、ｐｎｇフォーマットにエクスポートされる。起点が地図上で選択された後、領域内でいくつかの点（可能であれば、部屋の角または長い廊下に沿った角の点）を選択し、それらの点の間の距離を測定しつつ、それらの読み取り値を地図データと比較することにより、地図のスケールが確認される。サンプリングは、例えば、ＷｉＦｉ接続とポケットＰＣデバイスまたはラップトップコンピュータとを用いて実行される（工程１０１５）。施設のＷｉＦｉアクセス利用可能性が確認され、サンプリングサーバアプリケーションが、サンプリング手順中に用いられるすべてのＰＤＡおよびラップトップとシームレスに通信することが保証される。サンプリングデータが有効であることを確かめるために、リーダの作動状態が確認され、常に利用可能であることが好ましい（工程１０２０）。サンプリングゾーンは明確に分離されていることが好ましく（例えば、部屋、廊下ごとに、または、単に座標の値によって）、各ゾーンは、別個のサンプリングチームに割り当てられることが好ましい（工程１０２５）。サンプリング手順が完了した後、ネットワーク生成が実行されてよい（工程１０３０）。実施形態では、設定ファイルが、システムトレーニングソフトウェアのためのネット構成フォルダ内に置かれる。実施形態の例は：
【０１１１】
−主要構成テキストファイル
【０１１２】
−テスト構成テキストファイル
【０１１３】
−ルータ構成ｃｓｖファイル
【０１１４】
主要構成テキストファイルの構造の一実施形態を表３に示す。
【０１１５】
【表３Ａ】
0006045747.tif 000007
【表３Ｂ】
0006045747.tif 000008
【０１１６】
表３は、重複をトレーニングするためのスクリプトの構成用の主要構成テキストファイルの一実施形態の構造を提示する。
【０１１７】
実施形態において、ルータ構成のためのカンマ区切り値（ｃｓｖ）ファイルは、システム内に配備された全ルータ／リーダのリストを含んでおり、このファイルの構造は、表４に示されている（ファイル内のフィールドがカンマで区切られている）。
【０１１８】
【表４】
0006045747.tif 000009
【０１１９】
実施形態において、ネットワークトレーニングが先験的に実行される前に、システムが展開された領域は、Ｎ個の潜在的に重複するネットワークに分割される。各サブネットワークに対して、「位置モデル展開構成」に関する上記のセクションの表２に示した構造の構成ファイルが作成される。実施形態において、これらのサブネットワークファイルは、主要構成テキストファイル内のネットワーク構成ベース名パラメータによって与えられた名称に従って命名される。例えば、ネットワーク構成ベース名パラメータが値”ｎｅｔｗｏｒｋ＿Ａｌｐｈａ＿”を有し、パラメータ”ｎｕｍ  ｎｅｔｗｏｒｋｓ”が値”３”を有する場合、３つの構成ファイルが以下の名称で作成される：ｎｅｔｗｏｒｋ＿Ａｌｐｈａ＿１、ｎｅｔｗｏｒｋ＿Ａｌｐｈａ＿２、および、ｎｅｔｗｏｒｋ＿Ａｌｐｈａ＿３。
【０１２０】
実施形態において、ネットワークトレーニングは、ｔｒａｉｎ  Ｏｖｅｒｌａｐスクリプトを実行することによって行われる。トレーニング中、プログラムは、各システムサブネットワークに適切なデータセットを選択し、各ネットワークをトレーニングし、「保存済み」と名付けられたフォルダにネットワーク係数および構成ファイルを保存する。各サブネットワークは、その特定のサブネットワークの名称に対応する名称を有する別個のサブフォルダに保存される。これらのファイルは、最終的なシステム展開中に追跡層サービスに提供される。実施形態において、主要構成テキストファイル内の”ｔｅｓｔ  ｎｅｔｗｏｒｋ”フィールドがｔｒｕｅに設定されている場合、トレーニングされたネットワークは、指定されたテストデータセットを用いてテストされる。実施形態では、結果として得られた平均絶対誤差が、ＭＡＴＬＡＢ（登録商標）のプロンプトに表示される。また、絶対誤差ヒストグラムが、実施形態において別個の図に示される。大きいデータセット（４０，０００のトレーニングサンプル）に対して、ネットワークトレーニングは、約３０分掛かりうる（３ＧＨｚクアッドコアＩｎｔｅｌ  Ｘｅｏｎプロセッサｗ／４ＧＢシステムＲＡＭ）。ネットワークトレーニングが集束していなければ、トレーニング処理が繰り返される。実施形態では、平均絶対誤差が比較的大きいこと（＞１２フィート）により、非収束が特定される。ネットワーク係数に加えて、トレーニングプログラムの実施形態は、ネットワーク構成ベース名パラメータの後に＿Ｘおよびトレーニング日時を付けた名称を有するログファイルを作成する。実施形態では、このファイルは、ＭＡＴＬＡＢ（登録商標）ワークスペースに直接ロードできるＭＡＴＬＡＢ（登録商標）変数の形態で、ルータ構成、ネットワーク係数、および、ネットワーク構成セットアップなどのデータを含む。
【０１２１】
実施形態において、別個のスクリプト”ｔｅｓｔ  Ｏｖｅｒｌａｐ”が、任意の以前にトレーニングされたネットワークをテストするために用いられる。このスクリプトの構成ファイルは、テスト構成テキストファイルである。このファイルの実施形態の構造を表５に示す。
【０１２２】
【表５Ａ】
0006045747.tif 000010
【表５Ｂ】
0006045747.tif 000011
【表５Ｃ】
0006045747.tif 000012
【０１２３】
ｔｅｓｔ  Ｏｖｅｒｌａｐスクリプトファイルを実行すると、実施形態では、テスト構成テキストファイルからのパラメータ”ｓｈｏｗ  ｓａｍｐｌｉｎｇ  ｏｎｌｙ”がｔｒｕｅに設定された場合を除いて、平均絶対誤差、間違ったフロア決定の数、および、絶対誤差ヒストグラムが表示される。
【０１２４】
以上、例示および説明のために、本発明の実施形態を記載した。包括的であることも、開示された正確な形態に本発明を限定することも意図されていない。本開示に照らして、多くの変形例および変更例が可能である。本発明の範囲は、この詳細な説明ではなく、本明細書に添付された特許請求の範囲によって限定される。
なお、本願発明は、以下の適用例としても実現可能である。
［適用例１］
相互に関連するニューラルネットワークのサブネットワークによって少なくとも１つの物体のリアルタイム位置決定を行うためのスケーラブルなシステムであって、
前記少なくとも１つの物体の各々に関連付けられた少なくとも１つの送信タグ（１１０）と、
位置分類子レシーバ（２０５）を含む複数の先験的に定義された相互に関連する位置分類子サブネットワーク（２１０、２１５、２２０）と、
を備え、
前記位置分類子レシーバは、前記少なくとも１つの送信タグから少なくとも１つの送信を受信するように構成され、
前記システムは、前記複数のサブネットワークの内の１サブネットワーク（３１０）のみを、前記少なくとも１つの物体の位置の出力に関与させるように構成され、
前記システムのスケーリングは、前記複数のサブネットワークの内の１サブネットワークのみを、前記少なくとも１つの物体の各々の前記位置の出力に関与させることによって達成される、システム。
［適用例２］
適用例１に記載のシステムであって、相互に関連するニューラルネットワークの前記サブネットワークは、空間的に重複する（図３）、システム。
［適用例３］
適用例１または２に記載のシステムであって、前記少なくとも１つの送信タグ（１１０）は、少なくとも１つのルータ／基地局／アクセスポイント（１０５）から少なくとも１つの物理測定値を受信して、前記少なくとも１つの物理測定値をシステムの中央サーバ処理／命令ステーション（１１５）に送信するように構成されている、システム。
［適用例４］
適用例１ないし３のいずれか一項に記載のシステムであって、前記システムは、前記少なくとも１つの送信タグから少なくとも１つの送信を受信している前記位置分類子レシーバの数が最大であるサブネットワークを選択するように構成されており、
前記少なくとも１つの送信タグは、少なくとも１つのルータ／基地局／アクセスポイント（１０５）から少なくとも１つの信号を受信するように構成されている、システム。
［適用例５］
適用例１ないし４のいずれかに記載のシステムであって、前記システムは、展開のためにトレーニングデータおよびテストデータを収集し、前記トレーニングデータおよびテストデータをシステムのトレーニングおよびテストに利用し、適応的な誤差の監視および追跡を実行するように構成されている、システム。
［適用例６］
適用例５に記載のシステムであって、適応的な誤差の監視および追跡のための前記構成は、既知の位置にある基準トランスミッタからの読み取り値に基づいてネットワーク出力を補正することにより、周期的な適応サイクルを通して追従誤差を監視することを含む、システム。
［適用例７］
適用例１ないし６のいずれか一項に記載のシステムであって、前記システムは、特定の空間座標位置からサンプリングパケットを受信していないルータの識別情報を記録することを含め、サンプリングされたデータを収集するように構成されている、システム。
［適用例８］
適用例１ないし７のいずれか一項に記載のシステムであって、前記サブネットワーク（２１０、２１５、２２０）は、直接データを含むトレーニングのために構成されており、前記データは、フィルタリングされていない、または、平滑化されていない、または、フィルタリングも平滑化もされていない、システム。
［適用例９］
適用例１ないし８のいずれかに記載のシステムであって、前記サブネットワークは、空間的に重複しない、システム。
［適用例１０］
相互に関連するニューラルネットワークのサブネットワークによって少なくとも１つの物体のスケーラブルなリアルタイム位置決定を行うための方法であって、
相互に関連するニューラルネットワークの前記サブネットワークを先験的に規定する工程と、
サンプリングによってトレーニングデータを収集する工程（５０５Ａ）と、
相互に関連するニューラルネットワークの前記サブネットワークを前記トレーニングデータでトレーニングする工程（５１０）と、
相互に関連するニューラルネットワークの前記サブネットワークを前記トレーニングデータでテストする工程（５１０）と、
相互に関連するニューラルネットワークの前記サブネットワークを動作させて、前記複数のサブネットワークの内の１サブネットワークのみを、前記少なくとも１つの物体の位置の出力に関与させる工程（５１５Ｃ）と、
誤差を適応的に監視および追跡する工程（５１５Ｃ）と、
を備える、方法。
［適用例１１］
適用例１０に記載の方法であって、前記サンプリング工程は、
特定の時間間隔で前記サンプリングを繰り返して、ＲＦ信号伝搬に関連する環境の時間変動を取得する工程を含む、方法。
［適用例１２］
適用例１０に記載の方法であって、前記サブネットワークをトレーニングする工程は、スケーリング共役勾配法に従って実行され、バックプロパゲーションを用いて、前記サブネットワークの結合重みおよびバイアスベクトルに関するパフォーマンスの導関数が得られる、方法。
［適用例１３］
適用例１０ないし１２のいずれか一項に記載の方法であって、ネットワーク応答が、
入力データを再スケーリングする工程（９０５）と、
最初の中間結果を計算する工程（９１０）と、
ベクトルａｒｇ１を関数ａｒｇ２に通す工程（９１５）と、
後続の中間結果を計算する工程（９２０）と、
最終結果を再スケーリングする工程（９２５）と、
を含む、方法。
［適用例１４］
適用例１０ないし１３のいずれか一項に記載の方法であって、受信信号強度（ＲＳＳＩ）の読み取り欠損および極端な変動を重心ｋ平均法フィルタで処理する工程を備える、方法。
［適用例１５］
適用例１０ないし１４のいずれか一項に記載の方法であって、受信信号強度（ＲＳＳＩ）の極端な変動をメジアンフィルタで処理する工程を備える、方法。
［適用例１６］
適用例１０ないし１５のいずれか一項に記載の方法であって、受信信号強度（ＲＳＳＩ）の極端な変動を埋め戻しで処理する工程を備える、方法。
［適用例１７］
適用例１０ないし１６のいずれか一項に記載の方法であって、前記サブネットワークの出力の各々の計算は、
入力データを中心化および正規化する工程（８０５Ａ）と、
ネットワーク応答を計算する工程（８０１Ｂ）と、
サブネットワーク出力タグ位置をネットワーク出力ベクトルから計算する工程（８１５Ｃ）と、
を含む、方法。
［適用例１８］
適用例１０ないし１７のいずれか一項に記載の方法であって、サブネットワーク変換式が、
ｌ＝ｎｎｉ（ｒｓｓｉｉ）を含む、方法。
［適用例１９］
適用例１０ないし１８のいずれかに記載の方法であって、ニューラル層応答が、
ｓｉ＝ｆ（Ｗｉ−１，ｉｓｉ−１＋ｂｉ）を含む、方法。
［適用例２０］
ニューラルネットワークの重複サブネットワークによって少なくとも１つの物体のリアルタイム位置決定を行うためのスケーラブルなシステムであって、
前記少なくとも１つの物体の各々に関連付けられた少なくとも１つの送信タグ（１１０）を備え、
前記重複サブネットワークは、柔軟なトポロジを有し、先験的に規定され、相互に関連し、レシーバ（２０５）を備えた複数のサブネットワーク位置分類子を備え、
前記システムは、
前記少なくとも１つの送信タグから少なくとも１つの送信を前記レシーバの少なくとも１つで受信し、
ニューラルネットワークの前記重複サブネットワークにおける前記少なくとも１つの受信された送信を少なくとも１つの中央処理／命令ステーション（１１５）で処理し、
前記サブネットワークの内の１サブネットワーク（３１０）のみが、前記少なくとも１つの物体の位置の出力に関与し、
前記スケーリングが、前記複数のサブネットワークの内の１サブネットワークのみを、前記少なくとも１つの物体の各々の前記位置の出力に関与させることによって達成される、システム。
【図１】
0006045747.tif 000013
【図２】
0006045747.tif 000014
【図３】
0006045747.tif 000015
【図４】
0006045747.tif 000016
【図５】
0006045747.tif 000017
【図６】
0006045747.tif 000018
【図７】
0006045747.tif 000019
【図８】
0006045747.tif 000020
【図９】
0006045747.tif 000021
【図１０】
0006045747.tif 000022