Mert Gürbüzbalaban

Notes · October 2026 · 4 min read

Three ways to reach a saddle point


Minimizing over one variable while maximizing over another is what robust learning, adversarial training and constrained problems come down to — and the plain gradient method fails at it. Why it fails, what extragradient and SAPD do instead, and why doing it fast and doing it quietly pull in opposite directions.

A surprising amount of modern machine learning is not a minimization. Distributionally robust learning minimizes over the model while an adversary maximizes over the data distribution; adversarial training does the same over perturbations; constrained problems become saddle-point problems the moment a Lagrange multiplier appears. The template is

min⁡x  max⁡y  L(x,y),\min_{x}\;\max_{y}\;\mathcal{L}(x, y),

and the first thing to know about it is that the obvious algorithm does not work.

Why descent-ascent spirals

Take the simplest strongly-convex–strongly-concave instance, L(x,y)=μ2x2+b xy−μ2y2\mathcal{L}(x,y) = \frac{\mu}{2}x^2 + b\,xy - \frac{\mu}{2}y^2, whose saddle point is the origin. Gradient descent-ascent — a descent step in xx and an ascent step in yy, simultaneously — is the linear iteration zk+1=(I−ηF) zkz_{k+1} = (I - \eta F)\,z_k with

F=(μb−bμ),F = \begin{pmatrix} \mu & b \\ -b & \mu \end{pmatrix},

whose eigenvalues are 1−ημ±i ηb1 - \eta\mu \pm i\,\eta b. The coupling bb shows up as a pure rotation. A gradient step taken on a rotation always lands a little farther from the center, and the modulus (1−ημ)2+η2b2\sqrt{(1-\eta\mu)^2 + \eta^2 b^2} exceeds one as soon as η>2μ/(μ2+b2)\eta > 2\mu/(\mu^2 + b^2). When the coupling dominates the curvature — the typical case — descent-ascent either spirals outward or converges only with a stepsize so small that it barely moves.

The two cures both amount to damping the rotation. Extragradient looks one step ahead: it takes a trial step, evaluates the gradient there, and uses that gradient for the real step. The look-ahead cancels the rotation to first order at the price of a second gradient per iteration. The accelerated primal–dual approach does the same with momentum: SAPD extrapolates the dual gradient,

yk+1=yk+σ[(1+θ) ∇yL(xk,yk)−θ ∇yL(xk−1,yk−1)],xk+1=xk−τ ∇xL(xk,yk+1),y_{k+1} = y_k + \sigma\big[(1+\theta)\,\nabla_y \mathcal{L}(x_k, y_k) - \theta\,\nabla_y \mathcal{L}(x_{k-1}, y_{k-1})\big], \qquad x_{k+1} = x_k - \tau\,\nabla_x \mathcal{L}(x_k, y_{k+1}),

with one gradient of each kind per iteration, and the momentum parameter θ\theta plays the role the look-ahead plays for extragradient.

Left: trajectories of the three methods on the phase plane; descent-ascent spirals outward while extragradient and SAPD spiral into the saddle. Right: distance to the saddle against iterations under gradient noise; the two convergent methods settle at a noise floor.
Coupling b = 4 against curvature μ = 0.5, stepsize 0.1, gradient noise of scale 0.25. Gradient descent-ascent (rate 1.03) spirals away; extragradient (0.87) and SAPD (0.88) spiral in, then hover at a floor set by how much noise each one lets through.

Stochastic gradients, and the price of speed

In learning problems the gradients are stochastic, and then convergence is not the whole story. Because each method is a linear system driven by the gradient noise, two numbers describe it exactly. The convergence rate ρ\rho is the spectral radius of its iteration matrix. The robustness is a number JJ: the stationary root-mean-square distance to the saddle when every gradient carries unit-variance noise — the H2H_2 norm of the system, which comes out of the discrete Lyapunov equation X=AXA⊤+BB⊤X = AXA^{\top} + BB^{\top}. With noise of scale σ\sigma, the run cannot converge; it hovers at a floor of about σJ\sigma J. Both ρ\rho and JJ can be computed for any choice of stepsizes and momentum.

Computing them reveals the same tension that governs momentum methods for minimization: turn the stepsize up and every ρ\rho falls while every JJ rises. SAPD makes the trade-off designable. Its analysis gives, for a target rate, the stepsizes and momentum that achieve it, and shows that the rate and the noise amplification cannot be minimized together — there is a Pareto frontier between them, which can be traced and chosen on. In expectation that is the whole story; for a single run it is not, because an algorithm that is fine on average can still have fat tails. High-probability and risk-averse guarantees for SAPD address exactly that, certifying the run you actually get rather than the average run. And the same machinery extends beyond the convex–concave case: SAPD+ uses the method as an inner solver to reach the best known complexity for non-convex–concave problems.

Reaching a saddle point is a question of damping a rotation; doing it fast and doing it quietly pull in opposite directions, and the frontier between them can be computed.

Try it yourself

The saddle-point playground races the three methods from the same start with sliders for the coupling, the curvature, the stepsize, the momentum and the noise. The table underneath gives each method's exact ρ\rho and JJ beside the measured distance of the noisy run; press Coupling dominates to watch descent-ascent spiral out, then drag the stepsize to watch the frontier.

The theory is in the companion papers: SAPD and its rate–robustness analysis, the high-probability and risk-averse guarantees for a single run, and SAPD+ for non-convex–concave problems.

Comments and corrections are welcome by email. More notes on the notes index, or subscribe via RSS.