GAOT toolbox to set cross probability and mutation probability

Recommended to read the paper " Optimization Calculation Based on Matlab Genetic Algorithm Toolbox-Chen Qiulian "

For specific information about the GAOT toolbox, please go to Baidu. Here we mainly look at how to set the cross probability and mutation probability in the GAOT toolbox.

First look at the explanation of ga.m in the GAOT toolbox

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])

Then I directly extract the following explanations in the paper:
Insert picture description here

So from here, in most cases, the selection method of the GA algorithm is the roulette method, other selection methods can be used in the GAOT toolbox, and the selection probability can be set. In the crossover operation, if you use the arithXover method in GAOT, the crossover probability is random:
Insert picture description here
but we can set it ourselves. For example, in the above picture, I set the crossover probability to 0.4.

Published 13 original articles · Like 32 · Visits 10,000+

Guess you like

Origin blog.csdn.net/weixin_43637490/article/details/104600678