(57)【要約】【課題】必要とするデータ量を抑制しつつ、位置精度を向上させることが可能な測位技術を提供する。【解決手段】  測位システム（１）は、各々が、波源から受信した信号波の受信強度を示すデータを出力する、４台または５台以上の複数の受信機（２０−Ａ等）と、各受信機からの信号波の受信強度を示すデータから、波源の推定位置を示すデータを出力する演算回路（３１）とを有する。演算回路は、学習済みのニューラルネットワークＮＮ（５２）および変換器（５３）を有している。複数の第１パラメータの各々は、所定の受信機の受信強度と他の受信機の各受信強度との比である。演算回路は、信号波の受信強度を示すデータから複数の第１パラメータを算出してニューラルネットワークに入力し、複数の第２パラメータを出力し、複数の第２パラメータを変換器に入力して、変換器の出力を波源の推定位置として出力する。【選択図】図１１
2020051922.tif 000002
【特許請求の範囲】
【請求項１】
波源から出力された信号波をそれぞれ受信する４台または５台以上の複数の受信機であって、各々が、前記波源から出力された信号波を受信して前記信号波の受信強度を示すデータを出力する複数の受信機と、
前記信号波の受信強度を示すデータから、前記波源の推定位置を示すデータを出力する演算回路と
を有する測位システムであって、
前記演算回路は、
複数の第１パラメータを入力とし、複数の第２パラメータを出力とする学習済みのニューラルネットワーク、および、複数の第２パラメータを前記波源の推定位置を示すデータに変換する変換器を有しており、前記複数の第１パラメータの各々は、所定の受信機の受信強度と他の受信機の各受信強度との比であり、
前記複数の受信機の各々から、前記信号波の受信強度を示すデータを受け取り、
前記信号波の受信強度を示すデータから前記複数の第１パラメータを算出し、
前記複数の第１パラメータを前記ニューラルネットワークに入力して、前記複数の第２パラメータを出力し、
前記複数の第２パラメータを前記変換器に入力して、前記変換器の出力を前記波源の推定位置として出力する、測位システム。
【請求項２】
前記変換器は、予め用意された、前記複数の第２パラメータと座標値とが対応付けられた変換テーブルを有している、請求項１に記載の測位システム。
【請求項３】
前記変換テーブルには、複数のレコードが格納されており、
各レコードは、前記複数の第２パラメータの各値が記述されたフィールドと、座標値が記述されたフィールドとを対応付ける、請求項２に記載の測位システム。
【請求項４】
前記ニューラルネットワークは、前記測位システムの設置環境で行われた機械学習により、前記ニューラルネットワークへの入力から出力の間に行われる演算方法を規定する演算規則と、前記演算規則にしたがった演算で利用される複数の重み付け係数との組み合わせとして構築されており、
前記設置環境は、ビーコン信号を出力する、位置が既知の電子機器と、複数の受信機を有する環境であり、
前記電子機器に前記ビーコン信号を出力させ、
所定の受信機、および、他の受信機の各々、に、前記ビーコン信号を受信させるとき、
前記機械学習は、
前記所定の受信機の受信強度と他の受信機の各受信強度との比の値から計算された前記複数の第１パラメータを入力として受け取り、
前記ニューラルネットワークから出力された複数の第２パラメータの各々が、予め用意された複数の基準パラメータの各々に近付くよう、前記複数の重み付け係数を変更することによって行われる、請求項１から３のいずれかに記載の測位システム。
【請求項５】
前記波源は、前記信号波として電磁波または音波を放射する、請求項１から４のいずれかに記載の測位システム。
【請求項６】
前記演算回路が算出した前記波源の座標を出力するインタフェースをさらに備えた、請求項１から５のいずれかに記載の測位システム。
【請求項７】
測位システムに用いられる測位装置であって、
前記測位システムは、
波源から出力された信号波をそれぞれ受信する４台または５台以上の複数の受信機であって、各々が、前記波源から出力された信号波を受信して前記信号波の受信強度を示すデータを出力する複数の受信機と、
前記信号波の受信強度を示すデータから、前記波源の推定位置を示すデータを出力する演算回路と、
通信回路と
を有し、
前記演算回路は、
複数の第１パラメータを入力とし、複数の第２パラメータを出力とする学習済みのニューラルネットワーク、および、複数の第２パラメータを前記波源の推定位置を示すデータに変換する変換器を有しており、前記複数の第１パラメータの各々は、所定の受信機の受信強度と他の受信機の各受信強度との比であり、
前記複数の受信機の各々から、前記信号波の受信強度を示すデータを受け取り、
前記信号波の受信強度を示すデータから前記複数の第１パラメータを算出し、
前記複数の第１パラメータを前記ニューラルネットワークに入力して、前記複数の第２パラメータを出力し、
前記複数の第２パラメータを前記変換器に入力して、前記変換器の出力を取得し、
取得した前記変換器の出力を、前記通信回路を介して前記波源の推定位置として出力する、測位装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、測位システムおよび測位装置に関する。
【背景技術】
【０００２】
従来、対象物を測位する測位システムの開発が行われてきた（たとえば特許文献１および２）。
【０００３】
近年、Bluetooth（登録商標。以下同じ。）規格を利用した測位システムが普及しつつある。より具体的には、Bluetooth規格のうち、Bluetooth  Low  Energy（以下「ＢＬＥ」と略記する。）規格の信号を発生させる信号発生器を利用して、当該信号発生器の位置を推定するＢＬＥ測位システムが普及しつつある。
【０００４】
ＢＬＥ測位システムの多くは３点測位アルゴリズムによる計測処理を採用している。３点測位アルゴリズムによる計測処理は、３つの受信機の各々の設置位置を示す座標情報、および、信号発生器と各受信機との各距離の情報を用いる。測位システムは、所定の演算を行い、３元連立非線形方程式の解として信号発生器の絶対位置座標を出力する。
【０００５】
３点測位アルゴリズムでは３元連立非線形方程式の解を算出することが必要となる。しかしながら３元連立非線形方程式を解くことには困難が伴う。そのため、フットプリント方式が用いられ得る。
【０００６】
フットプリント方式では、位置と測定値とが対応付けられたテーブルが予め用意され、テーブルを参照することによって実際の測定値から現在の位置を推定する技術である。フットプリント方式には、測位時にはテーブルを参照するのみでよく、複雑な計算を必要としない、というメリットがある。
【０００７】
テーブルは以下のように作成される。まず、位置Ａ１に信号発生器を置き、他の３つの位置Ｂ１〜Ｂ３にそれぞれ３つの受信機を置く。そして信号発生器が出力した信号を各受信機に受信させ、受信信号パワーを取得する。各受信機から得られた受信信号パワーの組は、信号発生器が位置Ａ１に存在する場合の指標になる。そこで、位置Ａ１と受信信号パワーの組とを対応付ける。続いて、信号発生器の位置を位置Ａ１からＡ２に変えて再び受信信号パワーの組を取得し、位置Ａ２と受信信号パワーの組とを対応付ける。このように、測位したい全ての位置と受信信号パワーの組とを対応付けてテーブルを作成する。これにより、ある受信信号パワーの組が得られると、テーブルを参照することにより、信号発生器が存在する位置を求めることができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１２−１９８０６６号公報
【特許文献２】特開平１１−１６０４０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
フットプリント方式では、テーブルを作成するために膨大な量のデータが必要になる。まず、位置精度を高めようとするほど、より多くの受信信号パワーの組の取得が必要である。さらに、テーブルは、信号発生器の送信レベルの違いも考慮して作成する必要がある。つまり、位置が同じであっても、想定される送信信号パワーが変わり得るのであれば、送信信号パワー毎に受信信号パワーの組を取得する必要がある。データ量を減らすため、測位毎に送信信号パワーをキャリブレーションすることも考えられるが、新たな手間や測位の煩雑さを招く。
【００１０】
本願の、限定的ではない例示的なある実施形態は、必要とするデータ量を抑制しつつ、位置精度を向上させることが可能な測位技術を提供する。
【課題を解決するための手段】
【００１１】
本発明の例示的な実施形態によれば、測位システムは、波源から出力された信号波をそれぞれ受信する４台または５台以上の複数の受信機であって、各々が、前記波源から出力された信号波を受信して前記信号波の受信強度を示すデータを出力する複数の受信機と、前記信号波の受信強度を示すデータから、前記波源の推定位置を示すデータを出力する演算回路とを有する測位システムであって、前記演算回路は、複数の第１パラメータを入力とし、複数の第２パラメータを出力とする学習済みのニューラルネットワーク、および、複数の第２パラメータを前記波源の推定位置を示すデータに変換する変換器を有しており、前記複数の第１パラメータの各々は、所定の受信機の受信強度と他の受信機の各受信強度との比であり、前記複数の受信機の各々から、前記信号波の受信強度を示すデータを受け取り、前記信号波の受信強度を示すデータから前記複数の第１パラメータを算出し、前記複数の第１パラメータを前記ニューラルネットワークに入力して、前記複数の第２パラメータを出力し、前記複数の第２パラメータを前記変換器に入力して、前記変換器の出力を前記波源の推定位置として出力する。
【発明の効果】
【００１２】
本開示の例示的な実施形態によれば、必要とするデータ量を抑制しつつ、位置精度を向上させることが可能な測位技術を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本開示の例示的な実施形態にかかる測位システム１の構成を模式的に示す図である。
【図２】図２は、測位システム１が導入された環境の第一の例を示す図である。
【図３】図３は、測位システム１が導入された環境の第二の例を示す図である。
【図４】図４は、図２および図３における、棚２２および２３を含む４つの棚を示す図である。
【図５】図５は、棚２５に載置された商品２４ａに貼り付けられた信号発生器１０を示す図である。
【図６】図６は、棚２２および２３の間を走行する自走車両２４ｂに実装された信号発生器１０を示す図である。
【図７】図７は、棚２２および２３の間を歩行する買い物客のスマートフォン２４ｃに実装された信号発生器１０を示す図である。
【図８】図８は、信号発生器１０のハードウェアの構成を示す図である。
【図９】図９は、測位装置３０のハードウェアの構成を示す図である。
【図１０】図１０は、波源位置Ｐと各受信機との位置関係を示す図である。
【図１１】図１１は、ＣＰＵ３１の処理ブロックの構成を示す図である。
【図１２】図１２は、ＣＰＵ３１の処理手順を示すフローチャートである。
【図１３】図１３は、ＤＮＮ５２のモデルを模式的に示す図である。
【図１４】図１４は、例示的なニューロン７２の入力ｇ１〜ｇ３および出力ｈ１を示す図である。
【図１５】図１５は、変換器５３の変換テーブル６０の例を示す図である。
【図１６】図１６は、ＤＮＮの構築方法を模式的に示す図である。
【図１７】図１７は、波源位置Ｐから出力された信号波が各受信機２０−Ｋ（Ｋ：Ａ，Ｂ，Ｃ，Ｄ，Ｅ）に到達した時刻ｔｋ（ｋ：ａ，ｂ，ｃ，ｄ，ｅ）を模式的に示す波形図である。
【図１８】図１８は、各受信機２０−Ｋからの出力された信号（出力信号）の時間波形の例を模式的に示す図である。
【発明を実施するための形態】
【００１４】
上述したとおり、３点測位アルゴリズムにニュートン法を利用した測位システムでは、適正な解に収束しないことがあるほか、さらに、別の問題も存在し得る。すなわち、信号発生器と各受信機との各距離の情報の取得方法である。
【００１５】
信号発生器と各受信機との各距離の情報は通常は既知ではない。直接、距離情報を得ることはできないため、ＢＬＥ測位システムでは、各受信機が受信した信号発生器からの信号の受信信号レベルを利用する。具体的には、事前に信号発生器と受信機とを１ｍ離れた距離に置き、その時の受信パワー値 Ｐ＿ｏ を予め取得しておく。その後、信号発生器から信号を受信すると、その時の受信信号レベルＰ＿ｉを利用して計測時の信号発生器と受信機との距離情報を得る。具体的には、計測時の距離情報（ｒ＿ｉ）2＝Ｐ＿ｏ／Ｐ＿ｉにより、求めることができる。
【００１６】
しかしながら、上述の処理には複数の問題が内包されている。まず、受信パワー値 Ｐ＿ｏ を予め取得しておくことが現実的には困難である場合がある。たとえば、施設内を移動する買い物客の位置を推定するために測位システムが用いられる場合を想定する。買い物客が所有する電子機器（たとえばスマートフォン）を信号発生器とすると、全ての電子機器を受信機の１ｍの位置に設置して受信パワー値を事前に求めることは現実的ではない。
【００１７】
利用される信号発生器の種類や数が予め決まっている施設（たとえば工場）内に設置された測位システムの場合には、上述した１ｍの位置の受信パワー値を事前に求めることが可能な場合はある。しかしながら、バッテリの残量等に起因して、事前計測時の信号発生器の送信出力と、測位時の信号発生器の送信出力とが異なる場合があり得る。受信機についても、事前計測時と測位時とで計測状況が異なる場合があり得る。テーブルを用いるフットプリント方式で測位を行う場合には、信号発生器の送信出力毎に受信強度が必要になるため、テーブルのデータ量は極めて多くなり得る。また、測位システムを設置可能な環境の制約も大きい。
【００１８】
本発明者は、演算処理の負荷を軽減し得る測位アルゴリズムについて検討を重ねた。その結果、各受信機の受信強度と、人工ニューラルネットワークとを利用して測位を行う測位システムを完成させるに至った。本発明者は、多層（例えば４層以上）の人工ニューラルネットワークであるディープニューラルネットワークを利用した。なお、以下では「人工」の記載は省略する。またディープニューラルネットワークを「ＤＮＮ」と記述することがある。
【００１９】
本開示による測位システムでは、４台または５台以上の複数の受信機で、波源から出力された信号波をそれぞれ受信する。波源は、電磁波、音波等の信号波を出力する信号発生器である。
【００２０】
各受信機は、波源から出力された信号波を受信して信号波の受信強度を示すデータ（受信強度データ）を出力する。演算回路には、学習済みのニューラルネットワークが構築されている。演算回路は、複数の受信機の各々から信号波の受信強度データを受け取り、所定の受信機の受信強度と他の受信機の各受信強度との比の値の組み合わせ（後述のパラメータβｂ〜βｅ）を演算し、ＤＮＮに入力する。なおパラメータβｂ〜βｅを算出する演算回路を、「パラメータ演算器」と呼ぶことがある。
【００２１】
ＤＮＮは、所定の受信機の受信強度と他の受信機の各受信強度との比の値の組み合わせから、本来想定される比の値の組み合わせ（後述のパラメータγｂ〜γｅ）を出力する。「本来想定される比の値の組み合わせ」とは、最も確からしいと推定される比の値の組み合わせを意味する。ＤＮＮに入力される一組のパラメータは、実際に検出された受信強度から算出される。検出器の感度、検出結果を数値に変換する際の変換精度、電波環境の僅かな変化等の影響により、各受信機の位置が一定であったとしても、算出される一組のパラメータの各値は一定ではなく検出時刻毎に変動し得る。そのような変動が生じたとしても、各受信機の位置が一定であれば特定の値を有するパラメータの組み合わせが存在し得る。そのようなパラメータの組み合わせを、本明細書では「最も確からしい」と表現している。
【００２２】
ＤＮＮの出力である一組のパラメータは、変換器に入力される。
【００２３】
変換器は、ＤＮＮから取得した一組のパラメータを、変換テーブルを用いて推定座標値に変換する演算器である。演算器の一例はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のプロセッサまたは演算処理回路である。変換テーブルは、一組のパラメータの各値が記述されたフィールドと、二次元または三次元の位置を示す一組の座標値が記述されたフィールドとを対応付けて、１つのレコードとして格納している。テーブルのデータ量（総レコード数）は、推定したい位置の精度に依存する。
【００２４】
一般に、波源の位置が変わるとパラメータの組み合わせは変わる。逆も同様である。すなわち、パラメータの組み合わせが異なる場合には、波源の位置が異なる。測位システムの推定精度は、変換テーブルの座標値の組の数、より具体的には、隣り合う識別可能な２つの波源位置の距離（座標値の差分の大きさ）に依存する。
【００２５】
なお、変換テーブルを用いた位置推定方法は、本明細書の冒頭で説明した「フットプリント方式」とは異なることに留意されたい。「フットプリント方式」では、各受信機によって測定された受信信号パワーの組と位置とを対応付けたテーブルが用いられる。ここで言う「受信信号パワー」は測定値そのものである。よって、「受信信号パワー」が変わる毎に、受信信号パワーと、当該受信信号パワーに対応する位置とを関係づける必要がある。「受信信号パワー」は、時間・環境に応じても変化し得るし、波源の送信パワーによっても変化する。つまり、位置が同じであっても、受信信号パワーに応じたテーブルを用意する必要がある。フットプリント方式のテーブルのデータ容量は、精度を高めようとすればするほど増加し得る。
【００２６】
一方、本実施形態では、ＤＮＮから出力された一組のパラメータと、位置とを対応付けた変換テーブルを採用する。後述のように、ＤＮＮに入力される一組のパラメータは、波源位置から所定の受信機までの距離と、波源位置から他の受信機までの距離の逆二乗比を表し、ＤＮＮから出力される一組のパラメータは、ＤＮＮに入力された一組のパラメータの組み合わせから得られた、「最も確からしい」パラメータの組み合わせである。したがって、そのような「最も確からしい」パラメータの組み合わせに対し、１つの位置を対応付けるような変換テーブルを設ければよい。変換器から出力された推定座標値が、測位システムが推定した座標値として出力される。
【００２７】
ニューラルネットワークは、ニューラルネットワークへの入力から出力の間に行われる演算の規則と、当該演算に用いられる複数の重み付け係数との組み合わせとして構築され得る。演算の規則および複数の重み付け係数の総数は、ニューラルネットワークの規模に比例するものの有限である。変換器およびニューラルネットワークを組み合わせたとしても、従来のフットプリント方式のテーブルよりもデータ量を抑制することができる。また、逆行列を求める等の負荷の大きい演算を行うこともない。よって、測位システムの構築および運用に要する費用を抑制できる。
【００２８】
本明細書では、ニューラルネットワークの出力（一組のパラメータ）が変換器への入力として用いられ、変換器の出力が、測位システムによって推定された座標値として採用される。ニューラルネットワークと変換器との２段構成にした理由は、測位システムの推定精度を高めるためである。ＤＮＮを利用して、変換器に入力される一組のパラメータの変動（ぶれ）をなくし、最も確からしいパラメータの組み合わせを利用して変換器の変換テーブルを参照する。これにより、波源の正しい推定座標値（推定座標値）を得ることが可能になった。
【００２９】
本実施形態では、ニューラルネットワークの入力と出力とは同じ要素数（次元数）を有するとして説明する。ただし、要素数が同じであることは必須ではない。
【００３０】
本実施形態では、ニューラルネットワークの後段に変換器が設けられ、変換テーブル上の一組の座標値を出力する。したがって、変換器には、未知のパラメータの組が入力されることはない。学習時にニューラルネットワークへの入力が偏ってしまうと、過学習が発生することはあり得る。本実施形態では、固定的に設けた測位器が存在するため、過学習などによりシステムが破綻しても回復しやすい。なお「測位器」とは、上述の変換器のみ、またはパラメータ演算器および変換器の組み合わせを総称する概念である。
【００３１】
以下、添付の図面を参照しながら、測位システムおよび測位装置の構成例を説明する。ただし、必要以上に詳細な説明は省略する場合がある。たとえば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。なお、本発明者は、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。以下の説明においては、同一または類似する構成要素には、同一の参照符号を付している。
【００３２】
図１は、本開示の例示的な実施形態にかかる測位システム１の構成を模式的に示す。測位システム１は、信号発生器１０と、複数の受信機２０−Ａ、２０−Ｂ、・・・、２０−Ｎ（Ｎ：４または５以上の整数）と、測位装置３０とを備えている。
【００３３】
測位システム１の測位装置３０は、信号発生器１０から出力された信号波を利用して、信号発生器１０の位置を推定する。
【００３４】
信号発生器１０は、内蔵電池または外部から供給される電力を利用して信号を生成し、信号波として出力する電子回路である。信号発生器１０は、信号波として電磁波または音波を放射する。本明細書では、信号発生器１０を「波源」と呼ぶこともある。本明細書では、信号発生器１０は、ＢＬＥ規格に準拠する２．４ＧＨｚ帯域の電磁波を出力するとして説明する。
【００３５】
信号発生器１０は、測位対象が人である場合には、人が所有する電子機器に内蔵され得る。または、信号発生器１０は、測位対象が物である場合には当該物に貼り付けられてもよいし、当該物に内蔵されてもよい。
【００３６】
測位システム１は、測位システム１が設置された空間内で、信号発生器１０の位置を推定する。「空間」とは、本実施形態では主として三次元空間を想定している。図には、Ｘ軸、Ｙ軸およびＺ軸が示されている。ただし、「空間」は二次元空間であってもよい。たとえば、床面を走行する自走車両を測位する場合には、測位システム１は、床面である二次元空間上において、信号発生器１０の位置を推定してもよい。後述のように、測位システム１が二次元空間の位置を推定する場合には、受信機は少なくとも４台存在すればよい。測位システム１が三次元空間の位置を推定する場合には、受信機は少なくとも５台存在すればよい。
【００３７】
複数の受信機２０−Ａ、２０−Ｂ、・・・、２０−Ｎは、各々が、アンテナ装置（図示せず）を内蔵し、当該アンテナ装置を用いて波源から出力された信号波を受信する。アンテナ装置は、上述のＢＬＥ規格に準拠する電磁波を受信可能である。各受信機は、信号波の受信強度データを出力する。なお、アンテナ装置の構成は公知であるため、具体的な構成の説明は省略する。なお、信号発生器１０が音波を発生させる場合には、各受信機はマイクを有する装置であり得る。
【００３８】
測位装置３０は演算回路３１を有している。演算回路３１は、複数の受信機２０−Ａ、２０−Ｂ、・・・、２０−Ｎの各々から信号波の受信強度データを受け取って所定の演算を行い、波源の位置を示す各座標成分を算出する。演算の詳細は後に詳述する。
【００３９】
図２は、測位システム１が導入された環境の第一の例を示す。図２の例では、測位システム１は、物が載置される棚２２および２３等を有する工場、書店等に構築されている。複数の受信機の各々の位置が、「●」によって示されている。複数の受信機は、概ね分散して配置されている。なお、図２はＸＹ平面図であり、ｚ軸方向の関係は示されていない。
【００４０】
本実施形態では、複数の受信機は、予め定められた位置に設置されているとする。ある基準位置Ｏを原点とし、図示されるような３つの軸（Ｘ軸、Ｙ軸およびＺ軸）を定めたとき、各受信機の位置は、Ｘ軸、Ｙ軸およびＺ軸の各値によって表すことができる。以下では、受信機２０−Ａの座標をＡ（ｘa，ｙa，ｚa）などと表記し、ｘa，ｙaおよびｚaをそれぞれ「ｘ座標」「ｙ座標」「ｚ座標」と呼ぶことがある。図面上に例示された受信機２０−Ｊのｘ座標はｘJ、ｙ座標はｙJ、ｚ座標はｚJである。
【００４１】
図３は、測位システム１が導入された環境の第二の例を示す。図面から理解されるように、図３では、複数の受信機が環境内の一部の区画Ｒにまとまって設けられている。なお図３もまたＸＹ平面図であり、ｚ軸方向の関係は示されていない。図３の構成は、一体化された複数の受信機のユニットを予め製造しておき、測位システム１の導入環境の天井部分に固定することによって容易に実現される。
【００４２】
本実施形態にかかる測位処理は、図２および図３のいずれの態様でも利用可能である。
【００４３】
次に、図４から図７を参照しながら、測位システム１における測位の対象を説明する。
【００４４】
信号発生器１０は、固定された位置に設置された物に設けられてもよいし、位置が変化し得る物、たとえば自走車両、持ち運び可能な電子機器に設けられてもよい。持ち運び可能な電子機器は、たとえば、携帯電話、スマートフォン、電子タグ装置である。
【００４５】
図４は、図２および図３における、棚２２および２３を含む４つの棚を示す。それぞれの棚は、物を載置するための複数の棚２５を有している。本実施形態では、複数の棚２５はＹ軸方向およびＺ軸方向に複数存在し得るとする。
【００４６】
図５は、棚２５に載置された商品２４ａに貼り付けられた信号発生器１０を示す。信号発生器１０から出力された信号波は、４または５台以上の受信機によって受信される。図５では、受信機２０−Ｓおよび２０−Ｔが、信号発生器１０から出力された信号波をそれぞれ受信している状態が示されている。測位システム１は、商品２４ａが載置された位置を推定し得る。
【００４７】
図６は、棚２２および２３の間を走行する自走車両２４ｂに実装された信号発生器１０を示す。本例でも、受信機２０−Ｓおよび２０−Ｔが、信号発生器１０から出力された信号波をそれぞれ受信している状態が示されている。測位システム１は、自走車両２４ｂの位置をリアルタイムで推定し得る。
【００４８】
図７は、棚２２および２３の間を歩行する買い物客のスマートフォン２４ｃに実装された信号発生器１０を示す。本例でも、受信機２０−Ｓおよび２０−Ｔが、信号発生器１０から出力された信号波をそれぞれ受信している状態が示されている。測位システム１は、買い物客の位置をリアルタイムで推定し得る。
【００４９】
図５〜図７の例では、信号発生器１０は１つだけ示されているが、複数存在してもよい。測位システム１は、並列的に処理を行うことにより、受信した信号波に含まれる、各信号発生器１０を一意に特定する識別情報から各信号発生器１０の位置を推定することができる。
【００５０】
次に、信号発生器１０および測位装置３０の構成を説明する。
【００５１】
図８は、信号発生器１０のハードウェアの構成を示す。信号発生器１０は、高周波信号を生成するためのＩＣ１１と、記憶装置１２と、アンテナ１４とを有する。記憶装置１２はたとえばフラッシュＲＯＭであり、信号発生器１０毎に一意の識別情報１３が格納されている。ＩＣ１１は、アンテナ１４を利用して識別情報を周期的に送信する。
【００５２】
図９は、測位装置３０のハードウェアの構成を示す。
【００５３】
測位装置３０は、ＣＰＵ３１と、メモリ３２と、通信回路３３とを有しており、これらは内部バスで接続されている。ＣＰＵ３１は、後述の処理により、個々の信号発生器１０の位置を推定し、推定した位置を示す位置情報を生成する演算回路である。ＣＰＵ３１は、ＦＰＧＡ（field-programmable gate array）やＡＳＩＣ（application specific integrated circuit）などのハードウェアであってもよい。ＣＰＵ３１がＦＰＧＡまたはＡＳＩＣである場合、ＣＰＵ３１は、複数の重み付け係数を用いた演算の規則が実装された集積回路素子であり得る。また、ＣＰＵ３１は、近年のＦＰＧＡのように、複数の重み付け係数を記憶したメモリおよび上述の演算の規則に従った演算を行う論理ブロック群を有していてもよい。メモリ３２は、たとえばＤＲＡＭであり、ＣＰＵ３１の処理に関連して利用されるワークメモリである。
【００５４】
通信回路３３は、たとえば、１または複数の通信コネクタを有する通信回路である。通信コネクタは、入力インタフェース３４ａ、および、波源の座標のデータを出力する出力インタフェース３４ｂを含む。入力インタフェース３４ａおよび出力インタフェース３４ｂは一体化され１つの通信コネクタとして実装されてもよい。
【００５５】
入力インタフェース３４ａは、いわゆる信号入力端子であり、受信機２０−Ａ〜２０−Ｎの各々から高周波電気信号を受信する。高周波電気信号は、各受信機が受信した電磁波（信号波）を変換して生成された信号である。
【００５６】
出力インタフェース３４ｂは、たとえばイーサネット（登録商標）規格の有線通信を行う通信端子であり、波源の座標のデータを出力する。波源の座標のデータに代えて、出力インタフェース３４ｂは、波源の座標を画像化した映像信号を出力してもよい。このとき、出力インタフェース３４ｂは、ＤＶＩ端子等の画像信号の出力端子であり得る。図９には、表示装置３５と接続された出力インタフェース３４ｂが示されている。
【００５７】
次に、本発明者が完成させた、本実施形態による測位アルゴリズムを説明する。
【００５８】
三次元空間での測位のため、以下では５台の受信機を利用する。二次元空間での測位の場合には、４台の受信機があればよい。上述のとおり、受信機２０−Ａの位置Ａを（ｘa，ｙa，ｚa）などと表す。また、波源位置Ｐから受信機２０−Ａまでの距離をｒaなどと表す。波源（信号発生器１０）の位置Ｐの座標を（ｘ，ｙ，ｚ）と表す。
【００５９】
図１０は、波源位置Ｐと各受信機との位置関係を示している。図１０には、波源位置Ｐ、各受信機の位置Ａ〜Ｄが示されている。また、図１０には基準位置として原点Ｏが示されている。原点Ｏは任意に定め得る。各受信機の位置は、原点Ｏの位置（０，０，０）を基準として決定されている。
【００６０】
波源位置Ｐと受信機２０−Ａの位置Ａとの間には以下の関係が成り立つ。
【数１】
2020051922.tif 000003
【００６１】
同様に、波源位置Ｐと他の各受信機の位置との間にも以下の関係が成り立つ。
【数２】
2020051922.tif 000004
【数３】
2020051922.tif 000005
【数４】
2020051922.tif 000006
【数５】
2020051922.tif 000007
【００６２】
ここでパラメータβb〜βeを導入する。パラメータβbは、波源位置Ｐから受信機２０−Ａまでの距離ｒaに対する、波源位置Ｐから受信機２０−Ｂまでの距離ｒbの大きさの二乗である。よって以下のように表記される。
（数６）
βb＝（ｒb／ｒa）2
【００６３】
同様に、βc、βdおよびβeも、波源位置Ｐから受信機２０−Ａまでの距離ｒaと、波源位置Ｐから各受信機までの距離を用いて、まとめて以下のように表すことができる。
（数７）
βc＝（ｒc／ｒa）2
βd＝（ｒd／ｒa）2
βe＝（ｒe／ｒa）2
【００６４】
数６および７を利用して数２〜５を変形すると、以下の数８が得られる。
【数８】
2020051922.tif 000008
【００６５】
数１および数８の各式を展開して変形すると、以下の式が得られる。
【数９】
2020051922.tif 000009
【００６６】
いま、数９に含まれる未知数を、以下のように置き換える。
【数１０】
2020051922.tif 000010
【００６７】
上述の変数の置き換えは、二次の項（非線形項）を一次の項（線形項）に変更する操作である。つまり非線形方程式を線形化することに相当する。
【００６８】
すると、数９は行列を用いて以下のように表現することができる。
【数１１】
2020051922.tif 000011
【００６９】
数１１は行列Ｑ、列ベクトルｐおよびｓを用いて以下のように表現できる。
（数１２）
Ｑ・ｐ＝ｓ
【００７０】
ベクトルｐに含まれる要素のうち、ｘ、ｙおよびｚが、波源Ｐの位置を表す未知数である。行列Ｑの逆行列をＱ-1と表すと、ベクトルｐは以下の式により求めることができる。（数１３）
ｐ＝Ｑ-1・ｓ
【００７１】
数１３は具体的には以下のように表現される。
【数１４】
2020051922.tif 000012
【００７２】
数１３および数１４が成立する条件として、行列Ｑの逆行列が存在すること、換言すれば、行列Ｑが正則正方行列であることが必要である。そこで、説明の便宜上、以下では逆行列Ｑ-1が存在するとして説明する。
【００７３】
計算機を用いて逆行列を計算する場合、演算負荷は比較的大きい。また、以下に説明するように、本発明者は、演算負荷をより軽減してより高速に動作することが可能な新たな技術をなすに至った。
【００７４】
次に、パラメータβb〜βeの取り扱いを説明する。パラメータβb〜βeは、受信機２０−Ａ〜２０−Ｅの受信強度から求めることができる。
【００７５】
まず、フリスの伝達公式によれば、下記の式が成り立つことが知られている。
（数１５）
Ｐｒ＝（λ／４πｒ）2・Ｐｔ・Ｇｔ・Ｇｒ
【００７６】
ここでＰｒは受信電力、λは定数、ｒは送信機と受信機との距離、Ｐｔは信号発生器１０の送信電力、Ｇｔは信号発生器１０の送信アンテナ１４（図８）の利得、Ｇｒは受信アンテナの利得である。ここで、ＰｔおよびＧｔは、共通の波源であるから同じ値である。また、受信アンテナの利得Ｇｒは、全ての受信機２０−Ａ〜２０−Ｅで共通化しておくことにより、同じ値であると仮定することができる。
【００７７】
受信機２０−Ａ〜２０−Ｅの各々波源との関係は以下のように表現できる。なお、受信機２０−Ａ〜２０−Ｅの受信強度をＰａ〜Ｐｅと表す。
（数１６）
Ｐａ＝（λ／４πｒa）2・Ｐｔ・Ｇｔ・Ｇｒ
Ｐｂ＝（λ／４πｒb）2・Ｐｔ・Ｇｔ・Ｇｒ
Ｐｃ＝（λ／４πｒc）2・Ｐｔ・Ｇｔ・Ｇｒ
Ｐｄ＝（λ／４πｒd）2・Ｐｔ・Ｇｔ・Ｇｒ
Ｐｅ＝（λ／４πｒe）2・Ｐｔ・Ｇｔ・Ｇｒ
【００７８】
この数式と、パラメータβb〜βeの定義式とを用いると、以下の数１７が得られる。
（数１７）
βb＝Ｐａ／Ｐｂ
βc＝Ｐａ／Ｐｃ
βd＝Ｐａ／Ｐｄ
βe＝Ｐａ／Ｐｅ
【００７９】
数１７から明らかなように、パラメータβb〜βeは、受信機２０−Ａ〜２０−Ｅの各受信強度を用いて具体的に求めることができる。
【００８０】
また、数１１の右辺は、基準位置である原点Ｏから、各受信機までの距離の二乗である。各受信機の位置は予め定められている。よって、原点Ｏからの距離の二乗もまた予め取得しておくことができる。
【００８１】
数１４は、パラメータβb〜βeと波源の位置（ｘ，ｙ，ｚ）とが相互に関連していることを示している。より端的には、数１４は、パラメータβb〜βeが得られれば波源の位置座標（ｘ，ｙ，ｚ）が得られることを示唆している。この示唆から、本発明者は、まず、パラメータβb〜βeを入力とし、波源の位置（ｘ，ｙ，ｚ）を出力とする測位エンジンを構築し得ることに想到した。ただし、数１４を直接利用する形態では、逆行列Ｑ-1が存在する条件を満足する必要がある。さらに逆行列Ｑ-1の演算負荷が比較的大きい。
【００８２】
そこで本発明者は、演算負荷を低減させつつ、波源位置の推定精度を高くすることが可能な測位システムの構築を試みた。具体的には、本発明者は、パラメータβを入力として、２段階の処理を経て波源の位置を推定する測位システムの構築を試みた。１段階目の処理は、ニューラルネットワークを用いてパラメータβの組み合わせ含まれる誤差を吸収した別個のパラメータγの組み合わせを求める処理ある。２段階目の処理は、ニューラルネットワークの出力を用いて変換テーブルを参照して、波源の位置を推定する処理である。
【００８３】
１段階目および２段階目の処理の演算負荷はいずれも、逆行列を求める演算負荷と比較すると十分小さい。本実施形態では、ニューラルネットワークを用いる１段階目の処理の場合、一般的には比較的簡単な積和演算で実装可能であるから負荷が軽く高速に処理可能である。さらに、どのようなパラメータβが入力されたとしても必ず何らかの出力（パラメータγ）が得られる。２段階目の処理は、入力されたパラメータγの組み合わせを利用して変換テーブルを参照し、波源の座標値を抽出する処理であり、複雑な演算は不要である。つまり、逆行列が存在しない条件を考慮する必要がない。逆行列が存在しない条件下であっても、パラメータβと波源の位置とが一意に対応付けられていれば十分である。以下、詳細に説明する。
【００８４】
図１１は、ＣＰＵ３１の処理ブロックの構成を示す。また図１２は、ＣＰＵ３１の処理手順を示すフローチャートである。
【００８５】
ＣＰＵ３１は、パラメータ演算器５１と、学習済みのディープニューラルネットワーク（ＤＮＮ）５２と、変換器５３とを有する。
【００８６】
図１１では、あたかも３つの構成要素が存在するように示されているが、これらは処理の単位を意味しているに過ぎない。図示された数の構成要素が含まれている必要はない。本実施形態では、ＣＰＵ３１は、図１２に示すフローチャートによる処理を行うコンピュータプログラムにしたがって動作する。ＣＰＵ３１は、コンピュータプログラムの命令に従い、時間によって、パラメータ演算器５１として動作し、ＤＮＮ５２として動作し、変換器５３として動作する。処理ブロックから処理ブロックへの矢印は、データが次の演算に利用されることを意味している。
【００８７】
ただし、パラメータ演算器５１、ＤＮＮ５２および変換器５３の少なくとも１つをハードウェアによって実現してもよい。たとえばＦＰＧＡ（Field-programmable gate array）を用いることにより、パラメータ演算器５１、ＤＮＮ５２および変換器５３を１つの集積回路上に実装することが可能である。
【００８８】
以下では説明の便宜のため、パラメータ演算器５１、ＤＮＮ５２および変換器５３が独立に設けられた構成要素であるとして説明する。
【００８９】
パラメータ演算器５１は、受信機２０−Ａ〜２０−Ｅの各々から受信強度の値（受信強度データ）を受け取り、数１７に示す演算を行うことにより、パラメータβｂ〜βｅを算出する（ステップＳ１）。パラメータβｂ〜βｅは、受信機２０−Ａの受信強度と、他の受信機２０−Ｂ〜２０−Ｅの各受信強度との比の値である。算出した各パラメータはＤＮＮ５２に送られる。
【００９０】
ＤＮＮ５２は、パラメータβｂ〜βｅを入力として受け取る（ステップＳ２）。所定の演算を行った後、ＤＮＮ５２はパラメータγｂ〜γｅを出力し、変換器５３に入力する（ステップＳ３）。
【００９１】
変換器５３は、パラメータγｂ〜γｅを入力として受け取り、座標値ｘ，ｙ，ｚを出力する。ＣＰＵ３１は変換器５３の出力を波源の位置を示す座標値として出力する（ステップＳ４）。
【００９２】
以下、ＤＮＮ５２および変換器５３を具体的に説明する。
【００９３】
まず、ＤＮＮ５２を設ける理由は、パラメータ演算器５１の出力に含まれる誤差の影響を是正するためである。当該誤差は、ＤＮＮ５２への入力として用いられるパラメータの導出過程の事情に起因して発生する。より詳しく説明する。
【００９４】
測位システム１が実際の環境に導入された場合、各パラメータβｂ〜βｅは各受信機が測定した受信強度Ｐａ〜Ｐｅに基づいて算出される。受信強度Ｐａ〜Ｐｅは、受信時の条件に依存して変動し得る。たとえば、各受信機２０−Ａ〜２０−Ｅの個々の受信感度、電磁波の吸収、反射等が生じる電波環境、他の受信機との干渉等の影響により、受信強度Ｐａ〜Ｐｅは測定の度に変動し得る。その結果、得られたパラメータβｂ〜βｅに基づいて、仮に変換器５３の変換テーブル６０を参照しても、パラメータβｂ〜βｅの組み合わせと同一の組み合わせが変換テーブル６０に存在しない場合があり得る。パラメータβｂ〜βｅの組み合わせを変換テーブル６０上のパラメータの組と対応付ける場合には、誤差を丸める等の処理が必要になり、本来の波源位置とは異なる位置に対応付けられたパラメータの組に対応付けられてしまい、波源の推定座標値がずれる可能性がある。そこで、本発明者は、そのような推定座標値を是正する目的でＤＮＮ５２を設けることとした。
【００９５】
図１３は、ＤＮＮ５２のモデルを模式的に示している。ＤＮＮ５２は、入力層８０と、中間層８２−１、・・・、８２−Ｎ（Ｎ：２以上の整数）と、出力層８４とを有する。各層は、複数の人工ニューロン（例えば人工ニューロン７０）を有する。以下、「人工ニューロン」という語についても「人工」の記載は省略する。図１３では、複数の中間層が示されているが、これは一例である。中間層は１つであってもよい。
【００９６】
隣接する２つの層のニューロン同士は接続されている。入力層８０側のニューロンの出力が、出力層８４側のニューロンへの入力になる。ニューロン同士のつながりの強さは、重み付け係数によって定義される。
【００９７】
図１４は、例示的なニューロン７２の入力ｇ１〜ｇ３および出力ｈ１を示している。Ｗ（ｋ，１）〜Ｗ（ｋ，３）は重み付け係数である。ニューロン７２では、たとえば以下の演算が行われる。
（数１８）
ｈ１＝Ｗ（ｋ，１）・ｇ１＋Ｗ（ｋ，２）・ｇ２＋Ｗ（ｋ，３）・ｇ３  
【００９８】
（数１８）は、重み付け係数の横ベクトル（Ｗ（ｋ，１），Ｗ（ｋ，２），Ｗ（ｋ，３））と、入力値の縦ベクトルＴ（ｇ１，ｇ２，ｇ３）の内積である。各ニューロンにおいてどのような演算が行われるか、すなわち演算方法、を示す演算規則が、ニューロン毎に予め定められている。上述の内積演算は演算規則の一例である。なお、重み付け係数は典型的には定数であるが、入力値の関数であってもよい。また、数１８の右辺を入力値とする活性化関数の出力を、ｈ１としてもよい。活性化関数は任意であり、たとえばシグモイド関数を採用し得る。
【００９９】
再び図１３を参照する。
【０１００】
入力層８０には、パラメータ演算器５１から出力された一組のパラメータβｂ〜βｅが入力される。各パラメータβｂ〜βｅは、中間層８２−１の各ニューロンに送られ、各ニューロンで演算が行われる。なお図１３では、各ニューロンの入力に加重される重み付け係数の記載は省略されている。
【０１０１】
中間層８２−１の各ニューロンでの演算結果は、次の中間層へ、その後は更に次の中間層へと送られ、中間層８２−Ｍに到達する。出力層８４の各ニューロンで最後の演算が行われ、４つの出力であるパラメータγｂ〜γｅが出力される。
【０１０２】
本実施形態では、変換器５３への入力として利用される一組のパラメータγｂ〜γｅは、変換テーブル６０（図１３）のレコードとして格納された値である。レコードとして格納されていないパラメータの組（未知の組み合わせのパラメータ）は変換器５３への入力として利用されない。ＤＮＮ５２は、入力されたパラメータβｂ〜βｅを、予め定められているパラメータγｂ〜γｅとして出力することができるよう学習されていれば良い。
【０１０３】
次に、変換器５３を説明する。
【０１０４】
図１５は、変換器５３が有する変換テーブル６０の具体例を示している。
【０１０５】
変換テーブル６０は、パラメータフィールド６２−１および座標フィールド６２−２を有している。図１５の例では、パラメータフィールド６２−１および座標フィールド６２−２は、行方向に並べられており、互いに対応付けられている。より具体的に説明すると、パラメータフィールド６２−１中の行方向の一組のフィールド６４−１と、座標フィールド６２−２中の行方向の一組のフィールド６４−２とが対応付けられている。一組のフィールド６４−１および一組のフィールド６４−２は、１つのレコード６４として管理される。なお、図１５では、対応付けを強調するため両矢印を記載しているに過ぎない。対応付ける具体的な方法は任意である。たとえば、対応するフィールド６４−１および６４−２に同じ行番号を付与することによって両者を対応付けることができる。
【０１０６】
一組のパラメータγｂ〜γｅが入力されると、変換器５３は当該一組のパラメータと一致するフィールド６４−２を検索する。当該一組のパラメータと一致するフィールド６４−２が発見されると、変換器５３は、一致したフィールド６４−２を含むレコード６４から、一組の座標値６４−２を抽出する。抽出された一組の座標値は、推定された波源の座標値である。変換テーブル６０を利用することにより、変換器５３は一組のパラメータγｂ〜γｅを波源の座標値に変換することができる。
【０１０７】
なお、変換テーブル６０のデータ量（総レコード数）は、測位システムの推定精度に依存する。たとえば、５０ｃｍの精度で位置を推定するためには、座標フィールド６２−２には、５０ｃｍ未満で座標位置を変化させたときの各座標値を記述することが必要とされる。同時に、５０ｃｍ未満で座標位置を変化させたときの一組のパラメータの各値を、パラメータフィールド６２−１に記述することも必要とされる。精度を高めれば高めるほど、総レコード数が増加することが理解される。
【０１０８】
次に、変換テーブル６０の作成方法を説明する。変換テーブル６０は、数６および数７を利用した計算によって作成され得る。ある一つのレコード６４を作成する手順は以下のとおりである。なお、受信機２０−Ａ〜２０−Ｅが設置される各位置は既知であるとする。「各位置」は一組の座標値ｘ，ｙ，ｚによって表される。
【０１０９】
変換テーブル６０を作成する者は、波源の位置を示す一組の座標値ｘ，ｙ，ｚを決定する。波源の位置が決まると、波源と各受信機２０−Ａ〜２０−Ｅの各々との距離ｒａ〜ｒｅが決まる。数６および数７によれば、パラメータγｂ〜γｅは、波源の位置から所定の受信機までの距離と、波源位置から他の受信機までの距離ｒａ〜ｒｅの逆二乗比として得ることができる。得られたパラメータの各値を一組のフィールド６４−１に記述し、波源の位置を示す一組の座標値をフィールド６４−２に記述することで、１つのレコード６４を得ることができる。
【０１１０】
必要な推定精度に応じて波源の位置を順次変更しながら同様の演算を行い、レコードを作成していくことにより、図１５に示す変換テーブル６０を得ることができる。つまり、測位システム１を実際に環境に導入して受信強度を計測しなくても、変換テーブル６０を作成することができる。このような作成方法を実現できる理由は、実際に計測したパラメータβｂ〜βｅから理想的なパラメータパラメータγｂ〜γｅを得られるよう、ＤＮＮ５２を構築しておくことができるからである。
【０１１１】
以上の処理により、波源である信号発生器１０の位置を精度良く推定することができる。
【０１１２】
本実施形態にかかるＤＮＮ５２および変換器５３を用いることにより、パラメータβｂ〜βｅが与えられると、波源の位置（ｘ，ｙ，ｚ）を出力することができる。 
【０１１３】
信号発生器１０の位置を推定した後は、測位システム１は、たとえば図示されない誘導装置を利用して、自走車両２４ｂおよび／またはスマートフォン２４ｃを所定の位置まで誘導してもよい。誘導装置は移動先の位置を通知して、当該位置まで自走車両２４ｂまたはスマートフォン２４ｃを所有する人を誘導することができる。このとき、リアルタイムに、または間欠的に信号発生器１０の位置の推定処理を行い、適切に誘導を行うことができる。
【０１１４】
なお、上述の説明では、二次元空間の位置を推定するためには４台の受信機からの受信強度データを利用すると説明したが、５台以上の受信機からの受信強度データを利用してもよい。また、三次元空間の位置を推定するためには５台の受信機からの受信強度データを利用すると説明したが、６台以上の受信機からの受信強度データを利用してもよい。
【０１１５】
次に、ＤＮＮ５２（図１３、１４）の構築方法（学習方法）を説明する。４つのパラメータβｂ〜βｅの例を説明する。学習が完了したＤＮＮ５２と学習未完了のＤＮＮとを区別するため、学習未完了のＤＮＮを以下では便宜的に「学習中のＮＮ」と記述し参照符号として「９２」を付与する。
【０１１６】
ＤＮＮ５２は、測位システム１が実際に導入される測位空間での学習によって構築される。パラメータβに誤差が含まれ得る状況で学習させるためである。
【０１１７】
図１６は、学習中のＮＮ９２の学習方法を模式的に示している。
【０１１８】
電子機器にビーコン信号を出力させ、ビーコン信号を、所定の受信アンテナ装置、および、他の各受信アンテナ装置に受信させる。各受信アンテナ装置からは受信強度データが出力される。そこで、所定の受信アンテナ装置の受信強度と他の受信アンテナ装置の各受信強度との比であるパラメータＰ（βｂ〜βｅ）の値を学習中のＮＮ９２に入力する。学習中のＮＮ９２は、パラメータＰ’（γｂ〜γｅ）を出力する。
【０１１９】
ＮＮ９２の出力であるパラメータＰ’（γｂ〜γｅ）は、各受信アンテナ装置の位置に応じて対応付けられる受信強度データから得られる複数の基準パラメータ（基準パラメータＳ（γｓｂ〜γｓｅ））と一致する必要がある。そこで、比較器Ｃ５８は、パラメータＰ’の各成分γｂ〜γｅが、基準パラメータＳの各成分γｓｂ〜γｓｅに近付くよう、複数の重み付け係数を変更する。つまり、基準パラメータＳを教師信号（Supervisory signal）として用い、パラメータＰ’の各成分と基準パラメータＳの各成分との差分が所与の閾値以内に収まるよう、複数の重み付け係数を変更する。具体的な手法として、たとえばバックプロパゲーション法を用いることができる。バックプロパゲーション法は、機械学習において、ニューラルネットワークを学習させる際に用いられるよく知られたアルゴリズムである。
【０１２０】
バックプロパゲーション法を概説する。下記の説明は一例である。以下の処理は、測位装置３０（図９）のＣＰＵ３１が行うとする。ＣＰＵ３１は、パラメータＰ’の各成分と基準パラメータＳの各成分との誤差を求め、当該誤差を用いて各出力層の各ニューロンの誤差を計算する。ＣＰＵ３１は、個々のニューロンの期待される出力値、倍率(scaling factor)、および要求された出力と実際の出力の差を計算する。この「差」を局所誤差と言う。ＣＰＵ３１は、局所誤差が小さくなるよう各ニューロンの重みを調整する。次に、あるニューロンに相対的に大きな重みで接続された前段のニューロンには、局所誤差の責任があると考える。ＣＰＵ３１は、当該前段のニューロンのさらに前段のニューロン群について同様の処理を行う。重み付け係数の変更を繰り返すことにより、ＤＮＮ５２が得られる。
【０１２１】
続いて、パラメータβｂ〜βｅを求める他の方法を説明する。
【０１２２】
本発明者は、波源から各受信機ｉまでの距離の差が、波源から出力された信号波が各受信機ｉに到達するまでの時間の差に比例することに着目した。そこで以下、到達時間の差を求める方法を説明する。
【０１２３】
図１７は、波源位置Ｐから出力された信号波が各受信機２０−Ｋ（Ｋ：Ａ，Ｂ，Ｃ，Ｄ，Ｅ）に到達した時刻ｔｋ（ｋ：ａ，ｂ，ｃ，ｄ，ｅ）を模式的に示す波形図である。波源から全方向に放射された信号波は、伝搬距離に応じて減衰しながら、各受信機２０−Ｋに到達する。各受信機２０−Ｋは各時刻ｔｋ以降継続して信号波を受信する。
【０１２４】
本発明者は、各受信機２０−Ｋが各時刻ｔｋ以降に受信した信号波の波形には相互に強い相関があることに着目した。たとえば、受信機２０−Ａが時刻ｔａ以降に受信した信号波の時間波形Ａと、受信機２０−Ｂが時刻ｔｂ以降に受信した信号波の時間波形Ｂとは、振幅を考慮しなければ、概ね同じ形状または同じ位相を有していると言える。
【０１２５】
各受信機２０−Ｋが、図１７に示すような波形を出力することが可能であれば、各時刻ｔｋを特定することは容易である。しかしながら実際には、各受信機２０−Ｋは、図１７に示すような態様で信号波の時間波形を出力することは事実上できない。その理由は、各受信機２０−Ｋは、信号発生器１０からの信号波以外にも種々の波源から放射された信号波（入射信号波）を絶えず受信し、当該入射信号波の時間波形データを出力しているからである。さらに、種々のノイズが、最終的に得られた時間波形データに重畳され得る。
【０１２６】
図１８は、各受信機２０−Ｋからの出力された信号（出力信号）の時間波形の例を模式的に示している。図示される各時間波形から、信号発生器１０から受信した信号波の時間波形を抽出することは困難である。
【０１２７】
そこで、本発明者は、取得した１つの時間波形に対して、取得した他の時間波形をそれぞれ時間軸に沿ってシフトさせながら、両者の類似度が最も強くなる時間シフト量Ｕを決定することを考えた。以下、時間波形Ａに対して、時間波形Ｂを時間軸に沿ってシフトさせる例を説明する。
【０１２８】
本発明者は、類似度を評価するために数２０に示す相関関数ｆ（Ｕ）を導入し、数２１に示すように相関関数ｆb（Ｕ）の値を最大化する時間シフト量Ｕを決定することに想到した。
【数１９】
2020051922.tif 000013
【数２０】
2020051922.tif 000014
【０１２９】
数１９および数２０において、ｇａは受信機２０−Ａからの出力信号を表す時間関数であり、ｇｂは受信機２０−Ｂからの出力信号を表す時間関数である。
【０１３０】
決定されたシフト量Ｕは、受信機２０−Ａが信号波を受信した時刻ｔａと受信機２０−Ａが信号波を受信した時刻ｔｂとの時間差（ｔｂ−ｔａ）を表す。
【０１３１】
信号発生器１０から出力された信号波の伝搬速度をｖとすると、数２１に示す演算により、パラメータβｂ〜βｅを得ることができる。
（数２１）
βｂ＝ｖ・argmax fb(Ｕ)
βｃ＝ｖ・argmax fｃ(Ｕ)
βｄ＝ｖ・argmax fｄ(Ｕ)
βｅ＝ｖ・argmax fｅ(Ｕ)
【０１３２】
ｆｃ（Ｕ）〜ｆｅ（Ｕ）はそれぞれ、数１９において、ｇｂを、受信機２０−Ｃからの出力信号を表す時間関数ｇｃ、受信機２０−Ｄからの出力信号を表す時間関数ｇｄ、受信機２０−Ｅからの出力信号を表す時間関数ｇｅに置き換えて得られた相関関数である。
【０１３３】
伝搬速度ｖは、信号波が電磁波で１気圧の大気を伝搬する場合、約３０万キロメートル／秒である。または、伝搬速度ｖは、信号波が音波で、１気圧の乾燥空気を伝搬する場合、約３３１．５メートル／秒である。
【０１３４】
なお、本明細書では、各受信機が、信号発生器１０からの信号を受信して信号を出力するまでに要する時間（処理時間）は実質的に等しいとする。等しくない場合であっても、他の各受信機の処理時間から、受信機Ａの処理時間を減算した差の情報を予め取得し、得られた値Ｕに加えればよい。これにより、信号発生器１０からの信号が到達した時間差を正しく求めることができる。
【産業上の利用可能性】
【０１３５】
本開示の測位システムは、屋内または屋外を移動する移動体の位置の推定に用いられ得る。また測位した結果を利用する移動体の位置の制御に用いられ得る。
【０１３６】
本開示の測位システムは、産業分野では工場建屋内部での人の安全性や導線の確保や、設備や備品などの管理に高性能な屋内で測位を行う用途に利用可能である。また、民生分野では、子供の見守りや、老人介護分野で徘徊や危険地域への立ち入り防止策として施設内外を問わず連続的に測位を行う用途に利用可能である。
【符号の説明】
【０１３７】
３０・・・測位装置、３１・・・ＣＰＵ（演算回路）、３２・・・メモリ、３３・・・通信回路、３４ａ・・・入力インタフェース、３４ｂ・・・出力インタフェース、５１・・・パラメータ演算器、５２・・・学習済みディープニューラルネットワーク（ＤＮＮ）、５３・・・変換器、６０・・・変換テーブル、６２−１・・・パラメータフィールド、６２−２・・・座標フィールド、６４・・・レコード
【図１】
2020051922.tif 000015
【図２】
2020051922.tif 000016
【図３】
2020051922.tif 000017
【図４】
2020051922.tif 000018
【図５】
2020051922.tif 000019
【図６】
2020051922.tif 000020
【図７】
2020051922.tif 000021
【図８】
2020051922.tif 000022
【図９】
2020051922.tif 000023
【図１０】
2020051922.tif 000024
【図１１】
2020051922.tif 000025
【図１２】
2020051922.tif 000026
【図１３】
2020051922.tif 000027
【図１４】
2020051922.tif 000028
【図１５】
2020051922.tif 000029
【図１６】
2020051922.tif 000030
【図１７】
2020051922.tif 000031
【図１８】
2020051922.tif 000032