📄 save_chrom.m
字号:
function save_chrom(fname,c)
% SAVE_CHROM - saves a chromosome to file
%
fid=fopen(fname,'w');
gen=1;
fprintf(fid,'Total generations: %g\n',gen);
fprintf(fid,'Generation %g saved %s\n',gen,datestr(now));
fprintf(fid,'==========================================\n');
fprintf(fid,'%s %g','Number of chromosomes: ',length(c));
txt='--------------------------';
fprintf(fid,'\n%s\n\n',txt);
for j=1:length(c)
fprintf(fid,'chromosome: %g\n%s\n',j,'---------------');
fprintf(fid,'Name: %s\n',get(c(j),'name'));
txt=sprintf('Fitness: %g\n',get(c(j),'fitness'));
fprintf(fid,'%s',txt);
cdvs=get(c(j),'cdvs');
fprintf(fid,'CDVS:\n-----\n');
for k=1:length(cdvs)
fprintf(fid,'%s\t',get(cdvs(k),'name'));
end
fprintf(fid,'\n');
for k=1:length(cdvs)
fprintf(fid,'%g\t',get(cdvs(k),'value'));
end
fprintf(fid,'\n');
for k=1:length(cdvs)
fprintf(fid,'%g %g',get(cdvs(k),'l_limit'),get(cdvs(k), ...
'u_limit'));
fprintf(fid,'\t');
end
fprintf(fid,'\n');
for k=1:length(cdvs)
fprintf(fid,'%g %g',get(cdvs(k),'bits'),todec(get(cdvs(k),'dna')));
fprintf(fid,'\t');
end
fprintf(fid,'\n');fprintf(fid,'\n');
%===============DDVS=========================================
ddvs=get(c(j),'ddvs');
fprintf(fid,'DDVS:\n-----\n');
for k=1:length(ddvs)
fprintf(fid,'%s\t',get(ddvs(k),'name'));
end
fprintf(fid,'\n');
for k=1:length(ddvs)
fprintf(fid,'%g\t',get(ddvs(k),'value'));
end
fprintf(fid,'\n');
for k=1:length(ddvs)
p_val=get(ddvs(k),'p_val');
fprintf(fid,'%g ',p_val);
fprintf(fid,'\t');
end
fprintf(fid,'\n');
for k=1:length(ddvs)
fprintf(fid,'%g %g',get(ddvs(k),'bits'),todec(get(ddvs(k),'dna')));
fprintf(fid,'\t');
end
fprintf(fid,'\n');fprintf(fid,'\n');
end
fclose(fid);
function num = todec(dna)
% TODEC -
t=num2str(dna);
tmp='';
for k=1:length(t)
if ~isspace(t(k))
tmp=strcat(tmp,t(k));
end
end
num=bin2dec(tmp);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -