本發(fā)明涉及一種基于強化學習的低軌衛(wèi)星星間計算卸載與資源分配方法,屬于衛(wèi)星通信。
背景技術(shù):
1、近年來,隨著衛(wèi)星通信技術(shù)的飛速發(fā)展和低軌衛(wèi)星網(wǎng)絡(luò)(low?earth?orbit,?leo)的迅速部署,低軌衛(wèi)星已成為全球互聯(lián)網(wǎng)覆蓋和增強地面通信能力的重要手段。低軌衛(wèi)星因其軌道高度較低(通常在300公里至2000公里之間),具有較低的通信延遲和更高的數(shù)據(jù)傳輸速率。然而,低軌衛(wèi)星也面臨著資源有限、計算能力受限以及頻繁切換等挑戰(zhàn),這對任務(wù)的計算卸載和資源分配提出了更高的要求。
2、在低軌衛(wèi)星網(wǎng)絡(luò)中,星間計算卸載(inter-satellite?computation?offloading)是指將計算任務(wù)從一個衛(wèi)星卸載到另一個衛(wèi)星或地面站進行處理。這種方法可以充分利用星座中各衛(wèi)星的計算資源,提高整體計算效率,降低延遲,進而提升服務(wù)質(zhì)量。然而,如何在動態(tài)變化的網(wǎng)絡(luò)環(huán)境中高效地進行計算任務(wù)的卸載和資源分配,是一個復(fù)雜而具有挑戰(zhàn)性的問題。
3、傳統(tǒng)的方法通常依賴于預(yù)定義的調(diào)度策略和資源分配算法,這些方法在面對動態(tài)變化和不確定性的網(wǎng)絡(luò)環(huán)境時往往表現(xiàn)不佳,存在計算資源的利用率較低,任務(wù)的執(zhí)行時間較長、能耗高的問題。
4、上述問題是在基于強化學習的低軌衛(wèi)星星間計算卸載與資源分配應(yīng)當予以考慮并解決的問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的是提供一種基于強化學習的低軌衛(wèi)星星間計算卸載與資源分配方法解決現(xiàn)有技術(shù)中存在的任務(wù)的執(zhí)行時間較長、能耗高,計算資源的利用率有待提高的問題。
2、本發(fā)明的技術(shù)解決方案是:
3、一種基于強化學習的低軌衛(wèi)星星間計算卸載與資源分配方法,包括以下步驟,
4、s1、進行可用衛(wèi)星節(jié)點篩選:本地衛(wèi)星收到任務(wù)時,向云中心發(fā)送信息,云中心節(jié)點向可用衛(wèi)星發(fā)出詢問并接收可用衛(wèi)星信息包括每個可用衛(wèi)星的可用計算資源、在前設(shè)定期限內(nèi)故障的次數(shù)以及與本地衛(wèi)星之間的跳數(shù),然后根據(jù)可用衛(wèi)星信息來進行篩選,選擇符合設(shè)定條件的n個邊緣衛(wèi)星,加入邊緣衛(wèi)星群組;
5、s2、進行優(yōu)化建模:建立系統(tǒng)模型包括任務(wù)模型與計算模型,通過任務(wù)模型與計算模型,得到與卸載決策和計算資源分配的相關(guān)的優(yōu)化問題,并將優(yōu)化問題進行馬爾可夫決策過程建模即mdp建模,得到mdp模型包括狀態(tài)、動作和獎勵三個部分;
6、s3、使用深度確定性策略梯度算法即ddpg算法進行聯(lián)合求解:將獲得的任務(wù)信息、任務(wù)隊列狀態(tài)和邊緣衛(wèi)星節(jié)點信息作為輸入,在訓練階段,對ddpg神經(jīng)網(wǎng)絡(luò)進行訓練,得到訓練后的ddpg神經(jīng)網(wǎng)絡(luò)模型;在測試階段,最終通過訓練后的ddpg神經(jīng)網(wǎng)絡(luò)模型輸出最優(yōu)卸載策略和最優(yōu)計算資源分配。
7、進一步地,步驟s1中,選擇符合設(shè)定條件的n個邊緣衛(wèi)星,具體為,本地衛(wèi)星到邊緣衛(wèi)星所需的跳數(shù)hopj≤本地衛(wèi)星到邊緣衛(wèi)星的最大跳數(shù)限制hopmax,且邊緣衛(wèi)星j在前設(shè)定期限內(nèi)發(fā)生故障的平均次數(shù)σj≤邊緣衛(wèi)星近期發(fā)生故障的最大次數(shù)限制σmax。
8、進一步地,步驟s2中,建立系統(tǒng)模型,具體為,
9、s21、任務(wù)模型中將接收到的總?cè)蝿?wù)進行分割,得到m個子任務(wù),得到任務(wù)信息 c={ c 1..., c i,... c m},其中, c i為子任務(wù) i的信息,1≤ i≤ m,每個子任務(wù) i的信息由兩個參數(shù)組成的元組來表示: c i=< d i, c i>,其中, d i表示子任務(wù) i的數(shù)據(jù)量, c i表示完成子任務(wù) i需要的周期數(shù);
10、s22、計算模型包含本地計算模型與卸載計算模型,
11、本地計算模型包括子任務(wù)i在本地執(zhí)行時的本地計算時延、本地計算能耗 e i0 loc=κ( f? l) 2 c i與本地可信值 p i0? loc,其中, f? l為本地計算能力,κ為能量系數(shù), p i0? loc為常數(shù);
12、卸載計算模型包括子任務(wù)i卸載到邊緣衛(wèi)星j進行計算的卸載傳輸時延、卸載傳播時延、卸載計算時延、卸載傳輸能耗、卸載計算能耗、卸載可信值,其中, vij表示星間傳輸速率,l表示相鄰兩顆衛(wèi)星之間的距離,c為光速,為第 j個邊緣衛(wèi)星分配給子任務(wù) i的計算能力,為本地衛(wèi)星到邊緣衛(wèi)星之間的傳輸功率,x為本地衛(wèi)星到第 j個邊緣衛(wèi)星的最小跳數(shù),e為指數(shù)函數(shù);假設(shè)節(jié)點出現(xiàn)故障的概率服從參數(shù)為的泊松分布,定義卸載可信值為在子任務(wù) i處理時間間隔[0,t]內(nèi)邊緣衛(wèi)星節(jié)點 j上沒有發(fā)生故障即p=0的概率值。
13、進一步地,步驟s2中,建立優(yōu)化問題的目標函數(shù)為:
14、,
15、其中, a為所有任務(wù)的卸載決策集合,其由優(yōu)化后的 aij構(gòu)成, f為邊緣衛(wèi)星給各任務(wù)分配的計算資源集合,其由優(yōu)化后的 fij構(gòu)成,ω1、ω2、ω3分別表示為時延的權(quán)重因子、能耗的權(quán)重因子、可信值的權(quán)重因子,子任務(wù) i的時延,子任務(wù) i的能耗,子任務(wù) i的可信值;
16、約束條件為:
17、,
18、其中, aij表示子任務(wù)i在邊緣衛(wèi)星j上的決策,表示表示一個子任務(wù)只能選擇一個邊緣衛(wèi)星進行卸載, t i表示子任務(wù)在邊緣衛(wèi)星計算的時間,t i?max表示為處理子任務(wù)能接受的最大耗時,表示邊緣衛(wèi)星j為卸載至該衛(wèi)星的子任務(wù)分配的計算資源總和, f j?max表示邊緣衛(wèi)星j自身最大的計算能力, hop j表示邊緣衛(wèi)星j與本地衛(wèi)星之間的跳數(shù), hopmax表示邊緣衛(wèi)星與本地衛(wèi)星之間的最大跳數(shù)限制,σj表示邊緣衛(wèi)星j過去時間段內(nèi)發(fā)生故障的次數(shù),σmax表示邊緣衛(wèi)星在過去時間段內(nèi)發(fā)生故障的最大次數(shù)限制。
19、進一步地,步驟s2中,得到mdp模型包括狀態(tài)、動作和獎勵三個部分,具體為,狀態(tài) s p為任務(wù)信息 c、任務(wù)隊列狀態(tài) q t與剩余計算資源 f edge;動作 a p為當前子任務(wù)卸載決策與計算資源分配;獎勵為,其中, k為獎勵修正因子, ti為子任務(wù) i的時延, ei為子任務(wù) i的能耗,pi為子任務(wù) i的可信值,ω1、ω2、ω3分別表示為時延的權(quán)重因子、能耗的權(quán)重因子、可信值的權(quán)重因子, q1為時延懲罰因子, q2為計算資源懲罰因子。
20、進一步地,步驟s3中,在訓練階段,對ddpg所用神經(jīng)網(wǎng)絡(luò)進行訓練,得到訓練后的ddpg神經(jīng)網(wǎng)絡(luò)模型,具體為,
21、s31、將初始化ddpg神經(jīng)網(wǎng)絡(luò)參數(shù)、學習率α,β、軟更新因子τ、獎勵折扣因子 γ、經(jīng)驗回放區(qū)r、采樣批次b;
22、s32、初始化環(huán)境狀態(tài)值s p=( c, q t, f edge),初始化ou噪聲;
23、s33、根據(jù)當前環(huán)境中的任務(wù)信息 c、任務(wù)隊列狀態(tài) q t、邊緣衛(wèi)星計算資源 f edge從actor目標網(wǎng)絡(luò)輸出動作 a p=( a ij, f ij edge);
24、s34、執(zhí)行動作 a p,根據(jù)環(huán)境信息計算得到下一狀態(tài) s p+1和獎勵 r p;
25、s35、將( s p, a p, r p, s p+1)存入經(jīng)驗回放區(qū)r內(nèi);
26、s36、從r中隨機采樣批量數(shù)目值的多維數(shù)組( s p, a p, r p, s p+1);
27、s37、用actor目標網(wǎng)絡(luò)得到下一狀態(tài)的動作值;
28、s38、用critic目標網(wǎng)絡(luò)得到當前狀態(tài)的q值函數(shù)的目標值;
29、s39、用critic訓練網(wǎng)絡(luò)得到當前狀態(tài)的q值;
30、s310、通過最小化損失函數(shù)來更新critic訓練網(wǎng)絡(luò);
31、s311、通過梯度上升法來更新actor訓練網(wǎng)絡(luò);
32、s312、通過軟更新的方式來更新actor目標網(wǎng)絡(luò)和critic目標網(wǎng)絡(luò);
33、s313、重復(fù)步驟s33~s312,直至任務(wù)隊列 q t為空,在當前輪次的獎勵總和score>當前最高的獎勵值best_score時,保存網(wǎng)絡(luò)模型;
34、s314、重復(fù)步驟s32~s313,直至達到最大迭代次數(shù);
35、s315、輸出訓練后的ddpg神經(jīng)網(wǎng)絡(luò)模型。
36、進一步地,步驟s3中,在測試階段,最終通過訓練后的ddpg神經(jīng)網(wǎng)絡(luò)模型輸出最優(yōu)卸載策略和最優(yōu)計算資源分配,具體為,
37、s316、加載訓練階段保存的訓練后的ddpg神經(jīng)網(wǎng)絡(luò)模型;
38、s317、初始化神經(jīng)網(wǎng)絡(luò)學習率(α,β)、軟更新因子τ、獎勵折扣因子γ、經(jīng)驗回放區(qū)r;
39、s318、初始化環(huán)境狀態(tài)值s p=( c, q t, f edge),其中, c為任務(wù)信息、 q t為任務(wù)隊列狀態(tài), f edge為邊緣衛(wèi)星計算資源,初始化ou噪聲;
40、s319、根據(jù)當前環(huán)境中的任務(wù)信息 c、任務(wù)隊列狀態(tài) q t、邊緣衛(wèi)星計算資源 f edge從actor目標網(wǎng)絡(luò)輸出動作 a p=( a ij, f ij edge);
41、s320、執(zhí)行動作 a p,根據(jù)環(huán)境信息計算得到下一狀態(tài) s p+1和獎勵 r p;
42、s321、將 a p中的 a ij加入當前卸載決策a, f ij edge加入當前計算資源分配f;
43、s322、重復(fù)步驟s319~s321,直至任務(wù)隊列 q t為空,得到當前卸載決策a和當前計算資源分配f;
44、s323、重復(fù)步驟s318~s322,直至達到最大迭代次數(shù),輸出最高獎勵動作的最優(yōu)卸載策略和最優(yōu)計算資源分配。
45、進一步地,步驟s34與步驟s320,具體為:
46、①使用 a ij、 f ij edge,計算時延 ti、能耗 ei和可信值pi;
47、②判斷是否滿足時延約束 ti≤ timax和計算資源約束;
48、③如果同時滿足時延約束與計算資源約束,則 r p=k-(ω1 ti+ω2 ei+ω3pi),否則為 r p=k-(ω1 ti+ω2 ei+ω3pi)- q 1- q 2。
49、本發(fā)明的有益效果是:該種基于強化學習的低軌衛(wèi)星星間計算卸載與資源分配方法,通過利用強化學習的優(yōu)勢,動態(tài)地調(diào)整計算任務(wù)的卸載和資源分配策略,以應(yīng)對低軌衛(wèi)星網(wǎng)絡(luò)中復(fù)雜的資源約束,該方法不僅能夠提高計算資源的利用率,能夠減少任務(wù)的執(zhí)行時間,還能夠在保證通信質(zhì)量的同時,降低網(wǎng)絡(luò)的整體能耗。