特別節目·中文精讀

維賈伊·庫馬爾:飛行機器人

Vijay Kumar: Flying Robots

探討自主飛行機器人的設計與控制,從叢集協作到災後搜救,講清技術難點與落地應用。

官方音訊00:00 / --:--
中文精讀由 AI 基於原始訪談改寫,非官方翻譯,可能存在偏差或錯誤;表述以原音訊與官方文稿為準。說明

維賈伊·庫馬爾(Vijay Kumar)不喜歡"drone"這個詞。

在他聽來,它自帶貶義:笨的、被預先程式設計好的、只會重複做一件小事的機器。

"'無人機'對我來說是個貶義詞,它意味著愚蠢、預程式設計、只做一件事。而機器人恰恰不是無人機。"(維賈伊·庫馬爾)

他認可的準確說法是空中機器人(aerial robot),前面最好再加兩個定語:敏捷的、自主的。

庫馬爾是賓夕法尼亞大學教授、Penn Engineering 院長,也是 GRASP 實驗室(General Robotics, Automation, Sensing and Perception Laboratory)的前主任。這個實驗室 1979 年成立,比很多做機器人的工程師年紀都大。他最出名的工作是多機器人系統、蜂群,以及能在真實世界的不確定性裡優雅協作的微型飛行器。

七千磅的六足怪物

庫馬爾參與建造的第一臺機器人,是一臺重約七千磅的六足機器。

它靠液壓驅動,18 個液壓馬達,每個馬達配一顆獨立的 Intel 8085 或 8086 處理器,另外還有第 19 顆處理器專門負責這 18 個關節之間的協調。他那批同事寫出的多處理器作業系統,按他的說法可能是歷史上最早的一批。

這些晶片的主頻大約 0.5 兆赫茲。為了讓關節之間保持同步,訊息得每秒傳遞上百次。

他的博士論文研究的是怎麼協調這 18 條腿,特別是液壓缸裡的壓力,讓整臺機器走得更省力。

多年後回頭看,他覺得這東西本來應該小得多。今天的機器人確實小得多,波士頓動力(Boston Dynamics)、從賓大分出去的 Ghost Robotics 都是例子。但在那個年代,你能用的計算基底就那樣,感測器就那樣,一切都大得沒有必要。

"但人類的心理就是這樣,大往往意味著宏大。人們對奈米技術和奈米器件的欣賞,從來比不上對太空梭或者波音 747 的欣賞。"(維賈伊·庫馬爾)

而庫馬爾後半生的工作,幾乎都在證明小可以很美。

螞蟻的民主,比我們做得好

Lex 問他,見過的最美的機器人動作是什麼。他沒挑某個具體的機器人。他講的是小飛行器在空中編隊、組成三維圖形的能力。

2011 年他們做出這件事時,還是個大新聞。八年後的今天已經很平常。在那之前他們做的是二維版本:地面機器人排列成圖案。二維好看,但在半空中懸停著擺出立體圖形,性質就不一樣了。你可以在天空中憑空造出物體,而且能現場改變它的形狀。

"對工程師而言,美和旁觀者眼裡的美是兩回事。我說的美,是你能在半空中得到物理形狀,並且讓它變形。"(維賈伊·庫馬爾)

他最常拿來做類比的是螞蟻。

單隻螞蟻的結構可以說非常簡單,但作為個體極其強壯:六條腿斷掉一條,它照樣走,甚至可能都不知道自己少了條腿。這是個體層面的魯棒性。

更驚人的是蟻群層面的自我保全本能。洪水來了,它們會互相勾連成一張網渡過缺口;發現大塊食物,它們會招募同伴一起搬運;出去覓食時朝不同方向散開,最後還能達成共識。而它們彼此之間並不像人類這樣直接溝通。

"某種程度上,它們比我們更懂民主。"(維賈伊·庫馬爾)

Lex 順著問:看著這些生物蜂群或者機器人蜂群,你會不會把它們當成一個有生命的單一智慧體?就像把人類文明看成一個大生物?

庫馬爾的回答很工程師。

他說,工程師要做的恰恰是超越個體元件,把一群東西當成一個整體來看,不去糾結單個零件在幹什麼。如果你執著於建模每一個個體,數學上立刻就會爆炸。十個個體就是十重笛卡爾積,在這個高維空間裡做設計或綜合,難到沒有意義。

正確的做法是把個體設計得足夠聰明,讓它們在高層次上被抽象成低維空間裡的東西。

落到具體設計上,就是兩件事:讓每個個體看世界的方式儘可能區域性;讓每個個體對碰撞儘可能魯棒。一隻螞蟻出了事,整個蟻群不能跟著崩。

庫馬爾說,工程師其實一直在做這種抽象。飛機、iPhone 都是這麼造出來的:把工程良好的元件,透過定義良好的介面連起來,行為可預測,就能搭出複雜系統。電腦科學家也一樣。

差別在於,蜂群系統除了要求個體魯棒,還要求群體具備韌性:能重新和鄰居建立通訊,能重新思考群體策略,能重新組織自己。難就難在這裡。

自然在解題,我們在接單

那麼一群飛行機器人要組成編隊,究竟需要多少資訊?沒有中央控制器怎麼辦?

庫馬爾分了兩條路來講。

如果你是純粹主義者,會想去複製自然。自然界群體形成的動機基本只有三個:庇護、食物、繁衍。所有互動都是有機的、區域性的,共享的資訊也大多是間接傳遞的,目的無非是維持群體的存續,或者找新的食物、新的巢穴。

但工程上的蜂群是有任務的,而且任務大多和移動有關,往往在一個全域性座標系裡描述。

"包圍這棟樓,阻止入侵者",這句話天然就是在以建築為中心的座標系裡說的。你得告訴機器人樓在哪裡,它們得在全球範圍內協作維護一張關於這棟樓的地圖,這是顯式構建的資訊;自然界的做法則是隱式湧現。

"自然極其精密,但自然要解的任務,和我們被迫處理的工程任務非常不同。"(維賈伊·庫馬爾)

還有一個現實差異:自然對個體的損失不太敏感,工程卻對損失個體很敏感,因為貴。

不過庫馬爾補了一句:機器人元件的價效比曲線正在急劇下降,而且會繼續降。我們會漸近地逼近一個點,在那個點上課,單個個體的成本變得可以忽略不計。

這句話的分量比他語氣裡透出來的要重。整個蜂群研究的合理性,某種程度上建立在這個前提上。如果一臺飛行器的價格長期停在幾十萬美元,那麼"允許個體犧牲"這套仿生策略在經濟上永遠只是實驗室裡的遊戲。

什麼才叫真正的自主

庫馬爾把天上的自主飛行器分了幾類。

最出名的是軍用飛行器:由地面站控制,但有大量人工監督,自主性很有限,無非是從 A 點飛到 B 點。更先進一些的型號能自主起降,通常帶機翼、很重。直升機也能做到這一點,軍用領域已經有自主直升機。民航的自動駕駛儀其實是一個道理。

他甚至提出一個有意思的問題:如果把歷史上的航空安全事故翻出來看,有多少起在飛機真正自主的情況下根本不會發生?他的判斷是,相當一部分事故源於飛行員的判斷失誤,人會做蠢事。

所以即便在商業航班裡,高空巡航時能開自動駕駛,人類的角色依然存在。

但實驗室裡可以激進得多。他們想問的是:機器人能不能不依賴任何外部基礎設施來做決策?

今天飛機最依賴的基礎設施是 GPS。而 GPS 是一種非常脆弱的資訊來源。在城裡開車導航一下就知道,高樓一擋,訊號立刻就沒了。

第二樣是通訊,而通訊極其容易被幹擾。Wi-Fi 會掉線,手機訊號會掉線,把安全押在這上面不靠譜。

第三樣他不太願意稱之為基礎設施,但確實是:人。你可以依賴某個飛行員來操控你。

把這三樣全部拿掉呢?沒有飛行員,沒有和任何基站的通訊,沒有位置資訊,沒有先驗地圖,也沒有任何關於環境長什麼樣的知識,機器人還能不能導航?

"那才是真正的自主。"(維賈伊·庫馬爾)

敏捷不是為了破百米紀錄

為什麼強調敏捷?

因為機器人應該能進入受限環境。像全球鷹(Global Hawk)那樣飛,工作條件是極其苛刻的。但如果要進到建築內部做搜救,去找一個正在行兇的槍手;或者要在果園的樹冠下面穿行,看作物長得好不好,數果子,量樹幹,那就必須有敏捷性。農業裡的這些事,他的團隊都做過。

