Linear programming optimizes a linear function subject to finitely many linear equalities and inequalities.
A linear polyhedron is an intersection of finitely many closed affine half-spaces in finite-dimensional real space. It may be empty, unbounded, or lower-dimensional. This usage differs from a three-dimensional geometric polyhedron. The strict separation of disjoint linear polyhedra follows from linear programming duality.
Nonempty disjoint linear polyhedra and admit with a strictly positive separation gap. A phase-I linear program minimizing common constraint violation has positive attained optimum. Its Lagrangian dual problem gives nonnegative with and . Then satisfies . The polyhedral hypothesis matters; arbitrary disjoint closed convex sets need not have a positive separation gap.
A slack variable turns an inequality constraint into the equality with . Its value measures the unused amount of the constraint. In the simplex algorithm, slack variables often supply the initial basic feasible solution.
For of degree and , compute its degree- Bernstein basis coefficients and solve subject to , . This is a linear program with inequalities. The coefficients form a convex-combination enclosure of the polynomial values, so . Degree elevation of Bernstein coefficients makes the bounds monotone. For every , the polynomial is strictly positive, so positive Bernstein coefficients for a strictly positive polynomial gives an eventual feasible bound . Hence converges to the true minimum. Earlier indices can use a one-inequality program at any common coefficient-based lower bound, preserving the stated constraint count for every positive index.
For , , a feasible vector is basic when the columns indexed by its positive coordinates are linearly independent. Equivalently, enlarge those columns to a basis, set every nonbasic coordinate to zero, and solve the resulting square system.
A basic feasible solution is degenerate when one or more of its basic variables is zero. A simplex algorithm pivot may then change the basis without moving the feasible point or changing the objective. Assignment networks force many zero-flow basic tree arcs.
For a full-row-rank system with rows, choose linearly independent columns, set all remaining variables to zero, and solve the resulting square system. The resulting vector is a basic solution; it is feasible when it also satisfies the required nonnegativity constraints.
If a linear program has an optimal solution, it has an optimal basic feasible solution. Choose an optimum with minimal positive support. A dependence among its active columns gives a feasible two-sided perturbation; optimality makes its objective slope zero, and moving until one coordinate vanishes contradicts minimality.
Linear-fractional programming optimizes a ratio over a polyhedron on which the denominator is positive.
For , setThen , and becomes , turning a linear-fractional program into a linear program with objective .
Every linear maximization program has a dual minimization program whose feasible objective values bound the primal values.
Minimizing over unrestricted is a linear program after introducing an epigraph variable and inequalities . Its optimization Lagrangian has finite infimum over exactly when the nonnegative multipliers sum to one and their weighted slopes sum to zero. The displayed Lagrangian dual problem maximizes the resulting constant lower bound. It identifies the role of a zero-slope convex combination of the affine functions.
For a minimization problem with inequalities , the Lagrangian is with . The Lagrangian dual maximizes the concave dual function .
The Lagrange dual function is the infimum of a Lagrangian over its primal variables. It is concave in the multipliers, even before convexity of the primal problem is assumed. Maximizing it over sign-compatible multipliers gives a lower bound on a minimization problem by weak duality; appropriate convex qualifications give strong duality.
A Lagrangian relaxation moves selected constraints into the objective with appropriately signed Lagrange multipliers. Maximizing the relaxed objective over a larger easy set gives an upper bound for a constrained maximization problem. Optimizing that bound need not solve the original integer problem.
For binary knapsack optimization, is an upper bound for every . Its minimum is computable from the finitely many profit-to-weight breakpoints and agrees with the fractional knapsack problem optimum. Zero-weight positive-profit terms are added independently.
Every feasible dual objective value bounds every feasible primal objective value.
For the linear program maximizing with , , a vector with proves for every feasible . If a feasible attains that bound, it is optimal. This is weak duality written as a directly checkable certificate; adding nonnegative multiples of constraints suffices to verify it. The equivalent reversed-inequality certificate applies to a minimization program.
Strong duality means that the primal and dual optimal values are equal. It holds for every feasible bounded linear program and for broad classes of convex optimization problems under a constraint qualification.
A jointly proper convex function represents an optimization problem at perturbation and a family of nearby problems at other . Its primal value function is . Relaxing an inequality by gives the example , using an indicator functional. The resulting convex perturbation duality expresses multipliers as supporting subgradients of the value function.
For a convex perturbation function, defineThe primal and dual values are and ; the signed dual marginal is concave. The identity gives . If is proper and finite near zero, subgradients at zero prove strong duality with dual attainment. In finite dimensions the relative-interior condition also suffices, provided is finite. This does not itself prove primal attainment.
An optimal dual variable bounds the effect of perturbing a convex value function:If is finite convex near zero, . A singleton subdifferential gives differentiability and a first-order expansion. For an upper-bound constraint relaxed by , the derivative equals the negative of the nonnegative Lagrange multiplier; relaxing the bound can decrease the minimum value.
The Slater condition requires a feasible point at which every nonlinear convex inequality is strict and every affine equality holds. For a convex problem it implies strong duality and attainment of the dual optimum under standard finiteness assumptions.
An exact maximum-violation penalty replaces inequalities by the unconstrained objective . If an optimal dual multiplier is , every makes every penalized minimizer feasible and optimal.
At a primal-dual optimum, each positive variable corresponds to a tight dual constraint and conversely for positive dual variables.
The transportation problem minimizes linear shipping cost while matching prescribed row supplies and column demands.
The assignment problem chooses a one-to-one pairing of jobs and agents minimizing their total cost. Its minimum-cost flow formulation puts unit supplies on job vertices and unit demands on agent vertices of a bipartite graph. Integral feasible flows are perfect matchings.
The Hungarian algorithm maintains feasible assignment dual potentials and a matching of equality edges. If the alternating search cannot augment, adjust reachable job and agent potentials by the smallest reduced cost leaving the search set. This preserves feasibility and existing matching equalities while exposing a new equality edge. A resulting perfect matching attains the dual lower bound.
These feasible potentials give the lower bound on every assignment cost. An assignment using only equality edges attains this bound and is optimal by weak duality and complementary slackness.
The positive cells of a nondegenerate transportation basis form a spanning tree in the bipartite graph of supply and demand vertices.
The transportation simplex computes row and column potentials, enters a negative-reduced-cost cell, and pivots around its induced alternating cycle.
The northwest-corner method repeatedly allocates the smaller remaining supply and demand in the current top-left cell to construct an initial transportation basis.
For transportation potentials, the reduced cost is ; a negative value identifies an improving entering cell.
Adding a nonbasic edge to a transportation tree creates one cycle; alternating equal additions and subtractions around it preserves every row and column sum.
Integer supplies and demands admit an integer optimum because an integer initial basis and every cycle pivot remain integer.
A matrix is totally unimodular when every square subdeterminant is , , or ; linear programs with such a constraint matrix and integer right side have integral vertices.
The simplex method moves between adjacent basic feasible solutions along improving edges of a feasible polytope until no improving pivot remains.
For a maximization simplex dictionary, choose the smallest-index nonbasic variable with positive reduced cost to enter. Among basic variables attaining the minimum feasible ratio, choose the smallest-index one to leave. This fixed index rule prevents cycling, including in degenerate pivots whose step length is zero. It need not minimize the number of pivots on a particular instance.
Phase I introduces nonnegative artificial variables to create a feasible basis and minimizes their sum, or maximizes its negative. A positive minimum proves infeasibility. At a zero minimum, remove artificial variables and use the resulting feasible original basis in Phase II with the original objective. If an artificial variable remains basic at zero, pivot it out when possible; otherwise its row is redundant. Each phase uses the simplex ratio test to preserve nonnegative basic values.
In a feasible simplex basis, increasing a nonbasic variable by changes basic coordinates to . Nonnegativity limits by the smallest ratio with ; a minimizing coordinate leaves the basis. Ties can leave zero-valued basic variables. This pivot test is distinct from the analytic ratio test for series convergence.
For standard-form linear programming constraints of full row rank, a simplex basis is a set of columns forming an invertible square matrix . The remaining variables are nonbasic; setting them to zero gives the basic solution . It is feasible if these basic variables are nonnegative. A pivot exchanges one basic and one nonbasic column while maintaining this representation.
For a linear program with unchanged cost and constraint matrix, an optimal simplex basis remains optimal while its basic solution remains feasible. Its reduced costs and dual certificate do not change. The new basic variables are , and the objective is the displayed affine function, with the basis's dual solution. This gives an exact piecewise-affine sensitivity region, determined by nonnegativity of the basic variables, rather than merely a formal first derivative.
For , , and objective , the oriented edge graph has eight improving paths from the origin to the unique optimum . Their lengths range from three to five pivots.
Articles by others on the same topic
Linear programming is a mathematical optimization technique used to achieve the best outcome in a mathematical model whose requirements are represented by linear relationships. It involves maximizing or minimizing a linear objective function subject to a set of linear constraints. Key components of linear programming include: 1. **Objective Function**: This is the function that needs to be maximized or minimized. It is expressed as a linear combination of decision variables.