JP2021066417A - 車両用制御装置、車両用制御システム、および車両用学習装置 - Google Patents
車両用制御装置、車両用制御システム、および車両用学習装置 Download PDFInfo
- Publication number
- JP2021066417A JP2021066417A JP2020055799A JP2020055799A JP2021066417A JP 2021066417 A JP2021066417 A JP 2021066417A JP 2020055799 A JP2020055799 A JP 2020055799A JP 2020055799 A JP2020055799 A JP 2020055799A JP 2021066417 A JP2021066417 A JP 2021066417A
- Authority
- JP
- Japan
- Prior art keywords
- data
- vehicle
- post
- treatment
- cpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】車両の状態と行動変数との関係の設定に際して、熟練者に要求される工数を削減できるようにした車両用制御装置を提供する。【解決手段】CPU72は、1つのエピソードが終了するまで、関係規定データDRおよびアクセル操作量PAの時系列データに基づき、スロットル開口度指令値および点火時期の遅角量を設定し、それらに応じてスロットルバルブや点火装置を操作し、その際のトルク、トルク指令値および加速度を取得する。CPU72は、エピソードが終了する場合、トルクや加速度が基準を満たすか否かに応じて報酬を与えることによって関係規定データDRを更新する。CPUは、車両内の部品の機能回復処置がなされる場合、スロットル開口度指令値や点火時期の設定のための関係規定データDRを、初期データDR0に切り替える。【選択図】図1
Description
本発明は、車両用制御装置、車両用制御システム、および車両用学習装置に関する。
たとえば下記特許文献1には、アクセルペダルの操作量をフィルタ処理した値に基づき、車両に搭載される内燃機関の操作部としてのスロットルバルブを操作する制御装置が記載されている。
ところで、上記フィルタは、アクセルペダルの操作量に応じて車両に搭載される内燃機関のスロットルバルブの操作量を適切な操作量に設定するものである必要があることから、その適合には熟練者が多くの工数をかける必要が生じる。このように、従来は、車両の状態に応じた車両内の電子機器の操作量等の適合には、熟練者が多くの工数をかけていた。
以下、上記課題を解決するための手段およびその作用効果について記載する。
1.実行装置および記憶装置を備え、前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、前記実行装置は、前記車両の状態を検出するセンサの検出値を取得する取得処理と、前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、前記取得処理によって取得された前記検出値に基づき、前記車両の特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、前記車両内の部品のうち前記操作処理による操作によって生じる前記車両の状態に影響を及ぼす部品の機能回復処置がなされたことを検知する検知処理と、前記検知処理によって機能回復処置がなされたことが検知される場合、前記操作処理に利用する前記関係規定データを、処置後用データに切り替える切替処理と、を実行し、前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、前記切替処理は、前記処置後用データとして、前記車両の走行に伴う前記更新処理が実行される前の前記関係規定データである初期データを用いる処理を含む車両用制御装置である。
1.実行装置および記憶装置を備え、前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、前記実行装置は、前記車両の状態を検出するセンサの検出値を取得する取得処理と、前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、前記取得処理によって取得された前記検出値に基づき、前記車両の特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、前記車両内の部品のうち前記操作処理による操作によって生じる前記車両の状態に影響を及ぼす部品の機能回復処置がなされたことを検知する検知処理と、前記検知処理によって機能回復処置がなされたことが検知される場合、前記操作処理に利用する前記関係規定データを、処置後用データに切り替える切替処理と、を実行し、前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、前記切替処理は、前記処置後用データとして、前記車両の走行に伴う前記更新処理が実行される前の前記関係規定データである初期データを用いる処理を含む車両用制御装置である。
上記構成では、電子機器の操作に伴う報酬を算出することによって、当該操作によってどのような報酬が得られるかを把握することができる。そして、報酬に基づき、強化学習に従った更新写像によって関係規定データを更新することにより、車両の状態と行動変数との関係を車両の走行において適切な関係に設定することができる。したがって、車両の状態と行動変数との関係を車両の走行において適切な関係に設定する際、熟練者に要求される工数を削減できる。
ところで、車両内の部品が劣化する場合等には、強化学習によって、関係規定データが劣化した部品を用いたときに適切なデータへと更新される。そのため、その後、機能回復処置がなされる場合、関係規定データは、期待収益を大きくする上で適切なデータではなくなるおそれがある。そこで上記構成では、機能回復処置がなされる場合、切替処理によって、操作処理に利用する関係規定データを初期データに切り替えることにより、機能回復処置がなされることによる期待収益の低下を抑制することが可能となる。
2.前記実行装置は、前記更新処理による更新がなされる前記関係規定データとは別に、所定の条件が成立するまでは前記更新処理による更新がなされて且つ前記所定の条件が成立した後には前記更新処理による更新を回避した前記関係規定データを前記記憶装置に記憶させた状態とする過去データ維持処理を実行し、前記切替処理は、前記処置後用データを、前記過去データ維持処理によって前記所定の条件が成立する前に限って前記更新処理による更新がなされた前記関係規定データとするか前記初期データとするかを選択する処理を含む上記1記載の車両用制御装置である。
車両の走行に伴って更新処理によって更新がなされた関係規定データであって且つ、機能回復処理が必要となる程度に部品が劣化する以前に更新がなされなくなったデータは、車両の走行が開始される前の初期データと比較して、機能回復処理後において車両の状態に応じたより適切な行動変数の値を指定する可能性が高い。そこで、上記構成では、過去データ維持処理によって所定の条件が成立するまでに限って更新された関係規定データと初期データとのいずれかを選択して処置後用データとする。これにより、処置後用データを一律車両の走行が開始される前の初期データとする場合と比較して、切替処理後の関係規定データに基づき機能回復処置後の車両の状態に応じたより適切な行動変数の値を設定することが可能となる。
3.前記実行装置は、前記検知処理によって前記機能回復処置がなされたと検知される場合、前記処置後用データを要求する信号を送信する処置後用データ要求処理と、前記処置後用データ要求処理の結果、送信された前記処置後用データを受信する処置後用データ受信処理と、を実行し、前記切替処理は、前記操作処理に利用する前記関係規定データを、受信した前記処置後用データに切り替える処理を含む上記1または2記載の車両用制御装置である。
上記構成では、処置後用データ要求処理および処置後用データ受信処理を実行することにより、制御装置において処置後用データを保持していない場合であっても、処置後用データを入手することができる。
4.上記1または2記載の前記実行装置および前記記憶装置を備え、前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を含み、前記第2実行装置は、前記検知処理によって機能回復処置がなされたことが検知される場合に前記処置後用データを送信する処置後用データ送信処理を少なくとも実行し、前記第1実行装置は、前記取得処理、前記操作処理、および前記処置後用データ送信処理によって送信されたデータを受信する処置後用データ受信処理を少なくとも実行する車両用制御システムである。
上記構成では、車載装置とは別の第2実行装置が処置後用データ送信処理を実行することにより、第1実行装置において処置後用データを保持していない場合であっても、処置後用データを入手することができる。なお、第2実行装置が車載装置とは別の装置であることは、第2実行装置が車載装置ではないことを意味する。
5.前記第1実行装置は、前記検知処理、および前記検知処理によって前記機能回復処置がなされたと検知される場合に前記処置後用データを要求する信号を送信する処置後用データ要求処理を実行する上記4記載の車両用制御システムである。
上記構成では、処置後用データ要求処理および処置後用データ受信処理を実行することにより、第1実行装置において処置後用データを保持していない場合であっても、処置後用データを入手することができる。
6.前記更新処理は、前記第1実行装置によって実行される上記4または5記載の車両用制御システムである。
7.上記4〜6のいずれか1つに記載の前記第1実行装置を備える車両用制御装置である。
7.上記4〜6のいずれか1つに記載の前記第1実行装置を備える車両用制御装置である。
8.上記4〜6のいずれか1つに記載の前記第2実行装置を備える車両用学習装置である。
<第1の実施形態>
以下、車両用制御装置の第1の実施形態について、図面を参照しつつ説明する。
図1に、本実施形態にかかる車両VC1の駆動系および制御装置の構成を示す。
以下、車両用制御装置の第1の実施形態について、図面を参照しつつ説明する。
図1に、本実施形態にかかる車両VC1の駆動系および制御装置の構成を示す。
図1に示すように、内燃機関10の吸気通路12には、上流側から順にスロットルバルブ14および燃料噴射弁16が設けられており、吸気通路12に吸入された空気や燃料噴射弁16から噴射された燃料は、吸気バルブ18の開弁に伴って、シリンダ20およびピストン22によって区画される燃焼室24に流入する。燃焼室24内において、燃料と空気との混合気は、点火装置26の火花放電に伴って燃焼に供され、燃焼によって生じたエネルギは、ピストン22を介してクランク軸28の回転エネルギに変換される。燃焼に供された混合気は、排気バルブ30の開弁に伴って、排気として排気通路32に排出される。排気通路32には、排気を浄化する後処理装置としての触媒34が設けられている。
クランク軸28には、ロックアップクラッチ42を備えたトルクコンバータ40を介して、変速装置50の入力軸52が機械的に連結可能とされている。変速装置50は、入力軸52の回転速度と出力軸54の回転速度との比である変速比を可変とする装置である。出力軸54には、駆動輪60が機械的に連結されている。
制御装置70は、内燃機関10を制御対象とし、その制御量であるトルクや排気成分比率等を制御すべく、スロットルバルブ14、燃料噴射弁16および点火装置26等の内燃機関10の操作部を操作する。また、制御装置70は、トルクコンバータ40を制御対象とし、ロックアップクラッチ42の係合状態を制御すべくロックアップクラッチ42を操作する。また、制御装置70は、変速装置50を制御対象とし、その制御量としての変速比を制御すべく変速装置50を操作する。なお、図1には、スロットルバルブ14、燃料噴射弁16、点火装置26、ロックアップクラッチ42、および変速装置50のそれぞれの操作信号MS1〜MS5を記載している。
制御装置70は、制御量の制御のために、エアフローメータ80によって検出される吸入空気量Gaや、スロットルセンサ82によって検出されるスロットルバルブ14の開口度(スロットル開口度TA)、クランク角センサ84の出力信号Scrを参照する。また、制御装置70は、アクセルセンサ88によって検出されるアクセルペダル86の踏み込み量(アクセル操作量PA)や、加速度センサ90によって検出される車両VC1の前後方向の加速度Gxを参照する。また、制御装置70は、全地球測位システム(GPS92)による位置データPgpsを参照する。
制御装置70は、CPU72、ROM74、電気的に書き換え可能な不揮発性メモリ(記憶装置76)、および周辺回路78を備え、それらがローカルネットワーク79を介して通信可能とされている。ここで、周辺回路78は、内部の動作を規定するクロック信号を生成する回路や、電源回路、リセット回路等を含む。
ROM74には、制御プログラム74aおよび学習プログラム74bが記憶されている。一方、記憶装置76には、アクセル操作量PAと、スロットル開口度TAの指令値(スロットル開口度指令値TA*)および点火装置26の遅角量aopとの関係を規定する関係規定データDRと、その初期データDR0とが記憶されている。ここで、遅角量aopは、予め定められた基準点火時期に対する遅角量であり、基準点火時期は、MBT点火時期とノック限界点とのうちの遅角側の時期である。MBT点火時期は、最大トルクの得られる点火時期(最大トルク点火時期)である。またノック限界点は、ノック限界の高い高オクタン価燃料の使用時に、想定される最良の条件下で、ノッキングを許容できるレベル以内に収めることのできる点火時期の進角限界値である。また、記憶装置76には、トルク出力写像データDTが記憶されている。トルク出力写像データDTによって規定されるトルク出力写像は、クランク軸28の回転速度NE、充填効率η、および点火時期を入力とし、トルクTrqを出力する写像である。
図2に、本実施形態にかかる制御装置70が実行する処理の手順を示す。図2に示す処理は、ROM74に記憶された制御プログラム74aおよび学習プログラム74bをCPU72がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、先頭に「S」が付与された数字によって各処理のステップ番号を示す。
図2に示す一連の処理において、CPU72は、まず、状態sとして、アクセル操作量PAの6個のサンプリング値「PA(1),PA(2),…PA(6)」からなる時系列データを取得する(S10)。ここで、時系列データを構成する各サンプリング値は、互いに異なるタイミングにおいてサンプリングされたものである。本実施形態では、一定のサンプリング周期でサンプリングされる場合の、互いに時系列的に隣り合う6個のサンプリング値によって時系列データを構成する。
次にCPU72は、関係規定データDRが定める方策πに従い、S10の処理によって取得した状態sに応じたスロットル開口度指令値TA*および遅角量aopからなる行動aを設定する(S12)。
本実施形態において、関係規定データDRは、行動価値関数Qおよび方策πを定めるデータである。本実施形態において、行動価値関数Qは、状態sおよび行動aの8次元の独立変数に応じた期待収益の値を示すテーブル型式の関数である。また、方策πは、状態sが与えられたときに、独立変数が与えられた状態sとなる行動価値関数Qのうち最大となる行動a(グリーディ行動)を優先的に選択しつつも、所定の確率εで、それ以外の行動aを選択する規則を定める。
詳しくは、本実施形態にかかる行動価値関数Qの独立変数がとりうる値の数は、状態sおよび行動aのとりうる値の全組み合わせのうちの一部が、人の知見等によって削減されたものである。すなわち、たとえばアクセル操作量PAの時系列データのうち隣接する2つのサンプリング値の1つがアクセル操作量PAの最小値となりもう1つが最大値となるようなことは、人によるアクセルペダル86の操作からは生じえないとして、行動価値関数Qが定義されていない。本実施形態では、人の知見等に基づく次元削減によって、行動価値関数Qを定義する状態sの取りうる値を、10の4乗個以下、より望ましくは10の3乗個以下に制限する。
次にCPU72は、設定されたスロットル開口度指令値TA*および遅角量aopに基づき、スロットルバルブ14に操作信号MS1を出力してスロットル開口度TAを操作するとともに、点火装置26に操作信号MS3を出力して点火時期を操作する(S14)。ここで、本実施形態では、スロットル開口度TAをスロットル開口度指令値TA*にフィードバック制御することを例示することから、スロットル開口度指令値TA*が同一の値であっても、操作信号MS1が互いに異なる信号となりうるものである。また、たとえば周知のノッキングコントロール(KCS)等がなされる場合、点火時期は、基準点火時期を遅角量aopにて遅角させた値がKCSにてフィードバック補正された値とされる。ここで、基準点火時期は、CPU72により、クランク軸28の回転速度NEおよび充填効率ηに応じて可変設定される。なお、回転速度NEは、クランク角センサ84の出力信号Scrに基づきCPU72によって算出される。また、充填効率ηは、回転速度NEおよび吸入空気量Gaに基づきCPU72によって算出される。
次にCPU72は、内燃機関10のトルクTrq、内燃機関10に対するトルク指令値Trq*、および加速度Gxを取得する(S16)。ここで、CPU112は、トルクTrqを、回転速度NE、充填効率ηおよび点火時期をトルク出力写像に入力することによって算出する。また、CPU72は、トルク指令値Trq*を、アクセル操作量PAに応じて設定する。
次にCPU72は、過渡フラグFが「1」であるか否かを判定する(S18)。過渡フラグFは、「1」である場合に過渡運転時であることを示し、「0」である場合に過渡運転時ではないことを示す。CPU72は、過渡フラグFが「0」であると判定する場合(S18:NO)、アクセル操作量PAの単位時間当たりの変化量ΔPAの絶対値が所定量ΔPAth以上であるか否かを判定する(S20)。ここで、変化量ΔPAは、たとえば、S20の処理の実行タイミングにおける最新のアクセル操作量PAと、同タイミングに対して単位時間だけ前におけるアクセル操作量PAとの差とすればよい。
CPU72は、所定量ΔPAth以上であると判定する場合(S20:YES)、過渡フラグFに「1」を代入する(S22)。
これに対し、CPU72は、過渡フラグFが「1」であると判定する場合(S18:YES)、S22の処理の実行タイミングから所定期間が経過したか否かを判定する(S24)。ここで、所定期間は、アクセル操作量PAの単位時間当たりの変化量ΔPAの絶対値が所定量ΔPAthよりも小さい規定量以下となる状態が所定時間継続するまでの期間とする。CPU72は、所定期間が経過したと判定する場合(S24:YES)、過渡フラグFに「0」を代入する(S26)。
これに対し、CPU72は、過渡フラグFが「1」であると判定する場合(S18:YES)、S22の処理の実行タイミングから所定期間が経過したか否かを判定する(S24)。ここで、所定期間は、アクセル操作量PAの単位時間当たりの変化量ΔPAの絶対値が所定量ΔPAthよりも小さい規定量以下となる状態が所定時間継続するまでの期間とする。CPU72は、所定期間が経過したと判定する場合(S24:YES)、過渡フラグFに「0」を代入する(S26)。
CPU72は、S22,S26の処理が完了する場合、1つのエピソードが終了したとして、強化学習によって行動価値関数Qを更新する(S28)。
図3に、S28の処理の詳細を示す。
図3に、S28の処理の詳細を示す。
図3に示す一連の処理において、CPU72は、直近に終了されたエピソード中のトルク指令値Trq*、トルクTrqおよび加速度Gxの3つのサンプリング値の組からなる時系列データと、状態sおよび行動aの時系列データと、を取得する(S30)。ここで、直近のエピソードは、S22の処理に続いてS30の処理がなされる場合には、過渡フラグFが継続して「0」となっていた期間であり、S26の処理に続いてS30の処理がなされる場合には、過渡フラグFが継続して「1」となっていた期間である。
図3には、カッコの中の数字が異なるものが、異なるサンプリングタイミングにおける変数の値であることを示す。たとえば、トルク指令値Trq*(1)とトルク指令値Trq*(2)とは、サンプリングタイミングが互いに異なるものである。また、直近のエピソードに属する行動aの時系列データを、行動集合Ajとし、同エピソードに属する状態sの時系列データを、状態集合Sjと定義する。
次にCPU72は、直近のエピソードに属する任意のトルクTrqとトルク指令値Trq*との差の絶対値が規定量ΔTrq以下である旨の条件(ア)と、加速度Gxが下限値GxL以上であって上限値GxH以下である旨の条件(イ)との論理積が真であるか否かを判定する(S32)。
ここで、CPU72は、規定量ΔTrqを、エピソードの開始時におけるアクセル操作量PAの単位時間当たりの変化量ΔPAによって可変設定する。すなわち、CPU72は、変化量ΔPAの絶対値が大きい場合には過渡時に関するエピソードであるとして、定常時である場合と比較して、規定量ΔTrqを大きい値に設定する。
また、CPU72は、下限値GxLを、エピソードの開始時におけるアクセル操作量PAの変化量ΔPAによって可変設定する。すなわち、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが正である場合には、定常時に関するエピソードの場合と比較して、下限値GxLを大きい値に設定する。また、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが負である場合には、定常時に関するエピソードの場合と比較して、下限値GxLを小さい値に設定する。
また、CPU72は、上限値GxHを、エピソードの開始時におけるアクセル操作量PAの単位時間当たりの変化量ΔPAによって可変設定する。すなわち、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが正である場合には、定常時に関するエピソードの場合と比較して、上限値GxHを大きい値に設定する。また、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが負である場合には、定常時に関するエピソードの場合と比較して、上限値GxHを小さい値に設定する。
CPU72は、論理積が真であると判定する場合(S32:YES)、報酬rに「10」を代入する一方(S34)、偽であると判定する場合(S32:NO)、報酬rに「−10」を代入する(S36)。CPU72は、S34,S36の処理が完了する場合、図1に示した記憶装置76に記憶されている関係規定データDRを更新する。本実施形態では、εソフト方策オン型モンテカルロ法を用いる。
すなわち、CPU72は、上記S30の処理によって読み出した各状態と対応する行動との組によって定まる収益R(Sj,Aj)に、それぞれ、報酬rを加算する(S38)。ここで、「R(Sj,Aj)」は、状態集合Sjの要素の1つを状態とし行動集合Ajの要素の1つを行動とする収益Rを総括した記載である。次に、上記S30の処理によって読み出した各状態と対応する行動との組によって定まる収益R(Sj,Aj)のそれぞれについて、平均化して対応する行動価値関数Q(Sj,Aj)に代入する(S40)。ここで、平均化は、S38の処理がなされた回数に所定数を加えた数によって、S38の処理によって算出された収益Rを除算する処理とすればよい。なお、収益Rの初期値は、対応する行動価値関数Qの初期値とすればよい。
次にCPU72は、上記S30の処理によって読み出した状態について、それぞれ、対応する行動価値関数Q(Sj,A)のうち、最大値となるときのスロットル開口度指令値TA*および遅角量aopの組である行動を、行動Aj*に代入する(S42)。ここで、「A」は、とりうる任意の行動を示す。なお、行動Aj*は、上記S30の処理によって読み出した状態の種類に応じて各別の値となるものであるが、ここでは、表記を簡素化して、同一の記号にて記載している。
次に、CPU72は、上記S30の処理によって読み出した状態のそれぞれについて、対応する方策π(Aj|Sj)を更新する(S44)。すなわち、行動の総数を、「|A|」とすると、S42によって選択された行動Aj*の選択確率を、「1−ε+ε/|A|」とする。また、行動Aj*以外の「|A|−1」個の行動の選択確率を、それぞれ「ε/|A|」とする。S44の処理は、S40の処理によって更新された行動価値関数Qに基づく処理であることから、これにより、状態sと行動aとの関係を規定する関係規定データDRが、収益Rを増加させるように更新されることとなる。
なお、CPU72は、S44の処理が完了する場合、図3に示す一連の処理を一旦終了する。
図2に戻り、CPU72は、S28の処理が完了する場合や、S20,S24の処理において否定判定する場合には、図2に示す一連の処理を一旦終了する。なお、S10〜S26の処理は、CPU72が制御プログラム74aを実行することにより実現され、S28の処理は、CPU72が学習プログラム74bを実行することにより実現される。また、車両VC1の出荷時における関係規定データDRは、初期データDR0と同一である。初期データDR0は、テストベンチで車両の走行を模擬するなどしつつ図2に示した処理と同様の処理を実行することによってあらかじめ学習がなされたデータとする。
図2に戻り、CPU72は、S28の処理が完了する場合や、S20,S24の処理において否定判定する場合には、図2に示す一連の処理を一旦終了する。なお、S10〜S26の処理は、CPU72が制御プログラム74aを実行することにより実現され、S28の処理は、CPU72が学習プログラム74bを実行することにより実現される。また、車両VC1の出荷時における関係規定データDRは、初期データDR0と同一である。初期データDR0は、テストベンチで車両の走行を模擬するなどしつつ図2に示した処理と同様の処理を実行することによってあらかじめ学習がなされたデータとする。
図4に、本実施形態にかかる制御装置70が実行する処理の手順を示す。図4に示す処理は、ROM74に記憶された学習プログラム74bを、CPU72がたとえば所定周期で繰り返し実行することにより実現される。
図4に示す一連の処理において、CPU72は、まず車両VC1の走行距離RLが所定距離となったか否かを判定する(S50)。ここで所定距離は、たとえば、1万km、2万km、3万km、…等、所定量の倍数によってあらわされる複数の距離とする。CPU72は、所定距離であると判定する場合(S50:YES)、そのときの関係規定データDRを、更新済みデータDR1として記憶装置76に記憶する(S52)。なお、上記所定量を「1万km」とする場合、走行距離RLが2万kmとなるなら、更新済みデータDR1として、2つの異なるデータが記憶装置76に記憶される。すなわち、走行距離RLが所定距離であると判定されるたびに、そのときの関係規定データDRが、新たに更新済みデータDR1として記憶装置76に記憶され、更新済みデータDR1が増えていく。
CPU72は、S52の処理が完了する場合や、S50の処理において否定判定する場合、機能回復処置がなされたか否かを判定する(S54)。本実施形態では、車両VC1のメンテナンスに伴う車両VC1に搭載された部品の機能回復処置がされる場合、スキャンツールから制御装置70に、機能回復処置がなされた旨の信号が入力されることを想定している。そのため、CPU72は、機能回復処置がなされた旨の信号が入力される場合に、機能回復処置がなされたと判定する。
CPU72は、機能回復処置がなされたと判定する場合(S54:YES)、現在の走行距離RLよりも所定量ΔL以上短い走行距離であった時点における更新済みデータDR1が存在するか否かを判定する(S56)。そしてCPU72は、更新済みデータDR1が存在すると判定する場合(S56:YES)、処置後用データDRpに、更新済みデータDR1を代入する(S58)。なお、記憶装置76に更新済みデータDR1としてS56の処理によって肯定判定される対象となる複数のデータが記憶されている場合、CPU72は、そのうちの最も走行距離RLが長いときのデータを処置後用データDRpに代入する。これに対し、CPU72は、更新済みデータDR1が存在しないと判定する場合(S56:NO)、処置後用データDRpに、初期データDR0を代入する(S60)。
CPU72は、S58,S60の処理が完了する場合、S12の処理に利用する関係規定データDRを、処置後用データDRpに書き換える(S62)。
なお、CPU72は、S62の処理が完了する場合や、S54の処理において否定判定する場合には、図4に示す一連の処理を一旦終了する。
なお、CPU72は、S62の処理が完了する場合や、S54の処理において否定判定する場合には、図4に示す一連の処理を一旦終了する。
ここで、本実施形態の作用および効果について説明する。
CPU72は、ユーザによるアクセルペダル86の操作に伴って、アクセル操作量PAの時系列データを取得し、方策πに従って、スロットル開口度指令値TA*および遅角量aopからなる行動aを設定する。ここでCPU72は、基本的には、関係規定データDRに規定されている行動価値関数Qに基づき期待収益を最大とする行動aを選択する。ただし、CPU72は、所定の確率εで、期待収益を最大化する行動a以外の行動を選択することによって、期待収益を最大化する行動aの探索を行う。これにより、ユーザによる車両VC1の運転に伴って、関係規定データDRを強化学習によって更新できる。したがって、アクセル操作量PAに応じたスロットル開口度指令値TA*および遅角量aopを、熟練者による工数を過度に大きくすることなく車両VC1の走行において適切な値に設定することができる。
CPU72は、ユーザによるアクセルペダル86の操作に伴って、アクセル操作量PAの時系列データを取得し、方策πに従って、スロットル開口度指令値TA*および遅角量aopからなる行動aを設定する。ここでCPU72は、基本的には、関係規定データDRに規定されている行動価値関数Qに基づき期待収益を最大とする行動aを選択する。ただし、CPU72は、所定の確率εで、期待収益を最大化する行動a以外の行動を選択することによって、期待収益を最大化する行動aの探索を行う。これにより、ユーザによる車両VC1の運転に伴って、関係規定データDRを強化学習によって更新できる。したがって、アクセル操作量PAに応じたスロットル開口度指令値TA*および遅角量aopを、熟練者による工数を過度に大きくすることなく車両VC1の走行において適切な値に設定することができる。
このようにして車両VC1の出荷時に初期データDR0と同一だった関係規定データDRは、車両VC1の走行に伴って更新されていく。ここで、たとえばスロットル開口度TAが同一であったとしても、スロットルバルブ14や吸気通路12に堆積物が堆積する場合には、吸気通路12の流路断面積が小さくなることから、吸入空気量Gaが小さくなる。そのため、関係規定データDRによって規定される、アクセル操作量PAの時系列データに応じて期待収益を最大化するスロットル開口度指令値TA*は、スロットルバルブ14に堆積物が堆積することに起因した吸気通路12の流路断面積の変化を補償するように更新される可能性がある。このように、車両VC1の部品の経年劣化を補償するように関係規定データDRが学習される場合、その後、メンテナンスに伴って部品交換や清掃がなされることにより、車両VC1の部品の機能回復処置がなされると、関係規定データDRが期待収益を大きくする行動を定めるうえで適切なデータではなくなる懸念がある。
そこで、CPU72は、機能回復処置がなされた判定することを条件に、初期データDR0を処置後用データDRpとして、これによって関係規定データDRを書き換えた。初期データDR0は、部品の劣化を補償するように更新がなされていないデータである。そのため、初期データDR0に書き換えることにより、機能回復処置がなされた後にも機能回復処置前の関係規定データDRをそのまま使用し続ける場合と比較すると、機能回復処置後におけるスロットルバルブ14や点火装置26の操作にとってより適切なデータを用いてそれらを操作することができる。
以上説明した本実施形態によれば、さらに以下に記載する作用効果が得られる。
(1)CPU72は、走行距離RLが所定量だけ増加する都度、その時の関係規定データDRを更新済みデータDR1として記憶した。そして、CPU72は、機能回復処置がなされたと判定する場合、現在の走行距離RLよりも所定量ΔL以上短い走行距離だったときの更新済みデータDR1が存在する場合、これを処置後用データDRpとし、スロットル開口度指令値TA*および遅角量aopの設定に用いる関係規定データDRを書き換えた。ここで、更新済みデータDR1は、車両VC1の出荷時の関係規定データDRである初期データDR0に対して、車両VC1の実際の走行に伴って更新されたデータである。しかも、機能回復処置がなされたときよりも所定距離ΔL以上短い走行距離RLにおける関係規定データDRであることから、機能回復処置がなされる時点における部品の劣化等の影響が小さいデータであると考えられる。そのため、更新済みデータDR1に更新することによって、機能回復処置後の車両VC1にとって適切な関係規定データDRとすることができる。
(1)CPU72は、走行距離RLが所定量だけ増加する都度、その時の関係規定データDRを更新済みデータDR1として記憶した。そして、CPU72は、機能回復処置がなされたと判定する場合、現在の走行距離RLよりも所定量ΔL以上短い走行距離だったときの更新済みデータDR1が存在する場合、これを処置後用データDRpとし、スロットル開口度指令値TA*および遅角量aopの設定に用いる関係規定データDRを書き換えた。ここで、更新済みデータDR1は、車両VC1の出荷時の関係規定データDRである初期データDR0に対して、車両VC1の実際の走行に伴って更新されたデータである。しかも、機能回復処置がなされたときよりも所定距離ΔL以上短い走行距離RLにおける関係規定データDRであることから、機能回復処置がなされる時点における部品の劣化等の影響が小さいデータであると考えられる。そのため、更新済みデータDR1に更新することによって、機能回復処置後の車両VC1にとって適切な関係規定データDRとすることができる。
(2)行動価値関数Qの独立変数にアクセル操作量PAの時系列データを含めた。これにより、アクセル操作量PAに関して単一のサンプリング値のみを独立変数とする場合と比較して、アクセル操作量PAの様々な変化に対して行動aの値をきめ細かく調整できる。
(3)行動価値関数Qの独立変数に、スロットル開口度指令値TA*自体を含めた。これにより、たとえば、スロットル開口度指令値TA*の挙動をモデル化したモデル式のパラメータ等をスロットル開口度に関する独立変数とする場合と比較して、強化学習による探索の自由度を高めることが容易である。
<第2の実施形態>
以下、第2の実施形態について、第1の実施形態との相違点を中心に図面を参照しつつ説明する。
以下、第2の実施形態について、第1の実施形態との相違点を中心に図面を参照しつつ説明する。
図5に、本実施形態において、強化学習を実行する制御システムの構成を示す。なお、図5において、図1に示した部材に対応する部材については、便宜上、同一の符号を付している。
図5に示す車両VC1内のROM74には、制御プログラム74aに加えて、学習用メインプログラム74cが記憶されている。また、車両VC1内の記憶装置76は、トルク出力写像データDTや関係規定データDRを記憶しているものの、初期データDR0については記憶していない。また、制御装置70は、通信機77を備えている。通信機77は車両VC1の外部のネットワーク100を介してデータ解析センター110と通信するための機器である。
データ解析センター110は、複数の車両VC1,VC2,…から送信されるデータを解析する。データ解析センター110は、CPU112、ROM114、および電気的に書き換え可能な不揮発性メモリ(記憶装置116)、周辺回路118および通信機117を備えており、それらがローカルネットワーク119によって通信可能とされるものである。ROM114には、学習用サブプログラム114aが記憶されている。記憶装置116には、初期データDR0が記憶されている。
図6に、本実施形態にかかる機能回復処置に対処する処理手順を示す。図6(a)に示す処理は、図5に示すROM74に記憶された学習用メインプログラム74cをCPU72が実行することにより実現される。また、図6(b)に示す処理は、ROM114に記憶されている学習用サブプログラム114aをCPU112が実行することにより実現される。なお、図6において図4に示した処理に対応する処理については、便宜上同一のステップ番号を付している。以下では、時系列に沿って、図6に示す処理を説明する。
図6(a)に示す一連の処理において、CPU72は、まず、通信機77を操作して、車両VC1の識別情報IDと、走行距離RLと、位置データPgpsとを送信する(S70)。
これに対し、図6(b)に示すように、CPU112は、識別情報ID、走行距離RLおよび位置データPgpsを受信する(S80)。そして、CPU112は、記憶装置116に記憶された識別情報IDに紐づけられた走行距離RLおよび位置データPgpsを、S80の処理によって受信した値に更新する(S82)。
一方、図6(a)に示すように、CPU72は、S54の処理を実行し、肯定判定する場合、通信機77を操作することによって、S12の処理に用いる関係規定データDRとして適切な処置後用データDRpを要求する信号を送信する(S72)。
これに対し、図6(b)に示すように、CPU112は、処置後用データDRpの要求があるか否かを判定する(S84)。そしてCPU112は、処置後用データDRpの要求があると判定する場合(S84:YES)、要求する信号を送信した車両VC1と位置的に近い車両であって走行距離が短い車両を検索する(S86)。ここで、位置的に近い車両であるとの条件は、S82の処理によって記憶されている各車両の位置データPgpsに基づき、要求する信号を送信した車両VC1との距離が所定距離以下の車両とする。また、要求する信号を送信した車両VC1よりも走行距離が短い車両としては、同車両VC1の走行距離RLよりも所定量ΔL以上走行距離が短く、且つ同車両VC1の走行距離RLとの差が規定量ΔH以下である車両とする。
ここで、車両VC1との距離が所定距離以下の車両を検索するのは、車両VC1と距離があまりに大きいところに位置する車両の場合の関係規定データDRは、環境の相違等に起因して、車両VC1にとって期待収益を大きくする上で適切なデータとならないことを懸念したためである。また、走行距離RLが、車両VC1の走行距離RLよりも所定量ΔL以上短いものの、規定量ΔH以上は短くない車両としたのは、車両VC1の部品劣化の前の状態に近似した車両を特定するための設定である。
CPU112は、該当する車両が存在すると判定する場合(S88:YES)、通信機117を操作して該当する車両に対して関係規定データDRの送信を促し、これを他車両規定データDRaとして受信する(S90)。次に、CPU72は、処置後用データDRpに他車両規定データDRaを代入する(S92)。これに対し、CPU72は、該当する車両が存在しないと判定する場合(S88:NO)、処置後用データDRpに初期データDR0を代入する(S94)。CPU112は、S92,S94の処理が完了する場合、通信機117を操作して、要求を出した車両VC1に処置後用データDRpを送信する(S96)。なお、CPU112は、S96の処理が完了する場合や、S84の処理において否定判定する場合には、図6(b)に示す一連の処理を一旦終了する。
これに対し図6(a)に示すように、CPU72は、送信された処置後用データDRpを受信し(S74)、S62の処理を実行する。
なお、CPU72は、S62の処理が完了する場合や、S54の処理において否定判定する場合には、図6(a)に示す一連の処理を一旦終了する。
なお、CPU72は、S62の処理が完了する場合や、S54の処理において否定判定する場合には、図6(a)に示す一連の処理を一旦終了する。
<対応関係>
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。
[1]実行装置は、CPU72およびROM74に対応し、記憶装置は、記憶装置76に対応する。取得処理は、S10,S16の処理に対応し、操作処理は、S14の処理に対応し、報酬算出処理は、S32〜S36の処理に対応し、更新処理は、S38〜S44の処理に対応する。検知処理は、S54の処理に対応し、切替処理は、S62の処理に対応する。更新写像は、学習プログラム74bのうちS38〜S44の処理を実行する指令によって規定された写像に対応する。[2]過去データ維持処理は、S52の処理に対応する。[3,5]処置後用データ要求処理は、S72の処理に対応し、処置後用データ受信処理は、S74の処理に対応する。[4,6〜8]第1実行装置は、CPU72およびROM74に対応し、第2実行装置は、CPU112およびROM114に対応する。処置後用データ送信処理は、S96の処理に対応し、処置後用データ受信処理は、S74の処理に対応する。
<その他の実施形態>
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
・「検知処理について」
上記実施形態では、制御装置70にスキャンツールが接続された状態で、スキャンツールから制御装置70に、機能回復処置がなされた旨の信号が入力されることによって、制御装置70でその旨を検知することとしたが、検知処理としては、これに限らない。たとえば、修理工場等で機能回復処置がなされた場合、その旨をネットワーク100を介してデータ解析センター110に通知してもよい。その場合であっても、データ解析センター110において、図6(b)のS80,82,S86〜S96の処理に準じた処理を実行することによって、制御装置70に処置後用データDRpを送信できる。
上記実施形態では、制御装置70にスキャンツールが接続された状態で、スキャンツールから制御装置70に、機能回復処置がなされた旨の信号が入力されることによって、制御装置70でその旨を検知することとしたが、検知処理としては、これに限らない。たとえば、修理工場等で機能回復処置がなされた場合、その旨をネットワーク100を介してデータ解析センター110に通知してもよい。その場合であっても、データ解析センター110において、図6(b)のS80,82,S86〜S96の処理に準じた処理を実行することによって、制御装置70に処置後用データDRpを送信できる。
もっとも、検知処理としては、制御装置70とデータ解析センター110とのいずれかが実行するものにも限らない。たとえば、「車両用制御システムについて」の欄に記載したように、携帯端末を備えて車両用制御システムを構成する場合、携帯端末が検知処理を実行してもよい。ここで、制御装置70、携帯端末およびデータ解析センター110によって車両用制御システムを構成する場合、携帯端末が検知処理を実行した後、処置後用データDRpを要求する信号をデータ解析センター110に送信すればよい。
さらに、検知処理としては、修理工場等による信号を直接検知する処理に限らない。たとえば、機能回復処置がなされた旨の信号を携帯端末に送信し、携帯端末から制御装置70にその旨の信号がさらに送信される場合、制御装置70が携帯端末からの信号を受信する処理を、検知処理としてもよい。
・「過去データ維持処理について」
上記実施形態では、走行距離RLが所定距離増加するごとに、その時の関係規定データDRを更新済みデータDR1として記憶したが、これに限らない。たとえば、スロットル開口度TAの全開状態を100%した場合の「1%」あたりの吸入空気量Gaの平均値によって、スロットルバルブ14周りの堆積物の堆積量を定量化し、平均値が規定値だけ変化した時点で、その時の関係規定データDRを更新済みデータDR1としてもよい。ここで、規定値は、吸入空気量Gaへの影響が無視できる上限値に設定すればよい。
上記実施形態では、走行距離RLが所定距離増加するごとに、その時の関係規定データDRを更新済みデータDR1として記憶したが、これに限らない。たとえば、スロットル開口度TAの全開状態を100%した場合の「1%」あたりの吸入空気量Gaの平均値によって、スロットルバルブ14周りの堆積物の堆積量を定量化し、平均値が規定値だけ変化した時点で、その時の関係規定データDRを更新済みデータDR1としてもよい。ここで、規定値は、吸入空気量Gaへの影響が無視できる上限値に設定すればよい。
・「処置用データ送信処理について」
制御装置70が切替処理を実行するうえで必要なデータとしては、処置後用データDRpのみに限らない。たとえば、「検知処理について」の欄に記載したように、機能回復処置がなされた旨の信号が修理工場からネットワーク100を介してデータ解析センター110に送信される場合、データ解析センター110から制御装置70にその旨を示すデータおよび処置後用データDRpを送信してもよい。
制御装置70が切替処理を実行するうえで必要なデータとしては、処置後用データDRpのみに限らない。たとえば、「検知処理について」の欄に記載したように、機能回復処置がなされた旨の信号が修理工場からネットワーク100を介してデータ解析センター110に送信される場合、データ解析センター110から制御装置70にその旨を示すデータおよび処置後用データDRpを送信してもよい。
S86〜S92の処理を削除し、データ解析センター110から制御装置70に送信する処置後用データDRpを常時初期データDR0としてもよい。
またたとえば、図2のS28の処理と図4のS50,S52,S56〜S62の処理に準じた処理とをデータ解析センター110によって実行することとし、S62の処理によって生成された処置後用データDRpを制御装置70に送信してもよい。
またたとえば、図2のS28の処理と図4のS50,S52,S56〜S62の処理に準じた処理とをデータ解析センター110によって実行することとし、S62の処理によって生成された処置後用データDRpを制御装置70に送信してもよい。
・「初期データについて」
初期データDR0としては、テストベンチ等で強化学習がなされたデータに限らない。たとえば出荷される車両とは別の車両である試験走行用の車両の走行時に強化学習がなされたデータであってもよい。もっとも、強化学習によって生成されたデータに限らず、たとえばすでに従来手法で適合された車両における制御ロジックに基づき生成されたデータであってもよい。その場合であっても、車両の出荷後に関係規定データDRを強化学習によって更新することによって、初期データDR0よりも期待収益を増大させることができるデータを、熟練者の工数を増加させることなく生成することが可能となる。
初期データDR0としては、テストベンチ等で強化学習がなされたデータに限らない。たとえば出荷される車両とは別の車両である試験走行用の車両の走行時に強化学習がなされたデータであってもよい。もっとも、強化学習によって生成されたデータに限らず、たとえばすでに従来手法で適合された車両における制御ロジックに基づき生成されたデータであってもよい。その場合であっても、車両の出荷後に関係規定データDRを強化学習によって更新することによって、初期データDR0よりも期待収益を増大させることができるデータを、熟練者の工数を増加させることなく生成することが可能となる。
・「行動変数について」
上記実施形態では、行動変数としてのスロットルバルブの開口度に関する変数として、スロットル開口度指令値TA*を例示したが、これに限らない。たとえば、アクセル操作量PAに対するスロットル開口度指令値TA*の応答性を、無駄時間および2次遅れフィルタにて表現し、無駄時間と、2次遅れフィルタを規定する2つの変数との合計3つの変数を、スロットルバルブの開口度に関する変数としてもよい。ただし、その場合、状態変数は、アクセル操作量PAの時系列データに代えて、アクセル操作量PAの単位時間当たりの変化量とすることが望ましい。
上記実施形態では、行動変数としてのスロットルバルブの開口度に関する変数として、スロットル開口度指令値TA*を例示したが、これに限らない。たとえば、アクセル操作量PAに対するスロットル開口度指令値TA*の応答性を、無駄時間および2次遅れフィルタにて表現し、無駄時間と、2次遅れフィルタを規定する2つの変数との合計3つの変数を、スロットルバルブの開口度に関する変数としてもよい。ただし、その場合、状態変数は、アクセル操作量PAの時系列データに代えて、アクセル操作量PAの単位時間当たりの変化量とすることが望ましい。
上記実施形態では、行動変数としての点火時期に関する変数として、遅角量aopを例示したが、これに限らない。たとえば、KCSによる補正対象とされる点火時期自体であってもよい。
上記実施形態では、行動変数として、スロットルバルブの開口度に関する変数および点火時期に関する変数を例示したが、これに限らない。たとえば、スロットルバルブの開口度に関する変数および点火時期に関する変数に加えて、燃料噴射量を用いてもよい。また、それら3つに関しては、行動変数としてスロットルバルブの開口度に関する変数および燃料噴射量のみを採用したり、点火時期に関する変数および燃料噴射量のみを採用したりしてもよい。さらに、それら3つに関しては、行動変数としてそれらのうちの1つのみを採用してもよい。
また、「内燃機関について」の欄に記載したように、圧縮着火式の内燃機関の場合、スロットルバルブの開口度に関する変数に代えて噴射量に関する変数を用い、点火時期に関する変数に代えて噴射時期に関する変数を用いればよい。なお、噴射時期に関する変数に加えて、1燃焼サイクルにおける噴射回数に関する変数や、1燃焼サイクルにおける1つの気筒のための時系列的に隣接した2つの燃料噴射のうちの一方の終了タイミングと他方の開始タイミングとの間の時間間隔に関する変数を加えることが望ましい。
また、たとえば変速装置50が有段変速装置の場合、クラッチの係合状態を油圧によって調整するためのソレノイドバルブの電流値等を行動変数としてもよい。
また、たとえば、下記「車両について」の欄に記載したように車両としてハイブリッド車や、電気自動車、燃料電池車を採用する場合、回転電機のトルクや出力を行動変数としてもよい。またたとえば、内燃機関のクランク軸の回転動力によって回転するコンプレッサを備えた車載空調装置を備える場合、コンプレッサの負荷トルクを行動変数に含めてもよい。また、電動式の車載空調装置を備える場合、空調装置の消費電力を行動変数に含めてもよい。
また、たとえば、下記「車両について」の欄に記載したように車両としてハイブリッド車や、電気自動車、燃料電池車を採用する場合、回転電機のトルクや出力を行動変数としてもよい。またたとえば、内燃機関のクランク軸の回転動力によって回転するコンプレッサを備えた車載空調装置を備える場合、コンプレッサの負荷トルクを行動変数に含めてもよい。また、電動式の車載空調装置を備える場合、空調装置の消費電力を行動変数に含めてもよい。
・「状態について」
上記実施形態では、アクセル操作量PAの時系列データを、等間隔でサンプリングされた6個の値からなるデータとしたが、これに限らない。互いに異なるサンプリングタイミングにおける2個以上のサンプリング値からなるデータであればよく、この際、3個以上のサンプリング値からなるデータや、サンプリング間隔が等間隔であるデータであることがより望ましい。
上記実施形態では、アクセル操作量PAの時系列データを、等間隔でサンプリングされた6個の値からなるデータとしたが、これに限らない。互いに異なるサンプリングタイミングにおける2個以上のサンプリング値からなるデータであればよく、この際、3個以上のサンプリング値からなるデータや、サンプリング間隔が等間隔であるデータであることがより望ましい。
アクセル操作量に関する状態変数としては、アクセル操作量PAの時系列データに限らず、たとえば「行動変数について」の欄に記載したように、アクセル操作量PAの単位時間当たりの変化量等であってもよい。
また、たとえば「行動変数について」の欄に記載したように、ソレノイドバルブの電流値を行動変数とする場合、状態に、変速装置の入力軸52の回転速度や出力軸54の回転速度、ソレノイドバルブによって調整される油圧を含めればよい。またたとえば「行動変数について」の欄に記載したように、回転電機のトルクや出力を行動変数とする場合、状態に、バッテリの充電率や温度を含めればよい。またたとえば「行動変数について」の欄に記載したように、コンプレッサの負荷トルクや空調装置の消費電力を行動に含める場合、状態に、車室内の温度を含めればよい。
・「テーブル形式のデータの次元削減について」
テーブル形式のデータの次元削減手法としては、上記実施形態において例示したものに限らない。たとえばアクセル操作量PAが最大値となることはまれであることから、アクセル操作量PAが規定量以上となる状態については行動価値関数Qを定義せず、アクセル操作量PAが規定量以上となる場合のスロットル開口度指令値TA*等は、別途適合してもよい。またたとえば、行動のとりうる値からスロットル開口度指令値TA*が規定値以上となるものを除くなどして、次元削減をしてもよい。
テーブル形式のデータの次元削減手法としては、上記実施形態において例示したものに限らない。たとえばアクセル操作量PAが最大値となることはまれであることから、アクセル操作量PAが規定量以上となる状態については行動価値関数Qを定義せず、アクセル操作量PAが規定量以上となる場合のスロットル開口度指令値TA*等は、別途適合してもよい。またたとえば、行動のとりうる値からスロットル開口度指令値TA*が規定値以上となるものを除くなどして、次元削減をしてもよい。
・「関係規定データについて」
上記実施形態では、行動価値関数Qを、テーブル形式の関数としたが、これに限らない。たとえば、関数近似器を用いてもよい。
上記実施形態では、行動価値関数Qを、テーブル形式の関数としたが、これに限らない。たとえば、関数近似器を用いてもよい。
たとえば、行動価値関数Qを用いる代わりに、方策πを、状態sおよび行動aを独立変数とし、行動aをとる確率を従属変数とする関数近似器にて表現し、関数近似器を定めるパラメータを、報酬rに応じて更新してもよい。
・「操作処理について」
たとえば「関係規定データについて」の欄に記載したように、行動価値関数を関数近似器とする場合、上記実施形態におけるテーブル型式の関数の独立変数となる行動についての離散的な値の組の全てについて、状態sとともに行動価値関数Qに入力することによって、行動価値関数Qを最大化する行動aを選択すればよい。
たとえば「関係規定データについて」の欄に記載したように、行動価値関数を関数近似器とする場合、上記実施形態におけるテーブル型式の関数の独立変数となる行動についての離散的な値の組の全てについて、状態sとともに行動価値関数Qに入力することによって、行動価値関数Qを最大化する行動aを選択すればよい。
また、たとえば「関係規定データについて」の欄に記載したように、方策πを、状態sおよび行動aを独立変数とし、行動aをとる確率を従属変数とする関数近似器とする場合、方策πによって示される確率に基づき行動aを選択すればよい。
・「更新写像について」
S38〜S44の処理においては、εソフト方策オン型モンテカルロ法によるものを例示したが、これに限らない。たとえば、方策オフ型モンテカルロ法によるものであってもよい。もっとも、モンテカルロ法にも限らず、たとえば、方策オフ型TD法を用いたり、またたとえばSARSA法のように方策オン型TD法を用いたり、またたとえば、方策オン型の学習として適格度トレース法を用いたりしてもよい。
S38〜S44の処理においては、εソフト方策オン型モンテカルロ法によるものを例示したが、これに限らない。たとえば、方策オフ型モンテカルロ法によるものであってもよい。もっとも、モンテカルロ法にも限らず、たとえば、方策オフ型TD法を用いたり、またたとえばSARSA法のように方策オン型TD法を用いたり、またたとえば、方策オン型の学習として適格度トレース法を用いたりしてもよい。
また、たとえば「関係規定データについて」の欄に記載したように、方策πを関数近似器を用いて表現し、これを報酬rに基づき直接更新する場合には、方策勾配法等を用いて更新写像を構成すればよい。
また、行動価値関数Qと方策πとのうちのいずれか一方のみを、報酬rによる直接の更新対象とするものに限らない。たとえば、アクター・クリティック法のように、行動価値関数Qおよび方策πをそれぞれ更新してもよい。また、アクター・クリティック法においては、これに限らず、たとえば行動価値関数Qに代えて価値関数Vを更新対象としてもよい。
なお、方策πを定める「ε」については、固定値に限らず、学習の進行度合いに応じてあらかじめ定められた規則に応じて変更してもよい。
・「報酬算出処理について」
図3の処理では、条件(ア)および条件(イ)の論理積が真であるか否かに応じて報酬を与えたが、これに限らない。たとえば、条件(ア)を満たすか否かに応じて報酬を与える処理と、条件(イ)を満たすか否かに応じて報酬を与える処理とを実行してもよい。また、たとえば、条件(ア)を満たすか否かに応じて報酬を与える処理と、条件(イ)を満たすか否かに応じて報酬を与える処理との2つの処理に関しては、それらのうちのいずれか1つの処理のみを実行してもよい。
・「報酬算出処理について」
図3の処理では、条件(ア)および条件(イ)の論理積が真であるか否かに応じて報酬を与えたが、これに限らない。たとえば、条件(ア)を満たすか否かに応じて報酬を与える処理と、条件(イ)を満たすか否かに応じて報酬を与える処理とを実行してもよい。また、たとえば、条件(ア)を満たすか否かに応じて報酬を与える処理と、条件(イ)を満たすか否かに応じて報酬を与える処理との2つの処理に関しては、それらのうちのいずれか1つの処理のみを実行してもよい。
また、たとえば条件(ア)を満たす場合に一律同じ報酬を与える代わりに、トルクTrqとトルク指令値Trq*との差の絶対値が小さい場合に大きい場合よりもより大きい報酬を与える処理としてもよい。またたとえば、条件(ア)を満たさない場合に一律同じ報酬を与える代わりに、トルクTrqとトルク指令値Trq*との差の絶対値が大きい場合に小さい場合よりもより小さい報酬を与える処理としてもよい。
また、たとえば条件(イ)を満たす場合に一律同じ報酬を与える代わりに、加速度Gxの大きさに応じて報酬の大きさを可変とする処理としてもよい。またたとえば、条件(イ)を満たさない場合に一律同じ報酬を与える代わりに、加速度Gxの大きさに応じて報酬の大きさを可変とする処理としてもよい。
上記実施形態では、報酬rを、ドライバビリティに関する基準を満たすか否かに応じて与えたが、ドライバビリティに関する基準としては、上述したものに限らず、たとえば騒音や振動強度が基準を満たすか否かに応じて設定してもよい。もっともこれに限らず、上記加速度が基準を満たすか否かと、トルクTrqの追従性が基準を満たすか否かと、騒音が基準を満たすか否かと、振動強度が基準を満たすか否かとの4つのうちの任意の1つ以上であってよい。
報酬算出処理としては、報酬rを、ドライバビリティに関する基準を満たすか否かに応じて与えるものにも限らない。たとえば、燃料消費率が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理であってもよい。またたとえば、排気特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理であってもよい。なお、ドライバビリティに関する基準を満たす場合に満たさない場合よりも大きい報酬を与える処理と、燃料消費率が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理と、排気特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理との3つの処理のうちの2つまたは3つを含んでもよい。
また、たとえば「行動変数について」の欄に記載したように、変速装置50のソレノイドバルブの電流値を行動変数とする場合、たとえば報酬算出処理に以下の(a)〜(c)の3つの処理のうちの少なくとも1つの処理を含めればよい。
(a)変速装置による変速比の切り替えに要する時間が所定時間以内である場合に所定時間を超える場合よりも大きい報酬を与える処理である。
(b)変速装置の入力軸52の回転速度の変化速度の絶対値が入力側所定値以下である場合に入力側所定値を超える場合よりも大きい報酬を与える処理である。
(b)変速装置の入力軸52の回転速度の変化速度の絶対値が入力側所定値以下である場合に入力側所定値を超える場合よりも大きい報酬を与える処理である。
(c)変速装置の出力軸54の回転速度の変化速度の絶対値が出力側所定値以下である場合に出力側所定値を超える場合よりも大きい報酬を与える処理である。
また、たとえば「行動変数について」の欄に記載したように、回転電機のトルクや出力を行動変数とする場合、バッテリの充電率が所定範囲内にある場合にない場合よりも大きい報酬を与える処理や、バッテリの温度が所定範囲内にある場合にない場合よりも大きい報酬を与える処理を含めてもよい。また、たとえば「行動変数について」の欄に記載したように、コンプレッサの負荷トルクや空調装置の消費電力を行動変数に含める場合、車室内の温度が所定範囲内にある場合にない場合よりも大きい報酬を与える処理を加えてもよい。
また、たとえば「行動変数について」の欄に記載したように、回転電機のトルクや出力を行動変数とする場合、バッテリの充電率が所定範囲内にある場合にない場合よりも大きい報酬を与える処理や、バッテリの温度が所定範囲内にある場合にない場合よりも大きい報酬を与える処理を含めてもよい。また、たとえば「行動変数について」の欄に記載したように、コンプレッサの負荷トルクや空調装置の消費電力を行動変数に含める場合、車室内の温度が所定範囲内にある場合にない場合よりも大きい報酬を与える処理を加えてもよい。
・「車両用制御システムについて」
車両用制御システムとしては、制御装置70およびデータ解析センター110によって構成されるものに限らない。たとえば、データ解析センター110に代えて、ユーザが所持する携帯端末を用い、制御装置70および携帯端末によって車両用制御システムを構成してもよい。また、たとえば、制御装置70、携帯端末、およびデータ解析センター110によって構成してもよい。
車両用制御システムとしては、制御装置70およびデータ解析センター110によって構成されるものに限らない。たとえば、データ解析センター110に代えて、ユーザが所持する携帯端末を用い、制御装置70および携帯端末によって車両用制御システムを構成してもよい。また、たとえば、制御装置70、携帯端末、およびデータ解析センター110によって構成してもよい。
・「実行装置について」
実行装置としては、CPU72(112)とROM74(114)とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理するたとえばASIC等の専用のハードウェア回路を備えてもよい。すなわち、実行装置は、以下の(a)〜(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するROM等のプログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
実行装置としては、CPU72(112)とROM74(114)とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理するたとえばASIC等の専用のハードウェア回路を備えてもよい。すなわち、実行装置は、以下の(a)〜(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するROM等のプログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
・「記憶装置について」
上記実施形態では、関係規定データDRが記憶される記憶装置と、学習プログラム74bや制御プログラム74aが記憶される記憶装置(ROM74)とを別の記憶装置としたが、これに限らない。
上記実施形態では、関係規定データDRが記憶される記憶装置と、学習プログラム74bや制御プログラム74aが記憶される記憶装置(ROM74)とを別の記憶装置としたが、これに限らない。
・「内燃機関について」
内燃機関としては、燃料噴射弁として吸気通路12に燃料を噴射するポート噴射弁を備えるものに限らず、燃焼室24に燃料を直接噴射する筒内噴射弁を備えるものであってもよく、またたとえば、ポート噴射弁および筒内噴射弁の双方を備えるものであってもよい。
内燃機関としては、燃料噴射弁として吸気通路12に燃料を噴射するポート噴射弁を備えるものに限らず、燃焼室24に燃料を直接噴射する筒内噴射弁を備えるものであってもよく、またたとえば、ポート噴射弁および筒内噴射弁の双方を備えるものであってもよい。
内燃機関としては、火花点火式内燃機関に限らず、たとえば燃料として軽油などを用いる圧縮着火式内燃機関等であってもよい。
・「車両について」
車両としては、推力生成装置が内燃機関のみである車両に限らず、たとえば内燃機関と回転電機とを備えるいわゆるハイブリッド車両であってもよい。またたとえば、推力生成装置として、内燃機関を備えることなく、回転電機を備えるいわゆる電気自動車や燃料電池車あってもよい。
・「車両について」
車両としては、推力生成装置が内燃機関のみである車両に限らず、たとえば内燃機関と回転電機とを備えるいわゆるハイブリッド車両であってもよい。またたとえば、推力生成装置として、内燃機関を備えることなく、回転電機を備えるいわゆる電気自動車や燃料電池車あってもよい。
10…内燃機関、12…吸気通路、14…スロットルバルブ、16…燃料噴射弁、18…吸気バルブ、20…シリンダ、22…ピストン、24…燃焼室、26…点火装置、28…クランク軸、30…排気バルブ、32…排気通路、34…触媒、40…トルクコンバータ、42…ロックアップクラッチ、50…変速装置、52…入力軸、54…出力軸、60…駆動輪、70…制御装置、72…CPU、74…ROM、74a…制御プログラム、74b…学習プログラム、74c…学習用メインプログラム、76…記憶装置、77…通信機、78…周辺回路、79…ローカルネットワーク、80…エアフローメータ、82…スロットルセンサ、84…クランク角センサ、86…アクセルペダル、88…アクセルセンサ、90…加速度センサ、100…ネットワーク、110…データ解析センター、112…CPU、114…ROM、114a…学習用サブプログラム、116…記憶装置、117…通信機、118…周辺回路、119…ローカルネットワーク。
Claims (8)
- 実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
前記車両内の部品のうち前記操作処理による操作によって生じる前記車両の状態に影響を及ぼす部品の機能回復処置がなされたことを検知する検知処理と、
前記検知処理によって機能回復処置がなされたことが検知される場合、前記操作処理に利用する前記関係規定データを、処置後用データに切り替える切替処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記切替処理は、前記処置後用データとして、前記車両の走行に伴う前記更新処理が実行される前の前記関係規定データである初期データを用いる処理を含む車両用制御装置。 - 前記実行装置は、前記更新処理による更新がなされる前記関係規定データとは別に、所定の条件が成立するまでは前記更新処理による更新がなされて且つ前記所定の条件が成立した後には前記更新処理による更新を回避した前記関係規定データを前記記憶装置に記憶させた状態とする過去データ維持処理を実行し、
前記切替処理は、前記処置後用データを、前記過去データ維持処理によって前記所定の条件が成立する前に限って前記更新処理による更新がなされた前記関係規定データとするか前記初期データとするかを選択する処理を含む請求項1記載の車両用制御装置。 - 前記実行装置は、前記検知処理によって前記機能回復処置がなされたと検知される場合、前記処置後用データを要求する信号を送信する処置後用データ要求処理と、前記処置後用データ要求処理の結果、送信された前記処置後用データを受信する処置後用データ受信処理と、を実行し、
前記切替処理は、前記操作処理に利用する前記関係規定データを、受信した前記処置後用データに切り替える処理を含む請求項1または2記載の車両用制御装置。 - 請求項1または2記載の前記実行装置および前記記憶装置を備え、
前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を含み、
前記第2実行装置は、前記検知処理によって機能回復処置がなされたことが検知される場合に前記処置後用データを送信する処置後用データ送信処理を少なくとも実行し、
前記第1実行装置は、前記取得処理、前記操作処理、および前記処置後用データ送信処理によって送信されたデータを受信する処置後用データ受信処理を少なくとも実行する車両用制御システム。 - 前記第1実行装置は、前記検知処理、および前記検知処理によって前記機能回復処置がなされたと検知される場合に前記処置後用データを要求する信号を送信する処置後用データ要求処理を実行する請求項4記載の車両用制御システム。
- 前記更新処理は、前記第1実行装置によって実行される請求項4または5記載の車両用制御システム。
- 請求項4〜6のいずれか1項に記載の前記第1実行装置を備える車両用制御装置。
- 請求項4〜6のいずれか1項に記載の前記第2実行装置を備える車両用学習装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020055799A JP2021066417A (ja) | 2020-03-26 | 2020-03-26 | 車両用制御装置、車両用制御システム、および車両用学習装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020055799A JP2021066417A (ja) | 2020-03-26 | 2020-03-26 | 車両用制御装置、車両用制御システム、および車両用学習装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019191357A Division JP6705547B1 (ja) | 2019-10-18 | 2019-10-18 | 車両用制御装置、車両用制御システム、および車両用学習装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021066417A true JP2021066417A (ja) | 2021-04-30 |
Family
ID=75636517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020055799A Pending JP2021066417A (ja) | 2020-03-26 | 2020-03-26 | 車両用制御装置、車両用制御システム、および車両用学習装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021066417A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210114596A1 (en) * | 2019-10-18 | 2021-04-22 | Toyota Jidosha Kabushiki Kaisha | Method of generating vehicle control data, vehicle control device, and vehicle control system |
-
2020
- 2020-03-26 JP JP2020055799A patent/JP2021066417A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210114596A1 (en) * | 2019-10-18 | 2021-04-22 | Toyota Jidosha Kabushiki Kaisha | Method of generating vehicle control data, vehicle control device, and vehicle control system |
US11654915B2 (en) * | 2019-10-18 | 2023-05-23 | Toyota Jidosha Kabushiki Kaisha | Method of generating vehicle control data, vehicle control device, and vehicle control system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6705547B1 (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP6705546B1 (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP6809587B1 (ja) | 車両用制御装置 | |
JP2021116783A (ja) | 車両用制御装置および車両用制御システム | |
JP6744598B1 (ja) | 車両用制御システム、車両用制御装置、および車両用学習装置 | |
US11654915B2 (en) | Method of generating vehicle control data, vehicle control device, and vehicle control system | |
JP7287287B2 (ja) | 車両用制御データの生成方法、車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP2021066240A (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP7314831B2 (ja) | 車両用制御データの生成方法、車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP7207290B2 (ja) | 車両用制御装置、車両用制御システム、車両用学習装置、および車両用学習方法 | |
JP2021067196A (ja) | 車両用制御データの生成方法、車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP7331704B2 (ja) | 車両用制御データの生成方法、車両用制御装置、および車両用制御システム | |
JP2021067257A (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP2021109508A (ja) | 車両用制御装置、車両制御方法及び車両用制御プログラム | |
CN113217204B (zh) | 车辆控制方法、车辆用控制装置以及服务器 | |
CN113266481A (zh) | 车辆控制方法、车辆用控制装置以及服务器 | |
JP2021066417A (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP2021067258A (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP7207289B2 (ja) | 車両用制御装置、車両用制御システム、車両用学習装置、および車両用学習方法 | |
JP2021067261A (ja) | 車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP2021067259A (ja) | 車両用制御システム、車両用制御装置、および車両用学習装置 | |
TW202128467A (zh) | 控制車輛的方法、車輛控制器、和伺服器 | |
JP2021067262A (ja) | 車両用制御データの生成方法、車両用制御装置、車両用制御システム、および車両用学習装置 | |
JP2021067256A (ja) | 車両用制御データの生成方法、車両用制御装置、車両用制御システム、および車両用学習装置 |