(57)【要約】【課題】入力パラメータの一部の値に異常が生じている場合であっても比較的正確に出力パラメータの値を算出する。【解決手段】制御装置は、内燃機関１の運転状態を示す入力パラメータの検出値を検出複数のパラメータ値検出手段と、入力パラメータの検出値が入力されると学習済みモデルを用いて出力パラメータの値を算出する演算部８２と、算出された出力パラメータの値に基づいて内燃機関の運転を制御する制御部と、を備える。パラメータ値検出手段の一部に異常が生じたときには、演算部には、該異常入力パラメータの値として、異常が生じたパラメータ値検出手段とは別の代替手段によって推定された異常入力パラメータの値が入力される。学習済みモデルは、代替手段によって推定された異常入力パラメータの値と、他の入力パラメータの検出値と、出力パラメータの正解データとを含む訓練データセットに基づいて、再学習される。【選択図】図１０
2020045821.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の運転状態を示す入力パラメータの検出値を検出又は推定する複数のパラメータ値検出手段と、
前記パラメータ値検出手段によって検出された入力パラメータの検出値が入力されると、ニューラルネットワークを用いた学習済みモデルを用いて、出力パラメータの値を算出する演算部と、
前記演算部によって算出された出力パラメータの値に基づいて内燃機関の運転を制御する制御部と、を備える、内燃機関の制御装置であって、
前記パラメータ値検出手段の一部に異常が生じて該パラメータ値検出手段によって検出又は推定される異常入力パラメータの値が実際の値から乖離しているときには、前記演算部には、該異常入力パラメータの値として、異常が生じた前記パラメータ値検出手段とは別の代替手段によって推定された前記異常入力パラメータの値又は前記異常入力パラメータの実際の値に応じて変化する代替パラメータの値が入力されると共に、
前記学習済みモデルは、前記代替手段によって推定された前記異常入力パラメータの値又は前記代替パラメータの値と、前記異常入力パラメータ以外の前記入力パラメータの検出値と、前記出力パラメータの正解データとを含む訓練データセットに基づいて、再学習される、内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来から、内燃機関の運転状態を示すパラメータを入力パラメータとし、内燃機関の制御パラメータを出力パラメータとするニューラルネットワークを用いた学習済モデルを用いて、出力パラメータの値を算出し、算出された出力パラメータの値に基づいて内燃機関を制御する、内燃機関の制御装置が知られている（例えば、特許文献１）。
【０００３】
特に、特許文献１の制御装置は、異なる複数のニューラルネットワークを備えると共に、各ニューラルネットワークが内燃機関の異なる運転領域に対応するように構成されている。加えて、これらニューラルネットワークの出力値に、内燃機関の過渡運転状態に応じて変化する重み係数を乗算して、制御パラメータの値を算出し、算出された制御パラメータの値にこの制御パラメータの実際の値が一致するように内燃機関が制御される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１１／０３３６６２号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、内燃機関の制御に用いられるニューラルネットワークへの入力パラメータのうちの少なくとも一部は、内燃機関に設けられた各種センサによってその値が検出されることが多い。加えて、斯かる入力パラメータの一部は、内燃機関に設けられた各種アクチュエータに対する指令値であることもある。ところが、これらセンサやアクチュエータは故障することがある。この場合、そのセンサによって入力パラメータの現在の正しい値を検出することができず、また、そのアクチュエータへの指令値と実際のアクチュエータにおける操作が異なったものになる。
【０００６】
このようにセンサやアクチュエータの故障により入力パラメータの値に異常が生じている場合に、ニューラルネットワークを用いた学習済モデルによって出力パラメータの値をそのまま算出していると、算出された出力パラメータの値と実際の値（又は最適な値）とに大きなずれが生じる。この結果、斯かる出力パラメータに基づいて内燃機関を制御すると、内燃機関が最適な状態で運転されなくなってしまう。
【０００７】
上記課題に鑑みて、本開示の目的は、入力パラメータの一部の値に異常が生じている場合であっても比較的正確に出力パラメータの値を算出することができる内燃機関の制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
本開示の要旨は以下のとおりである。
【０００９】
（１）内燃機関の運転状態を示す入力パラメータの検出値を検出又は推定する複数のパラメータ値検出手段と、前記検出手段によって検出された入力パラメータの検出値が入力されると、ニューラルネットワークを用いた学習済みモデルを用いて、出力パラメータの値を算出する演算部と、前記演算部によって算出された出力パラメータの値に基づいて内燃機関の運転を制御する制御部と、を備える、内燃機関の制御装置であって、前記パラメータ値検出手段の一部に異常が生じて該パラメータ値検出手段によって検出又は推定される異常入力パラメータの値が実際の値から乖離しているときには、前記演算部には、該異常入力パラメータの値として、異常が生じた前記パラメータ値検出手段とは別の代替手段によって推定された前記異常入力パラメータの値又は前記異常入力パラメータの実際の値に応じて変化する代替パラメータの値が入力されると共に、前記学習済みモデルは、前記代替手段によって推定された前記異常入力パラメータの値又は前記代替パラメータの値と、前記異常入力パラメータ以外の前記入力パラメータの検出値と、前記出力パラメータの正解データとを含む訓練データセットに基づいて、再学習される、内燃機関の制御装置。
【発明の効果】
【００１０】
本開示によれば、入力パラメータの一部の値に異常が生じている場合であっても比較的正確に出力パラメータの値を算出することができる内燃機関の制御装置が提供される。
【図面の簡単な説明】
【００１１】
【図１】図１は、内燃機関の概略的な構成図である。
【図２】図２は、ＥＣＵの処理部における機能ブロック図である。
【図３】図３は、ニューラルネットワークの一例を示す図である。
【図４】図４は、ニューラルネットワークの一例を示す図である。
【図５】図５は、学習済みモデルを用いて算出したＮＯｘ濃度の推定値と、ＮＯｘ濃度の実測値とのタイムチャートである。
【図６】図６は、学習済みモデルを用いて算出したＮＯｘ濃度の推定値と、ＮＯｘ濃度の実測値との、図５と同様なタイムチャートである。
【図７】図７は、入力層の一つのノードへ入力されるパラメータの値の検出又は算出方法を示す図である。
【図８】図８は、内燃機関の制御装置で行われるモデルの再学習制御の制御ルーチンを示すフローチャートである。
【図９】図９は、ニューラルネットワークの一例を示す、図４と同様な図である。
【図１０】図１０は、内燃機関の制御装置で行われるモデルの再学習制御の制御ルーチンを示すフローチャートである。
【図１１】図１１は、第三実施形態に係る内燃機関の概略的な構成図である。
【図１２】図１２は、第四実施形態に係る内燃機関の制御システムを概略的に示す図である。
【図１３】図１３は、第五実施形態に係る内燃機関の制御システムを概略的に示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して実施形態について詳細に説明する。なお、以下の説明では、同様な構成要素には同一の参照番号を付す。
【００１３】
＜第一実施形態＞
≪内燃機関全体の説明≫
まず、図１を参照して第一実施形態に係る制御装置が用いられる内燃機関１の構成について説明する。図１は、車両に搭載される内燃機関１の概略的な構成図である。図１に示したように、内燃機関１は、機関本体１０、燃料供給装置２０、吸気系３０、排気系４０、排気ガス再循環（ＥＧＲ）システム５０、及び制御装置６０を備える。
【００１４】
機関本体１０は、複数の気筒１１が形成されたシリンダブロックと、吸気ポート及び排気ポートが形成されたシリンダヘッドと、クランクケースとを備える。各気筒１１内にはピストンが配置されると共に、各気筒１１は吸気ポート及び排気ポートに連通している。
【００１５】
燃料供給装置２０は、燃料噴射弁２１、コモンレール２２、燃料供給管２３、燃料ポンプ２４、及び燃料タンク２５を備える。燃料噴射弁２１は、各気筒１１の燃焼室内に燃料を直接噴射するようにシリンダヘッドに配置されている。燃料噴射弁２１は、コモンレール２２及び燃料供給管２３を介して燃料タンク２５に連結されている。燃料供給管２３には、燃料タンク２５内の燃料を圧送する燃料ポンプ２４が配置される。燃料ポンプ２４によって圧送された燃料は、燃料供給管２３を介してコモンレール２２に供給され、燃料噴射弁２１から各気筒１１の燃焼室内に直接噴射される。コモンレール２２内の燃料の圧力は燃料ポンプ２４の出力を変更することによって調整される。したがって、燃料ポンプ２４は、燃料噴射弁２１へ供給する燃料の圧力を制御する燃圧制御装置として機能する。なお、燃料噴射弁２１は、吸気ポート内に燃料を噴射するように構成されてもよい。
【００１６】
吸気系３０は、吸気マニホルド３１、吸気管３２、エアクリーナ３３、排気ターボチャージャ５のコンプレッサ３４、インタークーラ３５、及びスロットル弁３６を備える。各気筒１１の吸気ポートは吸気マニホルド３１及び吸気管３２を介してエアクリーナ３３に連通している。吸気管３２内には、吸気管３２内を流通する吸入空気を圧縮して吐出する排気ターボチャージャ５のコンプレッサ３４と、コンプレッサ３４によって圧縮された空気を冷却するインタークーラ３５とが設けられている。スロットル弁３６は、スロットル弁駆動アクチュエータ３７によって回動せしめられることで、吸気通路の開口面積を変更することができる。
【００１７】
排気系４０は、排気マニホルド４１、排気管４２、排気ターボチャージャ５のタービン４３、及びパティキュレートフィルタ（以下、単に「フィルタ」という）４４を備える。各気筒１１の排気ポートは、排気マニホルド４１及び排気管４２を介してフィルタ４４に連通している。排気管４２には、排気ガスのエネルギによって回転駆動せしめられる排気ターボチャージャ５のタービン４３が設けられている。排気ターボチャージャ５のタービン４３が回転駆動せしめられると、これに伴ってコンプレッサ３４が回転し、よって吸入空気が圧縮せしめられる。本実施形態では、排気ターボチャージャ５のタービン４３には可変ノズルが設けられている。可変ノズルの開度が変更されると、タービンブレードに供給される排気ガスの流速が変化し、ひいてはタービン４３の回転速度が変化する。このため、可変ノズルの開度が変更されると、過給圧が変化する。
【００１８】
フィルタ４４は、排気ガス中の微粒子を捕集する。なお、排気系４０は、排気ガスを浄化した上で外気中に排出するための装置であれば、フィルタ４４に替わって又はフィルタ４４に加えて他の排気浄化装置を備えてもよい。斯かる排気浄化装置には、例えば、三元触媒、排気ガス中のＮＯｘを還元浄化する選択還元型ＮＯｘ触媒、ＮＯｘ吸蔵還元触媒、酸化触媒等が含まれる。
【００１９】
ＥＧＲシステム５０は、機関本体１０から排出された排気ガスの一部を吸気通路に供給する。ＥＧＲシステム５０は、ＥＧＲ管５１と、ＥＧＲ制御弁５２と、ＥＧＲクーラ５３とを備える。ＥＧＲ管５１は、排気マニホルド４１と吸気マニホルド３１とに連結され、これらを互いに連通させる。ＥＧＲ管５１には、ＥＧＲ管５１内を流れるＥＧＲガスを冷却するＥＧＲクーラ５３が設けられている。加えて、ＥＧＲ管５１には、ＥＧＲ管５１によって形成されるＥＧＲ通路の開口面積を変更することができるＥＧＲ制御弁５２が設けられている。ＥＧＲ制御弁５２の開度を制御することによって、排気マニホルド４１から吸気マニホルド３１へ還流せしめられるＥＧＲガスの流量が調整され、その結果、ＥＧＲ率が変化する。なお、ＥＧＲ率は、燃焼室内に供給される全ガス量（新気量とＥＧＲガス量との合計）に対するＥＧＲガス量の割合である。
【００２０】
なお、本実施形態では、吸気ガスの圧力を高める過給機として排気ターボチャージャ５が用いられている。しかしながら、吸気ガスの圧力を高めることができれば、電動コンプレッサや機械式スーパーチャージャ等、他の過給機が用いられてもよい。
【００２１】
≪内燃機関の制御装置≫
内燃機関の制御装置６０は、電子制御ユニット（ＥＣＵ）６１及び各種センサを備える。ＥＣＵ６１は、デジタルコンピュータから構成され、双方向性バス６２を介して相互に接続された記憶部６３、ＣＰＵ（マイクロプロセッサ）を備える処理部６５、入力ポート６６、及び出力ポート６７を備える。記憶部６３は、揮発性メモリ（例えば、ＲＡＭ）及び不揮発性メモリ（例えば、ＲＯＭ）を備え、処理部６５において実行されるプログラム等、各種のデータを記憶する。
【００２２】
吸気管３２には、排気ターボチャージャ５のコンプレッサ３４の吸気流れ方向上流側に、吸気管３２内を流れる空気の流量を検出するエアフロメータ７１が設けられている。スロットル弁３６には、その開度（スロットル開度）を検出するためのスロットル開度センサ７２が設けられている。吸気マニホルド３１内には、吸気マニホルド３１内の吸気ガスの圧力（過給圧）を検出する圧力センサ（以下、「過給圧センサ」という）７３及び吸気マニホルド３１内の吸気ガスの温度（吸気温）を検出する温度センサ（以下、「吸気温センサ」という）７４が設けられている。また、コモンレール２２にはコモンレール２２内の燃料の圧力、すなわち燃料噴射弁２１へ供給される燃料の圧力を検出する圧力センサ（以下、「燃圧センサ」という）７５が設けられている。これらエアフロメータ７１、スロットル開度センサ７２、過給圧センサ７３、吸気温センサ７４及び燃圧センサ７５の出力は、対応するＡＤ変換器６８を介して入力ポート６６に入力される。
【００２３】
また、アクセルペダル７７にはアクセルペダル７７の踏み込み量に比例した出力電圧を発生する負荷センサ７８が接続され、負荷センサ７８の出力電圧は対応するＡＤ変換器６８を介して入力ポート６６に入力される。したがって、本実施形態では、アクセルペダル７７の踏み込み量が機関負荷として用いられる。クランク角センサ７９は機関本体１０のクランクシャフトが例えば１０度回転する毎に出力パルスを発生し、この出力パルスが入力ポート６６に入力される。処理部６５ではこのクランク角センサ７９の出力パルスから機関回転速度が計算される。
【００２４】
一方、ＥＣＵ６１の出力ポート６７は、対応する駆動回路６９を介して、内燃機関１の運転を制御する各アクチュエータに接続される。図１に示した例では、出力ポート６７は、排気ターボチャージャ５の可変ノズル、燃料噴射弁２１、燃料ポンプ２４、スロットル弁駆動アクチュエータ３７、及びＥＧＲ制御弁５２に接続されている。ＥＣＵ６１は、これらアクチュエータを制御する制御信号を出力ポート６７から出力して、内燃機関１の運転を制御する。
【００２５】
図２は、ＥＣＵ６１の処理部６５における機能ブロック図である。図２に示したように、本実施形態では、処理部６５は、パラメータ値取得部８１と、演算部８２と、制御部８３と、学習部８４とを備えている。
【００２６】
パラメータ値取得部８１は、内燃機関１の運転状態を示す入力パラメータの値を取得する。具体的には、パラメータ値取得部８１は、ＥＣＵ６１の入力ポート６６を介して、上述した種々のセンサ等の出力を、内燃機関１の運転状態を表す入力パラメータの値として取得する。また、パラメータ値取得部８１は、ＥＣＵ６１から燃料噴射弁２１への指令値等を、内燃機関１の運転状態を表す入力パラメータの値として取得する。したがって、本実施形態では、パラメータ値取得部８１は、入力パラメータの値を取得する入力パラメータ値取得部として機能する。
【００２７】
演算部８２は、入力パラメータの値が入力されると、複数の入力層と、隠れ層と、出力層とを備えるニューラルネットワークを用いたモデルを用いて、内燃機関１の性能を表す出力パラメータの値を算出する。以下では、演算部８２の出力パラメータが、排気ガス中のＮＯｘ濃度である場合を例にとって説明するが、演算部８２の出力パラメータは、排気ガス中のその他の物質の濃度、内燃機関の出力トルク、内燃機関１の燃費等、様々なパラメータとすることができる。或いは、演算部８２の出力パラメータは、内燃機関１を制御するためのパラメータ（例えば、燃料カット制御の可否判定等）であってもよい。
【００２８】
制御部８３は、演算部８２によって算出された出力パラメータの値に基づいて、内燃機関１の運転を制御する。例えば、演算部８２によって算出されたＮＯｘ濃度の予測値が目標濃度よりも高いときには、ＮＯｘ濃度を低下させるべく、ＥＧＲ制御弁５２の目標開度が大きくなるように修正される。一方、演算部８２によって算出されたＮＯｘ濃度の予測値が目標濃度よりも低いときには、ＮＯｘ濃度を上昇させるべく、ＥＧＲ制御弁５２の目標開度が小さくなるように修正される。
【００２９】
学習部８４は、演算部８２において出力パラメータの値を算出する際に用いられるモデルの学習を行う。学習部８４において行われる具体的な学習手法については後述する。
【００３０】
≪ニューラルネットワークの概要≫
上述したように、本実施形態の演算部８２は、ニューラルネットワークを用いたモデルを用いて、内燃機関の性能を表す種々のパラメータ（出力パラメータ）の値を算出するようにしている。以下では、図３を参照して、演算部８２で用いられるニューラルネットワークについて説明する。
【００３１】
図３は、ニューラルネットワークの一例を示している。図３における丸印は人工ニューロンを表しており、ニューラルネットワークにおいては、この人工ニューロンは、通常、ノード又はユニットと称される（本明細書では、「ノード」と称す）。図３においてＬ＝１は入力層、Ｌ＝２及びＬ＝３は隠れ層、Ｌ＝４は出力層をそれぞれ示している。また、図３において、ｘ１及びｘ２は入力層（Ｌ＝１）の各ノード及びそのノードからの出力値を示しており、ｙは出力層（Ｌ＝４）のノード及びその出力値を示している。同様に、ｚ1(L=2)、ｚ2(L=2)及びｚ3(L=2)は隠れ層（Ｌ＝２）の各ノード及びそのノードからの出力値を示しており、ｚ1(L=3)及びｚ2(L=3)は隠れ層（Ｌ＝３）の各ノード及びそのノードからの出力値を示している。なお、隠れ層の層数は、１個又は任意の個数とすることができ、入力層のノードの数及び隠れ層のノードの数も任意の個数とすることができる。なお、本実施形態では、出力層のノードの数は１個となっている。
【００３２】
入力層の各ノードでは入力がそのまま出力される。一方、隠れ層（Ｌ＝２）の各ノードには、入力層の各ノードの出力値ｘ１及びｘ２が入力され、隠れ層（Ｌ＝２）の各ノードでは、それぞれ対応する重みｗ及びバイアスｂを用いて総入力値ｕが算出される。例えば、図３において隠れ層（Ｌ＝２）のｚｋ(L=2)（ｋ＝１、２、３）で示されるノードにおいて算出される総入力値ｕｋ(L=2)は、次式のようになる（Ｍは入力層のノードの数）。
【数１】
2020045821.tif 000003
次いで、この総入力値ｕｋ(L=2)は活性化関数ｆにより変換され、隠れ層（Ｌ＝２）のｚｋ(L=2)で示されるノードから、出力値ｚｋ(Ｌ=2)（＝ｆ（ｕｋ(L=2)））として出力される。一方、隠れ層（Ｌ＝３）の各ノードには、隠れ層（Ｌ＝２）の各ノードの出力値ｚ１(L=2)、ｚ２(L=2)及びｚ３(L=2)が入力され、隠れ層（Ｌ＝３）の各ノードでは、それぞれ対応する重みｗ及びバイアスｂを用いて総入力値ｕ（＝Σｚ・ｗ＋ｂ）が算出される。この総入力値ｕは同様に活性化関数により変換され、隠れ層（Ｌ＝３）の各ノードから、出力値ｚ１(L=3)、ｚ２(L=3)として出力される、なお、本実施形態では、この活性化関数としてシグモイド関数σが用いられている。
【００３３】
一方、出力層（Ｌ＝４）のノードには、隠れ層（Ｌ＝３）の各ノードの出力値ｚ１(L=3)及びｚ２(L=3)が入力され、出力層のノードでは、それぞれ対応する重みｗ及びバイアスｂを用いて総入力値ｕ（Σｚ・ｗ＋ｂ）が算出されるか、又は、それぞれ対応する重みｗのみを用いて総入力値ｕ（Σｚ・ｗ）が算出される。本実施形態では、出力層のノードでは活性化関数として恒等関数が用いられており、したがって、出力層のノードからは、出力層のノードにおいて算出された総入力値ｕが、そのまま出力値ｙとして出力される。
【００３４】
≪ニューラルネットワークにおける学習≫
本実施形態では、誤差逆伝播法を用いて、ニューラルネットワーク内における各重みｗの値及びバイアスｂの値が学習される。この誤差逆伝播法は周知であり、したがって、誤差逆伝播法についてはその概要を以下に簡単に説明する。なお、バイアスｂは重みｗの一種なので、以下の説明では、バイアスｂは重みｗの一つとされている。さて、図３に示したようなニューラルネットワークにおいて、Ｌ＝２、Ｌ＝３又はＬ＝４の各層のノードへの入力値ｕ（Ｌ）における重みをｗ（Ｌ）で表すと、誤差関数Ｅの重みｗ（Ｌ）による微分、すなわち、勾配∂Ｅ／∂ｗ（Ｌ）は、書き換えると、次式で示されるようになる。
【数２】
2020045821.tif 000004
ここで、ｚ（Ｌ−１）・∂ｗ（Ｌ）＝∂ｕ（Ｌ）であるので、（∂Ｅ／∂ｕ（Ｌ））＝δ（Ｌ）とすると、上記（１）式は、次式にて表すことができる。
【数３】
2020045821.tif 000005
【００３５】
ここで、ｕ（Ｌ）が変動すると、次の層の総入力値ｕ（Ｌ＋１）の変化を通じて誤差関数Ｅの変動を引き起こすので、δ（Ｌ）は、次式で表すことができる（ＫはＬ＋１層におけるノードの数）。
【数４】
2020045821.tif 000006
ここで、z（Ｌ）＝ｆ(u（Ｌ）)と表すと、上記（３）式の右辺に現れる入力値ｕk（Ｌ＋１）は、次式で表すことができる。
【数５】
2020045821.tif 000007
ここで、上記（３）式の右辺第１項（∂Ｅ／∂ｕ（Ｌ＋１））はδ（Ｌ＋１）であり、上記（３）式の右辺第２項（∂uｋ（Ｌ＋１）／∂u（Ｌ））は、次式で表すことができる。
【数６】
2020045821.tif 000008
したがって、δ（Ｌ）は、次式で示される。
【数７】
2020045821.tif 000009
すなわち、δ（Ｌ＋１）が求まると、δ（Ｌ）を求めることができることになる。
【００３６】
さて、或る入力値ｘ及びその入力値ｘに対する出力の正解データｙｔを含む訓練データセットが求められており、この入力値に対する出力層からの出力値がｙであった場合、誤差関数として二乗誤差が用いられている場合には、二乗誤差Ｅは、Ｅ＝１／２(ｙ−ｙｔ)２で求められる。この場合、図３の出力層（Ｌ＝４）のノードでは、出力値ｙ＝ｆ(u（Ｌ）)となり、したがって、この場合には、出力層（Ｌ＝４）のノードにおけるδ（Ｌ）の値は、次式で示されるようになる。
【数８】
2020045821.tif 000010
ところで、本実施形態では、前述したように、ｆ(u（Ｌ）)は恒等関数であり、ｆ’(u（Ｌl）)＝１となる。したがって、δ（Ｌ）＝ｙ−ｙｔとなり、δ（Ｌ）が求まる。
【００３７】
δ（Ｌ）が求まると、上式（６）を用いて前層のδ（Ｌ−１）が求まる。このようにして順次、前層のδが求められ、これらδの値を用いて、上式（２）から、各重みｗについて誤差関数Ｅの微分、すなわち、勾配∂Ｅ／∂ｗ（Ｌ）か求められる。勾配∂Ｅ／∂ｗ（Ｌ）か求められると、この勾配∂Ｅ／∂ｗ（Ｌ）を用いて、誤差関数Ｅの値が減少するように、重みｗの値が更新される。すなわち、重みｗの値の学習が行われることになる。
【００３８】
≪具体的なモデルの例≫
次に、図４を参照して、ニューラルネットワークを用いた具体的なモデルの例について説明する。図４は、本実施形態の演算部８２において用いられるニューラルネットワークの一例を示す図である。
【００３９】
図４に示したように、図４に示したニューラルネットワークは、入力層（Ｌ＝１）、二つの隠れ層（Ｌ＝２、３）及び出力層（Ｌ＝４）を有する。また、図４に示したニューラルネットワークでは、入力層（Ｌ＝１）は六つのノードを、出力層（Ｌ＝４）は一つのノードを、隠れ層（Ｌ＝２、３）はそれぞれ七つのノードを備えている。しかしながら、ニューラルネットワークは、３層以上の任意の層数であればいかなる層数を有していてもよい。また、各層のノードの数も任意の数とすることができる。
【００４０】
本実施形態では、入力層（Ｌ＝１）の各ノードには、内燃機関１の運転状態を表す特定の入力パラメータの値が入力される。特に、入力層（Ｌ＝１）の各ノードには入力層（Ｌ＝１）の他のノードに入力される入力パラメータとは異なる一つの入力パラメータの値が入力される。図４に示した例では、入力パラメータとして、具体的には、内燃機関１の回転速度、燃料噴射弁２１からの燃料噴射量及び燃料噴射時期、燃料噴射弁２１へ供給される燃料の圧力（燃圧）、ＥＧＲ率及び過給圧が用いられている。
【００４１】
加えて、本実施形態では、出力層（Ｌ＝４）は一つのノードのみを有し、このノードからは一つの出力パラメータの値（推定値）が出力される。図４に示した例では、出力パラメータとして、内燃機関１から排出された排気ガス中（すなわち、フィルタ４４に流入する前の排気ガス中）のＮＯｘ濃度が用いられている。
【００４２】
したがって、図４に示したニューラルネットワークでは、機関回転速度、燃料噴射量、燃料噴射時期、燃圧、ＥＧＲ率及び過給圧の現在の値が入力パラメータの値として入力されると、ＮＯｘ濃度の推定値（現在の推定値又は将来の推定値）が出力パラメータの値として出力される。
【００４３】
したがって、演算部８２は、内燃機関１の運転中において、上述したような入力パラメータの値が入力されると、ニューラルネットワークを用いたモデルを用いて、出力パラメータの値を算出する。具体的には、演算部８２は、演算部８２に入力されたパラメータの値をニューラルネットワークの入力層に入力すると共に、ニューラルネットワークの出力層から出力された出力パラメータの値を出力する。
【００４４】
演算部８２に入力される各入力パラメータの値は、パラメータ値取得部８１によって取得される。具体的には、機関回転速度は、クランク角センサ７９の出力に基づいてＥＣＵ６１において算出され、パラメータ値取得部８１はこのようにして算出された機関回転速度をＥＣＵ６１内から取得する。燃料噴射量及び燃料噴射時期は、ＥＣＵ６１から出力ポートを介して燃料噴射弁２１へ出力される指令値から把握できるため、パラメータ値取得部８１は燃料噴射弁２１への指令値に基づいて燃料噴射量及び燃料噴射時期を取得する。燃圧は、燃圧センサ７５によって検出されることから、パラメータ値取得部８１は、燃圧センサ７５の出力値に基づいて燃圧を取得する。
【００４５】
ＥＧＲ率は、直接計測することができないため、ＥＧＲ率に関連する各種パラメータの値から公知の手法で推定される。例えば、ＥＧＲ制御弁５２の開度、吸気マニホルド３１内の吸気ガスの圧力、排気マニホルド４１内の排気ガスの圧力等に基づいてＥＣＵ６１において推定される。パラメータ値取得部８１は、このようにして推定されたＥＧＲ率をＥＣＵ６１内から取得する。過給圧は、過給圧センサ７３によって検出されることから、パラメータ値取得部８１は、過給圧センサ７３の出力値に基づいて過給圧を取得する。
【００４６】
このようにしてパラメータ値取得部８１によって取得された各入力パラメータの現在の値は、演算部８２に入力され、その結果、出力パラメータであるＮＯｘ濃度の推定値が演算部８２から出力される。
【００４７】
また、このように構成されたニューラルネットワークの学習（すなわち、重みｗの値及びバイアスｂの値の学習）は、各車両に搭載される前に事前に行われる。ニューラルネットワークの学習を行うにあたっては、入力パラメータの実測値とこの入力パラメータの実測値に対応した出力パラメータの実測値（正解データ）を含む訓練データセットが多数作成される。このようにして作成された訓練データセットを用いて、上述した誤差逆伝搬法を用いてニューラルネットワーク内の重みｗ及びバイアスｂの値を繰り返し更新することによって、重みｗ及びバイアスｂの値が学習される。
【００４８】
このようにして事前に学習された重みｗ及びバイアスｂの値を用いたニューラルネットワークが車両に搭載される。したがって、車両の演算部８２では、事前に学習された学習済みモデルによってＮＯｘ濃度の推定値が算出されることになる。
【００４９】
このようにして学習された学習済みモデルを用いて出力パラメータであるＮＯｘ濃度の値を推定することにより、比較的高い精度でＮＯｘ濃度を推定することができる。図５は、上述したような手法にて実際に学習を行った学習済みモデルを用いて算出したＮＯｘ濃度の推定値と、ＮＯｘ濃度の実測値とのタイムチャートである。特に、図５は、内燃機関１の運転状態を適宜変化させたときの、一定期間（３００秒）に亘るＮＯｘ濃度の推定値及び実測値の推移を示している。
【００５０】
図５から、ニューラルネットワーク内の重みｗ及びバイアスｂの値を適切に学習することにより、学習済みモデルによる推定値が実測値に比較的近い値になっていることがわかる。図５に示した例では、ＮＯｘ濃度の推定値と実測値との相関係数は０．８２となった。したがって、出力パラメータであるＮＯｘ濃度を高い精度で推定することができる。
【００５１】
≪入力パラメータにおける異常≫
ところで、上述したニューラルネットワークへの一部の入力パラメータ（例えば、過給圧、機関回転速度）の値は、各種センサによって直接検出されるか、又は各種センサの値に基づいてＥＣＵ６１において算出される。したがって、入力パラメータの値を検出又は算出するのに用いられるセンサが故障して、そのセンサが異常な値を出力する場合には、入力パラメータの値にも異常が生じることになる。すなわち、入力パラメータの実際の値と、ニューラルネットワークへ入力されるその入力パラメータの値とに大きな誤差が生じることになる。
【００５２】
また、上述したニューラルネットワークへの一部の入力パラメータ（例えば、燃料噴射量、燃料噴射時期）の値は、各種アクチュエータの指令値である。したがって、アクチュエータが故障してアクチュエータが指令値通りに動作しないと、入力パラメータの値にも異常が生じることになる。すなわち、この場合にも、入力パラメータの実際の値と、ニューラルネットワークへ入力される入力パラメータの値とに大きな誤差が生じることになる。例えば、燃料噴射弁２１が故障していて燃料噴射弁２１からの実際の燃料噴射量が指令値と異なっていると、ニューラルネットワークへ入力される燃料噴射量が実際の燃料噴射量とは異なった異常な値になる。
【００５３】
このようにニューラルネットワークの一部の入力パラメータの値に異常が生じていると、出力パラメータの値を高い精度で推定することができなくなる。図６は、上述したような手法にて実際に学習を行った学習済みモデルを用いて算出したＮＯｘ濃度の推定値と、ＮＯｘ濃度の実測値との、図５と同様なタイムチャートである。図６は、過給圧センサ７３に異常が生じていて、ニューラルネットワークに入力される過給圧に実際の値から大きな誤差が生じている場合を示している。
【００５４】
図６から、過給圧センサ７３の出力値に異常が生じていて、ニューラルネットワークに入力される過給圧の値に異常が生じていると、学習済みモデルによる推定値が実測値とは乖離した値になっていることがわかる。図６に示した例では、ＮＯｘ濃度の推定値と実測値との相関係数は０．０８７となった。したがって、一部の入力パラメータの値に異常が生じていると、出力パラメータであるＮＯｘ濃度の推定精度が大幅に悪化することがわかる。
【００５５】
≪異常時の推定手法≫
そこで、本実施形態では、ニューラルネットワークへの入力パラメータの値を検出又は算出するのに用いられるセンサや、入力パラメータの値が指令値であるアクチュエータが故障した場合、すなわち内燃機関の運転状態を示す入力パラメータの値の検出値を検出又は推定するパラメータ値検出手段に異常が生じてこのパラメータ値検出手段によって検出又は推定される異常入力パラメータの値が実際の値から乖離しているときには、以下のような処理が行われる。すなわち、演算部８２には、異常入力パラメータの値として、異常が生じたパラメータ値検出手段とは別の代替手段によって推定された異常入力パラメータの値が入力される。加えて、学習部８４は、代替手段によって推定された異常入力パラメータの値と、異常入力パラメータ以外の入力パラメータの検出値と、出力パラメータの正解データとを含む訓練データセットに基づいて、モデルの学習を行う。
【００５６】
以下では、ニューラルネットワークの入力パラメータの一つである過給圧を検出する過給圧センサ７３に異常が生じて、過給圧センサ７３によって検出される過給圧の値が実際の値から乖離している場合を例にとって考える。過給圧センサ７３以外のパラメータ検出手段（例えば、燃圧センサ７５や燃料噴射弁２１）に異常がある場合についても同様である。
【００５７】
図７は、入力層（Ｌ＝１）の一つのノードｘ6へ入力されるパラメータの値の検出又は算出方法を示す図である。図７（Ａ）は、過給圧センサ７３が故障していないときに入力層のノードｘ6へ入力されるパラメータの値の検出方法を示している。図７（Ａ）に示したように、入力層のノードｘ6には、過給圧センサ７３によって検出された過給圧が、パラメータ値取得部８１を介して入力される（図７では、パラメータ値取得部８１が省略されている）。
【００５８】
しかしながら、過給圧センサ７３が故障したときには、図７（Ａ）に示したようにして過給圧センサ７３の出力値を入力層のノードｘ6へ入力すると、ＮＯｘ濃度を正確に推定することができない。このため、過給圧センサ７３とは別の代替手段によって入力層のノードｘ6へ入力されるパラメータの値が推定される。代替手段としては、例えば、図７（Ｂ）〜図７（Ｄ）に示したような手段が考えられる。
【００５９】
図７（Ｂ）〜図７（Ｄ）は、過給圧センサ７３が故障していて代替手段によって入力層のノードｘ6へ入力されるパラメータの値が推定される場合を示している。このうち、図７（Ｂ）は、過給圧マップを用いてノードｘ6へ入力されるパラメータの値を推定する場合を示している。ここで、過給圧は、燃料噴射量と機関回転速度とに応じて変化する。したがって、燃料噴射量と機関回転速度が分かれば、或る程度過給圧を予想することができる。
【００６０】
そこで、図７（Ｂ）に示した例では、燃料噴射量及び機関回転速度と過給圧との関係が予め実験的に又は計算によって求められ、この関係がマップとして記憶部６３に保存される。そして、過給圧センサ７３が故障したときには、検出又は算出された燃料噴射量及び機関回転速度に基づいて、マップを用いて過給圧の値が算出され、算出された値が入力層のノードｘ6に入力される。
【００６１】
図７（Ｃ）は、モデル式を用いてノードｘ6へ入力されるパラメータの値を推定する場合を示している。ここで、吸気マニホルド３１内の吸気ガスは気体の状態方程式に従うことから、吸気マニホルド３１内の圧力である過給圧Ｐは次式（８）によって表される。
Ｐ＝ｎＲＴ／Ｖ      …（８）
式（８）において、ｎは吸気マニホルド３１内の吸気ガスの物質量、Ｒは気体定数、Ｔは吸気マニホルド３１内の吸気ガスの温度（吸気温）、Ｖは吸気マニホルド３１内の容積をそれぞれ示している。気体定数Ｒ及び容積Ｖは一定であることから、過給圧Ｐは吸気ガスの温度Ｔ及び吸気ガスの物質量ｎに応じて変化することになる。
【００６２】
そこで、図７（Ｃ）に示した例では、記憶部６３には上記式（８）によって過給圧を算出するモデル式が記憶される。そして、過給圧センサ７３が故障したときには、このモデル式に物質量及び吸気温が代入されて、過給圧の値が算出される。物質量は、例えばエアフロメータ７１によって検出された吸入空気の流量、及びＥＧＲ制御弁の開度等に基づいて算出されたＥＧＲ率等に基づいて算出される。また、吸気温は、吸気温センサ７４によって検出される。このようにして算出された過給圧の値が入力層のノードｘ6に入力される。
【００６３】
図７（Ｄ）は、ニューラルネットワークを用いた過給圧推定モデルを用いてノードｘ6へ入力されるパラメータの値を推定する場合を示している。特に、図７（Ｄ）に示した過給圧推定モデルの入力パラメータは、燃料噴射弁２１からの燃料噴射量、機関回転速度、ＥＧＲ制御弁５２の開度、排気ターボチャージャ５の可変ノズルの開度及びスロットル弁３６の開度であり、出力パラメータは過給圧である。しかしながら、出力パラメータである過給圧に影響を与え得るパラメータであれば、上述した入力パラメータに加えて又は上述した入力パラメータに替えて、他のパラメータが過給圧推定モデルの入力パラメータとして用いられてもよい。
【００６４】
斯かる過給圧推定モデルは、各入力パラメータの値とこれに対応する出力パラメータの正解データを含む多数の訓練データセットを用いて、予め学習されている。学習済みのモデルである。この学習済みのモデルに、上述した各入力パラメータの値を入力すると、出力パラメータの値である過給圧が算出される。このようにした算出された過給圧の値が入力層のノードｘ6に入力される。
【００６５】
≪モデルの学習手法≫
ところで、上述した代替手段によって推定された過給圧の値は、過給圧センサ７３によって検出された過給圧の実測値とは必ずしも一致しない。したがって、代替手段によって推定された過給圧の値を入力パラメータの値として用いて、過給圧センサ７３によって検出された過給圧に基づいて学習されたモデルを用いてＮＯｘ濃度を算出すると、ＮＯｘ濃度の推定精度が悪化する。したがって、ＮＯｘ濃度を算出するモデルの入力パラメータの値を、過給圧センサ７３によって検出された値から、代替手段によって推定された値に変更する場合には、ＮＯｘ濃度を算出するモデルを再学習させる必要がある。
【００６６】
本実施形態では、学習済みモデルを作成する際に用いた訓練データセットに、代替手段によって推定された過給圧の値が加わった訓練データセットが記憶部６３に多数記憶されている。各訓練データセットは、全ての入力パラメータの値（過給圧センサ７３によって検出された過給圧の実測値及び代替手段によって推定された過給圧の値を含む）と、これら入力パラメータの値に対応する出力パラメータの値との関係を示している。したがって、各訓練データセットは、全ての入力パラメータの値と、入力パラメータの値をその値にしたときの出力パラメータの実測値（正解データ）とを含む。訓練データの作成は、内燃機関１を搭載した車両の出荷前に事前に行われる。
【００６７】
そして、過給圧センサ７３に異常が生じている場合には、ＮＯｘ濃度を算出するモデルに入力される過給圧の値が、過給圧センサ７３によって検出された値から代替手段によって推定された値に変更される。
【００６８】
学習部８４は、記憶部６３に記憶されている訓練データセットを用いて、代替手段によって推定された過給圧の値が入力パラメータとして入力されたときのモデルの学習を行う。具体的には、学習部８４は、記憶部６３に記憶されている訓練データセットを用いて、上述した誤差逆伝搬法によってニューラルネットワーク内の重みｗ及びバイアスｂの値を繰り返し更新する。演算部８２では、このように学習部８４において再学習されたモデルを用いて、代替手段によって推定された値を入力パラメータの値として入力して、ＮＯｘ濃度の推定値が算出される。
【００６９】
このように、本実施形態では、異常が生じた過給圧センサとは別の代替手段（過給圧マップ、モデル式、過給圧推定モデル、等）によって推定された過給圧が、ＮＯｘ濃度を推定するためのモデルに入力される。加えて、代替手段によって推定された過給圧に最適化されるようにモデルが再学習される。この結果、過給圧センサが故障した場合であっても、比較的正確にＮＯｘ濃度を推定することができるようになる。
【００７０】
なお、上述した例では、過給圧センサ７３が故障した場合を説明したが、上述したように、過給圧センサ７３以外のパラメータ検出手段（例えば、燃圧センサ７５や燃料噴射弁２１）に異常がある場合についても同様である。したがって、記憶部６３に記憶される各訓練データセットには、様々な入力パラメータについて、通常のセンサ等によって検出又は推定された値に加えて、代替手段によって推定された入力パラメータの値が含まれる。
【００７１】
≪フローチャート≫
図８は、本実施形態に係る内燃機関１の制御装置で行われるモデルの再学習制御の制御ルーチンを示すフローチャートである。図示した制御ルーチンは、一定時間間隔毎に実行される。
【００７２】
まず、ステップＳ１１では、故障フラグがＯＮになっているか否かが判定される。故障フラグは、各種センサやアクチュエータの故障に伴ってモデル（特に、モデルの重みやバイアス）を再学習しているときにＯＮとされ、それ以外のときにはＯＦＦとされるフラグである。ステップＳ１１において、故障フラグがＯＮになっていないと判定された場合には、制御ルーチンはステップＳ１２へと進む。
【００７３】
ステップＳ１２では、上記モデルの入力パラメータを検出又は算出するのに用いられる各種センサやアクチュエータのいずれか一つに新たな故障が発生したか否かが判定される。各種センサやアクチュエータの故障の検知は公知の方法で行われる。ステップＳ１２において、各種センサやアクチュエータに新たな故障は発生していないと判定された場合には制御ルーチンが終了せしめられる。一方、ステップＳ１２において、新たな故障が発生したと判定された場合には、制御ルーチンはステップＳ１３へと進む。ステップＳ１３では、故障フラグがＯＮにセットされる。次いで、ステップＳ１４では、故障したセンサやアクチュエータによって検出又は推定されていた入力パラメータを推定する代替手段が決定される。例えば、過給圧センサ７３が故障した場合には、代替手段として過給圧マップによる方法、モデル式による方法、過給圧推定モデルによる方法の中から選択される。なお、代替手段が一つしかない入力パラメータについては、ステップＳ１４はスキップされる。
【００７４】
故障フラグがＯＮにセットされると、次の制御ルーチンでは、制御ルーチンはステップＳ１１からステップＳ１５へと進む。ステップＳ１５では、代替手段に変更後、モデルの再学習が完了したか否かが判定される。ステップＳ１５においてモデルの再学習が完了していないと判定された場合には、制御ルーチンはステップＳ１６へと進む。ステップＳ１６では、上述したように、記憶部６３に記憶された訓練データセットを用いて、学習部８４において修正後モデルの学習が行われ、制御ルーチンが終了せしめられる。
【００７５】
その後、学習部８４におけるモデルの再学習が完了すると、次の制御ルーチンでは、制御ルーチンは、ステップＳ１５からステップＳ１７へと進む。ステップＳ１８では、故障フラグがＯＦＦにリセットされ、制御ルーチンが終了せしめられる。
【００７６】
＜第二実施形態＞
次に、第二実施形態に係る内燃機関の制御装置について説明する。第二実施形態に係る制御装置の構成及び制御は基本的に第一実施形態に係る制御装置の構成及び制御と同様である。以下では、第一実施形態に係る制御装置とは異なる部分を中心に説明する。
【００７７】
本実施形態では、入力パラメータの値の検出値を検出又は推定するパラメータ値検出手段に異常が生じてこのパラメータ値検出手段によって検出又は推定される異常入力パラメータの値が実際の値から乖離しているときには、以下のような処理が行われる。すなわち、演算部８２には、異常入力パラメータの値として、異常入力パラメータの実際の値に応じて変化する代替パラメータの値が入力される。加えて、学習部８４は、代替パラメータの値と、異常入力パラメータ以外の入力パラメータの検出値と、出力パラメータの正解データとを含む訓練データセットに基づいて、前記モデルの学習を行う。
【００７８】
以下では、第一実施形態と同様に、ニューラルネットワークの入力パラメータの一つである過給圧を検出する過給圧センサ７３に異常が生じて、過給圧センサ７３によって検出される過給圧の値が実際の値から乖離している場合を例にとって考える。過給圧センサ７３以外のパラメータ検出手段（例えば、燃圧センサ７５や燃料噴射弁２１）に異常がある場合についても同様である。
【００７９】
図９は、本実施形態の演算部８２において用いられるニューラルネットワークの一例を示す、図４と同様な図である。図９に示した例では、過給圧センサ７３に異常が生じていることから、過給圧センサ７３によって検出される過給圧が入力パラメータとして入力されていた入力層のノードｘ6には、過給圧の代わりに、代替パラメータとして吸気ガスの温度（吸気温）が入力される。吸気温は、気体の状態方程式からわかるように、過給圧が変化するとそれに伴って変化するため、過給圧の実際の値に応じて変化する代替パラメータであると言える。吸気温は、吸気温センサ７４によって検出され、検出された吸気温が入力層のノードｘ6に入力される。
【００８０】
ところで、上述した代替パラメータである吸気温の値は、過給圧の値とは一致しない。したがって、代替パラメータの値を入力パラメータの値として用いて、学習済みのモデルによりＮＯｘ濃度を算出すると、ＮＯｘ濃度の推定精度が悪化する。代替パラメータを用いる場合にも、ＮＯｘ濃度を算出するモデルを再学習させる必要がある。
【００８１】
本実施形態では、学習済みモデルを作成する際に用いた訓練データセットに、代替パラメータである吸気温の値が加わった訓練データセットが記憶部６３に多数記憶されている。各訓練データセットは、全ての入力パラメータの値（代替パラメータの値を含む）と、これら入力パラメータの値に対応する出力パラメータの値との関係を示している。したがって、各訓練データセットは、全ての入力パラメータの値と、入力パラメータの値をその値にしたときの出力パラメータの実測値（正解データ）とを含む。訓練データの作成は、内燃機関１を搭載した車両の出荷前に事前に行われる。
【００８２】
そして、過給圧センサ７３に異常が生じている場合には、一つの入力パラメータが、過給圧から吸気温に変更される。したがって、入力層のノードｘ６には、過給圧センサ７３によって検出された値の代わりに、吸気温センサ７４によって検出された値が入力されることになる。
【００８３】
学習部８４は、記憶部６３に記憶されている訓練データセットを用いて、過給圧の代わりに代替パラメータである吸気温が入力されたときのモデルの学習を行う。具体的には、学習部８４は、記憶部６３に記憶されている訓練データセットを用いて、上述した誤差逆伝搬法によってニューラルネットワーク内の重みｗ及びバイアスｂの値を繰り返し更新する。演算部８２では、このように学習部８４において再学習されたモデルを用いて、代替パラメータの値を入力パラメータの値として入力して、ＮＯｘ濃度の推定値が算出される。
【００８４】
このように、本実施形態では、異常が生じたセンサ等によって検出又は推定されるパラメータの代わりに、代替パラメータの値がモデルに入力される。加えて、入力パラメータの一つを代替パラメータした状態に最適化されるようにモデルが再学習される。特に、本実施形態では、代替パラメータとして、もとの入力パラメータと相関のあるパラメータが用いられる。この結果、過給圧センサが故障した場合であっても、比較的正確にＮＯｘ濃度を推定することができるようになる。
【００８５】
図１０は、本実施形態に係る内燃機関１の制御装置で行われるモデルの再学習制御の制御ルーチンを示すフローチャートである。図示した制御ルーチンは、一定時間間隔毎に実行される。図１０のステップＳ２１〜Ｓ２３及びＳ２５〜Ｓ２７はそれぞれ、図８のステップＳ１１〜Ｓ１３及びＳ１５〜Ｓ１７と同様であるため、説明を省略する。
【００８６】
ステップＳ２３で故障フラグがＯＮにセットされると、次いで、ステップＳ２４では、故障したセンサやアクチュエータによって検出又は推定されていた入力パラメータの代わりに用いられる代替パラメータが決定される。例えば、過給圧センサ７３が故障した場合には、過給圧の代替パラメータとして吸気温を用いることが決定される。
【００８７】
＜第三実施形態＞
次に、第三実施形態に係る内燃機関の制御装置について説明する。第三実施形態に係る制御装置の構成及び制御は基本的に第一実施形態及び第二実施形態に係る制御装置の構成及び制御と同様である。以下では、第一実施形態及び第二実施形態に係る制御装置とは異なる部分を中心に説明する。
【００８８】
上記第一実施形態の制御装置では、モデルの再学習を行うための訓練データセットは、予め記憶部６３に記憶されていた。しかしながら、モデルの再学習を適切に行うためには、非常に多くの訓練データセットが必要になることから、訓練データセットを記憶させるために記憶部６３における記憶容量を大きくする必要があった。
【００８９】
これに対して本実施形態に係る制御装置は、出力パラメータの値を検出又は推定する出力パラメータ検出装置を備える。学習部８４は、パラメータ値取得部８１によって取得された入力パラメータ（代替パラメータを含む）の値と、出力パラメータ検出装置によって検出又は推定された出力パラメータの値とを訓練データセットとして、モデルの再学習を行うようにしている。
【００９０】
図１１は、第三実施形態に係る内燃機関１の概略的な構成図である。図１１に示したように、本実施形態に係る内燃機関１では、排気マニホルド４１又は排気管４２には、機関本体１０から排出された排気ガス中のＮＯｘ濃度を検出するＮＯｘセンサ７６が設けられている。このＮＯｘセンサ７６の出力は、対応するＡＤ変換器６８を介して入力ポート６６に入力される。上述したように、ＮＯｘ濃度は演算部８２における出力パラメータであることから、ＮＯｘセンサ７６は出力パラメータの値を検出する出力パラメータ検出装置ということができる。
【００９１】
パラメータ値取得部８１は、このようにして検出又は推定された出力パラメータの実測値を取得する。具体的には、パラメータ値取得部８１は、ＥＣＵ６１の入力ポート６６を介して、ＮＯｘセンサ７６の出力を、出力パラメータの実測値として取得する。したがって、本実施形態では、パラメータ値取得部８１は、出力パラメータの実測値を取得する出力パラメータ値取得部としても機能する。
【００９２】
学習部８４では、このようにして検出されたＮＯｘ濃度の実測値と、このＮＯｘ濃度の実測値が検出されたときの入力パラメータの実測値とから、訓練データセットが作成される。学習部８４では、内燃機関１の運転状態が変化する毎に、訓練データセットが作成される。したがって、学習部８４では、多数の訓練データセットが作成される。
【００９３】
そして、学習部８４では、このようにして作成された訓練データセットを用いて、修正後モデルの学習が行われる。具体的には、学習部８４は、このようにして作成された訓練データセットを用いて、上述した誤差逆伝搬法によってニューラルネットワーク内の重みｗ及びバイアスｂの値を繰り返し更新する。こうして、ニューラルネットワーク内の重みｗ及びバイアスｂの値が学習される。演算部８２では、このように学習部８４において学習された修正後モデルを用いて、ＮＯｘ濃度の推定値が算出される。
【００９４】
本実施形態では、出力パラメータの値を検出又は推定する出力パラメータ検出装置によって検出又は推定された値を用いて訓練データセットが制御装置において作成される。したがって、本実施形態によれば、記憶部６３内に訓練データセットを記憶させておく必要がなく、記憶部６３における記憶容量を小さくすることができる。
【００９５】
なお、本実施形態におけるモデルでは、入力パラメータである燃料噴射量や燃料噴射時期として、将来の目標値が入力される。したがって、本実施形態におけるモデルからは、これら入力パラメータの値を斯かる目標値に設定したときにおける出力パラメータであるＮＯｘ濃度の予想値が出力される。制御装置では、このように出力されたＮＯｘ濃度の予想値に基づいて、内燃機関の制御を行う。具体的には、例えば、ＮＯｘ濃度の予想値が予め定められた閾値以上であった場合には、燃料噴射時期の目標値を遅角させること等が考えられる。
【００９６】
＜第四実施形態＞
次に、図１２を参照して第四実施形態に係る内燃機関の制御システムについて説明する。第四実施形態に係る制御システムに用いられる内燃機関の制御装置の構成及び制御は、基本的に第一実施形態及び第二実施形態に係る制御装置の構成及び制御と同様である。したがって、以下では、第一実施形態及び第二実施形態に係る制御装置とは異なる部分を中心に説明する。
【００９７】
上記第一実施形態及び第二実施形態に係る制御装置では、ＥＣＵ６１の学習部８４においてモデルの再学習が行われている。しかしながら、モデルの再学習にあたっては、上述した誤差逆伝搬法を用いて学習が行われるため、各訓練データセット毎に誤差関数を各重みや各バイアスで微分した勾配を繰り返し算出すると共に、多数の訓練データセットについて斯かる操作を繰り返し行う必要がある。したがって、制御装置において学習を行うためには、制御装置に高性能のＣＰＵ等を用いることが必要になる。そこで、本実施形態では、車両の外部に設けられたサーバにおいて、モデルの再学習を行うようにしている。
【００９８】
図１２は、本実施形態に係る内燃機関の制御システムを概略的に示す図である。図１２に示したように、各車両１００の内燃機関の制御装置６０は、ＥＣＵ６１に接続された通信部９１を備える。通信部９１は、ＥＣＵ６１の入出力ポートに接続され、よってＥＣＵ６１へ入力信号を入力することもできるし、ＥＣＵ６１からの出力信号を受け取ることもできる。車両１００の通信部９１は、車両１００の外部に設けられたサーバ２００と通信を行うように構成される。
【００９９】
車両１００の外部に設けられたサーバ２００は、通信部２１０と、処理部２２０と、記憶部２３０とを備える。これら通信部２１０、処理部２２０及び記憶部２３０は、相互に接続されており、よってこれらの間でデータを送受信することができる。
【０１００】
通信部２１０は、各車両１００の通信部９１と通信し、各車両１００の通信部９１との間でデータの送受信を行う。これら車両１００の通信部９１とサーバ２００の通信部２１０との間の通信は、各種通信規格に準拠した無線通信によって行われる。
【０１０１】
処理部２２０は、図１２に示したように、機能ブロックとして、学習部２２２を備える。学習部２２２は、車両１００の演算部８２において出力パラメータを算出する際に用いられる学習済みモデルの再学習を行う。また、サーバ２００の記憶部２３０には、本実施形態では、多数の訓練データセットが記憶されている。
【０１０２】
本実施形態では、センサやアクチュエータに異常が生じている場合には、上記第一実施形態と同様に、入力パラメータの値が代替手段によって推定されるか又は代替パラメータの値が入力される。また、車両１００のＥＣＵ６１から通信部９１を介して、サーバ２００の通信部２１０へ、学習済みモデルの再学習が依頼される。サーバ２００の処理部２２０では、各車両１００のＥＣＵ６１からの依頼を受けて、学習済みモデルの再学習が行われる。
【０１０３】
処理部２２０の学習部２２２は、記憶部６３に記憶されている訓練データセットを用いてモデルの再学習を行う。具体的には、学習部２２２は、サーバ２００の記憶部２３０に記憶されている訓練データセットを用いて、上述した誤差逆伝搬法によってニューラルネットワーク内の重みｗ及びバイアスｂの値を繰り返し更新する。
【０１０４】
学習部２２２において修正後モデルの再学習が完了すると、このようにして再学習されたモデル（具体的には、このようにした再学習されたモデルの重みｗやバイアスｂのデータ）が、サーバ２００の通信部２１０及び各車両の通信部９１を介して、各車両１００のＥＣＵ６１へと送信される。各車両１００のＥＣＵ６１の演算部８２では、このようにサーバ２００の学習部２２２において再学習されたモデルを用いて、出力パラメータの値（本実施形態では、ＮＯｘ濃度の推定値）が算出される。
【０１０５】
本実施形態では、修正後モデルの学習は、サーバ２００において行われる。したがって、各車両１００のＥＣＵ６１では、モデルの再学習は行われず、よって各車両１００の制御装置における計算負荷を低減させることができ、高性能なＣＰＵ等の必要性を低減することができる。
【０１０６】
＜第五実施形態＞
次に、図１２を参照して第五実施形態に係る内燃機関の制御システムについて説明する。第五実施形態に係る制御システムに用いられる内燃機関の制御装置の構成及び制御は、基本的に第三実施形態に係る制御装置の構成及び制御と同様であり、また第五実施形態に係る制御システムの構成及び制御は第四実施形態に係る制御システムの構成及び制御と同様である。したがって、以下では、第三実施形態及び第四実施形態に係る制御装置とは異なる部分を中心に説明する。
【０１０７】
本実施形態に係る制御システムでは、第四実施形態の制御システムと同様に、修正後モデルの学習がサーバ２００において行われる。加えて、本実施形態では、第三実施形態の制御装置と同様に、出力パラメータの値を検出又は推定する出力パラメータ検出装置によって検出又は推定された実測値を用いて訓練データセットが作成される。
【０１０８】
図１３は、本実施形態に係る内燃機関の制御システムを概略的に示す図である。図１３に示したように、処理部２２０は、機能ブロックとして、パラメータ値取得部２２１と、学習部２２２とを備える。サーバ２００のパラメータ値取得部２２１は、車両１００の通信部９１及びサーバ２００の通信部２１０を介して、車両１００のＥＣＵ６１から、内燃機関１の運転状態を示す入力パラメータの値を取得する。加えて、サーバ２００のパラメータ値取得部２２１は、通信部９１、２１０を介して、車両１００のＥＣＵ６１から、出力パラメータ検出装置によって検出又は推定された出力パラメータの実測値（例えば、ＮＯｘセンサ７６によるＮＯｘ濃度の実測値）を取得する。
【０１０９】
サーバ２００の学習部２２２では、このようにしてパラメータ値取得部２２１によって取得された入力パラメータの実測値と、これに対応する出力パラメータの実測値とから、訓練データセットが作成される。サーバ２００の学習部２２２では、内燃機関１の異なる運転状態毎に、訓練データセットが作成される。したがって、サーバ２００の学習部２２２では、多数の訓練データセットが作成される。そして、サーバ２００の学習部２２２では、このようにして作成された訓練データセットを用いて、修正後モデルの学習が行われる。
【０１１０】
学習部２２２においてモデルの再学習が完了すると、このようにして再学習されたモデルが、通信部９１、２１０を介して、各車両１００のＥＣＵ６１へと送信される。各車両１００のＥＣＵ６１の演算部８２では、このようにサーバ２００の学習部２２２において再学習されたモデルを用いて、出力パラメータの値が算出される。
【符号の説明】
【０１１１】
１    内燃機関
１０    機関本体
２１    燃料噴射弁
６０    制御装置
６１    ＥＣＵ
６３    記憶部
６５    処理部
７３    過給圧センサ
７４    吸気温センサ
７５    燃圧センサ
７６    ＮＯｘセンサ
７９    クランク角センサ
８１    パラメータ値取得部
８２    演算部
８３    制御部
８４    学習部
【図１】
2020045821.tif 000011
【図２】
2020045821.tif 000012
【図３】
2020045821.tif 000013
【図４】
2020045821.tif 000014
【図５】
2020045821.tif 000015
【図６】
2020045821.tif 000016
【図７】
2020045821.tif 000017
【図８】
2020045821.tif 000018
【図９】
2020045821.tif 000019
【図１０】
2020045821.tif 000020
【図１１】
2020045821.tif 000021
【図１２】
2020045821.tif 000022
【図１３】
2020045821.tif 000023