(第1の実施形態)
以下、本発明の実施形態について図面を参照して説明する。図1は、第1の実施形態による電波環境推定装置1の構成を示すブロック図である。電波環境推定装置1は、例えば、建物内のフロアに設置される通信装置であるAPと、通信機器であるIoT機器との間の電波環境を推定する装置である。電波環境推定装置1は、更に、推定した電波環境に基づいて、例えば、APを設置する最適な位置の選択を行う。
電波環境推定装置1は、情報記憶部10、情報選択部20、事前処理部30、関係性推定部40及び事後処理部50を備える。情報記憶部10は、送信アンテナ座標情報、受信アンテナ座標情報、レイアウト情報を予め記憶し、更に、関係性推定部40が学習処理を行う際に用いる教師情報を予め記憶する。
ここで、情報記憶部10に記憶されている各情報について説明する。送信アンテナ座標情報とは、例えば、フロアをXY座標系で示した場合に、当該フロアに設置されるAPが備える送信アンテナの位置を示す座標情報である。受信アンテナ座標情報とは、同様にフロアをXY座標系で示した場合に、当該フロアに設置されるIoT機器が備える受信アンテナの位置を示す座標情報である。
レイアウト情報は、当該フロアの構造を示す情報であり、例えば、当該フロアを撮影した写真の画像情報、レーザスキャンの結果情報、測距の結果情報、構造物設計情報、または構造物設置情報などから抽出される情報であり、一例として、図2において破線で示すような二次元の線分で示される情報(以下、破線で示す情報に符号800を付してレイアウト情報800という)である。
教師情報は、関係性推定部40が学習処理を行う際に用いられる情報であり、送信アンテナ座標情報ごとの実測RSSI(Received Signal Strength Indication)行列及び実測PER(Packet Error Rate)行列を含む情報である。以下、RSSI行列とPER行列とをまとめて電波環境行列ともいう。
ここで、実測RSSI行列や実測PER行列の意味について説明する。図2に示すように、レイアウト情報800が示すフロアの構造に対してXY座標系を定めて、例えば、フロアの構造の内部に四辺形900の領域を定義する。四辺形900の領域を格子状に区切り、格子の升目であるセルの各々を、IoT機器を設置する可能性のある位置、すなわち受信アンテナ座標として定義する。
APの位置、すなわち送信アンテナの位置としてレイアウト情報800が示す領域内外の任意の位置を選択し、その位置から電波を出力した場合に、四辺形900の各セルの位置において受信する電波の受信強度値、すなわちRSSIを実測することができる。実測した受信強度値を各セルの位置に基づいて縦横に並べた行列が実測RSSI行列となる。同様に、送信アンテナの位置から電波を出力した場合に、四辺形900の各セルの位置において実測したPERを各セルの位置に基づいて縦横に並べた行列が実測PER行列となる。
より詳細には、情報記憶部10は、レイアウト情報800と、四辺形900の各セルの位置に対応する複数の受信アンテナ座標情報(以下、受信アンテナ座標情報セットという)とを予め記憶する。また、情報記憶部10は、送信アンテナ座標情報として、学習用の複数の送信アンテナ座標情報と、実際に送信アンテナを設置する位置の候補となる評価用の送信アンテナ座標情報とを予め記憶する。また、情報記憶部10は、学習用の複数の送信アンテナ座標情報ごとに、実測RSSI行列と実測PER行列とを組み合わせた教師情報を予め記憶する。
情報選択部20は、外部から与えられるモード指定情報にしたがって情報記憶部10に記憶されている情報を読み出し、読み出した情報を事前処理部30と、関係性推定部40と、事後処理部50とに出力する。例えば、モード指定情報が学習モードを示している場合、情報選択部20は、情報記憶部10が記憶する受信アンテナ座標情報セット及びレイアウト情報を読み出して事前処理部30に出力する。また、情報選択部20は、情報記憶部10が記憶する学習用の複数の送信アンテナ座標情報のいずれか1つを選択して読み出し、読み出した送信アンテナ座標情報を事前処理部30に出力する。また、情報選択部20は、選択した学習用の送信アンテナ座標情報に対応する教師情報を情報記憶部10から読み出して関係性推定部40に出力する。
これに対して、モード指定情報が推定モードを示している場合、情報選択部20は、情報記憶部10が記憶する評価用の送信アンテナ座標情報、受信アンテナ座標情報セット、レイアウト情報を読み出して事前処理部30に出力する。また、情報選択部20は、情報記憶部10から読み出した評価用の送信アンテナ座標情報を事後処理部50に出力する。
また、情報選択部20は、関係性推定部40からデータ選択指示情報を受けた場合、次の学習処理において適用する学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを情報記憶部10から読み出して事前処理部30に出力する。また、情報選択部20は、次の学習処理において適用する学習用の送信アンテナ座標情報に対応する教師情報を情報記憶部10から読み出して関係性推定部40に出力する。
図3は、事前処理部30の構成を示すブロック図である。事前処理部30は、プリプロセッシングを行い、送信アンテナ座標情報と、受信アンテナ座標情報と、レイアウト情報とから電波に関する特徴量を行列形式で抽出する。
事前処理部30は、自由空間伝搬損計算部300、構造数式化部301及び位相計算部302を備える。自由空間伝搬損計算部300は、情報選択部20が出力する送信アンテナ座標情報の位置と、情報選択部20が出力する受信アンテナ座標情報セットに含まれる各々の受信アンテナ座標情報の位置とを結ぶ直線の長さを伝搬距離とし、当該伝搬距離に基づいて自由空間伝搬損失量を算出する。また、自由空間伝搬損計算部300は、算出した自由空間伝搬損失量に基づいて、各々の受信アンテナ座標情報において受信する受信強度値を算出し、算出した受信強度値を、受信アンテナ座標情報の位置に基づいて縦横に並べて送受信アンテナ間減衰行列を生成する。
構造数式化部301は、情報選択部20が出力するレイアウト情報を取り込み、レイアウト情報を数式化、すなわちXY座標系における線分を示す数式に変換する。例えば、レイアウト情報に含まれる壁や柱等の障害物を示す線分を、xとyの範囲を限定した一次関数で示すような数式化を行う。
また、構造数式化部301は、情報選択部20が出力する送信アンテナ座標情報と、受信アンテナ座標情報セットとを取り込む。また、構造数式化部301は、レイアウト情報を数式化した複数の数式と、送信アンテナ座標情報と、受信アンテナ座標情報セットとを位相計算部302に出力する。
位相計算部302は、いずれか1つの数式と、いずれか1つの受信アンテナ座標情報とを選択する。また、位相計算部302は、選択した受信アンテナ座標情報において受信アンテナが反射波を受信する際の当該反射波の自由空間伝搬損失量と位相回転量を算出する。なお、ここでの反射波とは、送信アンテナ座標情報の位置から出力された電波が、選択した数式が示す障害物によって反射され、受信アンテナ座標情報の位置の受信アンテナに到達する反射波である。
また、位相計算部302は、全ての数式と全ての受信アンテナ座標情報についての組み合わせ、すなわち選択した送信アンテナ座標情報の位置から反射点を経て各々の受信アンテナ座標情報の位置に到達する全ての反射波の自由空間伝搬損失量と位相回転量を算出する。
また、位相計算部302は、同一の受信アンテナ座標情報について算出した複数の数式に対応する自由空間伝搬損失量と位相回転量を加算、すなわち同一の受信アンテナ座標情報の位置に到達する全ての反射波を合成した際の受信アンテナ座標情報の位置における合計の受信強度値を求める。なお、同一の受信アンテナ座標情報の位置に到達する複数の電波を合成した際の合計の受信強度値を、以下、合成受信強度値という。また、位相計算部302は、求めた合成受信強度値を受信アンテナ座標情報の位置に基づいて縦横に並べて送受信アンテナ間位相行列を生成する。
図4は、関係性推定部40の構成を示すブロック図である。関係性推定部40は、ニューラルネットワーク部400、スイッチ404、損失関数計算判定部405、荷重更新部406及び関係性情報記憶部407を備える。ニューラルネットワーク部400は、入力層401、中間層402、出力層403を備える。
入力層401は、事前処理部30が出力する送受信アンテナ間減衰行列と送受信アンテナ間位相行列とをそれぞれチャネル1(以下、Ch1という)及びチャネル2(以下、Ch2という)の情報として取り込む。
中間層402は、入力層401が出力する送受信アンテナ間減衰行列の各々の要素の値と、関係性情報記憶部407が記憶する重み係数とに基づく演算を行い演算結果を出力層403に出力する。また、中間層402は、入力層401が出力する送受信アンテナ間位相行列の各々の要素の値と、関係性情報記憶部407が記憶する重み係数とに基づく演算を行い、演算結果を出力層403に出力する。
出力層403は、中間層402の演算結果に基づく推定RSSI行列と推定PER行列とをそれぞれCh1及びCh2の情報として出力する。スイッチ404は、外部から与えられるモード指定情報に基づいて、出力層403の出力端の接続先を切り替える。例えば、モード指定情報が、学習モードを示す場合、スイッチ404は、出力層403の出力端を損失関数計算判定部405に接続する端子に接続し、モード指定情報が、推定モードを示す場合、出力層403の出力端を事後処理部50に接続する端子に接続するように切り替えを行う。
損失関数計算判定部405は、損失関数計算部410と判定部411を備える。損失関数計算部410は、出力層403が出力する推定RSSI行列と、教師情報として与えられる実測RSSI行列との誤差及び出力層403が出力する推定PER行列と、教師情報として与えられる実測PER行列との誤差を予め定められる損失関数に基づいて損失値として算出する。なお、損失関数としては、二乗和誤差や公差エントロピー誤差等を算出する損失関数が適用される。
判定部411は、損失関数計算部410が算出した損失値と、予め定められる損失値の閾値とに基づいて、学習処理を継続するか否かを判定する。また、判定部411は、学習モードを示すモード指定情報を受けた際、内部の記憶領域に反復回数パラメータの変数「n」の領域を取得して、学習処理の回数を反復回数パラメータにより管理し、学習処理の回数に応じて学習処理を継続するか否かを判定する。また、判定部411は、損失値や反復回数パラメータの値に基づいて、学習処理を継続すると判定する場合、損失関数計算部410が算出した損失値を荷重更新部406に出力する。
荷重更新部406は、関係性情報記憶部407に記憶されている重み係数と、損失値とに基づいて新たな重み係数を算出し、関係性情報記憶部407に記憶されている重み係数を、算出した新たな重み係数に書き換えて、重み係数の更新を行う。また、荷重更新部406は、重み係数の更新を行った後、データ選択指示情報を情報選択部20に出力する。関係性情報記憶部407は、重み係数の初期値を予め記憶し、また、荷重更新部406によって書き換えられる重み係数を記憶する。学習処理が終了した際に、関係性情報記憶部407が記憶する学習済みの重み係数は、入力情報と教師情報との関係性を示す関係性情報となる。
図5は、関係性推定部40におけるニューラルネットワーク部400の具体的構成の一例として、3次元のニューラルネットワークとする際の構成を示す図である。図5は、関係性推定部40に対して外部より学習モードを示すモード指定情報が与えられ、出力層403と損失関数計算判定部405とがスイッチ404により接続されている構成を示している。
入力層401は、送受信アンテナ間減衰行列をCh1として取り込み、送受信アンテナ間位相行列をCh2として取り込む。一例として、図2に示す受信アンテナ座標セットに対応する四辺形900の領域が、縦28セル、横26セルの大きさであるとすると、送受信アンテナ間減衰行列と送受信アンテナ間位相行列の大きさは、それぞれ「28×26」となる。したがって、入力層401が送受信アンテナ間減衰行列と送受信アンテナ間位相行列とを取り込んで出力する出力情報の大きさは、チャネル数が2であるため、「2×28×26」の大きさとなる。
中間層402は、6つのコンボリューション層402−C1〜C6及び5つのRelu(Rectified Linear Unit)部402−R1〜R5を備える。コンボリューション層402−C1〜C6の各々は、予め定められるフィルタ数、チャネル数、フィルタの縦横方向の画素数、パディングの値及びストライドの値にしたがって入力情報に対して関係性情報記憶部407が記憶する重み係数を適用した畳み込み演算を行う。なお、全てのコンボリューション層402−C1〜C6のパディングの値は「1」であり、ストライドの値は「1」として予め定められている。
Relu部402−R1〜R5は、入力値に対して活性化関数の一種であるRelu関数を適用し、Relu関数の適用により得られた出力値を出力する。
コンボリューション層402−C1は、フィルタ数が「16」、チャネル数が「2」、フィルタの縦方向の画素数が「3」、フィルタの横方向の画素数が「3」として予め定められており、その大きさは「16×2×3×3」となる。入力層401が出力する出力情報の大きさは、上述したように「2×28×26」である。この出力情報に対してコンボリューション層402−C1が畳み込み演算を行うことにより、フィルタ数「16」に応じた数のチャネルが生じるため、Relu部402−R1が出力する出力情報の大きさは「16×28×26」となる。
コンボリューション層402−C2は、フィルタ数が「16」、チャネル数が「16」、フィルタの縦方向の画素数が「3」、フィルタの横方向の画素数が「3」として予め定められており、その大きさは「16×16×3×3」となる。コンボリューション層402−C2が畳み込み演算を行うことにより、フィルタ数「16」に応じた数のチャネルが生じるため、Relu部402−R2が出力する出力情報の大きさは「16×28×26」となる。
コンボリューション層402−C3は、フィルタ数が「32」、チャネル数が「16」、フィルタの縦方向の画素数が「3」、フィルタの横方向の画素数が「3」として予め定められており、その大きさは「32×16×3×3」となる。コンボリューション層402−C3が畳み込み演算を行うことにより、フィルタ数「32」に応じた数のチャネルが生じるため、Relu部402−R3が出力する出力情報の大きさは「32×28×26」となる。
コンボリューション層402−C4は、フィルタ数が「32」、チャネル数が「32」、フィルタの縦方向の画素数が「3」、フィルタの横方向の画素数が「3」として予め定められており、その大きさは「32×32×3×3」となる。コンボリューション層402−C4が畳み込み演算を行うことにより、フィルタ数「32」に応じた数のチャネルが生じるため、Relu部402−R4が出力する出力情報の大きさは「32×28×26」となる。
コンボリューション層402−C5は、フィルタ数が「64」、チャネル数が「32」、フィルタの縦方向の画素数が「3」、フィルタの横方向の画素数が「3」として予め定められており、その大きさは「64×32×3×3」となる。コンボリューション層402−C5が畳み込み演算を行うことにより、フィルタ数「64」に応じた数のチャネルが生じるため、Relu部402−R5が出力する出力情報の大きさは「64×28×26」となる。
コンボリューション層402−C6は、フィルタ数が「2」、チャネル数が「64」、フィルタの縦方向の画素数が「3」、フィルタの横方向の画素数が「3」として予め定められており、その大きさは「2×64×3×3」となる。コンボリューション層402−C6が畳み込み演算を行うことにより、フィルタ数「2」に応じた数のチャネルが生じるため、出力情報の大きさは「2×28×26」となる。
出力層403の各素子は、恒等関数であり、コンボリューション層402−C6の出力情報をそのまま出力する。したがって、出力層403の出力情報の大きさは「2×28×26」となり、2チャネル分の情報を含んだ行列となり、Ch1が推定RSSI行列となり、Ch2が推定PER行列となる。
図6は、事後処理部50の構成を示すブロック図である。事後処理部50は、ポストプロセッシングを行い、関係性推定部40が出力する推定RSSI行列と推定PER行列とに基づいて、評価用の送信アンテナ座標情報の中から送信アンテナの位置として最適な位置を示す送信アンテナ座標情報を選択して出力する。
事後処理部50は、スイッチ500、評価関数計算部501−1〜N及び出力部502を備える。スイッチ500は、関係性推定部40の出力端に接続される1つの入力端と、各々が評価関数計算部501−1〜Nに接続される複数の出力端とを備えており、外部から与えられる選択規範指示情報にしたがって、選択規範指示情報に応じた評価関数計算部501−1〜Nに接続する出力端に入力端が接続するように切り替えを行う。
評価関数計算部501−1〜Nの各々は、評価用の送信アンテナ座標情報ごとの推定RSSI行列及び推定PER行列に基づいて、各々に対して予め定められている評価関数を用いて受信アンテナ座標情報ごとの評価値を算出する。また、評価関数計算部501−1〜Nの各々は、情報選択部20が出力する評価用の送信アンテナ座標情報を取り込む。
なお、情報選択部20が、事前処理部30に出力する評価用の送信アンテナ座標情報の順番と、事後処理部50に出力する評価用の送信アンテナ座標情報の順番は、同一順である。事前処理部30は、評価用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とに基づいて、送受信アンテナ間減衰行列及び送受信アンテナ間位相行列を生成する。関係性推定部40は、事前処理部30が生成した送受信アンテナ間減衰行列及び送受信アンテナ間位相行列に基づいて推定RSSI行列及び推定PER行列を生成する。すなわち、評価用の送信アンテナ座標情報ごとに、推定RSSI行列及び推定PER行列が得られることになる。
そのため、評価関数計算部501−1〜Nが、関係性推定部40から順次取り込む推定RSSI行列及び推定PER行列に対して、情報選択部20から取り込む評価用の送信アンテナ座標情報を取り込み順に対応付けることにより、推定RSSI行列及び推定PER行列に対して、これらの行列に対応する評価用の送信アンテナ座標情報を正しく対応付けることができる。
評価関数計算部501−1〜Nは、推定RSSI行列及び推定PER行列と、評価用の送信アンテナ座標情報との対応関係に基づいて、推定RSSI行列または推定PER行列に基づいて算出した受信アドレス座標情報ごとの評価値に対して、当該評価値に対応する評価用の送信アドレス座標情報の対応付けを行う。
また、評価関数計算部501−1〜Nの各々は、算出した評価値の中で予め定められる評価条件を満たす評価値を選択し、選択した評価値に対応する送信アンテナ座標情報を出力部502に出力する。出力部502は、評価関数計算部501−1〜Nが出力する送信アンテナ座標情報を取り込み、取り込んだ送信アンテナ座標情報を最適な送信アンテナの設置位置、すなわち最適なAPの設置位置を示す最適AP座標情報として出力する。
ここで、評価用の送信アンテナ座標情報は、例えば、1)レイアウト情報に対応するフロアの任意の位置から選択されたり、2)予め既知の設置可能エリア、すなわち利用者が現実的に設置する可能性がある位置のみから選択されたりする。既知の設置可能なエリアとは、例えば、連続関数によって示されるエリアであったり、離散的な候補座標一覧であったりする。
また、評価関数計算部501−1〜Nの各々に予め定められている評価関数としては、例えば、RSSI、すなわち受信強度値に基づいて受信アンテナ座標情報ごとの受信電力値を評価値として算出し、評価値である受信電力値が最小となる受信アンテナ座標情報を検出し、検出した受信アンテナ座標情報における受信電力値を最大とする送信アンテナ座標情報を選択するような評価関数である。当該評価関数に対応する選択規範は、文言で表すと「複数存在する受信アンテナを備えるIoT機器の中で受信電力が最小のIoT機器の受信電力を最大化するAPの位置を最適なAPの設置位置として選択する」という選択規範となる。m個の評価用の送信アンテナ座標情報をr1〜rmとし、最適AP座標情報をrMとした場合、当該選択規範は、次式(1)として表すことができる。
また、他の評価関数としては、例えば、受信アンテナ座標情報ごとのPERの中で、最大のPERの受信アンテナ座標情報を検出し、検出した受信アンテナ座標情報におけるPERを最小とする送信アンテナ座標情報を選択するような評価関数である。当該評価関数に対応する選択規範は、文言で表すと「複数存在する受信アンテナを備えるIoT機器の中でPERが最大のIoT機器、すなわち最もパケットエラーが起こる確率が高いIoT機器のPERを最小化するAPの位置を最適なAPの設置位置として選択する」という選択規範となる。m個の評価用の送信アンテナ座標情報をr1〜rmとし、最適AP座標情報をrMとした場合、当該選択規範は、次式(2)として表すことができる。また、他の評価関数としては、例えばPERとRSSIのどちらも考慮した評価関数が考えられる。これは例えば、受信アンテナの座標情報ごとのPERの定数倍したものと、RSSIの逆数を定数倍したものを加算した値や、受信アンテナの座標情報ごとに定数倍したPERから定数倍したRSSIを減算した値の中で、値が最大となる受信アンテナ座標情報を検出し、検出した受信アンテナ座標情報における値を最小とする送信アンテナ座標情報を選択するような評価関数である。当該評価関数に対応する選択規範は、文言で表すと「複数存在する受信アンテナを備えるIoT機器の中でPERとRSSIから換算した値が最大となるIoT機器、すなわち最も「パケットエラーが起こる確率が高く、かつ受信電力が低い」IoT機器の発生を抑えるように最適なAPの設置位置を選択する」という、式(1)と式(2)の折衷的な選択規範となる。m個の評価用の送信アンテナ座標情報をr1〜rmとし、最適AP座標情報をrMとした場合、当該選択規範は、次式(3)や次式(4)として表すことができる。
(第1の実施形態の電波環境推定装置による関係性情報生成処理)
次に、図7から図20を参照しつつ第1の実施形態の電波環境推定装置1による関係性情報を生成する処理の流れについて説明する。図7は、電波環境推定装置1による関係性情報を生成する処理の流れを示すフローチャートであり、図8は、図7のステップSa4において呼び出される送受信アンテナ間位相行列生成処理のサブルーチンのフローチャートである。
外部から学習モードを示すモード指定情報が与えられると関係性推定部40のスイッチ404は、出力層403の出力端を損失関数計算判定部405に接続する端子に接続するように切り替えを行う。また、関係性推定部40の損失関数計算判定部405の判定部411は、反復回数パラメータ「n」を初期化するため、「n」に対して「1」を書き込んで記憶させる(ステップSa1)。
情報選択部20は、情報記憶部10が記憶する学習用の送信アンテナ座標情報からいずれか1つを選択して読み出し、更に、受信アンテナ座標情報セットとレイアウト情報を読み出す。情報選択部20は、読み出した学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを事前処理部30に出力する。以下、事前処理部30に出力する送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とをまとめて伝搬環境情報ともいう。
情報選択部20は、選択した学習用の送信アンテナ座標情報に対応する教師情報、すなわち実測RSSI行列及び実測PER行列を情報記憶部10から読み出して関係性推定部40に出力する(ステップSa2)。
事前処理部30の自由空間伝搬損計算部300は、情報選択部20が出力する学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットとを取り込む。自由空間伝搬損計算部300は、送信アンテナ座標情報の位置から、受信アンテナ座標情報セットに含まれる各々の受信アンテナ座標情報の位置までの直線距離に基づいて自由空間伝搬損失量を算出する。自由空間伝搬損計算部300は、算出した自由空間伝搬損失量に基づいて、各々の受信アンテナ座標情報において受信する受信強度値を算出し、算出した受信強度値を、受信アンテナ座標情報の位置に基づいて縦横に並べて送受信アンテナ間減衰行列を生成する(ステップSa3)。
送受信アンテナ間減衰行列をヒートマップ(空間分布)で表すと、例えば、図9及び図10(a)において符号1000,1000aで示すようなヒートマップとなる。なお、ヒートマップであるため、例えば、虹色からなるカラー表示であり、例えば、受信強度値が大きい箇所が赤色で表され、受信強度値が小さい箇所が紫色で表されることになる。図10(a)の符号1000の送受信アンテナ間減衰行列のヒートマップの場合、例えば、符号2000の位置が送信アンテナの位置であり、当該位置から放射状に受信強度値が小さくなっていることが示されている。また、図10(b)の符号1000aの送受信アンテナ間減衰行列のヒートマップの場合、符号2000aの位置が送信アンテナの位置であり、当該位置から放射状に受信強度値が小さくなっていることが示されている。
なお、自由空間伝搬損計算部300は、障害物の有無を考慮せず、送信アンテナ座標情報の位置から受信アンテナ座標情報の位置までの直線距離に基づいて自由空間伝搬損失量を算出して送受信アンテナ間減衰行列を生成する。例えば、図11に示すように、レイアウト情報800において、受信アンテナ座標情報セットの領域として四辺形900aが定められているような場合、四辺形900aの領域は、符号800p1,800p2で示す柱の障害物を含む領域となる。そのため、図11に示すように、送信アンテナ座標2000−1の位置から、任意に定める受信アンテナ座標3000−kの位置までの間に符号800p1で示す柱等が障害物として存在する場合がある。このような場合、自由空間伝搬損計算部300は、障害物が存在しないものとして、送信アンテナ座標2000−1の位置から受信アンテナ座標3000−kの位置までの直線距離に基づいて自由空間伝搬損失量の算出を行う。
構造数式化部301は、送受信アンテナ間位相行列生成処理のサブルーチンを開始する(ステップSa4)。なお、事前処理部30は、ステップSa4の処理を、ステップSa3と並行に開始してもよいし、ステップSa3の後にステップSa4を行ってもよいし、ステップSa4の後にステップSa3を行ってもよい。
構造数式化部301は、情報選択部20が出力するレイアウト情報と、受信アンテナ座標情報セットと、学習用の送信アンテナ座標情報とを取り込む。構造数式化部301は、取り込んだレイアウト情報を数式化して、レイアウト情報に含まれている複数の壁や柱等の障害物に対応する複数の数式を生成する。構造数式化部301は、生成した複数の数式と、受信アンテナ座標情報セットと、学習用の送信アンテナ座標情報とを位相計算部302に出力する(ステップSb1)。
例えば、レイアウト情報800は、図12に示すように8個の頂点のうち隣接する頂点を結ぶ線によって形成される壁の障害物と、符号800p1,800p2によって示される柱の障害物とを含んでいる。構造数式化部301は、壁については隣接する頂点を結ぶ線分を数式化していく。例えば、構造数式化部301は、(x4,y1)と、(x4,y4)によって結ばれる線分800−1については、x=x4(y1≦y≦y4)のように数式化する。また、構造数式化部301は、(x1,y1)と、(x4,y1)によって結ばれる線分800−1については、y=y1(x1≦x≦x4)のように数式化する。これを、8個の頂点のうち隣接する頂点について繰り返し行う。構造数式化部301は、符号800p1,800p2で示される柱についても壁と同様に隣接する頂点を結ぶ線分ごとに数式化を行う。
位相計算部302は、構造数式化部301が出力する複数の数式と、受信アンテナ座標情報セットと、学習用の送信アンテナ座標情報とを取り込む。位相計算部302は、受信アンテナ座標情報セットからいずれか1つの受信アンテナ座標情報を選択し、更に、取り込んだ複数の数式からいずれか1つの数式を選択する。
位相計算部302は、選択した受信アンテナ座標情報と、選択した数式と、取り込んだ学習用の送信アンテナ座標情報とに基づいて、楕円関数を用いた伝搬距離と位相回転量の算出を行う。例えば、図13に示すように、送信アンテナ座標情報の位置をTXとし、受信アンテナ座標情報の位置をRXとし、TXとRXの2点を焦点として、取り込んだ数式が示す障害物と接する楕円を描く。このとき、楕円の円周と障害物が接する接点を反射点Tとする。図13に示すように、楕円の幾何関係によりTXから出力されて障害物の反射点Tで反射してRXに至る電波の軌跡において、入射角と反射角が、同一の角度θとなり、楕円の長辺の半径を「a」とした場合、TXから反射点Tを経てRXに至る伝搬距離は「2a」となる。このような楕円の性質を用いた楕円関数を適用することで、位相計算部302は、低演算量で、TXとRXの間の伝搬距離を算出することができる。
位相計算部302は、算出した伝搬距離に基づいて、受信アンテナ座標情報に対応するRXの位置における自由空間伝搬損失量を算出する。また、位相計算部302は、算出した伝搬距離と電波の周波数とに基づいて、受信アンテナ座標情報に対応するRXの位置における位相回転量を算出する。位相計算部302は、算出した自由空間伝搬損失量と位相回転量を受信アンテナ座標情報に関連付けて内部の記憶領域に書き込んで記憶させておく(ステップSb2)。
位相計算部302は、全ての数式について、ステップSb2の処理を繰り返し行う(ループLb2s〜Lb2e)。
レイアウト情報800に対して、ステップSb2の処理を適用した例について説明する。図14に示すように、位相計算部302は、障害物を示す数式として、最初に、符号800−1の線分の数式を選択したとする。位相計算部302は、送信アンテナの位置として符号2000−1の位置を選択し、受信アンテナの位置として四辺形900の左上の符号3000−1の位置を選択したとする(以下、送信アンテナ座標2000−1、受信アンテナ座標3000−1という)。
このとき、送信アンテナ座標2000−1の位置が上記のTXの位置となり、受信アンテナ座標3000−1の位置が上記のRXの位置となる。位相計算部302は、送信アンテナ座標2000−1の位置と、受信アンテナ座標3000−1の位置とを焦点として、楕円を描き、楕円の円周が線分800−1に接するまで半径を変化させる。位相計算部302は、楕円の円周と線分800−1の接点である符号4000−1の位置を反射点(以下、反射点4000−1という)とする。
位相計算部302は、楕円関数に基づいて、送信アンテナ座標2000−1の位置から反射点4000−1の位置を経由して受信アンテナ座標3000−1の位置までの距離を算出する。位相計算部302は、算出した距離を伝搬距離として、受信アンテナ座標3000−1の位置において受信アンテナが電波を受信する際の自由空間伝搬損失量と位相回転量を算出する。
なお、図14における反射波の軌跡は、符号800p1の柱の形状に重なっていないが、反射波の軌跡が符号800p1や符号800p2で示す柱の形状に重なる場合も存在する。反射波の軌跡が障害物に重なるような場合、位相計算部302は、当該反射波が存在しないものとして、自由空間伝搬損失量と位相回転量の算出を行わなくてもよいし、当該反射波が存在するものとして自由空間伝搬損失量と位相回転量の算出を行ってもよい。
次に、位相計算部302は、図15に示すように、障害物を示す数式として、符号800−2の線分の数式を選択したとする。位相計算部302は、送信アンテナ座標2000−1の位置と、受信アンテナ座標3000−1の位置とを焦点として、楕円を描き、楕円の円周が線分800−2に接するまで半径を変化させる。位相計算部302は、楕円の円周と線分800−1の接点である符号4000−2の位置を反射点(以下、反射点4000−2という)とする。
位相計算部302は、楕円関数に基づいて、送信アンテナ座標2000−1の位置から反射点4000−2の位置を経由して受信アンテナ座標3000−1の位置までの距離を算出する。位相計算部302は、算出した距離を伝搬距離として、受信アンテナ座標3000−1の位置において受信アンテナが電波を受信する際の自由空間伝搬損失量と位相回転量を算出する。
位相計算部302は、送信アンテナ座標2000−1及び受信アンテナ座標3000−1の組み合わせについて、レイアウト情報800に基づいて構造数式化部301が数式化した全ての数式を適用して同様の処理を行う。
なお、図16に示すように、線分800−4のような場合、楕円の円周が、線分800−4に接しないことになるが、このような場合の位相計算部302の内部処理は、以下の通りとなる。位相計算部302は、線分800−4を延長した直線800−4eを描き、描いた直線800−4eに円周が接する楕円を描いて反射点4000−4の位置を検出する。位相計算部302は、検出した反射点4000−4が、線分800−4の範囲に含まれていない場合、反射波は存在しないとして、自由空間伝搬損失量と位相回転量の算出を行わない。
全ての数式についての処理が終了すると、位相計算部302の内部の記憶領域は、受信アンテナ座標3000−1について、複数の数式の各々に対応する自由空間伝搬損失量と位相回転量を記憶することになる。位相計算部302は、全ての自由空間伝搬損失量と位相回転量を足し合わせて、受信アンテナ座標3000−1における合成受信強度値を算出する(ステップSb3)。
例えば、送信アンテナ座標2000−1の位置から電力αミリワットで電波を送信したとする。図14に示した線分800−1の反射点4000−1を経由して受信アンテナ座標3000−1の位置で受信される電波の受信強度値が自由空間伝搬損失によりα1となり、位相回転量がφ1になっていたとする。また、図15に示した線分800−2の反射点4000−2を経由して符号3000−1の受信アンテナの位置で受信される電波の受信強度値が自由空間伝搬損失によりα2となり、位相回転量がφ2になっていたとする。ただし、α1<α、α2<αである。
2つの反射点4000−1,4000−2を経由する反射波を合成した合成受信強度値σは、次式(5)によって表すことができる。
σ=α1exp(jφ1)+α2exp(jφ2)・・・(5)
仮に、2つの反射波が同相であれば、合成受信強度値σ=α1+α2となり、逆相であれば、合成受信強度値σ=α1−α2となる。
反射波の数がn個存在する場合、式(5)を一般化した次式(6)により合成受信強度値σを求めることができる。
σ=α1exp(jφ1)+α2exp(jφ2)+・・・+αnexp(jφn)・・・(6)
位相計算部302は、式(6)により算出した合成受信強度値σに対して受信アンテナ座標3000−1の座標情報を対応付けて内部の記憶領域に書き込んで記憶させておく。
位相計算部302は、全ての数式について、ステップSb2の処理を行った後、例えば、図17に示すように、ステップSb2の処理を行っていない他の受信アンテナ座標3000−2を選択し、全ての受信アンテナ座標情報について、ループLb2s〜Lb2eの間の処理及びステップSb3の処理を繰り返し行う(ループLb1s〜Lb1e)。なお、他の受信アンテナ座標情報の選択は、図17に示すように縦方向に選択することを繰り返すのではなく、横方向に選択してもよく、また、ランダムな位置を選択するようにしてもよい。
位相計算部302は、内部の記憶領域が記憶する受信アンテナ座標情報ごとの合成受信強度値を、図18に示すように、受信アンテナ座標情報の位置に基づいて縦横に並べて送受信アンテナ間位相行列を生成する(ステップSb4)。位相計算部302が生成した送受信アンテナ間位相行列をヒートマップで示すと図9、図19に示す符号1010で示すようなヒートマップとなる。なお、ヒートマップであるため、例えば、虹色からなるカラー表示であり、例えば、合成受信強度値が大きい箇所が赤色で表され、合成受信強度値が小さい箇所が紫色で表されることになる。
事前処理部30の自由空間伝搬損計算部300と、位相計算部302は、各々が生成した送受信アンテナ間減衰行列と、送受信アンテナ間位相行列とを関係性推定部40に出力する。以下、送受信アンテナ間減衰行列と、送受信アンテナ間位相行列とをまとめてプリプロセッシング行列ともいい、プリプロセッシング行列が学習処理の入力情報となる。
関係性推定部40は、送受信アンテナ間減衰行列と、送受信アンテナ間位相行列とを取り込み、既に取り込み済みの教師情報、すなわち実測RSSI行列及び実測PER行列を用いて、図20に示すように機械学習の手法による学習処理を開始する。
なお、図20において、符号1020のヒートマップは、実測RSSI行列のヒートマップであり、受信強度値(RSSI)の大きさに応じた色で表されている。符号1030のヒートマップは、実測PER行列のヒートマップの例であり、PERの値に応じた色で表されている。なお、実測PER行列のヒートマップにおいて、着色していない無色のセルは、当該セルに設置される受信アンテナが受信する電波のPERが「0」、すなわち誤り率が0%であることを意味する。
最初に、関係性推定部40のニューラルネットワーク部400の入力層401が、送受信アンテナ間減衰行列と、送受信アンテナ間位相行列とを取り込んで中間層402に出力する。中間層402におけるコンボリューション層402−C1〜C6の各々は、関係性情報記憶部407が記憶する重み係数を用いて、送受信アンテナ間減衰行列と、送受信アンテナ間位相行列とに対して畳み込み演算を行う。
コンボリューション層402−C1〜C5の各々は、畳み込み演算の結果を各々の次段のRelu部402−R1〜R5に出力し、Relu部402−R1〜R5は、入力値に対してRelu関数を適用し、Relu関数の適用により得られた出力値をコンボリューション層402−C2〜C6に出力する。
コンボリューション層402−C6は、畳み込み演算の結果を出力層403に出力し、出力層403は、Ch1として推定RSSI行列を出力し、Ch2として推定PER行列を出力する(ステップSa5)。
損失関数計算判定部405の損失関数計算部410は、出力層403が出力する推定RSSI行列と、実測RSSI行列との誤差及び出力層403が出力する推定PER行列と、教師情報として与えられる実測PER行列との誤差を予め定められる損失関数に基づいて損失値として算出する。
損失関数計算判定部405の判定部411は、損失値が、損失値の閾値未満であるか、または、反復回数パラメータ「n」が、予め定められる反復回数上限値「N」に等しいか否かを判定することにより、学習処理を継続するか否かを判定する(ステップSa6)。判定部411は、損失値が、損失値の閾値未満であるか、または、反復回数パラメータ「n」が、反復回数上限値「N」に等しい場合、学習処理を継続しないと判定し、(ステップSa6、Yes)、学習処理を終了する。
一方、判定部411は、損失値が、損失値の閾値以上であるか、または、反復回数パラメータ「n」が、反復回数上限値「N」に等しくない場合、学習処理を継続すると判定する(ステップSa6、No)。判定部411は、反復回数パラメータ「n」に1を加え、損失値を荷重更新部406に出力する。
荷重更新部406は、関係性情報記憶部407に記憶されている重み係数と、損失値に基づいて新たな重み係数を算出し、関係性情報記憶部407に記憶されている重み係数を、算出した新たな重み係数に書き換えて、重み係数の更新を行う(ステップSa7)。荷重更新部406は、重み係数の更新を行った後、データ選択指示情報を情報選択部20に出力する。
情報選択部20は、データ選択指示情報を受けると、ステップSa2の処理を再び行う。すなわち、情報選択部20は、次の学習処理において適用する学習用の送信アンテナ座標情報を選択し、選択した学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを読み出して事前処理部30に出力する。また、情報選択部20は、選択した学習用の送信アンテナ座標情報に対応する教師情報を情報記憶部10から読み出して関係性推定部40に出力する。
このようにして、学習処理が繰り返し行われ、学習処理が終了すると、関係性情報記憶部407は、荷重更新部406が算出した学習済みの重み係数、すなわち入力情報と教師情報との関係性を示す関係性情報を記憶する。
(第1の実施形態の電波環境推定装置による推定処理)
次に、図21から図24を参照しつつ第1の実施形態の電波環境推定装置1による推定処理の流れについて説明する。図21は、電波環境推定装置1による推定処理の流れを示すフローチャートである。
外部より推定モードを示すモード指定情報と、選択規範指示情報とが与えられる。外部から推定モードを示すモード指定情報が与えられると関係性推定部40のスイッチ404は、出力層403の出力端を事後処理部50に接続する端子に接続するように切り替えを行う。
事後処理部50のスイッチ500は、選択規範指示情報にしたがって、スイッチ500の入力端を、選択規範指示情報に応じたいずれか1つの評価関数計算部501−1〜Nに接続する出力端に接続するように切り替えを行う。
ここでは、例えば、選択規範指示情報が示す選択規範が、「複数存在する受信アンテナを備えるIoT機器の中で受信電力が最小のIoT機器の受信電力を最大化するAPの位置を最適なAPの設置位置として選択する」選択規範であるとする。また、当該選択規範に対応するものが評価関数計算部501−1であるとする。したがって、スイッチ500は、選択規範指示情報にしたがって、入力端を評価関数計算部501−1に接続する出力端に接続するように切り替えを行う(ステップSc1)。
情報選択部20は、推定モードを示すモード指定情報を受けて、情報記憶部10が記憶する全ての評価用の送信アンテナ座標情報を読み出す。情報選択部20は、情報記憶部10が記憶する受信アンテナ座標情報セットと、レイアウト情報とを読み出す。情報選択部20は、読み出した評価用の送信アンテナ座標情報を1つずつ選択して、選択した評価用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを事前処理部30に出力することを全て評価用の送信アンテナ座標情報について繰り返し行う(ステップSc2)。また、情報選択部20は、選択した順に評価用の送信アンテナ座標情報を事後処理部50にも出力する(ステップSc3)。
ステップSc2の処理は、例えば、図22に示すように、情報記憶部10が、評価用の送信アンテナ座標情報として、r1〜rmのm個を予め記憶している場合、情報選択部20は、m個の評価用の送信アンテナ座標情報r1〜rmの各々について、評価用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを事前処理部30にm回繰り返して出力する。情報選択部20は、読み出した評価用の送信アンテナ座標情報r1〜rmを事後処理部50にも出力する。
ステップSc4及びステップSc5において、図7に示したステップSa3とステップSa4と同一の処理が、事前処理部30により、評価用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とに対して行われる。これにより、図22に示すように、事前処理部30は、r1〜rmのm個の評価用の送信アンテナ座標情報に対応するm通りのプリプロセッシング行列、すなわちm個の送受信アンテナ間減衰行列と、m個の送受信アンテナ間位相行列を生成して関係性推定部40に出力する。
関係性推定部40の構成は、推定モードを示すモード指定情報によって、スイッチ404が接続先を切り替えることにより、図23に示すような内部構成となる。関係性推定部40は、m通りのプリプロセッシング行列からm通りの電波環境行列を推定する推定処理を行う。すなわち、関係性推定部40の入力層401は、事前処理部30が出力する送受信アンテナ間減衰行列をCh1の入力情報として、送受信アンテナ間位相行列をCh2の入力情報としてm回繰り返して取り込みを行い、取り込んだ入力情報を中間層402に出力する。
中間層402におけるコンボリューション層402−C1〜C6の各々は、関係性情報記憶部407が記憶する学習済みの重み係数を用いて、送受信アンテナ間減衰行列と、送受信アンテナ間位相行列とに対して畳み込み演算を行う。
コンボリューション層402−C1〜C5の各々は、畳み込み演算の結果を各々の次段のRelu部402−R1〜R5に出力し、Relu部402−R1〜R5は、入力値に対してRelu関数を適用し、Relu関数の適用により得られた出力値をコンボリューション層402−C2〜C6に出力する。
コンボリューション層402−C6は、畳み込み演算の結果を出力層403に出力し、出力層403は、Ch1として推定RSSI行列を出力し、Ch2として推定PER行列を出力する。関係性推定部40は、m通りのプリプロセッシング行列に対応するm通りの推定した電波環境行列、すなわちm個の推定RSSI行列と、m個の推定PER行列とを生成して事後処理部50に出力する(ステップSc6)。
外部から与えられた選択規範指示情報に基づいて選択されている評価関数計算部501−1は、図24に示すように、評価用の送信アンテナ座標情報r1〜rmに対応する推定RSSI行列と、推定PER行列とを取り込む。
選択規範指示情報によって示されている選択規範は、上述したように、複数存在する受信アンテナを備えるIoT機器の中で受信電力が最小のIoT機器の受信電力を最大化するAPの位置を最適なAPの設置位置として選択する選択規範である。そのため、評価関数計算部501−1には、例えば、推定RSSI行列の要素である受信強度値(RSSI)から受信電力値を算出する評価関数が適用される。
評価関数計算部501−1は、評価関数を適用して推定RSSI行列から受信アンテナ座標情報ごとの受信電力値を評価値として算出し、算出した受信アンテナ座標情報ごとの受信電力値と、評価用の送信アンテナ座標情報とを対応付ける。評価関数計算部501−1が、複数の評価用の送信アンテナ座標情報に対応する全ての推定RSSI行列について評価関数を適用することにより、評価用の送信アンテナ座標情報ごとに、受信アンテナ座標情報の各々に対応する評価値が得られることになる。
評価関数計算部501−1は、最小の受信電力値になる受信アンテナ座標情報を検出する。評価関数計算部501−1は、検出した受信アンテナ座標情報に対応する受信電力値の中で最大の受信電力値を示す場合の評価用の送信アンテナ座標情報を検出する。評価関数計算部501−1は、検出した送信アンテナ座標情報を出力部502に出力する。出力部502は、評価関数計算部501−1が出力する送信アンテナ座標情報を取り込み、取り込んだ送信アンテナ座標情報を最適な送信アンテナの設置位置を示す最適AP座標情報として出力する(ステップSc7)。
なお、選択規範指示情報が示す選択規範が「複数存在する受信アンテナを備えるIoT機器の中でPERが最大のIoT機器、すなわち最もパケットエラーが起こる確率が高いIoT機器のPERを最小化するAPの位置を最適なAPの設置位置として選択する」という選択規範が与えられている場合、ステップSc7の処理は以下のようになる。
評価関数計算部501−1には、例えば、推定PER行列に含まれる受信アンテナ座標情報ごとのPERを評価値として読み出す評価関数が適用される。評価関数計算部501−1は、評価関数を適用して推定PER行列から受信アンテナ座標情報ごとのPERを評価値として読み出し、読み出した評価値と、評価用の送信アンテナ座標情報とを対応付ける。評価関数計算部501−1が、複数の評価用の送信アンテナ座標情報に対応する全ての推定PER行列について評価関数を適用することにより、評価用の送信アンテナ座標情報ごとに、受信アンテナ座標情報の各々に対応する評価値が得られることになる。
評価関数計算部501−1は、最大のPERになる受信アンテナ座標情報を検出する。評価関数計算部501−1は、検出した受信アンテナ座標情報に対応するPERの中から最小のPERを検出し、検出した最小のPERに対応付けられている評価用の送信アンテナ座標情報を検出する。評価関数計算部501−1は、検出した送信アンテナ座標情報を出力部502に出力する。出力部502は、評価関数計算部501−1が出力する送信アンテナ座標情報を取り込み、取り込んだ送信アンテナ座標情報を最適な送信アンテナの設置位置を示す最適AP座標情報として出力する。
図25において、図25(a)は、シミュレーション結果により得られた推定RSSI行列のヒートマップを示す図であり、図25(b)は、実測RSSI行列のヒートマップを示す図である。シミュレーションの条件は、以下の通りである。9個の異なる学習用の送信アンテナ座標情報を選択し、選択した9個の学習用の送信アンテナ座標情報から100個のパケットを送信して生成した900個の送受信アンテナ間減衰行列と送受信アンテナ間位相行列を教師情報として学習処理を行った。また、評価用の送信アンテナ座標情報は、学習用の送信アンテナ座標情報と別の座標情報を与えた。図25(a),(b)に示すヒートマップの差分の絶対値は4.5dBの誤差であり、第1の実施形態の電波環境推定装置1により良好な推定を行うことができていることが分かる。
なお、上記の第1の実施形態の構成では、位相計算部302は、1回の反射のみを考慮して送受信アンテナ間位相行列を生成していたが、例えば、図26(b)に示すように、2回の反射を考慮した送受信アンテナ間位相行列を生成するようにしてもよい。
例えば、2回の反射を考慮する場合、位相計算部302は、合成受信強度値を以下のようにして算出する。まず、図26(a)に示す1回の反射のみを対象として合成受信強度値を算出する。例えば、反射点4000−k1,4000−k2,4000−k3の各々を経由して受信アンテナ座標3000−kに到達する電波の受信強度値が自由空間伝搬損失によってそれぞれβ1,β2,β3になっており、位相回転量がそれぞれΨ1,Ψ2,Ψ3になっていたとする。この場合、合成受信強度値σ1は、次式(7)となる。
σ1=β1exp(jΨ1)+β2exp(jΨ2)+β3exp(jΨ3)・・・(7)
次に、図26(b)に示す2回の反射のみを対象として合成受信強度値を算出する。例えば、反射点4000−k4及び4000−k5、並びに反射点4000−k6,4000−k7の各々を経由して受信アンテナ座標3000−kに到達する電波の受信強度値が自由空間伝搬損失によってそれぞれβ4,β5となっており、位相回転量がそれぞれΨ4,Ψ5になっていたとする。この場合、合成受信強度値σ2は、次式(8)となる。
σ2=β4exp(jΨ4)+β5exp(jΨ5)・・・(8)
したがって、位相計算部302は、1回の反射と、2回の反射の両方を考慮した場合の合成受信強度値σを、次式(9)の通り算出する。
σ=σ1+σ2=β1exp(jΨ1)+β2exp(jΨ2)+β3exp(jΨ3)+β4exp(jΨ4)+β5exp(jΨ5)・・・(9)
マルチパスは、直接波と間接波によって構成されるが、間接波は、上述した反射波以外に、回折波や透過波を存在する。そこで、送受信アンテナ間位相行列の要素として、図27に示すような回折波や、図28に示す透過波を適用するようにしてもよい。
図27に示す回折波の場合、送信アンテナ座標2000−kの位置から受信アンテナ座標3000−kの位置までの間の距離が直線でなく、曲線になる。そのため、位相計算部302は、曲線の長さを伝搬距離として自由空間伝搬損失量を算出し、算出した自由空間伝搬損失量に基づいて受信アンテナ座標3000−kにおける受信強度値を算出する。
また、図28に示す透過波の場合、送信アンテナ座標2000−kの位置から受信アンテナ座標3000−kの位置までの間に符号800p3で示す障害物が存在する。そのため、位相計算部302は、送信アンテナ座標2000−kの位置から受信アンテナ座標3000−kの位置までの直線距離に基づく自由空間伝搬損失量を算出すると共に、符号800p3により示す障害物を透過したことによる減衰量を算出する。位相計算部302は、算出した自由空間伝搬損失量と減衰量とに基づいて受信アンテナ座標3000−kにおける受信強度値を算出する。
また、送受信アンテナ間位相行列の要素として、上記の1回反射波、2回反射波、回折波、または透過波を任意に組み合わせた合成受信強度値を要素としてもよい。また、直接波と、上記の1回反射波、2回反射波、回折波、または透過波を任意に組み合わせた合成受信強度値を送受信アンテナ間位相行列の要素としてもよい。
また、上記の第1の実施形態の構成では、図8に示した位相計算部302による送受信アンテナ間位相行列生成処理において2重ループの処理、すなわちループLb2s〜Lb2eに示す複数の数式について繰り返す処理を、ループLb1s〜Lb1eに示す全ての受信アンテナ座標情報について繰り返す処理の中で行う処理としているが、ループLb2s〜Lb2eとループLb1s〜Lb1eの関係を逆にして、ステップSb3の処理を2重ループの処理が終了した後に行うようにしてもよい。
また、上記の第1の実施形態の構成では、関係性推定部40に対して、教師情報として、実測RSSI行列と実測PER行列とを与えて学習処理を行わせるようにしているが、本発明の構成は、当該実施の形態に限られない。受信アンテナの位置において実測が可能な電波の受信状態を示す情報であればどのような情報であってもよく、実測RSSI行列及び実測PER行列に替えて、実測したスループットの値を要素とする実測スループット行列、実測したBER(Bit Error Ratio)の値を要素とする実測BER行列、遅延プロファイルの情報、実測したSNR(Signal-to-Noise Ratio)の値を要素とする実測SNR行列、実測したSINR(Signal to Interference plus Noise Ratio)の値を要素とする実測SINR行列、実測したCNR(Carrier to Noise Ratio)の値を要素とする実測CNR行列、実測したCINR(Carrier to Interference and Noise Ratio)の値を要素とする実測CINR行列のいずれか又は全てを与えるようにしてもよい。その場合、実測RSSI行列、実測PER行列、実測スループット行列、実測BER行列、遅延プロファイル、実測SNR行列、実測SINR行列、実測CNR行列、実測CINR行列の中からいずれか2つを任意に組み合わせた情報を教師情報としてもよい。また、実測RSSI行列、実測PER行列、実測スループット行列、実測BER行列、遅延プロファイル、実測SNR行列、実測SINR行列、実測CNR行列及び実測CINR行列の3つ以上を含む情報を教師情報としてもよく、実測RSSI行列、実測PER行列、実測スループット行列、実測BER行列、遅延プロファイル、実測SNR行列、実測SINR行列、実測CNR行列及び実測CINR行列のいずれか1つを教師情報としてもよい。推定モードにおいては、関係性推定部40は、教師情報として与えた行列に対応する行列を推定結果として事後処理部50に出力する。そのため、事後処理部50は、関係性推定部40が出力する推定結果に応じて評価値を算出することができる評価関数が適用された評価関数計算部501−1〜Nを備えておく必要がある。
また、上記の第1の実施形態の構成では、関係性推定部40に対して、入力情報として、送受信アンテナ間減衰行列と送受信アンテナ間位相行列を与えて学習処理を行わせるようにしているが、本発明の構成は、当該実施の形態に限られない。入力情報として送受信アンテナ間位相行列のみを与えるようにしてもよい。この場合に与える教師情報についても、第1の実施形態の実測RSSI行列及び実測PER行列に限られず、上述したように、実測RSSI行列、実測PER行列、実測スループット行列、実測BER行列、遅延プロファイル、実測SNR行列、実測SINR行列、実測CNR行列及び実測CINR行列の中からいずれか2つを任意に組み合わせた情報を教師情報として与えてもよく、実測RSSI行列、実測PER行列、実測スループット行列、実測BER行列、遅延プロファイル、実測SNR行列、実測SINR行列、実測CNR行列及び実測CINR行列の3つ以上を含む情報を教師情報として与えてもよく、実測RSSI行列、実測PER行列、実測スループット行列、実測BER行列、遅延プロファイル、実測SNR行列、実測SINR行列、実測CNR行列及び実測CINR行列のいずれか1つを教師情報として与えるようにしてもよい。
また、上記の第1の実施形態の構成では、関係性推定部40のニューラルネットワーク部400は、3次元のニューラルネットワークを備えるようにしているが、本発明の構成は、当該実施の形態に限られない。例えば、上記のように送受信アンテナ間位相行列のみを入力情報として与える場合、2次元のニューラルネットワークとしてもよく、また、送受信アンテナ間減衰行列や送受信アンテナ間位相行列を2次元の情報に整形したり、1次元の情報に整形したりすることにより、1次元のニューラルネットワークや2次元のニューラルネットワークを備えるニューラルネットワーク部400を適用することも可能である。
また、上記の第1の実施形態の構成では、関係性推定部40のニューラルネットワーク部400の中間層402は、Relu関数を適用するRelu部402−R1〜R5を備えているが、Relu部402−R1〜R5に替えて、ステップ関数、線形結合、シグモイド関数、ソフトサイン関数、ソフトプラス関数等の他の活性化関数に基づく演算を行う機能部を備えるようにしてもよい。
また、上記の第1の実施形態の構成では、受信アンテナを設置する範囲として、例えば、図2に示した四辺形900の領域を示したが、本発明の構成は、当該実施の形態に限られない。四辺形に限らず、任意の形状であってもよい。関係性推定部40において学習処理に用いることができるのは、実測RSSIや実測PERを教師情報として与えることができる受信アンテナ座標に限られるため、RSSIやPERの実測が可能な位置のみを受信アンテナ座標としてもよい。
また、上記の第1の実施形態の構成では、関係性推定部40は、機械学習により入力情報である送受信アンテナ間減衰行列及び送受信アンテナ間位相行列と、教師情報である実測RSSI行列及び実測PER行列との関係性を示す情報を生成する構成となっているが、本発明の構成は、当該実施の形態に限られない。機械学習以外の手法、例えば、決定論的アルゴリズムによって、入力情報と教師情報との関係性を示す関係性情報を生成するようにしてもよい。
また、上記の第1の実施形態の構成では、推定する電波環境として、例えば、XY座標で表す2次元平面を対象としているが、XYZ座標で表す3次元空間を対象としてもよい。
また、上記の第1の実施形態の構成では、事後処理部50による処理を実行せずに、関係性推定部40が、任意の位置に送信アンテナを置いた場合の電波の強さのヒートマップを推定するように構成されてもよい。このように構成される場合、関係性推定部40は、評価用の送信アンテナ座標情報と、生成した関係性情報とに基づいて電波の受信状態を示す情報を算出することによって電波の強さのヒートマップを推定する。
上記の第1の実施形態の構成により、電波環境推定装置1において、事前処理部30は、電波を送信する送信アンテナの位置を示す送信アンテナ座標情報と、電波を受信する受信アンテナの位置を示す受信アンテナ座標情報と、電波の伝搬を障害する障害物がレイアウトされている位置を示すレイアウト情報とに基づいて障害物によって生じる電波の間接波を合成した際の合成受信強度値を、間接波の位相又は伝搬距離を考慮して、受信アンテナ座標情報ごとに算出する。関係性推定部40は、送信アンテナ座標情報に対応する受信アンテナ座標情報ごとの合成受信強度値を入力情報とし、当該送信アンテナが出力する電波を受信アンテナの位置において実測した電波の受信状態を示す情報を教師情報とし、入力情報と教師情報との関係性を示す関係性情報を生成する。関係性推定部40は、評価用の送信アンテナ座標情報と、生成した関係性情報とに基づいて電波の受信状態を示す情報を算出することによって電波の強さのヒートマップを推定する。これにより、任意の位置に送信アンテナを置いた場合であってもヒートマップを推定することができる。そのため、障害物の数に関わらず一定の計算時間で、間接波の影響を考慮しつつ、電波の強さを推定することが可能となる。
また、上記の第1の実施形態の構成により、電波環境推定装置1において、事前処理部30は、電波を送信する送信アンテナの位置を示す送信アンテナ座標情報と、電波を受信する受信アンテナの位置を示す受信アンテナ座標情報と、電波の伝搬を障害する障害物がレイアウトされている位置を示すレイアウト情報とに基づいて障害物によって生じる電波の間接波を合成した際の合成受信強度値を、間接波の位相又は伝搬距離を考慮して、受信アンテナ座標情報ごとに算出する。関係性推定部40は、送信アンテナ座標情報に対応する受信アンテナ座標情報ごとの合成受信強度値を入力情報とし、当該送信アンテナが出力する電波を受信アンテナの位置において実測した電波の受信状態を示す情報を教師情報とし、入力情報と教師情報との関係性を示す関係性情報を生成する。関係性推定部40は、評価用の送信アンテナ座標情報と、生成した関係性情報とに基づいて電波の受信状態を示す情報を算出する。事後処理部50は、電波の受信状態を示す情報に基づいて評価用の送信アンテナの位置の評価を行う。これにより、障害物の数に関わらず一定の計算時間で、間接波の影響を考慮しつつ、最適な送信アンテナの設置位置を推定することが可能となる。
上述したように、電波が伝搬する際に反射等によって間接波が発生してマルチパスの状態になると受信アンテナが受信する電波において同相と逆相の合成が発生する。そのため、受信アンテナが受信する電波の受信強度の変化は、単調減衰とはならず振動的になる。そこで、第1の実施形態による電波環境推定装置1では、精度よく電波の受信強度を推定するため、電波の位相情報に着目した電波環境の推定を行うようにしている。
伝搬環境の画像情報のみを機械学習の入力情報としても、電波の位相情報が含まれていないため、マルチパス環境における電波の同相合成や逆相合成に起因する電波の強め合いや落ち込みを学習結果に反映することができない。そこで、電波環境推定装置1では、事前処理部30が、反射等によって生じる主たる間接波の受信強度値と位相回転量の合成結果を行列化して送受信アンテナ間位相行列として生成する事前処理を行う。事前処理部30が生成した送受信アンテナ間位相行列を入力情報とし、受信アンテナの位置において実測した電波の受信状態を示す情報を教師情報として、関係性推定部40が、機械学習の手法による学習処理を行うことで、位相情報を考慮した高精度な学習処理を行うことが可能となる。また、事前処理部30の位相計算部302は、間接波が反射波の場合、反射波の伝搬距離を、楕円関数を用いて低演算量で算出することにより演算時間の短縮を行うことを可能としている。
非特許文献1に示す技術では、電波環境の推定対象である実空間を1次元の情報に整形しているため、空間的な特徴情報を考慮した電波環境の推定を行う構成を備えていない。これに対して、電波環境推定装置1の関係性推定部40のニューラルネットワーク部400は、3次元のニューラルネットワークを備えているため、空間的な特徴情報を含んだ入力情報を取り込んで、空間的な特徴情報を含んだ学習処理を行うことを可能としている。
また、1次元のニューラルネットワークに比べて、2次元や3次元のニューラルネットワークは、学習処理や推定処理において複数回の畳み込み演算を行うため、入力情報に対して適切な事前処理を行っておかないと膨大な演算時間が必要となる。これに対して、電波環境推定装置1では、事前処理部30が、送受信アンテナ間減衰行列と送受信アンテナ間位相行列という空間的な電波の特徴情報を抽出する事前処理を行っており、それにより入力情報の要素数の低減が図られているため演算時間を短縮することが可能となっている。
演算時間の観点について、伝搬環境を推定するレイトレースの手法では、上述したように、対象範囲に存在する障害物の全ての伝搬経路の反射や透過を計算していくため、障害物の数の増大に応じて伝搬経路の数が指数関数的に増大する。そのため、建物等の構造によっては、計算に要する時間が、非常に長くなってしまうという問題がある。これに対して、電波環境推定装置1では、学習処理により学習済みの重み係数を生成した後は、障害物の数に依存せずに一定時間で推定処理を行うことが可能となる。更に、電波環境推定装置1では、事前処理部30により電波の伝搬環境に存在する特徴情報を抽出した上で演算を行うため、レイトレースに比べて短時間で推定を行うことを可能としている。一例として、レイトレースのソフトウェアXGtdによって推定に数時間を要する伝搬環境の場合、電波環境推定装置1では、数分で処理することを可能としている。
また、上記の第1の実施形態の構成では、APの送信アンテナと、IoT機器の受信アンテナとを対象として、最適な送信アンテナの設置位置、すなわち最適なAPの設置位置を選択する構成としているが、無線通信の電波の伝搬は送受信で対称性がある。そのため、APからIoT機器に電波を送信して、IoT機器において受信する電波の受信強度値が低ければ、逆に、IoT機器からAPに電波を送信した場合に、APにおいて受信する電波の受信強度値も同様に低くなる。したがって、逆の関係も成立するため、電波環境推定装置1によって、IoT機器の送信アンテナと、APの受信アンテナを対象として、最適な送信アンテナの設置位置、すなわち最適なIoT機器の設置位置を選択するようにしてもよい。
(第2の実施形態)
図29は、第2の実施形態による電波環境推定装置2の構成を示すブロック図である。第1の実施形態の電波環境推定装置1と同一の構成について同一の符号を付し、以下、異なる構成について説明する。電波環境推定装置2は、情報記憶部10a、情報選択部20a、事前処理部30、関係性推定部40及び事後処理部50aを備える。
第1の実施形態の電波環境推定装置1では、関係性推定部40が出力した推定RSSI行列と推定PER行列とに基づいて、評価関数計算部501−1〜Nが、予め定められる評価関数と評価条件とに基づいて、最適AP座標情報を求める構成になっていた。これに対して、第2の実施形態の電波環境推定装置2は、推定RSSI行列と推定PER行列と、最適AP座標情報との関係を機械学習の手法によって学習処理を行う構成を備える。
そのため、事後処理部50aは、例えば、図4に示した関係性推定部40の内部構成と同様の内部構成を備えており、入力情報として、関係性推定部40が出力する推定RSSI行列及び推定PER行列が与えられ、教師情報として、実測RSSI行列及び実測PER行列に替えて、予め定められる学習用の最適な送信アンテナの設置位置を示す最適AP座標情報が与えられる。
学習用の最適AP座標情報は、例えば、以下のようにして選択する。事前処理部30は、学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とに基づいて、送受信アンテナ間減衰行列及び送受信アンテナ間位相行列を生成する。関係性推定部40は、事前処理部30が生成した送受信アンテナ間減衰行列及び送受信アンテナ間位相行列に基づいて推定RSSI行列及び推定PER行列を生成する。
すなわち、学習用の送信アンテナ座標情報ごとに、推定RSSI行列及び推定PER行列が得られることになる。したがって、複数の学習用の送信アンテナ座標情報から、各々に対応する複数の推定RSSI行列及び複数の推定PER行列が得られることになる。
第1の実施形態において説明した選択規範のうちいずれか1つの選択規範を選択し、選択した選択規範に応じて複数の学習用の送信アンテナ座標情報の中から最適な送信アンテナの設置位置となる座標情報を、例えば、実測結果に基づいて予め検出する。検出した学習用の送信アンテナ座標情報を、学習用の最適AP座標情報として選択する。情報記憶部10aは、第1の実施形態の情報記憶部10が記憶する情報に加えて、上記のようにして選択した学習用の最適AP座標情報を予め記憶する。
電波環境推定装置2による処理は以下のようにして行われる。第1モード指定情報は、第1の実施形態におけるモード指定情報に対応しており、最初に、学習モードを示す第1モード指定情報が情報選択部20aと関係性推定部40に与えられる。これにより、関係性推定部40は、第1の実施形態と同様に、送受信アンテナ間減衰行列及び送受信アンテナ間位相行列と、実測RSSI行列及び実測PER行列との関係性を推定する機械学習の手法による学習処理を開始する。
関係性推定部40による学習処理が終了すると、推定モードを示す第1モード指定情報
が情報選択部20aと関係性推定部40に与えられ、学習モードを示す第2モード指定情報が情報選択部20aと事後処理部50aに与えられる。
情報選択部20aは、第1モード指定情報が推定モードであり、第2モード指定情報が学習モードであるため、事前処理部30に対して、学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを出力する。また、情報選択部20aは、情報記憶部10aから学習用の最適AP座標情報を読み出して事後処理部50aに出力する。
事前処理部30は、学習用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とに基づく送受信アンテナ間減衰行列及び送受信アンテナ間位相行列を生成して関係性推定部40に出力する。関係性推定部40は、事前処理部30が出力する送受信アンテナ間減衰行列及び送受信アンテナ間位相行列に基づいて推定RSSI行列と推定PER行列を生成して事後処理部50aに出力する。
事後処理部50aは、関係性推定部40が出力する推定RSSI行列と推定PER行列とを入力情報として取り込み、情報選択部20aが出力する最適AP座標情報を含む教師情報を用いて機械学習の手法による学習処理を行う。学習処理を繰り返し行う場合、データ選択指示情報を情報選択部20aに出力する。
事後処理部50aによる学習処理が終了すると、推定モードを示す第1モード指定情報
が情報選択部20aと関係性推定部40に与えられ、推定モードを示す第2モード指定情報が情報選択部20aと事後処理部50aに与えられる。情報選択部20aは、第1モード指定情報及び第2モード指定情報の両方が推定モードであるため、事前処理部30に対して、評価用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とを出力する。
事前処理部30は、評価用の送信アンテナ座標情報と、受信アンテナ座標情報セットと、レイアウト情報とに基づいて、評価用の送信アンテナ座標情報に対応する送受信アンテナ間減衰行列及び送受信アンテナ間位相行列を生成して出力する。第1の実施形態の図21に示したステップSc2の通り、評価用の送信アンテナ座標情報は複数存在するため、事前処理部30は、複数の評価用の送信アンテナ座標情報に対応する複数の送受信アンテナ間減衰行列及び複数の送受信アンテナ間位相行列を生成して出力する。
関係性推定部40は、学習処理によって得らえた学習済みの重み係数を複数の送受信アンテナ間減衰行列及び複数の送受信アンテナ間位相行列に適用して複数の推定RSSI行列及び複数の推定PER行列を生成して出力する。事後処理部50aは、学習処理によって得られた入力情報と教師情報との関係性を示す関係性情報である学習済みの重み係数を複数の推定RSSI行列及び複数の推定PER行列に適用して最適AP座標情報を出力する。
なお、上記の第2の実施形態の構成では、入力情報が、推定RSSI行列及び推定PER行列の両方を含むようにしているが、本発明の構成は、当該実施の形態に限られない。RSSIのみから最適AP座標情報を求めることが可能な選択規範が選択された場合、入力情報として推定RSSI行列を与えるようにしてもよい。また、PERのみから最適AP座標情報を求めることが可能な選択規範が選択された場合、入力情報として推定PER行列を与えるようにしてもよい。また、関係性推定部40において、推定RSSI行列や推定PER行列以外の他の電波の受信状態を示す情報、例えば、推定スループット行列等を出力するように学習処理が行われた場合、当該他の電波の受信状態を示す情報を入力情報として与えるようにしてもよい。
上記の第2の実施形態の構成により、事後処理部50aが、機械学習の手法による学習処理によって、入力情報である推定RSSI行列、推定PER行列等の電波の受信状態を示す情報と、教師情報である学習用の最適AP座標情報との関係性を示す関係性情報を生成する。それにより、決定論的アルゴリズムである評価関数及び評価条件を用いることなく、複数の評価用の送信アンテナ座標情報の中から最適AP座標情報を選択することが可能となる。
(第3の実施形態)
図30は、第3の実施形態による電波環境推定装置3の構成を示すブロック図である。第1の実施形態の電波環境推定装置1と同一の構成について同一の符号を付し、以下、異なる構成について説明する。電波環境推定装置3は、情報記憶部10、情報選択部20、事前処理部30、関係性推定部40、事後処理部50、見通し判定部60、自由空間伝搬損計算部70及び事後処理部50bを備える。
無線通信は、一般的に、送受信間が見通しの状態(LOS(Line of Sight))の関係にある場合、直接波が支配的となり、受信アンテナが受信する電波の受信強度値は、自由空間伝搬損失に依存するため、自由空間伝搬損失から受信強度値を算出することができる。これに対して、送受信間が見通し外の状態(NLOS(Non Line of Sight))の関係にある場合、受信アンテナが受信する電波の受信強度値は、間接波が支配的となるため、自由空間伝搬損失のみから受信強度値を求めることが困難となる。そのため、第3の実施形態の電波環境推定装置3では、送受信間の見通しの状態に応じて処理を分ける構成を備える。
見通し判定部60は、情報選択部20が出力する送信アンテナ座標情報、受信アンテナ座標情報セット、レイアウト情報を取り込む。また、見通し判定部60は、取り込んだ送信アンテナ座標情報と、受信アンテナ座標情報セットに含まれる各々の受信アンテナ座標情報と、レイアウト情報とに基づいて、送受信間の直線の経路上の見通し状態を判定する。
見通し判定部60は、送受信間の直線の経路上に障害物が存在しない場合、見通し状態として判定する。これに対して、見通し判定部60は、例えば、第1の実施形態において示した図11に示すような送受信間の直線の経路上に障害物が存在する状態の場合、送受信間が見通し外の状態として判定する。
見通し判定部60は、送受信間が見通しの状態であると判定した場合、外部から推定モードを示すモード指定情報が与えられている場合、見通しの状態であると判定した送信アンテナ座標情報及び受信アンテナ座標情報と、レイアウト情報とを自由空間伝搬損計算部70に出力する。なお、送受信間が見通しの状態であると判定した場合に、外部から学習モードを示すモード指定情報が与えられている場合、見通しの状態では学習を行う必要がないため、見通し判定部60は、見通しの状態であると判定した送信アンテナ座標情報及び受信アンテナ座標情報と、レイアウト情報とを自由空間伝搬損計算部70に出力しない。
自由空間伝搬損計算部70は、事前処理部30が備える自由空間伝搬損計算部300と同様に、送信アンテナ座標情報と、受信アンテナ座標情報とに基づいて、送受信間の直線経路を伝搬距離として自由空間伝搬損失量を算出する。また、自由空間伝搬損計算部70は、算出した自由空間伝搬損失量に基づいて、受信アンテナ座標情報の位置において受信アンテナが受信する電波の受信強度値を算出する。また、自由空間伝搬損計算部70は、算出した受信強度値を受信アンテナ座標情報の位置に基づいて縦横に並べて、送信アンテナ座標情報ごとのRSSI行列を生成して事後処理部50bに出力する。
事後処理部50bは、図6に示す事後処理部50が備える評価関数計算部501−1〜Nのうち、受信強度値のみを評価の対象とする評価関数が適用されている評価関数計算部501−1〜Nのみを備える。また、事後処理部50bは、事後処理部50と同様に、スイッチ500及び出力部502を備える。
事後処理部50bは、入力情報としてRSSI行列のみが与えられる構成であるため、PERのみを対象とする評価関数や、PERと受信強度値(RSSI)の両方を対象とする評価関数を選択する選択規範指示情報が与えられた場合、評価関数を適応して評価値を算出することができない。
そのため、事後処理部50bのスイッチ500は、PERのみを対象とする評価関数や、PERと受信強度値(RSSI)の両方を対象とする評価関数を選択する選択規範指示情報が与えられた場合、スイッチ500の入力端と、評価関数計算部501−1〜Nに接続する出力端との接続を行わない。受信強度値(RSSI)のみを対象とする評価関数を選択する選択規範指示情報が与えられた場合のみ、事後処理部50bは、選択規範指示情報に応じた評価関数計算部501−1〜Nのいずれかを適用し、最適AP座標情報を出力する。
これに対して、見通し判定部60は、送受信間が見通し外の状態であると判定した場合、モード指定情報の内容が学習モードであるか、推定モードであるかに関わらず、見通し外の状態であると判定した送信アンテナ座標情報及び受信アンテナ座標情報と、レイアウト情報とを事前処理部30に出力する。これにより、第1の実施形態と同様に、事前処理部30は、送受信アンテナ間減衰行列と送受信アンテナ間位相行列を生成して関係性推定部40に出力する。
関係性推定部40は、外部から学習モードのモード指定情報が与えられている場合、機械学習の手法による学習処理を行い、外部から推定モードのモード指定情報が与えられている場合、推定RSSI行列と推定PER行列を生成して事後処理部50に出力する。事後処理部50は、第1の実施形態と同様に、外部から与えられる選択規範指示情報に基づいて、評価関数計算部501−1〜Nのいずれかを適用し、最適AP座標情報を出力する。
上記の第3の実施形態の構成により、見通し判定部60は、送信アンテナ座標情報と、受信アンテナ座標情報と、レイアウト情報とに基づいて、送信アンテナの位置と、受信アンテナの位置とを結ぶ直線の経路上に障害物が存在するか否かを判定する。見通し判定部60が、障害物が存在すると判定した場合、事後処理部50が、関係性推定部40が算出した電波の受信状態を示す情報に基づいて評価用の送信アンテナの位置の評価を行い、見通し判定部60が、障害物が存在しないと判定した場合、事後処理部50bが、評価用の送信アンテナ座標情報が示す位置と受信アンテナの位置とを結ぶ直線の経路を伝搬する直接波の受信アンテナの位置における受信強度値を受信アンテナ座標情報ごとに算出し、算出した受信強度値に基づいて評価用の送信アンテナの位置の評価を行う。これにより、関係性推定部40が関係性を示す関係性情報を生成するのに要する処理負荷を必要最低限に抑えることができ、更に、演算時間の低減を図ることが可能となる。
なお、上記の第3の実施形態では、事後処理部50と、事後処理部50bとを備える構成としているが、事後処理部50と事後処理部50bを一体の構成としてもよい。その場合、スイッチ500は、2つの入力端を有することになり、一方の入力端には、関係性推定部40が接続され、他方の入力端には自由空間伝搬損計算部70が接続される構成となる。当該構成において、スイッチ500は、関係性推定部40が、推定RSSI行列と推定PER行列を出力する場合と、自由空間伝搬損計算部70が受信強度値(RSSI)を出力する場合とに応じて各々に適切な評価関数計算部501−1〜Nに接続を行う切り替え処理を行うことになる。
上記の第3の実施形態の構成において、事後処理部50に替えて、第2の実施形態の情報記憶部10a、情報選択部20a及び事後処理部50aを適用し、事後処理部50aに機械学習の手法による学習処理を行わせるようにしてもよい。
上記の各実施形態(第1の実施形態〜第3の実施形態)では、電波の受信状態を示す情報の教師情報として実測値を用いる構成を示したが、教師情報として用いる電波の受信状態を示す情報はこれに限定される必要はない。例えば、実測以外の方法で得られた電波の受信状態を示す情報が、教師情報として用いられてもよい。実測以外の方法で得られた電波の受信状態を示す情報は、例えば事前に、レイトレース等のシミュレーションにより求められたRSSI、PER、スループット、BER、遅延プロファイル、SNR、SINR、CNR、CINR等の推定情報である。シミュレーションを使用する場合においても、関係性推定部40では教師情報を使わないため、本発明の効果である、障害物の数に関わらず一定の計算時間で間接波の影響を考慮しつつ最適な送信アンテナの設置位置を推定できるという本発明の特長は損なわれない。
また、上記の各実施形態(第1の実施形態〜第3の実施形態)の構成では、例えば、図7に示すステップSa6の処理において、不等号を用いた判定処理を行っている。しかしながら、本発明は、当該実施の形態に限られるものではなく、「超過するか否か」、「未満であるか否か」、「以上であるか否か」、「以下であるか否かを」という判定処理は一例に過ぎず、閾値の定め方に応じて、ぞれぞれ「以上であるか否か」、「以下であるか否かを」、「超過するか否か」、「未満であるか否か」という判定処理に置き換えられてもよい。また、判定処理に用いた閾値についても、一例を示したものであり、それぞれにおいて異なる閾値が適用されてもよい。すなわち、上記の閾値判定処理については、判定対象の値が、閾値以上であるか否かを判定するようにしてもよい。
上述した実施形態における電波環境推定装置1,2,3をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。