SECTION 1
Historical Context & Motivation
Every organization faces the same fundamental challenge: how to make the best use of limited resources. Whether a manufacturer is deciding how many units of each product to produce, or a logistics company is routing shipments across a network of warehouses, decision-makers must navigate a web of constraints—budget caps, labor hours, machine capacities, contractual obligations—while pursuing a clear objective such as maximizing revenue or minimizing total cost. Linear programming (LP) emerged in the mid-twentieth century as the first rigorous, general-purpose framework for solving these resource-allocation problems, and it remains one of the most widely used tools in prescriptive analytics today.
The roots of LP lie in wartime logistics. During World War II, military planners needed systematic methods to schedule training, deploy troops, and allocate supplies across multiple fronts simultaneously. Traditional trial-and-error approaches could not cope with the scale and urgency of these decisions, creating a demand for mathematical techniques that could guarantee optimal or near-optimal solutions under well-defined conditions.
1939 • Kantorovich's Allocation Model
1947 • Dantzig's Simplex Method
1975 • Nobel Prize for LP Economics
1984 • Karmarkar's Interior-Point Method
2000s–Present • LP in Modern Business Analytics
The central question that linear programming addresses is deceptively simple: given a set of linear relationships among decision variables and constraints, what combination of variable values yields the best possible outcome? Understanding how to frame, solve, and interpret LP models is an essential competency for any business professional engaged in operations, finance, marketing, or strategy.
SECTION 2
Core Principles & Definitions
A linear programming model is built from three fundamental components: decision variables that represent the choices available to the decision-maker, an objective function that quantifies the goal (profit to maximize or cost to minimize), and a set of constraints that encode the resource limitations and business rules. The word "linear" means that both the objective function and the constraints are expressed as linear equations or inequalities—no squared terms, no products of variables, and no logarithms.
Decision Variables
Objective Function
Constraints
Feasible Region
Optimal Solution
KEY TAKEAWAY
SECTION 3
Graphical Representation of a Two-Variable LP
For problems with two decision variables, linear programming can be solved and understood graphically. Each constraint defines a half-plane in two-dimensional space, and the intersection of all these half-planes forms the feasible region—a convex polygon. The objective function is then represented as a family of parallel lines (called iso-profit lines for maximization or iso-cost lines for minimization), and the optimal solution is found where the most extreme iso-profit line still touches the feasible region. The following diagram illustrates a classic two-variable maximization problem.
Observe that the optimal solution sits at a vertex of the polygon, not in its interior or along an edge. This is not a coincidence; the Fundamental Theorem of Linear Programming states that if a linear program has a bounded optimal value, then at least one optimal solution occurs at a corner point (vertex) of the feasible region. This property is what makes LP computationally tractable: instead of searching an infinite set of points, we need only evaluate a finite number of vertices.
SECTION 4
Mathematical Framework
A general linear programming model can be expressed in standard form using compact mathematical notation. Understanding this notation is critical for translating a real-world business scenario into a solvable model and for interpreting the output from optimization software.
OBJECTIVE FUNCTION
Z is the objective value (e.g., total profit or total cost). Each cⱼ is the per-unit contribution of decision variable xⱼ to the objective.
STRUCTURAL CONSTRAINTS
Each constraint i represents a resource limitation. The coefficient aᵢⱼ indicates how much of resource i is consumed per unit of variable xⱼ, and bᵢ is the total available quantity of resource i. Constraints may also be ≥ or = depending on the problem.
NON-NEGATIVITY RESTRICTIONS
Decision variables cannot be negative in most business contexts—you cannot produce a negative number of units or ship a negative quantity.
In matrix notation, the LP can be written as: Maximize Z = cᵀx subject to Ax ≤ b and x ≥ 0, where c is the coefficient vector of the objective, A is the constraint coefficient matrix, b is the right-hand-side vector, and x is the vector of decision variables. This compact formulation is what solvers like Excel Solver, Gurobi, and CPLEX accept as input.
Assumptions of Linearity
SECTION 5
Solution Methods & the Simplex Algorithm
While the graphical method is intuitive for two-variable problems, real business problems routinely involve hundreds or thousands of decision variables. The simplex algorithm is the most widely taught and historically significant method for solving LP problems of any size. It operates by moving from one vertex of the feasible region to an adjacent vertex that improves the objective function, repeating until no further improvement is possible. The algorithm is remarkably efficient in practice, typically solving problems in a number of iterations roughly proportional to the number of constraints, even though its worst-case theoretical complexity is exponential.
Beyond the simplex method, two other solution approaches are worth noting. The graphical method (useful for two-variable problems in textbook settings) involves plotting constraints, identifying the feasible region, and evaluating the objective at each corner point. Interior-point methods take a fundamentally different approach: rather than walking along edges, they travel through the interior of the feasible region along a carefully computed path. Interior-point methods have polynomial worst-case complexity and often outperform simplex on very large, sparse problems encountered in telecommunications, energy, and financial portfolio optimization.
| Method | Best For | Key Idea |
|---|---|---|
| Graphical | 2-variable problems; teaching intuition | Plot constraints, identify corner points, evaluate Z at each |
| Simplex | General LP; most practical problems | Hop along vertices of the feasible polytope, improving Z at each step |
| Interior-Point | Very large, sparse problems | Traverse the interior of the feasible region along a central path to the optimum |
Comparison of three LP solution methods
SECTION 6
Worked Example: Product Mix Optimization
Consider a furniture company that manufactures two products: tables and chairs. Each table generates $70 in profit and each chair generates $50. Production is limited by two resources: carpentry hours (240 hours available per week) and finishing hours (100 hours available per week). Each table requires 4 hours of carpentry and 2 hours of finishing; each chair requires 3 hours of carpentry and 1 hour of finishing. How many tables and chairs should the company produce each week to maximize profit?
Product Mix LP — Step-by-Step
- 1
Step 1 — Define Decision Variables
Let x₁ = number of tables produced per week and x₂ = number of chairs produced per week. - 2
Step 2 — Formulate the Objective Function
Maximize Z = 70x₁ + 50x₂, where Z represents total weekly profit in dollars. - 3
Step 3 — Write the Constraints
Carpentry: 4x₁ + 3x₂ ≤ 240. Finishing: 2x₁ + x₂ ≤ 100. Non-negativity: x₁ ≥ 0, x₂ ≥ 0. - 4
Step 4 — Identify Corner Points
Plot the constraints and find the vertices of the feasible region. The corner points are: (0, 0), (50, 0), (30, 40), and (0, 80). For example, the intersection of 4x₁ + 3x₂ = 240 and 2x₁ + x₂ = 100 is found by solving the system: multiply the second equation by 3 to get 6x₁ + 3x₂ = 300, subtract the first to get 2x₁ = 60, so x₁ = 30 and x₂ = 100 − 2(30) = 40.Corner points: (0, 0), (50, 0), (30, 40), (0, 80) - 5
Step 5 — Evaluate Objective at Each Corner
Z(0, 0) = $0. Z(50, 0) = 70(50) + 50(0) = $3,500. Z(30, 40) = 70(30) + 50(40) = $2,100 + $2,000 = $4,100. Z(0, 80) = 70(0) + 50(80) = $4,000.Maximum profit = $4,100 at (x₁, x₂) = (30, 40) - 6
Step 6 — Interpret the Solution
The company should produce 30 tables and 40 chairs per week. This uses 4(30) + 3(40) = 240 carpentry hours (fully utilized) and 2(30) + 1(40) = 100 finishing hours (also fully utilized). Both resources are binding constraints with zero slack, meaning any additional hour of either resource would increase profit.Optimal plan: 30 tables, 40 chairs → $4,100 weekly profit
SECTION 7
Strengths, Limitations, and Sensitivity Analysis
Linear programming is one of the most powerful and widely adopted tools in prescriptive analytics, but like any modeling framework, it has inherent strengths and limitations that practitioners must understand. Equally important is sensitivity analysis—the post-optimality investigation of how the optimal solution changes when input parameters (objective coefficients, constraint right-hand sides) vary. In business contexts, sensitivity analysis often provides more actionable insight than the optimal solution itself, because it reveals which constraints are driving profitability and where additional investment would yield the greatest return.
| Strengths | Limitations |
|---|---|
| Guaranteed global optimum—no risk of getting stuck at a local maximum or minimum | Assumes linearity—relationships must be proportional and additive, which excludes economies of scale and interaction effects |
| Computationally efficient—modern solvers handle millions of variables and constraints | Assumes divisibility—decision variables are continuous; integer requirements need integer programming (IP) |
| Rich duality theory—provides shadow prices that quantify the marginal value of each resource | Assumes certainty—all coefficients are known precisely; real-world data often contains uncertainty |
| Widely supported—available in Excel Solver, Python (PuLP, SciPy), R, AMPL, and enterprise platforms | Single objective—LP optimizes one objective; multi-goal decisions require goal programming or multi-objective extensions |
Strengths and limitations of linear programming in business applications
KEY TAKEAWAY
SECTION 8
Connection to Advanced Optimization Models
Linear programming serves as the foundational building block for a family of more advanced optimization techniques. When decision variables must take integer or binary values—as in facility location, crew scheduling, or capital budgeting—the problem becomes an integer linear program (ILP). When the objective or constraints involve nonlinear terms (e.g., quadratic portfolio variance), the problem extends into nonlinear programming (NLP). Understanding LP deeply equips you to recognize when a business problem fits the LP mold—and when a more complex formulation is needed.
| Feature | Linear Programming (LP) | Integer Programming (IP) | Nonlinear Programming (NLP) |
|---|---|---|---|
| Variables | Continuous (any real number ≥ 0) | Integer or binary (0/1) | Continuous |
| Objective & Constraints | All linear | Linear with integrality requirements | May include quadratic, exponential, or other nonlinear terms |
| Solution Guarantee | Global optimum in polynomial practical time | Global optimum, but NP-hard—can be slow | Local optimum only (unless convex) |
| Business Example | Product mix, blending, transportation | Facility location, project selection, scheduling | Portfolio optimization, pricing with demand curves |
LP compared to more advanced optimization paradigms
As you progress in business analytics, you will encounter problems that blend these paradigms—mixed-integer linear programs (MILPs) that combine continuous and integer variables, or stochastic programming models that incorporate uncertainty via probability distributions. In every case, the LP relaxation—dropping the integrality or nonlinear terms—provides a bound on the true optimal value, making LP theory indispensable even when the final model is non-linear or integer-constrained.
SECTION 9
Practice Problems
Question 1: CONCEPTUAL
Show answer
Question 2: BASIC CALCULATION
Show answer
Question 3: INTERMEDIATE
Show answer
Question 4: APPLIED
Show answer
Question 5: CRITICAL THINKING
Show answer
SUMMARY
Linear Programming — Summary
Summary
Linear programming is a prescriptive analytics technique that finds the optimal value of a linear objective function subject to a set of linear constraints. The model is built from three components: decision variables representing choices, an objective function quantifying the goal, and constraints encoding resource limitations. The feasible region—the set of all points satisfying every constraint—is a convex polytope, and the Fundamental Theorem of LP guarantees that at least one optimal solution lies at a vertex of this region.
The simplex algorithm efficiently traverses vertices to find the optimum, while interior-point methods offer a polynomial-time alternative for very large problems. Post-optimality, sensitivity analysis reveals shadow prices and allowable ranges that transform the solution into actionable business intelligence. LP's assumptions of linearity, divisibility, and certainty mean that some real-world problems require extensions to integer programming, nonlinear programming, or stochastic programming—but in every case, LP theory provides the analytical foundation.