熊蓉教授,系國家科技部重點專項智能機器人專家組專家,RoboCup國際理事會理事,浙江省機器換人專家組專家,浙江大學控制學院機器人實驗室主任。2017年8月世界機器人大會上,她被邀請做了題為《智能移動機器人技術及應用》的主題演講,提出的智能移動機器人“自然無軌導航”等研究,格外引人關注。
在長達數十分鐘的發言中,熊蓉教授為我們梳理了我國制造業機器人的研發現狀和重要節點,其中既有她對于國際機器人產業發展的深度理解,亦有對國內機器人產業發展前景和重點方向的思考分析,干貨非常多,至今讀來依然獲益匪淺,值得您花時間閱讀。
尊敬的各位領導,各位嘉賓,大家下午好!感謝組委會的邀請,我來自于浙江大學控制學院機器人實驗室,今天主要為大家介紹我們在機器人方面所做的一些工作,其中將重點介紹智能移動機器人的有關技術。
之前關于機器人的背景,各位嘉賓已經講得很多了,這里我只做一個簡要介紹。基于市場驅動與技術發展,目前機器人產業已經成為各個國家的戰略型新興產業。我是從2000年開始從事機器人研究,當時有讀到2001年《世界周刊》的一篇報道,文中卡耐基梅隆大學的教授預測“機器人產業會超越IT資訊產業”,而那時還是IT非常熱的時候。之后很快到了2013年,中國就迎來了機器人產業的爆發。從1956年的第一臺工業機器人誕生并應用到汽車領域,到現在我們已經有了非常多不同類型的機器人,且已經應用到了包括工業、外空探測、軍事、醫療手術、康復等各行各業里,機器人已經逐漸向社會各個領域不斷滲透。
但是我們發現,這些機器人在應用過程中無論是形態上還是智能上,仍有很多局限性,因而現在很多的研究機構與機器人企業都在研究各種各樣的輕型機器人。如工業中能夠與人交互協作的機器人,或將原來人車分離的結合在一起,以及一些仿生機器人。關于這些機器人,除了它們的外部形態外,還有一個非常重要的問題,就是內部的智能性。智能化是新一代機器人的核心特征,對于腿足機器人來說,不管是讓它適應不平整的地面,實現動態的移動控制;還是在家庭服務中,不斷實現對作業任務的移動,以及對物體的操作;或是在人機交互中,對人臉、人體進行識別,進而識別人的情緒,開展對應的自然交互;以及在工業中的人機協同作業和康復、助殘中的人機協同作業,還有如何讓機器人自主地學習技能,并在泛化的作業內容中實現……以上這些都是當前研究的熱點。但就整體來說,其中最關鍵的還是如何讓機器人變得智能。
關于智能,我們提到兩個核心問題:一是感知,一是控制。獲得環境和自身的信息,然后基于感知進行伺服的控制,兩者之間相互關聯,形成一個閉環系統。通過這兩個作業,我們要使得機器人系統有很好的適應性,能夠適應各種不同的環境,適應各種不同的操作對象以及各種不同的地形等等。
基于本人的計算機背景,我們的實驗室從2000年開始,主要關注于機器人的智能化方面。在17年的發展過程中,我們的發展方向主要概括為三個:如何進行智能的操作、智能的移動和智能的運動。下面我先簡要地介紹一下實驗室在智能操作和智能運動方面的一些成果,然后再重點介紹一下在智能移動方面所做的各項工作。
首先是智能操作。
操作是工業機器人最基本的功能需求。但是從工業機器人進入到現在,就需要滿足柔性制造的發展來看,也對機器人的智能性提出了需求,即能否通過各種各樣的傳感器來感知其作業對象并進行在線作業;而對于服務機器人來說,它更是一個必備的技術要求。因而不管是工業機器人還是服務機器人,人機協作是一個發展趨勢。這同樣意味著,我們的機器人需要具有感知的能力,去感知它的交互對象及意圖,然后來規劃自己的運動。于是,在2008年到2011年間,我們在國家863重點課題的支持下,做了一個乒乓球對打機器人,其實質是在解決智能操作的問題。它主要通過對某個對象的快速識別、定位,來考慮如何安排自己的運動,即對機械臂運動軌跡進行預測,然后規劃出機器人的全身運動,這是在線、實時的規劃,并且要保證這個手臂在快速作業時的動態平衡控制。該成果于2011 年10月發布,得到了國內外的很大肯定。包括英國的路透社、美國的美聯社,以及美國國家地理頻道在去年開設的一個名為Nothing Impossible的節目,都來到實驗室做了專題報道,更有很多的人慕名前來和這款機器人對打。(看圖)這就是第一位來和它對打的老先生,某雙蛇發球器的老總,從小打乒乓球。我們當時生產了兩款這樣的機器人,他們之間可以進行對打。但是機器人間的對打難度不及于他們與人類的對打,這是因為機器人是比較可控的,不像人類會有忽快、忽慢的速度,甚至所打的球會帶有旋轉性。同時,由于我們最初的定義就是制造一款仿人機器人,所以這款乒乓球對打機器人也能走路,只不過它的速度和國際上相比還有較大差距。這款機器人主要解決的是如何利用它全身的關節,來保證穩定的平衡控制及作業的精確性。(看圖)這是工博會上,萬鋼部長和它的對打,這些是在863成果20周年匯報上的一些照片。
這個作業完成后,我們將這一技術應用到了工業領域。在該領域里,涉及到對不同物品的分揀。(看圖)這是我們給某企業做的幾套自動化單元,當中有涉及到耳機這樣很小且沒有什么紋理的物品,我們要快速地識別它的位置,然后規劃機械臂的運動實現抓取,進而去適應不同的對象、插件等等。(看圖)我們把一個工作臺臨時推到機械臂面前,它能夠在1分鐘內完成標定,然后開始精確作業(ICT的焊接對精度要求挺高),這解決了原來在工業上人機標定作業和機械臂標定時需要大量專業人員和大量時間的問題。
另外我們還開展了進一步研究,即原先我們針對的是有相對少量旋轉的球,但其實在很多現實領域里,都會涉及到有大量旋轉的事物,比如在軍事對抗、航空航天領域里都有這樣對象作業的需求。那么在帶有高速旋轉的情況下,如何預測它的軌跡,就變得非常重要。因此,在國家自然科學基金的支持下,我們于2012年開始了這方面的工作。從最初對球(我們還是以球作為一個對象)上自然標志的識別、跟蹤來估計它的旋轉狀態,第一次實現機器人對高速旋轉球的接打;到后來我們對模型進行肌理分析,再結合視覺學習,建立準確的模型,目前大家看到的就是不用看球上的任何標示,完全只根據它的位置,就能做出精確的軌跡預測來實現機器人對球的接打。而眼下,我們正在進一步研究的是如何能讓機器人把球打回到我們需要的地方,目前我們已經完成了對球的旋轉建模即能夠接住球,下一步是要把球打到需要的位置上。
除此之外,在智能操作方面,我們也在研究如何簡化機器人編程的專業需求。現在的機器人編程,都需要由專業人員進行,可對于很多中小企業來說,缺乏這方面的人員,同時很高的作業柔性,也需要經常改變程序來適應。ABB、KUKA在這方面也做了很多工作,如開發便捷試教的程序。而我們所做的是如何讓它完成一些高層任務的學習,如裝配一個手電筒,裝配一個開關。我們通過人來進行演示,我們去觀察人的動作,包括對物體的操作以及操作后的效果,然后在一分鐘內生成機器人的程序,讓其來實現。(看視頻)剛才大家看到的就是對手電筒和開關的裝配,你可以任意地調整自己的裝配方式。
第二,我們來看看智能運動。
剛才我們看到的腿足式運動,主要是解決在輪式、履帶式移動時有些地面無法到達的問題,國際上也有很多對這方面的研究,包括模擬人的雙足,模擬鹿、馬、豹子等四足,還有如蟑螂的六足。而我們研究的主要是如何能夠跳得高、跳得快且還能降低它的能效,所以從2012年開始,我們從一個單的彈性驅動關節著手,來考慮對能量的存儲利用、關節損耗的降低,進而研發了這個能夠快速彈跳的單腿機器人,目前它是國際上跳躍度最高、能耗量最低的一款機器人。在此基礎上,近兩年我們又研發了一款雙足跑跳機器人,其速度達到了3.6公里/小時,雖然現在它還只是在跑步機上跑,但計劃明年上半年就可實現在操場上的跑跳。去年我們也接到企業的委托,研發了一款名為“赤兔”的四足機器人,它跟BIGDOG非常類似。所不同的是,“赤兔”采用的是電機驅動而非液壓驅動,因而在行走速度上只實現了6公里/小時,和液壓驅動相比還有較大差距,但和波士頓動力后來研發的電機驅動相比,速度基本類似。同時,該款機器人也能夠根據關節的感知、控制來實現對不平整地面的適應,甚至還包括了實現快速跑跳的能力。
下面,著重介紹我們在智能移動方面所作的工作。
最早提出移動需求的不是工業界,而是服務機器人領域。這是因為服務機器人需要在環境中的各個地方作業,它是服務機器人必備的能力。而隨著工業機器人柔性制造的發展,也提出了關于移動車子的需求,(看圖)如左邊是KUKA設計的由移動車和機械臂合作的矩陣型工作單元。同樣的,很多工廠對于物流搬運的巨大需求,也對移動機器人的發展提出了很大需求。
我們在智能移動領域,主要關注的是“自然無軌導航”。原來傳統工業上使用的機器人還是依賴于在環境中建立導軌或者標志,通過檢測識別來實現自主移動。但其存在的問題是,如果到了一個新環境,必須要依賴人工布置標注,而若是身處家庭環境或室外環境,我們是很難做到這樣部署的。在工業上也是如此,企業的生產線經常需要調整,如我們的某家合作企業,他們的產線每個月都要進行調整,不能總是把地上的標志揭下來重新進行布置,因而大家都希望機器人能夠在沒有環境標識的情況下實現導航,我們稱之為“自然無軌導航”。它所面臨的挑戰主要有以下四個方面:
一、對環境準確的地圖構建。今天,隨著應用場景的不斷擴散,我們會面臨很多的大環境,且對機器人的定位精度要求高,這當中就會涉及到有關大范圍環境地圖的高精構建問題,且還要實現機器人在大環境里,能夠滿足高精要求下的實時定位需求;
二、環境中間總是有各種動態變化,比如環境中的很多人車,這是即時的快速變化;而這輛車早上停在這里、晚上開走了,或者有堆物料原來放在工廠的這個角落、一個小時后運走了……這些我們稱之為慢的變化;還有如季節、氣候等長期的變化;
三、在環境中有很多物體,特別是對室外導航來說,更需要對這些物體能有敏銳的認知;且在很多情況下,我們會面對一些人機混雜的場景,這都需要我們的機器人能在這樣的環境里實現準確、快速、安全地移動。
就智能移動而言,有一個特例叫做無人駕駛,它所面向的對象是固定的,面向的環境也是明確的。但是拋開無人駕駛,我們的機器人可能面對的是各種不同的對象,有陸地上通行的、空中飛行的、水下的,以及還有陸地上的各種腿足移動機器人等等。我們將它在很多運行過程中所面向的環境稱之為Off-the-road,這當中可能有很多綠化,沒有GPS信號,沒有人做交通管理……而我們所作的,就是讓機器人能夠在這些情況下,實現自己的智能導航。
我們最早從2004年開始,做二維環境的地圖構建和定位導航,這部分技術大概在2010、2011年時已經成熟,并且運用到了兩個產品中去。(看圖)這是當時我們用二維激光畫出的地圖,機器人能夠根據這個地圖,依賴自身的傳感器進行定位,并規劃自身的路徑適應環境的變化,避開有關障礙物,實現快速、安全、平滑的導航。
同時,近幾年我們重點關注于室外機器人的地圖構建和定位導航。最早進行這方面研究時,還沒有像Velodyne的高速旋轉傳感器,且對我們來說,它當時出的64線太昂貴了。于是我們就自己搭,用幾個SICK激光傳感器搭建了一個云臺,再加上一個全景相機,把激光的信號和相機的信號融合起來,就構建出一個全真的環境。但在操作過程中,我們也發現了一個問題,即當機器人的移動速度比激光旋轉速度稍快時,直接將它們的數據合成,就會產生變形。且如果車輛行駛的很快,和Velodyne的速度相近,也會存在這樣的問題。那么如何去矯正數據的變形,確保后面定位的準確性,就成了我們需要解決的問題。而現在,這個問題已經解決了,我們能將原來模糊的激光合成數據形成一個清晰數據,其中包含了數據模型怎么表示,以及它的這種不確定性和如何進行匹配合成等。和國際上最新的NDT相比,我們的產品在收斂率和收斂時間上都表現不錯。(看圖)這是原本在室內很模糊、不清晰的地圖,看不清楚圖中的那個問號是什么,經過矯正后我們就能很清晰地看到它原來是個帶問號的凳子。此處,我們談的是大范圍的環境地圖以及所涉及的高精構建,其數據量很大,因而后期如何控制地圖的復雜度,是否將原來的每一幀數據都放入進去,也就成為了一個問題。假如我們在某個小區域內不停走動,同樣也會得到一個非常龐大的數據規模。而按照現在的方式構建地圖,其數據規模和路徑長度將呈現出非線性的關系,那我們能否將其與我們的檢測范圍形成某種關系?要知道隨著檢測范圍的增長,數據量也在增長。但是在一個重復的地方,有些數據是無需采集,只有到了某些新地方,產生了新數據,才有必要加入進來。在這一方面,我們提出用信息熵的評估量化方式來操作。與其他方法不同的是,我們并不是在最后一幀才去考慮是否加入,而是在對所有數據進行評估后,保留其中信息量較大的數據,去除掉那些信息量最小的數據,包括減少它的節點和邊,從而確保了定位的實時性。
我們在智能移動領域所做第三塊工作,主要是研究如果用視覺來進行室外環境長期運行的話,那么如何來適應周邊環境的變化?因為對于視覺傳感器來說,它的優點是成本低,國外有提出一個非常有名的算法——ORBSLAM,很多企業都在用,包括我的學生也在用。但我們在使用中就會發現,當它的重復性比較少,也就是它沒有進行閉環檢測時,偏差還是比較大;第二,當環境發生變化時,定位的效果也會變得很差;第三,它的計算復雜度也較大。所以對于我們來說,就要解決如何在大環境和周邊環境的變化中降低計算復雜度的問題。對此,我們認為主要在于它采用的是全局地圖,即是全局最優。其實對于定位而言,是沒必要做到全局最優,所以我們提出了全局建拓撲、局部建相對幾何的視覺地圖方式,在進行定位時,我們去融合地圖、融合底層、融合特征匹配并維持它們之間的相對平衡。對于可能是因為環境變化造成的定位效果差的問題,就要考慮如何把這個變化的數據加入進去,且怎樣通過這些不斷增加的變化數據來適應周邊環境的變化。(當然這里的怎么加就要用到我們之前所說的方法。)為此,我們在浙大玉泉校區做了三天21次的測試,最終跟orbslam 相比,我們的定位精度大大提高,從原來的均方差3.762米降到了0.5米以內;第二,計算的復雜度降低了,實現了一個常數復雜度的定位;(看圖)第三,我們從右邊這張圖可以看到,在有記憶的模式下我們能大大提高其定位的準確率,但對于一些特別復雜的效果來說,現在還不能完全解決。(看圖)如這張圖的定位失敗率還是很高,差不多達到0.5,這主要是因為其大面積是路,且路上的環境不斷變化,車子也在不斷移動,因而關于這方面的學習效果還需要進一步提高。
第四塊工作就是對可通行路面的檢測,我們要解決的是如何通過在線的學習來適應光照、場景的變化。另一點就是如何讓機器人把每一次的運行都當成一次經驗,通過累積學習的方法來作為對可行路徑的檢測。對于機器人來說,一次成功就是一次經驗,這樣我們就可以對它進行自動標注,哪段是可行路徑,哪個是障礙物,或者哪些是未知的,然后對每一次的運行進行校準,再把這些經驗累積起來,通過深度學習進行訓練。然后,當我們把它應用到其它未知的環境里時,就會發現效果大大增強了。(看圖)如我們原來是一直走這條路,學習了13次,而當我們把它放到另外的環境時,同樣也能獲得很好的可行路徑檢測效果。我們也將這種方式與之前的方法進行了對比,發現它在弱檢率和漏檢率方面都大大降低了,就像我們人類在學習,不停的有經驗加進來,也會不斷地提高學習的正確性。此外,還有一些工作,就是我們在做的物體監測、跟蹤,確保機器人的實時、安全導航。這里必須要提的一點,就是在相機抖動時,如何實現對目標的穩定跟蹤?現在使用的一些方法都假設運動是連續的,可對于一些事物比如腿足式機器人來說,抖動問題就特別明顯,它在走動時會不停地晃動,就會導致跟蹤的失敗。對此,我們運用了離子濾波融合雙運動模型和雙觀測模型來進行操作,且這些技術已經和一些企業進行了合作推廣。(看圖)如這就是運用我們在二維環境地圖構建方面的技術所生產的變電站巡檢機器人,目前已經在國網、南網里應用了300多臺(套)。第二款是工廠里的搬運機器人,和傳統的AGV不同,它不需要在地面上布設有關標識、二維碼或者激光的導引標志,而是完全由機器人預先構建地圖,然后找到作業的位置進行作業,它能很好地適應周邊環境的變化(這一點在華為的應用上特別明顯,因為其倉庫兩邊堆放的物料經常是大批量進出,所以需要機器人能有很好的適應性)。
迦智室外自主無人送貨車LUNA
(看圖)這是我們給京東做的室外無人送貨車,是我的幾個學生自主創業成立的杭州迦智科技有限公司所做,他們主要是做室內外的物流機器人。這里面也運用到了我們前面所說的一部分技術,即適應大范圍的環境,并適應環境中各種動態變化。我們還把它應用到了四旋翼飛行器和四足機器人的系統里去,讓它能完成一些智能作業,這是在2015、2016年參加空中機器人比賽時的場景,當時也得到了2016年的亞太賽區冠軍,并且獲得了組委會的高度表揚——“Zhejiang University has currently set the performance level for all IARC teams”。
綜上,我們的工作主要就是把人工智能的技術和機器人技術結合起來,去實現智能移動、智能操作和智能運動。目前從移動這方面的技術來看,它的成熟度較好,所以正在由實驗室的技術研究向產品化發展;但是就適應性方面來說,依然還存在很多問題,還需要進一步從技術和產品兩個方面去研究,從而確保它在現實運用中的可靠性和穩定性。