一種基于模糊knn的wifi室內(nèi)定位方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及室內(nèi)定位與導(dǎo)航技術(shù)領(lǐng)域,特別是一種基于模糊KNN的WIFI室內(nèi)定 位方法。
【背景技術(shù)】
[0002] 近年來,隨著智能移動(dòng)終端、無線傳感器網(wǎng)絡(luò)和物聯(lián)網(wǎng)的興起和普及?;谖恢?的服務(wù)和應(yīng)用得到極大的發(fā)展,給人們出行帶來很大的方便。比如,基于全球定位系統(tǒng) (GlobalPositioningSystem,GPS)的手機(jī)電子地圖,給人們提供了室外空間的定位和導(dǎo) 航服務(wù)?;谖恢眯畔⒎?wù)的LBS(LocationBasedServices)應(yīng)用層出不窮。然而,人類 大部分的活動(dòng)是在室內(nèi)進(jìn)行的,由于GPS衛(wèi)星信號(hào)經(jīng)過建筑物的遮擋,很的容易出現(xiàn)衛(wèi)星 跟蹤丟失導(dǎo)致定位精度下降,甚至出現(xiàn)不能定位的情況,因此GPS定位系統(tǒng)不能滿足室內(nèi) 定位的需求,需要為室內(nèi)定位發(fā)展新技術(shù)。在這一需求的推動(dòng)下,實(shí)現(xiàn)對(duì)室內(nèi)人員或者物體 的精確定位和跟蹤的研宄成為近十多年大家研宄的熱點(diǎn)領(lǐng)域。
[0003] 隨著近幾年無線系統(tǒng)應(yīng)用數(shù)量的迅速增長,無線技術(shù)已經(jīng)進(jìn)入幾乎所有的消費(fèi)電 子領(lǐng)域,如醫(yī)療,工業(yè),公共安全,物流和交通運(yùn)輸?shù)取M瑯訜o線自組網(wǎng)傳感器網(wǎng)絡(luò)、普適計(jì) 算、上下文相關(guān)的信息服務(wù)、信息跟蹤和指導(dǎo)也成為無線通信技術(shù)的眾多應(yīng)用領(lǐng)域。正因 為無線網(wǎng)絡(luò)的廣泛使用,利用無線網(wǎng)絡(luò)進(jìn)行室內(nèi)或者室外精確定位成為一種新的需求和研 宄方向。目前,定位系統(tǒng)常使用的無線網(wǎng)絡(luò)包括全球無線通信網(wǎng)絡(luò)(GlobalSystemfor MobileCommunications,GSM)或者通用移動(dòng)通信系統(tǒng)(UniversalMobileTelecommuni -cationsSystem,UMTS)、無線局域網(wǎng)絡(luò)(WirelessLocalAreaNetworks,WLANs)、超 寬帶通信(Ultra-wideband,UWB)網(wǎng)絡(luò)和一些短距離通信技術(shù),例如無線傳感器網(wǎng)絡(luò) (WirelessSensorNetworks,WSN)、無線射頻技術(shù)(RadioFrequencyIdentification)、藍(lán) 牙(Bluetooth)和紅外通信等。這些無線已經(jīng)有相應(yīng)技術(shù)將其應(yīng)用于定位技術(shù),比如GSM網(wǎng) 絡(luò)常用于室外定位,和GPS-起,滿足日常生活中室外定位需求。除此之外,UWB網(wǎng)絡(luò),WSN 網(wǎng)絡(luò)和RFID等可以用于室內(nèi)定位技術(shù)。
[0004] 基于KNN的WIFI室內(nèi)定位算法其主要原理是根據(jù)RSSI距離計(jì)算方法來估算待定 位節(jié)點(diǎn)和數(shù)據(jù)指紋中已知節(jié)點(diǎn)的距離,算法復(fù)雜度比較低,也易于理解,所以在實(shí)際中應(yīng)用 廣泛,但由于室內(nèi)環(huán)境復(fù)雜,信號(hào)傳播很少有無遮擋傳播路徑,常見的遮擋有墻體、家具、人 員等,這些因素會(huì)導(dǎo)致算法存在以下幾個(gè)問題:
[0005] 首先,上述KNN算法中RSSI距離大的兩個(gè)點(diǎn),其實(shí)際的物理距離可能很小,比如兩 個(gè)點(diǎn)之間存在一堵墻等,因此,按照RSSI的距離大小確定KNN算法中的權(quán)重會(huì)造成比較大 的定位誤差。
[0006] 其次,經(jīng)過實(shí)際測(cè)量,在同一地點(diǎn)檢測(cè)到的同一個(gè)AP發(fā)射的信號(hào)的RSSI值波動(dòng)比 較大,離線階段和在線的信號(hào)波動(dòng),都會(huì)影響定位的精度,所以在使用RSSI值進(jìn)行定位前, 必須對(duì)采集到的數(shù)據(jù)進(jìn)行預(yù)處理,減少因?yàn)樵肼晫?duì)定位精度的影響。
[0007] 最后,RSSI值和檢測(cè)設(shè)備有關(guān)系,同一個(gè)AP發(fā)射出的無線信號(hào)在同一點(diǎn)由不同的 接收設(shè)備檢測(cè),RSSI可能會(huì)不一樣,因此,不能只根據(jù)RSSI距離的絕對(duì)數(shù)值,來確定KNN算 法中的權(quán)重值。
【發(fā)明內(nèi)容】
[0008] 本發(fā)明所要解決的技術(shù)問題是,針對(duì)現(xiàn)有技術(shù)不足,提供一種基于模糊KNN的 WIFI室內(nèi)定位方法。
[0009] 為解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案是:一種基于模糊KNN的WIFI室 內(nèi)定位方法,包括在線測(cè)量階段和離線測(cè)量階段;
[0010] 所述離線測(cè)量階段包括以下步驟:
[0011] 1)預(yù)先選定場(chǎng)地中某些點(diǎn)為參考點(diǎn),測(cè)量參考點(diǎn)的坐標(biāo),采集參考點(diǎn)離線數(shù)據(jù)并 進(jìn)行數(shù)據(jù)預(yù)處理,濾除噪聲;
[0012] 2)計(jì)算各參考點(diǎn)的RSSI平均值,并存入指紋數(shù)據(jù)庫;
[0013] 3)將RSSI距離分為"很近","近,"遠(yuǎn),"很遠(yuǎn)"四個(gè)模糊子集,將指紋數(shù)據(jù)庫中的 數(shù)據(jù)作為樣本,計(jì)算指紋數(shù)據(jù)庫中每條數(shù)據(jù)所對(duì)應(yīng)的點(diǎn)與其他點(diǎn)之間的RSSI距離D,以及 RSSI差分距離V,進(jìn)行模糊C聚類,以確定四個(gè)模糊子集的隸屬函數(shù);
[0014] 4)初始化Takagi-Sugeno推理后件種群,種群大小NP設(shè)置為500,縮放因子F設(shè)置 成0.9;交叉控制參數(shù)CR的值設(shè)為0.9,種群中每個(gè)個(gè)體編碼為(a。,%,%),其中(a。,%,%) 為Takagi-Sugeno推理后件的多項(xiàng)式系數(shù)向量;
[0015] 5)利用目標(biāo)函數(shù)J對(duì)上述初始化后的種群進(jìn)行評(píng)價(jià),J等于采樣點(diǎn)的實(shí)際坐標(biāo)與 計(jì)算坐標(biāo)的歐氏距離,J越小說明計(jì)算坐標(biāo)越接近實(shí)際坐標(biāo),J的計(jì)算公式如下:
[0016]J= (x-xT) 2+ (y-yT)2
[0017] 其中,(X,y)是樣本的實(shí)際坐標(biāo),(xT,yT)為該樣本的計(jì)算坐標(biāo),按下式計(jì)算:
[0020] (Xi,yi)為第i個(gè)與所述樣本鄰近的點(diǎn)的坐標(biāo),K為該樣本的近鄰點(diǎn)的個(gè)數(shù);《i是 第i條模糊規(guī)則輸出的權(quán)值,按下式計(jì)算:
[0021] ?j=aQ+a^+a,^;
[0022] 其中i表示第i條規(guī)則,D表示樣本的RSSI距離,V表示樣本的RSSI差分距離;
[0023] 6)采用DE/rand/1/bin變異和二項(xiàng)式交叉對(duì)每個(gè)個(gè)體進(jìn)行進(jìn)化操作,產(chǎn)生新的個(gè) 體;
[0024] 7)計(jì)算目標(biāo)函數(shù)J的值,對(duì)個(gè)體進(jìn)行評(píng)價(jià),并采用高選擇壓的選擇策略:一旦子 代個(gè)體比父代個(gè)體好,就進(jìn)入下一代種群,否則父代個(gè)體留在種群中保持不變,選擇新的子 代;
[0025]7)檢驗(yàn)?zāi)繕?biāo)函數(shù)J是否發(fā)生變化,如果是,則輸出最優(yōu)多項(xiàng)式系數(shù)向量,否則返回 步驟6) ;8)將最優(yōu)多項(xiàng)式系數(shù)向量作為模糊推理規(guī)則的后件多項(xiàng)式系數(shù),生成模糊規(guī)則存 入規(guī)則庫;
[0026] 所述在線測(cè)量階段包括以下步驟:
[0027] 1)測(cè)量待定位點(diǎn)的RSSI值;
[0028] 2)計(jì)算待定位點(diǎn)與指紋數(shù)據(jù)庫中各參考點(diǎn)的RSSI距離和差分距離;
[0029] 3)找出K個(gè)與待定位點(diǎn)的RSSI距離和差分距離最近的點(diǎn),即K個(gè)最近鄰點(diǎn);
[0030] 4)使用規(guī)則庫中的模糊推理規(guī)則計(jì)算所述K個(gè)最近鄰點(diǎn)各自的權(quán)值;
[0031] 5)根據(jù)權(quán)值和參考點(diǎn)坐標(biāo)計(jì)算待定位點(diǎn)坐標(biāo)。
[0032] 由所有M條模糊規(guī)則計(jì)算權(quán)重《的計(jì)算公式如下:
[0033]
[0034]其中,M表示模糊規(guī)則的數(shù)目,A,表示第i條模糊規(guī)則的推理強(qiáng)度。
[0035] RSSI距離D(k)和RSSI差分距離V(k)分別按下式計(jì)算:
[0036]
[0037]V(k) = | |maxRSSIki-minRSSIki |-1maxRSSITi-minRSSITi | |;
[0038] 其中k表示第k個(gè)最近鄰點(diǎn);RSSIkl表示第k個(gè)最鄰近點(diǎn)檢測(cè)到的第1個(gè)AP,即接 入點(diǎn)的RSSI值,RSSIT1表示待定位點(diǎn)檢測(cè)到的第1個(gè)AP的RSSI值,k= 1,2, ???!(,r為AP 的數(shù)量。
[0039] 與現(xiàn)有技術(shù)相比,本發(fā)明所具有的有益效果為:本發(fā)明在利用基于權(quán)值的KNN匹 配算法的基礎(chǔ)上,增加RSSI差分?jǐn)?shù)據(jù)量作為權(quán)值特征,把RSSI的特征作為模糊系統(tǒng)輸入, 通過模糊推理輸出KNN方法中的權(quán)值,定位誤差作為目標(biāo)函數(shù),對(duì)模糊推理系統(tǒng)中隸屬度 函數(shù)等參數(shù)進(jìn)行辨識(shí)和優(yōu)化,從而提高定位系統(tǒng)的精度。和傳統(tǒng)的RSSI距離相比,不僅考 慮了RSSI值所組成的矢量的歐拉距離,還考慮到了不同位置接收到RSSI值之間的差值;同 時(shí)使用自適應(yīng)模糊推理系統(tǒng),利用了模糊系統(tǒng)能很好逼近非線性系統(tǒng)的特性,通過模糊聚 類和進(jìn)化算法對(duì)權(quán)值進(jìn)行優(yōu)化,使其自適應(yīng)不同的室內(nèi)環(huán)境。
【附圖說明】
[0040] 圖1為本發(fā)明實(shí)施例實(shí)驗(yàn)區(qū)的布置圖;
[0041] 圖2為本發(fā)明實(shí)施例采樣100次數(shù)據(jù)的示意圖;
[0042] 圖3為本發(fā)明實(shí)施例圖3顯示了濾波前和濾波后的數(shù)據(jù)對(duì)比情況;
[0043] 圖4為本發(fā)明實(shí)施例RSSI距離D隸屬度值分布曲線;
[0044] 圖5為本發(fā)明實(shí)施例RSSI差分V的隸屬度分布曲線;
[0045] 圖6為本發(fā)明模糊推理KNN對(duì)10個(gè)測(cè)試點(diǎn)每個(gè)進(jìn)行100次定位實(shí)驗(yàn),定位誤差的 平均值曲線與最鄰近、標(biāo)準(zhǔn)KNN、WKNN(加權(quán)KNN)的比較圖。
【具體實(shí)施方式】
[0046] 以下結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】做進(jìn)一步的說明。
[0047] 實(shí)驗(yàn)區(qū)的布置如圖1所示,使用筆記本電腦作為指紋數(shù)據(jù)采集設(shè)備和定位設(shè)備, 三臺(tái)無線路由器作為接