達闥科技趙開勇:基於自學習的機器人決策系統
⬆⬆⬆ 點選藍字
關注我們
AI TIME歡迎每一位AI愛好者的加入!
2020年9月25-26日,2020年中國科技峰會系列活動青年科學家沙龍將迎來新的一期—“人工智慧學術生態與產業創新”。本次活動由中國科學技術協會主辦,清華大學計算機系、AI TIME、智譜·AI承辦;大會完整視訊報告,請在B站關注“AI Time論道”,或點選下方“閱讀原文”。
9月25日上午,大會邀請到達闥科技首席架構師,研發副總裁趙開勇先生做了名為《基於自學習的機器人決策系統》的主題演講。
在演講中,趙開勇先生主要介紹了達闥科技通過雲端平臺加速機器人學習,並形成了一套傳統方法+人類經驗+強化學習的方法。
趙開勇
本文是AI Time對報告主要內容的簡單整理:
一、機器人控制面臨的問題
達闥科技是前中國移動研究院院長黃曉慶於2015年成立的公司,是一家雲端智慧機器人運營商,主要從事雲端智慧機器人運營級別的安全雲端計算網路、大型混合人工智慧機器學習平臺、以及安全智慧終端和機器人控制器技術的研究。
可以看一下他們主要的產品,包括雲端的服務機器人、雲端安防機器人、清潔機器人、生活機器人和雲端的門禁,這些終端裝置通過安全高速的光纖網路(VBN),與雲端機器人作業系統HARIX相連線。在這個過程中遇到了很多實際的問題,研究過程中將很多學術相關的方法和研究拿到機器人應用開發裡面,介紹了在做機器人應用或者開發的時候遇到的實際問題和解決方案。
上圖是報告的幾個主題,第一部分講解了機器人在傳統控制方法中所面臨的問題,我們的服務機器人是一個仿人形的機器人,這個機器人怎麼學習動作,通用傳統的方式是對機器人的每個動作進行軌跡規劃,並進行編碼,這就導致每次新增新動作都需要重新程式設計。。第二部分講解的是逐步提高機器人系統的學習能力,當機器人要學一個新動作的時候,不一定非要重新程式設計,可以通過機器學習的方式讓機器人學習新的動作,逐步提高其學習、決策的能力。。第三是構建了一套模擬平臺,即數字孿生平臺。在20年前做機器人的時候,要在模擬平臺做機器人的訓練或者學習並不方便,由於近些年來計算能力的提升,可以很容易的在雲端或者在虛擬環境中搭建完整的機器人運動學、動力學及控制系統,這樣可以在模擬平臺裡進行大量的訓練,而不是必須造出機器人硬體再做開發。有了這樣一套模擬環境以後,下一步就是需要考慮怎麼把傳統控制方法和生物的已有的一些經驗加到模擬平臺裡面來,形成一套可以自學習的系統。後面我會舉幾個例子,一個是仿人形的機器人怎麼學跳舞,機器人怎麼去做抓取,還有四足機器狗的步態學習。
在上面兩幅圖中,左圖是機器人配合茉莉花音樂學跳舞。最開始編排動作的時候專門找了舞蹈學院的老師幫忙,但是如何將機器人動作變得更柔和、更擬人,是非常具有挑戰的問題。右圖是機器人抓取的過程。可以看到服務機器人的抓取動作與工廠裡面的工業機器人差別較大,因為服務機器人需要在日常生活等非結構化空間中工作,因此抓取的物品種類、大小、重量、位置等都無法確定,而且抓取規劃中還可能遇到障礙物進行避障,這個抓取的過程其實也是相對比較複雜的過程。
左圖是四足機器狗,四足機器人的步態規劃是目前尚未解決的問題,目前的傳統方法生成的步態與真實的四足動物相比差別非常大,且傳統方法大多未考慮到不同情況下步態的區別,即使現在可以在模擬中可以模擬不同環境,但傳統方法仍然無法生成靈活的步態規劃。右圖是在小區裡機器人的避障,小區裡的環境很複雜,在實驗室裡不會有小朋友圍著機器人轉,有的小朋友可能把鏡頭蓋住,甚至碰鐳射雷達,或者爬到機器人上面去,這些實際問題都考驗了機器人規劃決策系統的穩定性。總體來說和前面機器狗的動作、抓取、跳舞都有類似的內容,我們把這些過程抽象出來,把所有的控制過程,定義為機器人決策。在模擬環境中利用仿生或者強化學習的方法結合傳統方法來實現機器人的決策控制。
二、機器人決策系統
傳統的電機控制,包括有電流環,速度環,位置環。這是一個成熟的過程,今天我不會講這方面的內容。我們把每個關節的控制定義為基礎層的控制,有了基礎層的控制之後,多個關節組合起來形成一些配合的控制。通過前面的幾個視訊,我們可以看到,傳統的關節控制,組合起來,就是多關節聯動,就是通常意義下的二維或者三維路徑規劃或者是步態規劃。我們把組合的過程抽象成了機器人決策過程,基本動作決策。就好比我們的小腦的平衡決策,而不只是一個簡單的規劃問題。
三、數字孿生
在達闥公司內部,藉助於高效能的硬體和計算的提升,架構了一套機器人訓練模擬平臺,包括雲端的管理和儲存,中間也包含有AI的訓練平臺。藉助仿生學原理以及人體及動物的運動資料,再結合模仿學習、強化學習等AI演算法,從而構建了一套基礎動作學習庫。在模擬平臺中,我們把每一個機器人的關節都按照接近真實的物理模型方式進行建模,在模擬環境裡面就可以進行機器人的訓練。在模擬平臺裡面,還可以根據控制的要求,對硬體關節進行修改引數,最後對真實生產的關節提出需求。這個過程就可以對硬體的設計提供很好的幫助。
這是雲端的智慧機器人開放平臺,已經在一些高校中得到了應用。這個平臺相當於在物理真實機器人的基礎上,同時會有一套接近真是的數字孿生系統,對每個機器人進行模擬。從雲端來講,會先有一套3D的語義環境,構建一套機器人的使用場景,同時把機器人模型放到這個環境裡面。同時把已有的知識庫或者傳統的動作技能放到這個系統裡面去,再根據訓練的要求進行動作的開發。之後根據3和4收集到的資料再進行大量的AI訓練。這相當於利用傳統的經驗和人的經驗構建一個有限的空間再經過AI的仿生學習和強化學習的方式進行更高層次的空間的搜尋,分成幾層進行不同的配合和訓練。就類似alphago的過程中,通過人類的棋譜進行訓練,訓練有一個基礎以後再進行左右互搏,再更大的空間及逆行搜尋。
四、機器人控制
總結過去的一些研究,可以看到傳統控制方法如RRT、DMP等,其限定了一個控制域,但如果結合仿生學習和強化學習等,就相當於在更大範圍或更高維空間中搜索最優解。
上圖是一個真實機器人與虛擬環境中的數字孿生機器人進行配合訓練的示意圖。比如通過真實機器人感測器感知世界資訊,就可以在虛擬環境中進行三維重建,再通過AI推理決策,即可產生行為,並在虛擬環境中嘗試動作進行評估,準確無誤後下載到真實機器人上進行執行。
如果要學一個新動作會先通過一個視訊,視訊中工作人員做一個動作,根據每個動作實時的識別完之後生成動作。我們從抖音上抓了很多的視訊,通過2D視訊得到3D的姿態,這些姿態對映到機器人關節裡面。當然這裡面的對映不是一個簡單的對映,如果是簡單的對映這裡面會出現問題,例如機器人平臺的關節和動作不一定能和跳舞的人的動作一致,也有可能發生碰撞。如果想讓機器人生成的動作更加優美,更加擬人化,就需要根據這些資料進行自學習,進而產生資料驅動的行為動作,在這個過程中,機器人會根據自身的結構特性以及物理限制生成儘可能相似的動作,使得機器人舞姿儘可能的貼近自然。
第二個場景是抓取。左邊的是真實的場景,右邊是一個虛擬的場景。為了生成更加擬人化的抓取動作,首先需要人穿戴運動捕捉裝置進行資料記錄,在模擬平臺中結合AI進行大量訓練,就可以形成一套機器人的抓取知識庫,這樣也避免了新的抓取動作再次採集資料。
上圖是機器狗,在模擬環境裡用MIT的模型做控制,比如前進後退,大家可能網上都看到過。
這個機器人動作的實現是把傳統的控制方式和深度學習、仿生習結合起來,相當於既有傳統的搜尋空間,同時又通過一些強化學習等機器學習的方式搜尋更大的空間。因為傳統的方法一般是需要建模,因此控制效果往往因為建模的簡化而受到影響,當結合強化學習的方式就得到一個更廣的搜尋空間。
通過比較兩邊,可以看到仿生的訓練是端到端的訓練,不需要複雜的設計,但是它不夠靈活,沒辦法現在落地。傳統的方法比較靈活,魯棒性也比較強,但是動作並不是最優的動作,就說每個動作,比如在行走過程中,四足機器人的步態規劃與真實動物相差較大。把兩者結合起來,可以達到能量消耗減少,穩定性更強。
這是四足動物行走過程中的能量消耗曲線。機器人傳統控制方式中,每個步態是單獨的狀態,只能由一種步態瞬間切換到另一個步態,而真實動物卻與此有較大的不同。最近谷歌有篇論文,其在進行這樣的AI訓練或者搜尋的時候,大量的資料通過網上抓過或者外部蒐集。其實在這個過程中我們也意識到這個問題,因為人或者自然界已經有大量的資料,我們需要把這樣的資料結合起來,形成一個由資料驅動的機器人動作訓練方法,而不需要完全從頭開始訓練一個動作,尤其是做四足步態機器人或者機器人的抓取的動作,因為已經存在大量的經驗值。採用這些經驗值後,通過對資料進行一些約束和邊界條件的界定,實現在有限的空間裡進行搜尋,並且更快的達到理想的效果,這些動作所消耗的能量能夠達到最低。
這是對機器狗做不同步態訓練的時候,訓練多個機器人,加入不同的引數比如不同的力,不同環境的情況。
這是一個大規模的場景訓練,這裡面有不同的狀態。因為這是一個分散式的平臺,所以速度可以做的很快。這裡面關鍵點在於,我們會藉助傳統的方法得到一個有限的搜尋空間,同時利用經驗值得到另外一個搜尋空間,結合強化學習等AI訓練就可以在更廣的範圍內結合兩者找到最優。有點類似於AlphaGO學習棋譜的時候先用人類的棋譜學一些資訊,當然這裡的學習更多的會加入人為控制的環節,把人的經驗值放到這裡面。
這是達闥的開放平臺,已經在高校裡進行使用。這個訓練平臺還有整個訓練過程放到網上以後,會有更多的人使用到這個的開放平臺,可以在這上面訓練自己的機器人,甚至自己架構一套機器人系統,可以放到這上面得到一個實際的你想要的效果。現在我們內部設計機器人的時候,已經和傳統的設計機器人的方式有所區別,我們會先在模擬平臺把機器人的特性要求設計出來。這基於現在較強的計算能力,擺脫了實體機器人的束縛,所以會先在模擬平臺裡做訓練。對結構的要求,每個環節的要求,每個關節的要求,比如四足機器人都可以首先在裡面進行一些步態訓練,訓練完以後再對硬體提要求,這也是我們開放平臺的目的。
機器人有不同的應用場景,小區裡面或者是公司或者是校園等。我們在雲端有不同領域的智慧,不同的機器人進入雲端以後,賦予機器人不同的智慧。現在AI公司可能沒有那麼多的資料,比如有些AI是安防相關的,舉個例子我們做安防的時候,做路徑規劃的時候,小區裡面小孩圍著車轉,有很多人遮擋。這在實驗室裡很少見,但在實際情況中能見到比較多。再比如我們會看能不能檢測有沒有翻牆或者檢測路燈有沒有關,包括垃圾桶有沒有滿,這些資料都會放到雲端進行測量。通過在雲端構建了一套傳統方法+人類經驗+強化學習的方法,構建出訓練平臺,然後把所有的資料綜合起來形成一套系統,對AI進行更新。這樣運營的機器人數量越多,則收集到的資料就越多。而云端AI進行不斷的訓練後,其能力也會相應的提高,這樣機器人與雲端進行不斷的閉環,賦能每個機器人。
整理:閆昊
審稿:趙開勇
排版:田雨晴
AI Time歡迎AI領域學者投稿,期待大家剖析學科歷史發展和前沿技術。針對熱門話題,我們將邀請專家一起論道。同時,我們也長期招募優質的撰稿人,頂級的平臺需要頂級的你,請將簡歷等資訊發至[email protected]!
微信聯絡:AITIME_HY
AI Time是清華大學計算機系一群關注人工智慧發展,並有思想情懷的青年學者們創辦的圈子,旨在發揚科學思辨精神,邀請各界人士對人工智慧理論、演算法、場景、應用的本質問題進行探索,加強思想碰撞,打造一個知識分享的聚集地。
更多資訊請掃碼關注
(點選“閱讀原文”觀看直播回放)