4.5 Practice Problems

Problem 4.5.1. Verify Proposition 4.1.1 for \(m = 2\) with \(B = I\), entering column \(A_j = (2, 4)^{\mathsf T}\) and \(r = 2\).

Show solution

Solution. \(u = (2, 4)\), \(\eta = (-\frac 24, \frac 14) = (-\frac 12, \frac 14)\), so \(E = \begin {pmatrix} 1 & -\frac 12 \\ 0 & \frac 14 \end {pmatrix}\). The new basis is \(\bar B = \begin {pmatrix} 1 & 2 \\ 0 & 4 \end {pmatrix}\), and \(E\bar B = \begin {pmatrix} 1 & 2 - 2 \\ 0 & 1 \end {pmatrix} = I\).

Problem 4.5.2. For the final basis \(\{s_3, x_1, x_2\}\) of Example 4.1.2, compute \(y\) from \(B^{\mathsf T}y = c_B\) directly and confirm the reduced costs of \(s_1\) and \(s_2\).

Show solution

Solution. The basic columns are \(s_3 = (0, 0, 1)\), \(x_1 = (2, 2, -1)\), \(x_2 = (1, 4, 1)\), with costs \(0, -10, -15\). The equations are \(y_3 = 0\), \(2y_1 + 2y_2 - y_3 = -10\), \(y_1 + 4y_2 + y_3 = -15\), so \(y_1 + y_2 = -5\) and \(y_1 + 4y_2 = -15\), giving \(y_2 = -\frac {10}3\), \(y_1 = -\frac 53\). The reduced cost of \(s_1\) is \(0 - y_1 = \frac 53 > 0\) and of \(s_2\) is \(\frac {10}3 > 0\): optimal.

Problem 4.5.3. Solve by the bounded-variable method: maximise \(2x_1 + x_2\) subject to \(x_1 + x_2 \leq 5\), \(0 \leq x_1 \leq 3\), \(0 \leq x_2 \leq 4\). How many basis changes occur?

Show solution

Solution. From \(x = 0\) with the slack \(s\) basic, \(x_1\) enters (largest coefficient). The limits are its own bound, \(3\), and the slack reaching \(0\) at \(x_1 = 5\); the flip comes first, so \(x_1 = 3\), \(s = 2\), with no basis change. Then \(x_2\) enters; its bound allows \(4\), the slack allows \(2\), so \(x_2 = 2\) and \(s\) leaves: one basis change. Now \(x_1\) is non-basic at its upper bound with reduced cost \(2 - 1 = 1\) in the maximisation (rising \(x_1\) forces \(x_2\) down one for one), which is the right sign for a variable at its upper bound, so \((3, 2)\) is optimal with \(Z = 8\).

Problem 4.5.4. A problem has \(m = 1000\) constraints and \(n = 20\,000\) variables, with about \(10\) non-zeros per column. Estimate the operations per iteration of the tableau method and of the revised method with sparse factors.

Show solution

Solution. The tableau updates \(m(n + 1) \approx 2 \times 10^7\) entries per pivot. The revised method prices \(n\) columns at about \(10\) operations each, \(2 \times 10^5\), and performs two sparse solves whose cost depends on the fill of the factors, typically a small multiple of the non-zeros of \(B\), say \(10^4\) to \(10^5\). So it is about \(100\) times cheaper per iteration, and it stores \(2 \times 10^5\) non-zeros instead of a dense \(2 \times 10^7\) tableau.

Problem 4.5.5. Show that a bound flip does not change \(B\) but does change \(x_B\), and give the new \(x_B\) after a flip of \(x_j\) from \(\ell _j\) to \(u_j\).

Show solution

Solution. The basic variables satisfy \(Bx_B = b - \sum _{k \in N}A_kx_k\). Changing the non-basic value \(x_j\) by \(u_j - \ell _j\) changes the right side by \(-A_j(u_j - \ell _j)\), so \(x_B\) becomes \(x_B - (u_j - \ell _j)B^{-1}A_j\). The basis is the same, so \(B^{-1}\) and the factorisation are unchanged; the step is allowed only if this new \(x_B\) is within its bounds, which is what the ratio test checked.

Questions on this section

Stuck on something here? Ask below and it stays attached to this topic.