張英杰,趙芳芳
(湖南大學(xué) 信息科學(xué)與工程學(xué)院,湖南 長(zhǎng)沙 410082)
免疫克隆選擇算法是一種高性能優(yōu)化方法,其良好的自學(xué)習(xí)和自適應(yīng)能力,為函數(shù)優(yōu)化等具體數(shù)學(xué)模型問(wèn)題提供了很好的解決方案[1].但傳統(tǒng)的免疫克隆選擇算法也存在一些固有缺陷,如:采用二進(jìn)制編碼方式的算法易出現(xiàn)維數(shù)災(zāi)難且搜索效率不高等問(wèn)題;高斯變異雖具有較強(qiáng)的局部搜索能力但易陷入局部極值、在迭代后期出現(xiàn)停止不前等現(xiàn)象;柯西變異與高斯變異相比雖然更易跳出局部極值點(diǎn),但在進(jìn)行更精確的局部搜索方面性能降低.為此,國(guó)內(nèi)外相關(guān)研究學(xué)者提出新的算子來(lái)改進(jìn)算法,更好地提高算法的全局搜索能力和收斂速度[2-5].
云模型是一種用語(yǔ)言值描述的某個(gè)定性概念與其定量表示之間的不確定性轉(zhuǎn)換模型,同時(shí)具有隨機(jī)性和穩(wěn)定性,為定性與定量相結(jié)合的信息處理提供了有力手段.近年來(lái),進(jìn)化算法研究學(xué)者也對(duì)其十分關(guān)注:文獻(xiàn)[6]利用云發(fā)生器代替遺傳算法中的交叉、變異算子,提出一種云遺傳算法(CGA),在函數(shù)優(yōu)化中取得了良好效果;文獻(xiàn)[7]利用云模型對(duì)粒子進(jìn)化和變異進(jìn)行統(tǒng)一建模,提出了一種云變異粒子群算法(CHPSO),該算法有較強(qiáng)的全局搜索能力,適用于多峰值函數(shù)的優(yōu)化.
本文將云模型理論與克隆選擇算法相結(jié)合,提出一種改進(jìn)算法——混沌云克隆選擇算法(Chaotic Cloud Clonal Selection Algorithm,CCCSA).旨在通過(guò)引用混沌初始化,以提高群體的質(zhì)量;利用基本云發(fā)生器產(chǎn)生的云算子實(shí)現(xiàn)變異操作,改善抗體的多樣性,以達(dá)到總體提高算法優(yōu)化性能的目的.
假定連續(xù)優(yōu)化問(wèn)題可描述為式(1)形式:
式中:抗原對(duì)應(yīng)于f(x),其為n維解空間S上的連續(xù)實(shí)函數(shù);抗體xi對(duì)應(yīng)于解的值;函數(shù)值對(duì)應(yīng)于抗體和抗原的親和度.其中,抗體xi采用十進(jìn)制編碼方式以提高算法的求解精度與增大搜索空間.
一般的混沌初始化算法的思想是:首先產(chǎn)生一定量的混沌序列進(jìn)行全局搜索,再對(duì)搜索結(jié)果進(jìn)行排序,從中擇優(yōu)選擇初始化群體,這樣有助于求解效率的提高和解質(zhì)量的改善[8].本文采用混沌序列中的Logistic映射來(lái)初始化種群.典型的一維Logistic映射表達(dá)式如式(2)所示[9]:
式中:k為迭代次數(shù);μ為控制系統(tǒng)混沌行為的參數(shù),其取值區(qū)間為(0,r],當(dāng)μ=4,控制系統(tǒng)呈現(xiàn)出完全的混沌狀態(tài);yk為混沌變量;y0∈(0,1)是混沌變量的初始值,且y0≠0.5.
這里,D 維的混沌向量Yi可描述為式(3):
式中:優(yōu)化變量xi由式(4)計(jì)算生成:
計(jì)算目標(biāo)函數(shù)值,從N個(gè)初始群體中選擇性能較好的m個(gè)解作為初始解,即隨機(jī)產(chǎn)生m個(gè)初始抗體.
為了提高克隆選擇算法的動(dòng)態(tài)尋優(yōu)性能及變異的有效性,本文利用云模型云滴的隨機(jī)性和穩(wěn)定傾向性特點(diǎn),由云模型基本云發(fā)生器算法實(shí)現(xiàn)變異操作.隨機(jī)性可以保持個(gè)體多樣性從而避免搜索陷入局部極值,而穩(wěn)定傾向性又可以很好地保護(hù)較優(yōu)個(gè)體從而對(duì)全局最優(yōu)值進(jìn)行自適應(yīng)定位[10].云變異算子實(shí)現(xiàn)算法可描述為:
Step 1Ex=xi,(xi為抗體),
Step 2En=(xmax(j)-xmin(j))/c1,
Step 3He=En/c2,
Step 4 執(zhí)行正態(tài)云的基本生成算法,并生成隨機(jī)數(shù)Temp,更新抗體.
其中,Ex代表父本抗體的優(yōu)良特征;En代表抗體變異的大概范圍;He決定抗體變異的離散程度,表征進(jìn)化的穩(wěn)定性,He過(guò)大,會(huì)在一定程度上喪失“穩(wěn)定傾向性”,He過(guò)小,又在一定程度上喪失”隨機(jī)性”;xmax(j),xmin(j)分別為第j維變量的最大值與最小值.兼顧算法的效率和精度,本文實(shí)驗(yàn)取c1=2.9,c2=10.
1)克隆選擇算子
在算法進(jìn)化過(guò)程中,遵循親和度較高的個(gè)體被遺傳到下一代的概率較大而親和度較低的個(gè)體被遺傳到下一代的概率較小的原則,故選擇克隆算子如式(5)所示:
式中:Nc為克隆后的抗體群規(guī)模;β為克隆系數(shù),用來(lái)控制克隆的規(guī)模;round為取整函數(shù);b為大于1的常數(shù)以確保每個(gè)抗體都存在一定數(shù)量的克隆個(gè)體.按此算子進(jìn)行克隆操作,算法可在很大程度上使高親和力抗體中的優(yōu)秀基因得以更好的保存和發(fā)展.
2)克隆抑制算子
采用精英保留策略,對(duì)進(jìn)化結(jié)果進(jìn)行有選擇的抑制操作.克隆算子操作的源抗體與克隆抗體經(jīng)變異算子作用后得到的臨時(shí)抗體群共同形成一個(gè)集合Ab′,克隆抑制算子對(duì)抗體群Ab′進(jìn)行再選擇,抑制親和度低的抗體,保留親和度高的抗體進(jìn)入新的抗體種群,該操作有利于加強(qiáng)算法的局部搜索能力.
3)種群更新算子
種群更新操作是對(duì)種群中親和度較低的抗體進(jìn)行更新,從抗體種群中刪除這些抗體并用混沌算法生成的新抗體替代.該操作有利于保持抗體的多樣性、探索新的可行解空間區(qū)域與加強(qiáng)全局搜索能力.
Step 1 解初始化.采用混沌算法生成種群規(guī)模為N的初始種群Ab′;
Step 2 評(píng)價(jià)機(jī)制.對(duì)種群中的每一個(gè)可行解進(jìn)行適應(yīng)度評(píng)價(jià),并按親和度從大到小進(jìn)行排序;
Step 3 終止判斷.判斷是否滿足算法終止條件(當(dāng)前進(jìn)化代數(shù)大于最大迭代代數(shù)或函數(shù)值達(dá)到所接受的精度),若滿足,則輸出計(jì)算結(jié)果并終止;否則,繼續(xù)尋優(yōu)運(yùn)算;
Step 4 免疫選擇.選擇m個(gè)親和度較高的抗體形成免疫記憶庫(kù)M;
Step 5 克隆操作.對(duì)記憶庫(kù)M中的每個(gè)抗體按克隆算子進(jìn)行克隆,得到克隆抗體群Abc;
Step 6 變異操作.對(duì)Abc抗體群中每個(gè)抗體按照云變異算子進(jìn)行變異,得到變異抗體群Abm;
Step 7 抑制操作.刪除Ab,Abm抗體群中親和度較低的抗體,得到抗體群Abs;
Step 8 更新操作.用混沌算法生成的n個(gè)新的抗體替代Abs中親和度較低的抗體,返回Step 3.
采用文獻(xiàn)[7]中的16個(gè)經(jīng)典函數(shù)進(jìn)行測(cè)試.實(shí)驗(yàn)參數(shù)設(shè)置為:種群大小為100,最大迭代代數(shù)為1 000,每個(gè)函數(shù)獨(dú)立運(yùn)行30 次.CGA 數(shù)據(jù)來(lái)自于文獻(xiàn)[6],CHPSO 數(shù)據(jù)來(lái)自于文獻(xiàn)[7].實(shí)驗(yàn)結(jié)果如表1所示.
表1中,參考值是指函數(shù)的理論最小值,平均代數(shù)是指最佳適應(yīng)度與參考適應(yīng)度之差的絕對(duì)值小于10-3時(shí),其進(jìn)化代數(shù)多次獨(dú)立實(shí)驗(yàn)的平均值,‘-’表示在1 000次迭代后最佳值實(shí)驗(yàn)結(jié)果不理想,所以未計(jì)算其最佳值、平均值和平均代數(shù).
CCCSA 利用了基于抗體的免疫進(jìn)化機(jī)制和正態(tài)云模型的穩(wěn)定傾向性、隨機(jī)性以及混沌的遍歷性特點(diǎn).穩(wěn)定傾向性能較好地保護(hù)最優(yōu)抗體從而實(shí)現(xiàn)對(duì)最優(yōu)值的自適應(yīng)定位,隨機(jī)性能保持個(gè)體多樣性從而有效地防止算法陷入局部極值,遍歷性能提高初始種群的質(zhì)量從而加快算法的收斂速度.由表1可知,除F7,F(xiàn)15和F16這些高維、變量范圍較大的函數(shù)外,CCCSA 對(duì)其余函數(shù)的算法性能明顯優(yōu)于CGA;綜合算法精度和收斂速度,CCCSA 整體性能優(yōu)于CHPSO 算法.
表1 CCCSA &CGA,CHPSO 優(yōu)化結(jié)果比較Tab.1 The comparison of CCCSA &CGA,CHPSO on function test
自抗擾控制器是由我國(guó)學(xué)者韓京清提出的新一代非線性控制器,簡(jiǎn)稱ADRC[11-12].其基本結(jié)構(gòu)如圖1 所示.可見(jiàn),ADRC 主要由跟蹤微分器TD(Tracking Differentiator)、擴(kuò) 張 狀 態(tài) 觀 測(cè) 器ESO(Extended Stte Observer)和非線性狀態(tài)誤差反饋控制律NLSEF(Non-Linear State Error Feedback)3部分構(gòu)成,是在汲取經(jīng)典PID 不依賴于對(duì)象模型的思想精髓基礎(chǔ)上,改進(jìn)經(jīng)典PID 固有缺陷而形成的新型控制器.
圖1 自抗擾控制的基本結(jié)構(gòu)Fig.1 The structure diagram of the ADRC
這種控制器只需要對(duì)象的輸入u、輸出y和控制器的目標(biāo)值,不依靠受控對(duì)象的精確模型,因此更適應(yīng)于廣泛地控制工程實(shí)踐.但自抗擾控制器進(jìn)行參數(shù)整定時(shí),需要設(shè)置參數(shù)β01,β02,β03,β1,β2,參數(shù)眾多難以調(diào)整,制約了這一優(yōu)良控制器在工程中的廣泛應(yīng)用,因此,ADRC的參優(yōu)化整定也成為自抗擾控制理論的研究熱點(diǎn)[13].鑒于此,本文將改進(jìn)算法CCCSA應(yīng)用到自抗擾控制器參數(shù)優(yōu)化整定中,期望進(jìn)一步提高控制系統(tǒng)的調(diào)節(jié)精度和抗干擾性能.
為驗(yàn)證本文算法對(duì)ADRC 參數(shù)優(yōu)化整定的有效性選取如式(6)所示的時(shí)滯對(duì)象[11]:
該對(duì)象由于純遲延的存在,因此當(dāng)對(duì)象受到干擾而引起被調(diào)量改變時(shí),控制器產(chǎn)生的控制作用不能即時(shí)對(duì)干擾產(chǎn)生抑制作用.含有純滯后環(huán)節(jié)的閉環(huán)抵制系統(tǒng)必然存在較大的超調(diào)量和較長(zhǎng)的調(diào)節(jié)時(shí)間[1 4].
因此,為了獲取滿意的控制效果和過(guò)渡過(guò)程的動(dòng)態(tài)特性,同時(shí)為了解決控制量過(guò)大和超調(diào)量較大的問(wèn)題,采用式(7)的適應(yīng)度評(píng)價(jià)函數(shù):
式中:e(t)為系統(tǒng)誤差,u(t)為控制器輸出,tu為上升時(shí)間.在該實(shí)驗(yàn)中,采樣時(shí)間取為0.1s,輸入令為單位階躍信號(hào),權(quán)值w1=0.999,w2=0.015,w3=2,w4=100.設(shè)置ADRC 控制器的時(shí)滯系數(shù),TD 的快慢因子r0取800,濾波因子h0取1,控制器的非線性系數(shù)[α01,α02]為[0.75,1.25],ESO 的非線性系數(shù)取[0.5,0.25],線性區(qū)間δ取0.01,參數(shù)β1,β2的取值范圍為[0,1],參數(shù)β01,β02,β03的取值范圍為[0,50].
實(shí)驗(yàn)1 階躍響應(yīng)
對(duì)系統(tǒng)施加一個(gè)單位階躍輸入信號(hào),采用本文算法CCCSA,PSO[11]和CSA[15]3種優(yōu)化算法得到的控制器參數(shù)見(jiàn)表2,仿真結(jié)果如圖2、圖3所示.由圖2和圖3可知,經(jīng)CCCSA算法整定參數(shù)的二階自抗擾控制器具有更好的控制效果,其控制的滯后系統(tǒng)的性能指標(biāo)(上升時(shí)間,超調(diào)量和穩(wěn)態(tài)誤差)遠(yuǎn)遠(yuǎn)優(yōu)于PSO 算法以及CSA整定的自抗擾控制器.
表2 3種算法階躍響應(yīng)實(shí)驗(yàn)性能指標(biāo)Tab.2 The parameter of ADRC_step_response
實(shí)驗(yàn)2 抗擾動(dòng)測(cè)試
在系統(tǒng)的輸入通道中加入一個(gè)幅值為0.1的方波(35s~40s)擾動(dòng),仿真結(jié)果如圖4 和圖5 所示.由圖4 和圖5 可知,CCCSA 優(yōu)化的控制系統(tǒng)與PSO、CSA 優(yōu)化的控制系統(tǒng)相比,系統(tǒng)在40s后出現(xiàn)的波動(dòng)更小,且系統(tǒng)能較快的重新回到穩(wěn)態(tài).
實(shí)驗(yàn)3 魯棒性實(shí)驗(yàn)
采用Monte-Carlo方法定量比較采用CCCSA方法整定的ADRC 和采用PSO,CSA 方法整定的ADRC的魯棒性.這里只給出了系統(tǒng)模型的比例參數(shù)在-20%~20%內(nèi)隨機(jī)攝動(dòng)的情形.根據(jù)單位階躍定值響應(yīng),計(jì)算ts,σ% 和ITAE,重復(fù)實(shí)驗(yàn)1 000次,仿真結(jié)果如表3和圖6所示.由表3可知,CCCSA 的各項(xiàng)指標(biāo)明顯優(yōu)于PSO 和CSA.顯然,通過(guò)CCCSA 優(yōu)化整定參數(shù)的自抗擾控制器具有更強(qiáng)的魯棒性.
由上述實(shí)驗(yàn)可知,在相同的輸入給定作用下,本文算法整定的控制系統(tǒng)具有更優(yōu)良的控制性能以及較強(qiáng)的抗干擾性能.
圖5 局部精細(xì)曲線Fig.5 The local refined curve
圖2 目標(biāo)收斂曲線Fig.2 The objective function convergence curve
圖3 階躍響應(yīng)曲線Fig.3 The step response curve
圖4 擾動(dòng)后的階躍響應(yīng)曲線Fig.4 The step response curve
圖6 3種算法整定的控制系統(tǒng)魯棒性比較Fig.6 The compare of robustness
表3 自抗擾控制器魯棒性實(shí)驗(yàn)性能指標(biāo)Tab.3 Roubustness of performance for adjusted ADRC
傳統(tǒng)的克隆選擇算法在函數(shù)優(yōu)化尋優(yōu)已表現(xiàn)出良好的算法性能,但也存在一些固有的缺陷.本文利用云模型云滴的隨機(jī)性和穩(wěn)定傾向性以及混沌系統(tǒng)的隨機(jī)性、遍歷性,提出一種混沌云克隆選擇算法(CCCSA).該算法的主要思想是通過(guò)利用混沌遍歷性產(chǎn)生初始種群,由云模型基本云發(fā)生器實(shí)現(xiàn)免疫算法中的變異算子,完成進(jìn)化過(guò)程,實(shí)現(xiàn)改善算法整體性能的目的.
經(jīng)典函數(shù)測(cè)試實(shí)驗(yàn)結(jié)果,驗(yàn)證本文算法有較快的收斂速度,較強(qiáng)的全局搜索能力和較好的魯棒性.在以時(shí)滯系統(tǒng)為受控對(duì)象的ADRC 參數(shù)整定優(yōu)化應(yīng)用實(shí)例中,優(yōu)化的控制系統(tǒng)具有優(yōu)良的控制性能與魯棒性以及較強(qiáng)的抗干擾能力,進(jìn)一步驗(yàn)證了該算法的有效性.
[1]DE CASTRO L N,ZUBEN F V.The clonal selection algorithm with engineering applications[C]//Procedings of the Gentetic and Evolutionary Computation Conference,Workshop on Artificial Immune Systems and Their Applications,July,2000:36-37.
[2]楊明慧,彭玉樓,傅明.實(shí)數(shù)編碼的克隆選擇算法的網(wǎng)絡(luò)入侵檢測(cè)[J].計(jì)算機(jī)工程與應(yīng)用,2005,10(28):135-136.
YANG Ming-h(huán)ui, PENG Yu-lou, FU Ming. Network intrusion detection based on real coded clone selection algorithm [J].Computer Engineering and Applications,2005,10(28):135-136.(In Chinese)
[3]陶新民,劉福榮,劉玉,等.定向多尺度變異克隆選擇優(yōu)化算法[J].控制與決策,2011,2(26):175-181.
TAO Xin-min,LIU Fu-rong,LIU Yu,etal.Clone selection optimization algorithm with directional multi-scale mutation[J].Control and Decision,2011,2(26):175-181.(In Chinese)
[4]鄧雪峰,唐?。环N新型的克隆選擇算法[J].計(jì)算機(jī)應(yīng)用研究,2011,28(1):332-334.
DENG Xue-feng,TANG Jun.Novel clone selection algorithm[J].Application Research of Computers,2011,28(1):332-334.(In Chinese)
[5]宋丹,賴旭芝,吳敏.基于等級(jí)變異的克隆選擇算法[J].模式識(shí)別與人工智能,2011,24(3):438-443.
SONG Dan,LAI Xu-zhi,WU Min.Clonal selection algorithm based on grade variation[J].PR &AI,2011,24(3):438-443.(In Chinese)
[6]戴朝華,朱云芳,陳維榮,等.云遺傳算法及其應(yīng)用[J].電子學(xué)報(bào),2007,35(7):1419-1424.
DAI Chao-h(huán)ua,ZHU Yun-fang,CHEN Wei-rong,etal.Cloud model based genetic algorithm and its applications[J].Acta Electronica Sinica,2007,35(7):1419 - 1424.(In Chinese)
[7]張英杰,邵歲峰,JULIUS N.一種基于云模型的云變異粒子群算法[J].模式識(shí)別與人工智能,2011,24(1):90-96.ZHANG Ying-jie,SHAO Sun-feng,JULIUS N.Cloud hypermutat-ion particle swarm optimization algorithm [J].PR &AI,2011,24(1):90-96.(In Chinese)
[8]KANSO A,SMAOUI N.Logistic chaotic maps for binary numbers generations[J].Chaos Solitons & Fractals,2009,40(5):2557-2568.
[9]王興元,王明軍.二維Logistic映射的混沌控制[J].物理學(xué)報(bào),2008,2(57):731-736.
WANG Xing-yuan,WANG Ming-jun.Chaotic control of the coupled Logistic map[J].Acta Phys Sin,2008,2(57):731-736.(In Chinese)
[10] 張光衛(wèi),何銳,劉禹,等.基于云模型的進(jìn)化算法[J].計(jì)算機(jī)學(xué)報(bào),2008,31(7):1082-1091.
ZHANG Gong-wei,HE Rui,LIU Yu,etal.An evolutionary algorithm based on cloud model [J].Chinese Journal of Computers,2008,31(7):1082-1091.(In Chinese)
[11] 史永麗,侯朝楨,蘇海濱.基于粒子群優(yōu)化算法的自抗擾控制器設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報(bào),2008,20(2):433-436.
SHI Yong-li,HOU Chao-zhen,SU Hai-bin.Autodisturbance rejection controller design based on particle swarm optimization algorithm [J].Journal of System Simulation,2008,20(2):433-436.(In Chinese)
[12] 劉朝華,張英杰,章兢,等.基于免疫雙態(tài)微粒群的混沌系統(tǒng)自抗擾控制[J].物理學(xué)報(bào),2011,60(1):1-9.
LIU Zhao-h(huán)ua,ZHANG Ying-jie,ZHANG Jing,etal.Active disturbance rejection control of a chaotic system based on immune binary-state particle swarm optimization algorithm[J].Acta Phys Sin,2011,60(1):1-9.(In Chinese)
[13] 孫亮,吳根忠.自抗擾控制器優(yōu)化設(shè)計(jì)及其應(yīng)用[J].系統(tǒng)電機(jī)與控制應(yīng)用,2010,37(3):26-30.
SUN Liang,WU Gen-zhong.Application and optimize design of active disturbance rejection controller [J].Motor and Control Application,2010,37(3):26-30.(In Chinese)
[14] 韓京清.時(shí)滯對(duì)象的自抗擾控制 [J].控制工程,2008,15(1):7-11.
HAN Jing-qing. Auto-disturbances rejection control for time-delay systems[J].Control Engineering of China,2008,15(1):7-11.(In Chinese)
[15] 任海鵬,朱峰.基干免疫克隆選擇算法的無(wú)刷直流電動(dòng)機(jī)速度自抗擾控制器優(yōu)化設(shè)計(jì) [J].電機(jī)與控制學(xué)報(bào),2010,14(9):69-74.
REN Hai-peng,ZHU Feng.Optimal design of speed adaptive disturbance rejection controller for brushless DC motor based on immune clonal selection algorithms[J].Electric Machines and Control,2010,14(9):69-74.(In Chinese)