一般說來,讓機器人在現(xiàn)實世界中自主行動是一件很困難的事情,機器人難以在復雜的非結(jié)構(gòu)化環(huán)境中進行自主導航和交互。
能夠處理人類世界所有復雜問題的工程系統(tǒng)是很難的,從非線性動力學、部分可觀測性到不可預知的地形和傳感器故障,機器人特別容易受到墨菲定律的影響:一切可能出錯的事物最終都會出錯。我們的解決方式并不是通過編碼機器人以應對可能遇到的每個情景,相反,我們選擇接受可能產(chǎn)生的各種失敗,并讓機器人從中學習。從經(jīng)驗中學習控制策略是有利的,因為與手動控制器不同的是,學習控制器可以通過更多的數(shù)據(jù)進行適應和改進。因此,盡管機器人雖然會失敗,但是下一次遇到類似的情況時,已學習過的控制器便有可能修正它的錯誤。為了處理現(xiàn)實世界中任務的復雜性,當前基于學習的方法通常使用深度神經(jīng)網(wǎng)絡,這是一種強大但非數(shù)據(jù)有效的神經(jīng)網(wǎng)絡;這些基于反復摸索的學習器往往會經(jīng)歷多次失敗。當代深度強化學習方法的樣本無效性往往是現(xiàn)實世界中利用學習型方法的主要瓶頸之一。
機器人的“眼睛”和“腦袋”
要實現(xiàn)機器人自主行走,就必須讓機器人擁有明亮的“雙眼”和健全的“小腦”。
自主定位導航技術(shù)的重要突破口——SLAM技術(shù)
自主行走需要機器人有聰明的“小腦”。SLAM技術(shù)是自主定位導航技術(shù)的重要突破口。
SLAM是同步定位與地圖構(gòu)建(Simultaneous Localization And Mapping)的縮寫,機器人自主定位導航技術(shù)中包括定位、地圖創(chuàng)建與路徑規(guī)劃(運動控制),而SLAM本身只是完成機器人的定位和地圖創(chuàng)建。相比較而言,SLAM更像是一個概念而不是一個算法,它本身包含許多步驟,其中的每一個步驟均可以使用不同的算法實現(xiàn)。
和人類繪制地圖一樣銀行機器人,機器人描述環(huán)境、認識環(huán)境的過程主要就是依靠地圖。它利用環(huán)境地圖來描述其當前環(huán)境信息,并隨著使用的算法與傳感器差異采用不同的地圖描述形式。
機器人學中地圖的表示方法有四種:柵格地圖、特征地圖、直接表征法以及拓撲地圖。在機器人技術(shù)中,SLAM的地圖構(gòu)建通常指的是建立與環(huán)境幾何一致的地圖。
在機器人實時定位時,由于通過機器人運動估計得到的機器人位置信息會有較大的誤差,我們還需要使用測距單元得到的周圍環(huán)境信息更正機器人的位置。
傳感器
這時候銀行機器人,就需要機器人有一雙“慧眼”了。
毫米波傳感器的工作方式:
當有人在毫米波傳感器前面行走時,會在傳感器中形成多個反射點,根據(jù)傳感器的反饋,利用常用的機器人操作系統(tǒng)可視化(RVIZ)工具就可以將檢測到的點繪制成3D圖像。
這種點云圖像只需1/4秒就能將所有點云匯聚并顯示,通過收集到的點的密度就能夠準確直觀地反映出腿部和手臂的運動情形,并將此種運動情景歸類為人體運動。
移動機器人系統(tǒng)通過毫米波傳感器檢測到的物體點信息可以精確地繪制房間內(nèi)的障礙物,同時,還能利用識別的自由空間進行自主規(guī)劃路徑和導航。
如下圖所示,配備有毫米波傳感器的機器人通過掃描部分區(qū)域,并檢測區(qū)域中的靜止障礙物,能夠準確地形成該區(qū)域中障礙物位置的3D模型圖。通過這張3D模型圖,移動機器人在自主導航到達特定目的地的過程中精準地避開靜止的障礙物,也包括闖入機器人行駛路徑的動態(tài)障礙物。