clear
clf
popsize=30; %群体大小
chromlength=147; %字符串长度(个体长度)
pc=0.6; %交叉概率
pm=0.001; %变异概率
%pop=initpop(popsize,chromlength); %随机产生初始群体
pop = round(rand(popsize,chromlength));
for i=1:30 %20为迭代次数
[objvalue]=calobjvalue(pop); %计算目标函数
fitvalue=calfitvalue(objvalue); %计算群体中每个个体的适应度
[newpop]=selection(pop,fitvalue); %复制
[newpop]=crossover(pop,pc); %交叉
%[newpop]=mutation(pop,pm); %变异
[bestindividual,bestfit]=best(pop,fitvalue); %求出群体中适应值最大的个体及其适应值
y(i)=max(bestfit);
n(i)=i;
pop5=bestindividual;
x(i)=decodechrom(pop5,1,chromlength)*10/1023;
%pop=newpop;
end
fplot('10*sin(5*x)+7*cos(4*x)',[0 10])
hold on
plot(x,y,'r*')
hold off
[z index]=max(y); %计算最大值及其位置
x5=x(index)%计算最大值对应的x值
y=z
result = handle_data(pop);
final_result = final_res(result,10);
yichuansuanfa.rar_decodebinary
版权申诉
171 浏览量
2022-09-23
12:00:51
上传
评论
收藏 4KB RAR 举报
weixin_42651887
- 粉丝: 79
- 资源: 1万+