04粒子群算法matlab代碼___吐血推薦

04粒子群算法matlab代碼___吐血推薦

ID:19494120

大小:180.41 KB

頁數(shù):19頁

時間:2018-10-02

04粒子群算法matlab代碼___吐血推薦_第1頁
04粒子群算法matlab代碼___吐血推薦_第2頁
04粒子群算法matlab代碼___吐血推薦_第3頁
04粒子群算法matlab代碼___吐血推薦_第4頁
04粒子群算法matlab代碼___吐血推薦_第5頁
資源描述:

《04粒子群算法matlab代碼___吐血推薦》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫

1、粒子群算法(1)----粒子群算法簡介二、粒子群算法的具體表述  上面羅嗦了半天,那些都是科研工作者寫論文的語氣,不過,PSO的歷史就像上面說的那樣。下面通俗的解釋PSO算法?! SO算法就是模擬一群鳥尋找食物的過程,每個鳥就是PSO.中的粒子,也就是我們需要求解問題的可能解,這些鳥在尋找食物的過程中,不停改變自己在空中飛行的位置與速度。大家也可以觀察一下,鳥群在尋找食物的過程中,開始鳥群比較分散,逐漸這些鳥就會聚成一群,這個群忽高忽低、忽左忽右,直到最后找到食物。這個過程我們轉化為一個數(shù)學問題。尋找函數(shù) y=1-cos(3*x)*exp(-x)的在[0,4]最大值

2、。該函數(shù)的圖形如下:  當x=0.9350-0.9450,達到最大值y=1.3706。為了得到該函數(shù)的最大值,我們在[0,4]之間隨機的灑一些點,為了演示,我們放置兩個點,并且計算這兩個點的函數(shù)值,同時給這兩個點設置在[0,4]之間的一個速度。下面這些點就會按照一定的公式更改自己的位置,到達新位置后,再計算這兩個點的值,然后再按照一定的公式更新自己的位置。直到最后在y=1.3706這個點停止自己的更新。這個過程與粒子群算法作為對照如下:  這兩個點就是粒子群算法中的粒子?! ≡摵瘮?shù)的最大值就是鳥群中的食物   計算兩個點函數(shù)值就是粒子群算法中的適應值,計算用的函數(shù)就是

3、粒子群算法中的適應度函數(shù)?! 「伦约何恢玫囊欢ü骄褪橇W尤核惴ㄖ械奈恢盟俣雀鹿??! ∠旅嫜菔疽幌逻@個算法運行一次的大概過程:  第一次初始化第一次更新位置  第二次更新位置  第21次更新  最后的結果(30次迭代)  最后所有的點都集中在最大值的地方。粒子群算法(2)----標準的粒子群算法在上一節(jié)的敘述中,唯一沒有給大家介紹的就是函數(shù)的這些隨機的點(粒子)是如何運動的,只是說按照一定的公式更新。這個公式就是粒子群算法中的位置速度更新公式。下面就介紹這個公式是什么。在上一節(jié)中我們求取函數(shù)y=1-cos(3*x)*exp(-x)的在[0,4]最大值。并在[0,

4、4]之間放置了兩個隨機的點,這些點的坐標假設為x1=1.5;x2=2.5;這里的點是一個標量,但是我們經(jīng)常遇到的問題可能是更一般的情況--x為一個矢量的情況,比如二維的情況 z=2*x1+3*x22的情況。這個時候我們的每個粒子為二維,記粒子P1=(x11,x12),P2=(x21,x22),P3=(x31,x32),......Pn=(xn1,xn2)。這里n為粒子群群體的規(guī)模,也就是這個群中粒子的個數(shù),每個粒子的維數(shù)為2。更一般的是粒子的維數(shù)為q,這樣在這個種群中有n個粒子,每個粒子為q維?! ∮蒼個粒子組成的群體對Q維(就是每個粒子的維數(shù))空間進行搜索。每個粒子

5、表示為:xi=(xi1,xi2,xi3,...,xiQ),每個粒子對應的速度可以表示為vi=(vi1,vi2,vi3,....,viQ),每個粒子在搜索時要考慮兩個因素:  1。自己搜索到的歷史最優(yōu)值pi,pi=(pi1,pi2,....,piQ),i=1,2,3,....,n?! ?。全部粒子搜索到的最優(yōu)值pg,pg=(pg1,pg2,....,pgQ),注意這里的pg只有一個?! ∠旅娼o出粒子群算法的位置速度更新公式:  這里有幾個重要的參數(shù)需要大家記憶,因為在以后的講解中將會經(jīng)常用到:  它們是:是保持原來速度的系數(shù),所以叫做慣性權重。是粒子跟蹤自己歷史最優(yōu)值的

6、權重系數(shù),它表示粒子自身的認識,所以叫“認知”。通常設置為2。是粒子跟蹤群體最優(yōu)值的權重系數(shù),它表示粒子對整個群體知識的認識,所以叫做“社會知識”,經(jīng)常叫做“社會”。通常設置為2。是[0,1]區(qū)間內均勻分布的隨機數(shù)。是對位置更新的時候,在速度前面加的一個系數(shù),這個系數(shù)我們叫做約束因子。通常設置為1?! ∵@樣一個標準的粒子群算法就結束了?! ∠旅鎸φ麄€基本的粒子群的過程給一個簡單的圖形表示:  判斷終止條件可是設置適應值到達一定的數(shù)值或者循環(huán)一定的次數(shù)?! ∽⒁猓哼@里的粒子是同時跟蹤自己的歷史最優(yōu)值與全局(群體)最優(yōu)值來改變自己的位置預速度的,所以又叫做全局版本的標準粒

7、子群優(yōu)化算法。粒子群算法(3)----標準的粒子群算法(局部版本) 在全局版的標準粒子群算法中,每個粒子的速度的更新是根據(jù)兩個因素來變化的,這兩個因素是:1.粒子自己歷史最優(yōu)值pi。2. 粒子群體的全局最優(yōu)值pg。如果改變粒子速度更新公式,讓每個粒子的速度的更新根據(jù)以下兩個因素更新,A.粒子自己歷史最優(yōu)值pi。B.粒子鄰域內粒子的最優(yōu)值pnk。其余保持跟全局版的標準粒子群算法一樣,這個算法就變?yōu)榫植堪娴牧W尤核惴?。  一般一個粒子i的鄰域隨著迭代次數(shù)的增加而逐漸增加,開始第一次迭代,它的鄰域為0,隨著迭代次數(shù)鄰域線性變大,最后鄰域擴展到整個粒子群,這

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。