遺傳算法摘錄1

遺傳算法(Genetic Algorithm)是一類借鑑生物界的進化規律(適者生存,優勝劣汰遺傳機制)演化而來的隨機化搜索方法。它是由美國的J.Holland教授1975年首先提出,其主要特點是直接對結構對象進行操作,不存在求導和函數連續性的限定;具有內在的隱並行性和更好的全局尋優能力;採用概率化的尋優方法,能自動獲取和指導優化的搜索空間,自適應地調整搜索方向,不需要確定的規則。遺傳算法的這些性質,已被人們廣泛地應用於組合優化、機器學習、信號處理、自適應控制和人工生命等領域。它是現代有關智能計算中的關鍵技術之一。

1.遺傳算法與自然選擇

達爾文的自然選擇學說是一種被人們廣泛接受的生物進化學說。這種學說認爲,生物要生存下去,就必須進行生存鬥爭。生存鬥爭包括種內鬥爭、種間鬥爭以及生物跟無機環境之間的鬥爭三個方面。在生存鬥爭中,具有有利變異的個體容易存活下來,並且有更多的機會將有利變異傳給後代;具有不利變異的個體就容易被淘汰,產生後代的機會也少的多。因此,凡是在生存鬥爭中獲勝的個體都是對環境適應性比較強的。達爾文把這種在生存鬥爭中適者生存,不適者淘汰的過程叫做自然選擇。它表明,遺傳和變異是決定生物進化的內在因素。自然界中的多種生物之所以能夠適應環境而得以生存進化,是和遺傳和變異生命現象分不開的。正是生物的這種遺傳特性,使生物界的物種能夠保持相對的穩定;而生物的變異特性,使生物個體產生新的性狀,以致於形成新的物種,推動了生物的進化和發展。

遺傳算法是模擬達爾文的遺傳選擇和自然淘汰的生物進化過程的計算模型。它的思想源於生物遺傳學和適者生存的自然規律,是具有“生存+檢測”的迭代過程的搜索算法。遺傳算法以一種羣體中的所有個體爲對象,並利用隨機化技術指導對一個被編碼的參數空間進行高效搜索。其中,選擇、交叉和變異構成了遺傳算法的遺傳操作;參數編碼、初始羣體的設定、適應度函數的設計、遺傳操作設計、控制參數設定五個要素組成了遺傳算法的核心內容。 作爲一種新的全局優化搜索算法,遺傳算法以其簡單通用、魯棒性強、適於並行處理以及高效、實用等顯著特點,在各個領域得到了廣泛應用,取得了良好效果,並逐漸成爲重要的智能算法之一。

2.遺傳算法的基本步驟
 

我們習慣上把Holland1975年提出的GA稱爲傳統的GA。它的主要步驟如下:

編碼:GA在進行搜索之前先將解空間的解數據表示成遺傳空間的基因型串結構數據,這些串結構數據的不同組合便構成了不同的點。

初始羣體的生成:隨機產生N個初始串結構數據,每個串結構數據稱爲一個個體, N個個體構成了一個羣體。GA以這N個串結構數據作爲初始點開始迭代。

適應性值評估檢測:適應性函數表明個體或解的優劣性。不同的問題,適應性函數的定義方式也不同。

選擇:選擇的目的是爲了從當前羣體中選出優良的個體,使它們有機會作爲父代爲下一代繁殖子孫。遺傳算法通過選擇過程體現這一思想,進行選擇的原則是適應性強的個體爲下一代貢獻一個或多個後代的概率大。選擇實現了達爾文的適者生存原則。

交換:交換操作是遺傳算法中最主要的遺傳操作。通過交換操作可以得到新一代個體,新個體組合了其父輩個體的特性。交換體現了信息交換的思想。

變異:變異首先在羣體中隨機選擇一個個體,對於選中的個體以一定的概率隨機地改變串結構數據中某個串的值。同生物界一樣,GA中變異發生的概率很低,通常取值在0.001~0.01之間。變異爲新個體的產生提供了機會。

GA的計算過程爲:

選擇編碼方式

產生初始羣體

計算初始羣體的適應性值

如果不滿足條件 {
   選擇
   交換
   變異
   計算新一代羣體的適應性值
}


3.遺傳算法的特點

遺傳算法作爲一種快捷、簡便、容錯性強的算法,在各類結構對象的優化過程中顯示

出明顯的優勢。與傳統的搜索方法相比,遺傳算法具有如下特點:

搜索過程不直接作用在變量上,而是在參數集進行了編碼的個體。此編碼操作,
使得遺傳算法可直接對結構對象(集合、序列、矩陣、樹、圖、鏈和表)進行操作。

搜索過程是從一組解迭代到另一組解,採用同時處理羣體中多個個體的方法,降
低了陷入局部最優解的可能性,並易於並行化。

採用概率的變遷規則來指導搜索方向,而不採用確定性搜索規則。
對搜索空間沒有任何特殊要求(如連通性、凸性等),只利用適應性信息,不需要
導數等其它輔助信息,適應範圍更廣。

 

4.遺傳算法的研究歷史與現狀

遺傳算法研究的興起是在80年代末和90年代初期,但它的歷史起源可追溯至60年代

初期。早期的研究大多以對自然系統的計算機模擬爲主。如Fraser的模擬研究,他提出了和現在的遺傳算法十分相似的概念和思想。Holland和DeJong的創造性研究成果改變了早期遺傳算法研究的無目標性和理論指導的缺乏。其中,Holland於1975年出版的著名著作<<自然系統和人工系統的適配>>系統地闡述了遺傳算法的基本理論和方法,並提出了對遺傳算法的理論研究和發展極爲重要的模式理論。這一理論首次確認了結構重組遺傳操作對於獲得隱並行性的重要性。

同年,DeJong的重要論文<<遺傳自適應系統到的行爲分析>>將Holland的模式理論與他的計算實驗結合起來,並提出了諸如代溝等新的遺傳操作技術。可以認爲,DeJong所作的研究工作是遺傳算法發展過程中的一個里程碑。

進入80年代,遺傳算法迎來了興盛發展時期,無論是理論研究還是應用研究都成了十分熱門的課題。尤其是遺傳算法的應用領域也不斷擴大。目前遺傳算法所涉及的主要領域有自動控制、規劃設計、組合優化、圖象處理、信號處理、人工生命等。可見,遺傳算法的應用研究已從初期的組合優化求解拓展到了許多更新。更工程化的應用方面。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章