Particle Swarm Enhanced Graph-Based Channel Estimation for MIMO ...

0 downloads 0 Views 186KB Size Report
Estimation for MIMO-OFDM. Christopher Knievel Peter Adam Hoeher. Information and Coding Theory Lab. Faculty of Engineering, University of Kiel. Kaiserstr.
Particle Swarm Enhanced Graph-Based Channel Estimation for MIMO-OFDM Christopher Knievel Peter Adam Hoeher Information and Coding Theory Lab Faculty of Engineering, University of Kiel Kaiserstr. 2, 24143 Kiel, Germany

Alexander Tyrrell Gunther Auer DOCOMO Euro-Labs 80687 Munich, Germany Email: [email protected]

Email: {chk,ph}@tf.uni-kiel.de

Abstract— Iterative receiver structures that jointly perform channel estimation and decoding promise substantial performance gains; however, these gains only materialize with sufficiently accurate initial channel estimates. In this paper, initialization by multi-objective particle swarm optimization (MOPSO) is investigated. MOPSO supports low-complexity initial channel estimation with superimposed training symbols. Furthermore, it is shown that MOPSO works well in rank-deficient scenarios with arbitrary training sequences. Numerical results validate the performance enhancement of MOPSO initialization integrated within a graph-based iterative receiver.

I. I NTRODUCTION Multiple-input multiple-output (MIMO) transmission in conjunction with orthogonal frequency-division multiplexing (OFDM) is currently considered as a key technology for future wireless radio systems such as 3GPP LTE-Advanced (LTEA). In MIMO-OFDM systems, training symbols known at the receiver side are used in order to support coherent detection [1, 2]. If training samples are spaced sufficiently close such that the sampling theorem is fulfilled, the unknown data symbols can be reconstructed by means of interpolation and filtering [3, 4]. While MIMO-OFDM offers promising diversity and/or capacity gains [5, 6], the required training overhead grows proportionally with the number of transmit antennas [7]. Advanced receivers which jointly estimate the channel coefficients and detect data symbols are able to reduce the required training overhead. By utilizing the turbo principle, reliably detected data symbols may be used as auxiliary training symbols, and thus provide more accurate channel estimates. Several iterative receiver structures have been proposed for MIMOOFDM [8–10]. Initialization of such receivers is critical as shown for the SAGE receiver in [11], as well as for the graphbased soft iterative receiver presented in [12] that is considered in this work. Particle swarm optimization (PSO) is a population-based heuristic global optimization algorithm [13, 14]. It has been inspired by the movement of bird flocks and fish schools. PSO is an efficient and fast converging global optimizer [14] that has been adapted to a large variety of applications, including channel estimation. Thus far, PSO based channel estimation has been restricted to either SISO [15] or MIMO [16] flatfading channels. Unlike evolutionary algorithms that typically need a high number of iterations in order to converge, the

PSO algorithm finds a reliable initial estimate after only a few iterations that is sufficiently accurate to guarantee the convergence of the iterative receiver. In this paper, a multi-objective PSO (MOPSO) [17] based approach is presented, which provides initial estimates of a time-varying frequency-selective MIMO channel with superimposed training symbols. In combination with linear prediction, additional correlation information about the channel response at adjacent training symbols is utilized so to further improve initial channel estimates. The combination of linear prediction and MOPSO enables reliable initialization with arbitrary training sequences, even in rank-deficient scenarios where the performance of numerous algorithms degrade severely. The computational cost of MOPSO is O(JΛN 2 ), i.e., linear with the total number of iterations J, and the number of objectives Λ, and quadratic with the size of the swarm N . Although the proposed MOPSO algorithm is used in conjunction with the graph-based receiver, it is a versatile algorithm that is not restricted to a certain (iterative)receiver structure. The remainder of this paper is organized as follows. Section II introduces the system and channel model. PSO and the extension to multiple objectives is elaborated in Sec. III. An overview of graph-based soft iterative receiver is given in Section IV and simulation results are presented in Section V. Finally Section VI draws the conclusion. II. S YSTEM A ND C HANNEL M ODEL We consider a MIMO-OFDM system with L OFDM subcarriers and K OFDM symbols per frame. The equivalent discrete-time model of a MIMO channel with NT transmit (Tx) and NR receive (Rx) antennas can be written in complex baseband notation as yn [l, k] =

NT X

hn,m [l, k] · xm [l, k] + wn [l, k]

m=1

=hn,m [l, k]xm [l, k] +

NT X i=1

hn,i [l, k]xi [l, k] + wn [l, k], | {z } AWGN

i6=m

|

{z

MAI

} (1)

III-A the basic principle of the PSO algorithm is introduced and extended to multiple objectives in Section III-B. The incorporation of linear prediction is explained in Section III-C. A discussion about the complexity of the MOPSO algorithm is included in Section III-D. A. Particle Swarm Optimization

Fig. 1: Superimposed training grid with a periodic spacing between adjacent training symbols of Df subcarriers in frequency and Dt OFDM symbols in time. where l ∈ {0, 1, . . . , L−1} is the subcarrier index and k ∈ {0, 1, . . . , K−1} is the time index. The symbol-rate samples xm [l, k] ∈ C and yn [l, k] ∈ C account for the transmitted symbol departing from mth Tx antenna, and the output of the receive filter associated to the nth Rx antenna, respectively. The desired signal xm [l, k] from Tx antenna m is superimposed by multi-antenna interference (MAI) composed of (NT −1) signals, xi [l, k], i6=m, as well as an additive white Gaussian noise (AWGN) sample wn [l, k] with zero mean and 2 . A frequency-selective and time-varying fading variance σw channel is considered, which means that the channel impulse response changes between adjacent OFDM symbols k and subcarriers l. The associated channel coefficients hn,m [l, k] ∈ C of subchannel (l, k) connect the mth Tx antenna and the nth Rx antenna, and are assumed to be wide-sense stationary (WSS), complex Gaussian variables with zero mean. Two different training types are considered: (a) random training symbols: x ˜i,m = ±1, (2) and (b) phase-shifted training sequences with orthogonal properties [18]: x ˜i,m = exp (−j2π · i · m/NT ) ,

1 ≤ i ≤ NP , 1 ≤ m ≤ NT

(3)

where NP denotes the number of training symbols. Training is inserted periodically, according to the training pattern displayed in Fig. 1. Of note is that in a time-varying frequency-selective channel, the orthogonality property of the sequence (3) will be destroyed. III. C HANNEL E STIMATION BASED ON M ULTI -O BJECTIVE PARTICLE S WARM O PTIMIZATION The aim of the MOPSO algorithm is to initially estimate the channel coefficients at training positions without introducing any restrictions on the training type and/or training grid. The proposed algorithm works with an arbitrary training grid and random training symbols. Estimates of the channel coefficients are represented by the positions of particles in the complex search space. The number of training symbols is equivalent to the number of objectives, whereas the number of particles is not strictly bound to the number of objectives. In Section

The basic idea of PSO is inspired by the social behavior of bird flocks and fish schools [13, 14], but has also been adapted to a wide range of optimization problems. Initially the particles of a swarm are set randomly throughout the feasible search region. In the case of channel estimation, the search region is represented by the complex space. Hence, the particles ’fly’ through a two-dimensional (D=2) search space learning from previous information emerged by the trajectory of each particle within the swarm. The position of each particle is used as a potential solution for an optimization function termed fitness function. The fitness value of each particle is distributed to all other particles within the swarm, which is therefore often referred to as fully informed swarm. The previously best position of a particle is termed personal best pid , whereas the previously best position of the swarm is called global best pgd . In this paper, the standardized version to update the position of a particle is used as proposed in [19]: υid [j+1] =χ (υid [j] + c1 ε1 (pid − ξid [j]) +c2 ε2 (pgd − ξid [j])) ,

(4)

ξid [j+1] =ξid [j] + υid [j+1], where υid [j] is the velocity and ξid [j] the current position of particle i in dimension d at iteration index j. ε1 and ε2 represent random numbers within the range [0,1]. c1 and c2 are constraints on the velocity toward global and personal best, and χ is the constriction factor on the overall position update. According to [19], the following values are chosen: c1 =c2 =2.05 and χ≈0.730. The new position ξid [j+1] of the ith particle is the summation of its previous position and the updated velocity. The update of velocity and position is done for all particles in each iteration until a maximum number of iterations is reached or the velocity of all particles is below a given threshold. B. Multi-Objective PSO For a single-antenna system and a time-invariant flat-fading channel, the maximum-likelihood metric (fitness function) can be written as follows: ˆ = arg min h ξ

