導航:首頁 > 源碼編譯 > 增加智能演算法中種群的多樣性

增加智能演算法中種群的多樣性

發布時間:2024-06-13 17:44:10

❶ 基本遺傳演算法介紹

遺傳演算法是群智能優化計算中應用最為廣泛、最為成功、最具代表性的智能優化方法。它是以達爾文的生物進化論和孟德爾的遺傳變異理論為基礎,模擬生物進化過程和機制,產生的一種群體導向隨機搜索技術和方法。

遺傳演算法的基本思想:首先根據待求解優化問題的目標函數構造一個適應度函數。然後,按照一定的規則生成經過基因編碼的初始群體,對群體進行評價、遺傳運算(交叉和變異)、選擇等操作。經過多次進化,獲得適應度最高的一個或幾個最優個體作為問題的最優解。

編碼是對問題的可行解的遺傳表示,是影響演算法執行效率的關鍵因素的之一。遺傳演算法中,一個解 稱為個體或染色體(chromosome),染色體由被稱為基因(gene)的離散單元組成,每個基因控制顏色體的一個或多個特性,通常採用固定長度的0-1二進制編碼,每個解對應一個唯一的二進制編碼串編碼空間中的二進制位串稱為基因型(genotype)。而實際所表示問題的解空間的對應點稱為表現型(phenotype)。

種群由個體構成,每個個體的染色體對應優化問題的一個初始解。

適應度函數是評價種群中個體對環境適應能力的唯一確定性指標,體現出「適者生存,優勝劣汰」這一自然選擇原則。

遺傳演算法在每次迭代過程中,在父代種群中採用某種選擇策略選擇出指定數目的哥特體提進行遺傳操作。最常用的選擇策略是正比選擇(proportional selection)策略。

在 交叉運算元中,通常由兩個被稱為父代(parent)的染色體組合,形成新的染色體,稱為子代(offspring)。父代是在種群中根據個體適應度進行選擇,因此適應度較高的染色體的基因更有可能被遺傳到下一代 。通過在迭代過程中不斷地應用交叉運算元,使優良個體的基因得以在種群中頻繁出現,最終使得整個種群收斂到一個最優解。

在染色體交叉之後產生的子代個體,其基因位可能以很小的概率發生轉變,這個過程稱為變異。變異是為了增強種群的多樣性,將搜索跳出局部最優解。

遺傳演算法的停止准則一般採用設定最大迭代次數或適應值函數評估次數,也可以是規定的搜索精度。

已Holland的基本GA為例介紹演算法等具體實現,具體的執行過程描述如下:

Step 1: 初始化 。隨機生成含有 個個體的初始種群 ,每個個體經過編碼對應著待求解優化問題的一個初始解。

Step 2: 計算適應值 。個體 ,由指定的適應度函數評價其適應環境的能力。不同的問題,適應度函數的構造方式也不同。對函數優化問題,通常取目標函數作為適應度函數。

Step 3: 選擇 。根據某種策略從當前種群中選擇出 個個體作為重新繁殖的下一代群體。選擇的依據通常是個體的適應度的高低,適應度高的個體相比適應度低的個體為下一代貢獻一個或多個後代的概率更大。選擇過程提現了達爾文「適者生存」原則。

Step 4: 遺傳操作 。在選出的 個個體中,以事件給定的雜交概率 任意選擇出兩個個體進行 交叉運算 ,產生兩個新的個體,重復此過程直到所有要求雜交的個體雜交完畢。根據預先設定的變異概率 在 個個體中選擇出若干個體,按一定的策略對選出的個體進行 變異運算

Step 5: 檢驗演算法等停止條件 。若滿足,則停止演算法的執行,將最優個體的染色體進行解碼得到所需要的最優解,否則轉到 Step 2 繼續進行迭代過程。

❷ 緹ゆ櫤鑳戒紭鍖栫畻娉曟湁鍝浜涳紵

鎺㈢儲鏅鴻兘嫻鋒磱錛氭彮縐樼兢鏅鴻兘浼樺寲綆楁硶鐨勫氬厓涓栫晫

