(57)【要約】【課題】移動体制御モデルの学習を確実に行う。【解決手段】移動体に搭載され、学習用データを用いて移動体制御モデルの学習を行う機械学習装置において、規模の異なる複数個の移動体制御モデルが記憶されている。移動体に搭載されたバッテリーのＳＯＣの値が小さい場合にはＳＯＣの値が大きい場合に比べて規模の小さな移動体制御モデルが選択され、選択された移動体制御モデルの学習が行われる。【選択図】図１０
2022003857.tif 000002
【特許請求の範囲】
【請求項１】
移動体に搭載され、学習用データを用いて移動体制御モデルの学習を行う機械学習装置において、
規模の異なる複数個の移動体制御モデルを記憶した記憶部と、
移動体に搭載されたバッテリーのＳＯＣの値を取得するＳＯＣ取得部と、
ＳＯＣの値が小さい場合にはＳＯＣの値が大きい場合に比べて規模の小さな移動体制御モデルを選択するモデル選択部と、
選択された移動体制御モデルの学習を行う学習部とを具備する機械学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は機械学習装置に関する。
【背景技術】
【０００２】
車両の運転に関連するデータを入力すると車両の運転制御に関連する出力値を出力するニューラルネットワークを用いた車載電子制御ユニットにおいて、車両の運転に関連するデータをサーバに送信し、サーバ内においてニューラルネットワークの重みの学習用データセットを作成すると共に、サーバ内においてニューラルネットワークの重みの学習を行うようにした車載電子制御ユニットが公知である（例えば特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６４７７９５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで車両のような移動体の運転に関連するデータを入力すると移動体の運転制御に関連する出力値を出力するニューラルネットワークにより移動体制御モデルを生成した場合、移動体制御モデルの規模が大きいほど、移動体制御モデルの学習を行うときに多量の電力を消費する。従って、移動体に搭載されたバッテリーの充電量が少ないとき、即ち、バッテリーの充電量を示すＳＯＣ（State of charge）の値が低いときに、移動体上において規模の大きな移動体制御モデルの学習を行おうとすると、即ち、規模の大きな移動体制御モデルのオンボード学習を行おうとすると、電力不足により、移動体制御モデルのオンボード学習を適切に行うことができなくなる危険性がある。
【課題を解決するための手段】
【０００５】
そこで、本発明によれば、移動体に搭載され、学習用データを用いて移動体制御モデルの学習を行う機械学習装置において、
規模の異なる複数個の移動体制御モデルを記憶した記憶部と、
移動体に搭載されたバッテリーのＳＯＣの値を取得するＳＯＣ取得部と、
ＳＯＣの値が小さい場合にはＳＯＣの値が大きい場合に比べて規模の小さな移動体制御モデルを選択するモデル選択部と、
選択された移動体制御モデルの学習を行う学習部とを具備する機械学習装置が提供される。
【発明の効果】
【０００６】
ＳＯＣの値が小さい場合には、規模の小さな移動体制御モデルの学習を行うようにすることにより、移動体制御モデルのオンボード学習を適切に行うことが可能となる。
【図面の簡単な説明】
【０００７】
【図１】図１は、図解的に表した車両の全体図である。
【図２】図２は、ＳＯＣの値の説明図である。
【図３】図３は、オンボード学習の第１の例の機能構成図である。
【図４】図４は、オンボード学習の第２の例の機能構成図である。
【図５】図５は、ニューラルネットワークの一例を示す図である。
【図６】図６は、ニューラルネットワークの一例を示す図である。
【図７】図７は、訓練用データセットを示す図である。
【図８】図８は、本発明による機械学習装置の機能構成図を示す図である。
【図９】図９は、ＳＯＣの値を取得するためのフローチャートである。
【図１０】図１０は、学習制御を行うためのフローチャートである。
【発明を実施するための形態】
【０００８】
図１を参照すると、１は移動体を示している。なお、図１に示される例では、移動体１は車両からなる。また、図１にいて、２は車両駆動用エンジン、３は車両駆動用電気モータ、４はバッテリー、５は車両１内に搭載された電子制御ユニットを夫々示す。図１に示されるように、電子制御ユニット５はデジタルコンピュータからなり、双方向性バス６によって互いに接続されたＣＰＵ（マイクロプロセッサ）７、ＲＯＭおよびＲＡＭからなるメモリ８および入出力ポート９を具備する。
【０００９】
図２は、バッテリー４の充電量を示すＳＯＣ（State of charge）の値を示している。図２において、バッテリー４の充電量が満杯のときにはＳＯＣの値は１００％となり、バッテリー４の充電量が零のときにはＳＯＣの値は０％となる。また、図２に示されるようなハイブリッドエンジンでは、例えば、ＳＯＣの値が下限値Ｌまで低下すると、ＳＯＣの値が上限値Ｈまで上昇するまで、エンジン２により電気モータ３が駆動され、電気モータ３の発電電力によりバッテリー４の充電作用が行われる。このＳＯＣの値は、電子制御ユニット５内において算出されている。
【００１０】
さて、前述したように、バッテリー４の充電量を示すＳＯＣの値が低いときに、車両上において規模の大きな移動体制御モデルの学習を行おうとすると、即ち、規模の大きな移動体制御モデルのオンボード学習を行おうとすると、電力不足により、移動体制御モデルのオンボード学習を適切に行うことができなくなる危険性がある。そこで本発明による実施例では、移動体制御モデルとして、規模の大きな移動体制御モデルと規模の小さい移動体制御モデルとを用い、ＳＯＣの値が低いときには電力の消費量を低減するために、規模の小さな移動体制御モデルのオンボード学習を行うようにしている。
【００１１】
このように本発明は、オンボード学習を行うことを前提としている。従って最初に、オンボード学習の二つの例について簡単に説明する。図３に、オンボード学習の第１の例の機能構成図を示す。図３を参照すると、この第１の例では、目標トルク算出部１０と、制御パラメータ算出部１１と、切換部１２と、エンジン２を制御するためのエンジン制御部１３と、フィードバック補正部１４と、トルク偏差算出部１５と、切換制御部１６から構成されている。なお、エンジン２には、エンジンの実際の出力トルクＴｒを検出するためのトルクセンサ２ａが取り付けられている。図３に示されるように、目標トルク算出部１０は、例えば、図５に示されるようなニューラルネットワークＮＮにより構成されており、この目標トルク算出部１０は、目標トルク算出部１０に、各入力値ｘ１（アクセル開度）、ｘ２（機関回転数）、ｘ３（気温）、ｘ４（高度）が入力されると、エンジン２の目標トルクＴｒを出力するように構成されている。なお、図５において、L＝１は入力層、L＝２、L＝３および L＝４は隠れ層、L＝５は出力層を夫々示しており、ｘ１からｘｎ は入力層 ( L＝１) の各ノードへの入力値を示しており、ｙ は出力層 ( L＝５) のノードからの出力値を示している。
【００１２】
一方、エンジン制御部１３には、エンジン２の目標トルク制御値ｙをエンジン制御部１３に入力したときにエンジン２の実際の出力トルクＴｒが目標トルクＴｔとなるように、予め実験により求められているエンジン２の目標トルク制御値ｙと、燃料噴射量、空燃比、点火時期、吸気バルブタイミング、排気バルブタイミングとの関係が予め記憶されており、従って、通常は、エンジン２の目標トルク制御値ｙがエンジン制御部１３に入力されると、エンジン２の実際の出力トルクＴｒは目標トルクＴｔとなる。一方、制御パラメータ算出部１１も、例えば、図５に示されるようなニューラルネットワークＮＮにより構成されており、この制御パラメータ算出部１１は、制御パラメータ算出部１１に、各入力値ｘ１（アクセル開度）、ｘ２（機関回転数）、ｘ３（気温）、ｘ４（高度）が入力されると、エンジン２の目標トルク制御値ｙを出力するように構成されている。通常は、この目標トルク制御値ｙが、切換部１２により、エンジン制御部１３に直接送りこまれており、このとき、エンジンの実際の出力トルクＴｒは目標トルクＴｔとなる。
【００１３】
さて、車両が長時間に亘って使用されると、エンジン２の経年変化により、エンジン２の実際の出力トルクＴｒと目標トルクＴｔとの間でトルク偏差が生じるようになる。このエンジン２の実際の出力トルクＴｒと目標トルクＴｔ間のトルク偏差ΔＴｔ（＝Ｔｔ−Ｔｒ）は、目標トルク算出部１０の出力およびトルクセンサ２ａの検出値に基づいて、トルク偏差算出部１５において算出される。トルク偏差ΔＴｔが大きくなった場合には、切換制御部１６により、制御パラメータ算出部１１の出力値がフィードバック補正部１４に入力するように、切換部１２が切換えられる。このとき、フィードバック補正部１４では、トルク偏差ΔＴｔが小さくなるように、制御パラメータ算出部１１から出力された目標トルク制御値ｙにＣ・ΔＴｔ（Ｃは小さな定数）が加算され、加算結果ｙ（＝ｙ＋Ｃ・ΔＴｔ）がエンジン制御部１３に入力される。次いで、トルク偏差ΔＴｔが許容値以下になると、制御パラメータ算出部１１の出力値が、直接エンジン制御部１３に入力するように、切換部１２が切換えられる。
【００１４】
この第１の例では、トルク偏差ΔＴｔが許容値以下になったときの各入力値ｘ１、ｘ２、ｘ３、ｘ４と、フィードバック補正部１４から出力される目標トルク制御値ｙ（＝ｙ＋Ｃ・ΔＴｔ）とが、トルク偏差ΔＴｔが許容値以下になる毎に、順次、記憶され、それにより、図７に示されるような、訓練用データセットが作成される。なお、この場合、フィードバック補正部１４から出力される目標トルク制御値ｙ（＝ｙ＋Ｃ・ΔＴｔ）は教師データｙｔとして記憶される。図７に示されるような訓練用データセットの作成が完了すると、制御パラメータ算出部１１を構成しているニューラルネットワークＮＮの重みの学習が行われる。
【００１５】
この場合、最初に、図７示される訓練用データセットにおけるＮｏ．１の各入力値ｘ１、ｘ２、ｘ３、ｘ４が、図５に示されるニューラルネットワークＮＮに入力され、そのときニューラルネットワークＮＮから出力される出力値ｙと、対応する教師データｙｔとの二乗誤差Ｅ（＝1/2 (ｙ-ｙｔ)2）が小さくなるように、誤差逆伝播法により、ニューラルネットワークＮＮの重みの学習が行われる。Ｎｏ．１のデータセットに基づくニューラルネットワークＮＮの重みの学習が終了すると、Ｎｏ．２の各入力値ｘ１、ｘ２、ｘ３、ｘ４がニューラルネットワークＮＮに入力され、そのときニューラルネットワークＮＮから出力される出力値ｙと、対応する教師データｙｔとの二乗誤差Ｅ（＝1/2 (ｙ-ｙｔ)2）が小さくなるように、誤差逆伝播法により、ニューラルネットワークＮＮの重みの学習が行われる。以下、同様な手法で、Ｎｏ．３からＮｏ．ｍまで、対応するデータセットに基づいてニューラルネットワークＮＮの重みの学習が順次行われる。Ｎｏ．１からＮｏ．ｍまでの全てのデータセットに基づくニューラルネットワークＮＮの重みの学習が完了すると、学習済みの重みを用いて、制御パラメータ算出部３１を構成しているニューラルネットワークＮＮの重みが更新される。
【００１６】
図４に、オンボード学習の第２の例の機能構成図を示す。図４を参照すると、この第２の例では、機関排気通路内に配置された触媒の温度を推定するための触媒温度推定部２０と、切換部２１と、エンジン２を制御するためのエンジン制御部２２と、切換制御部２３から構成されている。なお、エンジン２には、実際の触媒温度Ｔｄを検出するための温度センサ２ｂが取り付けられている。この温度センサ２ｂの検出信号は、通常、切換部２１により、エンジン制御部２２に入力され、温度センサ２ｂにより検出された実際の触媒温度Ｔｄに基づいて、例えば、暖機運転制御等のエンジン２の制御が行われる。
【００１７】
一方、この第２の例では、温度センサ２ｂが故障したときのために触媒温度推定部２０が設けられている。この触媒温度推定部２０は、例えば、図５に示されるようなニューラルネットワークＮＮにより構成されており、この触媒温度推定部２０は、触媒温度推定部２０に、各入力値ｘ１（機関負荷率）、ｘ２（機関回転数）、ｘ３（空燃比）、ｘ４（点火時期）、ｘ５（排気ガス中のＨＣ又はＣＯ濃度）が入力されると、触媒温度の推定値Ｔｅを出力するように構成されている。切換制御部２３では、温度センサ２ｂの検出値に基づいて、温度センサ２ｂが正常であるか否かが判別され、温度センサ２ｂが故障していると判別されたときには、触媒温度推定部２０の出力値がエンジン制御部２２に入力されるように切換部２１が切換えられる。このとき、触媒温度推定部２０において算出された触媒温度の推定値Ｔｅがエンジン制御部２２に入力され、この触媒温度の推定値Ｔｅに基づいて、エンジン２の制御が行われる。
【００１８】
この第２の例では、切換制御部２３において、温度センサ２ｂの検出値に基づき、温度センサ２ｂが正常であると判別されているときに、例えば、周期的に各入力値ｘ１、ｘ２、ｘ３、ｘ４、ｘ５と、そのとき温度センサ２ｂにより検出された実際の触媒温度Ｔｄとが、順次、記憶され、それにより、図７に示されるような、訓練用データセットが作成される。なお、この場合、温度センサ２ｂにより検出された実際の触媒温度Ｔｄは教師データｙｔとして記憶される。図７に示されるような訓練用データセットの作成が完了すると、触媒温度推定部２０を構成しているニューラルネットワークＮＮの重みの学習が行われる。
【００１９】
この場合も、最初に、図７に示される訓練用データセットにおけるＮｏ．１の各入力値ｘ１、ｘ２、ｘ３、ｘ４、ｘ５が、図５に示されるニューラルネットワークＮＮに入力され、そのときニューラルネットワークＮＮから出力される出力値ｙと、対応する教師データｙｔとの二乗誤差Ｅ（＝1/2 (ｙ-ｙｔ)2）が小さくなるように、誤差逆伝播法により、ニューラルネットワークＮＮの重みの学習が行われる。Ｎｏ．１のデータセットに基づくニューラルネットワークＮＮの重みの学習が終了すると、Ｎｏ．２の各入力値ｘ１、ｘ２、ｘ３、ｘ４、ｘ５がニューラルネットワークＮＮに入力され、そのときニューラルネットワークＮＮから出力される出力値ｙと、対応する教師データｙｔとの二乗誤差Ｅ（＝1/2 (ｙ-ｙｔ)2）が小さくなるように、誤差逆伝播法により、ニューラルネットワークＮＮの重みの学習が行われる。以下、同様な手法で、Ｎｏ．３からＮｏ．ｍまで、対応するデータセットに基づいてニューラルネットワークＮＮの重みの学習が順次行われる。Ｎｏ．１からＮｏ．ｍまでの全てのデータセットに基づくニューラルネットワークＮＮの重みの学習が完了すると、学習済みの重みを用いて、触媒温度推定部２０を構成しているニューラルネットワークＮＮの重みが更新される。
【００２０】
さて、図３に示される第１の例では、ニューラルネットワークＮＮによって目標トルク制御値ｙが求められており、従って、第１の例では、ニューラルネットワークＮＮにより目標トルク制御値ｙの推定モデルが生成されている。一方、図４に示される第２の例では、ニューラルネットワークＮＮによって触媒温度が推定されており、従って、第２の例では、ニューラルネットワークＮＮにより触媒温度の推定モデルが生成されている。本発明による実施例では、以下、このような推定モデルを、移動体制御モデルと称する。また、
本発明による実施例では、車両１上で行われるニューラルネットワークＮＮの重みの学習は、移動体制御モデルのオンボード学習と称される。
【００２１】
ところで、誤差逆伝播法によるニューラルネットワークＮＮの重みの学習は、莫大な計算量を必要とするため、多量の電力を消費し、この場合、オンボード学習を行う移動体制御モデルの規模が大きいほど多量の電力を消費する。従って、バッテリー４の充電量を示すＳＯＣの値が低いときに、規模の大きな移動体制御モデルのオンボード学習を行うと、電力不足により、移動体制御モデルのオンボード学習を適切に行うことができなくなる危険性がある。そこで本発明による実施例では、前述したように、移動体制御モデルとして、図５に示されるようなニューラルネットワークＮＮにより生成される規模の大きな移動体制御モデルと、図６に示されるようなニューラルネットワークＮＮにより生成される規模の小さい移動体制御モデルとを用い、ＳＯＣの値が低いときには電力の消費量を低減するために、図６に示されるようなニューラルネットワークＮＮにより生成される規模の小さな移動体制御モデルのオンボード学習を行うようにしている。なお、この場合、規模の異なる３個以上の移動体制御モデルを用いることもできる。
【００２２】
なお、図６において、L＝１は入力層、L＝２は隠れ層、L＝３は出力層を夫々示しており、ｘ１からｘｎ は入力層 ( L＝１) の各ノードへの入力値を示しており、ｙ は出力層 ( L＝３) のノードからの出力値を示している。図５および図６からわかるように、本発明による実施例において、移動体制御モデルの規模の小さいとは、移動体制御モデルを生成しているニューラルネットワークＮＮの隠れ層の層数が少なくかつ隠れ層のノードの総数が少ないことを意味している。ニューラルネットワークＮＮの隠れ層の層数が少なくかつ隠れ層のノードの総数が少ないと、移動体制御モデルの学習を行う際の計算量が減少し、電力の消費量が減少する。従って、ＳＯＣの値が低くても、電力の不足を招くことなく、移動体制御モデルのオンボード学習を行うことが可能となる。
【００２３】
なお、図５および図６からわかるように、図５に示されるニューラルネットワークＮＮと図６に示されるニューラルネットワークＮＮは、入力層 ( L＝１) のノード数は同一であり、入力層 ( L＝１) の各ノードへは同一の入力値ｘ１からｘｎ が入力される。第１の例において本発明を実施するには、制御パラメータ算出部１１が図５に示されるニューラルネットワークＮＮと図６に示されるようなニューラルネットワークＮＮの双方を有していて図５に示されるニューラルネットワークＮＮと図６に示されるようなニューラルネットワークＮＮの一方が選択的に用いられ、第２の例において本発明を実施するには、触媒温度推定部２０が図５に示されるニューラルネットワークＮＮと図６に示されるようなニューラルネットワークＮＮの双方を有していて図５に示されるニューラルネットワークＮＮと図６に示されるようなニューラルネットワークＮＮの一方が選択的に用いられる。
【００２４】
図８に、本発明による機械学習装置の機能構成図を示す。図８を参照すると、本発明による機械学習装置は、移動体に搭載され、学習用データを用いて移動体制御モデルの学習を行う機械学習装置において、規模の異なる複数個の移動体制御モデルを記憶した記憶部３０と、移動体に搭載されたバッテリー４のＳＯＣの値を取得するＳＯＣ取得部３１と、ＳＯＣの値が小さい場合にはＳＯＣの値が大きい場合に比べて規模の小さな移動体制御モデルを選択するモデル選択部３２と、選択された移動体制御モデルの学習を行う学習部３４とを具備する。この場合、本発明による実施例では、記憶部３０には、図５に示されるようなニューラルネットワークＮＮと図６に示されるようなニューラルネットワークＮＮとの少なくとも二つのニューラルネットワークＮＮが記憶されている。
【００２５】
ＳＯＣ取得部３１では、例えば、図９に示されるＳＯＣ取得ルーチンを用いてＳＯＣが算出される。このＳＯＣ取得ルーチンは一定時間毎の割り込みにより実行され、ステップ４０において、一定時間内におけるバッテリー４への電量流入量Ｉと定数Ｃとの積がＳＯＣに加算される。バッテリー４から電量が流出するときには電量流入量Ｉはマイナスとなる。なお、このＳＯＣ取得ルーチンは、極めて単純な例を示しただけであって、公知の種々のＳＯＣ取得ルーチンを用いることができる。
【００２６】
モデル選択部３２では、ＳＯＣの値に応じて移動体制御モデルが選択される。この場合、例えば、ＳＯＣの値に対して図２に示されるような閾値ＳＸが予め設定されており、ＳＯＣの値が閾値ＳＸよりも高いときには、規模の大きな移動体制御モデルが選択され、ＳＯＣの値が閾値ＳＸよりも低いときには、規模の小さな移動体制御モデルが選択される。
【００２７】
図３に示される第１の例が採用されている場合には、ニューラルネットワークＮＮの重みの学習を行う際に、制御パラメータ算出部３１を構成しておりかつＳＯＣの値に応じて選択されたニューラルネットワークＮＮのノード数等が、図１に示される電子制御ユニット５のメモリ８内に記憶され、図４に示される第２の例が採用されている場合には、ニューラルネットワークＮＮの重みの学習を行う際に、触媒温度推定部４０を構成しておりかつＳＯＣの値に応じて選択されたニューラルネットワークＮＮのノード数等が、図１に示される電子制御ユニット５のメモリ８内に記憶される。従って、図１に示される実施例においては、電子制御ユニット５のメモリ８が、記憶部３０を形成している。なお、この場合、第１の例、或いは、第２の例に対して作成された図７に示される訓練用データセットも、図１に示される電子制御ユニット５のメモリ８内に記憶される。
【００２８】
一方、学習部３４では、ＳＯＣの値に応じて選択されたニューラルネットワークＮＮの重みの学習、即ち、ＳＯＣの値に応じて選択された移動体制御モデルのオンボード学習が行われ、このオンボード学習は、図１に示される電子制御ユニット５のＣＰＵ８内において行われる。従って、電子制御ユニット５のＣＰＵ８が学習部３４を形成している。
【００２９】
図１０は、電子制御ユニット５において行われるニューラルネットワークＮＮの重みの学習制御ルーチンを示す。
図１０を参照すると、まず初めに、ステップ５０において、図７に示されるような訓練用データセットの作成が完了したか否かが判別される。訓練用データセットの作成が完了していないときには処理サイクルを完了する。これに対し、訓練用データセットの作成が完了したと判別されたときには、ステップ５１に進んで、図９に示されるＳＯＣ取得ルーチンにおいて算出されているＳＯＣの値が読み込まれる。次いで、ステップ５２では、ＳＯＣの値に応じて規模の大きな移動体制御モデルと規模の小さな移動体制御モデルのうちの一方の移動体制御モデルが選択される。この場合、例えば、ＳＯＣの値が図２に示される閾値ＳＸよりも高いときには、規模の大きな移動体制御モデルが選択され、ＳＯＣの値が図２に示される閾値ＳＸよりも低いときには、規模の小さな移動体制御モデルが選択される。
【００３０】
次いで、ステップ５３では、ステップ５２において選択された移動体制御モデルを生成しているニューラルネットワークＮＮ、即ち、選択されたニューラルネットワークＮＮの入力層 のノード数、隠れ層 のノード数、出力層 のノード数、および重みが読み込まれ、これらノード数に基づいて、図５又は図６に示されるようなニューラルネットワークＮＮが作成される。次いで、ステップ５４では、電子制御ユニット５のメモリ８内に記憶されている図７に示されるような訓練データセットの各データが読み込まれる。
【００３１】
次いで、ステップ５５では、選択されたニューラルネットワークＮＮの重みの学習が行われる。最初は、図７の１番目（No. 1）の入力値ｘ１、ｘ２・・・ｘｎ−１、ｘｎがニューラルネットワークＮＮの入力層 ( L＝１) の各ノードに入力される。次いで、このときの選択されたニューラルネットワークＮＮの出力値ｙと１番目（No. 1）の教師データｙｔ１との間の二乗誤差Ｅ＝１/２(ｙ−ｙｔ１)２が算出され、この二乗誤差Ｅが小さくなるように、誤差逆伝播法を用いて、選択されたニューラルネットワークＮＮの重みの学習が行われる。図７の１番目（No. 1）のデータに基づく選択されたニューラルネットワークＮＮの重みの学習が完了すると、次に、図７の２番目（No. ２）のデータに基づく選択されたニューラルネットワークＮＮの重みの学習が、誤差逆伝播法を用いて行われる。同様にして、図７のｍ番目（No. ｍ）まで順次、選択されたニューラルネットワークＮＮの重みの学習が行われる。図７の１番目（No. 1）からｍ番目（No. ｍ）までの全てについて選択されたニューラルネットワークＮＮの重みの学習が完了すると、ステップ５６に進む。
【００３２】
ステップ５６では、例えば、図７の１番目（No. 1）からｍ番目（No. ｍ）までの全ての選択されたニューラルネットワークＮＮの出力値ｙと教師データｙｔとの間の二乗和誤差Ｅが算出され、この二乗和誤差Ｅが、予め設定された設定誤差以下になったか否かが判別される。二乗和誤差Ｅが、予め設定された設定誤差以下になったと判別されたときには、ステップ５７に進んで、選択されたニューラルネットワークＮＮの学習済み重みが、電子制御ユニット５のメモリ８内に記憶される。次いで、学習ルーチンを終了する。これに対し、二乗和誤差Ｅが、予め設定された設定誤差以下になっていないと判別されたときには、ステップ５５に戻り、再度、図７に示される訓練データセットに基づいて、選択されたニューラルネットワークＮＮの重み学習が行われる。次いで、二乗和誤差Ｅが、予め設定された設定誤差以下になるまで、選択されたニューラルネットワークＮＮの重みの学習が続行される。
【００３３】
選択されたニューラルネットワークＮＮの重みの学習が終了すると、選択されたニューラルネットワークＮＮの重みが更新され、次にいずれかのニューラルネットワークＮＮの更新作用が行われるまで、選択されたニューラルネットワークＮＮが用いられる。例えば、第１の例では、選択されたニューラルネットワークＮＮの重みの学習が終了すると、制御パラメータ算出部３１を構成しているニューラルネットワークＮＮのうちで選択されたニューラルネットワークＮＮの重みが更新され、制御パラメータ算出部３１では、次にいずれかのニューラルネットワークＮＮの更新作用が行われるまで、選択されたニューラルネットワークＮＮを用いて目標トルク制御値ｙが求められる。一方、第２の例では、選択されたニューラルネットワークＮＮの重みの学習が終了すると、触媒温度推定部４０を構成しているニューラルネットワークＮＮのうちで選択されたニューラルネットワークＮＮの重みが更新され、触媒温度推定部４０では、次にいずれかのニューラルネットワークＮＮの更新作用が行われるまで、選択されたニューラルネットワークＮＮを用いて触媒温度の推定値Ｔｅが求められる。
【符号の説明】
【００３４】
１    車両
２    エンジン
３    電気モータ
４    バッテリー
５    電子制御ユニット
【図１】
2022003857.tif 000003
【図２】
2022003857.tif 000004
【図３】
2022003857.tif 000005
【図４】
2022003857.tif 000006
【図５】
2022003857.tif 000007
【図６】
2022003857.tif 000008
【図７】
2022003857.tif 000009
【図８】
2022003857.tif 000010
【図９】
2022003857.tif 000011
【図１０】
2022003857.tif 000012