Iterative Improvement of Simplex Method
What is Iterative Improvement?
Iterative improvement is an algorithm design technique for solving optimization problems.
Start with a feasible solution
Repeat the following step until no improvement can be found:
o change the current feasible solution to a feasible solution with a better value of the
objective function
Return the last feasible solution as optimal
Note: Typically, a change in a current solution is “small” (local search)
Major difficulty: Local optimum vs. global optimum
Examples:
1. Simplex method:
2. Ford-Fulkerson algorithm for maximum flow problem
3. Maximum matching of graph vertices
4. Gale-Shapley algorithm for the stable marriage problem
What is Linear Programming ?
Linear programming (LP) problem is to optimize a linear function of several variables subject to linear
constraints:
Geometric solution is given below:
Feasible region is the set of points defined by the constraints Optimal solution: x = 3, y = 1
Extreme Point Theorem:
Any LP problem with a nonempty bounded feasible region has an optimal solution; moreover, an
optimal solution can always be found at an extreme point of the problem's feasible region.
Here there are three possible/feasible outcomes / solutions, among which one is selected as optimal
solution, that is x=3 and y=1.
3. The Simplex Method
Simplex method is the classic method for solving LP problems,
Based on the iterative improvement idea:
Generates a sequence of adjacent points of the problem’s feasible region with improving
values of the objective function until no further improvement is possible Operation
3. 1. Standard form of LP problem
must be a maximization problem
all constraints (except the non-negativity constraints) must be in the form of linear equations
all the variables must be required to be nonnegative
Thus, the general linear programming problem in standard form with m constraints
and n unknowns (n >=m) is
Every LP problem can be represented in such form
Variables u and v, transforming inequality constraints into equality constrains, are called slack
variables, x and y are basic variables.
3. 2. Basic feasible solutions
A basic solution to a system of m linear equations in n³
m) is obtained by setting n – m variables to 0 and solving the resulting system to get the values
of the other m variables.
The variables set to 0 are called non basic; the variables obtained by solving the system are
called basic.
A basic solution is called feasible if all its (basic) variables are nonnegative.
There is a 1-1 correspondence between extreme points of LP’s feasible region
and its basic feasible solutions.
Finding Entering variable, Exiting Variable and Pivot variable:
Calculating the Theta Ratio and Departing Variable:
First Iteration
1. Calculating Row-new for Pivot-Row:
2. Calculating Row-new for Row 1 and Row 3 in our example:
Now, replace all the rows with their new respective rows in order to make the new tableau. The Entering
Variable Y took the place of departing variable V. But… We cannot finish here, because the objective
row has still a negative value. We have to eliminate it by doing further iterations.
Second Iteration: (repeat all the above steps):
In the second Iteration Tableau we can see that the last row has no negative value left. We can safely stop
our iterations here.