# Linear Programming and Mixed-Integer Linear Programming

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
integer constraints, or use `linprog`

when there are no
integer constraints.

## Functions

## 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.**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.

### Model and Analyze Linear and Integer Problems

**Integer and Logical Modeling**

Techniques for modeling with integer constraints using "Big-M" and other techniques.**Investigate Linear Infeasibilities**

Find out which linear constraints cause a problem to be infeasible.

### 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 the`intlinprog`

solution process.