4.6 Maximum likelihood tree-search based detectors
4.6.1 The Sphere Detector algorithm
4.6.1.1 General description of the Sphere Detector algorithm
In the following it is assumed that (i) N ≤M, i.e., the number of receive antennas is greater or equal to the number of transmit antennas, and (ii) the channel matrix has full rank. Furthermore, it is assumed that perfect CSI is available at the receiver. The unconstrained least-squares solution of the equivalent real-valued system is defined as
ˆs=H†y (4.27)
DOI:10.15774/PPKE.ITK.2015.010
4.6. MAXIMUM LIKELIHOOD TREE-SEARCH BASED DETECTORS
where H†= (HHH)−1HH is the Moore–Penrose pseudoinverse of the channel matrix.
Applying QR factorization to the real channel matrix H=QR, the ML solution from Eq. 4.26 can be rearranged as
sM L= arg min
where matrix Q is orthogonal and matrix R upper triangular. In order to arrive to Eq.
4.28 the following expansion has to be considered ky−Hsk2=ky−Hs−Hˆs+Hˆsk2
Since ˆs is the unconstrained least-squares solution (y−Hˆs) =0, consequently, Eq.4.29 reduces to
ky−Hsk2 = (Hˆs−Hs)T(Hˆs−Hs)
= (s−ˆs)THTH(s−ˆs)
(4.30)
The lattice pointHsis included by the sphereS(y, d) with center pointyand radius dif the following inequality is satisfied
kR(s−ˆs)k2 6d2 (4.31)
Instead of evaluating all possible symbol combinations the upper triangular property of matrix R is exploited and a recursion is defined based on the dependency hierarchy
DOI:10.15774/PPKE.ITK.2015.010
4.6. MAXIMUM LIKELIHOOD TREE-SEARCH BASED DETECTORS
of the terms.
In order to obtain a deeper insight, letsNi ,(si, si+1,· · · , sN)T, referred to as partial symbol vector, denote the last N −i+ 1 components of the vectors and let
M(sNi ) =
define the path metric of sNi . The recursion starts at levelN and a solution candidate is found when the first level is reached. In every iteration a partial symbol vector sNi is expanded. During theexpansion one symbolsi−1 ∈Ω is selected from the symbol set and it is added to the partial symbol vector as follows sNi−1 = (si−1, si,· · ·, sN) = (si−1,sNi ).
The evaluation of the new partial symbol vector sNi−1 is the computation of the path metric M(sNi−1). If the conditions are met, namely, when M(sNi−1) < d2, a new symbol si−2 ∈ Ω has to be selected for the next dimension. If not, then the previously chosen symbol si−1 is discarded and a new symbol for the same level is chosen from the signal set.
A possible solution is found if a complete symbol vector sN1 satisfies the condition M(sN1 )< d2. The solution with the smallest metric is the ML solution. If a too small initial radius is chosen so that a solution is not found, the process has to be restarted with a higher radius.
Based on the above description of the SD algorithm an analogy with bounded tree search can be found. The partial symbol vectors sNi can be regarded as tree nodes at level i. The symbol vectors sN1 are the leaves of the tree and the weight of each node is defined by the symbol vector metricM(sNi ). The continuous change of the partial symbol vectorsNi is analogous to a DFS. The condition given in Eq. 4.31 can be regarded as the bounding criteria.
In Alg. 2 the pseudo-code of a SD algorithm is presented where a DFS is implemented with a simplified enumeration strategy which is similar to the Fincke-Phost enumeration presented in [66]. The main difference is that while the bounding interval is updated after every node expansion in [66], in Alg. 2 the bounding parameter is the radius of the sphere and it is updated only when a new leaf with lower path metric is found. The variables and the three main procedures implement the same functionality in both sequential and parallel algorithms.
Fig. 4.4 shows a possible traversal of the tree, where the size of the symbol set|Ω|= 4 and the depth of the tree is 4. This configuration belongs to a system where two receive
DOI:10.15774/PPKE.ITK.2015.010
4.6. MAXIMUM LIKELIHOOD TREE-SEARCH BASED DETECTORS
Algorithm 2 Sphere Detector algorithm for estimating sM L= (s1, s2,· · · , sN)
Require: ˆs,R,|Ω|
1: procedureDefinition and Initialization of Variables 2: forj= 1toN do
3: evalj← |Ω| .Number of partial symbol vector evaluations on level j after a node expansion 4: bufj[evalj] ={} .Denotes an empty buffer of sizeevalj for levelj
10: procedureTraversal Process(i) 11: whilei < N do
12: if of fi+1< evali+1then 13: sNi+1←bufi+1(of fi+1)
14: if M(sNi+1)< d2 then .EvaluateM(sNi+1) and check ifsNi+1is inside the sphereS(y, d) 15: bufi←Expand and Evaluate(sNi+1) .Expand partial symbol vectorsNi+1 of the
tree and updatebufi
16: if i= 1then
17: Find symbol vectors0M Linbuf1with minimum path metric 18: d2temp← kR(s0M L−ˆs)k2
32: procedureExpand and Evaluate(sNi ) .The input is the partial symbol vector to be expanded 33: forj= 0 to|Ω| −1do
34: if sNi = ()then .When expanding the root node the partial symbol vector is empty 35: sNN←Ω[j]
4.6. MAXIMUM LIKELIHOOD TREE-SEARCH BASED DETECTORS
Figure 4.4: Branch and bound search with the Sphere Detector algorithm.
antennas were used. The crosses denote invalid partial symbol vectors, because their metric is higher than the radius.
4.6.1.2 The Fincke-Phost and Schnorr-Euchner enumeration strategies
In order to exploit the advantage of the search space reduction, a good enumeration strategy is needed. In [61] the main enumeration strategies are presented and compared in a unified framework. In [69] Pohst proposed an efficient way of enumerating lattice points inside a sphere. Pohst’s method was first implemented in digital communications by Viterbo and Biglieri [70]. Important speedups have been achieved by Schnorr and Euchner [67] by refining the Pohst method. Agrel et al. in [61] showed that the Schnorr-Euchner (SE) strategy can be efficiently used for CLPS. The main difference of these methods is the enumeration of the lattice points and the validity interval definition for every dimension. In the followings the two widely used techniques: (i) the Fincke-Phost (FP) and the SE enumerations are presented.
Fincke-Phost enumeration In case of the FP enumeration a validity interval I is calculated for every dimension based on the previously chosen symbols. The symbols S = I ∩Ω are expanded and evaluated starting from the lower bound of the interval.
Based on Eq. 4.31 it is possible to write
d2 ≥ |rN N(sN−sˆN)|2+|rN−1,N−1(sN−1−sˆN−1) +rN−1,N(sN −sˆN)|2+· · · (4.33) Thus, in the first interation the following inequality holds
sˆN− d2
rN N ≤sN ≤sˆN + d2
rN N. (4.34)
DOI:10.15774/PPKE.ITK.2015.010
4.6. MAXIMUM LIKELIHOOD TREE-SEARCH BASED DETECTORS
The validity interval IN of the first iteration is defined as IN =
The first symbol that is evaluated is the smallest element of the intesectionSN =IN∩Ω.
After selecting sN ∈SN the next intervalIN−1 is further reduced because in the N −1 dimension there are two non-zero terms and the new symbol sN−1 has to satisfy the following inequality is computed. In case if SN−1 is not empty the expansion and evaluation continues with the enumeration of the elements from the smallest to the biggest, contrary the next ˜sN element is evaluated. Note, the validity interval is constantly changing depending on the chosen symbols and dimension.
Schnorr-Euchner enumeration The SE enumeration builds on the Babai estimate.
The Babai estimateˆsB is found by computing the unconstrained least-squares solution ˆs=H†yand applying the slicing operator to itˆsB=bˆse. The slicing operator slices every element ofˆsto the nearest valid symbol. As a result, the search starts with the elements of the Babai estimate. Assuming that the Euclidean distance between the symbols is one, the enumeration strategy is defined as follows:
• if ˆsk≤ bˆske the enumeration order is
sk =bˆske,bˆske −1,bˆske+ 1,bˆske −2,· · ·
• if ˆsk>bˆske the enumeration order is
sk =bˆske,bˆske+ 1,bˆske −1,bˆske+ 2,· · ·
The conclusion of the above discussion is that the SE zigzag enumeration has several advantages over the FP enumeration.
• No initial radius is required to start the algorithm. The first leaf node found will be
DOI:10.15774/PPKE.ITK.2015.010
4.6. MAXIMUM LIKELIHOOD TREE-SEARCH BASED DETECTORS
the Babai estimate and the radius can be updated tod2 =ky−HˆsBk2. Afterwards, if a better solution is found the radius is further reduced.
• There is no need to define validity intervals after every node expansion. If the se-lected symbol is outside the sphere the following symbols can be discarded because the difference of the selected symbolskand ˆsk will constantly increase with the SE enumeration.
• The zigzag enumeration assures that the chance of finding the correct symbol early is maximized.