①首先形成壹組候選解。
②根據壹些適應條件計算這些候選解的適應度。
③根據適應度,保留部分候選解,放棄部分候選解。
④對保留的候選解進行壹些運算,生成新的候選解。
在遺傳算法中,上述特征以壹種特殊的方式組合在壹起:基於染色體組的並行搜索、帶有猜測性質的選擇操作、交換操作和變異操作。這種特殊的組合將遺傳算法與其他搜索算法區分開來。
遺傳算法還具有以下特點:
(1)遺傳算法是從問題解的字符串集合出發,而不是從單個解出發。這是遺傳算法與傳統優化算法的壹個巨大區別。傳統的優化算法從單個初始值叠代尋找最優解;很容易陷入局部最優解。遺傳算法從字符串集合出發,覆蓋面大,有利於全局優化。
(2)遺傳算法同時處理種群中的多個個體,即在搜索空間中評估多個解,降低了陷入局部最優解的風險,算法本身也容易實現並行。
(3)遺傳算法基本不需要搜索空間的知識或其他輔助信息,只使用適應度函數值對個體進行評價,然後進行遺傳操作。適應度函數不受連續可微的限制,其定義域可以任意設定。這壹特點大大擴展了遺傳算法的應用範圍。
(4)遺傳算法不使用確定性規則,而是使用概率轉移規則來引導他的搜索方向。
(5)具有自組織、自適應、自學習的習慣。當遺傳算法利用進化過程中獲得的信息來組織自己的搜索時,適應度高的個體生存概率更高,獲得更適應的基因結構。
(6)此外,算法本身還可以采用動態自適應技術,在進化過程中自動調整算法的控制參數和編碼精度,如采用模糊自適應方法。