PID Control - Artificial Intelligence for Robotics
NETGEAR Orbi Pro 商用無死角Mesh WiFi 低價打造商辦WiFi 漫遊環境
來源:
複雜機器人的運動控制,一直阻擋機器人產業發展的老大難問題,遲遲沒有得到很好的解決。即便是代表機器人最高水平的波士頓動力,其機器人離實用也還遠。
為了搞清楚VR、AI等新技術,如何在機器人控制領域應用,本文根據一些相關論文和公開資料,包括Pieter Abbeel的演講,對VR和AI在機器人控制方面的應用,進行了簡單整理,發現AI和VR等在機器人控制等方面,還是有實在的應用,只不過離取得實質性突破,還有相當長的距離。
機器人控制的幾種類型
很多機器人的研究目標,很多是模擬人的智慧,所以研究人的控制系統,對於機器人有很大的借鑒意義。
人體的神經系統由大腦、小腦、腦幹、脊髓、神經元等共同構成,複雜而又完善。人體神經系統包括中樞神經系統,和周圍神經系統。中樞神經系統由腦和脊髓組成,是人體神經系統的最主體部分。周圍神經系統是從腦和脊髓發出的,分布到全身各處的神經。無數的神經元存在於神經系統各處,構成神經網路。
人體的神經系統由大腦、小腦、腦幹、脊髓、神經元等共同構成,複雜而又完善。人體神經系統包括中樞神經系統,和周圍神經系統。中樞神經系統由腦和脊髓組成,是人體神經系統的最主體部分。周圍神經系統是從腦和脊髓發出的,分布到全身各處的神經。無數的神經元存在於神經系統各處,構成神經網路。
中樞神經網路負責運動控制,主要分成三層:
大腦:居於最高層,負責運動的總體策劃,各種任務的下達。
小腦:居於中間層,負責運動的協調組織和實施。人體平衡由小腦控制。
腦幹和脊髓:屬於最低層,負責運動的執行,具體控制肌肉的骨骼的運動,由腦幹和脊髓完成。
三層對運動的調控作用不同,由高到低,低層接收高層的下行控制指令,並具體實現。大腦可直接也可間接的透過腦幹,控制脊髓運動神經。
如果把機器人與人進行類比,機械臂控制器就類似於人的脊髓,負責控制電機(肌肉)和機械機構(骨骼)的具體運動,多足機器人的運動控制器,就類似於人的小腦,負責控制平衡和協調。
而機器人的操作系統層,則類似於人的大腦,感知和認知世界,並下達各種複雜的運動目標。
而機器人的操作系統層,則類似於人的大腦,感知和認知世界,並下達各種複雜的運動目標。
基於以上類比,參照目前的各類機器人的情況,機器人的運動控制大概可以分成4種任務:
脊髓控制——機械臂運動的基礎控制。工業機器人,各類機械臂,無人機的底層運動控制等,面臨的主要是這類問題。
小腦控制——多足機器人的平衡和運動協調控制。這塊目前是機器人控制仍未突破的難點,目前做的最好的,顯然是波士頓動力。
大腦控制——環境的感知。主要是掃地機器人、無人機等底層運動控制,已經封裝好的機器人的導航和路徑規劃。需要透過環境感知,對自身和目標進行定位、導航和運動規劃。
大腦控制——環境的認知和交互,也就是機器人具體執行交互任務,如控制機械臂抓取物體,執行操作等。這是服務機器人需要突破的重要問題。
幾種具體控制的AI應用情況
1.脊髓控制類
脊髓控制的兩種典型的應用,是機械臂路徑規劃,和無人機的飛行控制。這類問題屬於傳統自動控制理論,以數學和動力學建模為基礎,發展了很多年,已經有了非常完備的理論和實踐基礎,也取得了很好的效果。
雖然深度學習在最近很熱,理論上也可以用於這類控制。但目前在這類基礎控制領域,並沒有應用。主要原因可能有:
雖然深度學習在最近很熱,理論上也可以用於這類控制。但目前在這類基礎控制領域,並沒有應用。主要原因可能有:
1)工業機器人高精度重覆特定動作等,基於自動控制理論,已經能從數學上很好的解決,且由於瞭解原理,屬於白盒系統。既然有可靠的白盒方案,沒必要換成黑盒的神經網路控制系統。
2)工業機器人等應用領域,對控制算法穩定性要求很高。而作為黑盒方案的神經網路控制系統,數據上還無法證明其穩定性。神經網路控制器一旦發生問題,難以進行解釋和改進。
3)神經網路算法基於大量數據訓練,而現有的運動控制中,比如飛控,拿到實際實驗數據的成本高,大量數據的獲取非常困難。
2.小腦控制類
小腦控制典型問題,是類人型雙足和多足機器人的平衡,和運動協調控制問題。這方面一直是基於傳統控制理論,在進行研究,不過由於相比於機械臂或無人機,其運動的自由度高很多,難度很大。
雙足類人機器人給人大多數的印象,還是運動遲緩、僵硬、站不穩。波士頓動力的Altas、大狗等,已經是在這方面最先進的,波士頓動力學公司並未公佈他們使用的技術,但谷歌工程師Eric Jang表示,根據從演講得來的資訊,BD的機器人控制策略使用,基於模型的控制器,並不涉及神經網路相關算法。
雙足類人機器人給人大多數的印象,還是運動遲緩、僵硬、站不穩。波士頓動力的Altas、大狗等,已經是在這方面最先進的,波士頓動力學公司並未公佈他們使用的技術,但谷歌工程師Eric Jang表示,根據從演講得來的資訊,BD的機器人控制策略使用,基於模型的控制器,並不涉及神經網路相關算法。
3.環境感知類
主要的場景是服務機器人的路徑規劃、無人機目標追蹤、工業機器人的視覺定位等,透過感知環境,給封裝好的運動控制系統下達目標運動指令。
目標辨識
環境感知過程中的目標辨識,如無人機目標的辨識和追蹤等,有神經網路的幫助,可以辨識的更準確,已經在大疆等無人機上應用。
定位導航和路徑規劃
目前機器人的定位導航,主要基於流行的vSLAM或雷射雷達SLAM技術。主流的雷射雷達方案大概可以分三步,中間部分環節可能涉及到一些深度學習,大部分內容並不涉及深度學習相關。
第一步:SLAM,構建場景地圖,用雷射雷達構建場景的2D或3D點雲,或者重建出3D場景。
第二步:構建語義地圖,可能會對物體進行辨識和分割,對場景中的物體進行標記。(有的可能略過這一步)
第三部:基於算法進行路徑規劃,並驅動機器人的運動。
4.環境交互
典型應用場景:機械臂抓取目標物體等。與環境的交互,一直是傳統自動控制難以解決的問題。近年來,以強化學習為基礎,AI相關技術用在了這類問題上,取得了一定的研究進展,但是否是未來的主流方向,仍存在很大爭議。
1)強化學習
強化學習框架中,有一個包含神經網路的Agent負責決策。Agent以當前機器人傳感器,所採集到的環境為輸入,輸出控制機器人的行動命令action,機器人行動後,再觀察新的環境狀態和行動,帶來的結果Reward,決定下一步新的行動action。
Reward根據控制目標進行設置,並有正反向之分。例如,如果以自動駕駛為目標,正向的Reward的就是到達目的地,反向就是不能達到目的地,更不好的Reward就是出車禍。然後重覆這個過程,目標是最大化Reward。
強化學習的控制過程,本來就是個正向反饋的控制過程,是AI用於機器人控制的基礎。以此為基礎,強化學習在機器人控制方面出現了一些研究成果。
2)環境中尋找目標
16年,李飛飛組放出了一篇論文,基於深度強化學習,在以目標圖像為輸入的情況下,不建圖去找東西。大致思路是:根據機器看到的圖,決定怎麼走,然後再看圖,再決定新走的一步,直到找到東西。論文將目標圖像作為輸入,訓練出來的神經網路具有通用性。
這種方式找東西,更接近人的思維。訓練出的控制器,並沒有記住物體的位置,更不知道房屋的結構。但它記住了在每一個位置,通向各個物體應該怎麼走。
3)機器人抓取
傳統的機器人學研究認為,需要非常清楚要抓取的物體的三維幾何形狀,分析受力位置和力的大小,再反向計算機器手,如何一步步移動到這些位置。
但這種方式抓取不規則形狀,和柔性物體會很困難。例如毛巾,可能需要看成一系列剛體的鏈接,再進行動力學建模分析,但是計算量比較大。而小黃鴨那樣的橡膠,外部並不能看出彈性程度,難以計算出需要施加的正確的力。
但這種方式抓取不規則形狀,和柔性物體會很困難。例如毛巾,可能需要看成一系列剛體的鏈接,再進行動力學建模分析,但是計算量比較大。而小黃鴨那樣的橡膠,外部並不能看出彈性程度,難以計算出需要施加的正確的力。
Pieter Abbeel、DeepMind和OpenAI,關於機器人控制的研究,都以此深度強化學習為基礎。基於強化學習進行機器人抓取,以機器視角看到的圖像為輸入,以機器最終抓到物體為目標,不斷對機器進行訓練,從而在不建模和不做受力分析的情況下,實現對物體的抓取。Pieter Abbeel已經展示過機器人疊毛巾,開瓶蓋,裝玩具等複雜的動作。
不過基於強化學習,也仍有很多問題,如效率低、推理過程長、任務難以描述、不能終身學習、不能最大限度從真實世界獲取資訊等。其中一些通過meta學習,one-shot學習,遷移學習,VR示教等方法的引入得到了改善,有些則還暫時難以解決。
5.Dexterity Network
鑒於深度強化學習的各種問題,Pieter Abbeel在UCBerkeley的同事Ken Goldberg,則採用了叫做Dexterity Network(Dex-Net)的研究思路。
首先透過傳統機器人學中,分析受力和建模的思路,建立一個包含大量數據的數據集,這個數據集裡的每一項數據,包含一個物體的模型,和這個物體在不同姿態下,可以被穩定抓起來的施力方式,這些施力方式是透過物體模型計算出來的。
有了數據之後,用這些數據訓練一個神經網路。然後給出一個新物體,透過神經網路判斷這個物體和數據集裡,哪個物體最相似,然後根據最相似的物體的數據集裡,包含的施力方式,計算出這個新物體的最穩定施力方式。
首先透過傳統機器人學中,分析受力和建模的思路,建立一個包含大量數據的數據集,這個數據集裡的每一項數據,包含一個物體的模型,和這個物體在不同姿態下,可以被穩定抓起來的施力方式,這些施力方式是透過物體模型計算出來的。
有了數據之後,用這些數據訓練一個神經網路。然後給出一個新物體,透過神經網路判斷這個物體和數據集裡,哪個物體最相似,然後根據最相似的物體的數據集裡,包含的施力方式,計算出這個新物體的最穩定施力方式。
Ken Goldberg的方案的一個重要弊端,是計算量過於龐大。整個算法,佔用了Google雲伺服器上的1500台虛擬機的計算量。此方法也讓「雲機器人」這個概念受到了關注。
目前Pieter Abbeel和Ken Goldberg的兩種方法,還處於學術爭議階段,新的研究成果還在不斷出現,也還有很多問題沒有解決,尤其是穩定性和穩健性是各方爭議的焦點。
不同於語音辨識音箱出了錯,無非是鬧個笑話,機器人系統對穩定性和可靠性的要求非常高,系統一旦出錯,輕則毀物,重則造成人類的生命危險。Pieter Abbeel也承認,目前還沒考慮穩健性和穩定性問題,似乎整體還沒達到商用產品級。
不同於語音辨識音箱出了錯,無非是鬧個笑話,機器人系統對穩定性和可靠性的要求非常高,系統一旦出錯,輕則毀物,重則造成人類的生命危險。Pieter Abbeel也承認,目前還沒考慮穩健性和穩定性問題,似乎整體還沒達到商用產品級。
總結
總體而言,以強化學習為代表,AI在機器人控制領域近兩年取得了一些進展,尤其是在過去研究方法,難以突破的環境交互問題方面,取得了進展。
但基於神經網路的控制系統,在穩健性等方面短期似乎難以得到解決,因此離實際應用還有很遠的距離。在多種研究方法的共同努力下,我們也期待機器人控制問題能夠早日有所突破。
但基於神經網路的控制系統,在穩健性等方面短期似乎難以得到解決,因此離實際應用還有很遠的距離。在多種研究方法的共同努力下,我們也期待機器人控制問題能夠早日有所突破。
沒有留言:
張貼留言