波士頓動力一週前發布了一個長達90秒的影片。在影片中,Atlas完美地跑完了複雜的障礙賽,於是有很多網友好奇是什麼樣的科技,讓機器人可以如此智慧。
機器人該怎麼樣才能像運動員一樣奔跑、翻轉、跳躍?創造這些高能演示的是一個有趣的挑戰,但波士頓的技術目標不僅僅是創造一場華麗的表演。在Atlas項目中,他們以跑酷為實驗主題,通過動態運動,感知和控制之間的連結,來研究相關的問題。
這些問題的解決,有助於機器人更加順暢的運行。
機器人對跑酷的感知
機器人感知算法會被用到相機和雷射雷達等感測器的數據轉換對策,和規劃物理行動中。雖然Atlas使用IMU、關節位置和受力感測器來控制其身體並感受地面獲得平衡,但Atlas還需要感知算法來辨識障礙物,如圖1中看到的木箱和窄橋。
(圖1:這個動畫顯示了一個Atlas機器人深度相機生成的點雲旋轉視圖。)
Atlas使用深度相機以每秒15幀的速度生成環境點雲。點雲是距離測量數據的集合。Atlas的感知軟體使用多平面分割的算法,從點雲中提取表面。接著算法輸出的數據被輸入地圖系統,最後系統幫助Atlas用相機看到不同物體建立模型。
(圖2:具有感知輸出的Atlas渲染。)
圖2顯示了Atlas感知到的物體,並經過回饋與運算規劃行動。左上角是深度相機拍攝的紅外圖像,主圖像中的白點形成點雲,橙色輪廓標記了跑酷障礙物檢測到的矩形面,這些矩形面隨著時間的推移被感測器追蹤,從而幫助Atlas設置特定的行為,例如,綠色的腳印標記下一步在哪裡跳躍和慢跑。
為了擴展跑酷課程,機器人被導入一張高級地圖,其中包括命令它去哪裡,以及路上應該做什麼動作。這張高級地圖與實際課程不完全一致,它是對障礙物位置和一些主要動作的簡要描述。所以Atlas會使用這些簡要資訊來導航,同時使用及時感知數據來填充細節。例如,Atlas尋找一個可以跳躍的盒子,如果盒子移動到側面0.5公尺,Atlas會在那裡找到並調整姿勢,如果盒子移動得太遠,系統找不到它就會停下來。
(圖3:展示機器人對跑酷課程中,夥伴的感知動畫。)
這是一個3D可視化動圖,展示了機器人在跑酷障礙跑道上看到的內容和機器人通過內容回饋的計劃。主動追蹤的物體被繪製成綠色,當物體的距離超過感知範圍時,圖標就會從綠色變成紫色。追蹤系統也會不斷跟進物體的姿態傳給導航系統,導航系統會通過地圖上的資訊設計好對應物體的綠色腳印。
行為庫
你在跑酷程序中看到Atlas執行的每個動作,都來自「軌跡優化離線設計」創建的模板。這些模板庫,允許科研人員往庫中添加新的軌跡,添加新的功能。
軌跡優化離線設計,可以讓工程師交互探索機器人能力的極限,並減少機器人的計算量。例如,機器人如何收起四肢做後空翻,這些成就對項目的推進有莫大的幫助。因為這樣可以幫助機器人做到最合理的驅動,科研人員可以利用離線優化捕捉重要的發力點,並使用控制器線上調整它們的動作。
(圖4:這種跳馬行為是使用離線軌跡優化設計的複雜全身行為的一個例子。)
模型預測
確定了機器人前面盒子、坡道和障礙的位置,並設計了一系列越過它們的動作,剩下的挑戰是填寫機器人執行計劃所需的細節問題。
Atlas的控制器被稱為模型預測控制器(MPC),因為它使用機器人動力學模型來預測運動將如何演變,控制器的工作原理是優化計算出現在最應該做的事情是什麼,從而盡可能形成好的運動姿態。
如上所述,行為庫中的每個模板都向控制器提供了最優解的解決方案,控制器調整力、姿勢和行為時機等細節,應對環境幾何形狀、腳滑或其他及時因素。這樣就可以擁有能夠偏離模板運動的控制,自我創建運動過程,這種解決方案也大大減少了機器人可能需要的場景行為模板。例如,從52公分的平台上跳下來和40公分的平台跳下來,MPC會自動弄清楚細節。
圖5:顯示感知和計劃路徑的第一人稱視圖,藍色箭頭對應於MPC對機器人,在路線中移動時質心和動量的預測。
MPC的預測特性,允許Atlas跨越行為界線。比如,知道跳躍後是後空翻,控制器可以自主創建一個平穩過渡的動作。這也簡化了行為創建問題,研究人員不需要再提前考慮可能的行為序列。不過,MPC的創新是有限度的。例如,試圖從慢跑運動過渡到後空翻是行不通的。
為未來奠定基礎
他們對Atlas系統中創建和控制動態行為(也包括舞蹈),有了深刻的理解。但更重要的是,創造了一個可擴展軟體系統的機會,也讓Atlas系統通過感知自身環境做出改變,這個系統將與他們的團隊一起成長。
本文為雷鋒網授權刊登,原文標題為「解密:波士頓動力如何用算法構建Atlas機器人的感官世界」