www.gusucode.com > matlab编程遗传算法计算匹配电路源码程序 > code1/code/MATLAB源代码/mut_change_with_ObjV.m
function [ mutation_SelCh ] = mut_change_with_ObjV(SelCh,mutation_probability,BaseV) %UNTITLED5 此处显示有关此函数的摘要 % 此处显示详细说明 ObjVSel=lowpassS21_test2(SelCh); ObjVSel_average=sum(ObjVSel)/length(ObjVSel); [row_location_small_ObjV,~]=find(ObjVSel<(ObjVSel_average/2)); [row_location_median_ObjV,~]=find((ObjVSel>=(ObjVSel_average/2))&(ObjVSel<ObjVSel_average)); [row_location_big_ObjV,~]=find(ObjVSel>=(ObjVSel_average*2)); small_mutation_probability=mutation_probability/2; median_mutation_probability=mutation_probability; big_mutation_probability=mutation_probability*2; num_of_small_ObjV=length(row_location_small_ObjV); num_of_median_ObjV=length(row_location_median_ObjV); num_of_big_ObjV=length(row_location_big_ObjV); i=1:num_of_small_ObjV; j=1:num_of_median_ObjV; k=1:num_of_big_ObjV; mutation_SelCh(row_location_small_ObjV(i),:)=mut(SelCh(row_location_small_ObjV(i),:),small_mutation_probability,BaseV); mutation_SelCh(row_location_median_ObjV(j),:)=mut(SelCh(row_location_median_ObjV(j),:),median_mutation_probability,BaseV); mutation_SelCh(row_location_big_ObjV(k),:)=mut(SelCh(row_location_big_ObjV(k),:),big_mutation_probability,BaseV); end