Assistive Gym
用於訓練輔助機器人執行照護任務的物理模擬框架
授權條款
MIT
概述
Assistive Gym 是以物理為基礎的模擬框架,建構在 PyBullet 與 OpenAI Gym 之上,用於訓練機器人協助人們完成餵食、喝水、洗澡與穿衣等日常任務。它將六項輔助任務與六款商用機器人配對,並把人類偏好納入獎勵函數中。它包含用於強化學習的預訓練基準策略。
Assistive Gym 是一個以物理為基礎的模擬框架,建構在 PyBullet 之上並整合 OpenAI Gym,專為實體人機互動與機器人輔助的研究而設計。它提供 72 個可直接使用的模擬環境,結合六項輔助任務(餵食、喝水、搔癢、床上擦澡、穿衣與手臂操作)與六款商用機器人(PR2、Jaco、Baxter、Sawyer、Stretch 與 Panda),並涵蓋靜態與主動的人體配置。
這個框架具有符合解剖學的擬真人體模型,含 40 個受驅動的關節,以及源自生物力學研究、隨姿勢而變的關節限位,並支援男性與女性的身體配置。它將人類偏好建模直接納入獎勵函數,讓機器人學到尊重當事人舒適與自主的輔助策略。1.0 版加入了移動操作、多機器人控制、用於擬真居家環境的 iGibson 整合,以及用於逼真人體呈現的 SMPL-X 人體網格模型。
Assistive Gym 透過 OpenAI Gym 介面與標準強化學習演算法完全相容,為所有機器人與任務的組合提供預先訓練好的基準策略,並透過 Google Colab 筆記本支援雲端開發。研究人員可以建立自訂的輔助環境、擴充現有任務,並將新方法與所提供的基準進行比較。
為何重要
隨著全球人口老化,照護需求遠遠超過可用的人力。輔助機器人有潛力填補這個缺口,但開發與人有實體互動的機器人本質上就有風險。Assistive Gym 提供一個安全、可重複的模擬環境,讓研究人員在開發過程中訓練與評估輔助機器人策略,而不讓真人承擔風險。
這個框架發表於 IEEE ICRA 2020 並被廣泛引用,已成為輔助機器人研究社群的基礎工具。它將常見照護任務的模擬標準化,並提供多款商用機器人的基準結果,在真實實驗昂貴、緩慢且受倫理限制的領域中加速了進展。它的開源性質與 Google Colab 支援,也降低了新研究人員進入這個關鍵領域的門檻。
解決的問題
開發在日常活動中實體協助人們的機器人,面臨一個根本的雞生蛋、蛋生雞問題:機器人需要大量訓練才能安全地與人互動,但在真人身上訓練會帶來無法接受的安全風險。實體人機互動實驗也昂貴、耗時,而且難以在不同研究團隊之間重現。
Assistive Gym 的解法是提供逼真的物理模擬,讓機器人能透過數百萬次試誤互動來學習,而不對受試者造成任何風險。這個框架不只模擬接觸的物理,也模擬人類的偏好與身體能力,確保訓練出的策略會考量受協助者的舒適與自主。這讓全球研究人員能在任何真實部署之前,於標準化的基準上開發、測試並比較輔助策略。
重點
- 在六款商用機器人上模擬六項日常生活任務(餵食、喝水、洗澡、穿衣、搔癢、手臂操作),共 72 種環境組合
- 將人類偏好建模納入獎勵函數,讓機器人學會以尊重舒適與自主的方式提供協助
- 具有符合解剖學的擬真人體模型,含 40 個受驅動的關節與符合生物力學的關節限位
- 透過 OpenAI Gym 介面與標準強化學習相容,並內含預先訓練好的基準策略
- 透過 iGibson 整合支援擬真的居家環境,並以 SMPL-X 人體網格逼真呈現人體
適用對象
- 研究實體人機互動與輔助科技的機器人研究人員
- 將強化學習應用於真實照護與操作任務的強化學習實務工作者
- 為長者與身心障礙者照護製作機器人輔助原型的醫療科技開發者
- 研究輔助機器人、復健工程或具身 AI 的研究生
- 為輔助應用評估商用平台的機器人製造商
限制
- 模擬與現實之間的落差,意味著在 Assistive Gym 中訓練的策略若未經額外微調,可能無法直接轉移到實體機器人
- 人體模型使用簡化的關節限位與身體動力學,無法涵蓋不同障礙之真實患者的全部差異
- 需要 Python 3.6 或 3.7 才有最佳相容性,對較新 Python 版本的支援有限
- 沒有為穿衣與洗澡等任務模擬柔性體變形,而這類任務中布料與皮膚的物理很重要
- 最後一次重大更新是 v1.0,與較新的模擬框架相比,近期的開發活動有限