(57)【要約】【課題】複数の周期の信号を含むパルス列信号の各周期を精度高く推定する。【解決手段】集約部１５ａが、入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する。算出部１５ｂが、集約されたパルス列信号を用いて自己相関関数の時間シフト量を算出する。検出部１５ｃが、算出された時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、該自己相関値が該しきい値を超えている場合に、該時間シフト量を集約されたパルス列信号の周期として検出する。換算部１５ｄが、検出された周期を、単位時間を用いて入力されたパルス信号の周期に換算する。除外部１５ｅが、換算された周期のパルス列信号を、入力されたパルス列信号から除外する。【選択図】図１
2020095540.tif 000002
【特許請求の範囲】
【請求項１】
入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する集約部と、
集約された前記パルス列信号を用いて自己相関関数の時間シフト量を算出する算出部と、
算出された前記時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、該自己相関値が該しきい値を超えている場合に、該時間シフト量を集約された前記パルス列信号の周期として検出する検出部と、
検出された前記周期を、前記単位時間を用いて入力された前記パルス列信号の周期に換算する換算部と、
換算された前記周期のパルス列信号を、入力された前記パルス列信号から除外する除外部と、
を備えることを特徴とする推定装置。
【請求項２】
前記集約部は、入力された前記パルス列信号のパルス間隔の最頻出値に基づいて前記単位時間を決定し、該単位時間毎に入力された前記パルス列信号を集約することを特徴とする請求項１に記載の推定装置。
【請求項３】
前記算出部は、集約された前記パルス列信号に含まれる全てのパターンのパルス間隔を、前記時間シフト量として算出することを特徴とする請求項１に記載の推定装置。
【請求項４】
前記検出部は、前記観測時間を前記時間シフト量で除算した値を用いて前記しきい値を算出することを特徴とする請求項１に記載の推定装置。
【請求項５】
前記除外部は、換算された前記周期の時刻ごとにパルス数を集計して各時刻のパルス数の最頻出値を算出し、各時刻のパルスから該最頻出値の数のパルスを除外することを特徴とする請求項１に記載の推定装置。
【請求項６】
推定装置で実行される推定方法であって、
入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する集約工程と、
集約された前記パルス列信号を用いて自己相関関数の時間シフト量を算出する算出工程と、
算出された前記時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、該自己相関値が該しきい値を超えている場合に、該時間シフト量を集約された前記パルス列信号の周期として検出する検出工程と、
検出された前記周期を、前記単位時間を用いて入力された前記パルス列信号の周期に換算する換算工程と、
換算された前記周期のパルス列信号を入力された前記パルス列信号から除外する除外工程と、
を含んだことを特徴とする推定方法。
【請求項７】
入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する集約ステップと、
集約された前記パルス列信号を用いて自己相関関数の時間シフト量を算出する算出ステップと、
算出された前記時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、該自己相関値が該しきい値を超えている場合に、該時間シフト量を集約された前記パルス列信号の周期として検出する検出ステップと、
検出された前記周期を、前記単位時間を用いて入力された前記パルス列信号の周期に換算する換算ステップと、
換算された前記周期のパルス列信号を、入力された前記パルス列信号から除外する除外ステップと、
をコンピュータに実行させる推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推定装置、推定方法および推定プログラムに関する。
【背景技術】
【０００２】
従来、パルス列信号の周期を推定するＰＲＩ（Pulse  Repetition  Intervals）変換と呼ばれる手法が知られている（非特許文献１，２参照）。ＰＲＩ変換では、信号とそれ自身を時間シフトした信号とがどれだけ整合するかを図る関数であって、周期推定に広く利用される自己相関関数に、複素数で表される位相の項が加えられる。ＰＲＩ変換では、パルス列信号に発生する低調波（subharmonics）と呼ばれるノイズの影響を抑制するために、複素数の項が加えられている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ken’ichi  Nishiguchi，et  al，“Improved  Algorithm  for  Estimating  Pulse  Repetition  Intervals”，  IEEE  Transactions  on  Aerospace  and  Electronic  Systems，2000年4月，Volume  36  issue  2，Page  407-421
【非特許文献２】Ken’ichi  Nishiguchi，“Time-Period  Analysis  for  Pulse  Train  Deinterleaving”，Trans.  of  the  Society  of  Instrument  and  Control  Engineers，2005年，Vol.E-4，No.1，pp.68-78
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術は、複数の周期のパルス列を含む信号の各パルス列の周期を推定することが困難な場合があった。例えば、パルス列信号の自己相関の値は、パルス列信号を時間シフトした際に元の信号と重なるパルス数の割合で決定される。したがって、周期の差が大きい複数の周期の信号がパルス列信号に含まれる場合に、周期の短い信号ほど、この周期Ａだけ時間シフトした際の自己相関の値が大きくなり、容易にノイズと区別される。これに対し、このパルス列信号に含まれる周期の長い信号ほど、自己相関の値が小さくなり、ノイズとの区別が難しくなる。したがって、ＰＲＩ変換では、パルス列信号に周期の差が大きい複数の周期の信号が含まれる場合に、周期の長い信号の周期を推定することが困難な場合があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、複数の周期の信号を含むパルス列信号の各周期を精度高く推定することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明に係る推定装置は、入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する集約部と、集約された前記パルス列信号を用いて自己相関関数の時間シフト量を算出する算出部と、算出された前記時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、該自己相関値が該しきい値を超えている場合に、該時間シフト量を前記集約済みパルス列信号の周期として検出する検出部と、検出された前記周期を、前記単位時間を用いて入力された前記パルス列信号の周期に換算する換算部と、換算された前記周期のパルス列信号を、入力された前記パルス列信号から除外する除外部と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、複数の周期の信号を含むパルス列信号の各周期を精度高く推定することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本実施形態の推定装置の概略構成を例示する模式図である。
【図２】図２は、推定処理手順を示すフローチャートである。
【図３】図３は、推定処理の流れを説明するための図である。
【図４】図４は、推定処理の流れを説明するための図である。
【図５】図５は、推定プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１０】
［推定装置の構成］
図１は、本実施形態の推定装置の概略構成を例示する模式図である。図１に例示するように、推定装置１０は、パソコン等の汎用コンピュータで実現され、入力部１１、出力部１２、通信制御部１３、記憶部１４、および制御部１５を備える。
【００１１】
入力部１１は、キーボードやマウス等の入力デバイスを用いて実現され、操作者による入力操作に対応して、制御部１５に対して処理開始などの各種指示情報を入力する。出力部１２は、液晶ディスプレイなどの表示装置、プリンター等の印刷装置等によって実現される。
【００１２】
通信制御部１３は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮ（Local  Area  Network）やインターネットなどの電気通信回線を介した外部の装置と制御部１５との通信を制御する。例えば、通信制御部１３は、後述する推定処理に用いられるパルス列信号を収集し管理する管理装置等と制御部１５との通信を制御する。
【００１３】
記憶部１４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。例えば、後述する推定処理において、検出された周期等が記憶される。なお、記憶部１４は、通信制御部１３を介して制御部１５と通信する構成でもよい。
【００１４】
制御部１５は、ＣＰＵ（Central  Processing  Unit）等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部１５は、図１に例示するように、集約部１５ａ、算出部１５ｂ、検出部１５ｃ、換算部１５ｄおよび除外部１５ｅとして機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
【００１５】
集約部１５ａは、入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する。すなわち、集約部１５ａは、推定装置１０による推定処理対象として入力された、例えば３時間分等の観測時間分のパルス列信号（以下、入力パルス列信号と記す。）のスケールを、例えば１秒単位から後述する所定の単位時間に変換し、集約済みパルス列信号とする。
【００１６】
具体的には、集約部１５ａは、まず、入力部１１あるいは通信制御部１３を介して、所定の観測時間分のパルス列信号の入力を受け付ける。例えば、集約部１５ａは、収集されたＩＰ通信のパケットを、（ｓｒｃ  ＩＰ、ｄｓｔ  ＩＰ、ｄｓｔ  ｐｏｒｔ）の組み合わせごとに推定処理対象として受け付ける。
【００１７】
また、集約部１５ａは、受け付けた観測時間分のパルス列信号を用いて、横軸を時刻ｔ、縦軸をパケット数とする時系列データである入力パルス列信号を生成する。ここで、観測時間は、入力されたパルス列信号の最初のパルス発生の時刻から最後のパルス発生の時刻までの時間である。また、入力パルス列信号は、時刻ｔにおけるパルスの有無とその数とで表される。例えば、入力パルス列信号は、パルスが発生した時刻におけるパルス数に相当する点、あるいはパルスが発生したことを示す、パルス数に等しい本数の棒で表される（後述する図３（ａ）参照）。
【００１８】
次に、集約部１５ａは、入力パルス列信号のパルス間隔を集計し、最頻出値を算出する。そして、集約部１５ａは、入力パルス列信号のパルス間隔の最頻出値に基づいて単位時間を決定し、該単位時間毎に入力パルス列信号を集約する。すなわち、集約部１５ａは、算出した最頻出値を用いて単位時間を決定し、決定した単位時間を用いて入力パルス列信号のスケールを変換する。
【００１９】
本実施形態では、集約部１５ａは、パケット発生のタイミングのずれ（ｊｉｔｔｅｒ）を吸収するために、入力パルス列信号のパルス間隔の最頻出値の２０％の値を単位時間とする。そして、集約部１５ａは、決定した単位時間毎に入力パルス列信号を集約し、これを集約済みパルス列信号とする。
【００２０】
算出部１５ｂは、集約された集約済みパルス列信号を用いて自己相関関数の時間シフト量を算出する。具体的には、算出部１５ｂは、集約済みパルス列信号に含まれる全てのパターンのパルス間隔を、時間シフト量として算出する。
【００２１】
ここで、上記のとおり、自己相関関数は、信号とそれ自身を所定の時間シフト量だけシフトした信号とがどれだけ整合するかを図る関数である。自己相関関数は、次式（１）に示すように、時間シフト量τの関数として表される。
【００２２】
【数１】
2020095540.tif 000003
【００２３】
ここで、ｇ（ｔ）ｇ（ｔ＋τ）は、時刻ｔのパルス数と時刻（ｔ＋τ）のパルス数とのうち、重複しているパルス数を表す。
【００２４】
上記式（１）に示すように、自己相関値は、時間シフト量τが周期関数の周期と一致した場合に有意に大きな値となるので、周期関数の周期の推定に利用できる。また、集約済みパルス列信号にないパルス間隔が周期となることはない。そこで、本実施形態では、算出部１５ｂが、パルス列信号の周期候補として、集約済みパルス列信号の全てのパターンのパルス間隔を列挙して、それぞれを時間シフト量とする。
【００２５】
検出部１５ｃは、算出された時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、この自己相関値がこのしきい値を超えている場合に、この時間シフト量を集約されたパルス列信号の周期として検出する。
【００２６】
具体的には、検出部１５ｃは、算出された時間シフト量を昇順に処理対象として選択して、選択した時間シフト量τを上記式（１）に代入することにより、この時間シフト量τに対する自己相関値を算出する。
【００２７】
また、検出部１５ｃは、観測時間を時間シフト量τで除算した値を用いてしきい値を算出する。具体的には、検出部１５ｃは、入力パルス列信号の観測時間は、集約済みパルス列信号の最初のパルス発生から最後のパルス発生までの時間に等しいので、この時間を観測時間として、この観測時間を時間シフト量τで除算する。
【００２８】
ここで、上記式（１）からわかるように、時間シフト量τに対するパルス列信号の自己相関値は、パルス列信号内に存在する周期τのパルス数と一致する。また、観測時間を時間シフト量τで除算した値は、観測時間分のパルス列信号内に存在するはずの周期τのパルス列信号のパルス回数となる。したがって、観測時間分のパルス列信号内に周期τのパルス列信号が存在する場合には、自己相関値はこの値より大きくなるはずである。
【００２９】
そこで、検出部１５ｃは、パルスの欠損を２割まで許容する場合に、観測時間を時間シフト量τで除算した値に０．８を乗算した値をしきい値として算出する。そして、検出部１５ｃは、時間シフト量τに対する自己相関値がしきい値を超えている場合に、周期τのパルス列が存在すると判定する。
【００３０】
また、検出部１５ｃは、時間シフト量τに対する自己相関値がしきい値を超えていない場合には、算出部１５ｂにより算出された時間シフト量のうち、上記の処理対象とした値の次に小さい値を選択し、同様の処理を繰り返す。
【００３１】
換算部１５ｄは、検出された周期を、単位時間を用いて入力された入力パルス信号の周期に換算する。具体的には、換算部１５ｄは、検出部１５ｃが検出した周期の値を、集約部１５ａが決定した単位時間を用いて入力パルス列信号のスケールの値に換算する。また、換算部１５ｄは、入力パルス列信号のスケールに換算した周期の値を、検出済みの入力パルス列信号の周期として記憶部１４に記憶させる。
【００３２】
除外部１５ｅは、換算された周期のパルス列信号を、入力パルス列信号から除外する。その際に、除外部１５ｅは、換算された入力パルス列信号の周期の時刻ごとにパルス数を集計して各時刻あたりのパルス数の最頻出値を算出し、各時刻のパルス信号から該最頻出値のパルスを除外する。
【００３３】
すなわち、除外部１５ｅは、換算された入力パルス列信号の周期のもっともらしいパルス数として、この周期に該当する各時刻あたりのパルス数の最頻出値を算出する。そして、除外部１５ｅは、各時刻のパルスから、算出した最頻出値の数のパルスを除外する。これにより、入力パルス列信号から検出済みの周期のパルス列信号が除外される。
【００３４】
また、除外部１５ｅは、検出済みの周期のパルス列信号を除外した入力パルス列信号を、新たな入力パルス列信号として集約部１５ａに入力する。
【００３５】
このようにして、推定装置１０は、時間シフト量τを小さい順に適用して、上記の処理を繰り返す。また、推定装置１０は、全ての時間シフト量τに対して、算出した自己相関値がしきい値を超えなくなった場合に、入力パルス列信号にはもはや周期τのパルス列が存在しないものと判定する。そして、推定装置１０は、記憶部１４に記憶させた全ての検出済みの入力パルス列信号の周期を、出力部１２あるいは通信制御部１３を介して出力する。
【００３６】
これにより、推定装置１０は、ノイズとの区別が容易な周期の短いパルス列信号から順に焦点を当てながら検出し、入力パルス列信号から分離し除外する。検出済みの周期のパルス列信号が除外された新たな入力パルス列信号では、周期の短いパルス列信号に起因するノイズが低減され、また入力パルス列信号に占める周期の長いパルス列信号のパルス数の割合が増大する。したがって、推定装置１０は、パルス列信号に周期の差が大きい複数の周期の信号が含まれる場合にも、パルス列信号の相対的に長い周期を推定することが可能となる。
【００３７】
［推定処理］
次に、図２〜４を参照して、本実施形態に係る推定装置１０による推定処理について説明する。図２は、推定処理手順を示すフローチャートである。また、図３および図４は、推定処理の流れを説明するための図である。
【００３８】
図２のフローチャートは、例えば、ユーザが開始を指示する操作入力を行ったタイミングで開始される。まず、集約部１５ａが、入力部１１あるいは通信制御部１３を介して、所定の観測時間分の時系列のパルスを含むパルス列信号の入力を受け付けて、入力パルス列信号を生成する（ステップＳ１）。例えば、集約部１５ａは、受け付けた観測時間分のパルス列信号を用いて、横軸を時刻ｔ、縦軸をパルス数とする入力パルス列信号を生成する。
【００３９】
入力パルス列信号は、例えば、図３（ａ）に示すように、パルスが発生した時刻においてパルスが発生していることを示す、パルス数に等しい本数の棒で表される。図３（ａ）に示す例では、パルスがある場合に縦軸の値は１、パルスがない場合に縦軸の値は０として、時刻ｔのパルス数が、縦軸の値が１のパルス数に等しい本数の棒（図示例では、いずれの時刻でも１本）で表されている。
【００４０】
次に、集約部１５ａは、入力パルス列信号のパルス間隔を集計し、最頻出値を算出する。また、集約部１５ａは、入力パルス列信号のパルス間隔の最頻出値に基づいて単位時間を決定する。また、集約部１５ａは、単位時間毎に入力パルス列信号を集約することにより、集約済みパルス列信号を生成する（図２のステップＳ２）。
【００４１】
次に、算出部１５ｂが、集約済みパルス列信号を用いて自己相関関数の時間シフト量を算出する（ステップＳ３）。具体的には、算出部１５ｂは、集約済みパルス列信号に含まれる全てのパターンのパルス間隔を、時間シフト量として算出する。
【００４２】
次に、検出部１５ｃが、算出された時間シフト量を昇順に選択して処理対象の時間シフト量τを更新する（ステップＳ４）。
【００４３】
そして、検出部１５ｃは、観測時間を時間シフト量τで除算した値を用いてしきい値を算出する。また、検出部１５ｃは、時間シフト量τに対する自己相関値を算出する（図２のステップＳ５〜Ｓ６、図３の（１））。
【００４４】
そして、検出部１５ｃは、時間シフト量τに対する自己相関値がしきい値を超えているか否かを確認する（図２のステップＳ７）。検出部１５ｃは、自己相関値がしきい値を超えている場合に（ステップＳ７，Ｙｅｓ）、周期τのパルス列が存在すると判定する（図２のステップＳ８、図３（ｂ））。
【００４５】
図３（ｂ）に示す例では、τ＝Ａが周期として検出されている。なお、図３および図４に示す例では、説明の簡略化のため、集約部１５ａによる入力パルス列信号のスケール変換は行われていない。したがって、以下に述べる換算部１５ｄによる処理は行われず、ここで検出された周期の値がそのまま、検出済みの入力パルス列信号の周期とされている。
【００４６】
換算部１５ｄは、検出部１５ｃが検出した周期の値を、集約部１５ａが決定した単位時間を用いて、入力パルス列信号の周期に換算する（図２のステップＳ９）。また、換算部１５ｄは、入力パルス列信号のスケールに換算した周期の値を、検出済みの入力パルス列信号の周期として記憶部１４に記憶させる。
【００４７】
次に、除外部１５ｅが、換算された該周期のパルス列信号を分離して（図３（ｃ））、入力パルス列信号から除外する（図２のステップＳ１０、図３（２））。図３に示す例では、図３（ｃ）に示す周期Ａのパルス列信号が、図３（ａ）に示す入力パルス列信号から除外され、図３（ｄ）に示すパルス列信号とされている。
【００４８】
その際に、除外部１５ｅは、換算された入力パルス列信号の周期のもっともらしいパルス数として、周期の時刻ごとにパルス数を集計して各時刻あたりのパルス数の最頻出値を算出し、各時刻のパルス信号から最頻出値のパルスを除外する。これにより、入力パルス列信号から検出済みの周期のパルス列信号が除外される。
【００４９】
また、除外部１５ｅは、検出済みの周期のパルス列信号を除外した、図３（ｄ）に示した入力パルス列信号を、新たな入力パルス列信号として、集約部１５ａに入力する（図２のステップＳ２、図３（３））。
【００５０】
そして、推定装置１０は、図４に示すように、上記と同様の処理を繰り返す。図４に示す例では、図３（ｄ）に示したパルス列信号を、図４（ａ）に示す入力パルス列信号として、算出部１５ｂが、自己相関関数の時間シフト量τを算出し、検出部１５ｃが、時間シフト量τに対するしきい値と自己相関値とを算出する（図４（４））。
【００５１】
そして、検出部１５ｃが、時間シフト量τに対する自己相関値がしきい値を超えている場合に、検出部１５ｃが、周期τのパルス列が存在すると判定する。図４（ｂ）に示す例では、τ＝Ｂが周期として検出されている。
【００５２】
そして、除外部１５ｅが、検出された周期のパルス列信号を分離して（図４（ｃ））、入力パルス列信号から除外する（図４（５））。図４に示す例では、図４（ｄ）に示すように、検出済みの周期のパルス列信号を除外した結果、すべてのパルス列信号が除外されているため、新たな入力パルス列信号として集約部１５ａに入力されていない。
【００５３】
このようにして、推定装置１０は、時間シフト量τを小さい順に適用して、上記の処理を繰り返す。なお、上記した図２のステップＳ７の処理において、時間シフト量τに対する自己相関値がしきい値を超えなかった場合には（ステップＳ７，Ｎｏ）、検出部１５ｃは、算出部１５ｂが算出した全ての時間シフト量について処理が行われたかを確認する（ステップＳ１１）。
【００５４】
全ての時間シフト量について処理が行われていない場合には（ステップＳ１１，Ｎｏ）、検出部１５ｃは、ステップＳ４の処理に戻し、処理対象の時間シフト量τを更新する。全ての時間シフト量について処理が行われている場合には（ステップＳ１１，Ｙｅｓ）、検出部１５ｃは、入力パルス列信号にはもはや周期パルス列が存在しないものとして、記憶部１４に記憶させた全ての検出済みの入力パルス列信号の周期を、出力部１２あるいは通信制御部１３を介して出力する（ステップＳ１２）。これにより、一連の推定処理が終了する。
【００５５】
以上、説明したように、本実施形態の推定装置１０において、集約部１５ａが、入力された所定の観測時間分の時系列のパルスを含むパルス列信号を、所定の単位時間毎のパルスに集約する。算出部１５ｂが、集約されたパルス列信号を用いて自己相関関数の時間シフト量を算出する。検出部１５ｃが、算出された時間シフト量から昇順に選択した各時間シフト量に対する自己相関値としきい値とを算出し、該自己相関値が該しきい値を超えている場合に、該時間シフト量を集約されたパルス列信号の周期として検出する。換算部１５ｄが、検出された周期を、単位時間を用いて入力されたパルス信号の周期に換算する。除外部１５ｅが、換算された周期のパルス列信号を、入力されたパルス列信号から除外する。
【００５６】
これにより、推定装置１０は、ノイズとの区別が容易な周期の短いパルス列信号から順に焦点を当てながら検出し、入力パルス列信号から分離し除外する。検出済みの周期のパルス列信号が除外された新たな入力パルス列信号では、周期の短いパルス列信号に起因するノイズが低減され、また入力パルス列信号に占める周期の長いパルス列信号のパルス数の割合が増大する。したがって、推定装置１０は、パルス列信号に周期の差が大きい複数の周期の信号が含まれる場合にも、パルス列信号の相対的に長い周期を推定することが可能となる。このように、推定装置１０は、推定装置１０は、複数の周期の信号を含むパルス列信号の各周期を精度高く推定することができる。
【００５７】
例えば、ビルや工場等のＯＴ（Operational  Technology）環境において、多数の機器が事前に定義されたプログラムのみに基づいて、一定時間ごとに死活確認や機器状態の確認等の周期的な動作を行う場合が多い。そのような環境で、推定装置１０は、通信中のネットワーク機器の通信周期を推定し、異なる通信周期の数を計上することにより、ネットワーク機器内で動作している周期的な動作プログラムの数を推定することが可能となる。また、推定装置１０は、周期の変化を検出することにより、異常を検知することも可能となる。
【００５８】
［プログラム］
上記実施形態に係る推定装置１０が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、推定装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の推定処理を実行する推定プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の推定プログラムを情報処理装置に実行させることにより、情報処理装置を推定装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）などの移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）などのスレート端末などがその範疇に含まれる。また、推定装置１０の機能を、クラウドサーバに実装してもよい。
【００５９】
図５は、推定プログラムを実行するコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００６０】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１０４１に接続される。ディスクドライブ１０４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１０５１およびキーボード１０５２が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１０６１が接続される。
【００６１】
ここで、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。上記実施形態で説明した各情報は、例えばハードディスクドライブ１０３１やメモリ１０１０に記憶される。
【００６２】
また、推定プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュール１０９３として、ハードディスクドライブ１０３１に記憶される。具体的には、上記実施形態で説明した推定装置１０が実行する各処理が記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【００６３】
また、推定プログラムによる情報処理に用いられるデータは、プログラムデータ１０９４として、例えば、ハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００６４】
なお、推定プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１０４１等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、推定プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮやＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００６５】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述および図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例および運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００６６】
１０  推定装置
１１  入力部
１２  出力部
１３  通信制御部
１４  記憶部
１５  制御部
１５ａ  集約部
１５ｂ  算出部
１５ｃ  検出部
１５ｄ  換算部
１５ｅ  除外部
【図１】
2020095540.tif 000004
【図２】
2020095540.tif 000005
【図３】
2020095540.tif 000006
【図４】
2020095540.tif 000007
【図５】
2020095540.tif 000008