Antonio Franca
Transport Theory · 06

Schrödinger Bridges and Entropic Transport

Entropy-regularized OT, iterative proportional fitting, bridge matching, and diffusion bridges

In 1931, Erwin Schrödinger posed a question that appeared, at the time, to have nothing to do with generative modeling. He considered a large number of particles observed to have distribution μ\mu at time 00 and distribution ν\nu at time 11, and asked: given that the particles undergo Brownian motion between the two observations, what is the most likely stochastic evolution connecting μ\mu to ν\nu? The answer — the Schrödinger bridge — is optimal transport with an entropy penalty. It produces stochastic rather than deterministic trajectories, and it interpolates continuously between two extremes: pure Brownian motion (maximum entropy, no transport structure) and the deterministic OT map (minimum entropy, maximum transport efficiency). For ninety years this was a curiosity of mathematical physics. Then, in 2021, it became a generative model.

The central insight of this chapter is that the Schrödinger bridge is the natural stochastic extension of the optimal transport problem of Chapter 5. Where OT finds the deterministic map that moves mass at minimum cost, the Schrödinger bridge finds the stochastic process that moves mass at minimum cost while maintaining a prescribed level of randomness. The regularization parameter ε\varepsilon controls the tradeoff: at ε=0\varepsilon = 0 we recover the OT geodesic; at ε\varepsilon \to \infty we recover unstructured Brownian motion. The generative models of Chapters 3 and 4 — diffusion and flow matching — sit at opposite ends of this spectrum, and Schrödinger bridges provide the unified theory that connects them.

6.1 The Schrödinger Bridge Problem

Let RR be a reference process — a probability measure over paths {Xt}t[0,1]\{X_t\}_{t \in [0,1]} in Rd\mathbb{R}^d. The canonical choice is the Wiener measure (Brownian motion) with diffusion coefficient σ\sigma: dXt=σdWtdX_t = \sigma\, dW_t. The Schrödinger bridge problem asks for the path measure PP^* that is closest to RR in KL divergence while satisfying the marginal constraints:

[!definition] 6.1 — Schrödinger Bridge Problem Given a reference process RR and marginal distributions μ\mu, ν\nu, the Schrödinger bridge is:

P=argminP:P0=μ,  P1=νKL(PR),P^* = \arg\min_{P:\, P_0 = \mu,\; P_1 = \nu} \mathrm{KL}(P \| R),

where P0P_0 and P1P_1 denote the marginal distributions of PP at times 00 and 11.

When RR is Brownian motion, the Schrödinger bridge PP^* is itself a diffusion process dXt=ft(Xt)dt+σdWtdX_t = f_t^*(X_t)\, dt + \sigma\, dW_t — it has the same noise as Brownian motion but acquires a drift ftf_t^* that steers the particles from μ\mu to ν\nu. The KL objective penalizes deviations from the reference: the drift is the minimum correction to Brownian motion that achieves the desired marginals. Particles still diffuse randomly, but they diffuse with purpose.

[!remark] 6.1 The Schrödinger bridge has a compelling physical interpretation. Imagine 102310^{23} particles undergoing Brownian motion. At time 00 they are distributed as μ\mu; at time 11 they are observed to be distributed as ν\nu. The Schrödinger bridge is the conditional law of the process given both endpoint observations — the most likely interpolation between the two snapshots. It is the answer to: “given what we see at the beginning and end, what most likely happened in between?“

6.2 Entropy-Regularized Optimal Transport

The Schrödinger bridge has an equivalent static formulation in terms of couplings, which connects it directly to the Kantorovich problem of Chapter 5.

Let R01R_{01} denote the joint distribution of (X0,X1)(X_0, X_1) under the reference process RR — for Brownian motion with diffusion σ\sigma, this is R01(x,y)=μ(x)N(y;x,σ2I)R_{01}(x, y) = \mu(x) \cdot \mathcal{N}(y; x, \sigma^2 I). The static Schrödinger bridge seeks the coupling π\pi^* closest to R01R_{01} in KL divergence:

Expanding the KL divergence, this becomes:

