Pilot Assignment Algorithms

Pilot Assignment as a Design Variable

Given that pilot contamination cannot be entirely avoided in multi-cell systems, a natural question is: can the assignment of pilot sequences to users be optimized to minimize contamination?

The severity of pilot contamination between two users depends critically on their spatial covariance matrices R1,k\mathbf{R}_{1,k} and Rβ„“,k\mathbf{R}_{\ell,k}. If the covariance matrices are nearly orthogonal (users are in very different angular directions), the SINR floor is high. If they are nearly collinear (users in similar directions from their respective base stations), the floor is low.

Pilot assignment asks: given a set of users with known covariance matrices, which users should share pilots to maximize system-level performance?

Definition:

Pilot Contamination Metric

For users kk in cell 1 and kβ€²k' in cell β„“\ell, define the inter-cell pilot contamination coefficient:

ρk,kβ€²=βˆ₯R1,k1/2Rβ„“,kβ€²1/2βˆ₯F2βˆ₯R1,kβˆ₯Fβˆ₯Rβ„“,kβ€²βˆ₯F∈[0,1]\rho_{k,k'} = \frac{\|\mathbf{R}_{1,k}^{1/2}\mathbf{R}_{\ell,k'}^{1/2}\|_F^2} {\|\mathbf{R}_{1,k}\|_F \|\mathbf{R}_{\ell,k'}\|_F} \in [0, 1]

This measures the "overlap" between the two users' spatial covariance matrices. ρk,kβ€²=0\rho_{k,k'} = 0 means orthogonal covariance subspaces (no contamination impact). ρk,kβ€²=1\rho_{k,k'} = 1 means identical covariance structure (maximum contamination).

For the one-ring channel model, ρk,kβ€²\rho_{k,k'} is large when users have similar angles of arrival at their respective base stations (similar angular windows).

Greedy Pilot Assignment Algorithm

Complexity: O(Ktot2Ο„p)\mathcal{O}(K_{\text{tot}}^2 \tau_p)
Input: Users {1,…,Ktot}\{1,\ldots,K_{\text{tot}}\}, pilot pool size Ο„p\tau_p,
contamination metric ρk,kβ€²\rho_{k,k'} for all pairs
Output: Pilot assignment Ο•:{1,…,Ktot}β†’{1,…,Ο„p}\phi: \{1,\ldots,K_{\text{tot}}\} \to \{1,\ldots,\tau_p\}
1. Sort users by channel strength (largest tr(Rk)\text{tr}(\mathbf{R}_k) first)
2. Assign pilot 1 to first user (arbitrary starting point)
3. for each remaining user kk in sorted order do
4. for each pilot p=1,…,Ο„pp = 1,\ldots,\tau_p do
5. Compute cost C(k,p)=βˆ‘j:Ο•(j)=pρk,jC(k, p) = \sum_{j: \phi(j)=p} \rho_{k,j} // contamination if kk uses pilot pp
6. end for
7. Assign Ο•(k)=arg⁑min⁑pC(k,p)\phi(k) = \arg\min_p C(k, p) // Least contaminating pilot
8. end for
9. return Ο•\phi

Greedy assignment is suboptimal in general but runs in polynomial time and gives good practical results. The optimal assignment minimizing total contamination is an NP-hard combinatorial optimization (related to graph coloring).

Graph-Coloring Pilot Assignment

Complexity: O(Ktot2)\mathcal{O}(K_{\text{tot}}^2) for graph construction, O(Ktot+∣E∣)\mathcal{O}(K_{\text{tot}} + |E|) for coloring
Input: Users {1,…,Ktot}\{1,\ldots,K_{\text{tot}}\}, contamination threshold ρmin⁑\rho_{\min},
pilot pool size Ο„p\tau_p
Output: Pilot assignment Ο•\phi
Step 1: Build contamination graph G=(V,E)G = (V, E)
1. Nodes VV: all users across all cells
2. Edge (k,kβ€²)(k, k') if ρk,kβ€²>ρmin⁑\rho_{k,k'} > \rho_{\min} // high contamination pair
Step 2: Color graph with Ο„p\tau_p colors
3. Apply greedy graph-coloring with Ο„p\tau_p colors:
4. for each node vv in decreasing degree order do
5. Assign smallest color not used by any neighbor of vv
6. end for
Step 3: Assign pilots
7. Map color c(k)c(k) to pilot sequence Ο•(k)=c(k)\phi(k) = c(k)
8. return Ο•\phi
Note: If graph needs more than Ο„p\tau_p colors, increase Ο„p\tau_p or relax ρmin⁑\rho_{\min}

The graph-coloring interpretation makes pilot assignment equivalent to proper graph coloring: users connected by high-contamination edges should receive different colors (pilot sequences). The chromatic number of the graph gives the minimum pilot pool size needed to avoid severe contamination.

Example: Pilot Assignment in a Three-Cell System

Three cells each have K=2K = 2 users. The contamination metrics are: ρ1,3=0.9\rho_{1,3} = 0.9 (user 1 cell 1 and user 3 cell 2 are highly contaminated), ρ2,4=0.8\rho_{2,4} = 0.8 (user 2 cell 1 and user 4 cell 2 are moderately contaminated), ρ1,5=0.1\rho_{1,5} = 0.1, ρ2,6=0.15\rho_{2,6} = 0.15 (cell 3 causes little contamination). Available pilots: Ο„p=2\tau_p = 2. Find the greedy assignment.

SINR vs. Pilot Reuse Factor

Compare per-user SINR for different pilot reuse strategies: universal reuse (all cells share the same pilot pool), partial reuse (pilot pools are partially disjoint), and fractional reuse. Tradeoffs appear between spectral efficiency per user and pilot overhead.

Parameters
1
7
64
10

Pilot Assignment Algorithm Comparison

MethodComplexityOptimalityRequires Rk\mathbf{R}_k?Scalable?
RandomO(1)\mathcal{O}(1)PoorNoYes
Greedy (sum contamination)O(K2Ο„p)\mathcal{O}(K^2\tau_p)Near-optimal in practiceYesYes
Graph coloringO(K2+K∣E∣)\mathcal{O}(K^2 + K|E|)Good structural guaranteeYes (threshold)Yes
Optimal (exhaustive)O(Ο„pK)\mathcal{O}(\tau_p^K)OptimalYesNo (K>15K > 15)
Hungarian algorithm (matching)O(K3)\mathcal{O}(K^3)Optimal for 2-cellYesModerate
,

Common Mistake: Pilot Assignment Must Be Adaptive

Mistake:

Once pilots are assigned at system startup, they can remain fixed indefinitely.

Correction:

Optimal pilot assignment depends on the covariance matrices Rk\mathbf{R}_k, which evolve as users move. A user who was at the cell edge (high contamination) may move to a region with a very different angular spectrum β€” changing its contamination profile with neighboring cells.

Pilot assignment should be updated whenever the large-scale fading coefficients change significantly, typically every 10–100 ms for pedestrian users and every 1–5 ms for vehicular users. In practice, 5G NR supports semi-persistent SRS configurations that can be updated by RRC reconfiguration, but the mechanism for dynamic pilot assignment based on covariance estimates is still an active research area.

πŸ”§Engineering Note

SRS Resource Management in 5G NR

In 5G NR, the SRS (sounding reference signal) plays the role of uplink pilots for channel reciprocity estimation. The gNB assigns SRS resources (time-frequency location within the SRS occasion) to UEs via RRC configuration. Unlike the academic models studied here, 5G NR does not currently include a standardized algorithm for covariance-aware pilot (SRS) assignment β€” this is left to gNB implementation.

Commercial gNBs typically assign SRS resources based on cell load and UE scheduling priority rather than spatial covariance structure. Research shows 1–3 dB gain from covariance-aware assignment in dense urban scenarios, but this requires accurate covariance estimation and frequent updates.

Practical Constraints
  • β€’

    5G NR SRS: up to 8 orthogonal SRS sequences per resource set (TS 38.211, Section 6.4.1.4.2)

  • β€’

    Pilot reuse across cells not specified in 3GPP β€” implementation-specific

  • β€’

    Covariance matrix dimensions scale as Nt2N_t^2: at Nt=128N_t = 128, storing Rk\mathbf{R}_k costs 256 KB per user

πŸ“‹ Ref: 3GPP TS 38.211, Section 6.4.1.4

Key Takeaway

Good pilot assignment can raise the contamination floor significantly. By assigning pilots so that users with heavily overlapping spatial covariance matrices receive orthogonal pilots, contamination is shifted to user pairs with nearly orthogonal spatial signatures. Greedy and graph-coloring algorithms provide practical, near-optimal assignment at polynomial cost. However, assignment alone cannot eliminate contamination entirely when the total user count exceeds the pilot pool β€” decontamination via covariance subspace structure (Section 5) is needed.