Scan Doc0002
Scan Doc0002
Many problems can be formulated as maximizing or minimizing an objective, given limited resources and competing constraints. If we specify the objective as a linear function of certain variables, and if we can specify the constraints on resources as equalities or inequalities on those variables, then we have a linear-programming problem. Linear programs arise in a variety of practical applications.
X J -, 1' ..::I'"""'
-J'(x
11 =
'a i-x i
..;:....
J-1
and
are linear inequalities. We use the term linear constraints to denote either linear equalities or linear inequalities. In linear programming, we do not allow strict inequalities. Formally, a linear-programming problem is the problem of either minimizing or maximizing a linear function subject to a finite set of linear constraints. If we are to minimize, then we call the linear program a minimization linear program, and if we are to maximize, then we call the linear program a
ProblelD Input
Consider a linear programming problem, Maximize eT x subject to Ax _ h, x _
o.
The simplex algorithm requires the linear programming problem to be in augmented form. The problem can then be written as follows in matrix form: Maximize Z in:
1 _eT [OA
01 [.z.... ]= IJ x
Xs
[.. '0].
b
where x are the variables from the standard form, Xs are the introduced slack variables from the augmentation process, C contains the optimization coefficients, A and b describe the system of constraint equations, and Z is the variable to be maximized. The system is typically underdetermined, since the number of variables exceeds the number of equations. The difference between the number of variables and the number of equations gives us the degrees of freedom associated with the problem. Any solution, optimal or not, will therefore include a number of variables of arbitrary value. The simplex algorithm uses zero as this arbitrary value, and the number of variables with value zero equals the degrees of freedom.
Variables of nonzero value are called basic variables, and variables of zero value are called nonbasic variables in the simplex algorithm. [This definition is problematic, since basic variables can also take zero value.] This form simplifies finding the initial basic feasible solution (BF), since all variables from the standard form can be chosen to be nonbasic (zero), while all new variables introduced in the augmented form are basic (nonzero). since their value can be trivially calculated (X.~d= b, for them, since the augmented problem matrix is diagonal on its right half).
Linear programming has a large number of applications. It is now a standard tool taught to students in most business schools. The election scenario is one typical example. Two more examples of linear programming are the following: An airline wishes to schedule its flight crews. The Federal Aviation Administration imposes many constraints, such as limiting the number of consecutive hours that each crew member can work and insisting that a particular crew work only on one model of aircraft during each month. The airline wants to schedule crews on all of its flights using as few crew members as possible. An oil company wants to decide where to drill for oil. Siting a drill at a particular location has an associated cost and, based on geological surveys, an expected payoff of some number of barrels of oil. The company has a limited budget for locating new drills and wants to maximize the amount of oil it expects to find, given this budget.
Figure
n
m mi mi z e
i-I
Le.x. ,I
subject to
(i (j
= 1,2,
=
,m
< n)
1.2,
,n)
A Linear Program
Solving this linear program involves solutions of the set of equations. If no solution to the set of equations is yet known, slack variables Xn+l' xn+2,, xn+lI!, adding no cost to the solution, are introduced. The initial basic feasible solution (BFS) will be the solution of the linear program where the following holds:
(i = 1" 2 ... ,n) n + 1,n + 2,, n + ,m)
(i =
Once a solution to the linear program successive improvements are made to particular, one of the non-basic variables zero) is chosen to be increased so that the
n
has been found, the solution. In (with a value of value of the cost
function, I-J. I I , decreases. That variable is then increased, maintaining the equality of all the equations while keeping the other non-basic variables at zero, until one of the basic (nonzero) variables is reduced to zero and thus removed
&
Lex
l'
from the basis. At this point, a new solution has been determined at a different corner of the solution set.
The process is then repeated with a new variable becoming basic as another becomes non-basic. Eventually, one of three things will happen. First, a solution may occur where no nonbasic variable will decrease the cost, in which case the current solution is the optimal solution. Second, a non... basic variable might increase to infinity without causing a basicvariable to become zero, resulting in an unbounded solution. Finally, no solution may actually exist and the Simplex Method must abort. As is common for research in linear programming, the possibility that the Simplex Method might return to a previously visited corner will not be considered here.