Linear Programming and Mixed-Integer Linear Programming - MATLAB & Simulink (original) (raw)
Main Content
Solve linear programming problems with continuous and integer variables
Before you begin to solve an optimization problem, you must choose the appropriate approach: problem-based or solver-based. For details, see First Choose Problem-Based or Solver-Based Approach.
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 Optimization 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 intlinprog when there are extended integer constraints, or use linprog when there are no integer constraints.
Functions
evaluate | Evaluate optimization expression or objectives and constraints in problem |
---|---|
findindex | Find numeric index equivalents of named index variables |
infeasibility | Constraint violation at a point |
optimproblem | Create optimization problem |
optimvar | Create optimization variables |
prob2struct | Convert optimization problem or equation problem to solver form |
solve | Solve optimization problem or equation problem |
integerConstraint | Indices of extended integer variables (Since R2025a) |
---|---|
intlinprog | Mixed-integer linear programming (MILP) |
linprog | Solve linear programming problems |
mpsread | Read MPS file for LP and MILP optimization data |
Objects
Live Editor Tasks
Optimize | Optimize or solve equations in the Live Editor (Since R2020b) |
---|
Topics
Problem-Based Mixed-Integer Linear Programming
- Mixed-Integer Linear Programming Basics: Problem-Based
Simple example of mixed-integer linear programming. - Factory, Warehouse, Sales Allocation Model: Problem-Based
This example shows how to set up and solve a mixed-integer linear programming problem. - Traveling Salesman Problem: Problem-Based
This example shows how to use binary integer programming to solve the classic traveling salesman problem. - Optimal Dispatch of Power Generators: Problem-Based
This example shows how to schedule two gas-fired electric generators optimally, meaning to get the most revenue minus cost. - Office Assignments by Binary Integer Programming: Problem-Based
This example shows how to solve an assignment problem by binary integer programming using the optimization problem approach. - Mixed-Integer Quadratic Programming Portfolio Optimization: Problem-Based
This example shows how to solve a Mixed-Integer Quadratic Programming (MIQP) portfolio optimization problem using the problem-based approach. - Cutting Stock Problem: Problem-Based
This example shows how to solve a cutting stock problem using linear programming with an integer linear programming subroutine. - Minimize Makespan in Parallel Processing
Minimize the maximum time for a set of processors to complete a group of tasks. - Solve Sudoku Puzzles via Integer Programming: Problem-Based
This example shows how to solve a Sudoku puzzle using binary integer programming.
Solver-Based Mixed-Integer Linear Programming
- Mixed-Integer Linear Programming Basics: Solver-Based
Simple example of mixed-integer linear programming. - Factory, Warehouse, Sales Allocation Model: Solver-Based
Example of optimizing logistics in a small supply chain. - Traveling Salesman Problem: Solver-Based
The classic traveling salesman problem, with setup and solution. - Optimal Dispatch of Power Generators: Solver-Based
Example showing how to schedule power generation when there is a cost for activation. - Office Assignments by Binary Integer Programming: Solver-Based
Solve an assignment problem using binary integer programming. - Mixed-Integer Quadratic Programming Portfolio Optimization: Solver-Based
Example showing how to optimize a portfolio, a quadratic programming problem, with integer and other constraints. - Cutting Stock Problem: Solver-Based
Solve a cutting stock problem using linear programming with an integer programming subroutine. - Solve Sudoku Puzzles via Integer Programming: Solver-Based
Sudoku is a type of puzzle that you can solve using integer linear programming.
Problem-Based Linear Programming
- Set Up a Linear Program, Problem-Based
Linear problem formulation using the problem-based approach. - Maximize Long-Term Investments Using Linear Programming: Problem-Based
Optimize a deterministic multiperiod investment problem using linear programming and the problem-based approach. - Optimize Green Hydrogen Production System
Optimize a green hydrogen production system. - Optimal Dispatch of Electric Power
Optimize the power generated or dispatched among renewable and nonrenewable generators in a deterministic system using optimization variables. - Create Multiperiod Inventory Model in Problem-Based Framework
Create an inventory model, where stock is carried between time periods, in the problem-based approach.
Solver-Based Linear Programming
- Set Up a Linear Program, Solver-Based
Problem formulation using the solver-based approach. - Typical Linear Programming Problem
This example shows the solution of a typical linear programming problem. - Maximize Long-Term Investments Using Linear Programming: Solver-Based
Optimize a deterministic multiperiod investment problem using linear programming.
Code Generation
- Code Generation for linprog Background
Prerequisites to generate C code for quadratic optimization. - Generate Code for linprog
Learn the basics of code generation for thelinprog
optimization solver.
Problem-Based Algorithms
- Problem-Based Optimization Algorithms
Learn how the optimization functions and objects solve optimization problems. - Supported Operations for Optimization Variables and Expressions
Explore the supported mathematical and indexing operations for optimization variables and expressions.
Solver-Based Algorithms and Options
- Linear Programming Algorithms
Minimizing a linear objective function in n dimensions with only linear and bound constraints. - Mixed-Integer Linear Programming (MILP) Algorithms
The algorithms used for solution of mixed-integer linear programs. - Optimization Options Reference
Explore optimization options. - Tuning Integer Linear Programming
Steps for improving solutions or solution time. - intlinprog Output Function and Plot Function Syntax
How to monitor the progress of theintlinprog
solution process.