以下是我根据自己理解对ga函数参数的一些翻译,可是还是有很多参数不知道怎么用(见下文红字),希望大家来指导一下!!!
注:在工作区间输入gaoptimset得到所有参数及其所有可能值。
@gacreationuniform | @gacreationlinearfeasible
CrossoverFcn:产生子代的交叉函数(下文的) @crossoverheuristic | {@crossoverscattered} | @crossoverintermediate |@crossoversinglepoint | @crossovertwopoint | @crossoverarithmetic
CrossoverFraction:除了交叉函数产生的较优个体以外的子代大小。(这句翻译的比较拗口。。。) 'off' | 'iter' | 'diagnose' | {'final'}
Handle to the function that computes distance measure of individuals,computed in decision variable or design space (genotype) or in function space(phenotype) {@distancecrowding,'phenotype'}(这个不明白)
EliteCount:用来判断父代中有多少个体可以存活到子代.
FitnessLimit:适应度极限,如果适应度函数达到极限值,退出。
FitnessScalingFcn:用来衡量适应度函数值的函数句柄 @fitscalingshiftlinear | @fitscalingprop | @fitscalingtop |{@fitscalingrank}
HybridFcn:如果遗传算法终止时,设置接着进行求解的函数句柄,也可用向量
形式对那些函数参数进行设置 Function handle | @fminsearch | @patternsearch | @fminunc | @fmincon |{[]} 1-by-2 cell array | {@solver, hybridoptions}, where solver = fminsearch,patternsearch, fminunc, or fmincon {[]}
InitialPopulation:初始总群,可以为偏微分形式(这里不太明)
InitialScores:用来判断适应度函数的初始值,可以为偏微分形式(不明白)
MigrationFraction:子代中进行交叉的比率
MutationFcn:交叉函数(和前面的crossover函数不知道有什么差别) @mutationuniform | @mutationadaptfeasible | {@mutationgaussian}
OutputFcns:每次迭代求解器都会调用的函数,用于输出当前求解信息。
Scalar between 0 and 1 specifying the fraction of individuals to keep onthe first Pareto front while the solver selects individuals from higher fronts(这个不太明白=。=)
PenaltyFactor:惩罚因子更新参数(这个有什么用呢?)。
PlotFcns:用来绘制算法一些过称与结果的函数句柄。 @gaplotbestf | @gaplotbestindiv | @gaplotdistance | @gaplotexpectation |@gaplotgeneology | @gaplotselection | @gaplotrange | @gaplotscorediversity |@gaplotscores | @gaplotstopping | {[]}
PlotInterval:在执行绘图函数的间隔代数。
PopulationType:种群的类型(当种群类型是前两者是,线性和非线性约束失效) 'bitstring' | 'custom' | {'doubleVector'}
@selectionremainder | @selectionuniform | {@selectionstochunif} |@selectionroulette | @selectiontournament
StallGenLimit:设置如果有多少代种群适应度没有发生改变,遗传终止。
StallTimeLimit:设置如果有久种群适应度没有发生改变,遗传终止。
Vectorized:适应度函数的计算是否进行矢量化。
|