"敏捷不意味著你能破百米紀錄。它真正意味著,你看到意料之外的東西,還能安全地機動,並且用最有效的方式拿到你要的資訊。"(維賈伊·庫馬爾)

順帶一提,他可能是唯一一個在 TED 演講裡用數學公式的人。策展人克里斯·安德森(Chris Anderson)明確告訴他不能放數學,他還是放了。理由很直白:這就是他的工作,他得讓觀眾嘗一口數學的味道。

為什麼是四旋翼

讓一個四個電機的玩意兒飛起來,需要什麼?

庫馬爾說,他們從 2000 年就開始嘗試。當時做不成,一部分原因是感測器和計算機的水平不夠。

2000 到 2007 年之間,很多事情同時發生了。摩爾定律是一方面,但 2007 年是個真正的轉折點:iPhone 那年,雲端計算那年,慣性測量單元(IMU)也在那幾年真正成熟。

IMU 成熟的背後有一條意想不到的鏈條。

美國聯邦政府,尤其是 DARPA,投了很多錢。但他們投錢的時候,並沒有預見到小型飛行器會因此起飛。真正把加速度計成本打下來的是別的東西:每個汽車廠商都被要求裝安全氣囊,而安全氣囊必須在車上裝加速度計。海量的汽車需求,把感測器的價效比一路壓了下去。

"這就是研究的有趣之處:結果極難預測。聯邦政府花大錢做那些他們以為有用的東西,結果意外地讓小飛行器成為可能。而我當年如果去申請經費說'請資助我們開發低成本 IMU',是永遠要不到那麼多錢的。"(維賈伊·庫馬爾)

2007、2008 年,他們終於能把這些東西做出來。

而今天,一切都是商品化的。一個高中生拿一套樹莓派(Raspberry Pi)套件,就能把底層功能搭起來,因為大部分環節已經自動化了。

但原理沒變:把電機驅動到正確的轉速和速度,產生正確的推力,從而把機身定位和定向到你需要的位置,才能飛。

反饋來自機載感測器,IMU 是其中重要的一環,它告訴你加速度和角速度。除此之外還需要某種區域性的位置或速度資訊。

人類走路的時候,其實一直在做這件事:我們大致知道自己的步幅,視網膜上有畫面掠過的流速,內耳裡有加速度計,大腦把這幾路資訊融合起來,判斷自己走到哪兒了。機器人必須做類似的事:一個攝像頭或別的什麼測速度的感測器,再加一個全域性參考系,如果你想在世界座標系裡做點事的話。

四旋翼的精妙之處在於,它只有四個輸入,卻要控制六個自由度。

第一次想會覺得彆扭:只有四個電機,怎麼橫著走?其實不難。四個槳朝上,怎麼原地繞豎直軸轉?把它們的轉速調成不一樣,就會產生反作用力矩,機身就轉起來了。

從工程角度看這是個相當最佳化的構型:簡單、巧妙、通用。

四旋翼這個構型其實有上百年曆史,很多人試過,成功的不多。庫馬爾他們最早的設計是全向飛行器:八個旋翼均勻分佈在一個球面上,理論上朝哪兒飛都行。真正的問題在於推重比不夠,而且沒有合適的感測器。研究旋翼飛行器的人早就知道四個旋翼能成事,只是要等到機載感知和計算都跟上,才能做出他們想要的那種敏捷機動。

那件事發生在 2007 到 2009 年,在他們自己的實驗室裡。

空氣從來不聽你的話

從 A 點到 B 點,中間要先規劃軌跡。

庫馬爾說,規劃是機器人學最基礎的問題之一。十年前它還顯得很玄,今天因為自動駕駛,所有人都能理解:一輛車看到一堆東西,得保持車道,可能還要變道或右轉,它得規劃軌跡,要安全,要高效。

他們的目標是安全且最優的平滑軌跡。安全不能妥協,最優則可以退化。因為你有時間預算,做不到全域性最優,只能做到夠好。所謂高效,可以是儘快到達,可以是姿態儘量優雅,也可以是能耗盡量低。

然後是學習。

Lex 問,深度學習、強化學習在飛行機器人裡有沒有位置。庫馬爾先反駁了半句:其實他們一直沒把"學習"叫成學習。

就以穿越受限空間為例。第一次嘗試幾乎肯定會失敗。原因是,要做到完美,你得把環境裡的一切都建模清楚,而飛行的氣動效應是出了名的難建模。

他接受採訪時正在跟學生討論一件事:槳葉在低空飛行時會輕微拍動彎曲,這會改變旋翼飛行器在角方向上的加速方式。他們的模型假設槳葉是剛性的,但事實並非如此,飛得快的時候,這種效應就變得顯著。

貼近地面飛,你會被地面推開,這是每個飛行員都知道的地面效應(ground effect)。很少有人想過的是貼近天花板時會被吸上去。靠近牆面有壁面效應。坐火車時對面來車,車身會晃動。

這類微氣候效應,不能說完全沒法建模,而是要把模型和軟體的精度做到那個程度,工程量巨大,而且極其枯燥。

"所以我們的做法是,隨著時間推移,學會適應這些條件。我們很早就用了一種叫迭代學習的方法:如果你想完成一個任務,總有那麼幾個引數需要反覆調整,調著調著,你就摸清了。"(維賈伊·庫馬爾)

他說,這個叫法也可以寫成策略梯度,寫成強化學習,但本質上就是迭代學習。

至於今天的自動駕駛,他觀察到學習發揮作用的地方几乎全在感知這一側:計算機視覺這十年進步驚人,識別、檢測、分類、打標籤,都是機器學習做的。

而在動作這一側,他沒見過哪個實際部署的系統,能在脫離單次示教的情況下真正學會正確行為,實驗室裡的成果不算。

這是聖盃:能不能端到端?從畫素直接到電機電流?

"這真的非常非常難。往前走,正確的思路是讓資料驅動的方法和基於模型的方法協同,而不是互相取代。"(維賈伊·庫馬爾)

從 90% 到 99.9%,是一條指數曲線

談到感知的極限,庫馬爾舉了一個他自己公司的例子。

他參與創辦的 Exyn Technologies 做井下作業。礦井裡又黑又髒,螺旋槳的下洗氣流會揚起塵土。你讓計算機視覺演算法在這種地方工作試試?他們只能改用鐳射雷達。

但在室內、在田野裡飛行,他認為純靠計算機視覺有相當大的潛力。

真正的麻煩在別處:只靠單一感測模態、只靠學習,你能把所有邊角情況(corner case)都找出來嗎?

他的直覺是,這套邏輯遲早會飽和。

遇到一個演算法處理不了的邊角情況,你的本能是去弄點資料,把它補上。但走到某一步就走不動了。今天的視覺演算法能識別 90% 的物體,或者 90% 的時候能識別出來,分類也差不多。在網際網路上認貓,也許能到 95%。

可從 90% 到 99%,你需要多得多的資料。如果這是安全攸關的應用,99% 都不夠,你還要從 99% 到 99.9%,那就要更多的資料。

"如果橫軸是精度,縱軸是資料量,我相信這條曲線是指數型的。"(維賈伊·庫馬爾)

即便它是線性的,都很難受。指數型的,就更別提了。

而且還有第二個維度:這個過程極其耗電。這裡說的電是字面意義上的電,沒有一點比喻成分。

他給了一個資料:2014 年,美國全社會用電量的 2% 來自資料中心。這是五年前的數字,但它已經足夠說明問題。

我們習慣把它當成一個資訊科學、資訊處理的問題,可它實質上是一個能源處理的問題。如果找不到更高效的路徑,這條路走不通。

自動飛行和自動駕駛,誰更難

庫馬爾認為自動飛行有幾處天然優勢。

如果只是從 A 到 B,飛行有一條極其安全的軌跡:垂直升到最高高度,水平飛到目的地上空,再垂直下降。這個過程完全可以預先程式設計。

自動駕駛裡找不到這麼幹淨的等價方案。你在地面上,在一個二維曲面上運動,二維曲面上的軌跡碰到障礙的機率大得多。這一點直覺上成立,數學上也成立。

但飛行也有它的劣勢。

在三維空間裡,你不只要避免撞上東西,還要對三維世界做推理、在裡面工作。三維建模本身就比二維難得多。另一重劣勢是氣動:只要你飛,就得跟空氣動力學的種種怪脾氣打交道。

