www.gusucode.com > matlab编程遗传算法计算匹配电路源码程序 > code1/code/MATLAB源代码/mut_crossover_change_with_ObjV.m
function [crossover_probability_out,mutation_probability_out] = mut_crossover_change_with_ObjV(gen,crossover_probability,mutation_probability,trace) %UNTITLED 根据目标值的改变大小调整交叉率和变异率,目标值改变小弱交叉强变异,目标值改变大强交叉若变异 % 此处显示详细说明 if gen>10 if (trace((gen-10),1)-trace(gen,1))<=100 %弱交叉强变异,弱化优势型选择算子 crossover_probability_out=0.4; mutation_probability_out=0.2; else %强交叉弱变异,强化优势型选择算子 crossover_probability_out=crossover_probability; mutation_probability_out=mutation_probability; end else crossover_probability_out=crossover_probability; mutation_probability_out=mutation_probability; end end