Degeneracy in linear programming 2026-10-06
A basic feasible solution is degenerate when one or more of its basic variables is zero. A simplex algorithm pivot may then change the basis without moving the feasible point or changing the objective. Assignment networks force many zero-flow basic tree arcs.
Network simplex algorithm Created 2026-10-06 Updated 2026-10-14
The network simplex algorithm specializes the simplex algorithm to network flows. A basis is represented by a spanning tree with nonbasic flows at their bounds; potentials give reduced costs, and entering arcs produce cycle pivots. Degeneracy in linear programming is particularly common in assignment instances.
Past exam of the mathematics course of the University of Cambridge 2005 ib Paper 3 20D a Solution Created 2026-09-24 Updated 2026-10-14
Continue the simplex algorithm using dictionaries, with nonbasic variables zero at the current vertex. The given basis has payoffThus enters. Its positive row coefficients give ratios for and for ; the row does not restrict this increase. Therefore leaves. After that pivot,Now enters. Only the row decreases along this move, and its ratio is , so leaves. The final dictionary isAll reduced payoff coefficients are nonpositive. Since the slacks must be nonnegative, , attained with . Hence . Direct substitution makes all three original constraints equalities. The final dictionary is the optimal tableau expressed with basic variables on the left, not just a proposed feasible vertex.
Past exam of the mathematics course of the University of Cambridge 2007 iii Paper 40 1 Solution Created 2026-10-03 Updated 2026-10-14
Introduce nonnegative slack variables , and , and write the objective as . With nonbasic, the initial simplex dictionary isThis is feasible at the origin. Enter . The simplex ratio test selects to leave, since its bound is , compared with from . Pivoting givesNow enter . The ratio test chooses to leave: its bound is smaller than from and from . The resulting dictionary isAll basic values are nonnegative and all nonbasic objective coefficients are nonpositive. The simplex algorithm therefore certifiesThe negative objective coefficients also make this continuous optimum unique.
For integer , all three original slacks are integers. Apply a Gomory fractional cut to the rowThe fractional part of is , so the cut is , or . To justify it directly, rewrite the row asThe parenthesized term is an integer and is at most , since the other term is nonnegative. It is therefore at most , proving the cut. This retains every feasible integer solution and excludes the current fractional optimum. Since , the cut is equivalently .
Introduce the integer-valued nonnegative slack . Its dictionary row is , so primal feasibility fails while the objective row remains dual feasible. In the dual simplex algorithm, leaves; tie in the dual ratio test, each with ratio . Choose to enter. Substituting givesThis dictionary is feasible at and certifies the cut relaxation's optimum , achieved at the integer point .
Past exam of the mathematics course of the University of Cambridge 2008 ib Paper 3 20H Solution Created 2026-09-24 Updated 2026-10-14
Set , so and . Introduce nonnegative slack and surplus variables :The objective is . A feasible simplex basis is with nonbasic variables ; its basic values are . The initial simplex dictionary isIn the simplex algorithm, choose as the entering variable since it has positive objective coefficient. With the other nonbasic variables zero, only decreases; the simplex ratio test gives . Thus leaves. Pivoting its row givesAll nonbasic variables are nonnegative, and all objective coefficients in the final dictionary are nonpositive, proving optimality. Setting them to zero gives , , , henceThe surplus value is , so the lower constraint is indeed satisfied, not mistakenly treated as equality at the optimum. The strict negative objective coefficients also show uniqueness of the optimizer.
Past exam of the mathematics course of the University of Cambridge 2016 ib Paper 2 9H Solution Created 2026-09-24 Updated 2026-10-06
Introduce nonnegative slack variables and start the simplex algorithm at , with slacks . The objective's largest positive entering coefficient belongs to . Its ratio test is , , , so leaves and enters.
Solve that pivot row for and substitute into the other rows and the objective :This is a feasible simplex dictionary at nonbasic variables . All their objective coefficients are negative, so no feasible increase can improve the objective. ThusThe negative reduced coefficients also prove uniqueness of this optimum.
The dual linear program, with nonnegative variables , isThe feasible choice has objective . Weak duality proves that it and the primal point are optimal. Complementary slackness also forces because the first two primal slacks are positive, and then the positive forces .
Past exam of the mathematics course of the University of Cambridge 2016 iii Paper 212 1 Solution Created 2026-10-03 Updated 2026-10-06
Introduce integer-valued slack variables and . Write . The initial simplex dictionary isIn the simplex algorithm, let enter. The first constraint is the only limiting one, so leaves at . Substitution givesNow enters and leaves: its ratio is smaller than the first row's ratio . The resulting simplex dictionary isAll nonbasic objective coefficients are nonpositive, and the basic values are nonnegative. Thus the continuous linear program has optimum
For integer programming, a row with integer variables yields the Gomory fractional cut , where is the fractional part. In the first row, the coefficient of on the left is , whose fractional part is , not . The two possible initial Gomory fractional cuts are thereforeIndeed . Choose the second row: implies , so its cut removes a strictly larger portion of the feasible polygon. This compares both printed alternatives before any further integer rounding.
Use the normalized integer slack variable , rather than an unnecessarily scaled cut slack. At the current basis,The simplex dictionary is dual feasible but primal infeasible. In the dual simplex algorithm, leaves; the ratios of objective loss to improvement of this negative basic value are for and for , so enters. The pivot givesThe relaxed optimum is now , still nonintegral. The fractional row gives the next Gomory fractional cutThe negative left-hand coefficient of also has fractional part . Normalize the new integer slack variable as . Its dictionary row is . The dual simplex algorithm chooses to enter: its ratio is , compared with for . Substitution givesSetting the nonbasic to zero gives a feasible integer solution. The final objective row bounds every point in the cut relaxation by , so the integer optimum isBoth cuts are valid for every original integer feasible point, making this also a certificate for the original integer program.
Past exam of the mathematics course of the University of Cambridge 2020 ib Paper 1 7H Solution Created 2026-09-24 Updated 2026-09-29
Write the absolute-value constraint asIntroduce slacks . In the simplex algorithm, let enter and leave, then let enter and leave. The final dictionary isThus
Past exam of the mathematics course of the University of Cambridge 2021 ib Paper 2 7H Solution Created 2026-09-24 Updated 2026-09-25
Introduce slack variables . In the initial simplex algorithm dictionary, has the largest positive objective coefficient. The ratio test givesso enters and leaves. Solving the third constraint for givesThe objective becomesEvery reduced cost is now nonpositive, so the simplex optimality criterion givesThe other two slacks both equal one.
The dual linear program isThe vectoris dual feasible and has objective value . By weak duality, it and the displayed primal point are optimal; they also satisfy complementary slackness.
Simplex dictionary 2026-10-06
A simplex dictionary expresses the basic variables and the objective as affine functions of the nonbasic variables in a linear program. Setting the nonbasic variables to zero gives a basic feasible solution when all basic values are nonnegative. A simplex algorithm pivot exchanges one basic and one nonbasic variable. For maximization, a feasible dictionary with all nonbasic objective coefficients nonpositive certifies optimality.
Slack form of a linear program 2026-10-31
An equality representation of a linear program in which each basic variable and the objective function are expressed using nonbasic variables, and all variables are nonnegative. Introducing slack variables into gives . Setting the nonbasic variables to zero yields its basic solution; nonnegative resulting basic values make this a basic feasible solution. A simplex algorithm pivot exchanges a basic and nonbasic index and rewrites these expressions.
Slack variable 2026-10-06
A slack variable turns an inequality constraint into the equality with . Its value measures the unused amount of the constraint. In the simplex algorithm, slack variables often supply the initial basic feasible solution.