《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 一種基于中間結(jié)構(gòu)層的分層粒子群算法

一種基于中間結(jié)構(gòu)層的分層粒子群算法

2017-03-04
作者:劉昕1,2,皮建勇1,2
來源:2017年微型機(jī)與應(yīng)用第4期

  劉昕1,2,皮建勇1,2

  (1.貴州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,貴州 貴陽 550025;2.貴州大學(xué) 云計(jì)算與物聯(lián)網(wǎng)研究中心,貴州 貴陽550025)

        摘要:針對(duì)標(biāo)準(zhǔn)粒子群算法易陷入局部極值和優(yōu)化精度較低的缺點(diǎn),結(jié)合復(fù)雜系統(tǒng)理論提出一種多層次粒子群算法,通過在算法結(jié)構(gòu)中引入中間結(jié)構(gòu)層,分別定義了進(jìn)行大范圍的較優(yōu)值搜索的粒子和在較優(yōu)值周圍進(jìn)行精細(xì)搜索的粒子,增加了粒子群的多樣性,有效協(xié)調(diào)了粒子的尋優(yōu)能力。采用了兩種標(biāo)準(zhǔn)測(cè)試函數(shù)對(duì)算法性能進(jìn)行了實(shí)驗(yàn),結(jié)果表明,該算法可有效避免陷入局部最優(yōu),并在保證運(yùn)行速度的同時(shí)提高了求解精度。

  關(guān)鍵詞粒子群優(yōu)化算法分層結(jié)構(gòu);粒子群多樣性

  中圖分類號(hào):TP301文獻(xiàn)標(biāo)識(shí)碼:ADOI: 10.19358/j.issn.1674-7720.2017.04.008

  引用格式:劉昕,皮建勇.一種基于中間結(jié)構(gòu)層的分層粒子群算法[J].微型機(jī)與應(yīng)用,2017,36(4):25-28.

0引言

  粒子群算法是基于群體智能理論的優(yōu)化算法,其原理和機(jī)制簡(jiǎn)單、清晰、易于實(shí)現(xiàn),并且所需參數(shù)少、收斂速度快、魯棒性強(qiáng),是智能優(yōu)化算法中的一個(gè)研究熱點(diǎn),目前已廣泛應(yīng)用于函數(shù)尋優(yōu)、系統(tǒng)建模、決策支持以及模糊系統(tǒng)控制等諸多領(lǐng)域。

  粒子群算法是典型的群智能算法,而群智能系統(tǒng)實(shí)際上是一類復(fù)雜系統(tǒng),這類系統(tǒng)具有自適應(yīng)性、涌現(xiàn)性和開放性,研究者通常會(huì)引入中間結(jié)構(gòu)層來研究復(fù)雜系統(tǒng)。中間結(jié)構(gòu)層屬于一種模塊化和損害控制策略,借助中間結(jié)構(gòu)層可以更容易研究復(fù)雜系統(tǒng)中各組成部分之間相互作用所涌現(xiàn)出的特性與規(guī)律。

  本文基于復(fù)雜系統(tǒng)理論,在粒子群算法中引入中間結(jié)構(gòu)層,提出了一種多層次粒子群算法,此算法改進(jìn)了粒子間信息的共享方式,增強(qiáng)了粒子多樣性。實(shí)驗(yàn)證明,該算法在保證收斂速度的同時(shí),可以有效跳出局部極值,并提高算法的全局搜索能力和求解精度。

