Caja de herramientas GAOT para establecer la probabilidad cruzada y la probabilidad de mutación

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:
Inserte la descripción de la imagen aquí

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:
Inserte la descripción de la imagen aquí
pero podemos establecerla nosotros mismos. Por ejemplo, en la imagen de arriba, configuro la probabilidad de cruce en 0.4.

13 artículos originales publicados · Me gusta 32 · Visitas 10,000+

Supongo que te gusta

Origin blog.csdn.net/weixin_43637490/article/details/104600678
Recomendado
Clasificación