进化算法作业 1 全局优化问题 (1) 422221614121144311
24minxxxxxxxxf
ts 55ix,2,1i 此问题的全局最优值min1
0316f
一.程序 (1)主函数: main
m clear all; clc; popsize=60; %种群规模 chromlength=34; %二进制编码,编码精度为 0
0001,所以串长 l 为 17 pc=0
7; %杂交概率 pm=0
1; %变异概率 t=0; %进化代数初始为 0 pop=initpop(popsize,chromlength); %随机产生初始种群 while ty(t) newpop3(1,:)=bestindividual; %保留最佳个体 end pop=newpop3; %产生新种群 end y; %每代的最佳目标函数值 x1; %每代的最佳目标函数值对应的自变量 x2; [gy,k]=min(y) %gy 为全局最优值,k 为最优值对应的进化代数 gx1=x1(k) %全局最优值对应的自变量 gx2=x2(k) plot(y) %最优值收敛曲线 title('收敛性曲线'); xlabel('进化代数'); ylabel('函数值'); axis([0,500,-1
5]); (2)初始种群:initpop
m function pop=initpop(popsize,chromlength) pop=round(rand(popsize,chromlength)); %rand 随机产生[0,1]区间的一个小数,rand 四舍五入取整 end (3)计算目标函数值::calobjvalue
m function [objvalue] =calobjvalue(