• 沒有找到結果。

2. 蒙地卡羅定位方法

2.1 背景

Range-free 的方法有很多種,大致上可以分為四大類。

第一種為 Local Techniques,此種方法最簡便,其代表為 Centroid [11]。利 用接觸到的 anchor nodes 的位置平均值做為待測物的估計位置(X,Y)。

其中(Xi,Yi)為 anchor nodes 的位置,n 為接觸到的 anchor node 的個數。以圖 2.1 為例:

圖 2.1 Centroid 的示意圖

黃色方形代表待測物 normal node,藍點代表接觸到的 anchor nodes,紅點代 表沒有接觸到的 anchor nodes。Centroid 的方法就是把三個藍點相加平均當作

待測物 normal node 的估計值。也有根據 Centroid localization 加以改良的方 法[12]。

Centroid 的方法是需要在 anchor node 密度高的情況下才可以使用,因為當 密度低時,待測物 normal node 容易無法偵測到任何 anchor node 資訊,所以無 法使用 Centroid 的方法。於是有人提出另外一種方法--Hop-Counting

Techniques。

第二種為 Hop-Counting Techniques,其代表為 APS(Ad hoc positioning system)[13]。此種方法的假設是資訊可以藉由 hop by hop 的方式傳送,所以就 算在範圍外的 anchor node 資訊也可以得到。因為 anchor node 的位置已知,所 以可以算出之間的距離,接著再去找出 anchor nodes 兩兩之間最少待測物 normal node 個數的路徑,把距離去除以 normal node 個數當作 normal node 跟 normal node 之間的平均距離,下式中以 Ci 來表示:

圖 2.2 Hop-Counting Techniques 的示意圖

藍點代表 anchor node,黃色方塊代表 normal node。計算到 L1 的一個 hop 距離=(100+40)/(2+6),計算到 L2 的一個 hop 距離=(40+75)/(2+5),計算到 L3 的一個 hop 距離=(100+75)/(6+5)。此種方法也有改善的方法[14]。

然而也有人認為範圍的限制可以分段,不只分有接收到跟沒有接收到,有區分 待測物 normal node 位於 anchor node 的那一段範圍,此種方法為第三種方法 CPE (Convex position estimation)[15,23]。量測出待測物 normal node 分別 在哪一個 anchor node 的哪一段範圍內,寫成誤差值絕對值的平方和,再利用 convex optimization 運算去解出最佳解,最終表示式如下

.

Minimize c x

T

s t Axb

(2.3)

我們以圖 2.3 為例:

r R

圖 2.3 Convex position estimation 示意圖

藍點代表 anchor node,黃色方塊代表待測物 normal node。我們令 normal node 座標以 x 為代表,anchor 座標以 ai為代表,我們可以寫成下列式子:

第四種方法便是 MCL(蒙地卡羅定位法)[16,17,18,19,20,21,22]。之前 range-free 的方法不是太簡便而不準確,例如 Local Techniques,就是需要複 雜的數學運算,例如: Convex position estimation。MCL 是介於之間的方法。

而且蒙地卡羅定位法不像 Hop-Counting Techniques 必頇用於靜止的狀態,蒙地 卡羅定位法可以適用於待測物 normal node 和 anchor node 都是可移動的情況。

位是我們要解決的問題。蒙地卡羅定位法[26]是針對此問題的方法之一,蒙地卡 羅定位法是中和前一小節中所介紹的 Convex Position Estimation 和 Local Techniques。Local Techniques 不適用於一些情況,如

圖 2.4 所示:

圖 2.4 Local Techniques 錯估示意圖

藍點代表 anchor node,黃色方塊代表待測物 normal node,紅色虛線方塊代 表待測物 normal node 的估計位置,黑色虛線條區域代表 anchor node 範圍的交 集區。由圖中可以看出在此情況下,估計出的點會完全不符合在三個 anchor node 範圍內的特性。使用 Convex position estimation 又必頇牽扯到複雜的 convex optimization 來找出最佳解。找出估計點必頇滿足估計點位於黑色虛線區域的 特性,所以蒙地卡羅定位法利用取 sample 來代表位於此區域的特性。另外蒙地 卡羅定位法有考慮到 normal node 具有移動的特性,所以也針對移動特性加以改 良。接下我們要介紹蒙地卡羅定位法,一開始我們先配合著圖 2.5 做名詞的解釋。

圖 2.5 MCL 名詞解釋示意圖

Normal node : 未知位置的節點。也就是我們要定位的點,具有移動的特性,

例如手機,筆記型電腦等。在合作式定位系統[21,22]下,會將自己的位置廣播 給四周。在圖 2.5 中黃色方塊代表 normal node。

Anchor node:是已知位置的節點。裝載 GPS 設備的儀器,隨時都可以知道目前 的位置,例如移動式基地台。Anchor node 本身就會將自己的位置廣播給四周,

Sample : 和 normal node 具有相同特性的點,所以可以代表 normal node。

Sample 是隨機散佈於樣本區中的樣本點。為了得到 normal node 的估計點,我 們取 samples 的平均做為 normal node 的估計位置。在圖 2.5 中白色三角形代 表 sample。

Candidate:為了隨機產生 sample,我們一開始隨機所產生的點,還沒有經過

任何限制檢驗,所以不一定跟 normal node 有相同的特性。在圖 2.5 中全部的三 生 sample。在 sample 數夠多的情況,我們可以利用 sample 所形成的交集來代 表此區域(樣本區)。而中心點我們就是取 sample 的平均,此平均就是我們所要

的機率分佈 p(xk|Zk-1)。然而對於時間轉換的關係,我們只知道這次 time slot 外擴增 Vmax(紅線)形成這次 time slot normal node 可能的區域範圍(三個黑色 圓所形成的範圍),我們假設之前三個 sample 所發生的機率是相同的,所以在這 個 time slot 新的 sample 落於黑色線條區域的可能性會最大,其次是灰色虛線 條區域,落於空白區域的可能性最小,落於可能區域範圍的機率則為 0。所以我 們可以由之前 time slot 所提供的資訊找出現在 time slot 新的 sample 機率分 佈。我們稱此區域的聯集為 prediction region。

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

上圖黃色方塊表是 normal node,黃色虛線是其的範圍,藍點表是 anchor node

相關文件