一種計算機編程算法遺傳程序(GPs)通過生成和運行數千個程序來工作,并選擇最有效的程序來使用。例如,GP可以用來創建一個程序來繪制一張照片的草圖。GP要做的第一件事是創建一組程序,這些程序以隨機組合的方式使用各種計算機繪圖功能。然后GP將按順序運行這些程序,并將每個程序的結果輸出到圖像文件中GP的下一步是從集合中選出最好的程序。這個過程通常是遺傳程序設計中最困難的部分。在繪圖程序中,GP將使用圖像比較軟件來確定哪個隨機繪制的圖形與軟件試圖繪制的圖像最相似,在隨機生成的程序中,GP將選擇前幾個并丟棄其余的選擇過程被稱為適應度評估,通常被認為是遺傳程序設計中最困難的部分。一旦前幾個程序被選中,GP將把它們作為新一批程序的基礎。每一批新程序被稱為一代。產生新一代的兩種方法是變異和交叉。變異的工作方式是從現有的程序中選取一個,然后對其進行隨機更改,希望能變得更好。交叉,也稱為育種,通過取兩個在創建一批新程序后,GP重復運行和評估這些程序的過程,然后重復選擇、刪除和生成過程。GPs在找到一個結果令人滿意的單一程序之前,通常會運行數百代。盡管有這個局限性,遺傳編程是解決某些類型的計算難題的常用方法,包括機器人工程和人工智能問題。
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!