Exercise 8

MS-E2140 Linear Programming
Exercise 8
Fri 07.10.2016
M237
Week 4
This week’s homework https://mycourses.aalto.fi/mod/folder/view.php?id=130935 is due no
later than Sunday 16.10.2016 23:55.
Exercise 8.1 Sensitivity tableau
Course book Exercise 5.5
While solving a standard form linear programming problem using
following tableau:
x1
x2
x3
x4
0
0
0
c̄3
0
1
0
1
-1
0
2
0
0
2
1
3
1
0
4
0
the Simplex method, we arrive at the
x5
c̄5
β
γ
δ
Suppose that the last three columns of the constraint matrix A form an identity matrix I.
(a) Give necessary and sufficient conditions for the basis described by this tableau to be optimal (in
terms of the coefficients in the tableau).
(b) Assume that this basis is optimal and that c̄3 = 0. Find an optimal basic feasible solution, other
than the one described by this tableau.
(c) Suppose γ > 0. Show that there exists an optimal basic feasible solution, regardless of the values
of c̄3 and c̄5 .
(d) Assume that the basis associated with this tableau is optimal. Suppose also that b1 in the original
problem is replaced by b1 + . Give upper and lower bounds on so that this basis remains optimal.
(e) Assume that the basis associated with this tableau is optimal. Suppose also that c1 in the original
problem is replaced by c1 + . Give upper and lower bounds on so that this basis remains optimal.
Solution
(a) c3 ≥ 0 and c5 ≥ 0.
(b) Let x3 enter the basis. Then, x1 exits. The resulting optimal solution is x3 = 3/4, x4 = 1/2,
x2 = 7/4, x1 = 0, x5 = 0.
(c) Since 2x3 + x4 + γx5 = 2, x5 ≥ 0, and γ > 0, x3 and x5 are bounded. Thus, even if c3 < 0 and
c5 < 0, the optimal cost is bounded.
(d) We need B−1 (b + e1 ) ≥ 0. Now, B−1 b = (1, 2, 3). Also, B−1 e1 = (−1, 2, 4). Hence, we need
1 − ≥ 0, 2 + 2 ≥ 0, 3 + 4 ≥ 0, which leads to −3/4 ≤ ≤ 1.
(e) Since x1 is a basic variable, the reduced costs of all non-basic variables need to be checked since
cB changes to cB + e3 (since x1 is the third basic variable). For any non-basic variable xj the
new reduced cost is cj − (cB + e3 )0 B−1 Aj = cj − e03 B−1 Aj = cj − a3j . For the current basis to
remain optimal, we must have cj − a3j ≥ 0, which leads to 4 ≤ c3 and δ ≤ c5 .
Exercise 8.2 Addition of a New Constraint
Course book Exercise 5.1
Consider the problem
(P )
min − 5x1 − x2 + 12x3
s.t.
3x1 + 2x2 + x3 = 10
5x1 + 3x2 + x4 = 16
x1 , x2 , x3 , x4 ≥ 0 .
1
MS-E2140 Linear Programming
Exercise 8
Fri 07.10.2016
M237
Week 4
and its optimal simplex tableau
x1 =
x2 =
x1
0
1
0
12
2
2
x2
0
0
1
x3
2
-3
5
x4
7
2
-3
A new constraint x1 + x2 = 3 is added. Is the tableau still optimal? If not, find a new optimal solution.
Solution
Notice that we cannot use straightly the same technique described in the lectures for adding inequality
constraints because there is not a slack variable associated with an equality constraint. One possibility
would be to replace the equality x1 + x2 = 3 by the two inequalities x1 + x2 ≥ 3 and −x1 − x2 ≥ −3
and then apply the technique described for inequality constraints. However, to avoid duplicating the
constraint it is possible to proceed as follows.
We introduce an artificial variable xn+1 = x5 with “big” cost M (M can be treated as larger than
any other number during the calculations), and add the constraint x1 + x2 − x5 = 3 to P to obtain the
new problem
(P 0 ) min −5x1 − x2 + 12x3
+ M x5
3x1 + 2x2 + x3
s.t.
= 10
+ x4
5x1 + 3x2
= 16
− x5 = 3
x1 + x2
x1 , . . . , x 5 ≥ 0
Notice that since M is “big” if a solution of P satisfying the new constraint exists, then P 0 has an
optimal solution with xn+1 = 0 which is also optimal for the original problem P plus the new constraint.
The new constraint now has the same form as an inequality constraint plus a slack variable. Therefore,
we can form a basis for P 0 in the same way as if we were adding an inequality constraint. Specifically,
if B was an optimal basis formed by columns B(1), ..., B(m) of the constraint matrix of P , then a basis
for P 0 is obtained by taking the same columns B(1), ..., B(m) from the constraint matrix of P 0 plus the
column of the new artificial variable xn+1 . The corresponding basic solution of P 0 has basic variables
xB(1) , ..., xB(m) , xn+1 .
To obtain the corresponding tableau we proceed in the same way as described for adding inequality
constraints. We add the row of the new constraint as row m + 1 of the optimal tableau, and the column
of the artificial variable as column n + 1. Then, we make a pivoting on each element in row i and column
B(i), i = 1, ..., m, and on the element in row m + 1 and column n + 1 (it is convenient to proceed in
that order). In this case, there is however a main difference. Since the cost of the new artificial variable
is positive (and large) some reduced costs will become negative after pivoting. On the other hand, the
value of variable xn+1 in the new basic solution will be non-negative (since x1 +x2 > 3 in current optimal
solution). Therefore, after pivoting we obtain a primal-feasible tableau and we can continue with the
primal Simplex rather than the dual.
The optimal tableau of P plus the new row and column is:
x1 =
x2 =
12
2
2
3
x1
0
1∗
0
1
x2
0
0
1∗
1
2
x3
2
-3
5
0
x4
7
2
-3
0
x5
M
0
0
-1∗
MS-E2140 Linear Programming
Exercise 8
Fri 07.10.2016
M237
Week 4
After pivoting, we obtain
x1
0
1
0
0
12 − M
2
2
1
x1 =
x2 =
x5 =
x2
0
0
1
0
x3
2 − 2M
-3
5∗
2
x4
7+M
2
-3
-1
x5
0
0
0
1
Starting from this tableau we can continue with the primal Simplex to solve P 0 . The reduced cost of
x3 is 2 − 2M , which is negative for large M . We thus pivot on row 2 and column 3 to bring x3 to the
basis, and let x2 leave the basis.
x1 =
x3 =
x5 =
56/5 − 1/5M
16/5
2/5
1/5
x1
0
1
0
0
x2
(2M − 2)/5
3/5
1/5
-2/5
x3
0
0
1
0
x4
(41 − M )/5
1/5
-3/5
1/5∗
x5
0
0
0
1
For large M , the reduced cost of x4 is negative, and x4 must enter the basis.
x1 =
x3 =
x4 =
3
3
1
1
x1
-41+M
1
0
0
x2
-25+1/5M
1
-1
-2
x3
0
0
1
0
x4
0
0
0
1
x5
-41+M
-1
3
5
Now all the reduced costs are non-negative since M is “big”, and the optimal solution is x =
(3, 0, 1, 1, 0). Since the artificial variable x5 is not basic (i.e., x5 = 0), the solution is feasible and
thus also optimal for P with the new constraint.
Exercise 8.3 Change in the right hand sides
Suppose that the solution of a linear program of the form
min z = c0 x
s.t. Ax + Is = b
x, s ≥ 0 .
where s is a vector of slack variables results in the following optimal simplex tableau:
x2 =
x3 =
s3 =
2
1
1
3
x1
10
-2
-4
7
x2
0
1
0
0
x3
0
0
1
0
s1
3
-2
1
4
s2
2
1
1
2
s3
0
0
0
1
where s1 , s2 , s3 are slack variables.
1. Identify the inverse of the optimal basis B and the optimal dual variables from the tableau.
2. Modify the right-hand side to be b + ∆, where ∆ = (δ1 , δ2 , δ3 )0 . Give a system of inequalities that
defines the joint range of variation in δ1 , δ2 , δ3 over which the current basis remains feasible.
Solution
Hints:
3
MS-E2140 Linear Programming
Exercise 8
Fri 07.10.2016
M237
Week 4
1. The constraint matrix of the original problem contains the identity matrix.
2. Consider the system B−1 (b + ∆) ≥ 0.
Exercise 8.4 Change in a right hand side example
Consider the following LP and its optimal tableau below:
min
−2x1 − x2 + x3
s.t.
x1 + 2x2 + x3 ≤ 8
−x1 + x2 − 2x3 ≤ 4
x1 , x2 , x3 ≥ 0 .
x1 =
x5 =
16
8
12
x1
0
1
0
x2
3
2
3
x3
3
1
-1
x4
2
1
1
x5
0
0
1
If you were to choose between increasing of 1 unit the right hand side of the first and second constraint,
which one would you choose, and why? What is the effect of the increase on the optimal cost?
Solution
Note that the columns A4 , A5 form the identity and the cost of the corresponding variables is 0.
Therefore, from the reduced costs of x4 , x5 we obtain:
2 = c̄4 = c4 − c0B B−1 A4 = c4 − p0 A4 = 0 − p1
0 = c̄5 = c5 −
c0B B−1 A5
0
= c5 − p A5 = 0 − p2
⇒ p1 = −2;
⇒ p2 = 0;
The optimal solution is not degenerate. Thus δpi represents the change in the optimal cost if the
rhs of the i-th constraint is increased by δ, as long as the current optimal basis B remains optimal.
Therefore, since p1 = −2, p2 = 0 and if B remains feasible, it is profitable to increase the rhs of the first
constraint to obtain a new optimal cost of z = −16 − 2 · 1 = −18.
Note that B−1 can be be obtained from the optimal tableau: it corresponds to the columns of the
slack variables x4 and x5 in the tableau since B−1 [A4 , A5 ] = B−1 I = B−1 .
B remains optimal if after increasing the rhs of constraint 1 by δ we have B−1 (b + δe1 ) ≥ 0 or
B b + δB−1 e1 = xB + δB−1 A4 ≥ 0 which becomes [8, 12]0 + δ[1, 1]0 ≥ 0.
−1
Thus we get 8 + δ · 1 ≥ 0 and 12 + δ · 1 ≥ 0 from which we get δ ≥ −8. Thus the solution remains
optimal as long as we do not decrease the rhs of first constraint more than 8.
4