《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > K-means指紋定位的優(yōu)化算法
K-means指紋定位的優(yōu)化算法
2018年電子技術(shù)應(yīng)用第2期
余成波,,李彩虹,曾 亮
重慶理工大學(xué) 遠(yuǎn)程測(cè)試與控制研究所,,重慶400054
摘要: K-means指紋定位可減少定位算法的計(jì)算量,,提高定位的實(shí)時(shí)性已成為當(dāng)前定位算法的一個(gè)研究熱點(diǎn)。然而其聚類的隨機(jī)性卻給定位帶來(lái)極大的不穩(wěn)定性,,對(duì)此提出使用兩步聚類算法進(jìn)行優(yōu)化,,根據(jù)AIC準(zhǔn)則自動(dòng)得到最優(yōu)的聚類個(gè)數(shù);針對(duì)最鄰近算法定位誤差大的情況,,使用相關(guān)系數(shù)法確定相似度最高的子庫(kù),,再估計(jì)最終位置,。實(shí)驗(yàn)結(jié)果表明,優(yōu)化后的算法不但改善了定位精度,,也極大提高了定位的實(shí)時(shí)性與穩(wěn)定性,。
中圖分類號(hào): TN929.5
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.171767
中文引用格式: 余成波,李彩虹,,曾亮. K-means指紋定位的優(yōu)化算法[J].電子技術(shù)應(yīng)用,,2018,44(2):70-74.
英文引用格式: Yu Chengbo,,Li Caihong,,Zeng Liang. Optimization algorithm of K-means fingerprint location[J]. Application of Electronic Technique,2018,,44(2):70-74.

Optimization algorithm of K-means fingerprint location
Yu Chengbo,,Li Caihong,Zeng Liang
Institute of Remote Test and Control,,Chongqing University of Technology,,Chongqing 400054,,China
Abstract: K-means fingerprint localization can reduce the complexity of localization, and improving the real-time of location has become a hot-spot of current localization algorithm. However, the randomness of clustering has resulted in great instability to the localization. In this paper, two-step clustering algorithm is proposed to optimize the clustering number according to the AIC criterion. Considering the nearest neighbor algorithm would result in great error, correlation coefficient method is used to determine the highest similarity of the sub-library, and estimate the final position. The experimental results show that the optimized algorithm improves not only the positioning accuracy, but also the real-time and stability of localization.
Key words : fingerprint localization,;K-means;AIC criterion,;two-step clustering,;correlation coefficient method

0 引言

    在智能終端快速更換的時(shí)代,人們生活水平不斷提升,,圖書館,、博物館等室內(nèi)場(chǎng)景需提供精確位置信息來(lái)提供服務(wù)。技術(shù)成熟的全球定位系統(tǒng)(Global Positioning System,,GPS)已實(shí)現(xiàn)了應(yīng)用范圍廣,、精度高、實(shí)時(shí)性好的室外定位[1],,但在室內(nèi)中受復(fù)雜環(huán)境因素的影響,,GPS信號(hào)因受阻擋而急速衰減,無(wú)法滿足人們的室內(nèi)定位需求,,因而催生出很多室內(nèi)定位技術(shù),。其中,配備有藍(lán)牙技術(shù)的iBeacon因其功耗低,、成本低,、效率高等優(yōu)點(diǎn)備受人們的青睞。

    iBeacon主要通過(guò)基于接收信號(hào)強(qiáng)度指示(Received Signal Strength Indication,,RSSI)的位置指紋實(shí)現(xiàn)定位,,即通過(guò)智能終端測(cè)量RSSI,依據(jù)采樣點(diǎn)間RSSI的差異構(gòu)建位置指紋庫(kù)[2],再利用匹配定位算法得到定位結(jié)果,。但是當(dāng)定位區(qū)域較大時(shí),,指紋庫(kù)中存儲(chǔ)的位置信息較多,導(dǎo)致運(yùn)算量過(guò)大并影響定位精度,。對(duì)此,,文獻(xiàn)[3-6]采用K-means算法對(duì)指紋庫(kù)進(jìn)行聚類分析,選出相似度最高的子庫(kù)進(jìn)行匹配定位,。該方法不僅可降低計(jì)算的負(fù)荷與能耗,,還可有效提高定位的實(shí)時(shí)性。然而其多是依據(jù)經(jīng)驗(yàn)選定聚類的個(gè)數(shù),,未對(duì)聚類優(yōu)劣進(jìn)行說(shuō)明,;且通過(guò)待測(cè)點(diǎn)與聚類中心的歐式聚類判斷其所屬類別,并未考慮各個(gè)變量之間的相關(guān)性,。

    針對(duì)上述存在的問題,,本文提出優(yōu)化算法:采用兩步聚類算法根據(jù)AIC準(zhǔn)則自動(dòng)選定最優(yōu)聚類情況,利用相關(guān)系數(shù)法得到與待測(cè)點(diǎn)最相似的子庫(kù),,最后采用K鄰近法與子庫(kù)匹配得到定位結(jié)果,。

