新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 具有量子行為的粒子群優化算法慣性權重研究

        具有量子行為的粒子群優化算法慣性權重研究

        作者: 時間:2012-07-30 來源:網絡 收藏

        (PSO)是一種群智能,最早由Kennedy和Eberhart于1995年共同提出,其基本思想是對鳥群捕食的仿生模擬,通過鳥群之間的集體協作,快速搜尋并找到最優解。其基本的進化方程如下:

        本文引用地址:http://www.104case.com/article/148708.htm

        其中,r1,r2∈[0,1]為均勻分布的隨機數;C1,C2均是正常數;t表示進化代數;Vt,Xt分別表示每個的速度和位置;Pg,Pt分別是群的全局最優和個體最優。

        為了改善基本PSO的收斂性能,Y?Shi等人提出了的方法和用模糊控制器來動態自適應地改變的技術。之后Jun Sun等人提出的δ函數形式的粒子群算法(QDPSO)使粒子群算法的計算更加簡單容易。最近一種新的QDPSO算法考慮了速度對位置的影響,通過速度的更新選擇位置的更新方程。在經典粒子群算法的可調整參數中,是非常重要的參數,較大的權重有利于提高算法的全局搜索能力,而較小的權重會增強算法的局部搜索能力。因此,對這種新的QDPSO算法的速度項引用慣性權重ω,通過4種方案,發現慣性權重ω的變化對的粒子群算法的收斂性很大改善??梢哉f慣性權重的適當設置對新的QDPSO算法性能也起著重要的作用。

        1 的粒子群算法及其改進

        1.1 QDPS0算法

        文獻[4]的作者認為,若是在PSO系統下的個體粒子具有行為,則該粒子將會以與基本PSO算法中的粒子不同的方式運動。在量子空間,粒子的速度和位置不能再依據“不確定原理”被同時確定,所以提出了QDPSO算法。該算法改變了基本PSO算法的粒子更新策略,只用了粒子的位置向量。QDPSO算法的粒子進化方程如下:

        其中,a,b,u∈[0,1]為均勻分布的隨機數;pid是第i個粒子在第d維空間找到的局部最優解,pgd是群體在第d維空間找到的全局最優解;xid表示第i個粒子在第d維空間找到的當前值;而g必須滿足條件:,才能保證算法的收斂。

        1.2 改進的粒子群算法

        新的QDPSO算法利用個體粒子的速度產生一個介于[0,1]之間的數來代替原算法中的由計算機隨機產生的數,用以選擇該粒子的位置更新方程。更新方程和參數設定參考文獻[5]。

        本文考慮到慣性權重隨粒子的迭代次數變化影響個體粒子的速度引導該粒子向最優解靠攏,所以采用4種方案對該改進算法進行。通過使慣性權重隨粒子的迭代次數變化,從而影響速度的更新方程:

        其中,采用4種慣性權重ω方案來影響速度的更新,然后與QDPSO算法進行性能比較:

        方案1 ω為從(1,0.875)遞減的函數ω=1-k?0.125/genmax。采用這種方案的QDPSO算法稱為ω1-QDPSO;

        方案2 ω為從(0.9,0.4)遞減的函數甜ω=0.9-k?0.5/genmax。采用這種方案的QDPSO算法稱為ω2-QDPSO;

        方案3 ω為一定值0.729 8,采用這種方案的QDPSO算法稱為ω3-QDPSO;

        方案4 ω為一凹函數(ωstart-ωend)(t/tmax)2+(ω-ωend)(2t/tmax)+ωstart,其中ωstart=0.95,ωend=0.4,tmax為最大的迭代次數。采用這種方案的QDPSO算法稱為ω4-QDPOS。

        綜上所述,選擇測試函數F1(x)和F2(x)分別為Sphere和Rastrigin(參數設置見文獻[4]),改進后的算法流程如下:

        Step 1 初始化種群粒子的速度和位置;

        Step 2 通過對兩個測試函數進行初始化計算,得到每個粒子的當前位置為粒子最佳位置Pbest,初始群體粒子位置的最優值為群體最佳位置gbest;

        Step 3 重新把粒子的位置代入測試函數進行計算,得到每個粒子新的適應值,將其與Pbest比較,若較好,則將Pbest設置為新位置;并將其與gbest比較,若較好,則將gbest設置為新位置;

        Step 4 根據公式(6)更新粒子的速度;

        pid控制相關文章:pid控制原理



        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 平顶山市| 新平| 河曲县| 玉山县| 肥乡县| 宜都市| 成安县| 盐津县| 高州市| 安泽县| 资溪县| 通江县| 成安县| 南皮县| 邹平县| 乃东县| 平塘县| 巴林右旗| 桦南县| 浦江县| 绥化市| 石家庄市| 英吉沙县| 绥芬河市| 辽源市| 凤庆县| 台山市| 兖州市| 田林县| 阜阳市| 望都县| 乌什县| 吉水县| 津南区| 海阳市| 永平县| 泰兴市| 洱源县| 南投县| 萝北县| 东山县|