1標(biāo)準(zhǔn)粒子群算法

  1.1標(biāo)準(zhǔn)PSO

  粒子群優(yōu)化算法(Particle Swarm Optimization, PSO)是人們?cè)谘芯盔B類的群體行為基礎(chǔ)上提出的一種群智能算法,其基本思想是通過群體中個(gè)體之間的協(xié)作和信息共享來尋找最優(yōu)解[1]。在算法中,每個(gè)優(yōu)化問題的潛在解被抽象成D維搜索空間上的一個(gè)點(diǎn),稱之為“粒子”,粒子通過跟蹤“個(gè)體極值(pbest)”和“全局極值(gbest)”來更新自己的位置。算法流程如下:

  (1)初始化一群隨機(jī)粒子(種群規(guī)模為m),初始化內(nèi)容包括粒子的速度信息與位置信息;

  (2)計(jì)算每個(gè)粒子的適應(yīng)值,即目標(biāo)函數(shù)值;

  (3)對(duì)每個(gè)粒子,將其適應(yīng)值與其經(jīng)過的最優(yōu)位置作比較,適應(yīng)度高的成為個(gè)體的當(dāng)前Pbest;

  (4)對(duì)每個(gè)粒子,將其適應(yīng)值與群體所經(jīng)過的最好位置作比較,適應(yīng)度高的作為當(dāng)前的全局最優(yōu)解Gbest;

  (5)根據(jù)速度和位置更新公式調(diào)整粒子速度和位置;

  (6)未達(dá)到結(jié)束條件則轉(zhuǎn)(2)。

  算法終止條件一般為最大迭代次數(shù)或粒子群搜索到的最優(yōu)位置,滿足預(yù)定最小適應(yīng)閾值。

  在PSO中,速度決定了粒子運(yùn)動(dòng)的方向和速率,位置則是粒子所代表的解在解空間的位置,是評(píng)估該解質(zhì)量的基礎(chǔ)。

  速度更新公式和位置更新公式如下:

  JBF{DGGD92PYZ]HG~K[_}}2.png

  式(1)的第一部分表示上次速度的影響,w是慣性權(quán)重,它使粒子保持運(yùn)動(dòng)慣性,使其有擴(kuò)展搜索空間的趨勢(shì),有能力探索新的區(qū)域。第二部分來自于粒子個(gè)體的經(jīng)驗(yàn),是從當(dāng)前點(diǎn)指向粒子歷史最好點(diǎn)的一個(gè)矢量;第三部分是一個(gè)從當(dāng)前點(diǎn)指向種群最好點(diǎn)的矢量,反映了粒子間的全局協(xié)同合作和知識(shí)共享。其中c1和c2代表加速系數(shù),即個(gè)體經(jīng)驗(yàn)與社會(huì)經(jīng)驗(yàn)對(duì)粒子的影響程度。Rand是隨機(jī)數(shù)。m為種群規(guī)模,一般設(shè)置在20~100之間,若側(cè)重于減少運(yùn)行時(shí)間,則種群規(guī)模可設(shè)為40左右,若偏向于高精度和高穩(wěn)定性,則可設(shè)為60或80。

  1.2相關(guān)研究

  PSO算法既有深刻的智能背景、適合科學(xué)研究,又簡(jiǎn)單易實(shí)現(xiàn)、適合工程應(yīng)用。因此一經(jīng)提出便引起信息和進(jìn)化計(jì)算科學(xué)領(lǐng)域?qū)W者們的廣泛關(guān)注,形成了一個(gè)新的熱點(diǎn),目前已有大量研究者從參數(shù)設(shè)置、拓?fù)浣Y(jié)構(gòu)等角度對(duì)傳統(tǒng)PSO進(jìn)行了研究與改進(jìn)。

  1.2.1參數(shù)設(shè)置

  粒子群算法所需參數(shù)少,但是對(duì)參數(shù)依賴性較大,因此相關(guān)參數(shù)的設(shè)定對(duì)PSO的優(yōu)化性能有著重要影響。

  慣性權(quán)重方面:研究表明較大的慣性權(quán)重有利于粒子群在更大的解空間內(nèi)進(jìn)行搜索,從而跳出局部最優(yōu)值,而較小的慣性權(quán)重有利于算法的收斂。SHI等人提出了慣性權(quán)重隨著迭代次數(shù)線性遞減的模型。一般情況下將慣性權(quán)重的初始值設(shè)置為0.9,隨著迭代次數(shù)遞減到0.4,算法開始階段,大的慣性權(quán)重可以使算法不容易陷入局部最優(yōu),到算法的后期,小的慣性權(quán)重可以使收斂速度加快,使收斂更加平穩(wěn)[2]。

  加速系數(shù)方面:一般被設(shè)為相同的值,最常見的是2,另一個(gè)常見的取值為1.494 45。彭宇等人利用方差分析法分析了慣性權(quán)重和加速系數(shù)對(duì)算法性能的影響,并給出了這兩種參數(shù)的設(shè)置參考原則[3]。ZHAN等提出了一種使用聚類的方法對(duì)進(jìn)化狀態(tài)進(jìn)行判斷并且對(duì)加速系數(shù)進(jìn)行相應(yīng)調(diào)整的方案[4]。

  1.2.2拓?fù)浣Y(jié)構(gòu)研究

  在PSO算法中,粒子之間通過相互學(xué)習(xí)尋找最優(yōu)解,這種學(xué)習(xí)通過共享粒子所發(fā)現(xiàn)的最優(yōu)解來實(shí)現(xiàn),所以粒子之間的信息共享方式對(duì)算法的性能有著至關(guān)重要的影響,粒子之間的信息共享方式體現(xiàn)為粒子群的鄰域拓?fù)浣Y(jié)構(gòu),因此,對(duì)粒子群的鄰城拓?fù)浣Y(jié)構(gòu)進(jìn)行研究也十分重要[5]。KENNEDY最早開始對(duì)PSO算法中的鄰域結(jié)構(gòu)進(jìn)行研究,提出了幾種經(jīng)典的鄰域拓?fù)洌男∈澜缇W(wǎng)絡(luò)模型出發(fā),對(duì)PSO算法中的鄰域拓?fù)溥M(jìn)行了初步的探索[6]。MENDES較為系統(tǒng)地分析了粒子群體中的拓?fù)浣Y(jié)構(gòu)對(duì)PSO性能的影響,并肯定了粒子群的拓?fù)浣Y(jié)構(gòu)對(duì)PSO算法的魯棒性和執(zhí)行性能有直接的作用[7],其研究發(fā)現(xiàn),粒子個(gè)體間社會(huì)交互的平均連接度越高,群體中的信息傳播速度就越快,但是發(fā)生早熟收斂的風(fēng)險(xiǎn)也越大[7]。

