狀態估計與濾波

無跡卡爾曼濾波器

無跡卡爾曼濾波器(UKF)是讓卡爾曼濾波器應對彎曲、非線性世界的另一種辦法——但它不像擴展卡爾曼濾波器那樣用數學把曲線壓平,而是對曲線進行取樣。其思路是:與其用一條直線去近似那些方程,不如把幾個精心挑選的點直接送進真正的方程裡走一遭,這往往更簡單、也更準確。要想知道一個被拋出的球在有風時落在哪裡,與其畫一條與球的軌跡相切的直線,不如真扔幾個測試球出去,學到的東西更多。

它的運作方式是這樣的。濾波器當前的不確定性,形狀像是圍繞最佳猜測的一團模糊雲霧。UKF 從這團雲霧裡挑出一小撮聰明而有代表性的點——稱為西格瑪點(sigma 點)——通常在中心放一個,再沿不確定性的每個方向各散開幾個。接著,它把這每一個點都送進機器人真實的、未經改動的運動方程和感測器方程裡,連同其中所有彎曲。看這些點最後落在哪裡,它就量出新的中心(均值)和新的散佈(協方差),再由此重建出更新後的雲霧——既不用求斜率,也不需要雅可比。

由於餵進去的是貨真價實的非線性方程,而不是一個壓平的替身,UKF 通常比 EKF 更忠實地跟住陡峭的曲線,計算開銷相當,而且不必手工推導導數。這種準確與便利,使它成為處理棘手系統的熱門選擇,比如航天器的姿態或無人機的劇烈機動。這個名字其實是發明者開的一個小玩笑,並無深意;真正要緊的是它核心處的西格瑪點訣竅。

為了追蹤一顆翻滾衛星的姿態,UKF 會在當前猜測周圍撒開比如十幾個西格瑪點,讓每一個點都按真實的旋轉方程向前轉動,然後從中讀出新的平均姿態,以及它有多不確定。

UKF 是透過把真實的測試點送過曲線來了解曲線的影響,而不是用一條切線去近似這條曲線。

西格瑪點是按公式挑出的、固定且數量很少的一小撮——並非隨機抽樣——所以 UKF 保持著快速而可預測的特性,這一點不同於撒下大量隨機樣本的粒子濾波器。

又稱
UKF无味卡尔曼滤波器無味卡爾曼濾波器