• Nem Talált Eredményt

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) NM, 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=Hy (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−HsHˆs+Hˆsk2

Since ˆs is the unconstrained least-squares solution (y−Hˆs) =0, consequently, Eq.4.29 reduces to

ky−Hsk2 = (HˆsHs)T(HˆsHs)

= (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 Ni+ 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+1bufi+1(of fi+1)

14: if M(sNi+1)< d2 then .EvaluateM(sNi+1) and check ifsNi+1is inside the sphereS(y, d) 15: bufiExpand 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(sNsˆN)|2+|rN−1,N−1(sN−1sˆN−1) +rN−1,N(sNsˆN)|2+· · · (4.33) Thus, in the first interation the following inequality holds

sˆNd2

rN NsNsˆ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 sNSN 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=Hyand 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>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.