The MIMO Detection Problem

Why MIMO Detection Is Hard

A MIMO receiver sees a linear superposition of symbols, each drawn from a discrete constellation. The channel mixes them; the noise perturbs them. The receiver must untangle the mixture and snap each component back onto its finite alphabet. If the alphabet were continuous, least squares would suffice. Because it is discrete, the problem becomes combinatorial β€” and, in its exact form, as hard as the closest-vector problem in a general lattice. The story of MIMO detection is the story of trading complexity for accuracy along that discrete-continuous divide.

Definition:

MIMO Detection Model

Consider a narrowband point-to-point MIMO link with ntn_t transmit and nrn_r receive antennas. At a single channel use the received vector is y=Hx+w,H∈CnrΓ—nt,x∈Ant,w∼CN(0,Οƒ2Inr).\mathbf{y} = \mathbf{H}\mathbf{x} + \mathbf{w}, \qquad \mathbf{H} \in \mathbb{C}^{n_r \times n_t}, \quad \mathbf{x} \in \mathcal{A}^{n_t}, \quad \mathbf{w} \sim \mathcal{CN}(\mathbf{0}, \sigma^2 \mathbf{I}_{n_r}). The constellation AβŠ‚C\mathcal{A} \subset \mathbb{C} is a finite set of unit-energy symbols (e.g., QPSK, 16-QAM). Assuming the receiver knows H\mathbf{H} (pilot-based channel estimation; see Chapter 8), the MIMO detection problem is to produce an estimate x^∈Ant\hat{\mathbf{x}} \in \mathcal{A}^{n_t} of the transmitted vector.

In this chapter we hold H\mathbf{H} fixed and known. Joint estimation of H\mathbf{H} and x\mathbf{x} (blind / semi-blind detection) is a different beast entirely.

Definition:

Maximum-Likelihood MIMO Detector

With equiprobable symbols and white Gaussian noise, the maximum-likelihood detector minimizes the Euclidean distance between the observation and the noise-free hypothesis: x^ML=arg⁑min⁑x∈Antβˆ₯yβˆ’Hxβˆ₯2.\hat{\mathbf{x}}_{\text{ML}} = \arg\min_{\mathbf{x} \in \mathcal{A}^{n_t}} \|\mathbf{y} - \mathbf{H}\mathbf{x}\|^2. The minimization is over a discrete set of size ∣A∣nt|\mathcal{A}|^{n_t}.

The ML detector minimizes the symbol-vector error probability. It does NOT minimize the per-symbol (bit) error rate β€” for that, one needs the max-marginal (MAP) detector.

Theorem: Exponential Complexity of Exact ML Detection

Computing x^ML\hat{\mathbf{x}}_{\text{ML}} by exhaustive search over Ant\mathcal{A}^{n_t} requires ∣A∣nt|\mathcal{A}|^{n_t} evaluations of the metric βˆ₯yβˆ’Hxβˆ₯2\|\mathbf{y} - \mathbf{H}\mathbf{x}\|^2. Moreover, the problem of deciding whether a given vector is the closest lattice point is NP\mathcal{NP}-hard in the worst case.

The search space is a discrete product of constellations. Each additional transmit antenna multiplies the number of candidates by ∣A∣|\mathcal{A}|. For 4Γ—44\times 4 16-QAM we face 164=65,53616^4 = 65{,}536 candidates per channel use β€” already too many for real-time hardware at Gbps rates.

Key Takeaway

MIMO detection is a discrete inverse problem: recover a finite-alphabet vector from a linear noisy mixture. The channel matrix H\mathbf{H} plays two roles simultaneously β€” it is both the regressor that constrains the estimate and the basis of a lattice whose geometry determines how hard the discrete search is.

Why This Matters: MIMO Detection in 5G NR

A 5G NR gNB running 4-layer spatial multiplexing with 256-QAM faces 2564β‰ˆ4.3Γ—109256^4 \approx 4.3 \times 10^9 candidate vectors per resource element. With 14 OFDM symbols, 273 PRBs, and thousands of REs per slot, brute-force ML is categorically impossible. Real basestations combine MMSE-SIC with list detection and soft-output iteration with the LDPC decoder. The latency budget β€” under 1 ms for URLLC β€” shapes every algorithmic choice.

See full treatment in The Restricted Isometry Property

ML Detection Complexity Grows Exponentially

Number of candidate vectors ∣A∣nt|\mathcal{A}|^{n_t} as a function of ntn_t for different constellation sizes. Note the logarithmic vertical axis.

Parameters
8

Common Mistake: ML Vector Detection vs. Per-Bit MAP

Mistake:

One assumes the ML detector minimizes BER because it is "optimal."

Correction:

The ML detector minimizes the vector (symbol-block) error probability, not the bit error rate. A single symbol flip can corrupt many bits if the constellation is not Gray-coded. For minimum BER one should compute per-bit posterior probabilities via the max-marginal (bit-MAP) detector, which marginalizes rather than jointly minimizes. The distinction matters most at low SNR and for high-order constellations; at high SNR the two detectors are practically indistinguishable.

Example: 2Γ—22 \times 2 ML Detection by Exhaustive Search

With H=[10.60.30.9]\mathbf{H} = \begin{bmatrix} 1 & 0.6 \\ 0.3 & 0.9 \end{bmatrix}, QPSK alphabet A={Β±1Β±j}/2\mathcal{A} = \{\pm 1 \pm j\}/\sqrt{2}, and observation y=[0.85, 0.70]T\mathbf{y} = [0.85,\, 0.70]^T, compute x^ML\hat{\mathbf{x}}_{\text{ML}}. Assume the noise is negligible and report the minimizer of βˆ₯yβˆ’Hxβˆ₯2\|\mathbf{y} - \mathbf{H}\mathbf{x}\|^2.

Historical Note: The Birth of MIMO Detection

1995–2005

The MIMO channel model crystallized in the mid-1990s in two landmark papers: Telatar's information-theoretic analysis (1995, published 1999) established capacity, and Foschini's D-BLAST / V-BLAST architectures (1996, 1998) turned the capacity promise into a detection algorithm. Exact ML was recognized as infeasible from the start; the intellectual history of MIMO detection is the successive refinement of good suboptimal replacements, each exploiting a little more of the linear algebra or the lattice geometry than the previous one.

MIMO Detection

The task of recovering a finite-alphabet vector x∈Ant\mathbf{x} \in \mathcal{A}^{n_t} from y=Hx+w\mathbf{y} = \mathbf{H}\mathbf{x} + \mathbf{w} given the channel H\mathbf{H} and the noise statistics.

Related: Maximum Likelihood, Closest Vector Problem

Quick Check

For nt=6n_t = 6 transmit antennas and 16-QAM, how many candidates does exact ML detection enumerate per channel use?

16β‹…6=9616 \cdot 6 = 96

6166^{16}

166=16,777,21616^{6} = 16{,}777{,}216

6!β‹…16=11,5206! \cdot 16 = 11{,}520

MIMO System Model Block Diagram

MIMO System Model Block Diagram
An ntn_t-antenna transmitter sends a symbol vector x∈Ant\mathbf{x} \in \mathcal{A}^{n_t} through a matrix channel H∈CnrΓ—nt\mathbf{H} \in \mathbb{C}^{n_r \times n_t}; the nrn_r-antenna receiver observes y=Hx+n\mathbf{y} = \mathbf{H}\mathbf{x} + \mathbf{n} with AWGN n\mathbf{n}. The detector's task is to recover x\mathbf{x} from (y,H)(\mathbf{y},\mathbf{H}).