gaoptimset - Create genetic algorithm options structure

Syntax

gaoptimset
options = gaoptimset
options = gaoptimset(@ga)
options = gaoptimset(@gamultiobj)
options = gaoptimset('param1',value1,'param2',value2,...)
options = gaoptimset(oldopts,'param1',value1,...)
options = gaoptimset(oldopts,newopts)

Description

gaoptimset with no input or output arguments displays a complete list of parameters with their valid values.

options = gaoptimset (with no input arguments) creates a structure called options that contains the options, or parameters, for the genetic algorithm and sets parameters to [], indicating default values will be used.

options = gaoptimset(@ga) creates a structure called options that contains the default options for the genetic algorithm.

options = gaoptimset(@gamultiobj) creates a structure called options that contains the default options for gamultiobj.

options = gaoptimset('param1',value1,'param2',value2,...) creates a structure options and sets the value of 'param1' to value1, 'param2' to value2, and so on. Any unspecified parameters are set to their default values. It is sufficient to type only enough leading characters to define the parameter name uniquely. Case is ignored for parameter names.

options = gaoptimset(oldopts,'param1',value1,...) creates a copy of oldopts, modifying the specified parameters with the specified values.

options = gaoptimset(oldopts,newopts) combines an existing options structure, oldopts, with a new options structure, newopts. Any parameters in newopts with nonempty values overwrite the corresponding old parameters in oldopts.

Options

The following table lists the options you can set with gaoptimset. See Genetic Algorithm Options for a complete description of these options and their values. Values in {} denote the default value. You can also view the optimization parameters and defaults by typing gaoptimset at the command line.

OptionDescriptionValues

CreationFcn

Handle to the function that creates the initial population

@gacreationuniform | @gacreationlinearfeasible

CrossoverFcn

Handle to the function that the algorithm uses to create crossover children

@crossoverheuristic {@crossoverscattered} @crossoverintermediate @crossoversinglepoint @crossovertwopoint @crossoverarithmetic

CrossoverFraction

The fraction of the population at the next generation, not including elite children, that is created by the crossover function

Positive scalar | {0.8}

Display

Level of display

'off' | 'iter' | 'diagnose' | {'final'}

DistanceMeasureFcn

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

Positive integer specifying how many individuals in the current generation are guaranteed to survive to the next generation

Positive integer | {2}

FitnessLimit

Scalar. If the fitness function attains the value of FitnessLimit, the algorithm halts.

Scalar | {-Inf}

FitnessScalingFcn

Handle to the function that scales the values of the fitness function

@fitscalingshiftlinear @fitscalingprop @fitscalingtop {@fitscalingrank}

Generations

Positive integer specifying the maximum number of iterations before the algorithm halts

Positive integer |{100}

HybridFcn

Handle to a function that continues the optimization after ga terminates

or

Cell array specifying the hybrid function and its options structure

Function handle | @fminsearch @patternsearch @fminunc @fmincon {[]}

or

1-by-2 cell array | {@solver, hybridoptions}, where solver = fminsearch, patternsearch, fminunc, or fmincon {[]}

InitialPenalty

Initial value of penalty parameter

Positive scalar | {10}

InitialPopulation

Initial population used to seed the genetic algorithm; can be partial

Matrix | {[]}

InitialScores

Initial scores used to determine fitness; can be partial

Column vector | {[]}

MigrationDirection

Direction of migration

'both' | {'forward'}

MigrationFraction

Scalar between 0 and 1 specifying the fraction of individuals in each subpopulation that migrates to a different subpopulation

Scalar | {0.2}

MigrationInterval

Positive integer specifying the number of generations that take place between migrations of individuals between subpopulations

Positive integer | {20}

MutationFcn

Handle to the function that produces mutation children

@mutationuniform @mutationadaptfeasible {@mutationgaussian}

OutputFcns

Functions that ga calls at each iteration

@gaoutputgen | {[]}

ParetoFraction

Scalar between 0 and 1 specifying the fraction of individuals to keep on the first Pareto front while the solver selects individuals from higher fronts

Scalar | {0.35}

PenaltyFactor

Penalty update parameter

Positive scalar | {100}

PlotFcns

Array of handles to functions that plot data computed by the algorithm

@gaplotbestf @gaplotbestindiv @gaplotdistance @gaplotexpectation @gaplotgeneology @gaplotselection @gaplotrange @gaplotscorediversity @gaplotscores @gaplotstopping | {[]}

PlotInterval

Positive integer specifying the number of generations between consecutive calls to the plot functions

Positive integer | {1}

PopInitRange

Matrix or vector specifying the range of the individuals in the initial population

Matrix or vector | [0;1]

PopulationSize

Size of the population

Positive integer | {20}

PopulationType

String describing the data type of the population

'bitstring' | 'custom' | {'doubleVector'}

Note that linear and nonlinear constraints are not satisfied when PopulationType is set to 'bitString' or 'custom'.

SelectionFcn

Handle to the function that selects parents of crossover and mutation children

@selectionremainder @selectionuniform {@selectionstochunif} @selectionroulette @selectiontournament

StallGenLimit

Positive integer. The algorithm stops if there is no improvement in the objective function for StallGenLimit consecutive generations.

Positive integer | {50}

StallTimeLimit

Positive scalar. The algorithm stops if there is no improvement in the objective function for StallTimeLimit seconds.

Positive scalar | {Inf}

TimeLimit

Positive scalar. The algorithm stops after running for TimeLimit seconds.

Positive scalar | {Inf}

TolCon

Positive scalar. TolCon is used to determine the feasibility with respect to nonlinear constraints.

Positive scalar | {1e-6}

TolFun

Positive scalar. The algorithm runs until the cumulative change in the fitness function value over StallGenLimit is less than TolFun.

Positive scalar | {1e-6}

UseParallel

Compute fitness functions of a population in parallel.

'always' | {'never'}

Vectorized

String specifying whether the computation of the fitness function is vectorized

'on' | {'off'}

See Also

For more about these options, see Genetic Algorithm Options.

ga, gamultiobj, gaoptimget

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS