📄 wh_zj1.m
字号:
function y=wh_ZJ(Initial_Group,G_Sample_Sum,G_Sample_Sum_Dimension)
%G_Sample_Sum群体中个体总数
for i=1:G_Sample_Sum
ZJ_Sample(i)=i;%生成杂交采样数组
end
Count=G_Sample_Sum*2;
for i=1:Count
while(1)%A------产生杂交的初始条件
ZJ_Sample_Rand1=round(G_Sample_Sum*rand(1));%ZJ_Sample_Rand1,ZJ_Sample_Rand2产生变异个体元素的位置
ZJ_Sample_Rand2=round(G_Sample_Sum*rand(1));
ZJ_Position=round(G_Sample_Sum_Dimension*rand(1));
if and(and((ZJ_Sample_Rand1~=0),(ZJ_Sample_Rand2~=0)),and((ZJ_Position~=0),(ZJ_Sample_Rand1~=ZJ_Sample_Rand2)))
break;
end
end%A---while
if and((ZJ_Sample(ZJ_Sample_Rand1)~=0),(ZJ_Sample(ZJ_Sample_Rand2)~=0))
for i=1:ZJ_Position
T=Initial_Group(ZJ_Sample(ZJ_Sample_Rand1),ZJ_Position);
Initial_Group(ZJ_Sample(ZJ_Sample_Rand1),ZJ_Position)=Initial_Group(ZJ_Sample(ZJ_Sample_Rand2),ZJ_Position);
Initial_Group(ZJ_Sample(ZJ_Sample_Rand2),ZJ_Position)=T;
end%i
ZJ_Sample(ZJ_Sample_Rand1)=0;ZJ_Sample(ZJ_Sample_Rand2)=0;
end
end
y=Initial_Group;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -