遗传算法GA求解函数极值.doc

遗传算法GA求解函数极值.doc

ID:56998610

大小:27.50 KB

页数:6页

时间:2020-07-30

遗传算法GA求解函数极值.doc_第1页
遗传算法GA求解函数极值.doc_第2页
遗传算法GA求解函数极值.doc_第3页
遗传算法GA求解函数极值.doc_第4页
遗传算法GA求解函数极值.doc_第5页
资源描述:

《遗传算法GA求解函数极值.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、主程序%%GAclc%清屏clearall;%删除workplace变量closeall;%关掉显示图形窗口warningoff%%参数初始化popsize=100;%种群规模lenchrom=7;%变量字串长度pc=0.7;%设置交叉概率,本例中交叉概率是定值,若想设置变化的交叉概率可用表达式表示,或从写一个交叉概率函数,例如用神经网络训练得到的值作为交叉概率pm=0.3;%设置变异概率,同理也可设置为变化的maxgen=100;%进化次数%种群popmax=50;popmin=0;bound=[popminpopmax;popminpopmax;popminpo

2、pmax;popminpopmax;popminpopmax;popminpopmax;popminpopmax];%变量范围%%产生初始粒子和速度fori=1:popsize%随机产生一个种群GApop(i,:)=Code(lenchrom,bound);%随机产生个体%计算适应度fitness(i)=fun(GApop(i,:));%染色体的适应度end%找最好的染色体[bestfitnessbestindex]=min(fitness);zbest=GApop(bestindex,:);%全局最佳gbest=GApop;%个体最佳fitnessgbest=fi

3、tness;%个体最佳适应度值fitnesszbest=bestfitness;%全局最佳适应度值%%迭代寻优fori=1:maxgeni%种群更新GA选择更新GApop=Select2(GApop,fitness,popsize);%交叉操作GAGApop=Cross(pc,lenchrom,GApop,popsize,bound);%变异操作GA变异GApop=Mutation(pm,lenchrom,GApop,popsize,[imaxgen],bound);pop=GApop;forj=1:popsize%适应度值if0.072*pop(j,1)+0.06

4、3*pop(j,2)+0.057*pop(j,3)+0.05*pop(j,4)+0.032*pop(j,5)+0.0442*pop(j,6)+0.0675*pop(j,7)<=264.4if128*pop(j,1)+78.1*pop(j,2)+64.1*pop(j,3)+43*pop(j,4)+58.1*pop(j,5)+36.9*pop(j,6)+50.5*pop(j,7)<=69719fitness(j)=fun(pop(j,:));endend%个体最优更新iffitness(j)

5、essgbest(j)=fitness(j);end%群体最优更新iffitness(j)

6、子程序funfunctiony=fun(x)y=0.072*x(1)+0.063*x(2)+0.057*x(3)+0.05*x(4)+0.032*x(5)+0.0442*x(6)+0.0675*x(7);Mutationfunctionret=Mutation(pmutation,lenchrom,chrom,sizepop,pop,bound)%本函数完成变异操作%pcorssinput:变异概率%lenchrominput:染色体长度%chrominput:染色体群%sizepopinput:种群规模%popinput:当前种群的进化代数和最大的进化代数信息%r

7、etoutput:变异后的染色体fori=1:sizepop%随机选择一个染色体进行变异pick=rand;whilepick==0pick=rand;endindex=ceil(pick*sizepop);%变异概率决定该轮循环是否进行变异pick=rand;ifpick>pmutationcontinue;endflag=0;whileflag==0%变异位置pick=rand;whilepick==0pick=rand;endpos=ceil(pick*sum(lenchrom));%随机选择了染色体变异的位置,即选择了第pos个变量进行变异v=chrom

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。