优化选择参考
优化选项
下表描述了优化选项。创建选项使用optimoptions
函数,或optimset
为fminbnd
,fminsearch
,fzero
,或lsqnonneg
。
看到信息的各个函数参考页面可用的选项值和默认值。
默认值的选择取决于优化函数调用选项
作为输入参数。您可以确定默认选项值的优化函数通过输入optimoptions ('
或同等solvername
”)optimoptions (@
。例如,solvername
)
optimoptions (“fmincon”)
返回一个列表的选项,默认值为默认“内点”
fmincon
算法。寻找另一个默认值fmincon
算法,设置算法
选择。例如,
选择= optimoptions (“fmincon”,“算法”,“sqp”)
optimoptions
“隐藏”一些选项,这意味着它不显示它们的值。这些选项没有出现在这张桌子。相反,他们出现在隐藏选项。
优化选项
选项名称 | 描述 | 使用的功能 | 限制 |
---|---|---|---|
AbsoluteGapTolerance |
负的真实。
|
intlinprog |
optimoptions 只有 |
AbsoluteMaxObjectiveCount |
的数量F(x)最坏的情况下绝对的值降到最低。 |
||
算法 |
选择使用的算法解算器。 |
fmincon ,fminunc ,fsolve ,linprog ,lsqcurvefit ,lsqlin ,lsqnonlin ,quadprog |
|
BarrierParamUpdate |
选择更新障碍参数的算法 |
fmincon |
|
BranchRule |
规则选择的组件的分支: |
intlinprog |
optimoptions 只有 |
CheckGradients |
用户提供比较分析衍生品(梯度或雅可比矩阵,取决于所选择的解算器)有限差分衍生品。 |
|
optimoptions 只有。为optimset ,使用DerivativeCheck |
ConstraintTolerance |
公差约束违反。 |
|
optimoptions 只有。为optimset ,使用TolCon |
CutGeneration |
水平的一代(见减少减少代):
|
intlinprog |
optimoptions 只有 |
CutMaxIterations |
之前都经过数代的方法进入和阶段,一个整数1 通过50 。禁用一代通过设置CutGeneration 选项“没有” 。 |
intlinprog |
optimoptions 只有 |
显示 |
显示水平。
|
所有人。查看单个函数引用页的值。 |
|
EnableFeasibilityMode |
选择算法实现的可行性 |
fmincon |
|
EqualityGoalCount |
指定数量的目标所需的目标 |
optimoptions 只有。为optimset ,使用GoalsExactAchieve |
|
FiniteDifferenceStepSize |
标量或矢量步长因子有限的差异。当您设置
信号′(x) =标志(x) 除了信号′(0)= 1 。中央有限的差异是
FiniteDifferenceStepSize 扩大到一个向量。默认值是sqrt (eps) 向前有限的差异,eps ^ (1/3) 中央有限的差异。 |
|
optimoptions 只有。为optimset ,使用FinDiffRelStep |
FiniteDifferenceType |
有限的差异,用于估算梯度,要么 |
|
optimoptions 只有。为optimset ,使用FinDiffType |
FunctionTolerance |
终止公差函数值。 |
|
optimoptions 只有。为optimset ,使用TolFun |
HessianApproximation |
黑森近似方法: 忽略时 |
optimoptions 只有。为optimset ,使用黑森 |
|
HessianFcn |
用户提供的麻绳,指定为一个函数处理(见包括麻布)。 |
fmincon ,fminunc |
optimoptions 只有。为optimset ,使用HessFcn |
HessianMultiplyFcn |
用户提供的黑森乘法函数,指定为一个函数处理。 忽略时 |
optimoptions 只有。为optimset ,使用HessMult |
|
启发式 |
(参见算法寻找可行的点启发式寻找可行的解决方案金宝搏官方网站):
|
intlinprog |
optimoptions 只有 |
HeuristicsMaxNodes |
严格的正整数,边界节点的数量intlinprog 可以探索和寻找可行点。看到启发式寻找可行的解决方案金宝搏官方网站。 |
intlinprog |
optimoptions 只有 |
HonorBounds |
默认的 |
fmincon |
optimoptions 只有。为optimset ,使用AlwaysHonorConstraints |
IntegerPreprocess |
预处理(参见类型的整数混合整数规划预处理):
|
intlinprog |
optimoptions 只有 |
IntegerTolerance |
真正的从1 e-6 通过1 e - 3 ,从整数的最大偏差,解决方案的组件x 可以和仍然被认为是一个整数。IntegerTolerance 不是停止准则。 |
intlinprog |
optimoptions 只有 |
JacobianMultiplyFcn |
用户定义的雅可比矩阵乘法函数,指定为一个函数处理。忽略,除非 |
||
LinearSolver |
类型的内部线性规划求解算法。为
为 |
||
LPMaxIterations |
严格的正整数,单纯形算法迭代的最大数量和过程中每个节点。 | intlinprog |
optimoptions 只有 |
LPOptimalityTolerance |
负的真正降低成本必须超过LPOptimalityTolerance 为一个变量为基础。 |
intlinprog |
optimoptions 只有 |
MaxFunctionEvaluations |
允许的最大数量的功能评估。 |
|
optimoptions 只有。为optimset ,使用MaxFunEvals |
MaxIterations |
允许的最大迭代数。 |
optimoptions 只有。为optimset ,使用麦克斯特 |
|
MaxFeasiblePoints |
严格的正整数。intlinprog 停止如果发现MaxFeasiblePoints 整数可行点。 |
intlinprog |
optimoptions 只有 |
MaxNodes |
严格的最大节点数的正整数解算器探索和过程。 | ||
MaxTime |
最大的时间在几秒钟内允许算法。 |
||
NodeSelection |
选择下一步探索的节点。 |
intlinprog |
optimoptions 只有 |
ObjectiveCutOff |
真实的比负 。默认值是正 。 |
intlinprog |
optimoptions 只有 |
ObjectiveImprovementThreshold |
负的真实。intlinprog 改变当前可行解只有当它位于另一个与至少一个目标函数值ObjectiveImprovementThreshold 低:(褶皱- fnew) /(1 + | |折叠)> ObjectiveImprovementThreshold。 |
intlinprog |
optimoptions 只有 |
ObjectiveLimit |
如果目标函数值 |
fmincon ,fminunc ,lsqlin ,quadprog |
|
OptimalityTolerance |
在一阶最优性终止宽容。 |
|
optimoptions 只有。为optimset ,使用TolFun |
OutputFcn |
指定一个或多个用户定义的函数,在每个迭代优化函数调用。通过一个函数处理或处理单元阵列的功能。看到输出函数和情节函数的语法或intlinprog输出函数和情节函数的语法。 |
|
|
PlotFcn |
阴谋在算法执行时各种措施的进展。从预定义的情节或编写自己的选择。给函数名作为上市,或一个函数处理等
|
|
optimoptions 只有。为optimset ,使用PlotFcns |
RelativeGapTolerance |
真正的从
|
intlinprog |
optimoptions 只有 |
RootLPAlgorithm |
算法求解线性程序:
|
intlinprog |
optimoptions 只有 |
RootLPMaxIterations |
非负整数的最大数量的单纯形算法迭代解决最初的线性规划问题。 | intlinprog |
optimoptions 只有 |
ScaleProblem |
为 |
fmincon |
|
SpecifyConstraintGradient |
用户定义的梯度的非线性约束。 |
optimoptions 只有。为optimset ,使用GradConstr |
|
SpecifyObjectiveGradient |
用户定义的目标函数的梯度或雅克比。 |
|
optimoptions 只有。为optimset ,使用GradObj 或雅可比矩阵 |
StepTolerance |
终止上公差x。 |
||
SubproblemAlgorithm |
确定迭代步骤是如何计算的。 |
fmincon ,fminunc ,fsolve ,lsqcurvefit ,lsqlin ,lsqnonlin |
|
TypicalX |
数组指定数组的典型大小的参数 |
|
|
UseParallel |
当 |
|
隐藏选项
optimoptions
“隐藏”一些选项,这意味着它不显示它们的值。学习如何查看这些选项,为什么他们是隐藏的,看到的视图选项。
函数引用这些选项列表页面斜体。
隐藏的优化工具箱选项
此表列出了隐藏的优化工具箱™选项。
选项optimoptions
隐藏了
选项名称 | 描述 | 使用的功能 | 限制 |
---|---|---|---|
诊断 | 显示诊断信息函数最小化或解决。 |
||
DiffMaxChange | 最大的变量变化有限差分。 |
|
|
DiffMinChange | 最小的变量变化有限差分。 |
|
|
FunValCheck | 检查是否目标函数和约束值是有效的。 请注意
|
|
|
HessPattern | 稀疏的黑森有限差分模式。矩阵的大小n×n,其中n是元素的数量 |
||
HessUpdate | 拟牛顿更新计划。 |
||
InitBarrierParam | 最初的障碍的价值。 |
fmincon |
|
InitDamping | 初始Levenberg-Marquardt参数。 |
fsolve ,lsqcurvefit ,lsqnonlin |
optimoptions 只有 |
InitTrustRegionRadius | 最初的信赖域半径。 |
fmincon |
|
JacobPattern | 雅可比矩阵的稀疏模式有限差分。矩阵的大小 |
||
LPPreprocess | 类型的预处理解决轻松的线性规划(见线性规划预处理):
|
intlinprog |
optimoptions 只有 |
MaxPCGIter | 最大数量的条件共轭梯度迭代方法允许的。 |
|
|
MaxProjCGIter | 宽容的共轭梯度迭代数量的预测;这是一个内部迭代,而不是算法的迭代次数。 |
fmincon |
|
MaxSQPIter | 最大数量的迭代序列二次规划方法。 |
||
MeritFunction | 使用目标达到情况/极大极小优化方程(多目标)vs。 |
||
PrecondBandWidth | 上的带宽PCG预调节器。设置为 |
|
|
进行预处理 | LP水平预处理之前单纯形迭代或对偶单纯形算法。 |
optimoptions 只有 |
|
RelLineSrchBnd | 相对联机搜索步长。 |
||
RelLineSrchBndDuration | 绑定中指定的迭代次数 |
||
ScaleProblem | 当使用 |
fsolve ,lsqcurvefit ,lsqnonlin |
|
TolConSQP | 为内部SQP迭代约束违反宽容。 |
fgoalattain ,fmincon ,fminimax ,fseminf |
|
TolPCG | 在PCG迭代终止宽容。 |
|
|
TolProjCG | 预计共轭梯度算法的相对公差;这是一种内在的迭代,迭代算法。 |
fmincon |
|
TolProjCGAbs | 绝对容忍预计共轭梯度算法;这是一种内在的迭代,迭代算法。 |
fmincon |
隐藏的全局优化工具箱选项
这些选项是隐藏的原因,请参阅选项optimoptions隐藏(全局优化工具箱)。
选项optimoptions
隐藏了
选项名称 | 使用的功能 |
---|---|
缓存 |
|
CacheSize |
|
CacheTol |
|
DisplayInterval |
|
FunValCheck |
|
HybridInterval |
|
InitialPenalty |
|
MaxMeshSize |
|
MeshRotate |
|
MigrationDirection |
|
MigrationFraction |
|
MigrationInterval |
|
PenaltyFactor |
|
PlotInterval |
|
StallTest |
|
TolBind | patternsearch |