一種基于pso算法求解模糊期望值模型問題的混合智能算法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及理論和工程應(yīng)用領(lǐng)域,具體涉及一種基于PSO算法求解模糊期望值模 型問題的混合智能算法。
【背景技術(shù)】
[0002] 模糊期望值模型是由Liu提出的一類模糊規(guī)劃,它是在模糊環(huán)境中,在期望約束 之下,使目標(biāo)函數(shù)的期望值達(dá)到最優(yōu)的數(shù)學(xué)規(guī)劃模型。
[0003] 模糊期望值模型問題的提取并不困難,但其求解卻很難。因此,探索高效的模糊期 望值模型的算法就非常有研究價(jià)值。處理模糊期望值模型的主要方法是利用模糊模擬與智 能算法相結(jié)合來進(jìn)行,如遺傳算法、小生境技術(shù)搜索算法、模擬退火算法等。其中以遺傳算 法(Genetic Algorithm簡稱GA)最為成功。目前,國內(nèi)外學(xué)者仍在繼續(xù)探索求解該類問題 的新的、更為有效的算法。
[0004] 計(jì)算機(jī)技術(shù)的迅速發(fā)展使智能技術(shù)具有解決大規(guī)模、更復(fù)雜優(yōu)化問題的優(yōu)勢。微 粒群算法是由Eberhart與Kennedy于1995年提出的一種新的智能技術(shù),與GA類似,采用 基于種群的并行全局搜索策略,但不具有選擇、變異等操作,僅采用簡單的速度一位置模型 實(shí)現(xiàn)對整個空間的尋優(yōu)操作,這是它不同于GA的最顯著之處,也是該算法呈現(xiàn)出許多優(yōu)良 特性的關(guān)鍵。該算法只需調(diào)整很少的參數(shù),具有簡單、易于編程實(shí)現(xiàn),收斂速度快,精度高等 優(yōu)點(diǎn)。它已在各類問題的求解及應(yīng)用中展現(xiàn)了它的特點(diǎn)和魅力。然而將PSO算法應(yīng)用于模 糊期望值模型這一類問題的求解很少,現(xiàn)有文獻(xiàn)利用PSO實(shí)現(xiàn)了該類問題的求解,但利用 模糊模擬估計(jì)不確定函數(shù)這一過程比較費(fèi)時,考慮到神經(jīng)網(wǎng)絡(luò)在函數(shù)逼近中的成功應(yīng)用, 為了實(shí)現(xiàn)加速求解的過程,利用前向神經(jīng)網(wǎng)絡(luò)逼近不確定函數(shù),再將訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)嵌 套在PSO算法中應(yīng)該能很好的解決這一問題。本文的工作就是嘗試?yán)媚:M、神經(jīng)網(wǎng) 絡(luò)、PSO算法三者相結(jié)合的混合智能算法求解該類問題,通過仿真實(shí)驗(yàn)取得了十分滿意的效 果,從而在質(zhì)量和速度上實(shí)現(xiàn)了以PSO算法為核心的混合智能算法對這一大類連續(xù)空間模 糊規(guī)劃問題的高效求解。
[0005] 在利用PSO算法求解該類問題時,其核心是對模糊函數(shù)進(jìn)行計(jì)算,這顯然可以利 用模糊模擬的方法進(jìn)行估計(jì),而要使估計(jì)值盡量精確,則仿真的次數(shù)必須加大,這使得求解 過程很費(fèi)時;此外,在PSO算法中,初始化時要用到模糊模擬來實(shí)現(xiàn)檢驗(yàn)解的可行性和計(jì) 算微粒群中每個微粒的適應(yīng)值;尤其是在每一迭代過程中也要利用它計(jì)算每個微粒的適應(yīng) 值、實(shí)現(xiàn)檢驗(yàn)解的可行性,當(dāng)微粒數(shù)目、迭代次數(shù)很多時利用模糊模擬進(jìn)行估計(jì)很顯然計(jì)算 量相當(dāng)大。在實(shí)際應(yīng)用中,算法的執(zhí)行效率是一個不容忽視的問題,而神經(jīng)網(wǎng)絡(luò)這一智能算 法在函數(shù)逼近中已得到廣泛的應(yīng)用,為了減少計(jì)算量以加速求解過程,利用訓(xùn)練好的前向 神經(jīng)網(wǎng)絡(luò)對模糊函數(shù)進(jìn)行計(jì)算應(yīng)該是可行的,而要對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練以使其能逼近給定 的不確定函數(shù),這就需要解決以下問題:網(wǎng)絡(luò)學(xué)習(xí)算法的選擇,訓(xùn)練樣本的獲取。對于網(wǎng)絡(luò) 的學(xué)習(xí)算法可采用既成熟又簡單的BP算法,而對于訓(xùn)練樣本的產(chǎn)生可通過模糊模擬取得。
【發(fā)明內(nèi)容】
[0006] 為解決上述問題,本發(fā)明提供了一種基于PSO算法求解模糊期望值模型問題的混 合智能算法。
[0007] 為實(shí)現(xiàn)上述目的,本發(fā)明采取的技術(shù)方案為:
[0008] -種基于PSO算法求解模糊期望值模型問題的混合智能算法,包括如下步驟:
[0009] Sl :利用模糊模擬的期望值估計(jì)算法為不確定函數(shù)Ul,U2產(chǎn)生輸入輸出數(shù)據(jù): (xt,yk),其中,t,k分別為輸入、輸出神經(jīng)元的個數(shù);利用線性函數(shù)轉(zhuǎn)換法對xt,yk分別進(jìn) 行歸一化預(yù)處理,以歸一化后的輸入輸出數(shù)據(jù)作為訓(xùn)練樣本;(其中,在神經(jīng)網(wǎng)絡(luò)中使用歸 一化是為了加快訓(xùn)練網(wǎng)絡(luò)的收斂性,可不進(jìn)行歸一化處理)
[0010] Ul :X -E[f(x,ξ)]
[0011] U2 :X -E[gj(x,ξ)]
[0012] S2 :利用以上訓(xùn)練樣本訓(xùn)練一個BP神經(jīng)網(wǎng)絡(luò)以逼近不確定函數(shù)Ul,U2 ;
[0013] S3 :在d維問題空間上對微粒群進(jìn)行初始化:設(shè)定群體規(guī)模為popsize,在決策 向量X的可行域中產(chǎn)生一隨機(jī)數(shù),歸一化后利用神經(jīng)網(wǎng)絡(luò)計(jì)算網(wǎng)絡(luò)的仿真輸出值并進(jìn)行 反歸一化(即計(jì)算E[gj(x,ξ)]的值),然后檢驗(yàn)該隨機(jī)數(shù)的可行性(即判斷X是否滿足 E[gj (X,ξ ) ] < 0),重復(fù)該過程popsize次,從而得到popsize個初始可行的微粒:Xi = (xil,xi2,"·,χ?(1)? = 1,2,"'popsize,然后再對速度等進(jìn)行初始化;
[0014] S4:利用訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)計(jì)算每個歸一化后微粒的網(wǎng)絡(luò)仿真輸出值,并進(jìn)行反 歸一化(即計(jì)算E[f(x,ξ)]),作為每個微粒的適應(yīng)值;
[0015] S5 :對每個微粒,將其適應(yīng)值與所經(jīng)歷的最好位置的適應(yīng)值進(jìn)行比較,若較好,則 將其作為當(dāng)前最好位置;
[0016] S6 :對每個微粒,將其最好適應(yīng)值與全局所經(jīng)歷的最好適應(yīng)值進(jìn)行比較,若較好, 則將其作為當(dāng)前的全局最好位置;
[0017] S7:根據(jù)以下方程進(jìn)化:
[0018]
[0019]
[0020]
[0021] 式中,ω為慣性權(quán)重,cl,C2為正的加速度常數(shù);rand ()為[0,1]上均勻分布的模 糊數(shù);Pid、Pgd分別為個體極值、全局極值的第d維分量;在(2)中對微粒的最大速度進(jìn)行 了最大限制:如果當(dāng)前對微粒的加速將導(dǎo)致它的某維的速度分量V ld超過該維的最大速度 限額Vmax,則該維的速度被限制為Vmax,它決定了微粒在解空間的搜索精度,如果Vmax過 大,粒子容易飛過最優(yōu)解,反之,粒子容易陷入局部搜索空間而無法進(jìn)行全局搜索,若問題 的搜索空間限制在[ _Xmax,Xmax]內(nèi),則可設(shè)定Vmax = k*Xmax,0.1 < k < L 0 ;
[0022] S8 :對更新后的微粒再次進(jìn)行歸一化處理;
[0023] S9 :利用神經(jīng)網(wǎng)絡(luò)計(jì)算網(wǎng)絡(luò)的仿真輸出值并進(jìn)行反歸一化(即計(jì)算E[gj(x,ξ)]) 然后檢驗(yàn)微粒的可行性(即判斷x是否滿足E[gj(x,ξ)]彡0),若可行,則接受,否則保持 原位置不變;
[0024] SlO :重復(fù)step4至step9至一個預(yù)設(shè)的最大迭代次數(shù)或一個足夠好的適應(yīng)值;
[0025] Sll :給出最好的微粒及對應(yīng)的適應(yīng)值作為最優(yōu)解及對應(yīng)的最優(yōu)值。
[0026] 本發(fā)明具有以下有益效果:
[0027] 通過仿真實(shí)驗(yàn)與基于GA的混合智能算法的結(jié)果進(jìn)行了比較,其優(yōu)化性能明顯優(yōu) 于它,此外,為了體現(xiàn)該算法的執(zhí)行速度,在運(yùn)行時間上同PSO算法與模糊模擬相結(jié)合的模 糊機(jī)期望值模型算法進(jìn)行了比較,該混合智能算法的高效性不言而喻。這一優(yōu)點(diǎn)可使本文 的算法能更為有效地處理大規(guī)模的連續(xù)空間的模糊期望值模型問題,同時也拓展了 PSO算 法的應(yīng)用領(lǐng)域,在應(yīng)用中展現(xiàn)了該算法的優(yōu)勢。
【附圖說明】
[0028] 圖1為本發(fā)明實(shí)施例1中迭代過程抽樣50次的對比示意圖。
【具體實(shí)施方式】
[0029] 為了使本發(fā)明的目的及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例對本發(fā)明進(jìn)行進(jìn)一步 詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā) 明。
[0030] 本發(fā)明實(shí)施例提供了一種基于PSO算法求解模糊期望值模型問題的混合智能算 法,包括如下步驟:
[0031] Sl :利用模糊模擬的期望值估計(jì)算法為不確定函數(shù)Ul,U2產(chǎn)生輸入輸出數(shù)據(jù): (xt,yk),其中,t,k分別為輸入、輸出神經(jīng)元的個數(shù);利用線性函數(shù)轉(zhuǎn)換法對xt,yk分別進(jìn) 行歸一化預(yù)處理,以歸一化后的輸入輸出數(shù)據(jù)作為訓(xùn)練樣本;(其中,在神經(jīng)網(wǎng)絡(luò)中使用歸 一化是為了加快訓(xùn)練網(wǎng)絡(luò)的收斂性,可不進(jìn)行歸一化處理)
[0032] Ul :X -E[f(x,ξ)]
[0033] U2 :X -E[gj(x,ξ)]
[0034] S2 :利用以上訓(xùn)練樣本訓(xùn)練一個BP神經(jīng)網(wǎng)絡(luò)以逼近不確定函數(shù)Ul,U2 ;
[0035] S3 :在d維問題空間上對微粒群進(jìn)行初始化:設(shè)定群體規(guī)模為popsize,在決策 向量X的可行域中產(chǎn)生一隨機(jī)數(shù),歸一化后利用神經(jīng)網(wǎng)絡(luò)計(jì)算網(wǎng)絡(luò)的仿真輸出值并進(jìn)行 反歸一化(即計(jì)算E [gj(x,ξ)]的值),然后檢驗(yàn)該隨機(jī)數(shù)的可行性(即判斷X是否滿足 E[gj (X,ξ ) ] < 0),重復(fù)該過程popsize次,從而得到popsize個初始可行的微粒:Xi = (xil,xi2,"·,χ?(1)? = 1,2,"'popsize,然后再對速度等進(jìn)行初始化;
[0036] S4:利用訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)計(jì)算每個歸一化后微粒的網(wǎng)絡(luò)仿真輸出值,并進(jìn)行反 歸一化(即計(jì)算E[f(x,ξ)]),作為每個微粒的適應(yīng)值;
[0037] S5 :對每個微粒,將其適應(yīng)值與所經(jīng)歷的最好位置的適應(yīng)值進(jìn)行比較,若較好,則 將其作為當(dāng)前最好位置;
[0038] S6 :對每個微粒,將其最好適應(yīng)值與全局所經(jīng)歷的最好適應(yīng)值進(jìn)行比較,若較好, 則將其作為當(dāng)前的全局最好位置;
[0041 ]
[0039] S7:根據(jù)以下方程進(jìn)