(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-27
(45)【発行日】2024-10-07
(54)【発明の名称】タスクを実行するための装置および方法
(51)【国際特許分類】
G05D 1/43 20240101AFI20240930BHJP
G08G 1/16 20060101ALI20240930BHJP
【FI】
G05D1/43
G08G1/16 C
【外国語出願】
(21)【出願番号】P 2023028306
(22)【出願日】2023-02-27
【審査請求日】2023-02-27
(32)【優先日】2022-08-12
(33)【優先権主張国・地域又は機関】US
【新規性喪失の例外の表示】特許法第30条第2項適用 1.2022年5月28日 https://openreview.net/forum?id=ucuR4q-jao3 https://openreview.net/pdf?id=ucuR4q-jao3にて発表
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ハリット パンディア
(72)【発明者】
【氏名】ルドラ パウデル
(72)【発明者】
【氏名】ステファン リウィッキ
【審査官】今井 貞雄
(56)【参考文献】
【文献】特開2022-046402(JP,A)
【文献】特開2019-207678(JP,A)
【文献】国際公開第2020/247207(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/43
(57)【特許請求の範囲】
【請求項1】
タスクを実行するための装置であって、前記タスクは、ゴールに達するために実行されるアクションのシーケンスであり、
前記装置の観測値を取得するための少なくとも1つのセンサと、
前記装置を移動させるための制御信号を受信するように構成されたコントローラと、
プロセッサと、
を備え、
前記プロセッサは、
前記ゴールに関する情報を受信することと、
前記ゴールに到達するための前記アクションのシーケンスを決定することと、前記アクションのシーケンスは、少なくとも1つの制約を受け、
前記アクションのシーケンスにおける次のアクションのための制御信号を前記コントローラに提供することと、
を行うように構成され、
前記プロセッサは、前記少なくとも1つの制約に関する情報を取得するように前記少なくとも1つのセンサによって受信された観測値を処理することと、前記アクションのシーケンスを決定するために確率的最適化を実行することとによって前記アクションのシーケンスを決定するように構成され、前記少なくとも1つの制約は、前記確率的最適化においてコストとして表現され、前記確率的最適化は、前記次のアクションの初期推定値を
、前記次のアクションを予測するための初期値として、未来の観測値の予測に関連する確率分布により取得する、装置。
【請求項2】
前記初期推定値は、強化学習ポリシーから取得される、請求項1に記載の装置。
【請求項3】
前記プロセッサは、複数の並列処理分岐を各分岐が異なる制約に割り振られるように使用して、前記制約に関する観測値を処理するように構成される、請求項1に記載の装置。
【請求項4】
前記タスクは、ゴールに達するように装置の少なくとも一部分を移動させることを備え、前記アクションのシーケンスは、移動のシーケンスである、請求項1に記載の装置。
【請求項5】
前記装置は車両であり、前記タスクはナビゲーションタスクであり、前記ゴールはロケーションである、請求項4に記載の装置。
【請求項6】
前記少なくとも1つの制約は、動的障害物を避けるようにナビゲートすることを備える、請求項5に記載の装置。
【請求項7】
前記プロセッサは、動的障害物の回避に関連する制約を、前記動的障害物の占有マップを生成することによって処理するように構成される、請求項6に記載の装置。
【請求項8】
前記プロセッサは、ニューラルネットワークを使用して前記動的障害物の占有マップを生成するように構成され、前記ニューラルネットワークに対する入力は、前記動的障害物の前の観測値の時系列である、請求項7に記載の装置。
【請求項9】
前記少なくとも1つの制約は、静的障害物を避けるようにナビゲートすることを備える、請求項5に記載の装置。
【請求項10】
前記少なくとも1つの制約は、前記装置が前記ゴールに到達するために最短距離を移動することを必要とする、請求項5に記載の装置。
【請求項11】
複数の制約があり、前記プロセッサは、制約から導出されたコストに可変重みが適用されるように、各コストに重みを適用するように構成される、請求項1に記載の装置。
【請求項12】
前記強化学習ポリシーへの入力は、再帰型ニューラルネットワーク(RNN)の隠れ状態であり、前記RNNは、少なくとも1つの未来の観測値の予測値を生成するために使用される、請求項2に記載の装置。
【請求項13】
前記RNNへの入力は、前記観測値の潜在表現である、請求項12に記載の装置。
【請求項14】
前記RNNへのさらなる入力は、前記ゴールである、請求項13に記載の装置。
【請求項15】
前記プロセッサは、前記RNNからの未来の観測値の予測に関連する確率を確率的オプティマイザに提供するように構成される、請求項13に記載の装置。
【請求項16】
前記プロセッサは、前記ゴールに到達するための推定されたアクションのシーケンスを入力推定値として確率的オプティマイザに入力するように構成される、請求項1に記載の装置。
【請求項17】
前記観測値はLiDARデータである、請求項1に記載の装置。
【請求項18】
前記強化学習ポリシーは、PPO(proximal policy optimisation algorithm)である、請求項2に記載の装置。
【請求項19】
タスクを実行するための方法であって、前記タスクは、ゴールに達するために実行されるアクションのシーケンスであり、前記方法は、
プロセッサにおいて前記ゴールに関する情報を受信することと、
前記ゴールに到達するための前記アクションのシーケンスを決定することと、前記アクションのシーケンスは、少なくとも1つの制約を受け、
前記アクションのシーケンスにおける次のアクションのための制御信号をコントローラに提供することと、
を備え、
前記アクションのシーケンスは、前記少なくとも1つの制約に関する情報を取得するようにセンサによって受信された観測値を処理することと、前記アクションのシーケンスを決定するために確率的最適化を実行することとによって決定され、前記少なくとも1つの制約は、前記確率的最適化においてコストとして表現され、前記確率的最適化は、前記次のアクションの初期推定値を
、前記次のアクションを予測するための初期値として、未来の観測値の予測に関連する確率分布により取得する、方法。
【請求項20】
コンピュータによって実行されると、前記コンピュータに、請求項19に記載の方法を行わせる命令を備える非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で説明する実施形態は、タスク実行装置および方法、ならびにそれをトレーニングする方法およびシステムに関する。
【背景技術】
【0002】
多くの機械学習問題がタスクとしてモデリングされ得る。そのようなタスクにおいて、エージェントは様々な制約を考慮してゴールを満たそうと試みる。そのようなタスクの一例には、車両が、障害物とさらに車両の許容された移動アクションとによって提供される制約を考慮してロケーション(ゴール)に到達しようと試みるナビゲーションがある。
【図面の簡単な説明】
【0003】
【
図1A】例示的な実施形態に係る自律車両がナビゲートすることができる例示的な環境の例示である。
【
図1B】例示的な実施形態に係る自律走行車両の例示である。
【
図1C】例示的な実施形態に係る自律航空機の例示である。
【
図1D】
図1Aの自律走行車両および
図1Bの自律航空機に適用される制御システムの概略図である。
【
図2】一実施形態に係るタスクを実行するための方法を示すフローチャートである。
【
図3】一実施形態に係るタスクを実行するための方法を示すフローチャートである。
【
図5】一実施形態に係るタスクを実行するためのシステムの概略図である。
【
図6】車両/ロボット動的モデルをより詳細に示す概略図である。
【
図7】確率的最適化モデル内でコストが制約としてどのようにモデリングされるかを示す図である。
【
図8】一実施形態に係る方法を使用して複雑な動的シーンにおいてナビゲートするロボットの例を示し、上の5つの図は、現在の環境のオンライン再構築であり、対応する下の5つの図は、真値(ground truth)マップである。
【
図9】一実施形態に係る方法を使用してロボットがナビゲートする4つの環境を示し、実線は、ロボットの運動を示し、点線は、動的障害物の運動を示す。
【発明を実施するための形態】
【0004】
第1の実施形態では、タスクを実行するための装置が提供され、タスクは、ゴールに達するために実行されるアクションのシーケンスであり、本装置は、
装置の観測値を取得するための少なくとも1つのセンサと、
該装置を移動させるための制御信号を受信するように構成されたコントローラと、
プロセッサと、
を備え、
該プロセッサは、
ゴールに関する情報を受信することと、
該ゴールに到達するためのアクションのシーケンスを決定することと、アクションのシーケンスは、少なくとも1つの制約を受け、
該アクションのシーケンスにおける次のアクションのための制御信号を該コントローラに提供することと、
を行うように構成され、
該プロセッサは、少なくとも1つの制約に関する情報を取得するように該センサによって受信された観測値を処理することと、アクションのシーケンスを決定するために確率的最適化を実行することとによってアクションのシーケンスを決定するように構成され、少なくとも1つの制約は、該確率的最適化においてコストとして表現され、確率的最適化は、次のアクションの初期推定値を受信する。
【0005】
開示されたシステムは、コンピュータによってこれまで実行されていない機能をコンピュータが実行することを可能にすることによって、コンピュータの機能性を向上させる。具体的には、開示されたシステムは、環境に関するデータが多次元であるときでも動的環境においてタスクを実行するようにエージェント(車両等)の高速更新を提供する。これは、制約がコストとしてモデリングされる確率的最適化問題としてタスクをモデリングすることによって提供される。これにより、コストの各々を独立してモデリングし、次いで確率的モデルにおいて組み合わせることが可能になる。確率的モデルの収束が、次のアクションの推定値を使用することにより向上する。
【0006】
一実施形態では、入力推定値が強化学習ポリシーから取得される。強化学習ポリシーまたはモジュールは、適切なアルゴリズムを使用してよく、一実施形態では、PPO(proximal policy optimisation algorithm)が使用される。
【0007】
上記配置構成を使用すると、プロセッサが、複数の並列処理分岐を各分岐が異なる制約に割り振られるように使用して、制約に関する観測値を処理することが可能である。これにより、メインタスクとは独立して制約をモデリングおよびトレーニングすることが可能になる。
【0008】
上記は、多くの異なるタイプのタスクで、例えば、制約を伴うロボットナビゲーション、制約を伴うピッキングアーム操作、実環境における再構築のための視点プランニング等で使用することができる。一実施形態では、タスクは、ゴールに達するように装置の少なくとも一部分を移動させることを備え、アクションのシーケンスは、移動のシーケンスである。
【0009】
1つの実施形態では、装置は車両またはロボットであり、タスクはナビゲーションタスクであり、ゴールはロケーションである。ロケーションは、座標によって記述されるロケーションまたはピックアップすべきオブジェクトのロケーション等であり得る。ロケーションは、車両/ロボット全体を移動させるべきロケーションまたは車両/ロボットの一部分のみを移動させるべきロケーションであってよく、例えば、車両/ロボットの一部分は、ロボットのアームであってよい。
【0010】
そのようなタスクでは、制約のうちの少なくとも1つは、動的障害物を避けるようにナビゲートすることを備え得る。一実施形態では、これは、動的障害物の回避に関連する制約が、動的障害物の占有マップを生成するように処理され得ることで達成され得る。占有マップは、ある位置が時間tのときに占有される尤度の確率分布を提供する。一実施形態では、例えば、時間ホライズンHまでの異なる時間のときの複数の占有マップが生成される。
【0011】
一実施形態では、プロセッサは、ニューラルネットワークを使用して動的障害物の1つまたは複数の占有マップを生成するように構成され、ここにおいて、ニューラルネットワークに対する入力は、動的障害物の前の観測値の時間シリーズである。
【0012】
上記フレームワークにより、制約を異なる処理分岐で処理することが可能になり、したがって、異なる制約を異なるように処理することができる。例えば、制約のうちの少なくとも1つは、静的障害物を避けるようにナビゲートすることを備え得る。
【0013】
一実施形態では、制約のうちの少なくとも1つは、装置がゴールに到達するために最短距離を移動することを必要とする。
【0014】
複数の制約があるとき、プロセッサは、制約から導出されたコストに可変重みが適用されるように、各コストに重みを適用するように構成され得る。これにより、例えば、静的障害物を避けるためのコストに、動的障害物を避けるためのコストよりも大きい重みを与えることが可能になる。
【0015】
一実施形態では、強化学習モジュールへの入力は、再帰型ニューラルネットワーク「RNN」の隠れ状態であり、RNNは、少なくとも1つの未来の観測値の予測値を生成するために使用される。RNNへの入力は、観測値の潜在表現であり得る。またRNNは、装置の現在のアクションも入力として受信し得る。これは、オドメトリ測定値から決定され得る。
【0016】
さらなる実施形態では、RNNへのさらなる入力はゴールである。しかしながら、ゴールがこの段階でRNNに提供されず、ゴールとは独立して予測を行うことも可能である。
【0017】
一実施形態では、プロセッサは、RNNからの未来の観測値の予測に関連する確率分布を確率的オプティマイザに提供するように構成される。
【0018】
確率的オプティマイザに初期推定値を入力することにより、確率的オプティマイザがより迅速に収束することが可能になる。初期推定値は、次のアクションのみであってもよいし、またはゴールまでのアクションのシーケンスであってもよい。
【0019】
一実施形態では、観測値はLiDARデータである。
【0020】
ゴールは、最終ゴールであってもよいし、または最終ゴールまでの途中の「サブゴール」を形成するウェイポイントであってもよい。
【0021】
さらなる実施形態では、ゴールまでのナビゲーションを実行するための装置が提供され、本装置は、
装置の観測値を取得するための少なくとも1つのセンサと、
該装置を移動させるための制御信号を受信するように構成されたコントローラと、
プロセッサと、
を備え、
該プロセッサは、
ゴールに関する情報を受信することと、
少なくとも1つの制約を受ける該ゴールまでの経路を決定することと、経路は、アクションのシーケンスであり、
該装置を該ゴールに移動させるための次のアクションのための制御信号を該コントローラに提供することと、
を行うように構成され、
該プロセッサは、少なくとも1つの制約に関する情報を決定するように該センサによって受信された観測値を処理することと、次のアクションの推定値を決定することと、経路を決定するために確率的最適化を実行することとによって、少なくとも1つの制約を受ける該ゴールまでの経路を決定し、少なくとも1つの制約は、該確率的最適化においてコストとして表現され、次のアクションの推定値は、入力として提供される。
【0022】
さらなる実施形態では、タスクを実行するための装置が提供され、該タスクは、ゴールおよび複数の制約を備え、
本装置は、
観測値に関連する画像データを受信するための入力と、
プロセッサと、
制御信号を出力するための出力と、
を備え、
プロセッサは、
装置のゴールを示す情報を受信することと、
該画像データを受信し、該画像データから制約に関する情報および該ゴールに向かう該装置の現在の進行を決定することと、
装置がゴールに向かって進行するための次のアクションを予測することと、
を行うように構成され、
次のアクションを予測することは、最適化中に制約をコストとして使用して最適化を実行することを備え、最適化は、次のアクションの入力推定値を受信する。
【0023】
上記は、深層および分析的の両方である複数の制約を組み合わせることができる新規なプランニングフレームワークを提供し、モデルを再トレーニングすることなくオンザフライで確率的最適化を合同で使用して連続空間において制約を解消する。また、実施形態は、LiDAR測定値およびオドメトリを使用して動的障害物が存在するときの複雑環境を通してロボットをステアリングすることができる安全な屋内ナビゲーション手法を提供する。
【0024】
本明細書で説明する実施形態は、レンジ測定値を符号化するために深層ネットワークを使用し、よって、他の障害物のグラウンドポーズ(ground poses)は必要ない。また、環境が再構築されるので、アプリオリなオブジェクトロケーションのマップが必要ない。上記実施形態は、障害物の軌跡を予測するために深層再帰型ネットワークを使用するので、本明細書で説明する手法が、より長いホライズンにわたる、より正確な軌跡(またはアクションのシーケンス)を予測することができるようになる。また、深層強化学習の解を初期推測として使用して最適化プロセスをウォームスタートすることは、最適化プロセスが未来の報酬を最大にする助けとなる。
【0025】
上記実施形態により、タスクをゴール到達(メインタスク)および動的衝突回避(制約)という2つ(またはそれ以上)のサブタスクにディスエンタングルすることが可能になり、その結果、手法は、「端から端まで(end-to-end)」ではないのでより良好に一般化する。また、深層強化ポリシーの再トレーニングまたは修正なしにオンザフライでサブタスクを合同で最適化することができる、モジュールによるオンラインプランニング手法が提示される。
【0026】
一実施形態では、ナビゲーションタスクは、(I)ゴール到達と(ii)動的衝突回避という2つのサブタスクにディスエンタングルされる。再帰型ニューラルネットワーク(RNN)は、ロボットおよび障害物の動的モデルをデータから学習するようにトレーニングされる。各タスクを制約として考慮するので、手法は、深層学習ベースの動的システムにおける複数制約プランニングのために提示される。手法は、プランニングホライズンにわたる平均期待コストを最小にする最適なアクションを算出することによって、分析的または学習ベースである必要制約を合同で解消する。遠いホライズンタスクを解くために、一実施形態では、ウェイポイントベースのプランニング戦略が使用される。さらに、部分的な占有マップが維持されてよく、これは、ナビゲート中にオンラインで再構築される。このことから、衝突のないウェイポイントが選択され、ゴールとして提供され得る。
【0027】
本明細書で説明する実施形態は、再トレーニングすることなくロボット構成(および他の制約)をオンザフライで変更することができるようにモジュール方式で制約モデルに取り組む。
【0028】
さらに、最適化は、深層ネットワークと分析的キノダイナミックモデルの両方を扱うことができる。また、解がすべての制約を通して検証され、解が実現可能かつ安全であることを確実にする。
【0029】
上述の問題の複数タスクプランニング定式化には利点がいくつかある。第1に、例えば、ロボットのダイナミクス、滑らかさ等の追加の制約をオンザフライで追加することが可能である。第2に、フレームワークは、分析的制約および深層ネットワークベースの動的制約を扱うことができ、例えば、ロボットの軌跡の進展は、分析的制約であるそのダイナミクスに依存する。これに対して、動的障害物の軌跡は、深層ニューラルネットワークによってより良好に予測され、閉形式で表わすのが困難である。
【0030】
エージェントシステムおよび方法は、実在し得る(例えば物理的である)またはシミュレートされたものであり得るエンティティを、それらのコンテキストの観測値に基づいて、例えば、エンティティの環境および/またはエンティティの状態の観測値に基づいて制御する。そのようなエージェントは、指定タスクを実行するために一連のアクションを実行するようにエンティティを制御し得る。雑然とした現実的な屋内環境内をナビゲートすることが1つのタスクである。特に、エージェントは、静的障害物および動的(すなわち移動する)障害物の両方が存在するときに衝突を回避しながら、ゴールオブジェクトまでナビゲートするようにエンティティを何とか制御しようとする。衝突を回避しながらナビゲートできることは、道路の自律走行および航空機の自立運転、賑やかな通りにある宛先への重い箱の送達、レストランのテーブルの片付け、および病院の手術室への注射器の送達など、人間および車両などの動的障害物が移動している可能性が高いすべてのシナリオのタスクをロボットが実行するのを容易にする上で重要である。
【0031】
本明細書で説明する実施形態の理解の助けとなるために、具体的な例が最初に提示される。この具体的な例はこれらの実施形態の理解を助けるために提供され、下記の特許請求の範囲または明細書の範囲を限定するものとみなされるべきではないことを理解されたい。
【0032】
図1Aは、例示的な実施形態に係るエージェントを使用してナビゲートすることができる例示的な環境10の平面図の例示である。
【0033】
例示的な環境10は、自律車両11と、自律車両がその現在位置からナビゲートしていくターゲットオブジェクト12、例えばボールまたは花瓶とを含む。例示するように、自律車両11とターゲットオブジェクト12との間に障害物が存在する。自律車両11および障害物への損傷を回避し、障害物で先に進めなくなることを回避するために、自律車両11は、ターゲットオブジェクト12までナビゲートするときに障害物との衝突を回避する。
【0034】
例示的な環境10は、雑然とした屋内環境、例えば、オフィスまたは自宅であり得、テーブル、椅子、棚、本棚、収納具、箱、電子デバイス、および電力ケーブルなどの障害物を含み得る。
【0035】
図1Bは、例示的な実施形態に係る自律走行車両1、例えば、自動搬送車の例示である。
【0036】
自律走行車両1は、本体2と、車輪3と、センサ4とを含む。自律走行車両1は、例えば、自動走行車両を自動掃除機として使用することができるようにする真空吸引要素、および/または、自律走行車両がオブジェクトを収集および/または送達することができるようにするフォークおよび/または荷台など、図示されたもの以外の追加の要素を含んでよい。
【0037】
本体2は、車輪3を回転させるために使用され得る1つまたは複数のモータと、ステアリングシステム、例えばラックアンドピニオンとを含み、それによって、車輪3のうちの少なくともいくつかを所望の方向に移動するように転向させることができる。本体2はまた、制御システム、例えば、移動を実行させるために使用され得る1つまたは複数のコンピューティングデバイスを含む。例えば、制御システムは、車輪をモータによって回転させて自動走行車両を前方に移動させ(そして、サポートされている場合には、車輪を反対方向に回転させて自律車両を後方に移動させ)、ステアリングシステムに車輪を回転させて自律車両を方向転換させ得る。制御システムは、例えば
図1Dに関連して説明される方法を使用して、実行されるべき移動をそれ自体で決定し得るか、またはネットワークハードウェア、例えばワイヤレストランシーバを使用して外部コンピュータシステムから、実行されるべきアクションを示す指示を受信し得る。本体2はまた、1つまたは複数のモータ、ステアリングシステム、および制御システムにエネルギーを供給することができるように、電源(例えば、バッテリおよび/またはソーラーパネル)または電源への接続部(例えば、電源接続部)を含む。
【0038】
車輪3は、車輪3a、3bと、これらに対向する、例えば、本体2の車輪3a、3bとは反対側(図示せず)に対して配置された2つの車輪(図示せず)との4つの車輪を含み得る。4つの車輪のうちの各2つの車輪、例えば、車輪3aおよび反対側の車輪と、車輪3bおよび反対側の車輪とは、本体2を通して延在する車軸によって接続され得る。車軸のうちの少なくとも1つは、モータに接続されていてよく、それにより、車軸に接続されたそれぞれの2つの車輪がモータによって回転され得る。車軸のうちの少なくとも1つは、ステアリングシステムに接続されていてよく、それにより、それぞれの2つの車輪がステアリングシステムを使用して転向され得る。
【0039】
センサ4は、画像データをキャプチャすることが可能である。一実施形態では、センサは、LiDAR(light detecting and ranging)センサである。センサ4は、本体2内の制御システムに結合される。センサ4は、例えば制御システムから受け取った要求に応答して、画像データをキャプチャし、画像データを制御システムに送るように構成される。制御システムは、実行されるべき1つまたは複数の移動を画像データに基づいて決定するためにそれ自体で画像データを処理し得るか、または、ワイヤレストランシーバなどのネットワークハードウェアを使用して外部コンピュータシステムに画像データを送信して、それにより、外部コンピュータシステムが、実行されるべき1つまたは複数の移動を画像データに基づいて決定することができるようにし得る。
【0040】
図1Cは、例示的な実施形態に係る自律航空機5、例えば、無人航空機またはドローンの例示である。
【0041】
自律航空機5は、本体6と、プロペラ7と、センサ8とを含む。自律航空機5は、図示されたもの以外の追加の要素を含み得る。例えば、オブジェクトを収集および/または送達するために自律航空機を使用することができるようにするペイロード保持または取付け要素がある。
【0042】
本体6は、それぞれのプロペラを回転させるために使用され得る、プロペラ7の各々のためのそれぞれのモータを含む。本体6はまた、制御システム、例えば、移動を実行させるために使用され得る1つまたは複数のコンピューティングデバイスを含む。例えば、制御システムは、モータにプロペラを回転させ、モータがプロペラを回転させる速度を制御し得、それにより、自律航空機は、上昇および下降、前方および/または後方への移動、ならびに方向転換を行うことができる。制御システムは、例えば
図1Dに関連して説明される方法を使用して、実行されるべき移動をそれ自体で決定し得るか、またはネットワークハードウェア、例えばワイヤレストランシーバを使用して外部コンピュータシステムから、実行されるべきアクションを示す指示を受信し得る。決定および/または受信された移動は、自律航空機が実行可能な動作よりも抽象度が高い場合があり、制御システムは、これらのより抽象的な移動を、航空機が実行可能な動作に変換し得る。例えば、より抽象的な移動は、前方への移動、左への方向転換、および右への方向転換であり得、制御システムは、これらを、モータがプロペラ7を回転させる速度の差に変換し得る。本体6はまた、1つまたは複数のモータおよび制御システムにエネルギーを供給することができるように、電源(例えば、バッテリおよび/またはソーラーパネル)または電源への接続部(例えば、電源接続部)を含む。
【0043】
プロペラ7は、4つのプロペラ7a、7b、7c、および7dを含み得る。説明したように、プロペラ7a~7dの各々は、本体6に位置するそれぞれのモータによって回転され得、プロペラ7a~7dのうちの1つまたは複数は、自律航空機5が左または右に方向転換したり前方に移動したりするように、プロペラ7a~7dのうちの別の1つまたは複数とは異なる速度で回転され得る。
【0044】
センサ8は、画像データをキャプチャすることが可能である。一実施形態では、センサは、LiDAR(light detecting and ranging)センサである。センサは、本体6内の制御システムに結合される。センサは、例えば、制御システムから受け取った要求に応答して、画像データをキャプチャし、画像データを制御システムに送るように構成される。制御システムは、実行されるべき1つまたは複数の移動を画像データに基づいて決定するためにそれ自体で画像データを処理し得るか、またはワイヤレストランシーバなどのネットワークハードウェアを使用して画像データを外部コンピュータシステムに送信して、それにより、外部コンピュータシステムが、実行されるべき1つまたは複数の移動を画像データに基づいて決定することができるようにし得る。
【0045】
図1Dは、車両の内部構成要素の概略図である。車両は、プロセッサ112およびメモリ114を有するコンピュータシステム110を備える。コンピュータシステム110は、LiDARセンサ141およびロボットオドメトリセンサ142からの入力を受信する。コンピュータシステムの機能については
図2~
図7を参照して説明する。次のアクションが決定されると、ステアリングデバイス140を制御するコントローラ130に命令が送られる。
【0046】
図2は、タスクを実行するようにエージェントを制御する方法を示すフローチャートである。ステップS101において、ゴールに関するデータがプロセッサによって受信される。本方法をコンテキストで捉えられるように、本方法について
図1Aのナビゲーションタスクに関連付けて説明し、ここでは、装置は車両であり、ゴールはロボットが到達するべきロケーションである。しかしながら、他のオプションが可能であり、例えば、装置がロボットアームであってよく、ゴールはオブジェクトにアームを伸ばすことである。実際上では、本明細書で説明する方法およびシステムは、任意のモデル予測制御(MPC)プロセスに適用することができる。例えば、(i)作業空間の制約を考慮しながらオブジェクトにアームを伸ばして掴む(例として棚にあるオブジェクト)、(ii)操作:パターンに切断/溶接する、(iii)農業ロボットの果実摘み取り、または(iv)ドローンによる作業空間の目視検査がある。ゴールは、最終的なゴールであってもよいし、またはゴールに向かう過程を定義するサブゴールであってもよい。
【0047】
S103において、画像データが受信される。画像データは、車両の物理的な周囲環境に関する情報に関連するいずれのタイプのデータであってよく、そのデータから障害物のマップを生成することができる。1つの実施形態では、画像データは1つまたは複数のLiDARセンサからの出力である。
【0048】
次いで、S103で収集された画像データは、並列分岐で処理される。第1の分岐において、画像データは、ステップS105においてプロセスに対する制約についての情報を決定するように処理される。次いで、制約は、最適化モデルS107においてコストとして提供される。最適化モデルでは、最低コストを有する、ゴールに向かう一連のアクションが決定される。この簡易化したチャートでは、コストを決定するために単一の分岐しか示されていない。しかしながら、実際上では、多くの並列分岐が存在してよい。また、最適化モデルS107に提供される追加のコストが、ステップS103で取得された画像データから導出されない場合がある。ナビゲーションタスクにおいて、制約とは、障害物(静的および/または動的)、経路の長さなどの経路の制限、車両によって提供される制限等であり得る。
【0049】
最適化モデルS107において、多次元コストランドスケープが生成され、最低コストの経路が見つけられる。これは、既知の最適化技法を使用して行うことができる。最適化モデルが良い解に効率的に収束する助けとなるために、ステップS109において次のアクションの最初の推定値が最適化モデルに提供される。次のアクションが、S111において最適化モデルから出力される。
【0050】
図3は、静的障害物および動的障害物が存在するときに2Dナビゲーションタスクを実行する車両またはロボットのための、
図2のフローチャートの実施のフローチャートである。
図3のチャートは、
図2のフローチャートを改良したものである。そのため、不要な繰り返しを避けるために、同様の参照番号を使用して同様の特徴を示す。
【0051】
一実施形態では、2Dでのポイントゴールナビゲーションの問題が、車両(またはロボット)の現在位置
【数1】
と、ゴール
【数2】
と、現在の時間インスタンスtのときの現在のLiDARセンサ測定値
【数3】
とから設定される。目的は、ロボットを一連のアクション制御コマンド
【数4】
により、n個の協働しない動的障害物および静的障害物を避けながらゴールまでナビゲートすることである。一実施形態では、アクション制御コマンドは、速度制御コマンドである。
【0052】
この問題は、モデル予測制御(MPC)として以下の通りに定式化することができる。
【数5】
ここで、π
*は、時間ホライズン(H)にわたるゴールまでの未来の距離を最小にする最適なアクションシーケンスである。ここで、p
tは、ロボットの位置を示し、p
t
iは、i番目の動的障害物の位置を示し、s
jは、j番目の静的障害物の位置を示す。ロボットのダイナミクスが関数fによって展開し、他の動的エージェントがロボットから独立したf
iにより展開すると想定する。
【0053】
一実施形態では、問題は、マルチタスクプランニング手法としてモデリングされる。特定の実施形態では、合同のフレームワークですべてのサブタスクを解くために潜在空間において確率的最適化が用いられる。式(1)のMPC定式化は、制約なし最適化問題として、以下の通りに書き直すことができる。
【数6】
ここで、
C
t
gは、ゴール到達コストを表現し、
【数7】
として表現され得、これは、マップの現在の再構築に基づく現在位置とゴールとの間の測地線距離である。
C
t
0は、動的障害物回避コストを表現し、
【数8】
として表現することができる。
C
t
sは、静的障害物回避コストを表現し、
【数9】
として表現することができる。
【0054】
α、β、γは、必要に応じて設定することができる重みである。いくつかの実施形態では、α、β、γはすべて1に設定される。しかしながら、コストのうちの1つまたは複数の重要度を増加および/または減少させる必要がある場合には異なる値を設定することができる。Mt
O(pt)は、位置ptが時間インスタンスtのときに動的障害物によって占有される確率を表現する動的占有マップであり、Mt
s(pt)は、位置ptが時間インスタンスtのときに静的障害物によって占有される確率を表現する静的占有マップである。
【0055】
一実施形態では、ロボットの次の位置は、非線形関数φ(再帰型ニューラルネットワークなどのニューラルネットワークにより実装され得る)によって、またはfがわかる場合にはロボットの真のダイナミクスによって予測することができる。同様に、非線形関数ψ(ニューラルネットワークにより実装され得る)が、LiDAR測定値から動的障害物についての衝突確率マップMt
Oを予測するために使用され得、一方、静的占有マップMt
sは、LiDAR測定値から再構築または予測され得る。
【0056】
この実施形態では、部分的に再構築された静的占有マップ(M
t
s)表現が、古典的なグリッドマッピングにより生成される。一実施形態では、静的マップは、SLAM(simultaneous localization and mapping)を使用して算出される
【数10】
。静的占有マップを構築するときに、一実施形態では、位置が占有される確率の対数オッズの平均が使用される。よって、オブジェクトが移動する場合、位置が占有される確率は経時的に減少する。
【0057】
部分的占有再構築にわたる世界の符号付き距離フィールド(SDF)表現も使用され、これは、SDFの算出の計算コストが高いので、数ステップごとに更新される。次いで、数ステップごとに部分的SDFからウェイポイントを生成するためにグローバルプランナ(例えば、高速マーチング法)が使用される。さらに、静的衝突コストCt
sも、占有マップ(Mt
s)から、位置ptが閾値εよりも大きい確率をクエリすることによって算出することができる。要約すると、占有マップは符号付き距離フィールド(SDF)に変換され、次いで、高速マーチング法(FMM)などのグローバルプランナがSDFに対して実行され、FMM経路上の設定数のステップ離れた、例えば15ステップ離れたウェイポイントが選択される。
【0058】
未来の状態および対応するコストがRNNによって予測されると、一実施形態では、勾配法によらない(gradient free)サンプリングベースの確率的最適化フレームワークが、式2からのコストを最適化するために使用される。
【0059】
上記がどのようにして導出されるかについて
図3を参照して説明する。ステップS101において、ゴールに関するデータが提供される。この実施形態では、ゴールに関するデータは、車両が到達すべき2Dロケーションにより提供される。しかしながら、他のオプションが可能であり、例えば、掃除機の場合、指定されたエリアをカバーするルートに沿う中間ゴール(ウェイポイント)が与えられ得る。また、別の例は、ある特定の関心点をカバーする必要があるときの自律検査である。
【0060】
次いで、ステップS103において画像データが受信される。上述のように、画像データはLiDARセンサからのデータであり得る。
図4は、LiDARセンサからの典型的な「画像」を示しており、この画像は、センサ自体が画像の中心に位置するポーラー画像であり、LiDARセンサによって送られた光信号の反射が障害物の存在を示す。処理のために、LiDAR画像データは、占有確率の行列に、または距離の1Dベクトルとして変換され得る。行列は、64x64のサイズを有してよく、1Dベクトルは、1080単位のサイズを有してよく、したがって、ニューラルネットワークへの入力は大きい。障害物は、予測可能または予測不可能な様式で移動する動的障害物であってよいし、または障害物は静的障害物であってよい。
【0061】
ステップS105において、制約についての情報が取得される。簡易化のために単一の分岐が示されているが、実際上では、複数の分岐があってよく、その各々が異なるタイプの制約をモデリングして、制約が最適化ステップにおいてコストとしてモデリングされることを可能にする。
【0062】
次に、動的障害物を制約としてモデリングすることについて説明する。動的障害物の軌跡がLiDAR測定値により学習される。これは、
図5により明確に示されている。
図5の下の分岐201は、LiDAR測定値のユークリッドグリッドマップ表現203の集合を示し、これらは、時間ステップtが漸増される時間期間Hにわたって得られることにより時間t-Hからtまでに別個の表現が得られるものである。一実施形態では、時間ステップtは、シミュレーションの場合はタイムスタンプであり、実際の実験の場合はフレームレートであり、例えば、5Hzのフレームレートが使用され得る。次いで、これらの表現203は積み重ねられ、動的占有マップ205を予測するために使用され、動的占有マップ205から、動的障害物によって提供される制約のコストが決定される。動的占有マップは、位置が動的オブジェクトによって占有される確率を表現する。
【0063】
一実施形態では、これは、時空間畳み込みニューラルネットワークをトレーニングすることによって達成され、該時空間畳み込みニューラルネットワークは、先のLiDAR測定値(すなわち、t-Hからtまで)のユークリッドグリッドマップ表現203を積み重ねて、t-Hからt+Hまでの時間間隔にわたる動的占有マップ205を予測し、これは
【数11】
として表現される。
【0064】
このことから、動的衝突コスト
【数12】
を動的占有マップから取得することができる。動的マップは、マップ上の選択された位置におけるクエリが、選択された位置が占有される確率を出力する関数である。所与の位置
【数13】
が占有される確率は、閾値δよりも低いはずである。一実施形態では、U-Netスタイルアーキテクチャ[J. Schulman, F. Wolski, P. Dhariwal, A. Radford, and O. Klimov “Proximal policy optimization algorithms,” arXiv preprint arXiv:1707.06347, 2017]がモデリングψのために使用される。一実施形態では、チャネルは、時間的に積み重ねられたフレームを表現し、よって、畳み込み演算子は、入力データの時空間スライスにわたって学習する。したがって、時空間ネットワークと呼ばれる。さらなる実施形態では、非線形関数ψを提供するために再帰型ニューラルネットワークが使用されてもよい。
【0065】
一実施形態では、静的障害物に起因するコストをモデリングするために、さらなる分岐201が提供される。ここで、LiDAR入力203(動的分岐において説明された)が使用されて、SLAMシステム(図示せず)によって維持される占有マップが生成される。この分岐は、
【数14】
を出力し、ここで、
【数15】
は、SLAMシステムによって維持される衝突(占有)マップである。これは、位置/ロボット状態を与えられると衝突確率をリターンする関数またはメモリであると考えることができる。
【0066】
ここで、この実施形態ではLiDARデータである画像データを受信することに加えて、S113においてオドメトリ測定値209が取得される。オドメトリ測定値209は、車両のセンサ、例えば加速度計等からの車両位置の変化を示す。
【0067】
オドメトリ測定値、ゴール、および画像データが使用されて、車両がゴールに到達するために実行する必要がある移動のシーケンスの推定値が予測される。次いで、この推定値は、確率的モデルへの入力として使用される。画像データおよびオドメトリデータは、車両の状態を提供する。一実施形態では、シーケンス(ホライズンにわたるプラン
【数16】
)が推定されるが、第1のアクションのみを実行するとき、
【数17】
が使用される。
【0068】
一実施形態では、車両の動的モデルを符号化するために、
図5に示す畳み込み変分オートエンコーダ(VAE)および再帰型ニューラルネットワーク(RNN)211を備える状態空間モデルが用いられる。
【0069】
状態空間モデルへの入力は、以下の通りである。
まず、LiDAR測定値からの潜在表現が提供される。
1.Z
t=VAE(X
t)
これは次いで、RNNに前回のアクションおよび相対ゴールと共に連結される。
【数18】
次いで、デコーダを使用して位置および次の測定値を予測する。
【数19】
【0070】
図6を参照して、配置構成および動作について詳述する。ここで、VAEは、エンコーダ251およびデコーダ253として表現される。VAEの目的は、LiDARセンサから画像データ
【数20】
を得て、潜在表現
【数21】
へと圧縮し、それにより、LiDAR観測値の入力された時間的シーケンスに対応する潜在表現の時間的シーケンスができるようにすることである。さらに、ゴールもエンコーダ251を使用して符号化されてゴールの潜在表現が生成される。
【0071】
潜在表現
【数22】
およびゴール
【数23】
は、次いで、RNN255の入力に提供される。RNN255は、エンコーダが生成すると予想される未来の
【数24】
ベクトルの予測モデルとしての役割をする。一実施形態では、RNNは、zの決定論的予測ではなく確率密度関数
【数25】
を出力するようにトレーニングされる。
【数26】
をパラメータ化するために多くのオプションが利用可能である。一実施形態では、
【数27】
は、複数のガウス分布の和であるガウス混合モデルとして表わされる。よって、RNNは、条件付き確率P(z
t+1│a
t,z
t,h
t)をモデリングし、ここで、a
tは、時間tのときのアクションであり、h
tは、時間tのときのRNNの隠れ状態である。この実施形態におけるアクションa
tは、a=[v
x,v
y,ω]として表現することができる速度であり、ここで、v
x,v
y,ω ∈ [-1,1]である。アクション
【数28】
は、オドメトリ測定値から取得される。RNNは、時間ホライズンHまでの
【数29】
、すなわち、
【数30】
を予測する。
【0072】
時間tのときの観測値の潜在表現
【数31】
、および時間tのときのRNNの隠れ状態
【数32】
は、次いで、積み重ねられ、強化学習モジュール257に提供される。時間tのときのRNNの隠れ状態
【数33】
から
【数34】
というRNN255の予測値が生成されるので、
【数35】
は、RLモジュール257に特徴ベクトルのための良い候補を提供する。
【数36】
と
【数37】
とを組み合わせると、RLモジュール257に、現在の観測値および未来の期待するものの良い表現が与えられる。一実施形態では、次のアクション
【数38】
が強化学習モジュールによって予測され、これは最適化のための初期推測を取得するためにH回繰り返される。さらなる実施形態では、強化学習モジュールは、
【数39】
を回帰的に予測するために使用される。
【0073】
一実施形態では、RLモジュール215/257の出力は、車両の次のアクションの予測値
【数40】
である。しかしながら、他の実施形態では、RLモジュール257は、アクションのシーケンス
【数41】
を予測するようにトレーニングされてもよい。
【0074】
一実施形態では、RLポリシーによって提供される初期解
【数42】
としての平均値と予め定められた分散
【数43】
とを有する正規分布がフィッティングされる。RLが
【数44】
のみを予測する実施形態では、軌跡が予測され、すなわち、
【数45】
等である。
【0075】
さらに、デコーダ253を使用して、予測された観測値
【数46】
の確率分布を出力し、車両の予測された位置
【数47】
の対応する確率分布が、確率的オプティマイザに提供される。これは次いで、確率的オプティマイザ217への入力として使用される。
【0076】
上記
【数48】
の推定値もまた、クロスエントロピー法(CEM)を使用して確率的オプティマイザへの入力に使用される。次いで、分布は、この先の分布Ntとして得られるj番目のサンプルによりサンプリングされてN個のサンプル軌跡が取得される。j番目のサンプルは以下で与えられる。
【数49】
RLが
【数50】
のみを予測する実施形態では、軌跡が予測され、すなわち、
【数51】
等である。RLが
【数52】
の推定値を出力する場合、予測された出力の値ごとに正規分布がフィッティングされる。
【0077】
これらのサンプルは、制約のすべての状態空間モデルから伝播されて、次の状態
【数53】
と、すべての時間ホライズンにわたるサンプルj、すなわち、
【数54】
についての平均期待コストC
jとが取得される。コストは式(2)を使用して計算される。
【0078】
次いで、N個のサンプルが報酬(報酬=-コスト)の降順でソートされ、最小Cに対応するKエリート(K-elite)サンプルが選択される。CEM最適化プロセスに続いて、正規分布が、Kエリートサンプルの各々について、分散および平均値により再度フィッティングされる。プロセスは、平均期待コストが閾値だけ減少しなくなるまで繰り返される。最後に、最良のアクションが選択され、これは後退ホライズン方式で車両に提供される。後退ホライズンプランニング手法では、固定ホライズンHにわたりプランが作成されるが、次のアクション
【数55】
のみが使用される。次いで、新たなセットの観測が行われ、H個の時間ステップにわたり次のプランが作成される。
【0079】
一例では、時間ステップごとに1つの分布がある(合計でH個の分布)。このことからN個のサンプルが各時間ステップにおける分布から選択される。各アクションが2次元で表現されるので、これによりH個の時間ステップについてNxHx2行列が与えられる。
【0080】
次に、これらの時間ステップごとのN個のサンプルがすべての制約に渡される。この実施形態では、2つの制約と1つのゴール到達コストとがあるので、NxHx3行列のコストが得られる。
【0081】
次に、時間ステップごとのサンプル当たりの平均コストが決定され、結果としてNxH行列が得られる。
【0082】
次いで、時間ステップごとに、最小コストを有するkエリートサンプルが選択される。これにより、(各アクションが2Dであるので)kxHx2行列が与えられる。次いで、正規分布がこれらのkサンプルにフィッティングされる。この結果、各々が2D平均値と2D(対角)分散とを有するH個の正規分布が得られる。
【0083】
NxHx2の行列を与えるこれらのH分布からN個のサンプルが再度選択され、収束までプロセスを繰り返す。一実施形態では、プロセスは、プロセスにおける遅延を回避するために8~10回反復したら完了する。
【0084】
一実施形態では、車両は、前回のセンサ測定値をバッファ/メモリから連続して得て、アクションコマンドを車両/ロボットのバッファ/メモリに書き込む。この実施は、すべてのセンサが異なるレートでリフレッシュするので、センサと比較してプランナを異なるレートで更新させるのに役立つ。
【0085】
上記では、シミュレーションの場合、位置
【数56】
はロボットのオドメトリから取得され得る。現実のシナリオでは、
【数57】
はSLAM(LiDAR+IMU+オドメトリ)から得られる。慣性測定ユニット(IMU)は、加速度計、ジャイロスコープ、および磁力計を備えるセンサである。IMUは、加速度計、ジャイロスコープ、および磁力計を使用し、加速度および角速度を出力する。SLAMは、別個のスレッドであり、バッファ内の
【数58】
およびマップを連続して更新する。一実施形態では、現在の
【数59】
は、
【数60】
がVAEエンコーダのためにクエリされたときにバッファから使用される。
【数61】
、マップ、および
【数62】
が確率的最適化ステップ中同じままであると想定することに留意されたい。
【0086】
【0087】
一実施形態では、以下の擬似コードを使用するアルゴリズムを使用することができる。
【表1】
【0088】
これは、
図5の図において確率的最適化217内に示されている。
【0089】
次に、
図5に戻り、システムのトレーニングについて説明する。コストは確率的オプティマイザ217において組み合わされるので、コストを決定するニューラルネットワークを互いに別個にトレーニングすることができる。
【0090】
一実施形態では、動的占有マップを生成するために使用されるニューラルネットワークψは、システムの残りの部分とは別個にトレーニングされる。一実施形態では、ニューラルネットワークψは、障害物、例えば、0~15個の障害物を有する真値マップを使用して教師あり様式でトレーニングされる。
【0091】
一実施形態では、φを形成するVAEおよびRNN(LSTM)の両方が合同でトレーニングされる。例えば、ランダムにエージェントを移動させ、データを収集することによって、トレーニングデータが取得され得る。
【0092】
一実施形態では、RLモジュールは別個にトレーニングされる。
【0093】
上記により、制約をモデリングするために使用されるニューラルネットワークが互いに別個にトレーニングされることが可能になる。よって、他の制約またはロボットの動的モデルを再トレーニングする必要なく制約を追加/または除去することができる。
【0094】
一実施形態では、以下の構造を使用することができる。
ロボットの動的モデル(φ)のためのVAEについては、Navrepに類似したアーキテクチャを使用してよい。この例では、VAEは、4層の畳み込みニューラルネットワーク(CNN)エンコーダを備え、これには次いで、2層の密層(dense layer)と4層のCNN復号ブロックとが続く。潜在特徴zはサイズ32であり、RNN(LSTM)の隠れ特徴はサイズ64である。RLポリシーのバリューネットワークは、2層の密なネットワークから構成される。
【0095】
動的障害物分岐については、U-Netスタイルアーキテクチャ[O. Ronneberger, P. Fischer, and T. Brox, “U-net: Convolutional networks for biomedical image segmentation,” in International Conference on Medical image computing and computer-assisted intervention, pp. 234-241, Springer, 2015.]が使用され得る。
【0096】
LiDAR測定値は、サイズ(140x140)のグリッドマップに変換され、(t=t-4:t=t)からの4グリッドマップが、(140x140x4)テンソルの形態で積み重ねられ、これはU-Netに入力される。U-Net出力は、(140x140x8)テンソルから構成され、これは、(t-4:t+4)からの動的障害物の確率分布を有する8グリッドマップを表現する。
【0097】
特定の例では、動的モデルは、10~15個の可変数の静的および動的障害物のためにORCAポリシーを使用してロボットを制御することによって抽出された、各々が長さ200である1000個の軌跡を用いてトレーニングされる。さらに、一実施形態では、生成されたLiDARデータにおいて動く脚として動的エージェントをレンダリングするために脚の動きを使用し、0.2sの時間ステップを、エージェントの位置を更新するために使用した。
【0098】
一実施形態では、Dugasらによって提供された事前トレーニング済みモデル[D. Dugas, J. Nieto, R. Siegwart, and J. J. Chung, “Navrep: Unsupervised representations for reinforcement learning of robot navigation in dynamic human environments,” in 2021 IEEE International Conference on Robotics and Automation (ICRA), pp. 7829-7835, IEEE, 2021.]が、ロボットのダイナミクスおよびRLポリシーのために使用される。RLポリシーは、方策勾配法を伴うRLポリシーであり得る。さらなる実施形態では、RLポリシーはPPOポリシーである(例えば、Proximal Policy Optimisation Algorithms J. Shulman et al arXiv:1707.06347 を参照)。
【0099】
動的障害物の状態空間モデルを、学習率1
e-4で一般的なアダムオプティマイザを使用してエポック数200でトレーニングした。また、ランダムクロッピングおよびランダム回転を、U-Netをトレーニングするためのデータ拡大として使用した。CEM最適化のために、ホライズン長H=4、初期分散0.8、サンプル数=256、およびKエリートサンプル数=32、を使用した。これを6回反復して最適化した。これらのCEMのハイパーパラメータを、Navrepトレーニングシミュレーション環境に基づいて経験的に選択した。
【表2】
表I
【0100】
この手法を任意の複数制約付き推論問題に適用することができるが、ここで提供される特定の例は動的障害物回避であり、ここでは、エージェントが、障害物のない空間内を移動することによってポイントゴールに到達する(ナビゲーションタスク)とともに、移動する障害物を避ける(動的障害物タスク)ことが必要である。
【0101】
この手法は、平均して100個以上の軌跡がある小空間に5つの移動する障害物と5つのオブジェクトとを有する環境で評価された。評価結果を表Iに示す。
図8は、手法の例示的な軌跡を示し、ここで、ロボットは、狭い空間の制約に起因して他のエージェントと協調する必要がある。
図8は、ロボットがNavrepシミュレーション環境における検証セットからの複雑な動的シーン内をナビゲートする例を示す。上5つの例は現在の環境のオンライン再構築であり、ここで、ロボット301は、ゴール303まで、動的障害物予測ネットワーク305によって検出された動的障害物を避けながらナビゲートする(動的障害物の回りに点線が示されている)。下の5つの図は、真値マップである。
【0102】
上記システムもまた、再トレーニングも微調整も行わずにNavrepの公表されているシミュレーションベンチマークで評価され、ここで、モデルは、初見の18個のシナリオ(「asl」と「unity」の2つのマップに各々9つのシナリオ)で、シナリオごとに50回テストされた。シナリオの定義および選択は、偏りを回避するために、テストが行われる前に固定した。
【0103】
結果を表IIに示す。
【表3】
表II:18個の既定のシナリオに対するnavrepベンチマークの定量的結果
【0104】
優れた結果が示され、マップの有無が、ポリシーオンラインを最適化することができる上記システムの強みが示す。
【0105】
これらのシーンのいくつかの例を
図9に示す。
図9において、実線はロボットの運動を示し、点線は動的障害物の運動を示す。動的障害物の挙動には変動があり、静止したままの障害物さえもいくつかある。これにより、LiDAR測定値のみからトレーニングされるDRLポリシーはこれらの障害物が移動することを予想しているので、このポリシーは困難を伴う。本明細書で説明する実施形態は、上述のこの問題に対処するために異なる手法を使用する。
【0106】
上記について、128GBのRAMを有するIntel-xeon-E5プロセッサとNvidia-Titan-x GPUとを使用して評価し、評価後、ホライズン長が4で6つの最適化ステップを有する256個のサンプルおよび32個のkエリートサンプルの場合、Navrepプランナではポリシー評価時間が0.02秒であるのに対し、
図5の配置構成の非並列シングルコア実装では0.2秒かかることがわかった。確率的最適化においてCEMを使用する利点は、サンプリングのプロセスを高度に並列にすることができることである。上記の並列実装は約0.08秒かかることが観測された。よって、上記は実際のロボットシステムで実装することができる。
【0107】
上記実施形態は、深層および分析的の両方である複数の制約を組み合わせることができる新規なプランニングフレームワークを提供し、モデルを再トレーニングすることなくオンザフライで確率的最適化を合同で使用して連続空間において制約を解消する。実施形態は、LiDAR測定値およびオドメトリを使用して動的障害物が存在するときの複雑環境を通してロボットをステアリングすることができる安全な屋内ナビゲーション手法を提供する。
【0108】
特定の実施形態を説明したが、これらの実施形態は例としてのみ提示したものであり、発明の範囲を限定することを意図していない。むしろ、本明細書で説明する新規のデバイスおよび方法は、その他の様々な形態で具現化されてよく、さらに、本発明の要旨から逸脱することなく、本明細書で説明するデバイス、方法、および製品の形態に様々な省略、置き換え、および変更を行うことができる。添付の特許請求の範囲およびそれらの均等物は、本発明の要旨および範囲内に含まれる形態または修正を網羅することを意図している。