Solver-Based非线性优化
利用基于求解器的方法解决串行或并行的非线性最小化和半无限规划问题
在开始解决优化问题之前,必须选择适当的方法:基于问题的方法还是基于求解器的方法。有关详细信息,请参见首先选择基于问题或基于求解器的方法.
有关问题设置,请参见基于求解器的优化问题设置.
功能
fminbnd |
求固定区间上单变量函数的最小值 |
fmincon |
求约束非线性多变量函数的最小值 |
fminsearch |
用无导数法求无约束多元函数的最小值 |
fminunc |
求无约束多元函数的最小值 |
fseminf |
求半无限约束多变量非线性函数的极小值 |
optim.coder.infbound |
对代码生成的无限绑定支持 |
住编辑任务
优化 | 在实时编辑器中优化或求解方程 |
主题
无约束Solver-Based应用程序
- 香蕉函数最小化
展示了如何用不同的求解器,有或没有梯度,求解Rosenbrock函数的最小值。 - 求解多变量非线性问题
对于大型非线性问题选择适当的选项。 - 使用fminunc实现无约束最小化
无约束非线性规划的例子。 - 用梯度和黑森极小化
无约束非线性规划的例子,包括导数。 - 梯度和Hessian稀疏模式的极小化
使用一些导数信息的非线性规划示例。
限制Solver-Based应用程序
- 优化工具箱教程
演示如何解决非线性问题和传递额外参数的教程示例。 - 用fmincon求解器优化实时编辑器任务
使用Optimize Live Editor任务的带约束的非线性编程示例。 - 非线性不等式约束
带有非线性不等式约束的非线性规划示例。 - 带有梯度的非线性约束
带有导数信息的非线性规划实例。 - fmincon内点算法与解析Hessian
带有所有导数信息的非线性规划示例。 - 具有二次约束的线性或二次目标
这个例子展示了如何解决一个具有线性或二次目标和二次不等式约束的优化问题。 - 非线性等式与不等式约束
具有两种非线性约束的非线性规划。 - 如何使用所有类型的约束
显示所有约束的示例。 - 获得最佳可行点
找到最佳可行点输出
结构。 - 求解多变量非线性问题
对于大型非线性问题选择适当的选项。 - 带约束和带预调节器的极小化
演示结构化非线性问题可能带来的效率增益的例子。 - 线性等式约束下的极小化,信赖域反射算法
示例显示只有线性等式约束的非线性规划。 - 密集结构Hessian线性方程的极小化
这个例子展示了如何在使用结构化黑森函数和只有线性等式约束或只有边界的非线性编程中节省内存。 - 使用符号数学工具箱计算梯度和黑森斯
演示如何用符号计算优化求解器的导数。 - 使用符号数学和优化工具箱求解器
使用符号数学工具箱™生成梯度和黑森。
代码生成
- 在fmincon后台生成代码
为非线性优化生成C代码的先决条件。 - 优化基础的代码生成
学习代码生成的基础知识fmincon
优化求解。 - fmincon代码生成的静态内存分配
当问题发生变化时,在代码生成中使用静态内存分配。 - 实时应用程序代码生成优化
探索在生成代码中处理实时需求的技术。
半无限约束
- 一维半无限约束
说明如何在非线性规划中使用一维半无限约束的例子。 - 二维半无限约束
说明如何在非线性规划中使用二维半无限约束的例子。 - 用半无限规划分析不确定性的影响
这个例子展示了如何使用半无限规划来研究一个优化问题的模型参数的不确定性的影响。
并行计算
- 什么是优化工具箱中的并行计算?
使用多个处理器进行优化。 - 在优化工具箱中使用并行计算
并行执行梯度估计。 - 用并行计算提高性能
研究加速优化的因素。 - 使用并行计算工具箱最小化昂贵的优化问题
演示如何在两者中使用并行计算的示例全局优化工具箱和优化工具箱™求解器。
模拟或颂歌
- 优化模拟或常微分方程
优化模拟、黑盒目标函数或ode时的特殊考虑。
算法和其他理论
- 无约束非线性优化算法
中单个目标函数的最小值n尺寸没有约束。 - 约束非线性优化算法
中单个目标函数的最小值n具有各种类型约束的维度。 - fminsearch算法
的步骤fminsearch
函数的最小值。 - 优化选择参考
探索优化选项。 - 本地vs.全局优化
解释了为什么求解者可能找不到最小值。 - 非光滑函数的光滑公式
利用辅助变量将一些非光滑函数重新表述为光滑函数。 - 参考书目
列出支持在求解器算法中实现的概念的已发表材料。