gaoptimset

(不推荐)创建遗传结构算法选项

gaoptimset不推荐。使用optimoptions代替。有关更多信息,请参见兼容性注意事项

语法

gaoptimset
选择= gaoptimset
选项= gaoptimset(@ga)
选项= gaoptimset(@gamultiobj)
选项= gaoptimset( '参数1',值1, '参数2',值2,...)
选项= gaoptimset(oldopts, '参数1',值1,...)
选项= gaoptimset(oldopts,newopts)

描述

gaoptimset如果没有输入或输出参数,则显示带有有效值的完整参数列表。

选择= gaoptimset(无输入参数)创建一个名为结构选项包含选项的,或参数,对于遗传算法和参数设定,以[],表示将使用默认值。

选项= gaoptimset(@ga)创建一个名为选项它包含遗传算法的默认选项。

选项= gaoptimset(@gamultiobj)创建一个名为选项包含默认选项gamultiobj

选项= gaoptimset( '参数1',值1, '参数2',值2,...)创建一个名为选项的值“param1”值1,“param2”值2等等。任何未指定的参数都设置为默认值。只输入足够的前导字符来惟一地定义参数名就足够了。参数名忽略大小写。

选项= gaoptimset(oldopts, '参数1',值1,...)创建oldopts,使用指定的值修改指定的参数。

选项= gaoptimset(oldopts,newopts)结合现有的期权结构,oldopts,采用新的期权结构,newopts。任何参数newopts用非空值覆盖相应的旧参数oldopts

选项

下表列出了可以设置的选项gaoptimset。看到遗传算法的选择这些选项及其值的完整描述。在价值观{}表示默认值。{}*指默认当有线性约束,和用于MutationFcn当有边界的时候。您还可以通过键入来查看优化参数和默认值gaoptimset在命令行。我*表明遗传算法忽略或覆盖混合整数优化问题的选项。

optimoptions隐藏其中列出的选项斜体gaoptimset没有。看到optimoptions隐藏的选项

对于选项遗传算法, 整数遗传算法gamultiobj

选项 描述
ConstraintTolerance

确定了考虑非线性约束的可行性。同时,MAX(开方(EPS),ConstraintTolerance)确定相对于线性约束可行性。

对于期权的结构,使用TolCon

正标|{1E-3}

CreationFcn

我*创建初始填充的函数。指定为内置创建函数的名称或函数句柄。看到人口的选择

