求粒子群算法MATLAB完整代码
的有关信息介绍如下:%% 清空环境clearclctic%% 参数初始化% 粒子群算法中的两个参数c1 = 1.49445;c2 = 1.49445;maxgen = 200; % 进化次数sizepop = 20; % 种群规模Vmax = 1;Vmin = -1;popmax = 5;popmin = -5;%% 产生初始粒子和速度for i = 1:sizepop % 随机产生一个种群 pop(i,:) = 5 * rands(1,2); % 初始种群 V(i,:) = rands(1,2); % 初始化速度 % 计算适应度 fitness(i) = fun(pop(i,:)); % 染色体的适应度end% 找最好的染色体[bestfitness bestindex] = min(fitness);zbest = pop(bestindex,:); % 全局最佳gbest = pop; % 个体最佳fitnessgbest = fitness; % 个体最佳适应度值fitnesszbest = bestfitness; % 全局最佳适应度值%% 迭代寻优for i = 1:maxgen for j = 1:sizepop % 速度更新 V(j,:) = V(j,:) + c1*rand*(gbest(j,:) - pop(j,:)) + c2*rand*(zbest - pop(j,:)); V(j,find(V(j,:)>Vmax)) = Vmax; V(j,find(V(j,:)