www.gusucode.com > Feature Selection Using BBPSO with Mutual Information 工具箱matlab源码 > Feature Selection Using BBPSO with Mutual Information/MIBBPSO/mutation.m
function neweff2 =mutation(eff20,k,X,fmin,fmax) [px,py]=size(eff20); a=0.5; for(i=1:px) eff20(i,k+3)=a*((fmax-eff20(i,k+1))/(fmax-fmin)); end global importance for i=1:px new(i,:)=eff20(i,1:k); for(j=2:k) if eff20(i,j)==0 if rand<(eff20(i,k+3)+(1-exp((-1)*importance(j-1)))) new(i,j)=1; else new(i,j)=0; end else if rand<(eff20(i,k+3)+exp((-1)*importance(j-1))) new(i,j)=0; else new(i,j)=1; end end end end nnew=new(1:px,1:k); neweff2=evaluation(nnew,k,X);