?

基于強化學習的人工免疫算法參數優化

2020-12-28 04:28張亞飛李明智
電工材料 2020年6期
關鍵詞:算子交叉變異

王 潔,張亞飛,李明智

(1.國網新疆電力有限公司電力科學研究院,烏魯木齊 830011;2.新疆農業大學,烏魯木齊 830052)

引言

智能匯控小室是智能變電站重要的室外設備,匯集著多種種類、功能不同的高度復雜的自動裝置,裝置尺寸不一,層次交叉,溫濕度變化較大,存在非線性、復雜程度高、參數優化難等問題。如何實現有限空間的最優設計,實現恒溫變化,減少電能損耗,關系著匯控小室在變電站這種特殊環境下智能化發展的速度,而空間優化首先要解決的問題是系統參數的優化。在解決各種裝置中實際復雜系統參數優化問題中,常伴有多個局部最優解或全局最優解,歸根結底該類問題為多峰函數優化問題。

在尋找全局最優解的方法中,常用的算法有人工蜂群算法[1]、小生境遺傳算法[2]、小生境人工魚群算法[3]、基于小生境的粒子群算法[4]、改進的遺傳算法等[5-8],在解決多峰函數尋優方面取得了較好的效果,但這些算法局部搜索能力弱,很難獲取更多的峰值點,易陷入局部最優解?;谌斯っ庖咚惴ǎˋIA)的優化方法具有自組織、自適應、自學習的特性,且魯棒性高、易于并行,廣泛應用于多峰函數的尋優。朱葛俊[9]提出一種基于人工免疫的改進蟻群優化算法,有效解決了多峰函數尋優易陷入局部最優問題,且具有很高的迭代尋有效率;汪桂金[10]采用多種群人工免疫算法對多峰函數進行優化,通過多個獨立抗體種群經過免疫獲得最佳抗體,較人工免疫算法具有更高的尋優精度;何慶[11]提出一種基于自適應免疫粒子群算法,采用種群粒子親和度和濃度群自適應調整搜索例子的速度和方向,具有較好的全局收斂性和優化性能;程林輝[12]提出一種并行免疫遺傳算法,通過免疫記憶庫記錄最優解,獲得較好的收斂性;吳建輝[13]提出一種基于圓內衍生變異的免疫雙向蛙跳算法,尋優精度和搜索到的極值點數目均有明顯提高;胡博[14]提出基于均勻設計的免疫克隆多峰函數優化,該算法的尋優能力較強。雖然采用人工免疫算法對多峰函數尋優有很大優勢,但在解決參數整定問題時卻顯得較為困難。與此同時,在普通的Q-learning中,當狀態和動作空間離散且維數不高時,可使用Q-Table儲存每個狀態動作的Q值,而當狀態和動作空間為連續高維時,使用Q-Table不能滿足要求。

為解決此類問題,本研究提出對高維Q值采用深度學習的擬合方式,并利用DQN對人工免疫算法變異、交叉算子進行參數優化工作的算法。

1 AIA多峰函數尋優算法

AIA最早是模擬生物的免疫機制過程而產生的一種優化算法,經不斷改進而廣泛用于實際工程中車間作業調度、機器人路徑優化、機械空間優化、醫學圖像識別、函數優化等方面。AIA優化過程類似于遺傳算法(GA),要經歷選擇、交叉、變異過程,在接種疫苗的作用下,免疫選擇免疫算子。較GA算法不同的是AIA算法具有記憶功能,可保存優質抗體,加快收斂速度從而獲得最優解。

1.1 AIA實現基本步驟

在實際的應用中,根據免疫系統機制和原理的不同進行模擬,AIA大致可分為一般免疫算法、否定選擇算法、克隆選擇算法和混合免疫算法4種,基本計算步驟如下:(1)抗原識別。將根據算法優化實際情況確立目標函數,并設定相關參數、親和度函數,即免疫系統確認抗原的入侵;(2)產生初始抗體。隨機產生抗體群,清除曾經出現的抗原,從最優解數據庫當中選擇部分抗體;(3)適應度值計算。對選擇的抗體進行適應度值計算,即計算抗體和抗原的親和度并進行排序;(4)免疫處理。對當前種群進行免疫處理得到新種群,親和度較低的抗體被變異后抗體取代,親和度高的抗體將被保留;(5)產生抗體。通過交叉算子與變異算子產生新一代抗體;(6)終止記憶細胞的迭代。當迭代至設置閾值時結束整個過程。

在AIA流程過程中,主要是解決迭代參數如何確定的問題。AIA作為一種改進的智能算法,在求解抗體過程中通過不斷交叉與變異過程增加了抗體的多樣性,從而增加了全局的搜索能力,該過程中主要求解抗體濃度與抗體適應度值。

1.2 AIA重要算子

抗原與抗體親和度是用來模擬免疫應答過程中抗體與抗原特異性的結合程度,與遺傳算法中的適應度相似,根據要解決問題的特征設計合適的函數。親和度評價算子通常用函數aff(x)表示,一般的抗體x和抗原間的親和度可定義為:

式中:fitness為根據問題特征設計的目標問題(抗原)和可行解(抗體)之間的適應度函數,也是為了方便處理而選擇的變形函數。對于抗體與抗體間親和度的計算基于距離的方式可表示為:

式中:ai,k和bi,k為抗體ai和bi的k維,L為抗體編碼的總維數。

