(57)【要約】  処理ユニット（２０）とデータ・サンプル（２２）を提供するセンサとを有する制御システムであって、過去のデータ・サンプル（２６）の重み付けされた関数に基づいてデータ・サンプルを予測するマルチステップ先行型予測フィルタを含む。これによって、例えば実際のデータ・サンプル（２２）の受信がノイズや通信故障などの原因で一次的に中断されたときであっても、システムが予測されたデータ・サンプルを用いて継続的に機能することが可能になる。このフィルタは、不存在であって予測が要求されるデータ・サンプルの数とは無関係に、センサ信号の特性に基づいて予め決定されている１組の重み（２８）を用いて、過去のデータ・サンプル（２６）を重み付けする。前記１組の重みを決定する様々な方法も開示されている。
2008503810.tif 000002
【特許請求の範囲】
【請求項１】
処理ユニットとセンサとを有する制御システムであって、センサ・データに対するマルチステップ先行型予測フィルタを含んでおり、前記フィルタは、過去のデータ・サンプルの重み付けされた関数に基づいてデータ・サンプルを予測し、不存在であって予測が要求されるデータ・サンプルの数とは無関係に、センサ信号の特性に基づいて予め決定されている１組の重みを用いて過去のデータ・サンプルを重み付けすることを特徴とする制御システム。
【請求項２】
請求項１記載の制御システムにおいて、前記重みは前記センサに対する既知の出力信号と予測される出力信号との間の誤差関数を最適化することによって決定されることを特徴とする制御システム。
【請求項３】
請求項２記載の制御システムにおいて、前記最適化のプロセスは複数の項の和という形式を有する誤差関数に基づいており、前記複数の項はそれぞれの可能性のあるステップだけ将来の予測に対して１つの項があり、それぞれの項は実際のデータ値とその項の将来のステップに対して予測される値との間の誤差のすべてのデータ・サンプルに関する総和であることを特徴とする制御システム。
【請求項４】
請求項３記載の制御システムにおいて、前記誤差関数は前記マルチステップの将来予測の１又は複数の優先順位を決定するように重み付けされることを特徴とする制御システム。
【請求項５】
請求項３記載の制御システムにおいて、予測のために欠けているステップの数が小さければ小さいほど、重み付けする優先順位が高くなることを特徴とする制御システム。
【請求項６】
請求項２ないし５のいずれかに記載の制御システムにおいて、前記最適化プロセスは反復的なプロセスに基づくことを特徴とする制御システム。
【請求項７】
請求項６記載の制御システムにおいて、前記反復的なプロセスは最急降下法に基づくことを特徴とする制御システム。
【請求項８】
請求項１ないし７のいずれかに記載の制御システムにおいて、車両管理システムであることを特徴とする制御システム。
【請求項９】
請求項１ないし８のいずれかに記載の制御システムにおいて、車両ブレーキ・システムであることを特徴とする制御システム。
【請求項１０】
請求項１ないし９のいずれかに記載の制御システムにおいて、前記センサはブレーキ・ペダル・センサを含むホイール速度センサ又は足ペダル・センサであることを特徴とする制御システム。
【請求項１１】
請求項１ないし１０のいずれかに記載の制御システムにおいて、前記重みは更新可能であることを特徴とする制御システム。
【請求項１２】
制御ユニットとセンサとを含む制御システムであって、次の数式の形式を有しており欠けているセンサ・データを決定する予測フィルタを含み、
【数１】
2008503810.tif 000028
ただし、ｙ‘（ｋ−ｉ）はデータ・サンプルｙ（ｋ−ｉ）又は前に予測されたサンプルｙ∧（ｋ−ｉ）に等しく、ａｉは前記センサ信号の特性に基づいて決定され、ａｉの同一の集合がすべての欠けているデータの予測に用いられることを特徴とする制御システム。
【請求項１３】
請求項１２記載の制御システムにおいて、重みａｉは次の数式の形式の誤差関数の最適化に基づいて決定され、
【数２】
2008503810.tif 000029
ただし、Ｌは予測される連続的な欠けているデータ・サンプルの最大数であり、Ｃｊは連続的な欠けているデータ・サンプルの数の１又は複数の優先順位を決定する重みであり、ρ（ｘ）は、１）ρ（０）＝０であり、２）すべてのｘについてρ（ｘ）≧０であり、３）｜ｘ１｜＞｜ｘ２｜であればρ（｜ｘ１｜）＞ρ（｜ｘ２｜）という条件を満足する任意の関数であることを特徴とする制御システム。
【請求項１４】
請求項１２記載の制御システムにおいて、重みａｉは次の数式の形式の誤差関数の最適化に基づいて決定され、
【数３】
2008503810.tif 000030
ただし、Ｌは予測される連続的な欠けているデータ・サンプルの最大数であり、Ｃｊは連続的な欠けているデータ・サンプルの数の１又は複数の優先順位を決定する重みであることを特徴とする制御システム。
【請求項１５】
センサ・システムを制御する方法であって、
センサ・データを予測するステップと、
過去のデータ・サンプルの重み付けされた関数に基づいてデータ・サンプルを予測するステップと、
を含み、複数の異なる数の連続的な欠けているデータ・サンプルの予測のための予測関数を重み付けするのに１組の重みが用いられ、前記１組の重みはセンサ出力の特性に基づいて前もって決定されていることを特徴とする方法。
【請求項１６】
センサのためのマルチステップの将来予測フィルタの重みを決定する方法であって、複数の予測のための１組の重みを決定するステップと、前記１組の重みは前記センサの出力の特性の基づいて決定されることを特徴とする方法。
【請求項１７】
センサからのデータに基づいてシステムを制御するコンピュータ・ソフトウェアであって、
センサ・データが使用不可能であることを検出するコンポーネントと、
使用不可能なときには前記センサ・データを評価するコンポーネントであって、前記センサ・データは過去のデータ・サンプルの重み付けされた関数に基づいて評価され、すべての評価に対する前記過去のデータ・サンプルを重み付けするのに１組の重みが用いられ、前記重みはセンサ出力の特性に基づくことを特徴とするコンピュータ・ソフトウェア。
【請求項１８】
制御ユニットとセンサとを含む車両制御システムであって、センサ・データに対するマルチステップ先行型予測フィルタを含んでおり、前記フィルタは、過去のデータ・サンプルの重み付けされた関数に基づいてデータ・サンプルを予測し、不存在であって予測が要求されるデータ・サンプルの数とは無関係に、センサ信号の特性に基づいて予め決定されている１組の重みを用いて過去のデータ・サンプルを重み付けすることを特徴とする車両制御システム。
【発明の詳細な説明】
【関連出願】
【０００１】
この出願では、２００５年６月２２日に出願され「Signal Processing Methods and Apparatus」と題するオーストラリア特許出願第２００４９０３３９７号に基づく優先権を主張する。このオーストリア特許出願の内容はその全体をこの特許出願において援用する。
【技術分野】
【０００２】
本発明は、データのマルチステップ先行型予測フィルタリング（multi-step ahead predicative filtering）を提供する信号処理方法及び装置に関係する。また、本発明は、マルチステップ先行型予測フィルタリングを実現する制御システムに関するものであり、マルチステップ先行型予測フィルタを用いる車両管理システムを含む。
【背景技術】
【０００３】
典型的には、制御システムは、１又は複数のアクチュエータを動作させることができる制御ユニットと、システムの状態に関するデータを提供することができる１又は複数のセンサとを含む。制御ユニットは、センサ・データを用いて制御判断を下し、システムの状態に基づいてアクチュエータを動作させる。
【０００４】
制御システムは、例えば冗長センサ及び／又はフェールセーフ条件を提供することによって、センサの誤動作に対するセーフガードを提供することが多い。完全にセンサが失われる場合だけでなくとも、制御システムは、断続的なデータ損失を被ることがある。例えば、センサ・データが制御ユニットに到達しないことがありうる。これは多くの原因によって生じうるのであり、センサ自体及び／又はデータ伝送経路に関する一次的な問題に起因することがある。例えば、瞬間的な短絡や切断、通信ネットワークの故障及び／又はノイズが突然に増加する結果として生じる。
【０００５】
断続的なデータ損失という問題に対処するためには、予測フィルタを提供することが知られており、予測フィルタは、それまでに受け取られた現実のセンサ・データからセンサ・データを予測することを試みる。従って、１又は複数のセンサ・サンプル・ステップの間に現実のデータが存在しないときには、制御ユニットは、予測フィルタを用いて、欠けているデータがどのようなものであったはずであるかを判断する（それまでの多くの現実のデータ・サンプルに基づいて）。
【発明の開示】
【０００６】
本発明は、実際のセンサ・データが存在しないときにデータを予測する新規な方法及び装置を提供することを目的とする。
ある１つの側面から見ると、本発明は、処理ユニットとセンサとを有する制御システムであって、センサ・データに対するマルチステップ先行型予測フィルタ（multi-step ahead predictive filter）を含んでおり、前記フィルタは、過去のデータ・サンプルの重み付けされた関数に基づいてデータ・サンプルを予測し、不存在であって予測が要求されるデータ・サンプルの数とは無関係に、センサ信号の特性（characteristics）に基づいて予め決定されている複数の重みを用いて過去のデータ・サンプルを重み付けする制御システムを提供する。
【０００７】
ある側面からすると、本発明は、有限インパルス応答（ＦＩＲ）フィルタの１つのタイプとして見ることができる。しかし、従来の予測ＦＩＲフィルタ・システムでは、それぞれがそれ自体の重みの集合を備えた多数の異なるフィルタが用いられなければならない。
その理由は、フィルタが、例えばシステムが最後の実際のデータ・サンプルよりも先にある１つ、２つ、３つ又はそれよりも多くのデータ・ステップを見る必要があるかなど、いくつの連続的な欠けているデータ・サンプルが予測によって処理されなければならないかに応じて、変化しなければならないからである。従って、従来技術によるフィルタでは、フィルタの重み（ウェイト）は、先行する予測しなければならないステップの数に基づいて決定される。すなわち、データが欠けているのが１つの時間周期（time period）の分だけである場合には１組の係数が適当であり、データが２つの連続する時間周期にわたって欠けている場合にはもう１つの組の係数が必要になり、更にデータが３つの連続するサンプル周期にわたって欠けている場合には更にもう１つの組の係数が必要になる。４以上も先のサンプル・ステップを決定することができるためには、重みの組の数をそれに対応して増加させることが必要になる。
【０００８】
それとは対照的に、本発明では、データの予測が必要な先行するステップ数とは関係なく、ただ１組の重みだけを用いる。つまり、ただ１組の重みだけを記憶すればよいのだから、メモリの節約になる。また、予測されるサンプルに対して適切な１組の重みを選択するのに貴重な処理時間を失う必要がなくなるので、計算時間も節約される。従って、本発明によるシステムは、特に、時間及び／又はメモリの契約が厳しくリアルタイムでの予測フィルタリングが必要な場合に応用することが可能である。
【０００９】
本発明は、先行するいくつのステップについてデータを予測しなければならないかという観点というよりも、システムに特有な観点から予測フィルタの構築にアプローチしている。よって、本発明によるアプローチでは、フィルタが共に用いられる出力センサ信号の特定のダイナミクスに基づいて、ただ１組の重みが決定される。これは、重みがセンサの特性の関数ではない従来技術の場合とは対照的である。従来技術では、予測フィルタとその重みとはより普遍的な応用を有しているが、それに対して、本発明では、１組の重みは１つの特定のセンサ又はセンサのタイプに応用可能である。従って、本発明では、メモリ及び／又は計算時間に関するオーバヘッドを低減することのために、汎用性が犠牲にされる。本発明は、また、より高い予測性能を提供する。
【００１０】
本発明による制御システムは、例えば、車両管理／制御システムを含むことがある。そのようなシステムでは、車両状態と運転者の指示とが高速でサンプリングされ処理されるが、データを記憶するのに使用可能なメモリ量に制限がある。本発明は、ある実施例では、そのような制限に直面する予測フィルタを提供する優れた方法を提供する。サンプリングされたデータは、例えば、車輪速度やヨー（yaw）などの車両状態と、ブレーキの下降（踏み込み）、スロットルの下降、ステアリング角度などの運転者の指示とを含む。
【００１１】
本発明は、センサの動力学（ダイナミクス）が時間経過と共に劇的に変化することを想定しているのであるが、これは、通常のことである。よって、一般に、センサは、時間経過と共に安定状態に維持されるか、破滅的に故障するかのいずれかである。後者の場合には、代替的な制御方針を代わりに採用しなければならず、それは、例えば、冗長センサの提供とシャットダウンなどのフェールセーフ条件のトリガとの少なくとも一方である。これは、例えば、１組よりも多くのデータ・サンプルが欠けていると判断される場合に生じうる。
【００１２】
ある実施例では、このシステムは、例えばフラッシュ・メモリ上に提供されるなど重みが更新可能であるように、構成される。これにより、重みの規則的な感覚での更新が可能になり、万が一必要な場合には、時間経過に伴うセンサの漸進的な変化に基づいて重みが修正されることが可能となる。そのような更新は、例えば、車両などの正常の修理の間に行うことが可能であろう。
【００１３】
本発明のある実施例によると、１ステップ先行するデータ・サンプルは、既に受け取られている複数（Ｐ個）の実際のデータ・サンプルの一次結合（linear combination）として予測される。これらのＰ個のデータ・サンプルは一時的にメモリに記憶されるのであるが、新たに受け取られるそれぞれのデータ・サンプルがメモリに配置され、それに応じて最も古いデータ・サンプルが廃棄される。サンプルが１つ欠けていることによって１ステップ先行するデータ・サンプルが予測されなければならないときには、その予測されたデータ・サンプルは最も新しいデータ・サンプルとして記憶され、２ステップ先行するデータ・サンプルが予測されなければならないときには、最も直近に予測されたデータ・サンプルと以前の（Ｐ−１）個の物理データ・サンプルとの一次結合である。
【００１４】
このフィルタは、次の形式を有する。
【００１５】
【数４】
2008503810.tif 000003
【００１６】
ただし、ここで、ｙ‘（ｋ−ｉ）は、データ・サンプルｙ（ｋ−ｉ）と以前に予測されたサンプルｙ∧（ｋ−ｉ）とのどちらか一方と等しい（なお、記号ｙ∧における∧は、イメージ入力された上記の数式４に示されているように、本来はｙの上方に付されるのであるが、この日本語明細書では、入力の都合によりｙの直後に記されている）。
【００１７】
あるセンサのためのフィルタの重みを決定するために、訓練の手順が用いられ、対象となるセンサに対する出力からの既知の訓練データがフィルタに与えられ、フィルタ係数が反復されて最適化された誤差関数が提供される。
【００１８】
この訓練手順は、処理ユニット自体によって適切な時期に実行されるか、又は、メモリ能力などが付加された外部プロセッサによって実行される。外部プロセッサは、例えば、対象となるセンサ信号を受け取るように制御システムにプラグインすることができる。あるいは、例えば、同一のセンサ・システムすなわち同一のセンサ及び同一のモニタされる対象とを用いることによって、センサ信号をシステムの外部においてモデル化／シミュレートすることもできる。
【００１９】
ある実施例では、最大でＬ個の欠けている可能性があるデータに対する予測が要求されていて、Ｎ個の訓練データが用いられる場合には、誤差関数は、それぞれの可能性のある１ステップ先行する予測に対して１つずつのＬ個の項の総和という形式となる。ここで、それぞれの項は、実際のデータ値とその項の先行する１ステップに対して予測された誤差との間のすべてのＮ個のデータにわたる誤差の総和である。従って、誤差関数は、次の形式を有する。
【００２０】
【数５】
2008503810.tif 000004
【００２１】
この誤差関数を最小化することにより、この訓練が実行されるセンサに対して、先行する１からＬ個までの任意の数だけのステップの予測に適用することができる１組の重みが得られる。
【００２２】
ある実施例では、誤差関数の項は、先行するマルチステップ（複数ステップ）の予想の中の１又は複数の優先順位を決定するように重み付けがなされる。
【００２３】
【数６】
2008503810.tif 000005
【００２４】
従って、欠けているデータが一般に一連の３つのサンプルとして生じるようにセンサ・システムがなっている場合には、３ステップ先行する項Ｃ３がより高い重み付けを有し、従って、重みの決定において支配的となるように、誤差関数を重み付けできる。この場合には、結果的に生じる重みは、３ステップ先行する予測に対する最良の予測を提供することになる。
【００２５】
ある実施例では、１ステップ先行する予測が２ステップ先行する予測よりも高い重み付けを有するというように、つまり、Ｃ１＞Ｃ２＞・・・＞ＣＬとなるように、誤差関数が重み付けされる。欠けているデータが１つの欠けているデータとして生じる場合には、項であることが多く、欠けているデータが連続する数が多ければ多いほど、このような状況が生じる可能性は小さくなる。
【００２６】
誤差関数は、これ以外の任意の適切な形式を有することができる。すなわち、マルチステップ先行する予測の関数としての予測のよさを反映するものでありうる。こうして、誤差関数は次のように一般化することができる。
【００２７】
【数７】
2008503810.tif 000006
【００２８】
ただし、ρ（ｘ）は、１）ρ（０）＝０であり、２）すべてのｘについてρ（ｘ）≧０であり、３）｜ｘ１｜＞｜ｘ２｜であればρ（｜ｘ１｜）＞ρ（｜ｘ２｜）である、という３条件を満足する任意の関数である。従って、上の数式５及び数式６の場合には、ρ（ｘ）＝（１／２）ｘ２となる。
【００２９】
反復は任意の適切な形式でよく、ある実施例では、誤差関数は、最急降下法（steepest
gradient method）を用いて最適化される。この実施例では、係数の重みベクトルとの関係で誤差関数の勾配が決定され、重みベクトルが勾配に沿って下方向へ移動される。
【００３０】
重みベクトルの反復の決定にモメンタム（momentum）の項を含めることにより、反復が局所的な最小値に捕らわれてしまうことを回避することができる。
反復は、ゼロ次のホールド・フィルタによって初期化することができる。すなわち、最初に、フィルタの最初の重み以外の重みをゼロに設定することができる。再調整する場合には、反復は現在の組の係数を用いて開始することができる。
【００３１】
いったん誤差関数が最適化されると、結果的に得られる重みは、考慮しているセンサに対するフィルタの重みとして用いられる。そして、これらの係数は、制御システムの動作中に欠けているデータを予測するのに、通常のリアルタイムでの処理に用いられる。
【００３２】
他の最適化アルゴリズムも可能である。よって、課題は、数式５又は数式６の誤差又は費用関数の絶対最小値を求めることであり、つまり、最適化問題である。他の最適化サーチ・アルゴリズムには、例えば、動的プログラミング、遺伝的アルゴリズム、進化的コンピュータ・アルゴリズムなどが含まれる。
【００３３】
反復される重みは、センサ信号のダイナミクスが安定的に維持されると仮定して、継続的に使用される。しかし、センサ信号のダイナミクスが何らかの理由により変化する場合には、重みを再調整することが必要になる可能性がある。上述したように、これは、装置のルーチン的な修理のときに、重みを再検査及び最決定することによってなされる。リアルタイムに適応的に実行することができる。ある実施例では、処理ユニットは、例えばセンサが制御プログラマブルにおいて用いられていないときに重みを調整するルーチンを含むことがある。あるいは、重みの調整は、システムにプラグインされるか又は例えば同一のセンサ・システムのシミュレートの一部である外部プロセッサによって実行されることもある。
【００３４】
用いられる訓練データ・サンプルの数Ｎは、センサ信号のダイナミクスに応じて変動しうる。用いられる応用例にも左右される。例えば、センサがブレーキ・ペダルの変位又は力センサである場合には、Ｎ個の訓練データ・サンプルは、例えばブレーキ・リリースとソフトで漸次的なブレーキ操作とハードで突然のブレーキ操作などを含むあらゆる可能性があるブレーキ状態に対するセンサ信号を含まなければならない。従って、訓練データは、センサがモニタするシステムにおいて生じうるすべての主なタイプのシステム状態をシミュレートするのが好ましい。
【００３５】
モデル化されているマルチステップ先行する予測の数Ｌもまた変動する。一般的に、Ｌは、予測フィルタが適用されるシステムが許容できる連続的に欠けているデータ・サンプルの最大数である。システムの中に連続して欠けているデータ・サンプルがＬ個よりも多くある場合には、データを無視する、冗長センサを用いる、シャットダウンなどフェールセーフ条件を入力する、の中の少なくとも１つを用いるなど、別の方法が必要になる。
【００３６】
重みと過去に用いられたデータ・サンプルとの数が多ければ多いほど、一般論として、よりよい予測が可能となるが、その結果として、予測を決定するのに、より多くのメモリが用いられ、より長いプロセッサ時間が用いられる。
【００３７】
本発明は、多くの異なるタイプの制御システムにおいて用いることができる。センサと処理ユニットとの接続は、任意の適切な形式でよく、例えば、直接の接続であっても、通信バスやケーブルでも無線でもかまわないがそれ以外のネットワークに沿った接続でもありうる。処理ユニットは、センサから離散的なデータ・サンプルを受け取るか、又は、処理ユニットがサンプリングする連続的な信号を受け取る。いずれの場合でも、センサ信号が欠けている又は破壊されていてデータ・サンプルが得られない場合には、予測フィルタを用いて欠けているデータを提供することができる。
【００３８】
欠けているデータ・サンプルの検出は、任意の適切な形式でなされる。例えば、制御ユニットが、例えば誤り検出アルゴリズムやチェックサム・ディジットなどを通じて、センサから通信を受け取っていない、受け取られたデータ／信号はセンサの通常データ範囲の外側にある、データが破壊されている、などと判断する。
【００３９】
上述の通り、本発明による制御システムは、車両制御に用いることができる。また、他の分野でも用いることができる。例えば、この制御システムは、システムの中で１又は複数のセンサが重要な役割を有するようなシステムや、欠けているセンサ・データがシステ
ム故障を生じさせる及び／又は安全性が重要な問題を引き起こすようなシステムにおいて、用いることができる。例えば、ブレーキ・システム一般に応用可能である。他の例としては、航空機用の制御システム、軍需用の制御システム、衛星の移動制御システム、宇宙空間におけるロボット制御システムなどがあり、特に、主にそれ自体のセンサによって自律的に制御がなされるようなシステムに応用されうる。また例えば、センサ・データ・ストリームがＧＰＳデータであるようなシステムとも関係する。使用可能なメモリとプロセッサ時間との少なくとも一方に制限があるような応用例において特に有用である。
【００４０】
本発明は、上述の予測フィルタを用いた信号処理方法を提供する。従って、別の側面から考察すると、本発明は、センサ・システムを制御する方法であって、センサ・データを予測するステップと、過去のデータ・サンプルの重み付けされた関数に基づいてデータ・サンプルを予測するステップと、を有しており、１組の重みを用いて、複数の異なる数連続して欠けているデータ・サンプルに対する予測のための予測関数が重み付けされ、前記１組の重みはセンサ出力の特性に基づいて前もって決定されている方法を提供する。
【００４１】
また、本発明は、上述した予測フィルタの重みを調整する方法も提供する。従って、別の側面から考察すると、本発明は、センサのマルチステップ先行型予測フィルタの重みを決定する方法であって、複数の予測のための１組の重みを決定するステップを有し、前記１組の重みはセンサ出力の特性に基づいて決定される方法を提供する。
【００４２】
本発明は、更に、本発明を実装するコンピュータ・ソフトウェアを提供する。従って、更に別の側面から考察すると、本発明は、センサからのデータに基づいてシステムを制御するコンピュータ・ソフトウェアを提供し、このソフトウェアは、
センサ・データが使用不可能であることを検出するコンポーネントと、
使用不可能なときには前記センサ・データを評価するコンポーネントであって、前記センサ・データは過去のデータ・サンプルの重み付けされた関数に基づいて評価され、すべての評価に対する前記過去のデータ・サンプルを重み付けするのに１組の重みが用いられ、前記重みはセンサ出力の特性に基づくコンピュータ・ソフトウェアを提供する。
【００４３】
このコンピュータ・ソフトウェアは、任意の適切なコンピュータ可読な記憶媒体の上に提供され、本発明は、そのようなコンピュータ・ソフトウェアを有するコンピュータ可読な記憶媒体も提供する。また、本発明は、ソフトウェア・コードが埋め込まれているハードウェア及びファームウェアも提供する。
【００４４】
本発明は、更に、本発明によって制御システムを修理する方法も提供する。その修理方法においては、フィルタの重みが、センサ信号の動的特性の任意の変化に従ってテストされ調整される。
【００４５】
本発明は、特に、車両制御システムに応用可能であり、別の側面から考察すると、制御ユニットとセンサとを含む車両制御システムであって、センサ・データに対するマルチステップ先行型予測フィルタを含み、前記フィルタは、過去のデータ・サンプルの重み付けされた関数に基づいてデータ・サンプルを予測し、不存在であって予測が要求されるデータ・サンプルの数とは無関係に、センサ信号の特性に基づいて予め決定されている１組の重みを用いて過去のデータ・サンプルを重み付けする車両制御システムを提供する。
【００４６】
別の側面から考察すると、本発明は、制御ユニットとセンサとを含む制御システムであって、次の数式の形式を有しており欠けているセンサ・データを決定する予測フィルタを含み、
【００４７】
【数８】
2008503810.tif 000007
【００４８】
ただし、ｙ‘（ｋ−ｉ）はデータ・サンプルｙ（ｋ−ｉ）又は前に予測されたサンプルｙ∧（ｋ−ｉ）に等しく、ａｉは前記センサ信号の特性に基づいて決定され、同じ１組のａｉがすべての欠けているデータの予測に用いられる制御システムを提供する。
【００４９】
上述した本発明の側面のどれも、上述したそれ以外の側面との関係で述べた特徴の任意のものを適切に含むことに注意すべきである。
【発明を実施するための最良の形態】
【００５０】
次に、本発明の実施例について、添付の図面を参照して、あくまで例示として、説明する。図面に含まれる特定の事項は以上で行った本発明の一般性を損なうことはないという点を理解すべきである。
【００５１】
図１を参照すると、車両管理システムが概略的に示されている。この管理システムは、車両状態と運転者の意思とに関係する様々なセンサから信号を受け取り車両の動作を制御する様々なアクチュエータに向けて信号を出力する電子制御ユニット（処理ユニット）１を含む。
【００５２】
車両センサには、車両の車輪３の回転速度を判断する車輪速度センサ２と、例えば温度などを判断するエンジン・センサ４とが含まれる。
運転者のインジケータ・センサは、例えば、ペダルの移動量又はペダルの上にある運転者の足によって加えられる力によって判断される運転者のブレーキに対する要求に比例する信号を提供するブレーキ・ペダル・センサ５を含む。
【００５３】
また、他の運転者要求センサ（人間機械間相互作用（ＨＭＩ）センサ）と車両及びエンジン状態センサとが含まれることがあり、一般的に参照番号６が付されている。これらには、例えば、ヨー・センサ、ＮＯＸやＯ２センサなどの排気センサ、運転者によるステアリング・ホイールの回転に基づくステアリング角度センサ、運転者のスロットル・ペダルのためのセンサなどが含まれる。様々な他のワイヤ配線（by-wire）による制御センサも含まれることがある。例えば、可能性があるブレーキの配線によるセンサには、クランプ力センサ、電流センサ（ブレーキ・キャリパの中の電気モータの電流を測定する）、ロータ・エンコーダ（モータのロータの角度変位を測定する）などが含まれる。
【００５４】
制御ユニット１は、センサからのデータを解析し、制御信号を様々なアクチュエータに与えることによって、データに基づいて様々な車両管理機能を実行する。
これらのアクチュエータには、例えば、車輪３におけるブレーキ・アクチュエータ７や、燃料インジェクタ、スパーク点火装置、排気フィードバック制御などのエンジン制御アクチュエータ８が含まれる。
【００５５】
制御ユニット１は、多数の異なる態様で車両を制御する。これらには、例えば、アンチロック・ブレーキング・システム（ＡＢＳ）、トラクション制御（ＴＣ）、車両安定性、走行制御機能、パニック・ブレーキング制御などが含まれる。また更に、例えば、最適な燃料効率や加速などのためのタイミングや燃料注入量などの一般的なエンジン制御も含まれる。制御ユニット１は、また、ワイヤ配線による車両制御態様での正常な駆動機能を制御して、速度を上昇させるとかブレーキをかけるなどの運転者の要求が制御ユニットに認識させ、所望の作用を実行するのに必要なコマンドを実現することができる。
【００５６】
制御ユニット１、センサ２、４、５、６、アクチュエータ７、８は、任意の適切な態様で通信することができる。これらの装置は、１又は複数の通信バスを介して個別に相互に接続されている。
【００５７】
本発明のある実施例によると、制御ユニット１は、例えば車輪センサ２やブレーキ・センサ５などの様々なセンサの中の１又は複数からデータ・サンプルを受け取らないときには、過去のデータ・サンプルに基づいてこれらの欠けているデータ・サンプルを予測するマルチステップ先行型の予測フィルタを実現する。これにより、例えば一次的な短絡、切断又はノイズ・レベルにおけるスパイクなどの原因でたとえセンサ・データが欠けているときであっても、車両の適切な制御が維持される。
【００５８】
制御ユニット１は、（ｋ−１）ＴＳから（ｋ−Ｐ）ＴＳまでのサンプリング時間にセンサから受け取られた最後のＰ個のデータ・サンプルｙ（ｋ−ｉ）（ｉ＝１からＰまで）を記憶する関連のメモリ９を含む。ただし、ここで、ｋは現在のサンプル数、ＴＳはサンプリング時間である。いったん新たなデータ・サンプルが受け取られると、最も以前に記憶されたデータ・レコードは廃棄され、最近に記憶されたデータ値のそれぞれが１メモリ単位だけ後方に移動されてデータｙ（ｋ−（ｉ＋１））となり、新たなデータ・サンプルがデータ位置ｙ（ｋ−ｉ）に記憶される。
【００５９】
１つのデータ・サンプルが欠けているときには、予測フィルタは、既に記憶されている過去のＰ個のデータ・サンプルを用いて１ステップ先の予測を提供する。フィルタは、メモリ９に記憶されており後述する訓練プロセスにおいて当該センサに対して前もって決定されている１組のＰ個の重みａｉ（ｉ＝１からＰ）を用いるＦＩＲフィルタに基づいている。記憶されている過去のデータ・サンプルｙ（ｋ−ｉ）のそれぞれに対して１つの係数ａｉが存在し、従って、予測されたデータ・サンプルは過去のＰ個の現実のデータ・サンプルの重み付けされた一次結合である。
【００６０】
欠けているデータ・サンプルは、いったん予測されると、現実のデータ値として扱われて、車両制御プロセスにおいて用いられる。また、最新のデータ・サンプルとしてメモリ９に記憶され、この予測されたデータ・サンプルとセンサから実際に受け取られたデータ・サンプルとの間は全く区別されない。
【００６１】
２つのデータ・サンプルが欠けている場合には、第１の欠けているデータを検出するときに、予測フィルタは、上述の場合と同じ手順を用いて、その第１の欠けているデータに対応する予測されたデータ・サンプルを提供する。この場合には、しかし、第２の予測されたデータ・サンプルは第１の予測されたデータ・サンプルと第１の欠けているデータ・サンプルよりも前に受け取られていた（Ｐ−１）個の現実のデータ・サンプルとの重み付けされた一次結合である。
【００６２】
この手順は、欠けているデータ・サンプルが３、４、５あるいはそれより多い場合について（Ｌまで）反復される。このシステムはいくつのデータ・サンプルが欠けているのかを知っている必要はないことに注意すべきである。というのは、常に同じ手順を反復するからである。プロセッサ１は、欠けているデータの数や適切なフィルタの数を決定するために貴重な計算時間を使用する必要がない。ただ、データが欠けている回数は依然としてカウントするのであるが、これにより、例えば、ある設定された数を超える数の連続的なデータ点が欠けているときには、センサは、誤動作していると判断され、プロセッサ１は、異なる複数のセンサからのデータが変わりに用いられる又はフェールセーフ状態に入るという別の態勢に切り替わる。
【００６３】
欠けているデータの決定は任意の形式でありうるが、例えば、ある時間周期の間にセンサからの信号が存在しないことや損なわれたデータの受信によって決定される。損なわれたデータとは、例えば電圧が高すぎるとか低すぎるとかなど正常な動作パラメータに従わないデータ値である。データは、チェックサムなどのエラーチェック手順を通じて、損なわれたものであると判断される。
【００６４】
データはセンサから受け取られたデジタル・データであったり、プロセッサ自体がサンプリングすることができるアナログ・データであったりする。
本発明の特徴は、同じ重み｛ａ１，・・・，ａＰ｝が、マルチステップ先の予測のすべてに用いることができるということである。これは既知のＦＩＲフィルタとは対照的である。というのは、既知のＦＩＲフィルタでは、重みａｉはデータ・サンプルが予測される先のステップの数の関数であり、すなわち、重みａｉは欠けているデータ・サンプルの数に左右されるのである。
【００６５】
本発明は１組だけの重みを用いるのであるから、メモリ空間が節約できる。制御ユニット１はフィルタ重みの中のどれが欠けているデータのどれに対して要求されるのかを決定することは必要ないので、計算時間も短縮される。このような属性は、利用できるメモリに制約があり計算時間のオーバヘッドも重要である車両／エンジン管理システムにおいては、特に有用である。
【００６６】
すべてのマルチステップ先の予測に用いることができる適切な１組の重みａｉを決定するために、重みａｉは、センサ信号の特定の動的特性に基づいて最適化される。そして、センサの出力の動的特性に基づいて、ブレーキ・ペダル・センサ６に対して、特定の１組の重み係数｛ａ１，・・・，ａＰ｝が選択され、別の１組の係数が車輪センサ２に対して選択される。
【００６７】
センサに対する重みを決定するのは、あるセンサに対する１組の既知の訓練データを用いて、関連するセンサ・フィルタを調整する。そして、Ｎ個の既知のデータ・サンプルがフィルタに与えられ、重みａｉは反復されて、実際のデータと予測されたデータとの間の誤差関数を最適化する。次に、最適な結果を提供する係数がリアルタイムの計算係数として用いられる。誤差関数の形式と反復方法とは、後でより詳細に論じる。
【００６８】
センサ信号のダイナミクスはセンサ自体の特性と感知される対象物／特徴の特性との両方に左右される。そして、回転速度センサは、車輪の回転をモニタする車輪速度センサ２として用いられるときにはある信号ダイナミクスを有し、カム・シャフトなどの回転をモニタするのに用いられる場合には別の信号ダイナミクスを有する。従って、同じセンサがそれぞれの状況において用いられるとしても、異なるフィルタ重みが必要になることがありうる。センサとモニタされるアイテムとが同一であるときには、同じ重みを用いることができる。例えば、４つの車輪速度すべてについて同じ重みを用いることができる。しかし、例えば後方車輪又は前方車輪である車輪がエンジンによって直接に駆動される場合には、直接に駆動されない従属的な車輪からは異なる信号ダイナミクスを有することがありうる。その場合には、異なる複数の組の重みが要求されることがありうる。また、同じタイプのセンサが製造時の公差や時間経過などによる摩耗に起因して異なる特性を有することがある。その場合には、同じ特徴をモニタするのに用いられる同じセンサ・タイプが、異なる重みを必要とすることがある。
【００６９】
一般的に、センサ特性は、時間経過と共に安定的に維持され、従って、いったん重みが最初に決定されると、フィルタはその寿命の間よい結果を提供し続ける。しかし、例えば時間経過や摩耗によりセンサの特性に変化が生じると、新たな重みが決定される。これらの変化は、例えば、車両の通常の修理のときなど適切な時点で重みを再調整することによ
って補償することができる。再調整は、システムにプラグインされる外部装置によって実行される、又は、プロセッサ自体によって実行される。制御ユニット１は、使用の間、例えばセンサ出力が要求されないときや制御ユニットが利用できる余分な計算時間があるときなどに重みを再調整するようにプログラムすることができる。
【００７０】
次に、本発明によるフィルタ・プロセスの背後にある理論について、論じる。
処理ユニットが例えばネットワークを介してセンサからデータ・サンプルを受け取ると、瞬間的な短絡やネットワークの故障などが原因でデータ・サンプルのいくつかが欠けていることがある。処理ユニットは、欠けているサンプルの代わりに予測された値を用いなければならない。最大でＬ個の連続的な欠けているデータ・サンプルが処理されると仮定する。Ｌよりも多くの連続的なサンプルが欠けている場合には、処理ユニットは、例えば制御コマンドが他の利用可能なセンサ・データや冗長センサに基づいておりその問題が解決されるまではシステムがフェールセーフ状態に入る、別の制御状態に切り替わる。
【００７１】
最近に欠けたサンプルの数に基づいて、欠けているサンプルが、１ステップ先からＬステップ先までの予測によって処理される。欠けているそれぞれのサンプルの予測された値は、次のように、直近のＰ個のデータ値の一次結合である。
【００７２】
【数９】
2008503810.tif 000008
【００７３】
ここで、ｙ‘（ｋ−ｉ）は過去のデータ・サンプルｙ（ｋ−ｉ）又は前に予測されたサンプルｙ∧（ｋ−ｉ）に等しい。メモリの利用可能性、複雑さ及びコード実行の遅延などの制約のために、１ステップ先、２ステップ先からＬステップ先までの予測に対する異なる重みａｉを求めることは望ましくない。従って、フィルタを調整して、すべての場合に予測のために同じａｉの値を用いるようにする。
【００７４】
１ステップ先の予測の場合には、第１の欠けているサンプルは、次のように、Ｐ個の過去の実際のサンプルの一次結合によって評価される。
【００７５】
【数１０】
2008503810.tif 000009
【００７６】
２ステップ先の予測の場合には、第２の欠けているサンプルは、次のように、最近に予測されたサンプルと（Ｐ−１）個の過去のデータ・サンプルとの同じ一次結合によって評価される。
【００７７】
【数１１】
2008503810.tif 000010
【００７８】
数式１０におけるｙ１（ｋ−１）を数式１１に代入する結果として次の方程式が得られる。
【００７９】
【数１２】
2008503810.tif 000011
【００８０】
３ステップ先の予測の場合には、予測されるサンプルは、同様にして次のように定式化される。
【００８１】
【数１３】
2008503810.tif 000012
【００８２】
そして、これに、数式１０のｙ１（ｋ−２）と数式１２のｙ２（ｋ−１）とを代入すると次が得られる。
【００８３】
【数１４】
2008503810.tif 000013
【００８４】
一般的に、ｊ番目の欠けているデータ・サンプルは、次の方程式で与えられる。
【００８５】
【数１５】
2008503810.tif 000014
【００８６】
ここで、２≦ｊ≦Ｌであり、ａ０＝０である。また、Ｐ≧Ｌと仮定するが、欠けているデータ・サンプルの許容可能な最大値Ｌはリアルタイムの制御システムでは小さいのが通常であるから、これは合理的な仮定である。前に予約されたｙｊ−ｉ個の値を数式１５に反復的に代入することにより、次の数式が導かれる。
【００８７】
【数１６】
2008503810.tif 000015
【００８８】
ここで、Ａｉｊという乗数は、次の方程式によって再帰的に計算することができる。
【００８９】
【数１７】
2008503810.tif 000016
【００９０】
【数１８】
2008503810.tif 000017
【００９１】
ここで、２≦ｊ≦Ｌ≦Ｐである。数式１６は、提案された予測フィルタが次の伝達関数を有するＦＩＲフィルタであることを示している。
【００９２】
【数１９】
2008503810.tif 000018
【００９３】
本発明によると、ａｉの重みは、数式１０、１１、１３又は１５によってＬまでの要求される数の欠けているデータ・サンプルの任意のものの欠けている値を予測するのに結果的に得られるフィルタを用いることができるように、調整される。
【００９４】
本発明による調整アルゴリズムでは、次の誤差関数を最小化するａｉの値を求めることになる。
【００９５】
【数２０】
2008503810.tif 000019
【００９６】
ここで、Ｎはオフラインの調整に用いられるサンプルの全体数であり、Ｃｊは１からＬまでの先の予測の実行に関する優先順位に基づいて、つまり、例えばそれぞれのマルチステップ予測の予期される頻度に基づいて選択される定数である。この優先順位の決定は、応用例によって左右される。ほとんどのリアルタイムの応用例では、予測において先のステップの数が小さいほど高い優先順位を有する。すなわち、Ｃ１＞Ｃ２＞・・・＞ＣＬである。しかし、それ以外の優先順位を設定することも可能である。例えば、３の集合においてサンプルが欠けていることが多いと判明した場合には、Ｃ３が優先される。
【００９７】
誤差関数を最適化するには、最急降下法が用いられる。この方法では、重みベクトルΘ＝［ａ１ａ２・・・ａＰ］Ｔが、重みベクトルに関して誤差関数の勾配ベクトルの逆の方向に反復的に移動される。従って、次のように、この勾配（gradient）の計算が必要となる。
【００９８】
【数２１】
2008503810.tif 000020
【００９９】
【数２２】
2008503810.tif 000021
【０１００】
数式１２、１４及び１６−１８は、ｉ＞１である場合には、ｙｉ（ｋ）のａｊに関する偏微分の直接的な計算と定式化とは複雑になりうることを示している。従って、その代わりに、その方が定式化及び計算が容易な間接的な反復的計算を数式１０、１１、１３及び１５に基づいて行う。ａｊに関して数式１０を偏微分すると、次が得られる。
【０１０１】
【数２３】
2008503810.tif 000022
【０１０２】
ａｊに関して数式１１を偏微分し、数式２３におけるｙ１のａｊに関する偏微分を利用すると、次が得られる。
【０１０３】
【数２４】
2008503810.tif 000023
【０１０４】
ａｊに関して数式１３を偏微分し、数式２３及び２４におけるｙ１のａｊに関する偏微分とｙ２のａｊに関する偏微分とを利用すると、次が得られる。
【０１０５】
【数２５】
2008503810.tif 000024
【０１０６】
同様のアプローチを用いて、一般的にｙｉ（ｋ）のａｊに関する偏微分が次のように得られる。
【０１０７】
【数２６】
2008503810.tif 000025
【０１０８】
ここで、１≦ｊ≦Ｐであり、２≦ｉ≦Ｌである。乗数Ｂｌ（Ｂの下付きの添字はエルの
小文字）は、次の数式によって再帰的に計算することができる。
【０１０９】
【数２７】
2008503810.tif 000026
【０１１０】
数式２１及び２２における勾配ベクトルは、数式２３−２７によって反復的に計算することができ、次の規則によって重みの適用に応用できる。
【０１１１】
【数２８】
2008503810.tif 000027
【０１１２】
ここで、ｌ（小文字のエル）はＮ個のサンプルの全体の集合にわたるサーチ・プロセスの反復数であり、右辺の第１の項は最急勾配の項であり、右辺の第２の項は局所的な最小値を回避するためのモメンタムの項である。
【０１１３】
サーチ・アルゴリズムでは、フィルタ重みベクトルは、［１００・・・０］Ｔに初期化することができ、よって、フィルタはゼロ次ホールド・システムに対応する。このゼロ次ホールド・システムは、単純で一般的な予測器である。重みは、数式２１−２８によってオフラインで調整され、リアルタイムでの応用例における欠けているデータの処理に用いられる。
【０１１４】
何らかの理由によりセンサ信号の動的特性が変化する場合には、フィルタ重みは、数式１７−２８をリアルタイムで用いることにより適応的に調整することができる。すなわち、数式２２における加算を無視して、数式２８におけるｌ（小文字のエル）を信号サンプリング時間ｋで置き換える。
【０１１５】
以上では主に車両管理システムとの関係で論じてきたが、本発明は、制御システム一般に適用可能であり、図２には一般的な制御システムがブロック図の形式で示されている。
このように、プロセッサ２０は、入力データ・サンプル２２をセンサから受け取り、アクチュエータ２４を制御する、又は、適切な動作を行う。プロセッサ２０は、過去のＰ個のデータ・サンプルｙ（ｋ−ｉ）又は予測されたデータｙ‘（ｋ−ｉ）（１≦ｉ≦Ｐ）とフィルタ重み｛ａ１，・・・，ａＰ｝とを記憶する関連するメモリ２６及び２８を含む。
【０１１６】
次に、プロセッサ２０は、データ２２が時間通りに受け取られていないと判断すると、上述のフィルタを用いて予測アルゴリズムを動作させるが、その場合、同じフィルタ重み｛ａ１，・・・，ａＰ｝を任意の数の連続的な欠けているデータに対して用いることができ、また、例えばセンサ及び感知された特徴／対象物などデータがそこから得られた特定のセンサ・システムに対してそのフィルタ重みを調整することができる。
【０１１７】
プロセッサ２０は、図３の流れ図に示されているように、重み調整プロセスを動作させる。プロセッサ２０は、オフラインのとき及び訓練モードのときにそれを行う。あるいは、プロセッサ・システムにプラグインすることができる又は例えば同一のセンサ・システムからデータを得るなどセンサ信号のダイナミクスをシミュレートする外部装置で、この手順を動作させることも可能である。
【０１１８】
こうして、プロセッサ２０は、ステップＳ１０において既知の訓練データを受け取り、ステップＳ２０においてフィルタ重み｛ａ１，・・・，ａＰ｝を単純なゼロ次ホールド・フィルタに［１００・・・０］において設定する、又は、センサが既に調整されている場合には、現在記憶されている重みの設定を用いることもできる。プロセッサは、次に、実際のデータ値と様々なマルチステップ先行する予測に対する予測値との間の例えば上述したような誤差関数Ｅの値を、ステップＳ３０で決定する。プロセッサ２０は、次に、例えば誤差関数が設定された回数の反復の間に著しく変化していないか判断することによって、又は、誤差が特定のスレショルドよりも下に到達しているかどうかを判断することによって、重みが最適化されているかどうかをステップＳ４０で判断する。最適化されていない場合には、プロセッサは、ステップＳ５０で重みａｉを修正し、ステップ３０で誤差関数を再度決定する。この反復は、誤差関数Ｅが最適化されていると判断されるまで継続される。最適化されていると判断されると、ステップＳ６０で、現在記憶されている重みａｉがリアルタイムで用いるためのフィルタ重みとして設定される。
【０１１９】
他の制御システムには、例えば、１又は複数のセンサがそのシステムの中で重要な役割を有するようなシステムや、欠けているセンサ・データがシステムの故障を生じさせる及び／又は安全の面で重大な問題を引き起こすようなシステムが含まれる。これは、例えば、ブレーキ・システム一般に適用される。他の例には、航空機用の制御システム、軍需用の制御システム、衛星の移動制御システム、宇宙空間でのロボット制御システム、そして特に主にそれ自体のセンサによって自律的に制御されるようなシステムなどがある。例えば、センサ・データ・ストリームがＧＰＳデータであるようなシステムにも関係する。メモリとプロセッサ時間との少なくとも一方に制約があるような応用例において、特に有用である。
【０１２０】
本発明の範囲から逸脱することなく、上述した説明に様々な変更、追加及び／又は修正を加えることが可能であり、更に、上述の説明に照らせば、当業者であれば理解するように、本発明は様々な態様でソフトウェア、ファームウェア及び／又はハードウェアとして実現が可能であることを理解すべきである。
【図面の簡単な説明】
【０１２１】
【図１】本発明のある１つの実施例による予測フィルタを組み入れた車両制御システムの概略図である。
【図２】本発明のある１つの実施例による予測フィルタを組み入れた一般的な制御システムの概略図である。
【図３】本発明のある１つの実施例による予測フィルタのための最適な１組の重みを決定する訓練方法に関する流れ図である。
【図１】
2008503810.tif 000031
【図２】
2008503810.tif 000032
【図３】
2008503810.tif 000033
【国際調査報告】
2008503810.tif 000034
2008503810.tif 000035