鍦ㄥ綋浠婄殑縐戞妧棰嗗煙錛岀兢鏅鴻兘浼樺寲綆楁硶濡傚悓鐠鐠ㄦ槦娌籌紝奼囪仛浜嗘棤鏁板壋鏂版濈淮鐨勭伀鑺便傝繖浜涚畻娉曞熼壌鑷鑷鐒剁晫涓鐨勬櫤鎱э紝灝嗗姩鐗╄屼負銆佹暟瀛︽硶鍒欎笌鐗╃悊鍘熺悊宸у欒瀺鍚堬紝灞曠幇鍑哄己澶х殑浼樺寲鑳藉姏銆備互涓嬫槸涓浜涗護浜虹灘鐩鐨勭兢鏅鴻兘綆楁硶錛屽畠浠鍚勫叿鐗硅壊錛屽悇鏈夊崈縐嬨

棣栧厛錛岃╂垜浠鑱氱劍浜庣敓鐗╃晫鐨勭伒鎰熴綺掑瓙緹や紭鍖栵紙PSO錛錛屽傚悓楦熺兢涓鐨勯嗚埅鑰呭紩棰嗙潃瀵繪壘鏈浼樿В鐨勬柟鍚戱紱浜哄伐銍傜兢錛圓BC錛錛屽垯妯′豢銍滆渹鐨勯泦浣撳崗浣滐紝瀵繪壘椋熺墿婧愮殑鏁堢巼鎯婁漢錛钀ょ伀鉶綆楁硶錛團A錛甯冭胺楦熸悳緔錛圕S錛錛屽垯鍊熼壌浜嗘槅鉶鐨勯棯鐑佽屼負鍜岃縼寰欑瓥鐣ャ傛洿鏈鏋滆潎浼樺寲綆楁硶錛團OA錛鍊欓笩浼樺寲錛圡BO錛錛屾彮紺轟簡鑷鐒剁晫涓瑙呴熺瓥鐣ョ殑寰濡欎箣澶勶紝浠ュ強楦熺兢綆楁硶錛圔SA錛錛屽皢緹や綋鏅烘収鍙戞尌鍒版瀬鑷淬傚ぇ璞℃父鐗т紭鍖栵紙EHO錛夊拰銛楄櫕浼樺寲綆楁硶錛圙OA錛夊垯灞曠ず浜嗙敓鐗╃兢浣撶殑鍔ㄦ佸鉤琛¤兘鍔涳紝鑰嫻鋒磱鎹曢熻呯畻娉曪紙MPA錛鍒欐ā鎷熶簡嫻鋒磱鐢熸佷腑鐨勭珵浜変笌鍚堜綔銆

鎺ョ潃錛屾垜浠杞鍚戞暟瀛﹀拰鐗╃悊娉曞垯鐨勫惎榪銆傞粦媧炵畻娉曪紙BHA錛夛紝濡傚悓瀹囧畽涓鐨勫悶鍣鑰咃紝瀵繪壘鏈娣辯殑瑙e喅鏂規堬紱姝e雞浣欏雞綆楁硶錛圫CA錛錛屽垯宸у欏湴鋙嶅悎浜嗗懆鏈熸ц繍鍔ㄧ殑闊靛緥銆傜儹浜ゆ崲浼樺寲錛圱EO錛夊拰鍧囪浼樺寲錛圗O錛夊垯鎻紺轟簡鐗╃悊榪囩▼涓鐨勪紭鍖栫瓥鐣ワ紝璁╃畻娉曟洿鍔犵簿鍑嗐

褰撶劧錛岀兢鏅鴻兘騫墮潪浠呴檺浜庢ゃ傚己澶х殑閬椾紶綆楁硶錛圙A錛変互鑷鐒墮夋嫨鐨勫師鐞嗛┍鍔錛宸鍒嗚繘鍖栵紙DE錛鍒欏熼壌鐢熺墿榪涘寲榪囩▼鐨勯殢鏈烘у拰閫傚簲鎬э紱鑰屽拰璋愭悳緔錛圚S錛夊拰緇嗚弻瑙呴熶紭鍖栫畻娉曪紙BFOA錛夊垯灞曠幇鍑哄井瑙備笘鐣岀殑寰瑙傛櫤鎱с

