函数最值问题:F=X2+Y2-Z2,clearclc%%初始化pc=0
9;%交叉概率pm=0
05;%变异概率popsize=500;chromlength1=21;chromlength2=23;chromlength3=20;chromlength=chromlength1+chromlength2+chromlength3;pop=initpop(popsize,chromlength);%产生初始种群fori=1:500[objvalue]=calobjvalue(pop);%计算目标函数值[fitvalue]=calfitvalue(objvalue);%计算个体适应度[newpop]=selection(pop,fitvalue);%选择[newpop1]=crossover(newpop,pc);%交叉[newpop2]=mutation(newpop1,pm);%变异[newobjvalue]=newcalobjvalue(newpop2);%计算最新代目标函数值[newfitvalue]=newcalfitvalue(newobjvalue);%计算新种群适应度值[bestindividual,bestfit]=best(newpop2,newfitvalue);%求出群体中适应值最大的个体及其适应值y(i)=max(bestfit);%储存最优个体适应值pop5=bestindividual;%储存最优个体n(i)=i;%记录最优代位置%解码x1(i)=0+decodechrom(pop5,1,21)*2/(pow2(21)-1);x2(i)=decodechrom(pop5,22,23)*6/(pow2(23)-1)-1;x3(i)=decodechrom(pop5,45,20)*1/(pow2(20)-1);pop=newpop2;end%%绘图f