11
上周Google Atlas的視頻放出來后,很多人除了用逆天這個詞來形容Atlas之后就沒法表示自己的驚嘆了:這個怪物可以在山林雪地里健步如飛、這個怪物跌倒了可以自己爬起來、這個怪物用的液壓驅(qū)動好貴吧、這個怪物怎么推它可以不倒的、這個怪物去年6月份還不是這個樣子的……
不論這個怪物在你眼里多么牛掰,內(nèi)行人一句“Atlas最牛逼的地方據(jù)在于它的動態(tài)控制和自平衡能力”就讓你不得不關(guān)注這個所謂的動態(tài)控制和自平衡能力,因為它才是Atlas穩(wěn)如泰山般步履的來源。
對此,聲東擊西的波士頓動力創(chuàng)始人兼主席馬克·雷波特(Marc Raibert) 把這個進(jìn)步主要?dú)w功于:“工程團(tuán)隊做了大量工作,讓Atlas變得更輕更緊湊。我們使用3D打印制作機(jī)器人的腿部,這樣制動器和液壓管可以嵌入腿部結(jié)構(gòu)里面,而不是作為獨(dú)立單元放在外面。此外,我們還開發(fā)了定制版的伺服器,比之前使用的版本更小更輕?!?/span>
但是,對液壓驅(qū)動背后的關(guān)鍵算法卻一直諱莫如深,搜遍各種資料后,馬克·雷波特只告訴我們一句意味深長的話,“這得感謝負(fù)責(zé)控制的團(tuán)隊,他們開發(fā)了新的算法,同時使用了改進(jìn)后的機(jī)器人強(qiáng)度重量比,其他的性能也有進(jìn)步?!敝劣诰唧w算法是怎么樣,IEEE的報道中也沒能透露更多細(xì)節(jié),但是,從小學(xué)開始就擅長解題、擅長破解的天朝人民開始蠢蠢欲動了。
視頻曬出不久后,知乎和朋友圈里就開始各種炸鍋的討論,但一直沒人一針見血說清楚它的算法是個咋回事,各種問A答B(yǎng)的長篇大論讓我們以為這個問題又即將成為又一個機(jī)器圈‘未解之謎’時,我們看到有人在機(jī)器人相關(guān)的群里轉(zhuǎn)老王的挖坑Atlas。
被Atlas刷了屏,忍不住挖了一下。走的好的原因:(1)通俗易懂常識般的控制思想;(2)簡單明了高中生可懂的數(shù)學(xué)模型和控制算法;(3)高超的制造水平和孜孜不倦的調(diào)呀調(diào)。
控制思想來自于jerry pratt,pratt來自ihmc,ihmc的全名是人與機(jī)器認(rèn)知研究所,請記住這個全名吧??刂扑枷胱钤缫娪?006年的論文,鏈接為 http://www.cs.cmu.edu/~cga/legs/Pratt_Goswami_Humanoids2006.pdf, 比較容易讀懂的是2015年公開的專利http://www.freepatentsonline.com/8942848.html。這個控制思想的簡要總結(jié)就是:踉蹌。什么意思呢?就是在行走中遇到干擾要摔倒時,要踉蹌起來,不要再保持優(yōu)雅的姿勢。
踉蹌?如何踉蹌?人在踉蹌時是不會思考這個問題的,但pratt思考了,那就是走兩步,沒病走兩步,不要走一步,不要一步到位,因為欲靜風(fēng)不止,要逐步把外部動量消耗了,再站穩(wěn)腳根。
這個道理很簡單呀,這個為什么沒人想到呢?天知道,在大概70年代左右提出zmp這個籠罩了雙足機(jī)器人無數(shù)年的南斯拉夫人某某某在2000年左右寫了一篇文章,文章中他說:凈顧著打仗了,好久沒灌水了,真沒想到zmp還在活躍著,我都有點不好意思了,當(dāng)然,你們更應(yīng)該不好意思,呵呵。在雙足機(jī)器人領(lǐng)域,把一個機(jī)器人做出來就已經(jīng)很不容易了,像樣的機(jī)器人只集中少數(shù)人手中,so,so,沒有機(jī)器人的混論壇用數(shù)學(xué)灌水,有機(jī)器人的混娛樂圈用姿色弄姿,so,so......
再說數(shù)學(xué)模型,pratt的觀點是:我很笨,我建不出復(fù)雜的模型,我就用個一階線性倒立擺吧,不過,應(yīng)該加個轉(zhuǎn)動慣量,因為人在踉蹌時,用到了這個轉(zhuǎn)動慣量保持平衡,于是在倒立擺的頭上加了個飛輪,ok,模型出來了,ok,用高中物理一推導(dǎo),就搞定了。
好機(jī)器人是制造出來的,沒有聲音再好的戲也出不來,只有造出穩(wěn)定的機(jī)器人來,好思想才能與現(xiàn)實中碰出火花。技術(shù)狀態(tài)不穩(wěn)定的機(jī)器人能碰倒但絕沒火花,就像善變的女人,只有下一件衣服才是最好的那件,這還調(diào)個毛呀。Atlas顯然是一個站起來的野獸,需要估,需要調(diào)。夜以繼日,孜孜不倦,just like me。
第一個挖坑文出現(xiàn)后,雷鋒網(wǎng)聯(lián)系到了這位老王,并將鏈接里的論文掃描了不下10遍,發(fā)現(xiàn)老王上面所說的踉蹌算法主要是Atlas運(yùn)動時候適用的模型,等這個突然靜止或者抱箱子這種半靜止?fàn)顟B(tài)下,這個倒立擺模型怎么有效的?
老王表示只是談?wù)勛约旱睦斫猓ú灰欢ㄕ_):
倒立擺是解決動態(tài)平衡的模型,靜止?fàn)顟B(tài)下用ZMP就ok, 讓重心落在支撐區(qū)域。包括讓一個毫無生命體征的機(jī)器人站起來的原理,也可以用ZMP,只要讓ZMP點(不行走時就是重心)落在支撐區(qū)域。
(按你的挖坑邏輯,如果國內(nèi)也有完美的液壓驅(qū)動,也投入這個精力和財力,我們也能做出那樣的機(jī)器人來嗎?)
老王表示,是的!原理不難,難在工程化。
轉(zhuǎn)發(fā) 浙大熊蓉老師的評價,供各位參考:
浙大熊老師團(tuán)隊的看法:昨天新Atlas視頻出來之后被刷屏了一天,不論是專業(yè)人士還是看熱鬧的都出來冒泡,生怕跟風(fēng)太晚。新Atlas確實在展示性上有了很大的提高,其展示的平衡能力確實達(dá)到了前所 未有的高度,但是一些專業(yè)人士表現(xiàn)出來的對BD一邊倒的仰慕,以及對自身研究的悲觀態(tài)度讓我覺得整個人都不好了。直至看到王博士在微信上分析了Atlas可以行走好的原因,讓 我覺得作為一個學(xué)術(shù)人也應(yīng)該對新Atlas發(fā)表一點看法,在此也向王博士表示敬意!
新Atlas高穩(wěn)定行走有幾方面的特點:
1、從硬件上來說,新Atlas有幾方面的變化,首先Atals的個子變小了,這是出于輕量化考慮,因為老版本的Atals通過外部電源供電,因此身高體重限制沒有那么大,而新Atlas采 用電液驅(qū)動(也即EHA),并自身攜帶電池供電,盡管在噪聲明顯降下來了,但是負(fù)載能力也有所下降,因此需要更輕的機(jī)器人以及短腿不僅可以提高續(xù)航能力,關(guān)鍵是增加或保證 了腿部的動態(tài)響應(yīng),這個是延續(xù)了BigDog系列到Spot機(jī)器人的思路。
在這點上估計人家的關(guān)節(jié)加速度性能比起我們的就要高了一個數(shù)量級,這個很致命,沒有了這條,一切算法都 是浮云啊浮云;其次新Atlas的腿部改用了類似HRP-2的懸臂結(jié)構(gòu),這種結(jié)構(gòu)盡管有很多設(shè)計難點,但是同樣具有仿生效果,人體的髖關(guān)節(jié)就是這樣結(jié)構(gòu),它帶來的優(yōu)勢是擴(kuò)大機(jī)器 人擺腿范圍,尤其是側(cè)擺擺腿的范圍變得更大,這個很重要,機(jī)器人前后方向的平衡好控制,而側(cè)向相對更不穩(wěn)定,擴(kuò)大這個范圍使得機(jī)器人的兩腿可以交叉重疊行走,對于提升 平衡能力很關(guān)鍵,而且這種結(jié)構(gòu)使得腿部的自由度由原來的6個變成了5個(髖偏轉(zhuǎn)省掉了),通過腰部運(yùn)動規(guī)劃就可以彌補(bǔ)了,這個很高明。總得來說,新Atlas的硬件實力確實很強(qiáng),比拼機(jī)器人最后比拼還是基礎(chǔ)研究和基礎(chǔ)工業(yè),這個實在無力吐槽。
2、從控制算法來說,BD采用的方法主要是兩種,牽引控制和落腳地(捕獲點+捕獲域),這次展示的兩個主要亮點是雪地的行走平衡和倉庫內(nèi)的抗外部沖擊平衡。從視頻中可以看到 ,在雪地崎嶇路面行走時,機(jī)器人是腳跟先著地的,而在倉庫平地行走時腳板是完全平著著地的,這是兩種不同的模式,為什么?
先來看倉庫中的平地抗擾動,大家一看覺得這牛逼 得不要不要的,其實實現(xiàn)前后方向抗擾動壓根兒就不是事兒!這里用到的算法就是落腳點選擇的問題,而倒地爬起的動作似乎我們小仿人N年前就做到了,各種RoboCup仿人機(jī)器人 也都是可以完成的基本動作。再來看雪地平衡的問題,在雪地行走時,機(jī)器人是腳跟著地的,可以很明顯地看到,這是有目的的,BD很聰明,因為通過腳跟著地可以把整個足部看 成一個點著,腳板的作用是用于順應(yīng)地形,然后其才是支撐,這種算法跟四足機(jī)器人中通過點式足部著地是不是很相似呢,那么這個算法是不是很難的,我想大家心中應(yīng)該有數(shù)了 ,BD很聰明,這個方法確實也很實用。而這些算法Jerry Pratt都在論文中有提到過,比如“Capturability-based analysis and control of legged locomotion(part1&part2)” 。
2013年,我在實驗室內(nèi)部就提出過一個假設(shè),如果機(jī)器人的平衡問題解決了,那么行走問題就相當(dāng)于一個從平衡到不平衡,再從不平衡到平衡的一個循環(huán),針對這個問題,我們也開展了相關(guān)的工作,這些都是為穩(wěn)定行走做準(zhǔn)備的:“Standing Balance Control for Position Control-Based Humanoid Robot(2013)”,“Compliance Control for Standing Maintenance of Humanoid Robots under Unknown External Disturbances(2014)”,“Push Recovery for Humanoid Robots with Passive Damped Ankles(2015)”,無奈實驗室機(jī)器人不具備抗擾動跨步的能力,但是也開展了理論研究,我們的有博士論文對此有系統(tǒng)性闡述“欠驅(qū)動雙足機(jī)器人冬天步行規(guī)劃與抗擾動控制(2015)”,在受擾動時走一步不行,就走兩步,兩步不行就走N步;以及最近面向崎嶇路面的論文“Walking Algorithm of Humanoid Robot on Uneven Terrain with Terrain Estimation(2016)”。如王博士所言,BD的算法不一定超級牛逼,但是簡單明了,甚至是通熟易懂,沒有大家想象的甩你幾百條街那么夸張。
3、最后是調(diào)試調(diào)試再調(diào)試,經(jīng)驗總結(jié)都是從調(diào)試中摸索出來的,天下沒有理想的機(jī)器人,只有調(diào)試出來的機(jī)器人,好的機(jī)器人是要不斷改進(jìn)不斷制造出來的。最后想說一句,盡管差距是存在的,但也無需悲觀。
事后,雷鋒網(wǎng)試圖聯(lián)系浙大的熊蓉老師進(jìn)行進(jìn)一步了解,不知何種原因,熊老師那邊表示暫時不接受采訪,對此,北理工智能機(jī)器人研究所的孔祥戰(zhàn)博士看過這個評價后,表示熊老師說的相對客觀。
哈工大深研院機(jī)電工程與自動化學(xué)院教授朱曉蕊看過之后則表示,熊老師是做這個細(xì)分方向研究的,所講的總體值得信任。
在上周融智特種機(jī)器人聯(lián)盟和RT創(chuàng)投咖啡舉辦的機(jī)器人大講堂活動上,北航機(jī)器人研究所所長兼Ninebot博導(dǎo)王田苗在現(xiàn)場表示
過去 150公斤,現(xiàn)在只有 80 公斤,它在靈活度上是靠什么能夠站起來,往前走,它很少發(fā)表論文,很少有專利,很多企業(yè)家和學(xué)者進(jìn)行猜想。有的學(xué)者說它用了很多的理論,又有的企業(yè)家說其實很簡單,就是多傳感器高速的控制來調(diào)整它。另外有人看見它在雪地里走,發(fā)現(xiàn)它在雪地里走頭不動,說人在雪地里走不可能不動,所以有人質(zhì)疑你放的錄像背后可能是有人遙控的。又有人說機(jī)器拿盒子,它是識別 LOGO,還是識別箱子,性質(zhì)是不一樣的。我們知道識別 LOGO 是比較容易的,顏色,包括圖案,一旦識別箱子它是形狀,有不同的角度,要分析箱子多重。又有人對它的骨骼做了研究,得出結(jié)論是它必須采用液壓,我們稱為數(shù)字液壓。但是 CEO 創(chuàng)始人告訴我們他說他采用的是 3D 打印,意思就是說在液壓外面他運(yùn)用了一些硅膠材料把它直接打印在上面,而形成了一種能夠支撐又能夠防碰的機(jī)構(gòu)。當(dāng)然這都是由于它的出現(xiàn)人們對它的一種猜想。
不管怎么樣說,我們認(rèn)為它對機(jī)器人軀干和動力學(xué)建模的控制還是形成了里程碑的意義。有一個詞叫做極致穩(wěn)定、走向?qū)嵱?,其實這是記者的希望,現(xiàn)實很遠(yuǎn)很遠(yuǎn)。如果大家有幸打開它看的時候,首先第一件事情噪聲還是很大的,要是在現(xiàn)實中應(yīng)用怎么可能。如果大家再仔細(xì)看看它的成本,不亞于小汽車。如果大家再看看,它真的能夠非結(jié)構(gòu)化嗎?可能也不見得。它為了那段錄像可能會準(zhǔn)備很長時間,而現(xiàn)實走在家庭里,走在社會里可能還有很多工作。我的意思是說作為新型的走向?qū)嵱玫姆氯诉€有一段時間需要努力奮斗,當(dāng)然我們還知道有仿人、仿聲、軟體機(jī)器人。
王田苗指出Atlas的里程碑意義,但與此同時,他也指出這個機(jī)器人在現(xiàn)實中的應(yīng)用還很遙遠(yuǎn)。對此,北理工的孔祥戰(zhàn)博士表示,在大型仿人機(jī)器人的技術(shù)研究上,國內(nèi)哈工大、北理工、浙大以及國防科大在這方面都有了比較好的積累,對于老王和熊蓉博士兩位專業(yè)級人士對Atlas異口同聲的不崇拜態(tài)度,和其它一些專業(yè)人士和大多數(shù)讀者表現(xiàn)出來的一邊倒態(tài)度,孔祥戰(zhàn)博士是這樣理解的:
不了解這個行業(yè)的人,都覺得這個機(jī)器人會對中美兩國仿人機(jī)器人的差距構(gòu)成很大威脅,在我們眼里這玩意要上戰(zhàn)場至少10年20年,在我們眼里,人類更應(yīng)該擔(dān)心AI層面的。
聽到上述人士對Atlas的各種見解,雷鋒網(wǎng)打開了pratt 2006年的那篇最早的論文(http://www.cs.cmu.edu/~cga/legs/Pratt_Goswami_Humanoids2006.pdf)。
文章在開篇說明中就介紹到:This paper seeks to……——如何學(xué)會使用Capture Points(捕獲點)這個概念,并在進(jìn)一步的釋義中提到,Capture Points是機(jī)器人為了 保持平衡的前可以落腳的點,而Capture Region式機(jī)器人所有可以落腳的點的集合。這個跟浙大熊蓉老師講的“牽引控制和落腳地(捕獲點+捕獲域)”不謀而合。
論文里反復(fù)提到了線性倒立擺模型(Linear Inverted Pendulum Model)這個闡述解決capturability核心問題的數(shù)學(xué)模型;
也明確指出人類行走時會通過前傾或者擺動手臂的方式來利用角動量(=轉(zhuǎn)動慣量*角速度 )(make use of angular momentum to maintain balance)來保持平衡,當(dāng)這個模型是靜止?fàn)顟B(tài)的時候,還沒有角速度,我們只需把轉(zhuǎn)動慣量考量進(jìn)來,跟老王挖坑最后一段里說的轉(zhuǎn)動慣量是同一個東西。
只是雷鋒網(wǎng)疑惑的是,這個倒立擺模型一直討論的問題是機(jī)器人在動態(tài)行走中如何保持平衡,那突然靜止或者抱箱子這種半靜止?fàn)顟B(tài)下,這個倒立擺模型怎么有效的?因為國內(nèi)沒有實際做這個Atlas機(jī)器人,沒有實際經(jīng)驗來回答這個只需have a try或者用在米國用排除法就難簡單解決的問題!
所以就有了老王上面的那段ZPM和capturability兼具的猜測。又或者說,熊老師在提到機(jī)器人的平衡問題時,只說“我們開展了相關(guān)工作,都是為穩(wěn)定行走做準(zhǔn)備的”,而沒有一個肯定的結(jié)論,也跟我們差了一個實踐過程脫不了干系。
花了這么多腦細(xì)胞研究,最后我們想對Atlas這次需要在意的地方和不需要那么在意的地方做一個梳理,讓大家對Atlas有個更客觀的認(rèn)識。
1. 追箱子。不管Atlas是用二維碼定向定位的方式,還是視覺跟蹤的方式,你想想現(xiàn)在自動駕駛牛逼的跟車功能,怎么說這都不是焦點。
2. 人否人工干預(yù)太多。Atlas的視頻剛出來的時候,有人質(zhì)疑Atlas在戶外雷達(dá)沒轉(zhuǎn)是不是有人拿著遙控在干預(yù);有人質(zhì)疑它完成的搬盒子動作看起來是自動的,但它將盒子放置到貨架上時屏幕后方到底發(fā)生了什么?當(dāng)然這些質(zhì)疑都是完全有必要的,但把重心放在這些瑣碎問題上有點本末倒置的傾向。
1. 液壓驅(qū)動。Atlas之所以這么牛逼,是基于液壓這個高負(fù)載驅(qū)動,在不漏油、工藝精致、不擔(dān)心成本的基礎(chǔ)之上再開發(fā)算法的,在知乎工程師任賾宇表示光漏油一項就讓他們頭痛不已的現(xiàn)狀下,承認(rèn)它牛掰并沒有什么可恥。
2. 倒地爬起不一定簡單。雖然RoboCup比賽里聲名斐然的Nao機(jī)器人可以輕松爬起來,但一個小仿人機(jī)器人,一個是大仿人機(jī)器人,按小仿人機(jī)器人和大仿人機(jī)器人保持平衡的難度系數(shù)推斷,它們兩者爬起來的難度也不是一個量級的。另外,去年6月份DARPA挑戰(zhàn)賽現(xiàn)場的時候,Atlas摔倒后是爬不起的,如果爬起來很簡單,Atlas也沒必要把這個很簡單的功能當(dāng)法寶這次才展現(xiàn)出來。
3. 控制算法。因為波士頓方面沒公布,我們目前并不確定,它是ZMP和capturability結(jié)合,還是基于capturability算法又做了什么簡化改良,總之按視頻里Atlas的表現(xiàn),這套算法相當(dāng)?shù)呐!?特別是jerry pratt在2012年又放出了captureability論文的part 2 , 有志之士可以看完這篇論文后再來發(fā)表你們的新意見~
4. 整合能力。無論如何,雷鋒網(wǎng)堅持認(rèn)為,Atlas在視頻中表現(xiàn)出的抗外部沖擊、倒地爬起、雪地健步如飛、搬箱子這些動作按現(xiàn)有技術(shù),一一分解看起來難度不是那么大,但你若能用同一個機(jī)器人,消耗全部的這些分解動作,這背后強(qiáng)大的整合能力,也就是兩位專業(yè)人士強(qiáng)調(diào)的調(diào)阿調(diào),這種枯燥而瑣碎的付出,或許才是Atlas真正一炮而紅的法寶。
最后,雷鋒網(wǎng)要告訴大家的是,這篇6000多字的文章僅僅是這個開放式探討話題的開始,我們歡迎更多對對Atlas控制算法和牛逼細(xì)節(jié)有看法的人士加入這個探討,也包容錯誤的可能性,因為我們要靠近一個真相——讓Atlas不再神秘!
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。