这台无人机40小时经历上万次事故,终于借助AI学会了自动飞行
卡耐基梅隆大學的機器人專家Dhiraj Gandhi、Lerrel Pinto和Abhinav Gupta近期發表了一篇名為《通過事故來學會飛行》的論文。論文摘要很好地介紹了研究內容:
模擬環境和現實世界之間差異巨大,特別是在感知問題上。大部分研究避免大規模使用真實數據是因為擔心發生事故!在這篇論文中,我們認為應當接受事故,并收集關于事故的數據!我們開發了一臺無人機,其唯一目的就是與對象進行碰撞。我們利用負面的飛行數據,以及來自同樣路線的正面數據去了解無人機的飛行策略。
場面,大概是這樣:
對飛行、駕駛或行走等運動操作來說,不斷地避免事故就是成功。
從這種角度來說,最有效的飛行學習方式是獲得大量的事故經驗,從而知道如何避免這些事故。如果可以可靠地避免事故,那么就意味著學會了飛行。這很簡單,但我們通常并不是通過這種方式在學習,因為事故往往會給機器人和人類造成嚴重后果。
卡耐基梅隆大學的機器人專家希望看看,人為制造事故的策略是否能帶來幫助。因此,他們讓AR Drone 2.0無人機在20種不同的室內環境中去飛行,在40小時的飛行時間里發生了1.15萬次事故。
研究人員指出:“由于這種無人機的外殼成本很低,易于更換,因此災難性事故帶來的成本可以忽略不計。”
每次碰撞都是隨機的,無人機從空間中的隨機位置起飛,隨后緩慢前進,直到撞上障礙物。然后,無人機回到起點,選擇另一個前進方向。
在訓練過程中,無人機前方的攝像頭以30Hz的頻率拍攝照片。碰撞發生時,飛行軌跡照片被分成兩部分:飛機正常飛行的部分,以及事故發生前的部分,然后分別輸入到一個用ImageNet數據集預先訓練過的深度卷積神經網絡。神經網絡將學習什么樣的照片意味著繼續前進的決策是否正確。
在1.15萬次碰撞之后,他們最終得到的算法可以幫助無人機自動飛行,即使是在狹窄的空間里也能躲避移動的障礙物。這樣的無人機甚至還能躲避沒有任何特征的白墻和透明玻璃。
算法對無人機的控制邏輯很簡單:將攝像頭拍攝的照片分成兩部分:左側部分和右側部分。如果其中一張照片看起來碰撞的可能性要小于繼續直行,那么無人機就會轉向。否則就繼續前進。
目前這一算法仍然不如人工操作,尤其是在相對復雜的環境中,例如狹窄的走廊,或是擺滿椅子的走廊。
不過與最基本的方法,即單純感知景深相比,這一策略的效果更好,在不同環境下性能提升大約為2倍到10倍(以飛行時間和飛行距離來計算)。性能最明顯的提升是在面對白墻和透明玻璃時。景深感知方法在這兩種環境下的效果尤其不佳。
最關鍵的問題是,這種方法是否比另一種方法,即確保無人機在無碰撞情況下飛行,取得的效果更好,目前還無法做出判斷。
但可以看到,如果允許無人機發生事故,那么將可以實現無監督學習:只要將無人機放在室內環境中,算法就能自動學習。除了需要人類來給無人機更換電池之外,所有的數據收集和學習都是自動的。
如果你希望無人機在飛行時不發生事故,那么就需要為無人機尋找合適的路線。你可以選擇由人工介入,在環境中部署運動捕捉系統,或是繪制障礙物的三維地圖。然而,這樣做將帶來更高的復雜度。如果允許無人機發生事故,那么一切都變得簡單。(完)
論文地址:https://arxiv.org/pdf/1704.05588.pdf
本文作者:陳樺 原文發布時間:2017-05-12總結
以上是生活随笔為你收集整理的这台无人机40小时经历上万次事故,终于借助AI学会了自动飞行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [CQOI2015]任务查询系统
- 下一篇: 博览安全圈:360曝Office高危漏洞