擊敗三位人類世界冠軍,登上Nature封面!AI無人機極限競速開啟自動駕駛新紀元
在下棋,辦公,游戲這類腦力活動中,人類被AI碾壓已經早就不是什么新聞了。
現在連極限競速領域,人類的陣地也失守了!
今天Nature的封面論文,內容是AI駕駛系統在無人機競速領域擊敗了人類SOTA。
圖片
論文地址:https://www.nature.com/articles/s41586-023-06419-4
來自蘇黎世大學和英特爾的研究團隊開發的Swift系統,成功地在第一人稱視角(FPV)無人機比賽中,擊敗了3位人類世界冠軍,單圈速度比人類快了半秒!
AI無人機內心OS「遙遙領先!」
比賽當中,駕駛選手需要駕駛高速無人機完成一個三
維空間內的立體賽道。人類駕駛員和AI都只能通過機載攝像頭的拍攝的視頻流來觀察環境,操縱無人機的飛行。
圖片
2019年,當時成績最好的Alphapilot系統,如果不依靠外部的追蹤系統來精確控制無人機的飛行軌跡,完成比賽的時間幾乎是人類的兩倍。
Swift系統和人類選手一樣,僅通過對機載攝像頭收集的數據做出實時反應,讓完成比賽的時間有了質的飛躍。
它的集成的慣性測量單元(inertial measurement unit)測量無人機的加速度和速度,神經網絡通過來自攝像頭的數據來定位無人機在空中的位置,并檢測跑道上的需要通過的門。
這些信息被匯總到基于深度強化學習(DeepRL)的控制單元,做出最佳的反饋指令,從而盡可能快地完成賽道。
圖片
FPV無人機比賽中使用的是四軸飛行器,是市面上最為靈活的無人機。比賽中無人機受到的加速力,可能超過自身重力的5倍還多,飛行時速超過100公里每小時!
圖片
賽道由7個正方形的門組成,場地大小為30*30*7的三維空間,飛行距離超過75米。無人機必須按順序通過每個門,連續跑完3圈,才能完成比賽。
圖片
人類駕駛員佩戴頭顯,來獲得實時的視頻信號。頭顯能提供身臨其境的「第一人稱視角」體驗。
超越人類世界冠軍選手的Swift系統,主要由兩個關鍵模塊組成:
1. 將高維度視覺和加速度信息轉化為低維度表示的感知系統
2. 獲取低維度表示并生成控制命令的控制AI系統
這個控制AI系統由前饋神經網絡進行表征,使用無模型的On-Policy深度強化學習進行模擬訓練,不斷提高跑圈成績。
圖片
研究人員通過使用從物理世界收集的數據估計的非參數經驗噪聲模型(non-parametric empircal noise medels),來縮小模擬與物理世界中的感知和動力學差異。
這些噪聲模型能有效地將模擬中的控制策略轉化為現實中的控制指令。
人類選手在賽道上進行了一周的練習,在完成了一周的訓練后,每個飛行員都與Swift進行了多場正面1V1的比賽。
圖片
Swift的勝利標志著AI控制的自主操控系統首次在與人類的競技比賽中獲得了勝利。
Swift系統
機器人領域中主要的挑戰之一是虛擬和現實兩者之間存在差距,傳統的端到端學習方法難以將虛擬環境的映射轉移到現實世界。
Swift是一個端到端的自主控制系統,它能讓無人機像人類選手一樣參加FPV無人機賽事并取得具有競爭力的成績。
它的系統中主要包含以下兩個模塊:
1. 感知系統
感知系統由一個VIO模塊組成,該模塊通過相機圖像和慣性測量單元(IMU)獲得的高頻測量值計算無人機狀態的度量估計值。
VIO和門檢測結果經卡爾曼濾波整合為無人機狀態。隨后,控制策略網絡將狀態和之前動作作為輸入,輸出控制命令。
這個系統能將來自無人機上的攝像頭和慣性傳感器等復雜高維信息,轉化成無人機當前狀態的低維表示。
包括無人機在賽道上的位置、速度、姿態等,并使用了視覺慣性系統和神經網絡進行圖像處理和狀態估計。
2. 控制策略
每個timestep中,策略網絡會根據狀態和之前動作輸出。
Swift中的價值網絡評估這個動作的價值,之后兩個網絡的參數會通過強化學習進行優化。
這個策略用一個簡單的兩層全連接神經網絡表示,輸入是感知系統輸出的無人機當前狀態,輸出是給無人機的控制命令(推力和體積轉速)。它通過在模擬環境中用強化學習的方式進行訓練。
此外,為了把Swift的感知和行動跨域遷移到真實世界,研究人員使用了兩個殘差模型來處理動力學和感知上的偏差:
感知殘差模型:使用高斯過程擬合真實飛行中慣性系統的誤差,并在模擬中加入。
動力學殘差模型:使用k近鄰回歸擬合真實飛行中動力學的誤差,并在模擬中加入。
通過這種方式,Swift可以適應真實世界中的不確定性,實現從模擬到物理系統的有效遷移。
經過訓練后,它可以像專業選手一樣駕駛無人機進行FPV賽事,甚至在部分場景下超越了人類冠軍的表現。
圖片
圖a:Swift在實際使用中從傳感器獲取數據并生成控制命令的過程
圖b:在仿真環境中使用強化學習訓練控制策略的過程
結果
研究人員將Swift與計時賽中的人類飛行員的成績進行了比較。
單圈時間表示連續三圈熱火中達到的最佳單圈時間和最佳平均時間。如下圖a所示,Swift不僅平均單圈時間更快,平均三圈時間也更穩定。
正面交鋒的結果則如下圖b所示,在與A.Vanover的9場比賽中,Swift贏了5場;在與T.Bitmatta的7場比賽中,Swift贏了4場;在與M.Schaepper的9場比賽中,Swift贏了6場。
研究人員解釋,在Swift輸掉的10場比賽中,40%是因為與對手發生碰撞,40%是因為與閘門發生碰撞,20%是因為無人機的速度比人類飛行員慢。
總的來說,Swift在與人類飛行員的比賽中獲勝最多。Swift還取得了最快的比賽時間記錄,比人類飛行員(A.Vanover)的最佳時間領先半秒。
圖片
研究人員分析了Swift和每個人類飛行員飛行的最快圈速。
從整體上看,Swift比所有人類飛行員都要快,但它在賽道的所有單個賽段上的速度并不快。
在起跑時,Swift的反應時間較短,平均比人類飛行員早120毫秒從領獎臺起飛。并且它的加速更快,進入第一個閘門時的速度更高。
如下圖c、d所示,在急轉彎時,Swift的機動更緊湊。
研究人員推測,造成這一結果的原因是Swift在選擇軌跡時的時間更長。
因為它可以根據價值函數來優化長期回報,而人類飛行員最多預測一個未來,所以規劃的時間尺度更短。
在下圖b,d中可以看到,人類飛行員在動作開始和結束時速度較快,但總體速度較慢。
同時,與人類相比,Swift在執行某些機動動作時也能依靠其他線索,例如慣性數據和針對周圍環境特征的視覺里程測量。
這些都幫助了自主無人機在比賽中實現了最高的平均速度、最短的賽線,并在整個比賽過程中設法將飛機保持在更接近其驅動極限的狀態。
圖片
討論
研究人員開發的這個自主控制系統,能夠在FPV無人機競速中實現冠軍級別的表現,甚至在某些情況下超越人類世界冠軍。
這個系統相對于人類選手具有一定的結構優勢。
首先,它利用了來自機載慣性測量單元(IMU)的慣性數據。這類似于人類前庭系統(vestibular system),但人類選手沒有辦法使用自身的這個系統,因為他們沒有乘坐在飛行器內部,無法親身感受到飛行器的加速度。
其次,Swift系統具有更低的感覺運動延遲(Swift為40毫秒,而專業人類選手平均為220毫秒)。另一方面,Swift使用的攝像頭刷新率有限(30赫茲),相比之下,人類飛行員的攝像頭刷新率快了四倍(120赫茲),從而提高了他們的反應時間。
人類飛行員的適應能力非常強:無人機全速出事故墜落后,如果硬件仍然正常工作,他們還能繼續飛行并完成賽道。而Swift不具備出事故墜毀后恢復比賽能力。
圖片
人類飛行員還能夠適應環境條件的變化,比如會顯著改變賽道外觀的光照變化等。
Swift的感知系統假設比賽環境的外觀與訓練時觀察到的是完全一致的。如果環境發生了變化,系統可能會無法工作。
不過可以通過在各種條件下訓練門探測器和殘余觀測模型(residual observation model)來提供對于比賽環境變化的適應能力。
盡管研究人員研發的系統還存在一些限制和待解決的工作,但一個自主移動機器人能夠達到體育項目中世界冠軍級別的表現是機器人技術和AI領域的一個重要里程碑。
這項工作可能會激發在其他物理系統(自動駕駛車輛、飛行器和機器人等)中部署基于混合學習的解決方案,從而在更加廣泛的應用領域發揮更大的作用。
方法
訓練算法
訓練是使用近端策略優化(Proximal Policy Optimization,PPO)方法進行的。這種actor-critic方法在訓練期間需要同時優化兩個神經網絡:策略網絡(將觀測映射到動作)和值網絡(作為「critic」評估策略采取的動作)。
經過訓練后,只有策略網絡被部署到無人機上。
觀察、行動和獎勵
在時間t從環境中獲得的觀測值????∈?31包括:
(1)當前機器人狀態的估計;
(2)下一個需要通過的賽道上的門的相對姿態;
(3)上一步中施加的動作。具體而言,機器人狀態的估計包括平臺的位置、速度和姿態,姿態由旋轉矩陣表示,從而形成一個?15中的向量。
雖然仿真內部使用四元數,但研究人員使用旋轉矩陣表示姿態,以避免歧義。
下一個門的相對姿態通過提供四個門角相對于車輛的位置來編碼,從而得到一個?12中的向量。
所有觀測值在傳遞給網絡之前都經過歸一化(normalized)處理。由于值網絡僅在訓練時使用,它可以訪問有關環境的特權信息,這些信息對策略網絡是不可訪問的。
這些特權信息(privileged information)與策略網絡的其他輸入連接在一起,包含了機器人的確切位置、方向和速度信息。
訓練細節
數據收集是通過同時模擬100個代理與環境進行交互,每個代理在1500個步驟的episode中與環境交互來完成的。
在每次環境重置時,每個代理都會在賽道上的隨機門處進行初始化,代理的狀態在經過該門時先前觀察到,并且在其周圍進行有界擾動。與之前的研究不同,研究人員在訓練時不對平臺動態進行隨機化。相反,他們根據真實世界數據進行微調。
訓練環境使用TensorFlow Agents實現。策略網絡和值網絡都由兩層感知器表示,每層有128個節點,并且使用帶有負斜率為0.2的Leaky ReLU激活函數。網絡參數使用Adam優化器進行優化,策略網絡和值網絡的學習率都為3×10^-4。
研究人員根據在現實世界中收集到的少量數據對原始策略進行微調。
具體來說,他們在現實世界中進行了三次完整的試驗,相當于約50秒的飛行時間。
研究人員通過識別殘余觀測和殘余動態來對策略進行微調,然后將這些信息用于在模擬中進行訓練。在這個微調階段,只有控制策略的權重會被更新,門探測網絡的權重保持不變。
殘差觀測模型
高速移動會導致明顯的運動模糊,這可能導致跟蹤的視覺特征丟失和線性里程計估計的嚴重漂移。
研究人員通過在現實世界中僅進行少數試驗來確定的里程計模型對策略進行微調。
為了模擬里程計中的漂移,他們使用高斯過程,因為它們允許擬合里程計擾動的后驗分布,從中可以采樣出具有時間一致性的實現。
具體來說,高斯過程模型將殘余位置、速度和姿態作為地面實際機器人狀態的函數進行擬合。
觀測殘差是通過將真實世界中的試驗期間觀察到的視覺慣性里程計(VIO)估計與外部運動跟蹤系統獲得的地面實際平臺狀態進行比較而確定的。
無人機硬件配置
人類飛行員和Swift使用的四旋翼飛行器具有相同的重量、形狀和推進力。但由人類駕駛的無人機既不攜帶Jetson計算機,也不攜帶RealSense攝像頭,而是配備了相應的壓艙物。
1. 無人機機架
底座采用Armattan Chameleon 6英寸的主機架,配備了T-Motor Velox2306電機,以及5英寸3葉螺旋槳。
2. 計算平臺
使用英偉達Jetson TX2和ConnectTech Quasar載板為自主無人機提供了主要計算資源,集成了6核CPU和256核GPU。
3. 攝像頭
搭載了英特爾Real Sense跟蹤攝像頭T265,可通過USB向英偉達Jetson TX2提供100Hz的VIO估計值。
4. 飛行控制器
使用STM32處理器運行Betaflight軟件(一款開源的飛行控制軟件)來控制無人機。
5. 重量
整體無人機重量為870克,可產生約35牛頓的最大靜態推力,靜態推力重量比為4.1。
人類飛行員評價
與Swift比賽的三位人類冠軍都談了談和無人機比賽的感受:
Alex Vanover:
「比賽的勝負將在SplitS(指賽道上的一種飛行動作)時決定,這是賽道上最具挑戰性的部分。」
「這是我最精彩的比賽!我離無人機如此之近,在試圖跟上它時,我甚至能真切地感受到空氣的亂流。」
Thomas Bitmatta:
「AI的可能性是無限的,這可能改變整個世界的開始。但作為一名賽手,我不希望有任何東西比我更快。」
「無人機AI很快就會成為一種訓練工具,讓我們了解到人類的極限:隨著飛得更快,你會以精確度為代價來換取速度。但這也激發人們去思考無人機真正能做到的事情。」
Marvin Schaepper:
「與機器比賽的感覺很不一樣,因為你知道機器不會感到疲勞。」