mutation.m
来自「本程序模拟GP算法处理数据的方法步骤How can computers lear」· M 代码 · 共 44 行
M
44 行
function y=mutation(n)
ss='';
s=n;
a1=find(s=='+');
ss(a1)='+';
a1=find(s=='-');
ss(a1)='-';
a1=find(s=='*');
ss(a1)='*';
a1=find(s=='/');
ss(a1)='/';
n=ss;
s='+-*/';
a='';
r=ceil(rand*8);
for i=1:r
a(i)=s(ceil(rand*4));
end
if ceil(rand*2)==1
if 20-length(n)>r;
y=strcat(n,a);
else
for i=1:20-length(n)
b(i)=a(i);
end
y=strcat(n,b);
end
else
if length(n)>r
for i=1:r
n(length(n))='';
end
else
rn=ceil(rand*length(n));
if length(n)-rn>1
for i=1:rn
n(1)='';
end
end
end
y=n;
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?