成國(guó)慶,姜玉稀
(上海三思電子工程有限公司,上海 201100)
近年來(lái),物聯(lián)網(wǎng)技術(shù)飛速發(fā)展,智慧城市的建設(shè)使得人類城市生活更加高效[1-2]。黨的十九大報(bào)告提出,推動(dòng)互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能和實(shí)體經(jīng)濟(jì)深度融合,建設(shè)數(shù)字中國(guó)、智慧社會(huì)。我國(guó)政府大力推進(jìn)智慧城市規(guī)劃建設(shè)[3],而智慧城市建設(shè)需要采集并實(shí)時(shí)處理大量數(shù)據(jù),這意味著需要建設(shè)一個(gè)高度集成各種傳感器的網(wǎng)絡(luò)系統(tǒng),從而實(shí)現(xiàn)數(shù)據(jù)的收集與處理[4]。路燈位于城市道路的兩側(cè),能夠通過(guò)各種傳感器實(shí)時(shí)收集城市道路數(shù)據(jù),監(jiān)測(cè)道路狀況[5],并通過(guò)照明設(shè)備實(shí)時(shí)管理汽車流量[6-7]。因此智慧路燈系統(tǒng)是智慧城市建設(shè)的關(guān)鍵性公共基礎(chǔ)設(shè)施載體。
智慧路燈系統(tǒng)主要由智慧控制平臺(tái)、智能網(wǎng)關(guān)與外接設(shè)備(照明設(shè)備和傳感器設(shè)備)組成,是一個(gè)典型的層次化網(wǎng)絡(luò)結(jié)構(gòu)[8]。然而,由于路燈設(shè)備分布廣泛,各燈桿上裝備不同傳感器采集的數(shù)據(jù)類型不同,規(guī)模日益擴(kuò)大的智慧路燈系統(tǒng)使得智慧控制平臺(tái)很難對(duì)數(shù)據(jù)進(jìn)行管理和處理,許多低延遲需求任務(wù)(如無(wú)人駕駛、增強(qiáng)現(xiàn)實(shí)、事故警報(bào))可能由于數(shù)據(jù)傳輸延遲過(guò)大而無(wú)法有效執(zhí)行[9-10];另外,需要處理的數(shù)據(jù)量不斷增加,又導(dǎo)致數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)帶寬成本急劇增加[11-12]。數(shù)據(jù)傳輸延遲大和數(shù)據(jù)傳輸成本高的問(wèn)題已成為智慧路燈系統(tǒng)建設(shè)中的主要技術(shù)難點(diǎn)。目前,國(guó)內(nèi)外學(xué)者對(duì)智慧路燈系統(tǒng)的延遲和傳輸問(wèn)題的優(yōu)化方法開(kāi)展研究。Wu等人提出了一種任務(wù)運(yùn)行卸載方法[13],分析單個(gè)智能網(wǎng)關(guān)設(shè)備的性能參數(shù),管理任務(wù)資源。但此方法只能分析單線程的設(shè)備,不適合多線程的智能網(wǎng)關(guān)設(shè)備。Chen等人通過(guò)計(jì)算每個(gè)智能網(wǎng)關(guān)的功耗來(lái)確定智慧路燈系統(tǒng)的狀態(tài),利用Lyaponuv優(yōu)化方法確定智能網(wǎng)關(guān)的任務(wù)分配[14],但根據(jù)功耗判斷狀態(tài)不夠全面。為進(jìn)一步解決智慧路燈系統(tǒng)的延遲和傳輸問(wèn)題,本文提出了一種用于層次化智慧路燈網(wǎng)絡(luò)中智能網(wǎng)關(guān)任務(wù)調(diào)度的優(yōu)化方法,對(duì)智慧控制平臺(tái)下發(fā)任務(wù)的應(yīng)用程序和智能網(wǎng)關(guān)設(shè)備解耦。該方法考慮到智慧路燈系統(tǒng)的層次化網(wǎng)絡(luò)結(jié)構(gòu),建立智能網(wǎng)關(guān)的工作模型,當(dāng)智能網(wǎng)關(guān)的工作狀態(tài)為繁忙或故障時(shí),智能網(wǎng)關(guān)之間將根據(jù)地理位置和工作狀態(tài)進(jìn)行任務(wù)調(diào)度。實(shí)驗(yàn)表明,本文提出的方法能夠降低智慧路燈系統(tǒng)的延遲,使得數(shù)據(jù)分析和管理更加高效穩(wěn)定。
一般來(lái)說(shuō),智慧路燈系統(tǒng)是典型的層次化網(wǎng)絡(luò)[15]。以智慧控制平臺(tái)為控制層、智能網(wǎng)關(guān)為中間層、外接設(shè)備為執(zhí)行層構(gòu)建形成層次化網(wǎng)絡(luò)結(jié)構(gòu)。傳統(tǒng)智慧路燈系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,安裝在路燈桿上的智能網(wǎng)關(guān)依據(jù)從智慧控制平臺(tái)接收的任務(wù)控制外接設(shè)備進(jìn)行照明與數(shù)據(jù)收集并上傳給智慧控制平臺(tái),智慧控制平臺(tái)接收數(shù)據(jù)后通過(guò)應(yīng)用程序進(jìn)行計(jì)算處理并下發(fā)任務(wù)給智能網(wǎng)關(guān)。
圖1 傳統(tǒng)智慧路燈系統(tǒng)的層次化網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Hierarchical network structure of traditional smart street light system
然而,傳統(tǒng)智慧路燈系統(tǒng)層次化網(wǎng)絡(luò)結(jié)構(gòu)需要智慧控制平臺(tái)處理所有上傳的數(shù)據(jù),并且智慧控制平臺(tái)的應(yīng)用程序與對(duì)應(yīng)的智能網(wǎng)關(guān)需要實(shí)時(shí)連接獲取數(shù)據(jù),隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大,這些需求將難以滿足。本文利用智能網(wǎng)關(guān)作為任務(wù)計(jì)算處理的中心,對(duì)智慧控制平臺(tái)下發(fā)任務(wù)的應(yīng)用程序和智能網(wǎng)關(guān)設(shè)備解耦,將任務(wù)調(diào)度和數(shù)據(jù)計(jì)算的功能從控制平臺(tái)的應(yīng)用程序下沉到前端的智能網(wǎng)關(guān)。改進(jìn)后的層次化網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,在此網(wǎng)絡(luò)中智慧控制平臺(tái)只通過(guò)應(yīng)用程序下發(fā)任務(wù)和收集結(jié)果;智能網(wǎng)關(guān)接收任務(wù)、任務(wù)調(diào)度、控制外接設(shè)備進(jìn)行數(shù)據(jù)收集并在本地進(jìn)行計(jì)算處理,然后將執(zhí)行結(jié)果發(fā)送到智慧控制平臺(tái)。
圖2 本文智慧路燈系統(tǒng)的層次化網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Proposed hierarchical network structure of smart street light system
圖2所示的網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)勢(shì)在于,隨著網(wǎng)絡(luò)規(guī)模擴(kuò)大,智能網(wǎng)關(guān)的數(shù)量也會(huì)相應(yīng)擴(kuò)大,充分利用了各個(gè)智能網(wǎng)關(guān)的計(jì)算能力并緩解對(duì)智慧控制平臺(tái)計(jì)算能力的需求。同時(shí)本文建立智能網(wǎng)關(guān)的工作狀態(tài)模型,根據(jù)各智能網(wǎng)關(guān)的工作狀態(tài)開(kāi)展任務(wù)調(diào)度優(yōu)化。
對(duì)于智能網(wǎng)關(guān),表征其工作狀態(tài)的主要參數(shù)是延遲時(shí)間,即從智慧控制平臺(tái)下發(fā)任務(wù)到智能網(wǎng)關(guān)上傳任務(wù)執(zhí)行結(jié)果的時(shí)間。然而某一時(shí)刻智能網(wǎng)關(guān)的延遲時(shí)間無(wú)法實(shí)時(shí)獲取[9]。因此,工作狀態(tài)模型需要通過(guò)那些易于獲得的性能參數(shù)來(lái)估計(jì)延遲時(shí)間,即建立智能網(wǎng)關(guān)性能參數(shù)與智能網(wǎng)關(guān)的延遲時(shí)間之間的關(guān)系。智能網(wǎng)關(guān)有許多易于獲取的性能參數(shù),例如CPU利用率、內(nèi)存利用率、帶寬和已執(zhí)行的任務(wù)數(shù)[16]。本文選擇4個(gè)主要的性能參數(shù)通過(guò)多元線性回歸模型擬合智能網(wǎng)關(guān)的延遲時(shí)間[17]。這些參數(shù)與智能網(wǎng)關(guān)延遲時(shí)間的關(guān)系為:
Ti=α+β1Ui+β2Mi+β3Bi+β4Di+εi,
(1)
式中,i為智能網(wǎng)關(guān)的第i個(gè)樣本,T為延遲時(shí)間,U為智能網(wǎng)關(guān)處理器利用率,M為內(nèi)存利用率,B為帶寬,D為已執(zhí)行的任務(wù)數(shù),α,ε和βk(k=1,2,3,4)為回歸系數(shù)。
當(dāng)使用多元線性回歸模型擬合延遲時(shí)間時(shí),需要智能網(wǎng)關(guān)延遲時(shí)間與CPU利用率、內(nèi)存利用率、帶寬和已執(zhí)行任務(wù)數(shù)的數(shù)據(jù)。CPU利用率、內(nèi)存利用率、帶寬和已執(zhí)行任務(wù)數(shù)可以直接獲取,而延遲時(shí)間獲取如下:
T=Tg+Tp+2max(Tdj)+∑jTrj,
(2)
式中,Tg為智慧控制平臺(tái)傳輸任務(wù)到智能網(wǎng)關(guān)的時(shí)間,Tp為智能網(wǎng)關(guān)將接收的任務(wù)下發(fā)到外接設(shè)備的時(shí)間,j為連接到智能網(wǎng)關(guān)的第j個(gè)外接設(shè)備,Td為外接設(shè)備執(zhí)行的時(shí)間,Tr為外接設(shè)備回傳給智能網(wǎng)關(guān)的時(shí)間。得到智能網(wǎng)關(guān)的估計(jì)延遲時(shí)間后,其工作狀態(tài)判斷規(guī)則如下:
(3)
式中,Tnormal為最大正常延遲,Terror為最大故障延遲,2個(gè)閾值的取值可根據(jù)實(shí)際系統(tǒng)的需求設(shè)立。
工作狀態(tài)模型包括正常工作、繁忙工作和故障工作三個(gè)狀態(tài)。正常和繁忙工作狀態(tài)的判斷主要基于延遲時(shí)間。如果智能網(wǎng)關(guān)的延遲時(shí)間低于Tnormal,則處于正常工作狀態(tài),否則可能處于繁忙狀態(tài)。而故障工作狀態(tài)有2種判斷的方法:第一是延遲時(shí)間超過(guò)了Terror;第二是智能網(wǎng)關(guān)失去了與其他智能網(wǎng)關(guān)或智慧控制平臺(tái)的通信。
在正常工作狀態(tài)下,智能網(wǎng)關(guān)需要將接收的任務(wù)分解為不同的子任務(wù),并將其下發(fā)到對(duì)應(yīng)的外接設(shè)備,待外接設(shè)備執(zhí)行完成后,智能網(wǎng)關(guān)收集數(shù)據(jù)進(jìn)行處理并將結(jié)果上傳到智慧控制平臺(tái)。在這種狀態(tài)下,每個(gè)智能網(wǎng)關(guān)獨(dú)立執(zhí)行接收的任務(wù)。當(dāng)智能網(wǎng)關(guān)執(zhí)行過(guò)多任務(wù)時(shí),延遲時(shí)間將超過(guò)可接受的范圍,這意味著它處于繁忙工作狀態(tài)或錯(cuò)誤工作狀態(tài),如果長(zhǎng)時(shí)間處于此狀態(tài),造成任務(wù)執(zhí)行結(jié)果傳輸延遲,進(jìn)而影響系統(tǒng)穩(wěn)定。為了避免這種情況,本文提出的任務(wù)調(diào)度優(yōu)化方法通過(guò)在多個(gè)智能網(wǎng)關(guān)之間交換任務(wù)使各網(wǎng)關(guān)處于正常工作狀態(tài)以保障系統(tǒng)穩(wěn)定、效率。
傳統(tǒng)智慧路燈層次化網(wǎng)絡(luò)中,智慧控制平臺(tái)通過(guò)應(yīng)用程序下發(fā)任務(wù)給對(duì)應(yīng)智能網(wǎng)關(guān),智能網(wǎng)關(guān)再進(jìn)行執(zhí)行?;诠ぷ鳡顟B(tài)模型,單個(gè)智能網(wǎng)關(guān)執(zhí)行任務(wù)負(fù)載過(guò)大時(shí),將處于繁忙或錯(cuò)誤工作狀態(tài)。因此,在本文改進(jìn)后的層次化智慧路燈網(wǎng)絡(luò)中智慧控制平臺(tái)存儲(chǔ)每個(gè)智能網(wǎng)關(guān)的任務(wù)和數(shù)據(jù)備份作為數(shù)據(jù)鏡像,當(dāng)智能網(wǎng)關(guān)上線時(shí)向智慧控制平臺(tái)索要任務(wù)與數(shù)據(jù)備份。網(wǎng)絡(luò)中的數(shù)據(jù)鏡像流向如圖3所示,智能網(wǎng)關(guān)完成任務(wù)會(huì)更新數(shù)據(jù)鏡像,當(dāng)智慧控制平臺(tái)應(yīng)用程序產(chǎn)生新的任務(wù)時(shí),智能網(wǎng)關(guān)會(huì)接收新的數(shù)據(jù)鏡像并執(zhí)行任務(wù)。
圖3 層次化智慧路燈網(wǎng)絡(luò)數(shù)據(jù)鏡像流向Fig.3 Data shadow flow in hierarchical smart street light network
智能網(wǎng)關(guān)執(zhí)行任務(wù)有3個(gè)重要規(guī)則:更新、獲取、恢復(fù)。
(1) 更新(智能網(wǎng)關(guān)執(zhí)行任務(wù)時(shí))
如果智能網(wǎng)關(guān)發(fā)現(xiàn)其數(shù)據(jù)鏡像不存在,則會(huì)創(chuàng)建一個(gè)新的數(shù)據(jù)鏡像;否則,則用智能網(wǎng)關(guān)的任務(wù)執(zhí)行結(jié)果數(shù)據(jù)更新數(shù)據(jù)鏡像的數(shù)據(jù)。在存儲(chǔ)數(shù)據(jù)時(shí)使用時(shí)間戳標(biāo)記最新的更新時(shí)間。如果應(yīng)用程序生成新的任務(wù)時(shí),數(shù)據(jù)鏡像中的任務(wù)將更新。更新規(guī)則流程如圖4所示。
圖4 更新規(guī)則流程Fig.4 Process of update rule
(2) 獲取(當(dāng)智能網(wǎng)關(guān)收到任務(wù)時(shí))
智能網(wǎng)關(guān)向智慧控制平臺(tái)訂閱最新的數(shù)據(jù)鏡像。智慧控制平臺(tái)不需要知道哪個(gè)智能網(wǎng)關(guān)訂閱了數(shù)據(jù)鏡像,只需根據(jù)其基本網(wǎng)關(guān)設(shè)備編號(hào)將數(shù)據(jù)鏡像發(fā)送到智能網(wǎng)關(guān)。獲取規(guī)則流程如圖5所示。
圖5 獲取規(guī)則流程Fig.5 Process of get rule
(3) 恢復(fù)(智能網(wǎng)關(guān)重啟時(shí))
故障智能網(wǎng)關(guān)重啟恢復(fù)時(shí),會(huì)訂閱存儲(chǔ)在智慧控制平臺(tái)中的最新數(shù)據(jù)鏡像。檢查數(shù)據(jù)鏡像更新的時(shí)間戳和本地?cái)?shù)據(jù)鏡像的時(shí)間戳。如果本地較新,則智慧控制平臺(tái)的數(shù)據(jù)鏡像將被更新,否則更新本地的數(shù)據(jù)鏡像?;謴?fù)規(guī)則流程如圖6所示。
圖6 恢復(fù)規(guī)則流程Fig.6 Process of recovery rule
這3個(gè)規(guī)則的目的是確保每個(gè)智能網(wǎng)關(guān)的數(shù)據(jù)完整性,以便在智能網(wǎng)關(guān)不處于正常工作狀態(tài)時(shí),其他智能網(wǎng)關(guān)可以使用其設(shè)備編號(hào)向智慧控制平臺(tái)訂閱其數(shù)據(jù)鏡像,進(jìn)而繼續(xù)執(zhí)行其剩余的任務(wù)。
2.1節(jié)中描述本文層次化智慧路燈網(wǎng)絡(luò)中智能網(wǎng)關(guān)的任務(wù)執(zhí)行規(guī)則,這些規(guī)則使得多個(gè)智能網(wǎng)關(guān)之間任務(wù)調(diào)度成為可能。任務(wù)調(diào)度優(yōu)化方法基于工作狀態(tài)模型,其本質(zhì)是確保智能網(wǎng)關(guān)處于正常工作狀態(tài),智能網(wǎng)關(guān)的規(guī)則狀態(tài)轉(zhuǎn)換條件如圖7所示。
圖7 智能網(wǎng)關(guān)的工作狀態(tài)轉(zhuǎn)換條件Fig.7 Working conditions of smart gateway
本文所提出的任務(wù)調(diào)度優(yōu)化方法包括兩部分:一是應(yīng)對(duì)智能網(wǎng)關(guān)的繁忙工作狀態(tài);二是應(yīng)對(duì)智能網(wǎng)關(guān)的錯(cuò)誤工作狀態(tài)。
2.2.1 繁忙工作狀態(tài)任務(wù)調(diào)度方法
在執(zhí)行任務(wù)時(shí),智能網(wǎng)關(guān)估計(jì)自己的延遲時(shí)間并與相鄰的智能網(wǎng)關(guān)共享。當(dāng)延遲時(shí)間超過(guò)最大正常工作延遲時(shí)間(Tnormal)時(shí),表明智能網(wǎng)關(guān)任務(wù)負(fù)載過(guò)大,智慧路燈系統(tǒng)效率降低。此時(shí),單個(gè)智能網(wǎng)關(guān)無(wú)法處理來(lái)自智慧控制平臺(tái)的任務(wù)。因此,有必要協(xié)調(diào)多個(gè)智能網(wǎng)關(guān)進(jìn)行任務(wù)調(diào)度優(yōu)化,其流程如圖8所示。
圖8 多個(gè)智能網(wǎng)關(guān)任務(wù)調(diào)度優(yōu)化流程Fig.8 Multiple smart gateways task scheduling optimization process
當(dāng)智能網(wǎng)關(guān)G1處于繁忙工作狀態(tài)時(shí),靠近G1且處于正常工作狀態(tài)的智能網(wǎng)關(guān)G2將打開(kāi)一個(gè)線程作為G1從向智慧控制平臺(tái)訂閱G1的數(shù)據(jù)鏡像進(jìn)而調(diào)度任務(wù),具體流程為:
① 智能網(wǎng)關(guān)G1執(zhí)行任務(wù)時(shí),估計(jì)其延遲并發(fā)送到其他智能網(wǎng)關(guān)。
② 由于執(zhí)行任務(wù)負(fù)載過(guò)大,G1處于繁忙工作狀態(tài)。
③ 處于正常工作狀態(tài)的相鄰智能網(wǎng)關(guān)G2根據(jù)G1的延遲時(shí)間獲知G1處于繁忙工作狀態(tài)。
④ G2使用其剩余的計(jì)算資源生成一個(gè)名為G1的線程,并接收智慧控制平臺(tái)下發(fā)給G1的任務(wù)。
⑤ 重新計(jì)算G1和G2的延遲并更新其工作狀態(tài)。
2.2.2 故障工作狀態(tài)任務(wù)調(diào)度方法
在智慧路燈系統(tǒng)的實(shí)際應(yīng)用中,會(huì)出現(xiàn)意外情況,例如網(wǎng)絡(luò)故障和設(shè)備故障。為了保證層次化智慧路燈網(wǎng)絡(luò)的穩(wěn)定與效率,當(dāng)智能網(wǎng)關(guān)處于故障工作狀態(tài)時(shí),智慧控制平臺(tái)不直接干預(yù),采用自愈任務(wù)調(diào)度方法,任務(wù)調(diào)度流程如下:
① 智能網(wǎng)關(guān)G1處于故障工作狀態(tài),由于故障而無(wú)法與其他智能網(wǎng)關(guān)通信。
② 其他智能網(wǎng)關(guān)相互通信,發(fā)送G1處于故障工作狀態(tài)的信息。
③ 處于正常工作狀態(tài)的相鄰智能網(wǎng)關(guān)G2向智慧控制平臺(tái)訂閱G1的數(shù)據(jù)鏡像。
④ G2使用其剩余計(jì)算資源生成一個(gè)名為G1的線程并連接G1的外接設(shè)備。
⑤ 新G1從如同正常的智能網(wǎng)關(guān)向智慧控制平臺(tái)訂閱G1的數(shù)據(jù)鏡像(包含任務(wù)),接收到應(yīng)用程序發(fā)送的任務(wù)后進(jìn)行處理并控制相應(yīng)外接設(shè)備執(zhí)行。
⑥ 重新計(jì)算新G1和G2的延遲時(shí)間并更新其工作狀態(tài)。
⑦ 故障G1恢復(fù)后,新G1不再訂閱G1的數(shù)據(jù)鏡像。上傳其任務(wù)執(zhí)行結(jié)果后,G2關(guān)閉新G1線程,并將外接設(shè)備重新連接到G1。
通過(guò)以上流程,可以解決層次化智慧路燈網(wǎng)絡(luò)中智能網(wǎng)關(guān)發(fā)生故障時(shí),智能網(wǎng)關(guān)之間的任務(wù)調(diào)度,而無(wú)需智慧控制平臺(tái)開(kāi)展調(diào)度。
結(jié)合繁忙工作狀態(tài)和故障工作狀態(tài)的任務(wù)調(diào)度方法,可以在邊緣計(jì)算中有效處理SLPS的繁忙和故障情況,從而保證了系統(tǒng)的穩(wěn)定和效率。
針對(duì)本文提出的層次化智慧路燈網(wǎng)絡(luò)中智能網(wǎng)關(guān)任務(wù)調(diào)度優(yōu)化方法,設(shè)計(jì)了2個(gè)實(shí)驗(yàn)分別驗(yàn)證智能網(wǎng)關(guān)工作狀態(tài)模型準(zhǔn)確性和任務(wù)調(diào)度優(yōu)化方法的可行性。
為驗(yàn)證本文所提方法在實(shí)際場(chǎng)景中的表現(xiàn),部署了一個(gè)由智能網(wǎng)關(guān)、照明設(shè)備、傳感器設(shè)備和智慧控制平臺(tái)組成的智慧路燈系統(tǒng)。根據(jù)式(1)和式(3),智能網(wǎng)關(guān)的工作狀態(tài)需要CPU利用率、內(nèi)存利用率、帶寬和執(zhí)行的任務(wù)數(shù)。為此,通過(guò)層次設(shè)計(jì)技術(shù)研制了智能網(wǎng)關(guān)LC900[18-20],可以對(duì)這些參數(shù)進(jìn)行采集和分析,能夠?qū)崿F(xiàn)前文任務(wù)調(diào)度優(yōu)化的方法。
智能網(wǎng)關(guān)LC900共有4層,如圖9所示。設(shè)備接入層定義了LC900與服務(wù)器、傳感器和照明設(shè)備之間的有線或無(wú)線通信模式;通信接口層定義了智能網(wǎng)關(guān)與智慧控制平臺(tái)通信協(xié)議和外接設(shè)備通信接口。這些接口的通信協(xié)議在協(xié)議轉(zhuǎn)換層進(jìn)行解析,任務(wù)處理層用于估計(jì)其智能網(wǎng)關(guān)自身的工作狀態(tài)和實(shí)施任務(wù)調(diào)度。
圖9 LC900硬件層次設(shè)計(jì)Fig.9 Hardware level design of LC900
LC900位于圖10所示的智慧路燈桿中,可以從智慧控制平臺(tái)訂閱到任務(wù)并將其下發(fā)給外接設(shè)備執(zhí)行,若干智能燈桿連接智慧控制平臺(tái)形成智慧路燈網(wǎng)絡(luò)。在上海市閔行區(qū)新莊部署了基于本文提出的任務(wù)調(diào)度優(yōu)化方法的智慧路燈系統(tǒng),智慧路燈桿的地理位置布局如圖11所示。
圖10 智慧路燈桿硬件組成Fig.10 Hardware composition of smart street light pole
圖11 智慧路燈桿地理位置布局Fig.11 Geographical implement of smart street light poles
3.2.1 工作狀態(tài)模型驗(yàn)證
為驗(yàn)證工作狀態(tài)模型的準(zhǔn)確性,采集智能網(wǎng)關(guān)LC900的性能參數(shù),用于估計(jì)時(shí)延和判斷工作狀態(tài),同時(shí)利用智慧控制平臺(tái)獲取實(shí)際的延遲時(shí)間,每個(gè)樣本包含一分鐘內(nèi)參數(shù)的平均值,每個(gè)智能網(wǎng)關(guān)記錄40個(gè)樣本。同時(shí)為消除數(shù)量級(jí)及其數(shù)值的影響,對(duì)CPU使用率、內(nèi)存使用率、網(wǎng)絡(luò)帶寬、任務(wù)數(shù)這些性能參數(shù)進(jìn)行標(biāo)準(zhǔn)化處理,處理過(guò)程如式(4)所示。
(4)
記錄數(shù)據(jù)實(shí)例如表1所示。
表1 智能網(wǎng)關(guān)主要性能參數(shù)
Tab.1 Main performance parameters of smart gateway
樣本序號(hào)CPU0使用率CU1使用率CU2使用率CU3使用率內(nèi)存使用率網(wǎng)絡(luò)帶寬任務(wù)數(shù)延遲時(shí)間/ms1-1.391 2-1.473 13.621 5990.117 6-1.767 80.364 8-0.851 72.114 42-0.632 9-0.405 20.453 6900.513 2-1.676 91.081 8-1.334 52.471 130.209 60.900 1-1.089 650-0.846 6-1.500 60.735 6-2.246 42.992 6?????????400.209 6-1.473 1-0.358 600-0.599 41.658 3-1.316 30.382 03.339 9
圖12為利用本文工作狀態(tài)模型估計(jì)的智能網(wǎng)關(guān)的延遲時(shí)間與實(shí)際延遲時(shí)間的對(duì)比,可得估計(jì)值略大于實(shí)際值,估計(jì)的延遲時(shí)間能夠反映智能網(wǎng)關(guān)實(shí)際延遲時(shí)間的趨勢(shì)。
圖12 實(shí)際延遲時(shí)間與估計(jì)延遲時(shí)間對(duì)比Fig.12 Comparison of actual delay time and estimated delay time
同時(shí),為突出本文估計(jì)智能網(wǎng)關(guān)設(shè)備延遲時(shí)間的優(yōu)勢(shì),與文獻(xiàn)[14]利用功耗來(lái)估計(jì)延遲時(shí)間的方法進(jìn)行比對(duì),比對(duì)結(jié)果如表2所示。
表2 2種方法估計(jì)延遲時(shí)間結(jié)果比對(duì)表
Tab.2 Comparison of delay time results estimated by two methods
評(píng)價(jià)指標(biāo)本文方法文獻(xiàn)[14]平均絕對(duì)誤差0.6780.767平均平方差0.1380.171
平均絕對(duì)誤差與平均平方差可以表征估計(jì)延遲時(shí)間與實(shí)際延遲時(shí)間之間的偏差,數(shù)值越小表明估計(jì)的結(jié)果越符合實(shí)際,實(shí)驗(yàn)結(jié)果表明本文方法對(duì)智能網(wǎng)關(guān)延遲時(shí)間的估計(jì)更為準(zhǔn)確。因此,工作狀態(tài)模型在表征智能網(wǎng)關(guān)設(shè)備的工作狀態(tài)中具有性能優(yōu)勢(shì)。
圖13 5個(gè)智能網(wǎng)關(guān)延遲時(shí)間記錄Fig.13 5 smart gateways delay time records
3.2.2 任務(wù)調(diào)度方法驗(yàn)證
為了便于數(shù)據(jù)的采集和分析,重點(diǎn)關(guān)注圖11右下紅色圓中的5個(gè)智能網(wǎng)關(guān)G1,G2,G3,G4,G5。圖13為5個(gè)智能網(wǎng)關(guān)工作一段時(shí)間的延遲時(shí)間變化,其中正常工作延遲Tnormal設(shè)置為4.5 ms。
圖13表明,當(dāng)智能網(wǎng)關(guān)的延遲超過(guò)Tnormal時(shí),處于繁忙工作狀態(tài),智能網(wǎng)關(guān)之間按照2.2.1小節(jié)所述的方法進(jìn)行任務(wù)調(diào)度優(yōu)化。例如,在采樣點(diǎn)7,智能網(wǎng)關(guān)G4處于忙碌工作狀態(tài)。因此,與G4鄰近的智能網(wǎng)關(guān)G1,G2,G3開(kāi)啟G4線程,承擔(dān)G4的部分任務(wù)。在采樣時(shí)間8和9調(diào)度優(yōu)化后,G4的延遲時(shí)間低于Tnormal,并轉(zhuǎn)為正常工作狀態(tài)。圖13的過(guò)程與繁忙工作狀態(tài)任務(wù)調(diào)度方法一致,因此,繁忙工作狀態(tài)任務(wù)調(diào)度方法將有助于智能網(wǎng)關(guān)保持正常工作狀態(tài)。
當(dāng)智能網(wǎng)關(guān)處于故障工作狀態(tài)時(shí),相鄰智能網(wǎng)關(guān)也能及時(shí)承接其任務(wù),圖14為智能網(wǎng)關(guān)出現(xiàn)故障后任務(wù)調(diào)度時(shí)雨圖。
圖14 智能網(wǎng)關(guān)出現(xiàn)故障后任務(wù)調(diào)度時(shí)雨圖Fig.14 Working state change of smart gateways when a smart gateway fails
具體流程為:采樣點(diǎn)1時(shí),智能網(wǎng)關(guān)G3的顏色變?yōu)楹谏硎綠3處于故障工作狀態(tài)。因此,采用故障工作狀態(tài)任務(wù)調(diào)度方法。在采樣點(diǎn)2,相鄰處于正常工作狀態(tài)智能網(wǎng)關(guān)G4生成G3線程,并向智慧控制平臺(tái)訂閱G3的數(shù)據(jù)鏡像,進(jìn)而承擔(dān)G3的任務(wù)。然而,G4承擔(dān)了太多的任務(wù),工作狀態(tài)顏色變?yōu)榧t色,表明其處于繁忙的工作狀態(tài)。因此在采樣時(shí)間3和采樣時(shí)間4,智能網(wǎng)關(guān)G1和G5根據(jù)繁忙工作狀態(tài)任務(wù)調(diào)度方法承擔(dān)G4的部分任務(wù)。
整個(gè)自愈任務(wù)調(diào)度過(guò)程結(jié)束后,故障的智能網(wǎng)關(guān)G3不再執(zhí)行任務(wù),而智慧控制平臺(tái)給G3的任務(wù)仍然能夠通過(guò)其他智能網(wǎng)關(guān)執(zhí)行。
通過(guò)實(shí)際實(shí)驗(yàn),驗(yàn)證了本文所提出的層次化智慧路燈網(wǎng)絡(luò)中智能網(wǎng)關(guān)任務(wù)調(diào)度優(yōu)化方法有助于保障智慧路燈系統(tǒng)的穩(wěn)定和效率。
本文分析了智慧路燈系統(tǒng)的層次化網(wǎng)絡(luò)結(jié)構(gòu),對(duì)智能網(wǎng)關(guān)的工作狀態(tài)進(jìn)行建模,并基于工作狀態(tài)模型提出了改進(jìn)任務(wù)調(diào)度優(yōu)化方法。該方法無(wú)需智慧控制平臺(tái)對(duì)數(shù)量日益增大的智能網(wǎng)關(guān)實(shí)施任務(wù)調(diào)度,只需要存儲(chǔ)與發(fā)送數(shù)據(jù)鏡像,智能網(wǎng)關(guān)之間能夠主動(dòng)利用工作狀態(tài)模型進(jìn)行任務(wù)調(diào)度。
此外,本文提出的任務(wù)調(diào)度優(yōu)化方法在實(shí)際部署的智慧路燈系統(tǒng)中進(jìn)行了驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,智能網(wǎng)關(guān)的延遲時(shí)間可以控制在4.5 ms以下,而且當(dāng)智能網(wǎng)關(guān)發(fā)生故障時(shí),相鄰智能網(wǎng)關(guān)能夠承接其任務(wù),而無(wú)需智慧控制平臺(tái)控制。因此,本文提出的任務(wù)調(diào)度優(yōu)化方法適用于需要效率與穩(wěn)定的智慧路燈系統(tǒng)中。