📄 ljcluster.m
字号:
function y = LJcluster(Swarm)%传递最优的粒子群的位置b(j,z)三维
[m,Dim,Pop] = size(Swarm);
% spherical coordinates
%minEnergy = zeros(SwarmSize,1);
%N = Dim / 3;
%for k = 1 : SwarmSize
% x = Swarm(k,:);
% for i = 1 : N-1
% for j = i+1 : N
% r = (x(3*j)*cos(x(3*j-2))*cos(x(3*j-1))-x(3*i)*cos(x(3*i-2))*cos(x(3*i-1)))^2 + ...
% (x(3*j)*cos(x(3*j-2))*sin(x(3*j-1))-x(3*i)*cos(x(3*i-2))*sin(x(3*i-1)))^2 + ...
% (x(3*j)*sin(x(3*j-2))-x(3*i)*sin(x(3*i-2)))^2;
% minEnergy(k) = minEnergy(k) + r^(-6) - 2*r^(-3);
% end
% end%
%end
%return
%function y=Rastrigin(x,Lap,L,d)
%Rastrigin函数
%输入x,给出相应的y值,在x=(0,0,…,0)处有全局极小点0.
%编制人:
%编制日期:
%y=ones(ParticleSize,Dim);%真他妈的是经验之谈
y=0;
for j=1:Pop
x=Swarm(:,:,j);
for d=1:Dim
x(d)=x(1,d);
%y=Swarm.^2-10*cos(2*pi*Swarm)+10;
y=y+(x(d).^2-10*cos(2*pi*x(d))+10);
%y=-y;
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -