• No results found

A Preprocessing Algorithm Applicable to the Multiuser Detection Problem

N/A
N/A
Protected

Academic year: 2021

Share "A Preprocessing Algorithm Applicable to the Multiuser Detection Problem"

Copied!
8
0
0

Loading.... (view fulltext now)

Full text

(1)A Preprocessing Algorithm Applicable to the Multiuser Detection Problem. Daniel Axehill, Fredrik Gunnarsson, Anders Hansson Division of Automatic Control Department of Electrical Engineering Link¨opings universitet, SE-581 83 Link¨oping, Sweden WWW: http://www.control.isy.liu.se E-mail: daniel@isy.liu.se, fred@isy.liu.se, hansson@isy.liu.se 14th December 2005. OMATIC CONTROL AUT. CO MM U MS NICATION SYSTE. LINKÖPING. Report no.: LiTH-ISY-R-2716 Submitted to RadioVetenskap och Kommunikation 2005 Technical reports from the Control & Communication group in Link¨oping are available at http://www.control.isy.liu.se/publications..

(2) Abstract In this paper a preprocessing algorithm for binary quadratic programming problems is presented. For some types of binary quadratic programming problems, the algorithm can compute the optimal value for some or all integer variables without approximations in polynomial time. When the optimal multiuser detection problem is formulated as a maximum likelihood problem, a binary quadratic programming problem has to be solved. Fortunately, the low correlation between different users in the multiuser detection problem enables the use of the preprocessing algorithm. Simulations show that the preprocessing algorithm is able to compute almost all variables in the problem, even though the system is heavily loaded and affected by noise.. Keywords: CDMA, Gold sequences, multiuser detection, polynomial complexity, binary quadratic programming.

