# An Introduction to Newton Physics Engine for Robotics
## NVIDIA GTC 2026 產業技術研究報告
---
**Session ID**:S81613
**時間**:2026/03/19(週四)11:00 AM – 12:30 PM PDT
**Panel 參與者**:NVIDIA(Director, Simulation Technology)、Disney Research Imagineering(Director, Research Lab Zurich)、Google DeepMind(Simulation Lead)、Skild AI(CEO & Co-Founder)
**NVIDIA Technology**:Isaac・Omniverse
**授權**:Apache-2.0(Linux Foundation 管理)
---
## 一、場次定位與核心命題
機器人在模擬中學得更快、更安全,但複雜關節、平衡、以及接觸密集(contact-rich)的運動對現有物理引擎仍是挑戰。為了讓虛擬訓練能可靠地轉移到真實機器人(sim-to-real),開發者需要更高保真且可擴展的模擬。
本場次由 NVIDIA、Google DeepMind、Skild AI、Disney Research 共同介紹 Newton:一個開源、GPU 加速、建構在 NVIDIA Warp 與 OpenUSD 上、並支援多 solver 的新物理引擎,用於推進機器人學習與部署。
---
## 二、背景:現有物理引擎在機器人 RL 的瓶頸
### 2.1 三大工程痛點
| 痛點 | 具體問題 | 後果 |
|------|----------|------|
| 接觸與摩擦穩定性 | 多接觸點 + 複雜摩擦模型容易數值不穩 | 策略學到「模擬漏洞」,sim-to-real 失敗 |
| 大規模平行模擬效率 | RL/模仿學習常要同時跑上千 envs | CPU 物理引擎被吞吐與成本限制 |
| 多物理耦合需求 | 走雪地/沙地、抓取柔軟物、液體/果物互動 | 需可插拔 solver 與耦合機制,單一引擎難涵蓋 |
### 2.2 Newton 的定位
Newton 被官方定位為:
- 開源、可擴充的物理引擎
- 建構於 NVIDIA Warp 與 OpenUSD
- 由 NVIDIA、Google DeepMind、Disney Research 共同開發
- 由 Linux Foundation 以中立治理方式管理
- 目標是推進機器人學習與開發(robot learning and development)
---
## 三、Newton 的技術架構:三層堆疊
### 3.1 基底層:NVIDIA Warp(GPU Kernel + 可微分)
Warp 是一個開源 Python framework,可把 Python 函式 JIT 編譯成能在 CPU/GPU 上執行的高效 kernel,特別適合模擬、幾何、空間運算。Newton 以 Warp 為核心,讓開發者能以較高階的方式撰寫/擴充物理運算,同時取得 GPU 平行化效益。
| 特性 | 說明 |
|------|------|
| JIT 編譯 | Python 函式直接編譯為 GPU kernel |
| 可微分 | 支援自動微分,可用於梯度式最佳化 |
| 高階 API | 不需寫低階 CUDA,以 Python 開發物理運算 |
### 3.2 物理引擎層:多 Solver 架構
Newton 的核心設計是多 solver 架構,支援可插拔的不同物理 solver:
| Solver | 角色 | 說明 |
|--------|------|------|
| MuJoCo Warp | 主要 backend | DeepMind 釋出的 Warp 加速版 MuJoCo,與 MuJoCo 生態相容 |
| 剛體動力學 | 核心 solver | 關節、碰撞、約束 |
| 顆粒/MPM 類 | 環境 solver | 沙、雪等顆粒介質與剛體互動耦合 |
| 自訂 solver | 使用者擴充 | 開發者可針對特定需求開發並插入 |
Newton 延伸了 Warp 已棄用的 `warp.sim` 模組,並把 MuJoCo Warp 作為主要 backend,強調 GPU 計算、OpenUSD 支援、可微分、與使用者自訂擴充。
### 3.3 場景與資產層:OpenUSD
Newton 採用 OpenUSD 作為描述機器人與環境的開放標準:
- 利用 USD 資料模型與 composition 能力
- 把機器人、場景、材質/地形等資訊聚合
- 允許不同 solver/runtimes 針對特定能力與環境做專門化
- 與 Omniverse 生態可互通
### 架構總覽
```
┌─────────────────────────────────────┐
│ 場景與資產層(OpenUSD) │
│ 機器人描述、環境、材質、地形 │
├─────────────────────────────────────┤
│ 物理引擎層(多 Solver 架構) │
│ MuJoCo Warp ┃ 剛體 ┃ MPM ┃ 自訂 │
├─────────────────────────────────────┤
│ 基底層(NVIDIA Warp) │
│ GPU JIT 編譯、可微分、高階 API │
└─────────────────────────────────────┘
```
---
## 四、Newton 的四個關鍵特性
| 特性 | 說明 | 工程價值 |
|------|------|----------|
| GPU Accelerated | 透過 Warp 在 GPU 上跑高效模擬 | 模擬從「天」縮到「分鐘」,不用寫低階 CUDA |
| Extensible | 可插拔自訂 solver,支援多物理互動 | 不被單一引擎能力上限卡住 |
| Differentiable | 可微分物理支援訓練、設計最佳化、system ID | 梯度式參數/策略最佳化成為可能 |
| Open Source + 中立治理 | Apache-2.0,Linux Foundation 管理 | 長期可用、vendor neutral、社群共建 |
---
## 五、與機器人學習管線的整合
Newton 與機器人學習框架(MuJoCo Playground、NVIDIA Isaac Lab)相容,意味著:
| 整合面向 | 說明 |
|----------|------|
| RL 訓練 | 可在既有 RL pipeline 內替換或加入 Newton 物理 backend |
| 大規模平行 | 高保真接觸 + 大規模平行 envs 在同一套訓練流程 |
| 可微分訓練 | 梯度式策略最佳化、system identification、軌跡最佳化 |
| Contact-rich tasks | 抓取、插拔、地形行走等任務更有機會降低 sim-to-real 落差 |
| 資產管線 | OpenUSD 與 Isaac Sim / Omniverse 生態整合 |
### 典型機器人學習管線中 Newton 的位置
| 步驟 | 內容 | 技術 |
|------|------|------|
| ① | 機器人與環境描述 | OpenUSD |
| ② | 物理模擬(接觸、關節、地形) | Newton(多 solver) |
| ③ | GPU 平行化數千 envs | Warp + CUDA |
| ④ | RL / 模仿學習訓練 | Isaac Lab / MuJoCo Playground |
| ⑤ | 可微分最佳化(選用) | Warp 自動微分 |
| ⑥ | Sim-to-Real 驗證與部署 | 實機測試 + 迭代 |
---
## 六、擴充與自訂 Solver:研究與工程價值
Newton 的多 solver 架構讓開發者可以:
- **耦合不同 solver**:例如將 MPM 類 solver 與剛體動力學耦合,支援沙/雪等顆粒介質與剛體互動
- **開發特定環境 solver**:針對布料、軟體、流體等特殊需求
- **「核心 solver + 環境 solver」模式**:用核心剛體/關節 solver 搭配特定環境 solver,建立更接近真實的訓練環境
### 場次提到的具體範例
| 範例情境 | 涉及物理 | solver 需求 |
|----------|----------|-------------|
| 走過雪地 | 剛體 + 顆粒介質耦合 | MuJoCo Warp + MPM 類 |
| 操作杯子與水果 | 接觸密集 + 摩擦 + 形變 | 高保真接觸 solver |
| 人形機器人平衡 | 多關節 + 地面反力 | 剛體動力學 + 接觸穩定性 |
| In-hand manipulation | 精細接觸 + 滑動/滾動摩擦 | 高解析接觸模型 |
---
## 七、開源與治理狀態
| 項目 | 狀態 |
|------|------|
| 程式碼授權 | Apache-2.0 |
| 治理組織 | Linux Foundation(vendor neutral) |
| 共同開發者 | NVIDIA、Google DeepMind、Disney Research |
| 安裝方式 | `pip install "newton[examples]"` |
| GitHub 範例 | pendulum、URDF、joints、heightfield 等 |
| 社群參與 | 產學界參與者已加入,主打長期可用性與社群共建 |
---
## 八、落地評估框架:六點 PoC 指標
如果你要評估 Newton 是否適合你的專案(humanoid、抓取、外骨骼、醫療機器人等),建議用以下指標:
| # | 評估項目 | 量測方式 |
|---|----------|----------|
| 1 | 接觸穩定性 | 同一任務在不同 seed/步長下,接觸抖動與發散率 |
| 2 | 吞吐與成本 | 每秒 env-steps、每張 GPU 可承載 env 數 |
| 3 | 可微分需求 | 是否真的需要梯度(system ID、軌跡最佳化、differentiable RL) |
| 4 | OpenUSD 資產流程 | 是否要與 Isaac Sim / Omniverse 生態整合 |
| 5 | 可擴充性 | 是否需要顆粒、軟體、布料等多物理 solver 耦合 |
| 6 | Sim-to-Real 驗證 | 實機測試定義 acceptance criteria(成功率、能耗、接觸力誤差) |
---
## 九、與其他物理引擎的定位比較
| 比較項目 | Newton | MuJoCo(原版) | Isaac Sim / PhysX | Brax / JAX |
|----------|--------|---------------|-------------------|------------|
| GPU 原生 | 是(Warp) | 否(CPU 為主) | 是(PhysX/Omniverse) | 是(JAX) |
| 可微分 | 是 | 有限 | 有限 | 是 |
| 多 solver 耦合 | 是(核心設計) | 否 | 有限 | 否 |
| OpenUSD 支援 | 是(原生) | 否 | 是(Omniverse) | 否 |
| 開源授權 | Apache-2.0 | Apache-2.0 | 部分開源 | Apache-2.0 |
| MuJoCo 相容 | 是(MuJoCo Warp) | 是(本體) | 有限 | 否 |
| 中立治理 | Linux Foundation | DeepMind | NVIDIA | Google |
---
## 十、決策者應帶走的關鍵結論
| 結論 | 說明 |
|------|------|
| Newton 解決的是 sim-to-real 的物理保真度問題 | 不是又一個物理引擎,而是針對 contact-rich robot learning 的缺口 |
| 多 solver 架構是核心差異化 | 可插拔不同 solver 耦合,不被單一引擎能力上限卡住 |
| GPU 加速 + 可微分是雙重價值 | 大規模平行模擬(吞吐)+ 梯度式最佳化(訓練效率) |
| OpenUSD 讓資產管線標準化 | 與 Isaac Sim / Omniverse 生態可互通,降低重複建模成本 |
| Apache-2.0 + Linux Foundation 確保長期可用 | 中立治理降低供應商鎖定風險 |
| 先選一個 contact-rich 任務做 PoC | 驗證接觸穩定性與 sim-to-real gap 後再擴展 |
---
## 十一、延伸學習資源
| 主題 | 建議資源 |
|------|----------|
| Newton 官方頁 | NVIDIA Developer:Newton Physics Engine(特性、架構、整合) |
| Newton 技術部落格 | NVIDIA Technical Blog:Announcing Newton(MuJoCo Warp、多 solver、可微分) |
| Newton GitHub | GitHub repo(Apache-2.0、Quickstart、範例) |
| Linux Foundation 公告 | Newton 專案治理與願景 |
| NVIDIA Warp | Warp 官方文件(GPU JIT、可微分、空間運算) |
| MuJoCo Warp | DeepMind:MuJoCo Warp 加速版 |
| Isaac Lab | NVIDIA Isaac Lab(機器人學習框架) |
| 會後回看 | NVIDIA On-Demand(會後以 S81613 搜尋錄影/投影片) |
---
*— 報告完 —*