1 K-means指紋定位

    K-means指紋定位是在原指紋定位算法的基礎(chǔ)上,先對(duì)指紋庫(kù)進(jìn)行聚類分析,,再通過(guò)匹配算法估計(jì)待測(cè)點(diǎn)位置的一種算法,。即離線階段,構(gòu)建指紋庫(kù)后,,通過(guò)K-means聚類根據(jù)特征參數(shù)將指紋庫(kù)劃分為k個(gè)子庫(kù),;匹配階段,首先比較待測(cè)點(diǎn)與各聚類中心的相似程度,,選取距離最短的聚類中心所在的子庫(kù),,再將其與待測(cè)點(diǎn)匹配估計(jì)最終坐標(biāo)。具體操作流程如圖1所示,。

tx2-t1.gif

1.1 K-means聚類

    指紋庫(kù)中第i個(gè)參考點(diǎn)(Reference Point,,RP)接收到接入點(diǎn)(Access Point,AP)的RSSI信號(hào)記為RSSIi=[RSSIi1,,…,,RSSIij,…,,RSSIin],,j=1,…,,n,,其中RP的個(gè)數(shù)為m,,AP的個(gè)數(shù)為n。由其構(gòu)建指紋庫(kù)的RSSI=[RSSI1,,RSSI2,,…,RSSIi,,…,,RSSIm]T,i=1,,…,,m。已知聚類數(shù)目為k(k≤m)的前提下,,將指紋庫(kù)的RSSI分為k類RSSI=[C1,,C2,…,,Ck],,隨機(jī)選用k個(gè)向量作為初始聚類中心,以歐氏距離作為相似度準(zhǔn)則就近分配指紋數(shù)據(jù),,不斷迭代更新聚類中心,,直至算法收斂或達(dá)到最大迭代次數(shù)。當(dāng)總的類間離散度最小時(shí)認(rèn)為算法收斂,,即:

    tx2-gs1.gif

式中,,k為聚類個(gè)數(shù),,Centert為第t個(gè)聚類中心,。具體算法流程[7]如下。

    K-means算法流程:

輸入:從指紋庫(kù)的RSSI中隨機(jī)選取k個(gè)向量作為初始聚類中心,;

輸出:最終聚類結(jié)果,。

For  i=1:k

    (1)計(jì)算樣本中各指紋到每個(gè)聚類中心的距離,并根據(jù)就近原則分配指紋到不同類中,;

    (2)分配完樣本中指紋后,,重新計(jì)算k個(gè)聚類的中心;

    (3)計(jì)算總的類間離散度Jc

       If Jc最小,,即算法收斂

          Break;//跳出循環(huán),,結(jié)束迭代過(guò)程

       End

End

1.2 匹配算法

    本節(jié)所介紹的算法,主要選取相似度最高的子指紋庫(kù),,并估計(jì)待測(cè)點(diǎn)的最終位置,。

1.2.1 最鄰近法

    最鄰近法(Nearest Neighborhood,NN)是最簡(jiǎn)單,、最基礎(chǔ)的算法,,首先算出待測(cè)點(diǎn)RSSI與指紋庫(kù)中各指紋的RSSI之間的距離,,再選取距離最短的指紋坐標(biāo)值作為待測(cè)點(diǎn)的估計(jì)位置。其中距離的公式為:

    tx2-gs2.gif

