本發(fā)明涉及移動(dòng)計(jì)算技術(shù)領(lǐng)域,特別是指一種基于MEC和MCC的雙向選擇計(jì)算卸載方法。
背景技術(shù):
近年來(lái),隨著用戶數(shù)據(jù)的日益增長(zhǎng)、物聯(lián)網(wǎng)設(shè)備的大規(guī)模接入以及業(yè)務(wù)的多樣化導(dǎo)致當(dāng)前無(wú)線網(wǎng)絡(luò)中數(shù)據(jù)流量的飛速增長(zhǎng)、數(shù)據(jù)規(guī)模的急劇擴(kuò)大。同時(shí),移動(dòng)終端的功能逐步加強(qiáng),其功能也已經(jīng)不僅僅局限于通信領(lǐng)域,而是成為人們移動(dòng)娛樂(lè)、辦公、閱讀、計(jì)算的強(qiáng)大載體。因此,第三方提供的各種依賴于終端的高復(fù)雜程序,開(kāi)始大量運(yùn)用于移動(dòng)計(jì)算中。但是,終端的計(jì)算能力受到體積的限制,當(dāng)前的電池技術(shù)也還沒(méi)有突破性的進(jìn)展,這給移動(dòng)計(jì)算領(lǐng)域帶來(lái)了巨大的壓力。
在傳統(tǒng)網(wǎng)絡(luò)中,為了解決移動(dòng)計(jì)算中的大計(jì)算量問(wèn)題,服務(wù)商使用云計(jì)算來(lái)輔助處理大數(shù)據(jù)量、終端無(wú)法處理或無(wú)法存儲(chǔ)的數(shù)據(jù),即移動(dòng)云計(jì)算服務(wù)(MCC,Mobile Cloud Computing)。服務(wù)提供商把特定服務(wù)部署在云中,終端設(shè)備發(fā)送信息給服務(wù),服務(wù)完成運(yùn)算后將結(jié)果發(fā)回給終端,并將必要數(shù)據(jù)在云端存儲(chǔ)。為了服務(wù)不同地理位置的用戶,在互聯(lián)網(wǎng)的多層次結(jié)構(gòu)中,云數(shù)據(jù)中心位于核心網(wǎng)。而核心網(wǎng)距離終端用戶較遠(yuǎn),用戶消息需要經(jīng)過(guò)若干跳才能夠到達(dá),這就不可避免地造成了較大的延時(shí),而較大的延時(shí)可能會(huì)影響用戶的體驗(yàn)。同時(shí),傳統(tǒng)的云計(jì)算卸載思路無(wú)法解決延時(shí)和抖動(dòng)問(wèn)題,云服務(wù)器的物理距離往往很遠(yuǎn),網(wǎng)絡(luò)流量普遍存在分布不均衡導(dǎo)致的抖動(dòng)也無(wú)法避免。
針對(duì)云計(jì)算遇到的問(wèn)題,學(xué)術(shù)界提出了一種新的技術(shù)——移動(dòng)邊緣計(jì)算(MEC,Mobile Edge Computing),即利用無(wú)線接入網(wǎng)絡(luò)RAN(Radio Access Network)就近提供電信用戶所需服務(wù)和云端計(jì)算功能,創(chuàng)造出一個(gè)具備高性能、低延遲與高帶寬的電信級(jí)服務(wù)環(huán)境,加速網(wǎng)絡(luò)中各項(xiàng)內(nèi)容、服務(wù)及應(yīng)用的快速下載,讓消費(fèi)者享有不間斷的高質(zhì)量網(wǎng)絡(luò)體驗(yàn)。移動(dòng)邊緣計(jì)算在2014年被ETSI(European Telecommunications Standards Institute)立為通向5G的關(guān)鍵技術(shù)之一,在滿足5G網(wǎng)絡(luò)低延時(shí)、高帶寬的業(yè)務(wù)、高處理能力要求中扮演著越來(lái)越重要的角色。它得到了包括諾基亞、英特爾、華為、中興等多個(gè)通信廠家的關(guān)注。移動(dòng)邊緣計(jì)算主要包括移動(dòng)邊緣計(jì)算服務(wù)器和移動(dòng)霧終端兩個(gè)部分,它具有本地化、近距離、低延時(shí)、位置感知、能夠獲取網(wǎng)絡(luò)上下文信息的特點(diǎn),它將遠(yuǎn)端的云計(jì)算能力拉到用戶側(cè),提供更加泛在的處理能力。從網(wǎng)絡(luò)側(cè)來(lái)看,移動(dòng)霧計(jì)算可以通過(guò)內(nèi)容與位置分離的方式將數(shù)據(jù)處理和分發(fā)均衡到網(wǎng)絡(luò)邊緣,降低核心網(wǎng)與云數(shù)據(jù)中心負(fù)荷;邊緣計(jì)算節(jié)點(diǎn)可以對(duì)上傳的數(shù)據(jù)實(shí)現(xiàn)預(yù)處理、智能分流以及直接處理,降低了網(wǎng)絡(luò)的傳輸負(fù)擔(dān),并提升業(yè)務(wù)的響應(yīng)速度。從用戶側(cè)來(lái)看,基于網(wǎng)絡(luò)功能虛擬化的靈活資源配置提供了額外的處理能力,同時(shí)能夠提供更加節(jié)能的方案。
目前,基于MEC的計(jì)算卸載主要是從兩個(gè)方面著手。第一個(gè)方面主要在IoT(Internet of Things)領(lǐng)域,將計(jì)算能力較為強(qiáng)大的設(shè)備作為IoT設(shè)備的網(wǎng)關(guān),為傳感器節(jié)點(diǎn)提供數(shù)據(jù)的處理和上傳功能,然而這種邊緣計(jì)算節(jié)點(diǎn)能力有限,而且可靠性沒(méi)有保障,波動(dòng)性大,還面臨著安全性和私密性問(wèn)題,因此只能作為小范圍、低計(jì)算量的物聯(lián)網(wǎng)解決方案。第二個(gè)方面通過(guò)移動(dòng)邊緣計(jì)算服務(wù)器,提供類似于于云計(jì)算的服務(wù)器,但是部署在接入網(wǎng)中,以實(shí)現(xiàn)低延時(shí)、高可靠的通信方案。目前研究MEC卸載的方法都是從延時(shí)和能耗兩個(gè)方面入手,通過(guò)最大化終端的延時(shí)-能耗評(píng)價(jià)函數(shù)來(lái)作為卸載的判決方法。這些實(shí)現(xiàn)方案往往從網(wǎng)絡(luò)側(cè)入手,對(duì)于用戶而言,他們提供的延時(shí)、能耗信息是被線性處理的,沒(méi)有考慮到用戶的喜好。此外,現(xiàn)有的研究方案只是考慮服務(wù)端資源受限的情況,沒(méi)有對(duì)服務(wù)端的負(fù)載和用戶公平性做出考慮,這造成目前的卸載方案的收益有限,同時(shí)用戶的服務(wù)體驗(yàn)并沒(méi)有提高。
由于MEC技術(shù)提出時(shí)間不長(zhǎng),MEC相關(guān)的基礎(chǔ)設(shè)施還沒(méi)有完全部署完成,因此MCC和MEC卸載方案通常是孤立的,這造成了資源的極大浪費(fèi),計(jì)算量卸載的優(yōu)勢(shì)也沒(méi)有完全體現(xiàn)出來(lái)。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提出一種基于MEC和MCC的雙向選擇計(jì)算卸載方法,能夠?qū)崿F(xiàn)終端線性加權(quán)和網(wǎng)絡(luò)側(cè)層次分析的多準(zhǔn)則、多目標(biāo)、雙向選擇的計(jì)算量卸載。
基于上述目的本發(fā)明提供基于MEC和MCC的雙向選擇計(jì)算卸載方法,包括步驟:
當(dāng)檢測(cè)到運(yùn)算程序的計(jì)算量超過(guò)門限,向網(wǎng)絡(luò)側(cè)發(fā)送卸載所述運(yùn)算程序的請(qǐng)求;
接收到網(wǎng)絡(luò)側(cè)根據(jù)該請(qǐng)求分配的可供卸載的序列;
根據(jù)接收到的可供卸載的序列,計(jì)算本地能耗和卸載能耗,進(jìn)而計(jì)算每種可供卸載能耗收益并發(fā)送給網(wǎng)絡(luò)側(cè);同時(shí),計(jì)算本地運(yùn)算延時(shí),進(jìn)而計(jì)算每種可供卸載的延時(shí)與本地計(jì)算延時(shí)差并發(fā)送給網(wǎng)絡(luò)側(cè);
接收到網(wǎng)絡(luò)側(cè)根據(jù)所述能耗收益和延時(shí)收益獲得的卸載決定矩陣,回送的卸載判決消息;
根據(jù)卸載判決消息進(jìn)行卸載。
在本發(fā)明的一些實(shí)施例中,可供卸載序列包括云計(jì)算、移動(dòng)邊緣計(jì)算服務(wù)器、空閑移動(dòng)智能終端,表示為:dp=(dcc,dec,dfc)dcc,dec,dfc∈{0,1};
其中,dp為可供卸載集向量,dcc表示云服務(wù)器集合是否能提供卸載,dec表示移動(dòng)邊緣計(jì)算服務(wù)器能否提供卸載服務(wù),dfc表示是否有智能終端集合分載計(jì)算量;這三個(gè)量都是二元量,用0,1表示,0表示不能卸載,1表示卸載。
在本發(fā)明的一些實(shí)施例中,所述的本地能耗是CPU進(jìn)程運(yùn)行所產(chǎn)生的,用如下公式確定:
其中,Eloc表示本地計(jì)算所需的能耗,cprog表示計(jì)算某個(gè)業(yè)務(wù)需要的CPU周期數(shù),floc表示本地CPU的速率,單位是周期/s,Ploc表示單位時(shí)間內(nèi)CPU的功耗;
然后,根據(jù)可供卸載的序列,分別計(jì)算序列中不同卸載目標(biāo)的能耗函數(shù),即卸載能耗,表示:
其中,Q表示發(fā)送符號(hào)的協(xié)方差矩陣;DTk是用戶業(yè)務(wù)類型k所需要發(fā)送的比特?cái)?shù);ηT表示編碼系數(shù),H表示信道矩陣,是干擾加噪聲的協(xié)方差矩陣;
計(jì)算卸載與本地計(jì)算的能耗差別,三種卸載目標(biāo)的能耗是一樣的,表示為:
在本發(fā)明的一些實(shí)施例中,計(jì)算本地計(jì)算程序所需的時(shí)間:
其中,tloc表示本地計(jì)算的延時(shí);
計(jì)算三種目標(biāo)卸載所需要的時(shí)間:
云計(jì)算場(chǎng)景下,卸載的總時(shí)間表示:
tcc_off=tT+tR+tw+tprocess
tcc_off表示云計(jì)算卸載所需要的總延時(shí),它由四個(gè)部分組成,前兩個(gè)部分(tT,tR)分別是無(wú)線發(fā)送和無(wú)線接受的傳輸延時(shí);tw是有線部分的傳輸延時(shí),Bbottle為瓶頸帶寬;tque是排隊(duì)延時(shí),和網(wǎng)絡(luò)的狀態(tài)相關(guān);tprop是傳播延時(shí),與物理距離相關(guān);hop表示到達(dá)云服務(wù)器所需要的跳數(shù);tprocess為處理用戶程序所需要的時(shí)間,fcc是云計(jì)算服務(wù)器所能提供的CPU周期數(shù);
接入移動(dòng)邊緣計(jì)算服務(wù)器計(jì)算場(chǎng)景下,卸載的總時(shí)間表示:
tmc_off=tT+tR+tprocess
其中,fmc是MEC服務(wù)器所能提供的CPU周期數(shù);
空閑移動(dòng)智能終端作為計(jì)算卸載目標(biāo)場(chǎng)景下,卸載的總時(shí)間表示:
tfc_off=2(tT+tR)+tprocess
其中,ffc是其他職能終端所能提供的CPU周期數(shù);
最后,計(jì)算卸載延時(shí)與本地計(jì)算延時(shí)差別,由于三種卸載目標(biāo)的延時(shí)各不相同,延時(shí)差需要分別計(jì)算,即:
其中,Δti表示終端用戶i的延時(shí)差。
在本發(fā)明的一些實(shí)施例中,還包括:
增加自身對(duì)兩個(gè)收益函數(shù)的主客觀偏好,對(duì)計(jì)算得到的能耗收益、延時(shí)收益進(jìn)行預(yù)判決,并然后發(fā)送給網(wǎng)絡(luò)側(cè)。
在本發(fā)明的一些實(shí)施例中,用戶終端在能耗方面,為了增加用戶終端的生存時(shí)間,一般認(rèn)為在用戶終端本身電池剩余量較低時(shí),更傾向于將高能耗進(jìn)程卸載出去,其數(shù)學(xué)公式描述如下:
其中,gei為修訂之后的能耗收益參數(shù);βe為用戶的主觀偏好程度系數(shù),其值由用戶終端自己設(shè)定,優(yōu)選值為βe∈(0,2)。為客觀偏好系數(shù),由剩余電量和總電量的比值αTe決定。
根據(jù)將韋伯菲齊納公式引入用戶終端對(duì)延遲的偏好影響。同時(shí)根據(jù)不同的業(yè)務(wù)設(shè)置不同的業(yè)務(wù)系數(shù),其具體公式描述如下:
其中,gti為修訂之后的延時(shí)收益參數(shù);βtk為業(yè)務(wù)的偏好程度系數(shù),k表示不同的業(yè)務(wù)種類,流媒體等實(shí)時(shí)業(yè)務(wù)對(duì)該系數(shù)要求較高,科學(xué)計(jì)算類業(yè)務(wù)對(duì)此要求較低,優(yōu)選值為βtk∈(0,2);sgn(Δti)為符號(hào)函數(shù)。三個(gè)卸載目標(biāo)要分別計(jì)算延時(shí)收益gti=(gt_cci,gt_mci,gt_fci)。
還有,用戶終端得到的這兩個(gè)參數(shù),可正可負(fù),對(duì)用戶而言只有最終的收益為正,才有價(jià)值。因此,決定卸載目標(biāo)可以用如下表達(dá)式說(shuō)明:
di=dpi∩ui(git+gie),d∈(0,1) (12)
其中,di表示用戶i對(duì)三個(gè)卸載目標(biāo)的可用性判決,0表示負(fù)收益或沒(méi)有權(quán)限卸載到此目標(biāo),1表示收益為正且有權(quán)限卸載。ui(x)為階躍函數(shù)。
在本發(fā)明的一些實(shí)施例中,所述接收到網(wǎng)絡(luò)側(cè)根據(jù)所述能耗收益和延時(shí)收益獲得的卸載決定矩陣包括:
根據(jù)各個(gè)用戶終端發(fā)送的能耗收益和延時(shí)收益,指定可行域S;
根據(jù)當(dāng)前網(wǎng)絡(luò)的負(fù)載信息獲得標(biāo)準(zhǔn)差負(fù)載參數(shù),同時(shí)根據(jù)所述用戶側(cè)過(guò)去卸載的信息獲得公平參數(shù);
根據(jù)能耗收益、延時(shí)收益和可行域,以及標(biāo)準(zhǔn)差負(fù)載參數(shù)和公平參數(shù),建立多目標(biāo)、多準(zhǔn)則優(yōu)化模型;
根據(jù)標(biāo)準(zhǔn)AHP算法,對(duì)優(yōu)化模型進(jìn)行求解得到卸載決定矩陣。
在本發(fā)明的一些實(shí)施例中,當(dāng)前負(fù)載信息計(jì)算為:
其中,Lcc,Lmc,Lfc分別是云計(jì)算服務(wù)器群,移動(dòng)邊緣計(jì)算服務(wù)器群和空閑移動(dòng)智能終端群的負(fù)載情況,用表示,W表示實(shí)際的工作量,Cap表示最大計(jì)算能力;
另外,根據(jù)用戶過(guò)去卸載的目標(biāo)信息,使用Jain公平指數(shù)來(lái)計(jì)算整個(gè)計(jì)算卸載過(guò)程中公平性,用QT-1∈(0,1]表示;其中,將歸一化公平變量設(shè)為:其中0表示該周期內(nèi)沒(méi)有對(duì)該用戶終端進(jìn)行卸載;對(duì)于用戶終端i,他的公平性取值因此根據(jù)Jain公平性公式為:
其中,QT為在本次卸載周期內(nèi)的公平指數(shù);通過(guò)指數(shù)平滑方法,得到綜合公平指數(shù):
Q=αqQT-1+(1-αq)QT
其中,αq為平滑系數(shù)。
在本發(fā)明的一些實(shí)施例中,所述建立如下多目標(biāo)、多準(zhǔn)則優(yōu)化模型:
s.t.
在本發(fā)明的一些實(shí)施例中,根據(jù)卸載判決消息,用戶實(shí)行代碼拆分,然后根據(jù)拆分后的代碼進(jìn)行卸載操作。
從上面所述可以看出,本發(fā)明提供的基于MEC和MCC的雙向選擇計(jì)算卸載方法,能夠綜合利用MCC和MEC的設(shè)備與計(jì)算、傳輸能力,并且為移動(dòng)終端提供多目標(biāo)的卸載選擇方案,不僅可以大大縮減任務(wù)的處理時(shí)間而且還可以最大限度的降低移動(dòng)設(shè)備的能耗。
附圖說(shuō)明
圖1為實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法用戶側(cè)的流程示意圖;
圖2為實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法的框架圖;
圖3為實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法網(wǎng)絡(luò)側(cè)的流程示意圖;
圖4為一個(gè)可參考實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法用戶側(cè)的流程示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參照附圖,對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。
需要說(shuō)明的是,本發(fā)明實(shí)施例中所有使用“第一”和“第二”的表述均是為了區(qū)分兩個(gè)相同名稱非相同的實(shí)體或者非相同的參量,可見(jiàn)“第一”“第二”僅為了表述的方便,不應(yīng)理解為對(duì)本發(fā)明實(shí)施例的限定,后續(xù)實(shí)施例對(duì)此不再一一說(shuō)明。
作為本發(fā)明的實(shí)施例,參閱圖1所示,為本發(fā)明實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法用戶側(cè)的流程示意圖。針對(duì)于用戶側(cè),所述基于MEC和MCC的雙向選擇計(jì)算卸載方法包括:
步驟101,當(dāng)檢測(cè)到運(yùn)算程序的計(jì)算量超過(guò)門限,向網(wǎng)絡(luò)側(cè)發(fā)送卸載所述運(yùn)算程序的請(qǐng)求。
作為實(shí)施例,檢測(cè)需要運(yùn)算的程序計(jì)算量fproc,如果超過(guò)預(yù)先設(shè)置的門限fthre,則向網(wǎng)絡(luò)側(cè)發(fā)送卸載所述運(yùn)算程序的請(qǐng)求。進(jìn)一步地,當(dāng)超過(guò)預(yù)先設(shè)置的門限fthre時(shí),可以判斷CSI(Channel Side Information,信道側(cè)信息)信道信息情況,若信道狀況允許用戶以大于中斷容量的速率傳輸則向網(wǎng)絡(luò)側(cè)發(fā)送卸載所述運(yùn)算程序的請(qǐng)求。更進(jìn)一步地,向網(wǎng)絡(luò)側(cè)發(fā)送卸載所述運(yùn)算程序的請(qǐng)求時(shí),可以開(kāi)啟周期性T匯報(bào)自身信息,準(zhǔn)備卸載計(jì)算程序。
作為一個(gè)優(yōu)選地實(shí)施例,用戶終端需要根據(jù)剩余電量相對(duì)于總電量的比例來(lái)判斷是否開(kāi)啟檢測(cè)運(yùn)算程序的計(jì)算量的進(jìn)程。具體來(lái)說(shuō),用戶終端統(tǒng)計(jì)剩余的電量ETre,并計(jì)算相對(duì)于總電量(ETall)的比例,當(dāng)所述比例大于預(yù)設(shè)的比例閾值時(shí),則可以開(kāi)啟檢測(cè)運(yùn)算程序的計(jì)算量的進(jìn)程。
步驟102,接收到網(wǎng)絡(luò)側(cè)根據(jù)該請(qǐng)求分配的可供卸載的序列。
在實(shí)施例中,用戶終端根據(jù)自身開(kāi)通的業(yè)務(wù)信息,發(fā)送給網(wǎng)絡(luò)側(cè)請(qǐng)求信息。也就是說(shuō),網(wǎng)絡(luò)側(cè)可以根據(jù)該用戶終端的身份驗(yàn)證協(xié)議,驗(yàn)證該用戶終端有向哪些目標(biāo)卸載的權(quán)限。進(jìn)一步地,網(wǎng)絡(luò)側(cè)根據(jù)該用戶終端開(kāi)通的服務(wù)和自身網(wǎng)絡(luò)能力,響應(yīng)該用戶終端的周期性匯報(bào)的信息,并且返回給所述用戶終端一個(gè)可供卸載序列。
優(yōu)選地,可供卸載序列可以包括(如圖2所示)云計(jì)算、移動(dòng)邊緣計(jì)算服務(wù)器、空閑移動(dòng)智能終端的可供卸載情況。本發(fā)明區(qū)別于現(xiàn)有技術(shù)中的獨(dú)立的云計(jì)算和移動(dòng)邊緣卸載方案,提出了卸載方案包括由云計(jì)算企業(yè)和運(yùn)營(yíng)商提供的云計(jì)算服務(wù)器(CC)、有運(yùn)營(yíng)商在接入網(wǎng)中部署的移動(dòng)邊緣計(jì)算服務(wù)器(EC)以及經(jīng)過(guò)安全認(rèn)證、授權(quán)的空閑移動(dòng)智能終端(FC)。網(wǎng)絡(luò)側(cè)根據(jù)終端開(kāi)通的服務(wù)和自身網(wǎng)絡(luò)能力,響應(yīng)用戶的周期性匯報(bào)消息,返回給用戶一個(gè)粗粒度可供卸載序列,即表示為:dp=(dcc,dec,dfc)dcc,dec,dfc∈{0,1}。
其中,dp為可供卸載集向量,表示終端可供卸載的服務(wù)單元種類集合。dcc表示云服務(wù)器集合是否能提供卸載,dec表示移動(dòng)邊緣計(jì)算服務(wù)器能否提供卸載服務(wù),dfc表示是否有智能終端集合可以分載計(jì)算量。這三個(gè)量都是二元量,用0,1表示,0表示不能卸載,1表示可以卸載。進(jìn)行此步篩選,可以踢除不具備資格的集合,降低下面流程的計(jì)算量。
步驟103,根據(jù)接收到的可供卸載的序列,計(jì)算本地能耗和卸載能耗,進(jìn)而計(jì)算每種可供卸載能耗收益并發(fā)送給網(wǎng)絡(luò)側(cè);同時(shí),計(jì)算本地運(yùn)算延時(shí),進(jìn)而計(jì)算每種可供卸載的延時(shí)與本地計(jì)算延時(shí)差并發(fā)送給網(wǎng)絡(luò)側(cè)。
在一個(gè)實(shí)施例中,對(duì)本地計(jì)算的程序而言,能耗是由CPU進(jìn)程運(yùn)行所產(chǎn)生的,可用如下公式確定:
其中,Eloc表示本地計(jì)算所需的能耗,cprog表示計(jì)算某個(gè)業(yè)務(wù)需要的CPU周期數(shù),floc表示本地CPU的速率,單位是周期/s,Ploc表示單位時(shí)間內(nèi)CPU的功耗。
然后,根據(jù)可供卸載的序列,分別計(jì)算序列中不同卸載目標(biāo)的能耗函數(shù),即卸載能耗。其功耗主要由發(fā)送到基站的發(fā)射功率決定,接受功率相比發(fā)送功率可以忽略不計(jì)。其他能耗不發(fā)生在終端上,也不需要從終端側(cè)考慮。因此,卸載時(shí)的用戶能耗可以如下表示:
其中,Q表示發(fā)送符號(hào)的協(xié)方差矩陣,在多發(fā)多收(Multiple-Input Multiple-Output,MIMO)中用來(lái)根據(jù)信道情況優(yōu)化發(fā)送矩陣,使得在好信道得到更高的發(fā)送功率,從而提升整體速率,Q的跡則表明終端的發(fā)射功率。DTk是用戶業(yè)務(wù)類型k所需要發(fā)送的比特?cái)?shù),在計(jì)算卸載過(guò)程中,不同卸載原理的DTk表示的內(nèi)容不同,有的可能是虛擬機(jī)配置和用戶輸入數(shù)據(jù),有的可能需要傳送整個(gè)用戶程序。ηT表示編碼系數(shù),因?yàn)楸景l(fā)明計(jì)算采用的是香濃容量計(jì)算公式,然而實(shí)際系統(tǒng)中由于信道編碼限制無(wú)法達(dá)到香濃容量的傳輸速率,因此使用η∈(0,1)表示實(shí)際編碼速率和理論速率的差距。H表示信道矩陣,是干擾加噪聲的協(xié)方差矩陣,表示干擾的功率。
另外,計(jì)算卸載與本地計(jì)算的能耗差別,由于三種卸載目標(biāo)的能耗是一樣的,只需計(jì)算一次卸載能耗。其中i表示終端用戶i的能耗差。如果ΔEi為正,表明計(jì)算卸載會(huì)給終端帶來(lái)一定的能耗收益,即降低了終端的能耗。
在另一個(gè)實(shí)施例中,計(jì)算本地計(jì)算程序所需的時(shí)間:
其中,tloc表示本地計(jì)算的延時(shí)。
同時(shí),計(jì)算卸載所需要的時(shí)間。由于本發(fā)明的卸載有三個(gè)卸載目標(biāo),而且三個(gè)卸載目標(biāo)的物理距離,傳輸能力都有差別,因此每一種卸載的傳輸延時(shí),不盡相同。下面將分三種情形介紹。
云計(jì)算場(chǎng)景下,卸載的總時(shí)間可以用以下公式表示:
tcc_off=tT+tR+tw+tprocess
tcc_off表示云計(jì)算卸載所需要的總延時(shí),它由四個(gè)部分組成,前兩個(gè)部分(tT,tR)分別是無(wú)線發(fā)送和無(wú)線接受的傳輸延時(shí)。在這里,本發(fā)明假設(shè)在卸載時(shí)間段內(nèi),信道、干擾并沒(méi)有明顯變化。由于收發(fā)采用的編碼方式有所區(qū)別,因此η值有所區(qū)別;此外,來(lái)回發(fā)送的數(shù)據(jù)是不一樣的,分別用DTk,DRk表示。tw是有線部分的傳輸延時(shí),Bbottle為瓶頸帶寬,tque是排隊(duì)延時(shí),和網(wǎng)絡(luò)的狀態(tài)相關(guān);tprop是傳播延時(shí),與物理距離相關(guān);hop表示到達(dá)云服務(wù)器所需要的跳數(shù),我們假設(shè)往返的路徑和網(wǎng)絡(luò)狀態(tài)在卸載過(guò)程中是不變的。tprocess為處理用戶程序所需要的時(shí)間,fcc是云計(jì)算服務(wù)器所能提供的CPU周期數(shù),這個(gè)值一般遠(yuǎn)大于終端自身的處理能力。
接入移動(dòng)邊緣計(jì)算服務(wù)器計(jì)算場(chǎng)景下,卸載的總時(shí)間可以用以下公式表示:
tmc_off=tT+tR+tprocess
其中,tT,tR與云計(jì)算中相似,由于MEC服務(wù)器一般部署于RAN中,因此有線鏈路的傳輸延時(shí)非常短,可以忽略不計(jì)。fmc是MEC服務(wù)器所能提供的CPU周期數(shù),這個(gè)值小于云計(jì)算服務(wù)器,大于終端自身CPU能力。
空閑移動(dòng)智能終端作為計(jì)算卸載目標(biāo)場(chǎng)景下,卸載的總時(shí)間可以用以下公式表示:
tfc_off=2(tT+tR)+tprocess
其中,tT,tR與云計(jì)算中相似,由于終端作為卸載目標(biāo)的傳輸是在同一個(gè)RAN內(nèi),所以還需要加上到卸載終端的傳輸延時(shí),一般認(rèn)為這個(gè)傳輸延時(shí)和終端本身是相近的。ffc是其他職能終端所能提供的CPU周期數(shù),與用戶本身能力相近。因此,在終端之間的卸載不會(huì)有太多的時(shí)間收益,主要是能耗的收益和在重負(fù)載網(wǎng)絡(luò)下的卸載補(bǔ)充。
最后,計(jì)算卸載延時(shí)與本地計(jì)算延時(shí)差別,由于三種卸載目標(biāo)的延時(shí)各不相同,延時(shí)差需要分別計(jì)算,即:
其中,Δti表示終端用戶i的延時(shí)差。如果Δti為正,表明計(jì)算卸載會(huì)給終端帶來(lái)一定的時(shí)間收益,即降低了終端的延時(shí),最終的結(jié)果是個(gè)1*3向量。
在一個(gè)優(yōu)選地實(shí)施例中,在用戶終端向網(wǎng)絡(luò)側(cè)發(fā)送能耗收益和延時(shí)差(延時(shí)收益)之前,可以進(jìn)行預(yù)判決。也就是說(shuō),用戶終端對(duì)計(jì)算得到的能耗收益、延時(shí)收益進(jìn)行預(yù)判決,并增加自身對(duì)兩個(gè)收益函數(shù)的主客觀偏好。能耗收益參數(shù)表現(xiàn)為剩余的電量越低,越傾向于獲得能耗收益的卸載方案。而根據(jù)物理心理學(xué)方法和業(yè)務(wù)種類,對(duì)延時(shí)的收益函數(shù)進(jìn)行修改,充分考慮了用戶對(duì)計(jì)算卸載的感受。本發(fā)明所述的能耗收益、延時(shí)收益兩個(gè)參數(shù),這兩個(gè)參數(shù)可正可負(fù),對(duì)用戶終端而言,只有兩個(gè)參數(shù)為正,才對(duì)用戶終端有價(jià)值,通過(guò)兩個(gè)參數(shù)的相加,進(jìn)行預(yù)判決。
進(jìn)一步地,用戶終端在能耗方面,為了增加用戶終端的生存時(shí)間,一般認(rèn)為在用戶終端本身電池剩余量較低時(shí),更傾向于將高能耗進(jìn)程卸載出去,其數(shù)學(xué)公式描述如下:
其中,gei為修訂之后的能耗收益參數(shù);βe為用戶的主觀偏好程度系數(shù),其值由用戶終端自己設(shè)定,優(yōu)選值為βe∈(0,2)。為客觀偏好系數(shù),由剩余電量和總電量的比值αTe決定。
更進(jìn)一步地,用戶終端會(huì)根據(jù)物理心理學(xué)方法和業(yè)務(wù)種類,對(duì)延時(shí)收益函數(shù)進(jìn)行修改。心理物理學(xué)是研究心物關(guān)系并使之?dāng)?shù)量化的一個(gè)心理學(xué)分支,是對(duì)物理刺激和它引起的感覺(jué)進(jìn)行數(shù)量化研究的心理學(xué)領(lǐng)域。本發(fā)明根據(jù)將韋伯菲齊納公式引入用戶終端對(duì)延遲的偏好影響。同時(shí)根據(jù)不同的業(yè)務(wù)設(shè)置不同的業(yè)務(wù)系數(shù),其具體公式描述如下:
其中,gti為修訂之后的延時(shí)收益參數(shù);βtk為業(yè)務(wù)的偏好程度系數(shù),k表示不同的業(yè)務(wù)種類,流媒體等實(shí)時(shí)業(yè)務(wù)對(duì)該系數(shù)要求較高,科學(xué)計(jì)算類業(yè)務(wù)對(duì)此要求較低,優(yōu)選值為βtk∈(0,2);sgn(Δti)為符號(hào)函數(shù)。三個(gè)卸載目標(biāo)要分別計(jì)算延時(shí)收益gti=(gt_cci,gt_mci,gt_fci)。這個(gè)公式表明,刺激量按幾何級(jí)數(shù)增加而感覺(jué)量則按算術(shù)級(jí)數(shù)增加,由于延時(shí)不僅僅是評(píng)價(jià)QoS的指標(biāo),更是用戶實(shí)際感受到的指標(biāo),因此這里引入心理物理學(xué)的評(píng)價(jià)方法充分考慮了用戶對(duì)計(jì)算卸載的感受。從公式來(lái)看,當(dāng)Δti的值達(dá)到一定程度的時(shí)候,對(duì)用戶的實(shí)際感受影響是越來(lái)越低的。因此,應(yīng)用這個(gè)公式可以避免將大部分的計(jì)算任務(wù)都分配到MEC服務(wù)器上,提升了網(wǎng)絡(luò)的整體效能。
還有,用戶終端得到的這兩個(gè)參數(shù),可正可負(fù),對(duì)用戶而言,只有最終的收益為正,才對(duì)用戶有價(jià)值,因此終端決定卸載目標(biāo)可以用如下表達(dá)式說(shuō)明:
di=dpi∩ui(git+gie),d∈(0,1) (12)
其中,di表示用戶i對(duì)目前三個(gè)卸載目標(biāo)的可用性判決,0表示負(fù)收益或沒(méi)有權(quán)限卸載到此目標(biāo),1表示收益為正且有權(quán)限卸載。ui(x)為階躍函數(shù)。
計(jì)算完成后,用戶將di,git,gie發(fā)送給網(wǎng)絡(luò)側(cè)等待網(wǎng)絡(luò)側(cè)的下一步判決。
步驟104,接收到網(wǎng)絡(luò)側(cè)根據(jù)所述能耗收益和延時(shí)收益獲得的卸載決定矩陣,回送的卸載判決消息。
在實(shí)施例中,網(wǎng)絡(luò)側(cè)根據(jù)各個(gè)用戶終端發(fā)送的兩個(gè)參數(shù),指定可行域。同時(shí),網(wǎng)絡(luò)側(cè)通過(guò)核心網(wǎng)網(wǎng)元和移動(dòng)邊緣計(jì)算服務(wù)器(MEC)需要收集網(wǎng)絡(luò)側(cè)信息,主要包括當(dāng)前網(wǎng)絡(luò)的負(fù)載信息和用戶終端過(guò)去卸載的目標(biāo)信息,并使用Jain公平指數(shù)來(lái)計(jì)算整個(gè)計(jì)算卸載過(guò)程中公平性。然后,通過(guò)以上的數(shù)據(jù)對(duì)網(wǎng)絡(luò)側(cè)卸載問(wèn)題進(jìn)行優(yōu)化建模,然后通過(guò)層次分析法,定性與定量相結(jié)合,能處理優(yōu)化建模不能解決的NP-hard問(wèn)題。依據(jù)得到卸載決定矩陣,分別回送判決消息給終端用戶。
在一個(gè)較佳地實(shí)施例中,網(wǎng)絡(luò)側(cè)根據(jù)各個(gè)用戶終端發(fā)送的參數(shù),指定可行域S,該可行域S是一個(gè)3*s的0-1二元矩陣,s表示需要卸載的用戶數(shù)量。
網(wǎng)絡(luò)側(cè)通過(guò)核心網(wǎng)網(wǎng)元和MEC服務(wù)器需要收集網(wǎng)絡(luò)側(cè)信息,主要包括當(dāng)前網(wǎng)絡(luò)的負(fù)載信息Ls和用戶過(guò)去卸載的目標(biāo)信息QT-1。其中,當(dāng)前負(fù)載信息的計(jì)算如下所示:
其中,Lcc,Lmc,Lfc分別是云計(jì)算服務(wù)器群,移動(dòng)邊緣計(jì)算服務(wù)器群和空閑移動(dòng)智能終端群的負(fù)載情況,用表示,W表示實(shí)際的工作量,Cap表示最大計(jì)算能力。由于空閑移動(dòng)智能終端作為卸載目標(biāo)時(shí)時(shí)一個(gè)個(gè)個(gè)體,因此為了簡(jiǎn)化計(jì)算將整個(gè)空閑移動(dòng)智能終端服務(wù)卸載群落當(dāng)成一個(gè)正??创,N,V分別表示云計(jì)算服務(wù)器、移動(dòng)邊緣計(jì)算服務(wù)器和空閑移動(dòng)智能終端的數(shù)量。表示三種情況下負(fù)載的均值。當(dāng)有新的卸載請(qǐng)求被接收后,將改變Lcc,Lmc,Lfc的值,從而改變Ls。負(fù)載均衡是提供了一種廉價(jià)有效透明的方法擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性,而Ls代表不均衡性,因此它的值應(yīng)該越小越好。
根據(jù)用戶過(guò)去卸載的目標(biāo)信息,可以使用Jain公平指數(shù)來(lái)計(jì)算整個(gè)計(jì)算卸載過(guò)程中公平性,用QT-1∈(0,1]表示。在默認(rèn)情況下,可以認(rèn)為MEC服務(wù)器可以提供最好的資源服務(wù),云服務(wù)器次之,最后是其他空閑移動(dòng)智能終端。本發(fā)明將他們歸一化公平變量設(shè)為:其中0表示該周期內(nèi)沒(méi)有對(duì)該用戶終端進(jìn)行卸載。對(duì)于用戶終端i,他的公平性取值因此根據(jù)Jain公平性公式可得:
其中,QT為在本次卸載周期內(nèi)的公平指數(shù)。通過(guò)指數(shù)平滑方法,可以得到綜合公平指數(shù):
Q=αqQT-1+(1-αq)QT (15)
其中,αq為平滑系數(shù),優(yōu)選值為0.5。
因此,根據(jù)以上步驟獲取的終端參數(shù)和網(wǎng)絡(luò)側(cè)參數(shù),可以建立如下多目標(biāo)、多準(zhǔn)則優(yōu)化模型:
s.t.
其中,總的能耗收益函數(shù)和總的延時(shí)收益函數(shù)分別是每個(gè)用戶終端的能耗收益函數(shù)結(jié)果之和以及延時(shí)收益函數(shù)結(jié)果之和,即Q是公平性指標(biāo)取值范圍是(0,1],越接近1表示公平性越好。Ls是負(fù)載情況的標(biāo)準(zhǔn)差,應(yīng)該越小越負(fù)載越均衡,因此本發(fā)明采用標(biāo)準(zhǔn)差的倒數(shù)。限制條件中,第一個(gè)限制條件是對(duì)發(fā)送功率的限制,PT是發(fā)射的總功率;第二個(gè)限制條件來(lái)源于終端,要求對(duì)于終端的收益是正的;第三個(gè)限制條件是負(fù)載的限制,卸載的總?cè)蝿?wù)量不能超過(guò)服務(wù)的負(fù)載能力;第四個(gè)限制條件是可行域的限制,是一個(gè)0-1矩陣,表明網(wǎng)絡(luò)側(cè)判決只可以在S中進(jìn)行選擇;第五個(gè)限制條件是帶寬,在傳輸?shù)臅r(shí)候使用的帶寬不能超過(guò)基站提供的總帶寬。綜上來(lái)看,這個(gè)問(wèn)題是一個(gè)NP-hard問(wèn)題,然而需要在有限的時(shí)間內(nèi)穩(wěn)定的求解,本發(fā)明實(shí)施例采取復(fù)雜度較低的AHP算法求解,可以迅速地得出結(jié)果,這對(duì)降低卸載的總延時(shí)也是有幫助的。
根據(jù)AHP算法,本發(fā)明將每個(gè)用戶終端最終的選擇卸載目標(biāo)矩陣作為目標(biāo)層目標(biāo)O(choose);將Q,Gt,Ge四個(gè)指標(biāo)作為準(zhǔn)則層的判斷依據(jù),將每一個(gè)用戶終端的具體選擇作為方案層方案。其次,我們構(gòu)造兩兩比較判斷矩陣,計(jì)算單一準(zhǔn)則下元素的相對(duì)重要性。接下來(lái),根據(jù)一致矩陣法,檢驗(yàn)判斷思維的邏輯一致性,當(dāng)一致性比率小于隨機(jī)一致性指標(biāo)時(shí),則認(rèn)可當(dāng)前的結(jié)果。最后,確定每層所有因素對(duì)于總目標(biāo)相對(duì)重要性的排序權(quán)值過(guò)程,進(jìn)行層次總排序。這一過(guò)程是從最高層到最底層依次進(jìn)行的。對(duì)于最高層而言,其層次單排序的結(jié)果也就是總排序的結(jié)果。本發(fā)明采取的AHP算法是標(biāo)準(zhǔn)的AHP算法,目的是快速的,穩(wěn)定的得到次優(yōu)的結(jié)果。
最后,根據(jù)AHP算法得出的結(jié)果,得到卸載決定矩陣S',這是一個(gè)3*s'的矩陣,每一列至多有一個(gè)元素是1,其余元素是0。而1的那一行就是卸載的目標(biāo)。網(wǎng)絡(luò)側(cè)依據(jù)決定矩陣S',分別回送判決消息給終端用戶。
步驟105,根據(jù)卸載判決消息進(jìn)行卸載。
在實(shí)施例中,根據(jù)卸載判決消息,用戶實(shí)行代碼拆分,然后根據(jù)拆分后的代碼進(jìn)行卸載操作。具體來(lái)說(shuō),可以是將程序運(yùn)行的數(shù)據(jù)和運(yùn)行邏輯分離,只把運(yùn)行所需的數(shù)據(jù)卸載到服務(wù)器端,服務(wù)器端通過(guò)共享的代碼邏輯,運(yùn)行用戶的數(shù)據(jù),得到用戶所需的結(jié)果。需要說(shuō)明的是,當(dāng)網(wǎng)絡(luò)負(fù)載較重或者用戶較多時(shí),可能會(huì)有用戶無(wú)法得到卸載目標(biāo),即他的卸載向量是一個(gè)0向量,此時(shí)無(wú)論終端的決定是什么,都不進(jìn)行卸載操作,終端本地處理程序。
在本發(fā)明實(shí)施例的另一方面,參閱圖3所示,為本發(fā)明實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法網(wǎng)絡(luò)側(cè)的流程示意圖。針對(duì)于網(wǎng)絡(luò)側(cè),所述基于MEC和MCC的雙向選擇計(jì)算卸載方法包括:
步驟301,獲得用戶側(cè)發(fā)送的卸載運(yùn)算程序的請(qǐng)求。
步驟302,根據(jù)該請(qǐng)求分配的可供卸載的序列dp=(dcc,dec,dfc)dcc,dec,dfc∈{0,1},并發(fā)送給用戶側(cè)。
作為實(shí)施例,網(wǎng)絡(luò)側(cè)根據(jù)終端開(kāi)通的服務(wù)和自身網(wǎng)絡(luò)能力,響應(yīng)用戶的周期性匯報(bào)消息,返回給用戶一個(gè)粗粒度可供卸載序列,即表示為:dp=(dcc,dec,dfc)dcc,dec,dfc∈{0,1}。
其中,dp為可供卸載集向量,表示終端可供卸載的服務(wù)單元種類集合。dcc表示云服務(wù)器集合是否能提供卸載,dec表示移動(dòng)邊緣計(jì)算服務(wù)器能否提供卸載服務(wù),dfc表示是否有智能終端集合可以分載計(jì)算量。
步驟303,接收到用戶側(cè)發(fā)送的能耗收益和延時(shí)收益。
步驟304,根據(jù)各個(gè)用戶終端發(fā)送的能耗收益和延時(shí)收益,指定可行域S。
在實(shí)施例中,根據(jù)各個(gè)用戶終端發(fā)送的參數(shù),指定可行域S,該可行域S是一個(gè)3*s的0-1二元矩陣,s表示需要卸載的用戶數(shù)量。
步驟305,根據(jù)當(dāng)前網(wǎng)絡(luò)的負(fù)載信息獲得標(biāo)準(zhǔn)差負(fù)載參數(shù),同時(shí)根據(jù)所述用戶側(cè)過(guò)去卸載的信息獲得公平參數(shù)。具體的實(shí)施過(guò)程包括:
當(dāng)前負(fù)載信息的計(jì)算如下所示:
其中,Lcc,Lmc,Lfc分別是云計(jì)算服務(wù)器群,移動(dòng)邊緣計(jì)算服務(wù)器群和空閑移動(dòng)智能終端群的負(fù)載情況,用表示,W表示實(shí)際的工作量,Cap表示最大計(jì)算能力。由于空閑移動(dòng)智能終端作為卸載目標(biāo)時(shí)時(shí)一個(gè)個(gè)個(gè)體,因此為了簡(jiǎn)化計(jì)算將整個(gè)空閑移動(dòng)智能終端服務(wù)卸載群落當(dāng)成一個(gè)正??创,N,V分別表示云計(jì)算服務(wù)器、移動(dòng)邊緣計(jì)算服務(wù)器和空閑移動(dòng)智能終端的數(shù)量。表示三種情況下負(fù)載的均值。當(dāng)有新的卸載請(qǐng)求被接收后,將改變Lcc,Lmc,Lfc的值,從而改變Ls。
另外,根據(jù)用戶過(guò)去卸載的目標(biāo)信息,可以使用Jain公平指數(shù)來(lái)計(jì)算整個(gè)計(jì)算卸載過(guò)程中公平性,用QT-1∈(0,1]表示。在默認(rèn)情況下,可以認(rèn)為MEC服務(wù)器可以提供最好的資源服務(wù),云服務(wù)器次之,最后是其他空閑移動(dòng)智能終端。本發(fā)明將他們歸一化公平變量設(shè)為:其中0表示該周期內(nèi)沒(méi)有對(duì)該用戶終端進(jìn)行卸載。對(duì)于用戶終端i,他的公平性取值因此根據(jù)Jain公平性公式可得:
其中,QT為在本次卸載周期內(nèi)的公平指數(shù)。通過(guò)指數(shù)平滑方法,可以得到綜合公平指數(shù):
Q=αqQT-1+(1-αq)QT (15)
其中,αq為平滑系數(shù),優(yōu)選值為0.5。
步驟306,根據(jù)能耗收益、延時(shí)收益和可行域,以及標(biāo)準(zhǔn)差負(fù)載參數(shù)和公平參數(shù),建立多目標(biāo)、多準(zhǔn)則優(yōu)化模型。
其中,建立如下多目標(biāo)、多準(zhǔn)則優(yōu)化模型:
s.t.
步驟307,根據(jù)標(biāo)準(zhǔn)AHP算法,對(duì)優(yōu)化模型進(jìn)行求解得到卸載決定矩陣。
在實(shí)施例中,根據(jù)AHP算法,本發(fā)明將每個(gè)用戶終端最終的選擇卸載目標(biāo)矩陣作為目標(biāo)層目標(biāo)O(choose);將Q,Gt,Ge四個(gè)指標(biāo)作為準(zhǔn)則層的判斷依據(jù),將每一個(gè)用戶終端的具體選擇作為方案層方案。其次,我們構(gòu)造兩兩比較判斷矩陣,計(jì)算單一準(zhǔn)則下元素的相對(duì)重要性。
然后,根據(jù)一致矩陣法,檢驗(yàn)判斷思維的邏輯一致性,當(dāng)一致性比率小于隨機(jī)一致性指標(biāo)時(shí),則認(rèn)可當(dāng)前的結(jié)果。最后,確定每層所有因素對(duì)于總目標(biāo)相對(duì)重要性的排序權(quán)值過(guò)程,進(jìn)行層次總排序。這一過(guò)程是從最高層到最底層依次進(jìn)行的。對(duì)于最高層而言,其層次單排序的結(jié)果也就是總排序的結(jié)果。本發(fā)明采取的AHP算法是標(biāo)準(zhǔn)的AHP算法,目的是快速的,穩(wěn)定的得到次優(yōu)的結(jié)果。
步驟308,根據(jù)卸載決定矩陣,分別回送判決消息給用戶側(cè)的每個(gè)終端用戶。
其中,根據(jù)AHP算法得出的結(jié)果,得到卸載決定矩陣S',這是一個(gè)3*s'的矩陣,每一列至多有一個(gè)元素是1,其余元素是0。而1的那一行就是卸載的目標(biāo)。網(wǎng)絡(luò)側(cè)依據(jù)決定矩陣S',分別回送判決消息給終端用戶。
參閱如圖4所示,為本發(fā)明一個(gè)可參考實(shí)施例中基于MEC和MCC的雙向選擇計(jì)算卸載方法用戶側(cè)的流程示意圖。針對(duì)于用戶側(cè),所述基于MEC和MCC的雙向選擇計(jì)算卸載方法包括:
步驟401,當(dāng)所述用戶終端剩余電量相對(duì)于總電量的比例大于預(yù)設(shè)的比例閾值時(shí),則可以開(kāi)啟檢測(cè)運(yùn)算程序的計(jì)算量的進(jìn)程。
步驟402,當(dāng)運(yùn)算的程序計(jì)算量fproc超過(guò)預(yù)先設(shè)置的門限時(shí),開(kāi)啟周期性向網(wǎng)絡(luò)側(cè)發(fā)送卸載所述運(yùn)算程序的請(qǐng)求。
步驟403,接收到網(wǎng)絡(luò)側(cè)根據(jù)該請(qǐng)求分配的可供卸載的序列dp=(dcc,dec,dfc)dcc,dec,dfc∈{0,1}。
步驟404,根據(jù)接收到的可供卸載的序列,計(jì)算本地能耗和卸載能耗,進(jìn)而計(jì)算每種可供卸載能耗收益,執(zhí)行步驟406。
在實(shí)施例中,對(duì)本地計(jì)算的程序而言,能耗是由CPU進(jìn)程運(yùn)行所產(chǎn)生的,可用如下公式確定:
其中,Eloc表示本地計(jì)算所需的能耗,cprog表示計(jì)算某個(gè)業(yè)務(wù)需要的CPU周期數(shù),floc表示本地CPU的速率,單位是周期/s,Ploc表示單位時(shí)間內(nèi)CPU的功耗。
然后,根據(jù)可供卸載的序列,分別計(jì)算序列中不同卸載目標(biāo)的能耗函數(shù),即卸載能耗。因此,卸載時(shí)的用戶能耗可以如下表示:
其中,Q表示發(fā)送符號(hào)的協(xié)方差矩陣;DTk是用戶業(yè)務(wù)類型k所需要發(fā)送的比特?cái)?shù);ηT表示編碼系數(shù);H表示信道矩陣,是干擾加噪聲的協(xié)方差矩陣,表示干擾的功率。
另外,計(jì)算卸載與本地計(jì)算的能耗差別,由于三種卸載目標(biāo)的能耗是一樣的,只需計(jì)算一次卸載能耗。其中i表示終端用戶i的能耗差。如果ΔEi為正,表明計(jì)算卸載會(huì)給終端帶來(lái)一定的能耗收益,即降低了終端的能耗。
步驟405,根據(jù)接收到的可供卸載的序列,計(jì)算本地運(yùn)算延時(shí),進(jìn)而計(jì)算每種可供卸載的延時(shí)與本地計(jì)算延時(shí)差,執(zhí)行步驟406。
作為實(shí)施例,計(jì)算本地計(jì)算程序所需的時(shí)間:
其中,tloc表示本地計(jì)算的延時(shí)。
同時(shí),計(jì)算卸載所需要的時(shí)間。由于本發(fā)明的卸載有三個(gè)卸載目標(biāo),而且三個(gè)卸載目標(biāo)的物理距離,傳輸能力都有差別,因此每一種卸載的傳輸延時(shí),不盡相同。下面將分三種情形介紹。
云計(jì)算場(chǎng)景下,卸載的總時(shí)間可以用以下公式表示:
tcc_off=tT+tR+tw+tprocess
其中,tcc_off表示云計(jì)算卸載所需要的總延時(shí);tw是有線部分的傳輸延時(shí);Bbottle為瓶頸帶寬;tque是排隊(duì)延時(shí),和網(wǎng)絡(luò)的狀態(tài)相關(guān);tprop是傳播延時(shí),與物理距離相關(guān);hop表示到達(dá)云服務(wù)器所需要的跳數(shù);tprocess為處理用戶程序所需要的時(shí)間,fcc是云計(jì)算服務(wù)器所能提供的CPU周期數(shù)。
接入移動(dòng)邊緣計(jì)算服務(wù)器計(jì)算場(chǎng)景下,卸載的總時(shí)間可以用以下公式表示:
tmc_off=tT+tR+tprocess
其中,tT,tR與云計(jì)算中相似;fmc是MEC服務(wù)器所能提供的CPU周期數(shù)。
空閑移動(dòng)智能終端作為計(jì)算卸載目標(biāo)場(chǎng)景下,卸載的總時(shí)間可以用以下公式表示:
tfc_off=2(tT+tR)+tprocess
其中,tT,tR與云計(jì)算中相似;ffc是其他職能終端所能提供的CPU周期數(shù)。
最后,計(jì)算卸載延時(shí)與本地計(jì)算延時(shí)差別,由于三種卸載目標(biāo)的延時(shí)各不相同,延時(shí)差需要分別計(jì)算,即:
步驟406,增加自身對(duì)兩個(gè)收益函數(shù)的主客觀偏好,對(duì)計(jì)算得到的能耗收益、延時(shí)收益進(jìn)行預(yù)判決,并然后發(fā)送給網(wǎng)絡(luò)側(cè)。具體的實(shí)施過(guò)程包括:
用戶終端在能耗方面,為了增加用戶終端的生存時(shí)間,一般認(rèn)為在用戶終端本身電池剩余量較低時(shí),更傾向于將高能耗進(jìn)程卸載出去,其數(shù)學(xué)公式描述如下:
其中,gei為修訂之后的能耗收益參數(shù);βe為用戶的主觀偏好程度系數(shù),其值由用戶終端自己設(shè)定,優(yōu)選值為βe∈(0,2)。為客觀偏好系數(shù),由剩余電量和總電量的比值αTe決定。
根據(jù)將韋伯菲齊納公式引入用戶終端對(duì)延遲的偏好影響。同時(shí)根據(jù)不同的業(yè)務(wù)設(shè)置不同的業(yè)務(wù)系數(shù),其具體公式描述如下:
其中,gti為修訂之后的延時(shí)收益參數(shù);βtk為業(yè)務(wù)的偏好程度系數(shù),k表示不同的業(yè)務(wù)種類,流媒體等實(shí)時(shí)業(yè)務(wù)對(duì)該系數(shù)要求較高,科學(xué)計(jì)算類業(yè)務(wù)對(duì)此要求較低,優(yōu)選值為βtk∈(0,2);sgn(Δti)為符號(hào)函數(shù)。三個(gè)卸載目標(biāo)要分別計(jì)算延時(shí)收益gti=(gt_cci,gt_mci,gt_fci)。
還有,用戶終端得到的這兩個(gè)參數(shù),可正可負(fù),對(duì)用戶而言只有最終的收益為正,才有價(jià)值。因此,決定卸載目標(biāo)可以用如下表達(dá)式說(shuō)明:
di=dpi∩ui(git+gie),d∈(0,1) (12)
其中,di表示用戶i對(duì)三個(gè)卸載目標(biāo)的可用性判決,0表示負(fù)收益或沒(méi)有權(quán)限卸載到此目標(biāo),1表示收益為正且有權(quán)限卸載。ui(x)為階躍函數(shù)。
計(jì)算完成后,用戶將di,git,gie發(fā)送給網(wǎng)絡(luò)側(cè)。
步驟407,接收到網(wǎng)絡(luò)側(cè)根據(jù)預(yù)判決后的能耗收益和延時(shí)收益獲得的卸載決定矩陣,回送的卸載判決消息。
步驟408,根據(jù)卸載判決消息,用戶實(shí)行代碼拆分,然后根據(jù)拆分后的代碼進(jìn)行卸載操作。
綜上所述,本發(fā)明提供的一種基于MEC和MCC的雙向選擇計(jì)算卸載方法,創(chuàng)造性地采用了基于MCC和MEC的雙向選擇方案,通過(guò)同時(shí)引入云計(jì)算和移動(dòng)邊緣計(jì)算的能力,使用戶的卸載目標(biāo)多遠(yuǎn)化;并且,充分利用了網(wǎng)絡(luò)的基礎(chǔ)設(shè)施和計(jì)算資源,不僅可以大大縮減任務(wù)的處理時(shí)間,還可以最大限度的降低移動(dòng)設(shè)備的能耗;而且,增強(qiáng)了網(wǎng)絡(luò)的計(jì)算卸載能力;與此同時(shí),根據(jù)用戶應(yīng)用的不同業(yè)務(wù),為終端提供額外的偏好函數(shù),使得卸載決定中體現(xiàn)出終端用戶的卸載的偏好,提升了用戶的服務(wù)體驗(yàn);另外,根據(jù)網(wǎng)絡(luò)的現(xiàn)有狀態(tài),使得網(wǎng)絡(luò)的整體性能得到改善,增加了網(wǎng)絡(luò)的穩(wěn)定性;最后,整個(gè)所述的基于MEC和MCC的雙向選擇計(jì)算卸載方法緊湊、易于控制,具有廣泛、重大的推廣意義。
所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:以上任何實(shí)施例的討論僅為示例性的,并非旨在暗示本公開(kāi)的范圍(包括權(quán)利要求)被限于這些例子;在本發(fā)明的思路下,以上實(shí)施例或者不同實(shí)施例中的技術(shù)特征之間也可以進(jìn)行組合,步驟可以以任意順序?qū)崿F(xiàn),并存在如上所述的本發(fā)明的不同方面的許多其它變化,為了簡(jiǎn)明它們沒(méi)有在細(xì)節(jié)中提供。
本發(fā)明的實(shí)施例旨在涵蓋落入所附權(quán)利要求的寬泛范圍之內(nèi)的所有這樣的替換、修改和變型。因此,凡在本發(fā)明的精神和原則之內(nèi),所做的任何省略、修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。