JP6866940B1 - 自動操縦ロボットの制御装置及び制御方法 - Google Patents

自動操縦ロボットの制御装置及び制御方法 Download PDF

Info

Publication number
JP6866940B1
JP6866940B1 JP2020007945A JP2020007945A JP6866940B1 JP 6866940 B1 JP6866940 B1 JP 6866940B1 JP 2020007945 A JP2020007945 A JP 2020007945A JP 2020007945 A JP2020007945 A JP 2020007945A JP 6866940 B1 JP6866940 B1 JP 6866940B1
Authority
JP
Japan
Prior art keywords
vehicle
vehicle speed
time
control
robot
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.)
Active
Application number
JP2020007945A
Other languages
English (en)
Other versions
JP2021117001A (ja
Inventor
健人 吉田
健人 吉田
寛修 深井
寛修 深井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meidensha Corp
Original Assignee
Meidensha Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Meidensha Corp filed Critical Meidensha Corp
Priority to JP2020007945A priority Critical patent/JP6866940B1/ja
Priority to PCT/JP2020/047787 priority patent/WO2021149435A1/ja
Priority to US17/794,057 priority patent/US11718295B2/en
Application granted granted Critical
Publication of JP6866940B1 publication Critical patent/JP6866940B1/ja
Publication of JP2021117001A publication Critical patent/JP2021117001A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • B60W30/143Speed control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • B60W40/105Speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0097Predicting future conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M17/00Testing of vehicles
    • G01M17/007Wheeled or endless-tracked vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/10Historical data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Feedback Control In General (AREA)
  • Manipulator (AREA)

Abstract

【課題】自動操縦ロボットの制御装置及び制御方法を提供する。【解決手段】車両2が規定された指令車速に従って走行するように制御する、自動操縦ロボット4の制御装置10であって、車速と指令車速を含む、車両2の走行状態を取得する走行状態取得部22と、走行状態を基に、車両2を指令車速に従って走行させるような、将来の複数の時刻における車両2の操作の系列である操作系列を推論するように機械学習されている操作推論学習モデル40により、操作系列を推論する操作内容推論部31と、過去複数回において推論された操作系列の各々から、次に自動操縦ロボット4を制御する制御時刻に相当する操作を抽出し、これら抽出された複数の操作の重み付け和を計算することで最終操作値を計算し、最終操作値に基づき自動操縦ロボット4を制御する制御信号を生成して、自動操縦ロボット4に送信する、車両操作制御部23と、を備える。【選択図】図2

Description

本発明は、車両を走行させる自動操縦ロボットの制御装置及び制御方法に関する。
一般に、普通自動車などの車両を製造、販売する際には、国や地域により規定された、特定の走行パターン(モード)により車両を走行させた際の燃費や排出ガスを測定し、これを表示する必要がある。
モードは、例えば、走行開始から経過した時間と、その時に到達すべき車速との関係として、グラフにより表わすことが可能である。この到達すべき車速は、車両へ与えられる達成すべき速度に関する指令という観点で、指令車速と呼ばれることがある。
上記のような、燃費や排出ガスに関する試験は、シャシーダイナモメータ上に車両を載置し、車両に搭載された自動操縦ロボット、所謂ドライブロボット(登録商標)により、モードに従って車両を運転させることにより行われる。
指令車速には、許容誤差範囲が規定されている。車速が許容誤差範囲を逸脱すると、その試験は無効となるため、自動運転装置には、指令車速への高い追従性が求められる。
これに対し、特許文献1には、車速追従性を高め、事前に行う設定を容易にすることを目的とした、車両速度制御装置が開示されている。
特許文献1の車両速度制御装置は、例えばPID制御則等の、既知のフィードバック制御則に基づいている。
また、近年においては、指令車速への追従性をより高めるために、車両の現在の状態を入力すると、車両を指令車速に従って走行させるような操作を推論するように、強化学習などの手法により機械学習された学習モデルを用いて、ドライブロボットを制御することがある。
ただし、この場合においては、学習モデルが、前回の推論と大きく異なる操作を推論することがある。例えば、学習モデルがアクセルペダルとブレーキペダルの操作量を推論するような場合において、学習モデルがある時刻にアクセルペダルをオンとしブレーキペダルをオフとする操作を推論したとする。学習モデルは、この後の、次の推論において、アクセルペダルをオフとしブレーキペダルをオンとする操作を推論し、更に次の推論において、再度アクセルペダルをオンとしブレーキペダルをオフとする操作を推論する可能性がある。このような、操作量が大きい急激な操作が短い時間に細かく何度も行われるような操作の系列がドライブロボットに適用されると、車両が備える本来の燃費や排ガス性能よりも、悪い性能が測定される可能性がある。
上記のような、細かく操作量が大きな操作の系列を平滑化してなめらかにするために、学習モデルにより推論された操作に対し、過去に推論された、あるいは過去にドライブロボットに実際に適用された、過去の時刻における操作を含めて、操作量の移動平均を計算することで、操作の値を補正することが考えられる。あるいは、過去から現在にわたって推論された操作の系列を時間に対する関数とみたときに、この関数に対してローパスフィルタを適用することによっても、操作がなめらかになるように補正され得る。
特開2016−156687号公報
上記のような、学習モデルの推論結果の移動平均やローパスフィルタ等による補正は、現時刻において推論された操作の値を、過去の時刻における操作の値によって補正するものである。したがって、現時刻においてドライブロボットに適用される操作の値は、過去における操作の値の影響を受けて変更される。この現象を、図9を用いて説明する。図9の線L1は、学習モデルによる操作の推論結果を、横軸を時間軸としてプロットしたものである。線L2は、学習モデルによる操作の推論結果に対し、移動平均やローパスフィルタ等により補正された操作をプロットしたものである。
例えば、学習モデルが、時刻T1において、点P1として示されるような結果を推論した場合を考える。図9においては、この時刻T1よりも前の時刻T2、T3では、点P1よりも大きな操作量となっている。このような場合において、推論結果である操作量P1に移動平均やローパスフィルタ等を適用すると、点P4として示されるように、過去の操作量の影響を受けて推論結果よりも大きな値となるように、操作の値が補正される。すなわち、実際にはより小さな操作の量が適用されるのが望ましいところ、操作の量がより大きな値となるように補正されてしまっている。これにより、図9のように、例えば値を漸次的に変化させようとする一連の操作をドライブロボットに適用しようとする際に、実際には、望ましい操作よりも遅れた操作が適用されてしまう。
上記のような理由に因り、学習モデルの推論結果を移動平均やローパスフィルタ等により補正すると、操作は平滑化されるが、過去の推論結果の影響を受けざるを得ないために、車両の操作に遅れが生じ、指令車速への追従性が低減する。
本発明が解決しようとする課題は、指令車速に高い精度で追従させつつ、なめらかに車両を操作可能な、自動操縦ロボット(ドライブロボット)の制御装置及び制御方法を提供することである。
本発明は、上記課題を解決するため、以下の手段を採用する。すなわち、本発明は、車両に搭載されて前記車両を走行させる自動操縦ロボットを、前記車両が規定された指令車速に従って走行するように制御する、自動操縦ロボットの制御装置であって、車速と前記指令車速を含む、前記車両の走行状態を取得する走行状態取得部と、前記走行状態を基に、前記車両を前記指令車速に従って走行させるような、将来の複数の時刻における前記車両の操作の系列である操作系列を推論するように機械学習されている操作推論学習モデルにより、前記操作系列を推論する操作内容推論部と、過去複数回において推論された前記操作系列の各々から、次に前記自動操縦ロボットを制御する制御時刻に相当する前記操作を抽出し、これら抽出された複数の前記操作の重み付け和を計算することで最終操作値を計算し、当該最終操作値に基づき前記自動操縦ロボットを制御する制御信号を生成して、前記自動操縦ロボットに送信する、車両操作制御部と、を備えている、自動操縦ロボットの制御装置を提供する。
また、本発明は、車両に搭載されて前記車両を走行させる自動操縦ロボットを、前記車両が規定された指令車速に従って走行するように制御する、自動操縦ロボットの制御方法であって、車速と前記指令車速を含む、前記車両の走行状態を取得し、前記走行状態を基に、前記車両を前記指令車速に従って走行させるような、将来の複数の時刻における前記車両の操作の系列である操作系列を推論するように機械学習されている操作推論学習モデルにより、前記操作系列を推論し、過去複数回において推論された前記操作系列の各々から、次に前記自動操縦ロボットを制御する制御時刻に相当する前記操作を抽出し、これら抽出された複数の前記操作の重み付け和を計算することで最終操作値を計算し、当該最終操作値に基づき前記自動操縦ロボットを制御する制御信号を生成して、前記自動操縦ロボットに送信する、自動操縦ロボットの制御方法を提供する。
本発明によれば、指令車速に高い精度で追従させつつ、なめらかに車両を操作可能な、自動操縦ロボット(ドライブロボット)の制御装置及び制御方法を提供することができる。
本発明の実施形態における、自動操縦ロボット(ドライブロボット)を用いた試験環境の説明図である。 上記実施形態における自動操縦ロボットの制御装置のブロック図である。 上記制御装置に設けられた第1学習モデル(操作推論学習モデル)のブロック図である。 上記第1学習モデルの強化学習に用いられる、第2学習モデルのブロック図である。 上記制御装置の、車両操作制御部の説明図である。 上記自動操縦ロボットを制御する制御方法における、学習時のフローチャートである。 上記自動操縦ロボットの制御方法における、性能測定のために車両を走行制御させる際のフローチャートである。 上記実施形態の第2変形例における自動操縦ロボットの第1学習モデルのブロック図である。 先行技術の課題に関する説明図である。
以下、本発明の実施形態について図面を参照して詳細に説明する。
図1は、実施形態におけるドライブロボットを用いた試験環境の説明図である。試験装置1は、車両2、シャシーダイナモメータ3、及びドライブロボット4を備えている。
車両2は、床面上に設けられている。シャシーダイナモメータ3は、床面の下方に設けられている。車両2は、車両2の駆動輪2aがシャシーダイナモメータ3の上に載置されるように、位置づけられている。車両2が走行し駆動輪2aが回転する際には、シャシーダイナモメータ3が反対の方向に回転する。
ドライブロボット4は、車両2の運転席2bに搭載されて、車両2を走行させる。ドライブロボット4は、第1アクチュエータ4cと第2アクチュエータ4dを備えており、これらはそれぞれ、車両2のアクセルペダル2cとブレーキペダル2dに当接するように設けられている。
ドライブロボット4は、制御装置10によって制御されている。より詳細には、制御装置10は、ドライブロボット4の第1アクチュエータ4cと第2アクチュエータ4dを制御することにより、車両2のアクセルペダル2cとブレーキペダル2dの開度を変更、調整する。
制御装置10は、ドライブロボット4を、車両2が規定された指令車速に従って走行するように制御する。すなわち、制御装置10は、車両2のアクセルペダル2cとブレーキペダル2dの開度を変更することで、規定された走行パターン(モード)に従うように、車両1を走行制御する。より詳細には、制御装置10は、走行開始から時間が経過するに従い、各時間に到達すべき車速である指令車速に従うように、車両2を走行制御する。
制御装置10は、互いに通信可能に設けられた、ドライブロボット制御部20と、学習部30を備えている。
ドライブロボット制御部20は、ドライブロボット4の制御を行うための制御信号を生成し、ドライブロボット4に送信することで、ドライブロボット4を制御する。学習部30は、後に説明するような機械学習器に対して強化学習を行い、学習モデルを生成する。この学習モデルの出力を基に、ドライブロボット4の制御を行うための制御信号が生成される。
ドライブロボット制御部20は、例えば、ドライブロボット4の筐体外部に設けられた、コントローラ等の情報処理装置である。学習部30は、例えばパーソナルコンピュータ等の情報処理装置である。
図2は、制御装置10のブロック図である。ドライブロボット制御部20は、指令車速記憶部21、走行状態取得部22、及び車両操作制御部23を備えている。学習部30は、操作内容推論部31、報酬計算部32、強化学習部33、及び学習用データ記憶部34を備えている。
これら制御装置10の構成要素のうち、走行状態取得部22、車両操作制御部23、操作内容推論部31、報酬計算部32、及び強化学習部33は、例えば上記の各情報処理装置内のCPUにより実行されるソフトウェア、プログラムであってよい。また、指令車速記憶部21及び学習用データ記憶部34は、上記各情報処理装置内外に設けられた半導体メモリや磁気ディスクなどの記憶装置により実現されていてよい。
後に説明するように、操作内容推論部31は、ある時刻における走行状態を基に、当該時刻よりも後の車両2の操作の系列である操作系列を推論する。この、車両2の操作系列の推論を効果的に行うために、特に操作内容推論部31は、後に説明するように機械学習器を備えており、推論した操作系列に基づいたドライブロボット4の操作の後の時刻における走行状態に基づいて計算された報酬を基に機械学習器を強化学習して学習モデル(第1学習モデル、操作推論学習モデル)40を生成する。操作内容推論部31は、性能測定のために実際に車両2を走行制御させる際には、この学習が完了した第1学習モデル(操作推論学習モデル)40を使用して、車両2の操作系列を推論する。
すなわち、制御装置10は大別して、強化学習時における操作系列の学習と、性能測定のために車両を走行制御させる際における操作系列の推論の、2通りの動作を行う。説明を簡単にするために、以下ではまず、操作系列の学習時における、制御装置10の各構成要素の説明をした後に、車両2の性能測定に際して操作系列を推論する場合での各構成要素の挙動について説明する。
図2においては、各構成要素が太線と細線の2種類の矢印で結ばれて、データや処理の流れが示されている。車両2の性能測定に際して操作系列を推論する場合でのデータや処理の流れは、太線により示されている。操作系列の学習時におけるデータや処理の流れは、太線と細線の双方の矢印により示されている。
まず、操作系列の学習時における、ドライブロボット制御部20の構成要素の挙動を説明する。
指令車速記憶部21には、モードに関する情報に基づいて生成された、指令車速が記憶されている。モードは、例えば、走行開始から経過した時間と、その時に到達すべき車速との関係であり、したがって指令車速記憶部21には、実際には、経過時間と指令車速の関係が表現された、例えばテーブルやグラフ、関数等が格納されている。
走行状態取得部22は、現在時点における、車両2の走行状態を取得する。車両2の走行状態は、車両2に備えられた様々な図示されない計測器や、車両2を操作するドライブロボット4内に記録された操作実績から取得され得る。すなわち、車両2の走行状態は、現在時点における車両2の動作状況を数値化して表現したものであり、この値を取得する手段は、車両2の計測器による計測値に限られず、ドライブロボット4によって取得可能な値をも含む。
走行状態としては、前回の走行状態取得時刻からのアクセルペダル操作の、ドライブロボット4の操作実績中の操作量(以下、アクセルペダル検出量と呼称する)、前回の走行状態取得時刻からのブレーキペダル操作の、ドライブロボット4の操作実績中の操作量(以下、ブレーキペダル検出量と呼称する)、車両2において検出されたエンジン回転数(以下、エンジン回転数検出量と呼称する)、車両2において検出された車速(以下、検出車速と呼称する)を含む。
走行状態は、更に、当該走行状態が取得された時刻において、車両2が実現すべき指令車速を含む。
上記の走行状態の各々は、スカラー値であってもよいが、複数の値により実現されていてもよい。
走行状態の各々は、後述する機械学習器を学習させて学習モデル(第1学習モデル40)を生成する際の入力として主に使用される。このため、走行状態の各々に関し、走行状態が取得された時点のみではなく、その前後の複数の時刻において値を取得し、機械学習器の入力とすることにより、過去の経過や将来の推測を活かしてより効果的に学習することができる可能性がある。
例えば、アクセルペダル検出量、ブレーキペダル検出量、エンジン回転数検出量、検出車速等の、車両2の状態を実際に観測、計測することにより取得される走行状態については、機械学習器の学習アルゴリズムにおいて使用する過去の観測データの参照時間を観測データ参照時間Tobsとすると、観測データ参照時間Tobsの系列として、複数の値を有していてもよい。
また、上記のような観測データとは異なり、指令車速記憶部21に値が格納されており全ての時刻における値が随時参照可能な状態となっている指令車速については、機械学習器の学習アルゴリズムにおいて使用する将来の指令車速の参照時間を指令車速参照時間Trefとすると、指令車速参照時間Trefの系列として、複数の値を有していてもよい。
本実施形態においては、走行状態の各々は、複数の値により実現されている。
走行状態取得部22は、車両2に備えられた様々な図示されない計測器やドライブロボット4内に記録された操作実績等から、アクセルペダル検出量、ブレーキペダル検出量、エンジン回転数検出量、検出車速を取得する。
また、走行状態取得部22は、指令車速記憶部21から、指令車速を取得する。
走行状態取得部22は、これらの取得した走行状態を、学習部30へ送信する。
車両操作制御部23は、次に説明する操作内容推論部31が、走行状態取得部22が送信した送信状態を基に推論した、操作系列を受信し、これを基にしてドライブロボット4を制御する制御信号を生成して、ドライブロボット4へ送信する。
次に、操作系列の学習時における、学習部30の構成要素の挙動を説明する。
学習部30の操作内容推論部31は、機械学習器を備えている。この機械学習器は、強化学習されることにより、第1学習モデル40(操作推論学習モデル)が生成される。第1学習モデル40は、車両2の操作系列を推論するのに使用される。本実施形態においては、機械学習器は、強化学習により機械学習される。すなわち、機械学習器は、人工知能ソフトウェアの一部であるプログラムモジュールとして利用される、適切な学習パラメータが学習された学習済みモデル40を生成するものである。
学習部30は、この機械学習器を強化学習するに際し、強化学習に必要な入力となる、走行データを蓄積する。制御装置10が、学習がまだ終了していない、学習途中の機械学習器によって推論された操作によって車両2を走行制御することにより、走行データが蓄積される。この走行データにより機械学習器を強化学習した後に、この出力となる操作を用いて再度走行データを蓄積し、機械学習器を再度学習する。このように、機械学習器を繰り返し更新することにより、最終的に強化学習された、学習済みの第1学習モデル40が生成される。
以下、説明を簡単にするため、操作内容推論部31が備えている機械学習器と、これが学習されて生成される学習モデルをともに、第1学習モデル40と呼称する。
操作内容推論部31は、ある時刻(第1の時刻)において、走行状態取得部22から走行状態を受信すると、これを基に、学習中の第1学習モデル40により、第1の時刻より後の車両2の操作系列を推論する。
第1学習モデル40は、所定の第1の時間間隔をおいて、車両2の操作系列を推論する。この、第1学習モデル40における推論の間隔を、以降、ステップ周期Tstepと呼称する。
ドライブロボット制御部20は、後述するように、ドライブロボット4を制御する制御信号を、ドライブロボット4へと、所定の第2の時間間隔をおいて送信する。この、制御信号の送信間隔を制御周期Tとすると、本実施形態におけるステップ周期Tstepは、制御周期Tよりも大きな値である。このため、第1学習モデル40は、一度の推論により、ステップ周期Tstepに含まれる複数の制御周期Tに相当する、複数の、車両2の操作、すなわち操作系列を出力する。
また、第1学習モデル40は、上記のように、第1の時刻より後の、少なくともステップ周期Tstep後までの将来の複数の時刻における車両2の操作系列を推論するが、この推論の対象となる時間間隔は、本実施形態においては、ステップ周期Tstepよりも大きい。すなわち、第1学習モデル40は、実際には、ステップ周期Tstep後までの時間範囲内における車両2の操作を推論すると同時に、ステップ周期Tstep後よりも更に将来の時刻における、車両2の操作を、同一の操作系列として推論する。この、第1学習モデル40によって推論する時間範囲を、行動出力時間Tpredと呼称する。この場合においては、操作内容推論部31は、第1学習モデル40によって、第1の時刻から行動出力時間Tpred後までの時間範囲内の、複数の制御周期Tに相当する複数の時刻における操作を系列として推論する。
このようにした場合においては、第1学習モデル40は、実際に車両2が操作されるステップ周期Tstep後までの操作系列を推測するに際し、ステップ周期Tstepよりも更に後の時刻における車両2の操作を推測するため、将来の状況を見越した推測をするようになる可能性がある。
図3は、第1学習モデル40のブロック図である。
本実施形態においては、第1学習モデル40は、中間層を3層とした全5層の全結合型のニューラルネットワークにより実現されている。第1学習モデル40は、入力層41、中間層42、及び出力層43を備えている。
図3においては、各層が矩形として描かれており、各層に含まれるノードは省略されている。
入力層41は、複数の入力ノードを備えている。複数の入力ノードの各々は、例えばアクセルペダル検出量s1、ブレーキペダル検出量s2から、指令車速sNに至るまでの、走行状態sの各々に対応するように設けられている。
既に説明したように、各走行状態sは、複数の値により実現されている。例えば、図3においては、一つの矩形として示されている、アクセルペダル検出量s1に対応する入力は、実際には、アクセルペダル検出量s1の複数の値の各々に対応するように、入力ノードが設けられている。
各入力ノードには、走行状態取得部22から受信した、対応する走行状態sの値が格納される。
中間層42は、第1中間層42a、第2中間層42b、及び第3中間層42cを備えている。
中間層42の各ノードにおいては、前段の層(例えば、第1中間層42aの場合は入力層41、第2中間層42bの場合は第1中間層42a)の各ノードから、この前段の層の各ノードに格納された値と、前段の層の各ノードから当該中間層42のノードへの重みを基にした演算がなされて、当該中間層42のノード内に演算結果が格納される。
出力層43においても、中間層42の各々と同様な演算が行われ、出力層43に備えられた各出力ノードに演算結果が格納される。複数の出力ノードの各々は、操作系列aの各々に対応するように設けられている。本実施形態においては、車両2の操作の対象は、アクセルペダル2cとブレーキペダル2dであり、これに対応して、操作系列aは、例えばアクセルペダル操作系列a1とブレーキペダル操作系列a2となっている。
既に説明したように、各操作系列aは、複数の値により実現されている。例えば、図3においては、一つの矩形として示されている、アクセルペダル操作系列a1に対応する出力は、実際には、アクセルペダル操作系列a1の複数の値の各々に対応するように、出力ノードが設けられている。
操作内容推論部31は、上記のように、第1の時刻における走行状態sを基に、第1の時刻より後の行動出力時間Tpredまでにおける車両2の操作系列aを推論し、ドライブロボット制御部20の車両操作制御部23へ送信する。
この操作系列aに基づき、車両操作制御部23はステップ周期Tstepの間、ドライブロボット4を操作する。
そして、走行状態取得部22は、操作後の車両2の、第1の時刻よりも後の第2の時刻における走行状態sを再度取得する。
操作内容推論部31は、第1の時刻における走行状態s、これに対して推論され実際に実行された操作系列a、及び第2の時刻における走行状態sを、次に説明する報酬計算部32に送信する。
報酬計算部32は、操作内容推論部31から、第1の時刻における走行状態s、操作系列a、及び第2の時刻における走行状態sを受信する。報酬計算部32は、報酬を計算する。報酬は、操作系列a、及びこれに伴う第2の時刻における走行状態sが望ましくないほど小さい値を、望ましいほど大きい値を、有するように設計されている。後述の強化学習部33においては、行動価値(評価値)が、報酬が大きいほど高くなるように計算され、第1学習モデル40はこの行動価値が高くなるような操作系列aを出力するように、強化学習が行われる。
報酬計算部32は、第1の時刻における走行状態s、これに対応して推論された操作系列a、当該操作系列aを基に新たに生成された第2の時刻における走行状態s、及び計算した報酬を、学習用データ記憶部34に送信し、保存する。
このようにして、操作系列aの推論、この操作系列aがドライブロボット4によって実行された後の走行状態sの取得と、及び報酬の計算が、強化学習に十分なデータが蓄積されるまで、繰り返し行われる。
学習用データ記憶部34に、強化学習に十分な量の走行データが蓄積されると、次に説明する強化学習部33により強化学習が実行される。
強化学習部33は、学習用データ記憶部34から、複数の走行データを取得し、これを使用して、第2学習モデル50を学習する。第2学習モデル50は、機械学習器が学習されることにより、人工知能ソフトウェアの一部であるプログラムモジュールとして利用される、適切な学習パラメータが学習された学習済みモデルとなる。
学習部30は全体として、第1学習モデル40が推論した操作系列aがどの程度適切であったかを示す行動価値を計算し、第1学習モデル40が、この行動価値が高くなるような操作系列aを出力するように、強化学習を行う。行動価値は、走行状態sと、これに対する操作系列aを引数として、報酬が大きいほど行動価値Qを高くするように設計された関数Qとして表わされる。本実施形態においては、この関数Qの計算を、走行状態sと操作系列aを入力として、行動価値Qを出力するように設計された、関数近似器としての第2学習モデル50により行う。
強化学習部33は、学習用データ記憶部34から走行状態sと操作系列aを受信し、第2学習モデル50を機械学習させる。図4は、第2学習モデル50のブロック図である。
第2学習モデル50の入力層51においては、入力ノードが、例えばアクセルペダル検出量s1、ブレーキペダル検出量s2から、指令車速sNに至るまでの、走行状態sの各々と、及び、例えばアクセルペダル操作系列a1とブレーキペダル操作系列a2の、操作系列aの各々に対応するように設けられている。第2学習モデル50は、第1学習モデル40と同様な構造のニューラルネットワークにより実現されているため、構造上の詳細な説明を割愛する。
第1学習モデル40の出力層53においては、出力ノードは、例えば1つであり、これが、計算された行動価値Qの値に相当する。
強化学習部33は、TD(Temporal Difference)誤差、すなわち、操作系列aを実行する前の行動価値と、操作系列aを実行した後の行動価値の誤差を小さくして、行動価値Qとして適切な値が出力されるように、重みやバイアスの値等、ニューラルネットワークを構成する各パラメータの値を、誤差逆伝搬法、確率的勾配降下法により調整する。このように、現状の第1学習モデル40によって推論された操作系列aを適切に評価できるように、第2学習モデル50を学習させる。
第2学習モデル50の学習が進むと、第2学習モデル50は、より適切な行動価値Qの値を出力するようになる。すなわち、第2学習モデル50が出力する行動価値Qの値が学習前とは変わるため、これに伴い、行動価値Qが高くなるような操作系列aを出力するように設計された第1学習モデル40を更新する必要がある。このため、操作内容推論部31は第1学習モデル40を学習する。
具体的には、操作内容推論部31は、例えば行動価値Qの負値を損失関数とし、これをできるだけ小さくするような、すなわち行動価値Qが大きくなるような操作系列aを出力するように、重みやバイアスの値等、ニューラルネットワークを構成する各パラメータの値を、誤差逆伝搬法、確率的勾配降下法により調整して、第1学習モデル40を学習させる。
第1学習モデル40が学習され更新されると、出力される操作系列aが変化するため、再度走行データを蓄積し、これを基に第2学習モデル50を学習する。
このように、学習部30は、第1学習モデル40と第2学習モデル50の学習を繰り返すことにより、これら学習モデル40、50を強化学習する。
次に、実際に車両2の性能測定に際して操作系列を推論する場合での、すなわち、第1学習モデル40の強化学習が終了した後における、制御装置10の各構成要素の挙動について説明する。
走行状態取得部22は、現在時点における、車両2の走行状態を取得する。
走行状態取得部22は、車両2に備えられた様々な図示されない計測器やドライブロボット4内に記録された操作実績等から、アクセルペダル検出量、ブレーキペダル検出量、エンジン回転数検出量、検出車速を取得する。
また、走行状態取得部22は、指令車速記憶部21から、指令車速を取得する。
走行状態取得部22は、これらの取得した走行状態を、学習部30へ送信する。
学習部30の操作内容推論部31は、ある時刻(第1の時刻)において、走行状態取得部22から走行状態を取得すると、これを基に、学習済みの第1学習モデル40により、第1の時刻より後の車両2の操作系列aを推論する。
この第1学習モデル40は、操作系列aに基づいたドライブロボット4の操作の後の、第1の時刻より後の第2の時刻における走行状態sに基づいて計算された報酬を基に、強化学習されている、学習済みのモデルである。
操作内容推論部31は、学習部30によって事前に強化学習されて、重みやバイアスの値等の、ニューラルネットワークを構成する各パラメータの値が調整、決定された、学習済みの第1学習モデル40が、例えばCPU上でプログラムとして実行されることで、車両2の操作系列aを推論する。
操作内容推論部31は、推論した操作系列aを、車両操作制御部23へ送信する。
車両操作制御部23は、操作内容推論部31から操作系列aを受信し、この操作系列aに基づき、ステップ周期Tstepの間、ドライブロボット4を制御する制御信号を生成して、ドライブロボット4に送信することにより、ドライブロボット4を操作する。
図5は、車両操作制御部23の説明図である。
図5においては、第1学習モデル40の推論の間隔であるステップ周期Tstepおきの複数の時刻T(i=1〜M)の各々において、操作内容推論部31によって推論された操作系列a(i=1〜M)の関係が示されている。本実施形態においては、操作系列a(i=1〜M)の各々は、アクセルペダル操作系列a1である場合を考える。すなわち、操作系列は、本来であれば操作系列a1(i=1〜M)と記載すべきところ、記載を簡単にするために操作系列a(i=1〜M)と記載する。操作系列a(i=1〜M)は、ブレーキペダル操作系列a2であっても構わない。
説明の都合上、操作系列aが推論された時刻が過去に遡るほど、これに付された添え字iは、大きな値となるように示されている。すなわち、時刻T(i=1〜M)のうち最も過去の時刻は時刻Tであり、これに対応して時刻Tに操作内容推論部31によって推論された操作系列aは操作系列aである。また、時刻T(i=1〜M)のうち最も新しい時刻は時刻Tであり、これに対応する操作系列aは操作系列aである。
時刻Tにおいては、時刻Tから時刻Tまでの操作系列aが、操作内容推論部31により推論されている。時刻Tは、時刻TのTpred後の時刻であり、かつ時刻Tのステップ周期Tstep後の時刻である。また、時刻TM−1においては、時刻TM−1からTpred後の時刻までの操作系列aM−1が、操作内容推論部31により推論されている。以降、同様に、例えば時刻Tにおいては、時刻TからTpred後の時刻までの操作系列aが、操作内容推論部31により推論されている。
ここで、操作系列aから操作系列aまでの、M個の操作系列aにおいては、その全てに、時刻Tから時刻Tまでの時間の操作が含まれている。すなわち、時刻Tから時刻Tまでの任意の時刻Tにおいては、当該時刻TにおけるM個の操作ai、t(i=1〜M)が、それぞれ異なる時刻T(i=1〜M)において推論されている。
車両操作制御部23は、操作内容推論部31により最新の操作系列aが推論されたとしても、これをそのまま用いてドライブロボット4を操作する制御信号を生成しない。車両操作制御部23は、実際に制御を行う制御時刻Tにおいて実際に使用する操作である最終操作値aを、最新の操作系列aを含む、過去複数回において操作内容推論部31により推論された操作系列a(i=1〜M)内の操作ai、t(i=1〜M)を基に、以下のように算出する。
車両操作制御部23は、1より大きい係数xを基にして以下の式(1)により算出される重みα(i=1〜M)を、内部に格納している。
Figure 0006866940
上式により表される重みαは、αからαまでの総計が1となる。係数xは、ドライブロボット4により車両2を走行制御するときの車速誤差が最小となるように、予め実験的に求めることで決定される。
車両操作制御部23は、制御時刻Tに対して推論された複数の操作ai,tを操作系列a(i=1〜M)の各々から抽出して、この各々に対し、上記の重みαを次の式(2)により適用して、制御時刻Tにおける最終操作値aを算出する。
Figure 0006866940
制御時刻Tにおける最終操作値aを算出する時点においては、操作系列aの最初の操作に相当する時刻からステップ周期Tstepの時間内に当該時刻Tが含まれる、最新の操作系列a以外の操作系列a(i=2〜M)は、操作内容推論部31において過去に推論されている。したがって、上式(2)の成分のうち、α×ai、t(i=2〜M)の総和に関しては、最新の操作系列aの推論時に、計算を完了させておくことが可能である。このようにすることで、最新の操作系列aが推論された後に、α×a1、tを計算し、これを上記総和に加算するのみで、時刻Tの最終操作値aを算出可能となる。
車両操作制御部23は、上記のように、制御周期Tごとに、過去複数回において推論された操作系列a(i=1〜M)の各々から、次にドライブロボット4を制御する制御時刻Tに相当する操作ai、t(i=1〜M)を抽出し、これら抽出された複数の操作ai、t(i=1〜M)の重み付け和を計算することで最終操作値aを計算する。
車両操作制御部23は、最終操作値aに基づきドライブロボット4を制御する制御信号を生成して、ドライブロボット4に送信することで、ドライブロボット4を制御する。
次に、図1〜図5、及び図6、図7を用いて、上記のドライブロボット4の制御装置10によりドライブロボット4を制御する方法を説明する。図6は、ドライブロボット4の制御方法における、学習時のフローチャートである。図7は、ドライブロボット4の制御方法における、性能測定のために車両2を走行制御させる際のフローチャートである。
まず、図6を用いて、操作系列aの学習時における動作を説明する。
学習が開始されると(ステップS1)、走行環境や第1学習モデル40、第2学習モデル50等の各パラメータが初期設定される(ステップS3)。
その後、車両2の走行データを収集する(ステップS5)。より詳細には、制御装置10が、学習がまだ終了していない、学習途中の第1学習モデル40によって推論された操作系列によって車両2を走行制御することにより、走行データが蓄積される。走行データは、第1の時刻における走行状態s、操作系列a、第2の時刻における走行状態sと、及び受信した報酬の組み合わせである。
十分な走行データが学習用データ記憶部34に蓄積されると、これを用いて、第1学習モデル40と第2学習モデル50を強化学習し、学習モデル40、50を更新する(ステップS7)。
第1学習モデル40と第2学習モデル50の更新が終了すると、これら第1学習モデル40と第2学習モデル50の学習が終了したか否かを判定する(ステップS9)。
学習が終了していないと判定された場合には(ステップS9のNo)、ステップS5へ遷移する。すなわち、制御装置10は走行データを更に収集し、これを用いた第1学習モデル40と第2学習モデル50の更新を繰り返す。
学習が終了したと判定された場合には(ステップS9のYes)、学習処理を終了する(ステップS11)。
次に、図7を用いて、実際に車両2の性能測定に際して操作系列を推論する場合での、すなわち、第1学習モデル40の強化学習が終了した後において、車両2を走行制御する際の動作について説明する。
車両2が走行を開始すると(ステップS51)、走行環境が初期設定され、この時点での走行状態sを初期状態として観測する(ステップS53)。
走行状態sの観測は、次のように行われる。
走行状態取得部22が、現在時点における、車両2の走行状態sを取得する。
走行状態取得部22は、車両2に備えられた様々な図示されない計測器やドライブロボット4内に記録された操作実績等から、アクセルペダル検出量、ブレーキペダル検出量、エンジン回転数検出量、検出車速を取得する。
また、走行状態取得部22は、指令車速記憶部21から、指令車速を取得する。
走行状態取得部22は、これらの取得した走行状態sを、学習部30へ送信する。
操作内容推論部31は、走行状態取得部22から、走行状態sを受信する。操作内容推論部31は、走行状態sを受信した時刻を第1の時刻として、受信した走行状態sを基に、学習済みの第1学習モデル40により、第1の時刻より後の車両2の操作系列aを推論する(ステップS55)。
操作内容推論部31は、この、学習済みの第1学習モデル40が推論した操作系列aを、ドライブロボット制御部20の車両操作制御部23へ送信する。
操作内容推論部31は、上式(1)、(2)を用いて、ドライブロボット4の最終操作値を算出する。
車両操作制御部23は、最終操作値に基づきドライブロボット4を制御する制御信号を生成して、ドライブロボット4に送信することで、ドライブロボット4を制御する。
車両操作制御部23は、操作内容推論部31による推論の間隔に相当するステップ周期Tstepの間、ドライブロボット4を操作する。
そして、走行状態取得部22は、操作後の車両2の走行状態sを、ステップS53と同様な要領で、再度取得する(ステップS57)。
走行状態取得部22は、操作後の車両2の走行状態sを、学習部30へ送信する。
制御装置10は、車両2の走行が終了したか否かを判定する(ステップS59)。
走行が終了していないと判定された場合には(ステップS59のNo)、ステップS55へ遷移する。すなわち、制御装置10は、ステップS57で取得した走行状態sを基にした操作系列aの推論と、更なる走行状態sの観測を繰り返す。
走行が終了したと判定された場合には(ステップS59のYes)、走行処理を終了する(ステップS61)。
次に、上記のドライブロボットの制御装置及び制御方法の効果について説明する。
本実施形態におけるドライブロボット(自動操縦ロボット)の制御装置10は、車両2に搭載されて車両2を走行させるドライブロボット4を、車両2が規定された指令車速に従って走行するように制御するものであって、車速と指令車速を含む、車両2の走行状態sを取得する走行状態取得部22と、走行状態sを基に、車両2を指令車速に従って走行させるような、将来の複数の時刻における車両2の操作の系列である操作系列aを推論するように機械学習されている第1学習モデル(操作推論学習モデル)40により、操作系列aを推論する操作内容推論部31と、過去複数回において推論された操作系列a(i=1〜M)の各々から、次にドライブロボット4を制御する制御時刻Tに相当する操作ai、t(i=1〜M)を抽出し、これら抽出された複数の操作ai、t(i=1〜M)の重み付け和を計算することで最終操作値aを計算し、当該最終操作値aに基づきドライブロボット4を制御する制御信号を生成して、ドライブロボット4に送信する。
また、本実施形態におけるドライブロボット(自動操縦ロボット)の制御方法は、車両2に搭載されて車両2を走行させるドライブロボット4を、車両2が規定された指令車速に従って走行するように制御するものであって、車速と指令車速を含む、車両2の走行状態sを取得し、走行状態sを基に、車両2を指令車速に従って走行させるような、将来の複数の時刻における車両2の操作の系列である操作系列aを推論するように機械学習されている第1学習モデル(操作推論学習モデル)40により、操作系列aを推論し、過去複数回において推論された操作系列a(i=1〜M)の各々から、次にドライブロボット4を制御する制御時刻Tに相当する操作ai、t(i=1〜M)を抽出し、これら抽出された複数の操作ai、t(i=1〜M)の重み付け和を計算することで最終操作値aを計算し、当該最終操作値aに基づきドライブロボット4を制御する制御信号を生成して、ドライブロボット4に送信する。
上記のような構成によれば、第1学習モデル40が操作系列aを推論するに際し基づく、車両2の走行状態は、指令車速を含む。また、第1学習モデル40は、車両2を指令車速に従って走行させるような、将来の複数の時刻における車両2の操作の系列である操作系列aを推論するように機械学習されている。このため、第1学習モデル40は、指令車速に高精度で追従するような操作系列aを推論可能である。
ここで、上記のような構成によれば、操作内容推論部31における複数の推論において、同一の制御時刻Tに実行すべき操作ai、t(i=1〜M)がそれぞれ推論されており、これを抽出し重み付け和を計算して、制御時刻Tの最終操作値aを算出している。
すなわち、制御時刻Tの最終操作値aを算出するに際し、複数の推論において導出された複数の操作を基に、これらの重み付け和を計算しているため、単一の推論において導出された操作のみを基にした場合に比べると、時系列に沿った一連の操作が平滑化されてなめらかなものとなる。
また、最終操作値aを算出する際に重み付け和が計算される対象となるのは、複数の推論の各々における、同一の制御時刻Tに実行すべき操作ai、t(i=1〜M)である。このため、当該制御時刻Tとは異なる、過去の、あるいは将来の、他の時刻の操作は計算の対象とならない。このように、他の時刻における操作の演算への影響が排除され、指令車速への追従性が損なわれることが抑制される。
以上により、指令車速に高い精度で追従させつつ、なめらかに車両を操作可能な、自動操縦ロボットの制御装置及び制御方法を実現可能となる。
例えば、車両2への悪影響を低減することを目的として、車両操作制御部23が最終操作値aを算出する際に、アクセルペダルとブレーキペダルが同時に操作されないようにし、かつ、第1学習モデル40がこれら双方の操作を出力している場合には、前の操作において対象となったペダルを操作対象とするような実装が考えられる。このような場合においては、ペダル操作を他のペダルへと切り替えるに際し、第1学習モデル40が、双方のペダルの操作を一旦ゼロとするような操作を推論するのが望ましい。
例えば、操作に関して他の時刻の操作との移動平均やローパスフィルタ等を適用した場合においては、ある時刻にペダル操作を切り替えようとしてゼロの値を出力しようとしたとしても、値がゼロではない他の時刻の操作の影響を受けて、ゼロではない値が出力され、結果としてペダル操作が切り替えられないような場合が生じ得る。
これに対し、上記のような構成によれば、複数の推論の各々における当該時刻の操作が適切にゼロとなっていれば、当該時刻の操作としてゼロの値を出力可能となるため、ペダル操作の切り替えに遅れが生じない。
更に、重み付け和を計算する対象は、異なる複数の推論における、同一の制御時刻Tに実行すべき操作ai、t(i=1〜M)であるため、他の時刻の操作結果と演算を行う場合に比べると、予測の頑健性を向上させることができる。
また、重み付け和において使用される重みα(i=1〜M)は、重み付け和の計算に使用される操作ai、t(i=1〜M)が抽出された操作系列a(i=1〜M)の、推論された時刻T(i=1〜M)が過去に遡るものほど、値が小さくなるように設定されている。
上記のような構成によれば、操作系列a(i=1〜M)が推論される基となる、操作内容推論部31に入力される走行状態sが新しいものであるほど、これに対応して出力される操作系列a(i=1〜M)には、より大きな重みα(i=1〜M)が適用される。このため、最新の推論結果に対して過去の推論結果を考慮して最終操作値aを計算しているにもかかわらず、最新の推論結果が過去の推論結果に過度に影響されて指令車速への追従性が損なわれる可能性を低減可能である。
また、車両操作制御部23は、過去複数回において推論された操作系列a(i=1〜M、操作系列が推論された時刻T(i=1〜M)が過去に遡るほどiは大きな値となる)の各々から、制御時刻Tに対して抽出された複数の操作をai,t(i=1〜M)としたときに、1より大きい係数xを基にして上記の式(1)により算出される重みα(i=1〜M)を上記の式(2)に適用して、最終操作値aを算出する。
上記のような構成によれば、最終操作値aを適切に算出可能である。
[実施形態の第1変形例]
次に、上記実施形態として示したドライブロボットの制御装置及び制御方法の変形例を説明する。本変形例におけるドライブロボット4の制御装置は、上記実施形態のドライブロボット4の制御装置10とは、重みα(i=1〜M)の設定が異なっている。
より詳細には、本変形例においては、車速として有され得る値の範囲は、1以上の車速区分閾値により複数の車速域に区分され、係数xは、複数の車速域の各々に対して、低い車速に対応する車速域ほど大きい値となるように設定されている。
重みα(i=1〜M)は、車両2の車速域ごとに、適した範囲が異なる可能性がある。例えば、車速域が低い車速となるほど、指令車速に追従するために機敏なペダル操作が必要となる。
ここで、上記の式(1)においては、係数xの値が大きくなるほど、iが大きい場合の重みαの値が小さくなり、iが小さい場合の重みαの値が大きくなる。すなわち、係数xの値を大きくすることで、重み付け和により最終操作値aを算出する際に、新しく推論された操作系列aに対応して乗算される重みαの値を大きくして、現時刻に近い予測の重要度を高めることができる。
例えば、車速域ごとに適した係数xの値を、予め実験的に求めておき、車速に応じてxを変更しながらドライブロボット4を制御することによって、操作のなめらかさと、指令車速への追従性を、バランスよく両立させることができる。
本第1変形例が、既に説明した実施形態と同様な効果を奏することは言うまでもない。
[実施形態の第2変形例]
次に、図8を用いて、上記実施形態として示したドライブロボットの制御装置及び制御方法の変形例を説明する。図8は、本変形例におけるドライブロボットの制御装置の、第1学習モデル60のブロック図である。本変形例におけるドライブロボット4の制御装置は、上記実施形態のドライブロボット4の制御装置10とは、係数xは、第1学習モデル(操作推論学習モデル)60の出力値であり、第1学習モデル60は、走行状態sを基に、係数xを推論するように機械学習されている点が異なっている。
すなわち、図8に示される第1学習モデル60においては、出力ノード63として係数xに対応するノードが追加されており、係数xが、車速への追従性を高めることができる値となるように、第1学習モデル40が強化学習される。
本第2変形例が、既に説明した実施形態と同様な効果を奏することは言うまでもない。
なお、本発明のドライブロボットの制御装置及び制御方法は、図面を参照して説明した上述の実施形態及び各変形例に限定されるものではなく、その技術的範囲において他の様々な変形例が考えられる。
例えば、上記実施形態においては、第1学習モデル40及び第2学習モデル50を学習させる際には、実際に車両2を走行させて走行データを観測、取得するように説明したが、これに限られない。例えば、学習時においては、車両2の代わりにシミュレータを使用してもよい。
また、上記実施形態においては、操作の対象はアクセルペダル2cとブレーキペダル2dであり、走行状態は、アクセルペダル2cとブレーキペダル2dの検出量を含むように構成されていたが、これに限られない。
また、学習モデル40、50の構成は、上記実施形態において説明したものに限られないのは、言うまでもない。例えば、学習モデル40、50において、中間層42、52の数を、3より小さい、または3より多い数とする等、多くの変形例が想定されるが、本発明の主旨を損なわない限りにおいて、どのような構成を備えていてもよい。
更には、上記実施形態においては、第1学習モデル40は強化学習されたが、これに限られず、本発明の主旨が損なわれない限り、他の機械学習方法により学習されてもよい。
これ以外にも、本発明の主旨を逸脱しない限り、上記実施形態及び各変形例で挙げた構成を取捨選択したり、他の構成に適宜変更したりすることが可能である。
1 試験装置
2 車両
3 シャシーダイナモメータ
4 ドライブロボット(自動操縦ロボット)
10 制御装置
20 ドライブロボット制御部
21 指令車速記憶部
22 走行状態取得部
23 車両操作制御部
30 学習部
31 操作内容推論部
32 報酬計算部
33 強化学習部
34 学習用データ記憶部
40、60 第1学習モデル(操作推論学習モデル)
50 第2学習モデル
Q 行動価値関数
s 走行状態
sN 指令車速
a、a(i=1〜M) 操作系列
i、t(i=1〜M) 操作
(i=1〜M) 時刻
制御時刻

Claims (6)

  1. 車両に搭載されて前記車両を走行させる自動操縦ロボットを、前記車両が規定された指令車速に従って走行するように制御する、自動操縦ロボットの制御装置であって、
    車速と前記指令車速を含む、前記車両の走行状態を取得する走行状態取得部と、
    前記走行状態を基に、前記車両を前記指令車速に従って走行させるような、将来の複数の時刻における前記車両の操作の系列である操作系列を推論するように機械学習されている操作推論学習モデルにより、前記操作系列を推論する操作内容推論部と、
    過去複数回において推論された前記操作系列の各々から、次に前記自動操縦ロボットを制御する制御時刻に相当する前記操作を抽出し、これら抽出された複数の前記操作の重み付け和を計算することで最終操作値を計算し、当該最終操作値に基づき前記自動操縦ロボットを制御する制御信号を生成して、前記自動操縦ロボットに送信する、車両操作制御部と、
    を備えている、自動操縦ロボットの制御装置。
  2. 前記重み付け和において使用される重みは、前記重み付け和の計算に使用される前記操作が抽出された前記操作系列の、推論された時刻が過去に遡るものほど、値が小さくなるように設定されている、請求項1に記載の自動操縦ロボットの制御装置。
  3. 前記車両操作制御部は、過去複数回において推論された前記操作系列a(i=1〜M、前記操作系列が推論された前記時刻が過去に遡るほどiは大きな値となる)の各々から、前記制御時刻Tに対して抽出された複数の前記操作をai,t(i=1〜M)としたときに、1より大きい係数xを基にして以下の式(1)により算出される前記重みα(i=1〜M)
    Figure 0006866940
    を以下の式(2)
    Figure 0006866940
    に適用して、前記最終操作値aを算出する、請求項2に記載の自動操縦ロボットの制御装置。
  4. 前記車速として有され得る値の範囲は、1以上の車速区分閾値により複数の車速域に区分され、
    前記係数xは、前記複数の車速域の各々に対して、低い前記車速に対応する前記車速域ほど大きい値となるように設定されている、請求項3に記載の自動操縦ロボットの制御装置。
  5. 前記係数xは、前記操作推論学習モデルの出力値であり、
    前記操作推論学習モデルは、前記走行状態を基に、前記係数xを推論するように機械学習されている、請求項3または4に記載の自動操縦ロボットの制御装置。
  6. 車両に搭載されて前記車両を走行させる自動操縦ロボットを、前記車両が規定された指令車速に従って走行するように制御する、自動操縦ロボットの制御方法であって、
    車速と前記指令車速を含む、前記車両の走行状態を取得し、
    前記走行状態を基に、前記車両を前記指令車速に従って走行させるような、将来の複数の時刻における前記車両の操作の系列である操作系列を推論するように機械学習されている操作推論学習モデルにより、前記操作系列を推論し、
    過去複数回において推論された前記操作系列の各々から、次に前記自動操縦ロボットを制御する制御時刻に相当する前記操作を抽出し、これら抽出された複数の前記操作の重み付け和を計算することで最終操作値を計算し、当該最終操作値に基づき前記自動操縦ロボットを制御する制御信号を生成して、前記自動操縦ロボットに送信する、自動操縦ロボットの制御方法。
JP2020007945A 2020-01-22 2020-01-22 自動操縦ロボットの制御装置及び制御方法 Active JP6866940B1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020007945A JP6866940B1 (ja) 2020-01-22 2020-01-22 自動操縦ロボットの制御装置及び制御方法
PCT/JP2020/047787 WO2021149435A1 (ja) 2020-01-22 2020-12-22 自動操縦ロボットの制御装置及び制御方法
US17/794,057 US11718295B2 (en) 2020-01-22 2020-12-22 Automatic driving robot control device and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020007945A JP6866940B1 (ja) 2020-01-22 2020-01-22 自動操縦ロボットの制御装置及び制御方法

Publications (2)

Publication Number Publication Date
JP6866940B1 true JP6866940B1 (ja) 2021-04-28
JP2021117001A JP2021117001A (ja) 2021-08-10

Family

ID=75638896

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020007945A Active JP6866940B1 (ja) 2020-01-22 2020-01-22 自動操縦ロボットの制御装置及び制御方法

Country Status (3)

Country Link
US (1) US11718295B2 (ja)
JP (1) JP6866940B1 (ja)
WO (1) WO2021149435A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6866940B1 (ja) * 2020-01-22 2021-04-28 株式会社明電舎 自動操縦ロボットの制御装置及び制御方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0471933A (ja) * 1990-07-10 1992-03-06 Toyota Motor Corp 車両用走行制御装置
JPH04194724A (ja) * 1990-11-28 1992-07-14 Nippondenso Co Ltd 自動運転制御装置
JPH06105414A (ja) * 1992-09-18 1994-04-15 Toshiba Corp 運転制御装置
JP3873584B2 (ja) * 2000-06-29 2007-01-24 日産自動車株式会社 車両用自動運転装置
US9766625B2 (en) * 2014-07-25 2017-09-19 Here Global B.V. Personalized driving of autonomously driven vehicles
JP6429235B2 (ja) 2015-02-24 2018-11-28 株式会社明電舎 車両速度制御装置
US10901423B2 (en) * 2017-09-01 2021-01-26 International Business Machines Corporation Generating driving behavior models
JP6954168B2 (ja) 2018-02-15 2021-10-27 株式会社明電舎 車両速度制御装置及び車両速度制御方法
JP2020148593A (ja) * 2019-03-13 2020-09-17 株式会社明電舎 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法
US11643073B2 (en) * 2019-10-24 2023-05-09 Zoox, Inc. Trajectory modifications based on a collision zone
JP6866940B1 (ja) * 2020-01-22 2021-04-28 株式会社明電舎 自動操縦ロボットの制御装置及び制御方法

Also Published As

Publication number Publication date
WO2021149435A1 (ja) 2021-07-29
US11718295B2 (en) 2023-08-08
JP2021117001A (ja) 2021-08-10
US20230038802A1 (en) 2023-02-09

Similar Documents

Publication Publication Date Title
CN111695690B (zh) 基于合作式强化学习与迁移学习的多智能体对抗决策方法
US10692018B2 (en) Machine learning device and machine learning method for learning optimal object grasp route
WO2020183864A1 (ja) 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法
CN112668235A (zh) 基于离线模型预训练学习的ddpg算法的机器人控制方法
JP6908144B1 (ja) 自動操縦ロボットの制御装置及び制御方法
JP6542833B2 (ja) 制御装置及び機械学習装置
JP6954168B2 (ja) 車両速度制御装置及び車両速度制御方法
JP6457369B2 (ja) パラメータを自動調整する機能を有する機械学習装置及び電動機制御装置
JP6841852B2 (ja) 制御装置及び制御方法
CN111433689B (zh) 用于目标***的控制***的生成
JP6866940B1 (ja) 自動操縦ロボットの制御装置及び制御方法
US20190317472A1 (en) Controller and control method
CN113614743A (zh) 用于操控机器人的方法和设备
CN108687766B (zh) 机器人的控制装置、机器学习装置以及机器学习方法
CN116587275A (zh) 基于深度强化学习的机械臂智能阻抗控制方法及***
JP7110891B2 (ja) 自動操縦ロボットの制御装置及び制御方法
JP7336856B2 (ja) 情報処理装置、方法及びプログラム
JP2021143882A (ja) 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法
WO2022059484A1 (ja) 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法
JP7248053B2 (ja) 制御装置及び制御方法
JPWO2020138436A1 (ja) ロボット制御装置、ロボットシステム及びロボット制御方法
JP2021128510A (ja) 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法
JP2024001584A (ja) 自動操縦ロボットの制御装置及び制御方法
Uc-Cetina Supervised reinforcement learning using behavior models
CN111753982B (zh) 一种基于强化学习的人机融合自主性边界切换方法及***

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210107

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210118

TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210303

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210322

R150 Certificate of patent or registration of utility model

Ref document number: 6866940

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150