什么是進化計算
編輯在計算機科學中,進化計算是受生物進化啟發的用于全局優化的一系列算法,以及研究這些算法的人工智能和軟計算的子領域。在技??術方面,它們是具有元啟發式或隨機優化特征的基于群體的試錯問題求解器家族。
在進化計算中,生成并迭代更新一組初始候選解。每一代都是通過隨機刪除不太想要的解決方案并引入小的隨機變化來產生的。在生物術語中,人口的解決方案進行自然選擇(或人工選擇)和突變。結果,種群將逐漸演化以增加適應度,在這種情況下是算法選擇的適應度函數。
進化計算技術可以在廣泛的問題設置中產生高度優化的解決方案,使它們在計算機科學中很受歡迎。存在許多變體和擴展,適用于更具體的問題和數據結構系列。進化計算有時也用于進化生物學,作為一種計算機實驗程序來研究一般進化過程的共同方面。
進化計算的歷史
編輯進化編程是由美國的LawrenceJ.Fogel引入的,而JohnHenryHolland將他的方法稱為遺傳算法。在德國IngoRechenberg和Hans-PaulSchwefel介紹了進化策略。這些領域分別發展了大約15年。從九十年代初開始,它們被統一為一種技術的不同代表(“方言”),稱為進化計算。同樣在90年代初期,出現了遵循一般思想的第四個流——基因編程.自1990年代以來,受自然啟發的算法正成為進化計算中越來越重要的一部分。
這些術語表示進化計算領域,并將進化編程、進化策略、遺傳算法和遺傳編程視為子領域。
NilsAallBarricelli于1953年使用進化算法和人工生命技術對進化進行了最早的計算模擬,于1954年發表了xxx批結果。1950年代的另一位先驅是AlexFraser,他發表了一系列論文關于人工選擇的模擬。由于IngoRechenberg在1960年代和1970年代初期的工作,人工進化成為一種廣泛認可的優化方法,他使用進化策略來解決復雜的工程問題。遺傳算法特別流行于約翰·霍蘭德(JohnHolland)的著作。隨著學術興趣的增長,計算機能力的急劇增加允許實際應用,包括計算機程序的自動進化。進化算法現在比人類設計師制作的軟件更有效地解決多維問題,也用于優化系統設計。
進化算法
編輯進化算法形成進化計算的一個子集,因為它們通常只涉及實現受生物進化啟發的機制的技術,例如繁殖、突變、重組、自然選擇和適者生存。優化問題的候選解決方案在群體中扮演個體的角色,成本函數決定了解決方案“生存”的環境(另見適應度函數)。在重復應用上述算子之后,種群的進化就會發生。
在這個過程中,有兩種主要力量構成了進化系統的基礎:重組突變和交叉創造了必要的多樣性,從而促進了新穎性,而選擇則是一種提高質量的力量。
這種進化過程的許多方面都是隨機的。由于重組和突變而改變的信息片段是隨機選擇的。另一方面,選擇算子可以是確定性的,也可以是隨機的。在后一種情況下,具有較高適應度的個體比具有較低適應度的個體有更高的機會被選中,但通常即使是弱個體也有機會成為父母或生存。
進化算法和生物學
編輯遺傳算法提供了建模生物系統和系統生物學的方法,這些方法與動態系統理論相關,因為它們用于預測系統的未來狀態。這只是一種生動(但可能具有誤導性)的方式來引起人們對生物學發展的有序、良好控制和高度結構化特征的關注。
然而,算法和信息學的使用,特別是計算理論的使用,超出了動態系統的類比,也與理解進化本身有關。
這種觀點的優點是承認發展沒有中央控制;生物體的發育是細胞內部和細胞之間局部相互作用的結果。在我們看來,關于程序開發并行的最有前途的想法似乎指向了細胞內進程與現代計算機的低級操作之間明顯相似的類比。因此,生物系統就像計算機處理輸入信息以計算下一個狀態,因此生物系統比經典動力系統更接近于計算。
此外,遵循計算理論的概念,生物有機體中的微觀過程從根本上是不完整和不可判定的(完整性(邏輯)),這意味著“細胞和計算機之間的類比背后不僅僅是一個粗略的比喻。
與計算的類比還擴展到遺傳系統和生物結構之間的關系,這通常被認為揭示了解釋生命起源的最緊迫問題之一。
進化自動機是進化圖靈機的概括,已被引入以更精確地研究生物和進化計算的特性。特別是,它們允許在進化計算的表達能力上獲得新的結果。這證實了關于自然進化和進化算法和過程的不可判定性的初步結果。進化有限自動機,在終端模式下工作的進化自動機的最簡單子類可以接受給定字母表上的任意語言,包括非遞歸可枚舉(例如,對角化語言)和遞歸可枚舉但不能遞歸的語言(例如,通用圖靈機的語言)。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/124823/