{' gacreationuniform '}|{' gacreationlinearfeasible} *|创建自定义函数

CrossoverFcn

我*该功能可在算法用来创建交叉孩子。作为指定的名称内置的交叉功能或功能句柄。看到交叉选项

{' crossoverscattered '}遗传算法,{' crossoverintermediate} *gamultiobj|'crossoverheuristic'|“crossoversinglepoint”|“crossovertwopoint”|“crossoverarithmetic”|自交叉功能

CrossoverFraction

人口在下一代,不包括权贵子弟的比例,即交叉功能造成的。

正标|{0.8}

显示

显示水平。

“关闭”|“通路”|“诊断”|{'最后'}

DistanceMeasureFcn

计算个体距离度量的函数。指定为内置的距离度量函数或函数句柄的名称。该值适用于决策变量或设计空间(基因型)或功能空间(表现型)。默认的“distancecrowding”是在功能空间(表现型)。为gamultiobj只有。看到多目标选项

对于期权的结构,使用功能句柄,不是一个名字。

{' distancecrowding '}装置相同{@ distancecrowding, '表型'}|{@distancecrowding,基因型的}|自定义距离函数

EliteCount

NM正整数,指定当前代中有多少个体能够存活到下一代。不习惯在gamultiobj

正整数|{小区(0.05 *族群大小)}|{0.05 *(默认PopulationSize)}整数的问题

FitnessLimit

NM如果适应度函数达到的值FitnessLimit,算法暂停。

标量|{} -Inf

FitnessScalingFcn

缩放适应度函数值的函数。指定为内置缩放函数或函数句柄的名称。选项不可用gamultiobj

{' fitscalingrank '}|'fitscalingshiftlinear'|'fitscalingprop'|“fitscalingtop”|自定义适应度变换功能

FunctionTolerance

该算法停止如果最好的适应度函数值在平均相对变化MaxStallGenerations代数小于等于FunctionTolerance。如果StallTest'geometricWeighted',则算法停止,如果加权平均相对变化小于等于FunctionTolerance

gamultiobj中,该算法停止时的相对变化的在传播的值的几何平均超过options.MaxStallGenerations代小于options.FunctionTolerance,并最终扩展小于平均价差在过去options.MaxStallGenerations代。看到gamultiobj算法

对于期权的结构,使用TolFun

正标|{1 e-6}遗传算法,{1}的军医gamultiobj

HybridFcn

我*在此之后继续优化功能遗传算法终止。指定为名称或功能句柄。

或者,指定混合函数及其选项的单元格数组。看到ga混合函数

gamultiobj,唯一的混合功能是@fgoalattain。看到gamultiobj混合函数

看到何时使用混合函数

函数名称或手柄|'fminsearch' | 'patternsearch' | 'fminunc' | 'fmincon' | {[]}

要么

1×2单元阵列|{@solver, hybridoptions},在那里解算器= fminsearch,patternsearch,fminunc, 要么fmincon{[]}

InitialPenalty

NM我*惩罚参数的初始值

正标|{10}

InitialPopulationMatrix

用于种子遗传算法的初始种群。有族群大小行和N列,N是变量的数目。您可以通过部分人口,这意味着比一个少族群大小行。在这种情况下,遗传算法使用CreationFcn生成剩余的人口成员。看到人口的选择

对于期权的结构,使用InitialPopulation

矩阵|{[]}

InitialPopulationRange

指定初始种群中个体范围的矩阵或向量。适用于gacreationuniform创建函数。遗传算法移动和缩放默认的初始范围以匹配任何有限的范围。

对于期权的结构,使用PopInitRange

矩阵或向量|{[-10; 10]}无界成分,{[1 e4 + 1; 1 e4 + 1]}对于积分约束问题的无界分量,{(磅;乌兰巴托)}对于有界组件,修改默认范围以匹配单边界限。

InitialScoresMatrix

我*用来确定适合度的初始分数。有族群大小行,NF列,NF为适应度函数的个数(1遗传算法,大于1gamultiobj)。你可以通过一个部分分数矩阵,意思是小于族群大小行。在这种情况下,求解器在评估适应度函数时填充分数。

对于期权的结构,使用InitialScores

对单一目标列向量|矩阵多目标|{[]}

MaxGenerations

该算法暂停前最大迭代次数。

对于期权的结构,使用

正整数|{100 * numberOfVariables}遗传算法,{200 * numberOfVariables}gamultiobj

MaxStallGenerations

该算法停止如果最好的适应度函数值在平均相对变化MaxStallGenerations代数小于等于FunctionTolerance。如果StallTest'geometricWeighted',如果加权平均相对变化量小于或等于,则算法停止FunctionTolerance

gamultiobj中,该算法停止时的相对变化的在传播的值的几何平均超过options.MaxStallGenerations代小于options.FunctionTolerance,并最终扩展小于平均价差在过去options.MaxStallGenerations代。看到gamultiobj算法

对于期权的结构,使用StallGenLimit

正整数|{50}遗传算法,{100}gamultiobj

MaxStallTime

NM该算法停止,如果有目标函数为无改善MaxStallTime秒,如通过测量抽搐toc

对于期权的结构,使用StallTimeLimit

积极的标量|{Inf}

MaxTime

算法在运行之后停止MaxTime秒,如通过测量抽搐toc。此限制是每次迭代之后执行的,所以遗传算法当迭代花费大量时间时,可能超出限制。

对于期权的结构,使用期限

正标|{Inf}

MigrationDirection

的方向迁移。看到迁移选项

“两个”|{“向前”}

MigrationFraction

从0到1的标量,指定每个子种群中迁移到不同子种群的个体的比例。看到迁移选项

标量|{0.2}

MigrationInterval

正整数,指定个体在亚种群之间迁移时发生的代数。看到迁移选项

正整数|{20}

MutationFcn

我*产生突变子的功能。指定为内置的变异函数或函数句柄的名称。看到变异选项

{ 'mutationgaussian'}遗传算法,{ 'mutationadaptfeasible'} *gamultiobj|'mutationuniform'|定制的变异函数

NonlinearConstraintAlgorithm

非线性约束算法。看到非线性约束求解算法。选择不变的gamultiobj

对于期权的结构,使用NonlinConAlgorithm

{' auglag '}遗传算法,{“惩罚”}gamultiobj

OutputFcn

的函数遗传算法在每次迭代中调用。指定为函数句柄或函数句柄的单元数组。看到输出函数的选择

对于期权的结构,使用OutputFcns

函数句柄或函数的单元数组处理|{[]}

ParetoFraction

为从0到1的标量,指定保持在第一个Pareto前沿的个体的比例,同时求解者从更高的前沿选择个体gamultiobj只有。看到多目标选项

标量|{0.35}

PenaltyFactor

NM我*处罚更新参数。

正标|{100}

PlotFcn

功能,通过该算法计算曲线数据。作为指定的名称内建绘图功能,功能手柄,或者一个单元阵列内置名称或函数处理。看到图解选项

对于期权的结构,使用PlotFcns

遗传算法要么gamultiobj:{[]} |' gaplotdistance' |' gaplotgenealogy' |' gaplotselection' |' gaplotscorediversity' |'gaplotscores' |' gaplot' |' gaplotmaxconstr' |自定义绘制函数

遗传算法只有:'gaplotbestf' | 'gaplotbestindiv' | ' gaplotexpected ' | 'gaplotrange'

gamultiobj只有:'gaplotpareto' | 'gaplotparetodistance' | 'gaplotrankhist' | 'gaplotspread'

PlotInterval

指定对plot函数的连续调用之间的代数。

正整数|{1}

族群大小

人口规模。

正整数|{50}什么时候numberOfVariables < = 5,{200}否则|{最小(最大(10 *据nvar, 40), 100)}整数的问题

PopulationType

数据类型的人群。一定是“doubleVector”对于混合整数问题。

“位”|“自定义”|{ 'doubleVector'}

遗传算法忽略时,所有约束PopulationType被设置为“位”要么“自定义”。看到人口的选择

SelectionFcn

我*功能交叉和变异的孩子的家长选择。作为指定的名称内置选择功能或功能句柄。

gamultiobj唯一用途'selectiontournament'

{' selectionstochunif '}遗传算法,{' selectiontournament '}gamultiobj|“selectionremainder”|“selectionuniform”|'selectionroulette'|自定义选择函数

StallTest

NM停止测试类型。

'geometricWeighted'|{' averageChange '}

UseParallel

计算健身和并行非线性约束功能。看到矢量化和并行选项(用户功能评价)如何在全局优化工具箱中使用并行处理

真正|{假}

UseVectorized

指定函数是否向量化。看到矢量化和并行选项(用户功能评价)向量化适应度函数

对于期权的结构,使用矢量化与价值观“上”要么“关闭”

真正|{假}

兼容性注意事项

全部展开

不推荐在R2018b开始

R2006a前推出