- categories: Optimization
Definition
Linear Programming (LP) is the optimization of a linear objective function subject to a set of linear equality and inequality constraints. The general form of an LP problem is:
Primal Problem:
subject to:
where:
- is the decision variable,
- is the objective coefficient vector,
- is the constraint matrix,
- is the constraint bounds.
Dual Problem
Every LP problem has a corresponding dual problem. The dual of the primal maximization problem is a minimization problem, and vice versa.
Dual Problem:
subject to:
where:
- is the dual variable.
Strong Duality:
If the primal problem has an optimal solution, then the dual problem also has an optimal solution, and their objective values are equal:
Methods for Solving LP
1. Simplex Method
- Approach: Starts at a vertex (corner point) of the feasible region and iteratively moves to an adjacent vertex along an edge, improving the objective value at each step.
- Key Features:
- Works on the edges of the polytope defined by constraints.
- Efficient in practice for most problems, though its worst-case complexity is exponential.
- Applications:
- Industrial optimization (e.g., resource allocation, scheduling).
- Transportation problems.
2. Karmarkar’s Algorithm (Interior-Point Method)
- Approach: Operates within the interior of the feasible region using gradients and calculus, iteratively moving toward the optimal solution.
- Key Features:
- Polynomial-time complexity in the worst case.
- More suited for large-scale problems compared to the simplex method.
- Applications:
- Optimization in large-scale data systems (e.g., network flow optimization, machine learning).
Key Concepts
Feasible Region:
The set of points satisfying the constraints and . This region is a convex polytope.
Optimal Solution:
- Lies at a vertex of the feasible region for bounded problems (simplex exploits this property).
- The dual solution can also provide insight into the sensitivity of the primal solution.
Duality:
- Solving the primal automatically solves the dual.
- Provides bounds on the optimal value and ensures numerical stability in computations.
Example
Primal Problem:
subject to:
Dual Problem:
subject to:
Solution:
Using the simplex method, the optimal solution for the primal problem is:
For the dual problem:
Strong duality confirms the solutions are consistent.