(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023054776
(43)【公開日】2023-04-14
(54)【発明の名称】車両を制御するように構成されたストラテジを生成するための強化学習用エージェントに対してトレーニングデータを提供するための装置及びコンピュータ実装された方法、車両を制御するように構成されたストラテジを生成するための装置及び方法、並びに、車両
(51)【国際特許分類】
G06Q 50/08 20120101AFI20230407BHJP
【FI】
G06Q50/08
【審査請求】未請求
【請求項の数】10
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022159232
(22)【出願日】2022-10-03
(31)【優先権主張番号】10 2021 211 152.1
(32)【優先日】2021-10-04
(33)【優先権主張国・地域又は機関】DE
(71)【出願人】
【識別番号】390023711
【氏名又は名称】ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】チャナ ロス
(72)【発明者】
【氏名】ヤコフ ミロン
(72)【発明者】
【氏名】ドータン ディ カストロ
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC07
(57)【要約】 (修正有)
【課題】車両を制御するストラテジを生成する強化学習用エージェントに対してトレーニングデータを提供する装置、方法及びプログラムを提供する。
【解決手段】車両100において、装置105の初期化ユニット110は、粒状材料と作業環境との選択された物理的特徴値INを使用して、環境モデル115を作成する。選択された物理的特徴値INは、初期化ユニットによって装置105の外部のデータソースから入力される。対応付けユニット120は、確率密度関数に基づく相対的な高さマップを含む環境モデルを、初期化ユニットから受信又はロードする。強化学習用エージェント130は、トレーニングデータ125を、対応付けユニット120から受信する。任意選択肢の制御ユニット140は、車両を制御するためのストラテジ135を強化学習用エージェントから受信し、ストラテジに基づいた制御信号145を少なくとも1つのアクチュエータ102に出力する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
車両(100)、特にオフロード車両(100)を制御するために適したストラテジ(135)を生成するための強化学習用エージェント(130)に対してトレーニングデータ(125)を提供するためのコンピュータ実装された方法(200)であって、前記車両(100)は、作業環境内の粒状材料と相互作用するように構成されており、
当該方法(200)は、
前記粒状材料を含む前記作業環境の環境モデル(115)を初期化するステップ(210)であって、前記粒状材料と前記作業環境との選択された物理的特徴値(IN)が、少なくとも1つの確率密度関数における変数として使用され、前記粒状材料を含む前記作業環境の実際高さ状態と目標高さ状態との間の相対的な高さマップが、前記確率密度関数を使用して生成される、ステップ(210)と、
目標状態を達成するために、前記環境モデル(115)の前記確率密度関数の変化と報酬値とを、前記車両(100)の複数のアクションの集合のうちのそれぞれのアクションに対応付けるステップ(220)であって、前記トレーニングデータ(125)を提供するために、前記環境モデル(115)の前記相対的な高さマップと車両位置とが、それぞれのアクションごとに更新される、ステップ(220)と、
を含む、方法(200)。
【請求項2】
前記初期化するステップ(210)において、
前記確率密度関数は、連続多変量ガウス確率密度関数であり、及び/又は、
前記選択された物理的特徴値は、前記粒状材料の比質量と、前記粒状材料の拡布パラメータと、前記粒状材料のそれぞれの山の体積と、環境に対するそれぞれの山の中心点の位置とを含む、
請求項1に記載の方法(200)。
【請求項3】
前記対応付けるステップ(220)において、前記作業環境が複数の境界枠に分割され、
前記確率密度関数の前記変化は、それぞれの境界枠ごとに個別に計算される、
請求項1又は2に記載の方法(200)。
【請求項4】
前記対応付けるステップ(220)において、アクションが前進並進であるか、後退並進であるか又は回転であるかに応じて、及び/又は、前記車両位置が前記作業環境の許容領域内に位置しているか又は許容領域外に位置しているかに応じて、前記アクションにそれぞれ異なる変化及び/又はそれぞれ異なる報酬値が対応付けられる、
請求項1乃至3のいずれか一項に記載の方法(200)。
【請求項5】
車両(100)、特にオフロード車両(100)を制御するように構成されたストラテジ(135)を生成するための方法(300)であって、前記車両(100)は、作業環境内の粒状材料と相互作用するように構成されており、
当該方法(300)は、
請求項1乃至4のいずれか一項に記載の方法(200)によるトレーニングデータ(125)を提供するステップ(325)と、
前記トレーニングデータ(125)を使用して、強化学習用エージェント(130)によって前記ストラテジ(135)を生成するステップ(330)と、
を含む、方法(300)。
【請求項6】
当該方法(300)は、前記ストラテジ(135)によって決定された制御信号(145)を用いて、前記車両(100)の少なくとも1つのアクチュエータ(102)を制御するステップ(340)を含む、
請求項5に記載の方法(300)。
【請求項7】
請求項1乃至6のいずれか一項に記載の方法(200,300)のステップを、対応するユニット(110,120,130,140)において実施及び/又は制御するように構成されている装置(105)。
【請求項8】
作業環境内の粒状材料と相互作用するように構成されている車両(100)、特にオフロード車両(100)であって、
当該車両(100)は、請求項7に記載の装置(105)を含む、
車両(100)。
【請求項9】
請求項1乃至6のいずれか一項に記載の方法(200,300)のステップを実施及び/又は制御するために構成されているコンピュータプログラム。
【請求項10】
請求項9に記載のコンピュータプログラムが保存されている機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、独立請求項に記載の装置又は方法に関する。コンピュータプログラムも、本発明の対象である。
【背景技術】
【0002】
自律車両との関連において、粒状シミュレーション又は粒状材料のシミュレーションは、一般的に3種類のシミュレーションに分類することができ、例えば、固体力学及び経験式と、離散要素法と、高さマップアプローチとに分類することができる。特に、上記の方法は、粒状材料と車両との間の相互作用を特定するために反復アルゴリズムを使用する。さらに、これらのシミュレーションをオフラインで計算し、続いて、数値流体力学(CFD)のような他の数値的な方法の場合と同様に、実行して結果を観察することができるが、このような方法は、一般的に、強化学習(BL、英語ではreinforcement learning)にとって不十分である。なぜなら、シミュレーションは、BLエージェントをトレーニングするために複数回実行されなければならないからである。米国特許第10481603号明細書(US10481603B2)は、オフロード車両のための移動軌道計画アルゴリズムを開示している。
【0003】
独国特許出願公開第19859169号明細書(DE19859169A1)からは、ジョイントで結合された複数の機械的なリンクを有する機械からなるシステムが公知である。処理システムは、少なくとも1つのスクリプトを実行する。それぞれのスクリプトは、機械の動きを規定する少なくとも1つの可変パラメータを有する。学習アルゴリズムは、所望の結果と、結果に影響を与える測定された条件とに基づいて少なくとも1つの可変パラメータの値を修正する。
【0004】
独国特許出願公開第102014203312号明細書(DE102014203312A1)からは、道路の勾配を領域にわたってモデル化することができることが公知である。車両の運転中に所定のレートで勾配値のシーケンスが生成され、それぞれの勾配値は、その後に到達されるそれぞれの勾配領域を識別する。勾配値のシーケンスに対する応答として、マルコフ連鎖道路勾配モデルが更新され、このモデルは、それぞれの確率要素を、それぞれの所定の勾配領域からそれぞれの後続する勾配領域への遷移事象の行列の形態で表す。
【0005】
独国特許出願公開第112009001554号明細書翻訳文(DE112009001554T5)からは、工事現場での材料の山の上で車両を動作させるための方法が公知であり、材料は、工事現場において開口部を介して排出され、同方法は、山の表面を検出することと、材料の排出に起因する山の表面上の障害ゾーンを、検出された表面と、開口部の既知の位置とに基づいて識別することと、障害ゾーンを知らせる信号を車両に伝送することとを含む。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国特許第10481603号明細書(US10481603B2)
【特許文献2】独国特許出願公開第19859169号明細書(DE19859169A1)
【特許文献3】独国特許出願公開第102014203312号明細書(DE102014203312A1)
【特許文献4】独国特許出願公開第112009001554号明細書翻訳文(DE112009001554T5)
【発明の概要】
【発明が解決しようとする課題】
【0007】
発明の開示
このような背景を踏まえて、本明細書において提示されるアプローチは、それぞれ主請求項に記載の方法と、当該方法を使用する装置と、対応するコンピュータプログラムとを提供する。独立請求項において規定された対象の有利な実施形態及び改善形態は、従属請求項に記載された特徴によって可能となる。
【課題を解決するための手段】
【0008】
実施形態によれば、例えば、強化学習のトレーニングのための簡略化された粒状シミュレーションを提供することができる。シミュレーションは、例えばガウス分布に基づくことができ、この場合、粒状材料が、連続多変量ガウス確率密度関数(PDF)等のように挙動することを前提とすることができる。シミュレーションのために、粒状材料の物理学と数学的ガウス係数との間に、利用可能な関係が見出された。さらに、粒状材料と車両との間の相互作用を、ガウスPDFの変化として形式化することができる。特に、環境を高さマップによって表すことができ、ここで、H(x,y)=hは、位置(x,y)における地面高さがhと同じであることを意味する。さらに、車両の位置は、車両の現在地と地軸に対する方位角との組合せとして仮定することができる。このシミュレーションは、例えば、2つの主要なアルゴリズムを含み得るものであり、すなわち、一方は、領域又は環境を初期化するためのアルゴリズムであって、この場合、粒状材料の山の位置のリストに基づいて、初期時の環境高さマップを生成することができ、そして他方は、更新された領域を計算するためのさらなるアルゴリズムであって、この場合、車両の移動又はアクションに基づいて新たな環境を特定することができる。
【0009】
実施形態によれば、例えば、特にオフロードでの移動軌道計画アルゴリズムのために使用することができる簡略化されたシミュレーションを提供することができる。特に、本明細書において提示されるアプローチは、複雑な物理学を検出すると同時に、短時間しかかからない簡単な自動シミュレータを維持するような、このような形式のシミュレーションを作成することが可能である。シミュレーション又はモデルは、強化学習用アルゴリズム(BLアルゴリズム)をトレーニングするために使用可能である。したがって、シミュレーションが、以下のもの、すなわちreset,step,is_done,make,reward_calculateを含むことが求められているGym-APIを改良することが提案される。特に、BLエージェントをトレーニングするためにシミュレーションを複数回実施しなければならないBLの場合には、従前の方法は、不十分である可能性がある。このような理由から、トレーニングにおいて使用することができ、かつ、例えば工事現場での1作業日の作業を最短時間でシミュレートすることができるような、簡略化されたシミュレータを提供することができる。
【0010】
本明細書において提示されるアプローチによるシミュレーションは、それぞれの車両移動ごとの多重計算を省略することができるので、これまで挙げたアプローチよりも有利であろう。さらに、簡単な分布によってシミュレーションの複雑さが増加する可能性がある。したがって、例えば、車両の移動がPの確率でこぼれをもたらすという確率関数を追加することにより、車両移動にこぼれを追加することが可能である。本明細書において提示されるアプローチは、車両と環境との間の最も重要な相互作用特徴を、その際に簡略性を失うことなくシミュレートすることができる。さらに、このような形式のシミュレーションは、有利には、BLエージェントをトレーニングするために使用可能である。というのも、車両と地面との間のすべての相互作用が、BLエージェントの成功にとって重要であるとは限らないが、このような形式のシミュレーションは、最適なアクションを選択するためにBLトレーニングにとって必要である最も重要な相互作用を検出するからである。粒状材料の特徴を、有利には、ガウスPDFの作成のために容易に使用することができる数学的な変数に変換することも可能である。
【0011】
車両、特にオフロード車両を制御するように構成されたストラテジを生成するための強化学習用エージェントに対してトレーニングデータを提供するためのコンピュータ実装された方法であって、車両は、作業環境内の粒状材料と相互作用するように構成されており、
当該方法は、
粒状材料を含む作業環境の環境モデルを初期化するステップであって、粒状材料と作業環境との選択された物理的特徴値が、少なくとも1つの確率密度関数の変数として使用され、粒状材料を含む作業環境の実際高さ状態と目標高さ状態との間の相対的な高さマップが、確率密度関数を使用して生成される、ステップと、
目標状況を達成するために、環境モデルの確率密度関数の変化と報酬値とを、車両の複数のアクションの集合のうちのそれぞれのアクションに対応付けるステップであって、トレーニングデータを提供するために、環境モデルの相対的な高さマップと車両位置とが、それぞれのアクションごとに更新される、ステップと、
を含む、方法が提案される。
【0012】
車両又はオフロード車両は、ブルドーザ、平土機、転圧機、ダンプカー、掘削機、建設車両、重機、重量物用車、又は、環境との相互作用、特に粒状材料との相互作用が含まれる複数のタスクを有する他の種類の車両であってよい。このような種類のタスク又はアクションの例は、敷均し、粒状材料の荷降ろし、地面の転圧、粒状材料の除去等である。粒状材料は、土、砂、雪、瓦礫、石、及び/又は、類似の粒子状の材料を含み得る。ストラテジは、車両のための少なくとも1つの計画された移動軌道を含み得る。環境モデルは、確率密度関数に基づいた相対的な高さのマップを含み得る。報酬値は、正又は負又はゼロであってよい。確率密度関数の変化は、ゼロとは異なる絶対値を有し得るものであり、又は、ゼロに等しくてもよい。
【0013】
1つの実施形態によれば、初期化するステップにおいて、確率密度関数は、連続多変量ガウス確率密度関数であってよい。追加的又は代替的に、初期化するステップにおいて、選択された物理的特徴値は、粒状材料の比質量と、粒状材料の拡布パラメータと、粒状材料のそれぞれの山の体積と、環境に対するそれぞれの山の中心点の位置とを含み得る。このような実施形態は、粒状材料の複雑な物理学を検出することができると同時に、短時間しかかからない簡単な自動シミュレータを提供することができるという利点を提供する。
【0014】
1つの実施形態によれば、対応付けるステップにおいて、作業環境を複数の境界枠に分割することができ、確率密度関数の変化をそれぞれの境界枠ごとに個別に計算することができる。このような実施形態は、車両のアクションに起因する環境の変化を、比較的わずかな計算コストで迅速に特定することができるという利点を提供する。
【0015】
1つの実施形態によれば、対応付けるステップにおいて、アクションが前進並進であるか、後退並進であるか又は回転であるかに応じて、追加的又は代替的に、車両位置が作業環境の許容領域内に位置しているか又は許容領域外に位置しているかに応じて、アクションにそれぞれ異なる変化、及び、追加的又は代替的にそれぞれ異なる報酬値を対応付けることができる。このような実施形態は、トレーニングエージェントにとって車両のアクションが容易に評価可能及び/又は実施可能となるという利点を提供する。
【0016】
本明細書においては、車両、特にオフロード車両を制御するように構成されたストラテジを生成するための方法であって、車両は、作業環境内の粒状材料と相互作用するように構成されており、当該方法は、
本明細書において提示される提供するための方法によるトレーニングデータを提供するステップと、
トレーニングデータを使用して、強化学習用エージェントによってストラテジを生成するステップと、
を含む、方法も提案される。
【0017】
生成するステップにおいては、トレーニングデータは、強化学習用エージェントによって、車両の少なくとも1つの最適なアクションを特定するために使用可能である。
【0018】
1つの実施形態においては、当該方法は、ストラテジによって決定された制御信号を用いて、車両の少なくとも1つのアクチュエータを制御するためのステップも含む。このような実施形態は、車両がアクション及びタスクを効率的に実施するように、車両を制御することができるという利点を提供する。
【0019】
本明細書において提示されるそれぞれの方法は、例えば、ソフトウェア若しくはハードウェアの形態で、又は、ソフトウェアとハードウェアとの混合形態で、例えば、装置又はコントローラにおいて実装可能である。
【0020】
本明細書において提示されるアプローチは、本明細書において提示される方法の変形例のステップを実施するように、制御するように、又は、対応する手段を用いて実行するように構成されている装置も企図している。本発明の基礎となる目的は、装置の形態である本発明のこの実施形態によっても迅速かつ効率的に達成可能である。
【0021】
この目的のために、当該装置は、信号又はデータを処理するための少なくとも1つの計算ユニット、信号又はデータを保存するための少なくとも1つのメモリユニット、センサからセンサ信号を読み出し、又は、データ又は制御信号をアクチュエータに出力する、センサ又はアクチュエータとの少なくとも1つのインタフェース、及び/又は、通信プロトコルに埋め込まれたデータを読み出す又は出力する少なくとも1つの通信インタフェースを含み得る。計算ユニットは、例えば信号プロセッサ、マイクロコントローラ等であってよく、メモリユニットは、フラッシュメモリ、EEPROM、又は、磁気的なメモリユニットであってよい。通信インタフェースは、データを無線及び/又は有線で読み出す又は出力するように構成可能であり、この場合、有線のデータを読み出す又は出力することができる通信インタフェースは、例えばデータを電気的又は光学的に、対応するデータ伝送線路から読み出すことができ、又は、対応するデータ伝送線路に出力することができる。
【0022】
装置は、センサ信号を処理し、このセンサ信号に応じて制御信号及び/又はデータ信号を出力する電気的な装置であると理解可能である。装置は、ハードウェア及び/又はソフトウェアの形態で実現されたインタフェースを含み得る。ハードウェアの形態で実現されている場合には、インタフェースは、例えば、装置の複数の異なる機能を含むいわゆるシステムASICの一部であってよい。しかしながら、インタフェースは、個々の集積回路であってもよいし、又は、少なくとも部分的にディスクリート部品からなっていてもよい。ソフトウェアの形態で実現されている場合には、インタフェースは、例えばマイクロコントローラ上において他のソフトウェアモジュールと一緒に実現されているソフトウェアモジュールであってよい。
【0023】
本明細書において提示されるアプローチは、作業環境内の粒状材料と相互作用するように構成されている車両、特にオフロード車両であって、当該車両は、本明細書において提示される装置を含む、車両も提供する。
【0024】
半導体メモリ、ハードディスク、又は、光学メモリのような機械可読担体上若しくは記憶媒体上に保存することができるプログラムコードを備えたコンピュータプログラム製品又はコンピュータプログラムであって、特にコンピュータ上又は装置上において実施された場合に、前述した実施形態のうちの1つによる方法のステップを実施するために、実装するために及び/又は制御するために使用されるコンピュータプログラム製品又はコンピュータプログラムも、有利である。
【0025】
1つの実施形態は、機械学習のためのツールチェーンにおける前置部分として使用可能である。この実施形態は、以下に挙げる用途のために使用することができる機械学習システムをトレーニングするためのトレーニングデータを生成するための方法として使用可能である。このようにして機械学習システムがトレーニングされた後、この機械学習システムは、以下に説明するように後続の目的のために使用可能となる。機械学習システムは、オフロード車両のデータを分析するために、かつ、地面と相互作用するタスクのために使用可能である。機械学習システムは、1つ又は複数の連続値を決定するために、すなわち、例えば車両のアクションに起因する地面の変化に対する回帰を実施するために使用可能である。この場合、これらの実施形態は、特定の物理的なシステム、すなわちオフロード車両と接続される。1つの実施形態によって得られたシミュレーションを用いて、オフロード車両のための最適なストラテジを作成するために強化学習用エージェントをトレーニングすることができる。したがって、オフロード車両、例えばロボットなどのコンピュータ制御機械、車両、又は、地面と相互作用する他の車両のような物理的なシステムを制御するための制御信号を計算又は生成することができる。
【0026】
本明細書において提示されるアプローチの実施形態を、図面に示し、以下の記載においてより詳細に説明する。
【図面の簡単な説明】
【0027】
【
図1】車両内の装置の1つの実施形態の概略図である。
【
図2】車両を制御するように構成されたストラテジを生成するための強化学習用エージェントに対してトレーニングデータを提供するための方法の1つの実施形態のフロー図である。
【
図3】車両を制御するように構成されたストラテジを生成するための方法の1つの実施形態のフロー図である。
【
図4】車両の一連のアクションのシミュレーションの概略図である。
【
図5】1つの実施形態によるシミュレーションプロセスのフロー図である。
【
図6】1つの実施形態によるシミュレーションプロセスのフロー図である。
【発明を実施するための形態】
【0028】
本発明の有利な実施形態の以下の説明においては、複数の異なる図面に示されている同様に作用する要素には同一又は類似の参照符号を付しており、これらの要素についての説明の繰り返しは省略するものとする。
【0029】
図1は、車両100内の装置105の1つの実施形態の概略図を示す。車両100は、作業環境内の粒状材料と相互作用するように構成されている。特に、車両100は、オフロード車両であり、例えば、ブルドーザ、平土機、転圧機、ダンプカー、掘削機、建設車両、重機、重量物用車、又は、環境との相互作用、特に粒状材料との相互作用が含まれる複数のタスクを有する他の種類の車両である。車両100は、装置105を含む。車両100は、車両100のアクションを引き起し又は実施する少なくとも1つのアクチュエータ102をさらに含む。装置105とアクチュエータ102とは、信号通信又はデータ通信のために互いに接続されている。
【0030】
装置105は、車両100のような車両を制御するように構成されたストラテジ135を生成するための強化学習用エージェント130に対してトレーニングデータ125を提供するように構成されており、及び/又は、装置105は、車両100を制御するためのストラテジ135を生成するように構成されている。換言すれば、装置105は、
図2による方法及び/又は
図3による方法のステップを、対応するユニットにおいて実施及び/又は制御するように構成されている。装置105は、初期化ユニット110及び対応付けユニット120と、場合によっては強化学習用エージェント130又は生成ユニットも含む。1つの実施形態によれば、装置105は、制御ユニット140又はコントローラをさらに含む。
【0031】
装置105の提供部分は、初期化ユニット110及び対応付けユニット120を含む。装置105の生成部分は、強化学習用エージェント130及び任意選択肢の制御ユニット140を含む。
図1の図示によれば、初期化ユニット110、対応付けユニット120、強化学習用エージェント130、及び、任意選択肢の制御ユニット140はすべて、装置105のうちの、車両100の内部に配置されている部分として実現されている。他の実施形態によれば、初期化ユニット110及び対応付けユニット120、すなわち提供部分を、装置105のうちの、物理的に車両100の外部に配置されている部分として実現してもよい。
【0032】
初期化ユニット110は、車両100の、粒状材料を含む作業環境の環境モデル115を初期化するように構成されている。初期化ユニット110は、粒状材料と作業環境との選択された物理的特徴値INを使用して、環境モデル115を作成するように構成されている。選択された物理的特徴値INは、初期化ユニット110によって装置105の外部のデータソースから入力又はロードされる。選択された物理的特徴値INは、初期化ユニット110によって少なくとも1つの確率密度関数に関する変数として使用される。粒状材料を含む作業環境の実際高さ状態と目標高さ状態との間の相対的な高さマップが、初期化ユニット110によって確率密度関数を使用して生成される。初期化ユニット110は、環境モデル115を対応付けユニット120に出力するように構成されている。
【0033】
1つの実施形態によれば、初期化ユニット110は、確率密度関数として連続多変量ガウス確率密度関数を使用する。選択された物理的特徴値INは、特に、粒状材料の比質量と、粒状材料の拡布パラメータと、粒状材料のそれぞれの山の体積と、環境に対するそれぞれの山の中心点の位置とを含み得る。
【0034】
対応付けユニット120は、確率密度関数に基づく相対的な高さマップを含む環境モデル115を、初期化ユニット110から受信又はロードするように構成されている。対応付けユニット120は、車両の複数のアクションの集合のうちのそれぞれのアクションの目標状態を達成するために、環境モデル115の確率密度関数の変化と報酬値とを対応付けるように構成されている。環境モデル115の相対的な高さマップと、車両位置とは、トレーニングデータ125を提供するために、対応付けユニット120によってそれぞれのアクションごとに更新される。換言すれば、対応付けユニット120は、環境モデル115を使用してトレーニングデータ125を提供するように構成されている。
【0035】
1つの実施形態によれば、対応付けユニット120は、作業環境を複数の境界枠に分割し、確率密度関数の変化をそれぞれの境界枠ごとに個別に計算するように構成されている。追加的に又は代替的に、対応付けユニット120は、1つの実施形態によれば、アクションが前進並進であるか、後退並進であるか又は回転であるかに応じて、及び/又は、車両位置が作業環境の許容領域内に位置しているか又は許容領域外に位置しているかに応じて、アクションにそれぞれ異なる変化及び/又はそれぞれ異なる報酬値を対応付けるように構成されている。
【0036】
強化学習用エージェント130は、トレーニングデータ125を、対応付けユニット120から、すなわち装置105の提供部分から受信又はロードするように構成されている。強化学習用エージェント130は、トレーニングデータ125を使用して、強化学習によってストラテジ135を生成するように構成されている。エージェント130は、強化学習のためにストラテジ135を出力するようにさらに構成されている。
【0037】
任意選択肢の制御ユニット140は、ストラテジ135を、強化学習用エージェント130から受信又はロードするように構成されている。制御ユニット140は、ストラテジ135に基づいて制御信号145を決定するようにさらに構成されている。制御ユニット140は、制御信号145を用いて、車両100の少なくとも1つのアクチュエータ102を制御するようにさらに構成されている。この目的のために、制御ユニット140は、制御信号145を少なくとも1つのアクチュエータ102に出力するように構成されている。他の実施形態によれば、制御ユニット140は、装置105から分離されたユニットであってよい。
【0038】
図2は、車両、特にオフロード車両を制御するように構成されたストラテジを生成するための強化学習用エージェントに対してトレーニングデータを提供するための方法200の1つの実施形態のフロー図を示す。車両は、作業環境内の粒状材料と相互作用するように構成されている。提供するための方法200は、
図1による装置又は類似の装置を用いて又はこれに関連して実施可能である。提供するための方法200は、コンピュータ実装された方法である。提供するための方法200は、初期化するステップ210と、対応付けるステップ220とを含む。
【0039】
初期化するステップ210においては、粒状材料を含む作業環境の環境モデルが初期化される。初期化のために、粒状材料と作業環境との選択された物理的特徴値が、少なくとも1つの確率密度関数の変数として使用される。さらに、粒状材料を含む作業環境の実際高さ状態と目標高さ状態との間の相対的な高さマップが、確率密度関数を使用して作成される。続いて、対応付けるステップ220においては、目標状況を達成するために、環境モデルの確率密度関数の変化と報酬値とが、車両の複数のアクションの集合のうちのそれぞれのアクションに対応付けられる。トレーニングデータを提供するために、環境モデルの相対的な高さマップと車両位置とが、それぞれのアクションごとに更新される。
【0040】
図3は、車両、特にオフロード車両を制御するように構成されたストラテジを生成するための方法300の1つの実施形態のフロー図を示す。車両は、作業環境内の粒状材料と相互作用するように構成されている。生成するための方法300は、
図1による装置又は類似の装置を用いて又はこれに関連して実施可能である。生成するための方法300は、提供するステップ325と、生成するステップ330とを含む。
【0041】
提供するステップ325においては、
図2に示されている提供するための方法又は類似の方法のステップを実施することによってトレーニングデータが提供される。続いて、生成するステップ330においては、強化学習用エージェントを用いて、トレーニングデータを使用してストラテジが生成される。1つの実施形態によれば、生成するための方法300は、制御するステップ340も含む。制御するステップ340においては、生成するステップ330で生成されたストラテジを使用して決定された制御信号を用いて、車両の少なくとも1つのアクチュエータが制御される。
【0042】
図4は、車両の一連のアクションのシミュレーションの概略図を示す。このシミュレーションは、
図1に示されている装置又は類似の装置によって、及び/又は、
図2及び/又は
図3に示されている方法又は類似の方法を実施することによって作成される。具体的には、
図4は、車両100に関するシミュレーション例、この場合には例えば7つのアクションの集合によって砂山を敷均しするブルドーザに関するシミュレーション例の8つの概略図を示す。
図4は、それぞれ環境モデル115の相対的な高さマップを表す8つの線図又は部分
図T=0、T=1、T=2、T=3、T=4、T=5、T=6及びT=7を示し、ここで、T=0は、初期化された状況としての最初の状況を表し、後続の線
図T=1、T=2、T=3、T=4、T=5、T=6及びT=7は、車両100のそれぞれ1つのアクションを順次に示す。
【0043】
このシミュレーションは、車両100としてのブルドーザと、地面との間の相互作用を示し、この場合、ブルドーザは、砂山を敷均しすることが求められている。ここに示されている砂山は、互いに隣り合って並んでいる6つの部分砂山から形成され、最終的な砂山は、これらの砂山のすべてのガウスPDFの合計である。それぞれの線
図T=1、T=2、T=3、T=4、T=5、T=6及びT=7は、車両100が砂山を移動させて敷均しするそれぞれ1つの異なる時点を表す。車両100の毎回の前進移動が、ブルドーザのブレードが地面上に置かれた状態で実施されて、地面を敷均しするということを前提とする。見て取れるように、毎回の前進移動のたびに地面のさらなる部分が敷均しされていき、車両100が目下の移動に対する最終位置に到着するとすぐに、ブレード内の残りの地面がガウスPDFとして新たに分布される(例えば、T=2を参照のこと)。他の実施形態においては、例えばガウス混合モデルのようなより複雑な表現を使用してもよいが、一方では、迅速なアプローチを維持するために、他方では、地面との相互作用の良好な表現を達成するために、ガウスPDFを使用することによって数学的な計算を簡略化することができるということに留意すべきである。
【0044】
以下においては、前述した図面を参照して、実施形態と、実施形態の背景に対する利点とについて部分的に換言しながらまとめ、及び/又は、より詳細に説明することとする。
【0045】
トレーニングデータ125及び/又はストラテジ135は、例えば地面と相互作用するあらゆる任意の車両100に対して使用可能であるが、本明細書の重点は、砂山を所定の高さにすることが求められている特定の車両種類にある。本説明中においては、シミュレーションにおける環境モデル115の高さマップは、実際の砂の状態と所望の最終的な砂の高さとの間の相対的なマップであるということが前提とされる。さらに、グリッドを作成して、グリッド単位とメートルとの間の換算を、以下の換算:(x,y)grid=(xm*[pixel/meter],ym*[pixel/meter])のように定義することによって、タスクが簡略化される。
【0046】
実施形態をより良好に理解するためには、多変量ガウスPDFを理解すべきである。この場合にはデカルト座標である2つの変数(x,y)が、両方とも正規分布から取り出されていると仮定すると、この場合における確率密度関数は、これら2つの変数が独立同一分布に従っているという仮定のもとで、
【数1】
のようになる。
【0047】
この関数は、それぞれの(x,y)点における地面の高さを特定するために使用される。この関数Vについて積分が行われ、その積分が粒状材料の山の体積を表すことに留意されたい。これらの変量に対する単位は、V[m
3];σ
x[m];σ
y[m]である。砂は均質であるので、山がすべての方向に均一に分布していることがさらに仮定され、したがって、以下の関係:σ
x=σ
y=σが仮定される。この場合には、高さ分布は、
【数2】
まで低減する。
【0048】
すなわち、山の最大高さは、H
max=v/2πσ
2である。さらに、(r,θ)における(x,y)を、(x-μ
x)/σ=r*cosθ及び(y-μ
y)/σ=r*sinθを使用して変化させると、以下の関係:
【数3】
が得られる。
【0049】
車両100として、ブルドーザの簡単な機構が前提とされ、この場合、3つの可能な速度段階が存在し、ブルドーザの速度とブレード上の負荷との間には線形の関係がある。車両速度と負荷との間の簡単な関係は、アクションにかかる合計時間に影響を与え、その選択されたアクションの間に移動させられる砂の体積に基づいて計算される。さらに、ブレードは、このブレードが所定の時間内に敷均しすることができる最大の体積である既知の体積を有していることが前提とされる。
【0050】
シミュレーションを初期化するために、提供するための方法200を初期化するステップ210が実施される。構成データを用いてシミュレーションを初期化することができ、この構成データにおいて、以下の情報、すなわち、砂の比質量、
【数4】
と、砂の拡布パラメータ(SSP)と、それぞれの砂山についての砂山の体積[m
3]及び砂山の中心点の位置(x,y)[m,m]とが定義されている。これらのパラメータに基づいて、ガウスPDF係数と砂パラメータとの間の以下の関係:
【数5】
に基づいて、作業環境を定義することができ、ここで、Vは、砂山の体積[m
3]であり、r
maxは、砂山の半径[m]であり、ただし、r
max=3σである。なぜなら、6σが、領域全体の99.7%を占めるからである。シミュレーションのための入力は、それぞれの砂山のSSP及び体積であるので、これらの2つのパラメータが指定されると対応する式g(V,SSP)=(σ,H
max,r
max)を返す、オフライン機能を作成することが可能である。
【0051】
これらのパラメータが判明するとすぐに、初期時の環境又は環境モデル115を、以下の部分ステップにおいて作成することができ、すなわち、
・実際の面積の大きさと分解能とを用いて空白の高さマップを作成する:δh[meter/pixel]ステップと、
・山のリスト内のそれぞれの山ごとに、
・上に挙げた方程式を使用して、砂山の高さ
【数6】
のマップを作成して、
・砂山の高さの目下のマップを、全体高さのマップに加算する:
【数7】
ステップと、
・相対的な高さマップを作成するために、目下の高さマップから所望の最終的な敷均し高さを減算するステップと
において作成することができる。このプロセスが終了すると、それぞれの点(x,y)において除去されるべき粒状材料の量が判明している、領域の高さマップがもたらされる。
【0052】
次いで、トレーニングデータ125を提供するために、次のステップを計算することが必要である。シミュレーションにおいてステップを計算するために、提供するための方法200の対応付けるステップ220において、車両100の移動に基づいて地面の変化が特定される。車両100がブルドーザである場合であって、かつ、敷均しタスクである場合には、ブルドーザの移動によって地面が変化する。というのも、ブレードが砂山を前方へ押し出して、表面を可能な限り平らにするからである。この変化は、車両100が移動している領域を、複数の比較的小さな境界枠に分割し、続いて、それぞれの領域に対する相互作用の影響を別個に計算することによってモデル化される。以下に説明する
図5及び
図6においては、車両100のアクションの部分ステップによる、車両100の移動のシミュレーションロジックを見て取ることができる。
【0053】
シミュレーションにおいては、車両100の、特にブルドーザのアクションに対するアクション空間は、2つの可能なアクション、すなわち(a)前進/後退と、(b)回転とを含み、すなわち、ニューラルネットワーク(NN)は、(2×1)ベクトルを出力する。第1のエントリにおける正の値は、前進を意味し、その一方で、負の値は、後退を意味する。アクションベクトルの第2のエントリにおける正の値は、時計回りの回転を表し、負の値は、反時計回りの回転を表す。状況と、対応する好ましいアクションとが存在する場合、強化学習用エージェント130は、このアクションを実施する。砂の移動がこれらのアクションの結果であると理解するためには、並進移動と回転移動とを区別すべきである。
【0054】
並進の場合、新たな車両位置が計算される。新たな位置が有効でない場合、すなわち許容領域外に位置している場合には、大きな負の報酬が得られ、新たなシナリオが開始される。新たな位置が有効である場合には、拡布が行われる。ここで、慣性座標系におけるこのシミュレーション反復視野の内部の領域を、このステップ境界についての示唆として計算する。続いて、この領域内の高さマップを計算する。この領域内の砂が、拡布される。次いで、シミュレータは、この増分する単位面積の合計体積を計算し、ブルドーザは、合計体積を、この単位面積の平均値に分布させることができる。並進運動が終了し、ブレードが砂で覆われている場合には、シミュレータ、すなわち装置105の対応するユニットは、ブレード上に残っている体積を有するさらなるガウス砂山を生成する。続いて、シミュレータは、このガウス砂山を刈り揃えて、最適でない拡布パターンをシミュレートする。最後に、シミュレータは、このアクションのために必要とされる時間を計算して、報酬を得る。後退走行又は転回は、砂、すなわち高さマップを変化させず、負の報酬をもたらすだけである。
【0055】
回転の場合には、回転角度が計算される。車両のDCM(方向余弦行列)は、走行方向を表しているので更新される。回転運動は、砂の分布を変化させないので、小さな負の報酬が追加される。車両100と砂との間に相互作用が存在しない場合には、ブルドーザが回転し、したがって、回転中には正の報酬を得ることができない。
【0056】
図5は、1つの実施形態によるシミュレーションプロセス500のフロー図を示す。シミュレーションプロセス500は、
図1による装置によって、及び/又は、
図2による提供するための方法及び/又は
図3による生成するための方法に関連して実施可能である。換言すれば、
図5は、シミュレーションのアクションステップを示す。
【0057】
ブロック502は、車両姿勢、ここではブルドーザ姿勢と、高さマップと、ブレード姿勢との入力である。プロセス500は、ブロック502から、ストラテジネットワークを表すブロック504にさらに進み、アクションを表すブロック506にさらに進み、アクションが並進であるかどうかが判定されるブロック508にさらに進む。アクションが並進である場合には、プロセス500は、ブロック508から、車両が前進移動しているかどうかが判定されるブロック510にさらに進む。車両が前進移動している場合には、プロセス500は、ブロック512において続行される。ブロック512は、以下の命令:
(現在地-最終的な地点>eps)の間に、
1.積分の面積要素に対する高さマップを作成する
2.この面積要素の新たな高さを計算する
3.更新された位置=位置+delta_pos
4.さらに1へ
を含む。
【0058】
ブロック512から、又は、アクションが並進でない場合(ブロック508を参照のこと)、若しくは、車両が前進移動していない場合(ブロック510を参照のこと)には、プロセス500は、ブロック514にさらに進む。ブロック514は、以下の命令:
1.ステップの合計時間を計算するステップ
2.ブルドーザ姿勢及びブレード姿勢を更新するステップ
3.高さマップを更新するステップ
4.報酬=-時間を計算するステップ
を終了することを含む。
【0059】
プロセス500は、ブロック514から、シミュレートされたアクションが実施されるかどうかがチェックされるブロック516にさらに進む。このチェックは、以下の基準:
1.Max(局所的な熱画像マップ)<eps
2.N_ステップ>N_ステップ_max
に依存している。
【0060】
アクションが実施される場合には、プロセス500は、新たなシナリオを生成するためのリセットを表すブロック518にさらに進む。アクションが実施されない場合には、プロセス500は、ブロック502に戻る。
【0061】
図6は、1つの実施形態によるシミュレーションプロセス600のフロー図を示す。シミュレーションプロセス600は、
図1による装置によって、及び/又は、
図2による提供するための方法及び/又は
図3による生成するための方法に関連して実施可能である。換言すれば、
図6は、上述したシミュレーションステップのためのアルゴリズム、又は、それぞれの比較的小さな領域若しくは境界枠のためのロジックを示す。
【0062】
ブロック602においては、車両経路、ここではブルドーザ経路が、車体軸線に沿った小さな長方形に分割される。プロセス600は、ブロック602から、長方形リスト内のそれぞれの長方形ごとに、除去されるべき長方形の体積が計算されるブロック604にさらに進む。体積がゼロより大きい場合には、プロセス600は、ブロック606にさらに進み、ブロック606においては、ブレード内の新たな体積と、新たな地面高さとが、
Vブレード=Vブレード+体積
高さマップ(x,y)=目標高さ
のように計算される。
【0063】
体積がゼロより小さい場合には、プロセス600は、ブロック608にさらに進む。ブロック608は、
Vブレード>体積の場合には:
高さマップ(x,y)=体積
Vブレード=Vブレード-目標高さ
そうでない場合には:
高さマップ(x,y)=ブレード内の平均体積
Vブレード=0
を含む。
【0064】
次いで、プロセス600は、ブロック606及びブロック608から、次の長方形への移行を表すブロック610にさらに進む。
【0065】
ある実施形態が、第1の特徴と第2の特徴との間に「及び/又は」の接続詞を含む場合には常に、このことは、この実施形態が、第1の変形例においては、第1の特徴及び第2の特徴の両方を含み、さらなる変形例においては、第1の特徴又は第2の特徴のいずれかを含むということを意味する。
【外国語明細書】