Linear Programming

Optimise a linear objective subject to linear constraints. Learn LP formulation, the feasible region and graphical method, corner-point theorem, the simplex method (slack variables, pivoting), duality and shadow prices, sensitivity analysis, and integer programming.

Production planning, blending, diet and feed mixes, energy dispatch, transport logistics and scheduling are solved every day with linear programming — often with millions of variables.

An analogy

The constraints fence off a polygon of feasible plans; slide the profit line across it — the best plan is always at a corner.

Formulation

Define decision variables with units, write the objective, list every resource/demand constraint, add non-negativity. Most errors are in formulation, not solving.

Graphical method (2 variables)

Plot constraints, shade the feasible region, evaluate the objective at each vertex (or slide an iso-profit line). Special cases: unbounded, infeasible, multiple optima.

Simplex method

Moves from vertex to adjacent vertex improving the objective, using slack variables and pivot operations on a tableau. Interior-point methods are alternatives for very large LPs.

Duality and sensitivity

Dual variables give the value of one more unit of each resource (shadow prices) — valid within ranges found by sensitivity analysis. Integer programming (branch-and-bound) handles yes/no decisions.

Formulas

Worked example: Production plan

Given: Max 40x + 30y; x + y ≤ 12, 2x + y ≤ 16, x, y ≥ 0

Find: Optimum.

Answer: x = 4, y = 8, profit 400

Worked example: Shadow price

Given: Increase labour capacity from 12 to 13

Find: Profit change.

Answer: +20 per extra labour unit (shadow price 20)

Common mistakes

Applications

Key takeaways

Going further