謝穎, 李吉興, 楊忠學(xué), 張巖
(1.哈爾濱理工大學(xué)電氣與電子工程學(xué)院,黑龍江哈爾濱150080;2.東北石油大學(xué)電氣信息工程學(xué)院,黑龍江大慶163318)
蟻群算法[1-3]是一種啟發(fā)式仿生類并行的智能進(jìn)化算法,它采用分布式并行計(jì)算和信息素正反饋機(jī)制,通過其內(nèi)在的搜索機(jī)制,解決了一系列困難的組合優(yōu)化問題,在旅行商問題、工件排序問題、背包問題、圖著色問題、車輛調(diào)度問題和二次分配問題等離散型問題的領(lǐng)域上取得了有效的成績(jī)。蟻群算法是意大利學(xué)者M(jìn)arco Dorigo在1992年提出的[4],比較完善地闡述了蟻群算法的原理[5]。Gutiahr W J首次對(duì)蟻群算法的收斂性進(jìn)行了闡述,同時(shí)給出了一種改進(jìn)蟻群算法,能夠以一定概率收斂到最優(yōu)值[6]。文獻(xiàn)[7]中提出一種變異蟻群算法,有利地克服了基本蟻群算法中計(jì)算時(shí)間較長(zhǎng)的缺陷。文獻(xiàn)[8]采用一種動(dòng)態(tài)自適應(yīng)蟻群算法,能夠有效地避免局部收斂,提高了算法的全局搜查能力。還有學(xué)者提出了免疫蟻群算法,能夠解決約束關(guān)系的多任務(wù)調(diào)度問題[9]。遺傳算法[10]是一類借鑒生物界自然選擇和自然遺傳機(jī)制的隨機(jī)化搜索算法,其主要特點(diǎn)是群內(nèi)搜索策略和群體中個(gè)體之間的信息交換、搜索不依賴于梯度信息。遺傳算法是由美國(guó) J.Holland教授提出的,他分析了群體方法搜索以及選擇,交換等操作策略的重要性[11]。Cavicchio提出了以預(yù)選擇策略保證群體多樣性,對(duì)遺傳算法參數(shù)進(jìn)行中心控制[12]。Krishnakumar采用小群體方法,使得算法適應(yīng)于動(dòng)態(tài)系統(tǒng)的優(yōu)化[13]。
蟻群算法是通過內(nèi)部信息的積累和多次迭代更新而收斂于最優(yōu)路徑,因此具有全局的收斂能力,但是由于尋優(yōu)開始階段信息素不足,從而導(dǎo)致了尋優(yōu)初期內(nèi)部信息累積時(shí)間相對(duì)較長(zhǎng),求解相對(duì)緩慢。遺傳算法具有良好的快速尋優(yōu)能力,但是對(duì)于尋優(yōu)過程中反饋回來的信息卻沒有加以使用,造成了大量沒有意義的迭代,因此,遺傳算法求取精確解的效率不高。二進(jìn)制遺傳蟻群算法確定了遺傳算法與蟻群算法的融合時(shí)機(jī),既充分地發(fā)揮了蟻群算法和遺傳算法各自在尋優(yōu)過程中的優(yōu)點(diǎn),又克服了遺傳算法在搜索到一定程度時(shí)尋找最優(yōu)解的效率不高以及蟻群算法在尋優(yōu)開始階段信息素不足的缺點(diǎn),是求解效率和時(shí)間效率都比較好的智能算法。
本文采用的二進(jìn)制遺傳蟻群算法是將遺傳算法和蟻群算法有效的結(jié)合起來。螞蟻的位置和信息素的更新用二進(jìn)制編碼表示,能夠使蟻群算法有效地處理連續(xù)變量問題,同時(shí)也能夠更好地實(shí)現(xiàn)交叉、變異過程。將二進(jìn)制遺傳蟻群算法應(yīng)用到電機(jī)的優(yōu)化設(shè)計(jì)之中可使電機(jī)的性能得到較好的優(yōu)化。
將蟻群的位置用二進(jìn)制編碼的變量組表示,變量組中可以有一個(gè)或多個(gè)變量,每一個(gè)變量用10位二進(jìn)制數(shù)表示,二進(jìn)制數(shù)的大小由變量的數(shù)值和取值范圍決定。如數(shù)據(jù)的取值范圍在a~b之間,則a由0000000000表示,b由1111111111表示,a~b之間的變量值y可以通過公式(1)由十位二進(jìn)制數(shù)(b9b8b7b6b5b4b3b2b1b0)2轉(zhuǎn)換
圖1表示螞蟻尋優(yōu)的過程,如圖所示,螞蟻進(jìn)行路徑尋優(yōu)時(shí),從左邊第一位開始,按照內(nèi)在的搜索機(jī)制選擇0狀態(tài)還是1狀態(tài),轉(zhuǎn)移概率表示為
式中:ak={0,1,…,n-1}表示螞蟻k下一步允許選擇的路徑(t)表示信息素濃度因數(shù)(t)表示能見度因數(shù);α表示信息素軌跡的相對(duì)重要性;β表示能見度的相對(duì)重要性。
從左到右按位選擇0狀態(tài)還是1狀態(tài),直到最后一位選擇結(jié)束,進(jìn)行信息素更新。
圖1 二進(jìn)制尋優(yōu)Fig.1 Optimization map of binary
信息素更新之后,蟻群進(jìn)行進(jìn)化過程,即交叉、變異過程,如圖2所示,此時(shí),需要確定交叉概率pc和變異概率pm。圖2(a)表示交叉過程,第一只螞蟻信息鏈的前4位和第二只螞蟻信息鏈的后3位進(jìn)行重組,得到一組新的信息,圖2(b)表示變異過程,螞蟻信息鏈的某一位由狀態(tài)0變?yōu)闋顟B(tài)1,或由狀態(tài)1變?yōu)闋顟B(tài)0,尋優(yōu)的結(jié)果為本次迭代的最優(yōu)值,一次循環(huán)結(jié)束。
一次循環(huán)之后,蟻群進(jìn)行下一輪循環(huán),直到滿足最大世代數(shù)。因此,二進(jìn)制遺傳蟻群算法如圖3所示。
圖2 二進(jìn)制交叉變異尋優(yōu)Fig.2 Optimization map of binary cross and mutation
圖3 二進(jìn)制遺傳蟻群算法尋優(yōu)流程Fig.3 Optimization flow map of binary genetic ant colony algorithm
蟻群在進(jìn)行搜索時(shí),需要確立一系列參數(shù),其中主要包括α、β[14]。由于目前還沒有有效的數(shù)學(xué)分析法確定每個(gè)情況下的最優(yōu)參數(shù),所以需要進(jìn)行驗(yàn)證,圖4為α、β取不同值時(shí)的收斂曲線,從圖上可以看出,α、β取不同值時(shí),收斂的結(jié)果不相同,當(dāng)α=0.5、β =0.7 時(shí),收斂值為最小,結(jié)果為最優(yōu)。
采用匯編語(yǔ)言實(shí)現(xiàn)了改進(jìn)的二進(jìn)制遺傳蟻群算法,并且設(shè)置了有效的參數(shù)。為了驗(yàn)證該算法的性能,對(duì)表1中的三個(gè)函數(shù)進(jìn)行優(yōu)化仿真。
圖4 α、β取不同值時(shí)的收斂曲線Fig.4 Convergence curves of different α and β
表1 優(yōu)化函數(shù)Table 1 Optimizing functions
圖5 蟻群最終位置分布Fig.5 Final position distribution of ants
圖5表示蟻群的最終分布位置,從圖中可以看出,蟻群最終分布在了3個(gè)函數(shù)的最小極值點(diǎn)上,由此可知,該算法具有良好的全局收斂能力。
圖6 函數(shù)進(jìn)化曲線對(duì)比Fig.6 Evolution curves of comparison map
圖6 表示采用3種方法對(duì)函數(shù)優(yōu)化的進(jìn)化曲線,從圖中可以看出,二進(jìn)制遺傳蟻群算法都在10次迭代左右收斂,且搜索到的值最小,由此可見,二進(jìn)制遺傳蟻群算法具有良好的全局搜索能力。
以一臺(tái)4極7.5kW的自起動(dòng)永磁同步電動(dòng)機(jī)為研究對(duì)象,表2給出了電機(jī)的額定數(shù)據(jù)。采用改進(jìn)的算法對(duì)電機(jī)的結(jié)構(gòu)參數(shù)進(jìn)行優(yōu)化,通過優(yōu)化電機(jī)的轉(zhuǎn)子槽型寬度、鐵心長(zhǎng)度、每槽導(dǎo)體數(shù)、導(dǎo)線直徑等結(jié)構(gòu)參數(shù),提高電機(jī)的性能。
表2 異步起動(dòng)永磁同步電動(dòng)機(jī)的額定數(shù)據(jù)Table 2 Rated data of line-start permanent magnet synchronous motor
圖7為電機(jī)的結(jié)構(gòu)模型圖,永磁體的形狀和嵌放位置使得它在電機(jī)中的利用率很高,不需要單獨(dú)建立隔磁橋。定、轉(zhuǎn)子槽數(shù)之間的關(guān)系,使得電機(jī)有效的避免了同步附加轉(zhuǎn)矩和單相震動(dòng)力。
圖7 電機(jī)結(jié)構(gòu)模型Fig.7 Structure model of motor
改進(jìn)的二進(jìn)制遺傳蟻群算法的基本數(shù)學(xué)模型可以表示為:
式中:F(X)為目標(biāo)函數(shù);X為結(jié)構(gòu)參數(shù);D為優(yōu)化區(qū)間;ω為權(quán)重參數(shù);m約束函數(shù)數(shù)量;gi是約束變量。
2.2.1 目標(biāo)函數(shù)的選擇
優(yōu)化的目標(biāo)包括效率、功率因數(shù)、起動(dòng)轉(zhuǎn)矩倍數(shù)、起動(dòng)電流倍數(shù)和起動(dòng)最小轉(zhuǎn)矩倍數(shù)。在優(yōu)化過程中,不是所有的性能都得到了較大的優(yōu)化,只是以效率為主要的優(yōu)化目標(biāo),其他的性能通過約束條件和懲罰函數(shù)來提高,使得它們優(yōu)于原設(shè)計(jì),主目標(biāo)函數(shù)可以表示為
式中η為電機(jī)的效率。當(dāng)效率為最大時(shí),主目標(biāo)函數(shù)的值是最小的,所以當(dāng)算法搜索到定義區(qū)間內(nèi)的最小值時(shí),實(shí)現(xiàn)了電機(jī)的優(yōu)化。
2.2.2 優(yōu)化變量的選擇
在選擇優(yōu)化變量時(shí),需要選擇對(duì)電機(jī)的性能影響較為明顯的參數(shù)[15-17],所以將每槽導(dǎo)體數(shù)、鐵心長(zhǎng)度、導(dǎo)線直徑、轉(zhuǎn)子槽型寬度設(shè)置為優(yōu)化變量,通過在一定范圍內(nèi)改變這4個(gè)參數(shù),從而找出函數(shù)的最小值,實(shí)現(xiàn)了蟻群尋優(yōu)。
2.2.3 約束條件
異步起動(dòng)永磁同步電動(dòng)機(jī)的約束條件主要包括效率,功率因數(shù),起動(dòng)轉(zhuǎn)矩倍數(shù),起動(dòng)電流倍數(shù)和起動(dòng)最小轉(zhuǎn)矩倍數(shù)[18-20]。它們可以表示為:
式中:η表示為電機(jī)的效率;cosφ表示為電機(jī)的功率因數(shù);Tstmin表示為電機(jī)的起動(dòng)最小轉(zhuǎn)矩倍數(shù);Ist表示為電機(jī)的起動(dòng)電流倍數(shù);Tst表示為電機(jī)的起動(dòng)轉(zhuǎn)矩倍數(shù)。
此外,設(shè)置槽滿率在73% ~78%之間,定子齒、定子軛、轉(zhuǎn)子齒、轉(zhuǎn)子軛的磁密不超過1.8 T。電密不超過6 A/mm2,設(shè)置電磁計(jì)算的所有循環(huán)超過50次以后直接跳出,放棄當(dāng)前運(yùn)算,進(jìn)入一輪尋優(yōu)計(jì)算[21],通過以上設(shè)置,可以保證電機(jī)的設(shè)計(jì)方案滿足要求,能夠有效地運(yùn)行。
2.2.4 懲罰函數(shù)的設(shè)置
當(dāng)?shù)玫降慕Y(jié)果不滿足約束條件時(shí),需要設(shè)置相應(yīng)的懲罰措施,從而保證算法能夠快速、有效地找到最優(yōu)極值點(diǎn)。利用約束條件,懲罰函數(shù)可以表示為:
式中:w1、w2、w3、w4、w5為懲罰因子。
文中建立了目標(biāo)函數(shù),設(shè)置了優(yōu)化變量,限制了約束條件,給出了懲罰函數(shù),根據(jù)已知條件,確立優(yōu)化變量的變化范圍?;诙M(jìn)制遺傳蟻群算法的電機(jī)優(yōu)化設(shè)計(jì)流程如圖8所示。
圖8 電機(jī)優(yōu)化流程Fig.8 Optimization flow map of motor
對(duì)一臺(tái)7.5 kW的異步起動(dòng)永磁同步電動(dòng)機(jī)進(jìn)行優(yōu)化,以提高電機(jī)的效率作為主要目標(biāo),以每槽導(dǎo)體數(shù)、鐵心長(zhǎng)度、導(dǎo)線直徑、轉(zhuǎn)子槽型寬度作為優(yōu)化變量,設(shè)置了約束條件和懲罰函數(shù)。圖9表示電機(jī)物理模型。
圖9 電機(jī)物理模型Fig.9 Model of motor
圖10 表示蟻群尋找最優(yōu)解的過程,20只螞蟻隨機(jī)分布在定義區(qū)間上,沿著圓柱母線方向的一組網(wǎng)格,表示一只螞蟻的尋優(yōu)過程。圓柱最下層的20個(gè)格表示20只螞蟻第一次優(yōu)化的結(jié)果,顏色表示目標(biāo)函數(shù)的值,每一次循環(huán)結(jié)束,螞蟻將沿著母線方向向上爬一個(gè)格,直到20次迭代結(jié)束。
圖10 蟻群尋優(yōu)進(jìn)化Fig.10 Evolution map of ants optimization
圖11 表示二進(jìn)制遺傳蟻群算法的進(jìn)化曲線,每一代的目標(biāo)函數(shù)值表示為20只螞蟻尋優(yōu)值的平均值。從圖中可以看出,蟻群最終找到了最優(yōu)值。
圖11 進(jìn)化曲線Fig.11 Evolution curve
表3給出了優(yōu)化前后的性能比較,從表3中可以看出,和原設(shè)計(jì)相比,電機(jī)的效率、功率因數(shù)和起動(dòng)轉(zhuǎn)矩倍數(shù)都有所提高,電機(jī)性能得到了較好的優(yōu)化。
表3 電機(jī)優(yōu)化前后的參數(shù)對(duì)比表Table 3 Parameters comparison between original and optimized motor
為了驗(yàn)證優(yōu)化結(jié)果是否滿足要求,利用AN-軟件2D有限元對(duì)電機(jī)的起動(dòng)性能和運(yùn)行性能進(jìn)行了分析,得到的結(jié)果分別如圖12、圖13和圖14所示,圖12為電機(jī)轉(zhuǎn)矩和轉(zhuǎn)速隨著時(shí)間變化的曲線,圖13為穩(wěn)態(tài)時(shí)的磁密分布云圖,圖14為穩(wěn)態(tài)時(shí)的電密的分布云圖。
圖12(a)表示轉(zhuǎn)矩隨著時(shí)間變化的曲線,圖12(b)表示轉(zhuǎn)速隨著時(shí)間變化的曲線,其中虛線為原始曲線,實(shí)線為優(yōu)化后的曲線。由圖上可以看出,起動(dòng)時(shí)優(yōu)化后的轉(zhuǎn)矩和轉(zhuǎn)速曲線要比優(yōu)化前的波動(dòng)小,起動(dòng)時(shí)間短,由此可知,電機(jī)的起動(dòng)性能得到了較好的優(yōu)化。
圖12 電機(jī)的起動(dòng)性能Fig.12 Starting performance of the motor
圖13 表示電機(jī)在穩(wěn)態(tài)時(shí)的磁密分布云圖,圖14表示電機(jī)在穩(wěn)態(tài)時(shí)的電密分布云圖。從圖中可以看出,在穩(wěn)態(tài)時(shí)齒部和額部的磁密以及繞組中的電密滿足電機(jī)設(shè)計(jì)時(shí)的要求。
圖13 磁密圖Fig.13 Flux density map
圖14 電密圖Fig.14 Current density map
本文介紹了一種二進(jìn)制遺傳蟻群算法,可以有效地解決連續(xù)變量的優(yōu)化問題,并將其成功地引用到了自起動(dòng)永磁同步電動(dòng)機(jī)的優(yōu)化設(shè)計(jì)之中。從進(jìn)化曲線上可以看出,二進(jìn)制遺傳蟻群算法有很強(qiáng)的全局收斂能力和進(jìn)化能力。通過采用二進(jìn)制遺傳蟻群算法對(duì)電機(jī)的結(jié)構(gòu)參數(shù)進(jìn)行優(yōu)化,提高了電機(jī)的效率、電機(jī)的起動(dòng)性能和運(yùn)行性能,從而提高了電機(jī)的穩(wěn)定性,增加了電機(jī)的壽命。因此,二進(jìn)制遺傳蟻群算法能使電機(jī)得到較好的優(yōu)化,同時(shí),也為其他電機(jī)優(yōu)化設(shè)計(jì)提供了參考。
[1]M.DORIGO,M.BIRATTARI,T.STUTZLE.Ant colony optimization[J].IEEE Computational Intelligence Magazine,2006,1(4):28-39.
[2]李士勇,陳永強(qiáng),李妍.蟻群算法及其應(yīng)用[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2004.
[3]馬良,朱剛,寧愛兵.蟻群優(yōu)化算法[M].北京:科學(xué)出版社,2010.
[4]COLOMAI A,DORIGO M,MANIEZZO V,et al.Distributed optimization by ant colonies[C]//Proceedings of the 1stEuropean Conference on Artificial Life,1991,134-142.
[5]DORIGO M,MANIEZZO V,COLOMA A.Ant system:optimization by a colony of cooperating agents[J].IEEE Transaction on Systems,Man,and Cybernetics-Part B,1996,26(1):29-41.
[6]GUTJAHR W J.A graph-based ant system and its convergence[J].Future Generation Computer System,2000,16(8):873-888.
[7]吳慶紅,張紀(jì)會(huì),徐心和.具有變異特征的蟻群算法[J].計(jì)算機(jī)研究與發(fā)展.1999,36(10):1240-1245.WU Qinghong,ZHANG Jihui,XU Xinhe.An ant colony algorithm with mutation features[J].Journal of Computer Research &
[8]李開榮,陳宏建.一種動(dòng)態(tài)自適應(yīng)蟻群算法[J].計(jì)算機(jī)工程與應(yīng)用,2004,29(2):152-155.LI Kairong,CHEN Hongjian.A dynamic and adaptive ant algorithm[J].Computer Engineering and Applications,2004,29(2):152-155.
[9]鐘一文,楊建剛.求解多任務(wù)調(diào)度問題的免疫蟻群算法[J].模糊識(shí)別與人工智能,2006,19(1):73-78.ZHONG Yiwen,YANG Jiangang.Immune ant colony algorithm for multi-tast scheduling problem[J].PR and AI,2006,19(1):73-78.
[10]陳國(guó)良,王煦法,莊鎮(zhèn)泉.遺傳算法及其應(yīng)用[M].北京:人民郵電出版社,2001.
[11]J.HOLLAND.Adaptation in natural and artificial systems[M].In Yovits:Self-Organizing Systems,1962.
[12]J.CAVICCHIO.The Reproductive adaptive plans[C]//Proc.of the ACM 1972 Annual Conf,1972:1-11.
[13]KRISHNAKNMAR.Micro-genetic algorithm for stationary and non-Stationary function optimization[C]//SPIE Inteleigent Control and Adaptive Systems,1989:289-296.
[14]CHEN Zhenfeng,ZHONG Yanru,LI Jie.Parameter identification induction motor using ant colony optimization[C]//Proc.of Int.Conf.on Evolutionary Computation(CEC 2008),2008:1611-1616.
[15]LIU Wenbiao,CAO Yangjie,ZHANG Yuan,et al.Parameters optimization of synchronous induction coilgun based on ant colony algorithm[J].IEEE Transactions on Plasma,2011,39(1):100-104.
[16]唐任遠(yuǎn).現(xiàn)代永磁電機(jī)理論與設(shè)計(jì)[M].北京:機(jī)械工業(yè)出版社,1997:193-233.
[17]王秀和,楊玉波,朱常青.異步起動(dòng)永磁同步電動(dòng)機(jī)理論設(shè)計(jì)與分析[M].北京:機(jī)械工業(yè)出版社,2009:115-141.
[18]ZHAO Baojiang,LI Shiyong.Ant colony optimization algorithm and its application to neuro-fuzzy controller design[J].BIAI Transactions on Systems Engineering and Electronics,2007,18(3):603-610.
[19]于力.基于遺傳算法的中小型同步電機(jī)優(yōu)化設(shè)計(jì)[D].長(zhǎng)沙:湖南大學(xué),2007.
[20]孟大偉,呂海鵬,徐磊.自適應(yīng)蟻群算法在YKK系列中型高壓電機(jī)優(yōu)化設(shè)計(jì)中的應(yīng)用[J].大電機(jī)技術(shù),2010:1-4.MENG Dawei,Lü Haipeng,XU Lei.Adaptive ant colony algorithm used in optimization of medium high voltage motor of kky series[J].Large Electric Machine and Hydraulic Turbine,2010:1-4.
[21]楊勇,宋曉峰,王建飛,等.蟻群算法求解連續(xù)空間優(yōu)化問題[J].控制與決策.2003,18(5):573-576.YANG Yong,SONG Xiaofeng,WANG Jianfei,et al.Ant colony algorithm for continuous space optimization[J].Control and Decisions,2003,18(5):573-576.