(57)【要約】【課題】エンジン特性の経時的変化を良好に学習可能であり、エンジンを目標状態に円滑に制御することを可能にするエンジン制御システムおよびエンジン制御方法の提供。【解決手段】エンジン制御システム１は、エンジン２の動作状態の時系列データを出力するセンサと、エンジン２に対する操作量の時系列データを出力するセンサとを含むセンサ群６と、センサ群６に接続された制御ユニット１０とを備え、制御ユニット１０は、動作状態の時系列データと操操作量を推定・出力する。【選択図】        図１
2004162582.tif 000002
【特許請求の範囲】
【請求項１】
エンジンを制御するためのエンジン制御システムにおいて、
前記エンジンの動作状態を検知し、検知した動作状態の時系列データを出力する動作状態検出手段と、
前記エンジンに対する操作量を検知し、検知した操作量の時系列データを出力する操作量検出手段と、
前記動作状態検出手段および前記操作量検出手段に接続されており、動作状態の時系列データと操作量の時系列データとに基づいて前記エンジンの動作状態の推定値を出力可能なニューラルネットワークを含む制御手段とを備え、
この制御手段は、前記推定値と前記動作状態検出手段からの教師信号とに基づいて誤差逆伝播学習を繰り返し実行すると共に、前記エンジンの動作状態に対応する目標値が与えられると、前記エンジンの動作状態を目標値に合致させるための前記エンジンに対する操作量を推定・出力することを特徴とするエンジン制御システム。
【請求項２】
前記エンジンの動作状態には、水温、空燃比およびトルクが含まれ、前記エンジンの操作量には、空気供給量、燃料供給量および点火時期が含まれることを特徴とする請求項１に記載のエンジン制御システム。
【請求項３】
前記エンジンの動作状態には、回転数、補機負荷、トルクおよび水温が含まれ、前記エンジンの操作量には、スロットル開度および点火時期が含まれることを特徴とする請求項１に記載のエンジン制御システム。
【請求項４】
前記ニューラルネットワークの評価関数に関連する情報を記憶する評価関数記憶手段を更に備え、前記制御手段は、前記評価関数記憶手段から情報を読み出して、エンジンの動作条件に応じるように評価関数を設定することを特徴とする請求項１〜３の何れかに記載のエンジン制御システム。
【請求項５】
エンジンを制御するためのエンジン制御方法において、
エンジンの動作状態の時系列データと、エンジンに対する操作量の時系列データとに基づいて前記エンジンの動作状態の推定値を出力可能なニューラルネットワークを含む制御手段を利用し、この制御手段に、前記推定値と前記動作状態検出手段からの教師信号とに基づく誤差逆伝播学習を繰り返し実行させると共に、前記エンジンの動作状態に対応する目標値を与えて前記エンジンの動作状態を目標値に合致させるための前記エンジンに対する操作量を推定・出力させることを特徴とするエンジン制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンジン制御システムおよびエンジン制御方法に関し、特に、ニューラルネットワークを利用してエンジンを制御するエンジン制御システムおよびエンジン制御方法に関する。
【０００２】
【従来の技術】
従来から、ガソリンエンジン等の内燃機関が、車両の走行駆動源等として幅広く用いられている。この種のエンジンの動作を制御するに際しては、複数のセンサによりエンジンの各種パラメータを検知し、各センサの検出値をエンジンに対する操作量に反映させるのが一般的である。そして、近年では、エンジンの制御パラメータを精度よく求めるために、ニューラルネットワークを利用することが提案されている。
【０００３】
例えば、ニューラルネットワークを利用してエンジンを制御するシステムの一例としては、エンジン始動直後の空燃比動特性を学習させたニューラルネットワークを利用し、エンジンの運転状態を示す複数のパラメータに基づいてエンジン始動直後の空燃比や燃料噴射量を推定するものが知られている（例えば、特許文献１参照。）。また、エンジンのアイドル回転数を目標値に維持するために、ＩＳＣＶ（アイドルスピードコントロールバルブ）に対する電流値をニューラルネットワークにより推定するシステムが知られている（例えば、特許文献２参照。）。
【０００４】
【特許文献１】
特開平１１−２２３１４５号公報
【特許文献２】
特開平９−１００７３７号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、上述の従来のエンジン制御システムは、何れも、予め学習させたニューラルネットワークに、入力に応じたエンジン特性を出力させるものであり、ニューラルネットワークにエンジン特性の経時的変化を学習させることが不可能あるいは極めて困難なシステムとして構成されている。この点において、従来のエンジン制御システムは、非線型要素に対する高い対応性や学習機能といったニューラルネットワークの特徴を十分に生かしてはおらず、非線型要素を数多く含むエンジンを目標状態に円滑に制御し得るものであるとはいえなかった。
【０００６】
そこで、本発明は、エンジン特性の経時的変化を良好に学習可能であると共に、エンジンを目標状態に円滑に制御することを可能にするエンジン制御システムおよびエンジン制御方法の提供を目的とする。
【０００７】
【課題を解決するための手段】
本発明によるエンジン制御システムは、エンジンを制御するためのエンジン制御システムにおいて、エンジンの動作状態を検知し、検知した動作状態の時系列データを出力する動作状態検出手段と、エンジンに対する操作量を検知し、検知した操作量の時系列データを出力する操作量検出手段と、動作状態検出手段および操作量検出手段に接続されており、動作状態の時系列データと操作量の時系列データとに基づいてエンジンの動作状態の推定値を出力可能なニューラルネットワークを含む制御手段とを備え、この制御手段は、推定値と動作状態検出手段からの教師信号とに基づいて誤差逆伝播学習を繰り返し実行すると共に、エンジンの動作状態に対応する目標値が与えられると、エンジンの動作状態を目標値に合致させるためのエンジンに対する操作量を推定・出力することを特徴とする。
【０００８】
このエンジン制御システムは、動作状態の時系列データと操作量の時系列データとに基づいてエンジンの動作状態の推定値を出力可能なニューラルネットワークを含む制御手段を備える。この制御手段（ニューラルネットワーク）は、動作状態の時系列データ（初期値以降は、動作状態の推定値）および操作量の時系列データに基づいて得た動作状態の推定値と、動作状態検出手段からの教師信号とに基づいて誤差逆伝播学習を繰り返し実行する。更に、制御手段は、エンジンの動作状態に対応する目標値が与えられると、学習結果に基づいて、エンジンの動作状態を目標値に合致させるためのエンジンに対する操作量を推定・出力する。これにより、このエンジン制御システムでは、制御手段がエンジン特性の経時的変化を良好に学習し、エンジンは、常に学習を続ける制御手段によって目標の状態に円滑に制御されることになる。
【０００９】
ここで、本発明において、エンジンの動作状態には、水温、空燃比、トルク、回転数、補機負荷等のパラメータが含まれ、エンジンの操作量には、空気供給量、燃料供給量、点火時期、スロットル開度等のパラメータが含まれる。これにより、制御手段を、いわゆるエンジンコントロールユニット（ＥＣＵ）あるいはアイドルスピードコントローラ（ＩＳＣ）として機能させることが可能となる。
【００１０】
また、ニューラルネットワークの評価関数に関連する情報を記憶する評価関数記憶手段を更に備え、制御手段は、評価関数記憶手段から情報を読み出して、エンジンの動作条件に応じるように評価関数を設定すると好ましい。
【００１１】
この場合、評価関数は、目標値と推定された動作状態の値との誤差（２乗誤差）と、動作状態を示す各パラメータの変動分と、操作量を示す各パラメータの変動分との和からなる多項式として表わすことができる。そして、評価関数記憶手段には、評価関数のパラメータに乗じられる係数あるいは複数の評価関数が記憶される。制御手段は、目標値等からエンジンに要求されている動作条件を求め、求めた動作条件に対応する評価関数の係数等あるいは評価関数自体を読み出すことにより、エンジンの動作条件に合致した評価関数を設定する。これにより、トルク変化最小基準、燃料供給量変化最小基準、点火時期変化最小基準等に基づいてエンジンを要求される動作条件に応じるように極めて滑らかに制御することが可能となる。
【００１２】
本発明によるエンジン制御方法は、エンジンを制御するためのエンジン制御方法において、エンジンの動作状態の時系列データと、エンジンに対する操作量の時系列データとに基づいてエンジンの動作状態の推定値を出力可能なニューラルネットワークを含む制御手段を利用し、この制御手段に、推定値と動作状態検出手段からの教師信号とに基づく誤差逆伝播学習を繰り返し実行させると共に、エンジンの動作状態に対応する目標値を与えてエンジンの動作状態を目標値に合致させるためのエンジンに対する操作量を推定・出力させることを特徴とする。
【００１３】
【発明の実施の形態】
以下、図面と共に本発明によるエンジン制御システムおよびエンジン制御方法の好適な実施形態について詳細に説明する。
【００１４】
図１は、本発明によるエンジン制御システムの一実施形態を示す概略構成図である。同図に示されるエンジン制御システム１は、例えばガソリンエンジン等の内燃機関を制御するように構成されたものである。本実施形態において、制御対象となるエンジン２には、燃料噴射装置３、点火装置４、ＩＳＣＶ（アイドルスピードコントロールバルブ）５、図示されない各種補機類等が含まれている。また、エンジン２には、複数のセンサにより構成されるセンサ群６が備えられており、センサ群６を構成する各センサは、制御ユニット１０に接続されている。制御ユニット１０は、センサ群６から送られる信号に基づいてエンジン２（燃料噴射装置３、点火装置４、ＩＳＣＶ５、各種補機類）の動作を制御するエンジンコントロールユニット（ＥＣＵ）として機能する。
【００１５】
センサ群６には、水温センサ、空燃比センサ、トルクセンサ、回転数センサ、補機負荷センサといったエンジンの動作状態を検出するセンサ（動作状態検出手段）と、空気供給量センサ、燃料噴射量センサ（燃料供給量センサ）、点火時期センサ、スロットル開度センサといったエンジンに対する操作量を検出するセンサ（操作量検出手段）とが含まれる。
【００１６】
エンジンの動作状態を検出する各センサは、エンジン２の動作状態を検知し、検知した動作状態を微小時間Δｔ（制御周期）で離散化し、動作状態の時系列データを制御ユニット１０に与える。すなわち、ある時刻ｋにおいて、水温センサは、検知した水温の時系列データＴｗ（ｋ）を、空燃比センサは、検知した空燃比の時系列データＡＦ（ｋ）を、トルクセンサは、検知したトルクの時系列データＴｑ（ｋ）を、回転数センサは、検知した回転数の時系列データＮｅ（ｋ）を、補機負荷センサは、検知した補機負荷の時系列データＴｓ（ｋ）をそれぞれ出力して、制御ユニット１０に与える。なお、トルクセンサを用いて制御ユニット１０にトルクの時系列データを与える代わりに、制御ユニット１０に図示有効平均圧の時系列データを与えるようにしてもよい。
【００１７】
また、エンジン２に対する操作量を検出する各センサは、エンジン２から検知した操作量を微小時間Δｔ（制御周期）で離散化し、操作量の時系列データを制御ユニット１０に与える。すなわち、ある時刻ｋにおいて、空気供給量センサは、検知した空気供給量の時系列データＧａ（ｋ）を、燃料噴射量センサは、検知した燃料噴射量の時系列データＧｆ（ｋ）を、点火時期センサは、検知した点火時期の時系列データＳｔ（ｋ）を、スロットル開度センサは、検知したスロットル開度の時系列データＴａ（ｋ）をそれぞれ出力して、制御ユニット１０に与える。
【００１８】
ここで、エンジンの制御手段として機能する制御ユニット１０は、動作状態の時系列データ（本実施形態では、水温Ｔｗ、空燃比ＡＦおよびトルクＴｑ）と操作量の時系列データ（本実施形態では、空気供給量Ｇａ、燃料噴射量Ｇｆおよび点火時期Ｓｔ）とに基づいてエンジン２の動作状態（水温Ｔｗ、空燃比ＡＦおよびトルクＴｑ）の推定値を出力可能な階層型ニューラルネットワークを含む。このニューラルネットワークは、繰り返し構造神経回路（カスケードモデル）と称され、ニューラルネットの並列性を利用した構造を有し、時空間や状態空間上に配置された多数のニューロン間の相互作用により、分散、並列的に解を得るものである。そして、制御ユニット１０は、エンジン特性の学習を実行する学習モード、および、学習モードで得たエンジン特性に基づいてエンジンを制御するエンジン制御モードのもとで動作する。
【００１９】
学習モードにおいて、制御ユニット１０（ニューラルネットワーク）は、図２に示されるように、時刻（ｋ＋ｄ）において受け取った動作状態の時系列データＴｗ（ｋ＋ｄ），ＡＦ（ｋ＋ｄ），Ｔｑ（ｋ＋ｄ）および操作量の時系列データＧａ（ｋ＋ｄ），Ｇｆ（ｋ＋ｄ），Ｓｔ（ｋ＋ｄ）に基づいて（ただし、ｄ＝０〜ｎ−１である）、各時系列データの入力時刻よりも単位時間ステップ（Δｔ）だけ進んだ時刻（ｋ＋ｄ＋１）における動作状態の推定値を出力する。更に、制御ユニット１０には、動作状態を検出する各センサから時刻（ｋ＋ｄ＋１）における動作状態の時系列データ（実測値）Ｔｗ（ｋ＋ｄ＋１），ＡＦ（ｋ＋ｄ＋１），Ｔｑ（ｋ＋ｄ＋１）が教師信号として与えられる。そして、制御ユニット１０は、動作条件の推定値と教師信号とに基づいて誤差逆伝播学習を繰り返し実行する。
【００２０】
また、図３に示されるように、所定の目標値設定手段７からエンジンの動作状態（水温Ｔｗ、空燃比ＡＦおよびトルクＴｑ）に対応する目標値Ｔｗｄ（ｋ＋ｎ），ＡＦｄ（ｋ＋ｎ）およびＴｑｄ（ｋ＋ｎ）を示す目標信号が発せられると、制御ユニット１０（ニューラルネットワーク）はエンジン制御モードに移行する。エンジン制御モードにおいて、制御ユニット１０は、学習モードで得た学習結果に基づいて、目標値Ｔｗｄ（ｋ＋ｎ），ＡＦｄ（ｋ＋ｎ）およびＴｑｄ（ｋ＋ｎ）から、エンジン２の動作状態を各目標値に合致させるためのエンジン２に対する操作量Ｇａｅ（ｋ＋１）〜Ｇａｅ（ｋ＋ｎ−１），Ｇｆｅ（ｋ＋１）〜Ｇｆｅ（ｋ＋ｎ−１）、および、Ｓｔｅ（ｋ＋１）〜Ｓｔｅ（ｋ＋ｎ−１）を推定・出力する。
【００２１】
次に、図４および図５を参照しながら、学習モードおよびエンジン制御モードにおける制御ユニット１０の動作について詳細に説明する。
【００２２】
制御ユニット１０に含まれるニューラルネットワーク（繰り返し構造神経回路）は、その動作時に、図４および図５に示されるようなｎ個の単位ニューラルネットワーク回路（以下「単位ＮＮ回路」という）を多段に連結させたものと実質的に等価の構造をなす。この場合、各単位ＮＮ回路は、それぞれ運動時間の各時間ステップに対応し、運動時間＝ｎ×Δｔとなる。そして、図４からわかるように、学習モードにおいて、制御ユニット１０のニューラルネットワークは、各単位ＮＮ回路の出力と、センサ群６から与えられる教師信号の値との誤差の２乗和を最小にするバックプロパゲーションアルゴリズムにより各単位ＮＮ回路における各ユニット間の結合荷重を修正し、エンジン２の特性を学習する。
【００２３】
ここで、ｋ番目の単位ＮＮ回路が出力する水温Ｔｗ、空燃比ＡＦおよびトルクＴｑの推定値をベクトル化し、
Ｚ（ｋ）＝｛Ｔｗ（ｋ），ＡＦ（ｋ），Ｔｑ（ｋ）｝
として表わすと共に、ｋ番目の単位ＮＮ回路に与えられる教師信号をベクトル化し、
Ｔ（ｋ）＝｛Ｔｗｄ（ｋ），ＡＦｄ（ｋ），Ｔｑｄ（ｋ）｝
として表わす。この場合、単位ＮＮ回路の出力（推定値）と、センサ群６から与えられる教師信号の値との誤差関数Ｅは、両者の２乗和をとることにより、
Ｅ＝１／２・Σ｛Ｔ（ｋ）−Ｚ（ｋ）｝２
として定義される。そして、このような誤差関数Ｅの最急降下方向に単位ＮＮ回路の結合荷重Ｗを変化させる場合、その修正量ΔＷは、誤差関数ＥをＷで偏微分することにより、
ΔＷ＝−ε（∂Ｅ／∂Ｗ）
と表わされる。ただし、εは、学習係数であり、十分に小さな正の値とされる。
【００２４】
このようなバックプロパゲーションアルゴリズムを採用するニューラルネットワーク（１番目の単位ＮＮ回路）に、時刻ｋ＝０における水温Ｔｗ（０）、空燃比ＡＦ（０）およびトルクＴｑ（０）、すなわち、水温Ｔｗ、空燃比ＡＦおよびトルクＴｑの初期値と、時刻ｋ＝０における空気供給量Ｇａ（０）、燃料噴射量Ｇｆ（０）および点火時期Ｓｔ（０）、すなわち、空気供給量Ｇａ、燃料噴射量Ｇｆおよび点火時期Ｓｔの初期値とが与えられると、ニューラルネットワーク（１番目の単位ＮＮ回路）からは、時系列データの入力時よりも単位時間ステップ（Δｔ）だけ進んだ時刻ｋ＝１における動作状態の推定値Ｔｗ（１）、ＡＦ（１）およびＴｑ（１）が出力される。
【００２５】
そして、ニューラルネットワーク（１番目の単位ＮＮ回路）から出力された時刻ｋ＝１における動作状態の推定値Ｔｗ（１）、ＡＦ（１）およびＴｑ（１）と、センサ群６から与えられる教師信号に示される実測値Ｔｄｋ（１），ＡＦｄ（１）およびＴｑｄ（１）との誤差関数Ｅから結合荷重Ｗの修正量ΔＷが求められ、ニューラルネットワーク（１番目の単位ＮＮ回路）の結合荷重Ｗが修正されることになる。
【００２６】
また、ニューラルネットワーク（１番目の単位ＮＮ回路）から出力された時刻ｋ＝１における動作状態の推定値Ｔｗ（１），ＡＦ（１）およびＴｑ（１）は、センサ群６から送られる時刻ｋ＝１における操作量を示すデータ（実測値）Ｇａ（１），Ｇｆ（１）およびＳｔ（１）と共に、ニューラルネットワーク（２番目の単位ＮＮ回路）に繰り返し入力される。これにより、ニューラルネットワーク（２番目の単位ＮＮ回路）からは、時系列データの入力時よりも単位時間ステップ（Δｔ）だけ進んだ時刻ｋ＝２における動作状態の推定値Ｔｗ（２）、ＡＦ（２）およびＴｑ（２）が出力される。そして、ニューラルネットワーク（２番目の単位ＮＮ回路）から出力された時刻ｋ＝２における動作状態の推定値Ｔｗ（２），ＡＦ（２）およびＴｑ（２）と、センサ群６から与えられる教師信号に示される実測値Ｔｄｋ（２），ＡＦｄ（２）およびＴｑｄ（２）との誤差関数Ｅから結合荷重Ｗの修正ΔＷが求められ、ニューラルネットワーク（２番目の単位ＮＮ回路）の結合荷重Ｗが更に修正される。
【００２７】
これ以後、ニューラルネットワーク（ｋ番目の単位ＮＮ回路、ただし、ｋ＝２，３，…，ｎ−１）から出力された時刻ｋにおける動作状態の推定値Ｔｗ（ｋ），ＡＦ（ｋ）およびＴｑ（ｋ）は、センサ群６から送られる時刻ｋにおける操作量を示すデータ（実測値）Ｇａ（ｋ），Ｇｆ（ｋ）およびＳｔ（ｋ）と共に、ニューラルネットワーク（ｋ＋１番目の単位ＮＮ回路）に繰り返し入力され、バックプロパゲーションによりニューラルネットワーク（ｋ＋１番目の単位ＮＮ回路）の結合荷重Ｗが更に修正される。これにより、時間の経過と共に、制御ユニット１０のニューラルネットワーク（各単位ＮＮ回路）における各ユニット間の結合荷重が、バックプロパゲーションアルゴリズムによって修正されていくことになり、制御ユニット１０のニューラルネットワークは、エンジン２の特性の経時的変化を良好に学習することになる。
【００２８】
なお、制御ユニット１０のニューラルネットワークには、エンジン２の既知の非線形関数を計算するように予め学習させた既知構造部を組み込んでおくと好ましい。また、ニューラルネットワークのユニット間結合のうち、制御対象への関与が極めて小さいものについては、その結合を省略すると好ましい。このように、制御対象であるエンジン２に含まれることが予め判明している非線形関数をニューラルネットワークに既知構造部として組み込んだり、無駄なユニット間結合を排除したりすることにより、学習を早期に収束させると共に、学習をより正確なものとすることができる。ここで、エンジン２を制御するためのニューラルネットワークに組み込む既知構造としては、例えば、空燃比をＧａ／Ｇｆと燃料モデルとによってある程度学習させたものが挙げられる。
【００２９】
さて、図４に示されるようにしてエンジン２の特性を学習している制御ユニット１０（ニューラルネットワーク）に対し、目標値設定手段７から、運動時間ｎ×Δｔの後に水温Ｔｗ、空燃比ＡＦおよびトルクＴｑ（エンジンの動作状態）を目標値Ｔｗｄ（ｎ），ＡＦｄ（ｎ）およびＴｑｄ（ｎ）にすべき旨の目標信号が与えられると、ニューラルネットワークは、エンジン制御モードに移行し、図５に示されるようにして動作する。
【００３０】
すなわち、ニューラルネットワークは、目標値Ｔｗｄ（ｎ），ＡＦｄ（ｎ）およびＴｑｄ（ｎ）を受け取ると共に、その段階でセンサ群６から送られる動作状態（水温Ｔｗ、空燃比ＡＦおよびトルクＴｑ）の時系列データを初期値Ｔｗ（０），ＡＦ（０）およびＴｑ（０）として受け取る。そして、学習モード時にニューラルネットワーク（各単位ＮＮ回路）にセンサ群６から与えられていた各時間ステップにおけるエンジン２の操作量の時系列データと教師信号との入力が完全に抑制される。
【００３１】
図５に示されるように、ニューラルネットワークがｎ個の単位ＮＮ回路を連結させたものであると仮定した場合、水温Ｔｗ、空燃比ＡＦおよびトルクＴｑの時系列データの初期値Ｔｗ（０），ＡＦ（０）およびＴｑ（０）は、１番目の単位ＮＮ回路に与えられ、目標値設定手段７からの目標信号、すなわち、目標値Ｔｗｄ（ｎ）、ＡＦｄ（ｎ）およびＴｑｄ（ｎ）は、運動時間ｎ×Δｔに対応しているｎ番目の単位回路に与えられるとみなすことができる。
【００３２】
そして、ニューラルネットワーク（１番目の単位ＮＮ回路）に初期値が与えられると、学習済みのニューラルネットワークにより運動時間ｎ×Δｔの後における水温、空燃比およびトルクの推定値Ｔｗ（ｎ），ＡＦ（ｎ）およびＴｑ（ｎ）が出力される。この場合、水温、空燃比およびトルクの推定値Ｔｗ（ｎ），ＡＦ（ｎ）およびＴｑ（ｎ）は、実質的に、ｋ番目の単位ＮＮ回路の出力をｋ＋１番目の単位ＮＮ回路（ただし、ｋ＝１〜ｎ−１）に繰り返し入力させる前向き計算により求められる。なお、エンジン制御モード時には、学習モード時のようにシナプスの結合荷重の更新は行われない。
【００３３】
ニューラルネットワークから出力される運動時間ｎ×Δｔの後における水温、空燃比およびトルクの推定値Ｔｗ（ｎ），ＡＦ（ｎ）およびＴｑ（ｎ）は、目標値設定手段７から与えられる目標値Ｔｗｄ（ｎ），ＡＦｄ（ｎ）およびＴｑｄ（ｎ）と比較される。そして、ニューラルネットワークの推定値Ｔｗ（ｎ），ＡＦ（ｎ）およびＴｑ（ｎ）と目標値Ｔｗｄ（ｎ），ＡＦｄ（ｎ）およびＴｑｄ（ｎ）との偏差が、誤差信号としてニューラルネットワークに逆伝搬（バックプロパゲーション）され、運動時間ｎ×Δｔが経過した際にエンジン２の動作状態を目標値Ｔｗｄ（ｎ），ＡＦｄ（ｎ）およびＴｑｄ（ｎ）にするための操作量の推定値Ｇａｅ（ｋ），Ｇｆｅ（ｋ）およびＳｔｅ（ｋ）が各時間ステップごとに出力される（ただし、ｋ＝０〜ｎ−１である）。
【００３４】
ここで、図５に示されるように、制御ユニット１０のニューラルネットワークでは、水温Ｔｗの入力層と出力層とが相互コンダクタンスｇ１を介して、空燃比ＡＦの入力層と出力層とが相互コンダクタンスｇ２を介して、トルクＴｑの入力層と出力層とが相互コンダクタンスｇ３を介して接続されている。また、制御ユニット１０のニューラルネットワークは、各時間ステップごとの操作量（空気供給量Ｇａ、燃料噴射量Ｇｆおよび点火時期Ｓｔ）の推定値は、相互コンダクタンスｇ４，ｇ５，ｇ６を介して前後の時間ステップにおける状態値の影響を受けるように構成されている。すなわち、図５のようにニューラルネットワークをｎ個の単位ＮＮ回路を連結させたものとみなした場合、互いに隣り合う単位ＮＮ回路の空気供給量Ｇａの出力層同士が相互コンダクタンスｇ４を介して、燃料噴射量Ｇｆの出力層同士が相互コンダクタンスｇ５を介して、点火時期Ｓｔの出力層同士が相互コンダクタンスｇ６を介してギャップ結合されることになる。
【００３５】
この場合、目標値をベクトル化し、
ＴＤ（ｎ）＝｛Ｔｗｄ（ｎ），ＡＦｄ（ｎ），Ｔｑｄ（ｎ）｝
として表わすと共に、最終的な水温、空燃比およびトルクの推定値Ｔｗ（ｎ），ＡＦ（ｎ）およびＴｑ（ｎ）をベクトル化し、
Ｚ（ｎ）＝｛Ｔｗ（ｎ），ＡＦ（ｎ），Ｔｑ（ｎ）｝
として表わせば、制御ユニット１０のニューラルネットワークの評価関数Ｌは、目標値ＴＤ（ｎ）と動作状態の推定値Ｚ（ｎ）との誤差（２乗誤差）と、動作状態を示す各パラメータの変動分（２乗和）と、操作量を示す各パラメータの変動分（２乗和）との和からなる多項式として次のように表わすことができる。
【００３６】
Ｌ＝｛ＴＤ（Ｎ）−Ｚ（Ｎ）｝２＋ｇ１・Σ｛Ｔｗ（ｋ＋１）−Ｔｗ（ｋ）｝２＋ｇ２・Σ｛ＡＦ（ｋ＋１）−ＡＦ（ｋ）｝２＋ｇ３・Σ｛Ｔｑ（ｋ＋１）−Ｔｑ（ｋ）｝２＋ｇ４・Σ｛Ｇａ（ｋ＋１）−Ｇａ（ｋ）｝２＋ｇ５・Σ｛Ｇｆ（ｋ＋１）−Ｇｆ（ｋ）｝２＋ｇ６・Σ｛Ｓｔ（ｋ＋１）−Ｓｔ（ｋ）｝２
【００３７】
このような評価関数Ｌを導入することにより、相互コンダクタンス（評価関数Ｌのパラメータに乗じられる係数）ｇ１〜ｇ６の値を適宜設定することにより、水温変化最小基準、空燃比変化最小基準、トルク変化最小基準、空気供給量変化最小基準、燃料噴射量最小基準および点火時期変化最小基準の何れかまたはすべてに基づいて、要求される動作モード（動作条件）に応じるようにエンジン２を極めて滑らかに制御することが可能となる。
【００３８】
すなわち、本実施形態において、制御ユニット１０は、図１に示されるように、ニューラルネットワークの評価関数Ｌに関連する情報、すなわち、評価関数Ｌの動作状態を示すパラメータの係数（相互コンダクタンス）ｇ１，ｇ２，ｇ３および操作量を示すパラメータの係数（相互コンダクタンス）ｇ４，ｇ５，ｇ６の組または複数の評価関数Ｌを記憶する評価関数記部１１を有している。そして、制御ユニット１０は、目標値ＴＤ（ｎ）等からエンジン２に要求されている動作モードを求め、求めた動作モードに対応する評価関数Ｌの係数（相互コンダクタンス）ｇ１〜ｇ６または評価関数Ｌ自体を読み出すことにより、エンジン２の動作モードに合致した評価関数Ｌを設定する。
【００３９】
例えば、制御ユニット１０は、エンジン２をパワーモードで動作させる場合には、評価関数Ｌのトルク項の係数（相互コンダクタンス）ｇ３をゼロに設定し、エンジン２を燃費モードで動作させる場合には、評価関数Ｌの燃料噴射量項の係数（相互コンダクタンス）ｇ５を無限大に近い大きな値に設定する。更に、制御ユニット１０は、エンジンを暖機運転する場合には、点火時期の項が、
ｇ６・Σ｛Ｓｔ（ｋ＋１）−α｝（ただし、αは、遅角側の値である）
とされており、かつ、係数（相互コンダクタンス）ｇ６が、無限大に近い大きな値に設定されている評価関数Ｌを評価関数記憶部１１から読み出して使用する。なお、評価関数Ｌには、エンジン２の制御に必要な条件が適宜数式として組み込まれていてもよい。
【００４０】
図６および図７は、本発明によるエンジン制御システムの他の実施形態を示すブロック図である。これらの図面は、上述のエンジン制御システム１の制御ユニット１０をアイドルスピードコントローラ（ＩＳＣ）として機能させる例を示すものである。すなわち、本実施形態では、制御ユニット１０に与えられるエンジン２の動作状態を示すパラメータとして、回転数Ｎｅ、補機負荷Ｐｓ、トルクＴｑおよび水温Ｔｗが選択されており、エンジン２の操作量を示すパラメータとして、スロットル開度Ｔａおよび点火時期Ｓｔが選択されている。この場合、制御ユニット１０は、エンジン特性の学習を実行する学習モード、および、学習モードで得たエンジン特性に基づいてエンジン２のアイドルスピードを制御するＩＳＣモードのもとで動作する。
【００４１】
学習モードにおいて、制御ユニット１０（ニューラルネットワーク）は、図６に示されるように、時刻（ｋ＋ｄ）において受け取った動作状態の時系列データＮｅ（ｋ＋ｄ），ＰＳ（ｋ＋ｄ），Ｔｑ（ｋ＋ｄ），Ｔｗ（ｋ＋ｄ）および操作量の時系列データＴａ（ｋ＋ｄ），Ｓｔ（ｋ＋ｄ）に基づいて（ただし、ｄ＝０〜ｎ−１である）、各時系列データの入力時刻よりも単位時間ステップ（Δｔ）だけ進んだ時刻（ｋ＋ｄ＋１）における動作状態の推定値を出力する。更に、制御ユニット１０には、動作状態を検出する各センサから時刻（ｋ＋ｄ＋１）における動作状態の時系列データ（実測値）Ｎｅ（ｋ＋ｄ＋１），Ｐｓ（ｋ＋ｄ＋１），Ｔｑ（ｋ＋ｄ＋１），Ｔｗ（ｋ＋ｄ＋１）が教師信号として与えられる。そして、制御ユニット１０は、動作条件の推定値と教師信号とに基づいて誤差逆伝播学習を繰り返し実行する。
【００４２】
また、図７に示されるように、目標値設定手段７からエンジンの動作状態（回転数Ｎｅ、補機負荷Ｐｓ、トルクＴｑ、水温Ｔｗ）に対応する目標値Ｎｅｄ（ｋ＋ｎ），Ｐｓｄ（ｋ＋ｎ），Ｔｑｄ（ｋ＋ｎ）およびＴｗ（ｋ＋ｎ）を示す目標信号が発せられると、制御ユニット１０（ニューラルネットワーク）はＩＳＣモードに移行する。ＩＳＣモードにおいて、制御ユニット１０は、学習モードで得た学習結果に基づいて、目標値Ｎｅｄ（ｋ＋ｎ），Ｐｓ（ｋ＋ｎ），Ｔｑｄ（ｋ＋ｎ）およびＴｗ（ｋ＋ｄ）から、エンジン２の動作状態を目標値に合致させるためのエンジン２に対する操作量Ｔａｅ（ｋ＋１）〜Ｔａｅ（ｋ＋ｎ−１）、および、Ｓｔｅ（ｋ＋１）〜Ｓｔｅ（ｋ＋ｎ−１）を推定・出力する。
【００４３】
なお、学習モードおよびＩＳＣモードにおける制御ユニット１０の動作の詳細な説明は、図４および図５の説明においてパラメータを異ならせたものと同様であることから、ここでは省略する。また、ＩＳＣとして機能する制御ユニット１０に含まれるニューラルネットワークの評価関数Ｌとしては、
Ｌ＝｛ＴＤ（Ｎ）−Ｚ（Ｎ）｝２＋ｇ１・Σ｛Ｎｅ（ｋ＋１）−Ｎｅ（ｋ）｝２＋ｇ２・Σ｛Ｐｓ（ｋ＋１）−Ｐｓ（ｋ）｝２＋ｇ３・Σ｛Ｔｑ（ｋ＋１）−Ｔｑ（ｋ）｝２＋ｇ４・Σ｛Ｔｗ（ｋ＋１）−Ｔｗ（ｋ）｝２＋ｇ５・Σ｛Ｔａ（ｋ＋１）−Ｔａ（ｋ）｝２＋ｇ６・Σ｛Ｓｔ（ｋ＋１）−Ｓｔ（ｋ）｝２
と表わされたものを使用することができる。また、制御ユニット１０が水温Ｔｗ、空燃比ＡＦ、トルクＴｑ、回転数Ｎｅおよび補機負荷Ｐｓの時系列データに基づいて、空気供給量Ｇａ、燃料噴射量Ｇｆ、点火時期Ｓｔおよびスロットル開度Ｔａの推定値を出力するニューラルネットワークとして構成され得ることはいうまでもない。
【００４４】
【発明の効果】
以上説明されたように、本発明によれば、エンジンの特性を良好に学習可能であると共に、エンジンを目標状態に円滑に制御することを可能にするエンジン制御システムおよびエンジン制御方法の実現が可能となる。
【図面の簡単な説明】
【図１】本発明によるエンジン制御システムを示す概略構成図である。
【図２】図１に示されるエンジン制御システムの制御ブロック図である。
【図３】図１に示されるエンジン制御システムの制御ブロック図である。
【図４】図１に示されるエンジン制御システムの学習モードにおける動作を説明するためのブロック図である。
【図５】図１に示されるエンジン制御システムのエンジン制御モードにおける動作を説明するためのブロック図である。
【図６】本発明によるエンジン制御システムの他の実施形態を示す制御ブロック図である。
【図７】本発明によるエンジン制御システムの他の実施形態を示す制御ブロック図である。
【符号の説明】
１  エンジン制御システム
２  エンジン
６  センサ群
７  目標値設定手段
１０  制御ユニット
１１  評価関数記憶部
【図１】
2004162582.tif 000003
【図２】
2004162582.tif 000004
【図３】
2004162582.tif 000005
【図４】
2004162582.tif 000006
【図５】
2004162582.tif 000007
【図６】
2004162582.tif 000008
【図７】
2004162582.tif 000009