主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

R2016a 中的选项变更

R2026a

使用 optimoptions 设置选项

在 R2016a 之前,您可以使用专用选项函数为某些 Global Optimization Toolbox 求解器设置选项:

  • gaoptimset(用于 ga 和 gamultiobj)

  • psoptimset(用于 patternsearch)

  • saoptimset(用于 simulannealbnd)

从 R2016a 开始,设置选项的推荐方法是使用 optimoptions。(您已经使用 particleswarm 设置了 optimoptions 选项。)

注意

GlobalSearch 和 MultiStart 使用不同的机制来设置属性。请参阅GlobalSearch 和 MultiStart 属性(选项)。其中一些属性名称随着求解器选项名称的改变而改变。

R2016a 中的一些选项名称发生了变化。请参阅按旧顺序排列的选项名称表。

optimoptions “隐藏”了一些选项,这意味着它不显示它们的值。optimoptions 只显示当前名称,而不是旧名称。有关详细信息,请参阅查看优化选项。

optimoptions 隐藏的选项

optimoptions 不显示某些选项。要查看任何此类“隐藏”选项的设置,请使用圆点表示法。有关详细信息,请参阅查看优化选项。这些选项在函数参考页的选项表中以斜体列出。

optimoptions 隐藏的选项

选项描述求解器隐藏原因
Cache

将 Cache 设置为 "on" 后,patternsearch 会保留其轮询的网格点的历史记录。在后续迭代中,patternsearch 不会轮询靠近其已轮询过的点。如果在计算目标函数时 patternsearch 运行缓慢,请使用此选项。如果目标函数是随机的,请不要使用此选项。

patternsearch效果不佳
CacheSize

历史记录的大小。

patternsearch效果不佳
CacheTol

当前网格点到按顺序排列的历史记录中任意点的最大距离,以便 patternsearch 避免轮询当前点。在 "Cache" 选项设置为 "on" 时使用。

patternsearch效果不佳
DisplayInterval迭代输出的间隔。对于每次 DisplayInterval 迭代,迭代输出都打印一行。particleswarm, simulannealbnd一般情况下没用
FunValCheck

检查目标函数和约束值是否有效。如果为 "on",则当目标函数或约束返回的值是复数、Inf 或 NaN 时,会显示错误。

particleswarm一般情况下没用
HybridInterval

调用 HybridFcn 的间隔(如果不是 "end" 或 "never")。

simulannealbnd一般情况下没用
InitialPenalty

惩罚参数的初始值。

ga, patternsearch很难知道如何设置
MaxMeshSize

轮询或搜索步骤中使用的最大网格大小。

patternsearch一般情况下没用
MeshRotate

在声明某个点为最优之前,先旋转该模式。

patternsearch默认值最佳

MigrationDirection

迁移方向-请参阅迁移选项。

ga无用

MigrationFraction

0 到 1 之间的标量,指定每个亚群中迁移到不同亚群的个体比例-请参阅迁移选项。

ga无用

MigrationInterval

正整数,指定亚种群之间个体迁移的代数 - 请参阅迁移选项

ga无用

PenaltyFactor

惩罚更新参数。

ga, patternsearch很难知道如何设置

PlotInterval

正整数,指定对绘图函数的连续调用之间的代数。

ga, patternsearch, simulannealbnd无用

StallTest

描述停止测试的字符串。

ga默认值最佳
TolBind

绑定容差。请参阅约束参数。

patternsearch默认值通常是最好的

按旧顺序排列的选项名称表

这两个表具有相同的信息。一个是按旧选项名称的字母顺序排列,另一个是按当前选项名称的字母顺序排列。仅当旧值和当前值不同时,表格才会显示值,并且仅显示不同的名称。有关 Optimization Toolbox™ 求解器的变化,请参阅当前选项名称和旧选项名称。

* 表示 GlobalSearch 和 MultiStart 属性名称以及求解器选项名称。

按旧名称顺序排列的选项表

旧名称当前名称旧值当前值
CompletePollUseCompletePoll"on", "off"true, false
CompleteSearchUseCompleteSearch"on", "off"true, false
GenerationsMaxGenerations  
InitialPopulationInitialPopulationMatrix  
InitialScoresInitialScoreMatrix  
InitialSwarmInitialSwarmMatrix  
MaxFunEvalsMaxFunctionEvaluations  
MaxIterMaxIterations  
MeshAcceleratorAccelerateMesh"on", "off"true, false
MeshContractionMeshContractionFactor  
MeshExpansionMeshExpansionFactor  
MinFractionNeighborsMinNeighborsFraction  
NonlinConAlgorithmNonlinearConstraintAlgorithm  
* OutputFcns* OutputFcn  
* PlotFcns* PlotFcn  
PollingOrderPollOrderAlgorithm  
PopInitRangeInitialPopulationRange  
SearchMethodSearchFcn  
SelfAdjustmentSelfAdjustmentWeight  
SocialAdjustmentSocialAdjustmentWeight  
StallGenLimitMaxStallGenerations  
StallIterLimitMaxStallIterations  
StallTimeLimitMaxStallTime  
TimeLimitMaxTime  
TolConConstraintTolerance  
* TolFun* FunctionTolerance  
TolMeshMeshTolerance  
* TolXStepTolerance
* XTolerance(适用于 GlobalSearch 和 MultiStart)
  
VectorizedUseVectorized"on", "off"true, false

当前顺序的选项名称表

* 表示 GlobalSearch 和 MultiStart 属性名称以及求解器选项名称。

按当前名称顺序排列的选项列表

当前名称旧名称当前值旧值
AccelerateMeshMeshAcceleratortrue, false"on", "off"
ConstraintToleranceTolCon  
* FunctionTolerance* TolFun  
InitialPopulationMatrixInitialPopulation  
InitialPopulationRangePopInitRange  
InitialScoreMatrixInitialScores  
InitialSwarmMatrixInitialSwarm  
MaxFunctionEvaluationsMaxFunEvals  
MaxGenerationsGenerations  
MaxIterationsMaxIter  
MaxStallGenerationsStallGenLimit  
MaxStallIterationsStallIterLimit  
MaxStallTimeStallTimeLimit  
MaxTimeTimeLimit  
MeshContractionFactorMeshContraction  
MeshExpansionFactorMeshExpansion  
MeshToleranceTolMesh  
MinNeighborsFractionMinFractionNeighbors  
NonlinearConstraintAlgorithmNonlinConAlgorithm  
* OutputFcn* OutputFcns  
* PlotFcn* PlotFcns  
PollOrderAlgorithmPollingOrder  
SearchFcnSearchMethod  
SelfAdjustmentWeightSelfAdjustment  
SocialAdjustmentWeightSocialAdjustment  
StepToleranceTolX  
UseCompletePollCompletePolltrue, false"on", "off"
UseCompleteSearchCompleteSearchtrue, false"on", "off"
UseVectorizedVectorizedtrue, false"on", "off"
* XTolerance* TolX