說起來,這個對比裡藏著一個反直覺的地方:飛行的自由度比地面多,需要擔心的障礙反而更少。二維平面上的機器人被壓縮在一個薄層裡,所有東西都擠在同一個平面;三維空間把交通分散開來,垂直方向的"車道"幾乎是無限的。難度跟自由度數量關係不大,起決定作用的是這個環境有沒有被結構化過。

真正卡住飛行器的,是電池

庫馬爾非常看好配送。

在香港那種地方,過一條河可能要半小時,飛行器最多五分鐘。他還和一個叫 WeRobotics 的非營利組織合作,在秘魯亞馬遜地區,那裡的高速公路就是河流,從一個點到另一個點要五個小時,飛行器三十分鐘。

送藥、取回樣本做疫苗檢測,潛力巨大。

"這個領域真正的瓶頸在經濟學,技術層面的挑戰反而沒那麼大。"(維賈伊·庫馬爾)

但有一件幾乎沒人認真想的事:電池技術並沒有取得巨大突破。

電池在變便宜,因為超級工廠建起來了,但底層還是鋰技術。

他點了兩個根本性的限制數:能量密度和功率密度。

功率密度之所以重要,是因為絕大多數飛行器要垂直起飛,沒有跑道。在小尺寸下,垂直起飛大約要消耗每公斤 200 瓦。

這個數字有多誇張?整個人腦的功耗不到 80 瓦。

"只是把自己抬離地面,就相當於點了兩三個燈泡。這在我看來毫無道理。"(維賈伊·庫馬爾)

功率決定你能不能飛起來,能量儲存決定你能飛多遠。兩個都是硬約束。

關於飛行汽車,他的態度是謹慎的樂觀。

很多公司都在承諾,說它們是自主的、電動的、乾淨的。他覺得自主這塊是可行的,電動這塊存疑。他合作的另一家公司做小型噴氣發動機,能輕鬆跑到 50 英里時速、抬起 50 公斤,效率很高,缺點就是比電動車吵。用化石燃料,飛行汽車立刻變得可行,這才是真正的挑戰所在。

他也不認為飛行汽車只能是旋翼機。垂直起飛,然後變形進入前向飛行,這裡面有很多有趣的設計空間。

至於那些瘋狂的想法,他的說法是:

"有很多聰明人在做這件事,當塞巴斯蒂安·特龍(Sebastian Thrun)這樣的人在做的時候,你永遠不要說某事不可能。我認為這是可行的。"(維賈伊·庫馬爾)

人類從來不是噪音

很多機器人研究者覺得,人加進系統裡就是一團亂麻,最好在做具體任務時把人排除出去,因為人太難建模,只會帶來不確定性。Lex 把這個問題拋給了庫馬爾。

他的回答很直接:我們永遠不該設想一個沒有人的機器人系統。機器人存在的理由,就是替人解決問題。但這個問題不存在通用解。

他把人機互動分成三種模式。

第一種,人指揮機器人。第二種,人和機器人協作,比如他的團隊研究過機器人怎麼和人類一起抬東西、搬東西,那才是真正的協作。第三種,把人當作旁觀者,自動駕駛就是這一類,問題變成車怎麼意識到人的存在。

不同的場景對應不同的模式,很難有一套通用理論。但同樣荒謬的是,把機器人當成跟人無關的東西來思考。

"對我來說,人機互動幾乎是我們做的每一件事裡都繞不開的一環。"(維賈伊·庫馬爾)

談到自動駕駛的 L2 和 L4 之爭,庫馬爾點出了一個很實際的問題:把控制權交給機器,然後在需要的時候再接回來,這件事比聽起來難得多。他自己開過高速,知道那種感覺。特斯拉的方案有意思的地方在於,它讓人和車週期性地保持某種接觸。豐田則在推共享自主,或者說協作自主,這也是一種非常樸素的人機協作形式,因為任務本身足夠無聊:坐進車裡,從 A 開到 B。

他覺得更有意思的是搜救。

人類第一響應者和機器人第一響應者同時在現場,樓在燃燒,可能剛發生過爆炸,結構已經坍塌,你只有兩分鐘。這種高度非結構化的場景,才是真正值得做的問題。

他還提出了一個反向的問題:我們總在想機器人怎麼能估計車和環境的狀態,那如果車反過來估計人的狀態呢?

手機早就在做類似的事,猜你在幹什麼,給你推提醒。人開車的時候,一直在估計車和環境,那如果車反過來看你在不在看路、看你的眼球、看你的方向盤動作呢?

"我說的是一個反向的問題。那屬於人的建模,而我認為機器人在給人建模這件事上能做得非常好。"(維賈伊·庫馬爾)

他描述的框架是:一個人坐在駕駛艙裡,被一圈感測器盯著,車外還有一堆感測器在盯著他。這種雙向的注視,他覺得裡面有很大的協同空間。

Lex 把這件事命名為一種新的心理學,由 AI 驅動、針對人的實時建模。

擔心什麼,就說出來

談到公眾對機器人的恐懼,尤其是波士頓動力那類會走路的機器,和庫馬爾手上這類會飛的機器,Lex 問他怎麼看這些恐懼,自己有沒有類似的不安。

庫馬爾承認,任何一項被寄望於產生正面影響的技術,都存在被濫用、被用在對抗性場景裡的可能,機器人也不例外。

他說得非常具體:機器人很容易被武器化。

"像蜂群這樣的東西,我們做出來讓它可靠地工作是極其困難的。但如果我的目標只是摧毀某個東西,而蜂群裡只要有一個能到達目的地就行,那這件事立刻就變得可行多了。"(維賈伊·庫馬爾)

這是一句值得停一下的話。

它揭示的是同一項技術在不同目標函式下的難度落差。做防禦的人要讓整個蜂群都抵達、都協同、都不出錯;做攻擊的人只需要一個成功。冗餘在防禦裡是成本,在攻擊裡是優勢。

美國國家科學院出過一份關於反無人系統技術的報告,他認為這確實是一個真實的威脅。而他們自己的做法是:在研究蜂群的同時,也研究怎麼對抗蜂群。知道蜂群怎麼工作,知道自主性怎麼工作,這本身就是防禦的前提。

然後是那句他最常說的話。

"這項技術總得有人去開發。你難道不希望是好人來做嗎?好人懂了技術,才能看清這項技術正在被怎麼用、可能被怎麼用,然後想辦法防住它。"(維賈伊·庫馬爾)

Lex 接著問,這就不只是政客的事了,工程師也有責任參與討論。

庫馬爾的回答不留餘地:政客可以對技術保持無知的時代已經過去了。

他有一個說法,技術是新的博雅教育(liberal art)。每個人都該理解技術將如何改變自己的生活,而不只是讓專家去理解。

他還補了一句半開玩笑的話:也許我們也該選幾個工程師進政府。

機器人在停車場能做到 L5,但那不勒斯做不到

Lex 請他談談機器人學裡最大的開放問題。

庫馬爾把問題重新表述了一遍。

今天的機器人,還是高度針對特定任務和特定場景定製的。真正懸而未決的是:怎麼讓它們在更寬泛的場景裡工作,而且是那種會不斷變化的非結構化環境。

他舉了自動駕駛的例子。在停車場裡,我們今天就能做到 L5 級的完全自主。可你能在那不勒斯的街頭做到 L5 嗎?在孟買呢?

答案是顯然的。

"當我們談機器人時,必須談它在哪兒工作、什麼樣的環境、什麼樣的任務。而我們完全不知道該怎麼把這三件事放在一起考慮。"(維賈伊·庫馬爾)

他順帶吐槽了一句當下對 AI 的過度解讀。人們說計算機已經能在任何棋類遊戲裡打敗人類,所以我們一定對智慧有所理解。庫馬爾覺得這話不成立。

棋盤遊戲是高度結構化的。它更像亨利·福特的流水線:零件送過來,你裝配,然後再來一遍。結構化程度最高的場景,恰恰是最容易的,而我們已經知道怎麼做。

真正的問題是另一些場景:沒有規則、沒有邊界、沒有穩定分佈、沒人在旁邊給你標好資料。這些恰恰是機器人要面對的大部分現實。

先學會忘掉你今天學的東西

給一個剛進大學、對機器人或工程感興趣的新生,庫馬爾給了三條建議。

第一條,接受一件事:無論你哪一年畢業,等你畢業的時候,世界已經不是現在這個世界了。

