Global Optimization Toolbox

重要更新

 

Global Optimization Toolbox

求解多个极大值、多个极小值和非光滑优化问题

 

Global Optimization Toolbox 所提供的函数可为包含多个极大值或极小值的问题搜索全局解。工具箱求解器包括替代、模式搜索、遗传算法、粒子群、模拟退火、多初始点和全局搜索。对于目标函数或约束函数连续、不连续、随机、导数不存在或包含模拟或黑箱函数的优化问题,都可以使用这些求解器。对于有多个目标的问题,您可以使用遗传算法或模式搜索求解器确定帕累托前沿。

您可以通过调整选项,或者对于适用的求解器,通过自定义创建、更新和搜索函数,从而提高求解器效率。可以使用自定义数据类型,配合遗传算法和模拟退火求解器,来描绘采用标准数据类型不容易表达的问题。利用混合函数选项,可在第一个求解器之后应用第二个求解器来改进解。

解决优化问题

选择求解器,定义您的优化问题,设置算法行为、容差、停止准则、可视化和自定义选项。

指定求解器和问题

根据问题特点和希望的结果决定求解器。编写函数,指定非线性目标和约束。 

平滑和非平滑问题。

设置常用选项

设置适用于选定求解器的停止准则。设置最优性和约束的容差。通过并行计算加速。

通过并行计算加速。

评估中间结果

使用绘图函数,获得关于优化进度的实时反馈。编写您自己的函数,或者使用所提供的函数。使用输出函数创建您自己的停止准则,将结果写入文件,或编写您自己的应用程序来运行求解器。

模式搜索的自定义绘图函数。

GlobalSearch 和 MultiStart

应用基于梯度的求解器,从多个初始点中查找局部极小值以搜索全局极小值。返回其他局部或全局极小值。求解光滑的无约束和有约束问题。

比较求解器

使用 GlobalSearch 生成多个初始点,并在启动非线性求解器之前进行筛选,通常可得到高质量解。使用 MultiStart 可以选择局部求解器和各种创建初始点的方法。

GlobalSearch 和 MultiStart 结果。

选择 GlobalSearch 选项

指定试验点的数量并调整搜索。 

选择 MultiStart 选项

指定非线性求解器。选择生成初始点的方法或使用用户自定义集。通过并行计算加速。

替代优化

搜索拥有耗时的目标函数问题的全局极小值。求解器对可快速估算并求极小值的函数建立一个近似。

指定问题

应用于存在有限边界约束的问题。目标函数不需要可微分或连续。

选择选项

提供一组初始点和可选目标值,用于构造初始替代。设置要供替代使用的点数和最小抽样距离。通过并行计算加速。

内置的抽样点、自适应点和最佳点绘图。

模式搜索

使用以下三种直接搜索算法求解优化问题:广义模式搜索 (GPS)、生成集搜索 (GSS) 和网格自适应搜索 (MADS)。每一步都生成和评估这些点的网格模式。

指定问题

应用于无约束问题、有边界的线性或非线性约束问题。目标函数和约束函数不需要可微分或连续。

在白山山脉中攀登华盛顿山。

选择选项

在轮询选项中选择,设置每一步要评估的点数。使用可选的搜索步骤提高效率。控制网格如何变化,包括细化和收缩。通过并行计算加速。

函数值和评估次数的内置绘图。

遗传算法

模仿生物进化的理论,根据生物繁殖的基因组合规律模型反复修改一个种群的各个个体,从而搜索全局极小值。

指定问题

应用于无约束问题、有边界的线性、非线性或整数约束问题。目标函数和约束函数不需要可微分或连续。

选择选项

选择用于创建、适应度缩放、选择、交叉和变异的选项。指定种群小、优良子代数量和交叉片段。通过并行计算加速。

有几个局部极小值的函数。

自定义

提供您自己的函数,用于创建、选择和变异。使用自定义数据类型,更容易表达您的问题。应用第二个优化器改善解。

旅行推销员问题的解。

粒子群

使用受昆虫群居行为启发的算法搜索全局极小值。每个粒子移动的速度和方向受到它目前发现的最佳位置和群体已经发现的最佳位置的影响。

指定问题

应用于无约束问题或有边界约束的问题。目标函数不需要可微分或连续。

每个粒子显示五个移动路径点。

选择选项

通过设置惯性及自我调节和社会调节权重来优化速度计算。设置邻域大小。通过并行计算加速。

内置绘图函数。

自定义

提供您自己的函数,用于创建初始群。应用第二个优化器改善解。

一个随机函数上的粒子群。

模拟退火

使用模拟物理退火过程的概率搜索算法来搜索全局极小值,在退火过程中材料先被加热,然后缓慢降温以减少缺陷,从而尽量减小系统能量。

指定问题

应用于无约束问题或有边界约束的问题。目标函数不需要可微分或连续。

有多个局部极小值的函数。

选择选项

选择用于自适应模拟退火、Boltzmann 退火或快速退火算法的选项。

模拟退火可视化。

自定义

创建函数来定义退火过程、接受准则和温度调度。使用自定义数据类型,更容易表达您的问题。应用第二个优化器改善解。

多处理器调度。

多目标优化

找出有多个目标和边界、线性或非线性约束的问题的帕雷托前沿 — 非支配解集。使用模式搜索或遗传算法求解器。

比较求解器

与多目标遗传算法相比,使用多目标模式搜索算法产生帕雷托前沿所用的函数评估次数较少。遗传算法可以产生间隔更宽的点。 

选择模式搜索选项

提供一组初始点。指定期望的帕雷托解集大小、最小轮询片段和体积变化容差。自动绘制 2D 和 3D 帕雷托前沿。通过并行计算加速。

三个目标的帕雷托曲面。

设置遗传算法选项

指定个体的分布率以继续保持顶级的帕雷托前沿。自动绘制 2D 帕雷托前沿。通过并行计算加速。

两个目标的帕雷托前沿。

最新功能

surrogateopt 求解器

使用较少的目标函数评估,求解耗时的边界约束优化问题

paretosearch 多目标求解器

为有边界、线性或光滑非线性约束的问题快速而准确地找到 Pareto 最优解集

并行计算

加速 surrogateoptparetosearch 函数(使用 Parallel Computing Toolbox™)

关于这些功能和相应函数的详细信息,请参阅 发行说明

获取免费试用版

30 天探索触手可及。

马上下载

准备购买?

获取详细价格和并探索相关产品。

您是学生吗?

获得 MATLAB 和 Simulink 学生版软件。

了解更多