π=argminπΓ(μ,ν)logπ(x,y)R01(x,y)dπ(x,y)=argminπΓ(μ,ν)[1σ2xy2dπσ2H(π)]+const,\pi^* = \arg\min_{\pi \in \Gamma(\mu, \nu)} \int \log\frac{\pi(x,y)}{R_{01}(x,y)}\, d\pi(x,y) = \arg\min_{\pi \in \Gamma(\mu,\nu)} \left[\frac{1}{\sigma^2}\int \|x-y\|^2\, d\pi - \sigma^2\, H(\pi)\right] + \text{const},

where H(π)=πlogπH(\pi) = -\int \pi \log \pi is the entropy of the coupling. Up to a scaling, this is precisely the entropy-regularized optimal transport problem:

[!definition] 6.2 — Entropy-Regularized OT The entropy-regularized optimal transport problem with regularization ε>0\varepsilon > 0 is:

πε=argminπΓ(μ,ν)xy2dπ(x,y)εH(π).\pi^*_\varepsilon = \arg\min_{\pi \in \Gamma(\mu, \nu)} \int \|x - y\|^2\, d\pi(x, y) - \varepsilon\, H(\pi).

As ε0\varepsilon \to 0, πε\pi^*_\varepsilon converges to the OT coupling πOT\pi_{\mathrm{OT}}. As ε\varepsilon \to \infty, πε\pi^*_\varepsilon converges to the independent coupling μν\mu \otimes \nu.

The regularization parameter ε=σ2\varepsilon = \sigma^2 is the squared diffusion coefficient. Large noise means large entropy regularization, which pushes the coupling toward independence (Brownian motion doesn’t care about the target). Small noise means small regularization, which pushes the coupling toward the OT solution (particles take the shortest path). The Schrödinger bridge interpolates between these extremes.

6.3 The Sinkhorn Algorithm and Iterative Proportional Fitting

The entropy-regularized problem has a key computational advantage over exact OT: its solution has the factored form π(x,y)=a(x)K(x,y)b(y)\pi^*(x, y) = a(x)\, K(x, y)\, b(y), where K(x,y)=exy2/εK(x, y) = e^{-\|x-y\|^2/\varepsilon} is the Gibbs kernel. The marginal constraints π1=μ\pi^*_1 = \mu, π2=ν\pi^*_2 = \nu then determine aa and bb through the coupled equations:

a(x)=μ(x)K(x,y)b(y)dy,b(y)=ν(y)a(x)K(x,y)dx.a(x) = \frac{\mu(x)}{\int K(x,y)\, b(y)\, dy}, \qquad b(y) = \frac{\nu(y)}{\int a(x)\, K(x,y)\, dx}.

[!definition] 6.3 — Sinkhorn Algorithm The Sinkhorn algorithm (also called iterative proportional fitting, or IPF) alternately enforces the two marginal constraints:

  1. Initialize b(0)(y)=1b^{(0)}(y) = 1.
  2. For k=0,1,2,k = 0, 1, 2, \ldots:
    • a(k)(x)=μ(x)/K(x,y)b(k)(y)dya^{(k)}(x) = \mu(x) \,/\, \int K(x,y)\, b^{(k)}(y)\, dy
    • b(k+1)(y)=ν(y)/a(k)(x)K(x,y)dxb^{(k+1)}(y) = \nu(y) \,/\, \int a^{(k)}(x)\, K(x,y)\, dx

The iterates converge to the unique solution (a,b)(a^*, b^*) of the entropy-regularized OT problem.

For discrete distributions with nn support points, each iteration costs O(n2)O(n^2) — a matrix-vector multiplication with the kernel matrix Kij=exiyj2/εK_{ij} = e^{-\|x_i - y_j\|^2/\varepsilon}. Convergence is linear, with rate depending on ε\varepsilon: smaller ε\varepsilon (closer to exact OT) requires more iterations. The Sinkhorn algorithm was brought to machine learning by Cuturi (2013), who showed that with GPU-accelerated matrix operations, it provides practical OT distances and couplings at a fraction of the cost of exact solvers.

[!remark] 6.2 The Sinkhorn algorithm has a beautiful interpretation as alternating KL projections. Let C1={π:π1=μ}\mathcal{C}_1 = \{\pi : \pi_1 = \mu\} and C2={π:π2=ν}\mathcal{C}_2 = \{\pi : \pi_2 = \nu\} be the two marginal constraint sets. Starting from the reference kernel KK, the Sinkhorn iterations alternate between projecting onto C1\mathcal{C}_1 and C2\mathcal{C}_2 in the sense of KL divergence. Each projection is a rescaling of the coupling, and the fixed point is the unique element of C1C2\mathcal{C}_1 \cap \mathcal{C}_2 closest to KK in KL — the Schrödinger bridge. This is a special case of the iterative proportional fitting procedure of Deming and Stephan (1940), applied to the Schrödinger problem by Fortet (1940) and Beurling (1960).

6.4 Dynamic Schrödinger Bridges

The dynamic formulation of the Schrödinger bridge — over path measures rather than couplings — leads to a system of coupled PDEs that generalizes the Benamou-Brenier formula.

The Schrödinger bridge PP^* is a Markov diffusion process dXt=ft(Xt)dt+σdWtdX_t = f_t^*(X_t)\, dt + \sigma\, dW_t with drift:

where p^t\hat{p}_t satisfies a forward-backward PDE system called the Schrödinger system:

with boundary conditions p^0pˇ0=μ\hat{p}_0 \cdot \check{p}_0 = \mu and p^1pˇ1=ν\hat{p}_1 \cdot \check{p}_1 = \nu. The forward equation for p^\hat{p} is the heat equation running forward in time; the backward equation for pˇ\check{p} is the heat equation running backward. The marginal density of the bridge at time tt is their product: ρt=p^tpˇt\rho_t = \hat{p}_t \cdot \check{p}_t.

[!theorem] 6.1 — Schrödinger Bridge Drift The drift of the Schrödinger bridge ft(x)=σ2logp^t(x)f_t^*(x) = \sigma^2 \nabla \log \hat{p}_t(x) is the unique drift that makes dXt=ft(Xt)dt+σdWtdX_t = f_t^*(X_t)\,dt + \sigma\,dW_t have marginals satisfying ρ0=μ\rho_0 = \mu, ρ1=ν\rho_1 = \nu, while minimizing KL(PR)\mathrm{KL}(P \| R) over all diffusion processes with diffusion coefficient σ\sigma.

The Schrödinger system (6.3) connects directly to the Sinkhorn algorithm: the alternating projections in Sinkhorn correspond to alternately solving the forward and backward heat equations — each projection updates one of p^,pˇ\hat{p}, \check{p} while holding the other fixed. This is the continuous-time version of iterative proportional fitting.

6.5 Half-Bridges and the Generative Setting

In generative modeling, we typically know the source distribution μ=N(0,I)\mu = \mathcal{N}(0, I) analytically but know the target distribution ν=pdata\nu = p_{\text{data}} only through samples. This asymmetry simplifies the Schrödinger bridge to a half-bridge.

If μ=N(0,I)\mu = \mathcal{N}(0, I), the forward half p^0=N(0,I)/pˇ0\hat{p}_0 = \mathcal{N}(0, I) / \check{p}_0 is known once pˇ0\check{p}_0 is determined. The problem reduces to finding pˇt\check{p}_t alone — the backward component — which encodes the information about where the particles need to go. In the generative direction (sampling from μ\mu and transporting to ν\nu), only the drift ft=σ2logp^tf_t^* = \sigma^2 \nabla \log \hat{p}_t is needed, and this drift is what the neural network learns to approximate.

The half-bridge perspective clarifies the relationship to diffusion models. A diffusion model with VP-SDE forward process dXt=12βtXtdt+βtdWtdX_t = -\frac{1}{2}\beta_t X_t\, dt + \sqrt{\beta_t}\, dW_t defines a reference process RR that is not pure Brownian motion — it has a mean-reverting drift. The corresponding Schrödinger bridge with this reference process connects pdatap_{\text{data}} at t=0t=0 to N(0,I)\mathcal{N}(0, I) at t=1t=1, and the reverse-time drift 12βtx+βtlogpt(x)-\frac{1}{2}\beta_t x + \beta_t \nabla \log p_t(x) is the Schrödinger bridge drift for this specific reference. Diffusion models are Schrödinger half-bridges in disguise — they use a non-trivial reference process whose bridge drift happens to involve the score function.

