Definition · Efficient, and the frontFor a feasible region and two objectives f₁, f₂ to be maximised, a feasible point p is efficient when no feasible point q has f₁(q) ≥ f₁(p) and f₂(q) ≥ f₂(p) with at least one inequality strict. The set of efficient points is the Pareto front.
The corners found by maximising (1 − λ)f₁ + λf₂ over λ in [0, 1] are the supported efficient corners — those a weighted sum can reach.
The lab's slider is the weight on the second objective, so λ = 0 maximises f₁ alone and λ = 1 maximises f₂ alone. Everything between is a trade, and the useful fact is that the trade is not continuous in the answer: the corner chosen is constant over an interval of weights and then jumps.
Theorem · Finitely many breakpoints, and what happens at oneFix a basis. Under the objective (1 − λ)f₁ + λf₂, every reduced cost is of the form a + λ(b − a), where a and b are that column's reduced costs under f₁ and f₂ alone. The basis is optimal exactly while all of them are non-negative, which is an intersection of at most one interval per nonbasic column.
At the upper end of that interval some reduced cost is exactly zero, and one pivot on that column reaches the next basis, whose interval begins there. Since there are finitely many bases, the sweep terminates, and the breakpoints are the finitely many weights at which two corners score the same weighted total.
region x1 ≤ 8, x1 + x2 ≤ 10, 2x1 + x2 ≤ 16,
3x1 + 2x2 ≤ 24, 3x1 + x2 ≤ 21, x ≥ 0
objectives f1 = 4x1 + x2 f2 = x1 + 4x2
weighted (1 − λ)f1 + λf2 has coefficients
x1: 4 − 3λ x2: 1 + 3λ
λ in corner f1 f2 weighted total
0 .. 1/12 (7, 0) 28 7 28 − 21λ
1/12 .. 1/3 (6, 3) 27 18 27 − 9λ
1/3 .. 1/2 (4, 6) 22 28 22 + 6λ
1/2 .. 1 (0, 10) 10 40 10 + 30λ
breakpoints 28 − 21λ = 27 − 9λ ⟹ 1 = 12λ ⟹ λ = 1/12
27 − 9λ = 22 + 6λ ⟹ 5 = 15λ ⟹ λ = 1/3
22 + 6λ = 10 + 30λ ⟹ 12 = 24λ ⟹ λ = 1/2
all four corners are efficient: no other beats any of them on both
Example · Reading the front off the tableAt λ = 0 the answer is (7, 0), which is the most f₁ the region allows. Nudge the weight towards the second objective and nothing happens until λ = 1/12, where (7, 0) and (6, 3) score the same 105/4 and the answer changes. It then holds until 1/3, and so on.
So λ = 0.08 chooses (7, 0) and λ = 0.09 chooses (6, 3), and no slider position in hundredths ever lands on 1/12 itself — the breakpoint falls strictly between two hundredths. That is the difference between computing the breakpoints and looking for them.
The weights are the decision
This is the misconception the lesson exists for. A two-objective problem does not have an optimum, and the weights are not a technical detail on the way to one: they are the decision, and they are made outside the model by whoever is entitled to make it. What the mathematics delivers is smaller and more honest — the set of corners that no feasible point beats on both objectives at once, with the exact weight at which each one takes over.
Which is genuinely useful, because it rules things out. A point that is not efficient is one nobody should choose under any weights at all, since something else is at least as good on both counts. Presenting four corners and their scores is a complete answer to what the model can say, and it leaves the part it cannot say visible rather than buried in a weight somebody picked.
Example · A smaller region, and three cornersx1 ≤ 8, x2 ≤ 6, x1 + x2 ≤ 10, 2x1 + x2 ≤ 16, with f₁ = 3x1 + x2 and f₂ = x1 + 3x2. The front is (8, 0) scoring (24, 8) for λ up to 1/6, then (6, 4) scoring (22, 18) up to 1/2, then (4, 6) scoring (18, 22).
Note that (0, 6), which scores (6, 18), is a corner of the region and is not on the front: (4, 6) beats it on both objectives at once. A corner being reachable is not the same as a corner being worth considering, and the front is the smaller list.
The same front, read through the other ranging
There is a second route to the same set. Instead of weighting the two objectives, maximise f₁ subject to a constraint f₂ ≥ t and sweep t — the ε-constraint method. That is right-hand-side ranging rather than objective ranging, and its breakpoints are the values of t at which the basis changes, exactly as in the shadow-price lesson. The two sweeps trace the same front, and the ε-constraint route additionally reaches efficient points that no weighted sum does, which is a distinction that costs nothing here — a linear programme has none — and matters elsewhere.
One structural fact, and the place it stops being true. Every efficient point of a linear programme is a convex combination of efficient corners, so the four corners above describe the whole front and not merely samples of it. That is false for integer problems: an integer programme's efficient set has points that lie between corners and are not combinations of them, because the combinations are not feasible. Integer Programming is where that is felt, and it is worth knowing in advance that this lesson's tidiness is a property of linearity rather than of two-objective problems.