paper - People Server at UNCW

advertisement
Algorithms of Linear Programming
Marks Speight and Taylor Bishop
Abstract
This paper examines the improvements of linear
programming time complexity and proves the importance
of optimization in applied mathematics. The time efficiency
of searching known constraints and maximizing the value
of minimal inputs within the feasible region of a maximal
value has increased from the convex hull and brute force to
the geometric and exponential, and the simplex pivots with
a linear complexity. The convex hull’s obstacles of finding
all of the extreme points with brute force is overcome with
its linear time of finding the high points. The geometric
method is useful because the slope never changes as the
system of linear equations solves for the maximal value
which reduces the area of the feasible region of possible
maximal value points until its value is found. Yet, the
method limits at two decision variables. The simplex
method involves hundreds and thousands of problem
constraints. Invented by George Danztig in 1947, the
simplex algorithm is the most common method of solving
maximization problems. The conclusion of this paper result
prove the importance of the method by demonstrating its
capabilities in a simple maximization problem of interest.
Key Words: Traveling Salesman Problem, Dynamic
Programming, Branch and Bound, Convex Hull,
Minimum Spanning Tree
paper, the coefficients of the objective function and the
constraint equation must be identified. Linear
programming assumes the values to be constant over time.
Many times during a study of a problem the factors of the
constraints will change, but for the sake of linear
programming and the methods described in this paper, the
variables will remain certain. In each of these methods:
convex hull, geometric and simplex, the basic steps of
formulating the linear programming model will identify the
parameters of the decision of inputs in linear algebraic
functions and matrices, identify the constraints which
restrict the decision of inputs in the form of linear function
inequalities, and determine the objective which is to be
optimized and the maximal value is identified.
2. Linear Programming Problems
Problem of interest:
maximize 3x + 5y
subject to x + 3y ≤ 6
x+y≤4
x ≥ 0, y ≥ 0
machine
M
N
Widget a
1
1
Widget b
3
1
Hours
6
4
1. Introduction
The linear programming problem takes inequalities
relating to a situation and finds the best value under those
conditions. Linear programming is an important part of
optimization in real life problems. The algebraic steps of
solving this problem work with a simple two variable
problem, though typical systems can have dozens of
hundreds of variables. Real life application extends the
model considering added constraints. The time
complexities discussed in this paper focus on the efficiency
of finding the boundary of the feasible region of the
constraints.
Examples of this problem include operational research,
a branch of applied mathematics giving advice which
perform the objective: minimization of production costs
and maximization of profit. Limitations of linear
programming include business problems which require the
form of a quadratic equation. Before the linear program
method is applied in the maximization problem in this
The first method used to solve this problem is the convex
hull which constructs a hull of extreme points within the
feasible region bound by the linear inequalities. The hull
represents the smallest polygon of intersecting constraint
sets. The algorithmic clockwise linear search of the outer
bound of these points produces the extreme points which
when substituted into the maximizing equation 3x + 5y =
z, where x is the number of Widget a produced and y is the
number of Widget b, the point (3, 1) of the hull produces
the maximal value of 14 and the plant will benefit from
producing three Widget a’s and one Widget b, the greatest
value of the four extreme points.
Brute force finds the extreme points and is a
limitation of the convex hull. The feasible region contains
a line segment connecting two points, pi and pj if all other
points of the set lie on the same side of the straight line
through these two points. The test repeats this test for every
pair of points and produces a list of convex points.
The geometric method is another graphical method of
finding the feasible region. The intersection points of
constraint lines are solved by a system of linear equations.
The sign of the constraints define the quadrant of the
Cartesian plane of which the lines intersect, and calculating
the value of the maximal value is possible by simply
shifting the slope of a test z value of the maximizing
equation up or down, i.e. 3x + 5y = 20 is obviously not in
the feasible region. Shifting the value will eventually find
the maximal value of 14.
maximize 3x + 5y = P
subject to
x + 3y ≤ 6
x+y≤4
x ≥ 0, y ≥ 0
The method converts the system of inequalities
(constraints) to equations using slack variables, sets the
objective function equal to zero and creates a tableau with
active variables labeled. The pivot is the column with the
most negative number on the left side of the bottom row (if
all the numbers on the bottom row are positive, the search
stops). The constant column entry is divided by the positive
entries of the pivot column and the pivot row is the smallest
ratio of those values. The pivot is the entry is the positive
number in the pivot column and pivot row.
1x + 3y + 1u + 0v = 6
1x + 1y + 0u + 1v = 4
-3x – 5y + 0u + 0v = 0
u = 6, v = 4
u
x
1
y
3
u
1
v
0
v
1
1
0
1
4
-3
-5
0
0
0
0
1
-
1
0
0
0
2
u
The time complexity of geometric is O(n2); and, similar
to brute force, it is an inefficient method of finding the
feasible region of problems with extreme points which
increase exponentially with the number of constraint
equations.
During WWI, George Dantzig recognized the
limitations of the previous algorithms and discovered a
new way of handling the constraints of linear programming
problems which is known as optimization. The brute force
search of extreme points presents a problem for linear
programming because of the size of the problem. The
simplex method inspects a fraction of the extreme points
and finds the maximal value. Like the convex hull and
geometric methods, this method finds the extreme points in
the feasible region and checking if the value of the object
if function is improved by pivoting to adjacent extreme
points. If not, the search stops, if so, continue searching
points until the optimal solution is found.
3
1
v
3
4
x
y
3
1
0
0
0
0
0
3
1
6
2
3
2
1
3
5
10
3
1
3
-
2
(constant)
2
1
2
2
1
1
2
1
14
x = 3, y = 1
Select the pivot which is the positive entry in the pivot
column and pivot row and identify the new active variable.
Perform row operations to make the remaining elements in
the pivot column equal to zero and repeat the process by
identifying the most negative entry in the last row. The
process is repeated by identifying the most negative entry
in the last row. Once the left side of the last row is all
positive, the solution is the right most entry in the row.
Geometric
3. Analysis
The convex hull’s brute force worst case run time is O(n3)
of initially sorting the n points of the sets. The best time of
searching the clockwise extreme points is O(n). This
proves to be an inefficient algorithm. The geometric
method of linear programming is also limited in that it is
only useful for problems involving two decision variables
and cannot be used for three or more variables. The
geometric method saves time from the convex hull method
because instead of searching exhaustively for extreme
points and then searching the positive and negative sides of
a plane, the algorithm uses one slope which it changes to
suit the possible input solutions of the feasible region. The
obvious disadvantages of the geometric search is the sign
check in the Cartesian plane which still leaves our results
with an O(n2) runtime. While our problem did not require
a method which searched thousands of variables and
problems constraints, the steps of the problem identified
the benefit of the pivot in saving time checking for
maximal points within the bounded region of the extreme
points. Given the n decision variables in our problem, the
pivots converge in O(n) operations with O(n) pivots, thus
the name linear programming. The method exploits the
extreme points by taking advantage of the geometry of the
problem, visiting vertices of a feasible set and checking the
optimality of each visited vertex. The pivot operations
become expensive without the advantages of cutting the
plane which is demonstrated with the advancement of the
geometric method incorporated into the simplex algorithm.
4. Results
Convex Hull
maximize 3x + 5y
subject to x + 3y ≤ 6
x+y≤4
x ≥ 0, y ≥ 0
The extreme points are (0,2), (0,0), (3,2), (4,0).
x=0 y=2
(0,2) = 10
3(0) + 5(2) = 10
x=0 y=0
3(0) + 5(0) = 0
(0,0) = 0
x=3 y=1
3(3) + 5(1) = 14
(3,1) = 14
x=4 y=0
(4,0) = 12
3(4) + 5(0) = 12
Minimizes 3x + 5y with a maximal value of 14.
Simplex
Simplex Matrix Example:
Maximize:3x+5y
Subject to: x+3y<=6
x+y<=4
x,y>=0
X
1
1
-3
Y
3
1
-5
1/3 R1
X
1/3
2/3
-4/3
3/2R2
X
0
1
0
Max=14
X=3
Y=1
S1
1
0
0
Y
1
0
0
Y
1
0
0
S2
0
1
0
M
0
0
1
R2-1(R1)
S1
1/3
-1/3
5/3
R1-3R2
S1
½
-1/2
1
C
6
4
0
S2
0
1
0
R3+5(R1)
M
0
0
1
C
2
2
10
S2
-1/2
3/2
2
R3+(4/3R)2
M
0
0
1
C
1
3
14
5. Conclusion
The solution to our problem is best solved by the
simplex method due to its reduction capabilities
which forge the idea of reducing known solutions
to linear problems and producing the concept of
optimization. The method can be difficult to
notice mistakes when compared to the graphical
method. The simplex method also has the
advantage of addressing problems with more
than two decision variables. Like the geometric
method, the simplex method starts with a guess.
There are volumes of data of the management
decisions of which the method provides
optimization techniques including ways to route
shipments for transportation firms, a way of
pricing products and the petroleum industry
explores, blends and schedules distribution with
the algorithm.
6. References
Levin, Anany. Introduction to the Design & Analysis of
Algorithms. 3 ed. England: Pearson, 2012. Print.
Download