Documentation

This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English version of the page.

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

Solve problems with quadratic objectives and linear constraints

There are two approaches to quadratic programming. This table helps you choose the best approach. Examples appear toward the bottom of the page.

ApproachesCharacteristics
Problem-Based Optimization SetupEasier to create and debug
Only for linear or quadratic problems with linear or integer constraints
Represent the objective and constraints symbolically
Solution time is longer because of translation time from problem form to matrix form
See the steps in Problem-Based Workflow
Basic example: Mixed-Integer Linear Programming Basics: Problem-Based or the video Solve a Mixed-Integer Linear Programming Problem using Optimization Modeling
Solver-Based Optimization Problem SetupHarder to create and debug
Represent the objective and constraints as functions or matrices
Solution time is shorter because there is no translation time to matrix form
To save memory in large problems, allows use of Hessian multiply function or Jacobian multiply function. See Quadratic Minimization with Dense, Structured Hessian or Jacobian Multiply Function with Linear Least Squares.
See the steps in Solver-Based Optimization Problem Setup
Basic example: Mixed-Integer Linear Programming Basics: Solver-Based

For the problem-based approach, create problem variables, and then represent the objective function and constraints in terms of these symbolic variables. For the problem-based steps to take, see Problem-Based Workflow. To solve the resulting problem, use `solve`.

For the solver-based steps to take, including defining the objective function and constraints, and choosing the appropriate solver, see Solver-Based Optimization Problem Setup. To solve the resulting problem, use `quadprog`.

Functions

 `quadprog` Quadratic programming `solve` Solve optimization problem

Topics

Problem-Based Quadratic Programming Solutions

Quadratic Programming with Bound Constraints: Problem-Based

Shows how to solve a problem-based quadratic programming problem with bound constraints using different algorithms.

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.

Quadratic Programming for Portfolio Optimization, Problem-Based

Example showing problem-based quadratic programming on a basic portfolio model.

Solver-Based Quadratic Programming Solutions

Quadratic Minimization with Bound Constraints

Example of quadratic programming with bound constraints.

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.

Quadratic Programming for Portfolio Optimization Problems, Solver-Based

Example showing solver-based quadratic programming on a basic portfolio model.

Problem-Based Algorithms

Problem-Based Optimization Algorithms

How the optimization functions and objects solve optimization problems.

Supported Operations on Optimization Variables and Expressions

Lists all available mathematical and indexing operations on optimization variables and expressions.