L−1 X K−1 X

2

|y[l, k] − ξ · x ˜[l, k]| .

(5)

l=0 k=0

Without loss of generality, only minimization problems are considered. In case the PSO algorithm converges to the global optimum, all particles ξ of the particle swarm are at the same position minimizing (5). For a time-varying frequency-selective channel, however, there is not a single global optimum minimizing the fitness function since the channel coefficients vary in time and frequency. Hence, the

standard PSO has to be extended to a multi-objective PSO (MOPSO) [17, 20]. In a multi-objective optimization problem, Λ objectives should be minimized simultaneously: 2 ˆ = arg min |y[λ] − ξ[λ] · x h[λ] ˜[λ]| ,

1 ≤ λ ≤ Λ,

ξ[λ]

(6)

where Λ is in our case the number of training symbols spread throughout the burst as depicted in Fig. 1. Obviously that the solution ξ[λ] for the λth objective is not necessarily optimal for the (λ+1)th objective. This means that one objective cannot be optimized without sacrificing the performance on at least one other objective. The MOPSO algorithm optimizes all objectives in parallel, whereas the so-called dominant solutions are stored in an external archive. A particle ξ is said to dominate another particle ξ 0 , denoted as ξ ≺ ξ 0 , if and only if 1. ∀λ ∈ {1, . . . , Λ} : ξ[λ] ≤ ξ 0 [λ] 2. ∃λ0 ∈ {1, . . . , Λ} : ξ[λ0 ] < ξ 0 [λ0 ].

(7)

In each iteration a new solution is compared to the solutions in the archive. If a solution in the archive is dominated it will be replaced by the new solution. This set of solutions is termed Pareto set F ∗ and contains all particles ξ that are not dominated by another particle ξ 0 : .  F ? = ξ ∈ RD | 6 ∃ ξ 0 ∈ RD : ξ 0  ξ . (8) An extension of the fitness function (6) to a time-varying frequency-selective channel and multiple antennas is given by: 2 NT X ˆ [l, k] = arg min yn [l, k] − ξn,m [l, k]˜ xn,m [l, k] , h n ξn,m [l,k] m=1 | {z } ϑn [l,k]

(9) with ϑn [l, k] being the fitness function of the nth Rx antenna at the lth subcarrier and kth time index. The dominant solutions of the fitness function (9) are stored in the external archive. ? In case the MOPSO algorithm converges, h the Pareto set i F ˆ ˆ ˆ contains NT possible solutions: hn = hn,1 , . . . , hn,NT . The dimensions of PSO are therefore extended by a factor of NT to D = 2NT . C. Linear Prediction ˆ From (9) it follows that, given NT ≥2, the metric h n is underdetermined, since only one sample yn [l, k] is used to estimate NT channel coefficients. However, neighboring channel coefficients in time and/or frequency are correlated, hence, this additional information can be used to determine

Fig. 2: Mapping of one coefficient to neighboring OFDM symbols by using linear prediction.

(9). Linear prediction [21] is proposed to exploit the correlation information. In general, linear prediction is used to estimate a channel coefficient given a history of previous channel coefficients [22]. It is important to note that linear prediction is not used in this paper to estimate a neighboring channel coefficient, but instead, as shown in Fig. 2 in the time domain, used to map the current coefficient estimate ξn,m [l, k] to neighboring OFDM symbols and OFDM subcarriers respectively. Thus, the neighboring samples (e.g. yn [l, k + Dt ], yn [l, k − Dt ], yn [l + Df , k], . . .) can be used to either determine (9), and/or to further refine the estimate of ξn,m [l, k], since additional observations are used to estimate a single channel coefficient. The prediction depth is inherently limited to one, since only the current coefficient is mapped to its adjacent neighbors. The prediction coefficient p1 for a prediction depth of one, is obtained by solving the WienerHopf equation: r0 · p1 = r1 (10) The coefficient p1 may be used for a forward and/or backward prediction, with pf1 = pb∗ 1 . Assuming a Jakes power spectral density with maximum Doppler frequency fD,max , the autocorrelation coefficient r1 can be calculated as follows [22]: r0 = 1 + 2σ 2 and r1 = J0 (2πfD,max Ts Dt ), where J0 (.) denotes the Bessel function of the first kind and order zero and Ts the symbol duration. The proposed scheme can be directly implemented in the frequency domain as well, thus further extending the number of equations for one channel coefficient. The autocorrelation coefficient for a uniformly distributed delay power profile is given by r1 = sinc(τmax F Df ), where F represents the subcarrier spacing and τmax the maximum propagation delay. The proposed fitness function incorporating the principles of linear prediction is now given by: NT X ξn,m [l, k]˜ xn,m [l, k]+ ϑn [l, k] = yn [l, k] − m=1

