JP6908144B1 - 自動操縦ロボットの制御装置及び制御方法 - Google Patents
自動操縦ロボットの制御装置及び制御方法 Download PDFInfo
- Publication number
- JP6908144B1 JP6908144B1 JP2020018391A JP2020018391A JP6908144B1 JP 6908144 B1 JP6908144 B1 JP 6908144B1 JP 2020018391 A JP2020018391 A JP 2020018391A JP 2020018391 A JP2020018391 A JP 2020018391A JP 6908144 B1 JP6908144 B1 JP 6908144B1
- Authority
- JP
- Japan
- Prior art keywords
- inference
- vehicle
- unit
- adjustment coefficient
- learning model
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01M—TESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
- G01M17/00—Testing of vehicles
- G01M17/007—Wheeled or endless-tracked vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Automation & Control Theory (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Feedback Control In General (AREA)
Abstract
Description
モードは、例えば、走行開始から経過した時間と、その時に到達すべき車速との関係として、グラフにより表わすことが可能である。この到達すべき車速は、車両へ与えられる達成すべき速度に関する指令という観点で、指令車速と呼ばれることがある。
上記のような、燃費や排出ガスに関する試験は、シャシーダイナモメータ上に車両を載置し、車両に搭載された自動操縦ロボット、所謂ドライブロボット(登録商標)により、モードに従って車両を運転させることにより行われる。
例えば、特許文献1には、人間らしいペダル操作を行うドライバモデルを強化学習によって構築することが可能な車輌用走行シミュレーション装置、ドライバモデル構築方法及びドライバモデル構築プログラムが開示されている。
より詳細には、車輌用走行シミュレーション装置は、ドライバモデルのゲインの値を変更させながら、車輌モデルを複数回走行させ、この時に変更されたゲインの値を報酬値に基づいて評価することによって、ドライバモデルのゲインの設定を自動的に行う。
特許文献1の構成においては、実際に車輌を走行させるに際し、強化学習により予め決定されたゲインの値を用いて、ドライバモデルが車輌をPID制御する。
一般に、ニューラルネットワーク等の、機械学習器を学習させて生成される学習モデルによる推論は、演算量が多くなる傾向にある。したがって、実際にドライブロボットを制御する制御時刻の時間間隔である制御周期よりも、操作推論学習モデルによって操作を推論する推論時刻の時間間隔である推論周期の方が長くなり、一つの推論周期内に、複数の制御時刻が含まれることがある。
このような場合に、ある推論周期内に含まれる複数の制御時刻の全てにおいて、操作推論学習モデルによって最新に推論された操作と同じ操作を適用することも考えられるが、これは緻密な制御とはいえず、指令車速への高い追従性が望めない。
あるいは、次の推論周期に含まれる複数の制御時刻の全てにおける操作を、一度にまとめて推論することも考えられる。しかし、この場合においては、推論される操作の数が増えるために操作推論学習モデルの構造が複雑になる。また、操作推論学習モデルの学習も容易ではない。
本実施形態においては、自動操縦ロボットとしては、ドライブロボット(登録商標)を用いているため、以下、自動操縦ロボットをドライブロボットと記載する。
車両2は、床面上に設けられている。シャシーダイナモメータ3は、床面の下方に設けられている。車両2は、車両2の駆動輪2aがシャシーダイナモメータ3の上に載置されるように、位置づけられている。車両2が走行し駆動輪2aが回転する際には、シャシーダイナモメータ3が反対の方向に回転する。
ドライブロボット4は、車両2の運転席2bに搭載されて、車両2を走行させる。ドライブロボット4は、アクチュエータ4cを備えている。アクチュエータ4cは、車両2のアクセルペダル2cに当接するように設けられている。
制御装置11は、ドライブロボット4を、車両2が規定された指令車速に従って走行するように制御する。すなわち、制御装置11は、車両2のアクセルペダル2cの開度を変更することで、規定された走行パターン(モード)に従うように、車両2を走行制御する。より詳細には、制御装置11は、走行開始から時間が経過するに従い、各時間に到達すべき車速である指令車速に従うように、車両2を走行制御する。
ドライブロボット制御部20は、ドライブロボット4の制御を行うための制御信号を生成し、ドライブロボット4に送信することで、ドライブロボット4を制御する。学習部30は、後に説明するような機械学習を行い、操作推論学習モデル、第1行動価値推論学習モデル、調整係数推論学習モデル、及び第2行動価値推論学習モデルを生成する。上記のような、ドライブロボット4の制御を行うための制御信号は、操作推論学習モデルと調整係数推論学習モデルによる推論結果を基に生成される。
ドライブロボット制御部20は、例えば、ドライブロボット4の筐体外部に設けられた、コントローラ等の情報処理装置である。学習部30は、例えばパーソナルコンピュータ等の情報処理装置である。
試験装置1は、既に説明したような車両2、シャシーダイナモメータ3、及びドライブロボット4に加え、車両状態計測部5を備えている。車両状態計測部5は、車両2やシャシーダイナモメータ3の状態を計測する各種の計測装置である。車両状態計測部5は、本実施形態においては、車両2のエンジン回転数ndet、エンジン温度ddet、及び車速vdetを検出する。これらの検出された値の各々は、次に説明する制御装置11の、ドライブロボット制御部20に送信される。
制御装置11の、学習データ記憶部35以外の各構成要素は、例えば上記の各情報処理装置内のCPUにより実行されるソフトウェア、プログラムであってよい。また、学習データ記憶部35は、上記各情報処理装置内外に設けられた半導体メモリや磁気ディスクなどの記憶装置により実現されていてよい。
操作内容推論部41、第1行動価値推論部42、調整係数推論部45、及び第2行動価値推論部46の各々は、操作推論学習モデル50、第1行動価値推論学習モデル60、調整係数推論学習モデル70、及び第2行動価値推論学習モデル80を、それぞれ備えている。
特に本実施形態においては、操作補完部24は、これを構成する走行抵抗演算部25、フィードバック操作量演算部26、及び車両駆動力演算部27により、推論された車両2の操作に対して、推論された調整係数に則ってフィードバック系の制御を行い、実際にドライブロボット4に適用する操作を演算して、ドライブロボット4を制御する。
ここではまず、ドライブロボット制御部20を詳細に説明する。以下、操作内容推論部41及び調整係数推論部45における、操作と調整係数を推論する推論時刻の時間間隔を、推論周期(第1の周期)Tnnと呼称する。また、実際にドライブロボット4を制御する制御時刻の時間間隔を、制御周期(第2の周期)Tdrと呼称する。本実施形態においては、推論周期Tnnは制御周期Tdrよりも長くなるように設定されている。すなわち、ある時刻における操作と調整係数の推論結果と同一の値が、次の推論周期Tnn後の時刻までの時間間隔内の、ドライブロボット4の全ての制御時刻において適用される。以下のドライブロボット制御部20の各動作は、制御周期Tdrにおいて実行される。
車両操作制御部22は、後に説明する学習部30の指令車速生成部31から、従うべき指令車速vrefを受信する。車両操作制御部22の車両駆動力演算部27は、この受信した指令車速vrefの微分値と、車両2の重量を基に所定の近似式により車両駆動力Fxを演算する。
走行抵抗演算部25は、検出車速vdetを基に、実路面上での実走行を模した走行抵抗FRLを演算する。走行抵抗演算部25は、走行抵抗FRLをシャシーダイナモメータ3へ送信し、走行中の車両2に対して走行抵抗力を発生させる。
推論データ成形部32は、駆動状態取得部23から受信した値の各々と、別途指令車速生成部31から受信した指令車速vrefを併せて、車両2の走行状態として、操作内容推論部41に送信する。
操作内容推論部41は、これら走行状態を基に、車両2を指令車速vrefに従って走行させるような車両2の操作を推論するように強化学習されている。操作内容推論部41は、推論周期Tnnごとに、受信した走行状態を基に、車両2の操作を推論する。本実施形態においては、操作の対象はアクセルペダル2cを含んでいる。このため、操作内容推論部41は、本実施形態においてはアクセル開度の変更量を演算する。このアクセル開度の変更量は、厳密には、指令車速vrefから算出された要求駆動力Frefを基に、フィードフォワード系の推論を行うことで算出されるものである。すなわち、操作内容推論部41によって算出されるアクセル開度の変更量は、フィードフォワード変更量(以下、FF変更量と記載する)θFFである。
フィードバック操作量演算部26は、推論周期Tnnごとに受信する調整係数Kp、Ki、Kdの最新の推論結果を基に、フィードバック制御により、操作θFFの調整量θFB、すなわちアクセル開度のフィードバック変更量(以下、FB変更量と記載する)θFBを演算する。特に本実施形態においては、フィードバック制御は、PID(Proportional−Differential Controller)制御である。フィードバック操作量演算部26は、上記のように、推論周期Tnnよりも短い制御周期Tdrで、調整量θFBを演算する。
操作補完部24は、推論周期Tnnごとに受信する操作θFFの最新の推論結果に対し、フィードバック操作量演算部26により演算された調整量θFBを加算して、調整後操作θref、すなわち実際に使用される変更量θrefを計算する。操作補完部24は、上記のように、推論周期Tnnよりも短い制御周期Tdrで、調整後操作θrefを演算する。
操作補完部24は、この調整後操作θrefを、ドライブロボット4に送信する。ドライブロボット4は、調整後操作θrefを基にアクチュエータ4cを駆動させてアクセルペダル2cを操作することにより、アクセル開度を変更する。
上記のように、操作内容推論部41は、ある時刻における走行状態を基に、当該時刻よりも後の車両2の操作θFFを推論する。この、車両2の操作θFFの推論を効果的に行うために、特に操作内容推論部41は、後に説明するように機械学習器を備えており、推論した操作θFFに基づいたドライブロボット4の操作の後の時刻における走行状態に基づいて計算された報酬を基に機械学習器を強化学習して操作推論学習モデル50を生成する。操作内容推論部41は、性能測定のために実際に車両2を走行制御させる際には、この学習が完了した操作推論学習モデル50を使用して、車両2の操作θFFを推論する。
また、上記のように、調整係数推論部45は、ある時刻における走行状態を基に、当該時刻よりも後の車両2の調整係数Kp、Ki、Kdを推論する。この、車両2の調整係数Kp、Ki、Kdの推論を効果的に行うために、特に調整係数推論部45は、後に説明するように機械学習器を備えており、推論した調整係数Kp、Ki、Kdに基づいたドライブロボット4の操作の後の時刻における走行状態に基づいて計算された報酬を基に機械学習器を強化学習して調整係数推論学習モデル70を生成する。調整係数推論部45は、性能測定のために実際に車両2を走行制御させる際には、この学習が完了した調整係数推論学習モデル70を使用して、車両2の調整係数Kp、Ki、Kdを推論する。
すなわち、制御装置11は大別して、強化学習時における操作θFF及び調整係数Kp、Ki、Kdの学習と、性能測定のために車両2を走行制御させる際における操作θFF及び調整係数Kp、Ki、Kdの推論の、2通りの動作を行う。説明を簡単にするために、以下ではまず、操作θFF及び調整係Kp、Ki、Kd数の学習時における、制御装置11の各構成要素の説明をした後に、車両2の性能測定に際して操作θFF及び調整係数Kp、Ki、Kdを推論する場合での各構成要素の挙動について説明する。
図2においては、各学習モデル50、70の学習時における、各学習モデル50、70に関連したデータの送受信は破線で示されている。
指令車速生成部31は、モードに関する情報に基づいて生成された、指令車速vrefを保持している。指令車速生成部31は指令車速vrefを、車両操作制御部22と推論データ成形部32に送信する。
既に説明したように、車両操作制御部22は、指令車速生成部31から受信した指令車速vrefを基にドライブロボット4を制御して車両2を走行させる。駆動状態取得部23は、要求駆動力Fref、検出エンジン回転数ndet、検出エンジン温度ddet、及び検出車速(車速)vdetを収集し、推論データ成形部32へ送信する。
推論データ成形部32は、駆動状態取得部23から要求駆動力Fref、検出エンジン回転数ndet、検出エンジン温度ddet、及び検出車速vdetを受信する。また、推論データ成形部32は、指令車速生成部31から指令車速vrefを受信する。推論データ成形部32は、これらを併せて走行状態とし、適切に成形した後に、強化学習部40の操作内容推論部41と調整係数推論部45に送信する。
本実施形態においては、操作推論学習モデル50は、走行状態の各々に対応する入力ノードを備えた入力層と、複数の中間層、及び車両2の操作θFFに対応する出力ノードを備えた、ニューラルネットワークである。
入力ノードの各々に、対応する走行状態の値が入力されると、重みを基にした演算がなされて、入力ノードの次の段として設けられた中間層の、中間ノードの各々に、演算結果が格納される。このような演算と、次の段の中間ノードへの演算結果の格納が、各中間層に対して順次実行される。最終的には、最終段の中間層内の中間ノードに格納された演算結果を基に、同様な演算がなされ、その結果が車両2の操作θFFとして出力ノードに格納される。
操作内容推論部41は、このようにして生成された車両2の操作θFFを、車両操作制御部22に送信する。
本実施形態においては、調整係数推論学習モデル70は、走行状態の各々に対応する入力ノードを備えた入力層と、複数の中間層、及び調整係数Kp、Ki、Kdの各々に対応する出力ノードを備えた、ニューラルネットワークである。
入力ノードの各々に、対応する走行状態の値が入力されると、重みを基にした演算がなされて、入力ノードの次の段として設けられた中間層の、中間ノードの各々に、演算結果が格納される。このような演算と、次の段の中間ノードへの演算結果の格納が、各中間層に対して順次実行される。最終的には、最終段の中間層内の中間ノードに格納された演算結果を基に、同様な演算がなされ、その結果が調整係数Kp、Ki、Kdとして出力ノードに格納される。
調整係数推論部45は、このようにして生成された調整係数Kp、Ki、Kdを、車両操作制御部22に送信する。
車両操作制御部22は、これらの推論された車両2の操作θFFと調整係数Kp、Ki、Kdを、推論周期Tnnごとに受信して更新する。車両操作制御部22は、次の推論周期Tnn後の時刻までの間、更新された最新の車両2の操作θFFと調整係数Kp、Ki、Kdを基に、刻々と変化する走行状態を随時入力して調整後操作θrefを生成し、調整後操作θrefに基づきドライブロボット4を制御する。
操作推論学習モデル50と調整係数推論学習モデル70の学習、すなわち誤差逆伝搬法、確率的勾配降下法によるニューラルネットワークを構成する各パラメータの値の調整は、現段階においては行われず、操作推論学習モデル50と調整係数推論学習モデル70は車両2の操作θFFと調整係数Kp、Ki、Kdを推論するのみである。操作推論学習モデル50と調整係数推論学習モデル70の学習は、後に、第1及び第2行動価値推論学習モデル60、80の学習に伴って行われる。
報酬計算部43は、操作推論学習モデル50と調整係数推論学習モデル70の強化学習に使用される報酬を計算する。
より詳細には、操作報酬計算部44は、走行状態と、これに対応して操作推論学習モデル50により推論された操作θFF、及び当該操作θFFを基に新たに生成された次の走行状態を基に、適切に設計された式により報酬を計算する。また、調整係数報酬計算部47は、走行状態と、これに対応して調整係数推論学習モデル70により推論された調整係数Kp、Ki、Kd、及び当該調整係数Kp、Ki、Kdを基に新たに生成された次の走行状態を基に、適切に設計された式により報酬を計算する。
本実施形態においては、推論周期Tnnよりも制御周期Tdrが短いため、推論周期Tnnの間に制御周期Tdr間隔で複数回、ドライブロボット4が制御される。これに伴い、本実施形態における報酬は、この複数回の各制御の後における指令車速vrefと検出車速vdetの誤差を平均した値の、絶対値として設定されている。すなわち、本実施形態においては、上記のような絶対値を計算し、これが0に近いほど、高い報酬となるように設計されている。
後述する第1及び第2行動価値推論学習モデル60、80は、行動価値を、報酬が小さいほどこれが高くするように計算し、操作推論学習モデル50と調整係数推論学習モデル70はこれらの行動価値が高くなるような操作θFFや調整係数Kp、Ki、Kdを出力するように、強化学習が行われる。
また、調整係数推論部45は、走行状態、これに対応して推論された調整係数Kp、Ki、Kd、当該調整係数Kp、Ki、Kdを基に新たに生成された次の走行状態、及び計算した報酬を、学習データ成形部33に送信する。学習データ成形部33は、これらを適切に成形して学習データ記憶部35に保存する。これらのデータは、後述する第2行動価値推論学習モデル80の学習に使用される。
このようにして、操作θFFと調整係数Kp、Ki、Kdの推論と、この推論結果に対応した、次の走行状態の取得、及び報酬の計算が、第1及び第2行動価値推論学習モデル60、80の学習に十分なデータが蓄積されるまで、繰り返し行われる。
強化学習部40は全体として、操作推論学習モデル50が推論した操作θFFがどの程度適切であったかを示す行動価値を計算し、操作推論学習モデル50が、この行動価値が高くなるような操作θFFを出力するように、強化学習を行う。行動価値は、走行状態と、これに対する操作θFFを引数として、報酬が大きいほど行動価値を高くするように設計された関数として表わされる。本実施形態においては、この関数の計算を、走行状態と操作θFFを入力として、行動価値を出力するように設計された、関数近似器としての第1行動価値推論学習モデル60により行う。
第1行動価値推論部42は、成形された学習データを受信し、第1行動価値推論学習モデル60を機械学習させる。
本実施形態においては、第1行動価値推論学習モデル60は、走行状態と操作θFFの各々に対応する入力ノードを備えた入力層と、複数の中間層、及び操作θFFに関する行動価値に対応する出力ノードを備えた、ニューラルネットワークである。第1行動価値推論学習モデル60は、操作推論学習モデル50と同様な構造のニューラルネットワークにより実現されているため、構造上の詳細な説明を割愛する。
強化学習部40は全体として、調整係数推論学習モデル70が推論した調整係数Kp、Ki、Kdがどの程度適切であったかを示す行動価値を計算し、調整係数推論学習モデル70が、この行動価値が高くなるような調整係数Kp、Ki、Kdを出力するように、強化学習を行う。行動価値は、走行状態と、これに対する調整係数Kp、Ki、Kdを引数として、報酬が大きいほど行動価値を高くするように設計された関数として表わされる。本実施形態においては、この関数の計算を、走行状態と調整係数Kp、Ki、Kdを入力として、行動価値を出力するように設計された、関数近似器としての第2行動価値推論学習モデル80により行う。
第2行動価値推論部46は、成形された学習データを受信し、第2行動価値推論学習モデル80を機械学習させる。
本実施形態においては、第2行動価値推論学習モデル80は、走行状態と調整係数Kp、Ki、Kdの各々に対応する入力ノードを備えた入力層と、複数の中間層、及び調整係数Kp、Ki、Kdに関する行動価値に対応する出力ノードを備えた、ニューラルネットワークである。第2行動価値推論学習モデル80は、調整係数推論学習モデル70と同様な構造のニューラルネットワークにより実現されているため、構造上の詳細な説明を割愛する。
具体的には、操作内容推論部41と調整係数推論部45の各々は、例えば行動価値の負値を損失関数とし、これをできるだけ小さくするような、すなわち行動価値が大きくなるような操作θFFと調整係数Kp、Ki、Kdを出力するように、重みやバイアスの値等、ニューラルネットワークを構成する各パラメータの値を、誤差逆伝搬法、確率的勾配降下法により調整して、操作推論学習モデル50と調整係数推論学習モデル70の各々を学習させる。
操作推論学習モデル50と調整係数推論学習モデル70の各々が学習され更新されると、出力される操作θFFと調整係数Kp、Ki、Kdが変化するため、再度走行データを蓄積し、これを基に第1及び第2行動価値推論学習モデル60、80を学習する。
このように、学習部30は、操作推論学習モデル50及び調整係数推論学習モデル70と、第1及び第2行動価値推論学習モデル60、80との学習を互いに繰り返すことにより、これら学習モデル50、60、70、80を強化学習する。
学習部30は、この強化学習を、所定の学習終了基準を満たすまで実行する。
ドライブロボット制御部20は、要求駆動力Fref、検出エンジン回転数ndet、検出エンジン温度ddet、及び検出車速(車速)vdetを、推論データ成形部32へ送信する。
推論データ成形部32は、要求駆動力Fref、検出エンジン回転数ndet、検出エンジン温度ddet、及び検出車速(車速)vdet、及び指令車速vrefを走行状態として受信し、適切に成形した後に、強化学習部40の操作内容推論部41と調整係数推論部45に送信する。
操作内容推論部41は、走行状態を受信すると、これを基に、学習が完了した操作推論学習モデル50により、次の推論周期Tnnの間、車両を指令車速vrefに従って走行させるための、車両2の操作θFFを推論する。
同様に、調整係数推論部45は、走行状態を受信すると、これを基に、学習中の調整係数推論学習モデル70により、次の推論周期Tnnの間、車両を指令車速vrefに従って走行させるための、操作内容推論部41により推論された車両2の操作θFFに適用される調整係数Kp、Ki、Kdを推論する。
操作補完部24は、フィードバック操作量演算部26から調整量θFBを受信し、推論された車両2の操作θFFを基に、推論周期Tnnより短い制御周期Tdr間隔で、調整後操作θrefを計算する。この演算において使用される車両2の操作θFFは、制御周期Tdrよりも長い推論周期Tnn間隔で、操作内容推論部41によって推論され、更新される。
操作補完部24は、この調整後操作θrefを、ドライブロボット4に送信する。ドライブロボット4は、調整後操作θrefを基にアクチュエータ4cを駆動させてアクセルペダル2cを操作することにより、アクセル開度を変更する。
まず、図4を用いて、学習時における動作を説明する。
その後、車両2の走行データを収集する(ステップS5)。より詳細には、制御装置11が、学習がまだ終了していない、学習途中の操作推論学習モデル50、調整係数推論学習モデル70によって推論された車両2の操作θFFと調整係数Kp、Ki、Kdによって車両2を走行制御することにより、走行データが蓄積される。
操作推論学習モデル50と調整係数推論学習モデル70の更新が終了すると、これら操作推論学習モデル50と調整係数推論学習モデル70の学習が終了したか否かを判定する(ステップS9)。
学習が終了していないと判定された場合には(ステップS9のNo)、ステップS5へ遷移する。すなわち、制御装置11は走行データを更に収集し、これを用いた操作推論学習モデル50と調整係数推論学習モデル70の更新を繰り返す。
学習が終了したと判定された場合には(ステップS9のYes)、学習処理を終了する(ステップS11)。
推論データ成形部32は、走行状態を適切に成形した後に、強化学習部40の操作内容推論部41と調整係数推論部45に送信する。
操作内容推論部41は、走行状態を受信すると、これを基に、次の推論周期Tnnの間、車両を指令車速vrefに従って走行させるための、車両2の操作θFFを推論する。
同様に、調整係数推論部45は、走行状態を受信すると、これを基に、次の推論周期Tnnの間、車両を指令車速vrefに従って走行させるための、操作内容推論部41により推論された車両2の操作θFFに適用される調整係数Kp、Ki、Kdを推論する(ステップS55)。
操作補完部24は、推論周期Tnnより短い制御周期Tdr間隔で、フィードバック操作量演算部26から調整量θFBを受信し、推論された車両2の操作θFFを基に、調整後操作θrefを計算する。
操作補完部24は、この調整後操作θrefを、ドライブロボット4に送信する。ドライブロボット4は、調整後操作θrefを基にアクチュエータ4cを駆動させてアクセルペダル2cを操作することにより、アクセル開度を変更する。
そして、駆動状態取得部23は、操作後の車両2の走行状態を、ステップS53と同様な要領で、再度取得する(ステップS57)。
駆動状態取得部23は、操作後の車両2の走行状態を、学習部30へ送信する。
走行が終了していないと判定された場合には(ステップS59のNo)、ステップS55へ遷移する。すなわち、制御装置11は、ステップS57で取得した走行状態を基にした操作θFFと調整係数Kp、Ki、Kdの推論と、更なる走行状態の観測を繰り返す。
走行が終了したと判定された場合には(ステップS59のYes)、走行処理を終了する(ステップS61)。
また、本実施形態のドライブロボット4の制御方法は、車両2に搭載されて車両2を走行させるドライブロボット(自動操縦ロボット)4を、車両2が規定された指令車速vrefに従って走行するように制御する、ドライブロボット4の制御方法であって、車速vdetと指令車速vrefを含む、車両2の走行状態を基に、車両2を指令車速vrefに従って走行させるような車両2の操作θFFを推論するように、機械学習器を強化学習して生成された操作推論学習モデル50により、操作θFFを推論周期(第1の周期)Tnnで推論し、走行状態を基に、推論された操作θFFを推論周期Tnnの間に調整する、調整係数Kp、Ki、Kdを推論するように、機械学習器を強化学習して生成された調整係数推論学習モデル70により、調整係数Kp、Ki、Kdを推論し、推論周期Tnnの間に、調整係数Kp、Ki、Kdにより操作θFFを調整して調整後操作θrefを生成し、当該調整後操作θrefに基づきドライブロボット4を制御する。
上記のような構成によれば、操作推論学習モデル50は、車速vdetと指令車速vrefを含む、車両2の走行状態を基に、車両2を指令車速vrefに従って走行させるような車両2の操作θFFを推論するように強化学習されている。このため、少なくとも操作推論学習モデル50が車両2の操作θFFを推論する周期である推論周期Tnnおきに、車両2を指令車速vrefに精度よく追従させるような車両2の操作θFFが出力される。
ここで、上記のような操作推論学習モデル50は、演算量が多くなる傾向がある。したがって、ドライブロボット4の制御周期Tdrよりも推論周期Tnnは長くなり、一つの推論周期Tnn内に、複数の制御時刻が含まれる。このため、車両2の操作θFFは、制御時刻の各々に個別に対応するように出力されない。このような場合に、複数の制御時刻の各々に同一の車両2の操作θFFを適用すると、緻密な制御ができず、指令車速への追従性が向上しない。
これに対し、本実施形態においては、走行状態を基に、推論周期Tnnの間、推論された操作θFFを調整する、調整係数Kp、Ki、Kdを推論するように強化学習されている調整係数推論学習モデル70により、調整係数Kp、Ki、Kdが推論される。すなわち、推論周期Tnnに含まれる各制御時刻において、操作θFFはこの調整係数Kp、Ki、Kdによって随時調整されて、ドライブロボット4が制御される。これにより、推論周期Tnnと制御周期Tdrのサンプリング差が補完され、一定の時間の間、操作θFFが新たに推論されなくとも、その間に、操作θFFを調整しつつ使用することができる。したがって、指令車速への追従性が向上する。
また、推論周期Tnnに含まれる、ドライブロボット4の複数の制御時刻において、同一の操作θFFが調整されつつ使用されるので、操作推論学習モデル50は、一度の推論において、複数の操作θFFを推論する必要がない。これにより、操作推論学習モデル50の構造を簡潔にすることができ、かつ操作推論学習モデル50を容易に機械学習させることができる。
また、調整係数Kp、Ki、Kdは、比例ゲインKp、積分ゲインKi、及び微分ゲインKdを含み、車両操作制御部22は、調整係数Kp、Ki、Kdを基に、フィードバック制御により、操作θFFの調整量θFBを計算し、当該調整量θFBを基に操作θFFを調整して調整後操作θrefを生成する。
更に、操作θFFの対象は、アクセルペダル2cを含む。
上記のような構成によれば、ドライブロボット4の制御装置11を適切に実現可能である。
次に、図6を用いて、上記実施形態として示したドライブロボット4の制御装置11及び制御方法の変形例を説明する。図6は、本変形例におけるドライブロボットの制御装置のデータの流れを示す処理ブロック図である。
本変形例におけるドライブロボット4の制御装置は、上記実施形態のドライブロボット4の制御装置11とは、車両操作制御部のフィードバック操作量演算部26Aが、PID制御の積分項により蓄積される積分バッファi_buffを計算して調整係数推論部45Aへ送信する点が異なっている。
これに伴い、調整係数推論部45A内に設けられた調整係数推論学習モデルは、入力層に、走行状態に対応する入力ノードに加えて、積分バッファi_buffに対応する入力ノードを備えた構成となっている。これにより、調整係数推論学習モデルは、走行状態と、積分バッファi_buffを基に、調整係数を推論する。
本変形例の構成においては、調整係数推論学習モデルの推論結果である調整係数が使用される、調整係数推論学習モデルの後段に位置するフィードバック操作量演算部26Aにおいて使用される積分バッファi_buffが、調整係数推論学習モデルの入力となっている。したがって、上記実施形態よりも、調整係数の精度が向上する。
次に、図7を用いて、上記第1変形例として示したドライブロボット4の制御装置及び制御方法の、更なる変形例を説明する。図7は、本変形例におけるドライブロボットの制御装置のデータの流れを示す処理ブロック図である。
本変形例におけるドライブロボット4の制御装置は、上記第1変形例のドライブロボット4の制御装置とは、操作内容推論部41B内の操作推論学習モデルに、調整係数推論学習モデルが統合され、操作推論学習モデルと、調整係数推論学習モデルが、一つの学習モデルとして実現されている点が異なっている。
これに伴い、この学習モデルを強化学習する際に用いられる行動価値推論学習モデルは、走行状態と、これに対する車両2の操作θFF、及び調整係数Kp、Ki、Kdを入力として、報酬が大きいほど高い行動価値出力するように設計された、関数近似器としての学習モデルとなっている。
また、フィードバック操作量演算部26Aが出力した積分バッファi_buffは、操作内容推論部41Bへと送信されて、学習モデルに入力される。
本変形例の構成においては、学習モデルの数が低減されるため、より少ないリソース環境下においても実装が可能となる。
例えば、上記実施形態においては、車両の操作としてアクセルペダルの操作量を出力したが、これに加え、ブレーキペダル等の、他の操作を出力しても構わない。
また、上記実施形態においては、操作推論学習モデル50と調整係数推論学習モデル70の学習と、第1行動価値推論学習モデル60と第2行動価値推論学習モデル80の学習が繰り返されるように説明した。しかし、十分な精度で学習されるのであれば、これら学習モデル50、60、70、80を学習する順序は、これに限られない。例えば、操作推論学習モデル50と第1行動価値推論学習モデル60の学習を繰り返してこれらの学習を完了させた後、調整係数推論学習モデル70と第2行動価値推論学習モデル80の学習を繰り返し、これらの学習を完了させるようにしてもよい。
これ以外にも、本発明の主旨を逸脱しない限り、上記実施形態及び各変形例で挙げた構成を取捨選択したり、他の構成に適宜変更したりすることが可能である。
2 車両
2c アクセルペダル
3 シャシーダイナモメータ
4 ドライブロボット(自動操縦ロボット)
11 制御装置
20 ドライブロボット制御部
22 車両操作制御部
23 駆動状態取得部
24 操作補完部
25 走行抵抗演算部
26、26A フィードバック操作量演算部
27 車両駆動力演算部
30 学習部
31 指令車速生成部
35 学習データ記憶部
40 強化学習部
41、41B 操作内容推論部
42 第1行動価値推論部
43 報酬計算部
45、45A 調整係数推論部
46 第2行動価値推論部
50 操作推論学習モデル
60 第1行動価値推論学習モデル
70 調整係数推論学習モデル
80 第2行動価値推論学習モデル
θFF フィードフォワード変更量(操作)
θFB フィードバック変更量(調整量)
θref 調整後操作
Kp 比例ゲイン(調整係数)
Ki 積分ゲイン(調整係数)
Kd 微分ゲイン(調整係数)
i_buff 積分バッファ
vdet 検出車速(車速)
vref 指令車速
Claims (6)
- 車両に搭載されて前記車両を走行させる自動操縦ロボットを、前記車両が規定された指令車速に従って走行するように制御する、自動操縦ロボットの制御装置であって、
車速と前記指令車速を含む、前記車両の走行状態を基に、前記車両を前記指令車速に従って走行させるような前記車両の操作を推論するように、機械学習器を強化学習して生成された操作推論学習モデルにより、前記操作を第1の周期で推論する操作内容推論部と、
前記走行状態を基に、前記操作内容推論部により推論された前記操作を前記第1の周期の間に調整する、調整係数を推論するように、機械学習器を強化学習して生成された調整係数推論学習モデルにより、前記調整係数を推論する調整係数推論部と、
前記第1の周期の間に、前記調整係数により前記操作を調整して調整後操作を生成し、当該調整後操作に基づき前記自動操縦ロボットを制御する車両操作制御部と、
を備え、
前記自動操縦ロボットを制御する第2の周期は、前記第1の周期よりも短く設定され、
前記調整係数推論学習モデルも前記第1の周期ごとに前記調整係数を推論し、
前記操作推論学習モデルと前記調整係数推論学習モデルの各々は、一度の推論で、次の前記第1の周期の間に使用される前記操作と前記調整係数のみを推論し、
前記車両操作制御部は、次の推論が行われるまでの間の前記第2の周期の各々において、最新の前記操作と前記調整係数を使用して、前記調整後操作を生成する、自動操縦ロボットの制御装置。 - 前記調整係数は、比例ゲイン、積分ゲイン、及び微分ゲインを含み、
前記車両操作制御部は、前記調整係数を基に、フィードバック制御により、前記操作の調整量を計算し、当該調整量を基に前記操作を調整して前記調整後操作を生成する、請求項1に記載の自動操縦ロボットの制御装置。 - 前記車両操作制御部は積分バッファを計算し、
前記調整係数推論学習モデルは、前記走行状態と、前記積分バッファを基に、前記調整係数を推論する、請求項2に記載の自動操縦ロボットの制御装置。 - 前記操作推論学習モデルと、前記調整係数推論学習モデルは、一つの学習モデルとして実現されている、請求項1から3のいずれか一項に記載の自動操縦ロボットの制御装置。
- 前記操作の対象は、アクセルペダルを含む、請求項1から4のいずれか一項に記載の自動操縦ロボットの制御装置。
- 車両に搭載されて前記車両を走行させる自動操縦ロボットを、前記車両が規定された指令車速に従って走行するように制御する、自動操縦ロボットの制御方法であって、
車速と前記指令車速を含む、前記車両の走行状態を基に、前記車両を前記指令車速に従って走行させるような前記車両の操作を推論するように、機械学習器を強化学習して生成された操作推論学習モデルにより、前記操作を第1の周期で推論し、前記自動操縦ロボットを制御する第2の周期は、前記第1の周期よりも短く設定され、前記操作推論学習モデルは、一度の推論で、次の前記第1の周期の間に使用される前記操作のみを推論し、
前記走行状態を基に、推論された前記操作を前記第1の周期の間に調整する、調整係数を推論するように、機械学習器を強化学習して生成された調整係数推論学習モデルにより、前記第1の周期ごとに前記調整係数を推論し、前記調整係数推論学習モデルは、一度の推論で、次の前記第1の周期の間に使用される前記調整係数のみを推論し、
前記第1の周期の間に、次の推論が行われるまでの間の前記第2の周期の各々において、最新の前記操作と前記調整係数を使用して、前記調整係数により前記操作を調整して調整後操作を生成し、当該調整後操作に基づき前記自動操縦ロボットを制御する、自動操縦ロボットの制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020018391A JP6908144B1 (ja) | 2020-02-06 | 2020-02-06 | 自動操縦ロボットの制御装置及び制御方法 |
PCT/JP2020/046988 WO2021157212A1 (ja) | 2020-02-06 | 2020-12-16 | 自動操縦ロボットの制御装置及び制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020018391A JP6908144B1 (ja) | 2020-02-06 | 2020-02-06 | 自動操縦ロボットの制御装置及び制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6908144B1 true JP6908144B1 (ja) | 2021-07-21 |
JP2021124403A JP2021124403A (ja) | 2021-08-30 |
Family
ID=76919745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020018391A Active JP6908144B1 (ja) | 2020-02-06 | 2020-02-06 | 自動操縦ロボットの制御装置及び制御方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6908144B1 (ja) |
WO (1) | WO2021157212A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210114596A1 (en) * | 2019-10-18 | 2021-04-22 | Toyota Jidosha Kabushiki Kaisha | Method of generating vehicle control data, vehicle control device, and vehicle control system |
JPWO2023026314A1 (ja) * | 2021-08-23 | 2023-03-02 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023228795A1 (ja) * | 2022-05-24 | 2023-11-30 | 株式会社堀場製作所 | 機械学習装置、車両試験システム、機械学習方法、及び車両試験方法 |
FR3135942A1 (fr) * | 2022-05-30 | 2023-12-01 | Psa Automobiles Sa | Procédé d’apprentissage de la pédale de frein d’un véhicule par un robot de conduite |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BRPI0513156B1 (pt) * | 2004-08-06 | 2017-12-26 | Honda Motor Co., Ltd. | Control device for a vehicle equipped with a variable output device manipulated to drive ?? |
JP4342562B2 (ja) * | 2007-02-02 | 2009-10-14 | 三菱電機株式会社 | 内燃機関制御装置 |
SE538648C2 (sv) * | 2012-06-27 | 2016-10-11 | Scania Cv Ab | Förfarande och system för styrning av en farthållning och aven transmission i ett fordon |
JP2014115168A (ja) * | 2012-12-07 | 2014-06-26 | Aisin Aw Co Ltd | 車輌用走行シミュレーション装置、ドライバモデル構築方法及びドライバモデル構築プログラム |
WO2019051009A1 (en) * | 2017-09-07 | 2019-03-14 | iMFLUX Inc. | SYSTEMS AND METHODS FOR PID CONTROL WITH AUTOMATIC ADJUSTMENT OF INJECTION MOLDING MACHINES |
JP6954168B2 (ja) * | 2018-02-15 | 2021-10-27 | 株式会社明電舎 | 車両速度制御装置及び車両速度制御方法 |
EP3575172A1 (en) * | 2018-05-31 | 2019-12-04 | Visteon Global Technologies, Inc. | Adaptive longitudinal control using reinforcement learning |
JP6796679B2 (ja) * | 2019-04-26 | 2020-12-09 | 本田技研工業株式会社 | 車両制御システム及び方法、並びに走行支援サーバ |
-
2020
- 2020-02-06 JP JP2020018391A patent/JP6908144B1/ja active Active
- 2020-12-16 WO PCT/JP2020/046988 patent/WO2021157212A1/ja active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210114596A1 (en) * | 2019-10-18 | 2021-04-22 | Toyota Jidosha Kabushiki Kaisha | Method of generating vehicle control data, vehicle control device, and vehicle control system |
US11654915B2 (en) * | 2019-10-18 | 2023-05-23 | Toyota Jidosha Kabushiki Kaisha | Method of generating vehicle control data, vehicle control device, and vehicle control system |
JPWO2023026314A1 (ja) * | 2021-08-23 | 2023-03-02 | ||
JP7395063B2 (ja) | 2021-08-23 | 2023-12-08 | 三菱電機株式会社 | ニューラルネットワーク制御器 |
Also Published As
Publication number | Publication date |
---|---|
JP2021124403A (ja) | 2021-08-30 |
WO2021157212A1 (ja) | 2021-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6908144B1 (ja) | 自動操縦ロボットの制御装置及び制御方法 | |
WO2020183864A1 (ja) | 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法 | |
US5285377A (en) | Control apparatus structuring system | |
CN112668235A (zh) | 基于离线模型预训练学习的ddpg算法的机器人控制方法 | |
US6411944B1 (en) | Self-organizing control system | |
KR102313002B1 (ko) | 차량 속도 제어 장치 및 차량 속도 제어 방법 | |
CN108693834A (zh) | 调整装置以及调整方法 | |
WO2007116590A1 (ja) | 運転制御方法,運転制御装置及び運転制御システム | |
US20190317472A1 (en) | Controller and control method | |
CN109039190A (zh) | 一种四自由度磁悬浮电机悬浮系统解耦控制方法 | |
KR102382047B1 (ko) | Pso를 이용한 모터 제어기의 자동 학습 튜닝 시스템 | |
CN109189075B (zh) | 一种舰船用模糊遗忘因子无模型自适应航向控制方法 | |
CN110588654B (zh) | 一种自动整定车辆速度相应pid控制参数的方法 | |
JP6866940B1 (ja) | 自動操縦ロボットの制御装置及び制御方法 | |
WO2022059484A1 (ja) | 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法 | |
JP2021143882A (ja) | 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法 | |
JP7110891B2 (ja) | 自動操縦ロボットの制御装置及び制御方法 | |
CN113977583B (zh) | 基于近端策略优化算法的机器人快速装配方法及系统 | |
CN115741692A (zh) | 一种基于数据驱动的液压机械臂高精度控制方法及系统 | |
JP7487709B2 (ja) | 車両駆動ユニットの制御装置及び制御方法 | |
US6662169B2 (en) | Controlling the self learning behavior of an autonomous agent | |
JP2021128510A (ja) | 自動操縦ロボットを制御する操作推論学習モデルの学習システム及び学習方法 | |
JP2024001584A (ja) | 自動操縦ロボットの制御装置及び制御方法 | |
JP7357537B2 (ja) | 制御装置、制御装置の制御方法、プログラム、情報処理サーバ、情報処理方法、並びに制御システム | |
CN114815816A (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 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20210217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210224 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210426 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210614 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6908144 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |