図面 (/)

この項目の情報は公開日時点(2020年10月22日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (15)

課題

車両において学習モデルの学習が行われる場合に、高性能のCPU等の必要性を低減しつつ、その学習処理高速化を図る。

解決手段

車載制御装置20において、エンジンECU21は、車両1における所定の機能を実行する制御部品2乃至12を制御する少なくとも1つの制御部と、学習モデルの学習を行う学習部と、を備える。制御部の少なくとも1つは、学習モデルに入力パラメータの値を入力することによって得られた出力パラメータの値に基づいて、制御部品2乃至12を制御し、学習が行われている場合には、制御部品2乃至12に所定の機能を実行させるために車載制御装置によって実行される演算処理負荷が学習が行われていない場合よりも低い学習時低負荷モードにより、制御部品2乃至12を制御する。

概要

背景

従来から、車両の運転中に取得した複数の入力パラメータ実測値及びこれらに対応する出力パラメータの実測値を学習データとして、機械学習による学習モデルの学習をその車両で行う学習装置が公知である(例えば、特許文献1参照)。

概要

車両において学習モデルの学習が行われる場合に、高性能のCPU等の必要性を低減しつつ、その学習処理高速化をる。車載制御装置20において、エンジンECU21は、車両1における所定の機能を実行する制御部品2乃至12を制御する少なくとも1つの制御部と、学習モデルの学習を行う学習部と、を備える。制御部の少なくとも1つは、学習モデルに入力パラメータの値を入力することによって得られた出力パラメータの値に基づいて、制御部品2乃至12を制御し、学習が行われている場合には、制御部品2乃至12に所定の機能を実行させるために車載制御装置によって実行される演算処理負荷が学習が行われていない場合よりも低い学習時低負荷モードにより、制御部品2乃至12を制御する。

目的

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

車載制御装置であって、車両における所定の機能を実行する制御部品を制御する少なくとも1つの制御部と、学習モデルの学習を行う学習部と、を備え、前記制御部の少なくとも1つは、前記学習モデルに入力パラメータの値を入力することによって得られた出力パラメータの値に基づいて、前記制御部品を制御し、前記制御部の少なくとも1つは、前記学習が行われている場合には、前記制御部品に前記所定の機能を実行させるために前記車載制御装置によって実行される演算処理負荷が前記学習が行われていない場合よりも低い学習時低負荷モードにより、前記制御部品を制御する、車載制御装置。

技術分野

0001

本開示は、車載制御装置に関する。

背景技術

0002

従来から、車両の運転中に取得した複数の入力パラメータ実測値及びこれらに対応する出力パラメータの実測値を学習データとして、機械学習による学習モデルの学習をその車両で行う学習装置が公知である(例えば、特許文献1参照)。

先行技術

0003

特開2012−014617号公報

発明が解決しようとする課題

0004

ところで、斯かる学習モデルの学習においては、その学習が完了するまでに膨大な演算処理が必要とされる。そのため、車両において斯かる学習が行われる場合、その演算処理を実行する車載電子制御ユニット(ECU)に高い処理負荷がかかる。

0005

ここで、斯かる学習時の高負荷演算を処理するために、高性能プロセッサ等を用いることが考えられるが、斯かる高性能のプロセッサ等を用いるとコストが増大する。一方で、コスト削減のために性能が不十分なプロセッサ等を用いると、その学習に要する演算処理量に対して処理能力不足し、学習が完了するまでに膨大な計算時間が費やされる。

0006

上記課題に鑑みて、本開示の目的は、車両において学習モデルの学習が行われる場合に、高性能のCPU等の必要性を低減しつつ、その学習のための演算処理の高速化を図ることにある。

課題を解決するための手段

0007

本開示の要旨は、以下の通りである。

0008

(1)車載制御装置であって、車両における所定の機能を実行する制御部品を制御する少なくとも1つの制御部と、学習モデルの学習を行う学習部と、を備え、前記制御部の少なくとも1つは、前記学習モデルに入力パラメータの値を入力することによって得られた出力パラメータの値に基づいて、前記制御部品を制御し、前記制御部の少なくとも1つは、前記学習が行われている場合には、前記制御部品に前記所定の機能を実行させるために前記車載制御装置によって実行される演算処理の負荷が前記学習が行われていない場合よりも低い学習時低負荷モードにより、前記制御部品を制御する、車載制御装置。

発明の効果

0009

本開示によれば、車両において学習モデルの学習が行われる場合に、高性能のCPU等の必要性を低減しつつ、その学習処理の高速化を図ることが可能となる。

図面の簡単な説明

0010

図1は、車載制御装置の概略的な構成図である。
図2は、各ECUの概略的な構成図である。
図3は、内燃機関の概略的な構成図である。
図4は、エンジンECUの処理部における機能ブロック図である。
図5は、ニューラルネットワークの一例を示す図である。
図6は、ニューラルネットワークの一例を示す図である。
図7は、車載制御装置における制御ルーチンを示すフローチャートである。
図8は、通常時処理における制御ルーチンを示すフローチャートである。
図9は、異常時処理における制御ルーチンを示すフローチャートである。
図10は、異常時運転モード及びデータ取得モードを説明するための図である。
図11は、学習時低負荷モードにおいて演算処理の負荷を低減させるための具体策を説明するための図である。
図12は、第二実施形態に係る異常時処理の制御ルーチンを示すフローチャートである。
図13は、本実施形態に係るECU選定処理の制御ルーチンを示すフローチャートである。
図14は、各ECUにおける学習用計算量について説明するための図である。

実施例

0011

以下、図面を参照して本開示の実施形態について詳細に説明する。なお、以下の説明では、同様な構成要素には同一の参照番号を付す。

0012

<第一実施形態>
≪車載制御装置の構成≫
図1は、車載制御装置の概略構成図である。図1には、車両1に搭載された車載制御装置20が示されている。図1に示されるように、車両1は、内燃機関2と、PCU3と、第1電動発電機4と、第2電動発電機5と、バッテリ6と、電動パワーステアリング装置7と、ブレーキアクチュエータ8と、カーナビゲーションシステム9と、ショックアブソーバ10と、エアーコンディショナ11と、ボデー系機器12と、車載制御装置20と、を備える。

0013

車載制御装置20は、エンジン電子制御ユニット(ECU)21、MG−ECU22、パワステECU23、ブレーキECU24、運転支援ECU25、カーナビECU26、アブソーバECU27、エアコンECU28及びボデー系ECU29を備える。各ECU21乃至29は、CAN(Controller Area Network)などの車内ネットワークを介して通信可能に接続されている。また、各ECU21乃至29は、それぞれ、車両1における所定の機能を実行する制御部品を制御する。

0014

具体的には、エンジンECU21は、内燃機関2を制御部品として制御する。内燃機関2は、燃料機関の内部で燃焼させて、燃焼ガス熱エネルギ機械的エネルギに変換するエネルギ変換機能を実行する。

0015

MG−ECU22は、PCU3を制御部品として制御する。PCU3は、第1電動発電機4、第2電動発電機5及びバッテリ6の制御や、第1電動発電機4及び第2電動発電機5とバッテリ6との間の電力変換を行う機能を実行する。第1電動発電機4及び第2電動発電機5は、PCU3に電気的に接続されるとともに、電動機としても発電機としても機能する。また、バッテリ6は、PCU3を介して充電を行い、またPCU3を介して第1電動発電機4及び第2電動発電機5へ電力供給を行う。なお、第1電動発電機4は電動機としては機能しない発電機であってもよく、第2電動発電機5は発電機としては機能しない電動機であってもよい。また、車両1には電動発電機が一つのみ設けられてもよい。

0016

パワステECU23は、電動パワーステアリング装置7を制御部品として制御する。電動パワーステアリング装置7は、ドライバー操舵補助する機能を実行する。

0017

ブレーキECU24は、ブレーキアクチュエータ8を制御部品として制御する。ブレーキアクチュエータ8は、その駆動により車両1に制動力を付与する機能を実行する。

0018

運転支援ECU25は、例えば、車線維持支援制御パーキングアシスト制御などの運転操作支援する運転支援制御を実行する。運転支援ECU25は、斯かる運転支援制御を実行するための操舵や制動等に関する要求を、例えばパワステECU23やブレーキECU24等に送信する。例えば、パワステECU23及びブレーキECU24は、運転支援ECU25からの要求に応じて、電動パワーステアリング装置7及びブレーキアクチュエータ8に車両1における操舵や制動を自動的に行わせる。従って、運転支援ECU25は、例えば、パワステECU23やブレーキECU24への要求を介して、電動パワーステアリング装置7やブレーキアクチュエータ8等を制御部品として制御する。

0019

カーナビECU26は、カーナビゲーションシステム9を制御部品として制御する。カーナビゲーションシステム9は、例えば、道路地図を表示し、経路案内を行うナビゲーション機能を実行する。

0020

アブソーバECU27は、ショックアブソーバ10を制御部品として、ショックアブソーバ10の減衰力を制御する。ショックアブソーバ10は、車体に生じている振動減衰する機能を実行する。

0021

エアコンECU28は、エアーコンディショナ11を制御部品として制御する。エアーコンディショナ11は、その設定温度に室内の温度を制御する空調制御機能を実行する。

0022

ボデー系ECU29は、例えば、座席用アクチュエータドアクローザ用アクチュエータ及びイモビライザ等のボデー系機器12を制御部品として制御する。ボデー系機器12は、例えば、シートポジション調整、ドア開閉イモビライザ照合等の機能を実行する。

0023

図2は、各ECUの概略構成図である。図2に示されるように、各ECU21乃至29は、デジタルコンピュータから構成され、双方向性バス31を介して相互に接続された記憶部32、CPU(マイクロプロセッサ)を備える処理部33、入力ポート34、出力ポート35、AD変換器36及び駆動回路37を備える。記憶部32は、揮発性メモリ(例えば、RAM)及び不揮発性メモリ(例えば、ROM)を備え、処理部33において実行されるプログラム等、各種のデータを記憶する。各ECU21乃至29の処理部33は、機能モジュールとして、各ECU21乃至29に対応する制御部品を制御する制御部を備える。

0024

各ECU21乃至29の入力ポート34は、ユーザ入力に関する信号を入力するための任意の入力デバイスに接続される。また、各ECU21乃至29の入力ポート34には、AD変換器36を介して対応する制御部品を制御するためのセンサ値が入力される。各ECU21乃至29の出力ポート35は、駆動回路37を介して、対応する制御部品を制御する各種アクチュエータに接続される。

0025

≪内燃機関の構成≫
図3は、車両1に搭載される内燃機関2の構成を概略的に示す図である。本実施形態では、内燃機関2は、火花点火式内燃機関であり、具体的にはガソリンを燃料とするガソリンエンジンである。

0026

内燃機関2は、シリンダブロック41及びシリンダヘッド42を含む機関本体40を備える。シリンダブロック41の内部には、複数の気筒が形成される。各気筒には、気筒の軸線方向に往復運動するピストン43が配置される。シリンダヘッド42とピストン43との間には、燃焼室44が形成される。

0027

シリンダヘッド42には、吸気ポート46及び排気ポート48が形成される。吸気ポート46及び排気ポート48は燃焼室44に接続される。内燃機関2は、シリンダヘッド42内に配置された吸気弁45及び排気弁47を更に備える。吸気弁45は吸気ポート46を開閉し、排気弁47は排気ポート48を開閉する。

0028

内燃機関2は、点火プラグ49及び燃料噴射弁50を更に備える。点火プラグ49は、シリンダヘッド42の内壁面の中央部に配置され、点火信号に応じて火花を発生させる。燃料噴射弁50は、シリンダヘッド42の内壁面周辺部に配置され、噴射信号に応じて燃料を燃焼室44内に噴射する。

0029

内燃機関2は、過給機であるターボチャージャ51を備える。ターボチャージャ51は、排気通路に配置されたタービン52と、吸気通路に配置されたコンプレッサ53と、タービン52とコンプレッサ53とを接続する軸とを含む。排気の流れによってタービン52が回転すると、コンプレッサ53も回転して吸入空気の圧力を高める。したがって、ターボチャージャ51は、排気ガスエネルギを用いて、吸入空気を圧縮して吸入空気量を増大させることができる。

0030

内燃機関2は、吸気枝管54、サージタンク55、吸気管56、スロットル弁57及び冷却器59を更に備える。各気筒の吸気ポート46はそれぞれ対応する吸気枝管54を介してサージタンク55に連結され、サージタンク55は吸気管56を介して冷却器59に連結される。吸気ポート46、吸気枝管54、サージタンク55、吸気管56等は、空気を燃焼室44に導く吸気通路を形成する。

0031

スロットル弁57は、サージタンク55と冷却器59との間の吸気管56内に配置され、スロットル弁駆動アクチュエータ58(例えばDCモータ)によって駆動される。スロットル弁57は、スロットル弁駆動アクチュエータ58によって回動せしめられることで、その開度に応じて吸気通路の開口面積を変更することができる。コンプレッサ53とスロットル弁57との間の吸気管56には、ターボチャージャ51によって圧縮された吸入空気を冷却する冷却器(インタークーラ)59が配置されている。また、コンプレッサ53の入口部は、吸気管56を介してエアクリーナ60に連結されている。

0032

内燃機関2は、排気マニホルド61、排気管62、排気浄化触媒63及びケーシング64を更に備える。各気筒の排気ポート48は、排気マニホルド61に連結される。排気マニホルド61は、各排気ポート48に連結される複数の枝部と、これら枝部が集合した集合部とを有する。排気マニホルド61の集合部は、ターボチャージャ51のタービン52の入口部に連結されている。タービン52の出口部は、排気管62を介して排気浄化触媒63を内蔵したケーシング64に連結されている。排気ポート48、排気マニホルド61、ケーシング64、排気管62等は、燃焼室44における混合気の燃焼によって生じた排気ガスを排出する排気通路を形成する。

0033

排気通路には、タービン52をバイパスする排気バイパス通路65が接続されている。排気バイパス通路65には、ウェストゲートバルブ66が設けられ、ウェストゲートバルブ66は、ウェストゲートアクチュエータ(図示せず)によって駆動され、排気バイパス通路65の通路断面積を連続的又は段階的に調節することができる。ウェストゲートバルブ66が開かれると、タービン52よりも上流側の排気通路を流れてきた排気の一部又は全部が排気バイパス通路65へと流入し、タービン52を迂回して外気へと排出される。そのため、ウェストゲートバルブ66の開度(以下「ウェストゲート開度」という。)を調節することで、タービン52に流入する排気の流量を調節し、タービン52の回転速度を制御することができる。すなわち、ウェストゲート開度を調節することで、コンプレッサ53によって圧縮される空気の圧力(過給圧)を制御することができる。

0034

≪内燃機関の制御装置の構成≫
内燃機関の制御装置70は、エンジンECU21及び各種センサを備える。エンジンECU21の入力ポート34及び出力ポート35は、内燃機関2の各種アクチュエータや各種センサ、PCU3、バッテリ6等に接続される。エンジンECU21には、内燃機関2の各種センサ、PCU3及びバッテリ6の出力信号が入力される。加えて、エンジンECU21は、内燃機関2の各種アクチュエータ、PCU3及びバッテリ6へ制御信号を出力する。

0035

本実施形態では、水温センサ71、エアフロメータ72、過給圧センサ73、空燃比センサ74、ウェストゲート開度センサ75、外気温センサ76、トルクセンサ77、バッテリセンサ78及び負荷センサ79の出力が、対応するAD変換器36を介して、入力ポート34に入力される。

0036

水温センサ71は、内燃機関2の冷却水路に配置され、機関本体40を冷却する冷却水の温度を検出する。エアフロメータ72は、吸気管56において排気ターボチャージャのコンプレッサ53とエアクリーナ60との間に配置され、吸気管56内を流れる空気の流量を検出する。過給圧センサ73は、吸気管56においてスロットル弁57の吸気流れ方向下流側に配置され、過給圧を検出する。空燃比センサ74は、排気マニホルド61の集合部に配置され、排気マニホルド61内を流れる排気ガス(すなわち、排気浄化触媒63に流入する排気ガス)の空燃比を検出する。ウェストゲート開度センサ75は、ウェストゲートバルブ66に配置され、ウェストゲート開度を検出する。外気温センサ76は、外気温を検出する。トルクセンサ77は、内燃機関2の出力トルク(以下、「トルク」という)を検出する。バッテリセンサ78は、バッテリ6の充電率(或いは、SOC:State of charge)等を検出する。

0037

負荷センサ79は、車両に設けられたアクセルペダル80に接続され、アクセルペダル80の踏み込み量に比例した出力電圧を発生し、この出力電圧を機関負荷として検出する。また、入力ポート34には、クランクシャフトが例えば10°回転する毎に出力パルスを発生するクランク角センサ81が接続され、この出力パルスが入力ポート34に入力される。エンジンECU21の処理部33では、このクランク角センサ81の出力パルスから機関回転速度が計算される。

0038

一方、エンジンECU21の出力ポート35は、対応する駆動回路37を介して、内燃機関2の運転を制御する各アクチュエータに接続される。図3に示される例では、出力ポート35は、点火プラグ49、燃料噴射弁50、スロットル弁駆動アクチュエータ58及びウェストゲートバルブ66に接続されている。エンジンECU21は、これらアクチュエータを制御する制御信号を出力ポート35から出力して、内燃機関2の運転を制御する。

0039

図4は、エンジンECU21の処理部33における機能ブロック図である。図4に示されるように、本実施形態では、エンジンECU21の処理部33は、機能モジュールとして、パラメータ値取得部91と、パラメータ値出力部92と、機関制御部93と、学習部94と、を備える。

0040

パラメータ値取得部91は、内燃機関2の運転状態を表す入力パラメータの値を取得する。例えば、パラメータ値取得部91は、エンジンECU21の入力ポート34を介して、上述した種々のセンサ出力値等を、内燃機関2の運転状態を表す入力パラメータの値として取得する。或いは、パラメータ値取得部91は、上記出力値等を正規化したものを入力パラメータの値として取得してもよい。

0041

パラメータ値出力部92は、各入力パラメータの値が入力されると、複数の入力層と、隠れ層と、出力層とを備えるニューラルネットワークを用いた学習モデルを用いて、例えば、内燃機関2を適切に制御するための出力パラメータの値を算出する。

0042

機関制御部93は、制御部品(すなわち、内燃機関2)を制御する制御部として機能し、内燃機関2に関する制御を実行する。特に、機関制御部93は、パラメータ値出力部92によって算出された出力パラメータの値に基づいて、内燃機関2に関する制御を実行する。また、機関制御部93は、後述するように、例えば学習部94において学習モデルの学習が行われている場合に学習時低負荷モードに変更する等、各ECU21乃至29が制御する各制御部品の制御モードを変更する。

0043

学習部94は、パラメータ値出力部92において出力パラメータの値を算出する際に用いられる学習モデル(例えばニューラルネットワーク)の学習を行う。

0044

≪ニューラルネットワークの概要
本実施形態では、学習モデルは、ニューラルネットワークを用いる。まず、図5を参照して、本実施形態に係る学習モデルにおいて用いられるニューラルネットワークについて説明する。図5は、ニューラルネットワークの一例を示す。図5における丸印は、人工ニューロンを表している。ニューラルネットワークにおいては、この人工ニューロンは、通常、ノード又はユニットと称される(以下、「ノード」という)。図5において、L=1は入力層、L=2およびL=3は隠れ層、L=4は出力層を各々示す。また、図5において、x1およびx2は入力層(L=1)のノード及びそのノードからの出力値を示し、yは出力層(L=4)の各ノード及びそのノードからの出力値を示す。同様に、隠れ層(L=2)のz1、z2およびz3は隠れ層(L=2)の各ノードからの出力値を示し、隠れ層(L=3)のz1およびz2は隠れ層(L=3)の各ノードからの出力値を示す。なお、隠れ層の層数は、1個又は任意の個数とすることができ、入力層のノードの数および隠れ層のノードの数も任意の個数とすることができる。

0045

入力層の各ノードでは、入力がそのまま出力される。一方、隠れ層(L=2)の各ノードには、入力層の各ノードの出力値x1およびx2が入力される。隠れ層(L=2)の各ノードでは、各々対応する重みwおよびバイアスbを用いて総入力値uが算出される。例えば、図7において隠れ層(L=2)のzk(k=1,2,3)で示されるノードにおいて算出される総入力値ukは、次式のようになる(Mは入力層のノードの数)。

0046

次いで、この総入力値ukは、活性化関数fにより変換され、隠れ層(L=2)のzkで示されるノードから、出力値zk(=f(uk))として出力される。一方、隠れ層(L=3)の各ノードには、隠れ層(L=2)の各ノードの出力値z1、z2およびz3が入力される。隠れ層(L=3)の各ノードでは、各々対応する重みwおよびバイアスbを用いて総入力値u(Σz・w+b)が算出される。この総入力値uは、同様に活性化関数fにより変換され、隠れ層(L=3)の各ノードから、出力値z1、z2として出力される。なお、本実施形態では、この活性化関数としてシグモイド関数σが用いられている。

0047

一方、出力層(L=4)のノードには、隠れ層(L=3)の各ノードの出力値z1およびz2が入力される。出力層のノードでは、各々対応する重みwおよびバイアスbを用いて総入力値u(Σz・w+b)が算出されるか、又は、各々対応する重みwのみを用いて総入力値u(Σz・w)が算出される。本実施形態では、出力層のノードでは活性化関数として恒等関数が用いられており、したがって、出力層のノードからは、出力層のノードにおいて算出された総入力値uが、そのまま出力値yとして出力される。

0048

≪学習モデルの具体例≫
次に、本実施形態におけるニューラルネットワークを用いた学習モデルの具体例について説明する。図6は、本実施形態においてパラメータ値出力部92によって用いられるニューラルネットワークの一例を示す図である。

0049

図6に示されるニューラルネットワークは、入力層(L=1)、二つの隠れ層(L=2、3)及び出力層(L=4)を有する。また、図6に示されるニューラルネットワークでは、入力層(L=1)は9個のノードを、出力層(L=4)は4個のノードを、隠れ層(L=2、3)はそれぞれ10個のノードを備えている。しかしながら、ニューラルネットワークは、3層以上の任意の層数であればいかなる層数を有していてもよい。また、各層のノードの数も任意の数とすることができる。

0050

本実施形態では、パラメータ値取得部91により取得された内燃機関2の運転状態を表す特定の入力パラメータの値が入力層(L=1)の各ノードに入力される。特に、入力層(L=1)の各ノードには入力層(L=1)の他のノードに入力される入力パラメータの値とは異なる1つの入力パラメータについての値が入力される。図6に示される例では、入力パラメータとして、具体的には、水温空気流量、空燃比、外気温、バッテリ充電率及びバッテリ入出力制限電力の実測値並びに過給圧、内燃機関2のトルク及び内燃機関2の回転速度の制御目標値が用いられている。

0051

加えて、本実施形態では、出力層(L=4)は4つのノードを有し、これら4つのノードからはそれぞれ1つの出力パラメータの値が出力される。図6に示される例では、出力パラメータとして、点火時期、内燃機関の吸気弁の開閉タイミング及び排気弁の開閉タイミング、並びにウェストゲート開度が用いられている。

0052

したがって、パラメータ値出力部92は、内燃機関2の運転中において、各入力パラメータの値が入力されると、ニューラルネットワークを用いた学習モデルを用いて、出力パラメータの値を算出する。具体的には、パラメータ値出力部92は、各入力パラメータの値をニューラルネットワークの入力層に入力すると共に、ニューラルネットワークの出力層から出力された出力パラメータの値を出力する。

0053

各入力パラメータの値は、パラメータ値取得部91によって取得される。具体的には、水温、空燃比、外気温及びバッテリ充電率は、水温センサ71、空燃比センサ74、外気温センサ76、及びバッテリセンサ78の出力値からそれぞれ取得される。空気流量は、エアフロメータ72等の出力値に基づいてエンジンECU21において算出される。過給圧は、負荷センサ79やクランク角センサ81等の出力値に基づいてエンジンECU21において制御目標値として算出される。内燃機関2のトルクは、負荷センサ79等の出力値に基づいてエンジンECU21において制御目標値として算出される。バッテリ入出力制限電力は、バッテリ6の充放電最大許容電力であり、バッテリセンサ78の出力値等に基づいてエンジンECU21において算出される。機関回転速度は、負荷センサ79等の出力値に基づいてエンジンECU21において制御目標値として算出される。パラメータ値取得部91は、このようにして算出された空気流量、過給圧、トルク、バッテリ入出力制限電力及び機関回転速度をエンジンECU21内から取得する。

0054

このようにしてパラメータ値取得部91によって取得された各入力パラメータの値はパラメータ値出力部92に入力され、その結果、出力パラメータである点火時期、内燃機関の吸気弁の開閉タイミング及び排気弁の開閉タイミング、並びにウェストゲート開度の値がパラメータ値出力部92から出力される。

0055

≪学習モデルを用いた制御及び学習モデルの学習の概要≫
上述したように、機関制御部93は、パラメータ値出力部92から出力された出力パラメータの値に基づいて、内燃機関2に関する制御を実行する。具体的には、例えば、機関制御部93は、パラメータ値出力部92から出力された点火時期に内燃機関2の点火プラグの点火を行うように点火プラグ等を制御する。また、機関制御部93は、パラメータ値出力部92から出力された内燃機関の吸気弁の開閉タイミング及び排気弁の開閉タイミングで内燃機関2の吸気弁及び排気弁の開閉を行うように内燃機関2の吸気弁及び排気弁等を制御する。また、機関制御部93は、パラメータ値出力部92から出力されたウェストゲート開度になるようにウェストゲートアクチュエータ等を制御する。

0056

ニューラルネットワークの学習(すなわち、重みwの値及びバイアスbの値の学習)は、ニューラルネットワークが各車両に搭載される前に事前に行われる。ニューラルネットワークの学習を行うにあたっては、入力パラメータの値とこの入力パラメータの値に対応した出力パラメータの値(正解データ)を含む訓練データセットが多数作成される。このようにして作成された訓練データセットを用いて、例えば周知の誤差逆伝搬法を用いてニューラルネットワーク内における重みw及びバイアスbの値を繰り返し更新することによって、ニューラルネットワーク内における各重みw及びバイアスbの値が学習される。このようにして事前に学習された重みw及びバイアスbの値を用いたニューラルネットワークが車両に搭載される。

0057

また、本実施形態では、ニューラルネットワークの学習は、ニューラルネットワークが各車両に搭載された後も、車載制御装置20の学習部94によって行われる。具体的には、車載制御装置20の学習部94は、運転中に取得した学習モデルの入力パラメータの値とこの入力パラメータの値に対応した出力パラメータの値(正解データ)とを含む多数の訓練データセットを用いて、ニューラルネットワークを用いた学習モデルの学習を行う。その結果、学習モデルから内燃機関2の性能にあわせてより適切な出力結果を得ることが可能となるため、内燃機関2をより適切に制御することが可能となる。なお、ニューラルネットワークの学習を行うにあたっては、入力パラメータとして過給圧、内燃機関2のトルク及び機関回転速度の制御目標値の代わりにこれらの実測値が用いられる。

0058

≪車載制御装置において学習モデルの学習を行う際の問題点≫
ところで、斯かる学習モデルの学習においては、その学習が完了するまでに膨大な演算処理が必要とされる。そのため、エンジンECU21が学習モデルの学習を行う場合、エンジンECU21に高い処理負荷がかかる。

0059

ここで、斯かる学習時の高負荷の演算を処理するために、エンジンECU21において高性能のプロセッサ等を用いることが考えられるが、斯かる高性能のプロセッサ等を用いるとコストが増大する。一方で、コスト削減のために性能が不十分なプロセッサ等を用いると、その学習に要する演算処理量に対して処理能力が不足し、学習が完了するまでに膨大な計算時間が費やされる。

0060

≪学習時低負荷モードによる制御部品の制御≫
そこで、本実施形態では、制御部は、学習部94において学習が行われている場合には、制御部品に所定の機能を実行させるために車載制御装置20によって実行される演算処理の負荷が学習が行われていない場合よりも低い学習時低負荷モードにより、制御部品を制御する。この結果、車両1において学習モデルの学習が行われる場合に、高性能のCPU等の必要性を低減しつつ、その学習のための演算処理の高速化を図ることが可能となる。以下、本実施形態について詳細に説明する。

0061

≪フローチャート≫
図7は、本実施形態に係る車載制御装置における制御ルーチンを示すフローチャートである。本制御ルーチンのフローは、エンジンECU21の処理部33が、エンジンECU21の記憶部32に記憶されているプログラムを実行することにより実現される。本制御ルーチンはエンジンECU21によって一定時間間隔毎に実行される。

0062

テップS1では、内燃機関2の異常が検出された否かが判定される。例えば、機関制御部93は、エンジンECU21の自己診断機能により内燃機関2の異常(例えばスロットル弁57の固着など)が検出されたか否かを判定する。ステップS1において異常が検出されていないと判定された場合には、本制御ルーチンはステップS2へと進む。一方で、ステップS1において異常が検出されたと判定された場合には、本制御ルーチンはステップS3へと進む。

0063

ステップS2では、通常時処理が実行される。この通常時処理については、図8を用いて後述する。その後、本制御ルーチンは終了する。

0064

ステップS3では、異常時処理が実行される。この異常時処理については、図9を用いて後述する。その後、本制御ルーチンは終了する。

0065

図8は、本実施形態に係る通常時処理の制御ルーチンを示すフローチャートである。本制御ルーチンのフローは、エンジンECU21の処理部33が、記憶部32に記憶されているプログラムを実行することにより実現される。

0066

ステップS11では、内燃機関2の制御モードが通常運転モードに設定される。ここで、通常運転モードとは、内燃機関2の通常時の運転の際に内燃機関2を制御する運転モードである。その後、本制御ルーチンはステップS12へと進む。

0067

ステップS12では、所定の学習開始条件が満たされたか否かが判定される。斯かる所定の学習開始条件としては、例えば、車両1のユーザから学習モデルの学習を行う旨のユーザ入力があった場合、前回の学習から所定期間経過した場合などが挙げられる。ステップS12において所定の学習開始条件が満たされていると判定された場合には、本制御ルーチンはステップS13へと進む。一方で、ステップS12において所定の学習開始条件が満たされていないと判定された場合には、本制御ルーチンは終了する。

0068

ステップS13では、多数の訓練データセットが取得される。具体的には、各入力パラメータの実測値及びこれら入力パラメータの実測値に対応する出力パラメータの正解データを含む訓練データセットが取得される。

0069

過給圧、トルク及び機関回転速度以外の入力パラメータの値の取得方法は、上述した通りである。訓練データ取得時における過給圧及び内燃機関2のトルクの実測値は、過給圧センサ73及びトルクセンサ77の出力値からそれぞれ取得される。また、訓練データ取得時における機関回転速度の実測値は、クランク角センサ81の出力値からエンジンECU21によって算出されることにより取得される。また、訓練データセットにおける出力パラメータの値の取得方法については、例えば、各入力パラメータの実測値が取得された時点(すなわち、その取得した各入力パラメータの実測値がパラメータ値出力部92に入力される前)においてパラメータ値出力部92からニューラルネットワークを用いて出力された点火時期、内燃機関の吸気弁の開閉タイミング及び排気弁の開閉タイミング、並びにウェストゲート開度の各値が訓練データ用の出力パラメータの値として取得される。訓練データセットの取得が完了すると、本制御ルーチンは、ステップS14へと進む。

0070

ステップS14では、学習モデルの学習が行われる。本実施形態では、学習部94は、例えば、ステップS13において運転中に取得した訓練データセットにおける各入力パラメータの実測値をニューラルネットワークに入力した際にパラメータ値出力部92から実際に出力される各出力パラメータの値と、訓練データセットにおいてその各入力パラメータの実測値に対応する各出力パラメータの値との誤差が小さくなるように、ニューラルネットワークの学習を行う。具体的には、学習部94は、例えば周知の誤差逆伝搬法を用いてニューラルネットワーク内における重みw及びバイアスbの値を繰り返し更新することにより、ニューラルネットワーク内における各重みw及びバイアスbの値を学習する。学習モデルの学習が完了した後、本制御ルーチンは、ステップS15へと進む。

0071

ステップS15では、学習モデルが更新される。この学習モデルの更新は、ニューラルネットワークにおける重みやバイアスの値を、ステップS13において学習されたニューラルネットワークの重みやバイアスの値で書き換えることにより行われる。その後、本制御ルーチンは終了して、図7に示される制御ルーチンに戻る。

0072

図9は、本実施形態に係る異常時処理の制御ルーチンを示すフローチャートである。本制御ルーチンのフローは、エンジンECU21の処理部33が、記憶部32に記憶されているプログラムを実行することにより実現される。

0073

ステップS21では、内燃機関2の制御モードが異常時運転モードに設定される。ここで、異常時運転モードとは、例えば機関回転速度やトルクの目標値等で設定される運転領域が通常運転モードよりも制限される運転モードである。このように運転領域が制限されることにより、内燃機関2の機能悪化が抑制される。例えば、図10(a)に示されるように、この異常時運転モードにおける異常時運転領域は、通常運転モードにおける通常運転領域よりも小さく、且つ低目標トルク及び低目標回転速度の運転領域である。また、後述するように、異常時運転領域は、学習モデルの更新毎にその大きさが変更される。

0074

なお、異常時運転領域は、検出された異常の種類毎に異なる領域であってもよいし、異常の種類に関わらず一定の領域であってもよい。また、エンジンECU21は、内燃機関2の制御モードが通常運転モードから異常時運転モードに設定される際に、警告灯点灯する等の所定の警告を行ってもよい。その後、本制御ルーチンはステップS22へと進む。

0075

ステップS22では、異常時運転モードにおいて車両1が走行可能であるか否かが判定される。例えば、機関制御部93は、異常時運転モードにおける車両1の運転中に機関回転速度やトルク等のデータを取得し、そのデータが運転可能な範囲内の値を示す場合には車両1が走行可能であると判定し、そのデータが運転可能な範囲外の値を示す場合には車両1が走行可能ではないと判定する。

0076

ステップS22において走行可能ではないと判定された場合には、本制御ルーチンは、ステップS23へと進む。ステップS23では、内燃機関2の運転が停止される。その後、本制御ルーチンは終了して、図7に示される制御ルーチンに戻る。その結果、学習モデルの学習は行われずに、図7に示される制御ルーチンも終了する。一方で、ステップS22において走行可能であると判定された場合には、本制御ルーチンはステップS24へと進む。

0077

ステップS24では、内燃機関2の制御モードがデータ取得モードに設定される。ここで、データ取得モードは、例えば、図10(b)に示されるように、その運転領域(以下、データ取得運転領域)が異常時運転領域よりも大きく且つ通常運転領域よりも小さく設定された制御モードである(図10(b)中のD1、D2又はD3)。データ取得モードの詳細については、後述する。

0078

なお、データ取得運転領域は、検出された異常の種類毎に異なる領域であってもよいし、異常の種類に関わらず一定の領域であってもよい。その後、本制御ルーチンは、ステップS25へと進む。

0079

ステップS25では、データ取得モードにおいて、多数の訓練データセットが取得される。ステップS25における訓練データセットの取得方法は、図8のステップS13において説明した取得方法と同様である。訓練データセットの取得が完了した後、本制御ルーチンは、ステップS26へと進む。

0080

ステップS26では、内燃機関2の制御モードが学習時低負荷モードに設定される。ここで、学習時低負荷モードとは、学習モデルの学習が行われる場合に、制御部品(本実施形態では、内燃機関2)に所定の機能を実行させるために車載制御装置20によって実行される演算処理の負荷が、学習が行われていない場合よりも低くなるように、制御部品を制御する制御モードである。

0081

ここで、エンジンECU21では、通常、例えば、点火プラグ49の点火や燃料噴射弁50の燃料噴射など、内燃機関2のクランク角に同期した定期的な演算処理が所定のクランク角になる毎に実行される。そのため、内燃機関2の回転速度が速くなると、これら演算処理の頻度が高くなるため、エンジンECU21における上記演算負荷も高くなる。一方で、内燃機関2の回転速度が遅いと、これら演算処理の頻度が低くなるため、エンジンECU21における上記演算処理の負荷も低くなる。

0082

学習時低負荷モードでは、例えば、機関回転速度を低減させるように内燃機関の動作条件を変更することにより、上記定期処理の頻度が低下される。その結果、学習モデルの学習が行われる前よりも、エンジンECU21における上記定期処理の負荷が低くなり、エンジンECU21において計算能力余剰が生じるため、この余剰を学習モデルの学習のための演算処理に充てることが可能となる。

0083

図11を用いて、学習時低負荷モードにおいて車載制御装置20における演算処理の負荷を低減させるための具体策を説明する。図11(a)は、学習時低負荷モード時及び異常時運転モード時変速線図の一例を示す。図11(a)に示される変速線図では、学習時低負荷モードのシフトアップ線実線で示され、異常時運転モードでのシフトアップ線が破線で示されている。なお、図11(a)中の各変速線上に記載された1→2、2→3及び3→4は、それぞれ、一段目から二段目、二段目から三段目及び三段目から四段目に、ギヤ段が変更されることを示している。

0084

車両1が有段変速機を用いる場合において、異常時運転モードから学習時低負荷モードに制御モードが変更された場合、機関制御部93は、例えば図11(a)に示されるように、有段変速機の制御に用いる変速線図のシフトアップ線を低車速側シフトするように変更する。その結果、シフトアップが変更前よりも早められるため、同じ車速及びアクセル開度である場合であっても、学習時低負荷モードでは異常時運転モードよりも上のシフト段を用いることが可能となる。そのため、学習時低負荷モードにおいては、異常時運転モードで内燃機関2が運転される場合よりも低い機関回転速度で内燃機関2が運転される。その結果、エンジンECU21における演算処理の負荷が低減される。

0085

また、図11(b)は、学習時低負荷モード時及び異常時運転モード時の内燃機関の動作線の一例を示す。図11(b)に示される例では、学習時低負荷モードの動作線が実線で示され、異常時運転モードでの動作線が破線で示されている。

0086

異常時運転モードから学習時低負荷モードに制御モードが変更された場合、機関制御部93は、例えば図11(b)に示されるように、内燃機関2の動作線を低回転速度側にシフトするように変更する。その結果、同じトルク要求がなされた場合であっても、学習時低負荷モードでは異常時運転モードよりも低い機関回転速度でそのトルク要求に対応するトルクが内燃機関2から出力されるようになる。その結果、エンジンECU21における演算処理の負荷が低減される。

0087

また、図11(c)は、学習時低負荷モード時及び異常時運転モード時の車両1の走行モードの切替線図の一例を示す。図11(c)には、車両1がEV(Electric Vehicle)モードで走行するEV走行領域と車両1がHV(Hybrid Vehicle)モードで走行するHV走行領域との間の切替線が示されている。ここで、EVモードでは、車両1は基本的に内燃機関2が停止した状態で第2電動発電機5の動力で走行し、HVモードでは、車両1は基本的に内燃機関2及び第2電動発電機5の動力で走行する。図11(c)に示される例では、学習時低負荷モードにおける切替線が実線で示され、異常時運転モードでの切替線が破線で示されている。

0088

異常時運転モードから学習時低負荷モードに制御モードが変更された場合、機関制御部93は、例えば図11(c)に示されるように、EV走行領域とHV走行領域との間の切替線を高トルク且つ高車速側にシフトするように変更する。その結果、学習時低負荷モードでは異常時運転モードよりも車両1においてEVモードが継続されやすくなり、EVモードの間、内燃機関2の運転が停止される。その結果、エンジンECU21における演算処理の負荷が低減される。

0089

なお、本実施形態では、ステップS26では、内燃機関2の制御モードが学習時低負荷モードに設定される。しかしながら、ステップS26において、内燃機関2以外の制御部品、すなわち各ECU21乃至29の各制御部品の制御モードが学習用低負荷モードに設定されてもよい。

0090

斯かる制御部品の一つの例として、PCU3が挙げられる。この場合、例えば、PCU3は、学習時低負荷モードにおいて、主に電動機として利用される第2電動発電機5をシャットダウンする。その結果、第2電動発電機5を制御するために要する演算処理量が低減され、PCU3を制御するMG−ECU22において計算能力の余剰が生じるため、この余剰を学習モデルの学習のための演算処理に充てることが可能となる。

0091

また、上記制御部品の別の例として、運転支援ECU25、カーナビECU26、アブソーバECU27、エアコンECU28やボデー系ECU29などの、車両1の走行中においてその制御部品の機能が停止している状態であっても車両1の安全性に大きな影響を及ぼさないようなECUの制御部品が挙げられる。この場合、例えば、そのECUの制御部品の機能が停止され得る。この場合、斯かるECUでは、その制御部品の機能を停止させた分だけ計算能力に余剰が生じるため、この余剰を学習モデルの学習のための演算処理に充てることが可能となる。

0092

その後、本制御ルーチンは、ステップS27へと進む。

0093

ステップS27では、学習モデルの学習が行われる。ステップS27における学習モデルの学習方法は、図8のステップS14において説明した学習方法と同様である。ここで、この学習は、学習時低負荷モードにおいて行われる。そのため、学習時低負荷モードで制御が行われていない場合よりも、エンジンECU21によって実行される演算処理の負荷が低くなるため、その結果としてエンジンECU21において計算能力に余剰が生じる。車載制御装置20では、その計算能力の余剰分が学習モデルの学習に充てられる。学習モデルの学習が完了した後、本制御ルーチンは、ステップS28へと進む。

0094

ステップS28では、学習モデルが更新されるとともに、内燃機関の制御モードが異常時運転モードに設定され、また、異常時運転領域における運転領域の大きさが変更される。この異常時運転領域の変更については、後述する。この学習モデルの更新は、ニューラルネットワークにおける重みやバイアスの値を、ステップS27において学習されたニューラルネットワークの重みやバイアスの値で書き換えることにより行われる。その後、本制御ルーチンはステップS29へと進む。

0095

ステップS29では、異常時運転モードにおいて、更新後の学習モデル及び変更後の異常時運転領域を用いて、車両1が走行可能であるか否かが判定される。例えば、機関制御部93は、変更後の異常時運転領域において、更新後の学習モデルから出力された出力パラメータの値に基づいて内燃機関2を制御し、その運転中にデータを取得する。そして、機関制御部93は、ステップS22と同様に、機関回転速度やトルク等のデータが運転可能な範囲内の値を示す場合には車両1が走行可能であると判定し、運転可能な範囲外の値を示す場合には車両1が走行可能ではないと判定する。

0096

ステップS29において走行可能ではないと判定された場合には、本制御ルーチンはステップS30へと進む。一方で、ステップS29において走行可能であると判定された場合には、ステップS31へと進む。

0097

ステップS30では、学習モデルがステップS28において更新される直前の学習モデルに変更されるとともに、異常時運転領域がステップS28において変更される直前の異常時運転領域に変更される。この異常時運転領域の変更については、後述する。この学習モデルの変更は、ニューラルネットワークにおける重みやバイアスの値を、ステップS27における学習が行われる直前のニューラルネットワークの重みやバイアスの値で書き換えることにより行われる。その後、本制御ルーチンは終了して、図7に示される制御ルーチンに戻る。その結果、異常時運転モードでは、ステップS28において更新される直前の学習モデル及び変更される直前の異常時運転領域が内燃機関2の制御に用いられることになる。

0098

ステップS31では、データ取得運転領域が最大の運転領域であるか否かが判定される。ステップS31の詳細については、後述する。ステップS31においてデータ取得運転領域が最大の運転領域ではないと判定された場合には、本制御ルーチンはステップS32へと進む。

0099

ステップS32では、運転領域を拡張するようにデータ取得運転領域が変更される。ステップS32の詳細については、後述する。その後、本制御ルーチンは、ステップS24へと戻り、内燃機関2の制御モードがデータ取得モードに設定され、ステップS32において変更されたデータ取得運転領域により訓練データセットが取得される。

0100

一方、ステップS31においてデータ取得運転領域が最大の運転領域であると判定された場合には、本制御ルーチンは終了して、図7に示される制御ルーチンに戻る。その結果、異常時運転モードでは、最後に更新された学習モデルが内燃機関2の制御に用いられることになる。そして、異常時運転モードでは、ステップS28において変更された異常時運転領域により、内燃機関2が制御される。

0101

以下、図9におけるステップS24乃至S32の処理をより具体的に説明する。まず、データ取得モードについて説明する。データ取得モードでは、図10(b)に示されるように、例えば目標機関回転速度及び目標トルクについてそれぞれ異なる範囲を有する第一乃至第三データ取得運転領域D1乃至D3(以下、これらデータ取得運転領域D1乃至D3をそれぞれ「D1」、「D2」及び「D3」という)が設けられている。具体的には、図10(b)に示されるように、ステップS21時における異常時運転領域、D1、D2、D3の順で、その運転領域の上限値が大きくなるように各運転領域が定められている。また、D1は異常時運転領域を含み、D2は異常時運転領域及びD1を含み、D3は異常時運転領域、D1及びD2を含む。ここで、本実施形態では、3つのD1乃至D3が設けられているが、これに限定されず、2つ以上のデータ取得運転領域が設けられていればよい。

0102

データ取得モードでは、目標機関回転速度及び目標トルクで設定されるデータ取得運転領域内の各動作点について、その動作点での機関回転速度及びトルクの実測値を含む入力パラメータの各実測値と、入力パラメータの各実測値を取得した時点においてパラメータ値出力部92からニューラルネットワークを用いて出力された出力パラメータの各値とが、訓練データセットとして取得される。

0103

以下、ステップS22で走行可能と判定された後、ステップS23の初回の実行時からの各処理の流れを説明する。ステップS24におけるデータ取得モードへの初回の設定時には、例えば、D1乃至D3のうち最も運転領域が小さいD1が設定される。このD1を用いてステップS25において訓練データセットが取得され、この取得した訓練データセットを用いてステップS27において学習モデルの学習が行われる。

0104

その後、上述したように、ステップS28において、学習モデルの更新及び異常時運転モードへの設定が行われるとともに、異常時運転領域の大きさが変更される。特に、異常時運転領域は、その運転領域の上限値が大きくなるように変更される。具体的には、異常時運転領域は、ステップS24においてデータ取得の際に用いられたD1と同じ範囲の運転領域となるように拡張される。その後、ステップS29において、上述したように更新後の学習モデル及び拡張後の異常時運転領域を用いて車両1が走行可能であるか否かが判定される。

0105

ステップS29で走行可能ではないと判定された場合、上述したように、ステップS30において、学習モデル及び異常時運転領域がステップS28の直前の学習モデル及び異常時運転領域にそれぞれ変更される。特に、ステップS30での異常時運転領域の変更については、異常時運転領域は、D1に変更される直前の運転領域であるステップS21時における異常時運転領域となるように変更される。その後、本制御ルーチンは終了する。

0106

また、ステップS29で走行可能であると判定された場合には、上述したように、ステップS31において、データ取得運転領域が最大の運転領域であるか否かが判定される。具体的には、その学習において訓練データセットを取得する際に用いられたデータ取得運転領域よりも大きいデータ取得運転領域がない場合にはデータ取得運転領域が最大の運転領域であると判定され、斯かるデータ取得運転領域がある場合にはデータ取得運転領域が最大の運転領域ではないと判定される。データ取得モードではD1よりも運転領域が大きいD2乃至D3が設けられているため、ステップS31では、現在のデータ取得運転領域が最大の運転領域ではないと判定される。

0107

ステップS31で最大の運転領域ではないと判定された場合、上述したように、ステップS32において、運転領域を拡張するようにデータ取得運転領域が変更される。ステップS32では、その後に実行されるステップS24において用いられるデータ取得運転領域が、現在設定されているデータ取得運転領域の次に運転領域が大きいデータ取得運転領域に変更される。具体的には、ステップS32では、二回目のステップS24で用いられるデータ取得運転領域が、D1からその次に大きいD2となるように変更される。このように、ステップS32では、データ取得運転領域が段階的に大きくなるように、データ取得運転領域が変更される。

0108

その後、本制御ルーチンは、ステップS24に戻る。そして、二回目のステップS24ではデータ取得運転領域D2が設定され、その後、ステップS25乃至S27において、データ取得運転領域D2を用いて上記と同様の処理が実行される。二回目のステップS28では、異常時運転領域が、二回目のステップS24においてデータ取得の際に用いられたD2と同じ範囲の運転領域となるように変更される。その後、ステップS29で走行可能であると判定された場合、データ取得モードではD2よりも運転領域が大きいD3が設けられているため、ステップS31では、現在のデータ取得運転領域が最大の運転領域ではないと判定される。その後、ステップS32では、三回目のステップS24で用いられるデータ取得運転領域が、D2からその次に大きいD3となるように変更される。

0109

三回目のステップS24ではデータ取得運転領域D3が設定され、その後、ステップS25乃至S28において上記と同様の処理が実行され、ステップS29で走行可能であると判定された場合、ステップS31が実行される。ここで、データ取得モードでは、D3よりも運転領域が大きいデータ取得運転領域はないため、ステップS31では、現在のデータ取得運転領域が最大の運転領域であると判定される。その後、本制御ルーチンは終了する。

0110

このように、本実施形態では、ステップS30で走行可能ではないと判定されるか、又はステップS31で最大の運転領域であると判定されるまで、データ取得運転領域及び異常時運転領域を徐々に拡張しながら、学習モデルの学習及び更新が繰り返される。その結果、ステップS28で最後に更新されたときの学習モデル又はステップS30で変更後の学習モデルが、その異常時運転領域において内燃機関2を最も適切に制御し得る学習モデルとして、内燃機関2の制御に用いられることになる。そのため、内燃機関2の異常時において、内燃機関2が適切に動作しないような運転領域で運転されることが抑制され得る。その結果、適切ではない運転領域での内燃機関2の運転により、例えば回転速度が上がりすぎてしまい、内燃機関2に更なる異常が生じてしまうなどの事態が生じることが抑制され得る。

0111

<第二実施形態>
次に、第二実施形態に係る車載制御装置について説明する。第二実施形態に係る車載制御装置の構成は、基本的に第一実施形態に係る車載制御装置の構成と同様である。以下では、第一実施形態に係る車載制御装置の構成と異なる部分を中心に説明する。

0112

上記第一実施形態では、エンジンECU21のみが学習モデルの学習のための演算処理を実行している。しかし、エンジンECU21において計算能力に十分な余剰がない場合には、その演算処理が低速化する場合がある。訓練データセットを分割して全てのECU21乃至29で分散して学習を行うことも考えられるが、この場合、全てのECU21乃至29に分割された訓練データセットを通信する必要がある。全てのECU21乃至29のうち計算能力に十分な余剰がないECUにまで斯かる分割された訓練データセットを通信する場合、分割された訓練データセットがCANなどの車内ネットワークを経由して通信される関係で、その通信時間により学習が却って遅延する場合がある。また、その訓練データセットの通信後も、計算能力に十分な余剰がないECUでは十分な処理速度で学習のための演算処理が実行されない場合がある。

0113

これに対して、本実施形態では、車載制御装置20が搭載している各ECU21乃至29のうち、計算能力に十分な余剰を有するECUを用いて学習が実行される。そのため、計算能力に十分な余剰がないECUがある場合であっても、十分な処理速度により学習モデルの学習が行われ得る。

0114

図12は、第二実施形態に係る異常時処理の制御ルーチンを示すフローチャートである。なお、図12のステップS41乃至S45及びS48乃至S52は、それぞれ図9のステップS21乃至S25及びS28乃至S32とそれぞれ同様であるため、説明を省略する。

0115

ステップS46では、学習用の演算処理を実行するECUが選定される。ステップS35におけるECU選定処理については、図13を用いて後述する。

0116

ステップS47では、学習モデルの学習が行われる点では図9のステップS27と同様であるが、ステップS46で選定されたECUによって、その学習モデルの学習のための演算処理が実行される。

0117

図13は、本実施形態に係るECU選定処理の制御ルーチンを示すフローチャートである。本制御ルーチンのフローは、エンジンECU21の処理部33が、記憶部32に記憶されているプログラムを実行することにより実現される。

0118

ステップS61では、内燃機関2の制御モードが、異常時運転モードに設定される。その後、本制御ルーチンはステップS62へと進む。

0119

ステップS62では、各ECU21乃至29が学習モデルの学習に充てることができる計算量を示す学習用計算量と、学習モデルの学習で要求される計算量を示す要求計算量と、学習モデルの学習を完了させるのに要求される期間の上限を示す要求計算期間と、が取得される。

0120

まず、図14を用いて、各ECUにおける学習用計算量について説明する。図14には、車載制御装置においてECUA乃至ECUEが用いられる場合を例として、各ECUA乃至ECUEにおける学習用計算量が示されている。図14に示されるように、各ECUA乃至ECUEにおける学習用計算量は、例えば、ECUにおける単位時間当たりの計算量(傾き)と、その単位時間当たりの計算量の継続時間(継続する見込みの時間)と、から求められる。

0121

例えば、エンジンECU21は、バッテリ充電率が所定の値よりも大きい場合には、バッテリ充電率に応じて、第2電動発電機5を電動機として駆動することにより内燃機関2を停止させた状態を継続できる時間を算出する。そして、エンジンECU21は、その停止状態における単位時間当たりの計算量と、算出した停止状態の継続時間と、に基づいて、学習用計算量を算出することにより、エンジンECU21自身の学習用計算量を取得する。また、エンジンECU21は、エンジンECU21以外の各ECU22乃至29に学習用計算量についての回答を要求し、各ECU22乃至29により各々の学習用計算量が計算されて各ECU22乃至29からその回答を受けることにより、各ECU22乃至29の学習用計算量を取得する。

0122

次に、要求計算量及び要求計算期間について説明する。要求計算量は、例えば、図7のステップS1で検出された異常の種類や学習部94における学習モデルの学習条件(例えば、取得する訓練データ量やエポック数等についての設定情報など)に応じて決定される。また、要求計算期間は、例えば、内燃機関2の異常の種類毎に予め設定されており、図7のステップS1で検出された異常の種類に応じて決定される。例えば、内燃機関2の安全性に関わるような緊急度が高い異常の場合には要求計算期間が比較的短く設定され、車両1の乗り心地などに関わるような緊急度が低い異常の場合には要求計算期間が比較的長く設定される。

0123

次に、ステップS63では、各ECU21乃至29についての学習用計算量に基づいて、要求計算期間内に要求計算量を処理可能なECUがあるか否かが判定される。ここで、図14に示される例を用いて説明すると、ECUC及びECUEについての学習用計算量は要求計算期間内において要求計算量よりも少ないが、ECUA、ECUB及びECUDについての学習用計算量は要求計算期間内において要求計算量よりも多い。従って、この場合、ECUA、ECUB及びECUDが要求計算期間内に要求計算量を処理することができるため、ステップS63では、要求計算期間内に要求計算量を処理可能なECUがあると判定される。一方で、全てのECUが、ECUC及びECUEのように要求計算期間内に要求計算量を処理することができないものである場合には、ステップS63では、要求計算期間内に要求計算量を処理可能なECUがないと判定される。

0124

ステップS64において処理可能なECUがあると判定された場合には、本制御ルーチンはステップS67へと進む。一方、ステップS63において処理可能なECUがないと判定された場合には、本制御ルーチンはステップS64へと進む。

0125

ステップS64では、各制御部品の制御モードが学習時低負荷モードに設定される。その結果、各制御部品が低負荷で動作されるようになるため、各ECU21乃至29について計算能力に余剰が生じる。その後、本制御ルーチンはステップS65へと進む。

0126

ステップS65では、学習時低負荷モードにおける各ECU21乃至29についての学習用計算量が取得される。ステップS65における学習用計算量の取得方法は、ステップS62で上述した取得方法と同様である。その後、本制御ルーチンはステップS66へと進む。

0127

ステップS66では、学習時低負荷モードにおける各ECU21乃至29の学習用計算量に基づいて、要求計算期間内に要求計算量を処理可能なECUがあるか否かが判定される。ステップS66における判定方法は、ステップS63で上述した判定方法と同様である。ステップS66において処理可能なECUがあると判定された場合には、本制御ルーチンはステップS67へと進む。

0128

ステップS67では、要求計算期間内に要求計算量を処理可能なECUが、学習モデルの学習のための演算処理を行うECUとして選定される。ここで、要求計算期間内に要求計算量を処理可能なECUが複数ある場合には、それらECUがそれぞれ選定される。

0129

一方、ステップS66において処理可能なECUがないと判定された場合には、本制御ルーチンはステップS68へと進む。ステップS68では、要求計算期間内に要求計算量を処理することができるように、複数のECUが学習モデルの学習のための演算処理を行うECUとして選定される。具体的には、例えば、要求計算期間内での各ECUにおける学習用計算量の合計が要求計算量よりも大きくなるように、学習用計算量が大きい順で複数のECUが選定される。その後、本制御ルーチンはステップS69へと進む。

0130

ステップS69では、訓練データセットが分割される。ステップS69では、例えば、ステップS68において選定されたECUの数がその分割数とされ得る。

0131

各ステップS67及びS69の後、本制御ルーチンはステップS70へと進む。

0132

ステップS70では、選定されたECUが、訓練データセットを取得する。例えば、ステップS67において選定されたECUがエンジンECU21である場合、エンジンECU21は、エンジンECU21の記憶部32から訓練データセットを取り出す。また、ステップS67においてエンジンECU21以外のECUを含む複数のECUが選定された場合、エンジンECU21は、その選定された各ECUに訓練データセットを送信する。このようにステップS67において複数のECUが選択された場合には、その後の図12のステップS47において、例えば、その選定された各ECUにより個別に学習させるいわゆるアンサンブル学習が行われる。

0133

一方、ステップS68において選定された複数のECUに対しては、エンジンECU21は、ステップS69において分割された各訓練データセットを、その選定された各ECUに訓練データセットを送信する。この場合には、その後の図12のステップS47において、例えば、複数のECUにより一つの訓練データセットの分散計算が行われる。その後、本制御ルーチンは終了して、図12に示される制御ルーチンに戻る。

0134

以上、本開示の実施形態について説明したが、上記実施形態は、本開示の適用例の一部を示したに過ぎず、本開示の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。

0135

上記実施形態では、ニューラルネットワークを用いたモデルに入力パラメータを入力することによって得られた出力パラメータに基づいて制御される制御部品として、内燃機関2を例に挙げて説明したが、斯かる制御部品は内燃機関2に限られない。例えば、ハイブリッド車両であれば内燃機関2及び電動機の一方又は両方を、電気自動車であれば電動機を、ニューラルネットワークを用いた学習モデルに入力パラメータを入力することによって得られた出力パラメータに基づいて制御するようにしてもよい。

0136

また、上記第二実施形態では、ステップS66において要求計算期間内に要求計算量を処理可能なECUがあるか否かを判定することによりECUが選定されたが、ステップS65において取得される学習時低負荷モードにおける各ECU21乃至29の学習用計算量が予め把握されている場合には、ステップS66における判定は行われなくてもよい。この場合、学習用計算量が比較的多い所定のECUが学習のための演算処理を実行するECUとして選定される。

0137

或いは、所定のECUについては、ユーザが学習用の演算処理を行うECUとして選定してもよい。斯かるECUとしては、例えば、運転支援ECU25、カーナビECU26、アブソーバECU27、エアコンECU28やボデー系ECU29などの、車両1の走行中においてその制御部品の機能が停止している状態であっても車両1の安全性に大きな影響を及ぼさないようなECUが挙げられる。斯かる選定されるECUは、例えば、例えば、車載ディスプレイに表示されたインターフェース画面や、車載音声インターフェースステムとの音声のやり取りにより、選択され得る。斯かる選定されるECUは、予め選択されていてもよいし、学習モデルの学習が行われる直前に選択されてもよい。

0138

1 車両
2内燃機関
20車載制御装置
21エンジンECU
33 処理部
91パラメータ値取得部
92 パラメータ値出力部
93機関制御部
94 学習部

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • 山内和博の「 自動運転車」が 公開されました。( 2021/07/08)

    【課題】交差点にある横断歩道等の停止線に停止した際に、交通渋滞を生じさせることなく、安全かつ迅速に走行することができる自動運転車を提供する。【解決手段】探索された走行経路に沿って自動運転を行う自動運転... 詳細

  • ジヤトコ株式会社の「 自動変速機の制御装置」が 公開されました。( 2021/07/08)

    【課題・解決手段】複数の変速段を有する変速機ユニット(4)と変速機コントロールモジュール(8)を備え、変速機コントロールモジュール(8)は、故障診断部(8a)と、フェイルセーフ制御部(8b)と、油温上... 詳細

  • ソニー株式会社の「 情報処理装置、情報処理方法、プログラム及びIoTデバイス」が 公開されました。( 2021/07/08)

    【課題・解決手段】IoTデバイスの性能の差異や変動を考慮してIoTシステムのパフォーマンスを向上させる。IoT(Internet of Things)デバイスと通信可能な通信部と制御部を具備する情報処... 詳細

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