Main Content

基于问题的优化和方程快速入门

基于问题的设置快速入门

要使用基于问题的方法求解问题,请执行以下步骤。

  • 使用 optimproblem 创建一个优化问题,或使用 eqnproblem 创建一个方程求解问题。

  • 使用 optimvar 创建优化变量。

  • 使用表示目标、约束或方程的优化变量创建表达式。使用圆点表示法将表达式放入问题中,例如

    prob.Objective = expression1;
    probl.Constraints.ineq = ineq1;
  • 对于非线性问题,创建一个初始点 x0 作为结构体,将优化变量的名称作为字段。

  • 通过调用 solve 求解问题。

要改进您的设置、提高性能或了解有关基于问题的设置的详细信息,请参阅改进基于问题的组织和性能

有关 Optimization Toolbox™ 中并行计算的信息,请参阅上一节;有关 Global Optimization Toolbox 中并行计算的信息,请参阅如何在 Global Optimization Toolbox 中使用并行处理 (Global Optimization Toolbox)

函数

全部展开

eqnproblem创建方程问题
optimproblem创建优化问题
optimvalues为优化问题创造价值 (自 R2022a 起)
optimvar创建优化变量
show显示有关优化对象的信息
showbounds显示变量边界
write保存优化对象描述
writebounds保存变量边界描述
fcn2optimexpr将函数转换为优化表达式
optimconstr创建空优化约束数组
optimeq创建空优化等式数组
optimineq创建空优化不等式数组
optimexpr创建空优化表达式数组
show显示有关优化对象的信息
write保存优化对象描述
evaluate计算问题中的优化表达式或目标和约束
findindex查找命名索引变量的等效数值索引
infeasibility一个点处的约束违反值
issatisfied优化问题在一组点上的约束约束 (自 R2024a 起)
paretoplot多目标的帕累托图 (自 R2022a 起)
prob2struct将优化问题或方程问题转换为求解器形式
show显示有关优化对象的信息
solve求解优化问题或方程问题
solvers确定优化问题或方程问题的默认和有效求解器 (自 R2022b 起)
varindex将问题变量映射到基于求解器的变量索引
write保存优化对象描述

对象

EquationProblem非线性方程组
OptimizationConstraint优化约束
OptimizationEquality等式和等式约束
OptimizationExpression关于优化变量的算术或函数表达式
OptimizationInequality不等式约束
OptimizationProblem优化问题
OptimizationValues优化问题的值 (自 R2022a 起)
OptimizationVariable优化变量

实时编辑器任务

优化在实时编辑器中优化或求解方程 (自 R2020b 起)

主题

基于问题的过程

局限性

调整和监控求解过程

算法

Optimization Toolbox 中的并行计算