(57)【要約】【課題】高次の微分演算子を含む微分方程式で表されるシステムからのディジタル入出力であってもシステム同定を可能にする。【解決手段】本情報処理方法は、（Ａ）ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び物理的なシステムのディジタル出力を格納するデータ格納部に格納されているディジタル入力及びディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、（Ｂ）微分演算子とディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、第１の係数に含まれている微分演算子の係数を算出する処理を含む。【選択図】図４
2015135662.tif 000002
【特許請求の範囲】
【請求項１】
ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び前記物理的なシステムのディジタル出力を格納するデータ格納部と、
前記データ格納部に格納されている前記ディジタル入力及び前記ディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成する生成部と、
前記微分演算子と前記ディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、前記ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、前記第１の係数に含まれている前記微分演算子の係数を算出する演算部と、
を有する情報処理装置。
【請求項２】
前記演算部が、
前記第１の係数のうち前記微分演算子の係数が乗じられている第３の係数と、前記第２の係数と前記第１の係数のうち前記微分演算子の係数が乗じられていない定数項との差との組み合わせを複数生成し、
前記複数の組み合わせについて線型回帰計算を行って、前記微分演算子の係数を算出する
請求項１記載の情報処理装置。
【請求項３】
前記第１の係数が、当該第１の係数に対応する指数関数の指数における係数に対する前記微分演算子の値と前記ディジタル入力についてのフィッティング曲線に含まれる同一の指数関数の係数との積となる
請求項１又は２記載の情報処理装置。
【請求項４】
前記物理的なシステムの第２のディジタル入力について、指数関数の線型和で表される第２のフィッティング曲線を生成し、
前記第２のフィッティング曲線に含まれる各指数関数について、当該指数関数の係数と、当該指数関数の指数における係数に対する、算出された前記微分演算子の係数を含む当該微分演算子の値とから得られる、出力関数の係数を算出し、
算出された前記出力関数の係数を含む当該出力関数から、ディジタル出力値を算出する予測部
をさらに有する請求項１乃至３のいずれか１つに記載の情報処理装置。
【請求項５】
前記生成部が、
前記データ格納部に格納されている前記ディジタル入力２ｎ＋１（ｎは整数）個に対して離散フーリエ変換を実施してｎ＋１個の周波数を算出し、当該ｎ＋１個の周波数からｎ次のフーリエ級数を生成することで、前記ディジタル入力についてのフィッティング曲線を生成し、
前記データ格納部に格納されている前記ディジタル出力２ｎ＋１個に対して離散フーリエ変換を実施してｎ＋１個の周波数を算出し、当該ｎ＋１個の周波数からｎ次のフーリエ級数を生成することで、前記ディジタル出力についてのフィッティング曲線を生成する
処理を実行する請求項１乃至４のいずれか１つ記載の情報処理装置。
【請求項６】
前記生成部が、
前記データ格納部に格納されている第３のディジタル入力２ｌ＋１（ｌは整数）個に対して離散フーリエ変換を実施してｌ＋１個の周波数を算出し、当該ｌ＋１個の周波数からｌ次のフーリエ級数を生成することで、前記第３のディジタル入力について、指数関数の線型和で表される第３のフィッティング曲線を生成し、
生成された前記第３のフィッティング曲線から、前記ディジタル入力２ｎ＋１個を算出し、前記データ格納部に格納する、
処理を実行する請求項５記載の情報処理装置。
【請求項７】
前記生成部が、
前記ディジタル入力についてのフィッティング曲線を微分又は積分することで第１の曲線を生成し、
生成された前記第１の曲線を用いて第４のディジタル入力を生成し、前記データ格納部に格納する、
処理を実行する請求項１記載の情報処理装置。
【請求項８】
ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び前記物理的なシステムのディジタル出力を格納するデータ格納部に格納されている前記ディジタル入力及び前記ディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、
前記微分演算子と前記ディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、前記ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、前記第１の係数に含まれている前記微分演算子の係数を算出する、
処理を含み、コンピュータにより実行される情報処理方法。
【請求項９】
ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び前記物理的なシステムのディジタル出力を格納するデータ格納部に格納されている前記ディジタル入力及び前記ディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、
前記微分演算子と前記ディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、前記ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、前記第１の係数に含まれている前記微分演算子の係数を算出する、
処理を、コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム同定技術に関する。
【背景技術】
【０００２】
自動制御などの分野において線形システムの同定という課題がある。例えば、図１に示すような線形の常微分方程式で表される物理的なシステムに対し、アナログの入力ｕ（ｔ）及び出力ｙ（ｔ）が与えられたとき、以下に示すような関係が成り立つように、微分演算子Ｐ（ｄ／ｄｔ）の微分係数Ｐ1乃至Ｐmを決定することが課題となる。
【０００３】
【数１】
2015135662.tif 000003
【０００４】
なお、本願では、Ｐ（ｄ／ｄｔ）ｙ（ｔ）とｕ（ｔ）とがおおよそ一致する場合も、一致すると表すものとする。
【０００５】
ところが、近年用いられる加速度センサなどのセンサ値は、アナログではなくディジタル（離散値）となっている。よって、図２に示すように、ディジタルの入力ｕ0、ｕ1...ｕ2nと、出力ｙ0、ｙ1...ｙ2nとが与えられたときに、常微分方程式で表される物理的なシステムの微分方程式Ｐ（ｄ／ｄｔ）ｙ（ｔ）＝ｕ（ｔ）が成り立つように、微分演算子Ｐ（ｄ／ｄｔ）の微分係数Ｐ1乃至Ｐmを決定する方法を考えることになる。
【０００６】
そうすると、これを実現するためにはディジタルデータをアナログに変換することになるが、その手法としてフィッティング法がある。従来の有名なフィッティング法としてはスプライン法があるが、スプライン曲線は例えば微分が数回までしか可能ではないため、微分演算子の次数ｍが大きい場合に適用できないという問題がある。
【０００７】
また、別のフィッティング法を採用したとしても、微分演算をすべての時間において計算することは計算量の観点から現実的ではなく、高次の微分演算子を含む微分方程式で表されるシステムの同定を行うことができない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１３−１７５１４３号公報
【特許文献２】特開２０１０−２６４４９９号公報
【特許文献３】特開２０００−１８２５５２号公報
【特許文献４】特開２００３−１０８５４２号公報
【特許文献５】特開２００７−２８６８０１号公報
【特許文献６】特開２００１−２０８８４２号公報
【非特許文献】
【０００９】
【非特許文献１】T. Ito, Y. Senta and F. Nagashima, “Analyzing Bilinear Neural Networks with New Curve Fitting for Application to Human Motion Analysis”, in Proc. IEEE Int. Conf. Systems, Man and Cybernetics, 2012, pp.345-352
【発明の概要】
【発明が解決しようとする課題】
【００１０】
従って、本発明の目的は、一側面によれば、高次の微分演算子を含む微分方程式で表されるシステムのディジタル入出力からシステム同定を可能にするための技術を提供することである。
【課題を解決するための手段】
【００１１】
本発明に係る情報処理方法は、（Ａ）ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び物理的なシステムのディジタル出力を格納するデータ格納部に格納されているディジタル入力及びディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、（Ｂ）微分演算子とディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、第１の係数に含まれている微分演算子の係数を算出する処理を含む。
【発明の効果】
【００１２】
高次の微分演算子を含む微分方程式で表されるシステムのディジタル入出力からであってもシステム同定が可能となる。
【図面の簡単な説明】
【００１３】
【図１】図１は、アナログ入出力のシステムを模式的に示す図である。
【図２】図２は、ディジタル入出力のシステムを模式的に示す図である。
【図３】図３は、本実施の形態に係るシステムの概要を示す図である。
【図４】図４は、本実施の形態に係る情報処理装置の機能ブロック図である。
【図５】図５は、第１の実施の形態に係るメインの処理の処理フローを示す図である。
【図６】図６は、ディジタル入出力のシステムを模式的に示す図である。
【図７】図７は、学習処理の処理フローを示す図である。
【図８】図８は、線型回帰を説明するための図である。
【図９】図９は、予測処理の処理フローを示す図である。
【図１０】図１０は、ディジタル入出力のシステムを模式的に示す図である。
【図１１】図１１は、第２の実施の形態におけるディジタル入出力のシステムを模式的に示す図である。
【図１２】図１２は、第２の実施の形態に係るメインの処理の処理フローを示す図である。
【図１３】図１３は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１４】
［実施の形態１］
図３に、本実施の形態に係るシステムの一例を示す。例えば、車両１０００には、検出装置１００が設けられており、当該検出装置１００は、車両１０００の加速度を測定する加速度センサ１０１と、車両１０００の走行距離を測定する距離センサ１０２と、通信部１０３とを有している。
【００１５】
車両１０００の検出装置１００の通信部１０３は、インターネットなどのネットワーク２００を介して、例えばデータセンタやクラウド内の情報処理装置３００へ測定データを送信する。車両１０００は、図２に示す、ｍ次（ｍは１以上の整数）の微分演算子を含む微分方程式で表される物理的なシステムである。また、車両１０００は、１台だけではなく、複数台の場合もある。
【００１６】
情報処理装置３００の構成例を図４に示す。
【００１７】
情報処理装置３００は、通信部３１０と、入出力データ格納部３２０と、学習処理部３３０と、予測処理部３４０とを有する。
【００１８】
通信部３１０は、車両１０００における検出装置１００からの測定データを受信し、入出力データ格納部３２０に格納する。学習処理部３３０は、ディジタル入力及びディジタル出力から、車両１０００を表す微分方程式を同定するための処理を行うものであり、第１フィッティング曲線生成部３３１と、第１データ格納部３３２と、第１演算部３３３と、第２データ格納部３３４とを有する。
【００１９】
第１フィッティング曲線生成部３３１は、離散フーリエ変換ＤＦＴ（Discrete Fourier Transformation）を行って、入出力データ格納部３２０に格納されたディジタル入力についてのフィッティング曲線と、入出力データ格納部３２０に格納されたディジタル出力についてのフィッティング曲線とを生成し、それらの曲線のデータを第１データ格納部３３２に格納する。
【００２０】
第１演算部３３３は、第１係数算出部３３３１と、線型回帰処理部３３３２とを有する。第１係数算出部３３３１は、第１データ格納部３３２に格納されているフィッティング曲線のデータから、線型回帰処理部３３３２で用いられるデータを生成し、第１データ格納部３３２に格納する。線型回帰処理部３３３２は、第１データ格納部３３２に格納されているデータを用いて線型回帰処理を実行し、処理結果を第２データ格納部３３４に格納する。この処理結果は、ｍ次の微分演算子の微分係数である。このｍ次の微分演算子の微分係数が得られれば、車両１０００を表す微分方程式が得られることになる。
【００２１】
また、予測処理部３４０は、同定された微分方程式及び新たなディジタル入力からディジタル出力を予測する処理を行うものであり、第２フィッティング曲線生成部３４１と、第３データ格納部３４２と、第２演算部３４３と、第４データ格納部３４４とを有する。
【００２２】
第２フィッティング曲線生成部３４１は、第１フィッティング曲線生成部３３１と同様の処理を行い、入出力データ格納部３２０に格納されたディジタル入力についてのフィッティング曲線を生成し、その曲線のデータを第３データ格納部３４２に格納する。
【００２３】
第２演算部３４３は、第２係数算出部３４３１と、出力データ算出部３４３２とを有する。第２係数算出部３４３１は、第２データ格納部３３４に格納されている微分演算子の係数と、第３データ格納部３４２に格納されているフィッティング曲線のデータとから、出力関数の係数を算出する。出力データ算出部３４３２は、第２係数算出部３４３１から算出された係数で特定される出力関数により、出力データを算出し、第４データ格納部３４４に格納する。
【００２４】
次に、図５乃至図９を用いて、情報処理装置３００の処理内容について説明する。情報処理装置３００の学習処理部３３０は、以下で述べる学習処理を実行する（図５：ステップＳ１）。学習処理については、図６乃至図８を用いて詳細に説明する。その後、予測処理部３４０は、学習処理部３３０の学習結果に基づき、予測処理を実行する（ステップＳ３）。予測処理については、図９を用いて詳細に説明する。
【００２５】
次に、学習処理について図６乃至図８を用いて説明する。なお、車両１０００の検出装置１００の通信部１０３は、任意のタイミングで、ディジタル入力（例えば加速度センサ１０１の測定データ）及びディジタル出力（例えば距離センサ１０２の測定データ）のデータを、情報処理装置３００に送信しており、情報処理装置３００の通信部３１０は、車両１０００からの受信データを、入出力データ格納部３２０に格納しているものとする。
【００２６】
より具体的には、図６に示すように、ディジタル入力Ｕjに対して、システムの出力Ｙj（ｊ＝１乃至ｌ）が得られるものとする。なお、Ｕj及びＹjは、以下に示すように、２ｎ＋１個の離散点を含む。
【００２７】
【数２】
2015135662.tif 000004
【００２８】
そして、このシステムは、上でも述べたように、ｍ次の微分演算子Ｐ（ｄ／ｄｔ）を含む微分方程式Ｐ（ｄ／ｄｔ）ｙj（ｔ）＝ｕj（ｔ）で表される。
【００２９】
そうすると、学習処理部３３０の第１フィッティング曲線生成部３３１は、入出力データ格納部３２０から、Ｕj及びＹjを読み出す（図７：ステップＳ１１）。そして第１フィッティング曲線生成部３３１は、各ｊについてＤＦＴによるフィッティング処理を行うことで、ディジタル入力Ｕjについてのフィッティング曲線ｕj（ｔ）と、ディジタル出力Ｙjについてのフィッティング曲線ｙj（ｔ）とを生成し、当該曲線のデータを、第１データ格納部３３２に格納する（ステップＳ１３）。
【００３０】
このフィッティング処理について、ディジタル出力Ｙjを用いて説明する。但し、ディジタル入力Ｕjについても同様の処理を行う。また、ここでは説明を分かりやすくするためｊについては省略するものとする。
【００３１】
具体的には、離散点の実数値ｙ0，ｙ1，．．．，ｙ2nに対してＤＦＴを行って、ｎ＋１個の周波数を算出する。すなわち、ｑ＝０，１，．．，ｎである。
【００３２】
【数３】
2015135662.tif 000005
【００３３】
各周波数Ｙ0，Ｙ1，．．．，Ｙnは、複素数になるので、実部ａq及び虚部ｂqにより以下のように表される。
【００３４】
【数４】
2015135662.tif 000006
【００３５】
なお、離散点は実数値であるのでＤＦＴの性質から、ｂ0＝０となることに注意する。
【００３６】
このように得られたａq及びｂqを用いて、以下で表される有限の（すなわちｎ次の）フーリエ級数を生成する。
【００３７】
【数５】
2015135662.tif 000007
【００３８】
ここで得られたフーリエ級数が離散点ｙ0，ｙ1，．．．，ｙnのフィッティング曲線となる。なお、このフィッティング曲線は、以下で説明するように、これらの離散点を通過する。
【００３９】
なお、２ｎ＋１個の離散点ｙ0，ｙ1，．．．，ｙ2nが得られると、ＤＦＴによって２ｎ＋１個の周波数を得ることができる。
【００４０】
【数６】
2015135662.tif 000008
【００４１】
この離散点が実数値である場合には、以下のような関係式が得られる。
【００４２】
【数７】
2015135662.tif 000009
【００４３】
バー付きのＹは、Ｙの共役数を表す。このことから、以下の関係式も得られる。
【００４４】
【数８】
2015135662.tif 000010
【００４５】
ここで周波数Ｙ0，Ｙ1，．．．，Ｙ2nから元の離散点のデータを復元するために逆離散フーリエ変換（ＩＤＦＴ：Inverse DFT）を行う場合には、以下の数式の１行目のように表される。
【００４６】
【数９】
2015135662.tif 000011
【００４７】
この２行目は、上で示したＹとＹの共役数との関係から、１行目の右辺を分解したものである。３行目以降は、パラメータｑ等を調整して、周波数の実部ａq及び虚部ｂqで表現して整理を進めると、最終行が得られる。
【００４８】
一方、（１）式で示したｎ次のフーリエ級数ｙ（ｔ）をｔ＝０，１，．．．，２ｎでサンプリングすると、以下の式が得られる。
【００４９】
【数１０】
2015135662.tif 000012
【００５０】
この（２）式の右辺と逆離散フーリエ変換の式の最終行は等しいので、これによってｙi＝ｙ（ｉ）（ｉ＝０，１，．．．，２ｎ）となることが分かる。すなわち、（１）式のｎ次のフーリエ級数ｙ（ｔ）は、元の離散点の各々を通過することが分かる。
【００５１】
また、任意のｎ次のフーリエ級数ｇ（ｔ）が与えられたとき、ｇ（ｔ）をｔ＝０，１，．．．，２ｎでサンプリングして離散点ｇi＝ｇ（ｉ）（ｉ＝０，１，．．．，２ｎ）を求めてから、この離散点ｇi（ｉ＝０，１，．．．，２ｎ）のフィッティング曲線を求めると、元のｇ（ｔ）に戻る。これは上で述べたのと同様の手法を用いれば証明できるが、ここではその詳細については省略する。以上のことから、このフィッティング法は、離散点と有限のフーリエ級数との間での一対一且つ上の対応になっている。
【００５２】
従って、ディジタル出力についてのフィッティング曲線ｙj（ｔ）及びディジタル入力についてのフィッティング曲線ｕj（ｔ）は、以下のように得られる。
【００５３】
【数１１】
2015135662.tif 000013
【００５４】
但し、このフィッティング曲線ｙj（ｔ）及びｕj（ｔ）は、ネイピア数ｅを底とする指数関数の線型和で表すことができる。このように指数関数の線型和で表される場合には、ｍ次の微分を簡単に行うことができる。
【００５５】
【数１２】
2015135662.tif 000014
【００５６】
なお、ｃj,q及びｄj,qについては、以下のように表される。
【００５７】
【数１３】
2015135662.tif 000015
【００５８】
なお、本実施の形態では、第１フィッティング曲線生成部３３１は、（３）式及び（４）式によって、各ｊ（ｊ＝１乃至ｌ）及び各ｑ（ｑ＝−ｎ乃至＋ｎ）について、係数ｃj,q及びｄj,qを算出することで、フィッティング曲線を生成するものとする。このような係数ｃj,q及びｄj,qは、例えば第１データ格納部３３２に格納されるものとする。
【００５９】
そうすると、第１演算部３３３の第１係数算出部３３３１は、係数ｃj,q及びｄj,qから、ｍ次の微分演算子の各微分係数を算出するためのαβ平面の点群（Ｃ，Ｄ）を複数生成する（ステップＳ１５）。
【００６０】
上でも述べたように、Ｐ（ｄ／ｄｔ）ｙj（ｔ）＝ｕj（ｔ）であるから、左辺のＰ（ｄ／ｄｔ）ｙj（ｔ）は、以下のように表される。
【００６１】
【数１４】
2015135662.tif 000016
【００６２】
ｙjは、上でも述べたように、指数関数の線型和となるので、１階微分であれば係数が、指数関数の指数部の係数となり、２階微分であれば係数が（指数関数の指数部の係数）2となり、３階微分であれば係数が（指数関数の指数部の係数）3となり、ｍ階微分であれば係数が（指数関数の指数部の係数）mとなる。このように微分演算が非常に簡単になる。
【００６３】
すなわち、以下のように表される。
【００６４】
【数１５】
2015135662.tif 000017
【００６５】
従って、上で述べた（５）式が得られる。
【００６６】
そうすると、Ｐ（ｄ／ｄｔ）ｙj（ｔ）＝ｕj（ｔ）は、以下のように表される。
【００６７】
【数１６】
2015135662.tif 000018
【００６８】
なお、（６）式の各指数関数は、直交しているので、各指数関数の係数が左辺と右辺とで一致していれば、左辺全体と右辺全体とが一致することになる。すなわち、以下の関係が成り立つ。
【００６９】
【数１７】
2015135662.tif 000019
【００７０】
ここでｄj,q及びｃj,q（２√（−１）ｑπ／（２ｎ＋１））mは定数項であるから右辺にまとめ、左辺を未知の微分係数Ｐ1乃至Ｐmの項のみにすると、以下のように変形される。
【００７１】
【数１８】
2015135662.tif 000020
【００７２】
ステップＳ１５では、この（８）式における未知の微分係数に乗じられる係数群をｍ次元ベクトルＣj,qとして算出し、（８）式における定数項の値をＤj,qとして以下のように算出する。
【００７３】
【数１９】
2015135662.tif 000021
【００７４】
そうすると、線型回帰処理部３３３２は、このような点群（Ｃj,q，Ｄj,q）に対して最小二乗法による線型回帰を行って微分係数Ｐ1乃至Ｐmを算出し、第２データ格納部３３４に格納する（ステップＳ１７）。
【００７５】
本ステップでは、β＝Ｐ（α）＝α1Ｐ1＋α2Ｐ2＋・・・・＋αm-1Ｐm-1＋αmＰmという回帰直線の未知の係数Ｐ1乃至Ｐmを算出する。すなわち、模式的に示せば図８に示すように、αβ平面において、ステップＳ１７で示される点群が配置された場合に、誤差が最小となるようなβ＝Ｐ（α）に含まれる係数Ｐ1乃至Ｐmを算出する。最小二乗法については周知であるから、これ以上述べない。
【００７６】
以上のような処理を実行することによって、最も誤差の小さくＰ（ｄ／ｄｔ）ｙj（ｔ）≒ｕj（ｔ）となるような微分演算子の微分係数が算出される。
【００７７】
上でも述べたように、フィッティング曲線が指数関数の線型和で表されるので、高次の微分も簡単に行うことができ、上で述べた処理を高速に実行することができる。
【００７８】
次に、図９を用いて、予測処理の処理内容を説明する。
【００７９】
なお、学習処理を行った後は、車両１０００の検出装置１００は、加速度センサ１０１の測定データのみ、すなわちディジタル入力のデータを通信部１０３から情報処理装置３００に送信することになる。これによって情報処理装置３００への送信データ量が削減される。ここでは、学習処理で用いたディジタル入力ではなく、別のディジタル入力として新たに加速度センサ１０１の測定データを取得する。
【００８０】
従って、情報処理装置３００の通信部３１０は、ディジタル入力のデータを、車両１０００から受信すると、入出力データ格納部３２０に格納する。
【００８１】
そして、予測処理部３４０の第２フィッティング曲線生成部３４１は、入出力データ格納部３２０からディジタル入力のデータＵ（＝（ｕ0，ｕ1，．．，ｕ2n））を読み出す（図９：ステップＳ２１）。そして、第２フィッティング曲線生成部３４１は、ＤＦＴにより、ディジタル入力Ｕについてのフィッティング曲線ｕ（ｔ）を生成し、当該曲線のデータを、第３データ格納部３４２に格納する（ステップＳ２３）。（３）式におけるｄq（ｑは−ｎ乃至＋ｎ）を算出する。なお、ｊ＝１のみなので、サフィックスｊは省略されている。
【００８２】
そして、第２演算部３４３の第２係数算出部３４３１は、フィッティング処理の結果ｄq及び第２データ格納部３３４に格納されている微分演算子の微分係数Ｐ1乃至Ｐmを用いて、出力関数ｙ（ｔ）の係数ｃq（ｑは−ｎ乃至＋ｎ）を算出する（ステップＳ２５）。
【００８３】
具体的には、以下の式にてｃqを算出する。
【００８４】
【数２０】
2015135662.tif 000022
【００８５】
そうすると、係数ｃqから出力関数ｙ（ｔ）は、以下のように表される。
【００８６】
【数２１】
2015135662.tif 000023
【００８７】
よって、出力データ算出部３４３２は、（９）式に従って、予め定められたｔ（＝０，１，．．．，２ｎ）について、出力データＹ＝（ｙ0，ｙ1，．．．，ｙ2n）を算出し、第４データ格納部３４４に格納する（ステップＳ２７）。
【００８８】
このようにすれば学習処理によって得られた微分演算子の係数を用いて、走行距離を推定し、出力することが可能となる。
【００８９】
［実施の形態２］
例えば図１０に示すように、ディジタル入力ｕ0，ｕ1，．．．，ｕ2m及びディジタル出力ｖ0，ｖ1，．．．，ｖ2mが得られた場合にシステム同定を行うことを考える。第１の実施の形態によれば、図１０におけるシステム１００１は、ｌ次の微分演算子Ｐ（ｄ／ｄｔ）を用いて以下のように表される。
【００９０】
【数２２】
2015135662.tif 000024
【００９１】
ここで、ｕ（ｔ）はディジタル入力ｕ0，ｕ1，．．．，ｕ2mについてのフィッティング曲線である。ｖ（ｔ）はディジタル出力ｖ0，ｖ1，．．．，ｖ2mについてのフィッティング曲線である。なお、第２の実施の形態においては、説明を分かりやすくするため、ｕj（ｔ）、ｖj（ｔ）、及びｙj（ｔ）の添字ｊを省略するものとする。
【００９２】
但し、第１の実施の形態においては、ディジタル入力に含まれる離散点の個数とディジタル出力に含まれる離散点の個数とが一致することが前提となっている。すなわち、ｔ＝０からｔ＝２ｍまでの区間において、ディジタル入力のサンプリング間隔とディジタル出力のサンプリング間隔が一致することが前提となっている。
【００９３】
これに対して本実施の形態においては、図１１に示すような変換システム１１０１を導入する。図１１に示した変換システム１１０１は、ディジタル入力ｙ0，ｙ1，．．．，ｙ2nから、２ｍ＋１個の離散点のデータｕ0，ｕ1，．．．，ｕ2mを生成するシステムである。このような変換システム１１０１を導入すれば、たとえｎ≠ｍであっても、ディジタル入力ｙ0，ｙ1，．．．，ｙ2nと、ディジタル出力ｖ0，ｖ1，．．．，ｖ2mとからシステム同定を行うことが可能になる。
【００９４】
また、変換システム１１０１は、サンプリング間隔を変更する（すなわち、離散点の個数を変更する）だけでなく、微分及び積分によってデータの種類を変更する（例えば、速度のデータを加速度のデータ或いは距離のデータに変更する）ことができるシステムである。そこで第２の実施の形態においては、変換システム１１０１を以下のような式によって定義する。
【００９５】
【数２３】
2015135662.tif 000025
【００９６】
ｙ（ｔ）はディジタル入力ｙ0，ｙ1，．．．，ｙ2nについてのフィッティング曲線である。このように、変換システム１１０１は、フィッティング曲線ｙ（ｔ）の微分及び積分によって曲線ｕ（ｔ）を生成するシステムである。第１の実施の形態において説明した方法によってフィッティング曲線ｙ（ｔ）を生成すれば、微分及び積分を容易に行うことができる。微分については、スプライン法を利用した場合と異なり、高階微分をすることができる。なお、ｐ＝０の場合、ｕ（ｔ）＝ｙ（ｔ）である。
【００９７】
このような変換システム１１０１を実現するためのシステム構成は、第１の実施の形態と同じである。以下では、図１２を用いて、第２の実施の形態における情報処理装置３００の処理内容について説明する。本処理は、例えば、図５の処理より前に行われる。
【００９８】
車両１０００の検出装置１００の通信部１０３は、任意のタイミングで、ディジタル入力（例えば加速度センサ１０１の測定データ）及びディジタル出力（例えば距離センサ１０２の測定データ）のデータを、情報処理装置３００に送信する。情報処理装置３００の通信部３１０は、車両１０００からの受信データを、入出力データ格納部３２０に格納する。
【００９９】
第２の実施の形態においては、ディジタル入力としてｙ0，ｙ1，．．．，ｙ2nを受信し、ディジタル出力としてｖ0，ｖ1，．．．，ｖ2mを受信するものとする。ここで、ｎ＝ｍとは限らず、ｎ≠ｍである場合もある。
【０１００】
そして、学習処理部３３０における第１フィッティング曲線生成部３３１は、入出力データ格納部３２０から、ディジタル入力ｙ0，ｙ1，．．．，ｙ2nを読み出す（図１２：ステップＳ３１）。
【０１０１】
第１フィッティング曲線生成部３３１は、ＤＦＴによるフィッティング処理を行うことで、ディジタル入力ｙ0，ｙ1，．．．，ｙ2nについてのフィッティング曲線ｙ（ｔ）を生成し（ステップＳ３３）、フィッティング曲線ｙ（ｔ）のデータを、第１データ格納部３３２に格納する。ステップＳ３３において、第１フィッティング曲線生成部３３１は、第１の実施の形態と同様、各ｊについてＤＦＴによるフィッティング処理を行う。但し、上でも述べたように、説明を簡単にするためｊについての記載を省略している。
【０１０２】
ステップＳ３３の処理は、第１の実施の形態におけるステップＳ１３の処理と同様である。従って、フィッティング曲線ｙ（ｔ）は以下のような式で表される。
【０１０３】
【数２４】
2015135662.tif 000026
【０１０４】
（１１）式における変数及び係数の意味は第１の実施の形態において説明したとおりである。そして、第１の実施の形態において説明したとおり、（１１）式の右辺は以下のように指数関数の線型和で表すことができる。
【０１０５】
【数２５】
2015135662.tif 000027
【０１０６】
そして、第１フィッティング曲線生成部３３１は、指数関数の線型和で表されたフィッティング曲線ｙ（ｔ）の微分又は積分を実行し、曲線ｕ（ｔ）を生成する（ステップＳ３５）。なお、データの種類を変更しない場合はｐ＝０として微分を行う。
【０１０７】
曲線ｕ（ｔ）は（１０）の式のように表されるが、（１２）式を考慮すると、以下のような形になる。
【０１０８】
【数２６】
2015135662.tif 000028
【０１０９】
上で述べたように、ｙ（ｔ）は指数関数の線型和であるので、１階微分であれば係数が、指数関数の指数部の係数となり、２階微分であれば係数が（指数関数の指数部の係数）2となり、３階微分であれば係数が（指数関数の指数部の係数）3となり、ｍ階微分であれば係数が（指数関数の指数部の係数）mとなる。このように微分演算が非常に簡単になる。また、スプライン法等を用いる場合とは異なり、高階微分が可能になる。さらに、一般的に、指数関数ｅkxの積分はｅkx／ｋ＋Ｃとなり（ｋは係数、Ｃは積分定数）、計算が非常に簡単なので、ｙ（ｔ）を複数回積分することも容易である。
【０１１０】
例えばｙ（ｔ）が速度についてのフィッティング曲線である場合には、１階微分を行えば加速度についての曲線ｕ（ｔ）が得られ、積分を行えば距離についての曲線ｕ（ｔ）が得られる。また、例えばｙ（ｔ）が距離についてのフィッティング曲線である場合には、１階微分を行えば速度についての曲線ｕ（ｔ）が得られ、２階微分を行えば加速度についての曲線ｕ（ｔ）が得られる。
【０１１１】
そして、第１フィッティング曲線生成部３３１は、ステップＳ３５において生成された曲線ｕ（ｔ）について、２ｍ＋１個の離散点のデータｕ0，ｕ1，．．．，ｕ2mを算出し（ステップＳ３７）、入出力データ格納部３２０に格納する。そして処理を終了する。
【０１１２】
ｔ＝０からｔ＝２ｎまでの区間において２ｍ＋１個の離散点が配置されるので、２ｍ＋１個の離散点のデータｕ0，ｕ1，．．．，ｕ2mは以下のようになる。
【０１１３】
【数２７】
2015135662.tif 000029
【０１１４】
第１フィッティング曲線生成部３３１は、入出力データ格納部３２０に格納された、２ｍ＋１個の離散点のデータｕ0，ｕ1，．．．，ｕ2mと、２ｍ＋１個の離散点のデータｖ0，ｖ1，．．．，ｖ2mとを用いて、第１の実施の形態で説明したシステム同定を行うことができる。
【０１１５】
以上のような処理を実行すれば、ｙ（ｔ）及びｕ（ｔ）は連続な関数になるため、ディジタル入力のサンプリング間隔とディジタル出力のサンプリング間隔とを合わせることができるようになる。また、フィッティング曲線ｙ（ｔ）の微分（但し、ｐ≠０）及び積分を容易に行えるので、異なる種類のデータについてシステム同定及び解析等を行うことができるようになる。
【０１１６】
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、車両１０００に設けた加速度センサ１０１及び距離センサ１０２を前提にした説明を行ったが、同定を行うべきシステムの入力及び出力に応じた他のセンサによって測定されるデータであっても良い。
【０１１７】
また、図３及び図４に示した機能ブロック図は一例であって、プログラムモジュール構成とは一致しない場合もある。さらに処理フローについても、処理結果が変わらない限り、処理順番を入れ替えたり、複数ステップを並列実行するようにしても良い。
【０１１８】
さらに、図３及び図４では、検出装置１００と情報処理装置３００とが分けて実装されていたが、用途によっては一体化された装置を実装する場合もある。さらに、検出装置１００は、例えば携帯電話機やカーナビゲーション装置などの装置に組み込まれる場合もある。
【０１１９】
さらに、システム同定だけではなく、人工知能の学習問題にも応用が可能である。
【０１２０】
なお、上で述べた情報処理装置３００は、コンピュータ装置であって、図１３に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【０１２１】
以上述べた本実施の形態をまとめると、以下のようになる。
【０１２２】
本実施の形態に係る情報処理方法は、（Ａ）ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び物理的なシステムのディジタル出力を格納するデータ格納部に格納されているディジタル入力及びディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、（Ｂ）微分演算子とディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、第１の係数に含まれている微分演算子の係数を算出する処理を含む。
【０１２３】
このようにフィッティング曲線が指数関数の線型和で表されれば、ｍが高次であっても容易に微分できるようになり、容易に微分演算子の係数を得ることができる。すなわち、全体としても計算量を削減しつつ、システム同定が可能となる。
【０１２４】
上で述べた微分演算子の係数を算出する処理が、（ｂ１）第１の係数のうち微分演算子の係数が乗じられている第３の係数と、第２の係数と第１の係数のうち微分演算子の係数が乗じられていない定数項との差との組み合わせを複数生成し、（ｂ２）複数の組み合わせについて線型回帰計算を行って、微分演算子の係数を算出する処理を含むようにしても良い。
【０１２５】
このようにすれば、多数のディジタル入力及び出力を取得した場合でも、より誤差の少ない微分演算子の係数を得ることができる。
【０１２６】
なお、上で述べた第１の係数が、当該第１の係数に対応する指数関数の指数における係数に対する微分演算子の値とディジタル入力についてのフィッティング曲線に含まれる同一の指数関数の係数との積となる場合もある。微分がこのような簡単な演算で表されるようになる。
【０１２７】
さらに、上で述べた情報処理方法は、（Ｃ）物理的なシステムの第２のディジタル入力について、指数関数の線型和で表される第２のフィッティング曲線を生成し、（Ｄ）第２のフィッティング曲線に含まれる各指数関数について、当該指数関数の係数と、当該指数関数の指数における係数に対する、算出された微分演算子の係数を含む当該微分演算子の値とから得られる、出力関数の係数を算出し、算出された出力関数の係数を含む当該出力関数から、ディジタル出力値を算出する処理をさらに含むようにしても良い。このようにすれば、同定されたシステムの出力をディジタル入力から予測できるようになる。
【０１２８】
また、上で述べたフィッティング曲線を生成する処理は、（ａ１）データ格納部に格納されているディジタル入力２ｎ＋１（ｎは整数）個に対して離散フーリエ変換を実施してｎ＋１個の周波数を算出し、当該ｎ＋１個の周波数からｎ次のフーリエ級数を生成することで、ディジタル入力についてのフィッティング曲線を生成し、（ａ２）データ格納部に格納されているディジタル出力２ｎ＋１個に対して離散フーリエ変換を実施してｎ＋１個の周波数を算出し、当該ｎ＋１個の周波数からｎ次のフーリエ級数を生成することで、ディジタル出力についてのフィッティング曲線を生成する処理を含むようにしても良い。このような処理を行うことで、確実に元のディジタル入力及びディジタル出力を復元できるようなフィッティング曲線を生成できるようになる。
【０１２９】
また、上で述べたフィッティング曲線を生成する処理は、（ａ３）データ格納部に格納されている第３のディジタル入力２ｌ＋１（ｌは整数）個に対して離散フーリエ変換を実施してｌ＋１個の周波数を算出し、当該ｌ＋１個の周波数からｌ次のフーリエ級数を生成することで、第３のディジタル入力について、指数関数の線型和で表される第３のフィッティング曲線を生成し、（ａ４）生成された第３のフィッティング曲線から、ディジタル入力２ｎ＋１個を算出し、データ格納部に格納する処理を含んでもよい。このような処理を実行すれば、データ格納部に格納されているディジタル入力の個数とディジタル出力の個数とが異なっていたとしても、システム同定が可能になる。
【０１３０】
また、上で述べたフィッティング曲線を生成する処理が、（ａ５）ディジタル入力についてのフィッティング曲線を微分又は積分することで第１の曲線を生成し、（ａ６）生成された第１の曲線を用いて第４のディジタル入力を生成し、データ格納部に格納する処理を含んでもよい。ディジタル入力についてのフィッティング曲線は指数関数の線型和で表されるので、微分及び積分を容易に計算することができる。そこで、上で述べたような処理を実行すれば、微分又は積分により得られるデータについてシステム同定を行えるようになる。
【０１３１】
なお、上で述べたような処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭなどの光ディスク、光磁気ディスク、半導体メモリ（例えばＲＯＭ）、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、ＲＡＭ等の記憶装置に一時保管される。
【０１３２】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１３３】
（付記１）
ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び前記物理的なシステムのディジタル出力を格納するデータ格納部と、
前記データ格納部に格納されている前記ディジタル入力及び前記ディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成する生成部と、
前記微分演算子と前記ディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、前記ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、前記第１の係数に含まれている前記微分演算子の係数を算出する演算部と、
を有する情報処理装置。
【０１３４】
（付記２）
前記演算部が、
前記第１の係数のうち前記微分演算子の係数が乗じられている第３の係数と、前記第２の係数と前記第１の係数のうち前記微分演算子の係数が乗じられていない定数項との差との組み合わせを複数生成し、
前記複数の組み合わせについて線型回帰計算を行って、前記微分演算子の係数を算出する
付記１記載の情報処理装置。
【０１３５】
（付記３）
前記第１の係数が、当該第１の係数に対応する指数関数の指数における係数に対する前記微分演算子の値と前記ディジタル入力についてのフィッティング曲線に含まれる同一の指数関数の係数との積となる
付記１又は２記載の情報処理装置。
【０１３６】
（付記４）
前記物理的なシステムの第２のディジタル入力について、指数関数の線型和で表される第２のフィッティング曲線を生成し、
前記第２のフィッティング曲線に含まれる各指数関数について、当該指数関数の係数と、当該指数関数の指数における係数に対する、算出された前記微分演算子の係数を含む当該微分演算子の値とから得られる、出力関数の係数を算出し、
算出された前記出力関数の係数を含む当該出力関数から、ディジタル出力値を算出する予測部
をさらに有する付記１乃至３のいずれか１つに記載の情報処理装置。
【０１３７】
（付記５）
前記生成部が、
前記データ格納部に格納されている前記ディジタル入力２ｎ＋１（ｎは整数）個に対して離散フーリエ変換を実施してｎ＋１個の周波数を算出し、当該ｎ＋１個の周波数からｎ次のフーリエ級数を生成することで、前記ディジタル入力についてのフィッティング曲線を生成し、
前記データ格納部に格納されている前記ディジタル出力２ｎ＋１個に対して離散フーリエ変換を実施してｎ＋１個の周波数を算出し、当該ｎ＋１個の周波数からｎ次のフーリエ級数を生成することで、前記ディジタル出力についてのフィッティング曲線を生成する
処理を実行する付記１乃至４のいずれか１つ記載の情報処理装置。
【０１３８】
（付記６）
前記生成部が、
前記データ格納部に格納されている第３のディジタル入力２ｌ＋１（ｌは整数）個に対して離散フーリエ変換を実施してｌ＋１個の周波数を算出し、当該ｌ＋１個の周波数からｌ次のフーリエ級数を生成することで、前記第３のディジタル入力について、指数関数の線型和で表される第３のフィッティング曲線を生成し、
生成された前記第３のフィッティング曲線から、前記ディジタル入力２ｎ＋１個を算出し、前記データ格納部に格納する、
処理を実行する付記５記載の情報処理装置。
【０１３９】
（付記７）
前記生成部が、
前記ディジタル入力についてのフィッティング曲線を微分又は積分することで第１の曲線を生成し、
生成された前記第１の曲線を用いて第４のディジタル入力を生成し、前記データ格納部に格納する、
処理を実行する付記１記載の情報処理装置。
【０１４０】
（付記８）
ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び前記物理的なシステムのディジタル出力を格納するデータ格納部に格納されている前記ディジタル入力及び前記ディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、
前記微分演算子と前記ディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、前記ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、前記第１の係数に含まれている前記微分演算子の係数を算出する、
処理を含み、コンピュータにより実行される情報処理方法。
【０１４１】
（付記９）
ｍ次（ｍは１以上の整数）の微分演算子を含む方程式で表される物理的なシステムのディジタル入力及び前記物理的なシステムのディジタル出力を格納するデータ格納部に格納されている前記ディジタル入力及び前記ディジタル出力の各々について、指数関数の線型和で表されるフィッティング曲線を生成し、
前記微分演算子と前記ディジタル入力についてのフィッティング曲線の積によって得られる式に含まれる各指数関数の第１の係数と、前記ディジタル出力についてのフィッティング曲線に含まれる同一の指数関数の第２の係数とが一致するように、前記第１の係数に含まれている前記微分演算子の係数を算出する、
処理を、コンピュータに実行させるためのプログラム。
【符号の説明】
【０１４２】
１００  検出装置
１０１  加速度センサ
１０２  距離センサ
１０３  通信部
２００  ネットワーク
３００  情報処理装置
３１０  通信部
３２０  入出力データ格納部
３３０  学習処理部
３４０  予測処理部
３３１  第１フィッティング曲線生成部
３３２  第１データ格納部
３３３  第１演算部
３３４  第２データ格納部
３４１  第２フィッティング曲線生成部
３４２  第３データ格納部
３４３  第２演算部
３４４  第４データ格納部
１００１  システム
１１０１  変換システム
【図１】
2015135662.tif 000030
【図２】
2015135662.tif 000031
【図３】
2015135662.tif 000032
【図４】
2015135662.tif 000033
【図５】
2015135662.tif 000034
【図６】
2015135662.tif 000035
【図７】
2015135662.tif 000036
【図８】
2015135662.tif 000037
【図９】
2015135662.tif 000038
【図１０】
2015135662.tif 000039
【図１１】
2015135662.tif 000040
【図１２】
2015135662.tif 000041
【図１３】
2015135662.tif 000042