yn [l, k+Dt ] −

NT X

pf1 ξn,m [l, k]˜ xn,m [l, k+Dt ]+

m=1

2 pb1 ξn,m [l, k]˜ xn,m [l, k−Dt ] , yn [l, k−Dt ] − m=1 (11) NT X

with pf1 and pb1 being the forward and backward prediction coefficients. With random training sequences (2) the fitness function shown in (11) needs to be modified slightly. Neighboring samples should only be used when the training symbols of neighboring positions have full rank with the training symbols of the current position. Since training symbols are generated randomly, this property needs to be checked for every neighbor. Neighboring symbols without full rank should not be considered in the fitness function, since they would introduce ambiguities which would prevent the MOPSO algorithm from convergence. However, taking all combinations in

0

10

time and frequency domain into account, eight neighbors can be utilized to determine the current training symbol. Thus, it is very likely that multiple training sequences with full rank exists. Inherently, this method is limited to eight superimposed antennas.

In each iteration each of the N particles has to compare its current position with its personal best, which results in a complexity of O(N ). The global best is directly selected from an external archive. For an update of the external archive each particle has to compare its current position with the entries of the archive, which are equivalent to the number of objectives Λ. Thus, the complexity for the update process of the archive in each iteration is O(N Λ). With a total number of iterations J, the overall complexity of the MOPSO algorithm results in O(ΛJN 2 ). The number of particles is not strictly bound by the number of objectives. However, the larger the number of particles compared to the number of objectives, the less iterations are needed to converge. In this paper, the number of particles is set to be equal to the number of objectives. It is shown in the numerical results, that only few iterations are needed in order to find good initial estimates for the graphbased receiver. IV. G RAPH - BASED S OFT I TERATIVE R ECEIVER Factor graphs are a powerful graphical tool and can, in combination with the sum-product algorithm, be applied to a large variety of problems. The factor graph presented in [12] performs joint channel estimation and data detection for MIMO-OFDM. Distributed training symbols are used to initialize the graph-based receiver. The initialization of the graph-based soft iterative receiver (GSIR) is briefly explained in the following. More details of the GSIR are available in [12]. Initialization: The graph is initialized by the auxiliary MOPSO algorithm, thus replacing the symbol-wise leastsquares (LS) channel estimation applied in [12] given by ˆ = y·x h ˜−1 . The messages representing the initial channel estimates are first passed to all nodes in one domain (time or frequency), afterwards the messages are exchanged in the second domain. The information of training-based channel estimates are used to calculate reliability information of the unknown data symbols which are used as auxiliary training symbols in subsequent iterations. V. N UMERICAL R ESULTS The performance of the proposed MOPSO-enhanced graphbased estimator (MOPSO-GSIR) is evaluated by means of mean squared error (MSE) and bit error rate (BER). An OFDM system with L=128 subcarriers, K=8 OFDM symbols, NT =2 transmit and NR =2 receive antennas is implemented. For the data symbols, BPSK modulation and a turbo code with code rate 1/2 are used. The WINNER C2 NLOS channel model [23] is applied. A velocity of 60 km/h at a carrier frequency of 4 GHz is chosen, resulting in a normalized

-1

10

SNR = 4 dB

MSE

D. Complexity

O-MOPSO, Df=8 O-MOPSO, Df=16 O-MOPSO, Df=8 O-MOPSO, Df=16 O-MOPSO, Df=8 O-MOPSO, Df=16

SNR = 10 dB -2

10

SNR = 20 dB -3

10 0

1

2

3

4

5

6

7

8

9

10

MOPSO iterations Fig. 3: MSE performance of the MOPSO-initialized GSIR with orthogonal training symbols depending on the number of MOPSO iterations. The spacing of training in the time domain is fixed to Dt =8.

