(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024110752
(43)【公開日】2024-08-16
(54)【発明の名称】強化学習装置
(51)【国際特許分類】
G06N 20/00 20190101AFI20240808BHJP
G06N 3/092 20230101ALI20240808BHJP
B60W 40/02 20060101ALI20240808BHJP
【FI】
G06N20/00
G06N3/092
B60W40/02
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023015524
(22)【出願日】2023-02-03
(71)【出願人】
【識別番号】598088871
【氏名又は名称】株式会社NTTデータオートモビリジェンス研究所
(74)【代理人】
【識別番号】100097205
【弁理士】
【氏名又は名称】樋口 正樹
(72)【発明者】
【氏名】渡辺 政彦
(72)【発明者】
【氏名】泉名 克郎
(72)【発明者】
【氏名】謝 薇▲ふぇん▼
【テーマコード(参考)】
3D241
【Fターム(参考)】
3D241BA49
3D241CE05
3D241CE08
3D241DC28Z
(57)【要約】
【課題】車両の走行態様について、簡素で、効率的な強化学習が可能な強化学習装置を提供することである。
【解決手段】対象車両の走行態様についての強化学習を行う強化学習装置であって、移動体をその属性に応じて区別して表した第2種記号がシナリオに従って抽象化道路地図における道路内を移動する環境下において対象車両を表す第1種記号が抽象化道路地図の道路内を移動するシミュレーション画像を用い(S11~S15)、第1種記号がエラー状態となったときに(S14)、第1種記号がチェックポイントに位置する状態のシミュレーション画像に復帰させて(S18、S19)、強化学習に係る処理を継続させる。
【選択図】
図5
【特許請求の範囲】
【請求項1】
対象車両の走行態様についての強化学習を行う強化学習装置であって、
道路を含むシミュレーション領域を平面的に抽象化して表す抽象化道路地図、前記シミュレーション領域の道路を走行する対象車両を表して前記抽象化道路地図における道路内に配置される第1種記号、及び前記シミュレーション領域の道路を移動する移動体をその属性に応じて区別して表して前記抽象化道路地図における道路内に配置される第2種記号を含むシミュレーション画像を表す画像情報を生成する画像処理部と、
シナリオに従って前記第2種記号が前記抽象化道路地図の道路内を移動する環境下において前記第1種記号が前記抽象化道路地図内で移動するように前記画像処理部にて生成される前記画像情報を制御するシミュレーション制御部と、
前記シミュレーション制御部によって制御される前記画像情報にて表されるシミュレーション画像において、予め定められた移動目標が達成されるように、前記第1種記号の移動態様を方策に基づいて決める制御器と、
前記シミュレーション画像における前記第2種記号の移動環境下において前記制御器により決められた前記第1種記号の移動態様に基づいて前記シミュレーション画像において前記第1種記号を移動させる毎に、所定の強化学習アルゴリズムに従って、前記シミュレーション画像における前記第2種記号の移動環境下における前記第1種記号の移動態様を評価し、その評価結果に基づいて前記制御器における前記方策を更新させる学習処理部と、
前記第1種記号の前記シミュレーション画像における前記抽象化道路地図の道路上の位置が予め定められたチェックポイントであるか否かを判定するチェックポイント判定部と、
前記第1種記号の位置が前記チェックポイントであると前記チェックポイント判定部によって判定されたときに、前記チェックポイントに位置する前記第1種記号を含む前記シミュレーション画像の状態を表すチェックポイント状態情報を記憶部に記憶させる状態保存制御部と、
前記シミュレーション画像において前記第1種記号が予め定められたエラー状態にあるか否かを判定するエラー判定部と、
前記第1種記号が前記エラー状態にあると前記エラー判定部にて判定されたときに、前記シミュレーション画像が前記記憶部に保存されたチェックポイント状態情報にて表される状態に復帰するように、前記画像処理部にて生成される前記画像情報を制御する状態復帰制御部と、を有する強化学習装置。
【請求項2】
前記画像情報にて表される前記シミュレーション画像は、前記シミュレーション領域において時間的に状態が変化する物をその状態に応じて区別するように表して前記抽象化道路地図内に固定的に配置された第3種記号を含み、
前記シミュレーション制御部は、シナリオに従って前記第3種記号が変化するように前記画像情報を制御する、請求項1記載の強化学習装置。
【請求項3】
前記シミュレーション画像において移動する前記第1種記号の移動態様の履歴を表す移動履歴情報を取得する移動履歴取得部と、
前記シミュレーション画像が前記チェックポイント状態情報にて表される状態に復帰した後、前記移動履歴情報にて表される前記第1種記号の移動態様に基づいて状態復帰後の前記シミュレーション画像における前記第1種記号の移動態様を決める移動態様制御部と、を有する、請求項1または2記載の強化学習装置。
【請求項4】
前記移動態様制御部は、前記移動履歴情報にて表される前記第1種記号の移動態様を修正して新たな移動態様を生成する移動態様修正部を含む、請求項3記載の強化学習装置。
【請求項5】
前記第1種記号及び前記第2種記号の少なくともいずれかは、文字である、請求項1または2記載の強化学習装置。
【請求項6】
前記第1種記号及び前記第2種記号の少なくともいずれかは、図形マークである、請求項1または2記載の強化学習装置。
【請求項7】
前記第3種記号は、文字または図形マークのいずれかである、請求項2記載の強化学習装置。
【請求項8】
前記画像処理部にて生成される前記画像情報にて表される前記シミュレーション画像は、複数のマス目で構成されるグリッド上に形成され、
前記第1記号の移動態様は、前記グリッドのマス目を単位とした動きとして表され、
前記シミュレーション制御部は、前記第1種記号と前記抽象化道路地図とが相対的に前記グリッドのマス目を単位として移動するように前記画像情報を制御する、請求項1または2記載の強化学習装置。
【請求項9】
前記シミュレーション制御部は、固定された前記第1種記号に対して前記抽象化道路地図が前記グリッドのマス目を単位として移動するように前記画像情報を制御するものであって、
前記グリッドは、前記第1種記号を含む所定領域の角マス目が表す実距離より前記所定領域より前記第1種記号から離れた領域の各マス目が表す実距離が大きくなるように構成された、請求項8記載の強化学習装置。
【請求項10】
前記画像処理部にて生成される前記画像情報にて表される前記シミュレーション画像は、複数のマス目で構成されるグリッド上に形成され、
前記第1記号の移動態様は、前記グリッドのマス目を単位とした動きとして表され、
前記シミュレーション制御部は、前記第1種記号と前記抽象化道路地図とが相対的に前記グリッドのマス目を単位として移動するように前記画像情報を制御するものであって、
前記シミュレーション画像において前記グリッド上のマス目単位表される前記第1種記号の移動態様の履歴を表す履歴情報を取得する移動履歴取得部と、
前記チェックポイント状態情報にて表される状態に復帰した前記シミュレーション画像から開始される前記画像処理部での処理において、前記移動履歴情報にて表される前記第1種記号の移動態様に基づいて、当該状態復帰後の前記シミュレーション画像における前記第1種記号の前記グリッド上のマス目単位で表される移動態様を決める移動態様制御部と、を有する請求項1または2記載の強化学習装置。
【請求項11】
前記移動態様制御部は、前記移動履歴情報にて表される前記第1種記号の移動態様を修正して新たな前記グリッド上のマス目単位で表される移動態様を生成する移動態様生成部を含む、請求項10記載の強化学習装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両の走行態様についての強化学習を行うための強化学習装置に関する。
【背景技術】
【0002】
従来、車両の行動(走行態様)についての強化学習を行う学習装置が知られている(例えば、特許文献1参照)。一般的に、強化学習は、試行錯誤を通じてある環境において「価値を最大化するような行動」を学習するものである。具体的には、エージェント(行動体の制御器)が、ある環境内での行動を方策(ポリシー)に基づいて決定する。その行動は環境に影響を与え、その行動に影響されて変化した環境からその行動が良かったのかが評価され、その評価結果が報酬としてエージェントに与えられる。そして、その評価結果(報酬)に基づいて方策(ポリシー)が更新される。以後、方策に基づいたエージェントの行動の決定、その行動により影響される環境での当該行動の評価(報酬)、その評価結果に基づいた方策の更新が順次繰り返され、最終的に得られる報酬(評価)が最大となるように順次方策が更新されていく(学習される)。
【0003】
上記のような強化学習では、前記環境を提供する手段としてシミュレータを用いることができる。例えば、車両の走行態様(行動)についての強化学習に用いるシミュレータは、コンピュータにて構成され、走行(行動)する疑似的な車両の周辺領域の道路、その道路を移動する種々の移動体(他車両、歩行者、自転車、緊急車両、バイク等)、信号機、カーブミラー、建築物等を含む仮想空間を提供する。そして、シミュレータにて構成される仮想空間(環境)内で疑似的な車両を走行(行動)させることにより、その疑似的な車両の走行態様(行動)を決めるための最適な方策が学習され決められる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、車両の走行態様(行動)についての強化学習の結果(方策)は、実際の車両の走行制御に用いられるものである。そのため、その強化学習で用いられるシミュレータが提供する仮想空間は、実際の環境(道路、他車、歩行者、自転車、緊急車両等)をより忠実に再現していることが好ましい。
【0006】
しかし、実際の環境をより忠実に再現した仮想空間を提供するシミュ―レタでは、対象車両に対する検出物(他車両などの障害物、白線や信号などのインフラ)の位置関係や、その仮想空間における検出物の属性や状態(人・車・トラックや、ウィンカー点滅状態、緊急走行状態、信号点灯)など多岐にわたる情報を扱わなければならず、情報の次元数が多くなってしまう。このため多くのコンピュータ資源(CPU能力、ソフトウエア、メモリ容量等)が必要になり、簡潔で、効率的な強化学習の枠組みに組み込むことが困難である。このため、効率的で効果的な学習ができない。
【0007】
本発明は、このような事情に鑑みてなされたもので、車両の走行態様について、簡素で、効率的な強化学習が可能な強化学習装置を提供するものである。
【課題を解決するための手段】
【0008】
本発明に係る強化学習装置は、対象車両の走行態様についての強化学習を行う強化学習装置であって、道路を含むシミュレーション領域を平面的に抽象化して表す抽象化道路地図、前記シミュレーション領域の道路を走行する対象車両を表して前記抽象化道路地図における道路内に配置される第1種記号、及び前記シミュレーション領域の道路を移動する移動体をその属性に応じて区別して表して前記抽象化道路地図における道路内に配置される第2種記号を含むシミュレーション画像を表す画像情報を生成する画像処理部と、シナリオに従って前記第2種記号が前記抽象化道路地図の道路内を移動する環境下において前記第1種記号が前記抽象化道路地図内で移動するように前記画像処理部にて生成される前記画像情報を制御するシミュレーション制御部と、前記シミュレーション制御部によって制御される前記画像情報にて表されるシミュレーション画像において、予め定められた移動目標が達成されるように、前記第1種記号の移動態様を方策に基づいて決める制御器と、前記シミュレーション画像における前記第2種記号の移動環境下において前記制御器により決められた前記第1種記号の移動態様に基づいて前記シミュレーション画像において前記第1種記号を移動させる毎に、所定の強化学習アルゴリズムに従って、前記シミュレーション画像における前記第2種記号の移動環境下における前記第1種記号の移動態様を評価し、その評価結果に基づいて前記制御器における前記方策を更新させる学習処理部と、前記第1種記号の前記シミュレーション画像における前記抽象化道路地図の道路上の位置が予め定められたチェックポイントであるか否かを判定するチェックポイント判定部と、前記第1種記号の位置が前記チェックポイントであると前記チェックポイント判定部によって判定されたときに、前記チェックポイントに位置する前記第1種記号を含む前記シミュレーション画像の状態を表すチェックポイント状態情報を記憶部に記憶させる状態保存制御部と、前記シミュレーション画像において前記第1種記号が予め定められたエラー状態にあるか否かを判定するエラー判定部と、前記第1種記号が前記エラー状態にあると前記エラー判定部にて判定されたときに、前記シミュレーション画像が前記記憶部に保存されたチェックポイント状態情報にて表される状態に復帰するように、前記画像処理部にて生成される前記画像情報を制御する状態復帰制御部と、を有する構成となる。
【0009】
このような構成により、道路を含む実世界のシミュレーション領域を平面的に抽象化して表す抽象化道路地図、実世界のシミュレーション領域の道路を走行する対象車両を表して前記抽象化走路地図における道路内に配置される第1種記号、及び実世界のシミュレーション領域の道路を移動する移動体をその属性に応じて区別して表して前記抽象化道路地図における道路内に配置される第2種記号を含むシミュレーション画像を表す画像情報が生成される。シナリオに従って第2種記号が抽象化道路地図の道路を移動する環境下において第1種記号が抽象化道路地図内で移動するように、そのシミュレーション画像を表す前記画像情報が制御される。このような仕組みにて生成及び制御される前記シミュレーション画像において、予め定められた第1種記号の移動目標が達成されるように、制御器が第1種記号の移動態様を方策に基づいて決める。
【0010】
前記シミュレーション画像における第2種記号の移動環境下にて前記制御器により決められた前記第1種記号の移動態様に基づいて前記シミュレーション画像において前記第1種記号を移動させる毎に、所定の強化学習アルゴリズムに従って、シミュレーション画像における第1種記号の移動態様が評価され、その評価結果に基づいて制御器における前記方策が更新される。このようにして、抽象化道路地図の道路内でのシナリオに従った第2種記号の移動環境下における第1種記号の移動目標達成に最適な制御器における方策が決められ(学習され)ていく。
【0011】
シミュレーション画像においてシナリオに従った第2種記号の移動環境下で移動する第1種記号の前記抽象化道路地図の道路上での位置が予め定めたチェックポイントであると判定されると、そのチェックポイントに位置する第1種記号を含む前記シミュレーション画像の状態を表すチェックポイント状態情報が記憶部に保存される。そして、シミュレーション画像において移動する第1種記号が予め定められたエラー状態にあると判定されると、前述した制御器の方策決定に供される前記シミュレーション画像が前記記憶部に保存されたチェックポイント状態情報にて表される状態に復帰する。
【0012】
前記シミュレーション画像がチェックポイント状態情報にて表される状態に復帰すると、その状態のシミュレーション画像から、前述したように決められる移動態様に基づいた第1種記号の移動毎に、所定の強化学習アルゴリズに従って、シミュレーション画像における第1種記号の移動態様の評価及びその評価結果に基づいた制御器における前記方策の更新を行うことが可能となる。
【0013】
本発明に係る強化学習装置において、前記画像情報にて表される前記シミュレーション画像は、前記シミュレーション領域において時間的に状態が変化する物をその状態に応じて区別するように表して前記抽象化道路地図内に固定的に配置された第3種記号を含み、前記シミュレーション制御部は、シナリオに従って前記第3種記号が変化するように前記画像情報を制御する、構成とすることができる。
【0014】
このような構成により、道路を含む実世界のシミュレーション領域を平面的に抽象化して表す抽象化道路地図、実世界のシミュレーション領域の道路を走行する対象車両を表して前記抽象化走路地図における道路内に配置される第1種記号、実世界のシミュレーション領域の道路を移動する移動体をその属性に応じて区別して表して前記抽象化道路地図における道路内に配置される第2種記号、及び実世界のシミュレーション領域において時間的に状態が変化する物がその状態に応じて区別するように表される第3種記号を含むミュレーション画像を表す画像情報が生成される。シナリオに従って第2種記号が抽象化道路地図の道路を移動するとともにその抽象化道路地図内に固定的に配置された第3種記号がシナリオに従って変化する環境下において第1種記号が抽象化道路地図内で移動するように、そのシミュレーション画像を表す画像情報が制御される。このような仕組みにて生成及び制御される前記シミュレーション画像において、予め定められた第1種記号の移動目標が達成されるように、制御器が第1種記号の移動態様を方策に基づいて決める。
【0015】
前記シミュレーション画像における第2種記号が移動するとともに第3種記号が変化する環境下にて前記制御器により決められた前記第1種記号の移動態様に基づいて前記シミュレーション画像において前記第1種記号を移動させる毎に、所定の強化学習アルゴリズムに従って、シミュレーション画像における第1種記号の移動態様が評価され、その評価結果に基づいて制御器における前記方策が更新される。このようにして、抽象化道路地図の道路内をシナリオに従って第2種記号が移動するとともにその抽象化道路地図内にてシナリオに従って第3種記号が変化する環境下における第1種記号の移動目標達成に最適な制御器における方策が決められ(学習され)ていく。
【0016】
シミュレーション画像においてシナリオに従った第2種記号が移動するとともにシナリオに従って第3種記号が変化する環境下で移動する第1種記号の前記抽象化道路地図の道路上での位置が予め定めたチェックポイントであると判定されると、そのチェックポイントに位置する第1種記号を含む前記シミュレーション画像の状態を表すチェックポイント状態情報が記憶部に保存される。そして、シミュレーション画像において移動する第1種記号が予め定められたエラー状態にあると判定されると、前述した制御器の方策決定に供される前記シミュレーション画像が前記記憶部に保存されたチェックポイント状態情報にて表される状態に復帰する。
【0017】
前記シミュレーション画像がチェックポイント状態情報にて表される状態に復帰すると、そのシミュレーション画像から、前述したように決められる移動態様に基づいた第1種記号の移動毎に、所定の強化学習アルゴリズムに従って、シミュレーション画像における第1種記号の移動態様の評価及びその評価結果に基づいた制御器における前記方策の更新を行うことが可能となる。
【0018】
本発明に係る強化学習装置において、前記シミュレーション画像において移動する前記第1種記号の移動態様の履歴を表す移動履歴情報を取得する移動履歴取得部と、前記シミュレーション画像が前記チェックポイント状態情報にて表される状態に復帰した後、前記移動履歴情報にて表される前記第1種記号の移動態様に基づいて状態復帰後の前記シミュレーション画像における前記第1種記号の移動態様を決める移動態様制御部と、を有する構成とすることができる。
【0019】
このような構成により、シミュレーション画像においてシナリオに従って第2種記号が移動する環境下、または、シミュレーション画像においてシナリオに従って第2種記号が移動するとともにシナリオに従って第3種記号が変化する環境下で、移動する第1種記号の移動態様の履歴を表す移動履歴情報が取得される。そして、前記シミュレーション画像がチェックポイント状態情報にて表される状態に復帰すると、前記移動履歴情報にて表される第1種記号の移動態様に基づいてその状態復帰後のシミュレーション画像における前記第1種記号の移動態様が決められる。
【0020】
本発明に係る強化学習装置において、前記移動態様制御部は、前記移動履歴情報にて表される前記第1種記号の移動態様を修正して新たな移動態様を生成する移動態様修正部を含む、構成とすることができる。
【0021】
このような構成により、前記シミュレーション画像がチェックポイント状態情報にて表される状態に復帰すると、前記移動履歴情報にて表される第1種記号の移動態様が修正されて新たな移動態様が生成され、その修正して生成された移動態様が、その状態復帰後のシミュレーション画像における前記第1種記号の移動態様として決められる。
【0022】
「記号」は、図形、符号、文字、標章を含む概念であり、前記第1種記号及び前記第2種記号の少なくともいずれかは、文字または図形マークとすることができ、前記第3種記号は、文字または図形マークとすることができる。
【0023】
本発明に係る強化学習装置において、前記画像処理部にて生成される前記画像情報にて表される前記シミュレーション画像は、複数のマス目で構成されるグリッド上に形成され、前記第1記号の移動態様は、前記グリッドのマス目を単位とした動きとして表され、前記シミュレーション制御部は、前記第1種記号と前記抽象化道路地図とが相対的に前記グリッドのマス目を単位として移動するように前記画像情報を制御する、構成とすることができる。
【0024】
このような構成により、グリッド上のマス目を単位とした動きとして表されるシミュレーション画像における第1種記号の移動態様に基づいて、当該第1種記号はシミュレーション画像における抽象化道路地図に対してグリッドのマス目を単位として移動する。これにより、対象車両を表す第1種記号の抽象化道路地図の道路内での移動をより簡素に表現することができる。
【0025】
本発明に係る強化学習装置において、前記シミュレーション制御部は、固定された前記第1種記号に対して前記抽象化道路地図が前記グリッドのマス目を単位として移動するように前記画像情報を制御するものであって、前記グリッドは、前記第1種記号を含む所定領域の角マス目が表す実距離より前記所定領域より前記第1種記号から離れた領域の各マス目が表す実距離が大きくなるように構成された、構成とすることができる。
【0026】
このような構成により、シミュレーション画像において、対象車両を表す第1種記号を含む所定領域でのマス目単位の移動として表される当該第1種記号の移動態様の分解能を適当に保持しつつ、グリッド上により広い範囲(シミュレーション領域)の抽象化道路地図を構成することができる。その結果、シミュレーション画像を表す画像情報のメモリサイズを節約することができる。
【0027】
本発明に係る強化学習装置において、前記画像処理部にて生成される前記画像情報にて表される前記シミュレーション画像は、複数のマス目で構成されるグリッド上に形成され、前記第1記号の移動態様は、前記グリッドのマス目を単位とした動きとして表され、前記シミュレーション制御部は、前記第1種記号と前記抽象化道路地図とが相対的に前記グリッドのマス目を単位として移動するように前記画像情報を制御するものであって、前記シミュレーション画像において前記グリッド上のマス目単位表される前記第1種記号の移動態様の履歴を表す履歴情報を取得する移動履歴取得部と、前記チェックポイント状態情報にて表される状態に復帰した前記シミュレーション画像から開始される前記画像処理部での処理において、前記移動履歴情報にて表される前記第1種記号の移動態様に基づいて、当該状態復帰後の前記シミュレーション画像における前記第1種記号の前記グリッド上のマス目単位で表される移動態様を決める移動態様制御部と、を有する構成とすることができる。
【0028】
このような構成により、シミュレーション画像においてシナリオに従って第2種記号が移動する環境下、または、シミュレーション画像においてシナリオに従って第2種記号が移動するとともにシナリオに従って第3種記号が変化する環境下で、移動する第1種記号の移動態様の履歴を表す移動履歴情報が、グリッド上のマス目を単位とした動きの履歴を表す情報として取得される。そして、前記シミュレーション画像がチェックポイント状態情報にて表される状態に復帰すると、前記移動履歴情報にて表される第1種記号の移動態様に基づいてその状態復帰後のシミュレーション画像における前記第1種記号の移動態様が、グリッド上のマス目を単位とした動きとして決められる。これにより、対象車両を表す第1種記号の抽象化道路地図の道路内での移動をより簡素に表現することができる。
【0029】
本発明に係る強化学習装置において、前記移動態様制御部は、前記移動履歴情報にて表される前記第1種記号の移動態様を修正して新たな前記グリッド上のマス目単位で表される移動態様を生成する移動態様生成部を含む、構成とすることができる。
【0030】
このような構成により、前記シミュレーション画像がチェックポイント状態情報にて表される状態に復帰すると、グリッド上のマス目を単位とした動きの履歴を表す情報としての前記移動履歴情報にて表される第1種記号の移動態様が修正されて新たな移動態様が、グリッド上のマス目を単位とした動きとして生成され、その修正して生成されたグリッド上のマス目を単位とした動きとしての移動態様が、その状態復帰後のシミュレーション画像における前記第1種記号の移動態様として決められる。これにより、対象車両を表す第1種記号の移動態様をマス目単位に容易に修正することができる。
【発明の効果】
【0031】
本発明に係る強化学習装置によれば、道路を含む現実世界のシミュレーション領域を平面的に抽象化して表す抽象化道路地図、対象車両を表す第1種記号、及び移動体をその属性に応じて区別して表して第2種記号を含む簡素なシミュレーション画像によって当該シミュレーション領域の状態が表現されるようになるので、車両の移動態様についての簡素で効率的な強化学習が可能になる。
【0032】
また、シミュレーション画像において移動する第1種記号が予め定められたエラー状態にあると判定されると、前記シミュレーション画像を強化学習開始時の初期状態に戻すのではなく、予め定められたチェックポイントに位置する第1種記号を含む状態に復帰されるので、その復帰後の状態のシミュレーション画像から、移動態様に基づいた第1種記号の移動毎に、所定の強化学習アルゴリズに従って、第1種記号の移動態様の評価及びその評価結果に基づいた制御器における前記方策の更新を行う、強化学習に係る処理を行うことが可能になる。よって、更に、車両の移動態様について効率的な強化学習が可能になる。
【図面の簡単な説明】
【0033】
【
図1】
図1は、本発明の実施の形態に係る強化学習装置の構成を示すブロック図である。
【
図2】
図2は、グリッド上に形成されるシミュレーション画像の第1の例を示す図である。
【
図3】
図3は、シミュレーション画像の第2の例を示す図である。
【
図4】
図4は、シミュレーション画像において第1記号(白抜き五角形)の動き(移動態様)の一例を示す図である。
【
図5】
図5は、処理部での処理手順(その1)を示すフローチャートである。
【
図6】
図6は、処理部での処理手順(その2)を示すフローチャートである。
【
図7】
図7は、シミュレーション画像の第3の例を示す図である。
【
図8】
図8は、シミュレーション画像の第4の例を示す図である。
【
図9】
図9は、シミュレーション画像の第5の例を示す図である。
【
図10】
図10は、シミュレーション画像の第6の例を示す図である。
【
図11】
図11は、シミュレーション画像の背景に形成されるグリッドの他の構成例を示す図である。
【
図12】
図12は、多層構造のシミュレーション画像におけるある層の画像例を示す図である。
【
図13】
図13は、多層構造のシミュレーション画像における他の層の画像例を示す図である。
【
図14】
図14は、
図12に示す層の画像と
図13に示す層の画像とを重ねた2層構造のシミュレーション画像の一例を示す図である。
【発明を実施するための形態】
【0034】
以下、本発明の実施の形態に係る強化学習装置について図面を用いて説明する。
【0035】
本発明の実施の一形態に係る強化学習装置は、
図1に示すように構成される。
【0036】
図1において、強化学習装置10は、対象車両の走行態様についての強化学習に係る処理を実行するものであって、種々のハードウエア及びソフトウエアを含むコンピュータシステムによって構成される。強化学習装置10は、処理部11、画像処理部12、制御器13、ライブラリ14及び記憶部15を有している。
【0037】
画像処理部12は、処理部11による制御のもと、対象車両の走行態についての強化学習において環境を提供するシミュレーション画像を表す画像情報を生成する。この画像情報にて表されるシミュレーション画像は、道路を含む実世界のシミュレーション領域を平面的に抽象化して表す抽象化道路地図、前記シミュレーション領域の道路を走行する対象車両を表して前記抽象化道路地図における道路内に配置される第1種記号、及び前記シミュレーション領域の道路を移動する移動体をその属性(自動車、緊急車両、オートバイ、自転車、歩行者等)に応じて区別して前記抽象化道路地図における道路内に配置される第2種記号を含む。
【0038】
図2にシミュレーション画像の一例が示される。このシミュレーション画像は、複数(n×m個)のマス目で構成されるグリッド100上に形成される。例えば、32×32のマス目で構成されるグリッド100では、各マス目が表す縦横の実距離が2m□に設定されると、64m×64mのシミュレーション領域(実世界)をカバーするシミュレーション画像を形成することができる。この
図2に示すシミュレーション画像は、交差点ISで交差する片側2列の車両通行帯で両側4列の車両通行帯を有する道路R1と単一の車両通行帯の道路R2とを含むシミュレーション領域を平面的に抽象化して表す抽象化道路地
図MAPを含む。なお、この抽象化道路地
図MAPでは、交差点ISを囲むように、道路R1を横切る2つの横断歩道PC1、PC2(固定物)、及び道路R2を横切る2つの横断歩道PC3、PC4(固定物)が描かれている。上記シミュレーション画像は、強化学習の対象である対象車両を表して道路R1内に配置される第1種記号としての「白五角形マーク」を含む。また、上記シミュレーション画像は、シミュレーション領域の道路を移動する移動体をその属性(自動車、緊急車両、自転車、歩行者等)に応じて区別して表して抽象化道路地
図MAPの道路R1、R2内に配置される、第2種記号としての、自動車(対象車両以外)を表す「黒五角形マーク」、緊急車両(救急車両、警察車両等)を表す「『へ』の字図形マーク」、自転車を表す「黒台形マーク」、及び歩行者を表す「黒三角マーク」を含む。
【0039】
また、前記シミュレーション画像は、例えば、
図3に示すように形成することもできる。
図3に示すシミュレーション画像は、
図2に示すシミュレーション画像が含む抽象化道路地
図MAPと同一の抽象化道路地
図MAPを含む。そして、このシミュレーション画像では、第1種記号及び第2種記号としての図形マーク(「白五角形マーク」、「黒五角形マーク」、「『へ』の字図形マーク」、「黒台形マーク」、「黒三角マーク」)に代えてASCII文字(英文字)が用いられる。具体的には、対象車両を表して道路R1内に配置される第1種記号としての「E」、第2種記号としての、自動車(対象車両以外)を表す「C」、緊急車両を表す「A」、自転車を表す「B」、歩行者を表す「W」が用いられる。
【0040】
図1に戻って、処理部11は、画像処理部12にて生成される画像情報(シミュレーション画像)をシナリオに従って制御する機能(シミュレーション制御部としての機能)を有する。ライブラリ14は、シナリオ及び移動目標のそれぞれを表す情報を格納している。シナリオは、第1種記号(対象車両)の環境としてのシミュレーション画像の変化の筋書きを表す。また、移動目標は、シナリオに従って変化するシミュレーション画像が表す環境下において第1種記号(対象車両)の目標とする移動態様(例えば、「出発点から第2種記号(他の移動体(自動車、歩行者等))に衝突することなく、かつ道路から逸脱することなく交差点を通過して目標点まで移動する。」)を表す。ライブラリ14では、種々のシナリオのそれぞれと、そのシナリオに従って変化するシミュレーション画像に関係する第1種記号(対象車両)の移動目標とが対応するように管理されている。上記シナリオ及びそのシナリオに対応した移動目標は、例えば、交通法規(例えば道路交通法)の内容に基づいて設定することができる。
【0041】
前述した
図2及び
図3に示すシミュレーション画像は、処理部11(シミュレーション制御部)による制御のもと、例えば、次のようなシナリオ、
・道路R1の中央線側車両通行帯を走行する緊急車両(「『へ』の字図形マーク」・「A」)がサイレンを鳴らしつつ交差点ISを通過する。
・交差点ISに進入前の車両(「黒五角形マーク」・「C」)は路肩側に寄って停止し、緊急車両(「『へ』の字図形マーク」・「A」)が通過したら移動を開始する。
・既に交差点IS内の車両(「黒五角形マーク」・「C」)は、そのまま移動して交差点ISを抜けてから路肩側によって停止し、緊急車両(「『へ』の字図形マーク」・「A」)が通過したら移動を開始する。
・反対車線の路肩側車両通行帯を移動する自転車(「黒台形マーク」・「B」)及び横断歩道PC4を移動する歩行者(「黒三角マーク」・「W」)はその移動を維持する。
に従って、
第2種記号(自動車:「黒五角形マーク」・「C」、緊急車両:「『へ』の字図形マーク」・「A」、自転車:「黒台形マーク」・「B」、歩行者:「黒三角マーク」・「W」)が移動するように変化する。
【0042】
そして、処理部11は、上述したようにシナリオに従って第2種記号(自動車:「黒五角形マーク」・「C」、緊急車両:「『へ』の字図形マーク」・「A」、自転車:「黒台形マーク」・「B」、歩行者:「黒三角マーク」・「W」)が抽象化道路地
図MAPの道路R1内を移動する環境下において第1種記号(対象車両:「白五角形マーク」・「E」」が、後に詳述するように、抽象化道路地
図MAP(道路R1)内で移動するように画像処理部12にて生成される画像情報(シミュレーション画像)を制御する。
【0043】
強化学習装置10における制御器13は、前述したようにシナリオに従って第2種記号が抽象化道路地
図MAP(
図2または
図3参照)の道路内で移動する状態(環境)のシミュレーション画像において、前記シナリオに対応した移動目標が達成されるように、第1種記号(対象車両)の移動態様(走行態様)を方策(ポリシー)に基づいて決定する。そして、制御器13は、その決定された移動態様を処理部11に提供する。処理部11は、制御器13からの移動態様に基づいて前述したように前記シミュレーション画像において第1種記号(「白五角形マーク」・「E」)を移動させるように画像処理部12にて生成される画像情報を制御する。
【0044】
第1種記号(「白五角形マーク」・「E」)の移動態様は、
図4に示すように、グリッド100のマス目を単位とした動きとして表すことができる。具体的には、所定周期(例えば、0.5秒毎)でグリッド100上のマス目の位置(第1種記号の位置)を指定することによって第1種記号の移動態様を表すことができる。例えば、グリッド100の各マス目が表す縦横の実距離が2m□の場合、対象車両の時速60km/hでの直進走行に対応する第1種記号(「白五角形マーク」・「E」)の移動態様は、グリッド100上で、0.5秒周期で4マス目ずつ変化する位置にて表される。
【0045】
制御器13は、ニューラルネットワーク(入力層、中間層(隠れ層)、出力層で構成される)を有している。このニューラルネットワークの各ノード間の係数が第1種記号の移動態様を決めるための「方策」(ポリシー)に相当する。制御器13では、処理部11から提供される、前述したようなシナリオに従って変化するシミュレーション画像(
図2または
図3参照)の状態(環境)、そのシナリオに従って変化するシミュレーション画像における第1種記号の移動態様(所定周期で提供される抽象化道路地図上でのマス目位置)、及び前記シナリオに対応した移動目標の各情報がニューラルネットワークの入力層に入力する。その入力層に入力した情報から前記各ノード間の係数に基づいて決まる情報が、抽象化道路地図上(グリッド100上)での第1種記号の新たな位置(マス目位置)を表す情報(移動態様)として、ニューラルネットワークの出力層から出力される。この新たな位置(移動態様)が、処理部11に与えられる。そして、処理部11は、前記シミュレーション画像において第2種記号がシナリオに従って移動する環境下で、制御器13から与えられる移動態様(グリッド上の位置)に基づいて決まる位置に第1種記号が移動するように画像処理部12にて生成される画像情報を制御する。
【0046】
処理部11は、強化学習に係る処理を実行する機能(学習処理部の機能)を有する。当該処理部11は、前述したように第2種記号の移動環境下において制御器13により決められた第1種記号の移動態様に基づいて当該第1種記号がシミュレーション画像において移動するように画像処理部12にて生成される画像情報を制御する。そして、処理部11は、前記シミュレーション画像において第1種記号が新たな位置に移動する毎に、所定の強化学習アルゴリズム(例えば、DeepQ-Network、MuZero等)に従って、当該シミュレーション画像(画像処理部12からの画像情報)における第1種記号の移動態様を評価し(行動の評価)、その評価結果に基づいて制御器13における前記ニューラルネットワークの各ノード間の係数(第1種記号の移動態様を決めるために使用される「方策」に相当)を更新させる。前記第1種記号の移動態様の評価は、その移動態様に対して付与される報酬によって行われる。
【0047】
交通規則や交通マナーを遵守している程度を得点化し、その得点数を報酬とすることができる。例えば、報酬を、
第1種記号がその移動先位置で第2種記号に重ならない場合・・・+a点
第1種記号がその移動先位置で第2種記号に重なった場合・・・-a点
第1種記号と第2種記号との間隔が所定値以下となった場合・・・-b点
第1種記号が道路から逸脱した場合・・・-c点
第1種記号が道路の停止線で停止した場合・・・+d点
第1種記号が実車両では起こり得ない方向(真横)に移動した場合・・・-e点
第1種記号が移動目標を達成した場合・・・+d点
等々のように設定することができる。
【0048】
なお、第1種記号の移動態様に対する評価を表す報酬は、他の手法に従って決めることもできる。本件特許出願人は、この第1種記号の移動態様に対する評価結果を表す報酬を提供するシステムを逆強化学習の手法に従って定めることを既に提案している(特願2022-089522参照)。
【0049】
処理部11での強化学習に係る処理の過程では、第1種記号の移動目標が達成されるまで、例えば、第1種記号が「出発点から第2種記号(自動車、歩行者等)に衝突することなく、且つ道路(所定の車両通行帯)から逸脱することなく、交差点を通過して目標点まで移動する。」という移動目標が達成されるまで、前記報酬(得点)の総計が最大化するように、所定周期(例えば、0.5秒周期)での制御器13による「方策」(ニューラルネットワークにより)に基づいた第1種記号の移動態様の出力、第1種記号の移動態様の評価(報酬付与)及びその評価結果(得点数)に基づいた前記「方策」(ニューラルネットワークにおける各ノード間の係数)の更新が繰り返し行われる。
【0050】
このような処理の過程で、シミュレーション画像において第1種記号が第2種記号(自動車、救急車両等)に重なる(接触も含む)、または道路(所定の車両通行帯)から逸脱する毎に、シミュレーション画像における第1種記号及び第2種記号の移動が停止し、その後、後述するように第2種記号の移動が再開されるとともに、その第2種記号の移動環境のもとでの第1種記号の移動が再開されるように、当該シミュレーション画像を表す画像情報が制御される。そして、第1種記号の移動目標が達成されると、強化学習に係る処理が終了する。その結果、シナリオに基づいて変化するシミュレーション画像(抽象化道路地図内で第2種記号が移動する)が表す環境下で第1種記号(対象車両)の移動目標が達成できるような「方策」、すなわち、そのような制御器13のニューラルネットワークの各ノード間の係数が決定される。
【0051】
強化学習装置10は、記憶部15を有している。処理部11は、強化学習に係る処理の過程で得られる、第1種記号の移動態様を表す情報(移動履歴)を含む種々の情報を記憶部15に保存することができる。また、処理部11は、強化学習に係る処理において、記憶部15に保存した情報を利用することができる。
【0052】
処理部11は、上述した強化学習に関し、具体的に、
図5及び
図6に示すフローチャートに従って処理を実行する。
【0053】
図5において、処理部11は、画像処理部12により形成されるシミュレーション画像(
図2、
図3参照)を表す画像情報を、シミュレーション領域(実世界)の現在の状態(環境)を表す情報として取得する(S11)。処理部11は、取得した画像情報にて表されるシミュレーション画像(環境)を制御器13に提供し、それに応答して制御器13から出力される、シナリオに従って第2種記号が移動する環境下における第1種記号の移動態様(グリッド100上の位置)を表す情報を取得する(S12:行動選択)。具体的には
図6に示すように、処理部11は、後述するUNDO_FLAGがオンでないことを確認して(S121でNO)、上述した第1種記号の移動態様(行動:グリッド100上の位置)を、制御器13から取得する(S122:行動生成)。処理部11は、その第1種記号の移動態様を表す情報(グリッド100上の位置)を移動履歴情報(行動履歴)として記憶部15に保存する(S123:移動履歴取得部としての機能)。
【0054】
図5に戻って、処理部11は、制御器13から取得した第1種記号の新たな移動態様に基づいて画像処理部12にて生成される画像情報にて表されるシミュレーション画像を更新させる(S13)。ここで、処理部11は、前記シミュレーション画像における第1種記号の移動態様を評価(報酬決定)し、その評価結果(報酬)に基づいて制御器13におけるニューラルネットワークの各ノード間の係数(「方策」に相当)を更新させる。
【0055】
次いで、処理部11は、更新したシミュレーション画像において第1種記号が予め定められたエラー状態になっているか否かを判定する(S14:エラー判定部としての機能)。シミュレーション画像において第1種記号が第2種記号に重なった状態、第1種記号が道路から逸脱した状態等、対象車両(第1種記号)が走行を継続できない状態をエラー状態として定めることができる。処理部11は、シミュレーション画像において第1種記号がエラー状態ではない(S14でNO)と判定すると、第1種記号の前記シミュレーション画像における抽象化道路地図の道路上の位置が予め定められたチェックポイントであるか否かを判定する(S15:チェックポイント判定部としての機能)。シミュレーション画像において抽象化道路地図の道路を移動する第1種記号の周りに障害物(第2種記号)が無く当該第1種記号が抽象化道路地図の道路上を直進している状態等、第1種記号を含むシミュレーション画像の状態が平衡状態(安定状態)にある場合における当該第1種記号の位置をチェックポイントとして決めることができる。また、当該強化学習に適した特定の位置をチェックポイントとして決めることができる。
【0056】
第1種記号がエラー状態でなく(S14でNO)、かつ、当該第1種記号の位置がチェックポイントではない(S15でNO)状態では、処理部11は、上述した手順に従った処理(S11、S12(S121~S123)、S13~S15)を所定周期(例えば、0.5秒)で繰り返し実行する。このような処理が繰り返される過程で、制御器13における第1種記号の移動態様を決めるための「方策」、即ち、ニューラルネットワークの各ノード間の係数が、環境(シミュレーション画像におけるシナリオに従って第2種記号が移動する環境)に応じた第1種記号の最適な(移動目標達成に向かうような)移動態様を決めるためのものに近づいていく。
【0057】
上述した処理(S11、S12(S121~S123)、S13~S15)が繰り返し実行される過程で、シミュレーション画像において第1種記号がエラー状態であると判定されると(S14でYES)、処理部11は、チェックポイントに位置する第1種記号を含むシミュレーション画像の復元(チェックポイントの復元)が可能であるか否かを判定する(S18)。このようなチェックポイントの復元が可能でなければ、即ち、第2種記号がシナリオに従って移動する環境下において第1種記号がチェックポイントを通過していなければ(S18でNO)、処理部11は、一連の処理(S11、S12(S121~S123)、S13~S15)を終了させ、例えば、シミュレーション画像を初期状態に復帰させた後、上述した処理(S11、S12(S121~S123)、S13~S15、S18)を再開させる。
【0058】
上述した処理が繰り返し実行される過程で、前記シミュレーション画像における抽象化道路地図の道路上の第1種記号の位置が予め定められたチェックポイントである(第1種記号がチェックポイント通過)と判定されると(S15でYES)、処理部11は、UNDO_FLAGをオフにして、その時点で記憶部15に保存されている移動履歴情報(行動履歴)をクリアする(S16)。そして、処理部11は、そのチェックポイントに位置する第1種記号を含むシミュレーション画像の状態を表すチェックポイント状態情報、具体的には、そのチェックポイントに位置する第1種記号を含むシミュレーション画像を表す画像情報を記憶部15に保存する(S17:状態保存制御部としての機能)。以後、処理部11は、上述した処理(S11、S12(S121~S123)、S13~S15)を所定周期(例えば、0.5秒)で繰り返し実行する。その過程で、制御器13により第1種記号の新たな移動態様が出力される(S12(
図6におけるS122))毎に、その第1種記号の移動態様(グリッド100上のマス目位置)を表す情報が新たな移動履歴情報(行動履歴)として記憶部15に保存される(
図6におけるS123)。これにより、チェックポイントを通過以降の第1種記号のシミュレーション画像の抽象化道路地図における道路上の所定周期(例えば、0.5秒)を1ステップとしたステップ毎の位置(グリッド100上のマス目位置)が順次移動履歴として記憶部15に蓄積されていく。
【0059】
上記処理が繰り返される過程で、シミュレーション画像の抽象化道路地図における道路を移動する第1種記号がエラー状態である、例えば、第2種記号の位置と重なった状態(対象車両が他車と衝突した状態)である判定されると(S14でYES)、処理部11は、記憶部15にチェックポイント状態情報が既に保存されているか否かを判定する(S18)。ここで、第1種記号がチェックポイントを既に通過して記憶部15にチェックポイント状態情報が保存されていると判定されると(S18でYES)、処理部11は、シミュレーション画像が記憶部15に保存されたチェックポイント状態情報にて表される状態(チェックポイントに位置する第1種記号を含むシミュレーション画像)に復帰するように、画像処理部12にて生成される画像情報を制御する(S19:状態復帰制御部の機能)。そして、処理部11は、UNDO_FLAGをオンにする(S20)。
【0060】
この時点で、記憶部15には、第1種記号がチェックポイントに位置した状態からエラー状態になるまでの当該第1種記号の移動履歴である、チェックポイント通過以降エラー状態になるまでの第1種記号のシミュレーション画像の抽象化道路地図における道路上の所定周期(例えば、0.5秒)を1ステップとしたそのステップ毎の位置(グリッド100上のマス目位置)が保存されている。
【0061】
処理部11は、前述したように記憶部15に保存された第1種記号の前記移動履歴を利用して、次のように処理(移動態様制御部としての機能を含む)を継続させる。
【0062】
処理部11は、UNDO_FLAGをオンにした(S20)後、第1種記号がチェックポイントに位置するチェックポイント状態情報にて表される状態のシミュレーション画像から、
図5に示すS11~S15に従ってそのシミュレーション画像を順次更新しつつ処理を繰り返し実行する。その処理の過程で、処理部11は、第1種記号の移動態様を決めるに際し(S12:行動選択)、
図6に示すように、UNDO_FLAGがオンであることを確認した(S121でYES)後、当該UNDO_FLAGがオンになって(UNDO開始)からの所定周期(例えば、0.5秒)毎のステップ数を確認するとともに、記憶部15に保存された第1種記号の移動履歴におけるそのステップ数に対応したタイミングでの当該第1種記号のシミュレーション画像における位置(移動態様:グリッド100上のマス目位置)を参照する(S124)。
【0063】
そして、処理部11は、第1種記号の前記ステップ数に対応したタイミングでの移動態様(シミュレーション画像における位置)が存在するか否かを判定する(S125)。そのタイミングでの移動態様(移動履歴)が存在すると(S125でNO)、処理ユニット1は、当該タイミングでの移動態様(シミュレーション画像における第1種記号の位置)を修正する必要があるか否かを判定する(S126)。例えば、第1種記号のエラー状態に至る直前の位置(例えば、所定ステップ(例えば、1または2ステップ)前の位置)を修正する必要がある位置(移動態様)として判定することができる。また、制御器13の出力層に第1種記号の位置(移動態様)とともにその信頼度や自信度合いを表す情報を出力するノードを含めることが可能である。制御器13の出力層の当該ノードからの信頼度や自信度合いを表す情報を第1種記号の移動態様の情報とともに記憶部15に移動履歴として保存することができる。この場合、例えば、所定の信頼度や自信度合いより低い信頼度や自信度合いの移動態様(シミュレーション画像における第1種記号の位置)を修正する必要があると判定することができる。
【0064】
処理部11は、移動履歴における前記タイミング(ステップ)での移動態様を修正する必要があると判定すると(S126でYES)、記憶部15に保存された第1種記号の移動履歴において前記タイミング(ステップ)での移動態様(シミュレーション画像における第1種記号の位置)を修正する(S127:移動態様修正部としての機能)。例えば、移動履歴情報から得られる第1種記号の移動速度を考慮してランダムに決められた位置、あるいは、その移動速度(ベクトル値)を考慮して所定の手法に従って決められた位置に修正することができる。処理部11は、記憶部15に保存された移動履歴における前記タイミング(ステップ)での第1種記号の移動態様(当該タイミングにおける第2種記号の移動環境下での第1種記号の位置)を、修正後の前記移動態様に書き換える(S123)。一方、移動履歴における前記タイミング(ステップ)での移動態様を修正する必要がないと判定すると(S126でNO)、処理部11は、記憶部15に保存された第1種記号の移動履歴において前記タイミングでの移動態様(シミュレーション画像における第1種記号の位置)を修正することなく保持する(S123)。
【0065】
処理部11は、制御器13から出力される第1種記号の移動態様(位置)に代えて、第1種記号の移動履歴における当該タイミング(ステップ)の移動態様そのもの(S125YES、S126NO)、または修正した移動態様(S125YES、S126YES、S127)に基づいて、画像処理部12にて生成される画像情報にて表されるシミュレーション画像を更新させる(S13)。ここで、処理部11は、前記シミュレーション画像における第1種記号の移動態様を評価(報酬決定)し、その評価結果(報酬)に基づいて制御器13におけるニューラルネットワークの各ノード間の係数(「方策」に相当)を更新させる。
【0066】
以後、処理部11は、シミュレーション画像において第1種記号が予め定められたエラー状態になっているか否かの判定(S14)、及び第1種記号の位置が予め定められたチェックポイントであるか否の判定(S15)を行いつつ、前述した処理(S11、S12(S121、S124~S126、S127、S123)、S13)を繰り返し実行する。これにより、チェックポイント状態情報で表されるシミュレーション画像(チェックポイントに位置する第1種記号を含む)から再開される強化学習に係る処理では、処理部11は、記憶部15に保存された移動履歴から1ステップ(所定周期に対応)ずつ第1種記号の移動態様を決めて(修正の有無:移動態様制御部の機能に相当)、その決められた移動態態様を用いて、シミュレーション画像の更新を行うとともに、そのシミュレーション画像における第1種記号の移動態様の評価(報酬決定)、及びその評価結果(報酬)に基づいた制御器13における「方策」(ニューラルネットワークの各ノード間の係数)の更新を行う。
【0067】
このような処理を実行する過程で、処理部11は、記憶部15に記憶された移動履歴に含まれた全ステップ(所定周期を1ステップとした全ステップ)の移動態様についての処理が終了すると(
図6におけるS125でYES)、処理部11は、制御器13からその時点での移動態様(行動:グリッド100上の位置)を取得する(S122)。そして、処理部11は、その取得された移動態様を、記憶部15に保存された修正等されている移動履歴に次のステップの情報として追加する(S123)。処理部11は、取得した制御器13からの新たな前記移動態様に基づいて画像処理部12にて生成される画像情報にて表されるシミュレーション画像を更新させる(
図5におけるS13)。以後、処理部11は、上述した手順(S14、S15、S11、S12(S121、S124、S125YES、S122、S123)を繰り返し、その過程で、制御器13の「方策」(ニューラルネットワークの各ノード間の係数に対応)が順次更新(学習)されていく。
【0068】
上述した処理の過程で、シミュレーション画像において第1種記号が再びエラー状態になると(S14でYES)、処理部11は、シミュレーション画像が記憶部15に保存されたチェックポイント状態情報にて表される状態に復帰するように、画像処理部12にて生成される画像情報を制御し(S18、S19)、オン状態のUNDO_FLAGを維持する(S20)。この時点で、記憶部15には、第1種記号がチェックポイントに位置する状態から新たなエラー状態になるまでの当該第1種記号の前述したように修正された及び追加された移動履歴が保存されている。そして、処理部11は、第1種記号の修正及び追加された移動履歴を用いて、上述した、当該移動履歴に基づいた第1種記号の移動態様の決定(S12(S127、S122))、決定された移動態様による移動履歴の修正、追加(S123)、及びその決定された移動態様に基づいたシミュレーション画像の更新(S13)とともに、そのシミュレーション画像における第1種記号の移動態様の評価、及び制御器13の「方策」(ニューラルネットワークの各ノード間の係数に対応)の更新(学習)を行う。
【0069】
そして、処理部11は、シミュレーション画像において第1種記号がエラー状態になる(
図5におけるS14でYES)毎に、上述した処理(S18~S20、S11、S12(S121,S124~S127、S122、S123)を繰り返し実行する。それにより、記憶部15に蓄積される第1種記号のチェックポイントからの移動履歴が徐々に改善(修正、追加)されていく。そして、このように徐々に改善されていく移動履歴における第1種記号の移動態様に基づいて、シミュレーション画像が更新され、その更新されるシミュレーション画像における第1種記号の移動態様の評価、及びその評価結果に基づいた制御器13における「方策」(ニューラルネットワークの各ノード間の係数に対応)が更新(学習)される。
【0070】
更に、上述した処理を繰り返し行っている処理部11は、第1種記号の移動履歴に基づいて決められた移動態様に基づいて更新されたシミュレーション画像において、第1種記号の抽象化道路地図における道路上の位置が次のチェックポイントであると判定すると(S15でYES)、UNDO_FLAGをオフにするとともに、上述したように修正、追加されてきた記憶部15における移動履歴をクリアする(S16)。これにより、記憶部15において、前のチェックポイント通過以降直前のエラー状態になるまで修正さらに追加された第1種記号のシミュレーション画像における所定周期(例えば、0.5秒)を1ステップとしたそのステップ毎の位置(グリッド100上のマス目位置)の履歴(移動履歴)が消去される。
【0071】
そして、処理部11は、新たなチェックポイントに位置する第1種記号を含むシミュレーション画像の状態を表す新たなチェックポイント状態情報(そのシミュレーション画像を表す画像情報)を記憶部15に保存する(S17)。以後、処理部11は、前述したチェックポイント状態情報が記憶部15に保存された状態での処理を実行する。そして、シミュレーション画像において第2種記号がシナリオに従って移動する環境下で第1種記号が前記シナリオに対応して定められた移動目標を達成すると、処理部11は、前述した処理を終了させる。
【0072】
上述した強化学習装置によれば、強化学習に供すべき環境が、道路R1、R2を含むシミュレーション領域を平面的に抽象化して表す抽象化道路地
図MAP、対象車両を表す第1種記号(「白五角形マーク」、「E」)、移動体をその属性に応じて区別して表す第2種記号(自動車:「黒五角形マーク」・「C」、緊急車両:「『へ』の字図形マーク」・「A」、自転車:「黒台形マーク」・「B」、歩行者:「黒三角マーク」・「W」)を含む簡素なシミュレーション画像によって表現されるようになるので、対象車両(第1種記号)の走行態様(移動態様)について、簡素で効率的な強化学習の処理が可能になる。
【0073】
また、シミュレーション画像において移動する第1種記号が予め定められたエラー状態にあると判定されると、前記シミュレーション画像を強化学習開始時の初期状態に戻すのではなく、予め定められたチェックポイントに位置する第1種記号を含む状態に復帰される。そして、その復帰後の状態のシミュレーション画像から、移動態様に基づいた第1種記号の移動毎に、所定の強化学習アルゴリズに従って、第1種記号の移動態様の評価及びその評価結果に基づいた制御器13における前記方策の更新が行われる。これにより、更に、車両の移動態様について効率的な強化学習が可能になる。
【0074】
また、更に、チェックポイント状態情報にて表される状態に復帰したシミュレーション画像から再開される処理において、移動履歴から得られる第1種記号の移動態様が徐々に改善されていく。このように徐々に改善されていく移動履歴における第1種記号の移動態様に基づいて、シミュレーション画像が更新され、その更新されるシミュレーション画像における第1種記号の移動態様の評価、及びその評価結果に基づいた制御器13における「方策」(ニューラルネットワークの各ノード間の係数に対応)が更新(学習)されるので、第1種記号の移動態様が効率的に収束するような、第1種記号の移動態様(対象車両の走行態様)についての強化学習が可能になる。
【0075】
また、第1種記号の移動態様がグリッド100上のマス目位置として離散的に表現されるので、移動態様の比較や修正に係る処理を容易に行うことができる。
【0076】
なお、上述した強化学習装置10では、第1種記号がチェックポイント(チェックポイント状態情報で表されるシミュレーション画像)を通過した以降は、制御器13から出力される移動態様に代えて、第1種記号の移動履歴に基づいて第1種記号の移動態様を決めるようにしていたが、これに限定されず、制御器13から出力される移動態様を利用するようにしてもよい。
【0077】
ここで、画像処理部12によって生成され、制御部11によって制御される画像情報が表すシミュレーション画像は、
図2または
図3に示すものに限られず、強化学習に供すべき環境に応じて種々定めることができる。例えば、
図7に示すようにグリッド100上に形成されるシミュレーション画像は、片側2列の車両通行帯で両側4列の車両通行帯を有する道路Rを含むシミュレーション領域を平面的に抽象化して表す抽象化道路地
図MAPを含む。また、このシミュレーション画像は、対象車両を表して道路Rの路肩側車両通行帯内に配置される第1種記号としての「白五角形マーク」、及び左方向指示器を点滅させている自動車を表して道路Rの中央線側車両通行帯内に配置される第2種記号としての「左黒矢印付き黒五角形マーク」を含む。また、このシミュレーション画像では、
図8に示すように、第1種記号としての前記「白五角形マーク」に代えて英文字「E」を、前記「左黒矢印付き黒五角形マーク」に代えて同じ左方向指示器を点滅させる自動車を表す英文字「L」を用いることができる。
【0078】
強化学習装置100では、例えば、「左方向指示器を点滅させながら道路Rの中央側車両通行帯を走行する自動車(「左矢印付き黒五角形マーク」、「L})が、路肩側車両通行帯に進入(カットイン)して走行を継続する」というシナリオに従って、第2種記号としての「左矢印付き黒五角形マーク」(または、「L」)が移動するように前記シミュレーション画像(
図7または
図8参照)を表す画像情報を制御することができる。この場合、処理部11は、前記シナリオに従って変化するシミュレーション画像(抽象化道路地図内で第2種記号が移動する)が表す環境下で、第1種記号(対象車両:「白五角形マーク」または「E」)を移動させて、その第1種記号が、例えば、「出発点から第2種記号(自動車:「黒矢印付き五角形マーク」、「L」)に衝突することなく、且つ路肩側車両通行帯を逸脱することなく、前方で進入する第2種記号(自動車:「黒矢印付き五角形マーク」、「L」)との車間距離を所定値に維持しつつ目標点まで移動する」という移動目標を達成できるような制御器13の「方策」(ニューラルネットワークの各ノード間の係数)を、所定の強化学習アルゴリズムに従って決めて(学習して)いく。
【0079】
また、
図9に示すようなシミュレーション画像を形成することもできる。このシミュレーション画像は、交差点ISにおいて交差するそれぞれ単一の車両通行帯の道路R1、R2を含むシミュレーション領域を平面的に抽象化して表す抽象化道路地
図MAP、対象車両を表して道路R1内に配置される第1種記号としての「白五角形マーク」、及び道路R2内に配置される第2種記号としての「黒五角形マーク」を含む。
【0080】
ところで、対象車両の視界に入るカーブミラーは、車両等の移動体が映っている場合(時間)と、その移動体が映っていない場合(時間)とで、対象車両からの見える状態が異なる。このことを考慮して、前記シミュレーション画像は、このように時間的に状態が変化するカーブミラーをその状態に応じて区別するように表す第3種記号として、抽象化道路地
図MAPの交差点ISの所定角部に固定的に配置された「カーブミラー図形マーク」を含む。この「カーブミラー図形マーク」は、移動体が映っている場合は、円内に黒五角形が配置された図形マーク(
図9参照)であり、移動体が映っていない場合は、単なる円マーク(図示略)である。
【0081】
このようなシミュレーション画像では、
図10に示すように、第1種記号としての前記「白五角形マーク」に代えて英文字「E」を、第2種記号としての前記「黒五角形マーク」に代えて英文字「C」を用いることができる。また、第3種記号としての前記「カーブミラー図形マーク」に代えて、カーブミラーに移動体が映っている状態を表す英文字列「MI」、カーブミラーに移動体が映っていない状態を表す英文字「M」(図示略)を用いることができる。
【0082】
なお、
図9及び
図10に示すシミュレーション画像は、対象車両からの視野範囲αを表す、第1種記号(「白五角形マーク」、「E」)から延びる視野範囲線(2つの点線)を含む。このシミュレーション画像は、道路R1を交差点ISに向う対象車両から道路R2を交差点に向う自動車を直接視認することはできないが、対象車両からカーブミラーの像によって道路R2を交差点に向う自動車を確認することができるという、状況を表している。
【0083】
シミュレータ12(画像処理部12a、シミュレーション制御部12b)は、強化学習装置100では、例えば、「道路R2を走行する自動車(「黒五角形マーク」、「C」)が、道路R1の対象車両(「白五角形マーク」、「E」)の視野範囲α外から、カーブミラーに映りつつ交差点ISに進入して、その交差点を通過する」というシナリオに従って、第2種記号としての「黒五角形マーク」(または、「C」)が移動するとともに、第3種記号としての「カーブミラー図形マーク」が変化する(「円内に黒五角形が配置された図形マーク」→「円マーク」、または、「MI」→「M」)ように前記シミュレーション画像(
図9または
図10参照)を表す画像情報を制御することができる。この場合、処理部11は、前記シナリオに従って変化するシミュレーション画像が表す環境下で、第1種記号(対象車両:「白五角形マーク」または「E」)を移動させて、その第1種記号が、例えば、「出発点から道路R2を移動する第2種記号(自動車:「黒五角形マーク」または「C」)に衝突することなく、かつ道路R1から逸脱することなく、交差点ISを通過して目標点まで移動する」という移動目標を達成できるような制御器13の「方策」(ニューラルネットワークの各ノード間の係数)を、所定の強化学習アルゴリズムに従って決めて(学習して)いく。
【0084】
上述した実施の形態では、第1種記号は、固定された抽象化道路地
図MAPに対して移動するものであったが、固定された第1種記号に対して抽象化道路地
図MAPを移動するようにシミュレーション画像を表す画像情報を制御するようにしてもよい。この場合、移動する抽象化道路地
図MAPに対して第2種記号がシナリオに従って移動するように、また、第3種記号が移動する抽象化道路地
図MAPに対して静止しているように、シミュレーション画像を表す画像情報が制御される。
【0085】
上述したように、固定された第1種記号に対して抽象化道路地
図MAPを移動させる場合、その移動する抽象化道路地
図MAP(シミュレーション画像)が形成されるグリッド100は、
図11に示すように、固定された第1種記号(例えば、「E」)を含む所定領域S(例えば、矩形領域)の各マス目が表す実距離(縦横の実距離)より、その所定領域Sより第1種記号(例えば、「E」)から離れた領域(所定領域Sより外側の領域)の各マス目が表す実距離(縦横の実距離)が大きくなるように設定することができる。具体的には、
図11に示すグリッド100の場合、マス目に対する実距離の割り当てが第1種マーク「E」を中心にして対数目盛に対応したものとなっている。
【0086】
上述したようなグリッド100上にシミュレーション画像を形成する場合、そのシミュレーション画像において、対象車両を表す第1種記号(「E」)を含む所定領域Sでのマス目単位の移動として表される当該第1種記号の移動態様の分解能を適当に保持しつつ、グリッド100上により広い範囲(シミュレーション領域)の抽象化道路地図を構成することができるようになる。そのため、一定のシミュレーション領域に対応したシミュレーション画像を表す画像情報のメモリサイズを節約することができる。
【0087】
なお、グリッド100において、縦横の2方向のうちの1方向だけ、例えば、縦方向において、第1種記号(例えば、「E」)を含む所定領域Sに対応する各マス目が表す実距離(縦の実距離)より、その所定領域Sより外側の領域に対応する各マス目が表す実距離(縦の実距離)が大きくなるように設定することもできる。この場合、横方向においては、各マス目が表す実距離は一定値に設定される。
【0088】
また、グリッド100の各マス目に割り当てる実距離は任意に割り当てること、また、縦横異なる実距離を割り当てることも可能である。更に、グリッド100のサイズについても、任意に設定することができる。例えば、グリッド100は、前述した32×32のマス目より多い、64×64のマス目で構成することもできる。
【0089】
画像処理部12及び処理部11において生成及び制御される画像情報にて表されるシミュレーション画像は、複数層構造であってもよい。
【0090】
この場合、シミュレーション画像は、例えば、
図12に示す地図・インフラ層、及び
図13に示すオブジェクト層を有する2層構造とすることができる。地図・インフラ層(
図12参照)は、道路形状および道路インフラ(レーン、信号)を表す記号で構成される。具体的には、
-----・+:レーン情報(抽象化道路地図)
s:停止線(抽象化道路地図)
r:信号機(赤)(第3種記号)
b:信号機(青)(第3種記号)
y:信号機(黄)(第3種記号)
w:ウェイポイント(対象車両の走行予定経路線)
x:進入禁止
のような記号を使って前記地図・インフラ層が表される。
【0091】
オブジェクト層(
図13参照)は、移動体、壁・建物をその属性に応じて区別して表す記号で構成される。具体的には、
E:対象車両(第1種記号)
C:自動車(第2種記号)
R:右方向指示器点滅車両(第2種記号)
L:左方向指示器点滅車両(第2種記号)
H:ハザードランプ点滅車両(第2種記号)
B:二輪車(第2種記号)
A:緊急車両(第2種記号)
W:歩行者(第2種記号)
X:その他立体物
のような記号を使ってオブジェクト層が表される。
【0092】
上述した地図・インフラ層(
図12参照)とオブジェクト層(
図13参照)とを合成することにより、
図14に示すようなシミュレーション画像を形成することができる。そして、シミュレータ12(画像処理部12a、シミュレーション制御部12b)は、あるシナリオに従って、地図・インフラ層における信号機を表す第3種記号(「b」、「y」、「r」)を変化させるとともに、オブジェクト層における各移動体を表す第2種記号(「C」、「R」、「L」、「B、「A」、「W」)を移動させるように、各階層の画像情報を制御する。これにより、
図14に示すシミュレーション画像が前記シナリオに従って変化するようになる。また、このようなシミュ―レタ12を用いる強化学習装置10(制御器13、処理部11)は、前記シナリオに従って変化するシミュレーション画像(
図14参照)が表す環境下で、オブジェクト層(
図13参照)における第1種記号(「E」)を移動させて、その第1種記号が前記シナリオに対応する移動目標を達成できるような制御器13における「方策」(ニューラルネットワークの各ノード間の係数)を、所定の学習アルゴリズムに従って決定する。
【0093】
なお、
図14に示すシミュレーション画像において、現実の対象車両にて検出される状況に整合するように、第1種記号(「E」)の前方視野範囲外の領域を網掛けにて隠すようにすることもできる。
【0094】
上述した実施の形態では、第1種記号及び第2種記号のそれぞれは、図形マークまたは英文字(ASCII文字)であったが、これに限定されず、他の図形マーク、他の文字(漢字、ひらがな、カタカナ)、印、符号、標章等、「記号」の概念に含まれるものであれば特に限定されない。また、第3種記号についても、上述した実施の形態では、英文字(ASCII文字)や図形マーク(
図9参照)であったが、これに限定されず、他の図形マーク、他の文字、印、符号、標章等、「記号」の概念に含まれるものであれば特に限定されない。
【0095】
以上、本発明の実施の形態を説明したが、この実施の形態や各部の変形例は、一例として提示したものであり、発明の範囲を限定することは意図していない。上述したこれら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。
【産業上の利用可能性】
【0096】
本発明に係る強化学習装置は、車両の走行態様について、簡素で、効率的な強化学習が可能であるという効果を有し、車両の走行態様についての強化学習を行うための強化学習装置として有用である。
【符号の説明】
【0097】
10 強化学習装置
11 処理部
12 画像処理部
13 制御器
14 ライブラリ
15 記憶部
100 グリッド