“Neural-Fly較有意思的應用是飛行汽車或城市空中交通。隨著空中交通密度的增大,人類必將需要更精準、更智能、更安全、適應性更強的決策方法。現在我們正把Neural-Fly應用在四旋翼以外的無人機系統上,尤其是能夠垂直起降的電動無人機。其他應用場景包括無人機運貨、飛行救護車等。”即將于2023年入職卡內基梅隆大學機器人研究所擔任助理教授的石冠亞表示。

石冠亞在調試位于加州理工學院CAST實驗室的風墻
近日,他研發出一個名為Neural-Fly的基于深度學習的機器人控制方法。Neural-Fly的方法論和理論部分,并不局限于飛行機器人,而是適用于所有可以由歐拉-拉格朗日方程描述的機器人系統。目前,該團隊正考慮將方法擴展到足式機器人上,并取得了一定進展。

相關論文以《Neural-Fly能夠在強風中快速學習敏捷飛行》為題發表。石冠亞擔任共同第一作者(首字母順序),加州理工學院工程與應用科學系教授Soon-Jo Chung擔任通訊作者。

相關論文
這項研究開始于2019年末,最初立項是因為雖然該團隊之前的工作“Neural-Lander”很好解決了單一環境下學習空氣動力學的問題,但是它并不能在動態環境中進行在線自適應。
另一個立項動機是,2017年開始加州理工學院建立了機器人與自動化中心。令石冠亞非常激動的是,該中心引入了可以即時控制風況的風墻。不同于傳統風洞,研究人員能在這個風墻前面飛行無人機,而傳統風洞通常需要把飛行器固定住。
因此,他很自然地產生了如下想法:為什么不能從多個風況中收集數據,用深度學習的工具從這些數據中“學習規律”,然后做在線自適應控制呢?

風墻
很快,他們將想法付諸行動。項目第一步便是收集數據,最后收集了6組不同風況下、累計12分鐘的飛行數據。

數據收集
收集數據后,課題組開發出一種元學習算法DAIML,來學習一組能代表所有風況的基函數,這組基函數由一個深度神經網絡表征。本質上,DAIML近似地解決了一個帶有對抗性判別器的雙層優化問題。

得到這組基函數后,他們又開發出與之匹配的非線性自適應控制算法,來進行在線權重更新。具體來講,所開發的自適應控制算法基于復合自適應控制,并引入了譜歸一化和L2正則化來保證指數穩定性和魯棒性。

算法開發完畢后,下一步便是測試。課題組首先在風墻中測試了Neural-Fly的控制精度,并與其他一些自適應控制算法進行了橫向對比。值得注意的是,他們測試的最高風速為1 2米/秒,而數據收集過程只包括了0米/秒~6米/秒的風速。也就是說,其開發的DAIML算法所學到的基函數,有著很強的泛化能力。


同時,他們還測試了Neural-Fly在戶外飛行的表現。結果發現,即便沒有室內定位系統,Neural-Fly在室外的表現也非常優異和魯棒。

完成算法開發和實驗后,接下來就是一些有意思的“秀肌肉”的場景。比如,無人機在風中精準穿越障礙物等演示。

當然,研究過程也絕非一帆風順。從立項到論文發表,課題組先后損壞了兩架無人機和27個旋翼。這再一次說明,如果想在無人機等對安全性要求極高的系統中應用基于深度學習的方法,必須慎之又慎。
另一個比較有意思的事發生在該團隊接受一家外媒采訪時。采訪當天,他們買了一把印有Caltech logo的雨傘,結果發現測試的風速能夠輕易吹壞雨傘,而無人機可以穩定保持位置和姿態,誤差僅在1厘米左右。

損壞的旋翼圖片
就相關技術內核來說,該團隊感興趣的問題是,機器人如何在一個未知且動態的環境中,可以快速、可靠地在線自適應學習。比如,其希望一個足式機器人能夠適應復雜的地表環境,從而在不同地面上都能健步如飛;以及希望一個無人機能夠在線適應復雜的空氣動力學,從而在變化的強風中保持穩定和精準飛行。
這個問題的挑戰性來自于3個方面:
(1)復雜的動態環境決定了機器人的動力學方程,是高度非線性并且時變的,這就要求機器人的控制算法能夠進行快速在線自適應。
(2)對于無人機等機器人系統,可靠性非常重要,該團隊需要保證控制算法在理論上是魯棒的、穩定的、安全的。
(3)機器人可在線調動的計算資源是有限的,比如此次項目僅僅使用了樹莓派,因此課題組需要設計高效且可行的控制算法。
鑒于深度神經網絡對于復雜模型的強大學習能力,基于深度學習的控制算法在很多問題上都取得了進展。然而,純粹基于深度學習的方法并不滿足上述要求。
一方面來講,即便遷移學習、元學習、表征學習等方法,能對學到的模型進行一定程度上的微調和自適應。但通常來講,研究人員不可能只利用機載資源對一個多層神經網絡模型進行高頻微調。
比如,在此次項目中,課題組需要比50赫茲更快的模型更新頻率,來應對快速變化的空氣動力學,這個頻率遠遠超過神經網絡的在線更新速度上限。另一方面,由于模型的黑箱屬性,基于深度學習的控制算法通常很難保證閉環系統的安全性、魯棒性和穩定性。
在控制理論中,自適應控制關注的問題,在于如何設計控制器來適應未知的動力學模型。其中,最有代表性的框架,被稱為模型參考自適應控制。
不同于基于深度學習的方法,模型參考自適應控制首先對動力系統進行建模,模型中有一些參數是未知的比如無人機的負載重量。然后,模型參考自適應控制會基于這些未知參數,設計一個控制法則和一個自適應法則來更新未知參數,從而實現閉環系統的收斂性和李雅普諾夫穩定性。
但是,傳統自適應控制只能解決參數化不確定性問題,也就是說它必須知道動力學模型不確定性的“結構”或者“形式”。另外,傳統自適應控制很難從離線數據中學習規律來優化在線自適應過程。
而Neural-Fly融合了模型參考自適應控制的哲學和現代深度學習的方法論。具體來講,該團隊提出了一種新的自適應控制框架:元自適應控制。
其核心思想如下。首先,該團隊收集多個不同風況下的飛行數據。之后,他們開發了一種元學習算法(DAIML)去優化一組能代表所有風況的基函數,這組基函數由一個深度神經網絡表征。
再后,其又開發了與之匹配的非線性自適應控制算法,來進行在線權重更新。換言之,處于離線階段的Neural-Fly,學習了能表示不同風況下空氣動力學的一組基函數,然后在在線階段通過模型參考自適應控制的框架重新組合這組基函數。

值得注意的有兩點:其一,該團隊并未學習全部的動力學模型,而是專注于去掉相對簡單的剛體動力學之后的殘差空氣動力學。這種基于模型的殘差學習的主要優點是,它極大提高了數據利用效率,并能提供自適應控制器的基本結構。其二,受益于模型參考自適應控制的框架,該團隊的方法有嚴格的李雅普諾夫穩定性和魯棒性保證。
這樣的研究也得到了審稿人的好評,他們一致認為該團隊的工作提出了一套新穎的、基于深度學習的自適應控制框架。
其主要優勢有:一方面數據效率和計算效率很高,只需12分鐘數據,且可以在機載微型計算機上運行;另一方面還有安全可靠的理論保障;最后,該研究的控制效果遠好于一眾基線方法。