(57)【要約】【課題】プラントが非線形系であっても、複数の制御入力および複数の制御量の間に存在する相互干渉を適切に抑制でき、それにより複数の制御量を適切に制御することができるとともに、容易に設計することができるプラントの制御装置を提供する。【解決手段】制御装置では、相互干渉を抑制するように複数の制御入力ＴＨ＿ｃｍｄ、Ｌｉｆｔ＿ｃｍｄをそれぞれ補正するための複数の干渉抑制パラメータＬｉｆｔ＿ｄｃ＿ｃｍｄ、ＴＨ＿ｄｃ＿ｃｍｄの各々の算出が、複数の制御入力のうちの、算出される干渉抑制パラメータで補正される制御入力以外の制御入力を入力とし、当該干渉抑制パラメータを出力として構築されたニューラルネットワークを用いて行われる。【選択図】図４
2012102629.tif 000002
【特許請求の範囲】
【請求項１】
複数の制御入力によって複数の制御量をそれぞれ制御するとともに、前記複数の制御入力および前記複数の制御量の間に相互干渉が存在するプラントの制御装置であって、
前記複数の制御入力をそれぞれ算出する制御入力算出手段と、
前記相互干渉を抑制するように前記複数の制御入力をそれぞれ補正するための複数の干渉抑制パラメータを算出し、当該複数の干渉抑制パラメータの各々の算出を、前記複数の制御入力のうちの、当該算出される干渉抑制パラメータで補正される制御入力以外の制御入力を入力とし、当該干渉抑制パラメータを出力として構築されたニューラルネットワークを用いて行う干渉抑制パラメータ算出手段と、
前記制御入力算出手段により算出された制御入力を、前記算出された干渉抑制パラメータに基づいて補正する補正手段と、
を備えることを特徴とするプラントの制御装置。
【請求項２】
前記複数の制御量のそれぞれの目標となる複数の目標値を設定する目標値設定手段をさらに備え、
前記制御入力算出手段は、前記複数の制御量が前記設定された複数の目標値にそれぞれなるように、前記複数の制御入力を算出し、
前記複数の制御量をそれぞれ検出する制御量検出手段と、
前記干渉抑制パラメータで補正された制御入力により制御された前記複数の制御量の各々が対応する目標値になるように、前記検出された当該制御量と当該目標値との比較結果に基づく報酬を用いた強化学習によって、前記ニューラルネットワークに用いられるパラメータであるニューロンパラメータを学習する学習手段をさらに備えることを特徴とする、請求項１に記載のプラントの制御装置。
【請求項３】
前記学習手段は、前記ニューロンパラメータの学習を前記ニューラルネットワークごとに行い、
当該ニューロンパラメータを学習する前に、前記制御入力算出手段は、前記複数の制御入力のうちの、当該ニューロンパラメータが学習されるニューラルネットワークに対応する干渉抑制パラメータで補正される制御入力である学習対象用制御入力を、前記検出された、対応する制御量が前記目標値になるように、所定のフィードバック制御アルゴリズムによって算出するとともに、前記複数の制御入力のうちの前記学習対象用制御入力以外の制御入力である非学習対象用制御入力を、一定の第１所定値に保持し、前記補正手段は、前記複数の制御入力の補正を停止し、
当該ニューロンパラメータの学習中、前記制御入力算出手段は、前記学習対象用制御入力を、当該ニューロンパラメータの学習の開始直前に算出された値に保持するとともに、前記非学習対象用制御入力を前記第１所定値とは異なる一定の第２所定値に保持し、前記補正手段は、前記学習対象用制御入力を、当該ニューロンパラメータが学習される前記ニューラルネットワークに対応する前記干渉抑制パラメータに基づいて補正するとともに、当該ニューラルネットワーク以外のニューラルネットワークに対応する前記干渉抑制パラメータに基づく補正を停止し、前記学習手段は、前記強化学習を、前記補正された前記学習対象用制御入力により制御された制御量が当該ニューロンパラメータの学習の開始直前に設定された前記目標値になるように、検出された当該制御量と当該目標値との比較結果に基づく報酬を用いて行うことを特徴とする、請求項２に記載のプラントの制御装置。
【請求項４】
前記プラントは、スロットル弁の開度を変更するためのスロットル弁機構と、吸気弁のリフトを変更するための可変バルブリフト機構とを備える内燃機関を含み、
前記複数の制御入力は、前記スロットル弁の開度を制御するための開度制御パラメータおよび前記吸気弁のリフトを制御するためのリフト制御パラメータであり、
前記複数の制御量は、前記内燃機関の吸気通路内の圧力および吸入空気量であることを特徴とする、請求項１ないし３のいずれかに記載のプラントの制御装置。
【請求項５】
前記プラントは、既燃ガスの一部を第１ＥＧＲガスとして吸気通路に還流させる第１ＥＧＲ装置と、既燃ガスの一部を第２ＥＧＲガスとして、前記吸気通路の前記第１ＥＧＲ装置よりも気筒側の位置に還流させる第２ＥＧＲ装置とを備える内燃機関を含み、
前記複数の制御入力は、前記第１ＥＧＲ装置を制御するための第１ＥＧＲ制御パラメータおよび前記第２ＥＧＲ装置を制御するための第２ＥＧＲ制御パラメータであり、
前記複数の制御量は、前記第１ＥＧＲガスの流量および前記第２ＥＧＲガスの流量であることを特徴とする、請求項１ないし３のいずれかに記載のプラントの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の制御入力によって複数の制御量をそれぞれ制御するとともに、複数の制御入力および複数の制御量の間に相互干渉が存在するプラントの制御装置に関する。
【背景技術】
【０００２】
従来、この種の制御装置として、例えば特許文献１に開示されたものが知られている。この制御装置が適用された内燃機関は、吸気弁のリフトを変更可能に構成されている。また、従来の制御装置では、吸気通路に設けられたスロットル弁の開度をその目標開度に制御することによって、吸気通路内の圧力（以下「吸気圧」という）が制御されるとともに、吸気弁のリフトをその目標リフトに制御することによって、内燃機関に吸入される吸入空気量が制御される。この場合、スロットル弁の開度の制御によって、吸気圧だけでなく、吸入空気量も変化し、また、吸気弁のリフトの制御によって、吸入空気量だけでなく、吸気圧も変化する。このことから明らかなように、制御入力としての目標開度および目標リフト、ならびに、制御量としての吸気圧および吸入空気量の間には、相互干渉が存在する。
【０００３】
このため、従来の制御装置は、上記のような相互干渉を抑制するための非干渉化コントローラを有しており、また、従来の制御装置では、非干渉化制御則（クロスコントローラ）に基づいて、非干渉化コントローラと内燃機関を組み合わせた系が、相互干渉のない線形な仮想プラントとしてモデル化される。さらに、それにより得られたモデル式に基づいて、スロットル弁の目標開度および吸気弁の目標リフトが、相互干渉を抑制可能な非干渉化入力として算出される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１３２４２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したように、従来の制御装置では、非干渉化コントローラと内燃機関を組み合わせた系が、非干渉化制御則に基づいて、相互干渉のない線形な仮想プラントとしてモデル化される。しかし、内燃機関は非線形系であるので、そのような手法でモデル化するのは困難である。また、この従来の制御装置を、内燃機関よりもさらに非線形性が強いプラントに適用した場合には、モデル化を行うことができず、その結果、相互干渉を抑制できないおそれがある。さらに、制御入力および制御量が異なれば、相互干渉の態様や度合も異なるので、モデル式もまた異なる。したがって、そのように相互干渉の態様などが互いに異なる複数の制御入力および複数の制御量ごとに、モデル式を非干渉化制御則に基づいて始めから設定しなければならず、装置の設計が非常に煩雑になってしまう。以上の点において、従来の制御装置には改善の余地がある。
【０００６】
本発明は、以上のような課題を解決するためになされたものであり、プラントが非線形系であっても、複数の制御入力および複数の制御量の間に存在する相互干渉を適切に抑制でき、それにより複数の制御量を適切に制御することができるとともに、容易に設計することができるプラントの制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために、請求項１に係る発明は、複数の制御入力（実施形態における（以下、本項において同じ）目標スロットル弁開度ＴＨ＿ｃｍｄ、目標バルブリフトＬｉｆｔ＿ｃｍｄ、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄ、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ）によって複数の制御量（吸気圧ＰＢａ、吸入空気量Ｇｃｙｌａ、低圧ＥＧＲガス流量ＬＰＥＧＲ、高圧ＥＧＲガス流量ＨＰＥＧＲ）をそれぞれ制御するとともに、複数の制御入力および複数の制御量の間に相互干渉が存在するプラント５１、１１１の制御装置１、７１であって、複数の制御入力をそれぞれ算出する制御入力算出手段（ＥＣＵ２、７２、第１コントローラ４３、１０３および第２コントローラ４４、１０４）と、相互干渉を抑制するように複数の制御入力をそれぞれ補正するための複数の干渉抑制パラメータ（第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄ、ＨＰＴＨ＿ｄｃ＿ｃｍｄ、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄ、ＬＰＴＨ＿ｄｃ＿ｃｍｄ）を算出し、複数の干渉抑制パラメータの各々の算出を、複数の制御入力のうちの、算出される干渉抑制パラメータで補正される制御入力以外の制御入力を入力とし、当該干渉抑制パラメータを出力として構築されたニューラルネットワークを用いて行う干渉抑制パラメータ算出手段（ＥＣＵ２、７２、第１干渉抑制値算出部４５、１０５および第２干渉抑制値算出部４６、１０６）と、制御入力算出手段により算出された制御入力を、算出された干渉抑制パラメータに基づいて補正する補正手段（ＥＣＵ２、７２、第１加算器４７、１０７、第２加算器４８、１０８）と、を備えることを特徴とする。
【０００８】
この構成によれば、複数の制御入力および複数の制御量の間で相互干渉が存在し、これらの複数の制御入力が、制御入力算出手段によって算出される。また、相互干渉を抑制するように複数の制御入力をそれぞれ補正するための複数の干渉抑制パラメータが、干渉抑制パラメータ算出手段によって算出されるとともに、算出された干渉抑制パラメータに基づき、制御入力が、補正手段によって補正される。
【０００９】
さらに、これらの複数の干渉抑制パラメータの各々の算出は、複数の制御入力のうちの、算出される干渉抑制パラメータで補正される制御入力以外の制御入力（以下「干渉対象制御入力」という）を入力とし、当該干渉抑制パラメータを出力として構築されたニューラルネットワークを用いて行われる。これにより、複数の制御入力のうちの干渉対象制御入力に応じて、すなわち、干渉抑制パラメータで補正される制御入力と干渉する制御入力のすべてに応じて、干渉抑制パラメータが算出されるので、制御入力を、相互干渉を抑制するように適切に補正することができる。
【００１０】
また、ニューラルネットワークは、非線形系を適切かつ容易にモデル化できるという特性を有するので、プラントが強い非線形性を有する系であっても、干渉対象制御入力を入力とし干渉抑制パラメータを出力とするニューラルネットワークを、適切かつ容易に構築することができる。以上により、本発明によれば、プラントが非線形系であっても、複数の制御入力および複数の制御量の間に存在する相互干渉を適切に抑制でき、それにより複数の制御量を適切に制御することができるとともに、制御装置を容易に設計することができる。
【００１１】
請求項２に係る発明は、請求項１に記載のプラント５１、１１１の制御装置１、７１において、複数の制御量のそれぞれの目標となる複数の目標値（目標吸気圧ＰＢ＿ｃｍｄ、目標吸気量Ｇｃｙｌ＿ｃｍｄ、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄ、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄ）を設定する目標値設定手段（ＥＣＵ２、７２、目標値算出部４１、１０１）をさらに備え、制御入力算出手段は、複数の制御量が設定された複数の目標値にそれぞれなるように、複数の制御入力を算出し、複数の制御量をそれぞれ検出する制御量検出手段（エアフローセンサ２４、吸気圧センサ２５、吸気温センサ２６、排気マニホルド圧センサ２８、排気マニホルド温センサ２９、吸気チャンバ圧センサ３１、排気圧センサ３４、排気温センサ３５、ＬＰＥＧＲ開度センサ３６、ＨＰＥＧＲ開度センサ３７、ＥＣＵ２、７２）と、干渉抑制パラメータで補正された制御入力により制御された複数の制御量の各々が対応する目標値になるように、検出された当該制御量と当該目標値との比較結果に基づく報酬（報酬値Ｒｗ＿ｇｃｙｌ、報酬値Ｒｗ＿ｐｂ、報酬値Ｒｗ＿ｈｐ、報酬値Ｒｗ＿ｌｐ）を用いた強化学習によって、ニューラルネットワークに用いられるパラメータであるニューロンパラメータ（重み係数ωａ、ωｂ、ωｃおよびωｄ）を学習する学習手段（ＥＣＵ２、７２、学習部６１、１２１）をさらに備えることを特徴とする。
【００１２】
この構成によれば、複数の制御量のそれぞれの目標となる複数の目標値が、目標値設定手段によって設定されるとともに、複数の制御量が設定された複数の目標値にそれぞれなるように、複数の制御入力が算出される。これにより、複数の制御量が、複数の目標値にそれぞれなるように制御される。
【００１３】
また、干渉抑制パラメータで補正された制御入力により制御された複数の制御量の各々が対応する目標値になるように、ニューラルネットワークに用いられるパラメータであるニューロンパラメータが、学習手段によって、検出された制御量と目標値との比較結果に基づく報酬を用いた強化学習により学習される。このように学習されたニューラルネットワークを用いて算出された干渉抑制パラメータに基づいて制御入力を補正するので、相互干渉をより適切に抑制することができる。
【００１４】
さらに、ニューロンパラメータを学習する学習手法として、強化学習が用いられる。強化学習は、報酬を与えておけば、ニューロンパラメータを最適な値に自動的に学習するという特性を有しており、誤差逆伝播法（バックプロパゲーション）と異なり、教師信号を設定する必要がない。したがって、制御装置をより容易に設計することができる。同じ理由により、相互干渉の態様が互いに異なる複数の制御入力および複数の制御量ごとにニューラルネットワークを構築する場合でも、前述した従来の場合と異なり、モデル式を始めから設定する必要がなく、この構築を容易に行うことができる。したがって、この場合にも、制御装置を容易に設計することができる。
【００１５】
なお、特許請求の範囲および本明細書における「検出」には、センサなどによる直接的な検出に加え、演算による算出や推定を含むものとする。
【００１６】
請求項３に係る発明は、請求項２に記載のプラント５１、１１１の制御装置１、７１において、学習手段は、ニューロンパラメータの学習をニューラルネットワークごとに行い、当該ニューロンパラメータを学習する前に、制御入力算出手段は、複数の制御入力のうちの、当該ニューロンパラメータが学習されるニューラルネットワークに対応する干渉抑制パラメータで補正される制御入力である学習対象用制御入力を、検出された、対応する制御量が目標値になるように、所定のフィードバック制御アルゴリズムによって算出する（図１０のステップ７、８、図１３のステップ４７、４８、図２４のステップ８７、８８、図２７のステップ１２７、１２８）とともに、複数の制御入力のうちの学習対象用制御入力以外の制御入力である非学習対象用制御入力を、一定の第１所定値ＴＨＲＥＦ１、ＬｉｆｔＲＥＦ１、ＬＰＴＨＲＥＦ１、ＨＰＴＨＲＥＦ１に保持し（図１０のステップ６、図１３のステップ４６、図２４のステップ８６、図２７のステップ１２６）、補正手段は、複数の制御入力の補正を停止し（図１０のステップ６、８、図１３のステップ４６、４８、図２４のステップ８６、８８、図２７のステップ１２６、１２８）、当該ニューロンパラメータの学習中、制御入力算出手段は、学習対象用制御入力を、当該ニューロンパラメータの学習の開始直前に算出された値（学習用目標リフトＬｉｆｔ＿ｃｍｄＧ、学習用目標開度ＴＨ＿ｃｍｄＧ、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧ、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧ）に保持する（図１０のステップ９、図１１のステップ２５、図１３のステップ４９、図１４のステップ６５、図２４のステップ８９、図２５のステップ１０５、図２７のステップ１２９、図２８のステップ１４５）とともに、非学習対象用制御入力を第１所定値ＴＨＲＥＦ１、ＬｉｆｔＲＥＦ１、ＬＰＴＨＲＥＦ１、ＨＰＴＨＲＥＦ１とは異なる一定の第２所定値ＴＨＲＥＦ２、ＬｉｆｔＲＥＦ２、ＬＰＴＨＲＥＦ２、ＨＰＴＨＲＥＦ２に保持し（図１１のステップ１５、１６、図１４のステップ５５、５６、図２５のステップ９５、９６、図２８のステップ１３５、１３６）、補正手段は、学習対象用制御入力を、当該ニューロンパラメータが学習されるニューラルネットワークに対応する干渉抑制パラメータに基づいて補正する（図１１のステップ２６、２７、図１４のステップ６６、６７、図２５のステップ１０６、１０７、図２８のステップ１４６、１４７）とともに、当該ニューラルネットワーク以外のニューラルネットワークに対応する干渉抑制パラメータに基づく補正を停止し（図１１のステップ１６、図１４のステップ５６、図２５のステップ９６、図２８のステップ１３６）、学習手段は、強化学習を、補正された学習対象用制御入力により制御された制御量が当該ニューロンパラメータの学習の開始直前に設定された目標値（学習用目標吸気量Ｔｇｔ＿ｇｃｙｌ、学習用目標吸気圧Ｔｇｔ＿ｐｂ、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒ、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒ）になるように、検出された当該制御量と当該目標値との比較結果に基づく報酬を用いて行う（図１１のステップ１９、２２〜２４、２８Ａ、図１４のステップ５９、６２〜６４、６８Ａ、図２５のステップ９９、１０２〜１０４、１０８Ａ、図２８のステップ１３９、１４２〜１４４、１４８Ａ）ことを特徴とする。
【００１７】
この構成によれば、ニューロンパラメータの学習が、ニューラルネットワークごとに行われる。また、ニューロンパラメータを学習する前に、複数の制御入力のうちの、ニューロンパラメータが学習されるニューラルネットワーク（以下「学習対象ニューラルネットワーク」という）に対応する干渉抑制パラメータで補正される制御入力である学習対象用制御入力が、検出された、対応する制御量（以下「学習対象用制御量」という）がその目標値になるように、所定のフィードバック制御アルゴリズムによって算出される。さらに、複数の制御入力のうちの学習対象用制御入力以外の制御入力である非学習対象用制御入力が、一定の第１所定値に保持されるとともに、干渉抑制パラメータに基づく複数の制御入力の補正が停止される。これにより、非学習対象用制御入力に対応する制御量（以下「非学習対象用制御量」という）が、第１所定値に対応した一定値に保持される。また、学習対象用制御量は、上記のように算出された学習対象用制御入力により制御されることによって、目標値に収束した状態に保持される。
【００１８】
そして、ニューロンパラメータの学習が開始されると、この学習中、非学習対象用制御入力が、第１所定値とは異なる一定の第２所定値に保持されるとともに、学習対象用ニューラルネットワーク以外のニューラルネットワークに対応する干渉抑制パラメータに基づく補正が停止される。それに加え、学習対象用制御入力が、上記のフィードバック制御アルゴリズムによって算出されずに、学習の開始直前に算出された値に保持される。以上により、学習の開始時、学習の開始直前に設定された目標値に収束した状態に保持されていた学習対象用制御量は、この目標値からずれるようになる。また、以上の動作から明らかなように、学習の開始時における学習対象用制御量と目標値との比較結果は、非学習対象用制御入力が干渉することによる学習対象用制御量の変動分を良好に表す。
【００１９】
さらに、ニューロンパラメータの学習中、学習対象用制御入力が、対応する干渉抑制パラメータに基づいて補正されるとともに、補正された学習対象用制御入力により制御された学習対象用制御量が学習の開始直前に設定された目標値になるように、この目標値と、検出された学習対象用制御量との比較結果に基づく報酬を用いて、ニューロンパラメータの強化学習が行われる。上述したように、学習の開始時における学習対象用制御量と目標値との比較結果は、非学習対象用制御入力が干渉することによる学習対象用制御量の変動分を良好に表すので、学習の開始時における目標値とそのときの学習対象用制御量との比較結果に基づく報酬を用いて上記のように学習を行うことにより、ニューロンパラメータを適切に学習することができる。
【００２０】
請求項４に係る発明は、請求項１ないし３のいずれかに記載のプラント５１の制御装置１において、プラント５１は、スロットル弁１５の開度（スロットル弁開度ＴＨ）を変更するためのスロットル弁機構（ＴＨアクチュエータ１５ａ）と、吸気弁５のリフト（バルブリフトＬｉｆｔ）を変更するための可変バルブリフト機構１４とを備える内燃機関３を含み、複数の制御入力は、スロットル弁１５の開度を制御するための開度制御パラメータ（目標スロットル弁開度ＴＨ＿ｃｍｄ）および吸気弁５のリフトを制御するためのリフト制御パラメータ（目標バルブリフトＬｉｆｔ＿ｃｍｄ）であり、複数の制御量は、内燃機関３の吸気通路４内の圧力（吸気圧ＰＢａ）および吸入空気量Ｇｃｙｌａであることを特徴とする。
【００２１】
この構成によれば、プラントは、非線形系である内燃機関を含み、複数の制御入力は、スロットル弁の開度を制御するための開度制御パラメータおよび吸気弁のリフトを制御するためのリフト制御パラメータであり、複数の制御量は、内燃機関の吸気通路内の圧力および吸入空気量である。前述した従来の制御装置の説明から明らかなように、開度制御パラメータおよびリフト制御パラメータ、ならびに、吸気通路内の圧力および吸入空気量の間には、相互干渉が存在する。これに対して、本発明によれば、請求項１の説明から明らかなように、非線形系である内燃機関を含むプラントにおいて、上記の相互干渉を適切に抑制でき、それにより、吸気通路内の圧力および吸入空気量を適切に制御することができる。
【００２２】
請求項５に係る発明は、請求項１ないし３のいずれかに記載のプラント１１１の制御装置７１において、プラント１１１は、既燃ガスの一部を第１ＥＧＲガスとして吸気通路８３に還流させる第１ＥＧＲ装置（低圧用スロットル弁８４、ＬＰＴＨアクチュエータ８４ａ、低圧ＥＧＲ装置９０）と、既燃ガスの一部を第２ＥＧＲガスとして、吸気通路８３の第１ＥＧＲ装置よりも気筒８１ａ側の位置に還流させる第２ＥＧＲ装置（高圧用スロットル弁８７、ＨＰＴＨアクチュエータ８７ａ、高圧ＥＧＲ装置９１）とを備える内燃機関８１を含み、複数の制御入力は、第１ＥＧＲ装置を制御するための第１ＥＧＲ制御パラメータ（目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄ）および第２ＥＧＲ装置を制御するための第２ＥＧＲ制御パラメータ（目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ）であり、複数の制御量は、第１ＥＧＲガスの流量（低圧ＥＧＲガス流量ＬＰＥＧＲ）および第２ＥＧＲガスの流量（高圧ＥＧＲガス流量ＨＰＥＧＲ）であることを特徴とする。
【００２３】
この構成によれば、プラントは、非線形系である内燃機関を含み、複数の制御入力は、第１ＥＧＲ装置を制御するための第１ＥＧＲ制御パラメータおよび第２ＥＧＲ装置を制御するための第２ＥＧＲ制御パラメータであり、複数の制御量は、第１ＥＧＲガスの流量および第２ＥＧＲガスの流量である。第１および第２ＥＧＲガスは、同じ吸気通路に還流することから、第１ＥＧＲ装置の制御によって、第１ＥＧＲガスの流量だけでなく、第２ＥＧＲガスの流量も変化し、また、第２ＥＧＲ装置の制御によって、第２ＥＧＲガスの流量だけでなく、第１ＥＧＲガスの流量も変化する。このことから明らかなように、制御入力としての第１および第２ＥＧＲ制御パラメータ、ならびに、制御量としての第１および第２ＥＧＲガスの流量の間には、相互干渉が存在する。
【００２４】
これに対して、本発明によれば、請求項１の説明から明らかなように、非線形系である内燃機関を含むプラントにおいて、上記の相互干渉を適切に抑制でき、それにより、第１および第２ＥＧＲガスの流量を適切に制御することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の第１実施形態による制御装置を適用した内燃機関を概略的に示す図である。
【図２】図１の部分拡大図である。
【図３】第１実施形態による制御装置のＥＣＵなどを示すブロック図である。
【図４】図３のＥＣＵが有するプラント制御部を、プラントとともに示すブロック図である。
【図５】図４のプラントを示すブロック図である。
【図６】図４の第１干渉抑制値算出部および第２干渉抑制値算出部で用いられる階層型のニューラルネットワークを概略的に示す図である。
【図７】図４の第１および第２干渉抑制値算出部を示すブロック図である。
【図８】図４のプラント制御部を、学習部とともに示すブロック図である。
【図９】図４の第１および第２干渉抑制値算出部を、学習部とともに示すブロック図である。
【図１０】図３のＥＣＵによって実行される第１学習処理を示すフローチャートである。
【図１１】図１０の続きを示すフローチャートである。
【図１２】図１１に示す第１学習処理で用いられるマップの一例である。
【図１３】図３のＥＣＵによって実行される第２学習処理を示すフローチャートである。
【図１４】図１３の続きを示すフローチャートである。
【図１５】図１４に示す第１学習処理で用いられるマップの一例である。
【図１６】本発明の第２実施形態による制御装置を適用した内燃機関を概略的に示す図である。
【図１７】第２実施形態による制御装置のＥＣＵなど示すブロック図である。
【図１８】図１７のＥＣＵが有するプラント制御部を、プラントとともに示すブロック図である。
【図１９】図１８のプラントを示すブロック図である。
【図２０】図１８の第１干渉抑制値算出部を示すブロック図である。
【図２１】図１８の第２干渉抑制値算出部を示すブロック図である。
【図２２】図１８のプラント制御部を、学習部とともに示すブロック図である。
【図２３】図１８の第１および第２干渉抑制値算出部を、学習部とともに示すブロック図である。
【図２４】図１７のＥＣＵによって実行される第１学習処理を示すフローチャートである。
【図２５】図２４の続きを示すフローチャートである。
【図２６】図２５に示す第１学習処理で用いられるマップの一例である。
【図２７】図１７のＥＣＵによって実行される第２学習処理を示すフローチャートである。
【図２８】図２７の続きを示すフローチャートである。
【図２９】図２８に示す第２学習処理で用いられるマップの一例である。
【発明を実施するための形態】
【００２６】
以下、図面を参照しながら、まず、本発明の第１実施形態による制御装置について詳細に説明する。図１および図２に示す内燃機関（以下「エンジン」という）３は、車両（図示せず）に動力源として搭載された、ガソリンエンジンである。エンジン３は、４つの気筒３ａ（１つのみ図示）と、これらの気筒３ａに吸気を導入するための吸気通路４と、気筒３ａごとに設けられた吸気弁５（１つのみ図示）と、吸気弁５を駆動するための吸気動弁機構１１を備えている。エンジン３には、気筒３ａごとに、気筒３ａ内におけるピストン３ｂとシリンダヘッド３ｃの間に、燃焼室３ｄが形成されている（いずれも１つのみ図示）。
【００２７】
上記の吸気通路４は、その下流側の吸気マニホルドにおいて４つの分岐部に分岐しており、これら４つの分岐部は、シリンダヘッド３ｃに接続されるとともに、４つの気筒３ａにそれぞれ連通している。また、吸気動弁機構１１は、吸気カムシャフト１２、吸気カム１３、可変バルブリフト機構１４を有している。この吸気カムシャフト１２は、タイミングベルト（図示せず）を介して、エンジン３のクランクシャフト３ｅに連結されている。これにより、吸気カムシャフト１２は、クランクシャフト３ｅが２回転するごとに１回転する。吸気カム１３は、気筒３ａごとに、吸気カムシャフト１２に一体に設けられている。
【００２８】
上記の可変バルブリフト機構１４は、吸気カム１３の回転に伴って吸気弁５を開閉するとともに、吸気弁５のリフト（以下「バルブリフト」という）を変更することによって、エンジン３に吸入される吸入空気量を変更可能に構成されている。なお、本実施形態では、バルブリフトは、吸気弁５の最大揚程を表すものとする。また、可変バルブリフト機構１４は、気筒３ａごとに設けられた四節リンク式のロッカアーム機構１４ａと、これらのロッカアーム機構１４ａを同時に駆動するリフトアクチュエータ１４ｂ（図３参照）を有している。可変バルブリフト機構１４は、本出願人によって提案された特許第４３００２３９号公報に開示されたものと同様に構成されているので、その構成についての説明を省略するとともに、以下、バルブリフトを変更する際の動作について、簡単に説明する。
【００２９】
可変バルブリフト機構１４では、リフトアクチュエータ１４ｂは、ロッカアーム機構１４ａに連結された短アーム（図示せず）を有しており、この短アームが回動することにより、ロッカアーム機構１４ａが駆動されることによって、バルブリフトが無段階に変更される。この場合、制御装置１の後述するＥＣＵ２からのリフト制御入力Ｕｌｉｆｔをリフトアクチュエータ１４ｂに入力することにより、短アームの回動角を変更することによって、バルブリフトが変更され、それにより、吸入空気量が制御される。
【００３０】
また、エンジン３には、回動角センサ２１が設けられており（図３参照）、この回動角センサ２１は、リフトアクチュエータ１４ｂの短アームの回動角θｌｉｆｔを検出し、その検出信号をＥＣＵ２に出力する。上述したように、短アームの回動角θｌｉｆｔに応じて、バルブリフトが変化することから、ＥＣＵ２は、この回動角θｌｉｆｔに基づいて、バルブリフトＬｉｆｔを算出する。
【００３１】
さらに、エンジン３には、クランク角センサ２２が設けられている。このクランク角センサ２２は、マグネットロータおよびＭＲＥピックアップで構成されており、クランクシャフト３ｅの回転に伴い、パルス信号であるＣＲＫａ信号をＥＣＵ２に出力する。ＣＲＫａ信号は、所定のクランク角ごとに出力され、ＥＣＵ２は、このＣＲＫａ信号に基づき、エンジン３の回転数（以下「エンジン回転数」という）ＮＥａを算出する。
【００３２】
また、前述した吸気通路４には、スロットル弁１５が設けられている。このスロットル弁１５は、バタフライ弁で構成されており、電動機で構成されたＴＨアクチュエータ１５ａに連結されている。スロットル弁１５の開度（以下「スロットル弁開度」という）は、ＥＣＵ２からの後述するスロットル制御入力ＵｔｈがＴＨアクチュエータ１５ａに入力されることによって、変更され、それにより、スロットル弁１５よりも下流側の吸気通路４内の圧力（以下「吸気圧」という）が制御される。さらに、スロットル弁開度ＴＨは、例えばポテンショメータで構成されたスロットル弁開度センサ２３によって検出され、その検出信号はＥＣＵ２に出力される。
【００３３】
また、吸気通路４のスロットル弁１５よりも上流側には、エアフローセンサ２４が設けられている。このエアフローセンサ２４は、例えば熱線式エアフローメータで構成されており、吸気通路４内を流れる空気の流量（以下「空気流量」という）Ｑｉｎａを検出し、その検出信号をＥＣＵ２に出力する。
【００３４】
さらに、吸気通路４のスロットル弁１５よりも下流側には、吸気圧センサ２５、吸気温センサ２６および燃料噴射弁１６が設けられている。燃料噴射弁１６は、気筒３ａごとに設けられており、ＥＣＵ２による制御によって燃料を吸気通路４内に噴射する。この場合、燃料噴射弁１６による燃料噴射量、すなわち燃料噴射弁１６の開弁時間は、ＥＣＵ２により算出された燃料噴射量ＴＯＵＴａに基づいて制御される。
【００３５】
上記の吸気圧センサ２５は、例えば半導体圧力センサで構成されており、吸気圧ＰＢａを絶対圧として検出し、その検出信号をＥＣＵ２に出力する。また、吸気温センサ２６は、例えばサーミスタで構成されており、吸気通路４内を流れる空気の温度（以下「吸気温」という）ＴＡを検出し、その検出信号をＥＣＵ２に出力する。ＥＣＵ２は、算出されたエンジン回転数ＮＥａ、検出された空気流量Ｑｉｎａ、吸気圧ＰＢａおよび吸気温ＴＡに応じて、エンジン３に実際に吸入される吸入空気量Ｇｃｙｌａを算出する。この算出手法は、本出願人によって提案された特開２００６−１３２４２９号公報に開示された手法と同様であるので、その詳細な説明については省略する。
【００３６】
また、エンジン３のシリンダヘッド３ｃには、点火プラグ１７（図３参照）が取り付けられている。この点火プラグ１７は、ＥＣＵ２による制御によって放電し、それにより、燃焼室３ｄ内の混合気を燃焼させる。
【００３７】
さらに、エンジン３には、ＥＧＲ通路１８ａおよびＥＧＲ制御弁１８ｂを有するＥＧＲ装置１８が設けられている。ＥＧＲ通路１８ａは、吸気通路４におけるスロットル弁１５の下流側と、排気通路６に接続されている。このＥＧＲ通路１８ａを介して、エンジン３の排ガスの一部がＥＧＲガスとして吸気通路４に還流することにより、エンジン３の燃焼室３ｄ内の燃焼温度が低下し、排ガス中のＮＯｘが低減される。
【００３８】
また、ＥＧＲ制御弁１８ｂは、リニア電磁弁であり、そのバルブリフト量がＥＣＵ２により制御されることによって、ＥＧＲ通路１８ａを開閉し、それにより、吸気通路４に還流するＥＧＲガスの流量（以下「ＥＧＲガス流量」という）が制御される。さらに、ＥＧＲ制御弁１８ｂの実際のバルブリフト量（以下「ＥＧＲリフト量」という）ＥＧＲＬＩＦＴは、ＥＧＲリフトセンサ２７によって検出され、その検出信号はＥＣＵ２に出力される。
【００３９】
また、排気通路６は、その下流側の排気マニホルドにおいて４つの分岐部に分岐しており、これら４つの分岐部は、シリンダヘッド３ｃに接続されるとともに、４つの気筒３ａにそれぞれ連通している。さらに、排気通路６には、これらの分岐部の集合部付近に、排気マニホルド圧センサ２８および排気マニホルド温センサ２９が設けられている。この排気マニホルド圧センサ２８は、当該接続部を流れる排ガスの圧力（以下「排気マニホルド圧」という）Ｐｅｍａを検出し、その検出信号をＥＣＵ２に出力する。また、排気マニホルド温センサ２９は、接続部を流れる排ガスの温度（以下「排気マニホルド温」という）Ｔｅｍａを検出し、その検出信号をＥＣＵ２に出力する。
【００４０】
ＥＣＵ２にはさらに、アクセル開度センサ３０から、車両のアクセルペダル（図示せず）の操作量（以下「アクセル開度」という）ＡＰａを表す検出信号が、出力される。
【００４１】
ＥＣＵ２は、ＣＰＵ、ＲＡＭ、ＲＯＭおよびＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されている。また、ＥＣＵ２は、上述した各種のセンサ２１〜３０からの検出信号に応じ、ＲＯＭに記憶された制御プログラムに従って、エンジン３を制御する。
【００４２】
具体的には、ＥＣＵ２は、図４に示す目標値算出部４１、偏差算出部４２、第１コントローラ４３、第２コントローラ４４、第１干渉抑制値算出部４５、第２干渉抑制値算出部４６、第１加算器４７、および第２加算器４８から成るプラント制御部を有している。このプラント制御部は、エンジン３を含むプラント５１を制御するためのものである。
【００４３】
図５に示すように、このプラント５１は、目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄを制御入力とし、吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａを制御量とする系として定義され、具体的には、ＴＨコントローラ５２、リフトコントローラ５３およびエンジン３などで構成されている。これらのコントローラ５２および５３は、ＥＣＵ２によって構成されている。上記の目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄはそれぞれ、スロットル弁開度ＴＨおよびバルブリフトＬｉｆｔの目標値であり、後述するように算出される。
【００４４】
また、ＴＨコントローラ５２には、検出されたスロットル弁開度ＴＨと目標スロットル弁開度ＴＨ＿ｃｍｄが入力される。ＴＨコントローラ５２は、入力されたスロットル弁開度ＴＨおよび目標スロットル弁開度ＴＨ＿ｃｍｄに応じ、所定のフィードバック制御アルゴリズムによって、例えば目標値フィルタ型の２自由度応答指定型制御アルゴリズムによって、前述したスロットル制御入力Ｕｔｈを算出するとともに、ＴＨアクチュエータ１５ａに出力する。これにより、スロットル弁開度ＴＨが、目標スロットル弁開度ＴＨ＿ｃｍｄに収束するように制御される。この目標値フィルタ型の２自由度応答指定型制御アルゴリズムは、本出願人によって提案された特開２００６−１３２４２９号公報に開示されたものと同様であるので、その詳細な説明については省略する。
【００４５】
また、リフトコントローラ５３には、算出されたバルブリフトＬｉｆｔと目標バルブリフトＬｉｆｔ＿ｃｍｄが入力される。リフトコントローラ５３は、入力されたバルブリフトＬｉｆｔおよび目標バルブリフトＬｉｆｔ＿ｃｍｄに応じ、所定のフィードバック制御アルゴリズムによって、例えば上記の目標値フィルタ型の２自由度応答指定型制御アルゴリズムによって、前述したリフト制御入力Ｕｌｉｆｔを算出するとともに、リフトアクチュエータ１４ｂに出力する。これにより、バルブリフトＬｉｆｔが、目標バルブリフトＬｉｆｔ＿ｃｍｄに収束するように制御される。
【００４６】
以上のようなプラント５１では、スロットル弁開度ＴＨが目標スロットル弁開度ＴＨ＿ｃｍｄに収束するように制御されると、それに伴って、吸気圧ＰＢａが変化するとともに、吸入空気量Ｇｃｙｌａも変化する。また、バルブリフトＬｉｆｔが目標バルブリフトＬｉｆｔ＿ｃｍｄに収束するように制御されると、それに伴って、吸入空気量Ｇｃｙｌａが変化するとともに、吸気圧ＰＢａも変化する。以上のように、このプラント５１は、制御入力としての目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄ、ならびに、制御量としての吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａの間に、相互干渉が存在する干渉系となっている。
【００４７】
このため、前述した図４に示すプラント制御部では、上記の相互干渉を抑制しながら、吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａを適切に制御できるような制御入力として、目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄがそれぞれ算出される。以下、プラント制御部を構成する前述した目標値算出部４１などについて、詳細に説明する。
【００４８】
この目標値算出部４１は、算出されたエンジン回転数ＮＥａと、要求トルクＴＲＥＱａに応じ、所定の第１マップおよび第２マップ（いずれも図示せず）を検索することによって、目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄをそれぞれ算出するとともに、偏差算出部４２に出力する。これらの目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄはそれぞれ、吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａの目標値である。また、この要求トルクＴＲＥＱａは、エンジン３に要求されるトルクであり、エンジン回転数ＮＥと、検出されたアクセル開度ＡＰａに応じ、所定のマップ（図示せず）を検索することによって算出される。
【００４９】
偏差算出部４２には、上記の目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄに加え、吸気圧ＰＢａと、算出された吸入空気量Ｇｃｙｌａが入力される。偏差算出部４２は、目標吸気圧ＰＢ＿ｃｍｄと吸気圧ＰＢａとの偏差を、吸気圧偏差Ｄｐｂとして算出するとともに、目標吸気量Ｇｃｙｌ＿ｃｍｄと吸入空気量Ｇｃｙｌａとの偏差を、吸気量偏差Ｄｇｃｙｌとして算出する。また、算出された吸気圧偏差Ｄｐｂは、第１コントローラ４３および第２干渉抑制値算出部４６に出力され、吸気量偏差Ｄｇｃｙｌは、第２コントローラ４４および第１干渉抑制値算出部４５に出力される。
【００５０】
第１コントローラ４３は、入力された吸気圧偏差Ｄｐｂに応じ、所定のフィードバック制御アルゴリズムによって、例えば応答指定型制御アルゴリズムによって、目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄを算出する。これにより、暫定値ＴＨ＿ｓｍｃ＿ｃｍｄは、吸気圧ＰＢａが目標吸気圧ＰＢ＿ｃｍｄに収束するような値に算出される。また、算出された暫定値ＴＨ＿ｓｍｃ＿ｃｍｄは、第１干渉抑制値算出部４５および第１加算器４７に出力される。この応答指定型制御アルゴリズムは、本出願人によって提案された特開２００６−１３２４２９号公報に開示されたものと同様であるので、その詳細な説明については省略する。
【００５１】
第２コントローラ４４は、入力された吸気量偏差Ｄｇｃｙｌに応じ、所定のフィードバック制御アルゴリズムによって、例えば上記の応答指定型制御アルゴリズムによって、目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄを算出する。これにより、暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄは、吸入空気量Ｇｃｙｌａが目標吸気量Ｇｃｙｌ＿ｃｍｄに収束するような値に算出される。また、算出された暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄは、第２干渉抑制値算出部４６および第２加算器４８に出力される。
【００５２】
第１および第２干渉抑制値算出部４５，４６は、ニューラルネットワークを用いて、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄおよび第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄをそれぞれ算出するものである。この第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄは、目標スロットル弁開度ＴＨ＿ｃｍｄによる吸入空気量Ｇｃｙｌａへの干渉を抑制するために、目標バルブリフトＬｉｆｔ＿ｃｍｄを補正するためのパラメータである。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄは、目標バルブリフトＬｉｆｔ＿ｃｍｄによる吸気圧ＰＢａへの干渉を抑制するために、目標スロットル弁開度ＴＨ＿ｃｍｄを補正するためのパラメータである。
【００５３】
これらの第１および第２干渉抑制値算出部４５，４６で用いられるニューラルネットワークは、図６に示す３階層型のニューラルネットワークＮＮであり、入力層はｍ（ｍは２以上の整数）個のニューロン（３つのみ図示）を、中間層はｍ×（ｎ−１）［ｎは２以上の整数］個のニューロン（６つのみ図示）を、出力層はｍ＋１個のニューロンをそれぞれ備えている。
【００５４】
このニューラルネットワークＮＮでは、入力Ｕが次式（１）に示すように定義される。また、入力層では、入力Ｕに基づき、値Ｖ１ｊが、ｊ＝１〜ｍとして、次式（２）〜（４）により算出されるとともに、中間層に出力される。
【数１】
2012102629.tif 000003
【数２】
2012102629.tif 000004
【数３】
2012102629.tif 000005
【数４】
2012102629.tif 000006
【００５５】
上記式（３）において、ｆは、シグモイド関数であり、上記式（４）で定義される。また、式（４）において、βはシグモイド関数の傾きゲインを、εはシグモイド関数のオフセット値を、それぞれ表している。また、上記式（１）〜（３）や後述する式における記号（ｋ）付きの各離散データは、所定の制御周期ΔＴ（例えば１０ｍｓｅｃ）で繰り返しサンプリングまたは算出されたデータであることを示しており、記号ｋ（ｋは正の整数）は、各離散データのサンプリングまたは算出サイクルの順番を表している。この場合、（ｋ）付きのデータは、当該データの今回値であり、（ｋ−１）付きのデータは、前回値である。なお、以下の説明において、今回値であることを表す記号（ｋ）の表記を適宜、省略する。
【００５６】
また、中間層では、入力された値Ｖ１ｊに基づき、値Ｖｉｊが、ｉ＝２〜ｎとして、次式（５）および（６）により算出されるとともに、出力層に出力される。この式（５）において、ωは重み係数である。
【数５】
2012102629.tif 000007
【数６】
2012102629.tif 000008
【００５７】
また、出力層では、入力された値Ｖｉｊに基づき、出力Ｙが、次式（７）〜（９）によって算出される。
【数７】
2012102629.tif 000009
【数８】
2012102629.tif 000010
【数９】
2012102629.tif 000011
【００５８】
上記式（８）において、ｇは、シグモイド関数であり、上記式（９）で定義される。また、式（９）において、αはシグモイド関数の出力ゲインを、γはシグモイド関数の傾きゲインを、δはシグモイド関数のオフセット値を、それぞれ表している。
【００５９】
より具体的には、図７に示すように、第１干渉抑制値算出部４５には、前述した吸気量偏差Ｄｇｃｙｌおよび暫定値ＴＨ＿ｓｍｃ＿ｃｍｄに加え、エンジン３の運転状態を表す運転状態パラメータなどが、入力される。この運転状態パラメータには、エンジン回転数ＮＥａ、要求トルクＴＲＥＱａ、推定ＥＧＲ率ＥＧＲ＿ｅｓｔａ、燃料噴射量ＴＯＵＴａ、吸気圧ＰＢａ、検出された排気マニホルド圧Ｐｅｍａ、および吸入空気量Ｇｃｙｌａなどが含まれる。第１干渉抑制値算出部４５にはさらに、目標スロットル弁開度の前回値ＴＨ＿ｃｍｄ（ｋ−１）、目標バルブリフトの前回値Ｌｉｆｔ＿ｃｍｄ（ｋ−１）、第１干渉抑制値の前回値Ｌｉｆｔ＿ｄｃ＿ｃｍｄ（ｋ−１）、および目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄが入力される。
【００６０】
また、上記の推定ＥＧＲ率ＥＧＲ＿ｅｓｔａは、エンジン３に吸入される吸入空気量Ｇｃｙｌａ（新気＋ＥＧＲガス）に対するＥＧＲガスの量の比率の推定値である。具体的には、推定ＥＧＲ率ＥＧＲ＿ｅｓｔａは、次のようにして算出される。すなわち、ＥＧＲ制御弁１８ｂをノズルとみなしたノズルの式に基づく物理式に従い、吸気圧ＰＢａ、検出された排気マニホルド圧Ｐｅｍａ、ＥＧＲリフト量ＥＧＲＬＩＦＴ、排気マニホルド温Ｔｅｍａに応じて、エンジン３に実際に吸入されるＥＧＲガス流量を算出する。次いで、算出されたＥＧＲガス流量を吸入空気量Ｇｃｙｌａで除算することによって、推定ＥＧＲ率ＥＧＲ＿ｅｓｔａが算出される。この物理式は、本出願人によって提案された特願２０１０−１３７１３２号に開示されたものと同様であるので、その詳細な説明については省略する。
【００６１】
第１干渉抑制値算出部４５は、入力された上記の複数のパラメータに応じ、上述した図６と同様の３階層型のニューラルネットワークを用いて、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを次のようにして算出する。まず、入力層では、上記のエンジン回転数ＮＥａなどの複数のパラメータを入力Ｕａとして、値Ｖａ１ｊを、次式（１０）〜（１３）により算出するとともに、中間層に出力する。
【数１０】
2012102629.tif 000012
【数１１】
2012102629.tif 000013
【数１２】
2012102629.tif 000014
【数１３】
2012102629.tif 000015
【００６２】
上記式（１２）において、ｆａは、上記式（１３）で定義されるシグモイド関数である。また、この式（１３）において、βａはシグモイド関数の傾きゲインを、εａはシグモイド関数のオフセット値を、それぞれ表している。これらの値βａおよびεａは、実験などにより所定値に設定されている。
【００６３】
また、中間層では、入力された値Ｖａ１ｊに基づき、値Ｖａｉｊを、ｉ＝２〜ｎとして、次式（１４）および（１５）により算出するとともに、出力層に出力する。この式（１４）において、ωａは、重み係数であり、後述する学習部６１によって学習され、設定される。
【数１４】
2012102629.tif 000016
【数１５】
2012102629.tif 000017
【００６４】
また、出力層では、入力された値Ｖａｉｊに基づき、次式（１６）〜（１８）によって、出力Ｙａを算出する。
【数１６】
2012102629.tif 000018
【数１７】
2012102629.tif 000019
【数１８】
2012102629.tif 000020
【００６５】
上記式（１７）において、ｇａは、上記式（１８）で定義されるシグモイド関数である。また、この式（１８）において、αａはシグモイド関数の出力ゲインを、γａはシグモイド関数の傾きゲインを、δａはシグモイド関数のオフセット値を、それぞれ表している。これらの値αａ，γａ，δａは、実験などにより所定値に設定されている。
【００６６】
また、算出された出力Ｙａは、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄとして設定されるとともに、第２加算器４８に出力される。
【００６７】
さらに、図７に示すように、第２干渉抑制値算出部４６には、前述した吸気圧偏差Ｄｐｂおよび暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄに加え、エンジン３の運転状態パラメータなどが、入力される。この運転状態パラメータには、第１干渉抑制値算出部４５の場合と同様、エンジン回転数ＮＥａ、要求トルクＴＲＥＱａ、推定ＥＧＲ率ＥＧＲ＿ｅｓｔａ、燃料噴射量ＴＯＵＴａ、吸気圧ＰＢａ、検出された排気マニホルド圧Ｐｅｍａ、および吸入空気量Ｇｃｙｌａなどが含まれる。第２干渉抑制値算出部４６にはさらに、目標バルブリフトの前回値Ｌｉｆｔ＿ｃｍｄ（ｋ−１）、目標スロットル弁開度の前回値ＴＨ＿ｃｍｄ（ｋ−１）、第２干渉抑制値の前回値ＴＨ＿ｄｃ＿ｃｍｄ（ｋ−１）、および目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄが入力される。
【００６８】
第２干渉抑制値算出部４６は、入力された上記の複数のパラメータに応じ、図６と同様の３階層型のニューラルネットワークを用いて、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを次のようにして算出する。まず、入力層では、上記のエンジン回転数ＮＥａなどの複数のパラメータを入力Ｕｂとして、値Ｖｂ１ｊを、次式（１９）〜（２２）によって算出するとともに、中間層に出力する。
【数１９】
2012102629.tif 000021
【数２０】
2012102629.tif 000022
【数２１】
2012102629.tif 000023
【数２２】
2012102629.tif 000024
【００６９】
上記式（２１）において、ｆｂは、上記式（２２）で定義されるシグモイド関数である。また、この式（２２）において、βｂはシグモイド関数の傾きゲインを、εｂはシグモイド関数のオフセット値を、それぞれ表しており、これらの値βｂおよびεｂは、実験などにより所定値に設定されている。
【００７０】
また、中間層では、入力された値Ｖｂ１ｊに基づき、値Ｖｂｉｊを、ｉ＝２〜ｎとして、次式（２３）および（２４）により算出するとともに、出力層に出力する。この式（２３）において、ωｂは、重み係数であり、学習部６１によって学習され、設定される。
【数２３】
2012102629.tif 000025
【数２４】
2012102629.tif 000026
【００７１】
また、出力層では、入力された値Ｖｂｉｊに基づき、次式（２５）〜（２７）によって、出力Ｙｂを算出する。
【数２５】
2012102629.tif 000027
【数２６】
2012102629.tif 000028
【数２７】
2012102629.tif 000029
【００７２】
上記式（２６）において、ｇｂは、上記式（２７）で定義されるシグモイド関数である。また、この式（２７）において、αｂはシグモイド関数の出力ゲインを、γｂはシグモイド関数の傾きゲインを、δｂはシグモイド関数のオフセット値を、それぞれ表している。これらの値αｂ，γｂ，δｂは、実験などにより所定値に設定されている。
【００７３】
また、算出された出力Ｙｂは、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄとして設定されるとともに、第１加算器４７に出力される。
【００７４】
第１加算器４７は、入力された暫定値ＴＨ＿ｓｍｃ＿ｃｍｄに、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを加算することによって、目標スロットル弁開度ＴＨ＿ｃｍｄを算出する。これにより、目標スロットル弁開度ＴＨ＿ｃｍｄは、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づいて、前述した相互干渉を抑制するように補正される。また、算出された目標スロットル弁開度ＴＨ＿ｃｍｄは、前述したＴＨコントローラ５２に出力される。
【００７５】
第２加算器４８は、入力された暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄに、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを加算することによって、目標バルブリフトＬｉｆｔ＿ｃｍｄを算出する。これにより、目標バルブリフトＬｉｆｔ＿ｃｍｄは、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づいて、前述した相互干渉を抑制するように補正される。また、算出された目標バルブリフトＬｉｆｔ＿ｃｍｄは、前述したリフトコントローラ５３に出力される。
【００７６】
次に、図８〜図１５を参照しながら、学習部６１によって行われる前述した重み係数ωａおよびωｂの学習について説明する。この学習は、車両の出荷前または出荷後の点検時にサービス工場において、エンジン３を運転した状態で行われる。
【００７７】
図８および図９に示すように、学習部６１には、吸気量偏差Ｄｇｃｙｌおよび吸気圧偏差Ｄｐｂが入力される。学習部６１は、入力された吸気量偏差Ｄｇｃｙｌおよび吸気圧偏差Ｄｐｂに応じ、強化学習によって、重み係数ωａおよびωｂの学習をそれぞれ別個に行う。また、学習部６１は、当該学習により算出された重み係数の学習値ωａＧを、第１干渉抑制値算出部４５に出力するとともに、重み係数の学習値ωｂＧを、第２干渉抑制値算出部４６に出力する。これにより、重み係数ωａおよびωｂが、学習され、更新される。図１０および図１１は、重み係数ωａを学習するための第１学習処理を示している。本処理は、図５および図８に示す各種の要素によって、前述した制御周期ΔＴで繰り返し実行される。
【００７８】
まず、図１０のステップ１（「Ｓ１」と図示。以下同じ）では、第１学習完了フラグＦ＿ＬＥＤＯＮＥａが「１」であるか否かを判別する。この第１学習完了フラグＦ＿ＬＥＤＯＮＥａは、重み係数ωａの学習が完了したときに、「１」にセットされるものであり、車両の点検の開始時に、「０」にリセットされる。
【００７９】
上記ステップ１の答がＮＯで、学習が完了していないときには、第１学習準備動作完了フラグＦ＿ＬＥＡＲＮａが「１」であるか否かを判別する（ステップ２）。この第１学習準備動作完了フラグＦ＿ＬＥＡＲＮａは、重み係数ωａの学習のための準備動作（以下「第１学習準備動作」という）が完了していることを、「１」で表すものであり、車両の点検の開始時に、「０」にリセットされる。
【００８０】
この答がＮＯで、第１学習準備動作が完了していないときには、目標吸気量Ｇｃｙｌ＿ｃｍｄを、前述したようにエンジン回転数ＮＥａおよび要求トルクＴＲＥＱａに応じたマップ検索によって算出する（ステップ３）。次いで、算出された目標吸気量Ｇｃｙｌ＿ｃｍｄと吸入空気量Ｇｃｙｌａとの偏差として、吸気量偏差Ｄｇｃｙｌを算出する（ステップ４）。
【００８１】
次に、上記ステップ４で算出された吸気量偏差Ｄｇｃｙｌがほぼ値０であるか否かを判別する（ステップ５）。この答がＮＯのときには、目標スロットル弁開度ＴＨ＿ｃｍｄを一定の第１所定値ＴＨＲＥＦ１に設定する（ステップ６）。このステップ６の実行に伴い、前述したＴＨコントローラ５２によって、スロットル弁開度ＴＨが、目標スロットル弁開度ＴＨ＿ｃｍｄに収束するように制御される。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づく目標スロットル弁開度ＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【００８２】
ステップ６に続くステップ７では、目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄを、吸気量偏差Ｄｇｃｙｌに応じ、前述した応答指定型制御アルゴリズムによって算出する。次いで、算出された暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄを、目標バルブリフトＬｉｆｔ＿ｃｍｄとして設定し（ステップ８）、本処理を終了する。このステップ８の実行に伴い、前述したリフトコントローラ５３によって、バルブリフトＬｉｆｔが、目標バルブリフトＬｉｆｔ＿ｃｍｄに収束するように制御される。また、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づく目標バルブリフトＬｉｆｔ＿ｃｍｄの補正が行われず、当該補正は停止される。
【００８３】
一方、上記ステップ５の答がＹＥＳで、吸気量偏差Ｄｇｃｙｌがほぼ値０になったときには、そのときに得られている目標バルブリフトＬｉｆｔ＿ｃｍｄを、学習用目標リフトＬｉｆｔ＿ｃｍｄＧとして設定する（ステップ９）。次いで、目標吸気量Ｇｃｙｌ＿ｃｍｄを、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌとして設定する（ステップ１０）。
【００８４】
次に、ステップ１１および１２においてそれぞれ、値０までダウンカウントされる待機タイマのタイマ値ｔＭＤＥＬａおよび学習タイマのタイマ値ｔＬＥＡａを、所定の待機時間ＴＭＤＥＬａおよび学習時間ＴＬＥＡａに設定する。この待機時間ＴＭＤＥＬａは、スロットル弁開度ＴＨの変化が吸入空気量Ｇｃｙｌａに反映されるまでのむだ時間に設定されており、例えば０．２ｓｅｃに設定されている。また、学習時間ＴＬＥＡａは、重み係数ωａの学習を十分に行えるような時間に設定されており、例えば１．０ｓｅｃに設定されている。
【００８５】
上記ステップ１２に続くステップ１３では、第１学習準備動作が完了したとして、そのことを表すために、第１学習準備動作完了フラグＦ＿ＬＥＡＲＮａを「１」に設定し、図１１のステップ１４に進む。また、このステップ１３を実行した後には、前記ステップ２の答がＹＥＳになり、その場合には、前記ステップ３〜１３をスキップし、ステップ１４に進む。
【００８６】
以上のように、本処理が開始されると、まず、第１学習準備動作が行われる。この第１学習準備動作の実行中、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、スロットル弁開度ＴＨが、一定の第１所定値ＴＨＲＥＦ１に保持される（ステップ６）。また、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、目標バルブリフトＬｉｆｔ＿ｃｍｄが、吸気量偏差Ｄｇｃｙｌに基づき、フィードバック制御アルゴリズムである応答指定型制御アルゴリズムによって、算出される（ステップ７、８）。これにより、バルブリフトＬｉｆｔが制御されることによって、吸入空気量Ｇｃｙｌａが、目標吸気量Ｇｃｙｌ＿ｃｍｄに収束するように制御される。
【００８７】
そして、吸入空気量Ｇｃｙｌａが目標吸気量Ｇｃｙｌ＿ｃｍｄに収束し、吸気量偏差Ｄｇｃｙｌがほぼ値０になる（ステップ５：ＹＥＳ）と、そのときに得られている目標バルブリフトＬｉｆｔ＿ｃｍｄ、すなわち、吸気量偏差Ｄｇｃｙｌがほぼ値０になったときに算出された目標バルブリフトＬｉｆｔ＿ｃｍｄが、学習用目標リフトＬｉｆｔ＿ｃｍｄＧとして設定される（ステップ９）。また、そのときの目標吸気量Ｇｃｙｌ＿ｃｍｄが、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌとして設定される（ステップ１０）とともに、第１学習準備動作が完了したと判定される（ステップ１３）。
【００８８】
以上から明らかなように、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌは、スロットル弁開度ＴＨが一定の第１所定値ＴＨＲＥＦ１に保持された状態で吸入空気量Ｇｃｙｌａが目標吸気量Ｇｃｙｌ＿ｃｍｄに収束しているときの目標吸気量Ｇｃｙｌ＿ｃｍｄに、設定される。また、学習用目標リフトＬｉｆｔ＿ｃｍｄＧは、スロットル弁開度ＴＨが第１所定値ＴＨＲＥＦ１に保持された状態で吸入空気量Ｇｃｙｌａが目標吸気量Ｇｃｙｌ＿ｃｍｄすなわち学習用目標吸気量Ｔｇｔ＿ｇｃｙｌに収束するような値に、設定される。
【００８９】
図１１のステップ１４では、前記ステップ１２で設定された学習タイマのタイマ値ｔＬＥＡａが値０であるか否かを判別する。この答がＮＯのときには、ステップ１５および１６においてそれぞれ、目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄおよび目標スロットル弁開度ＴＨ＿ｃｍｄを、一定の第２所定値ＴＨＲＥＦ２に設定する。この第２所定値ＴＨＲＥＦ２は、前述した第１所定値ＴＨＲＥＦ１よりも大きな値に設定されている。
【００９０】
このステップ１６の実行に伴い、ＴＨコントローラ５２によって、スロットル弁開度ＴＨが、目標スロットル弁開度ＴＨ＿ｃｍｄに収束するように制御される。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づく目標スロットル弁開度ＴＨ＿ｃｍｄの補正は行われず、当該補正は停止される。
【００９１】
上記ステップ１６に続くステップ１７では、前記ステップ１１で設定された待機タイマのタイマ値ｔＭＤＥＬａが値０であるか否かを判別する。この答がＮＯのときには、目標バルブリフトＬｉｆｔ＿ｃｍｄを前記ステップ９で設定された学習用目標リフトＬｉｆｔ＿ｃｍｄＧに設定し（ステップ１８）、本処理を終了する。このステップ１８の実行に伴い、リフトコントローラ５３によって、バルブリフトＬｉｆｔが、目標バルブリフトＬｉｆｔ＿ｃｍｄすなわち学習用目標リフトＬｉｆｔ＿ｃｍｄＧに収束するように制御される。また、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づく目標バルブリフトＬｉｆｔ＿ｃｍｄの補正は行われず、当該補正は停止される。
【００９２】
一方、上記ステップ１７の答がＹＥＳ（ｔＭＤＥＬａ＝０）のとき、すなわち、第１学習準備動作が完了してから、待機時間ＴＭＤＥＬａがすでに経過しているときには、前記ステップ１０で設定された学習用目標吸気量Ｔｇｔ＿ｇｃｙｌと吸入空気量Ｇｃｙｌａとの偏差として、吸気量偏差Ｄｇｃｙｌを算出する（ステップ１９）。次いで、算出された吸気量偏差Ｄｇｃｙｌが、第１所定値ｓｔｇｃｙｌＬおよび第２所定値ｓｔｇｃｙｌＨで規定される所定の範囲内にあるか否かを判別する（ステップ２０）。
【００９３】
この答がＮＯのときには、値０までダウンカウントされる安定タイマのタイマ値ｔＳＴＢａを、所定の安定時間ＴＳＴＢａ（例えば２．０ｓｅｃ）に設定する（ステップ２１）とともに、吸気量偏差の絶対値｜Ｄｇｃｙｌ｜を所定の最大偏差Ｄｇｃｙｌ＿ｍａｘで除算することによって、正規化吸気量偏差Ｆｄｇｃｙｌを算出する（ステップ２２）。この最大偏差Ｄｇｃｙｌ＿ｍａｘは、吸気量偏差の絶対値｜Ｄｇｃｙｌ｜がとりうる最大の値に設定されている。
【００９４】
次いで、算出された正規化吸気量偏差Ｆｄｇｃｙｌと要求トルクＴＲＥＱａに基づき、図１２に示す所定のマップを検索することによって、報酬値Ｒｗ＿ｇｃｙｌを算出する（ステップ２３）。同図において、ＴＲＥＱａ１、ＴＲＥＱａ２およびＴＲＥＱａ３はそれぞれ、要求トルクＴＲＥＱａの第１所定値、第２所定値および第３所定値（ＴＲＥＱａ１＜ＴＲＥＱａ２＜ＴＲＥＱａ３）である。なお、要求トルクＴＲＥＱａが第１〜第３所定値ＴＲＥＱａ１〜ＴＲＥＱａ３以外のときには、報酬値Ｒｗ＿ｇｃｙｌは、補間演算によって求められる。
【００９５】
上記のマップでは、報酬値Ｒｗ＿ｇｃｙｌは、基本的には、正規化吸気量偏差Ｆｄｇｃｙｌが小さいほど、より大きな値にリニアに設定されており、また、正規化吸気量偏差Ｆｄｇｃｙｌが値０のときにその最大値に設定されている。また、報酬値Ｒｗ＿ｇｃｙｌは、要求トルクＴＲＥＱａに応じて次のように設定されている。すなわち、要求トルクＴＲＥＱａが最も小さい第１所定値ＴＲＥＱａ１のときには、報酬値Ｒｗ＿ｇｃｙｌは、正規化吸気量偏差Ｆｄｇｃｙｌの全体（値０≦Ｆｄｇｃｙｌ≦値１．０）に対して、Ｆｄｇｃｙｌ値が小さいほど、より大きな値にリニアに設定されている。
【００９６】
また、要求トルクＴＲＥＱａが中間の第２所定値ＴＲＥＱａ２（＞ＴＲＥＱａ１）のときには、正規化吸気量偏差Ｆｄｇｃｙｌに対する報酬値Ｒｗ＿ｇｃｙｌの傾きは、値０≦Ｆｄｇｃｙｌ≦第１所定値Ｆｄｇｃｙｌ１の範囲では、より大きな値に設定されており、Ｆｄｇｃｙｌ＞第１所定値Ｆｄｇｃｙｌ１の範囲では、より小さな値に設定されている。さらに、要求トルクＴＲＥＱａが最も大きい第３所定値ＴＲＥＱａ３（＞ＴＲＥＱａ２）のときには、正規化吸気量偏差Ｆｄｇｃｙｌに対する報酬値Ｒｗ＿ｇｃｙｌの傾きは、値０≦Ｆｄｇｃｙｌ≦第２所定値Ｆｄｇｃｙｌ２の範囲では、より大きな値に設定されており、Ｆｄｇｃｙｌ＞Ｆｄｇｃｙｌ２の範囲では、より小さな値に設定されている。また、これらの第１および第２所定値Ｆｄｇｃｙｌ１，Ｆｄｇｃｙｌ２は、値０＜Ｆｄｇｃｙｌ２＜Ｆｄｇｃｙｌ１＜値１．０の関係を満たすように設定されている。
【００９７】
上記の説明から明らかなように、図１２のマップでは、正規化吸気量偏差Ｆｄｇｃｙｌに対する報酬値Ｒｗ＿ｇｃｙｌの傾きが比較的大きい範囲が、要求トルクＴＲＥＱａが小さいほど、より大きく設定されている。これは、要求トルクＴＲＥＱａが小さいほど、すなわちエンジン３の負荷が低いほど、目標バルブリフトＬｉｆｔ＿ｃｍｄに対する吸入空気量Ｇｃｙｌａの感度が高いことから、正規化吸気量偏差Ｆｄｇｃｙｌのより大きな範囲に対して、報酬値Ｒｗ＿ｇｃｙｌをきめ細かく設定するためである。
【００９８】
上記ステップ２３に続くステップ２４では、ステップ２３で算出された報酬値Ｒｗ＿ｇｃｙｌに基づき、重み係数ωａを強化学習によって学習する。この学習は次のようにして行われる。すなわち、まず、そのときに設定されている重み係数ωａ（前回値）を、その学習値ωａＧとして、算出された報酬値Ｒｗ＿ｇｃｙｌと対応させて、複数のバッファの１つに順次、記憶する。次いで、重み係数ωａ（今回値）を、実験により予め設定された互いに異なる複数の所定値の１つにランダムに設定する。なお、今回が学習開始後の１回目のループであるときには、前記ステップ１８から明らかなように、重み係数ωａがまだ設定されていないので、学習値ωａＧは、値０に設定されるとともに、報酬値Ｒｗ＿ｇｃｙｌと対応させて記憶される。
【００９９】
上記ステップ２４に続くステップ２５では、目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄを、前記ステップ９で設定された学習用目標リフトＬｉｆｔ＿ｃｍｄＧに設定する。次いで、ステップ２６において、第１干渉抑制値算出部４５の説明で述べたようにして、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを算出する。すなわち、エンジン回転数ＮＥａなどの運転状態パラメータや、前記ステップ１９で算出された吸気量偏差Ｄｇｃｙｌ、前記ステップ１５で設定された目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄなどを入力とし、ニューラルネットワークを用いて、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを算出する。
【０１００】
次に、上記ステップ２５で設定された暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄに、ステップ２６で算出された第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを加算することによって、目標バルブリフトＬｉｆｔ＿ｃｍｄを算出し（ステップ２７）、本処理を終了する。このステップ２７の実行に伴い、リフトコントローラ５３によって、バルブリフトＬｉｆｔが、目標バルブリフトＬｉｆｔ＿ｃｍｄに収束するように制御される。
【０１０１】
以上のように、第１学習準備動作が完了する（ステップ２：ＹＥＳ）と、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄによる補正が、第１学習準備動作の実行中と同様に停止されるとともに、スロットル弁開度ＴＨが、第１所定値ＴＨＲＥＦ１から一定の第２所定値ＴＨＲＥＦ２にステップ状に変化するように制御され、第２所定値ＴＨＲＥＦ２に保持される（ステップ１６）。また、目標バルブリフトＬｉｆｔ＿ｃｍｄが、学習用目標リフトＬｉｆｔ＿ｃｍｄＧに保持される（ステップ１８）。前述したように、この学習用目標リフトＬｉｆｔ＿ｃｍｄＧは、スロットル弁開度ＴＨが第１所定値ＴＨＲＥＦ１に保持されている状態で吸入空気量Ｇｃｙｌａが学習用目標吸気量Ｔｇｔ＿ｇｃｙｌに収束するような値に、設定されている。以上から明らかなように、ステップ１６および１８の実行によって、吸入空気量Ｇｃｙｌａは、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌからずれるように変化する。また、この場合における学習用目標吸気量Ｔｇｔ＿ｇｃｙｌに対する吸入空気量Ｇｃｙｌａのずれ分は、目標スロットル弁開度ＴＨ＿ｃｍｄが干渉することによる吸入空気量Ｇｃｙｌａの変動分を良好に表す。
【０１０２】
そして、第１学習準備動作が完了してから待機時間ＴＭＤＥＬａが経過する（ステップ１７：ＹＥＳ）と、重み係数ωａの学習が開始される（ステップ１９および２２〜２４）。このように、第１学習準備動作が完了してから待機時間ＴＭＤＥＬａが経過するのを待って学習を開始するのは、ステップ１６および１８の実行によって吸入空気量Ｇｃｙｌａが学習用目標吸気量Ｔｇｔ＿ｇｃｙｌから確実にずれた状態で、すなわち、目標スロットル弁開度ＴＨ＿ｃｍｄによる干渉の影響が吸入空気量Ｇｃｙｌａに確実に反映された状態で、学習を行うためである。
【０１０３】
また、この学習中、吸気量偏差の絶対値｜Ｄｇｃｙｌ｜に比例する正規化吸気量偏差Ｆｄｇｃｙｌが小さいほど、報酬値Ｒｗ＿ｇｃｙｌがより大きな値に算出される（ステップ２３）。さらに、そのときに得られている重み係数ωａすなわちその前回値が、学習値ωａＧとして、今回の報酬値Ｒｗ＿ｇｃｙｌと対応させて、複数のバッファの１つに順次、記憶されるとともに、重み係数ωａの今回値が、複数の所定値の１つにランダムに設定される（ステップ２４）。
【０１０４】
そして、上記のように設定された重み係数ωａを適用したニューラルネットワークを用いて、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄが算出される（ステップ２６）。また、算出された第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを、学習用目標リフトＬｉｆｔ＿ｃｍｄＧに設定された暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄに加算することによって、目標バルブリフトＬｉｆｔ＿ｃｍｄが算出される（ステップ２７）。すなわち、目標バルブリフトＬｉｆｔ＿ｃｍｄが第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づいて補正される。
【０１０５】
一方、前記ステップ２０の答がＹＥＳで、吸気量偏差Ｄｇｃｙｌが前述した第１および第２所定値ｓｔｇｃｙｌＬ，ｓｔｇｃｙｌＨで規定される所定の範囲内にあるときには、前記ステップ２１で設定された安定タイマのタイマ値ｔＳＴＢａが値０であるか否かを判別する（ステップ２８）。この答がＮＯのときには、前記ステップ２２以降を実行する。
【０１０６】
一方、上記ステップ２８の答がＹＥＳ（ｔＳＴＢａ＝０）になったとき、すなわち、吸気量偏差Ｄｇｃｙｌが第１および第２所定値ｓｔｇｃｙｌＬ，ｓｔｇｃｙｌＨで規定される所定の範囲内にある状態が、安定時間ＴＳＴＢａにわたって継続したときには、吸入空気量Ｇｃｙｌａが学習用目標吸気量Ｔｇｔ＿ｇｃｙｌにほぼ収束した状態で安定しているとして、重み係数ωａの学習が完了したと判定する。そして、前記ステップ２４で記憶された複数の学習値ωａＧのうちの、最も大きな報酬値Ｒｗ＿ｇｃｙｌに対応するものを読み出し、重み係数ωａとして設定し、重み係数ωａを更新する（ステップ２８Ａ）とともに、学習が完了したことを表すために、第１学習完了フラグＦ＿ＬＥＤＯＮＥａを「１」にセットし（ステップ２９）、本処理を終了する。また、このステップ２９を実行した後には、図１０の前記ステップ１の答がＹＥＳになり、その場合には、そのまま本処理を終了する。
【０１０７】
一方、前記ステップ１４の答がＹＥＳ（ｔＬＥＡａ＝０）になったとき、すなわち、第１学習準備動作が完了してから、学習時間ＴＬＥＡａが経過したときには、前記ステップ２４などによる重み係数ωａの学習が十分に行われているため、当該学習が完了したと判定する。そして、上記ステップ２８Ａを実行することによって、記憶された複数の学習値ωａＧのうちの、最も大きな報酬値Ｒｗ＿ｇｃｙｌに対応するものを重み係数ωａとして設定し、重み係数ωａを更新するとともに、学習が完了したことを表すために、上記ステップ２９を実行し、本処理を終了する。
【０１０８】
以上のように、吸気量偏差Ｄｇｃｙｌが所定の範囲内にある状態が安定時間ＴＳＴＢａにわたって継続したという条件、および、第１学習準備動作が完了してから学習時間ＴＬＥＡａが経過したという条件の一方が成立すると、その時点で学習が完了したと判定される。
【０１０９】
次に、図１３および図１４を参照しながら、前述した第２干渉抑制値算出部４６で用いられる重み係数ωｂを学習するための第２学習処理について説明する。本処理も、上述した第１学習処理と同様、図５および図８に示す各種の要素によって、制御周期ΔＴで繰り返し実行される。また、第２学習処理では、重み係数ωｂの学習が第１学習処理の場合と同様にして行われる。
【０１１０】
まず、図１３のステップ４１では、第２学習完了フラグＦ＿ＬＥＤＯＮＥｂが「１」であるか否かを判別する。この第２学習完了フラグＦ＿ＬＥＤＯＮＥｂは、重み係数ωｂの学習が完了したときに、「１」にセットされるものであり、車両の点検の開始時に、「０」にリセットされる。
【０１１１】
上記ステップ４１の答がＮＯで、学習が完了していないときには、第２学習準備動作完了フラグＦ＿ＬＥＡＲＮｂが「１」であるか否かを判別する（ステップ４２）。この第２学習準備動作完了フラグＦ＿ＬＥＡＲＮｂは、重み係数ωｂの学習のための準備動作（以下「第２学習準備動作」という）が完了していることを、「１」で表すものであり、車両の点検の開始時に、「０」にリセットされる。
【０１１２】
この答がＮＯで、第２学習準備動作が完了していないときには、目標吸気圧ＰＢ＿ｃｍｄを、前述したようにエンジン回転数ＮＥａおよび要求トルクＴＲＥＱａに応じたマップ検索によって算出する（ステップ４３）。次いで、算出された目標吸気圧ＰＢ＿ｃｍｄと吸気圧ＰＢａとの偏差として、吸気圧偏差Ｄｐｂを算出する（ステップ４４）。
【０１１３】
次に、上記ステップ４４で算出された吸気圧偏差Ｄｐｂがほぼ値０であるか否かを判別する（ステップ４５）。この答がＮＯのときには、目標バルブリフトＬｉｆｔ＿ｃｍｄを一定の第１所定値ＬｉｆｔＲＥＦ１に設定する（ステップ４６）。このステップ４６の実行に伴い、リフトコントローラ５３によって、バルブリフトＬｉｆｔが、目標バルブリフトＬｉｆｔ＿ｃｍｄに収束するように制御される。また、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づく目標バルブリフトＬｉｆｔ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０１１４】
ステップ４６に続くステップ４７では、目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄを、吸気圧偏差Ｄｐｂに応じ、前述した応答指定型制御アルゴリズムによって算出する。次いで、算出された暫定値ＴＨ＿ｓｍｃ＿ｃｍｄを、目標スロットル弁開度ＴＨ＿ｃｍｄとして設定し（ステップ４８）、本処理を終了する。このステップ４８の実行に伴い、ＴＨコントローラ５２によって、スロットル弁開度ＴＨが、目標スロットル弁開度ＴＨ＿ｃｍｄに収束するように制御される。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づく目標スロットル弁開度ＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０１１５】
一方、上記ステップ４５の答がＹＥＳで、吸気圧偏差Ｄｐｂがほぼ値０になったときには、そのときに得られている目標スロットル弁開度ＴＨ＿ｃｍｄを、学習用目標開度ＴＨ＿ｃｍｄＧとして設定する（ステップ４９）。次いで、目標吸気圧ＰＢ＿ｃｍｄを、学習用目標吸気圧Ｔｇｔ＿ｐｂとして設定する（ステップ５０）。
【０１１６】
次に、ステップ５１および５２においてそれぞれ、値０までダウンカウントされる待機タイマのタイマ値ｔＭＤＥＬｂおよび学習タイマのタイマ値ｔＬＥＡｂを、所定の待機時間ＴＭＤＥＬｂおよび学習時間ＴＬＥＡｂに設定する。この待機時間ＴＭＤＥＬｂは、バルブリフトＬｉｆｔの変化が吸気圧ＰＢａに反映されるまでのむだ時間に設定されており、例えば０．１ｓｅｃに設定されている。また、学習時間ＴＬＥＡｂは、重み係数ωｂの学習を十分に行えるような時間に設定されており、例えば０．５ｓｅｃに設定されている。
【０１１７】
上記ステップ５２に続くステップ５３では、第２学習準備動作が完了したとして、そのことを表すために、第２学習準備動作完了フラグＦ＿ＬＥＡＲＮｂを「１」に設定し、図１４のステップ５４に進む。また、このステップ５３を実行した後には、前記ステップ４２の答がＹＥＳになり、その場合には、前記ステップ４３〜５３をスキップし、ステップ５４に進む。
【０１１８】
以上のように、本処理が開始されると、まず、第２学習準備動作が行われる。この第２学習準備動作の実行中、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、バルブリフトＬｉｆｔが、一定の第１所定値ＬｉｆｔＲＥＦ１に保持される（ステップ４６）。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、目標スロットル弁開度ＴＨ＿ｃｍｄが、吸気圧偏差Ｄｐｂに基づき、フィードバック制御アルゴリズムである応答指定型制御アルゴリズムによって、算出される（ステップ４７、４８）。これにより、スロットル弁開度ＴＨが制御されることによって、吸気圧ＰＢａが、目標吸気圧ＰＢ＿ｃｍｄに収束するように制御される。
【０１１９】
そして、吸気圧ＰＢａが目標吸気圧ＰＢ＿ｃｍｄに収束し、吸気圧偏差Ｄｐｂがほぼ値０になる（ステップ４５：ＹＥＳ）と、そのときに得られている目標スロットル弁開度ＴＨ＿ｃｍｄ、すなわち、吸気圧偏差Ｄｐｂがほぼ値０になったときに算出された目標スロットル弁開度ＴＨ＿ｃｍｄが、学習用目標開度ＴＨ＿ｃｍｄＧとして設定される（ステップ４９）。また、そのときの目標吸気圧ＰＢ＿ｃｍｄが、学習用目標吸気圧Ｔｇｔ＿ｐｂとして設定される（ステップ５０）とともに、第２学習準備動作が完了したと判定される（ステップ５３）。
【０１２０】
以上から明らかなように、学習用目標吸気圧Ｔｇｔ＿ｐｂは、バルブリフトＬｉｆｔが一定の第１所定値ＬｉｆｔＲＥＦ１に保持された状態で吸気圧ＰＢａが目標吸気圧ＰＢ＿ｃｍｄに収束しているときの目標吸気圧ＰＢ＿ｃｍｄに、設定される。また、学習用目標開度ＴＨ＿ｃｍｄＧは、バルブリフトＬｉｆｔが第１所定値ＬｉｆｔＲＥＦ１に保持された状態で吸気圧ＰＢａが目標吸気圧ＰＢ＿ｃｍｄすなわち学習用目標吸気圧Ｔｇｔ＿ｐｂに収束するような値に、設定される。
【０１２１】
図１４のステップ５４では、前記ステップ５２で設定された学習タイマのタイマ値ｔＬＥＡｂが値０であるか否かを判別する。この答がＮＯのときには、ステップ５５および５６においてそれぞれ、目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄを、一定の第２所定値ＬｉｆｔＲＥＦ２に設定する。この第２所定値ＬｉｆｔＲＥＦ２は、前述した第１所定値ＬｉｆｔＲＥＦ１よりも大きな値に設定されている。
【０１２２】
このステップ５６の実行に伴い、リフトコントローラ５３によって、バルブリフトＬｉｆｔが、目標バルブリフトＬｉｆｔ＿ｃｍｄに収束するように制御される。また、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づく目標バルブリフトＬｉｆｔ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０１２３】
上記ステップ５６に続くステップ５７では、前記ステップ５１で設定された待機タイマのタイマ値ｔＭＤＥＬｂが値０であるか否かを判別する。この答がＮＯのときには、目標スロットル弁開度ＴＨ＿ｃｍｄを前記ステップ４９で設定された学習用目標開度ＴＨ＿ｃｍｄＧに設定し（ステップ５８）、本処理を終了する。このステップ５８の実行に伴い、ＴＨコントローラ５２によって、スロットル弁開度ＴＨが、目標スロットル弁開度ＴＨ＿ｃｍｄすなわち学習用目標開度ＴＨ＿ｃｍｄＧに収束するように制御される。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づく目標スロットル弁開度ＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０１２４】
一方、上記ステップ５７の答がＹＥＳ（ｔＭＤＥＬｂ＝０）のとき、すなわち、第２学習準備動作が完了してから、待機時間ＴＭＤＥＬｂがすでに経過しているときには、前記ステップ５０で設定された学習用目標吸気圧Ｔｇｔ＿ｐｂと吸気圧ＰＢａとの偏差として、吸気圧偏差Ｄｐｂを算出する（ステップ５９）。次いで、算出された吸気圧偏差Ｄｐｂが、第１所定値ｓｔｐｂＬおよび第２所定値ｓｔｐｂＨで規定される所定の範囲内にあるか否かを判別する（ステップ６０）。
【０１２５】
この答がＮＯのときには、値０までダウンカウントされる安定タイマのタイマ値ｔＳＴＢｂを、所定の安定時間ＴＳＴＢｂ（例えば１．０ｓｅｃ）に設定する（ステップ６１）とともに、吸気圧偏差の絶対値｜Ｄｐｂ｜を所定の最大偏差Ｄｐｂ＿ｍａｘで除算することによって、正規化吸気圧偏差Ｆｄｐｂを算出する（ステップ６２）。この最大偏差Ｄｐｂ＿ｍａｘは、吸気圧偏差の絶対値｜Ｄｐｂ｜がとりうる最大の値に設定されている。
【０１２６】
次いで、算出された正規化吸気圧偏差Ｆｄｐｂと要求トルクＴＲＥＱａに基づき、図１５に示す所定のマップを検索することによって、報酬値Ｒｗ＿ｐｂを算出する（ステップ６３）。この場合、要求トルクＴＲＥＱａが前述した第１〜第３所定値ＴＲＥＱａ１〜ＴＲＥＱａ３以外のときには、報酬値Ｒｗ＿ｐｂは、補間演算によって求められる。
【０１２７】
上記のマップでは、報酬値Ｒｗ＿ｐｂは、基本的には、正規化吸気圧偏差Ｆｄｐｂが小さいほど、より大きな値にリニアに設定されており、また、正規化吸気圧偏差Ｆｄｐｂが値０のときにその最大値に設定されている。また、報酬値Ｒｗ＿ｐｂは、要求トルクＴＲＥＱａに応じて次のように設定されている。すなわち、要求トルクＴＲＥＱａが最も小さい第１所定値ＴＲＥＱａ１のときには、報酬値Ｒｗ＿ｐｂは、正規化吸気圧偏差Ｆｄｐｂの全体（値０≦Ｆｄｐｂ≦値１．０）に対して、Ｆｄｐｂ値が小さいほど、より大きな値にリニアに設定されている。
【０１２８】
また、要求トルクＴＲＥＱａが中間の第２所定値ＴＲＥＱａ２のときには、正規化吸気圧偏差Ｆｄｐｂに対する報酬値Ｒｗ＿ｐｂの傾きは、値０≦Ｆｄｐｂ≦第１所定値Ｆｄｐｂ１の範囲では、より大きな値に設定されており、Ｆｄｐｂ＞第１所定値Ｆｄｐｂ１の範囲では、より小さな値に設定されている。さらに、要求トルクＴＲＥＱａが最も大きい第３所定値ＴＲＥＱａ３のときには、正規化吸気圧偏差Ｆｄｐｂに対する報酬値Ｒｗ＿ｐｂの傾きは、値０≦Ｆｄｐｂ≦第２所定値Ｆｄｐｂ２の範囲では、より大きな値に設定されており、Ｆｄｐｂ＞Ｆｄｐｂ２の範囲では、より小さな値に設定されている。また、これらの第１および第２所定値Ｆｄｐｂ１，Ｆｄｐｂ２は、値０＜Ｆｄｐｂ２＜Ｆｄｐｂ１＜値１．０の関係を満たすように設定されている。
【０１２９】
上記の説明から明らかなように、図１５のマップでは、正規化吸気圧偏差Ｆｄｐｂに対する報酬値Ｒｗ＿ｐｂの傾きが比較的大きい範囲が、要求トルクＴＲＥＱａが小さいほど、より大きく設定されている。これは、要求トルクＴＲＥＱａが小さいほど、すなわちエンジン３の負荷が低いほど、目標スロットル弁開度ＴＨ＿ｃｍｄに対する吸気圧ＰＢａの感度が高いことから、正規化吸気圧偏差Ｆｄｐｂのより大きな範囲に対して、報酬値Ｒｗ＿ｐｂをきめ細かく設定するためである。
【０１３０】
上記ステップ６３に続くステップ６４では、ステップ６３で算出された報酬値Ｒｗ＿ｐｂに基づいて、重み係数ωｂを強化学習によって学習する。この学習は次のようにして行われる。すなわち、まず、そのときに設定されている重み係数ωｂ（前回値）を、その学習値ωｂＧとして、算出された報酬値Ｒｗ＿ｐｂと対応させて、複数のバッファの１つに順次、記憶する。次いで、重み係数ωｂ（今回値）を、実験により予め設定された互いに異なる複数の所定値の１つにランダムに設定する。なお、今回が学習開始後の１回目のループであるときには、前記ステップ５８から明らかなように、重み係数ωｂがまだ設定されていないので、学習値ωｂＧは、値０に設定されるとともに、報酬値Ｒｗ＿ｐｂと対応させて記憶される。
【０１３１】
上記ステップ６４に続くステップ６５では、目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄを、前記ステップ４９で設定された学習用目標開度ＴＨ＿ｃｍｄＧに設定する。次いで、ステップ６６において、第２干渉抑制値算出部４６の説明で述べたようにして、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを算出する。すなわち、エンジン回転数ＮＥａなどの運転状態パラメータや、前記ステップ５９で算出された吸気圧偏差Ｄｐｂ、前記ステップ５５で設定された目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄなどを入力とし、ニューラルネットワークを用いて、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを算出する。
【０１３２】
次に、上記ステップ６５で設定された暫定値ＴＨ＿ｓｍｃ＿ｃｍｄに、ステップ６６で算出された第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを加算することによって、目標スロットル弁開度ＴＨ＿ｃｍｄを算出し（ステップ６７）、本処理を終了する。このステップ６７の実行に伴い、ＴＨコントローラ５２によって、スロットル弁開度ＴＨが、目標スロットル弁開度ＴＨ＿ｃｍｄに収束するように制御される。
【０１３３】
以上のように、第２学習準備動作が完了する（ステップ４２：ＹＥＳ）と、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄによる補正が、第２学習準備動作の実行中と同様に停止されるとともに、バルブリフトＬｉｆｔが、第１所定値ＬｉｆｔＲＥＦ１から一定の第２所定値ＬｉｆｔＲＥＦ２にステップ状に変化するように制御され、第２所定値ＬｉｆｔＲＥＦ２に保持される（ステップ５６）。また、目標スロットル弁開度ＴＨ＿ｃｍｄが、学習用目標開度ＴＨ＿ｃｍｄＧに保持される（ステップ５８）。前述したように、この学習用目標開度ＴＨ＿ｃｍｄＧは、バルブリフトＬｉｆｔが第１所定値ＬｉｆｔＲＥＦ１に保持されている状態で吸気圧ＰＢａが学習用目標吸気圧Ｔｇｔ＿ｐｂに収束するような値に、設定されている。以上から明らかなように、ステップ５６および５８の実行によって、吸気圧ＰＢａは、学習用目標吸気圧Ｔｇｔ＿ｐｂからずれるように変化する。また、この場合における学習用目標吸気圧Ｔｇｔ＿ｐｂに対する吸気圧ＰＢａのずれ分は、目標バルブリフトＬｉｆｔ＿ｃｍｄが干渉することによる吸気圧ＰＢａの変動分を良好に表す。
【０１３４】
そして、第２学習準備動作が完了してから待機時間ＴＭＤＥＬｂが経過する（ステップ５７：ＹＥＳ）と、重み係数ωｂの学習が開始される（ステップ５９および６２〜６４）。このように、第２学習準備動作が完了してから待機時間ＴＭＤＥＬｂが経過するのを待って学習を開始するのは、ステップ５６および５８の実行によって吸気圧ＰＢａが学習用目標吸気圧Ｔｇｔ＿ｐｂから確実にずれた状態で、すなわち、目標バルブリフトＬｉｆｔ＿ｃｍｄによる干渉の影響が吸気圧ＰＢａに確実に反映された状態で、学習を行うためである。
【０１３５】
また、この学習中、吸気圧偏差の絶対値｜Ｄｐｂ｜に比例する正規化吸気圧偏差Ｆｄｐｂが小さいほど、報酬値Ｒｗ＿ｐｂがより大きな値に算出される（ステップ６３）。さらに、そのときに得られている重み係数ωｂすなわちその前回値が、学習値ωｂＧとして、今回の報酬値Ｒｗ＿ｐｂと対応させて、複数のバッファの１つに順次、記憶されるとともに、重み係数ωｂの今回値が、複数の所定値の１つにランダムに設定される（ステップ６４）。
【０１３６】
そして、上記のように設定された重み係数ωｂを適用したニューラルネットワークを用いて、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄが算出される（ステップ６６）。また、算出された第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを、学習用目標開度ＴＨ＿ｃｍｄＧに設定された暫定値ＴＨ＿ｓｍｃ＿ｃｍｄに加算することによって、目標スロットル弁開度ＴＨ＿ｃｍｄが算出される（ステップ６７）。すなわち、目標スロットル弁開度ＴＨ＿ｃｍｄが第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づいて補正される。
【０１３７】
一方、前記ステップ６０の答がＹＥＳで、吸気圧偏差Ｄｐｂが前述した第１および第２所定値ｓｔｐｂＬ，ｓｔｐｂＨで規定される所定の範囲内にあるときには、前記ステップ６１で設定された安定タイマのタイマ値ｔＳＴＢｂが値０であるか否かを判別する（ステップ６８）。この答がＮＯのときには、前記ステップ６２以降を実行する。
【０１３８】
一方、上記ステップ６８の答がＹＥＳ（ｔＳＴＢｂ＝０）になったとき、すなわち、吸気圧偏差Ｄｐｂが第１および第２所定値ｓｔｐｂＬ，ｓｔｐｂＨで規定される所定の範囲内にある状態が、安定時間ＴＳＴＢｂにわたって継続したときには、吸気圧ＰＢａが学習用目標吸気圧Ｔｇｔ＿ｐｂにほぼ収束した状態で安定しているとして、重み係数ωｂの学習が完了したと判定する。そして、前記ステップ６４で記憶された複数の学習値ωｂＧのうちの、最も大きな報酬値Ｒｗ＿ｐｂに対応するものを読み出し、重み係数ωｂとして設定し、重み係数ωｂを更新する（ステップ６８Ａ）とともに、学習が完了したことを表すために、第２学習完了フラグＦ＿ＬＥＤＯＮＥｂを「１」にセットし（ステップ６９）、本処理を終了する。また、このステップ６９を実行した後には、図１３の前記ステップ４１の答がＹＥＳになり、その場合には、そのまま本処理を終了する。
【０１３９】
一方、前記ステップ５４の答がＹＥＳ（ｔＬＥＡｂ＝０）になったとき、すなわち、第２学習準備動作が完了してから、学習時間ＴＬＥＡｂが経過したときには、前記ステップ６４などによる重み係数ωｂの学習が十分に行われているため、当該学習が完了したと判定する。そして、上記ステップ６８Ａを実行することによって、記憶された複数の学習値ωｂＧのうちの、最も大きな報酬値Ｒｗ＿ｐｂに対応するものを重み係数ωｂとして設定し、重み係数ωｂを更新するとともに、学習が完了したことを表すために、上記ステップ６９を実行し、本処理を終了する。
【０１４０】
以上のように、吸気圧偏差Ｄｐｂが所定の範囲内にある状態が安定時間ＴＳＴＢｂにわたって継続したという条件、および、第２学習準備動作が完了してから学習時間ＴＬＥＡｂが経過したという条件の一方が成立すると、その時点で学習が完了したと判定される。
【０１４１】
また、以上の第１実施形態は、特許請求の範囲に記載された請求項１〜４に係る発明（以下、総称して「第１発明」という）に対応しており、第１実施形態における各種の要素と、第１発明における各種の要素との対応関係は次のとおりである。すなわち、第１実施形態におけるＥＣＵ２、第１および第２コントローラ４３，４４が、第１発明における制御入力算出手段に相当し、第１実施形態におけるＥＣＵ２、第１および第２干渉抑制値算出部４５，４６が、第１発明における干渉抑制パラメータ算出手段に相当するとともに、第１実施形態におけるＥＣＵ２、第１および第２加算器４７，４８が、第１発明における補正手段に相当する。
【０１４２】
また、第１実施形態におけるＥＣＵ２および目標値算出部４１が、第１発明における目標値設定手段に相当し、第１実施形態におけるエアフローセンサ２４、吸気圧センサ２５、吸気温センサ２６およびＥＣＵ２が、第１発明における制御量検出手段に相当するとともに、第１実施形態におけるＥＣＵ２および学習部６１が、第１発明における学習手段に相当する。さらに、第１実施形態におけるＴＨアクチュエータ１５ａが、第１発明におけるスロットル弁機構に相当する。
【０１４３】
また、第１実施形態における目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄが、第１発明における制御入力に相当するとともに、第１実施形態における吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａが、第１発明における制御量に相当する。さらに、第１実施形態における第１および第２干渉抑制パラメータＬｉｆｔ＿ｄｃ＿ｃｍｄ，ＴＨ＿ｄｃ＿ｃｍｄが、第１発明における干渉抑制パラメータに相当するとともに、第１実施形態における目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄが、第１発明における目標値に相当する。
【０１４４】
また、第１実施形態における報酬値Ｒｗ＿ｇｃｙｌおよびＲｗ＿ｐｂが、第１発明における報酬に相当するとともに、第１実施形態における重み係数ωａおよびωｂが、第１発明におけるニューロンパラメータに相当する。さらに、第１実施形態における学習用目標リフトＬｉｆｔ＿ｃｍｄＧおよび学習用目標開度ＴＨ＿ｃｍｄＧが、第１発明におけるニューロンパラメータの学習の開始直前に算出された値に相当するとともに、第１実施形態における学習用目標吸気量Ｔｇｔ＿ｇｃｙｌおよび学習用目標吸気圧Ｔｇｔ＿ｐｂが、第１発明におけるニューロンパラメータの学習の開始直前に設定された目標値に相当する。また、第１実施形態における目標スロットル弁開度ＴＨ＿ｃｍｄが、第１発明における開度制御パラメータに相当するとともに、第１実施形態における目標バルブリフトＬｉｆｔ＿ｃｍｄが、第１発明におけるリフト制御パラメータに相当する。
【０１４５】
以上のように、第１実施形態によれば、エンジン３を含むプラント５１において、制御入力としての目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄ、ならびに、制御量としての吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａの間に、相互干渉が存在している。また、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄの算出が、目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄを入力とし、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを出力として構築されたニューラルネットワークを用いて行われる。さらに、算出された第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づいて、目標バルブリフトＬｉｆｔ＿ｃｍｄが補正される。また、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄの算出が、目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄを入力とし、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを出力として構築されたニューラルネットワークを用いて行われる。さらに、算出された第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づいて、目標スロットル弁開度ＴＨ＿ｃｍｄが補正される。
【０１４６】
以上により、目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄを、相互干渉を抑制するように適切に補正することができる。この場合、プラント５１には、非線形系であるエンジン３が含まれるものの、ニューラルネットワークは、非線形系を適切かつ容易にモデル化できるという特性を有するので、第１および第２干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄ，ＴＨ＿ｄｃ＿ｃｍｄを算出するためのニューラルネットワークを、適切かつ容易に構築することができる。以上から、非線形系であるプラント５１において、目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄ、ならびに、吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａの間に存在する相互干渉を適切に抑制でき、それにより吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａを適切に制御することができるとともに、制御装置１を容易に設計することができる。
【０１４７】
また、ニューラルネットワークに用いられる重み係数ωａおよびωｂが、それぞれ別個に、すなわちニューラルネットワークごとに学習される。さらに、重み係数ωａを学習する前に、検出された吸入空気量Ｇｃｙｌａが目標吸気量Ｇｃｙｌ＿ｃｍｄになるように、目標バルブリフトＬｉｆｔ＿ｃｍｄが、フィードバック制御アルゴリズムである応答指定型制御アルゴリズムによって算出される。さらに、目標スロットル弁開度ＴＨ＿ｃｍｄが、一定の第１所定値ＴＨＲＥＦ１に保持されるとともに、第１および第２干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄ，ＴＨ＿ｄｃ＿ｃｍｄにそれぞれ基づく目標バルブリフトＬｉｆｔ＿ｃｍｄおよび目標スロットル弁開度ＴＨ＿ｃｍｄの補正が停止される。以上により、吸入空気量Ｇｃｙｌａは、目標吸気量Ｇｃｙｌ＿ｃｍｄに収束した状態に保持される。
【０１４８】
そして、重み係数ωａの学習が開始されると、目標スロットル弁開度ＴＨ＿ｃｍｄが、第２所定値ＴＨＲＥＦ２に保持されるとともに、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに基づく補正が停止される。また、目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄが、応答指定型制御アルゴリズムによって算出されず、学習の開始直前に算出された学習用目標リフトＬｉｆｔ＿ｃｍｄＧに設定され、保持される。以上により、学習の開始時、学習の開始直前に設定された目標吸気量Ｇｃｙｌ＿ｃｍｄである学習用目標吸気量Ｔｇｔ＿ｇｃｙｌに収束した状態に保持されていた吸入空気量Ｇｃｙｌａは、この学習用目標吸気量Ｔｇｔ＿ｇｃｙｌからずれるようになる。また、重み係数ωａの学習中、吸気量偏差Ｄｇｃｙｌが、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌと吸入空気量Ｇｃｙｌａとの偏差として算出される。前述したように、学習の開始時における吸気量偏差Ｄｇｃｙｌは、目標スロットル弁開度ＴＨ＿ｃｍｄが干渉することによる吸入空気量Ｇｃｙｌａの変動分を良好に表す。
【０１４９】
さらに、重み係数ωａの学習中、重み係数ωａが複数の所定値の１つに設定され、設定された重み係数ωａを適用したニューラルネットワークを用いて、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄが算出されるとともに、算出された第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄで補正された目標バルブリフトＬｉｆｔ＿ｃｍｄを用いて、吸入空気量Ｇｃｙｌａが制御される。また、この吸入空気量Ｇｃｙｌａの制御によって得られた正規化吸気量偏差Ｆｄｇｃｙｌが小さいほど、すなわち、吸気量偏差の絶対値｜Ｄｇｃｙｌ｜が小さいほど、報酬値Ｒｗ＿ｇｃｙｌがより大きな値に算出されるとともに、この報酬値Ｒｗ＿ｇｃｙｌと対応させて、重み係数ωａが学習値ωａＧとして順次、記憶される。さらに、記憶された複数の学習値ωａＧのうちの、最も大きな報酬値Ｒｗ＿ｇｃｙｌに対応する学習値ωａＧに、すなわち、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌと吸入空気量Ｇｃｙｌａとの偏差である吸気量偏差の絶対値｜Ｄｇｃｙｌ｜が最も小さくなる学習値ωａＧに、重み係数ωａが更新され、学習が完了する。
【０１５０】
以上のように、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに応じた目標バルブリフトＬｉｆｔ＿ｃｍｄを用いて制御された吸入空気量Ｇｃｙｌａが、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌになるように、吸気量偏差Ｄｇｃｙｌに基づく報酬値Ｒｗ＿ｇｃｙｌを用いて、重み係数ωａの強化学習が行われる。したがって、重み係数ωａを適切に学習することができる。
【０１５１】
また、重み係数ωｂの学習も、重み係数ωａの場合と同様にして行われる。すなわち、重み係数ωｂを学習する前に、検出された吸気圧ＰＢａが目標吸気圧ＰＢ＿ｃｍｄになるように、目標スロットル弁開度ＴＨ＿ｃｍｄが、応答指定型制御アルゴリズムによって算出される。さらに、目標バルブリフトＬｉｆｔ＿ｃｍｄが、一定の第１所定値ＬｉｆｔＲＥＦ１に保持されるとともに、第２および第１干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄ，Ｌｉｆｔ＿ｄｃ＿ｃｍｄにそれぞれ基づく目標スロットル弁開度ＴＨ＿ｃｍｄおよび目標バルブリフトＬｉｆｔ＿ｃｍｄの補正が停止される。以上により、吸気圧ＰＢａは、目標吸気圧ＰＢ＿ｃｍｄに収束した状態に保持される。
【０１５２】
そして、重み係数ωｂの学習が開始されると、目標バルブリフトＬｉｆｔ＿ｃｍｄが、第２所定値ＬｉｆｔＲＥＦ２に保持されるとともに、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄに基づく補正が停止される。また、目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄが、応答指定型制御アルゴリズムによって算出されず、学習の開始直前に算出された学習用目標開度ＴＨ＿ｃｍｄＧに設定され、保持される。以上により、学習の開始時、学習の開始直前に設定された目標吸気圧ＰＢ＿ｃｍｄである学習用目標吸気圧Ｔｇｔ＿ｐｂに収束した状態に保持されていた吸気圧ＰＢａは、この学習用目標吸気圧Ｔｇｔ＿ｐｂからずれるようになる。また、重み係数ωｂの学習中、吸気圧偏差Ｄｐｂが、学習用目標吸気圧Ｔｇｔ＿ｐｂと吸気圧ＰＢａとの偏差として算出される。前述したように、学習の開始時における吸気圧偏差Ｄｐｂは、目標バルブリフトＬｉｆｔ＿ｃｍｄが干渉することによる吸気圧ＰＢａの変動分を良好に表す。
【０１５３】
さらに、重み係数ωｂの学習中、重み係数ωｂが複数の所定値の１つに設定され、設定された重み係数ωｂを適用したニューラルネットワークを用いて、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄが算出されるとともに、算出された第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄで補正された目標スロットル弁開度ＴＨ＿ｃｍｄを用いて、吸気圧ＰＢａが制御される。また、この吸気圧ＰＢａの制御によって得られた正規化吸気圧偏差Ｆｄｐｂが小さいほど、すなわち、吸気圧偏差の絶対値｜Ｄｐｂ｜が小さいほど、報酬値Ｒｗ＿ｐｂがより大きな値に算出されるとともに、この報酬値Ｒｗ＿ｐｂと対応させて、重み係数ωｂが学習値ωｂＧとして順次、記憶される。さらに、記憶された複数の学習値ωｂＧのうちの、最も大きな報酬値Ｒｗ＿ｐｂに対応する学習値ωｂＧに、すなわち、学習用目標吸気圧Ｔｇｔ＿ｐｂと吸気圧ＰＢａとの偏差である吸気圧偏差の絶対値｜Ｄｐｂ｜が最も小さくなる学習値ωｂＧに、重み係数ωｂが更新され、学習が完了する。
【０１５４】
以上のように、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄに応じた目標スロットル弁開度ＴＨ＿ｃｍｄを用いて制御された吸気圧ＰＢａが、学習用目標吸気圧Ｔｇｔ＿ｐｂになるように、吸気圧偏差Ｄｐｂに基づく報酬値Ｒｗ＿ｐｂを用いて、重み係数ωｂの強化学習が行われる。したがって、重み係数ωｂを適切に学習することができる。
【０１５５】
第１実施形態によれば、以上のように学習されたニューラルネットワークを用いて算出された第１および第２干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄ，ＴＨ＿ｄｃ＿ｃｍｄに基づいて、目標バルブリフトＬｉｆｔ＿ｃｍｄおよび目標スロットル弁開度ＴＨ＿ｃｍｄをそれぞれ補正するので、相互干渉をより適切に抑制することができる。
【０１５６】
さらに、重み係数ωａおよびωｂを学習する学習手法として、強化学習が用いられる。強化学習は、報酬を与えておけば、重み係数ωａおよびωｂを最適な値に自動的に学習するという特性を有しており、誤差逆伝播法（バックプロパゲーション）と異なり、教師信号を設定する必要がない。したがって、制御装置１をより容易に設計することができる。同じ理由により、相互干渉の態様などが互いに異なる複数の制御入力および複数の制御量ごとにニューラルネットワークを構築する場合でも、前述した従来の場合と異なり、モデル式を始めから設定する必要がなく、この構築を容易に行うことができる。したがって、この場合にも、制御装置を容易に設計することができる。
【０１５７】
また、第１および第２干渉抑制値ＬＩｆｔ＿ｄｃ＿ｃｍｄ，ＴＨ＿ｄｃ＿ｃｍｄの算出を、前述した運転状態パラメータ（エンジン回転数ＮＥａや、要求トルクＴＲＥＱａなど）に応じて行うので、両者ＬＩｆｔ＿ｄｃ＿ｃｍｄ，ＴＨ＿ｄｃ＿ｃｍｄを、エンジン３の運転状態を反映させながら、適切に算出することができる。
【０１５８】
なお、第１実施形態では、制御入力としての目標スロットル弁開度の暫定値ＴＨ＿ｓｍｃ＿ｃｍｄおよび目標バルブリフトの暫定値Ｌｉｆｔ＿ｓｍｃ＿ｃｍｄを算出するフィードバック制御アルゴリズムとして、応答指定型制御アルゴリズムを用いているが、他の適当なフィードバック制御アルゴリズム、例えば、ＰＩＤ制御アルゴリズムなどを用いてもよい。
【０１５９】
また、第１実施形態では、検出された制御量としての吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａが目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄにそれぞれなるように、フィードバック制御アルゴリズムによって、暫定値ＴＨ＿ｓｍｃ＿ｃｍｄおよびＬｉｆｔ＿ｓｍｃ＿ｃｍｄをそれぞれ算出しているが、目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄに応じたマップ検索によって、暫定値ＴＨ＿ｓｍｃ＿ｃｍｄおよびＬｉｆｔ＿ｓｍｃ＿ｃｍｄをそれぞれ算出してもよい。この場合、重み係数ωａおよびωｂの学習中における吸気量偏差Ｄｇｃｙｌおよび吸気圧偏差Ｄｐｂの算出に、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌおよび学習用目標吸気圧Ｔｇｔ＿ｐｂに代えて、そのときどきに算出された目標吸気量Ｇｃｙｌ＿ｃｍｄおよび目標吸気圧ＰＢ＿ｃｍｄが、それぞれ用いられる。
【０１６０】
さらに、第１実施形態では、吸入空気量Ｇｃｙｌを、演算により算出しているが、センサを用いて直接的に検出してもよい。また、第１実施形態では、吸気圧ＰＢを、吸気圧センサ２５により検出しているが、演算により算出してもよい。さらに、第１実施形態では、報酬値Ｒｗ＿ｇｃｙｌおよびＲｗ＿ｐｂを、正規化吸気量偏差Ｆｄｇｃｙｌおよび正規化吸気圧偏差Ｆｄｐｂにそれぞれ基づいて、リニア（線形）に設定しているが、非線形に設定してもよい。
【０１６１】
また、第１実施形態では、報酬値Ｒｗ＿ｇｃｙｌを算出するためのパラメータとして、正規化吸気量偏差Ｆｄｇｃｙｌを用いているが、吸気量偏差Ｄｇｃｙｌまたはその絶対値｜Ｄｇｃｙｌ｜を用いてもよい。あるいは、報酬値Ｒｗ＿ｇｃｙｌを算出するためのパラメータとして、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌと吸入空気量Ｇｃｙｌａとの比較結果を表す他の適当なパラメータ、例えば、学習用目標吸気量Ｔｇｔ＿ｇｃｙｌおよび吸入空気量Ｇｃｙｌａの一方に対する他方の比などを用いてもよい。
【０１６２】
このことは、報酬値Ｒｗ＿ｐｂについても同様に当てはまる。すなわち、報酬値Ｒｗ＿ｐｂを算出するためのパラメータとして、吸気圧偏差Ｄｐｂまたはその絶対値｜Ｄｐｂ｜を用いてもよく、あるいは、学習用目標吸気圧Ｔｇｔ＿ｐｂと吸気圧ＰＢａとの比較結果を表す他の適当なパラメータ、例えば、学習用目標吸気圧Ｔｇｔ＿ｐｂおよび吸気圧ＰＢａの一方に対する他方の比などを用いてもよい。
【０１６３】
さらに、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを算出するためにニューラルネットワークに入力されるパラメータとして、前述した各種のパラメータに加え、スロットル弁開度ＴＨが一定の状態から変化し始めた時点からの経過時間を用いてもよい。吸入空気量Ｇｃｙｌａは、スロットル弁開度ＴＨの変化に対し、応答遅れをもって変化することから、そのような応答遅れを良好に反映させながら、第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄを適切に算出することができる。同様に、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを算出するためにニューラルネットワークに入力されるパラメータとして、バルブリフトＬｉｆｔが一定の状態から変化し始めた時点からの経過時間を用いてもよい。吸気圧ＰＢａは、バルブリフトＬｉｆｔの変化に対し、応答遅れをもって変化することから、そのような応答遅れを良好に反映させながら、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄを適切に算出することができる。
【０１６４】
また、第１実施形態では、吸気量偏差Ｄｇｃｙｌが所定の範囲内にある状態が安定時間ＴＳＴＢａにわたって継続したという条件、および、第１学習準備動作が完了してから学習時間ＴＬＥＡａが経過したという条件の一方が成立したときに、それまでに記憶された複数の学習値ωａＧのうちの、最も大きな報酬値Ｒｗ＿ｇｃｙｌに対応するものに重み係数ωａを更新することにより、学習を行っているが、次のようにして行ってもよい。すなわち、上記の２つの条件の一方が成立したときにも、報酬値Ｒｗ＿ｇｃｙｌを算出するとともに、そのときに設定されている重み係数ωａを学習値ωａＧとして、算出された報酬値Ｒｗ＿ｇｃｙｌと対応させて記憶する。そして、記憶された今回の学習値ωａＧを含む複数の学習値ωａＧのうちの、最も大きな報酬値Ｒｗ＿ｇｃｙｌに対応するものに重み係数ωａを更新することにより、学習を行ってもよい。
【０１６５】
このことは、重み係数ωｂについても同様に当てはまる。すなわち、吸気圧偏差Ｄｐｂが所定の範囲内にある状態が安定時間ＴＳＴＢｂにわたって継続したという条件、および、第２学習準備動作が完了してから学習時間ＴＬＥＡｂが経過したという条件の一方が成立したときにも、報酬値Ｒｗ＿ｐｂを算出するとともに、そのときに設定されている重み係数ωｂを学習値ωｂＧとして、算出された報酬値Ｒｗ＿ｐｂと対応させて記憶する。そして、記憶された今回の学習値ωｂＧを含む複数の学習値ωｂＧのうちの、最も大きな報酬値Ｒｗ＿ｐｂに対応するものに重み係数ωｂを更新することにより、学習を行ってもよい。
【０１６６】
さらに、第１実施形態では、報酬値Ｒｗ＿ｇｃｙｌが算出されるごとに、学習値ωａＧを記憶するとともに、記憶された複数の学習値ωａＧのうちの、最も大きな報酬値Ｒｗ＿ｇｃｙｌに対応するものに重み係数ωａを更新しているが、今回算出された報酬値Ｒｗ＿ｇｃｙｌが、それまでに算出された報酬値Ｒｗ＿ｇｃｙｌよりも大きいときに限って、そのときに設定されている重み係数ωａを学習値ωａＧとして記憶し、学習値ωａＧを随時、更新するとともに、記憶された学習値ωａＧに重み係数ωａを更新してもよい。これにより、上記と同様の作用を得ることができる。
【０１６７】
このことは、学習値ωｂＧについても同様に当てはまる。すなわち、今回算出された報酬値Ｒｗ＿ｐｂが、それまでに算出された報酬値Ｒｗ＿ｐｂよりも大きいときに限って、そのときに設定されている重み係数ωｂを学習値ωｂＧとして記憶し、学習値ωｂＧを随時、更新するとともに、記憶された学習値ωｂＧに重み係数ωｂを更新してもよい。
【０１６８】
また、第１実施形態では、学習のための重み係数ωａの設定および学習値ωａＧの記憶（ステップ２４）を、第１学習処理を実行するごと（制御周期ΔＴごと）に行っているが、吸入空気量ＧｃｙｌａがバルブリフトＬｉｆｔの変化に対して応答遅れをもって変化するので、この応答遅れに応じた所定時間ごとに行ってもよい。同様に、学習のための重み係数ωｂの設定および学習値ωｂＧの記憶（ステップ６４）を、第２学習処理を実行するごと（制御周期ΔＴごと）に行っているが、吸気圧ＰＢａがスロットル弁開度ＴＨの変化に対して応答遅れをもって変化するので、この応答遅れに応じた所定時間ごとに行ってもよい。
【０１６９】
次に、本発明の第２実施形態による制御装置７１について説明する。図１６は、この制御装置７１を適用した内燃機関８１を概略的に示しており、図１７は、制御装置７１のＥＣＵ７２などを示している。同図および後述する他の図面において、第１実施形態と同じ構成要素については、同じ符号を用いて示している。以下、第１実施形態と異なる点を中心に説明する。
【０１７０】
この内燃機関（以下「エンジン」という）８１は、第１実施形態と異なり、ガソリンエンジンではなく、ディーゼルエンジンであり、車両（図示せず）に動力源として搭載されている。また、エンジン８１は、４つの気筒８１ａと、気筒８１ａごとに設けられた燃料噴射弁８２（図１７に１つのみ図示）を備えている。これらの燃料噴射弁８２の開弁時間すなわち燃料噴射量は、第１実施形態の場合と同様、ＥＣＵ７２により算出された燃料噴射量ＴＯＵＴｂに基づいて制御される。
【０１７１】
また、エンジン８１には、第１実施形態で述べたクランク角センサ２２が設けられており、クランク角センサ２２は、エンジン８１のクランクシャフトの回転に伴い、パルス信号であるＣＲＫｂ信号をＥＣＵ２に出力する。ＥＣＵ７２は、クランク角センサ２２からのＣＲＫｂ信号に基づいて、エンジン８１の回転数（以下「エンジン回転数」という）ＮＥｂを算出する。
【０１７２】
さらに、４つの気筒８１ａには、吸気マニホルド８３ａを介して吸気通路８３が連通するとともに、排気マニホルド８８ａを介して排気通路８８が連通している。この吸気通路８３には、上流側から順に、第１実施形態で述べたエアフローセンサ２４、低圧用スロットル弁８４、第１実施形態で述べた吸気圧センサ２５、ターボ過給機８５、インタークーラ８６、高圧用スロットル弁８７、および吸気チャンバ圧センサ３１が設けられている。
【０１７３】
低圧用スロットル弁８４は、バタフライ弁で構成されており、後述する低圧ＥＧＲ通路９０ａなどとともに低圧ＥＧＲ装置９０を構成するものである。低圧用スロットル弁８４には、電動機で構成されたＬＰＴＨアクチュエータ８４ａが連結されている。低圧用スロットル弁８４の開度（以下「低圧用スロットル弁開度」という）は、ＥＣＵ７２からの後述するＬＰＴＨ制御入力ＵｌｐｔｈがＬＰＴＨアクチュエータ８４ａに入力されることによって、変更される。これにより、低圧用スロットル弁８４よりも下流側の吸気通路８３内の圧力（以下「吸気圧」という）が、制御される。また、低圧用スロットル弁開度ＬＰＴＨは、ＬＰＴＨ開度センサ３２によって検出され、その検出信号はＥＣＵ７２に出力される。
【０１７４】
また、エアフローセンサ２４は、低圧用スロットル弁８４を通過する空気の流量（以下「空気流量」という）Ｑｉｎｂを検出し、その検出信号をＥＣＵ７２に出力する。吸気圧センサ２５は、吸気圧ＰＢｂを絶対圧として検出し、その検出信号をＥＣＵ７２に出力する。ＥＣＵ７２は、算出されたエンジン回転数ＮＥｂと、検出された吸気圧ＰＢｂに応じ、所定のマップ（図示せず）を検索することによって、エンジン８１に実際に吸入される吸入空気量Ｇｃｙｌｂを算出する。
【０１７５】
さらに、ターボ過給機８５は、吸気通路８３の吸気圧センサ２５よりも下流側に設けられたコンプレッサブレード８５ａと、排気通路８８に設けられ、コンプレッサブレード８５ａと一体に回転するタービンブレード８５ｂと、複数の可変ベーン８５ｃ（２つのみ図示）と、可変ベーン８５ｃを駆動するベーンアクチュエータ８５ｄなどで構成されている。
【０１７６】
このターボ過給機８５では、排気通路８８を流れる排ガスによってタービンブレード８５ｂが回転駆動されると、これと一体のコンプレッサブレード８５ａも同時に回転することにより、吸気通路８３内の空気が加圧される。すなわち、過給動作が実行される。
【０１７７】
また、可変ベーン８５ｃは、ターボ過給機８５が発生する過給圧を変化させるためのものであり、タービンブレード８５ｂを収容するハウジングに回動自在に取り付けられている。可変ベーン８５ｃは、ＥＣＵ７２に接続されたベーンアクチュエータ８５ｄに連結されている。ＥＣＵ７２は、ベーンアクチュエータ８５ｄを介して可変ベーン８５ｃの開度を変化させ、タービンブレード８５ｂに吹き付けられる排ガス量を変化させることによって、タービンブレード８５ｂの回転数すなわちコンプレッサブレード８５ａの回転数を変化させ、それにより、過給圧を制御する。
【０１７８】
また、インタークーラ８６は、水冷式のものであり、その内部を吸気が通過する際、ターボ過給機８５の過給動作によって昇温された吸気を冷却する。
【０１７９】
さらに、高圧用スロットル弁８７は、前述した低圧用スロットル弁８４と同様、バタフライ弁で構成されており、後述する高圧ＥＧＲ通路９１ａなどとともに高圧ＥＧＲ装置９１を構成するものである。高圧用スロットル弁８７には、電動機で構成されたＨＰＴＨアクチュエータ８７ａが連結されている。この高圧用スロットル弁８７の開度（以下「高圧用スロットル弁開度」という）は、ＥＣＵ７２からの後述するＨＰＴＨ制御入力ＵｈｐｔｈがＨＰＴＨアクチュエータ８７ａに入力されることによって、変更される。これにより、吸気マニホルド８３ａの吸気チャンバ８３ｂ内の圧力（以下「吸気チャンバ圧」という）が、制御される。また、高圧用スロットル弁開度ＨＰＴＨは、ＨＰＴＨ開度センサ３３によって検出され、その検出信号はＥＣＵ７２に出力される。
【０１８０】
また、吸気チャンバ圧センサ３１は、例えば半導体圧力センサなどで構成されており、上記の吸気チャンバ圧Ｐｃｈを絶対圧として検出し、その検出信号をＥＣＵ７２に出力する。
【０１８１】
さらに、排気通路８８には、上流側から順に、第１実施形態で述べた排気マニホルド圧センサ２８、排気マニホルド温センサ２９、前記タービンブレード８５ｂ、触媒装置８９、排気圧センサ３４および排気温センサ３５が設けられている。
【０１８２】
排気マニホルド圧センサ２８は、排気マニホルド８８ａ内の圧力（以下「排気マニホルド圧」という）Ｐｅｍｂを絶対圧として検出し、その検出信号をＥＣＵ７２に出力する。
【０１８３】
触媒装置８９は、排気通路８８を流れる排ガスを浄化するものであり、酸化触媒やフィルタの組み合わせで構成されている。また、排気圧センサ３４は、触媒装置８９を通過した排ガスの圧力（以下「排気圧」という）Ｐｅｘを絶対圧として検出し、その検出信号をＥＣＵ７２に出力する。排気温センサ３５は、触媒装置８９を通過した排ガスの温度（以下「排気温」という）Ｔｅｘを検出し、その検出信号をＥＣＵ７２に出力する。
【０１８４】
エンジン８１にはさらに、低圧ＥＧＲ装置９０および高圧ＥＧＲ装置９１が設けられている。この低圧ＥＧＲ装置９０は、排気通路８８を流れる排ガスの一部を吸気通路８３に還流させるものであり、吸気通路８３と排気通路８８に接続された低圧ＥＧＲ通路９０ａと、低圧ＥＧＲ通路９０ａを流れる還流ガス（以下「低圧ＥＧＲガス」という）を冷却する低圧ＥＧＲクーラ９０ｂと、この低圧ＥＧＲ通路９０ａを開閉する低圧ＥＧＲ制御弁９０ｃなどで構成されている。低圧ＥＧＲ通路９０ａの一端は、排気通路８８の触媒装置８９よりも下流側に接続され、他端は、吸気通路８３の低圧用スロットル弁８４とコンプレッサブレード８５ａの間に接続されている。
【０１８５】
低圧ＥＧＲ制御弁９０ｃは、その開度が最大値と最小値との間でリニアに変化するリニア電磁弁で構成されており、低圧ＥＧＲ制御弁９０ｃの開度（以下「低圧ＥＧＲ制御弁開度」という）は、ＥＣＵ７２によって変更される。前述した低圧用スロットル弁開度ＬＰＴＨの変更による吸気圧の制御によって、低圧ＥＧＲ制御弁９０ｃよりも上流側と下流側の間の差圧が制御されることと、この低圧ＥＧＲ制御弁開度が変更されることとの協働によって、低圧ＥＧＲガスの還流量（以下「低圧ＥＧＲガス流量」という）が制御される。
【０１８６】
また、低圧ＥＧＲ制御弁開度ＬＰＶＴは、ＬＰＥＧＲ開度センサ３６によって検出され、その検出信号はＥＣＵ２に出力される。ＥＣＵ２は、低圧ＥＧＲガス流量の目標値である目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄを後述するようにして算出するとともに、算出された目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに基づき、所定のマップ（図示せず）を検索することによって、低圧ＥＧＲ制御弁開度ＬＰＶＴの目標値を算出し、低圧ＥＧＲ制御弁開度ＬＰＶＴを算出された目標値になるように制御する。
【０１８７】
以上の構成により、この低圧ＥＧＲ装置９０では、低圧ＥＧＲガスは、排気通路８８の触媒装置８９の下流側の部分から低圧ＥＧＲ通路９０ａに流入し、図１６に矢印Ｘ１で示す向きに流れ、低圧ＥＧＲクーラ９０ｂおよび低圧ＥＧＲ制御弁９０ｃを通過した後、吸気通路８３に流入する。そして、低圧ＥＧＲガスは、新気とともに、コンプレッサブレード８５ａおよびインタークーラ８６を通過した後、吸気マニホルド８３ａを介して、各気筒８１ａに流入する。
【０１８８】
また、高圧ＥＧＲ装置９１も、低圧ＥＧＲ装置９０と同様に、排気通路８８を流れる排ガスの一部を吸気通路８３に還流させるものであり、吸気通路８３と排気通路８８に接続された高圧ＥＧＲ通路９１ａと、高圧ＥＧＲ通路９１ａ内を流れる還流ガス（以下「高圧ＥＧＲガス」という）を冷却する高圧ＥＧＲクーラ９１ｂと、この高圧ＥＧＲ通路９１ａを開閉する高圧ＥＧＲ制御弁９１ｃなどで構成されている。高圧ＥＧＲ通路９１ａの一端は、排気通路８８の排気マニホルド８８ａに接続され、他端は、吸気通路８３の吸気マニホルド８３ａに接続されている。
【０１８９】
高圧ＥＧＲ制御弁９１ｃは、その開度が最大値と最小値との間でリニアに変化するリニア電磁弁で構成されており、高圧ＥＧＲ制御弁９１ｃの開度（以下「高圧ＥＧＲ制御弁開度」という）は、ＥＣＵ７２によって変更される。前述した高圧用スロットル弁開度ＨＰＴＨの変更による吸気チャンバ圧Ｐｃｈの制御によって、高圧ＥＧＲ制御弁９１ｃよりも上流側と下流側の間の差圧が制御されることと、この高圧ＥＧＲ制御弁開度が変更されることとの協働によって、高圧ＥＧＲガスの還流量（以下「高圧ＥＧＲガス流量」という）が制御される。
【０１９０】
また、高圧ＥＧＲ制御弁開度ＨＰＶＴは、ＨＰＥＧＲ開度センサ３７によって検出され、その検出信号はＥＣＵ２に出力される。ＥＣＵ２は、高圧ＥＧＲガス流量の目標値である目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄを後述するようにして算出するとともに、算出された目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに基づき、所定のマップ（図示せず）を検索することによって、高圧ＥＧＲ制御弁開度ＨＰＶＴの目標値を算出し、高圧ＥＧＲ制御弁開度ＨＰＶＴを算出された目標値になるように制御する。
【０１９１】
以上の構成により、この高圧ＥＧＲ装置９１では、高圧ＥＧＲガスは、排気マニホルド８８ａから高圧ＥＧＲ通路９１ａに流入し、図１６に矢印Ｘ２で示す向きに流れ、高圧ＥＧＲクーラ９１ｂおよび高圧ＥＧＲ制御弁９１ｃを通過した後、吸気マニホルド８３ａに流入する。そして、高圧ＥＧＲガスは、低圧ＥＧＲガスおよび新気とともに、吸気マニホルド８３ａを介して、各気筒３ａに流入する。
【０１９２】
ＥＣＵ７２にはさらに、前記アクセル開度センサ３０から、アクセル開度ＡＰｂを表す検出信号が、出力される。
【０１９３】
また、ＥＣＵ７２は、第１実施形態と同様、ＣＰＵ、ＲＡＭ、ＲＯＭおよびＩ／Ｏインターフェース（いずれも図示せず）などからなるマイクロコンピュータで構成されている。さらに、ＥＣＵ７２は、前述した各種のセンサ２２、２４、２５、２８〜３７からの検出信号に応じ、ＲＯＭに記憶された制御プログラムに従って、エンジン８１を制御する。
【０１９４】
具体的には、ＥＣＵ７２は、図１８に示す目標値算出部１０１、偏差算出部１０２、第１コントローラ１０３、第２コントローラ１０４、第１干渉抑制値算出部１０５、第２干渉抑制値算出部１０６、第１加算器１０７、および第２加算器１０８から成るプラント制御部を有している。このプラント制御部は、エンジン８１を含むプラント１１１を制御するためのものである。
【０１９５】
図１９に示すように、このプラント１１１は、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを制御入力とし、低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲを制御量とする系として定義され、具体的には、ＬＰＴＨコントローラ１１２、ＨＰＴＨコントローラ１１３およびエンジン８１などで構成されている。これらのコントローラ１１２および１１３は、ＥＣＵ７２によって構成されている。上記の目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄはそれぞれ、低圧用スロットル弁開度ＬＰＴＨおよび高圧用スロットル弁開度ＨＰＴＨの目標値であり、後述するように算出される。
【０１９６】
また、低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲは、ＥＣＵ７２により次のようにして算出される。すなわち、低圧ＥＧＲ制御弁９０ｃをノズルとみなしたノズルの式に基づく物理式に従い、吸気圧ＰＢｂ、検出された排気圧Ｐｅｘ、低圧ＥＧＲ制御弁開度ＬＰＶＴ、排気温Ｔｅｘに応じて、低圧ＥＧＲガス流量ＬＰＥＧＲを算出する。また、高圧ＥＧＲ制御弁９１ｃをノズルとみなしたノズルの式に基づく物理式に従い、吸気チャンバ圧Ｐｃｈ、検出された排気マニホルド圧Ｐｅｍｂ、高圧ＥＧＲ制御弁開度ＨＰＶＴ、排気マニホルド温Ｔｅｍｂに応じて、高圧ＥＧＲガス流量ＨＰＥＧＲを算出する。これらの物理式は、本出願人によって提案された特願２０１０−１３７１３２号に開示されたものと同様であるので、その詳細な説明については省略する。
【０１９７】
なお、低圧および高圧ＥＧＲガス流量ＬＰＥＧＲ，ＨＰＥＧＲの算出を、上記の物理式に代えて、ニューラルネットワークを用いて行ってもよい。また、吸気圧ＰＢｂ、排気圧Ｐｅｘ、吸気チャンバ圧Ｐｃｈおよび排気マニホルド圧Ｐｅｍｂを、センサで検出せずに、演算により算出してもよい。この場合、これらの圧力ＰＢｂ、Ｐｅｘ、ＰｃｈおよびＰｅｍｂの算出は、物理式を用いて、または、ニューラルネットワークを用いて行われる。
【０１９８】
また、ＬＰＴＨコントローラ１１２には、検出された低圧用スロットル弁開度ＬＰＴＨと目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが入力される。ＬＰＴＨコントローラ１１２は、入力された低圧用スロットル弁開度ＬＰＴＨおよび目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに応じ、所定のフィードバック制御アルゴリズムによって、例えば前述した目標値フィルタ型の２自由度応答指定型制御アルゴリズムによって、前述したＬＰＴＨ制御入力Ｕｌｐｔｈを算出するとともに、ＬＰＴＨアクチュエータ８４ａに出力する。これにより、低圧用スロットル弁開度ＬＰＴＨが、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに収束するように制御される。
【０１９９】
また、ＨＰＴＨコントローラ１１３には、検出された高圧用スロットル弁開度ＨＰＴＨと目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが入力される。ＨＰＴＨコントローラ１１３は、入力された高圧用スロットル弁開度ＨＰＴＨおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに応じ、所定のフィードバック制御アルゴリズムによって、例えば目標値フィルタ型の２自由度応答指定型制御アルゴリズムによって、前述したＨＰＴＨ制御入力Ｕｈｐｔｈを算出するとともに、ＨＰＴＨアクチュエータ８７ａに出力する。これにより、高圧用スロットル弁開度ＨＰＴＨが、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに収束するように制御される。
【０２００】
以上のようなプラント１１１では、低圧用スロットル弁開度ＬＰＴＨが目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに収束するように制御されると、それに伴って、低圧ＥＧＲ制御弁９０ｃの上下流間の差圧が変化することにより低圧ＥＧＲガス流量ＬＰＥＧＲが変化するとともに、高圧ＥＧＲ制御弁９１ｃの上下流間の差圧が変化することにより高圧ＥＧＲガス流量ＨＰＥＧＲも変化する。また、高圧用スロットル弁開度ＨＰＴＨが目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに収束するように制御されると、それに伴って、高圧ＥＧＲ制御弁９１ｃの上下流間の差圧が変化することにより高圧ＥＧＲガス流量ＨＰＥＧＲが変化するとともに、低圧ＥＧＲ制御弁９０ｃの上下流間の差圧が変化することにより低圧ＥＧＲガス流量ＬＰＥＧＲも変化する。
【０２０１】
以上のように、このプラント１１１は、制御入力としての目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ、ならびに、制御量としての低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲの間に、相互干渉が存在する干渉系となっている。
【０２０２】
このため、前述した図１８に示すプラント制御部では、上記の相互干渉を抑制しながら、低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲを適切に制御できるような制御入力として、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄがそれぞれ算出される。以下、プラント制御部を構成する前述した目標値算出部１０１などについて、詳細に説明する。
【０２０３】
この目標値算出部１０１は、エンジン回転数ＮＥｂと、要求トルクＴＲＥＱｂに応じ、所定の第１マップおよび第２マップ（いずれも図示せず）を検索することによって、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄおよび目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄをそれぞれ算出するとともに、偏差算出部１０２に出力する。前述したように、これらの目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄおよび目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄはそれぞれ、低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲの目標値である。また、この要求トルクＴＲＥＱｂは、エンジン８１に要求されるトルクであり、エンジン回転数ＮＥｂおよびアクセル開度ＡＰｂに応じ、所定のマップ（図示せず）を検索することによって算出される。
【０２０４】
偏差算出部１０２には、上記の目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄおよび目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに加え、算出された低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲが入力される。偏差算出部１０２は、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄと低圧ＥＧＲガス流量ＬＰＥＧＲとの偏差を、低圧ＥＧＲガス流量偏差Ｄｌｐとして算出するとともに、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄと高圧ＥＧＲガス流量ＨＰＥＧＲとの偏差を、高圧ＥＧＲガス流量偏差Ｄｈｐとして算出する。また、算出された低圧ＥＧＲガス流量偏差Ｄｌｐは、第１コントローラ１０３および第２干渉抑制値算出部１０６に出力され、高圧ＥＧＲガス流量偏差Ｄｈｐは、第２コントローラ１０４および第１干渉抑制値算出部１０５に出力される。
【０２０５】
第１コントローラ１０３は、入力された低圧ＥＧＲガス流量偏差Ｄｌｐに応じ、所定のフィードバック制御アルゴリズムによって、例えば前述した応答指定型制御アルゴリズムによって、目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄを算出する。これにより、暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄは、低圧ＥＧＲガス流量ＬＰＥＧＲが目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに収束するような値に算出される。また、算出された暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄは、第１干渉抑制値算出部１０５および第１加算器１０７に出力される。
【０２０６】
第２コントローラ１０４は、入力された高圧ＥＧＲガス流量偏差Ｄｈｐに応じ、所定のフィードバック制御アルゴリズムによって、例えば応答指定型制御アルゴリズムによって、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを算出する。これにより、暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄは、高圧ＥＧＲガス流量ＨＰＥＧＲが目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに収束するような値に算出される。また、算出された暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄは、第２干渉抑制値算出部１０６および第２加算器１０８に出力される。
【０２０７】
第１および第２干渉抑制値算出部１０５，１０６は、ニューラルネットワークを用いて、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄおよび第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄをそれぞれ算出するものである。各算出部で用いられるニューラルネットワークは、第１実施形態の場合と同様、図６に示す３階層型のニューラルネットワークＮＮである。また、この第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄは、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄによる高圧ＥＧＲガス流量ＨＰＥＧＲへの干渉を抑制するために、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを補正するためのパラメータである。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄは、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄによる低圧ＥＧＲガス流量ＬＰＥＧＲへの干渉を抑制するために、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを補正するためのパラメータである。
【０２０８】
より具体的には、図２０に示すように、第１干渉抑制値算出部１０５には、前述した高圧ＥＧＲガス流量偏差Ｄｈｐおよび暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄに加え、エンジン３の運転状態を表す運転状態パラメータなどが、入力される。この運転状態パラメータには、エンジン回転数ＮＥｂ、要求トルクＴＲＥＱｂ、推定ＥＧＲ率ＥＧＲ＿ｅｓｔｂ、燃料噴射量ＴＯＵＴｂ、吸入空気量Ｇｃｙｌｂ、排気圧Ｐｅｘ、吸気圧ＰＢｂ、排気マニホルド圧Ｐｅｍｂ、吸気チャンバ圧Ｐｃｈ、低圧ＥＧＲガス流量ＬＰＥＧＲ、および高圧ＥＧＲガス流量ＨＰＥＧＲなどが含まれる。第１干渉抑制値算出部１０５にはさらに、目標低圧用スロットル弁開度の前回値ＬＰＴＨ＿ｃｍｄ（ｋ−１）、目標高圧用スロットル弁開度の前回値ＨＰＴＨ＿ｃｍｄ（ｋ−１）、第１干渉抑制値の前回値ＨＰＴＨ＿ｄｃ＿ｃｍｄ（ｋ−１）、および目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄが入力される。
【０２０９】
また、上記の推定ＥＧＲ率ＥＧＲ＿ｅｓｔｂは、エンジン８１に吸入される吸入空気量Ｇｃｙｌｂ（新気＋ＥＧＲガス）に対する、低圧および高圧ＥＧＲガス流量ＬＰＥＧＲ，ＨＰＥＧＲの和の比である。
【０２１０】
第１干渉抑制値算出部１０５は、入力された上記の複数のパラメータに応じ、３階層型のニューラルネットワークを用いて、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを次のようにして算出する。まず、入力層では、上記のエンジン回転数ＮＥｂなどの複数のパラメータを入力Ｕｃとして、値Ｖｃ１ｊを、次式（２８）〜（３１）により算出するとともに、中間層に出力する。
【数２８】
2012102629.tif 000030
【数２９】
2012102629.tif 000031
【数３０】
2012102629.tif 000032
【数３１】
2012102629.tif 000033
【０２１１】
上記式（３０）において、ｆｃは、上記式（３１）で定義されるシグモイド関数である。また、この式（３１）において、βｃはシグモイド関数の傾きゲインを、εｃはシグモイド関数のオフセット値を、それぞれ表している。これらの値βｃおよびεｃは、実験などにより所定値に設定されている。
【０２１２】
また、中間層では、入力された値Ｖｃ１ｊに基づき、値Ｖｃｉｊを、ｉ＝２〜ｎとして、次式（３２）および（３３）により算出するとともに、出力層に出力する。この式（３２）において、ωｃは、重み係数であり、後述する学習部１２１によって学習され、設定される。
【数３２】
2012102629.tif 000034
【数３３】
2012102629.tif 000035
【０２１３】
また、出力層では、入力された値Ｖｃｉｊに基づき、次式（３４）〜（３６）によって、出力Ｙｃを算出する。
【数３４】
2012102629.tif 000036
【数３５】
2012102629.tif 000037
【数３６】
2012102629.tif 000038
【０２１４】
上記式（３５）において、ｇｃは、上記式（３６）で定義されるシグモイド関数である。また、この式（３６）において、αｃはシグモイド関数の出力ゲインを、γｃはシグモイド関数の傾きゲインを、δｃはシグモイド関数のオフセット値を、それぞれ表している。これらの値αｃ，γｃ，δｃは、実験などにより所定値に設定されている。
【０２１５】
また、算出された出力Ｙｃは、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄとして設定されるとともに、第２加算器１０８に出力される。
【０２１６】
さらに、図２１に示すように、第２干渉抑制値算出部１０６には、前述した低圧ＥＧＲガス流量偏差Ｄｌｐおよび暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄに加え、エンジン３の運転状態を表す運転状態パラメータなどが、入力される。この運転状態パラメータには、第１干渉抑制値算出部１０５の場合と同様、エンジン回転数ＮＥｂ、要求トルクＴＲＥＱｂ、推定ＥＧＲ率ＥＧＲ＿ｅｓｔｂ、燃料噴射量ＴＯＵＴｂ、吸入空気量Ｇｃｙｌｂ、排気圧Ｐｅｘ、吸気圧ＰＢｂ、排気マニホルド圧Ｐｅｍｂ、吸気チャンバ圧Ｐｃｈ、低圧ＥＧＲガス流量ＬＰＥＧＲ、および高圧ＥＧＲガス流量ＨＰＥＧＲなどが含まれる。第２干渉抑制値算出部１０６にはさらに、目標高圧用スロットル弁開度の前回値ＨＰＴＨ＿ｃｍｄ（ｋ−１）、目標低圧用スロットル弁開度の前回値ＬＰＴＨ＿ｃｍｄ（ｋ−１）、第２干渉抑制値の前回値ＬＰＴＨ＿ｄｃ＿ｃｍｄ（ｋ−１）、および目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄが入力される。
【０２１７】
第２干渉抑制値算出部１０６は、入力された上記の複数のパラメータに応じ、３階層型のニューラルネットワークを用いて、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを次のようにして算出する。まず、入力層では、上記のエンジン回転数ＮＥｂなどの複数のパラメータを入力Ｕｄとして、値Ｖｄ１ｊを、次式（３７）〜（４０）によって算出するとともに、中間層に出力する。
【数３７】
2012102629.tif 000039
【数３８】
2012102629.tif 000040
【数３９】
2012102629.tif 000041
【数４０】
2012102629.tif 000042
【０２１８】
上記式（３９）において、ｆｄは、上記式（４０）で定義されるシグモイド関数である。また、この式（４０）において、βｄはシグモイド関数の傾きゲインを、εｄはシグモイド関数のオフセット値を、それぞれ表しており、これらの値βｄおよびεｄは、実験などにより所定値に設定されている。
【０２１９】
また、中間層では、入力された値Ｖｄ１ｊに基づき、値Ｖｄｉｊを、ｉ＝２〜ｎとして、次式（４１）および（４２）により算出するとともに、出力層に出力する。この式（４１）において、ωｄは、重み係数であり、学習部１２１によって学習され、設定される。
【数４１】
2012102629.tif 000043
【数４２】
2012102629.tif 000044
【０２２０】
また、出力層では、入力された値Ｖｄｉｊに基づき、次式（４３）〜（４５）によって、出力Ｙｂを算出する。
【数４３】
2012102629.tif 000045
【数４４】
2012102629.tif 000046
【数４５】
2012102629.tif 000047
【０２２１】
上記式（４４）において、ｇｄは、上記式（４５）で定義されるシグモイド関数である。また、この式（４５）において、αｄはシグモイド関数の出力ゲインを、γｄはシグモイド関数の傾きゲインを、δｄはシグモイド関数のオフセット値を、それぞれ表している。これらの値αｄ，γｄ，δｄは、実験などにより所定値に設定されている。
【０２２２】
また、算出された出力Ｙｄは、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄとして設定されるとともに、第１加算器１０７に出力される。
【０２２３】
第１加算器１０７は、入力された暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄに、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを加算することによって、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを算出する。これにより、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄは、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づいて、前述した相互干渉を抑制するように補正される。また、算出された目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄは、前述したＬＰＴＨコントローラ１１２に出力される。
【０２２４】
第２加算器１０８は、入力された暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄに、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを加算することによって、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを算出する。これにより、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄは、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づいて、前述した相互干渉を抑制するように補正される。また、算出された目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄは、前述したＨＰＴＨコントローラ１１３に出力される。
【０２２５】
次に、図２２〜図２９を参照しながら、学習部１２１によって行われる前述した重み係数ωｃおよびωｄの学習について説明する。この学習は、第１実施形態の場合と同様、車両の出荷前または出荷後の点検時にサービス工場において、エンジン８１を運転した状態で行われる。
【０２２６】
図２２および図２３に示すように、学習部１２１には、高圧ＥＧＲガス流量偏差Ｄｈｐおよび低圧ＥＧＲガス流量偏差Ｄｌｐが入力される。学習部１２１は、入力された高圧ＥＧＲガス流量偏差Ｄｈｐおよび低圧ＥＧＲガス流量偏差Ｄｌｐに応じ、強化学習によって、重み係数ωｃおよびωｄの学習をそれぞれ別個に行う。また、学習部１２１は、当該学習により算出された重み係数の学習値ωｃＧを、第１干渉抑制値算出部１０５に出力するとともに、重み係数の学習値ωｄＧを、第２干渉抑制値算出部１０６に出力する。これにより、重み係数ωｃおよびωｄが、学習され、更新される。図２４および図２５は、重み係数ωｃを学習するための第１学習処理を示している。本処理は、図１９および図２２に示す各種の要素によって、前述した制御周期ΔＴで繰り返し実行される。
【０２２７】
まず、図２４のステップ８１では、第１学習完了フラグＦ＿ＬＥＤＯＮＥｃが「１」であるか否かを判別する。この第１学習完了フラグＦ＿ＬＥＤＯＮＥｃは、重み係数ωｃの学習が完了したときに、「１」にセットされるものであり、車両の点検の開始時に、「０」にリセットされる。
【０２２８】
上記ステップ８１の答がＮＯで、学習が完了していないときには、第１学習準備動作完了フラグＦ＿ＬＥＡＲＮｃが「１」であるか否かを判別する（ステップ８２）。この第１学習準備動作完了フラグＦ＿ＬＥＡＲＮｃは、重み係数ωｃの学習のための準備動作（以下「第１学習準備動作」という）が完了していることを、「１」で表すものであり、車両の点検の開始時に、「０」にリセットされる。
【０２２９】
この答がＮＯで、第１学習準備動作が完了していないときには、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄを、前述したようにエンジン回転数ＮＥｂおよび要求トルクＴＲＥＱｂに応じたマップ検索によって算出する（ステップ８３）。次いで、算出された目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄと高圧ＥＧＲガス流量ＨＰＥＧＲとの偏差として、高圧ＥＧＲガス流量偏差Ｄｈｐを算出する（ステップ８４）。
【０２３０】
次に、上記ステップ８４で算出された高圧ＥＧＲガス流量偏差Ｄｈｐがほぼ値０であるか否かを判別する（ステップ８５）。この答がＮＯのときには、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを一定の第１所定値ＬＰＴＨＲＥＦ１に設定する（ステップ８６）。このステップ８６の実行に伴い、前述したＬＰＴＨコントローラ１１２によって、低圧用スロットル弁開度ＬＰＴＨが、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに収束するように制御される。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０２３１】
ステップ８６に続くステップ８７では、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを、高圧ＥＧＲガス流量偏差Ｄｈｐに応じ、前述した応答指定型制御アルゴリズムによって算出する。次いで、算出された暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄとして設定し（ステップ８８）、本処理を終了する。このステップ８８の実行に伴い、前述したＨＰＴＨコントローラ１１３によって、高圧用スロットル弁開度ＨＰＴＨが、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに収束するように制御される。また、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０２３２】
一方、上記ステップ８５の答がＹＥＳで、高圧ＥＧＲガス流量偏差Ｄｈｐがほぼ値０になったときには、そのときに得られている目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧとして設定する（ステップ８９）。次いで、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄを、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒとして設定する（ステップ９０）。
【０２３３】
次に、ステップ９１および９２においてそれぞれ、値０までダウンカウントされる待機タイマのタイマ値ｔＭＤＥＬｃおよび学習タイマのタイマ値ｔＬＥＡｃを、所定の待機時間ＴＭＤＥＬｃおよび学習時間ＴＬＥＡｃに設定する。この待機時間ＴＭＤＥＬｃは、低圧用スロットル弁開度ＬＰＴＨの変化が高圧ＥＧＲガス流量ＨＰＥＧＲに反映されるまでのむだ時間に設定されており、例えば０．５ｓｅｃに設定されている。また、学習時間ＴＬＥＡｃは、重み係数ωｃの学習を十分に行えるような時間に設定されており、例えば１．０ｓｅｃに設定されている。
【０２３４】
上記ステップ９２に続くステップ９３では、第１学習準備動作が完了したとして、そのことを表すために、第１学習準備動作完了フラグＦ＿ＬＥＡＲＮｃを「１」に設定し、図２５のステップ９４に進む。また、このステップ９３を実行した後には、前記ステップ８２の答がＹＥＳになり、その場合には、前記ステップ８３〜９３をスキップし、ステップ９４に進む。
【０２３５】
以上のように、本処理が開始されると、まず、第１学習準備動作が行われる。この第１学習準備動作の実行中、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、低圧用スロットル弁開度ＬＰＴＨが、一定の第１所定値ＬＰＴＨＲＥＦ１に保持される（ステップ８６）。また、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、高圧ＥＧＲガス流量偏差Ｄｈｐに基づき、フィードバック制御アルゴリズムである応答指定型制御アルゴリズムによって、算出される（ステップ８７、８８）。これにより、高圧用スロットル弁開度ＨＰＴＨが制御されることによって、高圧ＥＧＲガス流量ＨＰＥＧＲが、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに収束するように制御される。
【０２３６】
そして、高圧ＥＧＲガス流量ＨＰＥＧＲが目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに収束し、高圧ＥＧＲガス流量偏差Ｄｈｐがほぼ値０になる（ステップ８５：ＹＥＳ）と、そのときに得られている目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ、すなわち、高圧ＥＧＲガス流量偏差Ｄｈｐがほぼ値０になったときに算出された目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧとして設定される（ステップ８９）。また、そのときの目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄが、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒとして設定される（ステップ９０）とともに、第１学習準備動作が完了したと判定される（ステップ９３）。
【０２３７】
以上から明らかなように、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒは、低圧用スロットル弁開度ＬＰＴＨが一定の第１所定値ＬＰＴＨＲＥＦ１に保持された状態で高圧ＥＧＲガス流量ＨＰＥＧＲが目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに収束しているときの目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに、設定される。また、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧは、低圧用スロットル弁開度ＬＰＴＨが第１所定値ＬＰＴＨＲＥＦ１に保持された状態で高圧ＥＧＲガス流量ＨＰＥＧＲが目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄすなわち学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒに収束するような値に、設定される。
【０２３８】
図２５のステップ９４では、前記ステップ９２で設定された学習タイマのタイマ値ｔＬＥＡｃが値０であるか否かを判別する。この答がＮＯのときには、ステップ９５および９６においてそれぞれ、目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄおよび目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを、一定の第２所定値ＬＰＴＨＲＥＦ２に設定する。この第２所定値ＬＰＴＨＲＥＦ２は、前述した第１所定値ＬＰＴＨＲＥＦ１よりも大きな値に設定されている。
【０２３９】
このステップ９６の実行に伴い、ＬＰＴＨコントローラ１１２によって、低圧用スロットル弁開度ＬＰＴＨが、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに収束するように制御される。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄの補正は行われず、当該補正は停止される。
【０２４０】
上記ステップ９６に続くステップ９７では、前記ステップ９１で設定された待機タイマのタイマ値ｔＭＤＥＬｃが値０であるか否かを判別する。この答がＮＯのときには、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを前記ステップ８９で設定された学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに設定し（ステップ９８）、本処理を終了する。
【０２４１】
このステップ９８の実行に伴い、ＨＰＴＨコントローラ１１３によって、高圧用スロットル弁開度ＨＰＴＨが、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄすなわち学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに収束するように制御される。また、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。さらに、高圧ＥＧＲ制御弁開度ＨＰＶＴは、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧの設定が行われたときに算出されたその目標値に保持される。
【０２４２】
一方、上記ステップ９７の答がＹＥＳ（ｔＭＤＥＬｃ＝０）のとき、すなわち、第１学習準備動作が完了してから、待機時間ＴＭＤＥＬｃがすでに経過しているときには、前記ステップ９０で設定された学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒから高圧ＥＧＲガス流量ＨＰＥＧＲを減算することによって、高圧ＥＧＲガス流量偏差Ｄｈｐを算出する（ステップ９９）。次いで、算出された高圧ＥＧＲガス流量偏差Ｄｈｐが、第１所定値ｓｔｈｐＬおよび第２所定値ｓｔｈｐＨで規定される所定の範囲内にあるか否かを判別する（ステップ１００）。
【０２４３】
この答がＮＯのときには、値０までダウンカウントされる安定タイマのタイマ値ｔＳＴＢｃを、所定の安定時間ＴＳＴＢｃ（例えば２．０ｓｅｃ）に設定する（ステップ１０１）とともに、高圧ＥＧＲガス流量偏差の絶対値｜Ｄｈｐ｜を所定の最大偏差Ｄｈｐ＿ｍａｘで除算することによって、正規化高圧ＥＧＲ偏差Ｆｄｈｐを算出する（ステップ１０２）。この最大偏差Ｄｈｐ＿ｍａｘは、高圧ＥＧＲガス流量偏差の絶対値｜Ｄｈｐ｜がとりうる最大の値に設定されている。
【０２４４】
次いで、算出された正規化高圧ＥＧＲ偏差Ｆｄｈｐと要求トルクＴＲＥＱｂに基づき、図２６に示す所定のマップを検索することによって、報酬値Ｒｗ＿ｈｐを算出する（ステップ１０３）。同図において、ＴＲＥＱｂ１、ＴＲＥＱｂ２およびＴＲＥＱｂ３はそれぞれ、要求トルクＴＲＥＱｂの第１所定値、第２所定値および第３所定値（ＴＲＥＱｂ１＜ＴＲＥＱｂ２＜ＴＲＥＱｂ３）である。なお、要求トルクＴＲＥＱｂが第１〜第３所定値ＴＲＥＱｂ１〜ＴＲＥＱｂ３以外のときには、報酬値Ｒｗ＿ｈｐは、補間演算によって求められる。
【０２４５】
上記のマップでは、報酬値Ｒｗ＿ｈｐは、基本的には、正規化高圧ＥＧＲ偏差Ｆｄｈｐが小さいほど、より大きな値にリニアに設定されており、また、正規化高圧ＥＧＲ偏差Ｆｄｈｐが値０のときにその最大値に設定されている。また、報酬値Ｒｗ＿ｈｐは、要求トルクＴＲＥＱｂに応じて次のように設定されている。すなわち、要求トルクＴＲＥＱｂが最も小さい第１所定値ＴＲＥＱｂ１のときには、報酬値Ｒｗ＿ｈｐは、正規化高圧ＥＧＲ偏差Ｆｄｈｐの全体（値０≦Ｆｄｈｐ≦値１．０）に対して、Ｆｄｈｐ値が小さいほど、より大きな値にリニアに設定されている。
【０２４６】
また、要求トルクＴＲＥＱｂが中間の第２所定値ＴＲＥＱｂ２のときには、正規化高圧ＥＧＲ偏差Ｆｄｈｐに対する報酬値Ｒｗ＿ｈｐの傾きは、値０≦Ｆｄｈｐ≦第１所定値Ｆｄｈｐ１の範囲では、より大きな値に設定されており、Ｆｄｈｐ＞第１所定値Ｆｄｈｐ１の範囲では、より小さな値に設定されている。さらに、要求トルクＴＲＥＱｂが最も大きい第３所定値ＴＲＥＱｂ３のときには、正規化高圧ＥＧＲ偏差Ｆｄｈｐに対する報酬値Ｒｗ＿ｈｐの傾きは、値０≦Ｆｄｈｐ≦第２所定値Ｆｄｈｐ２の範囲では、より大きな値に設定されており、Ｆｄｈｐ＞Ｆｄｈｐ２の範囲では、より小さな値に設定されている。また、これらの第１および第２所定値Ｆｄｈｐ１，Ｆｄｈｐ２は、値０＜Ｆｄｈｐ２＜Ｆｄｈｐ１＜値１．０の関係を満たすように設定されている。
【０２４７】
上記の説明から明らかなように、図２６のマップでは、正規化高圧ＥＧＲ偏差Ｆｄｈｐに対する報酬値Ｒｗ＿ｈｐの傾きが比較的大きい範囲が、要求トルクＴＲＥＱｂが小さいほど、より大きく設定されている。これは、要求トルクＴＲＥＱｂが小さいほど、すなわちエンジン８１の負荷が低いほど、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに対する高圧ＥＧＲガス流量ＨＰＥＧＲの感度が高いことから、正規化高圧ＥＧＲ偏差Ｆｄｈｐのより大きな範囲に対して、報酬値Ｒｗ＿ｈｐをきめ細かく設定するためである。
【０２４８】
上記ステップ１０３に続くステップ１０４では、ステップ１０３で算出された報酬値Ｒｗ＿ｈｐに基づき、重み係数ωｃを強化学習によって学習する。この学習は次のようにして行われる。すなわち、まず、そのときに設定されている重み係数ωｃ（前回値）を、その学習値ωｃＧとして、算出された報酬値Ｒｗ＿ｈｐと対応させて、複数のバッファの１つに順次、記憶する。次いで、重み係数ωｃ（今回値）を、実験により予め設定された互いに異なる複数の所定値の１つにランダムに設定する。なお、今回が学習開始後の１回目のループであるときには、前記ステップ９８から明らかなように、重み係数ωｃがまだ設定されていないので、学習値ωｃＧは、値０に設定されるとともに、報酬値Ｒｗ＿ｈｐと対応させて記憶される。
【０２４９】
上記ステップ１０４に続くステップ１０５では、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを、前記ステップ８９で設定された学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに設定する。次いで、ステップ１０６において、第１干渉抑制値算出部１０５の説明で述べたようにして、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを算出する。すなわち、エンジン回転数ＮＥｃなどの運転状態パラメータや、前記ステップ９９で算出された高圧ＥＧＲガス流量偏差Ｄｈｐ、前記ステップ９５で設定された目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄなどを入力とし、ニューラルネットワークを用いて、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを算出する。
【０２５０】
次に、上記ステップ１０５で設定された暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄに、ステップ１０６で算出された第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを加算することによって、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを算出し（ステップ１０７）、本処理を終了する。このステップ１０７の実行に伴い、ＨＰＴＨコントローラ１１３によって、高圧用スロットル弁開度ＨＰＴＨが、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに収束するように制御される。また、高圧ＥＧＲ制御弁開度ＨＰＶＴは、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧの設定が行われたときに算出されたその目標値に保持される。
【０２５１】
以上のように、第１学習準備動作が完了する（ステップ８２：ＹＥＳ）と、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄによる補正が、第１学習準備動作の実行中と同様に停止されるとともに、低圧用スロットル弁開度ＬＰＴＨが、第１所定値ＬＰＴＨＲＥＦ１から一定の第２所定値ＬＰＴＨＲＥＦ２にステップ状に変化するように制御され、第２所定値ＬＰＴＨＲＥＦ２に保持される（ステップ９６）。また、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに保持される（ステップ９８）。前述したように、この学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧは、低圧用スロットル弁開度ＬＰＴＨが第１所定値ＬＰＴＨＲＥＦ１に保持されている状態で高圧ＥＧＲガス流量ＨＰＥＧＲが学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒに収束するような値に、設定されている。以上から明らかなように、ステップ９６および９８の実行によって、高圧ＥＧＲガス流量ＨＰＥＧＲは、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒからずれるように変化する。また、この場合における学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒに対する高圧ＥＧＲガス流量ＨＰＥＧＲのずれ分は、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが干渉することによる高圧ＥＧＲガス流量ＨＰＥＧＲの変動分を良好に表す。
【０２５２】
そして、第１学習準備動作が完了してから待機時間ＴＭＤＥＬｃが経過する（ステップ９７：ＹＥＳ）と、重み係数ωｃの学習が開始される（ステップ９９および１０２〜１０４）。このように、第１学習準備動作が完了してから待機時間ＴＭＤＥＬｃが経過するのを待って学習を開始するのは、ステップ９６および９８の実行によって高圧ＥＧＲガス流量ＨＰＥＧＲが学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒから確実にずれた状態で、すなわち、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄによる干渉の影響が高圧ＥＧＲガス流量ＨＰＥＧＲに確実に反映された状態で、学習を行うためである。
【０２５３】
また、この学習中、高圧ＥＧＲガス流量偏差の絶対値｜Ｄｈｐ｜に比例する正規化高圧ＥＧＲ偏差Ｆｄｈｐが小さいほど、報酬値Ｒｗ＿ｈｐがより大きな値に算出される（ステップ１０３）。さらに、そのときに得られている重み係数ωｃすなわちその前回値が、学習値ωｃＧとして、今回の報酬値Ｒｗ＿ｈｐと対応させて、複数のバッファの１つに順次、記憶されるとともに、重み係数ωｃの今回値が、複数の所定値の１つにランダムに設定される（ステップ１０４）。
【０２５４】
そして、上記のように設定された重み係数ωｃを適用したニューラルネットワークを用いて、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄが算出される（ステップ１０６）。また、算出された第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに設定された暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄに加算することによって、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが算出される（ステップ１０７）。すなわち、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づいて補正される。
【０２５５】
一方、前記ステップ１００の答がＹＥＳで、高圧ＥＧＲガス流量偏差Ｄｈｐが前述した第１および第２所定値ｓｔｈｐＬ，ｓｔｈｐＨで規定される所定の範囲内にあるときには、前記ステップ１０１で設定された安定タイマのタイマ値ｔＳＴＢｃが値０であるか否かを判別する（ステップ１０８）。この答がＮＯのときには、前記ステップ１０２以降を実行する。
【０２５６】
一方、上記ステップ１０８の答がＹＥＳ（ｔＳＴＢｃ＝０）になったとき、すなわち、高圧ＥＧＲガス流量偏差Ｄｈｐが第１および第２所定値ｓｔｈｐＬ，ｓｔｈｐＨで規定される所定の範囲内にある状態が、安定時間ＴＳＴＢｃにわたって継続したときには、高圧ＥＧＲガス流量ＨＰＥＧＲが学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒにほぼ収束した状態で安定しているとして、重み係数ωｃの学習が完了したと判定する。そして、前記ステップ１０４で記憶された複数の学習値ωｃＧのうちの、最も大きな報酬値Ｒｗ＿ｈｐに対応するものを読み出し、重み係数ωｃとして設定し、重み係数ωｃを更新する（ステップ１０８Ａ）とともに、学習が完了したことを表すために、第１学習完了フラグＦ＿ＬＥＤＯＮＥｃを「１」にセットし（ステップ１０９）、本処理を終了する。また、このステップ１０９を実行した後には、図２４の前記ステップ８１の答がＹＥＳになり、その場合には、そのまま本処理を終了する。
【０２５７】
一方、前記ステップ９４の答がＹＥＳ（ｔＬＥＡｃ＝０）になったとき、すなわち、第１学習準備動作が完了してから、学習時間ＴＬＥＡｃが経過したときには、前記ステップ１０４などによる重み係数ωｃの学習が十分に行われているため、当該学習が完了したと判定する。そして、上記ステップ１０８Ａを実行することによって、記憶された複数の学習値ωｃＧのうちの、最も大きな報酬値Ｒｗ＿ｈｐに対応するものを重み係数ωｃとして設定し、重み係数ωｃを更新するとともに、学習が完了したことを表すために、上記ステップ１０９を実行し、本処理を終了する。
【０２５８】
以上のように、高圧ＥＧＲガス流量偏差Ｄｈｐが所定の範囲内にある状態が安定時間ＴＳＴＢｃにわたって継続したという条件、および、第１学習準備動作が完了してから学習時間ＴＬＥＡｃが経過したという条件の一方が成立すると、その時点で学習が完了したと判定される。
【０２５９】
次に、図２７および図２８を参照しながら、前述した第２干渉抑制値算出部１０６で用いられる重み係数ωｄを学習するための第２学習処理について説明する。本処理も、上述した第１学習処理と同様、図１９および図２２に示す各種の要素によって、制御周期ΔＴで繰り返し実行される。また、第２学習処理では、重み係数ωｄの学習が第１学習処理の場合と同様にして行われる。
【０２６０】
まず、図２７のステップ１２１では、第２学習完了フラグＦ＿ＬＥＤＯＮＥｄが「１」であるか否かを判別する。この第２学習完了フラグＦ＿ＬＥＤＯＮＥｄは、重み係数ωｄの学習が完了したときに、「１」にセットされるものであり、車両の点検の開始時に、「０」にリセットされる。
【０２６１】
上記ステップ１２１の答がＮＯで、学習が完了していないときには、第２学習準備動作完了フラグＦ＿ＬＥＡＲＮｄが「１」であるか否かを判別する（ステップ１２２）。この第２学習準備動作完了フラグＦ＿ＬＥＡＲＮｄは、重み係数ωｄの学習のための準備動作（以下「第２学習準備動作」という）が完了していることを、「１」で表すものであり、車両の点検の開始時に、「０」にリセットされる。
【０２６２】
この答がＮＯで、第２学習準備動作が完了していないときには、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄを、前述したようにエンジン回転数ＮＥｂおよび要求トルクＴＲＥＱｂに応じたマップ検索によって算出する（ステップ１２３）。次いで、算出された目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄと低圧ＥＧＲガス流量ＬＰＥＧＲとの偏差として、低圧ＥＧＲガス流量偏差Ｄｌｐを算出する（ステップ１２４）。
【０２６３】
次に、上記ステップ１２４で算出された低圧ＥＧＲガス流量偏差Ｄｌｐがほぼ値０であるか否かを判別する（ステップ１２５）。この答がＮＯのときには、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを一定の第１所定値ＨＰＴＨＲＥＦ１に設定する（ステップ１２６）。このステップ１２６の実行に伴い、ＨＰＴＨコントローラ１１３によって、高圧用スロットル弁開度ＨＰＴＨが、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに収束するように制御される。また、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０２６４】
ステップ１２６に続くステップ１２７では、目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄを、低圧ＥＧＲガス流量偏差Ｄｌｐに応じ、前述した応答指定型制御アルゴリズムによって算出する。次いで、算出された暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄを、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄとして設定し（ステップ１２８）、本処理を終了する。このステップ１２８の実行に伴い、ＬＰＴＨコントローラ１１２によって、低圧用スロットル弁開度ＬＰＴＨが、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに収束するように制御される。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄの補正が行われず、当該補正は停止される。
【０２６５】
一方、上記ステップ１２５の答がＹＥＳで、低圧ＥＧＲガス流量偏差Ｄｌｐがほぼ値０になったときには、そのときに得られている目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧとして設定する（ステップ１２９）。次いで、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄを、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒとして設定する（ステップ１３０）。
【０２６６】
次に、ステップ１３１および１３２においてそれぞれ、値０までダウンカウントされる待機タイマのタイマ値ｔＭＤＥＬｄおよび学習タイマのタイマ値ｔＬＥＡｄを、所定の待機時間ＴＭＤＥＬｄおよび学習時間ＴＬＥＡｄに設定する。この待機時間ＴＭＤＥＬｄは、高圧用スロットル弁開度ＨＰＴＨの変化が、低圧ＥＧＲガス流量ＬＰＥＧＲに反映されるまでのむだ時間に設定されており、例えば０．５ｓｅｃに設定されている。また、学習時間ＴＬＥＡｄは、重み係数ωｄの学習を十分に行えるような時間に設定されており、例えば１．０ｓｅｃに設定されている。
【０２６７】
上記ステップ１３２に続くステップ１３３では、第２学習準備動作が完了したとして、そのことを表すために、第２学習準備動作完了フラグＦ＿ＬＥＡＲＮｄを「１」に設定し、図２８のステップ１３４に進む。また、このステップ１３３を実行した後には、前記ステップ１２２の答がＹＥＳになり、その場合には、前記ステップ１２３〜１３３をスキップし、ステップ１３４に進む。
【０２６８】
以上のように、本処理が開始されると、まず、第２学習準備動作が行われる。この第２学習準備動作の実行中、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、高圧用スロットル弁開度ＨＰＴＨが、一定の第１所定値ＨＰＴＨＲＥＦ１に保持される（ステップ１２６）。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄによる補正が停止されるとともに、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、低圧ＥＧＲガス流量偏差Ｄｌｐに基づき、フィードバック制御アルゴリズムである応答指定型制御アルゴリズムによって、算出される（ステップ１２７、１２８）。これにより、低圧用スロットル弁開度ＬＰＴＨが制御されることによって、低圧ＥＧＲガス流量ＬＰＥＧＲが、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに収束するように制御される。
【０２６９】
そして、低圧ＥＧＲガス流量ＬＰＥＧＲが目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに収束し、低圧ＥＧＲガス流量偏差Ｄｌｐがほぼ値０になる（ステップ１２５：ＹＥＳ）と、そのときに得られている目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄ、すなわち、低圧ＥＧＲガス流量偏差Ｄｌｐがほぼ値０になったときに算出された目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧとして設定される（ステップ１２９）。また、そのときの目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄが、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒとして設定される（ステップ１３０）とともに、第２学習準備動作が完了したと判定される（ステップ１３３）。
【０２７０】
以上から明らかなように、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒは、高圧用スロットル弁開度ＨＰＴＨが一定の第１所定値ＨＰＴＨＲＥＦ１に保持された状態で低圧ＥＧＲガス流量ＬＰＥＧＲが目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに収束しているときの目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに、設定される。また、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧは、高圧用スロットル弁開度ＨＰＴＨが第１所定値ＨＰＴＨＲＥＦ１に保持された状態で低圧用ＥＧＲガス量ＬＰＥＧＲが目標低圧用ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄすなわち学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒに収束するような値に、設定される。
【０２７１】
図２８のステップ１３４では、前記ステップ１３２で設定された学習タイマのタイマ値ｔＬＥＡｄが値０であるか否かを判別する。この答がＮＯのときには、ステップ１３５および１３６においてそれぞれ、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを、一定の第２所定値ＨＰＴＨＲＥＦ２に設定する。この第２所定値ＨＰＴＨＲＥＦ２は、前述した第１所定値ＨＰＴＨＲＥＦ１よりも大きな値に設定されている。
【０２７２】
このステップ１３６の実行に伴い、ＨＰＴＨコントローラ１１３によって、高圧用スロットル弁開度ＨＰＴＨが、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄに収束するように制御される。また、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄの補正は行われず、当該補正は停止される。
【０２７３】
上記ステップ１３６に続くステップ１３７では、前記ステップ１３１で設定された待機タイマのタイマ値ｔＭＤＥＬｄが値０であるか否かを判別する。この答がＮＯのときには、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを前記ステップ１２９で設定された学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧに設定し（ステップ１３８）、本処理を終了する。
【０２７４】
このステップ１３８の実行に伴い、ＬＰＴＨコントローラ１１２によって、低圧用スロットル弁開度ＬＰＴＨが、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄすなわち学習用目標ＬＰＴＨ開度ＴＨ＿ｃｍｄＧに収束するように制御される。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づく目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄの補正は行われず、当該補正は停止される。さらに、低圧ＥＧＲ制御弁開度ＬＰＶＴは、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧの設定が行われたときに算出されたその目標値に保持される。
【０２７５】
一方、上記ステップ１３７の答がＹＥＳ（ｔＭＤＥＬｄ＝０）のとき、すなわち、第２学習準備動作が完了してから、待機時間ＴＭＤＥＬｄがすでに経過しているときには、前記ステップ１３０で設定された学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒと低圧ＥＧＲガス流量ＬＰＥＧＲとの偏差として、低圧ＥＧＲガス流量偏差Ｄｌｐを算出する（ステップ１３９）。次いで、算出された低圧ＥＧＲガス流量偏差Ｄｌｐが、第１所定値ｓｔｌｐＬおよび第２所定値ｓｔｌｐＨで規定される所定の範囲内にあるか否かを判別する（ステップ１４０）。
【０２７６】
この答がＮＯのときには、値０までダウンカウントされる安定タイマのタイマ値ｔＳＴＢｄを、所定の安定時間ＴＳＴＢｄ（例えば２．０ｓｅｃ）に設定する（ステップ１４１）とともに、低圧ＥＧＲガス流量偏差の絶対値｜Ｄｌｐ｜を所定の最大偏差Ｄｌｐ＿ｍａｘで除算することによって、正規化低圧ＥＧＲ偏差Ｆｄｌｐを算出する（ステップ１４２）。この最大偏差Ｄｌｐ＿ｍａｘは、低圧ＥＧＲガス流量偏差の絶対値｜Ｄｌｐ｜がとりうる最大の値に設定されている。
【０２７７】
次いで、算出された正規化低圧ＥＧＲ偏差Ｆｄｌｐと要求トルクＴＲＥＱｂに基づき、図２９に示す所定のマップを検索することによって、報酬値Ｒｗ＿ｌｐを算出する（ステップ１４３）。この場合、要求トルクＴＲＥＱｂが前述した第１〜第３の所定値ＴＲＥＱｂ１，ＴＲＥＱｂ２，ＴＲＥＱｂ３以外のときには、報酬値Ｒｗ＿ｌｐは、補間演算によって求められる。
【０２７８】
上記のマップでは、報酬値Ｒｗ＿ｌｐは、基本的には、正規化低圧ＥＧＲ偏差Ｆｄｌｐが小さいほど、より大きな値にリニアに設定されており、また、正規化低圧ＥＧＲ偏差Ｆｄｌｐが値０のときにその最大値に設定されている。また、報酬値Ｒｗ＿ｌｐは、要求トルクＴＲＥＱｂに応じて次のように設定されている。すなわち、要求トルクＴＲＥＱｂが最も小さい第１所定値ＴＲＥＱｂ１のときには、報酬値Ｒｗ＿ｌｐは、正規化低圧ＥＧＲ偏差Ｆｄｌｐの全体（値０≦Ｆｄｌｐ≦値１．０）に対して、Ｆｄｌｐ値が小さいほど、より大きな値にリニアに設定されている。
【０２７９】
また、要求トルクＴＲＥＱｂが中間の第２所定値ＴＲＥＱｂ２のときには、正規化低圧ＥＧＲ偏差Ｆｄｌｐに対する報酬値Ｒｗ＿ｌｐの傾きは、値０≦Ｆｄｌｐ≦第１所定値Ｆｄｌｐ１の範囲では、より大きな値に設定されており、Ｆｄｌｐ＞第１所定値Ｆｄｌｐ１の範囲では、より小さな値に設定されている。さらに、要求トルクＴＲＥＱｂが最も大きい第３所定値ＴＲＥＱｂ３のときには、正規化低圧ＥＧＲ偏差Ｆｄｌｐに対する報酬値Ｒｗ＿ｌｐの傾きは、値０≦Ｆｄｌｐ≦第２所定値Ｆｄｌｐ２の範囲では、より大きな値に設定されており、Ｆｄｌｐ＞Ｆｄｌｐ２の範囲では、より小さな値に設定されている。また、これらの第１および第２所定値Ｆｄｌｐ１，Ｆｄｌｐ２は、値０＜Ｆｄｌｐ２＜Ｆｄｌｐ１＜値１．０の関係を満たすように設定されている。
【０２８０】
上記の説明から明らかなように、図２９のマップでは、正規化低圧ＥＧＲ偏差Ｆｄｌｐに対する報酬値Ｒｗ＿ｌｐの傾きが比較的大きい範囲が、要求トルクＴＲＥＱｂが小さいほど、より大きく設定されている。これは、要求トルクＴＲＥＱｂが小さいほど、すなわちエンジン８１の負荷が低いほど、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに対する低圧ＥＧＲガス流量ＬＰＥＧＲの感度が高いことから、正規化低圧ＥＧＲ偏差Ｆｄｌｐのより大きな範囲に対して、報酬値Ｒｗ＿ｌｐをきめ細かく設定するためである。
【０２８１】
上記ステップ１４３に続くステップ１４４では、ステップ１４３で算出された報酬値Ｒｗ＿ｌｐに基づき、重み係数ωｄを強化学習によって学習する。この学習は次のようにして行われる。すなわち、まず、そのときに設定されている重み係数ωｄ（前回値）を、その学習値ωｄＧとして、算出された報酬値Ｒｗ＿ｌｐと対応させて、複数のバッファの１つに順次、記憶する。次いで、重み係数ωｄ（今回値）を、実験により予め設定された互いに異なる複数の所定値の１つにランダムに設定する。なお、今回が学習開始後の１回目のループであるときには、前記ステップ１３８から明らかなように、重み係数ωｄがまだ設定されていないので、学習値ωｄＧは、値０に設定されるとともに、報酬値Ｒｗ＿ｌｐと対応させて記憶される。
【０２８２】
上記ステップ１４４に続くステップ１４５では、目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄを、前記ステップ１２９で設定された学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧに設定する。次いで、ステップ１４６において、第２干渉抑制値算出部１０６の説明で述べたようにして、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを算出する。すなわち、エンジン回転数ＮＥｂなどの運転状態パラメータや、前記ステップ１３９で算出された低圧ＥＧＲガス流量偏差Ｄｌｐ、前記ステップ１３５で設定された目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄなどを入力とし、ニューラルネットワークを用いて、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを算出する。
【０２８３】
次に、上記ステップ１４５で設定された暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄに、ステップ１４６で算出された第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを加算することによって、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを算出し（ステップ１４７）、本処理を終了する。このステップ１４７の実行に伴い、ＬＰＴＨコントローラ１１２によって、低圧用スロットル弁開度ＬＰＴＨが、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄに収束するように制御される。また、低圧ＥＧＲ制御弁開度ＬＰＶＴは、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧの設定が行われたときに算出されたその目標値に保持される。
【０２８４】
以上のように、第２学習準備動作が完了する（ステップ１２２：ＹＥＳ）と、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄによる補正が、第２学習準備動作の実行中と同様に停止されるとともに、高圧用スロットル弁開度ＨＰＴＨが、第１所定値ＨＰＴＨＲＥＦ１から一定の第２所定値ＨＰＴＨＲＥＦ２にステップ状に変化するように制御され、第２所定値ＨＰＴＨＲＥＦ２に保持される（ステップ１３６）。また、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧに保持される（ステップ１３８）。前述したように、この学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧは、高圧用スロットル弁開度ＨＰＴＨが第１所定値ＨＰＴＨＲＥＦ１に保持されている状態で、低圧ＥＧＲガス流量ＬＰＥＧＲが学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒに収束するような値に、設定されている。以上から明らかなように、ステップ１３６および１３８の実行によって、低圧ＥＧＲガス流量ＬＰＥＧＲは、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒからずれるように変化する。また、この場合における学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒに対する低圧ＥＧＲガス流量ＬＰＥＧＲのずれ分は、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが干渉することによる低圧ＥＧＲガス流量ＬＰＥＧＲの変動分を良好に表す。
【０２８５】
そして、第２学習準備動作が完了してから待機時間ＴＭＤＥＬｄが経過する（ステップ１３７：ＹＥＳ）と、重み係数ωｄの学習が開始される（ステップ１３９および１４２〜１４４）。このように、第２学習準備動作が完了してから待機時間ＴＭＤＥＬｄが経過するのを待って学習を開始するのは、ステップ１３６および１３８の実行によって低圧ＥＧＲガス流量ＬＰＥＧＲが学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒから確実にずれた状態で、すなわち、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄによる干渉の影響が低圧ＥＧＲガス流量ＬＰＥＧＲに確実に反映された状態で、学習を行うためである。
【０２８６】
また、この学習中、低圧ＥＧＲガス流量偏差の絶対値｜Ｄｌｐ｜に比例する正規化低圧ＥＧＲ偏差Ｆｄｌｐが小さいほど、報酬値Ｒｗ＿ｌｐがより大きな値に算出される（ステップ１４３）。さらに、そのときに得られている重み係数ωｄすなわちその前回値が、学習値ωｄＧとして、今回の報酬値Ｒｗ＿ｌｐと対応させて、複数のバッファの１つに順次、記憶されるとともに、重み係数ωｄの今回値が、複数の所定値の１つにランダムに設定される（ステップ１４４）。
【０２８７】
そして、上記のように設定された重み係数ωｄを適用したニューラルネットワークを用いて、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄが算出される（ステップ１４６）。また、算出された第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧに設定された暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄに加算することによって、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが算出される（ステップ１４７）。すなわち、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づいて補正される。
【０２８８】
一方、前記ステップ１４０の答がＹＥＳで、低圧ＥＧＲガス流量偏差Ｄｌｐが前述した第１および第２所定値ｓｔｌｐＬ，ｓｔｌｐＨで規定される所定の範囲内にあるときには、前記ステップ１４１で設定された安定タイマのタイマ値ｔＳＴＢｄが値０であるか否かを判別する（ステップ１４８）。この答がＮＯのときには、前記ステップ１４２以降を実行する。
【０２８９】
一方、上記ステップ１４８の答がＹＥＳ（ｔＳＴＢｄ＝０）になったとき、すなわち、低圧ＥＧＲガス流量偏差Ｄｌｐが第１および第２所定値ｓｔｌｐＬ，ｓｔｌｐＨで規定される所定の範囲内にある状態が、安定時間ＴＳＴＢｄにわたって継続したときには、低圧ＥＧＲガス流量ＬＰＥＧＲが学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒにほぼ収束した状態で安定しているとして、重み係数ωｄの学習が完了したと判定する。そして、前記ステップ１４４で記憶された複数の学習値ωｄＧのうちの、最も大きな報酬値Ｒｗ＿ｌｐに対応するものを読み出し、重み係数ωｄとして設定し、重み係数ωｄを更新する（ステップ１４８Ａ）とともに、学習が完了したことを表すために、第２学習完了フラグＦ＿ＬＥＤＯＮＥｄを「１」にセットし（ステップ１４９）、本処理を終了する。また、このステップ１４９を実行した後には、図２７の前記ステップ１２１の答がＹＥＳになり、その場合には、そのまま本処理を終了する。
【０２９０】
一方、前記ステップ１３４の答がＹＥＳ（ｔＬＥＡｄ＝０）になったとき、すなわち、第２学習準備動作が完了してから、学習時間ＴＬＥＡｄが経過したときには、前記ステップ１４４などによる重み係数ωｄの学習が十分に行われているため、当該学習が完了したと判定する。そして、上記ステップ１４８Ａを実行することによって、記憶された複数の学習値ωｄＧのうちの、最も大きな報酬値Ｒｗ＿ｌｐに対応するものを重み係数ωｄとして設定し、重み係数ωｄを更新するとともに、学習が完了したことを表すために、上記ステップ１４９を実行し、本処理を終了する。
【０２９１】
以上のように、低圧ＥＧＲガス流量偏差Ｄｌｐが所定の範囲内にある状態が安定時間ＴＳＴＢｄにわたって継続したという条件、および、第２学習準備動作が完了してから学習時間ＴＬＥＡｄが経過したという条件の一方が成立すると、その時点で学習が完了したと判定される。
【０２９２】
また、以上の第２実施形態は、特許請求の範囲に記載された請求項１〜３および５に係る発明（以下、総称して「第２発明」という）に対応しており、第２実施形態における各種の要素と、第２発明における各種の要素との対応関係は次のとおりである。すなわち、第２実施形態におけるＥＣＵ７２、第１および第２コントローラ１０３，１０４が、第２発明における制御入力算出手段に相当し、第２実施形態におけるＥＣＵ７２、第１および第２干渉抑制値算出部１０５，１０６が、第２発明における干渉抑制パラメータ算出手段に相当するとともに、第２実施形態におけるＥＣＵ７２、第１および第２加算器１０７，１０８が、第２発明における補正手段に相当する。
【０２９３】
また、第２実施形態におけるＥＣＵ７２および目標値算出部１０１が、第２発明における目標値設定手段に相当するとともに、第２実施形態における吸気圧センサ２５、排気圧センサ３４、ＬＰＥＧＲ開度センサ３６、排気温センサ３５、吸気チャンバ圧センサ３１、排気マニホルド圧センサ２８、ＨＰＥＧＲ開度センサ３７、排気マニホルド温センサ２９、およびＥＣＵ７２が、第２発明における制御量検出手段に相当する。さらに、第２実施形態におけるＥＣＵ７２および学習部１２１が、第２発明における学習手段に相当し、第２実施形態における低圧ＥＧＲ装置９０、低圧用スロットル弁８４およびＬＰＴＨアクチュエータ８４ａが、第２発明における第１ＥＧＲ装置に相当するとともに、第２実施形態における高圧ＥＧＲ装置９１、高圧用スロットル弁８７およびＨＰＴＨアクチュエータ８７ａが、第２発明における第２ＥＧＲ装置に相当する。
【０２９４】
また、第２実施形態における目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、第２発明における制御入力に相当するとともに、第２実施形態における低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲが、第２発明における制御量に相当する。さらに、第２実施形態における第１および第２干渉抑制パラメータＨＰＴＨ＿ｄｃ＿ｃｍｄ，ＬＰＴＨ＿ｄｃ＿ｃｍｄが、第２発明における干渉抑制パラメータに相当するとともに、第２実施形態における目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄおよび目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄが、第２発明における目標値に相当する。
【０２９５】
また、第２実施形態における報酬値Ｒｗ＿ｈｐおよびＲｗ＿ｌｐが、第２発明における報酬に相当するとともに、第２実施形態における重み係数ωｃおよびωｄが、第２発明におけるニューロンパラメータに相当する。さらに、第２実施形態における学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧおよび学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧが、第２発明におけるニューロンパラメータの学習の開始直前に算出された値に相当するとともに、第２実施形態における学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒおよび学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒが、ニューロンパラメータの学習の開始直前に設定された目標値に相当する。また、第２実施形態における目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、第２発明における第１ＥＧＲ制御パラメータに相当するとともに、第２実施形態における目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、第２発明における第２ＥＧＲ制御パラメータに相当する。さらに、第２実施形態における低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲが、第２発明における第１ＥＧＲガスの流量および第２ＥＧＲガスの流量にそれぞれ相当する。
【０２９６】
以上のように、第２実施形態によれば、エンジン８１を含むプラント１１１において、制御入力としての目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ、ならびに、制御量としての低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲの間に、相互干渉が存在している。また、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄの算出が、目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄを入力とし、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを出力として構築されたニューラルネットワークを用いて行われる。さらに、算出された第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づいて、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが補正される。また、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄの算出が、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを入力とし、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを出力として構築されたニューラルネットワークを用いて行われる。さらに、算出された第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づいて、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが補正される。
【０２９７】
以上により、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを、相互干渉を抑制するように適切に補正することができる。この場合、プラント１１１には、非線形系であるエンジン８１が含まれるものの、ニューラルネットワークは、非線形系を適切かつ容易にモデル化できるという特性を有するので、第１および第２干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄ，ＬＰＴＨ＿ｄｃ＿ｃｍｄを算出するためのニューラルネットワークを、適切かつ容易に構築することができる。以上から、非線形系であるプラント１１１において、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ、ならびに、低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲの間に存在する相互干渉を適切に抑制でき、それにより低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲを適切に制御することができるとともに、制御装置７１を容易に設計することができる。
【０２９８】
また、ニューラルネットワークに用いられる重み係数ωｃおよびωｄが、それぞれ別個に、すなわちニューラルネットワークごとに学習される。さらに、重み係数ωｃを学習する前に、算出された高圧ＥＧＲガス流量ＨＰＥＧＲが目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄになるように、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、フィードバック制御アルゴリズムである応答指定型制御アルゴリズムによって算出される。さらに、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、一定の第１所定値ＬＰＴＨＲＥＦ１に保持されるとともに、第１および第２干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄ，ＬＰＴＨ＿ｄｃ＿ｃｍｄにそれぞれ基づく目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄおよび目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄの補正が停止される。以上により、高圧ＥＧＲガス流量ＨＰＥＧＲは、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに収束した状態に保持される。
【０２９９】
そして、重み係数ωｃの学習が開始されると、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、第２所定値ＬＰＴＨＲＥＦ２に保持されるとともに、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づく補正が停止される。また、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄが、応答指定型制御アルゴリズムによって算出されず、学習の開始直前に算出された学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに設定され、保持される。以上により、学習の開始時、学習の開始直前に設定された目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄである学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒに収束した状態に保持されていた高圧ＥＧＲガス流量ＨＰＥＧＲは、この学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒからずれるようになる。また、重み係数ωｃの学習中、高圧ＥＧＲガス流量偏差Ｄｈｐが、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒと高圧ＥＧＲガス流量ＨＰＥＧＲとの偏差として算出される。前述したように、学習の開始時における高圧ＥＧＲガス流量偏差Ｄｈｐは、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが干渉することによる高圧ＥＧＲガス流量ＨＰＥＧＲの変動分を良好に表す。
【０３００】
さらに、重み係数ωｃの学習中、重み係数ωｃが複数の所定値の１つに設定され、設定された重み係数ωｃを適用したニューラルネットワークを用いて、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄが算出されるとともに、算出された第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄで補正された目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを用いて、高圧ＥＧＲガス流量ＨＰＥＧＲが制御される。また、この高圧ＥＧＲガス流量ＨＰＥＧＲの制御によって得られた正規化高圧ＥＧＲ偏差Ｆｄｈｐが小さいほど、すなわち、高圧ＥＧＲガス流量偏差の絶対値｜Ｄｈｐ｜が小さいほど、報酬値Ｒｗ＿ｈｐがより大きな値に算出されるとともに、この報酬値Ｒｗ＿ｈｐと対応させて、重み係数ωｃが学習値ωｃＧとして順次、記憶される。さらに、記憶された複数の学習値ωｃＧのうちの、最も大きな報酬値Ｒｗ＿ｈｐに対応する学習値ωｃＧに、すなわち、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒと高圧ＥＧＲガス流量ＨＰＥＧＲとの偏差である高圧ＥＧＲガス流量偏差の絶対値｜Ｄｈｐ｜が最も小さくなる学習値ωｃＧに、重み係数ωｃが更新され、学習が完了する。
【０３０１】
以上のように、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに応じた目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄを用いて制御された高圧ＥＧＲガス流量ＨＰＥＧＲが、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒになるように、高圧ＥＧＲガス流量偏差Ｄｈｐに基づく報酬値Ｒｗ＿ｈｐを用いて、重み係数ωｃの強化学習が行われる。したがって、重み係数ωｃを適切に学習することができる。
【０３０２】
また、重み係数ωｄの学習も、重み係数ωｃの場合と同様にして行われる。すなわち、重み係数ωｄを学習する前に、算出された低圧ＥＧＲガス流量ＬＰＥＧＲが目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄになるように、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄが、応答指定型制御アルゴリズムによって算出される。さらに、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、一定の第１所定値ＨＰＴＨＲＥＦ１に保持されるとともに、第２および第１干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄ，ＨＰＴＨ＿ｄｃ＿ｃｍｄにそれぞれ基づく目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄおよび目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄの補正が停止される。以上により、低圧ＥＧＲガス流量ＬＰＥＧＲは、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに収束した状態に保持される。
【０３０３】
そして、重み係数ωｄの学習が開始されると、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが、第２所定値ＨＰＴＨＲＥＦ２に保持されるとともに、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄに基づく補正が停止される。また、目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄが、応答指定型制御アルゴリズムによって算出されず、学習の開始直前に算出された学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧに設定され、保持される。以上により、学習の開始時、学習の開始直前に設定された目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄである学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒに収束した状態に保持されていた低圧ＥＧＲガス流量ＬＰＥＧＲは、この学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒからずれるようになる。また、重み係数ωｄの学習中、低圧ＥＧＲガス流量偏差Ｄｌｐが、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒと低圧ＥＧＲガス流量ＬＰＥＧＲとの偏差として算出される。前述したように、学習の開始時における低圧ＥＧＲガス流量偏差Ｄｌｐは、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄが干渉することによる低圧ＥＧＲガス流量ＬＰＥＧＲの変動分を良好に表す。
【０３０４】
さらに、重み係数ωｄの学習中、重み係数ωｄが複数の所定値の１つに設定され、設定された重み係数ωｄを適用したニューラルネットワークを用いて、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄが算出されるとともに、算出された第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄで補正された目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを用いて、低圧ＥＧＲガス流量ＬＰＥＧＲが制御される。また、この低圧ＥＧＲガス流量ＬＰＥＧＲの制御によって得られた正規化低圧ＥＧＲ偏差Ｆｄｌｐが小さいほど、すなわち、低圧ＥＧＲガス流量偏差の絶対値｜Ｄｌｐ｜が小さいほど、報酬値Ｒｗ＿ｌｐがより大きな値に算出されるとともに、この報酬値Ｒｗ＿ｌｐと対応させて、重み係数ωｄが学習値ωｄＧとして順次、記憶される。さらに、記憶された複数の学習値ωｄＧのうちの、最も大きな報酬値Ｒｗ＿ｌｐに対応する学習値ωｄＧに、すなわち、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒと低圧ＥＧＲガス流量ＬＰＥＧＲとの偏差である低圧ＥＧＲガス流量偏差の絶対値｜Ｄｌｐ｜が最も小さくなる学習値ωｄＧに、重み係数ωｄが更新され、学習が完了する。
【０３０５】
以上のように、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄに応じた目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄを用いて制御された低圧ＥＧＲガス流量ＬＰＥＧＲが、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒになるように、低圧ＥＧＲガス流量偏差Ｄｌｐに基づく報酬値Ｒｗ＿ｌｐを用いて、重み係数ωｄの強化学習が行われる。したがって、重み係数ωｄを適切に学習することができる。
【０３０６】
第２実施形態によれば、以上のように学習されたニューラルネットワークを用いて算出された第１および第２干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄ，ＬＰＴＨ＿ｄｃ＿ｃｍｄに基づいて、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄおよび目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄをそれぞれ補正するので、相互干渉をより適切に抑制することができる。
【０３０７】
さらに、重み係数ωｃおよびωｄを学習する学習手法として、強化学習が用いられるので、第１実施形態と同様、制御装置７１をより容易に設計することができる。同じ理由により、相互干渉の態様などが互いに異なる複数の制御入力および複数の制御量ごとにニューラルネットワークを構築する場合でも、前述した従来の場合と異なり、モデル式を始めから設定する必要がなく、この構築を容易に行うことができる。したがって、この場合にも、制御装置を容易に設計することができる。
【０３０８】
また、第１および第２干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄ，ＬＰＴＨ＿ｄｃ＿ｃｍｄの算出を、前述した運転状態パラメータ（エンジン回転数ＮＥｂや、要求トルクＴＲＥＱｂなど）に応じて行うので、両者ＨＰＴＨ＿ｄｃ＿ｃｍｄ，ＬＰＴＨ＿ｄｃ＿ｃｍｄを、エンジン８１の運転状態を反映させながら、適切に算出することができる。
【０３０９】
なお、第２実施形態では、制御入力としての目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄおよび目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを算出するフィードバック制御アルゴリズムとして、応答指定型制御アルゴリズムを用いているが、他の適当なフィードバック制御アルゴリズム、例えば、ＰＩＤ制御アルゴリズムなどを用いてもよい。
【０３１０】
また、第２実施形態では、算出された制御量としての低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲが、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄおよび目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄにそれぞれなるように、フィードバック制御アルゴリズムによって、暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄおよびＨＰＴＨ＿ｓｍｃ＿ｃｍｄをそれぞれ算出しているが、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄおよび目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに応じたマップ検索によって、暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄおよびＨＰＴＨ＿ｓｍｃ＿ｃｍｄをそれぞれ算出してもよい。この場合、重み係数ωｃおよびωｄの学習中における高圧ＥＧＲガス流量偏差Ｄｈｐおよび低圧ＥＧＲガス流量偏差Ｄｌｐの算出に、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒおよび学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒに代えて、そのときどきに算出された目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄおよび目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄが、それぞれ用いられる。
【０３１１】
さらに、第２実施形態では、低圧ＥＧＲガス流量ＬＰＥＧＲおよび高圧ＥＧＲガス流量ＨＰＥＧＲを、演算により算出しているが、センサを用いて直接的に検出してもよい。この場合、センサとして、例えば熱線式、ベーン式、またはカルマン渦式のものが用いられる。また、第２実施形態では、報酬値Ｒｗ＿ｈｐおよびＲｗ＿ｌｐを、正規化高圧ＥＧＲ偏差Ｆｄｈｐおよび正規化低圧ＥＧＲ偏差Ｆｄｌｐにそれぞれ基づいて、リニア（線形）に設定しているが、非線形に設定してもよい。
【０３１２】
さらに、第２実施形態では、報酬値Ｒｗ＿ｈｐを算出するためのパラメータとして、正規化高圧ＥＧＲ偏差Ｆｄｈｐを用いているが、高圧ＥＧＲガス流量偏差Ｄｈｐまたはその絶対値｜Ｄｈｐ｜を用いてもよい。あるいは、報酬値Ｒｗ＿ｈｐを算出するためのパラメータとして、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒと高圧ＥＧＲガス流量ＨＰＥＧＲとの比較結果を表す他の適当なパラメータ、例えば、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒおよび高圧ＥＧＲガス流量ＨＰＥＧＲの一方に対する他方の比などを用いてもよい。
【０３１３】
このことは、報酬値Ｒｗ＿ｌｐについても同様に当てはまる。すなわち、報酬値Ｒｗ＿ｌｐを算出するためのパラメータとして、低圧ＥＧＲガス流量偏差Ｄｌｐまたはその絶対値｜Ｄｌｐ｜を用いてもよい。あるいは、報酬値Ｒｗ＿ｌｐを算出するためのパラメータとして、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒと低圧ＥＧＲガス流量ＬＰＥＧＲとの比較結果を表す他の適当なパラメータ、例えば、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒおよび低圧ＥＧＲガス流量ＬＰＥＧＲの一方に対する他方の比などを用いてもよい。
【０３１４】
さらに、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを算出するためにニューラルネットワークに入力されるパラメータとして、前述した各種のパラメータに加え、低圧用スロットル弁開度ＬＰＴＨが一定の状態から変化し始めた時点からの経過時間を用いてもよい。高圧ＥＧＲガス流量ＨＰＥＧＲは、低圧用スロットル弁開度ＬＰＴＨの変化に対し、応答遅れをもって変化することから、そのような応答遅れを良好に反映させながら、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを適切に算出することができる。同様に、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを算出するためにニューラルネットワークに入力されるパラメータとして、高圧用スロットル弁開度ＨＰＴＨが一定の状態から変化し始めた時点からの経過時間を用いてもよい。低圧ＥＧＲガス流量ＬＰＥＧＲは、高圧用スロットル弁開度ＨＰＴＨの変化に対し、応答遅れをもって変化することから、そのような応答遅れを良好に反映させながら、第２干渉抑制値ＬＰＴＨ＿ｄｃ＿ｃｍｄを適切に算出することができる。
【０３１５】
また、第２実施形態では、高圧ＥＧＲガス流量偏差Ｄｈｐが所定の範囲内にある状態が安定時間ＴＳＴＢｃにわたって継続したという条件、および、第１学習準備動作が完了してから学習時間ＴＬＥＡｃが経過したという条件の一方が成立したときに、それまでに記憶された複数の学習値ωｃＧのうちの、最も大きな報酬値Ｒｗ＿ｈｐに対応するものに重み係数ωｃを更新することにより、学習を行っているが、次のようにして行ってもよい。すなわち、上記の２つの条件の一方が成立したときにも、報酬値Ｒｗ＿ｈｐを算出するとともに、そのときに設定されている重み係数ωｃを学習値ωｃＧとして、算出された報酬値Ｒｗ＿ｈｐと対応させて記憶する。そして、記憶された今回の学習値ωｃＧを含む複数の学習値ωｃＧのうちの、最も大きな報酬値Ｒｗ＿ｈｐに対応するものに重み係数ωｃを更新することにより、学習を行ってもよい。
【０３１６】
このことは、重み係数ωｄについても同様に当てはまる。すなわち、低圧ＥＧＲガス流量偏差Ｄｌｐが所定の範囲内にある状態が安定時間ＴＳＴＢｄにわたって継続したという条件、および、第２学習準備動作が完了してから学習時間ＴＬＥＡｄが経過したという条件の一方が成立したときにも、報酬値Ｒｗ＿ｌｐを算出するとともに、そのときに設定されている重み係数ωｄを学習値ωｄＧとして、算出された報酬値Ｒｗ＿ｌｐと対応させて記憶する。そして、記憶された今回の学習値ωｄＧを含む複数の学習値ωｄＧのうちの、最も大きな報酬値Ｒｗ＿ｌｐに対応するものに重み係数ωｄを更新することにより、学習を行ってもよい。
【０３１７】
さらに、第２実施形態では、報酬値Ｒｗ＿ｈｐが算出されるごとに、学習値ωｃＧを記憶するとともに、記憶された複数の学習値ωｃＧのうちの、最も大きな報酬値Ｒｗ＿ｈｐに対応するものに重み係数ωｃを更新しているが、今回算出された報酬値Ｒｗ＿ｈｐが、それまでに算出された報酬値Ｒｗ＿ｈｐよりも大きいときに限って、そのときに設定されている重み係数ωｃを学習値ωｃＧとして記憶し、学習値ωｃＧを随時、更新するとともに、記憶された学習値ωｃＧに重み係数ωｃを更新してもよい。これにより、上記と同様の効果を得ることができる。
【０３１８】
このことは、学習値ωｄＧについても同様に当てはまる。すなわち、今回算出された報酬値Ｒｗ＿ｌｐが、それまでに算出された報酬値Ｒｗ＿ｌｐよりも大きいときに限って、そのときに設定されている重み係数ωｄを学習値ωｄＧとして記憶し、学習値ωｄＧを随時、更新するとともに、記憶された学習値ωｄＧに重み係数ωｄを更新してもよい。
【０３１９】
また、第２実施形態では、学習のための重み係数ωｃの設定および学習値ωｃＧの記憶（ステップ１０４）を、第１学習処理を実行するごと（制御周期ΔＴごと）に行っているが、高圧ＥＧＲガス流量ＨＰＥＧＲが高圧用スロットル弁開度ＨＰＴＨの変化に対して応答遅れをもって変化するので、この応答遅れに応じた所定時間ごとに行ってもよい。同様に、学習のための重み係数ωｄの設定および学習値ωｄＧの記憶（ステップ１４４）を、第２学習処理を実行するごと（制御周期ΔＴごと）に行っているが、低圧ＥＧＲガス流量ＬＰＥＧＲが低圧用スロットル弁開度ＬＰＴＨの変化に対して応答遅れをもって変化するので、この応答遅れに応じた所定時間ごとに行ってもよい。
【０３２０】
なお、本発明は、説明した第１および第２実施形態（以下、総称して「実施形態」という）に限定されることなく、種々の態様で実施することができる。例えば、実施形態では、階層型のニューラルネットワークＮＮを用いているが、他の適当なニューラルネットワーク、例えば、相互結合型のニューラルネットワークを用いてもよい。また、実施形態では、重み係数ωａ，ωｂ，ωｃ，ωｄを学習する学習手法として、強化学習を用いているが、他の適当な学習手法、例えば、誤差逆伝播法（バックプロパゲーション）を用いてもよい。
【０３２１】
さらに、実施形態では、学習を、エンジン３、８１を用いて行っているが、エンジン３、８１を用いずに、エンジンシミュレータを用いて行ってもよい。また、実施形態では、重み係数ωａ，ωｂ，ωｃ，ωｄのみを学習しているが、これに代えて、またはこれとともに、傾きゲインβａ，βｂ，βｃ，βｄ，オフセット値εａ，εｂ，εｃ，εｄ、出力ゲインαａ，αｂ，αｃ，αｄ、傾きゲインγａ，γｂ，γｃ，γｄ、およびオフセット値δａ，δｂ，δｃ，δｄの少なくとも１つを、学習してもよい。
【０３２２】
さらに、実施形態では、制御入力および制御量の数は、いずれも２つであるが、複数であり且つ相互干渉が存在する限り、任意であり、この場合、制御入力および制御量の数は、必ずしも１：１でなくてもよい。例えば、２つの制御量の各々を２つ以上の制御入力によって制御されるプラントにも、本発明を適用可能である。また、実施形態は、エンジン３，８１を含むプラントに、本発明を適用した例であるが、本発明は、これに限らず、他の産業機器などの干渉系のプラントに適用可能である。その他、本発明の趣旨の範囲内で、細部の構成を適宜、変更することが可能である。
【符号の説明】
【０３２３】
１  制御装置
２  ＥＣＵ（制御入力算出手段、干渉抑制パラメータ算出手段、補正手段、目標値設                定手段、制御量検出手段、学習手段）
３  エンジン
５  吸気弁
１４  可変バルブリフト機構
１５ａ  ＴＨアクチュエータ（スロットル弁機構）
２４  エアフローセンサ（制御量検出手段）
２５  吸気圧センサ（制御量検出手段）
２６  吸気温センサ（制御量検出手段）
２８  排気マニホルド圧センサ（制御量検出手段）
２９  排気マニホルド温センサ（制御量検出手段）
３１  吸気チャンバ圧センサ（制御量検出手段）
３４  排気圧センサ（制御量検出手段）
３５  排気温センサ（制御量検出手段）
３６  ＬＰＥＧＲ開度センサ（制御量検出手段）
３７  ＨＰＥＧＲ開度センサ（制御量検出手段）
４１  目標値算出部（目標値設定手段）
４３  第１コントローラ（制御入力算出手段）
４４  第２コントローラ（制御入力算出手段）
４５  第１干渉抑制値算出部（干渉抑制パラメータ算出手段）
４６  第２干渉抑制値算出部（干渉抑制パラメータ算出手段）
４７  第１加算器（補正手段）
４８  第２加算器（補正手段）
５１  プラント
６１  学習部（学習手段）
７１  制御装置
７２  ＥＣＵ（制御入力算出手段、干渉抑制パラメータ算出手段、補正手段、目標値設                定手段、制御量検出手段）
８１  エンジン
８１ａ  気筒
８３  吸気通路
８４  低圧用スロットル弁（第１ＥＧＲ装置）
８４ａ  ＬＰＴＨアクチュエータ（第１ＥＧＲ装置）
８７  高圧用スロットル弁（第２ＥＧＲ装置）
８７ａ  ＨＰＴＨアクチュエータ（第２ＥＧＲ装置）
９０  低圧ＥＧＲ装置（第１ＥＧＲ装置）
９１  高圧ＥＧＲ装置（第２ＥＧＲ装置）
１０１  目標値算出部（目標値設定手段）
１０３  第１コントローラ（制御入力算出手段）
１０４  第２コントローラ（制御入力算出手段）
１０５  第１干渉抑制値算出部（干渉抑制パラメータ算出手段）
１０６  第２干渉抑制値算出部（干渉抑制パラメータ算出手段）
１０７  第１加算器（補正手段）
１０８  第２加算器（補正手段）
１１１  プラント
１２１  学習部（学習手段）
ＴＨ＿ｃｍｄ  目標スロットル弁開度（制御入力、開度制御パラメータ）
Ｌｉｆｔ＿ｃｍｄ  目標バルブリフト（制御入力、リフト制御パラメータ）
ＰＢａ  吸気圧（制御量、吸気通路内の圧力）
Ｇｃｙｌａ  吸入空気量（制御量）
Ｌｉｆｔ＿ｄｃ＿ｃｍｄ  第１干渉抑制値（干渉抑制パラメータ）
ＴＨ＿ｄｃ＿ｃｍｄ  第２干渉抑制値（干渉抑制パラメータ）
ＰＢ＿ｃｍｄ  目標吸気圧（目標値）
Ｇｃｙｌ＿ｃｍｄ  目標吸気量（目標値）
Ｒｗ＿ｇｃｙｌ  報酬値（報酬）
Ｒｗ＿ｐｂ  報酬値（報酬）
ωａ  重み係数（ニューロンパラメータ）
ωｂ  重み係数（ニューロンパラメータ）
ＴＨＲＥＦ１  第１所定値
ＬｉｆｔＲＥＦ１  第１所定値
Ｌｉｆｔ＿ｃｍｄＧ  学習用目標リフト（ニューロンパラメータの学習の開始直前に                        算出された値）
ＴＨ＿ｃｍｄＧ  学習用目標開度（ニューロンパラメータの学習の開始直前に算                        出された値）
ＴＨＲＥＦ２  第２所定値
ＬｉｆｔＲＥＦ２  第２所定値
Ｔｇｔ＿ｇｃｙｌ  学習用目標吸気量（ニューロンパラメータの学習の開始直前に                        設定された目標値）
Ｔｇｔ＿ｐｂ  学習用目標吸気圧（ニューロンパラメータの学習の開始直前に                        設定された目標値）
ＴＨ  スロットル弁開度（スロットル弁の開度）
Ｌｉｆｔ  バルブリフト（吸気弁のリフト）
ＬＰＴＨ＿ｃｍｄ  目標低圧用スロットル弁開度（制御入力、第１ＥＧＲ制御パラ                        メータ）
ＨＰＴＨ＿ｃｍｄ  目標高圧用スロットル弁開度（制御入力、第２ＥＧＲ制御パラ                        メータ）
ＬＰＥＧＲ  低圧ＥＧＲガス流量（制御量、第１ＥＧＲガスの流量）
ＨＰＥＧＲ  高圧ＥＧＲガス流量（制御量、第２ＥＧＲガスの流量）
ＨＰＴＨ＿ｄｃ＿ｃｍｄ  第１干渉抑制値（干渉抑制パラメータ）
ＬＰＴＨ＿ｄｃ＿ｃｍｄ  第２干渉抑制値（干渉抑制パラメータ）
ＬＰＥＧＲ＿ｃｍｄ  目標低圧ＥＧＲガス流量（目標値）
ＨＰＥＧＲ＿ｃｍｄ  目標高圧ＥＧＲガス流量（目標値）
Ｒｗ＿ｈｐ  報酬値（報酬）
Ｒｗ＿ｌｐ  報酬値（報酬）
ωｃ  重み係数（ニューロンパラメータ）
ωｄ  重み係数（ニューロンパラメータ）
ＬＰＴＨＲＥＦ１  第１所定値
ＨＰＴＨＲＥＦ１  第１所定値
ＨＰＴＨ＿ｃｍｄＧ  学習用目標ＨＰＴＨ開度（ニューロンパラメータの学習の開始                        直前に算出された値）
ＬＰＴＨ＿ｃｍｄＧ  学習用目標ＬＰＴＨ開度（ニューロンパラメータの学習の開始                        直前に算出された値）
ＬＰＴＨＲＥＦ２  第２所定値
ＨＰＴＨＲＥＦ２  第２所定値
Ｔｇｔ＿ｈｐｅｇｒ  学習用目標高圧ＥＧＲガス流量（ニューロンパラメータの学習                        の開始直前に設定された目標値）
Ｔｇｔ＿ｌｐｅｇｒ  学習用目標低圧ＥＧＲガス流量（ニューロンパラメータの学習                        の開始直前に設定された目標値）
【図１】
2012102629.tif 000048
【図２】
2012102629.tif 000049
【図３】
2012102629.tif 000050
【図４】
2012102629.tif 000051
【図５】
2012102629.tif 000052
【図６】
2012102629.tif 000053
【図７】
2012102629.tif 000054
【図８】
2012102629.tif 000055
【図９】
2012102629.tif 000056
【図１０】
2012102629.tif 000057
【図１１】
2012102629.tif 000058
【図１２】
2012102629.tif 000059
【図１３】
2012102629.tif 000060
【図１４】
2012102629.tif 000061
【図１５】
2012102629.tif 000062
【図１６】
2012102629.tif 000063
【図１７】
2012102629.tif 000064
【図１８】
2012102629.tif 000065
【図１９】
2012102629.tif 000066
【図２０】
2012102629.tif 000067
【図２１】
2012102629.tif 000068
【図２２】
2012102629.tif 000069
【図２３】
2012102629.tif 000070
【図２４】
2012102629.tif 000071
【図２５】
2012102629.tif 000072
【図２６】
2012102629.tif 000073
【図２７】
2012102629.tif 000074
【図２８】
2012102629.tif 000075
【図２９】
2012102629.tif 000076
【手続補正書】
【提出日】平成24年2月15日(2012.2.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の制御入力によって複数の制御量をそれぞれ制御するとともに、前記複数の制御入力および前記複数の制御量の間に相互干渉が存在するプラントの制御装置であって、
前記複数の制御入力をそれぞれ算出する制御入力算出手段と、
前記相互干渉を抑制するように前記複数の制御入力をそれぞれ補正するための複数の干渉抑制パラメータを算出し、当該複数の干渉抑制パラメータの各々の算出を、前記複数の制御入力のうちの、当該算出される干渉抑制パラメータで補正される制御入力以外の制御入力を入力とし、当該干渉抑制パラメータを出力として構築されたニューラルネットワークを用いて行う干渉抑制パラメータ算出手段と、
前記制御入力算出手段により算出された制御入力を、前記算出された干渉抑制パラメータに基づいて補正する補正手段と、
前記複数の制御量のそれぞれの目標となる複数の目標値を設定する目標値設定手段と、を備え、
前記制御入力算出手段は、前記複数の制御量が前記設定された複数の目標値にそれぞれなるように、前記複数の制御入力を算出し、
前記複数の制御量をそれぞれ検出する制御量検出手段と、
前記干渉抑制パラメータで補正された制御入力により制御された前記複数の制御量の各々が対応する目標値になるように、前記検出された当該制御量と当該目標値との比較結果に基づく報酬を用いた強化学習によって、前記ニューラルネットワークに用いられるパラメータであるニューロンパラメータを学習する学習手段と、をさらに備え、
当該学習手段は、前記ニューロンパラメータの学習を前記ニューラルネットワークごとに行い、
当該ニューロンパラメータを学習する前に、前記制御入力算出手段は、前記複数の制御入力のうちの、当該ニューロンパラメータが学習されるニューラルネットワークに対応する干渉抑制パラメータで補正される制御入力である学習対象用制御入力を、前記検出された、対応する制御量が前記目標値になるように、所定のフィードバック制御アルゴリズムによって算出するとともに、前記複数の制御入力のうちの前記学習対象用制御入力以外の制御入力である非学習対象用制御入力を、一定の第１所定値に保持し、前記補正手段は、前記複数の制御入力の補正を停止し、
当該ニューロンパラメータの学習中、前記制御入力算出手段は、前記学習対象用制御入力を、当該ニューロンパラメータの学習の開始直前に算出された値に保持するとともに、前記非学習対象用制御入力を前記第１所定値とは異なる一定の第２所定値に保持し、前記補正手段は、前記学習対象用制御入力を、当該ニューロンパラメータが学習される前記ニューラルネットワークに対応する前記干渉抑制パラメータに基づいて補正するとともに、当該ニューラルネットワーク以外のニューラルネットワークに対応する前記干渉抑制パラメータに基づく補正を停止し、前記学習手段は、前記強化学習を、前記補正された前記学習対象用制御入力により制御された制御量が当該ニューロンパラメータの学習の開始直前に設定された前記目標値になるように、検出された当該制御量と当該目標値との比較結果に基づく報酬を用いて行うことを特徴とするプラントの制御装置。
【請求項２】
前記プラントは、スロットル弁の開度を変更するためのスロットル弁機構と、吸気弁のリフトを変更するための可変バルブリフト機構とを備える内燃機関を含み、
前記複数の制御入力は、前記スロットル弁の開度を制御するための開度制御パラメータおよび前記吸気弁のリフトを制御するためのリフト制御パラメータであり、
前記複数の制御量は、前記内燃機関の吸気通路内の圧力および吸入空気量であることを特徴とする、請求項１に記載のプラントの制御装置。
【請求項３】
前記プラントは、既燃ガスの一部を第１ＥＧＲガスとして吸気通路に還流させる第１ＥＧＲ装置と、既燃ガスの一部を第２ＥＧＲガスとして、前記吸気通路の前記第１ＥＧＲ装置よりも気筒側の位置に還流させる第２ＥＧＲ装置とを備える内燃機関を含み、
前記複数の制御入力は、前記第１ＥＧＲ装置を制御するための第１ＥＧＲ制御パラメータおよび前記第２ＥＧＲ装置を制御するための第２ＥＧＲ制御パラメータであり、
前記複数の制御量は、前記第１ＥＧＲガスの流量および前記第２ＥＧＲガスの流量であることを特徴とする、請求項１に記載のプラントの制御装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上記の目的を達成するために、請求項１に係る発明は、複数の制御入力（実施形態における（以下、本項において同じ）目標スロットル弁開度ＴＨ＿ｃｍｄ、目標バルブリフトＬｉｆｔ＿ｃｍｄ、目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄ、目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ）によって複数の制御量（吸気圧ＰＢａ、吸入空気量Ｇｃｙｌａ、低圧ＥＧＲガス流量ＬＰＥＧＲ、高圧ＥＧＲガス流量ＨＰＥＧＲ）をそれぞれ制御するとともに、複数の制御入力および複数の制御量の間に相互干渉が存在するプラント５１、１１１の制御装置１、７１であって、複数の制御入力をそれぞれ算出する制御入力算出手段（ＥＣＵ２、７２、第１コントローラ４３、１０３および第２コントローラ４４、１０４）と、相互干渉を抑制するように複数の制御入力をそれぞれ補正するための複数の干渉抑制パラメータ（第１干渉抑制値Ｌｉｆｔ＿ｄｃ＿ｃｍｄ、ＨＰＴＨ＿ｄｃ＿ｃｍｄ、第２干渉抑制値ＴＨ＿ｄｃ＿ｃｍｄ、ＬＰＴＨ＿ｄｃ＿ｃｍｄ）を算出し、複数の干渉抑制パラメータの各々の算出を、複数の制御入力のうちの、算出される干渉抑制パラメータで補正される制御入力以外の制御入力を入力とし、当該干渉抑制パラメータを出力として構築されたニューラルネットワークを用いて行う干渉抑制パラメータ算出手段（ＥＣＵ２、７２、第１干渉抑制値算出部４５、１０５および第２干渉抑制値算出部４６、１０６）と、制御入力算出手段により算出された制御入力を、算出された干渉抑制パラメータに基づいて補正する補正手段（ＥＣＵ２、７２、第１加算器４７、１０７、第２加算器４８、１０８）と、複数の制御量のそれぞれの目標となる複数の目標値（目標吸気圧ＰＢ＿ｃｍｄ、目標吸気量Ｇｃｙｌ＿ｃｍｄ、目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄ、目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄ）を設定する目標値設定手段（ＥＣＵ２、７２、目標値算出部４１、１０１）と、を備え、制御入力算出手段は、複数の制御量が設定された複数の目標値にそれぞれなるように、複数の制御入力を算出し、複数の制御量をそれぞれ検出する制御量検出手段（エアフローセンサ２４、吸気圧センサ２５、吸気温センサ２６、排気マニホルド圧センサ２８、排気マニホルド温センサ２９、吸気チャンバ圧センサ３１、排気圧センサ３４、排気温センサ３５、ＬＰＥＧＲ開度センサ３６、ＨＰＥＧＲ開度センサ３７、ＥＣＵ２、７２）と、干渉抑制パラメータで補正された制御入力により制御された複数の制御量の各々が対応する目標値になるように、検出された当該制御量と当該目標値との比較結果に基づく報酬（報酬値Ｒｗ＿ｇｃｙｌ、報酬値Ｒｗ＿ｐｂ、報酬値Ｒｗ＿ｈｐ、報酬値Ｒｗ＿ｌｐ）を用いた強化学習によって、ニューラルネットワークに用いられるパラメータであるニューロンパラメータ（重み係数ωａ、ωｂ、ωｃおよびωｄ）を学習する学習手段（ＥＣＵ２、７２、学習部６１、１２１）と、をさらに備え、学習手段は、ニューロンパラメータの学習をニューラルネットワークごとに行い、当該ニューロンパラメータを学習する前に、制御入力算出手段は、複数の制御入力のうちの、当該ニューロンパラメータが学習されるニューラルネットワークに対応する干渉抑制パラメータで補正される制���入力である学習対象用制御入力を、検出された、対応する制御量が目標値になるように、所定のフィードバック制御アルゴリズムによって算出する（図１０のステップ７、８、図１３のステップ４７、４８、図２４のステップ８７、８８、図２７のステップ１２７、１２８）とともに、複数の制御入力のうちの学習対象用制御入力以外の制御入力である非学習対象用制御入力を、一定の第１所定値ＴＨＲＥＦ１、ＬｉｆｔＲＥＦ１、ＬＰＴＨＲＥＦ１、ＨＰＴＨＲＥＦ１に保持し（図１０のステップ６、図１３のステップ４６、図２４のステップ８６、図２７のステップ１２６）、補正手段は、複数の制御入力の補正を停止し（図１０のステップ６、８、図１３のステップ４６、４８、図２４のステップ８６、８８、図２７のステップ１２６、１２８）、当該ニューロンパラメータの学習中、制御入力算出手段は、学習対象用制御入力を、当該ニューロンパラメータの学習の開始直前に算出された値（学習用目標リフトＬｉｆｔ＿ｃｍｄＧ、学習用目標開度ＴＨ＿ｃｍｄＧ、学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧ、学習用目標ＬＰＴＨ開度ＬＰＴＨ＿ｃｍｄＧ）に保持する（図１０のステップ９、図１１のステップ２５、図１３のステップ４９、図１４のステップ６５、図２４のステップ８９、図２５のステップ１０５、図２７のステップ１２９、図２８のステップ１４５）とともに、非学習対象用制御入力を第１所定値ＴＨＲＥＦ１、ＬｉｆｔＲＥＦ１、ＬＰＴＨＲＥＦ１、ＨＰＴＨＲＥＦ１とは異なる一定の第２所定値ＴＨＲＥＦ２、ＬｉｆｔＲＥＦ２、ＬＰＴＨＲＥＦ２、ＨＰＴＨＲＥＦ２に保持し（図１１のステップ１５、１６、図１４のステップ５５、５６、図２５のステップ９５、９６、図２８のステップ１３５、１３６）、補正手段は、学習対象用制御入力を、当該ニューロンパラメータが学習されるニューラルネットワークに対応する干渉抑制パラメータに基づいて補正する（図１１のステップ２６、２７、図１４のステップ６６、６７、図２５のステップ１０６、１０７、図２８のステップ１４６、１４７）とともに、当該ニューラルネットワーク以外のニューラルネットワークに対応する干渉抑制パラメータに基づく補正を停止し（図１１のステップ１６、図１４のステップ５６、図２５のステップ９６、図２８のステップ１３６）、学習手段は、強化学習を、補正された学習対象用制御入力により制御された制御量が当該ニューロンパラメータの学習の開始直前に設定された目標値（学習用目標吸気量Ｔｇｔ＿ｇｃｙｌ、学習用目標吸気圧Ｔｇｔ＿ｐｂ、学習用目標高圧ＥＧＲガス流量Ｔｇｔ＿ｈｐｅｇｒ、学習用目標低圧ＥＧＲガス流量Ｔｇｔ＿ｌｐｅｇｒ）になるように、検出された当該制御量と当該目標値との比較結果に基づく報酬を用いて行う（図１１のステップ１９、２２〜２４、２８Ａ、図１４のステップ５９、６２〜６４、６８Ａ、図２５のステップ９９、１０２〜１０４、１０８Ａ、図２８のステップ１３９、１４２〜１４４、１４８Ａ）ことを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】削除
【補正の内容】
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
さらに、前述した構成によれば、複数の制御量のそれぞれの目標となる複数の目標値が、目標値設定手段によって設定されるとともに、複数の制御量が設定された複数の目標値にそれぞれなるように、複数の制御入力が算出される。これにより、複数の制御量が、複数の目標値にそれぞれなるように制御される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
また、前述した構成によれば、ニューロンパラメータの学習が、ニューラルネットワークごとに行われる。さらに、ニューロンパラメータを学習する前に、複数の制御入力のうちの、ニューロンパラメータが学習されるニューラルネットワーク（以下「学習対象ニューラルネットワーク」という）に対応する干渉抑制パラメータで補正される制御入力である学習対象用制御入力が、検出された、対応する制御量（以下「学習対象用制御量」という）がその目標値になるように、所定のフィードバック制御アルゴリズムによって算出される。さらに、複数の制御入力のうちの学習対象用制御入力以外の制御入力である非学習対象用制御入力が、一定の第１所定値に保持されるとともに、干渉抑制パラメータに基づく複数の制御入力の補正が停止される。これにより、非学習対象用制御入力に対応する制御量（以下「非学習対象用制御量」という）が、第１所定値に対応した一定値に保持される。また、学習対象用制御量は、上記のように算出された学習対象用制御入力により制御されることによって、目標値に収束した状態に保持される。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
請求項２に係る発明は、請求項１に記載のプラント５１の制御装置１において、プラント５１は、スロットル弁１５の開度（スロットル弁開度ＴＨ）を変更するためのスロットル弁機構（ＴＨアクチュエータ１５ａ）と、吸気弁５のリフト（バルブリフトＬｉｆｔ）を変更するための可変バルブリフト機構１４とを備える内燃機関３を含み、複数の制御入力は、スロットル弁１５の開度を制御するための開度制御パラメータ（目標スロットル弁開度ＴＨ＿ｃｍｄ）および吸気弁５のリフトを制御するためのリフト制御パラメータ（目標バルブリフトＬｉｆｔ＿ｃｍｄ）であり、複数の制御量は、内燃機関３の吸気通路４内の圧力（吸気圧ＰＢａ）および吸入空気量Ｇｃｙｌａであることを特徴とする。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
請求項３に係る発明は、請求項１に記載のプラント１１１の制御装置７１において、プラント１１１は、既燃ガスの一部を第１ＥＧＲガスとして吸気通路８３に還流させる第１ＥＧＲ装置（低圧用スロットル弁８４、ＬＰＴＨアクチュエータ８４ａ、低圧ＥＧＲ装置９０）と、既燃ガスの一部を第２ＥＧＲガスとして、吸気通路８３の第１ＥＧＲ装置よりも気筒８１ａ側の位置に還流させる第２ＥＧＲ装置（高圧用スロットル弁８７、ＨＰＴＨアクチュエータ８７ａ、高圧ＥＧＲ装置９１）とを備える内燃機関８１を含み、複数の制御入力は、第１ＥＧＲ装置を制御するための第１ＥＧＲ制御パラメータ（目標低圧用スロットル弁開度ＬＰＴＨ＿ｃｍｄ）および第２ＥＧＲ装置を制御するための第２ＥＧＲ制御パラメータ（目標高圧用スロットル弁開度ＨＰＴＨ＿ｃｍｄ）であり、複数の制御量は、第１ＥＧＲガスの流量（低圧ＥＧＲガス流量ＬＰＥＧＲ）および第２ＥＧＲガスの流量（高圧ＥＧＲガス流量ＨＰＥＧＲ）であることを特徴とする。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
また、排気通路６は、その下流側の排気マニホルドにおいて４つの分岐部に分岐しており、これら４つの分岐部は、シリンダヘッド３ｃに接続されるとともに、４つの気筒３ａにそれぞれ連通している。さらに、排気通路６には、これらの分岐部の集合部付近に、排気マニホルド圧センサ２８および排気マニホルド温センサ２９が設けられている。この排気マニホルド圧センサ２８は、当該集合部を流れる排ガスの圧力（以下「排気マニホルド圧」という）Ｐｅｍａを検出し、その検出信号をＥＣＵ２に出力する。また、排気マニホルド温センサ２９は、集合部を流れる排ガスの温度（以下「排気マニホルド温」という）Ｔｅｍａを検出し、その検出信号をＥＣＵ２に出力する。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
この目標値算出部４１は、算出されたエンジン回転数ＮＥａと、要求トルクＴＲＥＱａに応じ、所定の第１マップおよび第２マップ（いずれも図示せず）を検索することによって、目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄをそれぞれ算出するとともに、偏差算出部４２に出力する。これらの目標吸気圧ＰＢ＿ｃｍｄおよび目標吸気量Ｇｃｙｌ＿ｃｍｄはそれぞれ、吸気圧ＰＢａおよび吸入空気量Ｇｃｙｌａの目標値である。また、この要求トルクＴＲＥＱａは、エンジン３に要求されるトルクであり、エンジン回転数ＮＥａと、検出されたアクセル開度ＡＰａに応じ、所定のマップ（図示せず）を検索することによって算出される。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】０１４１
【補正方法】変更
【補正の内容】
【０１４１】
また、以上の第１実施形態は、特許請求の範囲に記載された請求項１および２に係る発明（以下、総称して「第１発明」という）に対応しており、第１実施形態における各種の要素と、第１発明における各種の要素との対応関係は次のとおりである。すなわち、第１実施形態におけるＥＣＵ２、第１および第２コントローラ４３，４４が、第１発明における制御入力算出手段に相当し、第１実施形態におけるＥＣＵ２、第１および第２干渉抑制値算出部４５，４６が、第１発明における干渉抑制パラメータ算出手段に相当するとともに、第１実施形態におけるＥＣＵ２、第１および第２加算器４７，４８が、第１発明における補正手段に相当する。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】０１６０
【補正方法】変更
【補正の内容】
【０１６０】
さらに、第１実施形態では、吸入空気量Ｇｃｙｌａを、演算により算出しているが、センサを用いて直接的に検出してもよい。また、第１実施形態では、吸気圧ＰＢａを、吸気圧センサ２５により検出しているが、演算により算出してもよい。さらに、第１実施形態では、報酬値Ｒｗ＿ｇｃｙｌおよびＲｗ＿ｐｂを、正規化吸気量偏差Ｆｄｇｃｙｌおよび正規化吸気圧偏差Ｆｄｐｂにそれぞれ基づいて、リニア（線形）に設定しているが、非線形に設定してもよい。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】０１７１
【補正方法】変更
【補正の内容】
【０１７１】
また、エンジン８１には、第１実施形態で述べたクランク角センサ２２が設けられており、クランク角センサ２２は、エンジン８１のクランクシャフトの回転に伴い、パルス信号であるＣＲＫｂ信号をＥＣＵ７２に出力する。ＥＣＵ７２は、クランク角センサ２２からのＣＲＫｂ信号に基づいて、エンジン８１の回転数（以下「エンジン回転数」という）ＮＥｂを算出する。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】０１８６
【補正方法】変更
【補正の内容】
【０１８６】
また、低圧ＥＧＲ制御弁開度ＬＰＶＴは、ＬＰＥＧＲ開度センサ３６によって検出され、その検出信号はＥＣＵ７２に出力される。ＥＣＵ７２は、低圧ＥＧＲガス流量の目標値である目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄを後述するようにして算出するとともに、算出された目標低圧ＥＧＲガス流量ＬＰＥＧＲ＿ｃｍｄに基づき、所定のマップ（図示せず）を検索することによって、低圧ＥＧＲ制御弁開度ＬＰＶＴの目標値を算出し、低圧ＥＧＲ制御弁開度ＬＰＶＴを算出された目標値になるように制御する。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】０１９０
【補正方法】変更
【補正の内容】
【０１９０】
また、高圧ＥＧＲ制御弁開度ＨＰＶＴは、ＨＰＥＧＲ開度センサ３７によって検出され、その検出信号はＥＣＵ７２に出力される。ＥＣＵ７２は、高圧ＥＧＲガス流量の目標値である目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄを後述するようにして算出するとともに、算出された目標高圧ＥＧＲガス流量ＨＰＥＧＲ＿ｃｍｄに基づき、所定のマップ（図示せず）を検索することによって、高圧ＥＧＲ制御弁開度ＨＰＶＴの目標値を算出し、高圧ＥＧＲ制御弁開度ＨＰＶＴを算出された目標値になるように制御する。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】０１９１
【補正方法】変更
【補正の内容】
【０１９１】
以上の構成により、この高圧ＥＧＲ装置９１では、高圧ＥＧＲガスは、排気マニホルド８８ａから高圧ＥＧＲ通路９１ａに流入し、図１６に矢印Ｘ２で示す向きに流れ、高圧ＥＧＲクーラ９１ｂおよび高圧ＥＧＲ制御弁９１ｃを通過した後、吸気マニホルド８３ａに流入する。そして、高圧ＥＧＲガスは、低圧ＥＧＲガスおよび新気とともに、吸気マニホルド８３ａを介して、各気筒８１ａに流入する。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】０２０８
【補正方法】変更
【補正の内容】
【０２０８】
より具体的には、図２０に示すように、第１干渉抑制値算出部１０５には、前述した高圧ＥＧＲガス流量偏差Ｄｈｐおよび暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄに加え、エンジン８１の運転状態を表す運転状態パラメータなどが、入力される。この運転状態パラメータには、エンジン回転数ＮＥｂ、要求トルクＴＲＥＱｂ、推定ＥＧＲ率ＥＧＲ＿ｅｓｔｂ、燃料噴射量ＴＯＵＴｂ、吸入空気量Ｇｃｙｌｂ、排気圧Ｐｅｘ、吸気圧ＰＢｂ、排気マニホルド圧Ｐｅｍｂ、吸気チャンバ圧Ｐｃｈ、低圧ＥＧＲガス流量ＬＰＥＧＲ、および高圧ＥＧＲガス流量ＨＰＥＧＲなどが含まれる。第１干渉抑制値算出部１０５にはさらに、目標低圧用スロットル弁開度の前回値ＬＰＴＨ＿ｃｍｄ（ｋ−１）、目標高圧用スロットル弁開度の前回値ＨＰＴＨ＿ｃｍｄ（ｋ−１）、第１干渉抑制値の前回値ＨＰＴＨ＿ｄｃ＿ｃｍｄ（ｋ−１）、および目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄが入力される。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】０２１６
【補正方法】変更
【補正の内容】
【０２１６】
さらに、図２１に示すように、第２干渉抑制値算出部１０６には、前述した低圧ＥＧＲガス流量偏差Ｄｌｐおよび暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄに加え、エンジン８１の運転状態を表す運転状態パラメータなどが、入力される。この運転状態パラメータには、第１干渉抑制値算出部１０５の場合と同様、エンジン回転数ＮＥｂ、要求トルクＴＲＥＱｂ、推定ＥＧＲ率ＥＧＲ＿ｅｓｔｂ、燃料噴射量ＴＯＵＴｂ、吸入空気量Ｇｃｙｌｂ、排気圧Ｐｅｘ、吸気圧ＰＢｂ、排気マニホルド圧Ｐｅｍｂ、吸気チャンバ圧Ｐｃｈ、低圧ＥＧＲガス流量ＬＰＥＧＲ、および高圧ＥＧＲガス流量ＨＰＥＧＲなどが含まれる。第２干渉抑制値算出部１０６にはさらに、目標高圧用スロットル弁開度の前回値ＨＰＴＨ＿ｃｍｄ（ｋ−１）、目標低圧用スロットル弁開度の前回値ＬＰＴＨ＿ｃｍｄ（ｋ−１）、第２干渉抑制値の前回値ＬＰＴＨ＿ｄｃ＿ｃｍｄ（ｋ−１）、および目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄが入力される。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】０２４９
【補正方法】変更
【補正の内容】
【０２４９】
上記ステップ１０４に続くステップ１０５では、目標高圧用スロットル弁開度の暫定値ＨＰＴＨ＿ｓｍｃ＿ｃｍｄを、前記ステップ８９で設定された学習用目標ＨＰＴＨ開度ＨＰＴＨ＿ｃｍｄＧに設定する。次いで、ステップ１０６において、第１干渉抑制値算出部１０５の説明で述べたようにして、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを算出する。すなわち、エンジン回転数ＮＥｂなどの運転状態パラメータや、前記ステップ９９で算出された高圧ＥＧＲガス流量偏差Ｄｈｐ、前記ステップ９５で設定された目標低圧用スロットル弁開度の暫定値ＬＰＴＨ＿ｓｍｃ＿ｃｍｄなどを入力とし、ニューラルネットワークを用いて、第１干渉抑制値ＨＰＴＨ＿ｄｃ＿ｃｍｄを算出する。
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】０２９２
【補正方法】変更
【補正の内容】
【０２９２】
また、以上の第２実施形態は、特許請求の範囲に記載された請求項１および３に係る発明（以下、総称して「第２発明」という）に対応しており、第２実施形態における各種の要素と、第２発明における各種の要素との対応関係は次のとおりである。すなわち、第２実施形態におけるＥＣＵ７２、第１および第２コントローラ１０３，１０４が、第２発明における制御入力算出手段に相当し、第２実施形態におけるＥＣＵ７２、第１および第２干渉抑制値算出部１０５，１０６が、第２発明における干渉抑制パラメータ算出手段に相当するとともに、第２実施形態におけるＥＣＵ７２、第１および第２加算器１０７，１０８が、第２発明における補正手段に相当する。