這件事做起來非常難。所以他建議把"預測未來"變成一種習慣。他看重的,是這個過程能磨利你的感知,讓你變得更聰明。

第二條,是第一條的推論:你根本不知道將來什麼會重要。

所以"我要專攻某個方向,好讓自己往某條路走"這種想法雖然也有道理,但同樣重要的是保持廣度,讓自己始終有一個可以起跳的支點。

第三條,他認為是賓大最擅長的部分:工程教育始終放在博雅教育和社會語境裡。作為工程師,不能丟掉這個視角。

然後他提到一件他覺得被嚴重低估的事:數學基礎,以及表示(representation)的重要性。

他說得很不客氣。所有問題都能靠在網上翻一個 ROS 包來解決,或者找一個現成的深度神經網路頂上,這種想法行不通。表示這件事是繞不過去的,哪怕在機器學習裡也是這樣:如果你真的想走到可解釋 AI(explainable AI),那麼你遲早需要某種人類能理解的表示。

"所以,如果你想做機器人,你也應該學數學。"(維賈伊·庫馬爾)

Lex 順著他的話打趣:那想造機器人,是不是也該讀讀陀思妥耶夫斯基?

庫馬爾同意了。

把這場對話裡的方法抽出來

這場對話裡最有價值的,未必是那些關於飛行器的結論,而是庫馬爾做判斷時用的那幾個動作。它們可以直接搬到別的領域去用。

  • 檢查你依賴的基礎設施有多脆弱。他把自主性拆成 GPS、通訊、人類操作者三層,逐層問"這個東西被拿掉會怎樣"。你在自己領域裡的三層基礎設施是什麼?哪個被拿掉之後你還有辦法工作?
  • 看清同一個目標函式下的難度落差。同一個蜂群,要求全部抵達和只要求一個抵達,難度天差地別。同一項技術在不同成功標準下值不值得做,結論會完全不同。先弄清成功標準是誰定的。
  • 識別曲線的形狀,而不是糾結當前的數值。從 90% 到 99% 再到 99.9%,他關心的是"資料量對精度"這條曲線的走向;單點的精度意義有限。當一個指標在逼近極限時,問它向前是線性還是指數。
  • 把能耗當成硬約束算進去。把一個資訊問題換算成能量問題,很多看似可行的方案會立刻現出原形。垂直起降每公斤 200 瓦,人腦總共不到 80 瓦。這種換算能力,是判斷技術可行性最省時間的工具。
  • 先在受限環境做到極致,再想非結構化的世界。停車場裡的 L5 是真的,那不勒斯的 L5 是另一個問題。別把受控環境裡的成功外推到開放環境,也別因為開放環境做不到就否定受控環境裡的進展。
  • 用設計約束代替對個體的精細控制。讓每個單元看世界的方式儘量區域性,讓它對失敗儘量魯棒,讓整體具備重新組織和重新通訊的能力。這套思路可以套到團隊管理、系統架構,甚至寫作上:你沒法控制每個細節,但你可以定義細節之間的介面。
  • 別隻建模型,也建對面那個東西的模型。庫馬爾的反向問題值得記住:你一直在建模環境,那環境能不能建模你?很多合作的失敗,原因是一方只想著被理解,另一方也只想著被理解,沒有一方向前走一步。
  • 留出預測未來的習慣時間。他建議的這件事成本極低。收穫多半不在預測的準確率上:資訊進來時,你能更快地把它接到已有的框架上。
