% 量子粒子群算法
function QPSO(PopNum,Maxstep,dim)
close all;
% PopNum Number of Population
% Maxstep the max step of generate
a = rand; u = rand;
pop_bound = [-5 5];% the boundary of population
dim = 2;
% init of population
pop = pop_bound(1)+rand(PopNum,dim)*(pop_bound(2)-pop_bound(1));
% calculate the fitness_value of Pop
pbest = pop;
gbest = zeros(1,dim);
data1 = zeros(Maxstep,PopNum,dim);
data2 = zeros(Maxstep,PopNum);
for i = 1:PopNum
fit(i) = fitness(pop(i,1),pop(i,2));
f_pbest(i) = fit(i);
end
g = min(find(f_pbest == min(f_pbest(1:PopNum))));
gbest = pbest(g,:);
f_gbest = f_pbest(g);
figure;
x=-5:.1:5;[xx,yy]=meshgrid(x,
close all;
% PopNum Number of Population
% Maxstep the max step of generate
a = rand; u = rand;
pop_bound = [-5 5];% the boundary of population
dim = 2;
% init of population
pop = pop_bound(1)+rand(PopNum,dim)*(pop_bound(2)-pop_bound(1));
% calculate the fitness_value of Pop
pbest = pop;
gbest = zeros(1,dim);
data1 = zeros(Maxstep,PopNum,dim);
data2 = zeros(Maxstep,PopNum);
for i = 1:PopNum
end
g = min(find(f_pbest == min(f_pbest(1:PopNum))));
gbest = pbest(g,:);
f_gbest = f_pbest(g);
figure;
x=-5:.1:5;[xx,yy]=meshgrid(x,