Skyfaring
多架無人機在多雲天空中飛行,象徵無人機群威脅
圖片:Valentin Zickner
無人機強化學習人工智慧防禦系統

不要打已死的無人機:action masking 如何讓 AI 快 10 倍學會防禦決策

更有趣的是行為層面。論文的視覺化截圖顯示,RL agent 面對多架無人機同時逼近時,會主動把資源集中在高價值區域,對低威脅目標降低優先級。這個策略沒有人明確編程給它,它是從大量模擬互動中浮現出來的。
AI 初稿 / skyfaring 編輯校正📅發布:2026年5月25日👁— 次瀏覽

50 架無人機從邊界湧入。它們有快有慢,有大有小,炸藥載量也各不相同。防線只有 4 組攔截武器,每組射擊後需要冷卻。三個關鍵設施分散在不同位置,價值也不一樣。

每 0.1 秒,系統要做一次決策:這 4 組武器,各自去打哪架?

這不是一個能靠直覺解決的問題。

規則系統的侷限

傳統做法是寫規則。「距離最近的優先」、「爆炸力最大的優先」,這類啟發式邏輯說得通,實作也快。問題在規模。

當 50 架無人機同時逼近,靠距離排序,4 組武器可能全擠向同一個象限,讓另外兩個設施完全無人看守。靠爆炸力排序,會忽略武器當前的狀態。一組武器正在轉向(chasing 狀態),還需要幾步才能鎖定目標,這時候貿然指派它去打「最危險的」,不如讓另一組已鎖定的武器先出手。

規則無法在多個武器之間做動態協調,也無法預測長期後果。它只看當下。

Alessandro Palmas 在 2025 年發表的這篇論文,想用強化學習取代規則層。

訓練出了問題

強化學習的思路是:不寫規則,讓 AI agent 在模擬環境中反覆試錯,自己學出最好的策略。把問題形式化為 POMDP(部分可觀測馬可夫決策過程),讓 agent 在每一個 timestep 觀察環境狀態,選擇每組武器的目標,收到回饋,更新策略。

訓練卻比預期慢得多。

問題出在動作空間。每一步,agent 可以選擇的目標包含所有 50 架無人機,無論它們是否仍在飛行。已被擊落的無人機、已撞上目標的無人機,都還出現在選項裡。在強化學習的框架下,agent 要通過負面回饋才能學會「這個選擇沒有意義」。它必須不斷犯這個錯,才能把它學走。

這是一種系統性的浪費。

刪掉蠢選項

解法叫做 action masking。做法很直接:每一個 timestep,系統根據當前環境狀態,動態生成一張可用目標清單。已被中和或已撞上目標的無人機,從選項裡移除。agent 的動作空間隨著情境即時縮小,它不需要學「不要打死的目標」,因為死的目標根本不出現在面前。

這個改動的成本幾乎是零。維護一張即時更新的黑名單,額外計算量可以忽略不計。

效果是:MaskedPPO 的收斂速度,比標準 PPO 快了整整 10 倍。

結果

這篇論文的評測設計很嚴謹:50 架無人機,4 組防禦武器,3 個保護區域,每組設定跑 100 次模擬,重複 5 個隨機種子,共 500 次完整模擬。比較對象是一套精心設計的規則基準。

數字如下:RL agent 把平均傷害從 52.14% 壓到 40.70%,降幅 22%;追蹤效率從 53.29% 提升到 66.81%,提升 25%;武器利用率從 54.99% 提升到 63.29%,提升 15%。

更有趣的是行為層面。論文的視覺化截圖顯示,RL agent 面對多架無人機同時逼近時,會主動把資源集中在高價值區域,對低威脅目標降低優先級。這個策略沒有人明確編程給它,它是從大量模擬互動中浮現出來的。

規則系統沒有「高價值區域值得集中防守」這個概念,只有固定的排序邏輯。

「不做什麼」也是決策

這篇論文最值得細看的地方,不是 RL 比規則好這個結論,而是 action masking 背後的設計思路。

給決策系統更少的選擇,有時候比給它更多資訊更有效。把無效選項從動作空間裡清除,學習變得更快,策略也更穩定。在這個案例裡,零成本的介入帶來了 10 倍的訓練效率。

「不做什麼」和「做什麼」,從來都是同等重要的決策。