頭腦風暴最佳化算法(Brain Storm Optimization Algorithm,簡稱 BSO 算法)作為一種新型的智慧型最佳化計算方法,在解決經典最佳化算法難以求解的大規模高維多峰函式問題是顯示出其優勢。
基本介紹
- 中文名:頭腦風暴最佳化算法
- 外文名:Brain Storm Optimization Algorithm
- 簡稱:BSO 算法
提出,基本步驟,未來發展,
提出
受人類創造性解決問題過程——頭腦風暴會議的啟發, 2011年史玉回老師在第二次群體智慧型國際會議(The Second International Conference on Swarm Intelligence(ICSI11))中提出一種新的群智慧型最佳化算法——頭腦風暴最佳化算法,算法採用聚 類思想搜尋局部最優,通過局部最優的比較得到全局最優;採用變異思想增加了算法的多 樣性,避免算法陷入局部最優,在這聚與散相輔相承的過程中搜尋最優解,思想新穎,適合於解決多峰高維函式問題。
基本步驟
BSO算法中的每一個個體都代表一個潛在的問題的解,通過個體的演化和融合進行個體的更新,這一過程與人類頭腦風暴的過程相似.BSO算法的實現過程很簡單:1)產 生n(種群大小)個 潛在的問題的解(個體),然後用k-means將這n個個體分為m(預先設定的參數)類,通過評估這n個個體,將每一類中的個體進行排序,選出每一類內最優的個體作為該類的中心個體;2)隨機選中一個類的中心個體,按機率大小確定它是否被一個隨機產生的個體所替代;3)進行個體的更新過程,通過下列某一種方式產生新個體.個體更新的4種方式如下.
a)隨機選中一個類(每一類被選中的機率與類內個體數量成正比),將隨機擾動加到類中心上產生新個體.
b)隨機選中一個類(每一類被選中的機率與類內個體數量成正比),在選中的類中隨機選出一個個體,加上一個隨機擾動產生一個新個體.
c)隨機選中2個類,將2個類中心 進 行 融 合 加上隨機擾動產生一個新個體.
d)隨機選中2個類,每類中各隨機選出一個個體,進行融合,加上隨機擾動產生一個新個體.
通過調整參數來控制按上述4種方式產生的新個體的比例.在新個體產生後,與等待更新的個體進行比較,較優的一個將會被保留並作為新一代中的一個個體.重複進行上述操作,將n個個體逐一進行更新,這樣產生了n個新一代個體,如此循環,直到達到預先設定的個體更新代數的上限.
未來發展
隨著現代經濟的迅速發展,智慧型最佳化算法越來越受到科技工作者的關注,目前已被廣泛套用到工農業等領域,尤其多的套用到各種項目經濟調度問題中,來降低成本,提高利潤。為了解決傳統的最佳化算法難以解決的一些複雜多峰函式問題,智慧型最佳化算法通過模擬 自然生態系統機制,從而把經驗的、感性的、類比的傳統設計方法轉變為科學的、理性的、立足於計算分析的設計方法。在此大背景下,頭腦風暴最佳化算法具有非常良好的發展前景。