• 沒有找到結果。

2. 蒙地卡羅定位方法

2.2 原始蒙地卡羅定位方法

2.2.1 b 校正階段

2.2.1b 校正階段

接下來便是 normal node 利用現在所接收到的資訊,也就是更新最新 anchor

nodes 的限制,其中我們假設 zk 跟 Zk-1在給予 xk的前提下是獨立的,最後利用

由之前圖 2.5 可以知道,prediction region 不同區域會占有不同的 weight,

最終的估計值如下式:

[

k

|

k

]

k

(

k

|

k

)

k

E x Z   x p x Z dx

(2.10)

但是不同的 sample 要去考慮 prediction region 中不同的 weight 過於複雜,

蒙地卡羅定位法為了簡化起見,令在限制範圍外的機率是 0,而在限制範圍內假 設是 uniform distribution,所以我們可以簡化成下式:

,

2.2.2 蒙地卡羅定位法(Monte Carlo Localization) 流程

在這裡我們要解說蒙地卡羅定位法(Monte Carlo Localization,簡稱 MCL)的 實際做法,在這裡分為兩種情況去做解說。

2.2.2a 一般階段

在一般的情況下,如式子(2.7)所述,可以利用上一個 time slot 的資訊多加 做限制,所以我們由此限制中產生 candidate,產生的方式我們以圖 2.7 配合來 做解釋:

圖 2.7 MCL 產生 candidate 示意圖

圖中黑色三角形點表示 normal node 上一次 time slot 的 samples,紅線代表 Vmax,白色三角形代表 candidate。新的 candidate 會以上一個 time slot 中的 一個 sample 為中心點,往外擴增 Vmax 的範圍內隨機產生。因為上一個 time slot 的 sample 有五十點,每一個舊的 sample 產生一個新的 candidate,最後可以產 生五十點新的 candidate。

接著 candidate 必頇經過 anchor node 的檢驗,如果滿足 anchor constraint 的 candidate 會被留下,剩下的則是濾除。如果新的 sample 不滿足五十點,會 再從 prediction region 產生五十點新的 candidate,再去經過 anchor node 的 檢驗,直到滿足五十點為止。以整體來看,產生跟合格的區域如圖 2.8 表示:

經過 anchor node 的限制

圖 2.8 prediction region 跟 anchor node 的限制交集所形成的樣本區

黃色方形代表 normal node,黑色虛線圍成區域代表上一個 time slot 此 normal node 的 samples 所形成的區域,紅色線條是代表 Vmax,黃色區域代表 prediction region,也就是產生 candidate 的區域,藍點則是現在 anchor node,

往外擴增為其所形成的範圍。所以我們可以看到黑色線條所佔有的區域便是合格 區域。

2.2.2b 初始階段

在初始點時也就是第一個 time slot,我們並沒有上一個 time slot 的資訊,

所以我們無法在 prediction region 內產生 candidate,我們只能所有可能出現 的區域去產生 candidate,以圖 2.9 為做為解釋:

圖 2.9 表示所有可能區域跟 anchor 的範圍

褐色長方形表示所有可能的出現範圍,藍色圓代表 anchor node 跟其所形成的 範圍,因為一開始沒有任何資訊,所以我們會在長方形內去 random 產生

candidate 。這種方法是最耗時且耗能的方法。

接下來是檢察 candidate 有沒有符合 anchor constraint,以圖 2.8 解釋就是 當 candidate 落於黑色線條的區域才會被留下,在黑色線條區域外的 candidate 則會被濾除掉,當點數沒有達到五十點時,會再從褐色長方型內產生 candidate 再經過 anchor 的濾除,一直重複到點數到達五十點時便停止。而最終的估計點 就是這五十點 sample 的平均點,也就是去找交集區的中心點。

以上便是蒙地卡羅定位法所用的方法和步驟,此方法的優點就是利用簡單的數 學就可以找出近似於交集區中心點的估計點,但是缺點就是在 anchor node 密度 低時,準確度會不夠,所以就有人提出合作式定位來提高準確度。我們在下一小 節便會介紹幾種利用合作式的蒙地卡羅定位法。

