Gaussian Belief Propagation

When Messages Are Gaussians

Sum-product on discrete variables computes probability tables. For continuous variables the analog is densities β€” but general densities are infinite-dimensional. The algorithm becomes computationally heavy.

There is one continuous family where sum-product remains tractable: jointly Gaussian distributions. In this case, every message is itself a Gaussian density, parameterized by a mean (or precision) vector and a covariance (or precision) matrix. The message updates are finite matrix operations. This yields Gaussian belief propagation (GaBP) β€” the continuous analog of LDPC decoding.

The point of this section is that GaBP is the right tool whenever the model is (approximately) jointly Gaussian: iterative MIMO detection, Kalman filtering on a tree-structured state space, distributed least-squares estimation. It plugs into iterative receivers where soft outputs are needed in real time.

Definition:

Gaussian Factor Graph

A Gaussian factor graph has each factor of the form fa(xβˆ‚a)=exp⁑ ⁣(βˆ’12xβˆ‚aTJaxβˆ‚a+haTxβˆ‚a),f_a(\mathbf{x}_{\partial a}) = \exp\!\left(-\tfrac{1}{2}\mathbf{x}_{\partial a}^T \mathbf{J}_a \mathbf{x}_{\partial a} + \mathbf{h}_a^T \mathbf{x}_{\partial a}\right), where Jaβͺ°0\mathbf{J}_a \succeq 0 (information / precision) and ha\mathbf{h}_a (potential) are the canonical parameters. The global distribution p(x)∝∏afap(\mathbf{x}) \propto \prod_a f_a is then the multivariate Gaussian with total precision J=βˆ‘aJa\mathbf{J} = \sum_a \mathbf{J}_a (appropriately padded) and potential h=βˆ‘aha\mathbf{h} = \sum_a \mathbf{h}_a. The marginals p(xi)p(x_i) are Gaussian with mean ΞΌi=(Jβˆ’1h)i\mu_i = (\mathbf{J}^{-1}\mathbf{h})_i and variance Οƒi2=(Jβˆ’1)ii\sigma_i^2 = (\mathbf{J}^{-1})_{ii}.

The information form (h,J)(\mathbf{h}, \mathbf{J}) is the natural parameterization for message passing β€” products of Gaussians are computed by adding information parameters, and marginalization requires a matrix inversion that reduces nicely for tree-structured graphs.

Theorem: Gaussian BP Update Rules

For a pairwise Gaussian factor graph with factors fij(xi,xj)∝exp⁑(βˆ’12[xi,xj]Jij[xi,xj]T)f_{ij}(x_i, x_j) \propto \exp(-\tfrac{1}{2}[x_i, x_j] \mathbf{J}_{ij} [x_i, x_j]^T) and unary terms fi(xi)∝exp⁑(βˆ’12Jiixi2+hixi)f_i(x_i) \propto \exp(-\tfrac{1}{2} J_{ii} x_i^2 + h_i x_i), the Gaussian BP messages are parameterized as ΞΌiβ†’j(xj)∝exp⁑(βˆ’12Jiβ†’jxj2+hiβ†’jxj)\mu_{i \to j}(x_j) \propto \exp(-\tfrac{1}{2} J_{i \to j} x_j^2 + h_{i \to j} x_j) with updates Jiβ†’j=βˆ’(Jij,12)2/(Jii+βˆ‘kβˆˆβˆ‚iβˆ–jJkβ†’i+Jij,11),J_{i \to j} = -(J_{ij,12})^2 / (J_{ii} + \sum_{k \in \partial i \setminus j} J_{k \to i} + J_{ij,11}), hiβ†’j=βˆ’Jij,12(hi+βˆ‘kβ‰ jhkβ†’i)/(Jii+…+Jij,11).h_{i \to j} = -J_{ij,12}(h_i + \sum_{k \neq j} h_{k \to i}) / (J_{ii} + \ldots + J_{ij,11}). The final belief at node ii is Gaussian with precision Ji⋆=Jii+βˆ‘kβˆˆβˆ‚iJkβ†’iJ_i^\star = J_{ii} + \sum_{k \in \partial i} J_{k \to i} and potential hi⋆=hi+βˆ‘khkβ†’ih_i^\star = h_i + \sum_k h_{k \to i}.

GaBP parameterizes messages by scalar precision and potential pairs (for pairwise factors). Products of Gaussians are Gaussians whose parameters add; marginalization of a jointly-Gaussian pair is Schur-complement computation. Every message update is O(1)O(1), and the whole algorithm runs at matrix-inversion-level speed without ever forming an inverse.

, ,

Theorem: Means Are Always Correct for GaBP

If GaBP converges on a Gaussian graph with precision matrix J\mathbf{J}, the computed means ΞΌi⋆=hi⋆/Ji⋆\mu_i^\star = h_i^\star / J_i^\star equal the exact Gaussian marginal means (Jβˆ’1h)i(\mathbf{J}^{-1}\mathbf{h})_i, regardless of whether the graph is a tree. The variances (Ji⋆)βˆ’1(J_i^\star)^{-1} may differ from the true marginal variances (Jβˆ’1)ii(\mathbf{J}^{-1})_{ii}.

This is a striking property: loopy GaBP is still correct for point estimates, even though it makes errors in uncertainty quantification. The means behave as though the graph were a tree because they solve a linear fixed-point system equivalent to the true linear system. The variances, in contrast, depend on global cycle structure that loopy BP cannot capture correctly.

