全局或多起点搜索
用于基于梯度优化的多起点求解器(有约束或无约束)
这些求解器适用于具有平滑目标函数和约束的问题。它们反复运行 Optimization Toolbox™ 求解器,试图找到一个全局解或多个局部解。
函数
对象
主题
基于问题的多起点
- 基于问题使用多起点求解器最小化非线性函数
使用多启动求解器找到非线性问题的更好解。 - 指定 MultiStart 的起点,基于问题
在基于问题的方法中指定MultiStart
的起点。 - 使用 MultiStart 或 GlobalSearch 找到基于问题的多个局部解决方案
使用output
结构体的local
字段来检查GlobalSearch
和MultiStart
的开始点。 - MultiStart 与 lsqnonlin,基于问题
使用MultiStart
和lsqnonlin
将函数拟合到数据。
GlobalSearch 和 MultiStart 优化基础知识
- 寻找全局或多个局部最小值
示例显示GlobalSearch
返回的解比MultiStart
少,但通常质量更高。 - 使用 GlobalSearch 和 MultiStart 最大化单色偏振光干涉图案
在具有多个局部极小值的问题中寻找全局最小值。 - 仅使用可行的起点进行优化
说明如何避免从不可行点开始的示例。 - 使用 lsqcurvefit 或 lsqnonlin 的 MultiStart
展示如何使用 MultiStart 帮助求解最小二乘问题的全局最小值。
优化工作流
- GlobalSearch 和 MultiStart 的工作流
如何设置和运行求解器。 - 创建问题结构体
提供创建问题结构体的详细步骤。 - 创建求解器对象
描述什么是求解器对象,以及如何设置其属性。 - 设置 MultiStart 的起点
提供有关设置起点的方法的详细信息。 - 运行求解器
提供 GlobalSearch 和 MultiStart 完整工作流的基本示例。
有效搜索的方法
- 并行 MultiStart
展示如何并行计算以实现更快的搜索。 - 孤立全局最小值
一个扩展的示例,展示了如何搜索全局最小值。 - 细化起点
如何有效且高效地搜索您的空间的示例。 - 更改选项
设置局部求解器选项和全局求解器属性时的注意事项。 - 重现结果
如何设置随机种子来重现结果。
检查结果
- 迭代输出
描述用于监控求解器进度的两种迭代显示类型。 - 全局输出结构体
描述 GlobalSearch 和 MultiStart 可以返回的输出结构体的类型。 - 可视化吸引力盆地
展示如何在二维问题中绘制多个初始点和最终点的示例。 - GlobalSearch 和 MultiStart 的输出函数
提供使用输出函数监控和停止求解器的详细信息和示例。 - GlobalSearch 和 MultiStart 的绘图函数
如何使用内置和自定义绘图函数来监控解的进度。
多起点求解器背景
- GlobalSearch 和 MultiStart 可以解决的问题
GlobalSearch 和 MultiStart 适用于存在多个局部解的平滑问题。 - GlobalSearch 和 MultiStart 的工作原理
描述求解器算法。 - 单一解
描述前四个输出,通常称为x
、fval
、exitflag
和output
,来自GlobalSearch
和MultiStart
。 - 多个解
描述如何从 GlobalSearch 和 MultiStart 获取多个解,以及如何更改不同解的定义。 - GlobalSearch 和 MultiStart 属性(选项)
描述 GlobalSearch 和 MultiStart 对象的属性。