Non-negative variables
A condition is ordinarily expressed around matrix form, and so becomes:
More forms, like minimalizatiwithin problems, problems by using constraints on guide forms, also when problems involving negative variables could universally exist as rewritten into the tantamount condition in standard form.
Example
Believe that the farmer has the piece of domestic land, say The square kilometer big, to become planted by owning either wheat or even even barley or occasionally combination of the deuce. the farmer has a limited allowable total F of fertiliser & P of insect powder which may be utilized, every of which is called upon around different numbers by the unit vicinity for wheat (FOne, PI) & barley (FDeuce, PDeuce). Let SAce become a asking price of wheat, & SIi a price of barley. Whenever you denote a front yard deep-rooted using wheat & barley sustaining xSingle & xDeuce severally, so a optimum total of square km to plant by having wheat vs barley may be expressed as a linear programming condition:
Which inside matrix form becomes:
Augmented form (slack form)
Linear programming problems must become converted into augmented form prior to existence solved per simplex algorithm. This form introduces non-negative slack variables to replenish non-equalities using equalities in the constraints. A condition could so exist as write about the resulting form:
\beginUnity & -\mathbf^T & 0 \\
Cypher & \mathbf\end\beginZ \\ \mathbf_s
\end=
\beginNought \\ \mathbf\end
in which tens come a new introduced slack variables, & Z is the variable to exist as maximized.
Example
A case above becomes while follows when converted into augmented form:
in which come (non-negative) slack variables.
Which inside matrix form becomes:
\beginUnity & -S_1 & -S_2 & 0 & 0 & 0 \\
Cipher & 1 & 1 & 1 & 0 & 0 \\
Cypher & F_1 & F_2 & 0 & 1 & 0 \\
Nought & P_1 & P_2 & 0 & 0 & 1 \\
\end\beginZ \\ x_1 \\ x_2 \\ x_3 \\ x_4 \\ x_5
\end=
\beginCipher \\ The \\ F \\ P
\end, \,
\beginx_1 \\ x_2 \\ x_3 \\ x_4 \\ x_5
\end\ge 0
Duality
Each linear programming condition, known as the primal condition, may be converted into an tantamount dual condition. Within matrix form, i potty express a primal condition when:
A tantamount dual condition is:
in which y is utilized instead of x when variable vector.
Theory
Geometrically, the linear constraints define a convex polyhedron, which is called a viable region. Since a objective work is besides linear, whole local optima come automatically spherical optima. the linear objective work as well implies that an optimum guide may exclusively occur at a boundary point of the practicable region.
There are deuce situations where there is no optimum guide may be uncovered. 1st, in case a constraints contradict every more (for example, x ≥ Two & x ≤ I) so a executable vicinity is empty & there may be no optimum guide, since there are no solutions in the least. In that pack, a LP is said to exist as unfeasible.
Instead, a polyhedron can be unbounded in the counsel of the objective work (e.g.: maximize xAce + Terzetto xDeuce subject to xOne ≥ 0, 10Two ≥ 0, xUnity + tenTwo ≥ 10), where instance no optimum guide since solutions by having at random high values of the objective work may be constructed.
Barring these deuce pathologic conditions (which are then typically ruled out by resource constraints integral to the condition existence represented, when above), the optimum is universally attained at a vertex of the polyhedron. All a same, a optimum is non necessarily unique: these are conceivable to have a placed of optimum solutions covering an edge or face of a polyhedron, or even the entire polyhedron (This endure situation would occur in case the objective work were constant).
Algorithms
A simplex algorithm solves LP problems by constructing an admissible solution at a vertex of the polyhedron, so walking along edges of the polyhedron to vertices by having in turn higher values of the objective work until the optimum is reached. Although this algorithm is quite efficient around practice, & may be guaranteed to locate a spherical optimum in case certain precautions against cycling come taken, it has unfortunate worst-outbreak behavior: these are conceivable to construct the linear programming condition for which the simplex method will require a total of steps exponential in the condition size. As a matter of fact for a bit of period it was non known whether a linear programming problem was NP-complete or solvable within polynomial time.
A number one worst-experience polynomial-period algorithmic program for the linear programming condition was proposed by Leonid Khachiyan in 1979. It was according to a ellipsoid method in nonlinear optimization by Naum Shor, which is the generalization of the ellipsoid method inside convex optimization by Arkadi Nemirovski, a 2003 John von Neumann Theory Prize winner, and D. Yudin.
But, a practical performance of Khachiyan's algorithmic rule is disappointing: typically, a simplex method is supplementary effective. Its independent importance is that it encouraged a the food and drug administration of interior point methods. Inside counterpoint to the simplex algorithmic rule, which exclusively progresses along points on the boundary of the workable vicinity, interior point methods may pass through the interior of the viable area.
Around 1984, N. Karmarkar proposed the projective method. This is a foremost algorithmic program performing swell each inside theory & around practice: Its worst-example complexness is multinomial & experiments in practical problems indicate that these are reasonably effective in comparison the simplex algorithmic rule. Since so, numbers of interior point methods own been proposed & analysed. The popular interior point method is the Mehrotra predictor-corrector method, which performs very easily around practice potentially though little is known all about it theoretically.
A todays opinion is that a efficiency of practiced implementations of simplex-depending methods & interior point methods is similar for routine applications of linear programming.
LP convergent thinker come around far flung utilize for optimisation of various problems witharound industry, like optimisation of flow in transport networks, numerous of which may be transformed into linear programming problems simply sustaining a few difficulty.
Integer unknowns
In case a unknown variables come completely compulsory to exist as whole number, so a condition is known as an integer programming (IP) or even integer linear programming (ILP) condition. Inside counterpoint to linear programming, which may be solved by having efficiency around the worst instance, whole number programming problems come in the worst example undecidable, & in numbers of practical situations (victims with delimited variables) NP-hard. 0-One whole number programming is the favorite instance of whole number programming in which variables come mandatory to become Zero or even Unity (like than arbitrary whole number). This method is besides classified when NP-hard, and in point of fact a guide version was one of Karp's 21 NP-complete problems.
If only the few of a unknown variables come needed to exist as whole number, so the condition is known as a mixed integer programming (MIP) condition. Which are actually typically as well NP-hard.
There come even so a select few crucial subclasses of IP & MIP problems that are with efficiency resolvable, virtually all notably problems in which a constraint matrix is totally unimodular and the right-hand sides of the constraints are whole number.
Advanced algorithmic program for solving whole number linear computer software include:
branch and bound
branch and cut
branch and price
in case a condition has a select few more structure, it can be imaginable to use delayed column generation.