2多層次粒子群算法

  2.1中間結(jié)構(gòu)層

  中間結(jié)構(gòu)層是處理復(fù)雜系統(tǒng)的一種方法。復(fù)雜系統(tǒng)中,在組分和系統(tǒng)之間經(jīng)常會(huì)涌現(xiàn)出一些中間結(jié)構(gòu),稱為“集體”,一個(gè)集體可能具有復(fù)雜的內(nèi)部結(jié)構(gòu),但外表上呈現(xiàn)為一個(gè)整體單位,作為一個(gè)單位與其他集體進(jìn)行相互作用。

  集體具有強(qiáng)的內(nèi)聚和弱的外部耦合,比單個(gè)組分更適合作為“個(gè)體”來處理。借助集體,可能相互作用和不可能相互作用的組分之間有了一個(gè)確定的概念性區(qū)別,而集體構(gòu)成的中間結(jié)構(gòu)層可將復(fù)雜系統(tǒng)問題分解為更簡(jiǎn)單、易處理的兩個(gè)部分:集體分析研究集體的內(nèi)部結(jié)構(gòu)和集體行為,系統(tǒng)分析研究集體對(duì)于系統(tǒng)整體行為的貢獻(xiàn)。

  由于粒子群屬于一類復(fù)雜系統(tǒng),本文將在粒子群系統(tǒng)中引入中間結(jié)構(gòu)層,構(gòu)成“基礎(chǔ)粒子層集體層系統(tǒng)”的多層次粒子群結(jié)構(gòu),通過定義不同類型的集體達(dá)到增加粒子多樣性的目的,并通過改進(jìn)集體之間的交流方式改善粒子群算法的性能。

  2.2多層次PSO算法

  2.2.1算法思想

  傳統(tǒng)粒子群算法易于過早收斂,其主要原因在于進(jìn)化過程中粒子的多樣性損失過快,所有的粒子依循相同的方式飛行,很容易造成所有粒子搜尋方向雷同,所以本文通過定義不同類型的集體,使屬于不同類型集體的粒子按照不同的搜索策略進(jìn)化,來增強(qiáng)粒子的多樣性,提升粒子的尋優(yōu)能力。

  首先定義F類集體,速度更新公式如下:

  vk+1id=wFvkid+cF1rand()(pid-xkid)+cF2rand()(pFgbest-xkid)(3)

  F類集體的目的是盡可能在解空間進(jìn)行大范圍的搜索,慣性權(quán)重將保持固定的較大值,為了避免過早陷入局部極值,F(xiàn)類集體的搜索策略注重于個(gè)體經(jīng)驗(yàn),而削弱全局經(jīng)驗(yàn)的影響,即它將僅受到自身經(jīng)驗(yàn)與集體內(nèi)部產(chǎn)生的全局最優(yōu)值的影響。

  其次定義用于精細(xì)搜索的S類集體,速度更新公式如下:

  AX}6_F5RK43MC)D5WVLZAUU.png

  S類集體的目的是幫助算法更好地收斂,慣性權(quán)重將保持固定的較小值,S類粒子參考所有類型的集體的社會(huì)經(jīng)驗(yàn)產(chǎn)生的較優(yōu)值,并在其周圍進(jìn)行精細(xì)搜索,最終得到全局最優(yōu)值。

  算法思想:由F類集體進(jìn)行大范圍的較優(yōu)值搜索,并產(chǎn)生初步最優(yōu)值FGBEST反饋給S類集體;而S類集體則在初步最優(yōu)值周圍進(jìn)行精細(xì)搜索,并產(chǎn)生本次迭代的最終最優(yōu)值SGBEST。之后的每次迭代中,F(xiàn)類集體繼續(xù)尋找其他較優(yōu)值,而S類集體綜合考慮兩類集體粒子產(chǎn)生的最優(yōu)值,并在其附近進(jìn)行精細(xì)搜索。

  2.2.2算法流程

  (1)初始化一群隨機(jī)粒子(種群規(guī)模為m),初始化的內(nèi)容包括粒子的速度和位置信息、粒子所屬的集體類型;

  (2)計(jì)算每個(gè)粒子的適應(yīng)度(即目標(biāo)函數(shù)值);

  (3)對(duì)每個(gè)粒子,將其適應(yīng)值與其經(jīng)過的最優(yōu)位置作比較,適應(yīng)度高的成為個(gè)體的當(dāng)前Pbest;

  (4)對(duì)F類粒子,將其適應(yīng)值與集體所經(jīng)過的最好位置作比較,適應(yīng)度高的作為當(dāng)前集體內(nèi)的最佳位置即Fgbest,并反饋給S集體;對(duì)S類粒子,將其適應(yīng)值與集體內(nèi)所經(jīng)過的最好位置比較,適應(yīng)度高的作為集體內(nèi)最佳位置即Sgbest;

  (5)根據(jù)速度和位置更新公式調(diào)整粒子速度、位置;

  (6)未達(dá)到結(jié)束條件則轉(zhuǎn)(2)。

  結(jié)束條件為最大迭代次數(shù)或Sgbest滿足預(yù)定最小適應(yīng)閾值。

