(57)【要約】ハードウェアにより形成されハードワイヤードされており、結合された関数ブロックにおいて固定的に予め設定された計算アルゴリズムを計算する演算コアによって、ＲＢＦモデルのための所定の入力ベクトルの入力のうちの特定の入力に関する勾配を決定するモデル計算ユニットであって、演算コアは、ＲＢＦモデルのための特定の入力に関する勾配を、或る入力次元の入力ベクトルの１つ以上の入力と、サンプルポイントの数と、サンプルポイント（Ｖｊ、ｋ）ごと及び入力次元（κ）ごとに予め設定された長さスケール（Ｉｊ、ｋ）と、サンプルポイントごとに予め設定された、ＲＢＦ関数のパラメータと、に従って計算するよう構成される、上記モデル計算ユニットに関する。【選択図】図１
2019530115.tif 000002
【特許請求の範囲】
【請求項１】
ハードウェアにより形成されハードワイヤードされており、結合された関数ブロックにおいて固定的に予め設定された計算アルゴリズムを計算する演算コア（１１、１３、１４）によって、ＲＢＦモデルのための所定の入力ベクトルの入力のうちの特定の入力に関する勾配を決定するモデル計算ユニット（２２）であって、
前記演算コア（１１、１３、１４）は、ＲＢＦモデルのための前記特定の入力に関する前記勾配を、或る入力次元の前記入力ベクトルの１つ以上の入力と、サンプルポイントの数と、サンプルポイント（Ｖｊ、k）ごと及び入力次元（κ）ごとに予め設定された長さスケール（ι［ｊ、ｋ］）と、サンプルポイントごとに予め設定された、ＲＢＦ関数のパラメータと、に従って計算するよう構成され、
‐前記特定の入力について、前記特定の入力に対応するサンプルポイントの値と、前記特定の入力と、の差分を示す第１の項（δｊ、ｋ）と、
‐サンプルポイント（Ｖｊ、ｋ）について、前記サンプルポイント（Ｖｊ、ｋ）に対応付けられた前記ＲＢＦ関数のパラメータ（ｐ３、ｊ）と掛けられた指数関数の結果を示す第２の項（γｊ）であって、
前記指数関数の引数は、全入力次元について求められた積であって、各対応づけられた前記長さスケール（ι［ｊ、ｋ］）と、各前記入力次元に対応する、サンプルポイント（Ｖｊ、ｋ）の前記値と前記入力次元に対応する前記入力との差分の二乗と、の前記積の和の負の値に相当する、前記第２の項（γｊ）と、
が計算され、
前記第１の項（δｊ、ｋ）と、前記第２の項（γｊ）と、各前記対応付けられた長さスケール（ι［ｊ、ｋ］）と、の積の和が、全サンプルポイント（Ｖｊ、ｋ）について形成され、前記勾配に比例する値が獲得される、モデル計算ユニット（２２）。
【請求項２】
前記演算コア（１１、１３、１４）は、前記勾配に比例する前記値に、因数２と、前記特定の入力（ｕｋ）に対応付けられた所定の入力変換変数（ｐ１、ｄ）の値と、所定の出力変換変数（ｐ４）の値と、を掛けることにより前記勾配を計算するよう構成される、請求項１に記載のモデル計算ユニット（２２）。
【請求項３】
前記演算コア（１１、１３、１４）は前記勾配に加えて、前記特定の入力を含む入力ベクトル（ｕ）での前記ＲＢＦモデルの前記出力も計算するよう構成される、請求項１又は２に記載のモデル計算ユニット（２２）。
【請求項４】
前記演算コア（１１、１３、１４）は、状態機械（１１）と、１つ以上の算術演算ブロック（１３、１４）、特に、ＭＡＣブロック及び指数関数計算ブロックと、を含み、及び、特に、前記入力ベクトル（ｕ）の前記１つ以上の入力と、前記サンプルポイントと、前記長さスケール（ιｊ、ｋ）と、サンプルポイントごとに予め設定された前記パラメータと、前記出力と、を格納するためのメモリ（１２）を含む、請求項１〜３のいずれか一項に記載のモデル計算ユニット（２２）。
【請求項５】
前記勾配の前記計算は、選択変数（ｃｆｇ＿ｐｄ）の設定によって活性化又は非活性化される、請求項１〜４のいずれか一項に記載のモデル計算ユニット（２２）。
【請求項６】
マイクロプロセッサ（２１）と、請求項１〜５のいずれか一項に記載の１つ以上のモデル計算ユニット（２２）と、含む制御装置（２）。
【請求項７】
前記制御装置（２）は集積回路として形成される、請求項６に記載の制御装置（２）。
【請求項８】
自動車内のエンジンシステム（１）を制御するための制御装置（２）としての、請求項６又は７に記載の前記制御装置（２）を使用する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特にＲＢＦ（ｒａｄｉａｌｅ  Ｂａｓｉｓｆｕｎｋｔｉｏｎ、放射基底関数）モデルを計算するための、ハードワイヤードされている別体のモデル計算ユニットでの関数モデルの計算に関する。
【背景技術】
【０００２】
例えば、内燃機関、エレクトリックパワートレイン、蓄電池等の技術システムを制御する機能は、実際のシステムの数学的な描写に相当するモデルを用いて実現されることが多い。しかしながら、物理的なモデルでは、特に関係が複雑な場合には、必要とされる計算精度が欠けており、今日の計算能力では、このようなモデルを、制御装置のために要求される実時間要求の範囲内で計算することは通常困難である。このような場合のために、データに基づくモデルであって、試験台等を利用して獲得された訓練データのみに基づいて出力と入力との間の関係を記述する上記データに基づくモデルを利用することが考えられている。特に、データに基づくモデルは、複雑な関係をモデル化するために適しており、ここでは、相互関係が生じている複数の入力が適切なやり方でモデルにおいて考慮される。さらに、データに基づくモデルを利用したモデル化によって、個別入力の付加によりモデルを補完する可能性が与えられる。
【０００３】
データに基づく関数モデルは、通常は、各適用のために十分なモデル化精度を達成するために多数のサンプルポイントに基づいている。多数のサンプルポイントにより、例えばガウス過程モデル等の、データに基づく関数モデルを用いてモデル値を計算するためには高い計算能力が必要となる。従って、制御装置での適用において、このようなデータに基づく関数モデルを実時間で計算しうるために、ハードウェア構成に基づくモデル計算ユニットが設けられうる。
【発明の概要】
【課題を解決するための手段】
【０００４】
本発明に基づいて、請求項１に係るＲＢＦモデルを計算するモデル計算ユニット、並びに、独立形式請求項のいずれか一項に係る制御装置及び制御装置を使用する方法が構想される。
【０００５】
更なる別の構成が、引用形式請求項において示される。
【０００６】
上記のモデル計算ユニットでは、ＲＢＦモデルを計算することを可能とする構成が構想される。
第１の観点によれば、ハードウェアにより形成されハードワイヤードされており、結合された関数ブロックにおいて固定的に予め設定された計算アルゴリズムを計算する演算コアによって、ＲＢＦモデルの入力ベクトルの少なくとも１つの入力に関する勾配を決定するモデル計算ユニットであって、演算コアは、ＲＢＦモデルのための上記入力に関する勾配を、或る入力次元の入力ベクトルの１つ以上の入力と、サンプルポイントの数と、サンプルポイントごと及び入力次元ごとに予め設定された長さスケールと、サンプルポイントごとに予め設定された、ＲＢＦ関数のパラメータと、に従って計算するよう構成され、
‐特定の入力について、当該特定の入力に対応するサンプルポイントの値と特定の入力との差分を示す第１の項と、
‐サンプルポイントについて、当該サンプルポイントに対応付けられたＲＢＦ関数のパラメータと掛けられた指数関数の結果を示す第２の項であって、
指数関数の引数は、全入力次元を介して求められた積であって、各対応づけられた長さスケールと、サンプルポイントの、各入力次元に対応する上記値と入力次元に対応する入力との差分の二乗と、の上記積の和の負の値に相当する、上記第２の項と、
が計算され、
第１の項と、第２の項と、各対応付けられた長さスケールと、の積の和が、全サンプルポイントを介して形成され、勾配に比例する値が獲得される、上記モデル計算ユニットが構想される。
【０００７】
上記のモデル計算ユニットの構想は、ＲＢＦモデルを計算するためのこのモデル計算ユニットを、制御装置の演算コアにハードウェア構造により別体で形成することである。このやり方で、ほぼハードワイヤードされたハードウェア回路が、以下のような機能を実現するために提供され、即ち、ＲＢＦモデルを計算し、その際に、ソフトウェアで制御される、制御装置のマイクロプロセッサで、非常に僅かな計算負荷しか生じさせないことを可能とする上記機能を実現するために提供されうる。モデル計算ユニットにより提供されるハードウェア加速化によって、ＲＢＦモデルを実時間でも計算することが可能であり、従って、このようなモデルの利用は、自動車の内燃機関のための制御装置での適用にとって有益でありうる。
【０００８】
さらに、ＲＢＦモデルの利用によって、例えばガウス過程モデル等の比較可能なデータに基づくモデルの場合よりも少ない数のサンプル点を含む、データに基づくモデル化を可能とすることが、精度を下げることなく可能となる。
【０００９】
制御装置での幾つかの適用には、偏導関数の計算、即ち、或る入力に関するＲＢＦモデルのモデル値の勾配の計算が必要となる。このことは特に、次の問い合わせポイントが以前の問い合わせポイントの勾配の結果に依存する場合に該当しうる。勾配の計算は、通常では非常に時間が掛かる。
【００１０】
上記のモデル計算ユニットでは、ハードウェアに形成された計算経路であって、ＲＢＦモデルのモデル値の計算の他に問い合わせポイントでの勾配も決定する上記計算経路が構想される。このことは、問い合わせポイントに相当する所定の入力ベクトルでのＲＢＦモデルの関数値の計算のためにいずれにせよ必要となる第２の項を、さらに勾配の計算のために利用しうることにより可能である。
【００１１】
さらに、演算コアは、状態機械、及び、入力ベクトルの１つ以上の入力と、サンプルポイントと、長さスケールと、サンプルポイントごとに予め設定されたパラメータと、出力と、を格納するためのメモリ、並びに、１つ以上の算術演算ブロック、特に、ＭＡＣ（Ｍｕｌｔｉｐｌｙ‐ＡＣｃｕｍｕｌａｔｅ）ブロック、及び指数関数ブロックを含みうる。
【００１２】
一実施形態によれば、演算コアは、集積モジュールの平面領域に形成されうる。
【００１３】
さらに、勾配の計算は、選択変数の設定によって活性化又は非活性化されうる。
【００１４】
他の観点によれば、マイクロプロセッサと、上記モデル計算ユニットと、を含む制御装置が設けられる。特に、制御装置は集積回路として形成されうる。
【００１５】
更に別の観点によれば、自動車内のエンジンシステムを制御するための制御装置としての、上記制御装置の利用が構想される
【図面の簡単な説明】
【００１６】
以下では、実施形態が、添付の図面を用いて詳細に解説される。
【図１】自動車内のエンジンシステムのための実装のための制御装置の概略図を示す。
【図２】制御装置の構成要素としてのモデル計算ユニットの概略図を示す。
【図３】ＲＢＦモデルのニューロンの位置関係の概略図を示す。
【発明を実施するための形態】
【００１７】
図１は、制御される技術的システムの一例として内燃機関３を備えるエンジンシステム１のための制御装置２の概略図を例示している。制御装置２は、マイクロプロセッサ２１と、モデル計算ユニット２２と、を含み、マイクロプロセッサ２１とモデル計算ユニット２２とは、別々のモジュールとして形成され、又は統合された形態により、チップ上の別々の平面領域に形成されうる。特に、モデル計算ユニット２２は、構造的にマイクロプロセッサ２１の演算コアから分けることが可能なハードウェア回路である。
【００１８】
モデル計算ユニット２２は、基本的にハードワイヤードされており、これに対応じて、マイクロプロセッサ２１のように、ソフトウェアコードを実行しこれによりソフトウェアによって予め設定される可変的な関数を実行するようには構成されていない。換言すれば、モデル計算ユニット２２にはプロセッサが設けられておらず、従って、モデル計算ユニット２２は、ソフトウェアコードによっては駆動可能ではない。予め設定されたモデル関数に焦点を絞ることによって、このようなモデル計算ユニット２２の、リソースが最適化された実現が可能となる。集積された構造形態において、モデル計算ユニット２２は、面積が最適化されて（ｆｌａｅｃｈｅｎｏｐｔｉｍｉｅｒｔ）実現され、このことによってさらに、高速の計算が可能となる。
【００１９】
制御装置２は基本的に、内燃機関３のセンサシステムにより検知されたセンサ信号Ｓ又はセンサ値及び／又は外部の設定Ｖを処理し、固定的に予め設定された、例えば１〜１００ｍｓの時間間隔で周期的に、又は、駆動される内燃機関のクランク軸の角度に従って角度に同期して、１つ以上の対応する駆動制御変数Ａの値を内燃機関３に印加するために役立ち、従って、内燃機関３は公知のやり方で駆動可能である。
【００２０】
図２には、モデル計算ユニット２２がより詳細に示されている。モデル計算ユニット２２は、状態機械１１と、メモリ１２と、１つ以上の演算ブロックと、を含み、１つ以上の演算ブロックは、例えば、１つ以上のＭＡＣブロック１３（固定少数点演算又は浮動小数点演算のためのＭＡＣ（Ｍｕｌｔｉｐｌｙ‐ＡＣｃｕｍｕｌａｔｅ）、及び、指数関数を計算するための指数関数計算ブロック（ＥＸＰ）１４を含む。状態機械１１、及び、１つ以上の演算ブロック１３、１４は、モデル計算ユニット２２の演算コアＡＬＵを形成する。演算ブロックは、ＭＡＣブロックに加えて又はＭＡＣブロックの代わりに、乗算ブロック及び加算ブロックを含んでいてもよい。
【００２１】
状態機械１１によって、メモリ１２の入力メモリ領域に格納された入力の値が、反復されるループ計算によって計算されて、中間値又は出力が獲得され、この中間値又は出力は、メモリ１２の対応する出力メモリ領域に書き込まれる。
【００２２】
状態機械１１は、ＲＢＦモデルを計算するよう構成される。状態機械１１は、以下の疑似コードによって記述されうる。
/* 入力変換 */
for (k=0; k<p7; k++) {
ut[k] = u[k] * p1[k] + p2[k];
}
/* ループ計算 */
for (j=p8; j<p6; j++) {
i = j * P7;
t = 0;
for (k=0; k<p7; k++){
d = V[i+k] - ut[k];
t += L[j+k] d * d;
}
y[0] += p3[j] * exp(-t);
}
/* 出力変換 */
z[0] = y[0] * p4[0] + p5[0];
但し、
ｐ７：入力ベクトルの入力のための最大インデックス値、入力ベクトルの次元を示す。
ｐ８：最小インデックス値（通常はゼロ、計算の中断時及び続行時を除く）
ｐ６：最大インデックス値（サンプルポイントの数）
ｐ３：ＲＢＦモデルのパラメータ
ｕ：入力
ｕｔ：変換された入力
Ｌ：局所的な長さスケール
Ｖ：訓練ポイント又はサンプルポイント
ｐ１、ｐ２：入力ベクトルの入力ごとの入力変換のための変数
ｐ４、ｐ５：次元が１つ（シングルトン（ｓｉｎｇｌｅｔｏｎ））の出力変換のための変数
【００２３】
上記の疑似コードを用いて、ＲＢＦモデルのための以下の計算が実行される。即ち、
【００２４】
【数１】
2019530115.tif 000003
【００２５】
ＲＢＦ関数は基本的に、図３に図で示すように３つの層を含むニューロネットワーク、即ち、Ｐ７個の入力を含む入力ベクトルについてのｐ７個のニューロン１５を含む入力層Ｓ１と、ｐ６個のニューロン１５を含む中間層Ｓ２であって、活性化関数として動径二次関数（ｒａｄｉａｌｑｕａｄｒａｔｉｓｃｈｅ  Ｆｕｎｋｔｉｏｎ）が設けられる中間層Ｓ２と、１個のニューロン１５を含み線形の活性化関数が設けられる出力層Ｓ３と、を含むニューロネットワークの特別な形態に相当する。
【００２６】
入力ベクトルの入力の入力変換、及び／又は、出力ベクトルの出力の出力変換は、入力ベクトルの要素ごとに予め定められた正規化変数ｐ１及びｐ２を用いて行われ、又は、出力についてはｐ４及びｐ５を用いて行われうる。
【００２７】
ＲＢＦモデルの計算によって、モデル計算ユニット２２のすっきりとした構成が可能となるため、集積された構造形態においてモデル計算ユニット２２が要する面積は小さい。
【００２８】
問い合わせポイントで勾配を計算するために、モデル計算ユニットは、以下の疑似コードに対応して変更されうる。
/* 入力変換 */
for (k=0; k<p7; k++) {
ut[k] = u[k] * p1[k] + p2[k];
}
/* ループ計算 */
for (j=p8; j<p6; j++) {
i = j * P7;
t = 0.0f;
for (k=0; k<p7; k++){
d = V[i+k] - ut[k];
gd = d * L[i+k];
t +=gd * d;
if (cfg_pd) g[k] = gd;
}
e = exp(-t);
yj = p3[j] * e;
y[0] += yj;              // ＲＢＦモデル
if (cfg_pd){
for (n=1, k=p10; n<p9; n++, k++){
y[n] += g[k] * yj;    // ＲＢＦモデルの勾配
}
}
}
/* 出力変換 */
for (k=0; k<p9; k++) {
z[k] = y[k] * p4[k] + p5[k];
}
但し、
ｐ９：ＲＢＦモデルの基本的結果を含む勾配値の数、但し、ｚ［０］は、ベース（Ｂａｓｉｓ）モデルのモデル値に相当し、ｚ［１…ｐ９〜１］は、選択された入力に関する勾配値に相当
ｐ１０：勾配値についての入力の開始インデックス
【００２９】
上記の疑似コードを、出力及び勾配を決定する以下の計算に書き換えることが可能である。
【００３０】
これは、（入力変換及び出力変換を含む）上記計算式に基づいて、
【００３１】
【数２】
2019530115.tif 000004
【００３２】
ｕｄに従って勾配を計算するために役立ち、
【００３３】
【数３】
2019530115.tif 000005
【００３４】
但し、
【００３５】
【数４】
2019530115.tif 000006
【００３６】
は、長さスケールの２乗の逆数の半分に相当する。
【００３７】
ここで、ｐ４及びｐ５は、シングルトンではなく、
ｋ＝１…ｐ９−１について、ｐ５［ｋ］＝０、
ｋ＝１…ｐ９−１について、ｐ４［ｋ］＝２．０＊ｐ１［ｋ］＊ｐ４［０］であり、直接的に、勾配計算のための因数として役立つ。（上記の式
【００３８】
【数５】
2019530115.tif 000007
【００３９】
を参照）
【００４０】
指標（Ｉｎｄｅｘ）ｄは、勾配がそれに関して決定されている、入力ベクトルの入力に相当する。
【００４１】
従って、上記の疑似コードは、ＲＢＦモデルの計算と、指標ｄを有する入力に従った勾配の計算と、の双方を可能とする以下の計算工程を実行する。
【００４２】
【数６】
2019530115.tif 000008
【００４３】
勾配の計算は、変数ｃｆｇ＿ｐｄによって活性化され、入力のｐ１０により定められる開始インデックスに関して開始される。
【図１】
2019530115.tif 000009
【図２】
2019530115.tif 000010
【図３】
2019530115.tif 000011
【国際調査報告】
2019530115.tif 000012
2019530115.tif 000013
2019530115.tif 000014
2019530115.tif 000015
2019530115.tif 000016
2019530115.tif 000017