※本記事は、INRIA Paris所属のJustin Carpentier氏による講演「Accelerating Physical Simulation in Robotics」の内容を基に作成されています。動画の詳細情報は https://www.youtube.com/watch?v=zLty7UYnvm4 でご覧いただけます。本記事では、講演の内容を要約しております。なお、本記事の内容は原著作者の見解を正確に反映するよう努めていますが、要約や解釈による誤りがある可能性もありますので、正確な情報や文脈については、オリジナルの動画をご覧いただくことをお勧めいたします。
1. 導入:物理シミュレーションとワールドモデリング
1.1 物理シミュレーション研究の意義と合成データ生成
Justin Carpentier: こんにちは、私はパリのINRIAから参りましたJustin Carpentierと申します。本日は、私たちがロボティクス向けの物理シミュレーション、特に剛体力学のシミュレーションをどのように高速化してきたかについてお話しします。まず最初に問わなければならないのは、ワールドモデリングという文脈の中で、なぜ今なお物理シミュレーションに取り組む必要があるのかという点です。
Justin Carpentier: 現在、シミュレータを使う主な目的のひとつは合成データの生成です。これは本日のワークショップ全体のテーマでもあります。しかし、こうした方策を学習するには非常に多くの時間がかかります。一例として、NVIDIAの論文で示された方策学習の事例を挙げますと、これはシミュレータへの呼び出し回数がおよそ10の11乗回に相当し、実時間に換算すると50年以上のシミュレーションに相当します。これは計算資源を大量に消費する問題であり、同時に炭素排出という形でコストも発生します。つまり非常に大きな負荷であり、こうした場面の多くではシミュレーションをデジタルツインとして、あるいはsim-to-realのために用いているわけです。
1.2 ワールドモデルの2つの潮流と理想のシミュレータ像
Justin Carpentier: ワールドモデルを考える際には、少なくとも二つの軸で捉えるべきだと考えています。一方には物理ベースのシミュレーションがあり、これは主に科学的知見を用いてシミュレータを構築するものです。そのため複雑さの面では根本的な限界があり、モデルは静的なままです。もう一方には、現在のトレンドであるデータ駆動型モデルがありますが、こちらはハルシネーションのような問題を抱えており、それが物理的な不整合につながる可能性があります。
Justin Carpentier: さらにシミュレータについて考える際には、モデル予測制御(MPC)のように非常に高速であることを求める場合と、大規模なバッチ計算を行いたい場合とで、求められる性質が異なる点も重要です。つまり私たちには二つの潮流があります。ひとつは非常に高速であることを重視するCPUベースのシミュレータ、もうひとつは大量のサンプルを並列に生成するためのGPUベースのシミュレータです。そして私たちコミュニティが理想として目指すべきなのは、高速性と大量のデータ生成能力の両方を兼ね備えた、収束点としての理想的なシミュレータを構築することです。本日は、この分野が非常にホットなトピックであることを踏まえつつ、物理シミュレーションをどのように高速化できるか、そして「高速化」が何を意味するのかについてお話ししていきます。
2. シミュレーション高速化への3つのアプローチとチームの全体ビジョン
2.1 高速化の3軸:アルゴリズム・アーキテクチャ・並列性
Justin Carpentier: それでは、シミュレーションの高速化についてお話しします。高速化と一口に言っても、私はこれを大きく三つの観点に分けて捉えるべきだと考えています。すなわちアルゴリズム、アーキテクチャ、そして並列性です。
Justin Carpentier: まずアルゴリズムについてですが、これはRoy Featherstoneらによる素晴らしい成果があり、剛体の力学を非常に効率的に計算するためのアルゴリズムが蓄積されています。疎行列ソルバー、一次および二次の最適化手法、近接補完法(proximal complementarity techniques)、そして微分を計算したい場合には解析的な微分手法を組み合わせることができます。
Justin Carpentier: 次にアーキテクチャの観点では、GPU、CPU、TPUといった計算基盤の選択に加えて、メモリレイアウトの設計、ベクトル化の活用、そして微分を計算したい場合には微分可能なパイプラインの構築についても考える必要があります。そして三つ目の並列性については、大規模に並列化可能なシミュレータを構築したいのであれば、サーバーレベルと、ロボットの関節(ボディジョイント)レベルという二つの階層で並列化を検討する必要があります。
2.2 シミュレーションの3段階構造とチームのビジョン
Justin Carpentier: 私が率いるパリのチームのビジョンは、シミュレーションという問題を現代の最適化理論のレンズを通して見直すことで、スケーラビリティ、効率性、頑健性、そして微分可能性を実現することにあります。実際、私たちはシミュレーションの問題を分解し直すことができました。これが本日の発表全体を通じての鍵となる答えです。
Justin Carpentier: この会場にいらっしゃる皆さんの多くは、シミュレーションの力学が三つの主要な段階から構成されていることをご存知だと思います。まず一段階目は、シーンを構成する異なる形状同士の接触点を収集する衝突検出です。二段階目の衝突解決は、物理法則によって支配される力と運動を求めることを意味します。そして三段階目が時間積分であり、これは私たちが微分方程式を離散化していることに対応します。次のセクションからは、この三段階それぞれについて、私たちがどのように高速化を実現してきたかを詳しく見ていきます。
3. 衝突検出の高速化:GJKアルゴリズムの最適化的再解釈
3.1 GJKアルゴリズムの原理
Justin Carpentier: 衝突検出についてお話しします。シーンの中にオブジェクトがある場合、異なる形状の間の接触状態を推定しようとすると、原理的にはオブジェクトの数に対してN二乗のクエリが必要になります。したがって、衝突検出の負荷を軽減できれば、オブジェクト数に対して二次的にしかスケールしないという問題を改善できることになります。剛体系における衝突計算の最も効果的な方法は、1980年代に考案されたGJKアルゴリズムだと私は考えています。
Justin Carpentier: GJKアルゴリズムの考え方は、二つの形状の間の最近接点、私たちが「witness point」と呼ぶ点を見つけることです。通常はオブジェクトが凸であることを仮定しますが、もし凸でない場合には常に凸分解を行うことができます。そしてGJKの美しいアイデアは、二つの形状のミンコフスキー差分を扱うという点にあります。ミンコフスキー差分そのものは扱いにくい形状になりますが、この空間の中で私たちが解こうとしているのは、いわゆる最小ノルム点問題です。このアルゴリズムの名前は、考案者であるGilbert、Johnson、Keerthiの三名の頭文字に由来しています。
3.2 GJKとフランク・ウルフ法の関係、GJK++の高速化
Justin Carpentier: 私たちが示すことができたのは、GJKは計算幾何学の枠組みで考案されたアルゴリズムであるにもかかわらず、実は機械学習の分野でよく知られたフランク・ウルフ法(Frank-Wolfe method)という最適化問題そのものであるという点です。フランク・ウルフ法は1950年代に考案された美しい枠組みで、その考え方は、ある距離関数を最小化したい場合に、初期の推定点から出発して、最小化したい関数の勾配に対応するサポート点sを計算し、現在の推定点とそのサポート点の間で補間を行い、これを繰り返すことで最適解へと収束していくというものです。つまりGJKとは、まさにフランク・ウルフ法にほかならないのです。
Justin Carpentier: 私たちが行ったのは、現代の最適化理論に由来する加速手法、例えばPolyak加速やNesterov加速といった技術を、このアルゴリズムに応用することです。勾配降下法、フランク・ウルフ法、そしてGJKはいずれも一次手法ですが、こうした加速技術を用いることで振動を抑制し、より速く最適解に到達することができます。実際に私たちが観察した結果では、収束に必要な反復回数を半分に削減できることが確認されました。
Justin Carpentier: これが加速版のアルゴリズムであるGJK++です。実装としては、既存のGJKの実装にわずか二つのステップを追加するだけで済みます。これはすべて私たちが開発しているCoalというライブラリの中に実装されています。CoalはDattaらによる先駆的な研究成果を拡張したライブラリであり、より多くのアルゴリズムを備え、より頑健で効率的になっています。私たちはこのフレームワークの中にGJK++を実装しました。ですので、もし利用したい場合にはすでに公開されており、使うことができます。とても嬉しいのは、GJK自体がフランク・ウルフ法の一種であるという性質を利用しているため、Polyakの最適化スキームによる加速を適用できるという点です。実際、すでにGJKを実装済みであれば、コードをわずか二行変更するだけで済むのです。これは最適化という分野の美しさを示す好例であり、ほんのわずかな変更で非常に大きな高速化を得られるということを意味しています。
4. 衝突解決:接触力学の定式化と近接アルゴリズムによる高速化
4.1 接触力学を支配する3原理とNCP定式化
Justin Carpentier: 次は衝突解決についてお話しします。これもシミュレーションにおいてとても興味深い問題です。接触のシミュレーションを支配する原理は三つあります。一つ目はシニョリーニ条件です。これは法線方向の力と法線方向の速度がどちらも非負でなければならず、かつ両者は相補的でなければならないというものです。つまり、両方が同時に厳密に正の値を取ることはできないということです。
Justin Carpentier: 二つ目はクーロン摩擦の制約です。接線方向の力は、摩擦係数に応じて法線方向の力によって上から抑えられます。三つ目はJean-Jérôme Moreauによる最大散逸原理です。これは、摩擦が飽和し始めると地面の上を滑り始め、エネルギーを散逸させ始めるという原理です。実際、これらをまとめると、接触のシミュレーションとは、私たちが非線形相補性問題(NCP: Nonlinear Complementarity Problem)と呼ぶものにほかならないことが示されます。ここで「非線形」と呼ぶのは、単なる二次錐計画問題ではなく非線形項を含むためであり、λとσの間には厳密な関係性が存在します。ここに現れるγμという項は、私たちがダクセ項(Dacsett term)と呼ぶものです。これを取り除いてしまうと、一般には解きやすい相補性制約が得られますが、その代わり接線方向の運動エネルギーを散逸させることができなくなってしまいます。この分野の全体像を把握したい方には、私が以前の博士課程の学生と共同で執筆した論文をお勧めします。この論文では、ロボティクスにおける接触の定式化とモデリングに関する主要な手法を分析し、見直しています。
Justin Carpentier: この論文から得られた重要な知見は、ロボティクスで用いられている現代のシミュレータの多くが、剛体接触に関して物理的な整合性と精度を犠牲にする形で物理を簡略化・緩和する傾向にあるという点です。これは非常に重要な指摘です。なぜなら、こうした簡略化は学習アルゴリズムが失敗モードとして悪用しうる特徴になり得るからです。
4.2 近接アルゴリズムとスペクトル分解による高速化
Justin Carpentier: それでは、こうした非線形相補性問題をどのように解いているのかを簡単にご紹介します。破壊・固着・滑りという三つの状態はこの非線形相補性問題として扱うことができ、実際にはこれを最適化問題として再定式化することも可能です。σがダクセ項とコンプライアンス項×λと、接触点のドリフト速度を表すgの和に等しいという制約のもとで、二次項を最小化する反復的な形で定式化できます。私たちが提供できたのは、この問題を非常に高速に解くことができる新しい近接(proximal)アルゴリズムです。
Justin Carpentier: 私たちが実現できた鍵となる進歩は、スペクトル分解という考え方を通じて、高速に収束し、かつ悪条件(ill-conditioning)な問題にも対応できるという点です。ここでの考え方は、ダクセ行列の条件数を利用して、悪条件への対応を図るというものです。まず私たちは近接正則化(proximal regularization)という近接最適化に由来する手法を用いており、これによって純粋な剛体シナリオでもコンプライアンスのあるシナリオでも、望むように扱うことが可能になります。また、私たちはスペクトルルールというものも提供しており、これについてはこの後説明します。このスペクトルルールを使うことで、実際に立方体の積み重ねをシミュレートできるようになります。
Justin Carpentier: 想像していただきたいのですが、ギガトン級の質量とマイクログラム級の質量が混在するような状況でも、私たちはこれをシミュレートすることができます。しかも、モーションの破綻(artifact motion)がまったく生じません。一方で、古典的な最適化手法をそのまま使うと、問題を適切に解くことができないために、こうしたモーションの破綻が生じ始めます。スペクトル最適化の考え方は、問題の条件数に応じてステップの取り方を適応させるというものであり、これが私たちの提供するスペクトルルールです。このルールはM/Lという条件数に応じて更新式を調整するもので、これを用いることでシナリオに応じた更新設定が可能になります。実際、このグラフで示されているように、古典的なADMM(交互方向乗数法)と比較して、私たちの手法ははるかに速く、かつはるかに積極的に最適解へと収束することが確認できます。
Justin Carpentier: 興味深いことに、この成果は最近Disney Researchによっても再現されており、彼らが開発している新しいシミュレータ「Chameleon」にこのNCPの定式化が組み込まれています。NCPが私たちの提案する定式化であり、彼らもこの手法が非常に複雑なシナリオを扱う上で効率的であることを認めています。例えば、ここに示されているアイアンマンのような、57のリンクと67の関節を持つ、現在私たちが扱っているロボットよりもはるかに複雑なロボットの事例です。これはJensenによる基調講演でChameleonが紹介された際のものですが、そこでは私たちのアイデアの一部が活用されています。
5. スケーラビリティの改善と接触パッチへの拡張
5.1 行列反転の線形化によるスケーラビリティ改善
Justin Carpentier: 私たちが進めているもう一つの進歩についてお話しします。最適化問題を解く際には、しばしばこのような形の問題を解くことになります。すなわち、コンプライアンス項×力に対応する双対項があり、これが反復に応じて変化していく右辺の項と等しくなるという形です。そしてダクセ行列を反転させようとすると、これはしばしば接触点の数に対して三乗のオーダーになってしまいます。私たちが示すことができたのは、これを線形オーダーの解法へと持っていけるということです。三乗から線形へというのは非常に大きな進歩であり、これによってシミュレーションを望むだけスケールさせることが可能になります。
Justin Carpentier: どのように実現しているかというと、実際には運動学的な木構造(kinematic tree)とコンタクトの特有の構造を適切に利用することによってです。この考え方は、解こうとしている問題を見ると、これは質量行列の逆行列と接触点のヤコビアンの積に、コンプライアンスあるいは近接正則化に対応するrを加えた項であることが分かります。ここで示すことができるのは、この逆行列がShermanMorrisonWoodburyの公式を用いて、等価な逆行列として表せるということです。ただしこれはこの行列が可逆である場合にのみ成立するため、rは非ゼロである必要があります。この式を見ると、そこに現れる美しい項は、接触レベルで生じる慣性によって増強された質量行列であることが分かります。
Justin Carpentier: そこで次に直面する問題は、この増強された質量行列をどのように反転させるかということです。私たちが生み出すことができたのは、この新しいタイプのアルゴリズムです。これはRoy Featherstoneに由来するアルゴリズムを一般化して拡張したものです。Featherstoneの著書がカバーしているのは主に運動学的な木構造ですが、私たちが付け加えたのは、最小限の複雑さのアルゴリズムを用いて、木構造ではなくグラフに対して直接扱えるようにしたという点です。具体的には、ABA(Articulated Body Algorithm)が解いている問題に対して、二つのリンクを結合する項を私たちが新たに追加しました。この仕組みの詳細についてはここでは踏み込みませんが、考え方としては、この問題がグラフの問題になり、非常に最小限の複雑さで効率的に解くことができるということです。これにより、接触点の数に対して三乗の複雑さから線形の複雑さへと移行することができ、これは非常に大きな一歩です。この研究の詳細に興味のある方は、今週のカンファレンスでAJが発表しますので、そちらをご覧いただければと思います。
5.2 接触パッチへの一般化
Justin Carpentier: もう一つ、解決すべき根本的な課題として、接触点の扱い方があります。しばしば私たちは、形状同士の間に一つの接触点だけを計算しますが、Mujocoのような現代のシミュレータを見ると、複数の接触点をカバーしようとしています。そこで私たちは接触パッチ(contact patch)という考え方に向かうことができます。接触パッチは、接触点ではなく接触面を扱いたい場合に非常に有用です。私たちが示すことができたのは、相補性の概念を平面接触(planar contact)へと拡張できるということです。
Justin Carpentier: 通常、古典的な点接触の定式化では、接触点レベルでの法線方向の力と法線方向の速度の間の相補性問題を扱います。しかし実際には、これを分布として扱うことができます。ここで示されているp(接触パッチ上での法線力の分布)と、接触面上の任意の点における接触点の速度を表すσを用いて扱うことができるのです。これは非常に一般的な設定であり、私たちが示すことができたのは、モーメントと法線方向の力、そして物体の速度と法線方向の速度を結びつける新しい相補性条件を明らかにできるという点です。これは、いわゆるゼロモーメントポイント(ZMP)条件の概念を拡張したものです。ヒューマノイドロボットの制御が形式的にどのように行われてきたかを見ると、ロボットの動作を安定化させるために、接触面のゼロモーメントポイント条件を主に用いてきました。今回私たちが示したのは、この概念を面(サーフェス)へと拡張したものであり、これは現代のシミュレーションにおいて非常に有用に活用できます。この定式化は、特定の射影処理を加えることで、古典的なNCPソルバーにそのまま組み込むことができます。この内容についてさらに詳しく知りたい方は、今週の木曜日にYanとLouieが発表しますので、そちらをご覧いただければと思います。
6. 微分可能シミュレーション
6.1 微分可能性の意義と非平滑性への対処
Justin Carpentier: ここからは微分可能シミュレーションについて少しお話しします。微分可能シミュレーションは、最適制御から強化学習に至るまで、さまざまなアルゴリズムを加速させたい場合に非常に有用なツールとなり得ます。ここでの考え方は、シミュレーションのパイプライン全体を通じて勾配を計算したいというものです。つまり、問題を構成するすべてのパラメータに応じた、接触力および接触速度の変化を計算したいということです。これによって得られる進歩は、非凸かつ非平滑な最適化を通じて、接触の生成や破壊についての自動的な学習が可能になるという点です。
Justin Carpentier: 接触の力学における問題は非平滑であるという点です。これがどういうことかというと、たとえばロケットを打ち上げたいとします。制御入力を何も与えなければロケットは動きません。小さな制御入力を与えても、まだ動きません。動かないままですが、その間も反力は変化しています。しかし重力を補償する必要があり、動き始めるためにはそれを補う必要があります。つまりある点まではゼロであり、そこを超えると急に上向きに動き始めます。これはまさに非平滑な挙動であり、こうした問題に対しては古典的な平滑最適化の手法は失敗しやすいのです。そこで私たちが用いているのがランダム化平滑化(randomized smoothing)と呼ばれる手法です。これは非平滑な関数から平滑な勾配を計算するための方法です。例えば、凸集合上の非平滑な関数を考えたとき、ランダム化の考え方は、入力データにガウス分布のようなランダムノイズを加えることで、解が凸集合のさまざまな端点にマッピングされるようにし、その解を平均化することで、平均化された位置づけが得られ、そこから平滑な勾配の定式化を得ることができるというものです。
6.2 衝突検出とNCP問題の微分
Justin Carpentier: これはまさに、衝突検出の問題を微分する際に私たちが用いている手法です。ここで微分したいのは先ほど説明した問題であり、二つの形状の相対的な位置関係に応じて、接触点と法線の変化を捉えたいということです。ここでは非常になめらかな形状から非なめらかな形状まで、多くのケースを考慮する必要があります。witness pointが一意に定まる場合もあれば、点同士が飛び移るように変化する場合や、曲率が一様でない場合もあります。そのためには、最適性条件に基づいてこの変化を適切に計算するために、陰関数定理をきちんと用いる必要があります。
Justin Carpentier: 詳細には立ち入りませんが、私たちは二つの異なる推定量を提案しています。一つ目の推定量は、単純にGJKをN回実行して解を平均化するというもので、なめらかな近似値は得られるものの、勾配情報としてはゼロ次的なものであり、非常にノイズが多くなります。もう一つは、メッシュを持っている場合にはその局所的な曲率を、解の近傍に応じて活用する方法です。この場合、Gumbel分布を用いて平均化された定式化を得ることができ、これは非常になめらかで効率的に計算でき、ソフトマックス近似に相当します。実際、非常に大きな解像度のメッシュであっても、数マイクロ秒という短い時間で勾配情報を得ることができます。これは、私たちの問題を摩擦パラメータや質量パラメータといったθというパラメータでパラメータ化しているという考え方に基づいています。
Justin Carpentier: 同様に、先ほど説明した非線形相補性問題(NCP)についても微分することができます。ここではλとσが解となるので、θに対するこれら二つの量の変化を求めたいということになります。実際には、陰関数定理を再び用いることで、これを最小二乗問題として解くことができ、勾配の定式化を計算することができます。ただし、破壊・固着・滑りという三つのモードをきちんと区別する必要があります。最も扱いが厄介なのは滑りのモードで、σとλの間に結合(カップリング)が生じるためです。しかし、この結合を適切に考慮すれば、これらの微分を計算することができ、しかもある意味では非常に安価に計算できます。
Justin Carpentier: つまりどういうことかというと、Atlasロボットを例にとると、シミュレーションそのものは100マイクロ秒かかりますが、勾配を計算するのに要する時間はわずか95マイクロ秒です。有限差分法を用いた場合と比較するとはるかに高速です。つまり、順方向シミュレーションの価格の、せいぜい二倍程度のコストで、ほぼ無償に近い形で勾配を得ることができるということです。これは非常に効率的であり、非常に複雑なシナリオにもスケールさせることができ、既存手法と比較して最大100倍高速です。
7. オープンソースツール群と質疑応答
7.1 開発哲学とツール群の紹介
Justin Carpentier: 最後に、私たちのチームが構築しているツール群を紹介しながら、講演を締めくくりたいと思います。私たちにとってオープンソースというのは、研究成果を広く普及させ、実世界での応用へとつなげていくための触媒だと考えています。私たちが従おうとしている哲学は「more with less」というものです。つまり、より少ないコード、より少ない計算量、より少ないデータ、そしてより少ないバグで、非常に高度なソフトウェアを構築したいという考え方です。
Justin Carpentier: 私が博士課程の間に取り組み始めた最初のフレームワークの一つがPinocchioであり、これは現在コミュニティで広く使われています。私たちはロボットの知覚に関する研究にも取り組んでおり、HappyPoseがその一例です。また、本日ご紹介した技術を用いて、近接アルゴリズムを用いてQP問題を解き、それを微分することもできるProxQPというオープンソースのソルバーも開発しています。これは最適化や、本日紹介したシミュレーション技術全般にも活用できます。
Justin Carpentier: Pinocchioに加えて、衝突検出のためのライブラリであるCoalも開発しており、これは非常にモジュール性が高く、あらゆるアプリケーションに組み込むことができます。そして、私たちが現在新たに構築しているシミュレータであるSimpleもあります。これは多くの優れた機能を備えており、さまざまなシミュレーションに対応できるものです。これが私たちのパリのチームです。ご清聴ありがとうございました。それでは質問をお受けしたいと思います。
7.2 質疑応答
質問者A: 最近、人間らしさというテーマについてもお話がありましたが、ニューロンについて言及されていましたね。データ駆動という観点から、シミュレータについてどうお考えですか。
Justin Carpentier: 良い答えを持ち合わせているわけではないのですが、純粋な機械学習によるデータ駆動型のソリューションを用いると、ハルシネーションが生じる可能性があります。分布内であれば問題ありませんが、分布外(out of distribution)になってしまうと、そこで危険な状況が生じ始めます。ですので、科学的知見に由来する物理ベースのシミュレータを引き続き持っておき、こうした新しいタイプのシミュレータを評価し、検証できるようにしておくことは、常に望ましいと考えています。もちろん、もしスケールさせることができるのであれば、それは非常に良いことです。本日の発表で示したのは、疎性(sparsity)を適切に利用するだけで、物理ベースのシミュレーションであってもスケールさせることができるということです。そしてこれは、これまであまり行われてこなかったことだと思います。そのためには、こうした新しいアルゴリズムの種類をきちんと生み出す必要があります。
質問者B: 時間がなくなってきましたが、一つ伺いたいのは、純粋なシミュレーションを超えた部分についてです。
Justin Carpentier: どういう意味でしょうか。
質問者B: つまり、あまり語られていないけれども非常に興味深い点として、シミュレーションにおけるアーティファクトの問題があると思うのですが。
Justin Carpentier: そうですね、少しここで立ち止まってお話しします。今日の多くのシミュレータは、ダクセ補正(Dacsett correction)と呼ばれる項を考慮していません。これは相補性問題を非線形問題へと変換するものであり、この項があることでトンネル面上でエネルギーを散逸させることが可能になります。一方、この項を考慮しない他のソルバーの定式化では、相補性の定式化を持ちながらも、立方体が浮遊してしまうことを許容してしまいます。つまり、物理レベルでの不整合が生じているのです。これは、人々が問題を単純化しすぎて、非弾性かつ凸な形にしてしまう傾向があるために起きています。私たちのチームで観察できているのは、こうした基礎的な部分をきちんと押さえて取り組むことで、例えば制御方策を学習するために収集すべきデータの量を削減できるということです。つまり、より良いシミュレータを用いることで、物理をより適切にモデル化できるようになり、その結果として実世界へのより良い転移(sim-to-real transfer)が可能になると言えます。
質問者C: モデルを使う理由の一つは、データ化が非常に速く簡単だからだと理解しています。そうした不整合を無視する、あるいはそれに適応するという立場に立って、今回示された内容から見て、次に何が来るとお考えでしょうか。
Justin Carpentier: ご指摘の通りだと私も強く同意します。現在では大量のデータのバッチを生成して、それを純粋な機械学習の問題として扱うことが非常に簡単になっています。ですので、こうしたデータへの依存度を少しでも下げたいのであれば、少なくとも問題の構造を適切に活用する必要があります。モデルベースのアプローチはまさにそれを実現すべきものだと思います。これは、私たちがスケールを目指すのであれば取るべき重要な方向性の一つだと考えています。現状を見てみると、人間の動作模倣を行う際には、ロボット上で機能するものを学習するために数十億ものサンプルが必要とされており、これは正直なところかなり常軌を逸していると思います。より良いシミュレーションを用いる、あるいは私たちが組み込んでいるモデルをより適切に活用することで、この総データ量を大幅に減らすことができると考えています。
質問者C: それは、より良い移動動作(locomotion motion)を実現することそのものにも関わってくるのでしょうか。
Justin Carpentier: そうですね、それに加えて言えるのは、収集しているサンプルの多くが、実は問題にとって有用な情報を含んでいないということです。ですので、有用でない情報を生成しないようにすること自体が重要だと考えています。ご清聴ありがとうございました。
質問者D: ご発表ありがとうございました。