式中,,Di表示待測(cè)點(diǎn)與第i個(gè)RP的距離,,Sj表示待測(cè)點(diǎn)接收到第j個(gè)AP的信號(hào)強(qiáng)度,RSSIij表示第i個(gè)RP接收到第j個(gè)AP的信號(hào)強(qiáng)度,。q=1時(shí)是絕對(duì)距離,,q=2時(shí)是歐式距離,通過(guò)實(shí)際情況分析后選取合適的距離公式,。

1.2.2 K鄰近法

    K鄰近法(K Nearest Neighborhood,,KNN)是對(duì)最鄰近法的改進(jìn),其區(qū)別主要在于K鄰近法并不直接選擇距離最短的一個(gè)指紋來(lái)估算位置,,而是選擇距離最短的前K(K≥2)個(gè)指紋,,并將這K個(gè)指紋的平均坐標(biāo)作為最后的估計(jì)位置。即通過(guò)式(2)得到距離后將位置從小到大排序,,選取前K個(gè)指紋坐標(biāo),,利用式(3)計(jì)算出均值坐標(biāo)并輸出最后結(jié)果。

    tx2-gs3.gif

式中,,(xi,,yi)表示排序后選取的前K個(gè)指紋中第i個(gè)指紋的坐標(biāo)值。

1.2.3 相關(guān)系數(shù)法

    相關(guān)系數(shù)法通過(guò)計(jì)算兩個(gè)物體間的相似程度[8],,判斷其距離的相對(duì)大小,。地理學(xué)第一定律[9]指出,任何兩個(gè)物體之間都是相似的,,只是相似程度的大小不同,,并且其相似程度隨著距離的增加在不斷減少。

    在定位范圍內(nèi),,假設(shè)A,、B兩個(gè)待測(cè)點(diǎn)空間位置很近,其接收到AP的RSSI分別記為RSSIA=[SA1,,SA2,,…,SAn]和RSSIB=[SB1,,SB2,,…,SBn],,根據(jù)式(4)計(jì)算兩點(diǎn)間的相關(guān)系數(shù):

tx2-gs4-5.gif

式中,,ρ(A,B)為兩點(diǎn)間相關(guān)系數(shù),,(xi,,yi)為所取K個(gè)指紋中第i個(gè)的坐標(biāo)值,。

    由前面分析可知,K-means聚類需要預(yù)先給定聚類的數(shù)目,,其多是依據(jù)經(jīng)驗(yàn)進(jìn)行選擇并通過(guò)定位精度評(píng)估聚類的質(zhì)量,。而在實(shí)際情況中影響定位精度的原因有很多,所以需要一種準(zhǔn)則來(lái)評(píng)估聚類結(jié)果,。兩步聚類是一種探索性聚類方法,,通過(guò)分析數(shù)據(jù)間類別結(jié)構(gòu)來(lái)構(gòu)建聚類模型,根據(jù)AIC準(zhǔn)則評(píng)估聚類質(zhì)量并擇優(yōu)選出聚類個(gè)數(shù),。

2 優(yōu)化后的指紋定位

2.1 AIC準(zhǔn)則

    AIC準(zhǔn)則[11]是日本統(tǒng)計(jì)學(xué)家赤池宏次提出關(guān)于衡量統(tǒng)計(jì)模型優(yōu)良的一種標(biāo)準(zhǔn),,主要在模型復(fù)雜度和參數(shù)個(gè)數(shù)之間找到一種平衡,從而選擇最優(yōu)模型,。其定義為:

    tx2-gs6.gif

其中,,k為參數(shù)的個(gè)數(shù),L為樣本集上的極大似然函數(shù),。為優(yōu)化其擬合性可增加參數(shù)的個(gè)數(shù),,但要注意防止出現(xiàn)過(guò)度擬合。給定一組參數(shù)模型時(shí),,要優(yōu)先考慮AIC值最小的模型,,因?yàn)樗钌俚膮?shù)個(gè)數(shù)又最大程度地還原數(shù)據(jù)模型。

    文獻(xiàn)[12]給出了利用AIC準(zhǔn)則選取最鄰近聚類模型的具體理論分析,,分析發(fā)現(xiàn):類內(nèi)誤差隨聚類數(shù)目k的增加而越小,,為考慮聚類模型的緊湊型與實(shí)用性,選擇AIC值最小的聚類模型,,即可得到最優(yōu)的分類情況,。

2.2 兩步聚類

    兩步聚類是一種探索性聚類方法,主要有兩個(gè)階段,,其具體流程如圖2所示,。

tx2-t2.gif

    (1)預(yù)聚類階段:構(gòu)建聚類特征樹(Clustering Feature Tree,,CFT),,將指紋庫(kù)分為許多子庫(kù)。

    首先,,將某一個(gè)觀測(cè)值置于根節(jié)點(diǎn)處并記錄相關(guān)變量信息,,根據(jù)給定的距離公式作為相似性依據(jù),依次判斷其他測(cè)量值與已有節(jié)點(diǎn)的相似性并進(jìn)行分類,,若沒有相似節(jié)點(diǎn),,則生成新節(jié)點(diǎn)。所有RP分類后,,根據(jù)AIC準(zhǔn)則,,確定預(yù)聚類的數(shù)目,。

    (2)正式聚類階段:合并聚類,給出最終優(yōu)化的聚類數(shù)目,。

    將預(yù)聚類的數(shù)目作為數(shù)據(jù)輸入,,使用分層聚類對(duì)其進(jìn)行再聚類不斷合并修剪預(yù)聚類結(jié)果,通過(guò)AIC準(zhǔn)則評(píng)估現(xiàn)有分類的質(zhì)量,,最終給出符合準(zhǔn)則的分類方案,。

2.3 優(yōu)化算法

    K-means隨機(jī)選取聚類個(gè)數(shù)與聚類中心帶來(lái)極大的不穩(wěn)定性,對(duì)此使用兩步聚類算法選擇最優(yōu)聚類數(shù)并對(duì)其分類,。文獻(xiàn)[10]分析實(shí)驗(yàn)數(shù)據(jù)發(fā)現(xiàn):RSSI相關(guān)系數(shù)匹配法比NN匹配定位精度高,,但是實(shí)時(shí)性差。為提高定位精度,、增強(qiáng)算法實(shí)時(shí)性,,本文使用相關(guān)系數(shù)法選取子指紋庫(kù),使用KNN算法估計(jì)待測(cè)點(diǎn)位置,。具體操作如圖3所示,。

tx2-t3.gif

3 實(shí)驗(yàn)布置與結(jié)果分析

3.1 實(shí)驗(yàn)環(huán)境

    本實(shí)驗(yàn)在8 m×14 m的典型辦公環(huán)境中進(jìn)行,室內(nèi)布局情況如圖4所示,,將信標(biāo)節(jié)點(diǎn)AP呈大致均勻擺放,,此區(qū)域放置12個(gè)AP。經(jīng)測(cè)試發(fā)現(xiàn),,采集的RSSI數(shù)據(jù)在1 m范圍內(nèi)波動(dòng)較小,,由此可將定位區(qū)域劃分為1 m×1 m的小區(qū)域,并在每個(gè)區(qū)域頂點(diǎn)采集數(shù)據(jù),,為消除方向引起的誤差,,在每個(gè)RP不同方向進(jìn)行采樣。受物體擺放情況的影響,,最終共采集438組數(shù)據(jù),。根據(jù)移動(dòng)路徑(圖4中路徑),采集107組數(shù)據(jù),。

tx2-t4.gif

