100% found this document useful (3 votes)
2K views

Assignment 4 Solutions

The document describes an assignment for a linear optimization course. It provides instructions for undergraduate and graduate students on which exercises to complete. It encourages students to work in groups of two and provides steps for electronic submission. The assignment contains multiple exercises, with the first exercise asking students to provide proofs or counterexamples for statements related to the simplex method. It also contains a lengthy solution to one of the exercises proving properties of a revised simplex method that uses a lexicographic pivoting rule.

Uploaded by

Nengke Lin
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (3 votes)
2K views

Assignment 4 Solutions

The document describes an assignment for a linear optimization course. It provides instructions for undergraduate and graduate students on which exercises to complete. It encourages students to work in groups of two and provides steps for electronic submission. The assignment contains multiple exercises, with the first exercise asking students to provide proofs or counterexamples for statements related to the simplex method. It also contains a lengthy solution to one of the exercises proving properties of a revised simplex method that uses a lexicographic pivoting rule.

Uploaded by

Nengke Lin
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

ISyE/Math/CS/Stat 525 – Linear Optimization

Assignment 4 – Chapter 3 part 2

Instructions and policy: Undergraduate students should handle in the five exercises that are marked
with [U]. Graduate students should handle in the five exercises that are marked with [G]. All other exercises
are optional for keen students and should not be handled in. The assignment should be submitted
electronically in Canvas. Late submission policy: 20% of total points will be deducted per hour. Each student is
encouraged to solve all the exercises in the assignment to practice for the exams.
Students are strongly encouraged to work in groups of two on homework assignments. To find a partner
you can post on the “Discussions” section in Canvas. Only one file should be submitted for both group
members. In order to submit the assignment for your group please follow these steps in Canvas: Step 1. Click
on the “People” tab, then on “Groups”, and join one of the available groups named “Assignments Group 1”,
“Assignments Group 2”, . . . ; Step 2. When also your partner has joined the same group, one of the two can
submit the assignment by clicking on the “Assignments” tab, then on the assignment to be submitted, and
finally on “Submit assignment”. The submission will count for everyone in your group.
Groups must work independently of each other, may not share answers with each other, and solutions
must not be copied from the internet or other sources. If improper collaboration is detected, all groups
involved will automatically receive a 0. Students must properly give credit to any outside resources they use
(such as books, papers, etc.). In doing these exercises, you must justify all of your answers and cite every
result that you use. You are not allowed to share any content of this assignment.

Exercise 1 [U][G] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points


Consider the simplex method applied to a standard form problem and assume that the rows of the
matrix A are linearly independent. For each of the statements that follow, give either a proof or a
counterexample.
(a) (2 points) An iteration of the simplex method may move the feasible solution by a positive distance
while leaving the cost unchanged.

Solution: False. Every time we perform an iteration of the simplex method we choose a
nonbasic column j with reduced cost c̄j < 0. The cost change is θ∗ c̄j . If we move to a new
basic feasible solution, then θ∗ > 0, thus the cost change is negative.

(b) (2 points) A variable that has just left the basis cannot reenter in the very next iteration.

Solution: True. Let xi be the exiting variable and xj be the entering variable. We assume
that i is the `th basic variable, i.e. B(`) = i. Since xj enters the basis, its reduced cost c̄j
is negative, while the pivot element is positive. In order to set the reduced cost c̄j to zero in
the new basis, we need to add a positive multiple of the `th row (the pivot row) to the zeroth
row (the top row of the tableau containing the reduced costs). Now let’s look at the change
in column i. This column had reduced cost equal to 0, since i was basic, and the remaining
entries formed the `th column of the identity matrix. In particular, the entry of the tableau in
row ` and column i is 1. When we add α > 0 times the `th row to the zeroth row, the reduced
cost c̄i becomes α > 0. Thus, at the next iteration, i will not be selected to enter the basis.

(c) (2 points) A variable that has just entered the basis cannot leave in the very next iteration.

