Broadcast Channel Capacity Region Computation

From Theory to Computation

We now have the theoretical characterization of the MIMO BC capacity region (DPC is optimal, Section 16.3) and a computational shortcut (MAC-BC duality, Section 16.4). The remaining question is: how do we actually compute the boundary of the capacity region? In particular, how do we find the covariance matrices {Kk}\{\mathbf{K}_k\} that maximize the sum rate or trace out the Pareto boundary of the rate region?

This section presents two computational approaches: the iterative water-filling algorithm for the dual MAC, and the weighted minimum mean square error (WMMSE) approach for direct BC optimization. Both are iterative algorithms that converge to the global optimum β€” a fact guaranteed by the convexity (or hidden convexity) of the underlying problem.

Iterative Water-Filling for the MIMO MAC

Complexity: O(Kβ‹…nt3)O(K \cdot n_t^3) per iteration (dominated by SVD and matrix inversion). Typically converges in 10-50 iterations.
Input: Channel matrices {HkH}k=1K\{\mathbf{H}_{k}^{H}\}_{k=1}^K, sum power PP
Output: Optimal covariances {Kkβˆ—}\{\mathbf{K}_k^*\} maximizing sum rate
1. Initialize Kk=(P/K)β‹…Inr,k/nr,k\mathbf{K}_k = (P/K) \cdot \mathbf{I}_{n_{r,k}} / n_{r,k} for all kk
2. Repeat until convergence:
a. For each user k=1,…,Kk = 1, \ldots, K:
i. Compute interference-plus-noise:
Ξ¦k=I+βˆ‘jβ‰ kHjHKjHj\mathbf{\Phi}_k = \mathbf{I} + \sum_{j \neq k} \mathbf{H}_{j}^{H} \mathbf{K}_j \mathbf{H}_{j}
ii. Compute effective channel:
H~k=Ξ¦kβˆ’1/2HkH\tilde{\mathbf{H}}_k = \mathbf{\Phi}_k^{-1/2} \mathbf{H}_{k}^{H}
iii. SVD: H~k=UkΞ£kVkH\tilde{\mathbf{H}}_k = \mathbf{U}_k \mathbf{\Sigma}_k \mathbf{V}_k^H
iv. Water-fill over eigenvalues of H~kHH~k\tilde{\mathbf{H}}_k^H \tilde{\mathbf{H}}_k:
Pk,i=[ΞΌkβˆ’Οƒk,iβˆ’2]+P_{k,i} = [\mu_k - \sigma_{k,i}^{-2}]_+
v. Update: Kk=Vkdiag(Pk,1,…)VkH\mathbf{K}_k = \mathbf{V}_k \text{diag}(P_{k,1}, \ldots) \mathbf{V}_k^H
b. Normalize: scale all {Kk}\{\mathbf{K}_k\} so that βˆ‘ktr(Kk)=P\sum_k \text{tr}(\mathbf{K}_k) = P
3. Return {Kkβˆ—}\{\mathbf{K}_k^*\}

This is a block coordinate ascent algorithm. Each step increases the sum rate (or keeps it constant), and convergence to the global optimum is guaranteed because the sum-rate function is concave in each Kk\mathbf{K}_k when the others are fixed.

Definition:

The WMMSE Framework

The weighted minimum mean square error (WMMSE) approach reformulates the sum-rate maximization as: max⁑{Kk}βˆ‘k=1KRk=max⁑{Kk}βˆ‘k=1Klog⁑det⁑(I+Ekβˆ’1HkKkHkH)\max_{\{\mathbf{K}_k\}} \sum_{k=1}^K R_{k} = \max_{\{\mathbf{K}_k\}} \sum_{k=1}^K \log\det(\mathbf{I} + \mathbf{E}_k^{-1} \mathbf{H}_{k} \mathbf{K}_k \mathbf{H}_{k}^{H})

where Ek\mathbf{E}_k is the MMSE matrix of user kk given the interference. The key insight (Christensen, Agrawal, and Cioffi, 2008) is that: log⁑det⁑(I+Ekβˆ’1HkKkHkH)=max⁑Wk≻0[log⁑det⁑(Wk)βˆ’tr(WkEk)+nr,k]\log\det(\mathbf{I} + \mathbf{E}_k^{-1} \mathbf{H}_{k} \mathbf{K}_k \mathbf{H}_{k}^{H}) = \max_{\mathbf{W}_k \succ 0} \left[ \log\det(\mathbf{W}_k) - \text{tr}(\mathbf{W}_k \mathbf{E}_k) + n_{r,k} \right]

This transforms the non-convex rate maximization into an alternating optimization over receive filters {Gk}\{\mathbf{G}_k\}, weight matrices {Wk}\{\mathbf{W}_k\}, and transmit covariances {Kk}\{\mathbf{K}_k\}, each subproblem being convex.

WMMSE Algorithm for BC Sum-Rate Maximization