3.2 實(shí)驗(yàn)分析

    為方便討論定位效果,,需選定合適的參數(shù)指標(biāo)對(duì)其進(jìn)行說(shuō)明。一定程度上,,平均定位誤差可反映算法的整體效果,,定位誤差的標(biāo)準(zhǔn)差可說(shuō)明定位精度的一致性[13];運(yùn)算時(shí)間可反映算法的實(shí)時(shí)性,。本文主要從考慮算法的精度和實(shí)時(shí)性出發(fā),,因而選用平均定位誤差、誤差的標(biāo)準(zhǔn)差和運(yùn)算時(shí)間來(lái)判斷算法的定位效果,。

    本文重點(diǎn)討論聚類算法對(duì)定位結(jié)果的影響,,為排除其他因素的影響,,首先利用傳統(tǒng)指紋定位選擇最優(yōu)的距離公式與K值,實(shí)驗(yàn)結(jié)果如圖5所示,。觀察圖5(a)可發(fā)現(xiàn):使用NN算法定位時(shí),,絕對(duì)距離的效果優(yōu)于歐式距離;而使用KNN算法時(shí),,歐式距離的效果更加顯著,;不論選擇哪個(gè)距離公式,使用KNN算法的定位效果都優(yōu)于NN算法,,圖5(b)也可得出此結(jié)論,。因而,使用NN算法計(jì)算絕對(duì)距離判斷所屬子庫(kù),;使用KNN算法估計(jì)最終位置坐標(biāo),,并令k=5達(dá)到較好的定位效果。

tx2-t5.gif

    SPSS軟件操作便捷,、功能強(qiáng)大,、運(yùn)算速度快,直接使用該軟件對(duì)指紋庫(kù)RSSI進(jìn)行兩步聚類分析,,根據(jù)AIC準(zhǔn)則自動(dòng)得到最優(yōu)聚類個(gè)數(shù)與聚類分布情況,。為排除所設(shè)聚類個(gè)數(shù)對(duì)結(jié)果的影響,設(shè)定最大聚類數(shù)目為100,,自動(dòng)聚類結(jié)果如圖6所示,。圖6(a)顯示出自動(dòng)聚類過(guò)程中AIC值的變化情況:聚類效果的好壞并不隨聚類數(shù)目的增加無(wú)限增長(zhǎng),而是呈凹曲線變化且最優(yōu)的聚類個(gè)數(shù)較小,。圖6(b)顯示出擇優(yōu)后的聚類情況:聚類數(shù)目為9,,平均Silhouette為0.6,聚類質(zhì)量良好且每類數(shù)目較均勻,。圖6(c)顯示分類后每個(gè)類別的具體坐標(biāo)值:同一位置的多個(gè)數(shù)據(jù)可能劃分到不同類別,,也驗(yàn)證了同一位置需在多個(gè)方向采集數(shù)據(jù)。

tx2-t6.gif

    本文主要考證所提算法在定位精度與實(shí)時(shí)性方面有改善效果,,因而選用定位效果較好的參數(shù)進(jìn)行分析,。即聚類個(gè)數(shù)為9,利用NN算法計(jì)算絕對(duì)距離判斷所屬子指紋庫(kù),,使用k=5的KNN算法計(jì)算歐氏距離估計(jì)最終位置坐標(biāo),。所提算法與KNN算法、K-means指紋定位進(jìn)行比較,,實(shí)驗(yàn)結(jié)果顯示在表1中。

tx2-b1.gif

    分析表1中數(shù)據(jù)可發(fā)現(xiàn):(1)與傳統(tǒng)指紋定位相比,,聚類后的定位精度雖僅有較小幅度的改善,,但運(yùn)算時(shí)間縮短了37.84%~46.32%,,即聚類處理后可顯著提高定位的實(shí)時(shí)性。(2)確定聚類數(shù)目后,,不論是用K-means還是兩步聚類對(duì)數(shù)據(jù)進(jìn)行聚類處理,,最終的定位精度與實(shí)時(shí)性都相差無(wú)幾,即聚類需預(yù)先得知最優(yōu)的聚類個(gè)數(shù),。(3)所提算法與K-means指紋定位相比:雖然運(yùn)算時(shí)間略有增加,,但定位精度方面有小幅改善;且K-means指紋定位隨機(jī)性大,、穩(wěn)定型差,,而所提算法使用兩步聚類依據(jù)AIC準(zhǔn)則擇優(yōu)得到聚類數(shù)目,極大提高了算法的穩(wěn)定性,。綜上述,,本文所提算法相比當(dāng)前已有算法在定位精度、實(shí)時(shí)性和穩(wěn)定性方面都有一定的改善效果,。

