global optimization toolbox 所提供的函数可为包含多个极大值或极小值的问题搜索全局解。工具箱求解器包括替代、模式搜索、遗传算法、粒子群、模拟退火、多初始点和全局搜索。对于目标函数或约束函数连续、不连续、随机、导数不存在或包含模拟或黑箱函数的优化问题,都可以使用这些求解器。对于有多个目标的问题,您可以使用遗传算法或模式搜索求解器确定帕累托前沿。
您可以通过调整选项,或者对于适用的求解器,通过自定义创建、更新和搜索函数,从而提高求解器效率。可以使用自定义数据类型,配合遗传算法和模拟退火求解器,来描绘采用标准数据类型不容易表达的问题。利用混合函数选项,可在第一个求解器之后应用第二个求解器来改进解。
开始:
解决优化问题
选择求解器,定义您的优化问题,设置算法行为、容差、停止准则、可视化和自定义选项。
建模并选择优化方法
将问题描述转换为数学形式,以便使用优化方法来求解问题。选择基于问题的方法,将目标和约束写作优化变量表达式。然后应用自动选择的求解器。或者,选择基于求解器的方法,使用函数和系数矩阵定义目标和约束。
指定求解器和问题
通过基于问题或基于求解器方法使用“优化”实时编辑器任务来帮助选择适合问题类型的求解器。
评估中间结果
使用绘图函数,获得关于优化进度的实时反馈。编写您自己的函数,或者使用所提供的函数。使用输出函数创建您自己的停止准则,将结果写入文件,或编写您自己的应用程序来运行求解器。
globalsearch 和 multistart
应用基于梯度的求解器,从多个初始点中查找局部极小值以搜索全局极小值。返回其他局部或全局极小值。求解光滑的无约束和有约束问题。
比较求解器
使用 globalsearch 生成多个初始点,并在启动非线性求解器之前进行筛选,通常可得到高质量解。使用 multistart 可以选择局部求解器和各种创建初始点的方法。
选择 globalsearch 选项
指定试验点的数量并调整搜索。
选择 multistart 选项
指定非线性求解器。选择生成初始点的方法或使用用户自定义集。通过并行计算加速。 |
替代优化
搜索拥有耗时的目标函数问题的全局极小值。求解器对可快速估算并求极小值的函数建立一个近似。
选择选项
提供一组初始点和可选目标值,用于构造初始替代。设置要供替代使用的点数和最小抽样距离。通过并行计算加速。
模式搜索
从当前点开始,添加一组向量以获得新试验点。计算试验点上的目标函数值,并使用该信息来更新当前点。重复该过程直到当前点成为最佳点。
遗传算法
模仿生物进化的理论,根据生物繁殖的基因组合规律模型反复修改一个种群的各个个体,从而搜索全局极小值。
模拟退火
使用模拟物理退火过程的概率搜索算法来搜索全局极小值,在退火过程中材料先被加热,然后缓慢降温以减少缺陷,从而尽量减小系统能量。
选择选项
选择用于自适应模拟退火、boltzmann 退火或快速退火算法的选项。 |
自定义
创建函数来定义退火过程、接受准则和温度调度。使用自定义数据类型,更容易表达您的问题。应用第二个优化器改善解。
多目标优化
找出有多个目标和边界、线性或非线性约束的问题的帕雷托前沿 — 非支配解集。使用模式搜索或遗传算法求解器。
比较求解器
与多目标遗传算法相比,使用多目标模式搜索算法产生帕雷托前沿所用的函数评估次数较少。遗传算法可以产生间隔更宽的点。
选择模式搜索选项
提供一组初始点。指定期望的帕雷托解集大小、最小轮询片段和体积变化容差。自动绘制 2d 和 3d 帕雷托前沿。通过并行计算加速。 |
设置遗传算法选项
指定个体的分布率以继续保持顶级的帕雷托前沿。自动绘制 2d 帕雷托前沿。通过并行计算加速。 |