劉夏, 李國良, 張靈峰, 汪郁, 孫虎, 黃啟能, 丁瓊
(1.貴州工業(yè)職業(yè)技術學院 電子與信息工程學院,貴州 貴陽 551400;2.貴州大學 大數據與信息工程學院,貴州 貴陽 550025)
隨著人工智能、大數據、物聯(lián)網、無線網絡及無線傳感器網絡等技術的迅速發(fā)展[1-3],學者們對無線定位技術在煤礦井下人員定位中的應用進行了大量研究[4-6],提出了多種無線定位算法,其中指紋定位算法因擴展性強、易維護、覆蓋范圍廣、成本較低等特點,應用較為廣泛。文獻[7]提出了基于BP神經網絡的井下無線自適應指紋定位算法,利用模擬退火粒子群優(yōu)化BP神經網絡,定位效果較好,但需要在實驗環(huán)境中采集大量指紋數據,實驗人員采集數據工作量較大。文獻[8]提出了基于支持向量回歸的半集中式定位算法,采用支持向量機回歸技術得到連通信息到節(jié)點位置的回歸函數,由回歸函數進行節(jié)點位置估算及定位,支持向量機在處理小樣本預測、非線性回歸和局部最優(yōu)時能展現出良好性能,但參數取值缺少先驗信息,從而導致搜索區(qū)域較大。文獻[9]提出了基于支持向量機分類的煤礦井下人員指紋定位算法,利用支持向量機分類方法建立指紋數據庫,再通過采樣點的無線信息數據與指紋數據庫進行對比,找出最佳匹配位置,但實驗只是在小范圍進行,節(jié)點數量少,支持向量機參數難以設定。文獻[10]提出了支持向量機的混合相似度加權K近鄰算法,對指紋數據庫進行網格劃分,利用支持向量機計算出所屬網格,再通過加權K近鄰算法進行定位,但該方法未考慮指紋數據庫較大時支持向量機收斂速度慢的問題。文獻[11]提出了基于改進支持向量機的定位方法,利用模擬退火算法搜尋支持向量機最優(yōu)參數,將最優(yōu)參數代回到支持向量機進行定位,但模擬退火算法存在搜索效率較低、收斂速度慢等問題。
針對上述定位算法存在的問題,本文提出了一種差分進化與人工魚群算法優(yōu)化最小二乘支持向量機(Differential Evolution and Artificial Fish Swarm Algorithm Optimization Least Squares Support Vector Machine,DEAFSA-LSSVM)的井下人員無線定位算法。該算法首先將井下實驗區(qū)劃分為多個小區(qū)域,并利用克里金插值算法估算預測點的接收信號強度(Received Signal Strength Indication, RSSI),可減少指紋數據采集的工作量;然后利用差分進化和人工魚群混合智能算法對LSSVM的2個關鍵參數進行優(yōu)化,利用優(yōu)化過的LSSVM進行分類,計算出所屬小區(qū)域,提高算法分類準確率;最后通過加權K近鄰算法估算出待定位點的坐標位置,提升算法定位精度。實驗結果表明:該定位算法分類準確,工作穩(wěn)定,且定位精度高。
假設訓練集H={(x1,y1),(x2,y2),…,(xh,yh)},其中xh為n維輸入數據,yh為一維輸出數據,h為樣本個數。LSSVM的優(yōu)化問題[12]可表示為
(1)
式中:ω為權向量;b為偏差量;e為誤差變量;γ為正則化參數且大于零。
考慮LSSVM中核函數的重要性,本文選擇徑向基核函數[13],其數學表達式為
(2)
式中:x和xk為數據空間內的2個輸入值;σ為核函數寬度。
LSSVM在處理非線性和小樣本數據時具有一定的優(yōu)勢,但預測精度受到正則化參數γ和核函數寬度σ的限制,這2個參數會影響LSSVM的學習和泛化能力。
人工魚群算法[14](Artificial Fish Swarm Algorithm,AFSA)把需要優(yōu)化的參數抽象成為一條人工魚(以下簡稱為魚)。假設魚種群為Fn,每條魚的位置為Z={z1,z2,…,zm},其中zm為待尋優(yōu)的參數。食物周圍的擁擠因子為δ,則每條魚當前所在位置食物濃度,即目標函數為
(3)
設魚的視野為Fv,魚的步長為Fs。步長隨視野進行動態(tài)調整可降低算法復雜度,步長計算公式為
Fs=Fv·Rand( )
(4)
式中Rand( )為產生隨機數的隨機函數。
覓食行為:設2條魚之間的距離為dij,當前魚的位置為Zi,魚覓食次數為Fq,在視野范圍內dij Zj=Zi+Fv·Rand( ) (5) 式中i,j為魚的標號,i≠j,取值范圍為[0,n]的整數。 利用Zi和Zj分別計算出各自位置食物濃度Fci和Fcj,若滿足覓食更新條件Fci>Fcj,則更新當前魚的位置: (6) 若不滿足覓食更新條件Fcj>Fci,則放棄Zj的位置,在視野范圍內重新尋找新位置Zj;判斷新位置Zj是否滿足覓食更新條件,如滿足更新條件,按照式(6)更新位置Zi+1,否則,再次嘗試更新Zj。當嘗試過Fq次后,若無法滿足覓食更新條件,即Fcj Zi+1=Zi+Fs·Rand( ) (7) 聚群行為:設當前魚的位置為Zi,當前魚的位置食物濃度為Fci;在視野范圍內,魚的數目為Fn1,中心位置為Zc,中心位置食物濃度為Fcc。若滿足聚群更新條件Fcc/Fn1>δFci,則按照式(8)更新當前魚的位置,否則執(zhí)行覓食行為。 (8) 追尾行為:設當前魚的位置為Za,當前魚的位置食物濃度為Fca,在搜索視野范圍內,搜尋出食物濃度最大值為Fcm,且魚所在位置為Zm1;以Zm1為中心搜索視野范圍內的魚,魚的數目為Fn2。若滿足追尾條件Fcm/Fn2>δFca,則表明Zm1處不擁擠,按照式(9)更新當前魚的位置,否則執(zhí)行覓食行為。 (9) 差分進化算法[15](Differential Evolution,DE)是隨機、并行、直接的全局搜索算法。 (10) 式中:Ps1,Ps2,Ps3為隨機選擇的種群,s1,s2,s3為[1,2,…,Fn]的隨機整數;?為[0,2]的變異因子,主要用于控制差分向量的放大倍數。 (11) 選擇操作:采用貪婪策略,其表達式為 (12) 差分進化與人工魚群混合智能算法[16](Differential Evolution and Artificial Fish Swarm Algorithm,DEAFSA)簡稱為差分魚群算法。 DEAFSA在人工魚群算法中引入差分進化算法的策略,通過差分進化中的變異操作、雜交操作和選擇操作使之跳出局部最優(yōu),并能發(fā)揮差分進化算法在局部尋優(yōu)的優(yōu)勢,提升尋優(yōu)精度。 差分魚群優(yōu)化最小二乘支持向量機算法[17-18](DEAFSA-LSSVM)步驟如下: 步驟1:利用訓練數據庫和井下定位實驗條件建立LSSVM模型,生成正則化參數γ和核函數寬度σ。 步驟2:設定DEAFSA參數,如魚種群Fn、魚視野Fv、魚覓食次數Fq、擁擠因子δ、雜交概率常數Cr、變異因子?、最大迭代次數tmax、收斂精度ε等。 步驟3:將正則化參數和核函數寬度映射到魚個體中,設置迭代次數t=1;初始化魚群,在可行區(qū)域內隨機生成M條魚。 教師可以在大學英語教學中融入中國文化元素,幫助學生更多地了解中國文化并發(fā)揮英語傳播中國文化的作用。教師可以開設中國文化類英語課程,用英語授課,幫助學生系統(tǒng)地學習中國文化。教師也可以引導學生多途徑、自主地進行學習,如引導學生通過電視(CCTV International中央電視臺英語頻道)、英語廣播(China Radio International中國國際廣播電臺)、英文報紙(如China Daily《中國日報》、21stCentury《21世紀英文報》)來學習中國文化及中國視角和價值觀。在教學中,讓學生不僅學習西方文化的英語表述,也要學習中國文化的英語表述,獲得用英語表達中國文化的能力。 步驟4:根據式(3)計算各條魚個體當前位置的食物濃度,并進行比較,將適應度最優(yōu)值放置到公告板上。 步驟5:根據式(5)—式(9)執(zhí)行人工魚群算法,分別讓每條魚執(zhí)行覓食行為、追尾行為和聚群行為,并選擇行動后適應度更優(yōu)魚群,繼續(xù)進行下一步驟。 步驟6:根據式(10)—式(12)執(zhí)行差分進化算法,分別對每條魚進行變異操作、雜交操作和選擇操作,差分進化后將會得到適應度更優(yōu)的新一代魚群。 步驟7:更新公告板,將最優(yōu)魚個體的適應度與公告板上的適應度進行比較,把適應度最優(yōu)值放置到公告板上。 步驟8:令t=t+1,判斷DEAFSA是否滿足終止條件(迭代次數到達最大迭代次數或公告板上最優(yōu)適應度達到收斂精度);若滿足終止條件,則進行下一步驟,否則跳轉到步驟5。 步驟9:將DEAFSA尋找到的最優(yōu)解代回到LSSVM,此時DEAFSA尋優(yōu)過程結束。 步驟10:利用定位訓練數據庫對LSSVM進行訓練,并使其達到算法要求的收斂精度,最終完成DEAFSA-LSSVM算法模型的建立。 實驗環(huán)境為貴州某煤礦井下747 m的總風道和回風巷,巷道內已覆蓋工業(yè)以太網,巷道截面寬度為4 m左右。在此基礎上搭建井下人員無線定位系統(tǒng),只需要安裝光纖交換機和本質安全型AP(接入點)終端。實驗區(qū)域為總風道和回風巷,巷道中基本沒有雜物堆放和大型機電設備。巷道墻面粗糙,分布著水管、支架、電纜和光纖等設備;巷道相對比較直且彎道較小,過往作業(yè)人員也不是太多。實驗環(huán)境中電磁環(huán)境相對穩(wěn)定,AP節(jié)點與AP節(jié)點之間的距離控制在100 m左右,實驗區(qū)域如圖1所示。 圖1 井下實驗巷道 從圖1可看出,起點在總風道,終點在回風巷,在整個實驗區(qū)域共安裝7個本質安全型AP節(jié)點,可實現巷道內無線全覆蓋。 井下無線定位算法實現過程分4個步驟,依次為區(qū)域劃分、插值數據估算、算法訓練和實時定位。 根據井下巷道的環(huán)境,將747 m的實驗區(qū)域劃分為166個實驗小區(qū)域,每個實驗小區(qū)域長為4.5 m,寬為3 m。實驗小區(qū)域劃分如圖2所示。 從圖2可看出,在4.5 m×3 m區(qū)域內共有12個點,其中6個采集點,需要實驗人員采集該點的無線信息數據;6個預測點,需要利用采集點的信息數據,通過服務器和利用克里金插值算法估算它們的無線信息數據,完成實驗小區(qū)域指紋信息采集工作,這種方法可以減少50%采集工作量。圖2中有一條中軸線,在井下采集數據時,以該中軸線為巷道中心位置進行采集。 圖2 實驗小區(qū)域劃分 由實驗人員攜帶無線采集接收終端進入實驗區(qū)域完成所有采集點的無線信息數據采集。指紋數據采集流程如圖3所示。 圖3 指紋數據采集流程 由無線采集接收終端將掃描、處理后得到的無線信息數據(RSSI值、IP地址和MAC地址),通過無線網絡傳輸到服務器,每個采集點進行12次采集工作,再由服務器對其求出RSSI的平均值,確保每個采集點的RSSI值穩(wěn)定可靠;最后將RSSI平均值與采集點的實際坐標進行組合,并將組合數據存放到指紋數據庫。在實驗區(qū)域內共采集750個點的無線信息數據,建立采集指紋數據庫,完成指紋數據采集工作。 插值數據估算利用文獻[19]的模擬退火人工蜂群混合算法優(yōu)化克里金插值算法,完成750個預測點的估算工作,插值數據估算流程如圖4所示。 圖4 插值數據估算流程 首先利用區(qū)域劃分得到采集指紋數據庫,初步構建克里金插值算法模型,并初步完成變異函數擬合。其次利用模擬退火人工蜂群混合算法優(yōu)化變異函數球狀模型參數,從而建立克里金插值算法模型。再次利用該算法模型和采集指紋數據庫對預測點的RSSI值進行估算,并將其估算值與預測點坐標位置進行組合后,存入插值指紋數據庫。最后結合采集指紋數據庫和插值指紋數據庫,生成由166個實驗小區(qū)域組成的實驗小區(qū)域無線定位指紋數據庫。利用模擬退火人工蜂群混合算法優(yōu)化克里金插值算法可估算預測點RSSI值,建立插值指紋數據庫,從而可減少50%采集工作量,且插值精度較高。 將區(qū)域劃分和插值數據估算得到的實驗小區(qū)域無線定位指紋數據庫用來訓練經過DEAFSA優(yōu)化后的LSSVM。本文中DEAFSA主要參數設置見表1。 表1 DEAFSA主要參數設置 算法訓練流程如圖5所示。首先利用實驗小區(qū)域無線定位指紋數據庫初步構建LSSVM算法模型,并生成正則化參數γ和核函數寬度σ;其次按照表1進行DEAFSA參數設置,并對需要優(yōu)化參數搜索全局最優(yōu)解;再次將最優(yōu)解代回到LSSVM算法模型,并利用實驗小區(qū)域無線定位指紋數據庫進行訓練;最后建立DEAFSA-LSSVM算法模型。 圖5 算法訓練流程 實時定位是利用加權K近鄰(Weighted K-nearest Neighbor,WKNN)算法[20]完成定位點坐標位置估算。實時定位流程如圖6所示。 圖6 實時定位流程 首先利用無線采集接收終端獲取待定位點的無線信息數據,經無線網絡傳輸到服務器。其次將待定位點的RSSI值代到DEAFSA-LSSVM算法模型,計算出所屬實驗小區(qū)域。再次設定WKNN算法中的K為4,并在實驗小區(qū)域無線定位指紋數據庫找到相關點的RSSI值。最后利用WKNN算法估算出定位點的坐標位置,完成建立差分魚群優(yōu)化最小二乘支持向量機的加權K近鄰(DEAFSA-LSSVM-WKNN)定位算法。 在建立實驗小區(qū)域無線定位指紋數據庫和DEAFSA-LSSVM算法模型后進行實時定位。由作業(yè)人員攜帶無線采集接收終端進入實驗區(qū)域進行實時定位實驗,無線采集接收終端每3 s自動采集1次無線信息數據,并將其傳輸到服務器實時定位數據庫中。無線采集接收終端主要由主控芯片STC15W4K56S4、液晶顯示模塊LCD1602、無線芯片HF-LPB100、獨立按鍵和鋰電池供電模塊組成,其優(yōu)點為體積小、功耗低、工作時間長、攜帶方便。該終端能掃描出各個 AP節(jié)點的RSSI值和MAC地址等信息,通過主控芯片對數據進行處理后,可將有用信息通過無線網絡傳輸到對應的數據庫服務器中。 作業(yè)人員從起點先以1 m/s速度走到終點,從終點以2 m/s速度快速走回到起點,再從起點以3 m/s速度慢跑到終點,從終點以4 m/s速度跑回到起點,到達起點或終點時都停留60 s,實驗過程共用時1 800 s,采集得到600組待定位無線信息數據,將這600組信息數據生成實時定位數據庫。 為對比各種算法性能,需要采用統(tǒng)一的檢測數據源,因此,再由實驗人員攜帶無線采集接收終端進入實驗區(qū)域,在井下巷道中隨機采集200個檢測點的無線信息數據和坐標位置,建立檢測指紋數據庫。 為檢測本文提出的DEAFSA的優(yōu)化性能,利用實驗小區(qū)域無線定位指紋數據庫對LSSVM進行訓練,建立DEAFSA-LSSVM算法模型。 利用表1中的參數分別對需要比較的差分優(yōu)化最小二乘支持向量機(DE-LSSVM)算法和人工魚群優(yōu)化最小二乘支持向量機(AFSA-LSSVM)算法進行設置,利用實驗小區(qū)域無線定位指紋數據庫分別對2種智能優(yōu)化算法進行尋優(yōu),通過50次尋優(yōu)得到平均迭代次數;尋優(yōu)結束后建立DE-LSSVM算法模型和AFSA-LSSVM算法模型。 利用檢測指紋數據庫分別對LSSVM算法模型、DE-LSSVM算法模型、AFSA-LSSVM算法模型和DEAFSA-LSSVM算法模型進行計算,并計算出分類準確率,經過50次運算得到其平均值。不同算法的尋優(yōu)實驗結果對比見表2。 表2 不同算法的尋優(yōu)實驗結果對比 由表2可看出,未經優(yōu)化的LSSVM算法分類準確率只有86.43%;經過DE算法和AFSA算法優(yōu)化過的LSSVM算法分類準確率都有所提高,但迭代次數都達到500次以上,增加了計算量;而本文提出的DEAFSA-LSSVM算法分類準確率達到98.87%,迭代次數只有382次。 通過迭代次數和準確率的實驗結果可以得出,本文提出的DEAFSA-LSSVM算法相較于LSSVM算法、DE-LSSVM算法和AFSA-LSSVM算法,收斂速度更快,分類準確率更高,且具有較強的泛化能力。DEAFSA全局搜索能力更強,能及時跳出局部極值陷阱,從而提高算法搜索精度,且優(yōu)化性能更好。 為檢測本文提出的DEAFSA-LSSVM-WKNN定位算法的定位性能,將其與k均值聚類的加權K近鄰(k-means-WKNN)定位算法和LSSVM的加權K近鄰(LSSVM-WKNN)定位算法的定位效果進行對比。 首先利用k均值聚類算法對實驗小區(qū)域無線定位指紋數據庫進行聚類,重新分解成166個簇,利用WKNN算法進行定位,建立k-means-WKNN定位算法模型。再利用訓練好的LSSVM算法模型,配合WKNN算法進行定位,建立LSSVM-WKNN定位算法模型。最后在檢測指紋數據庫中隨機選出25個測試點,并進行隨機排序,建立測試數據集。將WKNN算法中的K設為4,利用k-means-WKNN定位算法、LSSVM-WKNN定位算法和本文提出的DEAFSA-LSSVM-WKNN定位算法進行定位,定位結果如圖7所示。 由圖7可看出,DEAFSA-LSSVM-WKNN定位算法的定位精度比k-means-WKNN定位算法和LSSVM-WKNN定位算法都要高,該結果說明利用DEAFSA優(yōu)化LSSVM,不僅能提高分類準確度,同時也能提高算法定位精度。3種不同算法的定位誤差對比見表3。 圖7 不同算法定位誤差分布對比 表3 不同算法的定位誤差對比 由表3可知,DEAFSA-LSSVM-WKNN定位算法的平均定位誤差為1.51 m,小于LSSVM-WKNN定位算法和k-means-WKNN定位算法的1.86 m和2.94 m。DEAFSA-LSSVM-WKNN定位算法比LSSVM-WKNN定位算法的定位精度提高了18.82%。 綜合上述實驗結果可以得出,DEAFSA-LSSVM-WKNN定位算法相較于另外2種定位算法,無論是最大誤差、最小誤差還是平均誤差都較小,取得了較好的定位效果。該定位算法魯棒性更好,其定位精度更高,更適合在煤礦井下復雜環(huán)境中應用。 (1)提出了DEAFSA優(yōu)化LSSVM的井下無線定位算法。該算法首先將實驗區(qū)域劃分為多個實驗小區(qū)域,限制了誤差范圍,減少了定位的計算量,提高了定位的實時性;然后結合人工魚群和差分進化2種智能優(yōu)化算法優(yōu)化正則化參數和核函數寬度,提升了支持向量機分類準確率;最后利用所屬實驗小區(qū)域內的無線信息數據,通過WKNN算法完成實時定位。 (2)實驗結果表明:該定位算法與同類定位算法相比,具有收斂速度快、分類準確、定位精度高等特點,分類準確率高達98.87%,平均定位誤差為1.51 m,能適應煤礦井下特殊環(huán)境的定位需求。 (3)在接下來的研究工作中,將利用差分魚群算法進一步優(yōu)化LSSVM,提高其收斂速度和分類準確率,從而提升算法的定位精度。1.3 差分進化算法
1.4 差分魚群優(yōu)化最小二乘支持向量機算法
2 實驗環(huán)境
3 井下無線定位算法實現
3.1 區(qū)域劃分
3.2 插值數據估算
3.3 算法訓練
3.4 實時定位
4 實驗分析
4.1 實驗數據采集
4.2 DEAFSA的優(yōu)化性能分析
4.3 井下無線定位算法的定位性能分析
5 結論