蔡青松,林 佳
北京工商大學(xué) 計(jì)算機(jī)與信息工程學(xué)院,北京100048
隨著物聯(lián)網(wǎng)的快速發(fā)展,其應(yīng)用領(lǐng)域不斷增加。據(jù)預(yù)測(cè)到2025年,通過(guò)無(wú)線通信連接的設(shè)備數(shù)量將超過(guò)300億臺(tái)[1]。相比于傳統(tǒng)的互聯(lián)網(wǎng)而言,一些新興的IoT應(yīng)用僅需要設(shè)備具有極小的內(nèi)存、帶寬和處理能力就可以高效地完成工作[2-3]。傳統(tǒng)的蜂窩網(wǎng)絡(luò)等通信技術(shù)在網(wǎng)絡(luò)容量、通信范圍、能耗和成本方面已經(jīng)無(wú)法滿足IoT設(shè)備這種“花少錢(qián)辦大事”的需求[4]。近年來(lái),物聯(lián)網(wǎng)的快速發(fā)展對(duì)通信技術(shù)提出了更高的要求,傳統(tǒng)的物聯(lián)網(wǎng)通信技術(shù)面臨著巨大的挑戰(zhàn)。針對(duì)此問(wèn)題,一種具有應(yīng)用前景的低功耗長(zhǎng)距離通信技術(shù)——LPWAN,被用來(lái)實(shí)現(xiàn)不斷增加的大量設(shè)備之間的遠(yuǎn)距離通信,并在智能路燈、遠(yuǎn)程抄表等應(yīng)用領(lǐng)域中被逐步應(yīng)用[5-7]。傳統(tǒng)的Mesh網(wǎng)絡(luò)雖然解決了長(zhǎng)距離的組網(wǎng)需求,但受制于高能耗和高成本,而LPWAN的出現(xiàn)則彌補(bǔ)了資源受限的低功率設(shè)備的這一不足。
LoRa作為一種新興的LPWAN技術(shù),憑借其在遠(yuǎn)距離傳輸中超低的功耗和廉價(jià)的部署成本而備受關(guān)注。LoRa技術(shù)通常指協(xié)議棧中兩個(gè)不同的層[8]:(1)基于chirp擴(kuò)頻調(diào)制的物理層;(2)在LoRa物理層之上的MAC層協(xié)議即LoRaWAN。LoRa典型的部署方式是星型的網(wǎng)絡(luò)拓?fù)洌K端通常以單跳的形式與網(wǎng)關(guān)通信,因而無(wú)需構(gòu)建和維護(hù)復(fù)雜的多跳網(wǎng)絡(luò)[9]。然而,為了在不同的應(yīng)用場(chǎng)景中實(shí)現(xiàn)網(wǎng)絡(luò)的可擴(kuò)展性,需要針對(duì)LoRa通信技術(shù)中所提供的多種參數(shù)設(shè)置及其組合進(jìn)行動(dòng)態(tài)選擇,以適應(yīng)不同應(yīng)用的需求。在通信時(shí),每個(gè)LoRa設(shè)備都需配置4個(gè)主要參數(shù),分別是擴(kuò)頻因子(Spreading Factor,SF)、帶寬(Bandwidth,BW)、編碼率(Code Rate,CR)和傳輸功率(Transmission Power,TP)[10],每個(gè)參數(shù)的數(shù)值取決于LoRa設(shè)備的區(qū)域部署方案[11],這些參數(shù)的組合超過(guò)6 000多種。不同的通信參數(shù)組合對(duì)數(shù)據(jù)分組的空中時(shí)間(Time on Air,ToA)存在顯著的變化,例如,對(duì)于具有20 Byte的數(shù)據(jù)分組,ToA的變化在7 ms~2.2 s之間。因此通信參數(shù)的動(dòng)態(tài)選擇對(duì)LoRa網(wǎng)絡(luò)部署的可擴(kuò)展性有著較大的影響。由于在實(shí)際應(yīng)用部署中,終端設(shè)備需支持多種應(yīng)用且部署數(shù)量較大,現(xiàn)有的靜態(tài)參數(shù)設(shè)置方法對(duì)單網(wǎng)關(guān)LoRa網(wǎng)絡(luò)可支持的最大終端設(shè)備數(shù)量存在著局限性,原因是其不能及時(shí)反應(yīng)信道的實(shí)時(shí)變化且發(fā)生沖突的概率較大,因此提升網(wǎng)絡(luò)的可擴(kuò)展性以適應(yīng)上述情況是極其重要的。當(dāng)前,如何根據(jù)應(yīng)用需求實(shí)現(xiàn)終端設(shè)備的動(dòng)態(tài)傳輸參數(shù)選擇,從而提升網(wǎng)絡(luò)性能,是學(xué)術(shù)界和工業(yè)界亟待探討和解決的問(wèn)題。
針對(duì)上述問(wèn)題,已有一些研究工作[12-15]提出了基于信噪比和ToA以及網(wǎng)關(guān)的距離等指標(biāo)分配SF,能夠有效地改善LoRa網(wǎng)絡(luò)中的數(shù)據(jù)包錯(cuò)誤率(Packet Error Rate,PER)的不均勻性。然而,該方法沒(méi)有考慮到BW、CR和TP等參數(shù)對(duì)網(wǎng)絡(luò)性能造成的影響,因此無(wú)法全面評(píng)估網(wǎng)絡(luò)傳輸性能??紤]到已有方法的不足,本文針對(duì)單網(wǎng)關(guān)LoRa網(wǎng)絡(luò)建立了信道沖突和鏈路預(yù)算的多目標(biāo)模型,通過(guò)對(duì)其求解,可以得到最佳的參數(shù)組合。求解該問(wèn)題的算法有窮舉法、遺傳算法、模擬退火算法??紤]到終端是電池供電的,窮舉法消耗時(shí)間過(guò)長(zhǎng)不適用于此場(chǎng)景。模擬退火算法是一種隨機(jī)算法且收斂速度較慢,并不能快速找到全局最優(yōu)解。遺傳算法(Genetic Algorithm,GA)處理的是通過(guò)參數(shù)集進(jìn)行編碼得到的染色體個(gè)體,并且能同時(shí)處理種群中的多個(gè)個(gè)體,但傳統(tǒng)遺傳算法其核心操作——交叉算子在因素分割時(shí)位置是隨機(jī)產(chǎn)生的,搜索具有一定的盲目性,這一缺陷降低了算法的搜索效率。為了解決這一問(wèn)題,通過(guò)引入正交實(shí)驗(yàn)的方法來(lái)設(shè)計(jì)交叉算子,以此產(chǎn)生遺傳算法的群體。通過(guò)使用基于正交遺傳算法(Orthogonal Genetic Algorithm,GA)的動(dòng)態(tài)參數(shù)選擇方法,使通信設(shè)備可以自主選擇SF、BW、CR和TP等參數(shù),以達(dá)到在較低的功耗下得到較高用戶(hù)體驗(yàn)質(zhì)量的目標(biāo)。總結(jié)起來(lái),本文的主要工作包括:
(1)通過(guò)實(shí)驗(yàn),對(duì)LoRa設(shè)備的不同傳輸參數(shù)設(shè)置及組合在ToA和能耗方面的差異進(jìn)行分析;(2)針對(duì)單網(wǎng)關(guān)LoRa網(wǎng)絡(luò)建立的信道沖突和鏈路預(yù)算的模型(即目標(biāo)函數(shù)),提出了基于OGA的動(dòng)態(tài)參數(shù)選擇算法求解模型,利用參數(shù)的交叉組合動(dòng)態(tài)地選擇,實(shí)現(xiàn)了沖突概率最小化;(3)通過(guò)使用NS3網(wǎng)絡(luò)仿真平臺(tái)實(shí)現(xiàn)了本文所提出的動(dòng)態(tài)參數(shù)選擇方法。對(duì)超過(guò)10 000臺(tái)終端設(shè)備的單網(wǎng)關(guān)LoRa網(wǎng)絡(luò)的實(shí)驗(yàn)結(jié)果表明,利用動(dòng)態(tài)參數(shù)選擇的方法設(shè)置通信參數(shù),其分組交付率(Packet Delivery Rate,PDR)可提高30%,顯著提高了LoRa網(wǎng)絡(luò)的可擴(kuò)展性和場(chǎng)景適應(yīng)能力。
下面首先對(duì)LoRa網(wǎng)絡(luò)接入的關(guān)鍵技術(shù)進(jìn)行概述,然后分析對(duì)比了LoRa領(lǐng)域中的無(wú)線資源分配的研究現(xiàn)狀。
LoRa采用線性調(diào)頻擴(kuò)頻(Chirp Spread Spectrum,CSS)調(diào)制技術(shù)來(lái)實(shí)現(xiàn)遠(yuǎn)距離和低功耗的通信[16],同時(shí)結(jié)合正向糾錯(cuò)碼技術(shù),因此具有抗干擾、抗多徑等優(yōu)點(diǎn)[17]。LoRa通信時(shí)的主要幾個(gè)參數(shù)影響分析如下:
SF表示每比特信息發(fā)送的符號(hào)數(shù),SF∈[7,12]。它的值越大,通信距離越遠(yuǎn),靈敏度越高,但增加了ToA。BW是指一個(gè)符號(hào)所占用的頻譜,較高的BW提供高數(shù)據(jù)速率(更短的ToA),但靈敏度較低。CR表示對(duì)傳輸錯(cuò)誤的彈性,CR∈{4/5,4/6,4/7,4/8},高的CR提供了更多的保護(hù),但增加了ToA。TP影響接收器的靈敏度和通信距離,TP的范圍是-4 dBm到20 dBm,步長(zhǎng)為1 dB。
通過(guò)實(shí)驗(yàn)分析SF、CR、BW和TP的變化對(duì)ToA和能耗的影響。由于傳輸參數(shù)的選擇對(duì)通信性能有著顯著的影響,在實(shí)際部署中,希望由電池供電的終端能夠平衡通信性能和能量消耗之間的關(guān)系,目標(biāo)是使電池壽命最大化的同時(shí)提高網(wǎng)絡(luò)的可擴(kuò)展性。LoRa傳輸?shù)腡oA取決于SF、BW和CR的組合值,而能耗則受TP值的影響。改變這些參數(shù)極大地影響通信范圍、數(shù)據(jù)速率以及信號(hào)的解碼能力。在本文的研究中TP主要影響網(wǎng)關(guān)是否成功接收。圖1分別為不同參數(shù)的ToA與能耗的比較,實(shí)驗(yàn)結(jié)果表明通信參數(shù)的選擇對(duì)數(shù)據(jù)分組的ToA存在顯著的變化。因此通信參數(shù)的動(dòng)態(tài)選擇對(duì)LoRa網(wǎng)絡(luò)部署的可擴(kuò)展性有著較大的影響。
圖1 不同參數(shù)對(duì)ToA和能耗的影響
為優(yōu)化LoRa網(wǎng)絡(luò)的性能,當(dāng)前的一些工作主要專(zhuān)注于如何有效地分配無(wú)線資源,已有許多具有不同目標(biāo)的LoRa參數(shù)分配方法。歸結(jié)起來(lái),關(guān)于LoRa參數(shù)分配的研究大致分為以下兩類(lèi):
第一類(lèi)是靜態(tài)部署方法。靜態(tài)部署是指在整個(gè)通信過(guò)程中使用相同的參數(shù)配置。Bor等人[18]采用了三種靜態(tài)的傳輸參數(shù)設(shè)置SN1、SN2和SN3對(duì)LoRa網(wǎng)絡(luò)的可擴(kuò)展性進(jìn)行評(píng)估,作者指出隨終端數(shù)量的增加,靜態(tài)參數(shù)部署不能使LoRa網(wǎng)絡(luò)很好地?cái)U(kuò)容。Bouguera等人[19]指出了傳輸中能耗隨著SF、BW、CR和TP等LoRa參數(shù)的改變而變化,但其研究中并沒(méi)有提出解決方案。Voigt等人[20]針對(duì)在距離較近的地方部署多個(gè)獨(dú)立的LoRa網(wǎng)絡(luò)會(huì)產(chǎn)生干擾的問(wèn)題,得出小的CR會(huì)導(dǎo)致網(wǎng)絡(luò)間抗干擾性較差,最終PDR較大的結(jié)論。因此,LoRa參數(shù)的動(dòng)態(tài)配置和選擇對(duì)降低傳感器節(jié)點(diǎn)的能耗和提高網(wǎng)絡(luò)可擴(kuò)展性有重大研究意義。
第二類(lèi)是動(dòng)態(tài)部署方法。Bor等人[18]評(píng)估了動(dòng)態(tài)通信參數(shù)SN4和SN5對(duì)PDR的影響。與靜態(tài)設(shè)置實(shí)現(xiàn)相比,動(dòng)態(tài)參數(shù)設(shè)置有著顯著的改進(jìn)。但局限性在于所作的假設(shè)過(guò)于理想而使模擬變得不切實(shí)際。Lim等人[14]提出一種SF優(yōu)化方案,來(lái)最大化LoRa系統(tǒng)的數(shù)據(jù)交付成功率(PSP),并比較了幾種現(xiàn)存的分配機(jī)制EIB和EAB,但沒(méi)有考慮影響PSP的其他重要參數(shù)如BW、CR和TP等。Floris等人[21]動(dòng)態(tài)分配PER低于某個(gè)閾值的最低SF,使用相同的BW、CR和TP等參數(shù),這個(gè)策略在終端設(shè)備較少時(shí)(<1 000)PDR值較高。因此對(duì)較大數(shù)量的網(wǎng)絡(luò)部署,通過(guò)改變BW、CR和TP對(duì)PDR有顯著的影響。
將建立的信道沖突和鏈路預(yù)算模型在NS3仿真平臺(tái)中實(shí)現(xiàn)。
LoRa網(wǎng)絡(luò)的信道訪問(wèn)是基于ALOHA機(jī)制[22]的,允許隨機(jī)發(fā)送數(shù)據(jù)而無(wú)需檢查信道是否空閑,因此發(fā)生沖突的概率較大。通過(guò)建立沖突訪問(wèn)模型使得沖突概率最小化,因此能有效地利用無(wú)線資源。
兩個(gè)具有相同SF的數(shù)據(jù)分組同時(shí)到達(dá)同一信道會(huì)引起沖突,因此導(dǎo)致數(shù)據(jù)分組丟失。具有相同SF至少發(fā)生一次碰撞的概率,如式(1)所示:
其中Gsf是在傳輸SF的1個(gè)分組期間產(chǎn)生的具有相同SF的分組數(shù)量,L表示分組負(fù)載,ToA表示如下:
N為終端數(shù)量,Ti表示數(shù)據(jù)分組的到達(dá)時(shí)間間隔,單位時(shí)間λ產(chǎn)生的流量負(fù)載如下:
1個(gè)分組傳輸期間產(chǎn)生的流量Gsf如式(4)所示:
其中?sf為使用相同SF的設(shè)備的比例,最后,碰撞的概率可以表示為:
數(shù)據(jù)分組在傳輸過(guò)程中發(fā)生沖突的概率與這些參數(shù)組合和使用相同SF的概率密切相關(guān),因此建立信道沖突模型作為目標(biāo)函數(shù),通過(guò)動(dòng)態(tài)地選擇參數(shù)組合提高PDR,進(jìn)而改善網(wǎng)絡(luò)的可靠傳輸。
依據(jù)選擇的參數(shù)判斷網(wǎng)關(guān)是否能夠接收成功。這些參數(shù)對(duì)接收敏感度[23]也有顯著影響。鏈路預(yù)算的評(píng)估是取決于鏈路參數(shù)如信噪比(Signal-to-Noise Ratio,SNR)和接收靈敏度,接收靈敏度與SNR有正相關(guān)的函數(shù)關(guān)系,SNR的計(jì)算公式如下:
Ebit為每比特能量,Tbit為每比特持續(xù)的時(shí)間,Ebit表示為:
NF為噪聲系數(shù),K為卡爾文常數(shù),T為溫度,N0為噪聲功率表示為:
prx為接收功率,表示為:
SNR最終改寫(xiě)為:
接收靈敏度計(jì)算為:
Ptx代表發(fā)送功率,路徑損失計(jì)算如下:
為了確定網(wǎng)關(guān)是否成功地接收到分組,網(wǎng)關(guān)計(jì)算與分組相關(guān)的RSSI,接收的RSSI計(jì)算如下:
在接收器側(cè),通信范圍受靈敏度閾值Srx的限制,RSSI受LoRa參數(shù)SF、BW、CR和TP的影響。RSSI>Srx時(shí),則接收成功,數(shù)據(jù)丟失率p表示為:
在NS-3現(xiàn)有的接收模型有l(wèi)og-distance模型、Okumura-Haha模型等,并沒(méi)有適合OGA算法的通信模型。因此需要根據(jù)上述公式在NS-3中建立模型應(yīng)用到仿真中。
在最初的LoRa網(wǎng)絡(luò)中,按照靜態(tài)的方法進(jìn)行部署可以得到很好通信性能。但隨著應(yīng)用需求的不斷擴(kuò)大,接入的終端數(shù)量逐漸增加,對(duì)于有成千上萬(wàn)臺(tái)設(shè)備的應(yīng)用,靜態(tài)傳輸使得網(wǎng)絡(luò)的可擴(kuò)展性較差,因此為達(dá)到最優(yōu)的性能來(lái)滿足不同的應(yīng)用場(chǎng)景,本文采用下述的OGA方法。
正交實(shí)驗(yàn)設(shè)計(jì)[24]是安排多因素、尋求最優(yōu)水平組合的一種高效率實(shí)驗(yàn)設(shè)計(jì)方法,通過(guò)少數(shù)幾次實(shí)驗(yàn),就能找到較好的實(shí)驗(yàn)條件,因此被廣泛用于尋優(yōu)。對(duì)于LoRa參數(shù)用集合S表示S={SF,BW,CR,TP},其中SF∈[6,12]有7個(gè)水平,BW∈{10.4,15.6,20.8,31.2,41.7,62.5,125,250,500}kHz有10個(gè)水平,CR∈{4/5,4/6,4/7,4/8}有4個(gè)水平,TP∈[-4,20]dBm有24個(gè)水平,導(dǎo)致產(chǎn)生6 720種組合,用正交實(shí)驗(yàn)設(shè)計(jì)產(chǎn)生遺傳算法的初始群體,其中SF∈[7,11],BW∈{125,250,500}kHz,CR∈{4/5,4/6,4/7,4/8},TP∈{2,5,8,11,14}dBm,所產(chǎn)生的參數(shù)組合共300個(gè)。正交實(shí)驗(yàn)設(shè)計(jì)方法的概念、性質(zhì)及構(gòu)造步驟和方法詳見(jiàn)文獻(xiàn)[25]。
GA作為一種自適應(yīng)的搜索算法,其核心思想在于將原始問(wèn)題進(jìn)行編碼以轉(zhuǎn)變?yōu)樽匀环N群的基因序列參與進(jìn)化過(guò)程。將問(wèn)題的可行解表示為染色體[26]。然后借用生物遺傳學(xué)的觀點(diǎn),通過(guò)選擇、交叉等遺傳因子的作用使染色體不斷進(jìn)化并基于適應(yīng)度值來(lái)選擇染色體。最后,適應(yīng)性最高的染色體,對(duì)應(yīng)于問(wèn)題的最優(yōu)解或近似最優(yōu)解。
由于LoRa網(wǎng)絡(luò)中的參數(shù)設(shè)置很多,找到滿足特定應(yīng)用的參數(shù)組合花費(fèi)時(shí)間較長(zhǎng)。而GA的優(yōu)點(diǎn)體現(xiàn)在對(duì)可行解表示的廣泛性上,它處理的對(duì)象并不是參數(shù)本身,而是通過(guò)參數(shù)集進(jìn)行編碼得到的基因個(gè)體,并且能同時(shí)處理種群中的多個(gè)個(gè)體。具有較好的全局搜索性,這對(duì)LoRa網(wǎng)絡(luò)中的參數(shù)配置非常適用。
雖然GA在許多優(yōu)化問(wèn)題中都有成功的應(yīng)用,但大量研究表明,傳統(tǒng)的GA存在許多的不足和缺陷[26],如早熟收斂、局部搜索能力差等。交叉算子是模仿自然界染色體基因重組的過(guò)程,是遺傳算法的核心操作,采用傳統(tǒng)方式進(jìn)行交叉操作時(shí),因素分割的位置是隨機(jī)產(chǎn)生的,搜索具有一定的盲目性,這一缺陷極大地降低了算法的搜索效率。為了解決這一問(wèn)題,通過(guò)引入正交實(shí)驗(yàn)的方法來(lái)設(shè)計(jì)交叉算子,自適應(yīng)地調(diào)整因素個(gè)數(shù)和父代個(gè)體因素分割的位置,以此產(chǎn)生遺傳算法的群體。
遺傳算法包括三種常用的編碼實(shí)現(xiàn)方式,即二進(jìn)制、符號(hào)與實(shí)數(shù)編碼。在LoRa參數(shù)組合問(wèn)題中采用實(shí)數(shù)編碼方式,參數(shù)組合的實(shí)數(shù)編碼表示一個(gè)染色體,每一個(gè)參數(shù)相當(dāng)于染色體中的一個(gè)基因,這種編碼方式有利于適應(yīng)度值的計(jì)算。
對(duì)于LoRa的眾多參數(shù)組合中,設(shè)參與交叉操作的兩個(gè)父代個(gè)體p1:(7,125,1,2),p2:(8,250,2,5),將p1、p2的第1維與第2維、3維和4維分別記為因素1和因素2,這樣就將父代個(gè)體分割成2個(gè)因素,因素分割的位置如式中的虛線所示。這樣就把對(duì)p1、p2交叉操作轉(zhuǎn)化為2因素、2水平的實(shí)驗(yàn)問(wèn)題。最后利用正交實(shí)驗(yàn)設(shè)計(jì)思想,產(chǎn)生子代種群P1,見(jiàn)式(15):
將p1、p2的第1維和第2維記為因素1,第3維和第4維共同記為因素2,因素分割的位置如式中的虛線所示,然后將因素1和因素2分割成2個(gè)水平。這是同樣把對(duì)p1、p2交叉操作轉(zhuǎn)化為2因素、2水平的實(shí)驗(yàn)問(wèn)題。最后利用正交實(shí)驗(yàn)設(shè)計(jì)思想產(chǎn)生子代種群P2,見(jiàn)式(16):
將p1、p2的第1維、2維和3維一起記為因素1,將p1、p2的第4維因素,記為因素2,因素分割的位置如式中的虛線所示。把對(duì)p1、p2交叉操作轉(zhuǎn)化為2因素、2水平的實(shí)驗(yàn)問(wèn)題。最后利用正交實(shí)驗(yàn)設(shè)計(jì)思想,產(chǎn)生子代種群P3,見(jiàn)式(17):
經(jīng)過(guò)以上3種方式進(jìn)行因素分割,產(chǎn)生包括2個(gè)父代在內(nèi)的8個(gè)后代個(gè)體。通過(guò)調(diào)整交叉點(diǎn)的個(gè)數(shù)及交叉操作的位置,極大地提高搜索效率。因素分割的具體方法見(jiàn)算法的步驟1。在N維的實(shí)數(shù)空間中,設(shè)參與重組的Q個(gè)父代個(gè)體為p1,p2,…,pQ,其中pi=(pi1,pi2,…,piN),且i∈{1,2,…,Q}。將每一個(gè)參與重組的父代個(gè)體看作是正交實(shí)驗(yàn)設(shè)計(jì)的一個(gè)水平,即Q水平;然后將每一個(gè)父代個(gè)體分成T個(gè)片段,每一個(gè)片段作為正交實(shí)驗(yàn)設(shè)計(jì)的一個(gè)因素,即T個(gè)因素。這樣就將對(duì)Q個(gè)父代個(gè)體的重組問(wèn)題轉(zhuǎn)化為Q水平、T因素的實(shí)驗(yàn)設(shè)計(jì)問(wèn)題。然后構(gòu)建正交表LM(QT)安排正交設(shè)計(jì)實(shí)驗(yàn),產(chǎn)生M子代個(gè)體。多點(diǎn)交叉的流程如下:
(1)將參與重組的Q個(gè)父代個(gè)體分別作為正交實(shí)驗(yàn)設(shè)計(jì)的一個(gè)水平,記第i個(gè)水平為βi,i∈{1,2,…,Q},則βi=pi。
(2)對(duì)變量x=(x1,x2,…,xN)的各維度進(jìn)行分組,將變量x劃分為T(mén)個(gè)片段,每個(gè)片段看作是正交實(shí)驗(yàn)設(shè)計(jì)的一個(gè)因素。具體的方法為:隨機(jī)產(chǎn)生T-1個(gè)整數(shù),即k1,k2,…,kT-1,且滿足1<k1<k2<…<kT-1<N把個(gè)體x=(x1,x2,…,xN)分成T份,其中每一份表示個(gè)體x的1個(gè)因素:
因此,第i個(gè)因素fi的Q個(gè)水平可表示為:
(3)構(gòu)造正交表,根據(jù)正交安排實(shí)驗(yàn),產(chǎn)生M個(gè)子代個(gè)體:
整個(gè)OGA動(dòng)態(tài)參數(shù)選擇的算法流程如下,流程圖如圖2所示。
圖2 算法流程圖
(1)確定實(shí)際問(wèn)題的參數(shù)集,編碼產(chǎn)生候選解,用正交設(shè)計(jì)思想產(chǎn)生遺傳算法的初始群體Si={(7,125,1,2),(7,500,4,11),(8,250,2,5),(8,500,3,14),(9,500,3,8),(9,125,2,8),(10,125,4,11),(10,250,1,5),(11,125,3,2),(11,250,4,14)}。
(2)設(shè)置最大迭代次數(shù)MaxT,初始t=0,產(chǎn)生種群后首先判斷是否到達(dá)迭代次數(shù)。
(3)計(jì)算候選解的適應(yīng)度值,選擇2個(gè)父代個(gè)體進(jìn)行3次不同位置的交叉操作,即以上多點(diǎn)交叉的流程,產(chǎn)生子代種群t+1。選擇的概率=個(gè)體適應(yīng)度值/總的適應(yīng)度值。
(4)依據(jù)目標(biāo)函數(shù)評(píng)價(jià)個(gè)體,適應(yīng)度值的計(jì)算為2個(gè)目標(biāo)函數(shù)值的和,即Pvalue=pcoll,sf+p,當(dāng)適應(yīng)度值在4%以?xún)?nèi)時(shí),輸出解。否則轉(zhuǎn)向步驟(2)。
通過(guò)使用網(wǎng)絡(luò)仿真器NS-3進(jìn)行仿真實(shí)驗(yàn)來(lái)評(píng)估LoRa網(wǎng)絡(luò)的性能。為驗(yàn)證本文采用的動(dòng)態(tài)傳輸參數(shù)方法的有效性,對(duì)終端設(shè)備分布、PDR和PER等指標(biāo)進(jìn)行評(píng)價(jià)。實(shí)驗(yàn)中的各參數(shù)如表1所示。
表1 參數(shù)設(shè)置
為提高網(wǎng)絡(luò)性能,需要在仿真開(kāi)始前給每個(gè)終端配置合適的SF,找到每個(gè)SF所支持的最大終端數(shù)量。此場(chǎng)景下終端是固定不動(dòng)的,計(jì)算SF的最佳分布可以平衡整個(gè)網(wǎng)絡(luò)中不同SF之間的碰撞概率。根據(jù)終端和網(wǎng)關(guān)之間的距離計(jì)算路徑損耗,再結(jié)合接收機(jī)靈敏度,選取滿足要求的最小SF,以提高傳輸速率,降低空中延遲,減少碰撞。定義使用SF的比例為?sf,(?7,?8,?9,?10,?11,?12)為(0.3,0.1,0.1,0.2,0.3,0),例如,數(shù)量為5 000的終端設(shè)備,SF12~SF7個(gè)數(shù)大約是0、1 500、500、500、1 000、1 000。雖然SF12提供了更大的傳輸范圍,但增加了沖突的概率,導(dǎo)致PDR降低。在網(wǎng)絡(luò)擁塞的情況下,較高SF不一定能夠改善其鏈路質(zhì)量。由于ToA較長(zhǎng),較大的SF更容易發(fā)生沖突,所以忽略SF12的使用與分配。如圖1(d)所示,TP與能耗有關(guān),但SF對(duì)能耗的影響遠(yuǎn)遠(yuǎn)大于TP,即增加SF比增加TP消耗更多的能量。所以SF的最優(yōu)分布對(duì)實(shí)際網(wǎng)絡(luò)部署有重要意義。本文的最大通信距離設(shè)置為8 km,網(wǎng)絡(luò)由一個(gè)位于半徑為8 km的圓的中心單網(wǎng)關(guān)提供服務(wù)。不同數(shù)量的終端設(shè)備分布如圖3所示。
圖3 忽略SF12的終端設(shè)備分布
OGA為迭代算法,為更好地設(shè)定迭代次數(shù),分別評(píng)估了3次不同迭代次數(shù)條件下隨著終端設(shè)備數(shù)量增加的PER分布情況。如圖4所示,橫坐標(biāo)為不同數(shù)量的終端,隨著迭代次數(shù)的增加,PER的趨勢(shì)是逐漸減小,并且呈收斂趨勢(shì)。在評(píng)估PDR之前,首先對(duì)使用不同SF、BW、CR和TP的PER進(jìn)行分析。圖5為設(shè)定的適應(yīng)度值控制在4%之內(nèi)的參數(shù)選擇情況,圖5中的DR所對(duì)應(yīng)的SF、BW和CR如表2所示。由圖可知相同SF下PER的基本趨勢(shì)是隨功率增加而上升,對(duì)于DR為1和2的情況,可能受到功率飽和的影響,使得整體的PER都比較低。
圖4 不同迭代次數(shù)下的平均PER
圖6對(duì)采用OGA方法與靜態(tài)方法的PDR進(jìn)行比較。SN1、SN2和SN3是三種靜態(tài)參數(shù)設(shè)置方法,其中SN1是最長(zhǎng)ToA的配置S={12,125,4/8,14},SN2是最短ToA的配置S={6,500,4/5,14},而SN3為默認(rèn)的LoRa參數(shù)配置S={12,125,4/5,14},隨著終端設(shè)備數(shù)量增加,OGA方法的PDR有顯著的提升。
圖5 不同參數(shù)情況下的平均PER
表2 不同SF和BW所對(duì)應(yīng)的DR
圖6 靜態(tài)參數(shù)組合設(shè)置的PDR比較
圖7顯示三種目前流行的SF分配機(jī)制與OGA方法的比較,EIB為基于時(shí)間間隔的SF分配,EAB為基于等面積的SF分配,SG為基于幾何方法的SF分配,在終端設(shè)備小于2 000時(shí),所提出的方法PDR始終控制在90%之內(nèi)。
圖7 不同優(yōu)化SF機(jī)制的PDR比較
圖8顯示了不同動(dòng)態(tài)方法的PDR與終端設(shè)備數(shù)量的關(guān)系,所提出的動(dòng)態(tài)參數(shù)選擇方法當(dāng)終端設(shè)備到達(dá)10 000臺(tái)時(shí)PDR可提高30%。方法1即NS-3中[21],對(duì)每個(gè)終端動(dòng)態(tài)分配PER低于某個(gè)閾值的最低SF,使用相同的BW、CR和TP等參數(shù),與OGA方法對(duì)比,無(wú)論終端數(shù)量的大小,方法1的PDR總是低的。方法2中使用動(dòng)態(tài)參數(shù)設(shè)置SN5,每次選擇最小ToA和最小的TP,當(dāng)終端數(shù)量較大時(shí),本文所提出的方法有明顯的優(yōu)勢(shì)。
圖8 不同動(dòng)態(tài)方法的PDR比較
本文針對(duì)LPWAN的熱點(diǎn)技術(shù)之一——LoRa在進(jìn)行網(wǎng)絡(luò)部署時(shí)采用靜態(tài)參數(shù)設(shè)置而導(dǎo)致設(shè)備工作的靈活性和網(wǎng)絡(luò)的可擴(kuò)展性不高等問(wèn)題展開(kāi)研究,提出一種提升LoRa網(wǎng)絡(luò)性能的終端配置參數(shù)集動(dòng)態(tài)選擇方法。通過(guò)引入基于OGA的方法來(lái)對(duì)所建立的信道沖突和鏈路預(yù)算模型進(jìn)行求解,從而動(dòng)態(tài)地對(duì)LoRa網(wǎng)絡(luò)參數(shù)進(jìn)行選擇,因此獲得最小沖突概率的參數(shù)組合。與不同的動(dòng)態(tài)參數(shù)設(shè)置的方法相比PDR提升了30%,在終端設(shè)備數(shù)量較小的情形時(shí)(1 500臺(tái)左右的終端設(shè)備),與靜態(tài)參數(shù)設(shè)置相比PDR始終保持在90%左右,驗(yàn)證了LoRa網(wǎng)絡(luò)使用動(dòng)態(tài)參數(shù)選擇的方法可以很好地?cái)U(kuò)展。
實(shí)際的網(wǎng)絡(luò)部署通常通過(guò)單個(gè)LoRa網(wǎng)絡(luò)就能支持多個(gè)應(yīng)用程序。然而目前大多數(shù)的網(wǎng)絡(luò)部署研究?jī)H支持使用單個(gè)IoT應(yīng)用程序的網(wǎng)絡(luò)模擬,且不同的物聯(lián)網(wǎng)應(yīng)用具有不同的數(shù)據(jù)生成模式和服務(wù)質(zhì)量要求。因此下一步工作是研究對(duì)于不同的應(yīng)用程序,用戶(hù)可以指定應(yīng)用程序的數(shù)據(jù)生成模型以及數(shù)據(jù)分組大小。