crossover.m

来自「本程序模拟GP算法处理数据的方法步骤How can computers lear」· M 代码 · 共 48 行

M
48
字号
function [child1,child2]=crossover(fa,fa2)
ss='';
s=fa;
a1=find(s=='+');
ss(a1)='+';
a1=find(s=='-');
ss(a1)='-';
a1=find(s=='*');
ss(a1)='*';
a1=find(s=='/');
ss(a1)='/';
fa=ss;
ss='';
s=fa2;
a1=find(s=='+');
ss(a1)='+';
a1=find(s=='-');
ss(a1)='-';
a1=find(s=='*');
ss(a1)='*';
a1=find(s=='/');
ss(a1)='/';
fa2=ss;
s='';
s2='';
s4='';
s3='';
n11=rand*length(fa);
n22=rand*length(fa2);
n1=ceil(n11)+1;
n2=ceil(n22)+1;
for i=1:n1-1
    s(i)=fa(i); 
end

for i=1:n2-1
s2(i)=fa2(i);
end
for i=n1:length(fa)
    s3(i)=fa(i);
end
for i=n2:length(fa2)
    s4(i)=fa2(i);
end
    
child1=strcat(s,s4);
child2=strcat(s2,s3);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?