2.3 合作式蒙地卡羅定位法 是三圓的交集區,進而提升精準度。我們稱此限制為 normal node constraint。

我們以下列式子來表達增加合作式定位的改變:

( |

i

) 1

Ai 們知道 normal node 的初估位置,利用 sample 所形成的區域來代表 normal node 點,如圖 2.11 所示:

加入位置不確定性

圖 2.11 擴大 normal node 的可能區域以加入不確定性

黃色方塊表示 normal node 的正確位置,紅線代表通訊半徑,黑色虛線區域代

表此 normal node’s samples 所形成的區域。因為無法確定 normal node 的真 實位置,所以利用 sample 點所形成的區域做為代表,也就是擴大限制的範圍以 加入不確定性,這種做法很像之前所提到的 prediction region。

但是此種作法會陎臨一個問題,就是如何去表示不規則形的 sample 陎積。如 果像之前所提的 prediction region,去檢查此 candidate 是否跟五十點 sample 有任何交集會提高的運算負擔。因此,如何去簡化合作式定位所帶來的負擔並提 升準確度是目前熱門的研究方向。

這裡我們提出兩種別人的方法做為代表,分別是 Improved 蒙地卡羅定位法 [22]和 Weight 蒙地卡羅定位法 [21]。

2.3.1 改良型蒙地卡羅定位法(IMCL)

Improved 蒙地卡羅定位法 [22] 在處理合作式定位的問題時是利用切割的 方法,求近似的 sample 陎積,我們以圖 2.12 作為解釋:

找出每個區域的半徑

圖 2.12 利用切割方法近似樣本區

三角形代表 sample 點,紅線代表半徑。

此方法一開始先找出五十點的平均點,以此點當作原點,然後去切割區域,以 圖 2.10 來說就是切割成四個區域,分別找出四個區域中離原點最遠的點,以此

點到中心點的距離當作此區域的半徑,每個區域都有屬於自己的半徑。所帶來的 效應我們以圖 2.13 做為解釋:

經過合作式的協助

經過近似方法

圖 2.13 切割方法近似不規則樣本區的合作式定位

上圖黃色方塊表是 normal node,黃色虛線是其的範圍,藍點表是 anchor node 及其範圍。經過測詴後,當切割成八個區域後平均誤差會開始收斂,所以此種方 法利用切割的方法去近似不規則的陎積而達到簡化的效果。

在 Improved 蒙地卡羅定位法內還有提到 sample 點數縮減的方法[18]。因為 此作者們認為當可能區域小的時候,sample 的個數不需要取到五十點便可以代 表此區域的特性。也就是當可能區域陎積越小,所需要的 sample 點數越少。但 是此種作法要陎臨兩個問題。第一,我們需要先去估算可能區域的陎積大小,在 此情況可能區域還沒有 sample 點可表示,所以無法使用切割近似的方法,必頇 利用其他的方法。第二,需要找出 threshold。可能區域陎積跟 sample 點個數 要如何對,因為 sample 個數不只會影響到平均值是否接近中心點,也會影響合

作式定位的效能,因為我們需要 sample 點來加入 normal node 的不確定性,如 果隨意改變 sample 個數,可能讓 sample 不能完全代表可能區域,進而造成 normal node 的範圍跟 anchor node 的範圍沒有交集,所以我們再往後模擬都會 取五十點 sample 做為代表。

2.3.2 加權蒙地卡羅定位法(WMCL)

Weight 蒙地卡羅定位法 [21]再處理 normal node 的問題則是提出兩種方法,

經由不同的方法可以使每一個 sample 對不同的 neighbor normal node 有不同 的 weight,進而提高精準度。

因為對於每一個 sample 我們都有加 weight,所以我們先討論對 anchor node 的 weight,因為 anchor node 是確定的,所以一定要在 anchor node 內,蒙地 卡羅定位法又假設在範圍內的機率分佈是 uniform distribution,所以在這個 層陎只考慮有在範圍內或是沒有,在 anchor 範圍內 candidate 的 weight 為 1,

在 anchor 範圍外的 weight 為 0,也就是會被濾除掉。

再來便是討論對鄰近 normal node 的 weight。我們先討論第一種方法。之前 的方法 IMCL 是把鄰近 normal node 視為 virtual anchor node。但是如果我們 採用 sample 代表鄰近的 normal node 就會遇上之前 prediction region 的 weight 問題,一般的做法是只有考慮在範圍內或是範圍外,如同 IMCL。所以此種方法 (WMCL)是去討論如果對鄰近 normal node 沒有省略 weight 會來的效果。目前我 們只考慮鄰近 normal node 的影響,我們以下式子做為解釋:

[ |

i i C

]

i

( |

i

,

C

)

i

xE s sR   s p s Nj NjR ds

(2.16)

x代表估計出來的位置,si 代表 sample, Nj 代表鄰近 normal node 的座標,

RC代表鄰近 normal node 的集合,由(2.16)我們可以知道關鍵是如何找出 p(si|Nj,NjRC),原本的方法如同圖 2.5 所示,每一個鄰近的 normal node 先 找出自己的聯集範圍跟每一個區域的 weight,再去看待測 normal node 的 sample 位於哪一個區域,乘上 weight,如下式所示:

candidate 對此鄰近 normal node 的 weight 便是 0,也就是要被濾掉。如果包含

此鄰近 normal node 的 sample 點越多,表示此 candidate 越靠近鄰近的 normal node,代表此 candidate 越可靠,所以 weight 也越大。我們以圖 2.14 做為解釋:

a b

圖 2.14 WMCL 的 weight 算法示意圖

黃色方形 b 代表我們要量測的 normal node 的 sample,黃色方形 a 代表鄰近 的 normal node,三角形為此鄰近 normal node 的 samples,紅線代表 R+Vmax。

圖中可以得知此 sample 對此鄰近 normal node 的 weight 是 4/10。

對每一個鄰近 normal node 都做此動作,然後會做跟式子(2.17)一樣的動作,

把對每一個鄰近 normal node 的 weight 相乘當作此 sample 的暫時 weight。

一直重複此過程直到最後找出五十點 weight 非零的 sample 後,便是代表此待 測物 normal node 的 sample 點。但是此種作法所得到的 50 個 weight 相加後不 保證等於 1,所以 50 點的 weigh 會經過 normalize,使 weight 相加後會等於 1。

接下來是要介紹第二種方法,因為要記錄所有 50 點 sample 並且一一檢查過於 複雜,WMCL 提出第二種方法來做簡化,這裡利用方形來做為代表整個 sample 群,

此方形為包圍此 sample 群最小的方形,如圖 2.15 所示:

經過方形簡化

圖 2.15 方形近似示意圖

然後原本以 sample 點為圓心的圓也利用外包的方形近似,去計算兩者重複的 陎積,如圖 2.15,陎積比例等於黑色線條覆蓋區域比上黃色虛線的小方形,用 此比例經過 normalization 後當作 weight。在 paper 模擬中,此種近似法方法 跟第一種方法表現相差不大,所以此篇作者認為可以方形近似法來取代原本繁複 的方法。

在這篇 paper 中作者還有提到 bounding box[17]。建立 bounding box 是為了 提高 sample efficiency ,sample efficiency 是指 sample 個數比上 candidate 的個數。當 sample efficiency 越高表示不需要產生多個 candidate 就能得到足 夠的 sample 點,如此一來便可以減少運算的成本跟提高運算的速度。而且建立 bounding box 不需要額外的資訊且不需要複雜的數學運算。bounding box 如何 提到 sample efficiency 我們以圖 2.16 來做解釋:

圖 2.16 說明 sample efficiency 過低的示意圖

黃色不規則區域表示 prediction region,藍色圓形區域代表這次 time slot 所接收到的 anchor node 範圍,黑色斜線覆蓋區域便是交集,也就是可能的區域。

由上圖可以知道,我們之前是由黃色不規則區域產生 candidate,但是合格區 域只有黑色斜線覆蓋區域,可以看出兩者的比例甚低,便可以推想出 sample

由上圖可以知道,我們之前是由黃色不規則區域產生 candidate,但是合格區 域只有黑色斜線覆蓋區域,可以看出兩者的比例甚低,便可以推想出 sample

相關文件