Main Content

本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

optimset

创建或编辑优化选项结构体

语法

options = optimset('param1',value1,'param2',value2,...)
optimset
options = optimset
options = optimset(optimfun)
options = optimset(oldopts,'param1',value1,...)
options = optimset(oldopts,newopts)

说明

注意

fzerofminbndfminsearchlsqnonneg 之外,建议对所有求解器都使用 optimoptions 而不是 optimset

options = optimset('param1',value1,'param2',value2,...) 创建名为 options 的优化选项结构体,其中指定的选项 (param) 具有指定的值。任何未指定的选项都设置为 [](值为 [] 的选项表示在将 options 传递给优化函数时使用该选项的默认值)。只需键入唯一定义选项名称的几个前导字符即可。选项名称忽略大小写。

optimset(不带输入或输出参数)显示完整的选项列表及其有效值。

options = optimset(不带输入参数)创建选项结构体 options,其中所有字段设置为 []

options = optimset(optimfun) 创建选项结构体 options,其中包含与优化函数 optimfun 相关的所有选项名称及其默认值。

options = optimset(oldopts,'param1',value1,...) 创建 oldopts 的副本,用指定的值修改指定的选项。

options = optimset(oldopts,newopts) 合并现有选项结构体 oldopts 和新选项结构体 newoptsnewopts 中任何具有非空值的选项都会覆盖 oldopts 中对应的旧选项。

选项

有关各个选项的详细信息,包括其默认值,请参阅优化函数的参考页。优化选项参考提供优化选项以及哪些函数使用这些选项的说明。对于某些选项,optimset 使用不同于 optimoptions 的名称。请参阅当前选项名称和旧选项名称表

使用命令 optimset(@solver) 或等效的 optimset solver 查看求解器的相关优化选项的默认值。有些求解器没有默认值,因为默认值取决于算法。例如,对于信赖域反射算法,fmincon 求解器中 MaxIterations 选项的默认值为 400,而对于内点算法,默认值为 1000。

您还可以在 Optimization 工具中查看所有相关选项的默认值。要查看这些选项,请执行以下操作:

  1. 使用 optimtool 命令等方法启动 Optimization 工具。

  2. Solver 菜单中选择求解器。

  3. Algorithm 菜单中选择算法(如果适用)。

  4. 读取 Options 窗格中的默认值。

示例

下列语句创建名为 options 的优化选项结构体,其中 Display 选项设置为 'iter'TolX 选项设置为 1e-8

options = optimset('Display','iter','TolX',1e-8)

下列语句生成名为 options 的选项结构体的副本,但更改了 TolX 选项的值并将新值存储在 optnew 中。

optnew = optimset(options,'TolX',1e-4);

下列语句返回优化选项结构体 options,其中包含与函数 fminbnd 相关的所有选项名称及其默认值。

options = optimset('fminbnd')

如果您只想查看 fminbnd 的默认值,您可以简单地键入

optimset fminbnd

或者采用以下等效命令,

optimset('fminbnd')

扩展功能

在 R2006a 之前推出