張 斐,謝麗萍,曾建潮,譚 瑛
(太原科技大學(xué)復(fù)雜系統(tǒng)與計(jì)算智能實(shí)驗(yàn)室,太原 030024)
目前工程實(shí)踐中涉及到很多約束優(yōu)化問題(Constrained Optimization,CO),如機(jī)械設(shè)計(jì)、生產(chǎn)調(diào)度、交通調(diào)度、資金使用、工程參數(shù)控制等問題。約束優(yōu)化問題的實(shí)質(zhì)是在自變量滿足約束條件的情況下,求解目標(biāo)函數(shù)最優(yōu)解的全局優(yōu)化問題,由于約束條件的存在,使求解約束優(yōu)化問題比較困難。傳統(tǒng)的解決約束優(yōu)化問題方法的有:懲罰函數(shù)法[1]、可行規(guī)則法[2]、約束保持法[3]、牛頓法[4]。自各種啟發(fā)式優(yōu)化算法提出以來,混合約束保持法的微粒群算法[5]、混合懲罰函數(shù)的遺傳算法[6]、混合可行性規(guī)則的差分演化算法[7]、混合可行性規(guī)則的類電磁算法[8]、混合罰函數(shù)的微粒群算法[9],為解決約束優(yōu)化問題提供了很多新的有效解決方案。但這些算法自身也存在不足之處,例如微粒群算法容易陷入局部最優(yōu)解,類電磁算法的局部搜索效率不高,由于矢量擬態(tài)物理學(xué)算法本身是全局優(yōu)化算法避免出現(xiàn)陷入局部最優(yōu)情況,而引入一維搜索方法提高了算法局部搜索可行個(gè)體信息的能力,故本文提出了混合一維搜索的矢量擬態(tài)物理學(xué)算法。
擬態(tài)物理學(xué)優(yōu)化算法(Artificial Physics Optimization,APO)[10]最早由 Spear 和 Cordon[11]提出的,因受物理力學(xué)定律的啟發(fā)故稱為“擬態(tài)”,是一種基于擬態(tài)物理學(xué)[11]的新的全局優(yōu)化算法。APO算法中每個(gè)個(gè)體可以看做是可行域內(nèi)的一個(gè)可行解,通過利用一群在可行域內(nèi)隨機(jī)初始化產(chǎn)生的個(gè)體來搜索目標(biāo)函數(shù)的最優(yōu)解,個(gè)體的質(zhì)量是用戶定義的有關(guān)其適應(yīng)值的函數(shù),個(gè)體適應(yīng)值越好,質(zhì)量就越大,對(duì)其它個(gè)體的作用力就越大。適應(yīng)值較優(yōu)個(gè)體吸引適應(yīng)值較差個(gè)體,適應(yīng)值較差個(gè)體排斥適應(yīng)值較好個(gè)體,最優(yōu)適應(yīng)值個(gè)體對(duì)其它所有個(gè)體都有吸引力,但不受其它個(gè)體的作用力,整個(gè)種群在這種引斥力的作用下向更好的搜索區(qū)域搜索,整個(gè)群體經(jīng)歷的最好位置就是當(dāng)前的全局最優(yōu)解。
一般來說,約束優(yōu)化問題的數(shù)學(xué)模型如下:
其中,X={x1,x2,…,xk,.xn}T是決策變量,n 是決策變量的維數(shù),和是第k維分量的上下界。式(1)是不等式約束條件,式(2)是等式約束條件,式(3)是邊界約束條件。X∈S?RN,S是式(3)表示的變量X所有可能的取值范圍,稱為問題空間;F是所有可行解構(gòu)成的空間,稱為可行域;顯然F?S.約束優(yōu)化問題就是保證變量X在滿足m個(gè)不等式約束和l個(gè)等式約束前提下,尋找目標(biāo)函數(shù)的最優(yōu)解。
對(duì)于約束優(yōu)化問題構(gòu)造違反約束量函數(shù)φ(X),表達(dá)式如下:
其中 max(0,gi(X))(i=1,2,…,m)表示個(gè)體X在第i個(gè)不等式約束的違反程度,|hj(X)|(j=1,2,…,l)表示個(gè)體X在第j個(gè)等式約束的違反程度。違反約束量函數(shù)φ(X)表示個(gè)體X到可行域的距離,若φ(X)=0表示個(gè)體為可行個(gè)體,φ(X)>0表示個(gè)體為不可行個(gè)體。
APO算法目前在解決無約束優(yōu)化問題上已經(jīng)有了很多研究成果,包括:個(gè)體之間的負(fù)指數(shù)作用力規(guī)則、單峰函數(shù)作用力規(guī)則、線性作用力規(guī)則三種作用力規(guī)則對(duì)APO算法性能的影響[12];個(gè)體質(zhì)量函數(shù)應(yīng)具有的的性質(zhì)及構(gòu)造方法[13];通過借鑒生物個(gè)體的記憶和交互能力提出的擴(kuò)展的擬態(tài)物理學(xué)優(yōu)化算法[14];以及矢量擬態(tài)物理學(xué)優(yōu)化算法(The Vector Model of Artificial Physics Optimization,VMAPO)模型[15]。但目前APO算法仍未用于求解約束優(yōu)化問題,本文采用矢量擬態(tài)物理學(xué)優(yōu)化算法結(jié)合一維搜索方法求解約束優(yōu)化問題,個(gè)體的速度和位置作為矢量處理。通過引入收縮系數(shù)β*處理個(gè)體越界問題,以確保個(gè)體移動(dòng)后始終在問題空間內(nèi);然后用違反約束量函數(shù)來判斷個(gè)體是否在可行域內(nèi),利用一維搜索方法使跳出可行域的個(gè)體回到可行域內(nèi)。
以求解無約束全局最小化問題為例,整個(gè)種群的集合為A=(X1,X2,…,XNpop),其中Npop為種群個(gè)體數(shù)量,個(gè)體 i的位置矢量 Xi=(xi,1,…,xi,k,…,xi,n),速度矢量 Vi=(vi,1…vi,k…vi,n),其中 n 為解空間的維數(shù),VM-APO算法由三個(gè)部分組成:初始化,計(jì)算個(gè)體所受作用力,個(gè)體運(yùn)動(dòng)。算法框架如下:
首先初始化種群,個(gè)體的初始位置和速度都在n維問題空間中隨機(jī)產(chǎn)生,計(jì)算每個(gè)個(gè)體的適應(yīng)值,取得最優(yōu)適應(yīng)值的個(gè)體被標(biāo)記為Xbest.
咳嗽跟呼吸的空氣有很大關(guān)系。如果空氣太臟,或者是太干燥,寶寶就咳得厲害。所以,在家里護(hù)理寶寶時(shí),若天氣好,應(yīng)多開門窗通氣,使屋里的空氣保持清新;若天氣不好,可以使用空氣凈化器來改善室內(nèi)的空氣;若空氣干燥,要用加濕器增加室內(nèi)濕度,使用加濕器使室內(nèi)濕度保持在40%~50%,濕度太大也不行,容易使房間滋生霉菌。也可以選擇讓寶寶吸入水蒸汽的方式緩解咳嗽。睡前在浴室內(nèi)放會(huì)兒熱水,待蒸汽充滿浴室,把寶寶抱進(jìn)去盡可能多待一些時(shí)間,讓呼吸道通過多吸入一些水蒸汽獲得充分的滋潤,這個(gè)方法也有助于緩解鼻塞和咳嗽。還可以用媽媽們蒸臉的蒸汽機(jī)讓寶寶的呼吸道滋潤,但蒸汽機(jī)里不能使用自來水或礦泉水,要使用蒸餾水。
接著計(jì)算個(gè)體所受作用力,要計(jì)算個(gè)體所受力,首先計(jì)算個(gè)體的質(zhì)量,質(zhì)量函數(shù)是關(guān)于適應(yīng)值的反比例函數(shù),即個(gè)體i的適應(yīng)值越小,其質(zhì)量就越大。算法中質(zhì)量函數(shù)可構(gòu)造為:
其中Xbest是取得最優(yōu)適應(yīng)值的位置,Xworst是取得最差適應(yīng)值的位置。
由于VM-APO算法定義了矢量模型,所以若定義Ni={Xj|f(Xj)< F(xi),?Xj∈A},為相對(duì)個(gè)體i較好個(gè)體的集合,Mi={Xj|f(Xj)≥f(Xi),?Xj∈A}為相對(duì)個(gè)體 i較差個(gè)體的集合,‖Xj-Xi‖ =為個(gè)體j相對(duì)于個(gè)體i的距離。個(gè)體j相對(duì)于個(gè)體i的矢量方向表示為= [rij,1,……rij,n],其中:
則個(gè)體j對(duì)個(gè)體i的作用力為:
最后更新個(gè)體運(yùn)動(dòng)的位置和速度,個(gè)體i在t+1時(shí)刻的速度和位置迭代方程為:
其中λ是隨機(jī)變量且λ~U(0,1),w為慣性權(quán)重,w∈[0,1].
本文求解約束優(yōu)化問題時(shí),首先采用約束保持法,使個(gè)體在迭代過程中都在可行域內(nèi),然后再利用VM-APO算法進(jìn)行搜索找到目標(biāo)函數(shù)的最優(yōu)解。因此初始化種群要求產(chǎn)生Npop個(gè)可行個(gè)體,然而在迭代過程中,個(gè)體有可能跳出問題空間。VM-APO算法對(duì)這些越界個(gè)體的處理方法是將其拉回問題空間的上或下邊界,但這種處理方法改變了個(gè)體的搜索方向,為了保存?zhèn)€體的速度方向這一重要信息,本文引入一個(gè)收縮系數(shù)β*將越界個(gè)體拉回問題空間,并且不改變其搜索方向。此時(shí)所有個(gè)體都在問題空間中,但有可能一些個(gè)體不在可行域內(nèi),對(duì)不可行個(gè)體采用一維搜索的方法將個(gè)體映射回可行域內(nèi)。
引入一個(gè)收縮因子處理越界個(gè)體。在VM-APO算法中,種群經(jīng)過迭代進(jìn)化后,處理個(gè)體越界的方法如下:
由于第一種處理方法使個(gè)體運(yùn)動(dòng)方向會(huì)發(fā)生改變,為了保持個(gè)體的運(yùn)動(dòng)方向不變,在算法中引入收縮系數(shù)β*將越界個(gè)體拉回解空間。其中當(dāng)個(gè)體i逃離問題空間中的第k維上界()時(shí),
故可知要讓個(gè)體i的位置矢量Xi收縮回問題空間,只需要用最小的收縮系數(shù)β*將越界個(gè)體的分量xi,k(k=1…k…n)都拉回問題空間,即:
則個(gè)體i的位置迭代方程如下:
其中β*的取值范圍為(0,1],經(jīng)過這樣處理后能保證越界個(gè)體都在問題空間內(nèi)。
即使采用上述方法將個(gè)體拉回問題空間,也不能確保所有個(gè)體都是可行個(gè)體,對(duì)于不可行個(gè)體用一維搜索方法在速度方向上找到可行解。首先對(duì)在問題空間內(nèi)的個(gè)體,利用違反約束量函數(shù)φ(X)判斷個(gè)體是否為可行個(gè)體,對(duì)于在t時(shí)刻的可行個(gè)體,若在t+1時(shí)刻不在可行域內(nèi),將在位置迭代方程中引入一個(gè)系數(shù)(如式(15)所示)α,使得在其速度方向上能找到一可行解,即使個(gè)體i在t+1時(shí)刻的違反約束量最小,如式(16)所示,這其中系數(shù)α相當(dāng)于一個(gè)步長,所以α的確定過程可以用一維搜索方法來代替。
這種一維搜索方法的矢量擬態(tài)物理學(xué)優(yōu)化算法(The Vector Model of Artificial Physics Optimization Algorithm with one demention search method,VMAPO-ODS),通過利用一維搜索方法,確保種群所有個(gè)體都在可行域內(nèi)。
VM-APO-ODS算法具體流程如下:
Step1 初始化種群。在問題域內(nèi)隨機(jī)產(chǎn)生Npop個(gè)個(gè)體,其速度產(chǎn)生也是隨機(jī)值,根據(jù)式(4)判斷個(gè)體是否在可行域內(nèi),若在可行域內(nèi)保存?zhèn)€體,若個(gè)體不在可行域內(nèi)直接刪除。計(jì)算種群個(gè)體的適應(yīng)值,并選出全局最優(yōu)個(gè)體bbest.
Step2 計(jì)算個(gè)體所受力
(1)利用式(5)計(jì)算個(gè)體質(zhì)量。
(2)利用式(7)計(jì)算種群個(gè)體間作用力。
Step3 利用式(8)和式(9)更新個(gè)體的速度和位置。
Step4 判斷個(gè)體是否越界,如果越界用式(13)計(jì)算種群個(gè)體的最小收縮系數(shù) β*,利用式(14)將個(gè)體拉回問題空間。
Step5 利用式(4)判斷個(gè)體是否在可行域內(nèi),并利用一維搜索找到個(gè)體的新位置,如果個(gè)體在可行域內(nèi)則跳轉(zhuǎn)到Step 6,否則,用式(15)產(chǎn)生新位置重新轉(zhuǎn)到Step 5.
Step6 計(jì)算種群所有個(gè)體的適應(yīng)值,并更新最優(yōu)個(gè)體及其適應(yīng)值。
Step7 判斷是否滿足結(jié)束條件,若滿足,退出并輸出最優(yōu)適應(yīng)值;否則,執(zhí)行Step 2.
為了測試該算法的性能,利用經(jīng)典Michalewicz基準(zhǔn)測試函數(shù)[16]來進(jìn)行仿真測試,將VM-APO-ODS算法與文獻(xiàn)[8]中的FAD-ELM算法在同等條件下進(jìn)行比較,VM-APO-ODS算法中采用黃金分割法來實(shí)現(xiàn)一維搜索過程,其中參數(shù)選取為:在式(7)中λ是隨機(jī)變量且 λ ~U(0,1),w∈[0.4,0.9],w 是隨著時(shí)間t線性遞減變化的函數(shù),w的公式為:
其中MAXITER為最大迭代次數(shù)。在仿真試驗(yàn)中發(fā)現(xiàn)參數(shù)G的取值對(duì)VM-APO-ODS算法的性能影響較大,并且以下10個(gè)測試函數(shù)的G的取值取經(jīng)驗(yàn)值。
表1 VM-APO-ODS算法與FAD-ELM算法比較最優(yōu)適應(yīng)值和平均最優(yōu)適應(yīng)值Tab.1 The comparison of VM-APO-ODS with FAD-ELM on the results of optimal fitness and average optimal fitness
VM-APO-ODS算法與FAD-ELM在相同實(shí)驗(yàn)條件進(jìn)行測試,選用個(gè)體50個(gè),實(shí)驗(yàn)獨(dú)立運(yùn)行30次,每次實(shí)驗(yàn)的最大迭代代數(shù)為7000,實(shí)驗(yàn)結(jié)果如表1所示。在測試 g01、g04、g06、g07、g10 時(shí),VM-APOODS算法在最優(yōu)適應(yīng)值、平均最優(yōu)適應(yīng)值上都優(yōu)于FAD-ELM算法。在測試 g02、g09、g11時(shí),VM-APOODS算法在最優(yōu)適應(yīng)值上優(yōu)于FAD-ELM算法,在測試函數(shù)g12時(shí)兩個(gè)算法在最優(yōu)適應(yīng)值上都能達(dá)到已知最優(yōu)解,本算法在平均最優(yōu)適應(yīng)值上要略低于FAD-ELM算法。從表1中還可以看出VM-APOODS算法在測試函數(shù)g01、g04、g11、g12都能找到已知最優(yōu)解,在測試函數(shù) g02、g06、g07、g08、g09、g10都能搜索到最優(yōu)解的鄰域,說明算法在求解目標(biāo)函數(shù)最優(yōu)解上具有較好的求解性能;從方差的結(jié)果看,算法的求解結(jié)果比較穩(wěn)定,實(shí)驗(yàn)結(jié)果表明VMAPO-ODS算法是一種有效算法。
本文用矢量擬態(tài)物理優(yōu)化算法結(jié)合約束保存法來求解約束優(yōu)化問題,通過引入收縮系數(shù)處理越界問題,沿著其速度方向?qū)⑵淅貑栴}空間,并采用一維搜索方法確保種群個(gè)體在運(yùn)動(dòng)過程中始終在可行域內(nèi)。仿真實(shí)驗(yàn)表明該算法是有效的,后期工作將對(duì)VM-APO-ODS算法在求解約束優(yōu)化問題時(shí)平均最優(yōu)值精度的問題,通過選擇不同曲線質(zhì)量函數(shù),引入多維搜索提高平均最優(yōu)解的精度。針對(duì)G的取值對(duì)算法性能影響較大的問題,可對(duì)參數(shù)G的設(shè)置進(jìn)行進(jìn)一步的研究探討,對(duì)于本算法運(yùn)用到解決實(shí)際機(jī)械設(shè)計(jì)問題是下一步研究工作。
[1]高顯忠,羅文彩,侯中喜.應(yīng)用改進(jìn)PSO算法求解約束優(yōu)化問題[J].計(jì)算機(jī)仿真,2009,26(10):212-215.
[2]王凌,何碶,金以慧.智能約束處理技術(shù)綜述[J].化工自動(dòng)化及儀表,2008,35(1):1-7.
[3]SUN C L,ZENG J C,PAN J S.An New Vector Particle Swarm Optimization for Constrained Optimization Problems[J].Computational Sciences and Optimization,IEEE,2009,5779:485-488.
[4]陳加民,陳桂榕.解一般約束優(yōu)化問題的牛頓法德超線性收斂性[J].太原科技大學(xué)學(xué)報(bào),2010,31(5):397-398.
[5]SUN C L,ZENG J C,PAN J S.A Particle Swarm Optimization with Reserved Average Velocity for Linearly Constrained Optimization Problems[C]//International Symposium on Management Engineering(ISME),2009:3:543-547.
[6]汪嵐.基于混合遺傳算法的染色優(yōu)化模型與仿真[J].計(jì)算機(jī)工程,2009,35(22):218-220.
[7]胡中波,王曙霞,熊盛武,等.求解約束優(yōu)化的自適應(yīng)雜交差分演化算法[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(31):211-214.
[8]MARIA ANA,ROCHA A C.Feasibility and dominance rules in the electromagnetism-like algorithm for constrained global optimization[C]//Computational Science and Its Applications(ICCSA),2008:5073:768-783.
[9]陳加民.非線性規(guī)劃問題的算法研究[D].太原:太原科技大學(xué),2008.
[10]XIE L P,ZENG J C,CUI Z H.General Frameworkof Artificial Physics Optimization Algorithm[C]//Proceedings of 2009 World Congress on Nature and Biologically Inspired Computing,India,2009:1321-1326.
[11]SPERAS W M,SPEARS D F,KERR W.An Overview of Physicomimetics[C]//Lecture Notes in Computer Science-State of the Art Series,2005,3342:84-97.
[12]XIE L P,ZENG J C.The Performance Analysis of Artificial Physics Optimization Algorithm Driven by Different Virtual Forces[J].ICIC-EL,2010,4(1):239-244.
[13]XIE L P,ZENG J C,CUI Z H.On mass effects to artificial physics optimization algorithm for global optimization problems[J].International Journal of Innovative Computing and Applications,2010,2(2):69-76.
[14]XIE L P,ZENG J C.An Extended Artificial Physics Optimization Algorithm For Global Optimization Problem.Proceedings of Fourth International Conference on Innovative Computing[C]//Kaohsiung,Taiwan,Information and Control(ICICIC 2009),2009.
[15]XIE L P,ZENG J C,CUI Z H.The Vector Model of Artificial Physics Optimization Algorithm for Global Optimization Problems[J].Intelligent data engineering and automated learning,2009,5788:610-617.
[16]MICHALWEICZ Z,DASGUPTA D.Evolutionary algorithms for constained optimization parameter problems[J].Computer& Industrial Engineering Journal,1996,30(4):851-870.