Page 1 of 9
Solution: False. See Example 3.8. In the first iteration x4 enters the basis and it exists in the
very next iteration.

(d) (2 points) If there is a nondegenerate optimal basis, then there exists a unique optimal basis.

Solution: False. Consider any nondegenerate problem with a bounded feasible set and a
nonunique optimal solution.

(e) (2 points) If x is an optimal solution found by the simplex method, no more than m of its compo-
nents can be positive, where m is the number of equality constraints.

Solution: True. If x is an optimal solution found by the simplex method, then x is a basic
feasible solution. By Theorem 2.4, we have that xi = 0 when i 6= B(1), . . . , B(m). Then at
most m components of x can be positive.

Exercise 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 points
Consider a linear programming problem in standard form. Suppose that we have a basic feasible solu-
tion and an associated basis matrix B such that every row of [B −1 b|B −1 ] is lexicographically positive.
Consider a pivoting rule that chooses the entering variable xj arbitrarily (as long as c̄j < 0) and the
exiting variable as follows. Let u = B −1 Aj . For each i with ui > 0, divide the ith row of [B −1 b|B −1 ] by
ui and choose the row which is lexicographically smallest. If row ` was lexicographically smallest, then
the `th basic variable xB(`) exits the basis. Prove the following:
(a) (4 points) Every row of [B −1 b|B −1 ] is lexicographically positive throughout the algorithm.
(b) (3 points) The row vector (−c0B B −1 b, −c0B B −1 ) increases lexicographically at each iteration.
(c) (3 points) The revised simplex method terminates after a finite number of steps.

Solution: Follows the same lines of the proof of Theorem 3.4.


Suppose that all rows of [B −1 b|B −1 ] are lexicographically positive at the beginning of a simplex
iteration. Suppose that xj enters the basis and that the `th basic variable xB(`) exits the basis.
According to the lexicographic pivoting rule, we have u` > 0 and

(`th row of [B −1 b|B −1 ]) L (ith row of [B −1 b|B −1 ])


< , if i 6= ` and ui > 0. (*)
u` ui

Denote by B̄ the new basis matrix, where column A` is replaced by column Aj . To determine the
new matrix [B̄ −1 b|B̄ −1 ] from the old one [B −1 b|B −1 ], the `th row is divided by the positive u` and,
therefore, remains lexicographically positive. Consider the ith row of [B −1 b|B −1 ] and suppose that
ui < 0. In order to zero ui , we need to add a positive multiple of the pivot row to the ith row. Due
to the lexicographic positivity of both rows, the ith row will remain lexicographically positive after
this addition. Finally, consider the ith row of [B −1 b|B −1 ] for the case where ui > 0 and i 6= `. We
have
ui
(ith row of [B̄ −1 b|B̄ −1 ]) = (ith row of [B −1 b|B −1 ]) − (`th row of [B −1 b|B −1 ]).
u`
Because of the lexicographic inequality (*), which is satisfied by the old rows, the new ith row is
also lexicographically positive.
(b) At the beginning of an iteration, the reduced cost c̄j is negative. In order to make it zero,
we need to add a positive multiple of the `th row of [B −1 b|B −1 ]. Therefore, the row vector

Page 2 of 9
(−c0B̄ B̄ −1 b, −c0B̄ B̄ −1 ) is obtained from the row vector (−c0B B −1 b, −c0B B −1 ) by adding a positive
multiple of the `th row of [B −1 b|B −1 ]. Since the latter row is lexicographically positive, the row
vector (−c0B B −1 b, −c0B B −1 ) increases lexicographically.
(c) Since the row vector (−c0B B −1 b, −c0B B −1 ) increases lexicographically at each iteration, it never
returns to a previous value. Since the row vector (−c0B B −1 b, −c0B B −1 ) is determined completely by
the current basis, no basis can be repeated twice and the revised simplex method must terminate
after a finite number of iterations. This concludes the proof of this exercise.

We remark that Exercise 3.16 in the textbook has a statement which is very similar to this exercise:
Consider a linear programming problem in standard form. Suppose that we have a basic feasible
solution and an associated basis matrix B such that every row of B −1 is lexicographically positive.
Consider a pivoting rule that chooses the entering variable xj arbitrarily (as long as c̄j < 0) and the
exiting variable as follows. Let u = B −1 Aj . For each i with ui > 0, divide the ith row of [B −1 b|B −1 ]
by ui and choose the row which is lexicographically smallest. If row ` was lexicographically smallest,
then the `th basic variable xB(`) exits the basis. Prove the following:

(a) The row vector (−c0B B −1 b, −c0B B −1 ) increases lexicographically at each iteration.
(b) Every row of B −1 is lexicographically positive throughout the algorithm.
(c) The revised simplex method terminates after a finite number of steps.

Unfortunately, this exercise is wrong. The following example provides a counter example to (b) by
showing that the rows of B −1 do not remain lexicographically positive. Consider the following linear
programming problem:

minimize −x1
subject to 2x1 − x2 + x3 + s1 = 10
x1 + x2 + 2x3 + s2 = 6
x1 , x2 , x3 , s1 , s2 ≥ 0

Let B be the basis matrix corresponding to the variables s1 and s2 . Thus,


   
1 0  −1 10 1 0
B b B −1 =

B= , .
0 1 6 0 1

Clearly, each row of B −1 is lexicographically positive. The reduced cost corresponding to variable
x1 is −1, so we let x1 enter the basis. We obtain
 
−1 2
u = B A1 =
1

By dividing each row of [B −1 b|B −1 ] by the corresponding entry of u, we obtain the matrix
 
5 1/2 0
.
6 0 1

The lexicographically smallest row is the first, thus ` = 1, and the 1st basic variable s1 exits the
basis. The new basis matrix is therefore
 
2 0
B̄ = .
1 1

Page 3 of 9
The inverse of B̄ is  
−1 1/2 0
B̄ = .
−1/2 1
It can be obtained, for example, using elementary row operations:
     
1 0 2 1/2 0 1 1/2 0 1
B −1
 
u = −→ −→
0 1 1 0 1 1 −1/2 1 0

Note that the second row of B̄ −1 is no longer lexicographically positive. This contradicts (b).

Exercise 3 [U][G] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points


Solve completely (i.e., both Phase I and Phase II) via the simplex method the following problem:
minimize 2x1 + 3x2 + 3x3 + x4 − 2x5
subject to x1 + 3x2 + 4x4 + x5 = 2
x1 + 2x2 − 3x4 + x5 = 2
−x1 − 4x2 + 3x3 = 1
x1 , x2 , x3 , x4 , x5 ≥ 0.

Solution: No initial basic feasible solution is provided, so we need to apply Phase I and solve the
following auxiliary problem.
minimize y1 + y2 + y3
subject to x1 + 3x2 + 4x4 + x5 + y1 = 2
x1 + 2x2 − 3x4 + x5 + y2 = 2
−x1 − 4x2 + 3x3 + y3 = 1
x1 , x2 , x3 , x4 , x5 , y1 , y2 , y3 ≥ 0.
The initial basic feasible solution for this problem is given by (0, 0, 0, 0, 0, 2, 2, 1)0 . In order to form
the initial tableau we need to compute the reduced costs of the original variables x: −c0B Ai =
(−1, −1, −3, −1, −2)0 .

x1 x2 x3 x4 x5 y1 y2 y3
−5 −1 −1 −3 −1 −2 0 0 0
y1 = 2 1 3 0 4 1 1 0 0
y2 = 2 1∗ 2 0 −3 1 0 1 0
y3 = 1 −1 −4 3 0 0 0 0 1

x1 x2 x3 x4 x5 y1 y2 y3
−3 0 1 −3 −4 −1 0 1 0
y1 = 0 0 1 0 7 0 1 −1 0
x1 = 2 1 2 0 −3 1 0 1 0
y3 = 3 0 −2 3∗ −3 1 0 1 1

x1 x2 x3 x4 x5 y1 y2 y3
0 0 −1 0 −7 0 0 2 1
y1 = 0 0 1∗ 0 7 0 1 −1 0
x1 = 2 1 2 0 −3 1 0 1 0
x3 = 1 0 − 32 1 −1 1
3 0 1
3
1
3

Page 4 of 9
x1 x2 x3 x4 x5 y1 y2 y3
0 0 0 0 0 0 1 1 1
x2 = 0 0 1 0 7 0 1 −1 0
x1 = 2 1 0 0 −17 1 −2 3 0
11 1 2
x3 = 1 0 0 1 3 3 3 − 13 1
3

The auxiliary problem is optimal and the optimal cost is 0, which means that the original problem
is feasible. One feasible solution is (2, 0, 1, 0, 0)0 . We can now remove the artificial variables and
compute the reduced costs of the original variables obtaining the following tableau.

x1 x2 x3 x4 x5
−7 0 0 0 3 −5
x1 = 2 1 0 0 −17 1∗
x2 = 0 0 1 0 7 0
11 1
x3 = 1 0 0 1 3 3

x1 x2 x3 x4 x5
3 5 0 0 −82 0
x5 = 2 1 0 0 −17 1
x2 = 0 0 1 0 7∗ 0
1
x3 = 3 − 13 0 1 28
3 0

x1 x2 x3 x4 x5
82
3 5 7 0 0 0
17
x5 = 2 1 7 0 0 1
1
x4 = 0 0 7 0 1 0
1
x3 = 3 − 13 − 34 1 0 0
 
0
0
1
The tableau above is optimal. An optimal solution for this problem is x∗ = 
 3 .

0
2

Exercise 4 [U][G] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points


While solving a standard form problem, we arrive at the following tableau, with x3 , x4 , and x5 being
the basic variables:
−10 δ −2 0 0 0
4 −1 η 1 0 0
1 α −4 0 1 0
β γ 3 0 0 1

The entries α, β, γ, δ, η in the tableau are unknown parameters. For each one of the following statements,
find some parameter values that will make the statement true:
(a) (5 points) The current solution is optimal and there are multiple optimal solutions.

Solution: c̄2 is negative, therefore this tableau must represent a degenerate basic feasible
solution, so β = 0. If we choose the second column, with reduced cost −2, as the pivot column,
we have θ∗ = β/3 = 0. Thus, after the pivot we stay in the same basic feasible solution. We

Page 5 of 9
want the new basis to be optimal, thus we need to impose δ + 23 γ ≥ 0. Since we also want
to have multiple optimal solution, we want fix δ = 0 and α > 0. In this way, from the initial
tableau we know that if we increase the nonbasic variable corresponding to the first column,
the objective value does not change, since the reduced cost of the column is δ = 0. Moreover,
since α > 0 and γ = 0, we can move by a positive amount in this direction.

(b) (3 points) The optimal cost is −∞.

Solution: We need β ≥ 0 in order to have a feasible tableau. The problem is unbounded if


δ < 0 and α, γ ≤ 0. If we attempt to bring x1 into the basis we see that the optimal cost is
−∞.

(c) (2 points) The current solution is feasible but not optimal.

Solution: We need to impose β > 0, so that the tableau is feasible and the second basic
direction is feasible.

Exercise 5 [G] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points


Consider a linear programming problem in standard form, described in terms of the following initial
tableau:

0 0 0 0 δ 3 γ ξ
β 0 1 0 α 1 0 3
2 0 0 1 −2 2 η −1
3 1 0 0 0 −1 2 1

The entries α, β, γ, δ, η, ξ in the tableau are unknown parameters. Furthermore, let B be the basis
matrix corresponding to having x2 , x3 , and x1 (in that order) be the basic variables. For each one of the
following statements, find the ranges of values of the various parameters that will make the statement
to be true.
(a) (1 point) Phase II of the simplex method can be applied using this as an initial tableau.

Solution: Phase II can be applied if this tableau is feasible. In order to be feasible β must be
greater or equal than 0. There are no restrictions on the other parameters.

(b) (3 points) The first row in the present tableau (below the row with the reduced costs) indicates
that the problem is infeasible, if β ≥ 0. (Hint: Consider the relationship among β and xi ’s. Does
it relies on α, γ, δ, η, ξ ?)

Solution: The tableau contains equations of the system B −1 Ax = B −1 b. The first equation is
obtained by forming the inner product of the first row of B −1 A with x and equating this with
the first entry of B −1 b. Thus, we have β = x2 + αx4 + x5 + 3x7 . Acknowledging that x2 = β,
this simplifies to αx4 + x5 + 3x7 = 0. As x4 = x5 = x7 = 0 since they are nonbasic variables,
this equation is satisfied regardless of the values of α and β. Hence, it turns out the first row
cannot indicate the problem is infeasible.

(c) (1 point) The corresponding basic solution is feasible, but we do not have an optimal basis.

Solution: The corresponding basic solution is feasible if β ≥ 0. It is not optimal if at least


one parameter between δ, γ and ξ is negative.

Page 6 of 9
(d) (2 points) The corresponding basic solution is feasible and the first simplex iteration indicates that
the optimal cost is −∞.

Solution: As before β must be non-negative for feasibility. The reduced cost δ must be nega-
tive, so that x4 enters the basis. We need α ≤ 0, so that no positive pivot element is found in
the pivot column. We can set γ, ξ ≥ 0, so we are sure that the column corresponding to δ will
be picked at the next iteration.

(e) (2 points) The corresponding basic solution is feasible, x6 is a candidate for entering the basis, and
when x6 is the entering variable, x3 leaves the basis.

Solution: We need β ≥ 0 for feasibility and γ < 0 for x6 to be leaving the basis. Note that x3
is the second basic variable and corresponds to the second row of the tableau. For x3 to leave
the basis, the second row of the tableau must be the winner in the ratio test, that is, η > 0 and
2/η < 3/2, i.e., η > 4/3.

(f) (1 point) The corresponding basic solution is feasible, x7 is a candidate for entering the basis, but
if it does, the solution and the objective value remain unchanged.

Solution: We need ξ < 0 to make x7 enter the basis, and β = 0 so that the objective value to
remains unchanged.

Exercise 6 [U] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points


Consider the following linear programming problem with a single constraint:
n
X
minimize ci xi
i=1
Xn
subject to ai xi = b
i=1
xi ≥ 0, i = 1, . . . , n.

(a) (5 points) Derive a simple test for checking the feasibility of this problem. (Hint: Discuss when
b = 0, b > 0 and b < 0)

Solution: If b = 0, then it is easy to see that the problem is feasible (the zero vector is feasible).
If b > 0, then the problem is feasible if and only if there exists an index j ∈ {1, . . . , n} such
that aj > 0. A feasible solution is x̄ such that x̄j = abj ≥ 0 and x̄i = 0 for every i 6= j.
Analogously, if b < 0, then the problem is feasible if and only if there exists an index j ∈
{1, . . . , n} such that aj < 0. A feasible solution is x̄ such that x̄j = abj ≥ 0 and x̄i = 0 for every
i 6= j.

(b) (5 points) Assuming that the optimal cost is finite, develop a simple method for obtaining an
optimal solution directly.

Solution: If the optimal cost is finite, then there exists an optimal solution that is a basic
feasible solution. This problem has only one constraint, therefore if b 6= 0 then the optimal
basic feasible solution has exactly one nonzero component, otherwise it has at most one nonzero
component.

Page 7 of 9
Suppose b = 0. Since the optimal cost is finite, it must be the case that x = 0 is the optimal
solution. To see why, suppose this is not true, and that there exists a basic feasible solution
x∗ where c0 x∗ < 0. Define h = argminj=1,...,n {cj | aj = 0}. By the assumption c0 x∗ < 0, we
must have that ch < 0, and any solution of the form k · eh where k > 0 is a feasible solution.
By taking k to be arbitrarily large, we see that the problem is unbounded, contradicting the
assumption the optimal cost is finite.
c b
Suppose b 6= 0. Define h = argminj=1,...,n { ajj | aj 6= 0, sign(aj ) = sign(b)}. Let x ∈ Rn such
that xh = abh and xi = 0 for every i 6= h. Such vector is feasible and minimizes the objective
Pn
function i=1 ci xi .

Exercise 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points
Show that in Phase I of the simplex method, if an artificial variable becomes nonbasic, it need never
again become basic. Thus, when an artificial variable becomes nonbasic, its column can be eliminated
from the tableau.

Solution: Eliminating an artificial variable yi from the tableau is the same as as considering a new
auxiliary problem from which yi is absent altogether. Given a basic feasible solution of the old
auxiliary problem in which yi is zero, we can form the new auxiliary problem in which yi is forced
to zero. This new auxiliary problem has the same properties as the old: its optimal cost is zero if
and only if the original problem is feasible. Furthermore, since yi is nonbasic, the basis for the old
auxiliary problem is also a basis for the new auxiliary problem, and can be used as a starting basis
for the new one.

Exercise 8 [U][G] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points


Consider the following optimization problem (P ): find a vector x ∈ Rn that satisfies Ax = 0 and x ≥ 0,
and such that the number of positive components of x is maximized. Let (P 0 ) be the linear program
defined as:
X n
maximize yi
i=1
subject to A(z + y) = 0
z, y ≥ 0
yi ≤ 1, i = 1, . . . , n.
Show that (P ) can be used to solve (P ). (Hint: You can show that (P ) and (P 0 ) are equivalent - you
0

must specify how to map a feasible solution of (P ) to a feasible solution of (P 0 ) with greater or equal
cost, and viceversa.)

Solution: First, we observe that if x is feasible for (P ), then αx is also feasible for (P ) for any
α > 0, since αAx = 0 and αx ≥ 0.

1. Consider a feasible solution x to (P ) with k positive components. If x has some nonzero


components that are less than 1, then we scale x, i.e. we multiply x by a large enough constant
α > 0, so that x0 = αx has still k positive components, all of which have value at least 1. Now,
for all i = 1, . . . , n, we define yi = 1 if x0i > 0 and yi = 0 otherwise (i.e. x0i = 0). Moreover,
for all i = 1, . . . , n, we define zi = x0i − yi . Note that y, z ≥ 0 and y ≤ 1 by construction.
Moreover, since x0 = y + z, and Ax0 = 0, we have that A(y + z) = 0. This proves that (y, z)
is feasible for (P 0 ). Moreover, the cost of (P 0 ) in (y, z) is k.

Page 8 of 9
2. Conversely, consider a feasible solution (y, z) to (P 0 ) with cost i yi . Define x = y + z. Since
P
y, z ≥ 0 we have x ≥ 0. Moreover, since A(y + z) = 0, we have Ax = 0. Thus x is Pfeasible for
(P ). We need to show that the number of positive components of x is at least i yi . Let k
be the number of positive components
P of y. Clearly, the number of positive components of x
it at least k. Moreover k ≥ i yi , since 0 ≤ y ≤ 1.

Exercise 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 points
Consider a polyhedron in standard form, and let x,y be two different basic feasible solutions. If we are
allowed to move from any basic feasible solution to an adjacent one in a single step, show that we can
go from x to y in a finite number of steps.

Solution: Given x and y, let x be the initial basic feasible solution in the simplex method and
suppose that the cost function is such that y is a unique optimal solution. (Such a c exists because
y is a vertex.) Since each step of the simplex method moves from a basic feasible solution to an
adjacent one and terminates (at y) after a finite number of steps, the result follows.

Page 9 of 9

You might also like