Minimax problems and conjugate saddle-functions #
A function K of two variables has two iterated extrema, maximin K = ⨆ u, ⨅ x, K (u, x) and
minimax K = ⨅ x, ⨆ u, K (u, x), the first never above the second; when they agree their common
value is the saddle-value of K. A saddle-point is a point p at which K (·, p.2) is
maximised and K (p.1, ·) minimised, which is exactly a pair of optimal strategies together with
the existence of the saddle-value. For a closed proper concave-convex K the whole space may be
replaced by dom K without changing either extremum, and both depend only on the equivalence
class of K.
The Lagrangian of a convex program is a saddle-function whose saddle-points are the pairs "optimal solution, Kuhn–Tucker vector", whence the general Kuhn–Tucker theorem; and the Lagrangians of closed convex programs are exactly the upper closed concave-convex functions.
The last part turns the iterated extrema into a conjugacy: -K̲*(0, 0) and -K̄*(0, 0) are
minimax K and maximin K, and both conjugates of every member of a class Ω (F) are read off
from F alone — the upper one is the Lagrangian of F, the lower one the bracket of F_*^*. So
the saddle-value exists exactly when the two conjugates agree at the origin.
Main definitions #
IsSaddlePoint K p,IsSaddlePointOn K C D p— the saddle-point condition, over the whole space and relative toC × D.maximin K,minimax K,HasSaddleValue K— the two iterated extrema and their equality.saddleLagrangian Bu F— the Lagrangian of(P)read as a saddle-function onV × X;flipBifun FandinverseBifun F— arguments exchanged, and Rockafellar'sF_*.lowerConjSaddle Bu Bx K,upperConjSaddle Bu Bx K— the conjugatesK̲*,K̄*;bifunSaddleClass Bu Bx F— the classΩ (F), squeezed between the two brackets ofF.
Main results #
maximin_le_minimax—sup inf ≤ inf sup;isSaddlePoint_iff_attained— a saddle-point is a pair of attained outer extrema that agree. Neither needs any structure at all, not even nonemptiness of the two spaces.isSaddlePoint_iff_iSup_eq_iInf— the one-equation form of the saddle-point condition, on which everything downstream is a computation of⨆ u, K (u, x)and⨅ x, K (u, x).maximin_eq_biSup_biInf,isSaddlePoint_iff_isSaddlePointOn_dom— for a closed properKboth extrema and all saddle-points already live ondom K;IsSaddlePoint.mem_domSaddle— a saddle-point of a properKlies indom K;SaddleEquiv.maximin_eq— the two extrema see only the equivalence class.isSaddlePoint_lagrangian_iff— the saddle-points of the Lagrangian are the pairs "Kuhn–Tucker vector, optimal solution";isSaddlePoint_lagrangian_iff_normal_and_optimal— the same read through normality;mem_argmin_iff_exists_isSaddlePoint_lagrangian— the general Kuhn–Tucker theorem (Theorem 36.6 in [^1]);exists_unique_closedBifun_saddleLagrangian_eq— Lagrangians are exactly the upper closed concave-convex functions (Theorem 36.5 in [^1]).hasSaddleValue_iff_conjSaddle_zero_eq— the saddle-value read off at the origin.upperConjSaddle_eq_saddleLagrangian,lowerConjSaddle_eq_bracket_inverseBifun— the two conjugates of a member ofΩ (F), in terms ofFalone (Theorem 37.1 in [^1]);concaveConvexFn_upperConjSaddleand companions — they are again concave-convex, and closed.
Implementation notes #
HasSaddleValue K is the bare equation maximin K = minimax K; as in the book, finiteness of the
common value is a separate conclusion. The extrema are taken over the whole space, the ±∞
extension making a problem on C × D into one on the product; IsSaddlePointOn records that.
Rockafellar writes the Lagrangian as L (v, x) = ⟨v, F_* x⟩ and the bifunction behind the lower
conjugate as F_*^*, both through the concave inverse. There is no concave adjoint of a concave
bifunction here, so inverseBifun (adjointBifun Bu Bx F) is the definition of F_*^*; and the
characterisation of Lagrangians goes through saddleSwap, which turns the Lagrangian into a
bracket of flipBifun F for the negated pairing, where the convex theory applies verbatim.
References #
[^1]: R. T. Rockafellar, Convex Analysis, Princeton University Press, 1970, §36, §37.
Saddle-points and the two iterated extrema #
The saddle-value of K exists when the two iterated extrema agree. Following Rockafellar,
this says nothing about the common value being finite.
Equations
Instances For
At a saddle-point the saddle-value is K p.
Restricting the outer extrema to the effective domains #
The two extrema see only the equivalence class #
The concave mirror of iInf_clFn_eq_iInf: a concave function and its concave closure have the
same supremum. Like its convex original it needs no convexity.
Equivalent saddle-functions have the same inner infima — "two convex functions with the same closure have the same infimum".
Equivalent saddle-functions have the same inner suprema.
Equivalent saddle-functions have the same sup inf.
Equivalent saddle-functions have the same inf sup.
Equivalent saddle-functions have the same saddle-value.
Equivalent saddle-functions have the same saddle-points. The saddle-point condition is an
equation between an inner supremum and an inner infimum (isSaddlePoint_iff_iSup_eq_iInf), and
equivalence preserves both.
Saddle-points of a proper saddle-function #
A saddle-point of a proper saddle-function lies in its effective domain. Only properness is used.
The saddle-value at a saddle-point of a proper saddle-function is finite.
Minimising a convex function over a set containing the relative interior #
Minimising a convex function over any set that contains ri (dom f) already gives the global
infimum.
The extrema and the saddle-points live on the effective domain #
The inner infimum: for a closed proper concave-convex K the infimum of a slice over all of
X is already reached over D = dom₂ K.
The inner supremum: the mirror of biInf_dom₂_eq_iInf_slice, obtained from it at the swapped
saddle-function.
sup inf over the whole space is sup inf over C × D.
inf sup over the whole space is inf sup over C × D.
The saddle-points of K with respect to the whole space are exactly its saddle-points with
respect to C × D = dom K.
Slices of a bifunction in its first variable #
Each first-variable slice F (·) x of a convex bifunction is convex. Not an instance of
convexFn_compLin, because u ↦ (u, x) is affine and not linear.
Each first-variable slice of a closed bifunction is closed — the mirror of
ClosedBifun.imageClosedBifun.
The Lagrangian as a saddle-function #
The Lagrangian of (P) read as a function on the product V × X, i.e. as a saddle-function.
The minimax problem studied below is the one for exactly this function.
Equations
- Tdaf.ConvexAnalysis.saddleLagrangian Bu F q = Tdaf.ConvexAnalysis.lagrangian Bu F q.1 q.2
Instances For
Saddle-points of the Lagrangian #
The companion of iInf_lagrangian: maximising the Lagrangian over the price variable gives
the closure of the objective slice at the origin. This is the computation behind the criterion.
For a closed convex bifunction the supremum of the Lagrangian over the price variable is the
objective (F 0)(x) itself.
(v, x) is a saddle-point of the Lagrangian of (P) exactly when v is a Kuhn–Tucker vector
for (P) and x is an optimal solution to (P).
The proof is the book's: ⨅ y, L (v, y) ≤ inf F 0 ≤ (F 0) x = ⨆ w, L (w, x), whose outer terms are
respectively ≠ ⊤ and ≠ ⊥ by properness, so the saddle-point condition collapses the chain.
The general Kuhn–Tucker theorem #
Minimising the Lagrangian over the convex variable is evaluating the dual objective F* 0:
both are ⨅ u (⟨u, v⟩ + inf F u).
(v, x) is a saddle-point of the Lagrangian exactly when the primal objective at x is no
larger than the dual objective at v — in which case weak duality forces equality.
(v, x) is a saddle-point of the Lagrangian exactly when normality holds and x, v are
optimal for (P) and (P*).
The general Kuhn–Tucker theorem: once one Kuhn–Tucker vector is known to exist, x solves
(P) exactly when some v makes (v, x) a saddle-point of the Lagrangian, and the v that do
are precisely the Kuhn–Tucker vectors.
The "which v" clause: for an optimal x, the prices v completing it to a saddle-point of
the Lagrangian are exactly the Kuhn–Tucker vectors.
The Kuhn–Tucker theorem under the strong-consistency qualification: for a strongly consistent
closed proper convex program, x is an optimal solution exactly when it is the convex half of a
saddle-point of the Lagrangian.
Lagrangians are exactly the upper closed concave-convex functions #
The bifunction with its two arguments exchanged. Unlike Rockafellar's inverse operation F_*
this does not negate, so it stays convex; it is what lets the convex bracket theory be applied to
the swapped saddle-function.
Equations
- Tdaf.ConvexAnalysis.flipBifun F x u = F u x
Instances For
Exchanging the two arguments preserves convexity.
Exchanging the two arguments preserves closedness.
The Lagrangian is a bracket, after swapping. Rockafellar writes it L (v, x) = ⟨v, F_* x⟩,
through the inverse bifunction; the same identity, negated and with the variables exchanged, is
the bracket of flipBifun F for the negated pairing, where the convex theory applies
verbatim.
The Lagrangian of a convex program is a concave-convex function: the brackets of a convex bifunction are, and the Lagrangian is one of them after swapping.
The Lagrangian of a closed convex bifunction is an upper closed concave-convex function.
Every upper closed concave-convex function on V × X is the Lagrangian of one and only one
closed convex bifunction from U to X.
Conjugate saddle-functions #
The inverse of a bifunction #
The inverse is flipBifun composed with a change of sign.
The inverse of a concave bifunction is convex.
The inverse of a concave-closed bifunction is closed.
The concave conjugate sees only the concave closure #
The concave conjugate sees only the concave closure: (cl g)* = g*. This is conj_clFn
read through the sign dictionary, and it is what makes the lower conjugate independent of the
representative of the equivalence class.
The lower and upper conjugates of a saddle-function #
The lower conjugate K̲* of a saddle-function:
K̲* (u*, x) = ⨆ y, ⨅ u, {⟨u, u*⟩ + ⟨x, y⟩ - K (u, y)}.
Equations
Instances For
The upper conjugate K̄* of a saddle-function:
K̄* (u*, x) = ⨅ u, ⨆ y, {⟨u, u*⟩ + ⟨x, y⟩ - K (u, y)}.
Equations
Instances For
The lower conjugate never exceeds the upper one, K̲* ≤ K̄*, by sup inf ≤ inf sup.
The equivalence class Ω (F) of saddle-functions attached to a convex bifunction: the
concave-convex functions squeezed between the two brackets of F.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The saddle-value is a value of the conjugate at the origin #
inf sup K = -K̲* (0, 0): the inf sup is a value of the lower conjugate at the origin.
sup inf K = -K̄* (0, 0): the sup inf is a value of the upper conjugate at the origin.
The saddle-value of K exists exactly when the two conjugates agree at the origin. This is the
reduction of minimax theory to the position of the origin relative to the effective domain of the
conjugate class.
The structure of the inverse adjoint #
The inverse of the adjoint is a convex bifunction. Rockafellar writes it F_*^*, using the
commutation (F_*)^* = (F^*)_*; taking (F^*)_* as the definition makes that commutation a
triviality, and this is the bifunction the lower conjugate turns out to be the bracket of.
Each slice of the negated adjoint is a closed convex function: the adjoint of a bifunction is closed, read slice by slice.
The inverse of the adjoint is a closed bifunction.
The two conjugates of a member of Ω (F) #
The convex bifunction attached to a saddle-function sees only its cl₂ closure. This is
conj_clFn on each slice.
Every member of the class Ω (F) has the same associated bifunction, namely F. The two
brackets have equal bifunOfSaddle — one is the cl₂ of the other, and bifunOfSaddle sees only
cl₂ — so the sandwich collapses. This is the step that gives the upper conjugate.
The concave conjugate of a slice of K is a slice of the adjoint F*, for every K in the
class Ω (F): the concave conjugate sees only cl₁, and cl₁ of the lower bracket is the upper
bracket. This is the step that gives the lower conjugate.
The upper conjugate of any K in the class Ω (F) of a closed convex bifunction F is the
Lagrangian of F, K̄* (u*, x) = ⟨u*, F_* x⟩ = ⨅ u, {⟨u, u*⟩ + (Fu)(x)}. In particular it does
not depend on the representative.
The lower conjugate of any K in the class Ω (F) is the bracket of the inverse adjoint,
K̲* (u*, x) = ⟨F_*^* u*, x⟩; like the upper conjugate it depends only on the class.
The conjugates are again concave-convex, and closed #
The upper conjugate of a member of Ω (F) is a concave-convex function.
The upper conjugate of a member of Ω (F) is upper closed: it is a Lagrangian, and the
Lagrangians are exactly the upper closed concave-convex functions.
The lower conjugate of a member of Ω (F) is a concave-convex function.
The lower conjugate of a member of Ω (F) is lower closed: it is the bracket of the closed
convex bifunction F_*^*.