3實(shí)驗(yàn)

  3.1參數(shù)定義與測(cè)試函數(shù)

  實(shí)驗(yàn)采用兩種標(biāo)準(zhǔn)測(cè)試函數(shù)即Sphere函數(shù)、Griewank函數(shù)對(duì)算法進(jìn)行性能測(cè)試,其中Sphere函數(shù)是單峰函數(shù),主要用于測(cè)試算法的收斂速度和求解精度;Griewank函數(shù)是典型的非線性多模態(tài)函數(shù),是具有廣泛的搜索空間并且具有大量局部最優(yōu)點(diǎn)的多峰函數(shù),算法很容易陷入局部最優(yōu),此函數(shù)通常被認(rèn)為是優(yōu)化算法很難處理的復(fù)雜多模態(tài)問題,因此本文用Griewank函數(shù)測(cè)試算法的全局搜索能力。

  Sphere函數(shù)表達(dá)式如下:

  @Z4C6}WEI5P%6@JTDKQTH[8.png

  3.2集體內(nèi)粒子數(shù)對(duì)多層次PSO的影響

  多層次粒子群算法中,粒子分為在解空間內(nèi)迅速進(jìn)行大范圍搜索的F集粒子、在初步較優(yōu)值周圍進(jìn)行精細(xì)搜索的S集粒子。本文在粒子群種群數(shù)目為30、60、90的情況下,對(duì)兩種類型粒子的數(shù)量對(duì)算法性能的影響做了實(shí)驗(yàn)。實(shí)驗(yàn)平臺(tái)為MATLAB2012,S集體的w=0.9,c1=c2=0.5;S集的w=0.4,c1=c2=1.494 45;算法最大迭代次數(shù)為1 000次;對(duì)每個(gè)函數(shù)的測(cè)試均運(yùn)行50次,結(jié)果取平均值。實(shí)驗(yàn)結(jié)果如表1、表2所示。

003.jpg

  實(shí)驗(yàn)結(jié)論:

  (1)在種群規(guī)模不變的情況下,用于快速搜索的F集粒子少于精細(xì)搜索的S集粒子時(shí),尋優(yōu)精度較高,當(dāng)F集體粒子與S集體粒子數(shù)量之比為1:2時(shí),算法精度達(dá)到最高,但當(dāng)F集粒子數(shù)量繼續(xù)減少時(shí),尋優(yōu)能力會(huì)有所降低。

  (2)由于兩類集體內(nèi)粒子數(shù)量之比的變化不會(huì)影響粒子群總體規(guī)模,因此對(duì)運(yùn)行時(shí)間沒有顯著影響。

  (3)當(dāng)粒子規(guī)模逐漸增大時(shí),解的質(zhì)量會(huì)有所提高,但相應(yīng)運(yùn)行時(shí)間會(huì)有所增加。

  3.3與標(biāo)準(zhǔn)PSO的對(duì)比實(shí)驗(yàn)

  圖1sphere函數(shù)對(duì)比實(shí)驗(yàn)中,種群規(guī)模取100,F(xiàn)集體粒子數(shù)量與S集體粒子數(shù)量為1:2;最大迭代次數(shù)為500次;其他參數(shù)設(shè)定如3.2。實(shí)驗(yàn)結(jié)果如圖1和表3所示。

001.jpg

  從圖1可以看出,多層次PSO在迭代至200次左右時(shí)即找到了全局最優(yōu)值,而標(biāo)準(zhǔn)PSO是在400次之后,說明多層次PSO的收斂能力強(qiáng)于標(biāo)準(zhǔn)PSO,并且通過表3的實(shí)驗(yàn)數(shù)據(jù)可以看出多層次PSO的求解精度高于標(biāo)準(zhǔn)PSO。

002.jpg

  從圖2中可以看出,多層次PSO在算法前期的尋優(yōu)精度和速度都強(qiáng)于標(biāo)準(zhǔn)PSO,并且由于多峰函數(shù)具有多個(gè)局部最優(yōu)點(diǎn),因此標(biāo)準(zhǔn)版PSO在迭代至230代左右時(shí)陷入了局部極值,而多層次PSO可以跳出局部極值繼續(xù)尋優(yōu),從表4實(shí)驗(yàn)數(shù)據(jù)可以得出多層次PSO最終得到的最優(yōu)值的質(zhì)量遠(yuǎn)遠(yuǎn)高于標(biāo)準(zhǔn)PSO。

004.jpg

005.jpg

4結(jié)論

  本文提出了一種多層次的粒子群算法,通過引入中間結(jié)構(gòu)層構(gòu)造了不同類型的粒子,從而增加了粒子多樣性。實(shí)驗(yàn)證明,此改進(jìn)方法能使算法有效跳出局部極值,并在保證收斂速度的同時(shí)提高了求解精度。

  參考文獻(xiàn)

  [1] 黃少榮.粒子群優(yōu)化算法綜述[J].計(jì)算機(jī)工程與設(shè)計(jì), 2009, 30(8):19771980.

  [2] 楊維,李歧強(qiáng).粒子群優(yōu)化算法綜述[J].中國工程科學(xué),2004,6(5):87-94.

  [3] 陳貴敏,賈建援,韓琪.粒子群優(yōu)化算法的慣性權(quán)值遞減策略研究[J].西安交通大學(xué)學(xué)報(bào),2006,40(1):53-56.

  [4] 胡旺,李志蜀.一種更簡(jiǎn)化而高效的粒子群優(yōu)化算法[J].軟件學(xué)報(bào),2007,18(4):861-868.

  [5] 王偉,李枚毅,彭霞丹.一種雙層可變子群的動(dòng)態(tài)粒子群優(yōu)化算法[J].小型微型計(jì)算機(jī)系統(tǒng),2012, 33(1):145150.

  [6] 朱艷偉,石新春,但揚(yáng)清,等.粒子群優(yōu)化算法在光伏陣列多峰最大功率點(diǎn)跟蹤中的應(yīng)用[J].中國電機(jī)工程學(xué)報(bào), 2012, 32(4):42-48.

  [7] 王雪飛,王芳,邱玉輝.一種具有動(dòng)態(tài)拓?fù)浣Y(jié)構(gòu)的粒子群算法研究[J].計(jì)算機(jī)科學(xué),2007, 34(3):205-207.


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 精品无人区乱码1区2区3区免费 | 狠狠ri | 精品视频免费 | 国产精品免费一区二区三区 | 久久性综合亚洲精品电影网 | 99亚洲自拍 | 欧美一级第一免费高清 | 成人黄色免费观看 | 高清不卡免费一区二区三区 | 久久久综合视频 | 国产精品免费小视频 | 久久久无码精品亚洲日韩按摩 | 激情五月黄色 | 国产男女 爽爽爽爽视频 | 国产精品久久免费观看 | 男女无遮挡一进一出视频 | 国产国语一级毛片在线视频 | 色综合天 | 欧美精品亚洲精品日韩经典 | 开心网五月天 | 91视频最新地址 | 日韩欧美一级大片 | 久久九九青青国产精品 | 精品中文字幕一区二区三区四区 | 久久精品国产亚洲7777 | 青草草在线观看 | 啪啪网址免费网址 | 国产精品久久亚洲一区二区 | 精品视频久久 | 久久久国产精品视频 | 精品一区二区三区在线视频 | 国产成人精品实拍在线 | 免费国产va在线观看视频 | 日韩精品视频在线免费观看 | 可以看的视频 | 欧美自拍亚洲 | 激情综合色五月丁香六月亚洲 | 日韩男人的天堂 | 91久久福利国产成人精品 | 99久久精品免费观看国产 | 欧美日韩国产高清 |