maximum Doppler shift fD,max Ts ≈ 0.0159. The maximum propagation delay is τmax =1.845 µs [23]. The performance of MOPSO-GSIR with orthogonal phase shifted and random training symbols is investigated, which are denoted with O-MOPSO and R-MOPSO, respectively. Fig. 3 shows the number of required iterations for the OMOPSO-initialized GSIR to convergence, at three SNR values and two different training spacings. It is seen that after only three MOPSO iterations, the performance of the MOPSOinitialized GSIR is not improved by further increasing the number of MOPSO iterations. During the first iterations, not all objectives are optimized with a unique solution; MOPSO is only able to find very few non-dominated solutions, which are then used as initial channel estimates by the GSIR. With increasing iterations, the number of non-dominated solutions increases until finally all objectives have an unique solution and the MOPSO algorithm is converged. Fig. 4 shows the BER performance of GSIR with different initialization algorithms. A spacing of training symbols of Dt =8 and Df =8, 16 in time and frequency is used. For comparison, the symbolwise LS initialization, previously applied in [12] is included. Hereby, if one transmit antenna is sending training symbols, all other transmit antennas are muted. In order to have a fair comparison, the training overhead for all initialization schemes is kept constant. The BER performance of the GSIR with perfect channel knowledge (CSI) and for perfect initialization (i.e. channel coefficients are perfectly known for training positions but unknown for all other positions) are plotted as well. Fig. 4 reveals that the initialization of an iterative receiver is of crucial importance. The BER performance of GSIR is improved by MOPSO initialization for all investigated training spacings compared to symbol-wise LS initialization. Independent of the training type the MOPSO-initialized GSIR converges at 2 dB. Orthogonal phase shifted training sequences

0

10

linear prediction to further improve the performance. The MOPSO algorithm shows to be versatile, as it may be used for initialization with only a few iterations as well as a stand-alone channel estimation by just increasing the number of iterations.

-1

BER

10

R EFERENCES -2

10

-3

10

O-MOPSO, Df=8 O-MOPSO, Df=16 R-MOPSO, Df=8 R-MOPSO, Df=16 LS, Df=8 LS, Df=1 perfect init. perfect CSI

-4

10 -10

0

-5

10

5

15

Eb/N0 in dB Fig. 4: BER performance of GSIR with NT = 2 and NR =2 comparing LS initialization, MOPSO initialization with random training symbols (R-MOPSO) and orthogonal training symbols (O-MOPSO), perfect initialization, and perfect channel knowledge.

only marginally outperform random training sequences. The MSE performance of the MOPSO-GSIR is improved compared to the symbol-wise LS initialization. Only at a SNR of 0 dB, the MOPSO algorithm fails to converge. This is due to the linear prediction, which is not precise at very low SNR and a prediction depth of one. Note here, that the MSE curves of the O-MOPSO and R-MOPSO initialization are all superimposed. O-MOPSO, Df=8 O-MOPSO, Df=16 R-MOPSO, Df=8 R-MOPSO, Df=16 LS, Df=8 LS, Df=16 perfect init.

0

MSE

10

-1

10

-2

10

-3

10 0

5

10

15

20

Eb/N0 in dB Fig. 5: MSE performance of GSIR with two transmit and two receive antennas with LS, R-MOPSO, O-MOPSO, and perfect initialization. VI. C ONCLUSION A MIMO-OFDM channel estimation based on multiobjective particle swarm optimization is presented in this paper. The MOPSO algorithm is able to get good initial estimates after the first few iterations with unrestricted training requirements and rank-deficient scenarios. Correlation information of neighboring channel coefficients are utilized with

