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