,

Gaussian Belief Propagation (Pairwise)

Complexity: O(∣E∣)O(|\mathcal{E}|) per iteration (one scalar update per edge). Total memory: O(∣E∣)O(|\mathcal{E}|). Compare to direct matrix inversion O(N3)O(N^3) β€” GaBP is exponentially cheaper for sparse J\mathbf{J}.
Input: pairwise Gaussian precision matrix J, potential vector h, max iterations T
Output: beliefs (mu_i, var_i) for each node
// Initialize messages
for each edge (i, j):
J_{i->j} = 0
h_{i->j} = 0
for t = 1 to T:
for each edge (i, j):
// Compute aggregate incoming at i (excluding j)
J_i_agg = J[i,i] + sum over k in N(i){j}: J_{k->i}
h_i_agg = h[i] + sum over k in N(i){j}: h_{k->i}
// Marginalize out x_i from the pairwise factor f_{ij}
J_{i->j} = -(J[i,j])^2 / J_i_agg
h_{i->j} = -J[i,j] * h_i_agg / J_i_agg
// Beliefs
for each node i:
J_star[i] = J[i,i] + sum over k in N(i): J_{k->i}
h_star[i] = h[i] + sum over k in N(i): h_{k->i}
mu[i] = h_star[i] / J_star[i]
var[i] = 1 / J_star[i]
return (mu, var)

Walk-summable J\mathbf{J} (diagonally dominant) guarantees convergence. In practice, damping messages (take a convex combination of old and new) extends the convergence range.

Example: GaBP on a 3-Node Cycle

Solve the linear system JΞΌ=h\mathbf{J}\boldsymbol{\mu} = \mathbf{h} with J=(411141114)\mathbf{J} = \begin{pmatrix} 4 & 1 & 1 \\ 1 & 4 & 1 \\ 1 & 1 & 4 \end{pmatrix} and h=(1,2,3)T\mathbf{h} = (1, 2, 3)^T using GaBP. Compare to the exact solution.

Why This Matters: GaBP for MIMO Detection

For a MIMO receiver with dense channel matrix H\mathbf{H}, exact MMSE detection requires inverting HHH+Οƒ2I\mathbf{H}^H\mathbf{H} + \sigma^2\mathbf{I} β€” cubic in the number of streams. GaBP on the factor graph of the posterior gives MMSE estimates (means) with iteration complexity linear in H\mathbf{H}'s non-zeros. For sparse or banded channels (ISI, massive MIMO with sparse beamspace representation), this delivers orders of magnitude speedup. 5G terminal MIMO receivers often use a GaBP-based inner loop coupled with an LDPC outer decoder.

GaBP Convergence: Diagonal Dominance Matters

Show GaBP convergence on random sparse Gaussian graphs. Vary the diagonal dominance factor and observe convergence vs. divergence.

Parameters
20
0.2
1.5

Common Mistake: GaBP Divergence from Weak Diagonal Dominance

Mistake:

Running GaBP on a precision matrix with Jiiβ‰€βˆ‘jβ‰ i∣Jij∣J_{ii} \leq \sum_{j \neq i} |J_{ij}| (fails strict diagonal dominance) and assuming it will converge.

Correction:

GaBP is guaranteed to converge only when J\mathbf{J} is walk-summable (implied by strict diagonal dominance). For weakly diagonally dominant or indefinite matrices, add damping: m(t+1)=Ξ³m(t)+(1βˆ’Ξ³)m(t+1),newm^{(t+1)} = \gamma m^{(t)} + (1-\gamma) m^{(t+1),\text{new}}, with γ∈[0.3,0.7]\gamma \in [0.3, 0.7]. In adversarial cases (e.g., MIMO with coherent channels), fall back to direct solvers.

πŸ”§Engineering Note

GaBP in Silicon

GaBP's scalar message updates map cleanly to parallel hardware: each edge's update is independent within a layer. Commercial 5G receivers implement GaBP with damping factor 0.5 and 5-10 iterations, achieving within 0.5 dB of exact MMSE at a fraction of the matrix-inversion latency.

Practical Constraints
  • β€’

    Precision required: ~12 bits to avoid variance drift.

  • β€’

    Walk-summability checked offline; online diagnostic monitors divergence.

  • β€’

    Typical convergence in 5-15 iterations for MIMO detection.

πŸŽ“CommIT Contribution(2018)

Approximate Gaussian BP for Massive MIMO

C. Jeon, R. Ghods, C. Studer, G. Caire β€” Proc. IEEE SPAWC

The CommIT group and collaborators have developed GaBP-based MIMO detection algorithms tailored for massive MIMO uplink. These algorithms combine GaBP with deterministic-equivalent regularization (Chapter 16) to achieve near-MMSE performance with hardware-friendly complexity.

Gaussian BPMIMO detectionmassive MIMO

Quick Check

GaBP is run on a loopy Gaussian graph and converges. What can we say about the computed means and variances?

Means exact, variances approximate

Both means and variances exact

Both means and variances approximate

Neither (GaBP cannot handle loops)

Key Takeaway

Gaussian belief propagation is sum-product specialized to jointly Gaussian distributions. Messages are Gaussian densities parameterized by information form (h,J)(h, J); products add, marginalization is Schur-complement. On any convergent graph (including loopy ones), the means are exact β€” variances are approximate. GaBP is the workhorse for iterative MIMO detection and large-scale sparse linear system solving.