ConstraintTolerance | Determines the feasibility with respect
to nonlinear constraints. Also,
max(sqrt(eps),ConstraintTolerance) determines
feasibility with respect to linear constraints. Default:
1e-3. For an options structure, use
TolCon. | Nonnegative scalar |
CreationFcn
| Function that creates the initial
population. Specify as a name of a built-in creation function or a function
handle. See Population Options. Defaults: | Choose any of
these: "gacreationuniform" |
"gacreationlinearfeasible" |
"gacreationnonlinearfeasible" |
"gacreationuniformint" |
"gacreationsobol" | Custom creation
function
|
ga with constraints:
Integer:
"gacreationuniformint" Else nonlinear
with
NonlinearConstraintAlgorithm="penalty":
"gacreationnonlinearfeasible" Else
linear: "gacreationlinearfeasible" Otherwise:
"gacreationuniform" | gamultiobj with constraints:
Integer:
"gacreationsobol" Else linear:
"gacreationlinearfeasible" Otherwise:
"gacreationuniform" |
CrossoverFcn
| Function that the algorithm uses to
create crossover children. Specify as a name of a built-in crossover
function or a function handle. See Crossover Options. Defaults: | Choose any of
these: "crossoverscattered" |
"crossoverintermediate" |
"crossoverlaplace" |
"crossoverheuristic" |
"crossoversinglepoint" |
"crossovertwopoint" |
"crossoverarithmetic" | Custom crossover
function
|
ga with constraints:
Integer:
"crossoverlaplace" Else linear:
"crossoverintermediate" Otherwise:
"crossoverscattered" | gamultiobj with constraints:
Integer
or linear: "crossoverintermediate" Otherwise:
"crossoverscattered" |
CrossoverFraction
| The fraction of the population at the
next generation, not including elite children, that the crossover function
creates. Default: 0.8. | Nonnegative scalar |
Display
| Level of display. Default:
"final". | "off" | "iter" |
"diagnose" | "final"
|
DistanceMeasureFcn
| Function that computes the distance
measure of individuals. Specify as a name of a built-in distance measure
function or a function handle. The value applies to the decision variable or
design space (genotype) or to function space (phenotype). The default
"distancecrowding" is in function space (phenotype).
For gamultiobj only. See Multiobjective Options. For an options structure,
use a function handle, not a name. | "distancecrowding" means the same as
@distancecrowding,"phenotype" |
@distancecrowding,"genotype" | Custom distance
function
|
EliteCount
| Positive integer specifying how many
individuals in the current generation are guaranteed to survive to the next
generation. Not used in gamultiobj. Default:
ceil(0.05*PopulationSize). | Nonnegative integer |
FitnessLimit
| If the fitness function attains the
value of FitnessLimit, the algorithm halts. Not used in
gamultiobj. Default:
-Inf. | Scalar |
FitnessScalingFcn
| Function that scales the values of the
fitness function. Specify as a name of a built-in scaling function or a
function handle. Not used in gamultiobj. | "fitscalingrank" |
"fitscalingshiftlinear" |
"fitscalingprop" | "fitscalingtop"
| Custom fitness scaling
function
|
FunctionTolerance | The algorithm stops if the average
relative change in the best fitness function value over
MaxStallGenerations generations is less than or equal
to FunctionTolerance. If StallTest is
"geometricWeighted", then the algorithm stops if the
weighted average relative change is less than or equal to
FunctionTolerance. For
gamultiobj, the algorithm stops when the geometric
average of the relative change in value of the spread over
options.MaxStallGenerations generations is less than
options.FunctionTolerance, and the final spread is
less than the mean spread over the past
options.MaxStallGenerations generations. See gamultiobj Algorithm. For an options structure, use
TolFun. | Nonnegative scalar | 1e-6 for
ga, 1e-4 for
gamultiobj
|
HybridFcn
| Function that continues the
optimization after ga terminates. Specify as a name or a
function handle. Alternatively, a cell array specifying the
hybrid function and its options. See ga Hybrid Function. For gamultiobj, the only hybrid
function is @fgoalattain. See gamultiobj Hybrid Function. When the problem has integer constraints, you cannot use a
hybrid function. See When to Use a Hybrid Function. | Function name or handle | "fminsearch" | "patternsearch" |
"fminunc" | "fmincon" | [] or 1-by-2
cell array | @solver, hybridoptions, where
solver = fminsearch,
patternsearch, fminunc, or
fmincon
[] |
InitialPenalty | Initial value of the penalty parameter.
Not used in gamultiobj. Default:
10. | Positive scalar |
InitialPopulationMatrix
| Initial population used to seed the
genetic algorithm. Has up to PopulationSize rows and
N columns, where N is the number
of variables. You can pass a partial population, meaning one with fewer than
PopulationSize rows. In that case, the genetic
algorithm uses CreationFcn to generate the remaining
population members. See Population Options. Default:
[]. For an options structure, use
InitialPopulation. | Matrix |
InitialPopulationRange
| Matrix or vector specifying the range
of the individuals in the initial population. Applies to
gacreationuniform creation function.
ga shifts and scales the default initial range to
match any finite bounds. Default: [-10;10] for unbounded
components, [-1e4+1;1e4+1] for unbounded components of
integer-constrained problems, [lb;ub] for bounded
components, with the default range modified to match one-sided
bounds. For an options structure, use
PopInitRange. | Matrix or vector |
InitialScoresMatrix
| Initial scores used to determine
fitness. Has up to PopulationSize rows and
Nf columns, where Nf is the number
of fitness functions (1 for ga,
greater than 1 for gamultiobj). You
can pass a partial scores matrix, meaning one with fewer than
PopulationSize rows. In that case, the solver fills
in the scores when it evaluates the fitness functions. Default:
[]. For an options structure, use
InitialScores. | Column vector for single objective | matrix for
multiobjective |
MaxGenerations
| Maximum number of iterations before the
algorithm halts. Default: 100*numberOfVariables for
ga, 200*numberOfVariables for
gamultiobj. For an options structure,
use Generations. | Nonnegative integer |
MaxStallGenerations
| The algorithm stops if the average
relative change in the best fitness function value over
MaxStallGenerations generations is less than or equal
to FunctionTolerance. If StallTest is
"geometricWeighted", then the algorithm stops if the
weighted average relative change is less than or equal to
FunctionTolerance. For
gamultiobj, the algorithm stops when the geometric
average of the relative change in value of the spread over
options.MaxStallGenerations generations is less than
options.FunctionTolerance, and the final spread is
less than the mean spread over the past
options.MaxStallGenerations generations. See gamultiobj Algorithm. Default:
50 for ga,
100 for
gamultiobj. For an options structure, use
StallGenLimit. | Nonnegative integer |
MaxStallTime
| The algorithm stops if there is no
improvement in the objective function for MaxStallTime
seconds, as measured by tic and toc. Not used in
gamultiobj. Default:
Inf. For an options structure, use
StallTimeLimit. | Positive scalar |
MaxTime
| The algorithm stops after running for
MaxTime seconds, as measured by tic and toc. This limit is enforced
after each iteration, so the solver can exceed the limit when an iteration
takes substantial time. Default: Inf. For an
options structure, use TimeLimit. | Nonnegative scalar |
MigrationDirection | Direction of migration. Default:
"forward". See Migration Options. | "both" | "forward"
|
MigrationFraction | Scalar from 0 through 1 specifying the
fraction of individuals in each subpopulation that migrates to a different
subpopulation. Default: 0.2. See Migration Options. | Scalar |
MigrationInterval | Positive integer specifying the number
of generations that take place between migrations of individuals between
subpopulations. Default: 20. See Migration Options. | Positive integer |
MutationFcn
| Function that produces mutation
children. Specify as a name of a built-in mutation function or a function
handle. See Mutation Options. Defaults: | Choose any of
these: "mutationgaussian" |
"mutationadaptfeasible" |
"mutationpower" |
"mutationpositivebasis" |
"mutationuniform" | Custom mutation function
|
ga with constraints:
Integer:
"mutationpower" Else linear or bounds:
"mutationadaptfeasible" Otherwise:
"mutationgaussian" | gamultiobj with constraints:
Integer:
"mutationpositivebasis" Else linear or
bounds: "mutationadaptfeasible" Otherwise:
"mutationgaussian" |
NonlinearConstraintAlgorithm
| Nonlinear constraint algorithm. See
Nonlinear Constraint Solver Algorithms for Genetic Algorithm.
Option unchangeable for gamultiobj. Default:
"auglag". For an options structure, use
NonlinConAlgorithm. | "auglag" |
"penalty"
|
OutputFcn
| Functions that the solver calls at each
iteration. Specify as a function handle or a cell array of function handles.
Default: []. See Output Function Options. For an options structure,
use OutputFcns. | Function handle or cell array of function handles |
ParetoFraction
| Scalar from 0 through 1 specifying the
fraction of individuals to keep on the first Pareto front while the solver
selects individuals from higher fronts, for gamultiobj
only. Default: 0.35. See Multiobjective Options. | Scalar | |
PenaltyFactor | Penalty update parameter. Not used in
gamultiobj. Default:
100. | Positive scalar |
PlotFcn
| Function that plots data computed by
the algorithm. Specify as a name of a built-in plot function, a function
handle, or a cell array of built-in names or function handles. See Plot Options. For an options structure, use
PlotFcns. | ga or gamultiobj: []
| "gaplotdistance" | "gaplotgenealogy" | "gaplotselection" |
"gaplotscorediversity" |"gaplotscores" | "gaplotstopping" |
"gaplotmaxconstr" | Custom plot function
ga only:
"gaplotbestf" | "gaplotbestindiv" | "gaplotexpectation" |
"gaplotrange"
gamultiobj
only: "gaplotpareto" | "gaplotparetodistance" | "gaplotrankhist" |
"gaplotspread"
|
PlotInterval | Positive integer specifying the number
of generations between consecutive calls to the plot functions. Default:
1. | Positive integer |
PopulationSize
| Size of the population. Default:
50 when numberOfVariables <= 5,
200 otherwise. The default for
ga only with a mixed-integer problem,
min(max(10*nvars,40),100). | Positive integer |
PopulationType
| Data type of the population. Must be
"doubleVector" for mixed-integer problems. Default:
"doubleVector". ga
ignores all constraints when PopulationType is set to
"bitString" or "custom". See Population Options.
| "bitstring" | "custom" |
"doubleVector"
|
SelectionFcn
| Function that selects parents of
crossover and mutation children. Specify as a name of a built-in selection
function or a function handle. Defaults: | For ga, choose any of
these: "selectionstochunif" |
"selectiontournament" |
"selectionremainder" |
"selectionuniform" |
"selectionroulette" | Custom selection
function
|
ga with constraints:
Integer or
nonlinear penalty:
"selectiontournament" Otherwise:
"selectionstochunif" | gamultiobj uses only
"selectiontournament" or a custom selection
function
|
StallTest | Stopping test type. Not used in
gamultiobj. Default:
"averageChange". | "geometricWeighted" |
"averageChange"
|
UseParallel | Compute fitness and nonlinear
constraint functions in parallel. Default: false. See
Vectorize and Parallel Options (User Function Evaluation) and
How to Use Parallel Processing in Global Optimization Toolbox. | true | false
|
UseVectorized
| Specifies whether functions are
vectorized. Default: false. See Vectorize and Parallel Options (User Function Evaluation) and
Vectorize the Fitness Function. For an options structure, use Vectorized
with the values "on" or
"off". | true | false
|