郭一璞 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
深度強化學習,可以用來學走路了。
Agility Robotics的雙足機器人Cassie,這個沒有上半身的機器人,就靠著深度強化學習學會了更靈活的使用自己身體的唯二器官:左腿,和右腿。
看,它可以正常的往前走。
還能大步快走,差點就跑起來了。
作為一個傳送帶運動愛好者,萬一踩到了傳送帶的邊緣也不會兩腳劈叉,而是穩穩的繼續前行。
甚至,倒著走也一樣穩。
或者學習一下螃蟹,橫行霸道。
這種時候,不懷好意的人類就開始欺負它了,拿木棍戳它的小肚腩。
站的穩穩地,Cassie沒有一點點要倒下的意思。
既然戳肚子正前方沒有反應,那我們換個角度,戳肚子的側面,大概是“腰子”的位置。
稍稍歪了一下,但影響不大,Cassie該怎麼走還是怎麼走。
肚子看來干擾不了,那就干擾腳底,放一塊木板,絆倒它。
可惜如意算盤沒能實現,Cassie一腳踩在木板上,稍微晃了晃,依然穩步前行,甚至還回踩了一腳。
學走路進行時
新的行走技能,要歸功於加拿大不列顛哥倫比亞大學計算機系和俄勒岡州立大學動力機器人實驗室兩所機構。
讓Cassie學會行走,需要用到強化學習和模仿學習(Imitation Learning)。
強化學習解決馬爾可夫決策過程( Markov Decision Process, MDP)的最優策略,需要用到策略梯度算法;而模仿學習則需要解決參數策略問題。
之後,需要用到關鍵算法DASS來搞定數據集。每次連續設計迭代時重新定義獎勵函數,用確定性行動隨機狀態(Deterministic Action Stochastic State,DASS)元組來表徵策略。
之後,將DASS於強化學習、模仿學習結合在一起,為機器人設定策略。
現在需要在Cassie機器人上實驗了。
Cassie雙足機器人身高大約1米,體重31千克,兩條腿上有複雜的傳動機制,紅色箭頭都是主動關節,黃色的箭頭都是被動關節。
需要在神經網絡上進行參數化策略優化,這裡用到了actor-critic算法和MuJoCo模擬器。
策略設計過程則是依靠四個基於追蹤的策略的起始點。 DASS樣本根據箭頭的方向,從一個策略傳遞到下一個策略。
實際操作中,需要先訓練幾個初始策略,之後參考機器人的運動狀態和需要達到的運動速度進行調整,這裡只需要5~10k的小數據集就能實現變速行走策略。
最後,就可以讓機器人跑起來了。Cassie機器人需要和計算機聯網,操作過程中研究者們用到了Ubuntu系統和PyTorch框架來執行學習策略。
實驗之後,可以看出使用更大的神經網絡,就可以更快的產出更穩定的策略,比如圖中的藍色線條要明顯優於紅色和綠色。
傳送門
最後,如果你需要了解更詳細的步驟,可以閱讀這項研究的論文。
Iterative Reinforcement Learning Based Design of Dynamic Locomotion Skills for Cassie
Zhaoming Xie, Patrick Clary, Jeremy Dao, Pedro Morais, Jonathan Hurst, Michiel van de Panne
https://arxiv.org/abs/1903.09537
— 完 —
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回覆“招聘”兩個字。
量子位 QbitAI · 頭條號簽約作者
վ'ᴗ' ի 追蹤AI技術和產品新動態
閱讀更多 量子位 的文章