主要内容

基于问题的优化设置

使用变量和表达式制定优化问题,在串行或并行解决

在基于问题的优化中,您可以创建优化变量,这些变量中的表达式表示目标和约束或代表方程式,以及使用解决问题解决.有关为优化问题采取的基于问题的步骤,请参见具体问题具体分析优化工作流程.对于等式求解,见求解方程的基于问题的工作流

在开始解决优化问题之前,必须选择适当的方法:基于问题或基于求解器。有关详细信息,请参见首先选择基于问题或基于求解器的方法

注意:如果您有一个非线性函数,则不由多项式,Rational表达式和诸如的基本功能组成经验值,然后通过使用将函数转换为优化表达式FCN2Optimexpr..看将非线性函数转换为优化表达式金宝app支持优化变量和表达式的操作

对于基本的非线性优化示例,请参阅解决一个约束非线性问题,基于问题.有关基本的混合整数线性规划示例,请参见混合整数线性编程基础:基于问题.有关基本的方程求解示例,请参见解决方程的非线性系统,基于问题

功能

全部展开

eqnproblem 创建方程问题
optimproblem 创建优化问题
优越的 创建优化变量
显示 显示优化对象信息
Showbounds. 显示变量范围
保存优化对象描述
writebounds 保存变量边界的描述
FCN2Optimexpr. 将函数转换为优化表达式
OptimConstr. 创建空优化约束阵列
Optimeq. 创建空的优化相等数组
Optimineq. 创建空优化不等式数组
optimexpr 创建空优化表达式数组
显示 显示优化对象信息
保存优化对象描述
评估 评估优化表达式
findindex 查找指定索引变量的数字索引等价项
不可行 在某一点违反约束
prob2struct. 将优化问题或等式问题转换为求解器
显示 显示优化对象信息
解决 解决优化问题或等式问题
varindex. 将基于求解器的变量索引的地图问题变量
保存优化对象描述

对象

公式问题 非线性方程组
OptimizationConstraint 优化的约束
优化等级 平等和平等约束
OptimizationExpression 优化变量的算术或函数表达式
优化序列 不平等约束
优化问题 优化问题
OptimizationVariable 为优化变量

主题

具体问题具体分析的步骤

具体问题具体分析优化工作流程

解决优化问题的基于问题的步骤。

求解方程的基于问题的工作流

解方程的基于问题的步骤。

优化表达式

表达式定义了目标和约束。

在基于问题的方法中传递额外参数

在基于问题的方法中传递额外的参数、数据或固定变量。

写入基于问题的最小二乘函数

基于问题的最小二乘语法规则。

命名索引用于优化变量

如何创建和使用变量的命名索引。

查看或修改优化问题

演示如何检查或修改问题元素,如变量和约束。

检查优化解决方案

如何评估解决方案及其质量。

设置选项

设置选项

设置优化选项

基于问题的优化输出功能

演示如何在基于问题的方法中使用输出函数来记录迭代历史和制作自定义图。

基于问题的优化技巧

创造有效的优化问题

当存在整数约束时,用于获取更快或更准确的解决方案的提示,并且用于避免创建问题的循环。

将优化模型与数据分离

要创建可重用的、可伸缩的问题,请将模型与数据分离。

禁止重复名称的变量

解决两个同名优化变量的问题。

用命名的索引变量创建优化的初始点

这个例子展示了如何创建初始点解决方法命名索引变量时findindex函数。

Expression包含Inf或NaN

优化表达式包含INF.或者无法显示,可能导致意外的结果。

基于问题的串行或并行中具有共同功能的目标和约束

节省您的目标和非线性约束函数在基于问题的方法中共享常见计算的时间。

自动微分在问题优化中的作用

自动差异降低解决问题的函数评估的数量。

并行计算

什么是优化工具箱中的并行计算?

使用多个处理器进行优化。

在优化工具箱中使用并行计算

并行执行梯度估计。

使用并行计算工具箱最小化昂贵的优化问题

例子显示了并行计算在两个求解器的有效性:fmincon遗传算法

通过并行计算提高性能

调查超速优化的因素。

基于问题的算法

具体问题具体分析的优化算法

优化函数和对象如何解决优化问题。

自动分化背景

学习自动微分是如何工作的。

金宝app支持优化变量和表达式的操作

列出优化变量和表达式上所有可用的数学和索引操作。