基因演算法 是什麼?

Genetic Algorithm — 基因演算法 的完整解釋

基因演算法是一種模擬生物進化過程的優化算法,通過選擇、交叉和突變等操作,逐步演化出更優的解,用於解決複雜的搜索和優化問題。

容易混淆

基因演算法 vs 窮舉法 窮舉法把所有可能都試過。 基因演算法只保留和繁殖較好的候選解。

基因演算法 vs 集成學習 集成學習是把多個模型結合起來。 基因演算法是用來搜尋解的優化方法,不是在直接組模型。

記住這句就好

選好的、混新的、再小改,就是基因演算法的核心。

實際案例

超參數調校 想找學習率、層數和正則化組合時,可以用它在大量候選設定裡慢慢演化。

排程最佳化 在工廠排班或路徑安排上,當搜尋空間太大,基因演算法常能找出不錯的近似解。

算法與應用

它通常經過族群初始化、適應度評估、選擇、交叉與突變,再反覆迭代。 優點是搜尋範圍廣,缺點是參數不好調,也不保證一定找到全域最佳。

情境判斷

Q1:如果問題空間很大又沒有明確梯度,基因演算法有機會派上用場嗎? → 有,這正是它常被拿來解的類型。

Q2:如果你只想快速得到精確到小數點後很多位的最優解,基因演算法一定最合適嗎? → 不一定,它比較擅長找不錯的近似解,不是每次都要追求數學上的精確最優。

相關術語

常見問題

基因演算法一定模仿真實生物嗎?

不一定,它只是借用了演化的概念。

適應度函數為什麼重要?

因為它決定哪些候選解更值得被留下來。

突變是不是越多越好?

不是,太多會讓搜尋變得像亂試。

它適合機器學習嗎?

適合做超參數搜尋或特徵搜尋,但不常拿來當主訓練法。