なぜSim-to-Realは失敗するのか:5つのReality Gapとデバッグ手順

Sim-to-Realの移行は、実際のロボットが経験する観察や結果がシミュレーションで使われるものと十分に異なり、学習されたポリシーが誤った行動を選んだ場合に失敗します。この不一致は一つの謎の現実のギャップではありません。視覚、センサー、ダイナミクス、制御、タスクギャップに分解され、それぞれ異なる測定や対策が必要です。

シミュレーションではポリシーが完璧に把握されても、カメラがずれている、接触摩擦が誤っている、コントローラーの遅延、または対象が訓練分布の外に出ることでハードウェア上でミスすることもあります。原因を特定しずにランダム化を増やすと、トレーニングが難しくなり、支配的な失敗は無視される可能性があります。

実際のワークフローは、失敗を再現し、同期されたシミュレーションとハードウェアのトレースを比較し、最も早い発散を特定し、1つの不確実性モデルを変更し、同じ評価を繰り返すことです。成功した移植は、視覚的類似性や単一の実証ではなく、制御された実機との試験による証拠です。

解決策を選ぶ前に実環境との差を分類する

「現実のギャップ」という表現は、出発点のラベルとしてのみ有効です。デバッグ記録は、どの観測変数が最初に分岐したかを特定すべきです:画像特徴、センサー状態、接触、共同応答、タイミング、またはタスクコンテキスト。この変数は、キャリブレーション、モデル同定、ランダム化、コントロール、データセットの変更を指し示しています。

ファイブギャップカードは診断地図を提供します。複数のギャップが相互作用することはありますが、それらを個別に測定することで、視覚的な解決策が動力学問題に適用されることや、より広範なデータセットがコントローラレートの問題を隠すことを防ぎます。

シムから現実へのロボット工学における視覚的、センサー、動力学、制御およびタスクギャップ
視覚、センサー、ダイナミクス、制御、タスクギャップを独立して測定してから、対策を選びましょう。出典:Physical AI Lab。

視覚的なギャップは、ポリシーが見ているものを変えます

レンダリングされたライティング、テクスチャ、反射は実際のカメラとはほとんど一致しません。レンズの歪み、露出、動きのぼかし、圧縮、部分的な閉鎖などは、さらに特徴を変えることがあります。クリーンなオブジェクト境界で訓練されたポリシーは、透明で金属的または変形可能なオブジェクトが混合照明下で現れると失敗することがあります。

視覚的なギャップをペアまたは比較可能なシーンで測定します。全体のタスクを評価する前に、検出とセグメンテーションを確認してください。ドメインランダム化、フォトリアリスティックレンダリング、実画像のファインチューニング、外観変換などが役立ちますが、いずれも観察された故障モードに結びつけるべきです。

センサーギャップには、キャリブレーション、ノイズ、時間が含まれます

深度カメラ、フォースセンサー、エンコーダー、慣性センサーは、シミュレーションで欠如したり単純化されたりするバイアス、ドロップアウト、量子化を生じます。カメラからロボットへのキャリブレーションは、知覚モデルが正しくてもターゲットを数センチメートルずらすことがあります。タイムスタンプ誤差は実際には異なる時刻の測定値を組み合わせることがあります。

生のセンサーメッセージとキャリブレーションバージョンを記録してください。シミュレーションとハードウェア間のノイズ分布、欠損データパターン、フレームタイミングを比較します。任意の値を選ぶのではなく測定されたノイズと遅延を注入し、ファミリー外のテストを残してポリシーが一台のロボットだけに調整されないようにしましょう。

力学の隙間は接触時に現れます

質量、重心、摩擦、剛性、減衰、バックラッシュ、アクチュエータ飽和度が指令の動きを決定します。接触豊富な作業は、異なる表面の法線やコンプライアンスが力や未来の状態を変えるため、小さな誤差を増幅します。剛性シミュレーションは、柔らかい物体や不規則な物体の再現性を過大評価することがあります。

測定値が利用可能な場合はシステム識別を活用してください。ハードウェアトレースからアクチュエータ応答、ペイロード、摩擦、遅延を推定し、シミュレーターがそれらのトレースを再現できるかどうかをテストします。測定値の周囲に残留不確実性をランダム化し、キャリブレーションを非常に広い分布に置き換えるのではなく。

ギャップ観察可能な症状最初の測定
ビジュアル運動前の物体やポーズを間違えたマッチングシーンにおける知覚出力
センサー状態の跳躍、バイアス、または不整合な幾何学生信号、キャリブレーション、タイムスタンプ
動力学接触後に軌道が分岐する指令された動きと測定された動きと力の比較
制御オーバーシュート、発振、または遅延修正エンドツーエンドのレイテンシと制御レート
任務新しいレイアウトやオブジェクトでのみ故障しますトレーニングとテスト配布のカバレッジ

コントロールギャップは正しいポリシーの成果さえも変えてしまう

シミュレーションは通信のジッターなしに正確なレートでアクションを適用できます。実際のシステムには推論時間、ネットワーク遅延、コントローラキュー、安全フィルター、モーター制限があります。そのため、物理的な指令が遅れて到着したり、短縮されたりして、訓練中に方針が遭遇しなかった観察結果を生み出すことがあります。

平均的なモデル推論だけでなく、行動の感覚までの待ち時間とその分布全体を測定してください。シミュレーションで実際のタイミングを再生し、テストレート制限や飽和度を行い、安全制御が隠れた不連続点を生じさせないか確認します。下位レベルのトラッキングコントローラも、学習されたポリシーとは独立して検証されるべきです。

タスクギャップは運用環境から生じます

