-
大小: 280KB文件類型: .zip金幣: 2下載: 1 次發(fā)布日期: 2024-02-06
- 語言: Matlab
- 標(biāo)簽: 遺傳算法??協(xié)同進(jìn)化??
資源簡介
內(nèi)有代碼、報告。
1、理解協(xié)同進(jìn)化遺傳算法的思想。比較標(biāo)準(zhǔn)遺傳算法和協(xié)同進(jìn)化遺傳算法在穩(wěn)定性、求解 最優(yōu)值所需的迭代次數(shù)(收斂性快慢)等方面的區(qū)別,比較它們的進(jìn)化過程圖。驗證協(xié)同進(jìn) 化遺傳算法收斂速度快,兼顧算法的全局和局部搜索能力,且能抑制未成熟收斂現(xiàn)象的發(fā)生 的結(jié)論。
2、利用 Matlab 實現(xiàn)協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題。
3、分析協(xié)同進(jìn)化遺傳算法與標(biāo)準(zhǔn)遺傳算法相比所展現(xiàn)的優(yōu)越性。
1、理解協(xié)同進(jìn)化遺傳算法的思想。比較標(biāo)準(zhǔn)遺傳算法和協(xié)同進(jìn)化遺傳算法在穩(wěn)定性、求解 最優(yōu)值所需的迭代次數(shù)(收斂性快慢)等方面的區(qū)別,比較它們的進(jìn)化過程圖。驗證協(xié)同進(jìn) 化遺傳算法收斂速度快,兼顧算法的全局和局部搜索能力,且能抑制未成熟收斂現(xiàn)象的發(fā)生 的結(jié)論。
2、利用 Matlab 實現(xiàn)協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題。
3、分析協(xié)同進(jìn)化遺傳算法與標(biāo)準(zhǔn)遺傳算法相比所展現(xiàn)的優(yōu)越性。

代碼片段和文件信息
%%?多種群遺傳算法
clear;
%?clc
%?close?all
NIND=40;???????????????%個體數(shù)目
NVAR=1;????????????????%變量的維數(shù)
PRECI=20;??????????????%變量的二進(jìn)制位數(shù)
GGAP=0.9;??????????????%代溝
MP=10;?????????????????%種群數(shù)目
FieldD=[PRECI;0;1;1;0;1;1];??%譯碼矩陣
for?i=1:MP
????Chrom{i}=crtbp(NIND?NVAR*PRECI);???????????????????????%創(chuàng)建初始種群
end
pc=0.7+(0.9-0.7)*rand(MP1);????%在【0.70.9】范圍i內(nèi)隨機(jī)產(chǎn)生交叉概率
pm=0.001+(0.05-0.001)*rand(MP1);??%在【0.0010.05】范圍內(nèi)隨機(jī)產(chǎn)生變異概率
gen=0;??%初始遺傳代數(shù)
gen0=0;?%初始保持代數(shù)
MAXGEN=10;??%最優(yōu)個體最少保持代數(shù)
maxY=0;?%最優(yōu)值
for?i=1:MP
????ObjV{i}=objectFunction(bs2rv(Chrom{i}?FieldD));%計算各初始種群個體的目標(biāo)函數(shù)值
end
MaxObjV=zeros(MP1);???????????%記錄精華種群
MaxChrom=zeros(MPPRECI*NVAR);?%記錄精華種群的編碼
while?gen0<=MAXGEN
????gen=gen+1;???????%遺傳代數(shù)加1
????for?i=1:MP
????????FitnV{i}=ranking(-ObjV{i});??????????????????????%?各種群的適應(yīng)度
????????SelCh{i}=select(‘sus‘?Chrom{i}?FitnV{i}GGAP);?%?選擇操作
????????SelCh{i}=recombin(‘xovsp‘SelCh{i}?pc(i));??????%?交叉操作
????????SelCh{i}=mut(SelCh{i}pm(i));????????????????????%?變異操作
????????ObjVSel=objectFunction(bs2rv(SelCh{i}?FieldD));?%?計算子代目標(biāo)函數(shù)值
????????[Chrom{i}ObjV{i}]=reins(Chrom{i}SelCh{i}11ObjV{i}ObjVSel);????%重插入操作
????end
????[ChromObjV]=immigrant(ChromObjV);?????%?移民操作
????[MaxObjVMaxChrom]=EliteInduvidual(ChromObjVMaxObjVMaxChrom);?????%?人工選擇精華種群
????YY(gen)=max(MaxObjV);????%找出精華種群中最優(yōu)的個體
????if?YY(gen)>maxY???%判斷當(dāng)前優(yōu)化值是否與前一次優(yōu)化值相同
????????maxY=YY(gen);?%更新最優(yōu)值
????????gen0=0;
????else
????????gen0=gen0+1;?%最優(yōu)值保持次數(shù)加1
????end
end
%%?進(jìn)化過程圖
plot(1:genYY)
xlabel(‘進(jìn)化代數(shù)‘)
ylabel(‘最優(yōu)解變化‘)
title(‘進(jìn)化過程‘)
xlim([1gen])
%%?輸出最優(yōu)解
[YI]=max(MaxObjV);????%找出精華種群中最優(yōu)的個體
X=(bs2rv(MaxChrom(I:)?FieldD));???%最優(yōu)個體的解碼解
disp([‘最優(yōu)值為:‘num2str(Y)])
disp([‘對應(yīng)的自變量取值:‘num2str(X)])
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-03-06?19:53??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\
?????文件?????????349??2019-04-21?17:49??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\EliteInduvidual.m
?????文件????????2063??2019-04-22?11:21??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\MPGA.m
?????文件????????2013??2019-04-22?17:28??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\MPGA_1.m
?????文件?????????220??2019-04-21?17:49??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\ob
?????文件?????????217??2019-04-22?11:24??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\ob
?????文件????????1551??2019-04-21?17:49??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\SGA.m
?????文件????????2014??2019-04-21?17:49??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\danyuan.m
?????文件?????????457??2019-04-21?17:49??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\immigrant.m
?????文件??????165775??2020-03-06?19:52??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題.docx
?????文件??????164621??2020-03-06?19:53??實驗二?協(xié)同進(jìn)化遺傳算法求解函數(shù)優(yōu)化問題?-?副本\實驗二.docx
評論
共有 條評論