2.4.1 貝葉斯濾波算法
最通用的算法對於計算信任度有貝葉斯濾波算法給出。這個算法計算信任度分布bel從觀測和控制數據中得出。我們首先陳述基本的算法,然后用數字例子來闡明。再之后,我們到目前為止所做的假設來推導它。
貝葉斯濾波的第二步稱為測量更新,在第四行,貝葉斯濾波算法用信任度乘以可能已被觀測到的量zt的概率。對於每一個假設的狀態xt這么做。當得到餓貝葉斯濾波方程將會很明顯,產生的乘積並不是一個概率,它不能積分得到1.因此,這個結果是歸一化的,通過歸一化因子η。這導致最后的信任度bel(xt),在本算法的六行返回。
為了遞歸計算后驗信任度,這個算法要求一個初始的信任度在零時刻t=0bel(x0)作為一個 邊界條件。如果已經確切知道x0的值,bel(x0)用一個質點分布來初始化,該分布聚集了所有概率質量在一個正確的x0上,認為其他地方的概率為0.如果初始值x0是完全不知道的,bel(x0)用一個在x0領域的均勻分布(or a related distribution from the Dirichlet family of distributions)來初始化。初始值x0的部分知識可以用非均勻分布來表達;然而,在實踐中完全知道和完全不知道兩個例子是最常見的。
貝葉斯濾波算法可以在這里陳述的形式中實現對於非常簡單的估計問題。尤其是,在第三行我們要執行積分,在第四行的乘積是閉環的形式或者我們把我們限制在一個有限的狀態空間中,以便在第三行的積分變成一個有限的求和。
2.4.2例子
此時,機器人相信有0.983的概率門是打開的。
2.4.3 貝葉斯濾波的數學推導
由歸納法表明了貝葉斯濾波的正確性。為了這么做,我們需要表示它正確的計算了后驗分布從對應的前一步的后驗分布
推導的正確性在下面這個假設,我們正確的初始化了先驗信任度bel(x0)在t=0時刻。
我們現在利用這個假設-我們的狀態是完全的。在章節2.3.1中,我們定義一個狀態xt是完全的如果在先於xt之間的變量,沒有可能影響將來狀態的隨機變化。特別是,如果我們已經知道狀態xt,並且對預測測量zt感興趣,沒有過去的測量和控制會為我們提供附加的信息。在數學式中,由以下條件獨立性表達:
任何這個算法具體的實現要求三個概率分布:初始信任度p(x0),測量概率p(zt|xt),狀態轉移概率p(xt|ut,xt-1)。我們仍沒有指明這些概率密度對於實際的機器人系統。但是很快:第五章完全致力於p(xt|ut,xt-1)以及第六章致力於p(zt|xt)。我們也需要對信任度bel(xt)的表示,在低三四章討論。
2.4.4 馬爾可夫假設
馬爾可夫假設過去和將來的數據是獨立的如果我們知道當前的狀態xt。為了見證這個假設的嚴肅性,讓我們考慮移動機器人定位的例子。在移動機器人定位中,xt是機器人的位姿,貝葉斯濾波應用於估計一個固定地圖中的位姿。以下因素對傳感器的數據有系統性的影響。因此,他們產生了違反馬爾可夫假設:
2.5 表示和計算
當選擇一個近似的時候,我們必須犧牲其他的性能:
2.7 數目評論