鐒惰岋紝灝界¤繖浜涚畻娉曞睍鐜頒簡鍗撹秺鐨勬帰緔㈠拰寮鍙戞綔鍔涳紝瀹為檯搴旂敤涓錛屾瘡涓縐嶇畻娉曢兘鏈夊叾灞闄愭с傚傚悓娌℃湁鍏嶈垂鍗堥愮殑瀹氱悊錛屼紭鍖栬繃紼嬮渶鏍規嵁鍏蜂綋闂棰樺畾鍒訛紝璋冩暣綆楁硶鐨勬ц兘騫寵錛屼互鎻愬崌鍏跺湪鐗瑰畾鍦烘櫙涓嬬殑琛ㄧ幇銆

鎬葷殑鏉ヨ達紝緹ゆ櫤鑳戒紭鍖栫畻娉曟槸涓鐗囧厖婊℃椿鍔涚殑鍒涙柊棰嗗煙錛屽畠浠浠ヨ嚜鐒跺拰縐戝︾殑鏅烘収涓烘寚寮曪紝涓鴻В鍐沖嶆潅闂棰樻彁渚涗簡鏃犻檺鍙鑳姐傞氳繃娣卞叆鐞嗚В鍜屽閥濡欏簲鐢錛岃繖浜涚畻娉曞皢鎺ㄥ姩縐戞妧榪涙ワ紝濉戦犳湭鏉ャ

❸ IA優化演算法是什麼

IA優化演算法指的是免疫演算法是模仿生物免疫機制,結合基因的進化機理,人工構造出的一種新型智能優化演算法。它具有一般免疫系統的特徵,採用群體搜索策略,通過迭代計算,最終以較大的概率得到問題的最優解。

相比較於其他演算法,免疫演算法利用自身產生多樣性和維持機制的特點,保證了種群的多樣性,克服了一般尋優過程(特別是多峰值的尋優過程)中不可避免的「早熟」問題,可以求得全局最優解。免疫演算法具有自適應性、隨機性、並行性、全局收斂性、種群多樣性等優點。

免疫演算法主要模塊:

抗原識別與初始抗體產生。根據待優化問題的特點設計合適的抗體編碼規則,並在此編碼規則下利用問題的先驗知識產生初始抗體種群。

抗體評價。對抗體的質量進行評價,評價准則主要為抗體親和度和個體濃度,評價得出的優質抗體將進行進化免疫操作,劣質抗體將會被更新。

免疫操作。利用免疫選擇、克隆、變異、克隆抑制、種群刷新等運算元模擬生物免疫應答中的各種免疫操作,形成基於生物免疫系統克隆選擇原理的進化規則和方法,實現對各種最優化問題的尋優搜索。

閱讀全文

與增加智能演算法中種群的多樣性相關的資料

熱點內容
怎麼用c語言編譯簡單的小游戲 瀏覽:812
伺服器如何以域用戶登錄 瀏覽:602
安卓os14怎麼默認桌面 瀏覽:549
應用市場下載在哪個文件夾 瀏覽:895
安卓上的谷歌地圖怎麼用 瀏覽:183
安卓命令行打包 瀏覽:516
編程文字與數字教學視頻 瀏覽:817
如何看手機號碼注冊哪些app 瀏覽:413
linux查看總內存 瀏覽:852
python進程間共享 瀏覽:438
js如何獲取本地伺服器地址 瀏覽:70
gfx什麼時候支持安卓十一系統 瀏覽:941
壓縮機90兆帕 瀏覽:930
程序員調侃語句 瀏覽:581
不是php函數的是 瀏覽:1001
壓縮文件好處 瀏覽:786
3d266期神童三膽計演算法 瀏覽:189
通過愛思助手怎麼下載app 瀏覽:323
vi命令將文件創在桌面上 瀏覽:925
程序員做競價 瀏覽:698