4 總結(jié)

    本文通過(guò)藍(lán)牙技術(shù)進(jìn)行數(shù)據(jù)采集,,針對(duì)K-means算法的定位精度較低、定位實(shí)時(shí)性差,、聚類隨機(jī)性導(dǎo)致穩(wěn)定性差等問題,,提出使用兩步聚類根據(jù)AIC準(zhǔn)則自動(dòng)擇優(yōu)得到聚類數(shù)目,并使用相關(guān)系數(shù)法選擇相似度最高的子指紋庫(kù)來(lái)對(duì)其進(jìn)行改進(jìn),。實(shí)驗(yàn)結(jié)果表明:相關(guān)系數(shù)法可以有效提高算法的定位精度,;兩步聚類擇優(yōu)得到聚類個(gè)數(shù)后,可有效提高算法的穩(wěn)定性和實(shí)時(shí)性,。從整體來(lái)看,,本文所提算法在定位精度、實(shí)時(shí)性和穩(wěn)定性方面都有良好的改善,。但本文仍有值得改進(jìn)的地方,,如已知聚類個(gè)數(shù)的情況下,本文所提算法是以時(shí)間為代價(jià)提高了定位精度與穩(wěn)定性,,接下來(lái)的工作中,,需繼續(xù)對(duì)其優(yōu)化改進(jìn)。

參考文獻(xiàn)

[1] 田林青,,余成波,,孔慶達(dá),等.基于藍(lán)牙技術(shù)的推送系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,,2016,,35(20):61-64.

[2] 陳空,宋春雷,陳家斌,,等.基于改進(jìn)WKNN的位置指紋室內(nèi)定位算法[J].導(dǎo)航定位與授時(shí),,2016,3(4):58-64.

[3] CRAMARIUC A,,HUTTUNEN H,,LOHAN E S.Clustering benefits in mobile-centric WiFi positioning in multi-floor buildings[C].International Conference on Localization and Gnss.IEEE,2016.

[4] CUI Y,,VOYLES R M.A mechanism for real-time decision making and system maintenance for resource constrained robotic systems through ReFrESH[J].Autonomous Robots,,2015,39(4):487-502.

[5] LAITINEN E,,LOHAN E S.On the choice of access point selection criterion and other position estimation characteristics for WLAN-based indoor positioning[J].Sensors,,2016,16(5):737.

[6] 張杰,,卓靈,,朱韻攸.一種K-means聚類算法的改進(jìn)與應(yīng)用[J].電子技術(shù)應(yīng)用,2015,,41(1):125-128.

[7] 于睿,,陸南.基于K均值聚類算法的位置指紋定位技術(shù)[J].信息技術(shù),2015,,39(10):185-188,,191.

[8] 王艷麗,楊如民,,余成波,,等.相關(guān)性匹配藍(lán)牙信標(biāo)位置指紋庫(kù)的室內(nèi)定位[J].電訊技術(shù),2017,,57(2):145-150.

[9] TOBLER W R.A computer movie simulating urban growth in the Detroit region[J].Economic Geography,,1970,46(Supp 1):234-240.

[10] 李奇.一種基于RSSI相關(guān)系數(shù)的指紋定位技術(shù)方法[J].廣東通信技術(shù),,2013,,33(3):29-32.

[11] AKAIKE H.Autoregressive model fitting for control[J].Annals of the Institute of Statistical Mathematics,1971,,23(1):163-180.

[12] 秦宣云.基于AIC準(zhǔn)則的最近鄰聚類模型的優(yōu)化算法[J].系統(tǒng)工程與電子技術(shù),,2005,27(2):257-259.

[13] 石欣,,印愛民,,陳曦.基于RSSI的多維標(biāo)度室內(nèi)定位算法[J].儀器儀表學(xué)報(bào),2014,,35(2):261-268.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。