蘇新,薛淏陽(yáng),周一青,朱金秀
(1.河海大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇 常州 231022;2.中國(guó)科學(xué)院計(jì)算技術(shù)研究所,北京 100190)
海洋觀監(jiān)測(cè)傳感網(wǎng)作為海洋信息網(wǎng)絡(luò)的重要組成部分可提供多種觀監(jiān)測(cè)應(yīng)用,是匯聚海洋空間、環(huán)境、資源等各類數(shù)據(jù)的重要平臺(tái)。全天候、全自動(dòng)的海洋觀測(cè)和目標(biāo)態(tài)勢(shì)感知、海洋信息傳輸,以及海上綜合業(yè)務(wù)服務(wù)的開(kāi)展,提出了實(shí)時(shí)定位、緊急救援以及面向某些領(lǐng)域的低時(shí)延信息服務(wù)需求,這對(duì)海洋觀監(jiān)測(cè)傳感網(wǎng)支持低時(shí)延高可靠的觀監(jiān)測(cè)應(yīng)用提出了極高的要求。進(jìn)入5G/6G時(shí)代[1-2],海洋觀監(jiān)測(cè)傳感網(wǎng)絡(luò)終端設(shè)備(OUE,oceanic user equipment)對(duì)于低時(shí)延高可靠的應(yīng)用需求隨之增加,需要全新的數(shù)據(jù)處理方式以滿足相關(guān)應(yīng)用需求。
2014 年,歐洲電信標(biāo)準(zhǔn)協(xié)會(huì)提出了移動(dòng)邊緣計(jì)算概念,并于 2016 年擴(kuò)展為多接入邊緣計(jì)算(MAEC,multi-access edge computing)[3]。其主要思想是將云計(jì)算的部分業(yè)務(wù)下沉至網(wǎng)絡(luò)邊緣,在用戶邊緣分布式地部署服務(wù)與存儲(chǔ),以快速地為用戶提供服務(wù),極大減少回傳網(wǎng)絡(luò)帶寬[4]。在網(wǎng)絡(luò)邊緣就近處理數(shù)據(jù)的邊緣計(jì)算方式可實(shí)現(xiàn)終端用戶對(duì)低時(shí)延、高可靠的要求[5]。因此,將邊緣計(jì)算關(guān)鍵技術(shù)引入海洋觀監(jiān)測(cè)傳感網(wǎng)以滿足低時(shí)延、高可靠的海事應(yīng)用需求具有極高的研究意義和應(yīng)用價(jià)值。
計(jì)算卸載技術(shù)作為邊緣計(jì)算的關(guān)鍵技術(shù),對(duì)降低用戶執(zhí)行時(shí)延,提升用戶服務(wù)質(zhì)量起著重要作用[6]?,F(xiàn)階段邊緣計(jì)算卸載技術(shù)研究主要圍繞陸地組網(wǎng)與車聯(lián)網(wǎng),普遍根據(jù)其組網(wǎng)特征進(jìn)行研究[7-8]。由于海洋環(huán)境復(fù)雜多變,不能簡(jiǎn)單地將現(xiàn)有陸地組網(wǎng)中的MAEC 卸載技術(shù)應(yīng)用于海洋觀監(jiān)測(cè)傳感網(wǎng)。因此,將MAEC 卸載機(jī)制引入海洋觀監(jiān)測(cè)傳感網(wǎng)的研究會(huì)面臨以下挑戰(zhàn)。
1) 海洋場(chǎng)景節(jié)點(diǎn)密度變化明顯,邊緣計(jì)算資源分布不均,調(diào)度困難,網(wǎng)絡(luò)節(jié)點(diǎn)計(jì)算與通信資源存在差異。例如,各個(gè)節(jié)點(diǎn)對(duì)時(shí)延和能耗的敏感度不同,網(wǎng)絡(luò)局部產(chǎn)生的大量數(shù)據(jù)會(huì)導(dǎo)致網(wǎng)絡(luò)超負(fù)荷處理,系統(tǒng)面臨癱瘓危險(xiǎn)。
2) 海洋觀監(jiān)測(cè)傳感網(wǎng)終端設(shè)備移動(dòng)速度不同,網(wǎng)絡(luò)拓?fù)渥兓欤?jié)點(diǎn)間通信范圍存在差異且有效通信時(shí)間不同,容易導(dǎo)致傳輸鏈路中斷。
通過(guò)參考MAEC 卸載技術(shù)在陸地組網(wǎng)及車聯(lián)網(wǎng)中的研究[7],結(jié)合海洋觀監(jiān)測(cè)傳感網(wǎng)中存在的挑戰(zhàn),本文以滿足低時(shí)延、高可靠的海事應(yīng)用需求為目標(biāo),研究了海洋觀監(jiān)測(cè)傳感網(wǎng)中的MAEC 卸載技術(shù),主要貢獻(xiàn)如下。
1) 針對(duì)節(jié)點(diǎn)密度差異化下的卸載問(wèn)題,提出了以下2 種卸載模型:在網(wǎng)絡(luò)節(jié)點(diǎn)高密度的近岸區(qū)域,計(jì)算資源豐富,多用戶計(jì)算卸載可用多個(gè)獨(dú)立的單用戶多邊緣節(jié)點(diǎn)模型等效;在網(wǎng)絡(luò)節(jié)點(diǎn)低密度的遠(yuǎn)岸區(qū)域,計(jì)算資源匱乏,多用戶計(jì)算卸載需考慮協(xié)同,提出遠(yuǎn)岸雙跳多用戶模型。同時(shí),闡述了一種基于海洋網(wǎng)絡(luò)連通概率的邊緣節(jié)點(diǎn)選取方法,使終端用戶可選取該區(qū)域內(nèi)有利于其卸載傳輸?shù)淖罴压?jié)點(diǎn)。
2) 提出了節(jié)點(diǎn)間有效通信時(shí)間約束,并分別引入近岸和遠(yuǎn)岸2 種卸載模型,保證了用戶數(shù)據(jù)卸載時(shí)網(wǎng)絡(luò)的連通效率。
3)在選取邊緣計(jì)算節(jié)點(diǎn)基礎(chǔ)上,提出了2 種計(jì)算卸載算法,在2 種卸載模型下實(shí)現(xiàn)了用戶卸載時(shí)的最佳決策和資源調(diào)度,解決了節(jié)點(diǎn)間資源差異導(dǎo)致的網(wǎng)絡(luò)成本增加的問(wèn)題。
計(jì)算卸載相關(guān)研究工作按照系統(tǒng)模型可分為單用戶設(shè)備(SUE,single user equipment)計(jì)算卸載和多用戶設(shè)備(MUE,multi-user equipment)計(jì)算卸載,本文將分別對(duì)這2 種工作進(jìn)行分析與討論。
目前,針對(duì)SUE 計(jì)算卸載的研究主要分為單用戶與單個(gè)MAEC 服務(wù)器(簡(jiǎn)稱為SUE-SMAEC)、單用戶與多個(gè)MAEC 服務(wù)器(簡(jiǎn)稱為SUE-MMAEC)。
文獻(xiàn)[9]針對(duì)SUE-SMAEC,運(yùn)用一維查詢算法根據(jù)UE和MAEC服務(wù)器的計(jì)算資源及其之間的信道特征找到最優(yōu)的卸載策略,實(shí)現(xiàn)最小化執(zhí)行時(shí)延的目標(biāo)。然而,文獻(xiàn)[9]未考慮能耗約束會(huì)導(dǎo)致UE 能耗過(guò)高。為同時(shí)滿足UE 對(duì)時(shí)延與能耗的要求,文獻(xiàn)[10]提出了在滿足應(yīng)用執(zhí)行時(shí)延的同時(shí)最小化用戶能耗的卸載策略。優(yōu)化方法引入了在線學(xué)習(xí)和離線預(yù)先計(jì)算2 種卸載方案。與全部卸載相比[9-10],部分卸載更靈活,允許用戶將任務(wù)在本地和MAEC 服務(wù)器分別執(zhí)行。文獻(xiàn)[11]假設(shè)UE 應(yīng)用由多個(gè)子任務(wù)組成,各任務(wù)之間相互依賴,并提出了基于二元粒子群的卸載算法,使部分卸載相對(duì)于全部卸載具有顯著的節(jié)能效果。
針對(duì)車聯(lián)網(wǎng)下的計(jì)算卸載,文獻(xiàn)[4]研究了在SUE-MMAEC 中任務(wù)分配和卸載決策的問(wèn)題。文獻(xiàn)[4]雖然考慮了節(jié)點(diǎn)移動(dòng)性,但并未對(duì)其可能產(chǎn)生卸載中斷問(wèn)題進(jìn)行分析解決。針對(duì)車聯(lián)網(wǎng)中車輛快速移動(dòng)導(dǎo)致的卸載中斷問(wèn)題,文獻(xiàn)[12]提出了一種避免傳輸中斷的自適應(yīng)卸載策略,考慮車速、傳輸速率等因素對(duì)卸載的影響,并根據(jù)這些因素動(dòng)態(tài)調(diào)整卸載策略,避免卸載過(guò)程中的傳輸中斷。
目前,SUE 計(jì)算卸載的研究主要圍繞陸地組網(wǎng)和車聯(lián)網(wǎng) 2 種場(chǎng)景,且多數(shù)卸載方案僅考慮SUE-SMAEC 的全部卸載和部分卸載,較少考慮多MAEC 服務(wù)器協(xié)同處理的卸載方式。
通常,由于MAEC 系統(tǒng)中通信和計(jì)算資源有限,難以滿足過(guò)多終端用戶的計(jì)算卸載需求,且分布式計(jì)算場(chǎng)景之間難以達(dá)到MAEC 資源的有效利用[13]。因此,學(xué)者們開(kāi)始關(guān)注MUE 場(chǎng)景下的卸載研究,以實(shí)現(xiàn)資源的合理分配。
文獻(xiàn)[14]將MUE 系統(tǒng)中資源分配表述為一個(gè)非線性問(wèn)題,提出一種基于貪婪策略的資源分配方案,有效地降低了終端能耗。不同于通過(guò)貪婪策略進(jìn)行資源分配,文獻(xiàn)[15]提出了閾值結(jié)構(gòu)的資源分配策略。在時(shí)分多址MUE 系統(tǒng)中,通過(guò)本地計(jì)算能力和信道增益的卸載優(yōu)先級(jí)函數(shù)確定用戶優(yōu)先級(jí),基站根據(jù)用戶優(yōu)先級(jí)與閾值間的關(guān)系,決定用戶卸載的數(shù)據(jù)量。文獻(xiàn)[16]綜合考慮卸載決策、信道狀態(tài)、計(jì)算資源等影響因素,將超密集網(wǎng)絡(luò)下的計(jì)算卸載模型表述為一個(gè)混合整數(shù)非線性規(guī)劃問(wèn)題,設(shè)計(jì)了一種結(jié)合遺傳和粒子群的優(yōu)化算法,以此實(shí)現(xiàn)最優(yōu)資源分配。
以上方案均從降低系統(tǒng)時(shí)延或能耗角度出發(fā),并未從用戶對(duì)能耗和時(shí)延的敏感程度差異角度對(duì)系統(tǒng)時(shí)延和能耗進(jìn)行綜合優(yōu)化。文獻(xiàn)[17]在MUE-SMAEC 系統(tǒng)中,首先針對(duì)用戶對(duì)能耗和時(shí)延差異度,為其設(shè)置相應(yīng)能耗時(shí)延優(yōu)化比;再將卸載決策和資源分配的優(yōu)化表述為非凸優(yōu)化問(wèn)題,通過(guò)鯨魚(yú)遺傳算法解決不同用戶需求;最終實(shí)現(xiàn)資源分配。但文獻(xiàn)[17]中算法的迭代速度相對(duì)較慢,增加了系統(tǒng)成本。針對(duì)計(jì)算資源分布不均的問(wèn)題,文獻(xiàn)[18]在MUE-MMAEC 系統(tǒng)中通過(guò)主輔MAEC 服務(wù)器協(xié)同處理的方式,運(yùn)用模擬退火算法進(jìn)行卸載決策和資源分配的聯(lián)合優(yōu)化,解決了資源分布不均導(dǎo)致的資源調(diào)度困難問(wèn)題。
基于以上論述,現(xiàn)有MUE 計(jì)算卸載研究主要以減少終端能耗和任務(wù)執(zhí)行時(shí)延為優(yōu)化目標(biāo),對(duì)綜合考慮優(yōu)化任務(wù)時(shí)延和終端能耗的研究較少,且均未考慮MUE 系統(tǒng)中計(jì)算卸載的可靠性。算法迭代速度都相對(duì)較慢,難以保證較小的計(jì)算卸載成本,無(wú)法滿足海洋觀監(jiān)測(cè)傳感網(wǎng)的各類海事應(yīng)用需求。
圖1 展示了本文提出的海洋網(wǎng)絡(luò)系統(tǒng)模型,通常,距離海岸37.04 km(即20 海里)為近岸海域,海域界限向外一側(cè)的為遠(yuǎn)岸海域[19]。海洋網(wǎng)絡(luò)中,不同海域節(jié)點(diǎn)密度差異明顯,近岸海域由于海事活動(dòng)較頻繁,通常其網(wǎng)絡(luò)節(jié)點(diǎn)密度高于遠(yuǎn)岸海域。
在海洋網(wǎng)絡(luò)中,網(wǎng)絡(luò)節(jié)點(diǎn)一般包含大型船舶、浮標(biāo)、小型船只、水下機(jī)器人以及基站等。小型船只和浮標(biāo)由于自身資源有限,一般難以獨(dú)自完成數(shù)據(jù)處理,需要傳輸至其他節(jié)點(diǎn)進(jìn)行處理。大型船舶與基站等相比浮標(biāo)等節(jié)點(diǎn)計(jì)算能力較強(qiáng),可充當(dāng)邊緣計(jì)算節(jié)點(diǎn)來(lái)處理終端用戶卸載的數(shù)據(jù)。通常,基站計(jì)算能力強(qiáng)于大型船舶,在近岸海域,可通過(guò)多個(gè)海岸基站與大型船舶協(xié)同實(shí)現(xiàn)用戶的計(jì)算卸載;在遠(yuǎn)岸海域,由于海域范圍廣,大規(guī)模建設(shè)成本投入大等因素,本文考慮在遠(yuǎn)岸海事活動(dòng)頻繁的海域建設(shè)1~2 個(gè)大型海上基站保證海事應(yīng)用需求,盡可能地利用現(xiàn)有設(shè)施滿足海事應(yīng)用需求。
結(jié)合相關(guān)工作討論可知,單用戶模型一般用于解決資源豐富情況下如何實(shí)現(xiàn)高效卸載決策與資源調(diào)度,以滿足OUE 應(yīng)用需求的問(wèn)題。近岸海域計(jì)算資源豐富,某一區(qū)域內(nèi)可用計(jì)算資源較多,需要考慮OUE 如何充分利用資源,以滿足自身需求。因此,結(jié)合單用戶模型特性,近岸海域本文提出單用戶多邊緣節(jié)點(diǎn)模型。如圖1 所示,該模型主要由集中控制單元、邊緣計(jì)算節(jié)點(diǎn)(包含海岸基站、大型船舶等)以及OUE(包含浮標(biāo)、小型船只等)組成。OUE 可以通過(guò)多個(gè)邊緣計(jì)算節(jié)點(diǎn)協(xié)同處理計(jì)算任務(wù),調(diào)度近岸豐富的計(jì)算資源以滿足自身需求。
圖1 海洋網(wǎng)絡(luò)系統(tǒng)模型
多用戶模型一般用于解決資源匱乏時(shí)如何實(shí)現(xiàn)資源的合理分配利用,以滿足多個(gè)用戶的卸載需求。遠(yuǎn)岸海域計(jì)算資源匱乏,在同一區(qū)域內(nèi)多個(gè)用戶同時(shí)卸載可用計(jì)算資源相對(duì)較少,需要考慮有限資源的合理分配。此外,遠(yuǎn)岸海域范圍廣,節(jié)點(diǎn)離散化分布,OUE 可能遠(yuǎn)離海上基站(OBS,offshore base station),這使遠(yuǎn)離OBS 的OUE 需要多跳傳輸完成卸載。通常,多于兩跳的卸載由于時(shí)延與能耗開(kāi)銷巨大,不符合低時(shí)延高可靠的海事應(yīng)用需求。因此,如圖1 所示,本文面向遠(yuǎn)岸海域提出了雙跳多用戶模型,主要由OBS、中繼節(jié)點(diǎn)(大型船舶等組成)、K個(gè)OUE 等組成。OUE 可將計(jì)算任務(wù)卸載至OBS 和各自的中繼節(jié)點(diǎn),從而在滿足OUE 卸載的同時(shí),實(shí)現(xiàn)資源的合理分配。
由于海洋網(wǎng)絡(luò)節(jié)點(diǎn)間資源差異明顯,OUE 計(jì)算卸載能耗與時(shí)延受到邊緣節(jié)點(diǎn)資源影響。如OUE 任務(wù)卸載至通信條件較好、計(jì)算能力較強(qiáng)的節(jié)點(diǎn),卸載時(shí)延較低。需要OUE 選取合適的邊緣計(jì)算節(jié)點(diǎn)使OUE在計(jì)算卸載時(shí)擁有良好的卸載條件十分必要。本文結(jié)合前期研究基礎(chǔ)[19]提出基于海洋網(wǎng)絡(luò)連通概率的邊緣計(jì)算節(jié)點(diǎn)選取方法,該方案適用于近岸與遠(yuǎn)岸2 種場(chǎng)景,包含海洋網(wǎng)絡(luò)連通概率預(yù)測(cè)和邊緣計(jì)算節(jié)點(diǎn)確定2 個(gè)步驟,具體如下。
圖2 為相鄰船舶通信示意。基于前期對(duì)海洋網(wǎng)絡(luò)中節(jié)點(diǎn)間連通概率預(yù)測(cè)研究[19],船與船之間連通概率為
其中,ρmob表示船舶密度(艘/海里,與船舶速度有關(guān)),S(x,r)表示船A 與船B 通信范圍交集(如圖2中灰色區(qū)域所示),B表示S(x,r)內(nèi)存在船舶的數(shù)量,P(B=0,S(x,r))為兩船通信范圍內(nèi)沒(méi)有船舶的概率,x和r分別表示兩船間距離和船舶通信半徑,且x、r與S(x,r)存在如下關(guān)系
圖2 相鄰船舶通信示意
圖3 為船舶與基站通信示意。船舶與基站間連通概率受兩基站間距離L、基站覆蓋半徑R、船舶通信半徑r及船舶到基站的距離x影響。結(jié)合圖3給出了基站與船舶連通概率Ps[19]。
1) 當(dāng)0<L≤2R,x∈[ 0,L]時(shí),Ps=1。
2) 當(dāng)2R<L≤2R+r,x∈(0,R) ∪(L?R,L)時(shí),Ps=1。
3) 當(dāng)2R<L≤2R+r,x∈(R,L?R)時(shí),
4) 當(dāng) 2R+r<L≤2R+2r,x∈(0,R)∪(L?R,L)時(shí),Ps=1。
5) 當(dāng)2R+r<L≤2R+2r,x∈(R,L?R)時(shí),
6) 當(dāng)L>2R+2r時(shí),
圖3 船舶與基站通信示意
根據(jù)以上船?船、船?基站之間連通概率,可求得OUE 與該區(qū)域內(nèi)各節(jié)點(diǎn)之間的連通概率。將連通概率大于閾值Py的節(jié)點(diǎn)作為連通節(jié)點(diǎn),可保障良好的計(jì)算卸載通信條件。
基于海洋網(wǎng)絡(luò)連通概率預(yù)測(cè)模型,選擇網(wǎng)絡(luò)中計(jì)算能力和通信資源較好的海洋連通節(jié)點(diǎn)作為OUE 的邊緣計(jì)算節(jié)點(diǎn)??赏ㄟ^(guò)式(6)計(jì)算具體OUE與第k個(gè)連通節(jié)點(diǎn)之間的邊緣系數(shù)Sk∈(0,1),根據(jù)每個(gè)連通節(jié)點(diǎn)的邊緣系數(shù)與閾值Sy之間的關(guān)系確定邊緣計(jì)算節(jié)點(diǎn)。
其中,μ+η+γ+?=1。
當(dāng)Sk≥Sy時(shí),選取第k個(gè)連通節(jié)點(diǎn)作為OUE邊緣計(jì)算節(jié)點(diǎn)。式(6)中第一部分表示第k個(gè)連通節(jié)點(diǎn)的剩余能量占OUE 所有連通節(jié)點(diǎn)能量和的比重,值越大表示該節(jié)點(diǎn)相對(duì)OUE 的其他節(jié)點(diǎn)的能量?jī)?yōu)勢(shì)越大;第二部分為OUE 與第k個(gè)連通節(jié)點(diǎn)間的信噪比SNRoue?k在OUE 所有連通節(jié)點(diǎn)中的占比,值越大表示該節(jié)點(diǎn)與OUE 間的傳輸條件越好;第三部分表示第k個(gè)連通節(jié)點(diǎn)的計(jì)算能力fk在OUE 所有連通節(jié)點(diǎn)中的占比,值越大表示該節(jié)點(diǎn)相比OUE 的其他節(jié)點(diǎn)計(jì)算能力越強(qiáng);第四部分為OUE 與第k個(gè)連通節(jié)點(diǎn)之間的距離doue?k占OUE 所有連通節(jié)點(diǎn)距離和的比重,值越小表示該節(jié)點(diǎn)與OUE 間的數(shù)據(jù)傳輸能耗與時(shí)延越小。
OUE 多應(yīng)用并行執(zhí)行(如自動(dòng)定位系統(tǒng)、資源探測(cè)應(yīng)用、娛樂(lè)應(yīng)用等)會(huì)集中產(chǎn)生大量需要實(shí)時(shí)處理的數(shù)據(jù)。假設(shè)數(shù)據(jù)D可被分割成N個(gè)不同數(shù)據(jù)量的計(jì)算任務(wù),表示為N={Nloc,Noff}={τ1D,τ2D,…,τnD},其中Nloc和Noff分別表示在本地執(zhí)行或計(jì)算卸載的任務(wù)數(shù)量;τnD表示任務(wù)n需要處理的數(shù)據(jù)量,τn表示任務(wù)n數(shù)據(jù)量分配比例且
當(dāng)OUE 發(fā)送卸載請(qǐng)求至集中控制單元,控制單元通過(guò)獲取OUE 附近節(jié)點(diǎn)信息,制定最佳卸載方案??刂茊卧獙⑿遁d方案XN={x1,x2,…,xn}(其中,xn表示任務(wù)n卸載至編號(hào)為xn的邊緣計(jì)算節(jié)點(diǎn),xn=0表示本地執(zhí)行)發(fā)送至OUE。OUE 按照卸載策略將任務(wù)分別在本地處理或卸載至不同的邊緣計(jì)算節(jié)點(diǎn)。各邊緣計(jì)算節(jié)點(diǎn)將執(zhí)行結(jié)果回傳至OUE。
當(dāng)任務(wù)n在本地執(zhí)行時(shí),需要處理的數(shù)據(jù)量為τnDbit 。設(shè)本地計(jì)算能力為foue(即每秒CPU 周期數(shù)),cn為計(jì)算1bit 數(shù)據(jù)所需的CPU 周期數(shù),與任務(wù)復(fù)雜度有關(guān)。設(shè)Ploc為OUE 的計(jì)算功率,因此任務(wù)n在本地處理所需時(shí)間和能耗可表示為
當(dāng)任務(wù)n卸載至邊緣計(jì)算節(jié)點(diǎn)執(zhí)行時(shí),由于海洋觀監(jiān)測(cè)傳感網(wǎng)中各節(jié)點(diǎn)具有移動(dòng)性且軌跡不同;OUE 在卸載時(shí),首先需要考慮OUE 與邊緣計(jì)算節(jié)點(diǎn)間的有效通信時(shí)間,確保OUE 在計(jì)算卸載時(shí)不會(huì)出現(xiàn)通信中斷的問(wèn)題。如圖4 所示,可設(shè)船A 速度為v1,船B 速度為為速度v2與i軸的夾角),當(dāng)船B 進(jìn)入船A 有效通信范圍時(shí),直線A—B與i軸夾角為β。另設(shè)船B進(jìn)入船A有效通信范圍后沿線路行駛,則船A與船B 有效通信時(shí)間為
圖4 相鄰兩船通信示意
在保證卸載不會(huì)中斷之后,任務(wù)n卸載時(shí),設(shè)fmaec(xn)為邊緣節(jié)點(diǎn)xn的計(jì)算能力,Ptran表示OUE傳輸功率,任務(wù)n卸載所需時(shí)間為
近岸海域OUE 的總執(zhí)行時(shí)間Toue受卸載決策XN和任務(wù)分配系數(shù)τ影響。由于各任務(wù)之間可并行執(zhí)行,卸載部分所用時(shí)間取決于邊緣節(jié)點(diǎn)中執(zhí)行時(shí)間的最大值。為了最小化OUE 時(shí)延,近岸區(qū)域卸載時(shí)延優(yōu)化目標(biāo)如式(12)所示,其中第一部分表示本地計(jì)算部分的總執(zhí)行時(shí)延,第二部分表示卸載部分的總執(zhí)行時(shí)延。約束a 表示任務(wù)卸載執(zhí)行時(shí)延不大于任務(wù)n本地計(jì)算時(shí)延及OUE 與邊緣節(jié)點(diǎn)xn的通信時(shí)間;約束b 表示任務(wù)n卸載能耗不超過(guò)該任務(wù)本地計(jì)算能耗;約束c 表示各任務(wù)的數(shù)據(jù)量之和應(yīng)等于OUE 需要處理的總數(shù)據(jù)量;約束d 表示每個(gè)任務(wù)只能卸載至一個(gè)邊緣節(jié)點(diǎn)。
為了解決近岸多節(jié)點(diǎn)協(xié)同機(jī)制下卸載優(yōu)化問(wèn)題,本文提出一種基于海洋多節(jié)點(diǎn)協(xié)同卸載的遺傳算法(MCO-GA,maritime multi-node cooperative offloading based genetic algorithm)。該算法通過(guò)對(duì)遺傳算法(GA,genetic algorithm)中編碼方式及適應(yīng)度函數(shù)的優(yōu)化與改進(jìn),使OUE 在尋找到最優(yōu)卸載策略的同時(shí)可有效降低時(shí)延。
4.2.1遺傳算法
GA 通過(guò)模擬自然進(jìn)化過(guò)程來(lái)搜索最優(yōu)解,染色體編碼時(shí)每條染色體經(jīng)過(guò)編碼可以看作優(yōu)化問(wèn)題的一種解。染色體的編碼影響后續(xù)的交叉、變異操作,很大程度上決定了GA 的進(jìn)化效率。適應(yīng)度函數(shù)是根據(jù)目標(biāo)函數(shù)確定的用于區(qū)分種群中個(gè)體好壞的標(biāo)準(zhǔn)。在染色體種群中,個(gè)體的適應(yīng)度值越大,表明該個(gè)體越適應(yīng)環(huán)境。
選擇操作以一定概率從種群中選擇若干個(gè)體。選擇過(guò)程基于適應(yīng)度優(yōu)勝劣汰機(jī)制。通過(guò)計(jì)算,每個(gè)染色體被賦予一個(gè)適應(yīng)度值,這些值與個(gè)體被選擇的概率相關(guān)。本文卸載優(yōu)化策略采用輪盤(pán)賭選擇方式[20],假設(shè)種群數(shù)量為S,A1,A2,…,Ai表示當(dāng)前種群中每個(gè)可能解,個(gè)體i的適應(yīng)度為fitness(Ai),因此該個(gè)體被選中的概率為
在進(jìn)行交叉操作時(shí),本文采用單點(diǎn)交叉的方式且交叉概率為PJ,具體操作是在個(gè)體編碼串中隨機(jī)設(shè)定一個(gè)交叉點(diǎn),實(shí)行交叉時(shí),該點(diǎn)前或后2 個(gè)個(gè)體的部分結(jié)構(gòu)互換,從而生成2 個(gè)新個(gè)體。在變異操作中本文采用基本位變異方式,變異概率為Pm,隨機(jī)指定一位或多位點(diǎn)做變異運(yùn)算得到新個(gè)體,可防止算法過(guò)早收斂。
4.2.2基于海洋多節(jié)點(diǎn)協(xié)同卸載的遺傳算法
MCO-GA 通過(guò)對(duì)超出可行域的染色體增加懲罰值,使其適應(yīng)度值減小,在選擇操作時(shí)不易被選中;把近岸約束優(yōu)化問(wèn)題轉(zhuǎn)化為無(wú)約束問(wèn)題,最終實(shí)現(xiàn)在可行域內(nèi)的最優(yōu)計(jì)算卸載策略求解。
在對(duì)優(yōu)化變量進(jìn)行編碼時(shí),由于采用固定邊緣節(jié)點(diǎn)與移動(dòng)邊緣節(jié)點(diǎn)協(xié)同卸載的策略;因此需要對(duì)OUE 每個(gè)邊緣節(jié)點(diǎn)進(jìn)行編號(hào)后,將OUE 各任務(wù)進(jìn)行卸載的邊緣計(jì)算節(jié)點(diǎn)編號(hào)及各邊緣節(jié)點(diǎn)的任務(wù)分配比例采用二進(jìn)制編碼的方式表示在每條染色體上。其中,任務(wù)卸載的邊緣計(jì)算節(jié)點(diǎn)編號(hào)及任務(wù)分配比例分別用卸載決策XN和數(shù)據(jù)量分配比例τ表示。優(yōu)化變量編碼過(guò)程如圖5 所示,x1?xn,τ1?τn分別表示任務(wù)卸載決策和任務(wù)分配比例。圖5 中列舉了卸載決策變量x1的二進(jìn)制表示方法,其他變量同理。
圖5 優(yōu)化變量編碼過(guò)程
由于GA 面向非約束優(yōu)化過(guò)程,而本文考慮了約束優(yōu)化問(wèn)題。因此,需要通過(guò)引入懲罰函數(shù)將約束優(yōu)化問(wèn)題轉(zhuǎn)化為無(wú)約束優(yōu)化問(wèn)題進(jìn)行分析,且適應(yīng)度函數(shù)可表示為
其中,penalty(Ai)為懲罰函數(shù)(通過(guò)對(duì)非可行解的個(gè)體增加懲罰值使其被選擇的概率降低),表示為
其中,l1和l2為正懲罰因子。
結(jié)合海洋船舶運(yùn)動(dòng)軌跡的特殊性[19],需要考慮船舶間速度方向不同以及通信半徑差異產(chǎn)生的通信時(shí)間變化問(wèn)題。因此,懲罰函數(shù)考慮了有效通信時(shí)間(式(9))等因素,從而避免了OUE 計(jì)算卸載時(shí)通信中斷問(wèn)題。懲罰函數(shù)通過(guò)對(duì)卸載能耗進(jìn)行約束,保證了OUE 計(jì)算卸載時(shí)較低的能耗。
4.2.3基于MCO-GA 的優(yōu)化策略
本文中每條染色體表示一種卸載策略Ai,其中每一種卸載策略Ai包括卸載決策XN與數(shù)據(jù)量分配比例τ。此外,卸載策略Ai交叉變異操作前后的適應(yīng)度可分別用fitness(Ai)與fitnessn(Ai)表示,適應(yīng)度值包括該卸載策略下 OUE 對(duì)應(yīng)的執(zhí)行時(shí)延Toue(Ai)及相應(yīng)的懲罰值penalty(Ai)。圖6 描述了MCO-GA 的流程,具體如下。
圖6 基于MCO-GA 算法的優(yōu)化策略流程
輸入邊緣計(jì)算節(jié)點(diǎn)計(jì)算能力fmaec(xn)、OUE計(jì)算能力foue、任務(wù)數(shù)量N、OUE 本地計(jì)算功率Ploc、OUE 傳輸功率Ptran和任務(wù)n計(jì)算復(fù)雜度cn。
輸出最優(yōu)卸載決策XN、最優(yōu)數(shù)據(jù)量分配比例τ、最優(yōu)卸載策略對(duì)應(yīng)時(shí)延。
步驟1初始化。確定迭代次數(shù)itera_num 與染色體數(shù)量S(每次迭代不同的卸載策略數(shù)目),同時(shí)設(shè)置卸載策略交叉操作與變異操作的概率分別為PJ和Pm,在可行域內(nèi)隨機(jī)產(chǎn)生S個(gè)卸載策略。
步驟2計(jì)算適應(yīng)度。根據(jù)式(14)的適應(yīng)度函數(shù)計(jì)算每種卸載策略對(duì)應(yīng)的適應(yīng)度。
步驟3選擇操作。根據(jù)式(13)計(jì)算每種卸載策略Ai被選中的概率Pi,將本次迭代中所有可能的卸載策略按照其概率大小進(jìn)行累加排序。同時(shí)均勻產(chǎn)生S個(gè)0~1 的隨機(jī)數(shù)Pr。若Pi>Pr,則選擇該卸載策略進(jìn)行后續(xù)操作,直至選出足夠數(shù)量的卸載策略。
步驟4交叉操作。每2 種卸載策略一組,被賦予0~1 的隨機(jī)數(shù)Pcr(該值作為是否進(jìn)行交叉操作的判斷依據(jù))。若Pcr<PJ,則該組2 種卸載策略進(jìn)行交叉操作,產(chǎn)生2 種新的卸載策略;否則2 種策略保持不變。
步驟5變異操作。每種卸載策略被賦予0~1的隨機(jī)數(shù)Pmr(作為是否進(jìn)行變異操作的判斷依據(jù))。若Pmr<Pm,則隨機(jī)選取該卸載策略上3 個(gè)點(diǎn)位進(jìn)行變異操作。
步驟6更新種群。計(jì)算交叉變異操作后卸載策略Ai對(duì)應(yīng)的適應(yīng)度 fitnessn(Ai),若fitnessn(Ai) >fitness(Ai),則替換交叉變異前的卸載策略Ai。
步驟7終止條件判斷。終止條件根據(jù)迭代次數(shù)itera_num 判斷。若滿足迭代次數(shù),則選擇出適應(yīng)度值最小的卸載策略并退出循環(huán);否則繼續(xù)執(zhí)行步驟3~步驟6,直至滿足條件。
步驟8輸出最優(yōu)卸載策略Ai及對(duì)應(yīng)時(shí)延Toue(Ai)。
遠(yuǎn)岸海域計(jì)算資源相對(duì)匱乏且海域環(huán)境復(fù)雜,節(jié)點(diǎn)間通信鏈路易受到惡劣環(huán)境因素的影響而導(dǎo)致卸載失敗。提出容錯(cuò)重傳機(jī)制計(jì)算卸載方法考慮節(jié)點(diǎn)間可能出現(xiàn)的通信故障十分必要,可保證遠(yuǎn)岸海事應(yīng)用的可靠性。
設(shè)遠(yuǎn)岸系統(tǒng)模型中繼節(jié)點(diǎn)M={m1,m2,…,mk}(mk表示第k個(gè)OUE 的中繼節(jié)點(diǎn)),OBS 計(jì)算能力強(qiáng)于中繼節(jié)點(diǎn),且OBS 與每個(gè)中繼節(jié)點(diǎn)均可作為邊緣計(jì)算節(jié)點(diǎn)。另設(shè)OUE 計(jì)算任務(wù)可分割,每個(gè)OUE 只能選擇一個(gè)中繼節(jié)點(diǎn)連接OBS。一般情況下,K個(gè)OUE 可同時(shí)向控制單元發(fā)送卸載請(qǐng)求??刂茊卧盏秸?qǐng)求后為OUE 制定相應(yīng)卸載策略。
OUEk全部任務(wù)在本地執(zhí)行時(shí)延與能耗可表示
當(dāng)ak=0且OUEk子任務(wù)在mk執(zhí)行時(shí),需要處理的數(shù)據(jù)量為設(shè)中繼節(jié)點(diǎn)mk計(jì)算能力為,子任務(wù)卸載至mk執(zhí)行時(shí)延可表示為
綜上所述,容錯(cuò)機(jī)制下的計(jì)算卸載模型中,OUEk總執(zhí)行能耗與時(shí)延可分別表示為
其中,twait為OUEk的等待時(shí)延,表示當(dāng)OUEk在任務(wù)計(jì)劃完成時(shí)間內(nèi)未收到卸載任務(wù)的執(zhí)行結(jié)果,則啟動(dòng)容錯(cuò)機(jī)制,先將原計(jì)劃完成時(shí)間延長(zhǎng),若還未收到OBS 執(zhí)行結(jié)果,則認(rèn)為任務(wù)卸載失敗,隨后ak=0時(shí)分配給OBS 的任務(wù)做重傳處理。由于不同OUE 對(duì)于能耗和時(shí)延的敏感程度存在差異。在計(jì)算卸載時(shí)要綜合考慮OUE 對(duì)時(shí)延和能耗的要求,和IE,k分別表示OUEk在綜合優(yōu)化時(shí)所要求的時(shí)延和能耗比重,可根據(jù)OUE 需求進(jìn)行調(diào)整。OUEk在執(zhí)行任務(wù)時(shí)總開(kāi)銷(時(shí)延和能耗)為
遠(yuǎn)岸計(jì)算資源匱乏區(qū)域可容錯(cuò)機(jī)制下,K個(gè)OUE 計(jì)算卸載受制于每個(gè)OUE 正常執(zhí)行與故障執(zhí)行下的任務(wù)分配比,以及正常執(zhí)行情況下OBS 的計(jì)算資源分配比。針對(duì)不同OUE 的實(shí)際使用需求,遠(yuǎn)岸容錯(cuò)機(jī)制下卸載開(kāi)銷優(yōu)化問(wèn)題可由式(31)表示,其中λ={λL,λM,λB}且λL、λM、λB分別為K個(gè)OUE 在本地、中繼節(jié)點(diǎn)、OBS 的任務(wù)分配比例集合。λre={λLre,λOre},λLre、λOre分別表示重傳情況下K個(gè)OUE 在本地和中繼節(jié)點(diǎn)的任務(wù)分配比例。約束a 表示OUEk任務(wù)執(zhí)行總時(shí)延不超過(guò)節(jié)點(diǎn)間有效通信時(shí)間及任務(wù)全部本地執(zhí)行的最小值;約束b表示OUEk任務(wù)執(zhí)行能耗不大于任務(wù)全部本地執(zhí)行的能耗;約束c 表示正常執(zhí)行和重傳執(zhí)行的任務(wù)分配比例取值范圍;約束d 表示正常執(zhí)行情況下,任務(wù)分配比例的和約束;約束e 表示重傳情況下,任務(wù)分配比例的和約束;約束f 表示OBS 分配給K個(gè)OUE 計(jì)算資源不大于OBS 計(jì)算資源。
為解決遠(yuǎn)岸計(jì)算卸載優(yōu)化問(wèn)題,本文提出基于分組交叉學(xué)習(xí)的粒子群優(yōu)化(GCL-PSO,group cross learning based particle swarm optimization)算法。由于此時(shí)優(yōu)化變量和問(wèn)題約束條件增多,傳統(tǒng)群智能算法在求解問(wèn)題時(shí)容易陷入局部最優(yōu)。GCL-PSO 算法在傳統(tǒng)PSO 算法基礎(chǔ)上引入分組競(jìng)爭(zhēng)學(xué)習(xí),通過(guò)每個(gè)粒子分組交叉競(jìng)爭(zhēng)學(xué)習(xí),使其能夠全面地在可行域內(nèi)搜索最優(yōu)解。GCL-PSO 算法較一般算法收斂速度快,處理復(fù)雜問(wèn)題時(shí)能夠?qū)崿F(xiàn)快速優(yōu)化。
5.2.1傳統(tǒng)PSO 算法
PSO 算法設(shè)置粒子總數(shù)為particle_num,包含位置與速度因素[21]。第i個(gè)粒子的位置可看作優(yōu)化問(wèn)題的一種潛在解Qi,第i個(gè)粒子的速度hi表示粒子i位置更新的方向與距離。尋優(yōu)過(guò)程中粒子i搜索到自身最優(yōu)的位置表示為pbesti,粒子群中搜索到群體最優(yōu)的位置表示為gbest。粒子i位置與速度更新計(jì)算過(guò)程表示為
其中,j表示迭代次數(shù),ω為慣性因子(值較大時(shí)全局尋優(yōu)較強(qiáng),值較小時(shí)局部尋優(yōu)能力較強(qiáng));c1,c2為學(xué)習(xí)因子;r1和r2為0~1 的隨機(jī)數(shù)。
5.2.2基于分組交叉學(xué)習(xí)的粒子群優(yōu)化算法
本文為遠(yuǎn)岸卸載優(yōu)化問(wèn)題提出GCL-PSO 算法。結(jié)合傳統(tǒng)PSO 算法中調(diào)節(jié)參數(shù)少、收斂速度快等優(yōu)點(diǎn)。所提算法先對(duì)每個(gè)粒子進(jìn)行分組,使其在小組內(nèi)先進(jìn)行局部學(xué)習(xí),再通過(guò)粒子更新式進(jìn)行全局學(xué)習(xí)。下面將介紹GCL-PSO 算法的具體實(shí)現(xiàn)過(guò)程。
GCL-PSO 算法初始化粒子參數(shù)后,將每個(gè)粒子進(jìn)行隨機(jī)分組。分組后根據(jù)適應(yīng)度大小在組內(nèi)排序。組內(nèi)每個(gè)粒子依據(jù)排序順序在組內(nèi)相互學(xué)習(xí),學(xué)習(xí)方式采用GA 的交叉操作。組內(nèi)適應(yīng)度較差的粒子通過(guò)向適應(yīng)度較好的粒子學(xué)習(xí)獲取新粒子,并將新粒子的適應(yīng)度與交叉前的粒子適應(yīng)度比較。若適應(yīng)度優(yōu)于交叉前的粒子,則將交叉前的粒子替換為交叉后的粒子,再將新粒子與當(dāng)前個(gè)體極值與全局極值比較。若適應(yīng)度優(yōu)于當(dāng)前個(gè)體極值或全局極值則將其替換,否則舍棄新粒子。
分組學(xué)習(xí)后將每個(gè)粒子從分組中拆分出來(lái)(下次迭代重新分組),根據(jù)分組學(xué)習(xí)后輸出的pbesti與gbest,更新式(32)和式(33)進(jìn)行全局學(xué)習(xí),通過(guò)不斷調(diào)整每個(gè)粒子位置與速度最終找到優(yōu)化問(wèn)題的最優(yōu)解。
5.2.3基于GCL-PSO 算法的優(yōu)化策略
GCL-PSO 算法相關(guān)參數(shù)與遠(yuǎn)岸卸載優(yōu)化問(wèn)題相關(guān)參數(shù)間的映射關(guān)系如表1 所示。
表1 GCL-PSO 算法參數(shù)與卸載策略參數(shù)映射
輸入OUE 數(shù)量K、OUE 計(jì)算能力fk、中繼節(jié)點(diǎn)計(jì)算能力、基站計(jì)算能力fOBS、OUE 本地計(jì)算功率、OUE 傳輸功率、OUE 傳輸帶寬Wk、中繼節(jié)點(diǎn)傳輸帶寬和OUE 任務(wù)復(fù)雜度系數(shù)ck。
輸出最優(yōu)卸載策略和最優(yōu)策略對(duì)應(yīng)系統(tǒng)成本。
步驟1初始化。確定迭代次數(shù)GCL_itera 與粒子數(shù)量particle_num(每次迭代產(chǎn)生的卸載策略數(shù)量)在可行域內(nèi)設(shè)置每個(gè)粒子初始位置QiN(j)與速度hi(j)。
步驟2系統(tǒng)成本計(jì)算。根據(jù)式(31)所示的優(yōu)化問(wèn)題計(jì)算正常情況下每種卸載策略所對(duì)應(yīng)的系統(tǒng)總成本Ci(j)。將前j次迭代中粒子i系統(tǒng)成本最小時(shí)所對(duì)應(yīng)的卸載策略設(shè)置為粒子i當(dāng)前的個(gè)體極值pbesti(j),同時(shí)設(shè)置當(dāng)前粒子群中系統(tǒng)成本最小的粒子所對(duì)應(yīng)的卸載策略為全局最優(yōu)卸載策略gbest(j)。
圖7 GCL-PSO 優(yōu)化方法流程
步驟3卸載策略分組競(jìng)爭(zhēng)學(xué)習(xí)。每3 種卸載策略為一組進(jìn)行隨機(jī)分組。在組內(nèi)按照每種策略所求得的系統(tǒng)成本Ci(j)對(duì)卸載策略進(jìn)行排序,排序后系統(tǒng)成本值最大的策略采用交叉方式向組內(nèi)次優(yōu)策略學(xué)習(xí),次優(yōu)策略向成本值最小的策略學(xué)習(xí)。
步驟5粒子全局學(xué)習(xí)。根據(jù)式(32)和式(33)更新粒子i當(dāng)前速度hi(j)與卸載策略每個(gè)粒子根據(jù)當(dāng)前個(gè)體極值pbesti(j)與全局極值gbest(j)不斷調(diào)整自身卸載策略。
步驟6更新全局學(xué)習(xí)后參數(shù)。求解全局學(xué)習(xí)后新粒子對(duì)應(yīng)的系統(tǒng)總成本,根據(jù)系統(tǒng)成本更新每個(gè)粒子的個(gè)體極值pbesti(j)和全局極值gbest(j)。
步驟7終止條件判斷。終止條件根據(jù)迭代次數(shù)進(jìn)行判斷。若滿足迭代次數(shù)則退出循環(huán),輸出正常執(zhí)行時(shí)的最優(yōu)的卸載策略gbest(j)以及對(duì)應(yīng)系統(tǒng)成本C(gbest(j))。若不滿足則繼續(xù)執(zhí)行步驟3~步驟6,直至滿足終止條件。
步驟8故障情況下最優(yōu)策略求解。根據(jù)步驟7輸出正常情況下最優(yōu)卸載策略gbest(j),運(yùn)用GCL-PSO 算法求解故障情況下的卸載策略
步驟9輸出最優(yōu)卸載策略及對(duì)應(yīng)的系統(tǒng)成本。輸出每個(gè)OUE 的卸載策略(包含正常執(zhí)行與故障執(zhí)行2 種情況下的策略)以及對(duì)應(yīng)的系統(tǒng)總成本。
模擬OUE 在近岸場(chǎng)景下同時(shí)將多個(gè)任務(wù)卸載至固定邊緣計(jì)算節(jié)點(diǎn)(基站)和移動(dòng)邊緣計(jì)算節(jié)點(diǎn)(船舶)的網(wǎng)絡(luò)場(chǎng)景。實(shí)驗(yàn)仿真參數(shù)設(shè)置參考文獻(xiàn)[4,17,19],如表2 所示。為保證數(shù)值選取的均勻隨機(jī)性,通信半徑的設(shè)置基于文獻(xiàn)[19]并進(jìn)行了相應(yīng)的調(diào)整;船舶速度的設(shè)置也主要參考文獻(xiàn)[19]中的研究結(jié)果(該研究結(jié)論說(shuō)明海洋網(wǎng)絡(luò)中船舶速度與單位區(qū)域內(nèi)船舶密度呈負(fù)相關(guān),且近岸區(qū)域網(wǎng)絡(luò)節(jié)點(diǎn)密度一般高于遠(yuǎn)岸區(qū)域)。因此,在表2 所示仿真實(shí)驗(yàn)場(chǎng)景下,設(shè)置近岸船舶速度大于遠(yuǎn)岸船舶速度。此外,通過(guò)多次實(shí)驗(yàn),MCO-GA 在迭代100 次以內(nèi)均可實(shí)現(xiàn)穩(wěn)定收斂,因此設(shè)迭代次數(shù)itera_num=100,MCO-GA 中種群數(shù)量S=70,交叉概率為PJ=0.6,變異概率為Pm=0.07,懲罰函數(shù)中懲罰因子l1=2,l2=1.5,變異點(diǎn)數(shù)目為3。
表2 近岸實(shí)驗(yàn)仿真參數(shù)
為驗(yàn)證MCO-GA 在卸載方面的有效性,分析MCO-GA 在不同數(shù)據(jù)量下的收斂效果以及在降低OUE 時(shí)延方面的性能,并將MCO-GA 與以下卸載策略進(jìn)行比較[4,22]。1) 基站卸載策略(簡(jiǎn)稱為BSprocess 策略),總?cè)蝿?wù)平均后卸載至多個(gè)基站處理,而不卸載至移動(dòng)邊緣節(jié)點(diǎn);2) 隨機(jī)卸載(簡(jiǎn)稱為RANDOM 策略),各任務(wù)數(shù)據(jù)量與邊緣計(jì)算節(jié)點(diǎn)隨機(jī)分配;3) 本地執(zhí)行(簡(jiǎn)稱為L(zhǎng)OCAL 策略),任務(wù)全部在本地執(zhí)行,不進(jìn)行卸載;4) 將文獻(xiàn)[22]中所提的蟻群優(yōu)化(ACO,ant colony optimization)應(yīng)用至近岸多節(jié)點(diǎn)協(xié)同的卸載策略,簡(jiǎn)稱為ACO 策略。
為了驗(yàn)證MCO-GA 能夠在有限的迭代次數(shù)內(nèi)實(shí)現(xiàn)穩(wěn)定收斂,本文對(duì)MCO-GA 在不同數(shù)據(jù)量下的迭代收斂效果進(jìn)行了驗(yàn)證。如圖8 所示,隨著迭代次數(shù)的逐漸增大,MCO-GA 在不同數(shù)據(jù)量下得到的時(shí)延解逐漸減小,在迭代約30 次時(shí),可尋找到其對(duì)應(yīng)情況下的最優(yōu)解實(shí)現(xiàn)穩(wěn)定收斂(部分情況在迭代100 次以內(nèi)實(shí)現(xiàn)收斂,如數(shù)據(jù)量為1 000 kB 時(shí),迭代約60 次實(shí)現(xiàn)收斂)。通過(guò)分析,可以看出MCO-GA 在不同數(shù)據(jù)量下均可實(shí)現(xiàn)有限迭代次數(shù)內(nèi)的穩(wěn)定收斂,且收斂速度較快,使算法的運(yùn)算量相對(duì)較低。此外,MCO-GA 時(shí)間復(fù)雜度與其他群智能算法相比較低[11,17],運(yùn)行時(shí)間較短,可在卸載精度要求不嚴(yán)苛的環(huán)境下快速為OUE 找到一個(gè)可行解,具有一定的實(shí)際應(yīng)用性。
圖8 MCO-GA 迭代收斂
圖9 說(shuō)明5 種策略執(zhí)行時(shí)延總體變化趨勢(shì)均隨著OUE 數(shù)據(jù)量的增大而增加,但MCO-GA 策略時(shí)延增加最少。這是由于MCO-GA 結(jié)合近岸海洋特色對(duì)傳統(tǒng)GA 進(jìn)行改進(jìn),使其更加適應(yīng)近岸多點(diǎn)協(xié)同卸載問(wèn)題的尋優(yōu)。而基于ACO 算法的策略由于尋優(yōu)時(shí)容易陷入局部最優(yōu),其執(zhí)行時(shí)延在不同數(shù)據(jù)量下均大于MCO-GA,同時(shí)證明了MCO-GA 較好的尋優(yōu)效果。由于仿真設(shè)置了相同的基站與船舶數(shù)目使BSprocess 策略執(zhí)行時(shí)延相對(duì)較小,若減少基站數(shù)目,BSprocess 策略執(zhí)行時(shí)延會(huì)隨著數(shù)據(jù)量的增加而大幅增加。由于RANDOM 策略的隨機(jī)性,在不同數(shù)據(jù)量下的執(zhí)行時(shí)延波動(dòng)較大,數(shù)據(jù)量為1 200 KB 的執(zhí)行時(shí)延明顯高于1 400 KB 的情況。受OUE 本地計(jì)算能力的限制,LOCAL 策略在不同數(shù)據(jù)量下執(zhí)行時(shí)延最高。通過(guò)對(duì)比可以看出,MCO-GA 在降低OUE 執(zhí)行時(shí)延方面具有最好性能,在不同情況下均具有穩(wěn)定收斂效果。
圖9 不同數(shù)據(jù)量下各策略時(shí)延對(duì)比
當(dāng)移動(dòng)邊緣節(jié)點(diǎn)計(jì)算能力保持不變時(shí),隨著固定邊緣節(jié)點(diǎn)計(jì)算能力的增加,不同邊緣節(jié)點(diǎn)計(jì)算能力所對(duì)應(yīng)時(shí)延仿真結(jié)果如圖10 所示(以固定數(shù)據(jù)量為800 KB 為例)??梢钥闯?,隨著固定邊緣節(jié)點(diǎn)計(jì)算能力的提升,4 種策略任務(wù)執(zhí)行時(shí)延總體均有不同程度的降低,提高了OUE 任務(wù)執(zhí)行效率。MCO-GA 在不同的計(jì)算能力下均具有最小時(shí)延。再次表明所提算法隨著固定邊緣節(jié)點(diǎn)計(jì)算能力的變化可以靈活地調(diào)整卸載策略以確保系統(tǒng)的實(shí)時(shí)性,并且具有更好的動(dòng)態(tài)適應(yīng)性。
圖10 不同計(jì)算能力下各策略時(shí)延對(duì)比(固定數(shù)據(jù)量為800 KB)
遠(yuǎn)岸場(chǎng)景下模擬K個(gè)OUE 通過(guò)各自中繼節(jié)點(diǎn)與海上基站進(jìn)行卸載的網(wǎng)絡(luò)場(chǎng)景,仿真參數(shù)如表3所示[4,19,23]。設(shè)置粒子數(shù)量particle_num=60,迭代次數(shù)GCL_it era=100,粒子更新速度hi取值范圍為[?0.25,0.25],慣性因子ω=0.4,隨機(jī)數(shù)r1=0.4,r2=0.6。為驗(yàn)證基于GCL-PSO 算法的卸載策略在遠(yuǎn)岸容錯(cuò)機(jī)制下卸載有效性,將GCL-PSO 與以下策略進(jìn)行比較。1) PSO 策略,將傳統(tǒng)的PSO 算法應(yīng)用于遠(yuǎn)岸的卸載策略;2) 平均卸載策略(簡(jiǎn)稱為AVERAGE 策略),將每個(gè)OUE 的計(jì)算任務(wù)平均分配至本地,中繼節(jié)點(diǎn)以及OBS,OBS 計(jì)算資源平均分配給K個(gè)OUE;3) 改進(jìn)PSO 策略,將文獻(xiàn)[21]中的改進(jìn)PSO 算法應(yīng)用于遠(yuǎn)岸卸載策略;4) 將文獻(xiàn)[24]所提AFSA 人工魚(yú)群算法(AFSA,artificial fish swarms algorithm)應(yīng)用于遠(yuǎn)岸的卸載策略,簡(jiǎn)稱為AFSA 策略。
表3 遠(yuǎn)岸實(shí)驗(yàn)仿真參數(shù)
為了驗(yàn)證基于GCL-PSO 算法的策略在解決遠(yuǎn)岸卸載問(wèn)題時(shí)的尋優(yōu)和收斂效果,本文將GCL-PSO策略與其他策略進(jìn)行對(duì)比。如圖11 所示,當(dāng)OUE數(shù)量K=6且計(jì)算任務(wù)量為500~900 KB 時(shí),基于4 種策略求得的卸載總成本隨著迭代次數(shù)的增加趨于穩(wěn)定,且均可在較少的迭代次數(shù)(一般為10~20 次)內(nèi)實(shí)現(xiàn)快速收斂,運(yùn)算量小。但通過(guò)對(duì)比4 種策略的尋優(yōu)效果可知,GCL-PSO 策略尋優(yōu)得到的系統(tǒng)總成本遠(yuǎn)小于其他3 種策略,這展示了該策略良好的尋優(yōu)效果。綜上所述,本文所提基于GCL-PSO 算法的策略在解決遠(yuǎn)岸卸載問(wèn)題時(shí)可在較少的迭代次數(shù)內(nèi)實(shí)現(xiàn)穩(wěn)定收斂且尋優(yōu)效果遠(yuǎn)好于其他策略。同時(shí),GCL-PSO 策略時(shí)間復(fù)雜度為O(mn)(m和n分別代表迭代次數(shù)與粒子數(shù)目),迭代次數(shù)少,算法運(yùn)算量小,說(shuō)明所需運(yùn)行時(shí)間較短,可滿足實(shí)際應(yīng)用需求。
圖11 算法尋優(yōu)和收斂效果
本文同時(shí)對(duì)比了系統(tǒng)中OUE 均可正常卸載時(shí)各種算法的總成本,如圖12 所示。可以發(fā)現(xiàn)隨著系統(tǒng)中OUE 數(shù)量的增加,5 種策略的計(jì)算卸載系統(tǒng)總成本均隨之增加,但GCL-PSO 的總成本較其他4 種策略增幅較小。這是由于GCL-PSO 引入了分組學(xué)習(xí)使在遠(yuǎn)岸多優(yōu)化變量的復(fù)雜情況下仍能制定最優(yōu)的計(jì)算卸載策略,從而降低成本。由于尋優(yōu)時(shí)容易陷入局部最優(yōu),改進(jìn)PSO、AFSA、PSO這3 種策略較GCL-PSO 策略相比卸載成本依次增加。隨著OUE 數(shù)量的增加AVERAGE 策略系統(tǒng)總成本相對(duì)增加,雖然波動(dòng)較小,但未實(shí)現(xiàn)資源的合理調(diào)配,使系統(tǒng)總成本較前4 種策略更大。綜上所述,可以發(fā)現(xiàn)在正常卸載時(shí),GCL-PSO 能夠?qū)崿F(xiàn)計(jì)算卸載最佳決策,并可高效地降低系統(tǒng)時(shí)延與能耗。
圖12 正常情況下不同OUE 數(shù)量成本對(duì)比
設(shè)置系統(tǒng)中故障OUE 數(shù)量為1,本文對(duì)比了故障情況下不同OUE 數(shù)量的計(jì)算卸載總成本,如圖13 所示。從圖13 可以看出,隨著OUE 數(shù)量的增加,5 種方案整體成本逐漸增加,但本文所提方案卸載總成本相對(duì)最低。同時(shí),可以發(fā)現(xiàn),當(dāng)OUE 數(shù)量大于4 時(shí),所提方案卸載成本遠(yuǎn)小于其他方案卸載成本,表明故障情況下所提方案在OUE 數(shù)量較多的系統(tǒng)中能有效地降低系統(tǒng)時(shí)延和能耗,可以很好地適應(yīng)多OUE 系統(tǒng)中故障情況的計(jì)算卸載。綜上所述,隨著OUE 數(shù)量的變化,所提GCL-PSO 策略在正常與故障情況下均可實(shí)現(xiàn)最優(yōu)卸載決策,可以很好地處理故障情況下多OUE 的計(jì)算卸載問(wèn)題。
圖13 故障情況下不同OUE 數(shù)量成本對(duì)比
圖14 對(duì)正常情況下5 種方法在不同數(shù)據(jù)量下的卸載成本進(jìn)行了分析,實(shí)驗(yàn)設(shè)置OUE 數(shù)量為5。從圖14 可以看出,數(shù)據(jù)量的增加使5 種策略的卸載成本均有不同程度的上升,但基于GCL-PSO 策略得到的卸載成本最小,表明GCL-PSO 策略能夠很好地適應(yīng)不同數(shù)據(jù)量下的卸載策略尋優(yōu)。此外,當(dāng)數(shù)據(jù)量為500~600 KB時(shí),GCL-PSO策略較改進(jìn)PSO策略相比成本降低了20%;當(dāng)數(shù)據(jù)量為600~700 KB時(shí),GCL-PSO 策略比改進(jìn)PSO 策略降低了24%的卸載成本。上述結(jié)果表明,隨著數(shù)據(jù)量的增加,GCL-PSO策略在降低卸載成本方面的優(yōu)勢(shì)較更加明顯。
圖14 正常情況下不同數(shù)據(jù)量成本對(duì)比
圖15 對(duì)比了故障情況下5 種策略的總成本。實(shí)驗(yàn)假設(shè)OUE 數(shù)量為5,且其中一個(gè)OUE 在卸載時(shí)其對(duì)應(yīng)中繼和OBS 傳輸出現(xiàn)故障,需要重傳卸載。對(duì)比5 種策略在不同數(shù)據(jù)范圍下卸載總成本,圖15說(shuō)明隨著OUE 任務(wù)數(shù)據(jù)量增加,5 種策略系統(tǒng)總成本均增加,但GCL-PSO 能在故障情況下保持較低系統(tǒng)成本,且系統(tǒng)成本增幅較小。這是由于該策略在制定正常執(zhí)行時(shí)最佳卸載策略的基礎(chǔ)上,分析并提前制定了故障情況下任務(wù)重傳的卸載策略。而其他4 種策略由于在正常執(zhí)行時(shí)尋優(yōu)能力不夠,使在此基礎(chǔ)上的故障重傳分析尋優(yōu)結(jié)果不準(zhǔn)確,成本較高。
圖15 故障情況下不同數(shù)量成本對(duì)比
本文建立了近岸與遠(yuǎn)岸2 種符合海洋特色的卸載模型。近岸場(chǎng)景下提出了多節(jié)點(diǎn)協(xié)同的卸載策略,并針對(duì)該策略提出了MCO-GA 以進(jìn)一步降低OUE 卸載時(shí)延。遠(yuǎn)岸場(chǎng)景下提出了GCL-PSO 算法,使遠(yuǎn)岸容錯(cuò)卸載策略能夠找到最優(yōu)的卸載策略。仿真結(jié)果表明,在近岸場(chǎng)景下,所提算法在不同數(shù)據(jù)量下均能實(shí)現(xiàn)穩(wěn)定收斂,且較傳統(tǒng)方案能夠極大地降低OUE 時(shí)延。在遠(yuǎn)岸場(chǎng)景下,GCL-PSO 算法能夠?qū)崿F(xiàn)快速收斂,與其他算法相比更加符合遠(yuǎn)岸容錯(cuò)機(jī)制下的卸載策略。
針對(duì)PSO 算法中局部尋優(yōu)能力差和尋優(yōu)片面的缺陷,GCL-PSO 算法通過(guò)引入分組競(jìng)爭(zhēng)學(xué)習(xí)思想對(duì)PSO 算法進(jìn)行了改進(jìn)。仿真結(jié)果表明,GCL-PSO算法較傳統(tǒng)PSO 算法尋優(yōu)能力有較大提升。未來(lái),將針對(duì)傳統(tǒng)粒子群收斂精度低等缺陷對(duì)PSO 算法中的慣性因子ω等參數(shù)進(jìn)行調(diào)整,可進(jìn)一步提高傳統(tǒng)PSO 算法的收斂精度。此外,將進(jìn)一步分析海洋環(huán)境因素對(duì)卸載的影響,考慮融合通信資源分配因素的卸載,為更好地提升我國(guó)海洋觀監(jiān)測(cè)能力奠定堅(jiān)實(shí)的基礎(chǔ)。