(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-01
(45)【発行日】2024-10-09
(54)【発明の名称】自動操縦ロボットの制御装置及び制御方法
(51)【国際特許分類】
G01M 17/007 20060101AFI20241002BHJP
G06N 20/00 20190101ALI20241002BHJP
【FI】
G01M17/007 D
G01M17/007 B
G06N20/00
(21)【出願番号】P 2020213407
(22)【出願日】2020-12-23
【審査請求日】2023-10-23
(73)【特許権者】
【識別番号】000006105
【氏名又は名称】株式会社明電舎
(73)【特許権者】
【識別番号】504182255
【氏名又は名称】国立大学法人横浜国立大学
(74)【代理人】
【識別番号】110002077
【氏名又は名称】園田・小林弁理士法人
(72)【発明者】
【氏名】吉田 健人
(72)【発明者】
【氏名】金剌 泰宏
(72)【発明者】
【氏名】濱上 知樹
(72)【発明者】
【氏名】夏 有輝也
【審査官】鴨志田 健太
(56)【参考文献】
【文献】特開2020-148593(JP,A)
【文献】中国特許出願公開第107862346(CN,A)
【文献】中国特許出願公開第111142522(CN,A)
【文献】米国特許出願公開第2020/0033869(US,A1)
【文献】欧州特許出願公開第03620880(EP,A1)
【文献】特開平3-144338(JP,A)
【文献】夏 有輝也 Yukiya Natsu,車速追従制御のための強化学習における転移可能な方策の学習手法 Learning Transferable Policy in Reinforcement Learning for Vehicle Velocity Tracking Control,電気学会論文誌C Vol.141 No.12 IEEJ,日本,一般社団法人電気学会 The Institute of Electrical Engineers of Japan,第141巻
(58)【調査した分野】(Int.Cl.,DB名)
G01M 17/007
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
車両に搭載されて該車両を走行させる自動操縦ロボットを該車両が規定された指令車速に従って走行するように制御する、該自動操縦ロボットの制御装置であって、
強化学習アルゴリズムに基づいた学習により車両の操作を出力する演算部を備え、
該車両の操作は、
検出速度と指令速度との相対速度の観測により得られる複数の副方策であって将来相対車速及びペダル操作値を含む複数の車両間で共通の複数の副方策と、
MCP法又はMLSH法によって得られる、前記複数の副方策が混合されて対象車両に特化された主方策と、
により構成される階層構造の方策により行われる自動操縦ロボットの制御装置。
【請求項2】
車両に搭載されて該車両を走行させる自動操縦ロボットを該車両が規定された指令車速に従って走行するように制御する、該自動操縦ロボットの制御方法であって、
複数の車両について走行と学習とを繰り返す試験を行うことで、
検出速度と指令速度との相対速度の観測により得られる複数の副方策であって将来相対車速及びペダル操作値を含む複数の車両に共通の汎化的な副方策を獲得すること、
MCP法又はMLSH法によって得られる、前記複数の
車両に共通の汎化的な副方策が混合されて対象車両に特化された主方策を獲得することを含む自動操縦ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自動操縦ロボットの制御装置及び制御方法に関する。
【背景技術】
【0002】
一般に、普通自動車等の車両を製造して販売する際には、国又は地域において規定された、特定の走行パターン(以下、モードという)により車両を走行させた際の燃費及び排出ガスを測定する試験を行い、この試験結果を表示することが求められる。
モードは、例えば、走行開始からの時間と、到達すべき車速との関係のグラフにより表わすことが可能である。
到達すべき車速は、車両に与えられる達成すべき速度に関する指令という観点で、指令車速と呼ばれることがある。
燃費及び排出ガスを測定する試験は、シャシーダイナモメータ上に車両を載置し、車両に設置された自動操縦ロボット(ドライブロボット(登録商標))により、モードに従って車両を運転させることにより行われる。
指令車速には許容誤差範囲が規定されており、車速が許容誤差範囲外になると、その試験は無効となる。
そのため、自動操縦ロボットの制御には指令車速への高い追従性が求められ、自動操縦ロボットは、強化学習により学習された学習モデルにより制御される。
【0003】
従来技術の一例である特許文献1には、強化学習により学習された学習モデルにより制御される自動操縦ロボットの制御装置及び制御方法が開示されている。
特許文献1に開示された技術では、制御対象を試行錯誤的に制御させつつ、報酬と呼ばれる評価値が大きくなる制御方法(すなわち方策)を獲得(すなわち学習)する。
ここで、試行錯誤的な学習では、制御対象に負荷の大きい挙動を強いることにより制御対象が破損し得、また、学習に時間を要する。
実用上は、ドライブロボットを用いた実際の車両に対する試験、すなわち実試験時の学習時間に費やす時間(コスト)を小さくすることが特に求められている。
これらの問題点に対しては、シミュレータを用いることが有効である。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の従来技術では、強化学習によって獲得される方策は特定の制御対象のみに有効であり、特性が異なる制御対象への方策の適用には、その制御対象の特性に沿った追加学習を要する。
そのため、シミュレータを用いることによる学習コストの低減効果が小さい、という問題があった。
【0006】
本発明は、上記に鑑みてなされたものであって、実試験時の学習時間を短くすることを目的とする。
【課題を解決するための手段】
【0007】
上述の課題を解決して目的を達成する本発明の一つは、車両に搭載されて該車両を走行させる自動操縦ロボットを該車両が規定された指令車速に従って走行するように制御する、該自動操縦ロボットの制御装置であって、強化学習アルゴリズムに基づいた学習により車両の操作を出力する演算部を備え、該車両の操作は、複数の車両間で共通の複数の副方策と、MCP法又はMLSH法によって得られる、前記複数の副方策が混合されて対象車両に特化された主方策と、により構成される階層構造の方策により行われる自動操縦ロボットの制御装置である。
【0008】
又は、本発明の一つは、車両に搭載されて該車両を走行させる自動操縦ロボットを該車両が規定された指令車速に従って走行するように制御する、該自動操縦ロボットの制御方法であって、複数の車両について走行と学習とを繰り返す試験を行うことで、複数の車両に共通の汎化的な副方策を獲得すること、MCP法又はMLSH法によって得られる、前記複数の副方策が混合されて対象車両に特化された主方策を獲得することを含む自動操縦ロボットの制御方法である。
【発明の効果】
【0009】
本発明によれば、実試験時の学習時間を短くすることができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施形態1に係る自動操縦ロボットであるドライブロボットを用いた試験環境の概要を示す図である。
【
図2】
図2は、実施形態1における試験装置と、実施形態1に係る自動操縦ロボットの制御装置と、を示す機能ブロック図である。
【
図3】
図3は、実施形態1における強化学習部及び周辺の構成を示す機能ブロック図である。
【
図4】
図4は、実施形態1における車両操作制御部及び周辺の構成を示す機能ブロック図である。
【
図5】
図5は、実施形態1における副方策の事前学習を示すフローチャートである。
【
図6】
図6は、
図5に示すS3の処理を示すフローチャートである。
【
図7】
図7は、実施形態1における対象車両の主方策の学習を示すフローチャートである。
【
図8】
図8は、
図7に示すS13の処理を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して、本発明を実施するための形態について説明する。
ただし、本発明は、以下の実施形態の記載によって限定解釈されるものではない。
【0012】
(実施形態1)
図1は、本実施形態に係る自動操縦ロボットであるドライブロボット11を用いた試験環境の概要を示す図である。
図1に示す試験装置1は、ドライブロボット11と、車両12と、シャシーダイナモメータ13と、を備える。
車両12は、試験環境の床面上に配置された、性能が計測される被試験車両であり、駆動輪121と、運転席122と、車両操作ペダル123a,123bと、を備える。
シャシーダイナモメータ13は、試験環境の床面の下方に設置され、路上に代えてシャシローラ上で車両12を走行させ、車両12の特性を計測するための構成である。
車両12は、車両12の前輪である駆動輪121がシャシーダイナモメータ13の上に位置するように配置されている。
駆動輪121が回転する際には、シャシーダイナモメータ13は、駆動輪121の回転の反対方向に回転する。
【0013】
ドライブロボット11は、アクチュエータ110a,110bを備え、人間のドライバーに代えて車両12の運転席122に設置され、車両12を走行させる動作を行う機械である。
アクチュエータ110a,110bは、各々、車両操作ペダル123a,123bに当接する。
車両操作ペダル123a,123bの一方はアクセルペダルであり、他方はブレーキペダルである。
【0014】
ドライブロボット11は、制御装置2によって制御される。
制御装置2は、学習部20と、ドライブロボット制御部21と、を備え、車両12が規定された指令車速に従って走行するように車両操作ペダル123a,123bの開度を調整し、ドライブロボット11のアクチュエータ110a,110bを制御する。
すなわち、制御装置2は、車両12の車両操作ペダル123a,123bの開度を調整することで、規定された走行パターンであるモードに従うように、車両12の走行を制御する。
詳細には、制御装置2は、走行開始から時間が経過するに従って、各時刻に到達すべき車速である指令車速に従うように、車両12の走行を制御する。
【0015】
図2は、本実施形態における試験装置1と、本実施形態に係る自動操縦ロボットの制御装置2と、を示す機能ブロック図である。
図2に示す試験装置1は、ドライブロボット11と、車両12と、シャシーダイナモメータ13と、車両状態計測部14と、を備える。
車両状態計測部14は、車両12の状態を計測する計測部又は外的に設置された計測部である。
ここで、車両12の状態としては、車両操作ペダル123a,123bの操作値を例示することができる。
ここで、外的に設置された計測部としては、車両操作ペダル123a,123bの操作値を計測するカメラ又は赤外線センサ等を例示することができる。
【0016】
図2に示す制御装置2は、学習部20と、ドライブロボット制御部21と、指令車速生成部22と、演算部23と、を備える。
学習部20は、学習データ記憶部201と、データ成型部202と、強化学習部203と、学習済みモデル記憶部204と、を備え、ドライブロボット制御における車両モデルの学習を行う。
学習データ記憶部201は、強化学習部203における強化学習に用いる学習データを記憶する。
データ成型部202は、強化学習部203で使用される学習データを適切なデータ形式に成型する。
強化学習部203は、ドライブロボット制御の強化学習を行い、演算部23により実現される。
学習済みモデル記憶部204は、強化学習部203で学習したモデルを記憶する。
【0017】
ドライブロボット制御部21は、駆動状態取得部211と、データ成型部212と、車両操作制御部213と、を備え、ドライブロボット11に制御指令を与え、ドライブロボット11の状態の情報を取得する。
駆動状態取得部211は、試験装置1に含まれる構成の駆動状態の情報を取得する。
ここで、試験装置1に含まれる構成の駆動状態としては、ドライブロボット11のペダル操作検出値を例示することができる。
データ成型部212は、車両操作制御部213で使用される入力データを適切なデータ形式に成型する。
車両操作制御部213は、駆動状態取得部211からのデータに基づいてペダル操作指令を生成し、ドライブロボット11のアクチュエータ110a,110bへのペダル操作指令をドライブロボット11に出力する。
車両操作制御部213は演算部23により実現される。
【0018】
指令車速生成部22は、ドライブロボット制御の推論を行う際に、入力データとして使用する指令車速を生成する。
【0019】
図3は、本実施形態における強化学習部203及び周辺の構成を示す機能ブロック図である。
図3に示す強化学習部203は、主方策300と、副方策301-1,301-2,…,301-Kと、を含む。
副方策301-1,301-2,…,301-Kは、入力データに対するペダル操作指令の方策であり、学習済みモデル記憶部204に記憶される。
主方策300は、複数の副方策が統合された、全体的な1つのペダル操作指令の方策であり、学習済みモデル記憶部204に記憶される。
主方策300と副方策301-1,301-2,…,301-Kとは、主方策300が上位に位置する階層的な関係性を有し、強化学習部203に記憶された方策は、階層的な方策構造となる。
主方策300としては、将来指令車速、検出車速及びペダル操作値を例示することができ、副方策301-1,301-2,…,301-Kとしては、将来相対車速及びペダル操作値を例示することができる。
【0020】
本実施形態において、副方策には検出速度と指令速度との相対速度のような抽象状態を観測させ、主方策には絶対速度のような抽象化していない状態を観測させる。
ここで、検出速度v_t、指令速度v~_t及び意思決定a’を用いると、副方策で扱う観測は下記の式(1)で表され、主方策で扱う観測は下記の式(2)で表される。
【0021】
【0022】
【0023】
なお、意思決定a’が負である場合にはペダル操作指令はブレーキをかけることを表し、意思決定a’が正である場合にはペダル操作指令はアクセルをかけることを表し、-100≦a’≦100である。
また、上記の式(1),(2)は、データ成型部202又はデータ成型部212によって適切なデータ形式に成型された入力データに相当する。
【0024】
なお、ここで、方策は、一般に行動決定の確率分布であり、深層強化学習の枠組みではニューラルネットワークによって出力された分布形状パラメータで規定される分布である。
強化学習部203においては、大きな報酬が得られる行動を出力する確率が大きくなるように、ニューラルネットワークが学習される。
【0025】
図4は、本実施形態における車両操作制御部213及び周辺の構成を示す機能ブロック図である。
図4に示す車両操作制御部213は、主方策400と、副方策401-1,401-2,…,401-Kと、を含む。
副方策401-1,401-2,…,401-Kは、学習済みモデル記憶部204から呼び出されるデータに対するペダル操作指令の方策である。
主方策400は、複数の副方策が統合された、全体的な1つのペダル操作指令の方策であり、ドライブロボット11に出力される。
主方策400と副方策401-1,401-2,…,401-Kとは、主方策400が上位に位置する階層的な関係性を有し、ドライブロボット11に出力される方策は、階層的な方策構造となる。
主方策400としては、将来指令車速、検出車速及びペダル操作値を例示することができ、副方策401-1,401-2,…,401-Kとしては、将来相対車速及びペダル操作値を例示することができる。
【0026】
次に、本実施形態において行われる学習について説明する。
一般に、ドライブロボットの強化学習制御は、制御対象の車両を指令車速に沿って高精度に追従させる制御の獲得を目指す。
本実施形態においては、ドライブロボットの強化学習制御における実際の車両に対する実試験における学習の効率化を目的とし、シミュレータ等により事前学習において得られた副方策を実試験に再利用することで、新たな制御対象の方策が効率的に得られる。
本実施形態によれば、複数の車両の走行タスクにより様々な特質の複数の副方策が獲得され、車両ごとに個別に学習された主方策によって該車両に特化した走行が実現される。
【0027】
本実施形態における主方策は、MCP(Multiplicative Compositional Policies)法によって得られる。
MCP法においては、主方策である上位方策(Gating Function)では各下位方策の影響度が決定され、副方策である下位方策(Primitive)では状態におけるプリミティブ行動が選択され、行動が行動空間に関して分解され、各時刻で全ての下位方策を使用して合成が行われる。
MCP法によれば、複数の副方策に重み付けが行われ、重み付けが行われた複数の副方策が混合されることで全体の方策が得られる。
また、強化学習制御における強化学習アルゴリズムとしては、例えばPPO(Proximal Policy Optimization)を用いることができるが、これに限定されるものではない。
【0028】
また、MCP法を用いる場合には、副方策が互いに異なる振る舞いに特化すると、状態に対して対応する行動バリエーションが多くなり、全体性能を向上させることができる。
車両速度の追従制御では同一のタスクのみで学習を行うため、副方策の多様性が広がりにくいが、上述のように、副方策に抽象状態を観測させることで、副方策の多様化が可能である。
【0029】
全体の方策π(a|s)は、所定時刻における行動a及びその時の観測状態sを用いて表現された、k番目の副方策πk(a|s)と、各副方策に対する混合重みwk(s)(≧0)と、を用いて、下記の式(3)により表される。
ここで、分配関数Z(s)は、π(a|s)の全定義域における積分が1になるように規定される。
【0030】
【0031】
主方策は、車両ごとに個別に作成され、学習される。
副方策は、複数の車両走行間で共有され、学習される。
副方策としては、車両の走行において共通の制御要素又は車種ごとの制御要素を例示することができる。
【0032】
図5は、本実施形態における副方策の事前学習を示すフローチャートである。
図5に示す事前学習は、副方策を得るためのものであるため、シミュレータにより行えばよい。
まず、強化学習部203は、複数(K個)の副方策と、使用車両数の主方策と、を初期化する(S1)。
次に、車両操作制御部213は、学習済みモデル記憶部204に記憶されたモデル情報を主方策及び複数の副方策として読み込む(S2)。
なお、初期化直後のモデル情報は、ランダムに構築されればよい。
次に、シャシーダイナモメータ13上の車両12を交互に入れ替えて複数の車両による試験及び学習を行う(S3)。
S3において、副方策は複数の車両間で共通して用いられ、走行させる車両ごとに対応した主方策が呼び出される。
S3の試験は、学習走行用に用意した指令車速パターンの走行完了を1エピソードとし、エピソードごとに車両の入れ替えを行うが、本発明はこれに限定されるものではなく、車両の入れ替えは所定のタイミングで行えばよい。
なお、S3の試験は副方策を得るためのものであるため、S3の試験において用いられる車両12は、シミュレータで複数用意すればよく、最終的に制御獲得を目指す実際の車両でなくてよい。
【0033】
図6は、
図5に示すS3の処理を示すフローチャートである。
まず、車両操作制御部213は、指令車速及び駆動状態を用いてペダル操作指令を作成する(S31)。
駆動状態取得部211は、該ペダル操作指令に基づく走行データを取得し(S32)、取得した走行データを指令車速生成部22からの指令車速と合わせて、学習データ記憶部201及び車両操作制御部213に送る(S33)。
学習データ記憶部201は、指令車速及び走行データを記憶する(S34)。
この試験は、上述のように、エピソード終了まで行う。
次に、強化学習部203は、車両に対応した主方策300と、共通の副方策301-1,301-2,…,301-Kと、を学習させる(S35)。
この学習は、すべての車両の試験完了まで行う。
本実施形態においては、強化学習部203は上述のMCP法により学習を行う。
報酬設計は、指令車速と検出車速の誤差が小さいほど大きな報酬が得られる設計とする。
図5に示すように、学習して得られたモデル情報により、走行と学習とを繰り返す試験が行われ、複数の車両に共通の汎化的な副方策と、各車両に対応した主方策と、が獲得される。
【0034】
なお、同様の副方策しか獲得されないという状況に陥ると、新たな車両への副方策の適応が困難である。
そのため、事前学習は、多様な副方策が獲得されるように行われる。
獲得された副方策が多様でない場合、すなわち副方策の分布の広がりが小さい場合には、使用車両のバリエーションを拡大する。
【0035】
図7は、本実施形態における対象車両の主方策の学習を示すフローチャートである。
図7に示す主方策の学習は、
図5に示す事前学習後に、実際の車両を用いて行われる。
図7に示す主方策の学習では、事前学習において獲得された副方策の組み合わせを学習すればよいので、実際の車両を用いた学習、すなわち実試験時の学習を従来よりも短くすることができる。
また、このように主方策の学習を行うことで、単純に事前学習で獲得された副方策を組み合わせるよりも実際の車両に対する適応性を高めることができる。
まず、強化学習部203は、試験に用いる使用車両の主方策を初期化する(S11)。
次に、車両操作制御部213は、学習済みモデル記憶部204に記憶されたモデル情報を初期化された主方策及び複数の事前学習済みの副方策として読み込む(S12)。
なお、初期化直後のモデル情報の主方策は、ランダムに構築されればよい。
次に、シャシーダイナモメータ13上の対象車両である車両12について試験及び学習を行う(S13)。
【0036】
図8は、
図7に示すS13の処理を示すフローチャートである。
まず、車両操作制御部213は、指令車速及び駆動状態を用いてペダル操作指令を作成する(S131)。
駆動状態取得部211は、該ペダル操作指令に基づく走行データを取得し(S132)、取得した走行データを指令車速生成部22からの指令車速と合わせて、学習データ記憶部201及び車両操作制御部213に送る(S133)。
学習データ記憶部201は、指令車速及び走行データを記憶する(S134)。
この試験は、エピソード終了まで行うが、これに限定されるものではない。
次に、強化学習部203は、車両に対応した主方策300を学習させる(S135)。
この学習は、対象車両の試験完了まで行う。
図7に示すように、学習した主方策を含むモデル情報により、走行と学習とを繰り返す試験が行われ、対象車両に対応した主方策が獲得され、対象車両を制御可能となる。
【0037】
なお、本実施形態において、強化学習部203及び車両操作制御部213は、制御装置2の演算部23によって実現される。
すなわち、本実施形態に係る自動操縦ロボットの制御装置2は、強化学習アルゴリズムに基づいた学習により車両の操作を出力する演算部23を備える。
該車両の操作は、複数の車両間で共通の複数の副方策と、MCP法によって得られる、前記複数の副方策が混合されて対象車両に特化された主方策と、により構成される階層構造の方策により行われる。
【0038】
以上説明したように、事前学習により得られた複数の車両間に共通の副方策と、複数の副方策を組み合わせて対象車両に特化させた主方策と、により構成される、階層的な方策構造を用いることで、方策の表現能力が向上し、制御性能が向上する。
更には、複数の車両間に共通の副方策は事前学習により得られ、実際の車両に対する実試験では主方策の学習を行えばよいので、実試験時の学習時間を短くすることができる。
【0039】
(実施形態2)
実施形態1ではMCP(Multiplicative Compositional Policies)法によって主方策を得る形態を説明したが、本発明はこれに限定されるものではない。
主方策を得るために、MLSH(Meta Learning Shared Hierarchies)法が用いられてもよい。
【0040】
なお、本実施形態は、実施形態1におけるMCP法をMLSH法に置き換えた点以外は実施形態1と同じであるため、構成等の説明は省略する。
すなわち、本実施形態に係る自動操縦ロボットの制御装置2は、強化学習アルゴリズムに基づいた学習により車両の操作を出力する演算部を備える。
該車両の操作は、複数の車両間で共通の複数の副方策と、MLSH法によって得られる、前記複数の副方策が混合されて対象車両に特化された主方策と、により構成される階層構造の方策により行われる自動操縦ロボットの制御装置である。
【0041】
MLSH法においては、主方策である上位方策(Master Policy)では使用する下位方策が選択され、副方策である下位方策(Sub Policy)では状態における行動である制御方策が選択され、行動が時間に関して分解され、各時刻で使用する下位方策が1つ選択される。
【0042】
実施形態1におけるMCP法においては、時々刻々の観測状態に応じて副方策の重み付けを決定していたのに対し、本実施形態におけるMLSH法においては、いずれか1つの副方策が選択される。
また、実施形態1におけるMCP法においては、ペダル操作等の行動の基本要素が副方策として表現されやすいのに対し、本実施形態におけるMLSH法においては、制御対象タスクに固有の要素が副方策として表現されやすくなる。
本実施形態によれば、例えば、タスクの特性が時間的に変化するような場合に、指令車速に沿って高精度に追従させる制御を獲得することができる。
【0043】
また、MLSH法を用いる場合にも、副方策が互いに異なる振る舞いに特化すると、状態に対して対応する行動バリエーションが多くなり、全体性能を向上させることができる。
車両速度の追従制御では、同一のタスクのみで学習を行うため、副方策の多様性が広がりにくいが、MLSH法を用いる場合にも、副方策に抽象状態を観測させることで、副方策の多様化が可能である。
【0044】
なお、本発明は、上述の実施形態に限定されるものではなく、上述の構成に対して、構成要素の付加、削除又は転換を行った様々な変形例も含むものとする。
【符号の説明】
【0045】
1 試験装置
11 ドライブロボット
110a,110b アクチュエータ
12 車両
121 駆動輪
122 運転席
123a,123b 車両操作ペダル
13 シャシーダイナモメータ
14 車両状態計測部
2 制御装置
20 学習部
201 学習データ記憶部
202 データ成型部
203 強化学習部
204 学習済みモデル記憶部
21 ドライブロボット制御部
211 駆動状態取得部
212 データ成型部
213 車両操作制御部
22 指令車速生成部
23 演算部
300,400 主方策
301-1,301-2,…,301-K,401-1,401-2,…,401-K 副方策