[1] J. K. Cavers, “An analysis of pilot symbol assisted modulation for Rayleigh fading channels,” IEEE Trans. Veh. Technol., vol. 40, no. 4, pp. 686–693, Nov. 1991. [2] N. W. K. Lo, D. D. Falconer, and A. U. H. Sheikh, “Adaptive equalization and diversity combining for mobile radio using interpolated channel estimates,” IEEE Trans. Veh. Technol., vol. 40, no. 3, pp. 636–645, Aug. 1991. [3] P. Hoeher, “TCM on frequency-selective land-mobile fading channels,” in Proc. 5th Tirrenia Intern. Workshop on Digital Commun., Tirrenia, Italy, Sept. 1991, pp. 317–328. [4] P. Hoeher, S. Kaiser, and P. Robertson, “Two-dimensional pilot-symbolaided channel estimation by wiener filtering,” in Proc. IEEE Int. Conf. on Acoustics, Speech, and Signal Processing (ICASSP), Munich, Germany, Apr. 1997, pp. 1845–1848. [5] G. J. Foschini and M. J. Gans, “On limits of wireless communications in a fading environment when using multiple antennas,” Wireless Personal Communications, vol. 6, no. 3, pp. 311–335, Mar. 1998. [6] I. E. Telatar, “Capacity of multi-antenna Gaussian channels,” European Trans. on Telecommun. (ETT), vol. 10, no. 6, pp. 585–595, Nov./Dec. 1999. [7] B. Hassibi and B. M. Hochwald, “How much training is needed in multiple-antenna wireless links?” IEEE Trans. Inform. Theory, vol. 49, no. 4, pp. 951–963, Apr. 2003. [8] M. C. Valenti and B. D. Woerner, “Iterative channel estimation and decoding of pilot symbol assisted turbo codes over flat-fading channels,” IEEE J. Select. Areas Commun., vol. 19, no. 9, pp. 1697–1705, Sep. 2001. [9] F. Sanzi, S. Jelting, and J. Speidel, “A comparative study of iterative channel estimators for mobile OFDM systems,” IEEE Trans. Wireless Commun., vol. 5, no. 2, pp. 849–859, Sep. 2003. [10] G. Auer and J. Bonnet, “Threshold controlled iterative channel estimation for coded OFDM,” in Proc. IEEE Vehicular Technology Conf. (VTC Spring), Dublin, Ireland, Apr. 2007, pp. 1737–1741. [11] G. J. McLachlan and T. Krishnan, The EM Algorithm and Extensions. Wiley, 1997. [12] C. Knievel, Z. Shi, P. A. Hoeher, and G. Auer, “2D graph-based soft channel estimation for MIMO-OFDM,” in Proc. IEEE Int. Conf. on Communications (ICC), 2010. [13] J. Kennedy and R. Eberhart, “Particle swarm optimization,” in Proc. IEEE Int. Conf. on Neural Networks, 1995, pp. 1942–1948. [14] J. Kennedy and R. C. Eberhart, Swarm Intelligence, D. E. M. Penrose, Ed. Morgan Kaufmann, 2001. [15] M. Zubair, M. A. S. Choudhry, A. Naveed, and I. M. Qureshi, “Joint channel and data estimation using particle swarm optimisation,” Proc. IEICE Trans. Commun., vol. E91-B, no. 9, pp. 3033–3036, Sept. 2008. [16] H. Palally, S. Chen, W. Yao, and L. Hanzo, “Particle swarm optimisation aided semi-blind joint maximum likelihood channel estimation and data detection for MIMO systems,” Sept. 2009, pp. 309–312. [17] C. A. C. Coello and M. S. Lechuga, “MOPSO: A proposal for multiple objective particle swarm optimization,” in Proc. of the 2002 Congress of Evolutionary Computation part of the 2002 IEEE World Congress on Computational Intelligence. IEEE Press, May 2002, pp. 1051–1056. [18] Y. G. Li, “Simplified channel estimation for OFDM systems with multiple transmit antennas,” IEEE Trans. Wireless Commun., vol. 1, no. 1, pp. 67–75, Jan. 2002. [19] D. Bratton and R. C. Eberhart, “Defining a standard for particle swarm optimisation,” in Swarm Intelligence Symposium (SIS 2007), Apr. 2007, pp. 120–127. [20] C. A. C. Coello, G. Pulido, and M. S. Lechuga, “Handling multiple objectives with particle swarm optimisation,” IEEE Trans. on Evolutionary Computation, vol. 8, no. 3, pp. 256–279, June 2004. [21] J. Makhoul, “Linear prediction: A tutorial review,” in Proc. IEEE, vol. 63, April 1975, pp. 561–580. [22] P. Hoeher and J. Lodge, “Turbo DPSK: Iterative differential PSK demodulation and channel decoding,” IEEE Trans. Commun., vol. 47, pp. 837–843, June 1999. [23] IST WINNER II Channel Model, D1.1.2 V1.2, 2008.

Suggest Documents