二次规划和锥规划
求解具有二次目标和线性约束或锥约束的问题
在开始求解优化问题之前,您必须选择合适的方法:基于问题或基于求解器。有关详细信息,请参阅首先选择基于问题或基于求解器的方法。
对于基于问题的方法,请创建问题变量,然后用这些符号变量表示目标函数和约束。有关基于问题的求解步骤,请参阅基于问题的优化工作流。要求解生成的问题,请使用 solve
。
有关基于求解器的求解步骤,包括定义目标函数和约束,以及选择合适的求解器,请参阅基于求解器的优化问题设置。要求解生成的问题,请使用 quadprog
或 coneprog
。
函数
实时编辑器任务
优化 | 在实时编辑器中优化或求解方程 (自 R2020b 起) |
对象
SecondOrderConeConstraint | 二阶锥约束对象 (自 R2020b 起) |
主题
基于问题的二次规划
- 具有边界约束的二次规划问题:基于问题
说明如何使用不同算法求解具有边界约束的基于问题的二次规划问题。 - Large Sparse Quadratic Program, Problem-Based
Shows how to solve a large sparse quadratic program using the problem-based approach. - Bound-Constrained Quadratic Programming, Problem-Based
Example showing large-scale problem-based quadratic programming. - 基于问题通过二次规划进行投资组合优化
说明关于基本投资组合模型的基于问题的二次规划的示例。 - Diversify Portfolios Using Optimization Toolbox
This example shows three techniques of asset diversification in a portfolio using optimization functions.
基于求解器的二次规划
- Quadratic Minimization with Bound Constraints
Example of quadratic programming with bound constraints and various options. - Quadratic Programming with Many Linear Constraints
This example shows the benefit of the active-set algorithm on problems with many linear constraints. - Warm Start quadprog
Shows that warm start can be effective in a large quadratic program. - Warm Start Best Practices
Describes how best to use warm start for speeding repeated solutions. - Quadratic Minimization with Dense, Structured Hessian
Example showing how to save memory in a structured quadratic program. - Large Sparse Quadratic Program with Interior Point Algorithm
Example showing how to save memory in a quadratic program by using a sparse quadratic matrix. - Bound-Constrained Quadratic Programming, Solver-Based
Example showing solver-based large-scale quadratic programming. - 基于求解器的投资组合优化问题的二次规划
说明关于基本投资组合模型的基于求解器的二次规划的示例。
基于问题的二阶锥规划
- Minimize Energy of Piecewise Linear Mass-Spring System Using Cone Programming, Problem-Based
Presents a problem-based example of cone programming. - Discretized Optimal Trajectory, Problem-Based
This example shows how to solve a discretized optimal trajectory problem using the problem-based approach. - Compare Speeds of coneprog Algorithms
This section gives timing information for a sequence of cone programming problems using variousLinearSolver
option settings. - Write Constraints for Problem-Based Cone Programming
Requirements forsolve
to useconeprog
for problem solution.
基于求解器的二阶锥规划
- Minimize Energy of Piecewise Linear Mass-Spring System Using Cone Programming, Solver-Based
Solve a mechanical mass-spring problem using cone programming. - Convert Quadratic Constraints to Second-Order Cone Constraints
Convert quadratic constraints intoconeprog
form. - Convert Quadratic Programming Problem to Second-Order Cone Program
Convert a quadratic programming problem to a second-order cone problem.
代码生成
- quadprog 背景下的代码生成
为二次优化生成 C 代码的前提条件。 - 为 quadprog 生成代码
了解为quadprog
优化求解器生成代码的基础知识。 - Warm Start Best Practices
Describes how best to use warm start for speeding repeated solutions. - Optimization Code Generation for Real-Time Applications
Explore techniques for handling real-time requirements in generated code.
基于问题的算法
- 基于问题的优化算法
了解优化函数和对象如何求解优化问题。 - Write Constraints for Problem-Based Cone Programming
Requirements forsolve
to useconeprog
for problem solution. - Supported Operations for Optimization Variables and Expressions
Explore the supported mathematical and indexing operations for optimization variables and expressions.
算法和选项
- 二次规划算法
在仅具有线性和边界约束的情况下在 n 个维度中最小化二次目标函数。 - Second-Order Cone Programming Algorithm
Description of the underlying algorithm. - 优化选项参考
了解优化选项。