6.6 Bridge Matching

Solving the Schrödinger system (6.3) directly is intractable for high-dimensional problems. Bridge matching (also called score-based Schrödinger bridge matching) is the simulation-free approach that makes Schrödinger bridges practical for generative modeling.

The key observation is that, given a pair (x0,x1)π(x_0, x_1) \sim \pi^*, the conditional process {XtX0=x0,X1=x1}\{X_t \mid X_0 = x_0, X_1 = x_1\} under the Schrödinger bridge is a Brownian bridge — a process whose law is known analytically:

The conditional drift of this bridge is:

ftbridge(xx0,x1)=x1x1t,f_t^{\text{bridge}}(x \mid x_0, x_1) = \frac{x_1 - x}{1 - t},

which is known in closed form — it points from the current position toward x1x_1, with magnitude inversely proportional to the remaining time. This is the Brownian bridge drift: the process is pulled toward its known endpoint.

[!definition] 6.4 — Bridge Matching Objective The bridge matching objective trains a neural drift fθ(x,t)f_\theta(x, t) by regressing against the conditional bridge drift:

LBM(θ)=Et,  (x0,x1)π,  xtpt(x0,x1) ⁣[fθ(xt,t)x1xt1t2],\mathcal{L}_{\mathrm{BM}}(\theta) = \mathbb{E}_{t,\; (x_0, x_1) \sim \pi,\; x_t \sim p_t(\cdot | x_0, x_1)}\!\left[\left\|f_\theta(x_t, t) - \frac{x_1 - x_t}{1 - t}\right\|^2\right],

where xtx_t is sampled from the Brownian bridge (6.4) and π\pi is a coupling between μ\mu and ν\nu.

The tower property applies exactly as in the conditional flow matching theorem (Theorem 4.1): the conditional and marginal objectives have the same gradient. The bridge matching objective is tractable — sample (x0,x1)(x_0, x_1), sample xtx_t from the known Brownian bridge distribution, compute the closed-form target (x1xt)/(1t)(x_1 - x_t)/(1-t), and regress.

[!remark] 6.3 Compare the bridge matching target (x1xt)/(1t)(x_1 - x_t)/(1-t) with the flow matching target x1x0x_1 - x_0 (for the linear interpolant). Both point from the current state toward the data point. The bridge matching target is time-dependent and diverges as t1t \to 1 (the drift must become infinite to hit the exact endpoint), while the flow matching target is constant. The divergence at t=1t = 1 is regularized by the noise: the Brownian bridge automatically concentrates at x1x_1 as t1t \to 1, so the effective force is bounded. The stochastic nature of the bridge absorbs the singularity that a deterministic flow would have to handle through the velocity field alone.

6.7 I2^2SB and Iterative Bridge Refinement

A natural question arises: what coupling π\pi should be used in bridge matching? The optimal choice is the Schrödinger bridge coupling π\pi^* — but this is exactly what we are trying to learn. The resolution is an iterative procedure that alternates between learning the bridge drift and updating the coupling.

I2^2SB (Image-to-Image Schrödinger Bridge, Liu et al. 2023) implements this idea:

  1. Initialize with the independent coupling π0=μν\pi_0 = \mu \otimes \nu — pair noise and data randomly.
  2. Learn the drift fθ(k)f_\theta^{(k)} by bridge matching with coupling πk\pi_k.
  3. Update the coupling: run the learned SDE dXt=fθ(k)(Xt)dt+σdWtdX_t = f_\theta^{(k)}(X_t)\, dt + \sigma\, dW_t forward from x0μx_0 \sim \mu to obtain samples x^1\hat{x}_1. The new coupling πk+1\pi_{k+1} pairs each x0x_0 with its generated x^1\hat{x}_1.
  4. Repeat from step 2.

Each iteration is a half-IPF step: learning the drift given the coupling, then updating the coupling given the drift. The procedure converges to the Schrödinger bridge, with each iteration reducing the KL divergence to the reference process.

