渦街流量計數字信號處理技術的探討 八十一
遺傳算法足具有“生成+檢測”迭代過程的搜索算法,具有很強的適應性。
它的基本處理流程如圖5—2所示,從圖中可以看出,遺傳算法運行過程為一個迭代過程,其基本步驟如下:(1)選擇編碼策略,把參數轉換為位串X;(2)定義適應值函數f(x);(3)選擇群體大小玎、交叉概率£、變異概率巴等遺傳參數,初始化群體:(4)計算群體中位串的適應值f(x),位串解碼后,解越好,值越大;(5)由選擇、交叉和變異算子作用于群體,形成下一代群體:(6)判斷是否滿足某一指標或規定迭代次數,不滿足,返回步驟(4)。
由圖5.2工作流程可知,新群體是通過舊群體應用遺傳算子形成的,這些遺傳算子,如選擇、交叉和變異,分別模擬自然選擇和自然遺傳過程中發生的繁殖、交配和突變等現象。
1.選擇(Selection)
選擇是遺傳算法中最主要的機制,有時也稱為繁殖、復制,是影響遺傳算法性能最主要的因素。通過使用選擇技術把染色體新個體從老個體中以一定比例選擇,隨機地抽取出來。選擇依據為染色體的適應值大小,適應值大的染色體產生后代多,而適應值小的染色體產生后代少,甚至沒有后代。這就是“自然選擇、適者生存”。
選擇壓(Selective pressure)描述了選擇機制挑選種群中不同個體做母體的概率大小的差異。選擇壓過大,會造成幾個較好可行解(不一定是近似全局最優解)迅速搶占了整個種群:選擇壓過小,則會使算法呈現出純粹的隨機徘徊行為。秩選擇、適應值函數的尺度變換均是為了克服經典的比例選擇所造成的選擇壓過大或過小而設計的。杰出者選擇則通過無條件地保留每代種群中最優者而克服了比例選擇下遺傳算法不能依概率收斂到全局最優解的問題。然而正如De Jong指出的,現有的遺傳算法理論無法對這些現象做出完善的解釋和提供指導。
2.交叉(Crossover)
以上的選擇算子沒有建立新解,即沒有產生新的染色體。沒有發展,也就不會有進步。雖然群體很快就會被初始群體中最優個體所充滿,但并不一定最優。
3.變異(Mutation)
遺傳算法僅依賴于選擇和交叉運算會出現問題,可能會發生丟失解的現象。例如,當群體中所有串同一位置全為0時,則此處為l的可行解則丟失。變異算子解決了這個問題。變異算子把群體中每一個體每位依一定概率進行取反運算,即由0一l或l寸0,則避免丟失解。
流量計