(3) A PREPROCESSING ALGORITHM APPLICABLE TO THE MULTIUSER DETECTION PROBLEM∗ Daniel Axehill, Fredrik Gunnarsson and Anders Hansson Division of Automatic Control, Department of Electrical Engineering, Link¨oping University, SE-581 83 Link¨oping, Sweden, {daniel,fred,hansson}@isy.liu.se. ABSTRACT In this paper a preprocessing algorithm for binary quadratic programming problems is presented. For some types of binary quadratic programming problems, the algorithm can compute the optimal value for some or all integer variables without approximations in polynomial time. When the optimal multiuser detection problem is formulated as a maximum likelihood problem, a binary quadratic programming problem has to be solved. Fortunately, the low correlation between different users in the multiuser detection problem enables the use of the preprocessing algorithm. Simulations show that the preprocessing algorithm is able to compute almost all variables in the problem, even though the system is heavily loaded and affected by noise.. 1. INTRODUCTION Multiuser detection is the process to demodulate multiple users sharing a common multi-access channel. A first approach is to demodulate each user independently and treat the signal from other users as additive Gaussian noise, [14]. An improvement to this strategy is to use the known correlation between users in the demodulation process. Better performance can be achieved if the detector makes the most likely decision, which formally is achieved by solving a so-called Maximum Likelihood (ML) problem. When the optimum multiuser detection problem is cast on the form of an ML problem it requires the solution of a so-called Binary Quadratic Programming (BQP) problem. Unfortunately, these problems are generally known to be N P-hard, [7]. If the signature waveform produces a cross-correlation matrix with some special structures, the problem can sometimes turn out to have lower complexity, [15, 12, 13]. Many contributions to the area of multiuser detection have already been published. The objective has been to find an algorithm which solves the multiuser detection problem in reasonable time in order to make a real-time implementation possible. So far, this has been done either by restricting the class of possible cross-correlation matrices or by employing some sub-optimal procedure. In [15], an algorithm with polynomial complexity has been derived for systems with only negative cross-correlations. A similar requirement on the cross-correlation matrix is found in [12], where the multiuser detection problem is solved with a polynomial complexity algorithm if the cross-correlation between the users are non-positive. Another paper also dealing with a special class of cross-correlations is [13], where a polynomial complexity algorithm is derived for the case of identical, or a few different, cross-correlations between the users. Thorough work in the field of approximate algorithms for multiuser detection is found in ∗ The research has been supported by the Swedish Research Council for Engineering Sciences under contract Nr. 621-2002-3822.. [14]. Several different algorithms, optimal as well as suboptimal, are presented and evaluated in [5]. The suboptimal algorithm local search is evaluated in [6]. Branch and bound methods are investigated in [10]. Another near optimal approach is presented in [8]. Also the well-known Kalman filter has been applied to the problem. This approach is presented in [9]. In this paper, a preprocessing algorithm with polynomial complexity for the BQP problem is derived. A preprocessing algorithm is an algorithm which processes the optimization problem in the step previous to the one when the actual solver is applied. Because the preprocessing algorithm executes in polynomial time and the BQP solver, generally, executes in exponential time, the required CPU time can be reduced if optimal variables can be detected already in the preprocessing step. In [1], the algorithm has previously been successfully applied to Model Predictive Control (MPC) for systems including binary variables. When the algorithm is applied to the multiuser detection problem, it not only works as a preprocessing algorithm, but it also shows some important properties of the solution to the problem. Most algorithms involved when solving BQP problems either focus on producing approximative solutions or only on handling various special cases of the general problem, [3]. The algorithm presented in this paper belongs to the latter type of algorithms. Some approximative heuristic algorithms can be found in, e.g., [7], [2], [11] and [4].. 2. THE BQP PROBLEM In this paper a BQP problem without any constraints is considered. First, a BQP problem with no linear term is studied ( min xT Hx x P1 : (1) n subject to x ∈ {0, 1} b where H ∈ Rnb ×nb is symmetric. Thereafter, the result is extended to a BQP problem of the form ( 1 T T min 2 x Hx + f x x (2) P2 : n subject to x ∈ {0, 1} b where a linear term has been incorporated in the objective function. For what follows it is practical to define H = Hd + H + + H −. (3). where Hd,ij. ( Hij , i = j = 0, i= 6 j. + = max(0, Hij − Hd,ij ) Hij − = min(0, Hij − Hd,ij ) Hij. (4).

(4) 3. SYNCHRONOUS CDMA In this section, the synchronous CDMA model is presented. It is also shown how the multiuser detection problem can be formulated as a BQP problem. 3.1. System Model In this paper a CDMA channel for K simultaneous users is considered. The symbol length is assumed to be T seconds. Each user is assigned a certain signature sequence, a so-called chip sequence. The chip sequence is a sequence consisting of N chips, each taking a value from {−1, +1}. The constant N is known as the spreading factor, spreading gain or processing gain, [16]. The notation used in this text has been chosen similar to the one used in [16]. The K-user channel consists of the sum of K antipodally modulated synchronous signature waveforms embedded in additive white Gaussian noise y(t) =. K X. Ak bk sk (t) + σn(t), t ∈ [0, T ]. (5). matched filters, where the output from filter k can be written as Z T. y(t)sk (t)dt. yk =. (9). 0. Using (5), (6) and (7), (9) can be equivalently expressed as yk = Ak bk +. X. Aj bj ρjk + nk. (10). j6=k. where nk = σ. Z. T. n(t)sk (t)dt ∈ N (0, σ 2 ). (11). 0. Using vector notation, this can be written more compactly as y = RAb + n (12) where R is the normalized cross-correlation matrix and y = [y1 , ..., yK ]T. k=1. b = [b1 , ..., bK ]T A = diag{A1 , ..., AK }. where • sk (t) is the deterministic signature waveform assigned to user k, normalized to have unit energy, i.e.. (13). (6). Furthermore, the unnormalized cross-correlation matrix is denoted as H = ARA (14). Because the waveforms are assumed to be zero outside the interval [0, T ], there is no inter-symbol interference.. Because only the synchronous case is treated in this paper, no inter-symbol interference will occur. Hence, it is only necessary to look at one time instant and therefore no time index on y, b or n is necessary.. ksk k2 =. Z. T. s2k (t)dt = 1. 0. • Ak is the received amplitude of the signal from user k, and therefore, A2k is referred to as the energy of user k. • bk ∈ {−1, +1} is the data bit transmitted by user k. • n(t) is white Gaussian noise with unit power spectral density.. 3.2. Derivation of the BQP Problem The matched filter output is described by equation (12). According to [16], the bits most likely sent by the users are given by the solution b to the optimization problem  !2  Z T K X 1 bk Ak sk (t) dt y(t) − max exp − 2 b 2σ 0 k=1. The similarity of different signature waveforms is expressed in terms of the cross-correlation defined by ρij = hsi , sj i =. Z. (15). Alternatively, it is equivalent to maximize. T. si (t)sj (t)dt. (7). Ω(b) = 2. 0. From (6), (7) and Cauchy’s inequality it follows that − |ρij | = |hsi , sj i| ≤ ksi kksj k = 1. (8). Z. T. 0 T. The normalized cross-correlation matrix R = {ρij } has ones in the diagonal and is symmetric nonnegative definite, [16]. If ρij = 0 whenever i 6= j, the signature sequences are orthogonal. In this paper non-orthogonal sequences have been used and these usually give low crosscorrelation for all possible non-zero offsets. Common choices of such sequences are Gold sequences and Kasami sequences. At the receiver, the signal y(t) in (5) is received. After the reception, the procedure of despreading begins. Here the low cross-correlation between the different signature sequences is useful. The despreading is performed by K. ". Z. T 0. K X. ". K X. #. Ak bk sk (t) y(t)dt. k=1. #2. Ak bk sk (t). k=1. (16) dt. = 2b Ay − bT Hb where A, H, b and y are defined in (13) and (14). By altering the sign of the objective and dividing it by two, the optimization problem can be rewritten as an equivalent minimization problem 1 min bT Hb − y T AT b b 2. (17). where b ∈ {−1, +1}K . After a variable substitution, this problem can be identified as a BQP problem on the form P2 ..

(5) 4. PREPROCESSING FOR THE BQP PROBLEM. It now follows that. The BQP problem to be solved is a pure combinatorial problem. The algorithm presented in this section makes it possible to speed up the solution of BQP problems having large diagonal elements compared to the non-diagonal elements. For each binary variable the algorithm delivers one out of three possible results: 1 is the optimal value, 0 is the optimal value or nothing can be said for sure. The preprocessing algorithm is built upon the following theorem: Theorem 1 For a BQP problem of type P1 the optimal value of one or more components xi can be found in polynomial time if for some i ∈ {1, .., nb } any of the following conditions is fulfilled ( Pnb − Hii ≥ −2 j=1 (i) Hij Pnb + Hii < −2 j=1 Hij (ii). If any of the conditions (i) or (ii) is fulfilled for a certain value of i, the optimal value of xi is given by ( 0, if (i) holds xi = 1, if (ii) holds Proof: Consider the optimization problem P1 , where H is a symmetric nb × nb matrix. Denote the objective function by Q(x) and rewrite it as follows XX Q(x) = xT Hx = Hij xi xj (18) i. j. where xi , xj ∈ {0, 1}, ∀ i, j = {1, ..., nb }. For each i ∈ {1, ..., nb } the objective function Q(x) can be written on the form X Q(x) = Hii xi xi + 2xi Hij xj j6=i. + gi (x1 , x2 , ..., xi−1 , xi+1 , ..., xnb ) X = (Hii + 2 Hij xj )xi. (19). j6=i. + gi (x1 , x2 , ..., xi−1 , xi+1 , ..., xnb ). j6=i. (20) Note that hi is independent of xi . With this definition the objective function can be written as (21).  T Denote the optimal value of x with x∗ = x∗1 , ..., x∗nb . It is also convenient to make the following definitions h∗i = hi (x∗1 , x∗2 , ..., x∗i−1 , x∗i+1 , ..., x∗nb ), gi∗ = gi (x∗1 , x∗2 , ..., x∗i−1 , x∗i+1 , ..., x∗nb ). (22). gi∗. Unfortunately, h∗i is usually not known before the optimal  solution x∗1 , x∗2 , ..., x∗i−1 , x∗i+1 , ..., x∗nb is known. A solution to this problem is to try to make an estimate of h∗i . To simplify the notation, define  hi = max hi x (25) hi = min hi x. It now holds that hi ≤ h∗i ≤ hi . From this observation the following implications can be stated ( hi < 0 ⇒ h∗i < 0 (26) hi ≥ 0 ⇒ h∗i ≥ 0 By combining (24) and (26), the following conclusion can be drawn ( 0, hi ≥ 0 ∗ (27) xi = 1, hi < 0. From (4) and (20) it follows that hi = max hi = max(Hii + 2 x. x. = Hii + 2max x. X. Hij xj ). j6=i. X. Hij xj = Hii + 2. X. + Hij. (28). j. j6=i. where the last equality follows from the fact that the sign of Hij determines whether the optimal value of xj is 0 or 1. Analogously it follows that X − (29) Hij hi = min hi = Hii + 2 x. where gi is a function that is independent of xi and where the last equality follows from the fact that x2i = xi when xi ∈ {0, 1}. Define X hi (x1 , x2 , ..., xi−1 , xi+1 , ..., xnb ) = Hii + 2 Hij xj. Q(x) = hi (x1 , x2 , ..., xi−1 , xi+1 , ..., xnb )xi + gi (x1 , x2 , ..., xi−1 , xi+1 , ..., xnb ). ( gi∗ , if h∗i ≥ 0 + = min Q(x) = min ∗ ∗ x xi hi + gi , if h∗i < 0 (23) From (23) the conclusion can be drawn that ( 0, if h∗i ≥ 0 ∗ xi = (24) 1, if h∗i < 0 h∗i xi. j. Equation (27) can then finally be written on the desired form ( P P − − ≥ 0 ⇔ Hii ≥ −2 j Hij 0, Hii + 2 j Hij ∗ P P xi = + + 1, Hii + 2 j Hij < 0 ⇔ Hii < −2 j Hij (30) From (30) it is clear that the computational complexity of the tests (i) and (ii) is polynomial in the number of variables, i.e. in nb . Now the result is extended to problems of type P2 . Corollary 1 For a BQP problem of type P2 the optimal value of one or more components xi can be found in polynomial time if for some i ∈ {1, .., nb } any of the following conditions is fulfilled ( Pnb − Hii ≥ −2fi − 2 j=1 Hij (i) Pnb + Hii < −2fi − 2 j=1 Hij (ii).

(6) If any of the conditions (i) or (ii) is fulfilled for a certain value of i, the optimal value of xi is given by ( 0, if (i) holds xi = 1, if (ii) holds Proof: The result follows directly from Theorem 1 by recognizing the fact that   H + 2diag(f ) 1 T T T x (31) Q(x) = x Hx+f x = x 2 2 for xi ∈ {0, 1}.. 5. APPLICATION OF THE RESULTS TO SYNCHRONOUS CDMA In this section, it is shown how to apply the preprocessing algorithm derived in Section 4 to the BQP problem (17) and how the result can be interpreted. 5.1. Using Preprocessing In order to be able to apply the preprocessing algorithm, the optimization problem (17) has to rewritten on the BQP form P2 . Note especially the domain of the optimization variable x. In order to get an optimization problem with binary variables the following variable substitution is performed b = 2¯b − 1 (32) where ¯b ∈ {0, 1}K , b ∈ {−1, +1}K and 1 denotes a column vector with all elements equal to one. Using (32), neglecting constant terms and dividing by 4, the objective function in (17) can be rewritten as 1 ¯T ¯ ˜T ¯ b Hb + f b 2. (33). where. 1 1 f˜ = − H1 − Ay (34) 2 2 The problem is now on the form P2 , on which preprocessing can be performed. 5.2. From Theorem to Algorithm When implementing the algorithm, the conditions in Corollary 1 are used. For each element in the vector x, the inequalities (i) and (ii) are tested. If any of the inequalities are fulfilled for a certain element, the optimal value of that element has been found. The optimal value of elements already calculated can be used in the following tests for other elements in order to tighten the upper and the lower bounds. If elements remain to be computed after all elements have been tested once, as long as at least one element was computed in the previous run it is possible to start over again and try to compute the remaining ones. This procedure is in this text referred to as the iterated implementation. When the preprocessing algorithm has terminated, another optimization method has to be applied to compute any remaining variables. Depending on the time available, the other method may be chosen to produce optimal solutions or sub-optimal solutions. References to such algorithms can be found in Section 1.. −. P. j6=i |Hij |. 0. P. j6=i |Hij |. Ai yi. Figure 1. The decision regions for the preprocessing algorithm, when the non-iterative implementation is used. The grey region shows the region where variable i cannot be computed by noniterative preprocessing.. 5.3. Interpretation of the Result Using the notation in the multiuser detection problem, the two conditions (i) and (ii) in the preprocessing algorithm can after simplification be written as ( P Ai yi ≤ − j6=i |Hij | (i) P (35) Ai yi > j6=i |Hij | (ii). From (32) and (35), it follows that the optimal choice of bi is given by ( −1, if (i) holds ∗ (36) bi = 1, if (ii) holds. An interpretation of the conditions is that the sum of the non-diagonal terms represents the maximum sum of interference energy possibly affecting user i. Because all terms in the sum always are positive, it can be interpreted as if all user sent the worst possible choice from {−1, +1}. If Ai yi is larger than this maximum known disturbance energy, then it is most likely that user i sent the symbol 1. Analogously, if Ai yi is smaller than the negative maximum known disturbance energy, then it is most likely that user i sent the symbol −1. This behavior seems reasonable since the noise is assumed to have zero mean. This decision strategy is illustrated in Figure 1. If (35) is investigated, it can be realized that a necessary property of the cross-correlation matrix to be able to successfully use the algorithm, is that the chip sequences give low cross-correlations between different users. This is typically the case for, e.g., Gold Sequences. Compared to previous optimal low complexity methods presented in [15, 12, 13], the algorithm presented in this paper does not introduce any requirements on the sign of the crosscorrelations or that the cross-correlations between users are equal.. 6. SIMULATIONS In this section, the preprocessing algorithm is applied to the multiuser detection problem and tested in Monte Carlo simulations. In the first simulations, the joint Bit Error Rate (BER) for the optimal detector implemented by using the preprocessing algorithm is compared to the joint BER of the conventional detector, [5], ˆbi = sign(y). (37). and to the joint BER of the decorrelating detector, [5], ˆbi = sign(H −1 y). (38). To be able to make a fair comparison only the variables computed by the preprocessing algorithm were used in the BER calculations for all methods in the comparisons. The tests were performed with Gold Sequences of length 128. The algorithms were compared for the loads 1 to 127.

(7) Percentage of variables possible to compute. BER 6 Max Min. 100. 5 4.5. 95. BER [%]. Computed variables [%]. Preprocessing Conventional Decorrelating. 5.5. 90. 85. 4 3.5 3 2.5 2. 80. 1.5 75. 20. 40 60 80 Load [number of users]. 100. 120. Average percentage of variables possible to compute. Computed variables [%]. 100. 99.99. 99.98. 99.97. 99.96. 99.95. 20. 40 60 80 Load [number of users]. 100. 120. Figure 2. The plots show how many percents of the variables that were computed by preprocessing for different loads. In the upper plot two curves are shown: The min-curve shows the lowest amount of computed variables during the 10000 simulations. The max-curve shows the greatest amount of computed variables during the simulations. In the lower plot, the average of the amount of computed variables over the 10000 realizations is shown. Note that the axises are different in the upper and in the lower plot.. users. Each load was tested 10000 times. In each test, a new noise realization and a new random bit was assigned to each user. In Figure 2 it can be noticed that the preprocessing algorithm computes nearly all variables in average. Even in the worst case, 75 % of the variables were computed. The next issue to verify is that the problem instances tested were not “trivial” in the sense that the existing lowest complexity algorithms also could compute them optimally. This verification is performed by calculating the average BER for the different methods during the Monte Carlo simulations. The result from this simulation is shown in Figure 3. In the test, the SNR for user 1 varied from 7 dB to 6.7 dB. The conclusion drawn from the simulation is that the optimal multiuser detector implemented by the preprocessing algorithm gives lower BER than the two other algorithms. Note that the plots for all three methods only includes bits possible to calculate with the preprocessing algorithm. The same plot also verifies that the iterated implementation of the algorithm, enables more “wise” decisions than the one only using a single iteration. In the non-iterated case, it follows from (35) that the optimal decision coincides with the decision taken by (37), in the region where variables can be computed by the preprocessing algorithm. The region where the solu-. 1. 20. 40 60 80 Load [number of users]. 100. 120. Figure 3. The plot shows the BER of the different methods as a function of the load when Gold sequences of length 128 are used. It can be seen that the optimal multiuser detector implemented by the preprocessing algorithm has the lowest BER. Only variables computed by the preprocessing algorithm are considered in the comparison.. tion from the algorithms coincide is the region outside the grey region in Figure 1. When the iterated implementation of the preprocessing algorithm is used it can sometimes be possible to decrease the size of the grey area for some variables in the problem. This means that in those cases more variables are possible to compute by preprocessing. The computational time is illustrated in Figure 4. The conventional detector (37) is not shown in the plot because its computational time is negligible in comparison with the other two. The conclusion is drawn that the computational complexity for the preprocessing algorithm is similar to the decorrelating detector (38). They seem to have similar complexities, but the preprocessing algorithm has a larger constant. It should be mentioned that the matrix inversion performed in (38) in Matlab is implemented much more efficiently than the preprocessing algorithm. E.g., by implementing the preprocessing algorithm in C, a significant reduction of the computational time is expected. The tests of the computational times were performed on a Sun UltraSPARC-IIe 500 MHz with 640 Mb RAM running SunOS 5.9 and Matlab 7.0.1. Gold sequences have very low cross-correlation. To test the algorithm as the cross-correlation increases, the cross-correlation matrix was manually modified. This was done by adding 0.01 − 0.6 in 60 equidistant steps to 16 symmetric off-diagonal elements (8 elements on each side of the diagonal). For each of the 60 steps, 10000 Monte Carlo simulations were performed. The test was performed for 100 users and the result from this simulation can be found in Figure 5. The number of variables possible to compute by preprocessing when the correlation is increased is illustrated by Figure 6.. 7. CONCLUSIONS In this paper a preprocessing algorithm for BQP problems has been derived. These problems are generally known to have exponential complexity. Due to the low crosscorrelation between the signature sequences, the BQP problem gets a special structure with small off-diagonal elements. This structure is exploited by the preprocessing algorithm and makes it possible to compute the optimal values of some, or all, of the optimization variables.

(8) Computational times 0.09 Preprocessing Decorrelating. 0.08. Computational time [s]. 0.07 0.06 0.05 0.04 0.03. REFERENCES. 0.02 0.01 0. 20. 40 60 80 100 Computed number of binary variables. 120. Figure 4. In the plot the computational time for preprocessing and the decorrelating detector are presented. To be able to make a fair comparison, the computational time shown for the decorrelating detector is only the time it takes to compute the variables computable by preprocessing. The conventional detector has significantly lower computational time and it has therefore been excluded from this plot.. BER Preprocessing Conventional Decorrelating. 3.5. BER [%]. 3. 2.5. 2. 1.5. 1. 0.1. 0.2 0.3 0.4 0.5 Extra correlation [Added amount]. 0.6. Figure 5. This figure shows BER as a function of the extra added off-diagonal correlation. Only variables solved by the preprocessing algorithm is presented in the comparison. The average number of variables solved for each added correlation is shown in Figure 6.. Percentage of variables possible to compute. Computed variables [%]. Max Min Average 100 95 90 85 80 75. in polynomial time. In the paper, the preprocessing algorithm has been successfully applied to the multiuser detection problem when signature sequences of Gold type have been used. The algorithm can be combined both with optimal and suboptimal optimization algorithms. Compared to previously presented low complexity optimal algorithms, the proposed algorithm does not demand any special care in the design of the signature sequences, except from the already existing desire that the cross-correlation should be chosen as low as possible.. 0.1. 0.2 0.3 0.4 0.5 Extra correlation [Added amount]. 0.6. Figure 6. In the plot the number of variables possible to solve for different modifications of the correlation is presented.. [1] Daniel Axehill and Anders Hansson. A preprocessing algorithm for MIQP solvers with applications to MPC. In Proceedings of the 43th IEEE Conference on Decision and Control, December 2004. [2] John E Beasley. Heuristic algorithms for the unconstrained binary quadratic programming problem. Technical report, Management School, Imperial College, UK, December 1998. [3] M.R Garey and D.S. Johnson. Computers and Intractability: A guide to the Theory of NP-Completeness. Freeman, 1979. [4] Fred Glover, Bahram Alidaee, C´esar Rego, and Gary Kochenberger. One-pass heuristics for large-scale unconstrained binary quadratic problems. European Journal of Operational Research, 137(2):272–287, March 2002. [5] F. Hasegawa, J. Luo, K. Pattipati, and P. Willett. Speed and accuracy comparison of techniques to solve a binary quadratic programming problem with applications to synchronous CDMA. In Proceedings of the 2001 IEEE Systems, Man, and Cybernetics Conference, 2001. [6] Guiqing He, A.C. Kot, and Tong Qi. Decorrelator-based neighbour-searching multiuser detection in CDMA systems. Electronics Letters, 32(25), December 1996. [7] Kengo Katayama and Hiroyuki Narihisa. Performance of simulated annealing-based heuristic for the unconstrained binary quadratic programming problem. European Journal of Operational Research, 134(1):103–119, October 2001. [8] Yi-Lin Li and Yumin Lee. A novel low-complexity nearML multiuser detector for DS-CDMA and MC-CDMA systems. In Proceedings of GLOBECOM’02 - IEEE Global Telecommunications Conference, volume 1, pages 493– 498, November 2002. [9] Teng Joon Lim, Lars K. Rasmussen, and Hiroki Sugimoto. An asynchronous multiuser CDMA detector based on the Kalman filter. IEEE J. Select. Areas Commun., 16(9), December 1998. [10] Jie Luo, Krishna R. Pattipati, Peter Willet, and Georgiy M. Levchuk. Fast optimal and suboptimal any-time algorithms for CDMA multiuser detection based on branch and bound. IEEE Trans. Commun., 52(4), April 2004. [11] Peter Merz and Bernd Freisleben. Greedy and local search heuristics for unconstrained binary quadratic programming. Journal of Heuristics, 8(2):197–213, March 2002. [12] Chandrasekar Sankaran and Anthony Ephremides. Solving a class of optimum multiuser detection problems with polynomial complexity. IEEE Trans. Inform. Theory, 44(5), September 1998. [13] Christian Schlegel and Alex Grant. Polynomial complexity optimal detection of certain multiple-access systems. IEEE Trans. Inform. Theory, 46(6), September 2000. [14] Peng Hui Tan. Multiuser detection in CDMA — combinatorial optimization methods. Licentiate thesis, Chalmers University of Technology, November 2001. [15] Sennur Ulukus and Roy D. Yates. Optimum multiuser detection is tractable for synchronous CDMA systems using M-sequences. IEEE Commun. Lett., 2(4), April 1998. [16] Sergio Verdu. Multiuser Detection. Cambridge University Press, 1998..

(9)

References

Related documents

(2020) An improved genetic algorithm with variable neighborhood search to solve the assembly line balancing problem.. Engineering computations, 37(2):

Figure 4.2 illustrates, for the large problem instance, the average number of soft constraint violations for different time limits.. For smaller time limits, the GD implementation

This thesis is primarily based on the paper Thinking Fast and Slow with Deep Learning and Tree Search wherein Anthony, Tian, and Barber [3] present both the framework Expert

Based on the results in this plot it was decided that 48 was the optimal number of variables to use for the training with acceptable Kolmogorov-Smirnov values both for signal

Det som används från LBSA i den LBSA-baserade algoritmen är därför de olika entiteterna som används i mutationen, i den första mutationsvarianten kopierar algoritmen subarrayer

Slutsatsen som dras är att en variant av discrete differential evolution presterar betydligt bättre än en generisk genetisk algoritm på detta problem, men inget generellt antagande

The most recent incarnation of the ‘WPR’ approach (Bacchi 2009) includes two questions (Questions 3 and 6) that did not appear in its initial formulation. The

Preconditioning and iterative solution of symmetric indefinite linear systems arising from interior point methods for linear programming.. Implicit-factorization preconditioning