実際の作業では、物体の摩耗、予期せぬ配置、人、散らかったもの、ペイロードの変更、不完全なリセットなどが伴います。ポリシーは、1つの準備されたシーンで視覚的・動的ギャップを越えても、タスク分布が拡大すると失敗します。これはシミュレーターの忠実度の問題ではなく、カバレッジの問題です。

訓練前に動作範囲を定義します:対象物、ポーズ、照明、表面、ペイロード、人間の近接範囲、許容される妨害。封筒の内側と外側をよく評価してください。この境界線は、次の改善がデータの拡充、展開の制約、または復旧手続きの追加を目指すものです。

ドメインランダム化は測定された不確実性に従うべきです

ドメインランダム化は、ポリシーを変化する外観や物理法則にさらすことで、1つのシミュレートされた構成に依存しにくくなります。 NVIDIAの Isaac Sim ドキュメント は、合成データ生成のために視覚的プロパティをランダム化する方法を示しています。

ランダム化は診断の代わりにはなりません。範囲が狭すぎると、実際のシステムは分布から外れます。もし幅が広すぎると、ポリシーが保守的になったり、有用な構造を学べなかったりすることがあります。測定された変動から始め、もっともらしい尾部条件を含め、評価のために組み合わせを保持します。

外観転送は問題の一部しか解決しません

生成的な外観転送は、レンダリングされたシーンをより実際のカメラデータのように見せることができます。NVIDIA Cosmos-Transfer2.5のSim-to-Realの例は、シミュレーションフレームと生成されたリアルな出力を示しています。これは知覚訓練や視覚のバリエーションに役立ちます。

生成されたフレームはハードウェアテストではありません。接触、アクチュエータ応答、遅延、回復が現実と一致することを証明するものではありません。外観の強化と実際のロボット検証は別々の証拠層として保持し、リアルな画像が成功した転送と間違われないようにしましょう。

シミュレーション入力とCosmos Transferからのリアルなロボットキッチンシーン NVIDIA 生成されました
外観の転送は視覚的な差を縮めることができますが、ロボットの行動はハードウェア上で検証が必要です。出典: NVIDIA Cosmos-Transfer2.5。ライセンス: NVIDIAオープンモデルライセンス

実際のロボット評価では故障分布を明らかにしなければなりません

シミュレーションからリアルへの移行ガイドは、全体のワークフローをカバーしています。故障分析により、より厳格な報告要件が加わります。すべての試験を数え、テスト前に成功を定義し、介入とグループ失敗を最初の観察可能な原因で記録します。ハイライトリールは転送速度をサポートできません。

繰り返しの初期状態と別のバリエーションセットを使いましょう。試行数が許可する際に信頼区間を報告し、失敗痕跡を保存します。表は、転送主張を支持する証拠と、別のテストを誘発すべき信号を区別しています。

証拠品有用な報告弱い報告
試験対象すべての試みとあらかじめ定められた成功ルール選ばれた成功したクリップ
バリエーション名前のある物体、ポーズ、照明、そして妨害分割のない新規性の主張
介入いつ、なぜ、どれくらいの頻度で人々が引き継いだのか支援は省略
故障トレース最も初期の発散と同期対数リアリティギャップのような単一レーベル

繰り返し可能なデバッグワークフロー

ポリシーを凍結し、1つの失敗を安全に再現してください。シミュレーションとハードウェアログを観察、動作、時間に合わせます。期待範囲から最も早く離れた変数を見つけます。モデルやランダム化ファミリーを一つ変更し、同じテストセットを再実行して、ターゲット失敗が減少し、新たな支配的な失敗が生まれるかどうかを確認します。

このループ中は展開制限を保守的に保ちましょう。 フィジカルAI システムは、学習コンポーネントの改善を進める間、安全管理や人間のエスカレーションによる不確実性を抑えなければなりません。目的はシミュレーションが完璧であることを証明することではありません。それは、実際のシステムが定義された範囲内で機能していることの証拠を生み出すことです。

  • 同期ログで本当の故障を再現します。
  • 最も初期の視覚的、センサー、動態、制御、またはタスクの分岐を特定しましょう。
  • 一度に一つの不確実性モデルやキャリブレーションを変えてください。
  • 同じバリエーションセットを再度テストし、回帰分析がないか確認してください。
  • 証拠が改善されてからのみ運用範囲を拡大してください。

よくある質問

なぜロボットはシミュレーションでは動作するのに、現実では失敗するのでしょうか?

実際の観察結果や行動の結果は、カメラの外観、センサーノイズ、キャリブレーション、接触物理、遅延、作業の変動によって異なります。最初の発散信号を測定する必要があります。

より良いフォトリアリズムはシム・トゥ・リアルの解決を解決するのでしょうか?

単独ではそうではありません。フォトリアリズムは視覚的な差を縮めることができますが、センサーのタイミング、ダイナミクス、制御、接触、作業カバレッジは依然として測定やハードウェアテストを必要とします。

システム識別とドメインランダム化の違いは何ですか?

システム識別はハードウェアデータからモデルパラメータを推定します。ドメインランダム化は不確かな値の分布にわたって訓練を行います。二人は一緒にいるのが一番効果的です。

すべてのシミュレーターパラメータをランダム化すべきでしょうか?

いいえ。不確実で実質的に課題に影響を与えるパラメータをランダム化します。過度に広範囲または無関係なばらつきは学習効率を下げ、本当の原因を隠してしまうことがあります。

実際のロボットの実験で転送が証明されるのはどれだけある?

普遍的な数字は存在しません。すべての試み、あらかじめ定められた成功ルール、信頼度、変動、介入および失敗原因を意図された運用範囲について報告してください。

外見の転送は検証ではありません

生成されたリアルな画像やシミュレーションのベンチマーク結果は、安全かつ信頼性の高いハードウェア動作を確立するものではありません。定義されたプロトコルの下での実際のロボットテストは依然として必要です。