MAGAZINE
刊物內容

回列表

增強式學習應用於固定翼無人機之軌跡追蹤之研究

摘要"

本研究探討增強式學習(Reinforcement Learning)應用於X-Plane 12(https://www.x-plane.com)飛行模擬環境中,訓練固定翼無人機自主完成水平圓形軌跡追蹤之可行性。面對傳統飛行控制器需大量人工調參之問題,本文採用Soft Actor-Critic(SAC)演算法,透過與模擬器即時互動,使代理人(agent)從零自主學習飛行操控策略。系統設計涵蓋觀測空間建構、獎勵函數設計與終止條件設定等核心環節,並針對訓練過程中發現之角度跳變問題,將航向角與機首方位角改以正弦、餘弦表示,有效消除觀測值不連續之缺陷。經多階段訓練與獎勵函數迭代調整,代理人成功學習以約300公尺半徑於500公尺高度穩定繞圓飛行,為未來無人機自主巡邏任務提供一種可行的技術途徑。

關鍵詞:增強式學習、Soft Actor-Critic(SAC)、固定翼無人機、飛行模擬、自主飛行控制

前言

 

近年來,人工智慧技術發展迅速,機器自主學習的能力已大幅超越過去的想像。在眾多技術分支中,增強式學習憑藉其讓機器透過反覆嘗試與環境互動來習得最佳策略的特性,逐漸在各類複雜控制問題中展現出優異的潛力。飛行控制正是其中極具代表性的應用場域。傳統飛行控制器仰賴工程師依據空氣動力學原理手動設定控制參數,此一過程不僅耗費大量人力與時間,更難以因應飛行條件的動態變化。面對此困境,以資料驅動為核心的增強式學習方法,提供了一條有別於傳統工程設計的新路徑。


在增強式學習演算法的發展歷程中,文獻[1]於2018年提出的SAC演算法為連續動作控制問題帶來重要突破。不同於早期增強式學習方法容易陷入局部最優解的缺陷,SAC透過最大化累積獎勵與策略熵的雙重目標,使代理人在學習過程中得以兼顧任務表現與探索多樣性,有效提升訓練穩定性與收斂品質。此特性使SAC特別適合應用於飛行控制此類需要精細、連續調整的任務情境。


在飛行控制的實務應用上,增強式學習已有若干具體成果。文獻[2]於2019年的研究指出,以增強式學習訓練之控制器應用於無人機姿態控制時,在面對外部擾動的情境下,其適應能力優於傳統PID控制器。文獻[3]同年針對固定翼無人機的深度增強式學習控制進行研究,結果顯示深度增強式學習能有效處理固定翼飛機複雜的非線性動力學特性。固定翼飛機不同於旋翼機,須持續維持前進速度方能產生足夠升力,其控制問題之複雜程度相對更高,上述研究成果因而為本研究提供了重要的技術參照。


然而,直接以真實飛行器進行增強式學習訓練,不僅風險極高,所需成本亦難以負擔。每一次錯誤動作在真實環境中都可能造成不可逆的損失,而增強式學習的訓練過程往往需要數十萬次乃至數百萬次的嘗試方能收斂。因此,以高擬真度飛行模擬器作為訓練環境,成為當前研究的主流做法。文獻[4]於2019年的研究驗證了模擬到現實遷移的可行性,證明在模擬器中訓練的控制策略能夠有效移植至多種不同規格的真實旋翼飛行器,且無需針對每台飛行器重新調整參數,顯示模擬訓練框架具有相當的泛化能力。本研究採用X-Plane 12作為訓練平台,其飛行物理引擎獲航空業界廣泛認可,能夠真實模擬飛機的氣動特性與操控反應,為訓練結果的可信度提供了有力保障。


基於上述背景,本研究以X-Plane 12模擬環境為訓練場域,採用SAC演算法,針對固定翼飛機自主完成水平航跡飛行此一具體任務進行訓練與驗證。圓形飛行雖看似單純,實則要求飛行控制系統同時精準掌握轉彎半徑、飛行高度與前進速度三項關鍵參數,任一項目的偏差皆可能導致航跡失準,對增強式學習系統的控制能力構成嚴峻考驗。此外,航跡飛行亦是空中偵察、目標持續追蹤等實務任務的核心動作,具有明確的應用價值。


本文以下各節將依序介紹研究所採用之核心技術設計,涵蓋觀測空間與動作空間的建構、獎勵函數設計邏輯與訓練過程中問題之發現與修正,並進一步探討此類技術之應用情境、當前面臨之挑戰,以及未來發展之可能方向。

 

核心技術設計概念

本研究之核心目標,在於建構一套能夠在X-Plane 12飛行模擬環境中,透過增強式學習自主習得航跡飛行能力的智慧控制系統。整體系統架構可分為四個主要部分:模擬環境與飛行器設定、動作空間設計、觀測空間設計,以及獎勵函數設計。以下依序說明各部分之設計理念與技術細節。


1.模擬環境與飛行器設定:
本研究採用X-Plane 12作為訓練環境,並選用Cessna 172(C172)作為訓練飛行器。C172是全球使用最廣泛的單引擎小型固定翼飛機,以其飛行特性穩定、操控反應線性著稱,長期作為飛行員基礎訓練之標準機型。X-Plane 12對C172的飛行物理模型模擬精度極高,能夠真實再現其氣動特性與操控反應,使訓練結果具有較高的可信度與參考價值,實際飛行畫面如圖1所示。


訓練任務設定為以台灣桃園機場附近空域為場景,飛機從指定起始位置出發,目標為以圓心為基準、半徑300公尺、高度500公尺的水平航跡持續飛行。每個訓練回合最多執行350個控制步驟,每步間隔0.1秒,相當於最長35秒的飛行時間,足以涵蓋逆時針繞一圈的飛行過程。增強式學習代理人透過XPlaneConnect套件與模擬器進行即時通訊,每個步驟讀取飛機當前狀態、輸出控制指令,並根據飛行表現計算獎勵,總計將進行115萬步的訓練。


2.動作空間設計:
動作空間定義了代理人在每個控制步驟中能夠輸出的指令範圍,是增強式學習系統與飛行模擬器之間的溝通介面。本研究採用四個連續控制通道,分別對應飛機的四項主要操控輸入:副翼(aileron)、升降舵(elevator)、方向舵(rudder)與油門(throttle)。


副翼、升降舵與方向舵三個通道的輸出範圍均設定為–1.0至1.0,數值為正時對應向右或向上的操控輸入,數值為負時則相反,數值大小代表操控量的強度。油門通道的原始輸出範圍設定為0.0至1.0,但為確保飛機在訓練過程中維持足夠的飛行速度,避免因油門過低導致失速或高度持續下墜,實際輸入模擬器的油門值經過換算,限制在0.72至0.90的區間內。此設計讓代理人在控制油門時擁有一定的調節空間,同時避免極端油門值對飛行穩定性造成不必要的干擾。


上述四個通道共同構成一個四維的連續動作空間,SAC演算法的Actor網路在每個控制步驟輸出此四維向量,經裁切與換算後傳送至X-Plane 12,驅動飛機做出對應的飛行動作。整體系統的運作流程如圖2所示。


3.觀測空間設計:
觀測空間是增強式學習系統感知外部環境的唯一窗口,其設計品質直接影響代理人能否正確理解當前飛行狀態。本研究最終採用15維觀測向量,涵蓋飛機姿態、速度、角速率、導航誤差與時間進度等資訊。


飛機姿態方面,包含滾轉角與俯仰角,直接反映飛機當前的傾斜與抬頭狀態;航向角則以正弦值與餘弦值兩個數值表示,取代原始的角度數值。速度方面,納入三軸速度分量,使代理人能夠感知飛機在各方向上的運動狀態。角速率方面,包含滾轉率、俯仰率與偏航率,反映飛機姿態的變化速率。導航誤差方面,包含半徑誤差與高度誤差。航向偏差同樣以正弦值與餘弦值(表示。最後納入當前訓練時間進度,協助代理人感知飛行進程。


值得特別說明的是,本研究在設計觀測空間的過程中,發現角度數值的「跳變」問題是導致飛行行為異常的重要原因之一。以航向角為例,當飛機航向從359度轉變為1度時,實際上僅轉動了2度,但若直接以數值輸入神經網路,模型將感知到高達358度的巨大變化,進而做出錯誤的修正動作,在飛行軌跡上表現為機身突然從左傾急遽切換為右傾,此問題在訓練初期的飛行軌跡中尤為明顯,如圖3所示。為解決此問題,本研究將航向角與航向偏差均改以正弦、餘弦函數表示,使數值在任何角度下皆保持連續平滑,從根本上消除跳變現象。


4.獎勵函數設計:
獎勵函數是增強式學習系統中引導代理人學習方向的核心機制,其設計優劣直接決定訓練成效。本研究採用多項子獎勵加總的設計架構,各項子獎勵分別針對不同的飛行品質指標進行激勵或懲罰。


半徑獎勵為本研究最核心的獎勵項目,採用高斯函數形式計算,當飛機位於目標圓周附近時給予高額獎勵,偏離越遠則獎勵遞減。高斯函數的優勢在於任何位置都存在明確的獎勵梯度,代理人在距離目標較遠時仍能感受到靠近目標方向的引導訊號。此外,另設線性懲罰項,對偏離距離施以額外扣分,加強代理人回歸圓周的驅動力。


高度獎勵同樣採用高斯函數形式,以500公尺為目標高度,鼓勵飛機維持穩定的飛行高度。高斯函數的平滑特性避免了硬性邊界帶來的獎勵突變問題,使高度控制的學習過程更為穩定。穩定性懲罰針對飛機的三軸角速率施以懲罰,抑制過度劇烈的姿態變化,促使代理人學習平穩的飛行風格。其中偏航角速率設有額外的專項懲罰,以防止機身發生突然的偏轉動作。航向獎勵依據飛機當前航向與目標切線方向的吻合程度給予獎勵,引導飛機沿圓周切線方向飛行,而非單純停留於圓周附近。最後設有固定的生存獎勵,每個步驟給予固定加分,激勵代理人盡可能延長飛行時間,避免因迴避懲罰而過早放棄飛行。
 

 

...更多內容,請見《機械新刊》雜誌

READ MORE BACK TO LIST