This iterative scheme is the stochastic analogue of the reflow procedure from Section 4.6. Reflow iterates toward the OT map (the deterministic limit); I2^2SB iterates toward the Schrödinger bridge (the stochastic version with entropy regularization). Both start from an independent coupling and progressively learn the optimal pairing.

6.8 The Spectrum from Flow Matching to Diffusion

The Schrödinger bridge provides a unifying framework that places all the generative models of the preceding chapters on a single spectrum controlled by the diffusion coefficient σ\sigma.

At σ=0\sigma = 0 (no noise): the bridge collapses to the OT geodesic — the deterministic flow of Chapter 5. The trajectories are straight lines under the Brenier map. The model is a flow matching model with OT coupling. Generation is deterministic: each noise sample maps to exactly one output.

At intermediate σ\sigma: the bridge is a genuine Schrödinger bridge. Trajectories are stochastic — the same starting point can produce different outputs on different runs. The bridge drift steers particles toward the target while respecting the entropy budget set by σ\sigma. The coupling is softer than OT — mass splitting is allowed — and the paths are smoother in the sense that the drift is better behaved near boundaries.

At large σ\sigma: the bridge approaches pure Brownian motion with marginal constraints. The drift becomes weak relative to the noise, and the process resembles a noisy diffusion that only weakly respects the target. This is the over-regularized regime where the model generates diverse but low-quality samples.

[!remark] 6.4 The Schrödinger bridge perspective resolves a longstanding puzzle: why do diffusion models (which use SDEs) sometimes generate better samples than flow matching models (which use ODEs), despite flow matching having straighter paths and fewer NFE? The answer is that the SDE’s noise acts as an implicit regularizer — a corrector that prevents trajectories from drifting into low-density regions where the learned velocity field is unreliable. The ODE trajectory is a razor’s edge: any error in the velocity field accumulates without correction. The SDE trajectory self-corrects: noise pushes the particle back toward high-density regions where the drift is well-learned. The optimal noise level σ\sigma^* trades off the cost of noise (more NFE, more variance) against the benefit of correction (robustness to model error).

6.9 Historical Notes

Schrödinger (1931) (“Über die Umkehrung der Naturgesetze”) posed the original bridge problem as a thought experiment about the time-reversal of diffusion. Fortet (1940) and Beurling (1960) established the connection to iterative proportional fitting. The modern mathematical theory was developed by Föllmer (1988) and systematized by Léonard (2014) (“A survey of the Schrödinger problem and some of its connections with optimal transport”), who clarified the convergence of Schrödinger bridges to OT maps as ε0\varepsilon \to 0.

Cuturi (2013) (“Sinkhorn Distances: Lightspeed Computation of Optimal Transport”) introduced the Sinkhorn algorithm to machine learning, enabling efficient computation of entropy-regularized OT. Peyré and Cuturi (2019) provide the comprehensive computational treatment.

The application to generative modeling began with De Bortoli, Thornton, Heng, and Doucet (2021) (“Diffusion Schrödinger Bridge with Applications to Score-Based Generative Modeling”), who showed that Schrödinger bridges can be learned by alternating score matching and diffusion simulation. Vargas, Nüsken, and Richter (2021) (“Solving Schrödinger Bridges via Maximum Likelihood”) proposed a maximum-likelihood approach. Chen, Conforti, and Georgiou (2021) developed the stochastic control perspective. Liu, Gat, Polyak, et al. (2023) (“I2^2SB: Image-to-Image Schrödinger Bridge”) demonstrated practical image-to-image translation using iterative bridge refinement. Shi, De Bortoli, Campbell, and Doucet (2024) (“Diffusion Schrödinger Bridge Matching”) introduced the bridge matching framework that makes training tractable. Peluchetti (2023) (“Diffusion Bridge Mixture Transports, Schrödinger Bridge Problems and Generative Modeling”) clarified the theoretical connections between bridges, diffusion models, and flow matching.

The connection between Schrödinger bridges and iterative proportional fitting was formalized by Ruschendorf (1995) and brought to the generative modeling setting by De Bortoli et al. (2021). The interpretation of diffusion models as Schrödinger half-bridges appears in Huang, Jiao, Shi, and Kang (2021) and was further developed by Chen and Lipman (2024).