具体问题具体分析非线性优化
用基于问题的方法解决串行或并行的非线性优化问题
在开始解决优化问题之前,必须选择适当的方法:基于问题的方法还是基于求解器的方法。有关详细信息,请参见首先选择基于问题或基于求解器的方法.
在优化变量中表述你的目标和非线性约束函数的表达式,或转换MATLAB®函数的使用fcn2optimexpr
.有关问题设置,请参见具体问题具体分析的优化设置.
功能
评估 |
评估优化表达式 |
fcn2optimexpr |
将函数转换为优化表达式 |
不可能实行 |
在某一点违反约束 |
optimproblem |
创建优化问题 |
optimvar |
创建优化变量 |
prob2struct |
将优化问题或方程问题转化为求解器形式 |
解决 |
解决优化问题或方程问题 |
住编辑任务
优化 | 在实时编辑器中优化或求解方程 |
主题
不受约束的具体问题具体分析的应用
- 理性目标函数,基于问题
这个例子展示了如何使用优化变量创建一个合理的目标函数,并解决由此产生的无约束问题。
限制具体问题具体分析的应用
- 求解约束非线性优化,基于问题
这个例子展示了如何基于优化表达式来求解一个有约束的非线性问题。该示例还展示了如何将非线性函数转换为优化表达式。 - 将非线性函数转化为优化表达式
将非线性函数转换为函数文件或匿名函数fcn2optimexpr
. - 基于优化变量的约束静电非线性优化
在基于问题的方法中定义结构化非线性优化的目标和约束函数。 - 离散最优轨迹,基于问题
这个例子展示了如何使用基于问题的方法来解决离散化最优轨迹问题。 - 线性约束下基于问题的非线性极小化
演示如何使用优化变量创建线性约束,以及fcn2optimexpr
将函数转换为优化表达式。 - 自动区分在基于问题优化中的作用
自动微分降低了求解问题的函数求值次数。 - 基于问题的工作流中的供应派生
当自动导数不适用时,如何在基于问题的优化中包含导数信息。 - 获取生成的函数详细信息
求出非线性函数中附加参数的值prob2struct
. - 目标和约束在串行或并行中具有共同功能,基于问题
在基于问题的方法中,当目标函数和非线性约束函数共享公共计算时,可以节省时间。 - 解决非线性可行性问题,基于问题
解决一个可行性问题,这是一个只有约束的问题。 - 基于问题优化实时编辑器任务的可行性
用基于问题的方法求解非线性可行性问题优化实时编辑器任务和几个求解器。 - 通过可行性模式获取解决方案
解决有困难约束的问题fmincon
可行性模式。 - 基于问题优化的输出函数
在基于问题的方法中使用输出函数来记录迭代历史并制作自定义图。
并行计算
- 什么是优化工具箱中的并行计算?
使用多个处理器进行优化。 - 在优化工具箱中使用并行计算
并行执行梯度估计。 - 用并行计算提高性能
研究加速优化的因素。
模拟或颂歌
- 优化模拟或常微分方程
优化模拟、黑盒目标函数或ode时的特殊考虑。
算法和其他理论
- 无约束非线性优化算法
中单个目标函数的最小值n尺寸没有约束。 - 约束非线性优化算法
中单个目标函数的最小值n具有各种类型约束的维度。 - fminsearch算法
的步骤fminsearch
函数的最小值。 - 优化选择参考
探索优化选项。 - 本地vs.全局优化
解释了为什么求解者可能找不到最小值。 - 非光滑函数的光滑公式
利用辅助变量将一些非光滑函数重新表述为光滑函数。 - 参考书目
列出支持在求解器算法中实现的概念的已发表材料。