第三章 距離估計模型
第三節 判斷傳輸類型演算法
在無其他遮蔽物的環境下,若使用者為接收端,AP 為發送端,其兩者之間的 傳輸模式可能是 LoS 或 NLoS,若猜 LoS 和 NLoS 的機率皆為 1
2,實際是 LoS 傳 輸的機率為 p,NLoS 是 1−p,則正確機率為
1
2(1 − 𝑝) +1 2𝑝 =1
2
第三章的第一節中,我們舉出了 LoS 與 NLoS 的路徑損耗模型,用兩個模型來增 加距離估計的精確度,但這個前提是,我們能判斷當下的傳輸模式。為了達到這 項目標,我們採用測量時樣本的另一個資訊,標準差(σ)來判斷當下的傳輸模式,
觀察 Fig2-6 與 Fig2-10 發現,無論是 indoor 或者 outdoor 環境,距離對應到σ樣 本,經由 MMSE 的線性回歸以後, LoS 傳輸下σ隨著距離變大而略為遞增,NLoS 傳輸下σ則隨著距離增大而有下降傾向,但在起始距離時,NLoS 的σ則大於 LoS。
這項資訊將在我們下列介紹的演算法中用到。以室內環境為例,在 Fig.2-6 中,
使用 Linear Regression 並採用 MMSE 所建立的距離對應到σ的函數,可以概略的 知道在各距離下,所對應到的可能σ。
根據第一節的距離估計模型,假設在 LoS 和 NLoS 傳輸中,系統已建立好兩 套距離估計模型,分別為 LoS 和 NLoS 傳輸模型,並經由 MMSE 的線性回歸繪 出兩條直線,函數的 index 為 L 代表 LoS,N 代表 NLoS。
SNR 值對應到距離的函數:𝑓𝐿(𝑥)與𝑓𝑁(𝑥) 距離對應到σ的函數:𝑔𝐿(𝑥)和𝑔𝑁(𝑥)
Algorithm 1
Input:
𝑆𝑁𝑅1, 𝑆𝑁𝑅2, … , 𝑆𝑁𝑅𝑛Output: LoS communication or NLoS communication.
Step1.
find mean and standard deviation by 𝑆𝑁𝑅1, 𝑆𝑁𝑅2, … , 𝑆𝑁𝑅𝑛. Let 𝑋̅ be the mean and STD be the standard deviation by the input.Step2.
if |𝑆𝑇𝐷 − 𝑔𝐿(𝑓𝐿(𝑋̅))| ≤ |𝑆𝑇𝐷 − 𝑔𝑁(𝑓𝑁(𝑋̅))| : return "LoS communication".else :
return "NLoS communication".
在演算法 1 中,我們假設已知𝑓𝐿(𝑥)、𝑓𝑁(𝑥)與𝑔𝐿(𝑥)、𝑔𝑁(𝑥)兩組函數。則演 算法 1 在接收到 n 組 SNR 值後,基於此 n 筆資料的帄均值𝑋̅,可找出兩個可能的 估計距離𝑓𝐿(𝑋̅)、𝑓𝑁(𝑋̅),因不同的距離也有各自對應的標準差,再藉由 n 筆資料 的標準差𝑆𝑇𝐷來與兩個估計距離所對應的標準差𝑔𝐿(𝑓𝐿(𝑋̅))、𝑔𝑁(𝑓𝑁(𝑋̅))做比較,
較為接近者,演算法決定此傳輸模式為 LoS 或 NLoS 並採用相對應的估計距離。
此方法適用在接收端不動的情形,若是容許接收端可在原地進行 180 度的轉動,
則有更為有效的辨別方式,下陎將列出兩種判別方法。
Algorithm 2-1(單層 window)
Input:
𝑆𝑁𝑅1, 𝑆𝑁𝑅2, … , 𝑆𝑁𝑅𝑛.
Output: Now is in LoScommunication or NLoS communication.
step1.
𝑆𝑁𝑅1, 𝑆𝑁𝑅2, … , 𝑆𝑁𝑅𝑛are transformed to 𝑆𝑀𝐴1, 𝑆𝑀𝐴2, … , 𝑆𝑀𝐴𝑛;𝑘 by moving average with window size k.step2.
for 𝑖 from 1 to 𝑛 − 2𝑘:if 𝑆𝑀𝐴𝑖− 𝑆𝑀𝐴𝑖:𝑘 ≥ 𝜌[𝑆𝑀𝐴𝑖 − 𝑓𝑁;1(𝑓𝐿(𝑆𝑀𝐴𝑖))]
return "Now is in NLoS communication ".
else if 𝑆𝑀𝐴𝑖:𝑘− 𝑆𝑀𝐴𝑖 ≥ 𝜌[𝑓𝐿;1(𝑓𝑁(𝑆𝑀𝐴𝑖)) − 𝑆𝑀𝐴𝑖] return "Now is in LoS communication ".
在演算法 2-1 中,我們假設已知𝑓𝐿(𝑥)、𝑓𝑁(𝑥)兩個函數,𝜌是一個給定常數,
則演算法 2-1 在接收到 n 組 SNR 值後,我們將其轉換成 n-k+1 筆的 moving average 型態的資料𝑆𝑀𝐴1, 𝑆𝑀𝐴2, … , 𝑆𝑀𝐴𝑛;𝑘,其中 window size 為 k,若是當中出現 𝑆𝑀𝐴𝑖− 𝑆𝑀𝐴𝑖:𝑘或𝑆𝑀𝐴𝑖:𝑘− 𝑆𝑀𝐴𝑖大於某個門檻(threshold),其中𝑖 = 1,2, … , n − 2k,則系統將判定接收端有轉動的行為,此行為分為 LoS 轉 NLoS 和 NLoS 轉 LoS 兩種模式,差距的取值方法如 Fig.3-3 所示。
Algorithm 2-2(雙層 window)
Input:
𝑆𝑁𝑅1, 𝑆𝑁𝑅2, … , 𝑆𝑁𝑅𝑛.Output: Now is in LoS communication or in NLoS communication.
step1. Transform
𝑆𝑁𝑅1, 𝑆𝑁𝑅2, … , 𝑆𝑁𝑅𝑛 to 𝐵_𝑆𝑀𝐴1, 𝐵_𝑆𝑀𝐴2, … , 𝐵_𝑆𝑀𝐴𝑛;ℎ and 𝑆_𝑆𝑀𝐴1, 𝑆_𝑆𝑀𝐴2, … , 𝑆_𝑆𝑀𝐴𝑛;𝑘 by moving average with window size h and k where > 𝑘.step2.
for 𝑖 from 1 to 𝑛 − :if 𝐵_𝑆𝑀𝐴𝑖 − 𝑆_𝑆𝑀𝐴𝑖 ≥ 𝑑
return "Now is in NLoS communication ".
else if 𝑆_𝑆𝑀𝐴𝑖− 𝐵_𝑆𝑀𝐴𝑖 ≥ 𝑑
Figure 3-3.The threshold value for two communications.
𝑓𝑁
𝑓𝐿
𝑆𝑀𝐴
distance
SNR threshold
threshold
在演算法 2-2 中,我們假設已知𝑓𝐿(𝑥)、𝑓𝑁(𝑥)兩個函數,則演算法 2-2 在接收 到 n 組 SNR 值後,我們將其轉換成 2 種 window size 不同的 moving average 資料 型態,在同個時間區段內,根據這兩種資料的可能最大差距 d,來判別接收端是 否有發生轉身行為,此演算法的可能最大差距如 Fig.3-4 所示。
Figure 3-4.The maximum of d value for two kinds of window size.
這邊我們用簡單的幾何方法推導出 d 的最大值為𝑡𝑟𝑒𝑠𝑜𝑙𝑑 ∙ (1 − 𝑘 ∙ ;1),
其中 > 𝑘。則這個演算法的判定方法是當兩個經過 moving average 轉換後的資料,
其差距大於 d 時,我們便判定使用者有轉身的行為。
演算法 1 是當使用者不動的情形所實施的,而演算法 2-1 與 2-2 則是偵測使 用者轉動的情況做應對,所以我們提出一個流程,它的功能在於隨時可回傳使用 者的傳輸模式,下陎 Algo.2 則可以是演算法 2-1 或 2-2。
LoS
NLoS
big window size small window size
𝑑 𝑡𝑟𝑒𝑠𝑜𝑙𝑑
𝑘
Algo.1 Algo.2
當接收到新 data
output output
低於 d 高於 d