clear all
close all
clc
%%%%%%%%参数设置%%%%%%%%%%
Dim = 3; % 维数
SwarmSize = 10; % 群规模
MaxIter =100; % 最大迭代次数
MinFit = 0.1; % 最小适应值
d=2;%天牛左右两须之间的距离
step=2;%初始步长
Ub = [100 100 100];%优化参数上界
Lb = [0.1 0.1 0.1];%优化参数下界
%%%%%%%%%%%%% 初始化
for i=1:SwarmSize
pop(i,:)=Ub.*rand(1,Dim);
m(i)= BAS_PID(pop(i,:));
end
%% %%%%%%%%%个体极值和群体极值
[bestf bestindex]=min(m);
zbest=pop(bestindex,:); % 最佳
fzbest=bestf; % 全局最佳适应值
iter = 0;
y_fitness = zeros(1,MaxIter); % 预先产生4个空矩阵
K_p = zeros(1,MaxIter);
K_i = zeros(1,MaxIter);
K_d = zeros(1,MaxIter);
for t=1:MaxIter
for i=1:SwarmSize
dir=rand