Linear Programming
Minimize linear functions subject to constraints
Linear programming (LP) involves minimizing or maximining an objective function subject to bounds, linear equality, and inequality constraints. Example problems include design optimization in engineering, profit maximization in manufacturing, portfolio optimization in finance, and scheduling in energy and transportation.
Linear programming is the mathematical problem of finding a vector x that minimizes the function:
Subject to the linear constraints:
| (inequality constraint) | |
| (equality constraint) | |
| (bound constraint) |
You can perform linear programming in MATLAB with Optimization Toolbox, which includes the following algorithms:
- Interior point: Uses a primal-dual predictor-corrector algorithm and is especially useful for large-scale problems that have structure or can be defined using sparse matrices.
- Active-set: Minimizes the objective at each iteration over the active set (a subset of the constraints that are locally active) until it reaches a solution.
- Simplex: Uses a systematic procedure for generating and testing candidate vertex solutions to a linear program. The simplex algorithm is the most widely used algorithm for linear programming.
Examples and How To
- Linear Programming with Equalities and Inequalities (Example)
- Linear Programming with Dense Columns in the Equalities (Example)
- Introduction to Optimization Graphical User Interface (Video)
Software Reference
- linprog Function in Optimization Toolbox (Functions)
- Interior Point Algorithm (Documentation)
- Active Set Algorithm (Documentation)
- Simplex Algorithm (Documentation)
See also: Optimization Toolbox, Global Optimization Toolbox, quadratic programming, nonlinear programming, multiobjective optimization, genetic algorithm, simulated annealing
