📄 emigrant_chao.asv
字号:
function x=emigrant_chao(us,ux,n,k)
%馄饨移民算子。
%us,ux分别为设计变量上下限数组,采用Logistic馄饨模型。
%+++++++++++++++++for debug this file++++++++++++++++++++++++
%chaoV=0;n=5;k=30;
%ux=[78,33,27,27,27]; us=[102,45,45,45,45];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
global chaoV chaoV1;
if chaoV==0
ht=zeros(1,n);
for i=1:n
ht(1,i)=unifrnd(0,1); %随机生成初始馄饨变量行向量。
end
else
ht(1,:)=chaoV1;
chaoV=chaoV+1;
end
%+++++++++++++++++++++++++++++++++++++++++
for j=1:n %生成馄饨变量矩阵femigx的第一行。
femigx(1,j)=4*ht(1,j)*(1-ht(1,j));
end
for i=2:k %完成混沌变量矩阵。
for j=1:n
femigx(i,j)=4*femigx(i-1,j)*(1-femigx(i-1,j));
end
end
chaoV1=femigx(k,:)
femigx=2/pi*asin(femigx.^0.5);%均匀概率转换
%+++++++++++++++++++++++++++++++++++++++++
for i=1:k %把混沌变量矩阵变成设计变量矩阵semigx。
for j=1:n
semigx(i,j)=ux(j)+(us(j)-ux(j))*femigx(i,j);
end
end
x=semigx(k,:);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -