(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】2021066240
(43)【公開日】20210430
(54)【発明の名称】車両用制御装置、車両用制御システム、および車両用学習装置
(51)【国際特許分類】
   B60W 40/09 20120101AFI20210402BHJP
   F02D 45/00 20060101ALI20210402BHJP
   F02D 43/00 20060101ALI20210402BHJP
   G05B 11/36 20060101ALI20210402BHJP
   G05B 13/02 20060101ALI20210402BHJP
【FI】
   !B60W40/09
   !F02D45/00 376
   !F02D43/00 310Z
   !G05B11/36 G
   !G05B13/02 J
【審査請求】有
【請求項の数】10
【出願形態】OL
【全頁数】24
(21)【出願番号】2019191097
(22)【出願日】20191018
(11)【特許番号】6705544
(45)【特許公報発行日】20200603
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
【住所又は居所】愛知県豊田市トヨタ町1番地
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】橋本 洋介
【住所又は居所】愛知県豊田市トヨタ町1番地 トヨタ自動車株式会社内
(72)【発明者】
【氏名】片山 章弘
【住所又は居所】愛知県豊田市トヨタ町1番地 トヨタ自動車株式会社内
(72)【発明者】
【氏名】大城 裕太
【住所又は居所】愛知県豊田市トヨタ町1番地 トヨタ自動車株式会社内
(72)【発明者】
【氏名】杉江 和紀
【住所又は居所】愛知県豊田市トヨタ町1番地 トヨタ自動車株式会社内
(72)【発明者】
【氏名】岡 尚哉
【住所又は居所】愛知県豊田市トヨタ町1番地 トヨタ自動車株式会社内
【テーマコード(参考)】
3D241
3G384
5H004
【Fターム(参考)】
3D241BA42
3D241CD03
3D241CD12
3D241CE02
3D241CE05
3D241CE08
3D241DA05Z
3D241DA13Z
3D241DB05B
3D241DB05Z
3D241DD05A
3D241DD05Z
3G384AA01
3G384AA06
3G384BA05
3G384BA13
3G384BA19
3G384BA24
3G384BA43
3G384BA53
3G384CA11
3G384DA18
3G384EA01
3G384EA07
3G384EB17
3G384EB18
3G384ED07
3G384EE16
3G384EE25
3G384EE32
3G384FA01Z
3G384FA04Z
3G384FA06Z
3G384FA58Z
3G384FA80Z
5H004GA30
5H004GB12
5H004HA07
5H004HB08
5H004HB09
5H004KC06
5H004KD61
(57)【要約】
【課題】車両の状態と行動変数との関係の設定に際して、熟練者に要求される工数を削減できるようにした車両用制御装置を提供する。
【解決手段】CPUは、1つのエピソードが終了するまで(S22,S26)、アクセル操作量PAの時系列データに基づき、スロットル開口度指令値TA*および点火時期の遅角量aopを設定し、それらに応じてスロットルバルブや点火装置を操作し(S12,S14)、その際のトルクTrq、トルク指令値Trq*および加速度Gxを取得する(S16)。CPUは、エピソードが終了する場合、トルクTrqや加速度Gxが基準を満たすか否かに応じて報酬を与えることによって行動価値関数Qを更新する(S28)。CPUは、ユーザの運転嗜好情報に応じて、報酬の与え方を変える。
【選択図】図2
【特許請求の範囲】
【請求項1】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含む車両用制御装置。
【請求項2】
前記取得処理は、ユーザによる前記車両の挙動の評価を前記運転嗜好情報として取得する処理を含み、
前記報酬算出処理は、前記取得処理によって低い評価を示す前記運転嗜好情報を取得する場合、前記車両の挙動に関する特性が同一であっても、当該評価の取得前とは異なる報酬を与える処理を含む請求項1記載の車両用制御装置。
【請求項3】
前記運転嗜好情報は、前記車両の前後方向の加速度の履歴情報を含む請求項1または2記載の車両用制御装置。
【請求項4】
前記運転嗜好情報は、アクセル操作量の履歴情報を含む請求項1〜3のいずれか1項に記載の車両用制御装置。
【請求項5】
前記取得処理は、前記ユーザの顔画像の解析結果を前記運転嗜好情報として取得する処理を含む請求項1〜4のいずれか1項に記載の車両用制御装置。
【請求項6】
前記車両の状態には、アクセル操作量の変化が含まれ、
前記報酬算出処理は、前記アクセル操作量の変化に伴う前記車両の前後方向の加速度が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理を含む請求項1〜5のいずれか1項に記載の車両用制御装置。
【請求項7】
前記車両は、当該車両の推力生成装置として内燃機関を備えるものであり、
前記電子機器には、前記内燃機関のスロットルバルブが含まれ、
前記行動変数には、前記スロットルバルブの開口度に関する変数が含まれる請求項6記載の車両用制御装置。
【請求項8】
請求項1〜7のいずれか1項に記載の前記実行装置および前記記憶装置を備え、
前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を含み、
前記第1実行装置は、少なくとも前記取得処理および前記操作処理を実行し、
前記第2実行装置は、少なくとも前記更新処理を実行する車両用制御システム。
【請求項9】
請求項8記載の第1実行装置を備える車両用制御装置。
【請求項10】
請求項8記載の第2実行装置を備える車両用学習装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両用制御装置、車両用制御システム、および車両用学習装置に関する。
【背景技術】
【0002】
たとえば下記特許文献1には、アクセルペダルの操作量をフィルタ処理した値に基づき、車両に搭載される内燃機関の操作部としてのスロットルバルブを操作する制御装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016−6327号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上記フィルタは、アクセルペダルの操作量に応じて車両に搭載される内燃機関のスロットルバルブの操作量を適切な操作量に設定するものである必要があることから、その適合には熟練者が多くの工数をかける必要が生じる。このように、従来は、車両の状態に応じた車両内の電子機器の操作量等の適合には、熟練者が多くの工数をかけていた。
【課題を解決するための手段】
【0005】
以下、上記課題を解決するための手段およびその作用効果について記載する。
1.実行装置および記憶装置を備え、前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、前記実行装置は、前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、前記取得処理によって取得された前記検出値に基づき、前記車両の特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、を実行し、前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含む車両用制御装置である。
【0006】
上記構成では、電子機器の操作に伴う報酬を算出することによって、当該操作によってどのような報酬が得られるかを把握することができる。そして、報酬に基づき、強化学習に従った更新写像によって関係規定データを更新することにより、車両の状態と行動変数との関係を車両の走行において適切な関係に設定することができる。したがって、車両の状態と行動変数との関係を車両の走行において適切な関係に設定する際、熟練者に要求される工数を削減できる。
【0007】
ところで、報酬を一義的に定める場合、強化学習によって学習された車両の状態と行動変数との関係がユーザの運転嗜好に沿わない懸念がある。そこで上記構成では、運転嗜好情報を取得し、運転嗜好情報に基づき報酬算出処理によって報酬を与えることにより、強化学習によって関係規定データをユーザの運転嗜好に沿ったものに更新することが可能となる。
【0008】
2.前記取得処理は、ユーザによる前記車両の挙動の評価を前記運転嗜好情報として取得する処理を含み、前記報酬算出処理は、前記取得処理によって低い評価を示す前記運転嗜好情報を取得する場合、前記車両の挙動に関する特性が同一であっても、当該評価の取得前とは異なる報酬を与える処理を含む上記1記載の車両用制御装置である。
【0009】
上記構成では、ユーザによる評価を運転嗜好情報として取得し、その評価結果が低い場合には、報酬を変える。そして、それ以降の更新処理によって更新される関係規定データを用いて操作処理を実行することにより、ユーザによる評価を好転させることが可能となる。
【0010】
3.前記運転嗜好情報は、前記車両の前後方向の加速度の履歴情報を含む上記1または2記載の車両用制御装置である。
車両の前後方向の加速度の履歴がユーザによるアクセル操作の仕方によって異なったものとなることから、同加速度の履歴には、ユーザの運転嗜好が反映されている。この点に鑑み、上記構成では、加速度の履歴を運転嗜好情報として取得することにより、ユーザが運転嗜好情報を入力しなくても、同情報を取得することができる。
【0011】
4.前記運転嗜好情報は、アクセル操作量の履歴情報を含む上記1〜3のいずれか1つに記載の車両用制御装置である。
ユーザのアクセル操作がユーザの運転嗜好に応じて異なることから、アクセル操作量の履歴情報には、運転嗜好情報が含まれている。この点に鑑み、上記構成では、アクセル操作量の履歴を運転嗜好情報として取得することにより、ユーザが運転嗜好情報を入力しなくても、同情報を取得することができる。
【0012】
5.前記取得処理は、前記ユーザの顔画像の解析結果を前記運転嗜好情報として取得する処理を含む上記1〜4のいずれか1つに記載の車両用制御装置である。
上記構成では、ユーザの顔画像の解析結果を運転嗜好情報として取得することにより、ユーザが運転嗜好情報を入力しなくても、同情報を取得することができる。
【0013】
6.前記車両の状態には、アクセル操作量の変化が含まれ、前記報酬算出処理は、前記アクセル操作量の変化に伴う前記車両の前後方向の加速度が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理を含む上記1〜5のいずれか1つに記載の車両用制御装置である。
【0014】
アクセル操作量の変化によって生じる車両の前後方向の加速度の大きさは、車両の走行性能に大いに関係することから、上記構成のように、加速度が基準を満たすか否かに応じた報酬を与えることにより、車両の状態に応じて走行性能を所望のものとする上で適切な行動変数の値を強化学習によって学習できる。
【0015】
特に、上記構成では、運転嗜好情報に応じて報酬の与え方を変えることにより、運転嗜好にとって適切な走行性能とするうえで適切な行動変数の値を強化学習によって学習できる。
【0016】
7.前記車両は、当該車両の推力生成装置として内燃機関を備えるものであり、前記電子機器には、前記内燃機関のスロットルバルブが含まれ、前記行動変数には、前記スロットルバルブの開口度に関する変数が含まれる上記6記載の車両用制御装置である。
【0017】
たとえば吸入空気量に応じて噴射量を調整する内燃機関等においては、スロットルバルブの開口度に応じて内燃機関のトルクや出力が大きく変化する。そのため、アクセル操作量に対する行動変数としてスロットルバルブの開口度に関する変数を用いることにより、車両の推進力を好適に調整することができる。
【0018】
8.上記1〜7のいずれか1つに記載の前記実行装置および前記記憶装置を備え、前記実行装置は、前記車両に搭載される第1実行装置と、車載装置とは別の第2実行装置と、を含み、前記第1実行装置は、少なくとも前記取得処理および前記操作処理を実行し、前記第2実行装置は、少なくとも前記更新処理を実行する車両用制御システムである。
【0019】
上記構成では、更新処理を第2実行装置によって実行することにより、更新処理を第1実行装置が実行する場合と比較して、第1実行装置の演算負荷を軽減できる。
なお、第2実行装置が車載装置とは別の装置であることは、第2実行装置が車載装置ではないことを意味する。
【0020】
9.上記8記載の第1実行装置を備える車両用制御装置である。
10.上記8記載の第2実行装置を備える車両用学習装置である。
【図面の簡単な説明】
【0021】
【図1】第1の実施形態にかかる制御装置および駆動系を示す図。
【図2】同実施形態にかかる制御装置が実行する処理の手順を示す流れ図。
【図3】同実施形態にかかる制御装置が実行する処理の一部の詳細な手順を示す流れ図。
【図4】同実施形態にかかる制御装置が実行する処理の手順を示す流れ図。
【図5】第2の実施形態にかかる制御装置が実行する処理の手順を示す流れ図。
【図6】第3の実施形態にかかる制御システムの構成を示す図。
【図7】(a)および(b)は、制御システムが実行する処理の手順を示す流れ図。
【発明を実施するための形態】
【0022】
<第1の実施形態>
以下、車両用制御装置の第1の実施形態について、図面を参照しつつ説明する。
図1に、本実施形態にかかる車両VC1の駆動系および制御装置の構成を示す。
【0023】
図1に示すように、内燃機関10の吸気通路12には、上流側から順にスロットルバルブ14および燃料噴射弁16が設けられており、吸気通路12に吸入された空気や燃料噴射弁16から噴射された燃料は、吸気バルブ18の開弁に伴って、シリンダ20およびピストン22によって区画される燃焼室24に流入する。燃焼室24内において、燃料と空気との混合気は、点火装置26の火花放電に伴って燃焼に供され、燃焼によって生じたエネルギは、ピストン22を介してクランク軸28の回転エネルギに変換される。燃焼に供された混合気は、排気バルブ30の開弁に伴って、排気として排気通路32に排出される。排気通路32には、排気を浄化する後処理装置としての触媒34が設けられている。
【0024】
クランク軸28には、ロックアップクラッチ42を備えたトルクコンバータ40を介して、変速装置50の入力軸52が機械的に連結可能とされている。変速装置50は、入力軸52の回転速度と出力軸54の回転速度との比である変速比を可変とする装置である。出力軸54には、駆動輪60が機械的に連結されている。
【0025】
制御装置70は、内燃機関10を制御対象とし、その制御量であるトルクや排気成分比率等を制御すべく、スロットルバルブ14、燃料噴射弁16および点火装置26等の内燃機関10の操作部を操作する。また、制御装置70は、トルクコンバータ40を制御対象とし、ロックアップクラッチ42の係合状態を制御すべくロックアップクラッチ42を操作する。また、制御装置70は、変速装置50を制御対象とし、その制御量としての変速比を制御すべく変速装置50を操作する。なお、図1には、スロットルバルブ14、燃料噴射弁16、点火装置26、ロックアップクラッチ42、および変速装置50のそれぞれの操作信号MS1〜MS5を記載している。
【0026】
制御装置70は、制御量の制御のために、エアフローメータ80によって検出される吸入空気量Gaや、スロットルセンサ82によって検出されるスロットルバルブ14の開口度(スロットル開口度TA)、クランク角センサ84の出力信号Scrを参照する。また、制御装置70は、アクセルセンサ88によって検出されるアクセルペダル86の踏み込み量(アクセル操作量PA)や、加速度センサ90によって検出される車両VC1の前後方向の加速度Gx、カメラ92によるユーザの顔画像、評価スイッチ94の操作によって定まる評価変数VVの値を参照する。ここで、評価スイッチ94は、車両VC1のユーザが、車両VC1の走行性能に関する3つの選択肢のうちの1つを選択するためのヒューマンマシンインターフェースである。ここで、3つの選択肢は、応答性について、「高すぎ」、「ちょうどよい」、「低すぎ」の3つである。
【0027】
制御装置70は、CPU72、ROM74、電気的に書き換え可能な不揮発性メモリ(記憶装置76)、および周辺回路78を備え、それらがローカルネットワーク79を介して通信可能とされている。ここで、周辺回路78は、内部の動作を規定するクロック信号を生成する回路や、電源回路、リセット回路等を含む。
【0028】
ROM74には、制御プログラム74aおよび学習プログラム74bが記憶されている。一方、記憶装置76には、アクセル操作量PAと、スロットル開口度TAの指令値(スロットル開口度指令値TA*)および点火装置26の遅角量aopとの関係を規定する関係規定データDRが記憶されている。ここで、遅角量aopは、予め定められた基準点火時期に対する遅角量であり、基準点火時期は、MBT点火時期とノック限界点とのうちの遅角側の時期である。MBT点火時期は、最大トルクの得られる点火時期(最大トルク点火時期)である。またノック限界点は、ノック限界の高い高オクタン価燃料の使用時に、想定される最良の条件下で、ノッキングを許容できるレベル以内に収めることのできる点火時期の進角限界値である。また、記憶装置76には、トルク出力写像データDTが記憶されている。トルク出力写像データDTによって規定されるトルク出力写像は、クランク軸28の回転速度NE、充填効率η、および点火時期aigを入力とし、トルクTrqを出力する写像である。
【0029】
図2に、本実施形態にかかる制御装置70が実行する処理の手順を示す。図2に示す処理は、ROM74に記憶された制御プログラム74aおよび学習プログラム74bをCPU72がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、先頭に「S」が付与された数字によって各処理のステップ番号を示す。
【0030】
図2に示す一連の処理において、CPU72は、まず、状態sとして、アクセル操作量PAの6個のサンプリング値「PA(1),PA(2),…PA(6)」からなる時系列データを取得する(S10)。ここで、時系列データを構成する各サンプリング値は、互いに異なるタイミングにおいてサンプリングされたものである。本実施形態では、一定のサンプリング周期でサンプリングされる場合の、互いに時系列的に隣り合う6個のサンプリング値によって時系列データを構成する。
【0031】
次にCPU72は、関係規定データDRが定める方策πに従い、S10の処理によって取得した状態sに応じたスロットル開口度指令値TA*および遅角量aopからなる行動aを設定する(S12)。
【0032】
本実施形態において、関係規定データDRは、行動価値関数Qおよび方策πを定めるデータである。本実施形態において、行動価値関数Qは、状態sおよび行動aの8次元の独立変数に応じた期待収益の値を示すテーブル型式の関数である。また、方策πは、状態sが与えられたときに、独立変数が与えられた状態sとなる行動価値関数Qのうち最大となる行動a(グリーディ行動)を優先的に選択しつつも、所定の確率で、それ以外の行動aを選択する規則を定める。
【0033】
詳しくは、本実施形態にかかる行動価値関数Qの独立変数がとりうる値の数は、状態sおよび行動aのとりうる値の全組み合わせのうちの一部が、人の知見等によって削減されたものである。すなわち、たとえばアクセル操作量PAの時系列データのうち隣接する2つのサンプリング値の1つがアクセル操作量PAの最小値となりもう1つが最大値となるようなことは、人によるアクセルペダル86の操作からは生じえないとして、行動価値関数Qが定義されていない。本実施形態では、人の知見等に基づく次元削減によって、行動価値関数Qを定義する状態sの取りうる値を、10の4乗個以下、より望ましくは10の3乗個以下に制限する。
【0034】
次に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によって算出される。
【0035】
次にCPU72は、内燃機関10のトルクTrq、内燃機関10に対するトルク指令値Trq*、および加速度Gxを取得する(S16)。ここで、CPU112は、トルクTrqを、回転速度NE、充填効率ηおよび点火時期をトルク出力写像に入力することによって算出する。また、CPU72は、トルク指令値Trq*を、アクセル操作量PAに応じて設定する。
【0036】
次にCPU72は、過渡フラグFが「1」であるか否かを判定する(S18)。過渡フラグFは、「1」である場合に過渡運転時であることを示し、「0」である場合に過渡運転時ではないことを示す。CPU72は、過渡フラグFが「0」であると判定する場合(S18:NO)、アクセル操作量PAの単位時間当たりの変化量ΔPAの絶対値が所定量ΔPAth以上であるか否かを判定する(S20)。ここで、変化量ΔPAは、たとえば、S20の処理の実行タイミングにおける最新のアクセル操作量PAと、同タイミングに対して単位時間だけ前におけるアクセル操作量PAとの差とすればよい。
【0037】
CPU72は、所定量ΔPAth以上であると判定する場合(S20:YES)、過渡フラグFに「1」を代入する(S22)。
これに対し、CPU72は、過渡フラグFが「1」であると判定する場合(S18:YES)、S22の処理の実行から所定期間が経過したか否かを判定する(S24)。ここで、所定期間は、アクセル操作量PAの単位時間当たりの変化量ΔPAの絶対値が所定量ΔPAthよりも小さい規定量以下となる状態が所定時間継続するまでの期間とする。CPU72は、所定期間が経過したと判定する場合(S24:YES)、過渡フラグFに「0」を代入する(S26)。
【0038】
CPU72は、S22,S26の処理が完了する場合、1つのエピソードが終了したとして、強化学習によって行動価値関数Qを更新する(S28)。
図3に、S28の処理の詳細を示す。
【0039】
図3に示す一連の処理において、CPU72は、直近に終了されたエピソード中のトルク指令値Trq*、トルクTrqおよび加速度Gxの3つのサンプリング値の組からなる時系列データと、状態sおよび行動aの時系列データと、を取得する(S30)。ここで、直近のエピソードは、S22の処理に続いてS30の処理がなされる場合には、過渡フラグFが継続して「0」となっていた期間であり、S26の処理に続いてS30の処理がなされる場合には、過渡フラグFが継続して「1」となっていた期間である。
【0040】
図3には、カッコの中の数字が異なるものが、異なるサンプリングタイミングにおける変数の値であることを示す。たとえば、トルク指令値Trq*(1)とトルク指令値Trq*(2)とは、サンプリングタイミングが互いに異なるものである。また、直近のエピソードに属する行動aの時系列データを、行動集合Ajとし、同エピソードに属する状態sの時系列データを、状態集合Sjと定義する。
【0041】
次にCPU72は、直近のエピソードに属する任意のトルクTrqとトルク指令値Trq*との差の絶対値が規定量ΔTrq以下である旨の条件(ア)と、加速度Gxが下限値GxL以上であって上限値GxH以下である旨の条件(イ)との論理積が真であるか否かを判定する(S32)。
【0042】
ここで、CPU72は、規定量ΔTrqを、エピソードの開始時におけるアクセル操作量PAの単位時間当たりの変化量ΔPAによって可変設定する。すなわち、CPU72は、エピソードの開始時におけるアクセル操作量PAの単位時間当たりの変化量ΔPAに基づき過渡時に関するエピソードであると判定する場合、定常時の場合と比較して、規定量ΔTrqを大きい値に設定する。
【0043】
また、CPU72は、下限値GxLを、エピソードの開始時におけるアクセル操作量PAの変化量ΔPAによって可変設定する。すなわち、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが正である場合には、定常時に関するエピソードの場合と比較して、下限値GxLを大きい値に設定する。また、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが負である場合には、定常時に関するエピソードの場合と比較して、下限値GxLを小さい値に設定する。
【0044】
また、CPU72は、上限値GxHを、エピソードの開始時におけるアクセル操作量PAの単位時間当たりの変化量ΔPAによって可変設定する。すなわち、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが正である場合には、定常時に関するエピソードの場合と比較して、上限値GxHを大きい値に設定する。また、CPU72は、過渡時に関するエピソードであって且つ変化量ΔPAが負である場合には、定常時に関するエピソードの場合と比較して、上限値GxHを小さい値に設定する。
【0045】
CPU72は、論理積が真であると判定する場合(S32:YES)、報酬rに「10」を代入する一方(S34)、偽であると判定する場合(S32:NO)、報酬rに「−10」を代入する(S36)。CPU72は、S34,S36の処理が完了する場合、図1に示した記憶装置76に記憶されている関係規定データDRを更新する。本実施形態では、εソフト方策オン型モンテカルロ法を用いる。
【0046】
すなわち、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の初期値とすればよい。
【0047】
次にCPU72は、上記S30の処理によって読み出した状態について、それぞれ、対応する行動価値関数Q(Sj,A)のうち、最大値となるときのスロットル開口度指令値TA*および遅角量aopの組である行動を、行動Aj*に代入する(S42)。ここで、「A」は、とりうる任意の行動を示す。なお、行動Aj*は、上記S30の処理によって読み出した状態の種類に応じて各別の値となるものであるが、ここでは、表記を簡素化して、同一の記号にて記載している。
【0048】
次に、CPU72は、上記S30の処理によって読み出した状態のそれぞれについて、対応する方策π(Aj|Sj)を更新する(S44)。すなわち、行動の総数を、「|A|」とすると、S42によって選択された行動Aj*の選択確率を、「1−ε+ε/|A|」とする。また、行動Aj*以外の「|A|−1」個の行動の選択確率を、それぞれ「ε/|A|」とする。S44の処理は、S40の処理によって更新された行動価値関数Qに基づく処理であることから、これにより、状態sと行動aとの関係を規定する関係規定データDRが、収益Rを増加させるように更新されることとなる。
【0049】
なお、CPU72は、S44の処理が完了する場合、図3に示す一連の処理を一旦終了する。
図2に戻り、CPU72は、S28の処理が完了する場合や、S20,S24の処理において否定判定する場合には、図2に示す一連の処理を一旦終了する。なお、S10〜S26の処理は、CPU72が制御プログラム74aを実行することにより実現され、S28の処理は、CPU72が学習プログラム74bを実行することにより実現される。また、車両VC1の出荷時における関係規定データDRは、テストベンチで車両の走行を模擬するなどしつつ図2に示した処理と同様の処理を実行することによってあらかじめ学習がなされたデータとする。
【0050】
図4に、S32の処理における基準を変更する処理の手順を示す。図4に示す処理は、ROM74に記憶された学習プログラム74bをCPU72がたとえば所定周期で繰り返し実行することにより実現される。
【0051】
図4に示す一連の処理において、CPU72は、まず、評価スイッチ94の操作による評価入力があるか否かを判定する(S50)。そしてCPU72は、評価入力があると判定する場合(S50:YES)、評価入力が「応答性が低すぎる」旨の入力であるか否かを判定する(S52)。そして、CPU72は、「応答性が低すぎる」旨の入力であると判定する場合(S52:YES)、過渡時における、規定量ΔTrqを縮小し、変化量ΔPAが正であるときの上限値GxHおよび下限値GxLを上昇させ、変化量ΔPAが負であるときの上限値GxHおよび下限値GxLを低下させる(S54)。
【0052】
これに対しCPU72は、S52の処理において否定判定する場合、評価入力が「応答性が高すぎる」旨の入力であるか否かを判定する(S56)。そして、CPU72は、「応答性が高すぎる」旨の入力であると判定する場合(S56:YES)、過渡時における、規定量ΔTrqを拡大し、変化量ΔPAが正であるときの上限値GxHおよび下限値GxLを低下させ、変化量ΔPAが負であるときの上限値GxHおよび下限値GxLを上昇させる(S58)。
【0053】
なお、CPU72は、S54,S58の処理が完了する場合や、S50,S56の処理において否定判定する場合には、図4に示す一連の処理を一旦終了する。
ここで、本実施形態の作用および効果について説明する。
【0054】
CPU72は、ユーザによるアクセルペダル86の操作に伴って、アクセル操作量PAの時系列データを取得し、方策πに従って、スロットル開口度指令値TA*および遅角量aopからなる行動aを設定する。ここでCPU72は、基本的には、関係規定データDRに規定されている行動価値関数Qに基づき期待収益を最大とする行動aを選択する。ただし、CPU72は、所定の割合εで、期待収益を最大化する行動a以外の行動を選択することによって、期待収益を最大化する行動aの探索を行う。これにより、ユーザによる車両VC1の運転に伴って、関係規定データDRを強化学習によって更新できる。これにより、アクセル操作量PAに応じたスロットル開口度指令値TA*および遅角量aopを、熟練者による工数を過度に大きくすることなく車両VC1の走行において適切な値に設定することができる。
【0055】
特に本実施形態では、車両の走行性能について、ユーザが評価スイッチ94を操作することによって評価することができる。そして、報酬rを与えるうえでの、トルクTrqとトルク指令値Trq*との差の絶対値に関する基準や、加速度Gxに関する基準を、ユーザによる評価結果に応じて変更する。これにより、トルクTrqとトルク指令値Trq*との差の絶対値に対する基準や、加速度Gxに関する基準を、ユーザの運転嗜好にとって適切なものとすることができる。したがって、ユーザの運転に伴って強化学習が進行するにつれて、関係規定データDRをユーザの運転嗜好にとって適切なデータに更新できる。
【0056】
以上説明した本実施形態によれば、さらに以下に記載する作用効果が得られる。
(1)行動価値関数Qの独立変数にアクセル操作量PAの時系列データを含めた。これにより、アクセル操作量PAに関して単一のサンプリング値のみを独立変数とする場合と比較して、アクセル操作量PAの様々な変化に対して行動aの値をきめ細かく調整できる。
【0057】
(2)行動価値関数Qの独立変数に、スロットル開口度指令値TA*自体を含めた。これにより、たとえば、スロットル開口度指令値TA*の挙動をモデル化したモデル式のパラメータ等をスロットル開口度に関する独立変数とする場合と比較して、強化学習による探索の自由度を高めることが容易である。
【0058】
<第2の実施形態>
以下、第2の実施形態について、第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0059】
図5に、本実施形態にかかる、S32の処理における基準を変更する処理の手順を示す。図5に示す処理は、ROM74に記憶された学習プログラム74bをCPU72がたとえば所定周期で繰り返し実行することにより実現される。なお、図5において、図4に示した処理に対応する処理については、便宜上、同一のステップ番号を付与する。
【0060】
図5に示す一連の処理において、CPU72は、まず、アクセル操作量PAおよび加速度Gxを取得する(S60)。次にCPU72は、アクセル操作量PAの単位時間当たりの変化量ΔPAが所定量ΔPAth以上となってから所定期間が経過したか否かを判定する(S62)。ここで、所定期間は、アクセル操作量PAの単位時間当たりの変化量ΔPAが小さくなってから所定時間が経過するまでの期間とする。
【0061】
CPU72は、所定期間が経過したと判定する場合(S62:YES)、顔画像データを取得する(S64)。そして、CPU72は、顔画像データを解析することによって、ユーザが運転性能に不快感を示しているか否かを判定し、その結果を記憶装置76に記憶する(S66)。CPU72は、S66の処理が完了する場合や、S62の処理において否定判定する場合には、トリップの終了時であるか否かを判定する(S68)。ここで、トリップとは、車両の走行許可信号がオン状態である1回の期間のことである。本実施形態において、走行許可信号は、イグニッション信号に相当する。
【0062】
CPU72は、トリップの終了時であると判定する場合(S68:YES)、そのトリップにおけるS60の処理によって取得したアクセル操作量PAおよび加速度Gxの時系列データを読み出す(S70)。そして、CPU72は、以下の条件(カ)〜条件(ク)の論理積が真であるか否かを判定する(S72)。
【0063】
条件(カ):アクセル操作量PAの最大値が規定値PAH以上である旨の条件である。ここで、規定値PAHは、一般的なユーザによるアクセルペダル86の操作によって生じるアクセル操作量PAの想定最大値よりも大きい値に設定されている。
【0064】
条件(キ):車両VC1の加速度Gxの最大値が規定値GxHH以上である旨の条件である。ここで、規定値GxHHは、一般的なユーザによるアクセルペダル86の操作によって生じる加速度Gxの想定最大値よりも大きい値に設定されている。
【0065】
条件(ク):S66の処理による顔画像データの解析結果が、運転性能に不快感を示すものである旨の条件である。
CPU72は、条件(カ)〜条件(ク)の論理積が真であると判定する場合(S72:YES)、S54の処理を実行する。すなわち、条件(カ)および条件(キ)の論理積が真である場合、ユーザがアクセルペダル86を強く踏んで車両VC1を急加速させようとしている可能性があり、条件(ク)が成立するのであれば、車両VC1の応答性に不満を抱いているためにアクセルペダル86を一般的なユーザと比較して強く踏んでいる可能性がある。そこで、車両VC1の加速性能を向上させることができるように、報酬を与える条件を変更する。
【0066】
これに対し、CPU72は、条件(カ)〜条件(ク)の論理積が偽であると判定する場合(S72:NO)、下記の条件(サ)、条件(シ)および条件(ク)の論理積が真であるか否かを判定する(S74)。
【0067】
条件(サ):アクセル操作量PAの最大値が規定値PAL以下である旨の条件である。ここで、規定値PALは、一般的なユーザによるアクセルペダル86の操作によって生じるアクセル操作量PAの想定最大値よりも小さい値に設定されている。
【0068】
条件(シ):車両VC1の加速度Gxの最大値が規定値GxLL以下である旨の条件である。ここで、規定値GxLLは、一般的なユーザによるアクセルペダル86の操作によって生じる加速度Gxの想定最大値よりも小さい値に設定されている。
【0069】
CPU72は、条件(サ)、条件(シ)および条件(ク)の論理積が真であると判定する場合(S74:YES)、S58の処理を実行する。すなわち、条件(サ)および条件(シ)の論理積が真である場合、一般的なユーザと比較して車両VC1のユーザがアクセルペダル86を軽く踏む傾向があり、条件(ク)が成立するのであれば、それにもかかわらず、車両VC1に加わる加速度が大きすぎて不快に感じている可能性がある。そこで、車両VC1の加速時にユーザが体感する加速度をより小さなものとすることができるように、報酬を与える条件を変更する。
【0070】
なお、CPU72は、S54,S58の処理が完了する場合や、S68,S74の処理において否定判定する場合には、図5に示す一連の処理を一旦終了する。
このように、本実施形態では、ユーザが走行性能の評価を入力する操作をすることなく、ユーザによる車両VC1の運転中の情報から運転嗜好情報を取得し、これに応じて報酬を与える条件を変更できる。
【0071】
<第3の実施形態>
以下、第3の実施形態について、第1の実施形態との相違点を中心に図面を参照しつつ説明する。
【0072】
本実施形態では、関係規定データDRの更新を、車両VC1の外で実行する。
図6に、本実施形態において、強化学習を実行する制御システムの構成を示す。なお、図6において、図1に示した部材に対応する部材については、便宜上、同一の符号を付している。
【0073】
図6に示す車両VC1内の制御装置70におけるROM74は、制御プログラム74aを記憶しているものの、学習プログラム74bを記憶していない。また、制御装置70は、通信機77を備えている。通信機77は車両VC1の外部のネットワーク100を介してデータ解析センター110と通信するための機器である。
【0074】
データ解析センター110は、複数の車両VC1,VC2,…から送信されるデータを解析する。データ解析センター110は、CPU112、ROM114、および電気的に書き換え可能な不揮発性メモリ(記憶装置116)、周辺回路118および通信機117を備えており、それらがローカルネットワーク119によって通信可能とされるものである。ROM114には、学習プログラム74bが記憶されており、記憶装置116には、関係規定データDRが記憶されている。
【0075】
図7に、本実施形態にかかる強化学習の処理手順を示す。図7(a)に示す処理は、図6に示すROM74に記憶された制御プログラム74aをCPU72が実行することにより実現される。また、図7(b)に示す処理は、ROM114に記憶されている学習プログラム74bをCPU112が実行することにより実現される。なお、図7において図3および図4に示した処理に対応する処理については、便宜上同一のステップ番号を付している。以下では、強化学習の時系列に沿って、図7に示す処理を説明する。
【0076】
図7(a)に示す一連の処理において、CPU72は、S10〜S26の処理を実行する。そして、CPU72は、S22,S26の処理を完了する場合、通信機77を操作することによって、学習処理に必要なデータを送信する(S80)。ここで、送信対象とされるデータは、S22,S26の処理の実行直前に終了したエピソードにおけるトルク指令値Trq*、トルクTrqおよび加速度Gxの時系列データや、状態集合Sjおよび行動集合Ajを含む。また、CPU72は、評価スイッチ94の操作による評価入力があるか否かを判定し(S82)、入力があると判定する場合(S82:YES)、通信機77を操作して、評価結果に関するデータを送信する(S84)。
【0077】
これに対し、図7(b)に示すように、CPU112は、S80の処理によって送信されたデータを受信し(S100)、S84の処理による評価結果データの送信があるか否かを判定する(S102)。そして、CPU112は、評価結果データの送信があると判定する場合(S102:YES)、評価結果を受信し(S104)、S52〜S58の処理を実行する。
【0078】
CPU112は、S54,S58の処理を完了する場合や、S56,S102の処理において否定判定する場合には、S100の処理によって受信したデータに基づき関係規定データDRを更新する(S28)。そしてCPU112は、関係規定データDRの更新回数が所定回数以上であるか否かを判定し(S106)、所定回数以上であると判定する場合(S106:YES)、通信機117を操作して、S100の処理によって受信したデータを送信した車両VC1に関係規定データDRを送信する(S108)。なお、CPU112は、S108の処理を完了する場合や、S106の処理において否定判定する場合には、図7(b)に示す一連の処理を一旦終了する。
【0079】
これに対し、図7(a)に示すように、CPU72は、更新データがあるか否かを判定し(S86)、あると判定する場合(S86:YES)、更新された関係規定データDRを受信する(S88)。そしてCPUは、記憶装置76に記憶されている関係規定データDRを、受信した関係規定データDRに書き換える(S90)。なお、CPU72は、S90の処理を完了する場合や、S20,S24,S86の処理において否定判定する場合には、図7(a)に示す一連の処理を一旦終了する。
【0080】
このように、本実施形態によれば、関係規定データDRの更新処理を車両VC1の外部で行うことから、制御装置70の演算負荷を軽減できる。
<対応関係>
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。
【0081】
[1]実行装置は、CPU72およびROM74に対応し、記憶装置は、記憶装置76に対応する。取得処理は、S10,S16,S50,S60,S66の処理に対応し、操作処理は、S14の処理に対応し、報酬算出処理は、S32〜S36の処理に対応し、更新処理は、S38〜S44の処理に対応する。[2]図4の処理に対応する。[3〜5]図5の処理に対応する。[6]加速度の基準は、下限値GxLおよび上限値GxHによって規定される範囲に対応する。[7]スロットルバルブの開口度に関する変数は、スロットル開口度指令値TA*に対応する。[8〜10]第1実行装置は、CPU72およびROM74に対応し、第2実行装置は、CPU112およびROM114に対応する。
【0082】
<その他の実施形態>
なお、本実施形態は、以下のように変更して実施することができる。本実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【0083】
・「運転嗜好情報について」
上記実施形態では、評価スイッチ94の操作によって、ユーザによる車両の挙動の評価を取得したが、これに限らない。たとえば、車両VC1にマイクを備え、加速時等に、ユーザが「遅い」と言った場合に、加速感について低評価である旨の情報を取得してもよい。
【0084】
図5においては、運転嗜好情報として、アクセル操作量PAの最大値、加速度Gxの最大値、および顔画像データの解析結果の3つを用いたが、これに限らない。それら3つの情報に関しては、それらのうちの2つのみ、または1つのみを用いてもよい。また、加速度Gxの最小値を用いてもよい。これにより減速時の加速度Gxの絶対値の大きさを、運転嗜好情報とすることができる。
【0085】
・「行動変数について」
上記実施形態では、行動変数としてのスロットルバルブの開口度に関する変数として、スロットル開口度指令値TA*を例示したが、これに限らない。たとえば、アクセル操作量PAに対するスロットル開口度指令値TA*の応答性を、無駄時間および2次遅れフィルタにて表現し、無駄時間と、2次遅れフィルタを規定する2つの変数との合計3つの変数を、スロットルバルブの開口度に関する変数としてもよい。ただし、その場合、状態変数は、アクセル操作量PAの時系列データに代えて、アクセル操作量PAの単位時間当たりの変化量とすることが望ましい。
【0086】
上記実施形態では、行動変数としての点火時期に関する変数として、遅角量aopを例示したが、これに限らない。たとえば、KCSによる補正対象とされる点火時期自体であってもよい。
【0087】
上記実施形態では、行動変数として、スロットルバルブの開口度に関する変数および点火時期に関する変数を例示したが、これに限らない。たとえば、スロットルバルブの開口度に関する変数および点火時期に関する変数に加えて、燃料噴射量を用いてもよい。また、それら3つに関しては、行動変数としてスロットルバルブの開口度に関する変数および燃料噴射量のみを採用したり、点火時期に関する変数および燃料噴射量のみを採用したりしてもよい。さらに、それら3つに関しては、行動変数としてそれらのうちの1つのみを採用してもよい。
【0088】
また、「内燃機関について」の欄に記載したように、圧縮着火式の内燃機関の場合、スロットルバルブの開口度に関する変数に代えて噴射量に関する変数を用い、点火時期に関する変数に代えて噴射時期に関する変数を用いればよい。なお、噴射時期に関する変数に加えて、1燃焼サイクルにおける噴射回数に関する変数や、1燃焼サイクルにおける1つの気筒のための時系列的に隣接する2つの燃料噴射のうちの一方の終了タイミングと他方の開始タイミングとの間の時間間隔に関する変数を加えることが望ましい。
【0089】
また、たとえば変速装置50が有段変速装置の場合、クラッチの係合状態を油圧によって調整するためのソレノイドバルブの電流値等を行動変数としてもよい。
たとえば、下記「車両について」の欄に記載したように車両としてハイブリッド車や、電気自動車、燃料電池車を採用する場合、回転電機のトルクや出力を行動変数としてもよい。またたとえば、内燃機関のクランク軸の回転動力によって回転するコンプレッサを備えた車載空調装置を備える場合、コンプレッサの負荷トルクを行動変数に含めてもよい。また、電動式の車載空調装置を備える場合、空調装置の消費電力を行動変数に含めてもよい。
【0090】
・「状態について」
上記実施形態では、アクセル操作量PAの時系列データを、等間隔でサンプリングされた6個の値からなるデータとしたが、これに限らない。互いに異なるサンプリングタイミングにおける2個以上のサンプリング値からなるデータであればよく、この際、3個以上のサンプリング値からなるデータや、サンプリング間隔が等間隔であるデータであることがより望ましい。
【0091】
アクセル操作量に関する状態変数としては、アクセル操作量PAの時系列データに限らず、たとえば「行動変数について」の欄に記載したように、アクセル操作量PAの単位時間当たりの変化量等であってもよい。
【0092】
たとえば「行動変数について」の欄に記載したように、ソレノイドバルブの電流値を行動変数とする場合、状態に、変速装置の入力軸52の回転速度や出力軸54の回転速度、ソレノイドバルブによって調整される油圧を含めればよい。またたとえば「行動変数について」の欄に記載したように、回転電機のトルクや出力を行動変数とする場合、状態に、バッテリの充電率や温度を含めればよい。またたとえば「行動変数について」の欄に記載したように、コンプレッサの負荷トルクや空調装置の消費電力を行動に含める場合、状態に、車室内の温度を含めればよい。
【0093】
・「テーブル形式のデータの次元削減について」
テーブル形式のデータの次元削減手法としては、上記実施形態において例示したものに限らない。たとえばアクセル操作量PAが最大値となることはまれであることから、アクセル操作量PAが規定量以上となる状態については行動価値関数Qを定義せず、アクセル操作量PAが規定量以上となる場合のスロットル開口度指令値TA*等は、別途適合してもよい。またたとえば、行動のとりうる値からスロットル開口度指令値TA*が規定値以上となるものを除くなどして、次元削減をしてもよい。
【0094】
もっとも、次元削減をすることは必須ではない。たとえば、第3の実施形態において複数の車両からのデータに基づく強化学習を行って且つCPU72の演算能力や記憶装置76の記憶容量が十分であるのであれば、車両の出荷前には次元削減をした一部のみについて行動価値関数を学習しておくものの、出荷後には、全ての行動を探索によって実行可能としてもよい。これにより、出荷後には出荷前と比較して十分な学習用のデータを確保できることに鑑み、探索としてとりうる行動の数を増やして、より適切な行動を見出すことが可能となる。
【0095】
・「関係規定データについて」
上記実施形態では、行動価値関数Qを、テーブル形式の関数としたが、これに限らない。たとえば、関数近似器を用いてもよい。
【0096】
たとえば、行動価値関数Qを用いる代わりに、方策πを、状態sおよび行動aを独立変数とし、行動aをとる確率を従属変数とする関数近似器にて表現し、関数近似器を定めるパラメータを、報酬rに応じて更新してもよい。
【0097】
・「操作処理について」
たとえば「関係規定データについて」の欄に記載したように、行動価値関数を関数近似器とする場合、上記実施形態におけるテーブル型式の関数の独立変数となる行動についての離散的な値の組の全てについて、状態sとともに行動価値関数Qに入力することによって、行動価値関数Qを最大化する行動aを選択すればよい。
【0098】
また、たとえば「関係規定データについて」の欄に記載したように、方策πを、状態sおよび行動aを独立変数とし、行動aをとる確率を従属変数とする関数近似器とする場合、方策πによって示される確率に基づき行動aを選択すればよい。
【0099】
・「更新写像について」
S38〜S44の処理においては、εソフト方策オン型モンテカルロ法によるものを例示したが、これに限らない。たとえば、方策オフ型モンテカルロ法によるものであってもよい。もっとも、モンテカルロ法にも限らず、たとえば、方策オフ型TD法を用いたり、またたとえばSARSA法のように方策オン型TD法を用いたり、またたとえば、方策オン型の学習として適格度トレース法を用いたりしてもよい。
【0100】
また、たとえば「関係規定データについて」の欄に記載したように、方策πを関数近似器を用いて表現し、これを報酬rに基づき直接更新する場合には、方策勾配法等を用いて更新写像を構成すればよい。
【0101】
また、行動価値関数Qと方策πとのうちのいずれか一方のみを、報酬rによる直接の更新対象とするものに限らない。たとえば、アクター・クリティック法のように、行動価値関数Qおよび方策πをそれぞれ更新してもよい。また、アクター・クリティック法においては、これに限らず、たとえば行動価値関数Qに代えて価値関数Vを更新対象としてもよい。
【0102】
なお、方策πを定める「ε」については、固定値に限らず、学習の進行度合いに応じてあらかじめ定められた規則に応じて変更してもよい。
・「報酬算出処理について」
図3の処理では、条件(ア)および条件(イ)の論理積が真であるか否かに応じて報酬を与えたが、これに限らない。たとえば、条件(ア)を満たすか否かに応じて報酬を与える処理と、条件(イ)を満たすか否かに応じて報酬を与える処理とを実行してもよい。また、たとえば、条件(ア)を満たすか否かに応じて報酬を与える処理と、条件(イ)を満たすか否かに応じて報酬を与える処理との2つの処理に関しては、それらのうちのいずれか1つの処理のみを実行してもよい。
【0103】
また、たとえば条件(ア)を満たす場合に一律同じ報酬を与える代わりに、トルクTrqとトルク指令値Trq*との差の絶対値が小さい場合に大きい場合よりもより大きい報酬を与える処理としてもよい。またたとえば、条件(ア)を満たさない場合に一律同じ報酬を与える代わりに、トルクTrqとトルク指令値Trq*との差の絶対値が大きい場合に小さい場合よりもより小さい報酬を与える処理としてもよい。
【0104】
また、たとえば条件(イ)を満たす場合に一律同じ報酬を与える代わりに、加速度Gxの大きさに応じて報酬の大きさを可変とする処理としてもよい。またたとえば、条件(イ)を満たさない場合に一律同じ報酬を与える代わりに、加速度Gxの大きさに応じて報酬の大きさを可変とする処理としてもよい。
【0105】
また、たとえば「行動変数について」の欄に記載したように、変速装置50のソレノイドバルブの電流値を行動変数とする場合、たとえば報酬算出処理に以下の(a)〜(c)の3つの処理のうちの少なくとも1つの処理を含めればよい。
【0106】
(a)変速装置による変速比の切り替えに要する時間が所定時間以内である場合に所定時間を超える場合よりも大きい報酬を与える処理である。
(b)変速装置の入力軸52の回転速度の変化速度の絶対値が入力側所定値以下である場合に入力側所定値を超える場合よりも大きい報酬を与える処理である。
【0107】
(c)変速装置の出力軸54の回転速度の変化速度の絶対値が出力側所定値以下である場合に出力側所定値を超える場合よりも大きい報酬を与える処理である。
こうした場合において、たとえば評価スイッチ94の操作によって応答性が低すぎる旨の評価が入力される場合には、上記所定時間をより短く設定する一方、入力側所定値や出力側所定値についてはより大きい値に設定すればよい。
【0108】
また、たとえば「行動変数について」の欄に記載したように、回転電機のトルクや出力を行動変数とする場合、バッテリの充電率が所定範囲内にある場合にない場合よりも大きい報酬を与える処理や、バッテリの温度が所定範囲内にある場合にない場合よりも大きい報酬を与える処理を含めてもよい。この場合、運転嗜好情報によって変更するのはあくまでも上記条件(イ)等としてもよいが、条件(イ)等を過渡運転時において満たしやすくすべく、所定範囲を運転嗜好情報に応じて可変としてもよい。
【0109】
また、たとえば「行動変数について」の欄に記載したように、コンプレッサの負荷トルクや空調装置の消費電力を行動変数に含める場合、車室内の温度が所定範囲内にある場合にない場合よりも大きい報酬を与える処理を加えてもよい。この場合、運転嗜好情報によって変更するのはあくまでも上記条件(イ)等としてもよいが、条件(イ)等を過渡運転時において満たしやすくすべく、所定範囲を運転嗜好情報に応じて可変としてもよい。
【0110】
・「取得処理について」
上記実施形態では、ユーザによる走行性能の評価結果を、評価スイッチ94の出力信号に基づく評価変数VVを取得することによって取得したがこれに限らない。たとえば、評価スイッチ94に代えて、音声指示を感知する装置を備え、その感知結果を評価変数VVとして取得してもよい。
【0111】
・「車両用制御システムについて」
図7に示した例では、方策πに基づく行動を決定する処理(S12の処理)を、車両側で実行したが、これに限らない。たとえば、車両VC1からS10の処理によって取得したデータを送信することとし、データ解析センター110にて送信されてデータを用いて行動aを決定し、決定した行動を車両VC1に送信してもよい。
【0112】
車両用制御システムとしては、制御装置70およびデータ解析センター110によって構成されるものに限らない。たとえば、データ解析センター110に代えて、ユーザの携帯端末を用いてもよい。また、制御装置70およびデータ解析センター110と携帯端末とによって車両用制御システムを構成してもよい。これは、たとえばS12の処理を携帯端末によって実行することにより実現できる。
【0113】
・「実行装置について」
実行装置としては、CPU72(112)とROM74(114)とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理するたとえばASIC等の専用のハードウェア回路を備えてもよい。すなわち、実行装置は、以下の(a)〜(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するROM等のプログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
【0114】
・「記憶装置について」
上記実施形態では、関係規定データDRが記憶される記憶装置と、学習プログラム74bや制御プログラム74aが記憶される記憶装置(ROM74,114)とを別の記憶装置としたが、これに限らない。
【0115】
・「内燃機関について」
内燃機関としては、燃料噴射弁として吸気通路12に燃料を噴射するポート噴射弁を備えるものに限らず、燃焼室24に燃料を直接噴射する筒内噴射弁を備えるものであってもよく、またたとえば、ポート噴射弁および筒内噴射弁の双方を備えるものであってもよい。
【0116】
内燃機関としては、火花点火式内燃機関に限らず、たとえば燃料として軽油などを用いる圧縮着火式内燃機関等であってもよい。
・「車両について」
車両としては、推力生成装置が内燃機関のみである車両に限らず、たとえば内燃機関と回転電機とを備えるいわゆるハイブリッド車両であってもよい。またたとえば、推力生成装置として、内燃機関を備えることなく、回転電機を備えるいわゆる電気自動車や燃料電池車あってもよい。
【符号の説明】
【0117】
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…学習プログラム、76…記憶装置、77…通信機、78…周辺回路、79…ローカルネットワーク、80…エアフローメータ、82…スロットルセンサ、84…クランク角センサ、86…アクセルペダル、88…アクセルセンサ、90…加速度センサ、92…カメラ、94…評価スイッチ、100…ネットワーク、110…データ解析センター、112…CPU、114…ROM、114a…学習プログラム、116…記憶装置、117…通信機、118…周辺回路、119…ローカルネットワーク。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【手続補正書】
【提出日】20200330
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の挙動に関する特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含む車両用制御装置。
【請求項2】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の挙動に関する特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含み、
前記取得処理は、ユーザによる前記車両の挙動の評価を前記運転嗜好情報として取得する処理を含み、
前記報酬算出処理は、前記取得処理によって低い評価を示す前記運転嗜好情報を取得する場合、前記車両の挙動に関する特性が同一であっても、当該評価の取得前とは異なる報酬を与える処理を含む車両用制御装置。
【請求項3】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の挙動に関する特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含み、
前記運転嗜好情報は、前記車両の前後方向の加速度の履歴情報を含む車両用制御装置。
【請求項4】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の挙動に関する特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含み、
前記運転嗜好情報は、アクセル操作量の履歴情報を含む車両用制御装置。
【請求項5】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の挙動に関する特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含み、
前記取得処理は、前記ユーザの顔画像の解析結果を前記運転嗜好情報として取得する処理を含む車両用制御装置。
【請求項6】
実行装置および記憶装置を備え、
前記記憶装置には、車両の状態と前記車両内の電子機器の操作に関する変数である行動変数との関係を規定する関係規定データが記憶されており、
前記実行装置は、
前記車両の状態を検出するセンサの検出値、およびユーザの運転嗜好に関する情報である運転嗜好情報を取得する取得処理と、
前記取得処理によって取得された前記検出値と前記関係規定データとによって定まる前記行動変数の値に基づき前記電子機器を操作する操作処理と、
前記取得処理によって取得された前記検出値に基づき、前記車両の挙動に関する特性が基準を満たす場合に満たさない場合よりも大きい報酬を与える報酬算出処理と、
前記取得処理によって取得された前記検出値に基づく前記車両の状態、前記電子機器の操作に用いられた前記行動変数の値、および該操作に対応する前記報酬を予め定められた更新写像への入力とし、前記関係規定データを更新する更新処理と、
を実行し、
前記更新写像は、前記関係規定データに従って前記電子機器が操作される場合の前記報酬についての期待収益を増加させるように更新された前記関係規定データを出力するものであり、
前記報酬算出処理は、前記車両の挙動に関する特性が同一の基準を満たす場合であっても、前記運転嗜好情報が異なる場合に異なる報酬を与える処理を含み、
前記車両の状態には、アクセル操作量の変化が含まれ、
前記報酬算出処理は、前記アクセル操作量の変化に伴う前記車両の前後方向の加速度が基準を満たす場合に満たさない場合よりも大きい報酬を与える処理であって且つ前記運転嗜好情報が異なる場合に同一の報酬を与えるときの前記基準を変更する処理を含む車両用制御装置。
【請求項7】
前記車両は、当該車両の推力生成装置として内燃機関を備えるものであり、
前記電子機器には、前記内燃機関のスロットルバルブが含まれ、
前記行動変数には、前記スロットルバルブの開口度に関する変数が含まれる請求項6記載の車両用制御装置。
【請求項8】
請求項1〜7のいずれか1項に記載の車両用制御装置における前記実行装置および前記記憶装置を備え、
前記実行装置は、前記車両に搭載される第1実行装置と、前記車両に備えられていない第2実行装置と、を含み、
前記第1実行装置は、少なくとも前記取得処理および前記操作処理を実行し、
前記第2実行装置は、少なくとも前記更新処理を実行する車両用制御システム。
【請求項9】
請求項8記載の車両用制御システムにおける前記第1実行装置を備える車両用制御装置。
【請求項10】
請求項8記載の車両用制御システムにおける前記第2実行装置を備える車両用学習装置。