Se recomienda leer el documento " Cálculo de optimización basado en el algoritmo genético Matlab Toolbox-Chen Qiulian "
Para obtener información específica sobre la caja de herramientas GAOT, diríjase a Baidu. Aquí veremos principalmente cómo establecer la probabilidad cruzada y la probabilidad de mutación en la caja de herramientas GAOT.
Primero mire la explicación de ga.m en la caja de herramientas GAOT
ga run a genetic algorithm
function [x,endPop,bPop,traceInfo]=ga(bounds,evalFN,evalOps,startPop,opts,
termFN,termOps,selectFN,selectOps,
xOverFNs,xOverOps,mutFNs,mutOps)
Output Arguments:
x - the best solution found during the course of the run
endPop - the final population
bPop - a trace of the best population
traceInfo - a matrix of best and means of the ga for each generation
Input Arguments:
bounds - a matrix of upper and lower bounds on the variables
evalFN - the name of the evaluation .m function
evalOps - options to pass to the evaluation function ([NULL])
startPop - a matrix of solutions that can be initialized
from initialize.m
opts - [epsilon prob_ops display] change required to consider two
solutions different, prob_ops 0 if you want to apply the
genetic operators probabilisticly to each solution, 1 if
you are supplying a deterministic number of operator
applications and display is 1 to output progress 0 for
quiet. ([1e-6 1 0])
termFN - name of the .m termination function (['maxGenTerm'])
termOps - options string to be passed to the termination function
([100]).
selectFN - name of the .m selection function (['normGeomSelect'])
selectOpts - options string to be passed to select after
select(pop,#,opts) ([0.08])
xOverFNS - a string containing blank seperated names of Xover.m
files (['arithXover heuristicXover simpleXover'])
xOverOps - A matrix of options to pass to Xover.m files with the
first column being the number of that xOver to perform
similiarly for mutation ([2 0;2 3;2 0])
mutFNs - a string containing blank seperated names of mutation.m
files (['boundaryMutation multiNonUnifMutation ...
nonUnifMutation unifMutation'])
mutOps - A matrix of options to pass to Xover.m files with the
first column being the number of that xOver to perform
similiarly for mutation ([4 0 0;6 100 3;4 100 3;4 0 0])
Luego extraigo directamente las siguientes explicaciones en el documento:
Entonces, desde aquí, en la mayoría de los casos, el método de selección del algoritmo GA es el método de ruleta, se pueden usar otros métodos de selección en la caja de herramientas GAOT y se puede establecer la probabilidad de selección. En la operación de cruce, si usa el método arithXover en GAOT, la probabilidad de cruce es aleatoria:
pero podemos establecerla nosotros mismos. Por ejemplo, en la imagen de arriba, configuro la probabilidad de cruce en 0.4.