文稿由本站用語音識別模型(基於官方釋出音訊)機器轉寫,可能有識別錯誤,人名與數字請以音訊為準。
[00:00:00] The following is a conversation with Vijay Kumar. He's one of the top roboticists in the world, a professor at the University of Pennsylvania, a dean of Penn engineering, former director of Grasp Lab, or the General Robotics, Automation Sensing and Perception Laboratory at Penn that was established back in 1979. [00:00:20] That's 40 years ago. Vijay is perhaps best known for his work in multi robot systems, robots, worms and micro aerial vehicles, robots that elegantly cooperate in flight under all the uncertainty and challenges that the real world conditions present. This is the Artificial Dosis podcast. If you enjoy it, subscribe on YouTube. Give five stars on iTunes, supported on Patrón or simply connect with me on Twitter. Àlex Friedman spelled F.R. Idi Amin. And now here's my conversation with Vijay Kumar. [00:01:15] What is the first robot you've ever built or a part of building? Way back when I was in graduate school, I was part of a fairly big project that involved building a very large hexapod swade. Close to seven thousand pounds, and it was. Powered by hydraulic actuation. Or is actuated by hydraulics with 18 motors, hydraulic motors. Each controlled by an Intel 80 85 processor and an eighty eighty six code processor. [00:01:54] And so imagine this huge monster that had 18 joints, each controlled by an independent computer, and there was a 19 computer that actually did the coordination between these 18 joints. So as part of this project and. My thesis work was how do you coordinate the 18 legs and in particular the the pressures in the hydraulic cylinders to get efficient locomotion? It sounds like a giant mess. [00:02:28] How difficult is it to make all the motors communicate? Presumably you have to send signals hundreds of times a second, or at least this was not my word. [00:02:36] But the the folks who worked on this wrote what I believed to be the first multiprocessor operating system. This was in the 80s. And you have to make sure that obviously messages got across from one joint to another. You have to remember the the clock speeds on those computers were about half a megahertz. Right. [00:02:56] So the is so not to romanticize the notion, but how did it make you feel to make to see that robot move? [00:03:07] It was amazing in hindsight, it looks like, well, we built the thing which really should have been much smaller. And of course, today's robots are much smaller. You look at. You know, Boston Dynamics are Ghost Robotics, a spinoff from from Penn. But back then, you're stuck with the substrate, you had the compute, you had to things were unnecessarily big, but at the same time, and this is just human psychology, somehow bigger means grander. [00:03:37] You know, people never had the same appreciation for nanotechnology or nano devices as they do for the space shuttle or the Boeing 747. [00:03:46] Yeah, you've actually done quite a good job at illustrating that small is beautiful in terms of robotics. [00:03:54] So what is on that topic is the most beautiful or elegant robot emotion that you've ever seen, not to pick favorites or whatever, but something that just inspires you that you remember? [00:04:07] Well, I think the thing that I'm I'm most proud of that my students have done is really think about small waves that can maneuver and constrain spaces and in particular, their ability to coordinate with each other and form three dimensional patterns. So once you can do that. You can essentially create 3-D objects in the sky and you can form these objects on the fly. So in some sense, your toolbox of what you can create is suddenly got enhanced. [00:04:43] And before that, we did the two dimensional version of the so we had our ground robots forming patterns and so on, so that that was not as impressive as beautiful. But if you do it in 3D, suspended in midair and you've got to go back to 2011 when we did this, now, it's actually pretty standard to do these things eight years later. But back then, it was a big accomplishment. [00:05:06] So the distributed cooperation is where is what beauty emerges? [00:05:11] Yes, I think beauty to an engineer is very different from from beauty to, you know, someone who's looking at robots from the outside, if you will. Yeah, but what I meant there. So before we said the grand. As associated with size and another way of thinking about this is just the physical shape and the idea that you can get physical shapes in midair and have them deform. That's beautiful. [00:05:37] But the individual components, the agility is beautiful, too, right? Not a structure. So then how how quickly can you actually manipulate these three dimensional shapes and the individual components? Yes, you're right. [00:05:48] But by the way, said you have unmanned aerial vehicle was a good term for drones, you Aves quad copters. [00:05:58] Is there a term that's being standardized? [00:06:00] I don't know if there is. Everybody wants to use the word drones. And I've often said those drones to me is a pejorative word. It signifies something that's that's dumb preprogram, that does one little thing. And robots are anything but drones. So I actually don't like that word, but that's what everybody uses. You could call it unpiloted, unpiloted, but even unpiloted could be radio-controlled, could be remotely controlled in many different ways. And I think the right word is thinking about it as an aerial robot. [00:06:31] You also say agile, autonomous aerial robot right now. [00:06:35] So agility is an attribute, but they don't have to be. So what biological system, because you've also drawn a lot of inspiration. Those are seen bees and ants that you've talked about, what living creatures have you found to be most inspiring as an engineer, instructive in your work in robotics? [00:06:54] To me, so ants are really quite incredible creatures, right. So you I mean, the individuals arguably are very simple and how they're they're built and yet they're incredibly resilient as a population and as individuals. They're incredibly robust. So, you know, if you take an ant at six legs, you remove one leg. It still works just fine and it moves along. And I don't know that he even realizes it's lost a leg. [00:07:26] So that's the robustness at the individual level. But then you look about this instinct for self-preservation of the colonies and they adapt and so many amazing ways. You know, transcending, transcending gaps, and by just chaining themselves together when you have a flood, being able to recruit other teammates to carry big morsels of food. [00:07:52] And then going out in different directions, looking for food and then being able to demonstrate consensus, even though they don't communicate directly with each other, the way we communicate with each other, in some sense, they also know how to do democracy probably better than what we do somehow in democracies emergent. [00:08:15] It seems like all of the phenomena that we see is all emergent. It seems like there's no centralized communicator. [00:08:21] There is. So I think a lot is made about that word emergent. And it means lots of things are different people. But you're absolutely right. I think as an engineer, you think about what? Element, elemental behaviors were primitives you could synthesize so that the home looks incredibly powerful, incredibly synergistic, the whole definitely being greater than the sum of the parts and and living proof of that. [00:08:50] So when you see these beautiful swarms with his biological systems of a robot's, do you sometimes think of them as a single individual living, intelligent organism? So it's the same as thinking of our human civilization as one organism? Or do you still, as an engineer, think about the individual components and all the engineering that went into the individual components? Well, that's very interesting. [00:09:15] So, again, philosophically, as engineers, what we want to do is to go beyond the individual components to individual units and think about it as a unit, as a cohesive unit without worrying about the individual components. If you start obsessing about the individual building blocks and what they do, you inevitably will find it hard to scale up just mathematically. Just think about individual things you want to model. And if you want to have ten of those, then you essentially are taking Cartesian products of 10 things. [00:09:53] That makes it really complicated. Then to do any kind of synthesis or design in that high dimensional space is really hard. So the right way to do this is to think about the individuals in a clever way so that at the higher level, when you look at lots and lots of them abstractly, you can think of them in some low dimensional space. [00:10:13] So what does that involve for the individual? You have to try to make the way they see the world as local as possible. [00:10:21] And the other thing, you just have to make them robust to collisions, like you said, with the ants, if something fails, that the whole swarm doesn't fail. Right. [00:10:32] I think as engineers we do this. I mean, think about we build planes, we build iPhones. And we know that by taking individual components, well engineered components with well specified interfaces that behave in a predictable way, you can build complex systems. So that's ingrained. I would I would claim and most engineers thinking and it's true for computer scientists as well. I think what's different here is that you want the individuals to be robust in some sense, as we do in these other settings. [00:11:08] But you also want some degree of resiliency for the population. And so you really want them to be able to re-establish. [00:11:18] Communication with their neighbors, you want them to rethink their strategy for group behavior, you want them to reorganize. Um, and that's where I think a lot of the challenges lie just at a high level. [00:11:34] What does it take for a bunch of. Which we call them flying robots to create a formation just for people who are not familiar with robotics in general, how much information is needed? How do you how do you even make it happen without a centralized controller? [00:11:56] So, I mean, there are a couple of different ways of looking at this. If you are a purist, you think of it as a as a as a way of recreating what nature does. So nature forms groups for several reasons, but mostly it's because of this instinct. That organisms have of preserving their colonies, their population. Which means what you need shelter, you need food, you need to procreate, and that's basically it. So the kinds of interactions you see are all organic, they're all local. [00:12:38] Um, and the only information that they share, and mostly it's indirectly, is to again preserve the heart of the flock or the swarm of. [00:12:51] In and either by looking for new sources of food or looking for new shelters. Right, right. Um, as engineers, when we build swarms, we have a mission. And when you think of a mission and it involves mobility, most often it's described in some kind of a global coordinate system. [00:13:16] As a human, as an operator, as a commander or as a collaborator, I have my coordinate system and I want the robots to be consistent with that. So I might think of it slightly differently. I might want the robots to recognize that coordinate system, which means not only do they have to think locally in terms of who their immediate neighbors are, but they have to be cognizant of what the global environment looks like. So if I go if I say surround this building and protect this from intruders, well, that immediately in a building centered coordinate system. [00:13:52] And I have to tell them where the building is and they're globally collaborating on a map of that building there. They're maintaining some kind of global not just in the frame of the building, but there's information that's ultimately being built up explicitly as opposed to kind of implicitly like nature might, correct? [00:14:11] Correct. In some sense, nature is very, very sophisticated. But the tasks that nature solves or needs to solve are very different from the kind of engineering tasks, artificial tasks that we are forced to address. And again. There's nothing preventing us from solving these other problems, but ultimately it's about impact, you want these forms to do something useful and so you're kind of driven into this. [00:14:39] Very unnatural, if you will, unnatural meaning, not like how nature does setting, and it's a little probably a little bit more expensive to do it the way nature does because nature is less sensitive to the loss of the individual. And cost wise, in robotics, I think you're more sensitive to losing individuals. I think that's true. [00:15:03] Although if you look at the price to performance ratio of robotic components, it's it's coming down dramatically. It continues to come down. So I think we're asymptotically approaching the point where we would get the cost of individuals will really become. Insignificant. So let's step back at a high level of you, the impossible question of what kind of as an overview, what kind of autonomous flying vehicles are there in general? [00:15:32] I think the ones that receive a lot of notoriety are obviously the military vehicles. Military vehicles are controlled by base station, but have a lot of human supervision. But I have limited autonomy, which is the ability to go from point A to point B and even the more sophisticated now sophisticated vehicles can do autonomous takeoff and landing. [00:15:58] And those usually have wings and they're heavy, usually their wings. [00:16:01] But there's nothing preventing us from doing this for helicopters as well. [00:16:05] There I mean, there are many military organizations that have autonomous helicopters in the same vein. And by the way, you look at auto pilots and airplanes and it's actually very similar. In fact, I can one interesting question we can ask is if you look at all the. Air safety violations, all the crashes that occurred would have happened if the plane were truly autonomous, and I think you'll find that many of the cases because of pilot error, we make silly decisions. [00:16:41] And so in some sense, even an air traffic, commercial air traffic, there's a lot of applications, although we only see autonomy being enabled at very high altitudes when when the pilot of the plane is on autopilot, there's still a role for the human. [00:16:58] And that kind of autonomy is you're kind of implying, I don't know what the right word is, but it's a little dumb dumber and it could be right. [00:17:10] So so in the lab, of course we can we can we can afford to be a lot more aggressive. And the question we. Try to ask is, can we make robots that will be able to make decisions without any kind of external infrastructure? So what does that mean? So the most common piece of infrastructure that airplanes use today is GPS. GPS is also the most brutal form of information. If you're driven in a city, try to use GPS navigation, you know, tall buildings, you immediately lose GPS. [00:17:50] And so that's not a very sophisticated way of building autonomy. I think the second piece of infrastructure they rely on is communications again. It's very easy to jam communications. In fact, if you use Wi-Fi, you know that Wi-Fi signals drop out, cell signals drop out, so to rely on something like that is not is not good. The third form of infrastructure we reuse and I hate to call it infrastructure, but but it is that in the sense of robots as people, so you could rely on somebody to pilot you. [00:18:25] Right. And so the question you want to ask is, if there are no pilots, there's no communications with any base station, if there's no knowledge of position and if there's no apriori map operator or any knowledge of what the environment looks like, operating model of what might happen in the future, can robots navigate? So that is true autonomy. [00:18:47] So that's that's true autonomous. And we're talking about you mentioned that military application of drones. OK, so what else is there? You talk about agile, autonomous flying robots, aerial robots. So that's a different kind of it's not whinged, it's not big, at least it's small. [00:19:04] So I use the word agility mostly, or at least we're motivated to do agile robots, mostly because robots can operate and should be operating in constrained environments. And if you want to operate the way a Global Hawk operates, I mean, the kinds of conditions in which you operate are very, very restrictive. If you go on to go inside a building, for example, for search and rescue or to locate an active shooter, or you want to navigate under the canopy in an orchard to look at health plans or to to look for count. [00:19:43] To count fruits, to measure the tree, the tree trunks, these are things we do, by the way, as in cool agriculture, stuff is shown in the past. [00:19:52] All right. [00:19:53] So so in those kinds of settings, you do need that agility. Agility does not necessarily mean you break records for one hundred meters. Dash. What it really means is you see the unexpected and you're able to maneuver in a safe way and in a way that that gets you the most information about the thing you're trying to do. [00:20:14] By the way, you may be the only person who, in a TED talk, has used a math equation, which is amazing. [00:20:21] People should go see it when it's actually it's really interesting because the TED curator, Chris Anderson, told me you can't show math. And, you know, I've thought about it, but but that's who I am. I mean, that's that's what that's our work. And so I felt compelled to give the audience a taste for for at least some math. [00:20:44] So on that point, simply, what does it take to make a thing with four motors fly a quadcopter, one of these little flying robots? [00:20:57] You know, how hard is it to make it fly? How do you coordinate the four motors? [00:21:02] What's how do you convert those motors into actual movement? [00:21:09] So this is an interesting question. We've been trying to do this since 2000. It is a commentary on the sensors that were available back then, the computers that were available back then. And a number of things happened between 2000 and 2007. One is the advances in computing, which is and so we all know about Moore's Law, but I think 2007 was a tipping point, the year of the iPhone, the year of the cloud. Lots of things happened in 2007. [00:21:42] But going back even further, inertial measurement unit to the sensor really matured again. Lots of reasons for that. Certainly there's a lot of federal funding, particularly DARPA in the US, but they didn't anticipate this boom and emu's. But if you look subsequently, what happened is that every year every car manufacturer had to put an airbag in, which meant you had to have an accelerometer on board. And so that drove down the price to performance ratio. [00:22:11] And so I should know this. That's very interesting. It's very interesting the connection there. And that's why research is very it's very hard to predict the outcomes. And again, the federal government spent a ton of money on things that they thought were useful for resonators, but it ended up enabling the small waves. Which is great because I could have never raised that much money and told you sold this project. Hey, we want to build these small reserves. [00:22:38] Can you can you actually fund the development of low cost emu's? [00:22:41] So why do you need and I'm you know, so so I was I'll come back to that. But so in 2007, 2008, we were able to build these. And then the question you're asking was a good one. How do you coordinate the motors to to develop this? But over the last 10 years, everything is commodities. A high school kid today can pick up a Raspberry Pi. Kit and build us all the low levels functionality is all automated, but basically at some level you have to drive the motors at the right RPM's, the right velocity. [00:23:20] In order to generate the right amount of trust, in order to position it and orient it in a way that you need to in order to fly, the feedback that you get is from onboard sensors. And the IMC is an important part of it. The IMU tells you what the acceleration is as well as what the angular velocity is. And those are important pieces of information. In addition to that, you need some kind of local position or velocity information, for example, when we walk, we implicitly have this information because we kind of know how, how, what our stride length is. [00:24:03] We also are looking at images fly past our retina, if you will, and so we can estimate velocity. We also have accelerometers in our head and we're able to integrate all these pieces of information to determine where we are as we walk. And so robots have to do something very similar. You need a name. You need some kind of a camera or other sensor that's measuring velocity. And then you need some kind of a global reference frame. If you really want to think about doing something in a world coordinate system. [00:24:37] And so how do you estimate your position with respect to that global reference frame? That's important as well. [00:24:42] So coordinating the RPM's of the four motors is what allows you to, first of all, fly and hover and then you can. Change the orientation and the velocity of the and so on. Exactly, exactly. [00:24:54] A bunch of degrees of freedom, six degrees of freedom, but you only have four inputs, the four motors. And and it turns out to be a remarkably. Versatile configuration, you think, at first, well, I only have four motors, how do I go sideways, but it's not too hard to say? Well, if I tell myself I can go sideways and then you have four motors pointing up, how do I how do I rotate in place about a vertical axis? [00:25:21] Well, you rotate them at different speeds and that generates reaction moments and that allows you to turn. So it's actually a pretty it's an optimum configuration from from engineering standpoint. It's it's very simple, very cleverly done and very versatile. [00:25:40] So if you could step back to a time. So I've always known flying robots. Is that to me it was natural that the quadcopter should fly. [00:25:52] But when you first started working with it, why how surprised are you that you can make do so much with the four motors? How surprising is that you can make this thing fly? First of all, you can make it hover, then you can add control to it. [00:26:09] Firstly, this is not the Ford Motor configuration is not ours, but you can it has at least one hundred year history and various people, various people try to get Quadratus to fly without much success. As I said, we've been working on this since 2000, our first designs, well, this is way too complicated. Why not? We try to get an omnidirectional flying. Robots are so our early designs. We had eight voters, and so these eight rotors were arranged uniformly. [00:26:43] On a sphere, if you will, so you can imagine a symmetric configuration, and so you should be able to fly anywhere, but the real challenge we had is the strength to weight ratio is not enough. And of course, we didn't have the sensors and so on. So everybody knew or at least the people who worked with rotorcraft knew four rotors would get it done. So that was not our idea. But it took a while before we could actually do the onboard sensing and the computation that was needed for the kinds of agile maneuvering that we wanted to do in our little area robots. [00:27:20] And that only happened between 2007 and 2009 in our lab. [00:27:24] Yeah, and you have to send the signal me a 100 times a second. So the computer is everything has to come down in price. And what are the steps of getting from point A to point B? So we just talked about like local control. [00:27:42] But if all the kind of cool dancing in the air that I've seen you show, how do you make it happen? Project make a trajectory, first of all, OK, figure out a trajectory. So plan and trajectory and then how do you make that actually happen? [00:28:01] I think planning is a very fundamental problem in robotics. I think, you know, 10 years ago it was an esoteric thing. But today with self-driving cars, you know, everybody can understand this basic idea that a car sees a whole bunch of things and it has to keep a lane or maybe make a right turn and switch lanes. It has to plan a trajectory. It has to be safe. It has to be efficient. So everybody's familiar with that. [00:28:23] That's kind of the first step that that you have to think about when you when you when you when you say autonomy. And so for us, it's about finding smooth motions, motions that are safe. So we think about these two things. One is optimality, one to safety. Clearly, you don't you cannot compromise safety. So you're looking for safe, optimal motions. The other thing you have to think about is can you actually compute a reasonable trajectory in a fast in a small amount of time because you have a time budget. [00:28:58] So the optimal becomes suboptimal. But in our lab, we we focus on synthesizing smooth trajectory that satisfies all the constraints. In other words, don't violate any safety constraints and is as efficient as possible. And when I say efficient, it could mean I want to get from point A to point B as quickly as possible, or I want to get to it as gracefully as possible, or I want to consume as little energy as possible, but always staying within the safety constraints. [00:29:34] But yes, always finding a safe. [00:29:38] Trajectory. So there's a lot of excitement and progress in the field of machine learning. Yes. And reinforcement learning in the neural network variant of that deep reinforcement learning, do you see a role of machine learning in. [00:29:54] So a lot of the success of flying robots do not rely on machine learning except for maybe a little bit of the perception, the computer vision side on the control side and the planning. Do you see there's a role in the future for machine learning? [00:30:08] So let me disagree a little bit with you. I think we never perhaps called out in my work, called out learning, but even this very simple idea of being able to fly through a constrained space. The first time you try it, you'll invariably you might get it wrong. The task is challenging and the reason is. To get it perfectly right, you have to model everything in the environment like. And flying is notoriously hard to model. There are aerodynamic effects that we constantly discover, even just before I was talking to you. [00:30:47] I was talking to a student about how blades flap when they fly low and that ends up changing how a rotorcraft. [00:30:59] Is accelerated in the angular direction. This is like micro flaps or something, it's it's not micro flaps. So we assume that each blade is rigid but actually flaps a little bit. Oh, it bends. Interesting. And so the models rely on the fact on the on an assumption that they're actually rigid. But that's not true. If you're flying really quickly, these effects become significant. If you're flying close to the ground, you get pushed off by the ground, something which every pilot knows when he tries to land or she tries to land. [00:31:32] This is this is called a ground effect. Something very few pilots think about is what happens when you go close to a ceiling where you get sucked into a ceiling. There are very few aircraft that fly close to any kind of ceiling. Likewise, when you go close to close to a wall, there are these wall effects. And if you're going on a train and you pass another train that's traveling in the opposite direction, you feel the buffeting. And so these kinds of microclimates effect are usually significantly so impossible to model. [00:32:06] Essentially, I wouldn't say they're impossible to model, but the level of sophistication you would need in the model and the software would be tremendous. Plus, to get everything right would be awfully tedious. So the way we do this is over time we figure out how to adapt to these conditions. So we early on, we use the form of learning that we call iterative learning. [00:32:32] So this idea, if you want to perform a task, there are a few things that you need to change and iterate over a few parameters that over time you can you can you can figure out. So I could call it a policy gradient, reinforcement learning, but actually just iterative learning, learning. [00:32:52] And so this was their way back. I think what's interesting is if you look at autonomous vehicles today. Learning occurs could occur in two pieces. One is perception, understanding the world. Second is action taking actions. Everything that I've seen that is successful is in the perception side of things, so in computer vision, we made amazing strides in the last 10 years. So recognizing objects, actually detecting objects, classifying them and tagging them, in some sense annotating them, this is all done through machine learning on the action side. [00:33:29] On the other hand, I don't know if any examples where there are fielded systems where we actually learn the right behavior outside of a single demonstration is successfully, you know, in the laboratory. [00:33:41] This is the Holy Grail. Can you do end to end learning? Can you go from pixels to motor motor currents? This is really, really hard. And I think if you go forward, the right way to think about these things is data driven approaches, learning based approaches in concert with model based approaches, which is the traditional way of doing things. So I think there's a there's a role for each of these methodologies. [00:34:08] So what do you think? Just jumping out on topic, since you mentioned autonomous vehicles, what do you think are the limits and the perception? So I've talked to Elon Musk and there on the perception side, they're using primarily computer vision to perceive the environment in your work with because you work with the real world a lot and the physical world. [00:34:30] What are the limits of computer vision? Do you think we can solve autonomous vehicles, focus on the perception side, focusing on vision alone and machine learning. [00:34:41] So, you know, we also have a spinoff company X and Technologies that that works on the ground in minds. So you go into minds. They're dark. They're dirty. You fly in a dirty area, there's stuff you pick up from by the propellers, the downwash kicks up dust. I challenge you to get a computer vision algorithm to work there, so we use light hours in that setting. Indoors and even outdoors, when we fly through fields, I think there's a lot of potential for just solving the problem, using computer vision alone. [00:35:19] But I think the bigger question is, can you? Actually solve or can you actually identify all the corner cases using a sense, single sensing modality and using learning alone? [00:35:32] What's your intuition there? So, look, if you have a corner case and your algorithm doesn't work, your instinct is to go get data about the corner case and patch it up, learn how to deal with that corner case. [00:35:45] But at some point. This is going to saturate, this approach is not viable. So today, computer vision algorithms can detect 90 percent of the objects or can detect objects 90 percent of the time, classify them 90 percent of the time. Cats on the Internet. I probably can do ninety five percent of it, but to get from 90 percent to 99 percent, you need a lot more data. And then I tell you, well, that's not enough because I have a safety critical application. [00:36:14] I want to go from 99 percent to ninety nine point nine percent, but even more data. So I think if you look at. Wanting accuracy on the x axis. And look at the amount of data on the Y axis, I believe that curve is an exponential curve. Wow. [00:36:35] It's even hard. If it's linear, it's hard if it's totally. But I think it's exponential. And the other thing you have to think about is that this process is a very, very power hungry process to run data farms power. [00:36:51] You mean literally power, literally power, literally power. So in 2014, five years ago and I don't have more recent data, two percent of US electricity consumption. Was from data farms, so we think about this is an information science and information processing problem. Actually, it is an energy processing problem. [00:37:15] And so unless we figure out better ways of doing this, I don't think this is viable. [00:37:20] So talking about driving, which is a safety critical application and some aspect, the flight is safety critical, maybe philosophical question, maybe an engineering one. [00:37:30] What problem do you think is harder to solve? Autonomous driving, autonomous flight? [00:37:36] That's a really interesting question, I think. Autonomous flight has several advantages that are autonomous driving doesn't have. So, look, if I want to go from point A to point B, I have a very, very safe trajectory, go vertically up to a maximum altitude, fly horizontally to just about the destination, and then come down vertically. [00:38:00] This is preprogrammed. The equivalent of that is very hard to find in a self-driving car car world, because you're on the ground, you're in a two dimensional surface and the trajectories and the two dimensional surface are more likely to encounter obstacles. I mean, this, in an intuitive sense, would mathematically true that mathematically as well. That's true. [00:38:24] There's another option on the 2D base of platooning or because there's so many obstacles, you can connect to those obstacles and all these those exist in the three dimensional space is wrong. [00:38:34] So they do. So the question also implies how difficult are obstacles in the three dimensional space in flight? [00:38:41] So so that's the downside. I think in three dimensional space, you're modeling three dimensional world, not just just because you want to avoid it, but you want to reason about it and you want to work in that three dimensional environment. And that's significantly harder. So that's one disadvantage. I think the second disadvantage is, of course, any time you fly, you have to put up with the peculiarities of aerodynamics and their complicated environments. How do you negotiate that? [00:39:08] That's always a problem. [00:39:10] Do you see a time in the future where there is you mentioned there's agriculture applications, so there's a lot of applications of flying robots. [00:39:19] But do you see a time in the future where there's tens of thousands or maybe hundreds of thousands of delivery drones that fill the sky, a delivery flying robots? [00:39:30] I think there's a lot of potential for the last mile delivery. And so in crowded cities, I don't know if you if you go to a place like Hong Kong, just crossing the river can take half an hour. And while a drone can just do it in and five minutes at most, I think you look at a delivery of supplies to remote villages. I work with a non-profit called We Robotics. They work in the Peruvian Amazon where the only highways are rivers, and to get from point A to point B may take five hours while with a drone. [00:40:10] You can get there in 30 minutes. So just. Delivering drugs, retrieving samples for for for testing vaccines, I think there's huge potential here. So I think the challenges are not technological, that the challenges economical. The one thing I'll tell you that nobody thinks about is the fact that we've not made huge strides in battery technology. Yes, it's true. Batteries are becoming less expensive because we have these mega factories that are coming up, but they're all based on lithium based technologies. [00:40:45] And if you look at the energy density and the power density, those are two fundamentally limiting. Numbers, so power density is important because you have to take off vertically into the air, which most drones do, they're not they don't have a runway. You consume roughly 200 watts per kilo at the small size. That's a lot. In contrast, the human brain consumes less than 80 watts, the whole of the human brain. So just imagine just lifting yourself into the air is like two or three light bulbs, which makes no sense to me. [00:41:24] Yeah, so you're going to have to, at scale solve the energy problem than not charging the batteries, storing the the energy and so on. [00:41:35] And then the storage is the second problem, but storage limits the range. But, you know, you have to remember that. You have to you have to burn a lot of it a given time. [00:41:48] So the turning of the problem, which is the which is a power question. [00:41:51] Yes. And do you think just your intuition that there are breakthroughs in batteries on the horizon, how hard is that problem? [00:42:03] Look, there are a lot of companies that are promising flying cars, right? They're autonomous and that are clean, my. I think they're overpromising the autonomy piece is doable, the clean piece. I don't think so. There's another company that I work with called Jitendra. They make small jet engines and they can get up to 50 miles an hour very easily and lift 50 kilos. But they're jet engines. They're efficient. They're a little louder than electric vehicles, but they can go flying cars. [00:42:45] So your sense is that there's a lot of people that have come together on this crazy question. If you look at companies like Kittyhawk working on electrics of clean, I'm talking to Sebastian Thrun. Right. It's it's a crazy dream, you know, but you work with flight a lot. You've mentioned before that manned flights are carrying the human body is very difficult to do. [00:43:17] So how crazy is flying cars, do you think? [00:43:20] There will be a day when we have vertical takeoff and landing vehicles that are sufficiently affordable? That we're going to see a huge amount of them and they would look like something like we dream of when we think about flying cars. Yeah, like the Jetsons. The Jetsons. Yeah. So, look, there are a lot of smart people working on this, and you never say something is not possible when have people like Sebastian Thrun working on it. So I, I totally think it's viable. [00:43:51] I question again the electric piece, the electric piano and again, for short distances you can do it. And there's no reason to suggest that these are all just have to be rotorcraft. You take off vertically, but then you morph into a forward flight. I think there are a lot of interesting designs. The question to me is, is are these economically viable? And if you agree to do this with fossil fuels, it immediately becomes viable. [00:44:18] That's the real challenge. Do you think it's possible for robots and humans to collaborate successfully on tasks? So a lot of robotics folks that I talked to and work with, I mean, humans just at a giant mess to the picture. So it's best to remove them from consideration when solving specific tasks was very difficult to model. That is just a source of uncertainty in your work with. [00:44:45] These agile flying robots, do you think there's a role for collaboration with humans, or is it best to model tasks in a way that that doesn't have a human in the picture? [00:44:59] Well, I don't think we should ever think about robots without human in the picture. Ultimately, robots are there because we want them to solve problems for humans. But there is no general solution to this problem. I think if you look at human interaction, how humans interact with robots, you know, we think of these in sort of three different ways. One is the human commanding the robot. The second is the human. Collaborating with the robot, so, for example, we work on how a robot can actually pick up things with a human and carry things, that's like true collaboration. [00:45:37] And third, we think about humans is by standards, self-driving cars, which the humans role and how just how to self-driving cars acknowledge the presence of humans. So I think all of these things are different scenarios. It depends on what kind of humans, what kind of task. [00:45:56] And I think it's very difficult to say that there is a general theory that we all have for this, but at the same time, it's also silly to say that we we should think about robots independent of humans. So to me, human robot interaction is almost a mandatory aspect of everything we do. [00:46:16] Yes. So but George Degreaser, your thoughts? [00:46:18] If we jump to autonomous vehicles, for example, there's there's a big debate between what's called level two and level four. So semi-autonomous and autonomous vehicles and sort of the Tesla approach currently at least has a lot of collaboration between humans. [00:46:35] So the humans are supposed to actively supervise the operation of the robot, part of the safety definition of how safe a robot is in that case is how effective is the human and monitoring it. [00:46:49] Do you think that's ultimately not a good approach in sort of having a human in the picture, not as a bystander or part of the infrastructure, but really as part of what's required to make the system safe? This is harder than it sounds, right? I think, you know, if you. [00:47:14] I mean, I'm sure you've driven the driven before and highways and so on, it's it's really very hard to have to relinquish control to a machine and then take over when needed. So I think Tesla's approach is interesting because it allows you to periodically establish some kind of contact with the car. Toyota, on the other hand, is thinking about shared autonomy or collaborative autonomy as a paradigm, if I may argue. These are very, very simple ways of human robot collaboration because the task is pretty boring. [00:47:48] You sit in a vehicle, you go from point A to point B.. I think the more interesting thing to me is, for example, search and rescue. I've got a human first responder, robot first responders. I got to do something, it's important, I have to do it in two minutes, the building is burning, there's been an explosion, it's collapsed. How do I do it? I think to me, those are the interesting things where it's very, very unstructured. [00:48:13] And what's the role of the human robot? Clearly, there's lots of interesting challenges. And as a field, I think we're going to make a lot of progress in this area. [00:48:22] Yes, an exciting form of collaboration, right. In the autonomous driving. The main enemy is just boredom of the human. [00:48:29] Yes. As opposed to in rescue operations. It's literally life and death. And the collaboration enables the effective completion of the mission. So exciting in some sense. [00:48:42] You know, we're also doing this. You think about the human driving a car and almost invariably the humans trying to estimate the state of the car and the state of the environment and so on. But where did the car were to estimate the state of the human? So, for example, I'm sure you have a smartphone and the smartphone tries to figure out what you're doing and send you reminders. And oftentimes telling you to drive to a certain place, although you have no intention of going there because it thinks that that's where you should be because of some Gmail calendar entry or something like that, and it's trying to constantly figure out who you are, what you're doing. [00:49:19] If a car were to do that, maybe that would make the driver safer because the car is trying to figure it out as a driver, paying attention, looking at his or her eyes, looking at the skating movements. So I think the potential is there. But from the reverse side, it's not robot modeling, but it's human modeling. It's more in the human right. And I think the robots can do a very good job of modeling humans. [00:49:42] If you if you really think about the framework that you have a human sitting in a cockpit surrounded by sensors, all staring at them in addition to be staring, standing outside, but also staring at him, I think there's a real synergy there. [00:49:57] Yeah, I love that problem because it's a new 21st century form of psychology. Actually, A.I. enabled psychology. A lot of people have sci fi inspired fears of walking robots like those from Boston Dynamics. If you just look at shows on Netflix and so on, or flying robots like those you work with. How would you how do you think about those fears, how would you alleviate those fears? Do you have inklings, echoes of those same concerns? [00:50:25] You know, any time we develop a technology meaning to have a positive impact in the world, there's always the worry that. You know, somebody could subvert those technologies and use it in an adversarial setting and robotics is no exception, right? So I think it's very easy to weaponize robots. I think we talk about swarms. One thing I worry a lot about is so, you know, for us to get swarms to work and do something reliably is really hard. [00:50:54] But suppose I have this challenge of trying to destroy something and I have a swarm of robots where only one out of the swarm needs to get to its destination. So that suddenly becomes a lot more doable. And so I worry about, you know, this general idea of using autonomy with lots and lots of agents. I mean, having said that, look, a lot of this technology is not very mature. My favorite saying is that. If somebody had to develop this technology, wouldn't you rather the good guys do it so the good guys have a good understanding of the technology so they can figure out how this technology is being used in a bad way or could be used in a bad way and try to defend against it. [00:51:37] So we think a lot about that. So we have a way of doing research on how to defend against swarms, for example, that there is, in fact a report by the National Academies on counter US technologies. This is a real threat, but we're also thinking about how to defend against this and knowing how swarms work, knowing how autonomy works is, I think, very important. [00:52:03] So it's not just politicians. You think engineers have a role in this discussion? [00:52:08] Absolutely. I think the days where politicians can be agnostic to technology are gone. I think every politician needs to be literate in technology, and I often say technology is the new liberal art. Our understanding how technology will change your life, I think is important, and every human being needs to understand that and maybe we can elect some engineers to office as well on the other side. [00:52:39] What are the biggest open problems in robotics? And you said we're in the early days. In some sense. What are the problems would like to solve in robotics? [00:52:47] I think there are lots of problems, right. But I would phrase it in the following way. If you look at the robots are a building, they're still very much tailored towards doing specific tasks and specific settings. I think the question of how do you get them to operate in much broader settings? Where things can change in unstructured environments is up in the air, so think of self-driving cars. Today, we can build a self-driving car in a parking lot, we can do level five autonomy in a parking lot. [00:53:26] But can you do level five autonomy in the streets of Napoli in Italy or Mumbai in India? No, no. So in some sense, when we think about robotics, we have to think about where they're functioning, what kind of environment, what kind of a task. We have no understanding of how to put both those things together. [00:53:49] So we're in the very early days of applying it to the physical world. And I was just in Naples, actually. And that's there's levels of difficulty and complexity, depending on which area you're applying it to. [00:54:02] I think so. And we don't have a systematic way of understanding that. You know, everybody says just because a computer cannot beat a human at any board game, we certainly know something about intelligence that's not true. A computer board game is very, very structured. It is the equivalent of working in a Henry Ford factory where things parts come, you assemble, moron. It's a very, very, very structured setting. That's the easiest thing. And we know how to do that. [00:54:34] So you've done a lot of incredible work at the University of Pennsylvania, graspable you now, dean of Virginia and you've. What advice do you have for a new bright eyed undergrad interested in robotics or engineering? [00:54:51] Well, I think there's really three things. One is one is you have to get used to the idea that the world will not be the same in five years or four years whenever you graduate. Right. Which is really hard to do. So this thing about predicting the future, every one of us needs to be trying to predict the future always not because you'll be any good at it, but by thinking about it, I think you sharpen your senses and you become smarter. [00:55:17] So that's number one. Number two, it's a corollary of the first piece, which is you really don't know what's going to be important. So this idea that I'm going to specialize in something which will allow me to go in a particular direction, it may be interesting, but it's important also to have this breadth. So you have this jumping off point. I think the third thing, and this is where I think Penn excels. I mean, we teach engineering, but it's always in the context of the liberal arts. [00:55:46] It's always in the context of society. As engineers, we cannot afford to lose sight of that. So I think that's important. But I think one thing that people underestimate when they do robotics is the importance of mathematical foundations, important of represent importance of representations. Not everything can just be solved by looking for Ross packages on the Internet or to find a deep neural network that works. I think the representation question is key even to machine learning, where if you ever hope to achieve or get to explainable A.I., somehow there need to be representations that you can understand. [00:56:25] So if you want to do robotics, you should also do mathematics. And you said liberal arts. [00:56:30] A little literature. If you want to build a robot, I should be reading Dostoyevsky. I agree with that. Very good. B.J., thank you so much for talking to. That was an. It was just a very exciting conversation. Thank you.

本集資源與出處