Complexity: O(Kβ‹…nt3)O(K \cdot n_t^3) per iteration. Converges monotonically; typically 20-100 iterations.
Input: BC channels {Hk}k=1K\{\mathbf{H}_{k}\}_{k=1}^K, power PP
Output: Precoding matrices {Bk}\{\mathbf{B}_k\} maximizing sum rate
1. Initialize Bk\mathbf{B}_k (e.g., matched filter: Bk=P/Kβ‹…HkH/βˆ₯Hkβˆ₯\mathbf{B}_k = \sqrt{P/K} \cdot \mathbf{H}_{k}^{H} / \|\mathbf{H}_{k}\|)
2. Repeat until convergence:
a. MMSE receive filters: For each kk,
Gk=BkHHkH(βˆ‘jHkBjBjHHkH+Οƒk2I)βˆ’1\mathbf{G}_k = \mathbf{B}_k^H \mathbf{H}_{k}^{H} \left( \sum_j \mathbf{H}_{k} \mathbf{B}_j \mathbf{B}_j^H \mathbf{H}_{k}^{H} + \sigma^2_{k} \mathbf{I} \right)^{-1}
b. Weight matrices: For each kk,
Wk=(Iβˆ’GkHkBk)βˆ’1\mathbf{W}_k = (\mathbf{I} - \mathbf{G}_k \mathbf{H}_{k} \mathbf{B}_k)^{-1}
c. Precoding update: Solve
Bk=(βˆ‘jHjHGjHWjGjHj+ΞΌI)βˆ’1HkHGkHWk\mathbf{B}_k = \left( \sum_j \mathbf{H}_{j}^{H} \mathbf{G}_j^H \mathbf{W}_j \mathbf{G}_j \mathbf{H}_{j} + \mu \mathbf{I} \right)^{-1} \mathbf{H}_{k}^{H} \mathbf{G}_k^H \mathbf{W}_k
where ΞΌ\mu is the Lagrange multiplier for βˆ‘kβˆ₯Bkβˆ₯F2≀P\sum_k \|\mathbf{B}_k\|_F^2 \leq P
3. Return {Bk}\{\mathbf{B}_k\}

The WMMSE algorithm operates directly on the BC (no need for MAC-BC duality). It converges to a stationary point, which for the sum-rate problem is the global optimum. The algorithm naturally extends to weighted sum-rate maximization, which traces out the Pareto boundary of the capacity region.

MIMO BC Capacity Region Boundary

Compute and visualize the capacity region boundary of a 2-user MIMO BC using iterative water-filling on the dual MAC. Adjust the number of transmit antennas and channel correlation to see how the region changes.

Parameters
4

Number of transmit antennas at the base station

20
0

Correlation between user channels (0 = independent, 1 = identical)

DPC vs. Linear Precoding: Sum-Rate Comparison

Compare the sum rate of DPC (optimal) with zero-forcing and MMSE precoding as a function of SNR for the MIMO BC. The gap shrinks at high SNR and with more antennas.

Parameters
4
2
30
⚠️Engineering Note

Computational Complexity in Practice

For a 5G NR base station with nt=64n_t = 64 antennas and K=16K = 16 users, computing the DPC capacity region via iterative water-filling requires roughly O(Knt3)β‰ˆ4Γ—106O(K n_t^3) \approx 4 \times 10^6 floating-point operations per iteration, with 20-50 iterations needed. This is feasible for offline analysis but too slow for real-time precoding at the sub-millisecond timescales of 5G scheduling.

Practical systems therefore use regularized zero-forcing (RZF) precoding: Bk=(βˆ‘jHjHHj+Ξ±I)βˆ’1HkH\mathbf{B}_k = \left(\sum_j \mathbf{H}_{j}^{H} \mathbf{H}_{j} + \alpha \mathbf{I}\right)^{-1} \mathbf{H}_{k}^{H} where Ξ±=KΟƒ2/P\alpha = K \sigma^2 / P is the regularization parameter. This closed-form solution requires only one matrix inversion (O(nt3)O(n_t^3)) and achieves within 1-2 dB of the DPC sum rate at moderate to high SNR.

Practical Constraints
  • β€’

    Iterative water-filling: 20-50 iterations, each O(Knt3)O(K n_t^3)

  • β€’

    WMMSE: 20-100 iterations, each O(Knt3)O(K n_t^3)

  • β€’

    RZF precoding: single matrix inversion, O(nt3)O(n_t^3)

  • β€’

    5G NR slot duration: 0.5 ms β€” precoder must be computed within this window

Common Mistake: Local vs. Global Optima in BC Optimization

Mistake:

Assuming that any iterative algorithm for the BC sum-rate problem will converge to the global optimum, regardless of initialization.

Correction:

The sum-rate maximization over BC covariances is generally non-convex. However, the WMMSE algorithm with proper alternating updates converges to a stationary point, which for the sum-rate problem (not weighted sum-rate in general) coincides with the global optimum due to the hidden convexity via MAC-BC duality. For weighted sum-rate problems with arbitrary weights, multiple initializations may be needed.

Iterative water-filling

A block coordinate ascent algorithm for computing the sum capacity of the MIMO MAC (or, via duality, the MIMO BC). Each iteration optimizes one user's covariance matrix while holding the others fixed, using water-filling over the effective channel seen through the interference.

Related: Ergodic Capacity with Full CSI (Water-Filling), Block coordinate ascent

WMMSE (Weighted Minimum Mean Square Error)

An algorithmic framework that reformulates rate maximization as an equivalent MMSE minimization, enabling alternating convex optimization. Each iteration updates receive filters, weight matrices, and transmit precoders in sequence.

Related: MMSE estimation, Alternating optimization

Quick Check

Why is the iterative water-filling algorithm applied to the dual MAC rather than directly to the BC?

The MAC sum-rate is a concave function of the covariances, making each subproblem convex

The MAC has fewer optimization variables

The MAC algorithm converges faster

Key Takeaway

The capacity region of the MIMO BC can be computed efficiently by solving the dual MAC problem (convex optimization via iterative water-filling) and then transforming the solution to the BC via the duality mapping. The WMMSE algorithm provides an alternative that operates directly on the BC. Both approaches converge to the global optimum for sum-rate maximization, and both can be extended to weighted sum-rate problems for tracing the full Pareto boundary.