賀承啟
(貴陽桑力電子實業有限公司,貴州 貴陽 550000)
在邊緣計算環境中,動態資源分配的數學建模需要考慮多種約束條件。首先,邊緣節點的異構性約束意味著不同節點具有不同的計算能力、存儲容量以及傳輸速率。通常用N表示邊緣節點的數量,Ci表示第i個節點的計算能力,Si表示存儲容量,Ri表示傳輸速率。其次,地理分散性約束影響著節點之間的通信網絡時延,在地理分散性這一約束條件中,Dij表示節點之間的地理距離,Tij表示2 個節點間的通信網絡時延,其中i、j分別表示2 個節點的索引[1]。最后,在動態資源分配中需要考慮能量因果性約束,確保節點的能源消耗不超過其能量供給,該約束條件中通常用Ei表示第i個節點的能量。為保障邊緣計算中動態資源的合理分配,需要滿足邊緣節點異構性、地理分散性、能量因果性等約束條件公式。邊緣節點異構性約束條件公式為
地理分散性約束條件公式為
能量因果性約束條件公式為
邊緣計算動態資源分配的核心優化目標是降低通信網絡時延,提高系統性能和用戶體驗。為高效利用有限的資源,需要對邊緣計算的動態資源分配進行2 個方面的優化。一方面,最小化整個通信網絡的總時延,通過智能資源分配和合理任務調度來加快節點間的數據傳輸[2]。另一方面,需要最大化邊緣計算節點的計算能力、存儲容量和傳輸速率,以保證系統在高負載時的高效運行。
為高效、智能地解決邊緣計算動態資源分配的多目標優化問題,文章提出一種基于深度強化學習的創新性求解方法。該方法以通信網絡時延最小化、能源消耗最小化、資源利用率最大化等作為優化目標,構建一個綜合考慮邊緣節點異構性、地理分散性以及能量因果性的數學模型,并通過設計基于深度強化學習的動態資源分配算法,利用策略梯度方法訓練神經網絡的參數,使其能夠自適應地學習最優的資源分配策略。同時,該算法使用多層感知器(Multi-Layer Perceptron,MLP)來逼近節點的策略函數,根據邊緣計算網絡的實時狀態靈活調整計算任務、計算頻率、發射功率等資源。
基于深度強化學習的動態資源分配算法以MLP結構的神經網絡為策略函數,根據邊緣計算網絡的節點的負載、網絡擁塞情況以及通信網絡時延等實時狀態信息,動態地調整邊緣節點的資源分配策略[3]。該函數的輸入層負責接收狀態信息,隱藏層采用多個神經元進行非線性映射,輸出層負責計算任務的分配、計算頻率的調整及發射功率的設定等。輸出層的激活函數為Sigmoid(·),確保輸出在[0,1]范圍內,方便調整比例。該策略函數表達式為
式中:Win和Wout分別表示神經網絡的權重矩陣;bin和bout分別表示神經網絡的偏置向量,bin和bout中的每個元素對應輸出層中的一個神經元的偏置;X表示輸入向量;H表示隱藏層輸出向量;O表示輸出層輸出向量。
為訓練和調優神經網絡的參數,本算法采用策略梯度方法,并定義損失函數為
式中:Ai表示期望的資源分配策略;Oi表示神經網絡輸出的實際資源分配策略。通過最小化損失函數,更新神經網絡參數,從而獲得最優的資源分配策略。這種策略函數設計能夠更好地捕捉邊緣計算環境的特征,實現智能、靈活的資源分配策略,從而最小化通信網絡時延,提高整體系統性能。
為最小化通信網絡時延,文章設計一個收益函數,并綜合考慮本地執行、卸載執行及數據傳輸的時間成本。其收益函數表達式為
式中:Tlocal、Toffload及Ttransmission分別表示本地執行時間、卸載時間及數據傳輸時間。本地執行時間、卸載時間和數據傳輸時間的計算公式為
式中:W表示任務大小;Flocal表示本地執行的計算頻率;Foffload表示卸載執行的計算頻率;Dtransmission表示數據傳輸時延;D表示數據大小;Rtransmission表示數據傳輸速率。收益函數profit 能夠全面考慮任務在邊緣節點執行和卸載執行之間的權衡,通過最小化綜合時間,找到最優的資源分配策略,以降低通信網絡時延,提高整體系統性能。
基于深度強化學習的動態資源分配算法的策略優化方法通過定義損失函數為負的收益函數,計算關于策略函數參數的梯度,并使用隨機梯度下降法更新參數。同時,在策略方法中引入經驗回放機制,將歷史經驗存儲于經驗池,并隨機抽樣進行訓練,以平穩訓練過程。該過程中,該方法通過設定停止準則來控制訓練過程,當達到一定訓練輪數或損失值閾值將結束訓練。這一策略更新方法結合深度學習的表達能力,不斷優化策略函數的參數,使其能夠更準確地生成最優的資源分配策略,以最小化通信網絡時延。
為確定優化的基于深度強化學習的動態資源分配算法的有效性,本研究搭建仿真環境進行仿真對比實驗。在仿真環境搭建中,借助ntel Xeon 處理器,內存16 GB,存儲256 GB 固態硬盤(Solid State Disk,SSD)的邊緣服務器搭建硬件環境,并依靠Linux 操作系統,搭載Docker 容器化技術,實現資源調度和任務卸載策略。同時,在仿真環境設置中,本研究將緣節點數量設置為50 個,邊緣服務器數量為5 個,云服務器數量為1 個,進行1 000 輪仿真,以確保充分收斂并獲取穩定的性能評估結果。
在對比實驗中,本研究選用固定資源分配法和貪心資源分配法作為對比算法。其中,固定資源分配算法是一種簡單而常見的資源分配策略,其將資源在整個仿真過程中保持不變,作為基準對比[4]。貪心資源分配算法是一種基于貪心策略的資源分配算法,其可以根據當前時刻的網絡狀態和任務需求,選擇最優的資源分配方案[5]。這2 種算法的選擇可以全面評估所提出的基于深度強化學習的動態資源分配算法的性能。
固定資源分配法、貪心資源分配法與優化的基于深度強化學習的動態資源分配算法(以下簡稱優化算法)的通信網絡時延對比如表1 所示,資源利用效率對比如表2 所示。

表1 通信網絡時延對比 單位:ms

表2 資源利用率對比 單位:%
通過表1 和表2 仿真實驗的對比分析數據可以發現,在通信網絡時延方面,優化算法在平均時延、最大時延以及最小時延3 個指標上均顯著優于對比算法,相比固定資源分配算法、貪心資源分配算法的資源分配算法,優化算法能夠更有效地降低通信網絡時延,提高邊緣計算性能;在資源利用效率方面,優化算法的平均利用率也遠高于其他算法。由此表明,優化算法能夠更靈活地適應邊緣計算網絡的實時狀態和需求,從而更充分和高效地利用資源。
文章提出優化的基于深度強化學習的動態資源分配算法,成功解決邊緣計算網絡的資源分配難題,顯著降低通信網絡時延,并提高資源利用效率。與傳統算法相比,優化算法在時延和利用率方面均取得明顯優勢。通過充分考慮邊緣計算網絡的異構性、動態性和多目標性,為邊緣計算的實際應用提供高效和智能的解決方案。