clc;
clear all;
c1 = 1.49445;
c2 = 1.49445;%速度学习因子
max_genxin = 100;%最大迭代次数
size_zhongqun = 20;%种群规模
max_geti = 5;%个体(自变量取值)最大值(位置)
min_geti = -5;
v_max = 1;%速度最大值
v_min = -1;%速度最小值
%%种群初始化
var_num = 2;%适应度函数自变量个数
zhongqun = 5*rand(size_zhongqun,var_num);%初始化粒子
v_zhongqun = rand(size_zhongqun,var_num);%初始化粒子速度
for i = 1:size_zhongqun
fitness(i) = fun_shiyingdu(zhongqun(i,:)); %计算适应度值
end
%%寻找初始极值
[bestfitness_value, bestfitness_weizhi] =min(fitness);
jizhi_zhongqun =zhongqun(bestfitness_weizhi,:);%群体极值位置
jizhi_geti = zhongqun;%个体极值位置
fitnessbest_geti = fitness;%个体极值适应度值
fitnessbest_group = bestfitness_value;%群体极值适应度值
%%迭代寻优
for i = 1:max_genxin
for j = 1:size_zhongqun