對于親和度高的抗體,隨著群體更新抗體濃度會逐漸增大,非常影響抗體多樣性的產生。為克服此類缺陷,需對抗體濃度進行調節,實現降低濃度高的抗體被選擇的概率,增加濃度低的抗體的選擇機會。有關抗體濃度Cv定義如下:

式中:n為種群規模,aff(ai,bj)為i和j兩抗體間的親和度。

2 DQN-AIA參數優化設計

2.1 DQN簡述

DNQ的是一種基于價值的深度強化學習,其本質為Q Learning算法,主要功能為求解最優策略的Q值。Q Learning算法源于游戲策略,目的是為了獲得更高的獎勵,通過移動按鍵的方向和執行相應操作來獲得分值,其中按鍵作為一種狀態,執行動作來獲得最大的未來獎勵,游戲的整個過程可以描述為狀態、動作、獎勵的集合,如式4所示。

式中:si表示狀態,ai表示執行動作,ri+1為執行完動作后的獎勵,最終以sn結束。si+1的概率取決于現在的狀態si和動作ai。折扣未來獎勵表達式如式5所示。

式中,a為貼現因子,其值范圍(0,1)。折扣未來獎勵在時間t的數值可以根據時間在t+1時簡化,如式6所示。

在Q Learning中,需定義一個Q(s,a)函數,用來表示在狀態s下執行a動作獲得的最好得分,如式7所示。

在DQN中,可將神經網絡作為Q函數,游戲屏幕作為狀態,結合每個動作輸出Q的值,當神經網絡結束后,可獲得所有的Q值,并得出最優解?;贒QN思想,將x與y的值作為狀態,執行動作為上下左右移動,獎勵則為Q值,將其應用于多峰函數參數優化過程,提出DQN-AIA設計思想。

2.2 DQN-AIA設計

結合DNQ的思想,對AIA的交叉算子參數與變異算子參數進行優化。優化設計思路是將深度學習的狀態輸入作為人工免疫算法的變異算子與交叉算子參數,從而獲取Q的值,計算如式8所示。

多峰函數包含x與y兩個變量,利用人工免疫算法尋優將x與y的值不斷迭代多峰函數中來獲取峰值,利用DQN深化學習優化,根據x與y的上下左右移動獲取[x,y]的輸出值,通過尋優從而擬合多峰函數的極值。DQN-AIA優化算法的設計步驟如下:(1)參數傳遞。在AIA的基礎上,設置變量x與y初始值及步長,即設置x與y在多種組合方式下的初始值及步長,根據DQN神經網絡的狀態作為輸入參數不斷發送至AIA算法;(2)抗體更新。AIA接收到DQN的狀態參數,獲得了交叉算子參數和變異算子參數,使其不斷循環在AIA步驟的(5)-(6);(3)獲得Q值。通過連續的迭代,DQN可獲得若干獎勵值,獎勵值描繪了多峰函數極值分布情況或趨勢。當迭代終止,繪制出DQN的Q值,即可模擬出多峰函數的最佳極值情況。

3 仿真試驗及分析

本研究模擬DQN-AIA系統參數優化軟件有PyCharm2018和Matlab2017A,利用PyCharm2018模擬數據傳輸服務端,在Matlab2017A中模擬數據接收客戶端,并通過狀態參數傳遞與Q值的不斷更新實現DQN-AIA擬合,得出最大Q值。為驗證結果,本次仿真采用多峰函數,其表達式如式9所示。

通過多峰函數的式(9)仿真如圖1所示,仿真結果不僅受正弦函數與余弦函數約束,同時還受到x與y值的約束,且由于函數本身存在正負變換的性質,使得函數存在多個峰值。式(9)中,若交叉算子參數取0.6,變異算子參數取0.8時,有最高極值為3.18;采用人工免疫算法調參進行模擬多峰函數的極值時,縮小x與y的取值范圍,設置初始值為(0.2∶0.1∶0.2)。與此同時,種群規模設置為50,記憶容量為10個,迭代次數為30次,多樣性評價參數為0.95,相似性評價參數為0.1,交叉概率為0.5,變異概率為1。利用人工免疫算法進行多峰函數尋優仿真結果如圖2所示。

為獲得較好的結果,采用10組人工免疫散發進行多峰函數優化結果平均值來獲得優化效果圖。圖2中X軸為交叉算子參數,Y軸為變異算子參數,范圍為0.2~0.8。由圖2可知,圖2波動性結果大致與圖1吻合,不能較好地反映極值情況。因此,為獲取最大Q值,在人工免疫算法的基礎上,采用DQN對人工免疫算法進行參數調優,得出結果如圖3所示。

從圖3可知,基于人工免疫算法的DQN調優,交叉算子與變異算子參數均為0.8時是DQN預測的最佳結果,得出DQN最大Q值,通過DQN調節人工免疫算法的參數進行優化,優化后的參數接近人工免疫算法在測試中的最優參數。因此,采用DQN進行優化是合理且可行的方法。

4 結束語

本研究提出的一種基于強化學習的人工免疫算法的參數優化方法,能夠逼近人工免疫算法的多峰函數,可以實現多峰函數的參數優化,節約大量的調參時間。與此同時,參數優化也為后期研究智能匯控小室內部規模優化、溫濕度等多因素優化控制值、故障診斷的準確率奠定基礎。

猜你喜歡
算子交叉變異
有界線性算子及其函數的(R)性質
菌類蔬菜交叉種植一地雙收
變異
Domestication or Foreignization:A Cultural Choice
“六法”巧解分式方程
QK空間上的疊加算子
連數
連一連
變異的蚊子
病毒的變異
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合