Open Access

Fast performance prediction of power controlled HSUPA with channel estimation

EURASIP Journal on Wireless Communications and Networking20122012:148

https://doi.org/10.1186/1687-1499-2012-148

Received: 2 June 2011

Accepted: 19 April 2012

Published: 19 April 2012

Abstract

Transmit power control (TPC) is used in high speed uplink packet access (HSUPA) to compensate for the near far effect which degrades system performance. However, its use in joint application with turbo coding, and hybrid automatic repeat request (Hybrid-ARQ) is very prohibitive and time consuming. In this article, we propose a simplified simulation methodology for power controlled HSUPA with Hybrid-ARQ Chase combining considering the effect of channel estimation on the system performance. The proposed method was tested on Rake and chip-level linear minimum mean squared error (LMMSE) receivers. Simulation results show that the CPU time taken to reach the required performance is significantly reduced. Moreover, when the channel estimation is taken into account with an important number of pilot symbols, the system performance is close to that obtained with perfect channel acknowledgement (PCA).

Keywords

HSUPA Hybrid-ARQ chase combining TPC LMMSE channel estimation pilot symbols

1. Introduction

Transmit power control is necessary for high speed uplink packet access (HSUPA) system to reach the expected quality of service. It is jointly performed with Hybrid-ARQ in which ARQ technique is combined with turbo coding. Furthermore, adaptive modulation and coding, and the multicode transmission principle are used to provide high data rates. System performance, which is determined by the block error rate (BLER), depends on selected technology (channel coding, interleaving, modulation, and channel impulse response). The BLER is computed by simulating HSUPA technologies, according to 3GPP (3 rd Group Partnership Project), with Monte-Carlo method [1]. However, iterative processes such as turbo decoding and transmitted power adjustment make this simulation very prohibitive and time consuming. As a solution, performance prediction has been proposed in many studies. This prediction aims to give an abstraction of the system performance over a multipath channel by summarizing the turbo code performance as look-up tables (reference curves). In [2], Kim et al. used a convex metric method that maps the received signal to noise ratio (SNR) to a Gaussian capacity. Its disadvantage is that it requires a significant memory storage since it uses more than one reference curve as shown in [3]. The method we have proposed in [4] considers one reference curve assuming Gaussian assumption (GA) at the detector output. Furthermore, it assumes perfect channel state knowledgement at the receiver side. The GA assumption is also used in [5] for extending the fast performance prediction (FPP) to iterative interference cancelation in multi-user MIMO CDMA. In [6], a prediction method has been proposed for coded MIMO-OFDM systems.

This article deals with a FPP for HSUPA system, considering TPC in joint application with Hybrid-ARQ Chase combining. In our methodology, the focus is put on the channel estimation effect on the prediction process. In addition, we try to assess the TPC robustness against a noisy channel.

Under block fading frequency selective channel hypothesis, and GA assumption on the detector output, the analytical signal to interference-plus-noise ratio (SINR) is equivalent to the SNR when the transmission is done through an additive white Gaussian noise (AWGN) channel. Hence, for HSUPA performance prediction over block fading frequency selective channel, FPP makes use of the analytical SINR with previously stored look-up tables (LUT). These tables are built with a turbo coded HSUPA simulator over AWGN channel. The rest of this article is organized as follows: HSUPA system model is described in Section 2. The FPP with TPC and Hybrid-ARQ Chase combining is introduced in Section 3. The impact of channel estimation on performance prediction is presented in Section 4. Simulation results and the conclusion are given in Sections 5 and 6, respectively.

2. HSUPA system model

2.1. HSUPA transmitter

As shown in Figure 1, the user data stream is transmitted with K parallel enhanced dedicated physical data channels (E-DPDCHs). The control information need for data detection is carried by the newly introduced enhanced dedicated physical control channel (E-DPCCH). The HSUPA control channel (HS-DPCCH) is used for transmitting the channel state to the receiver (node-B). The enhanced data channels are always time-multiplexed with the uplink control channel, DPCCH, which carries known pilot bits for channel estimation, and signal to interference ration (SIR) estimation purposes at the receiver side. A part of transmitted control information on the DPCCH is reserved for downlink power control as shown on the frame structure of DPCCH which is presented in Figure 2.
Figure 1

Time multiplexing scenario of HSUPA channels. This figure describes how HSUPA channels are time multiplexed using the multicode transmission principle. The spreading process is performed by multiplying each channel by a spreading code. Then, β weighting factors are used to compensate for the variation of the spreading factor. After that, iq coefficients are applied for IQ multiplexing.

Figure 2

Frame structure of DPCCH control channel. In this figure we present the structure of the uplink DPCCH frame which carries the pilot symbols used for channel estimation purpose.

The spreading process is performed using orthogonal variable spreading factor (OVSF) codes. The code length is different from one physical channel to another. In order to compensate for this difference, the signal on each channel is weighted by a gain factor: βed,kfor k th E-DPDCH, β ec for E-DPCCH, β hs for HS-DPCCH, and β c for DPCCH. Then, the IQ mapping is done with iq coefficient which takes the value j for Q branch mapping, or 1 for I branch mapping. After IQ multiplexing, the complex-valued multicode chip sequence is scrambled with the long scrambling code Sdpdch,n. The scrambled multicode chip is expressed as
x m = E c k = 0 K - 1 s k m S F e d , k c e d , k , m S F e d , k m - m S F e d , k S F e d , k β e d , k i q e d , k ,
(2.1)

where E c is the chip energy, c ed,k is the spreading code, of length SF ed,k , used on the k th E-DPDCH.

2.2. Sliding window model

Assume that the transmission is made through a multipath frequency selective channel, of length L, represented by a matrix H, and consider a sliding window of length 2 × E + 1. The received signal, associated to the m th transmitted multicode chip is given by
y m = H x m + n m ,
(2.2)
When assuming receive diversity with N r antennas, the received signal is expressed according to this sliding window model
y m 1 y m N r = H 1 H N r x m + n m 1 n m N r
(2.3)
where y m i = [ y m - E i , , y m i , , y m + E i ] T is the received signal when the vector x m = [xm-E-L+1, ..., x m , ..., x m+E ] T is transmitted through the multipath frequency selective channel, of length L, represented by (2E + 1) × (2E + L) Toeplitz matrix H i (i = 1, ..., N r ) given by
H i = h L - 1 i h 0 i 0 0 0 h L - 1 i h 0 i 0 0 0 h L - 1 i h 0 i
(2.4)

h l i ( 0 l L - 1 ) are the complex coefficients of the channel connecting the transmitter antenna with the i th receiver antenna. n m i = [ n m - E i , , n m i , , n m + E i ] T is a vector of complex AWGN samples each has zero mean and one-sided spectral density N0.

3. Fast performance prediction

3.1. Prediction principle

The prediction strategy principle is presented in Figure 3. The Hybrid-ARQ Chase combining approach is considered with N t transmissions. The TPC which is necessary for HSUPA system is also taken into account. It is done separately for each Hybrid-ARQ transmission. The main hypothesis of the prediction method is the Gaussian approximation at the receiver filter output. With this assumption, the SINR at the filter output is equivalent to that of an AWGN channel. Hence, the HSUPA performance in AWGN channel can be exploited as LUT for performance abstraction in a multipath channel [7]. The abstraction accuracy depends on the SINR estimation at the filter output. Hereafter, we derive the analytical SINR expressions for both Rake and LMMSE receivers. Furthermore, an analytical SINR after Hybrid-ARQ Chase combining is given.
Figure 3

Structure of fast performance predictor for power controlled HSUPA. This figure shows the different steps of the performance prediction strategy used in this work. It includes transmit power control, SINR estimation and BLER deduction.

3.2. SINR estimation

The receiver filter output corresponding to the m th chip is expressed as
z m = w H y m = w H . H . x m + w H . n m
(3.1)
where w is the vector, of length N r (2E + 1), containing the receiver filter coefficients, and (.) H denotes the hermitian operator. Let us introduce a vector G such that G = w H H = [ g 0 , , g N r ( 2 E ) ] . Thus, the SINR at the output of the receiver filter per Hybrid-ARQ transmission can be written as
SINR = S F 0 β 0 2 E c g 0 2 E c G G H - g 0 2 + w 2 N 0
(3.2)
The vector of the receiver filter coefficients, w depends on the selected detector. Hence, when the rake receiver is used, this vector is expressed as
w Rake = e H H
(3.3)
where e is a vector of zero components except the (E + L)th element which is equal to 1. When the detection is done with an LMMSE detector, the vector containing its coefficients are given by
w LMMSE = H H H + N 0 E c I - 1 H E + L
(3.4)

where HE+Lis the (E + L)th column of channel matrix H.

Once the SINR is computed according to (3.2), it is compared to a target SINR, SINR T . The TPC commands are then generated as follows:
TP C c m d = 0 , if SINR > SIN R T 1 , if SINR < SIN R T
(3.5)

where cmd refers to command.

After TPC commands generation, the transmit chip power is adjusted (see Figure 3) in response to these commands: if TPC cmd = "0", the transmit power is reduced by δ dB which is the power control step size. When TPC cmd = "1" the transmit power is increased by δ dB. This is done in an iterative manner until the target SINR is reached. At the first transmission, after power control, the SINR is also used in Hybrid-ARQ process. Its availability makes it easy to predict the BLER which indicates if a packet is correctly received or erroneous. If a packet is detected to be in error, its retransmission is requested, and the channel matrix and the filter coefficients are saved for Chase combining SINR computation.

Let us consider Chase combining scenario with N t transmissions. The output of Hybrid-ARQ combiner may be written as
z = j = 0 N t - 1 z j
(3.6)

where z j is the filter output corresponding to the j th Hybrid-ARQ transmission.

If we introduce a vector G j = w H H j , Equation (3.6) can be then expressed in the following vector form
z = j = 0 N t - 1 w H H j x + j = 0 N t - 1 f j H n j = j = 0 N t - 1 G j x + j = 0 N t - 1 w j H n j
(3.7)
Consequently, the global SINR after the despreading is calculated according to this formula
SIN R g l o b a l = S F 0 β 0 E c j = 0 N t - 1 g 0 , j 2 E c j = 0 N t - 1 G j j = 0 N t - 1 G j H - j = 0 N t - 1 g 0 , j 2 + j = 0 N t - 1 w j w j H N 0
(3.8)
After SINR estimation, the BLER is derived from pre-stored LUTs which summarize the iterative turbo decoding behavior. These LUTs are constructed using Monte-Carlo simulations through an AWGN channel, and are in the form (E c /N0 in dB, BLER). So, it is necessary to compute an effective E c /N0 from the estimated SINR. For this, we assume that the SINR at the output of the receiver filter is equivalent to the received E b /N0. Thus, the effective E c /N0 can be calculated as follows
E c N 0 d B = ( SINR ) d B - 10 log 10 ( β e d , 1 2 S F e d , 1 )
(3.9)
The BLER is then obtained according to this expression
BLER = f E c N 0 d B ,
(3.10)

where f(.) indicates the linear interpolation function which takes the effective ( E c N 0 ) d B as input and calculates the corresponding BLER by linear interpolation using AWGN LUT [8].

4. Effect of channel estimation on the performance prediction

When perfect channel knowledgement is not considered, the receiver has to make channel estimation which cannot be done without error. This affects the performance prediction methodology since the SINR estimation is based on the estimated channel coefficients. In this study, channel estimation is performed by extracting the channel state information contained in the known pilot symbols carried by the UMTS control channel DPCCH [9, 10]. So, DPCCH despreading is necessary for channel estimation. As in [11], under the hypothesis that the channel estimation error has a Gaussian behavior, we can express the estimated channel vector, h ^ = [ ĥ 0 , , ĥ L - 1 ] , as
h ^ = h + u ,
(4.1)
where u is a vector of L AWGN samples, each of zero mean, and a variance expressed (see Appendix 1) as
σ u 2 = 1 N p E c , pilot S F pilot l i L h l 2 E c + N 0 2
(4.2)
The SINR at the Rake receiver output is given by
SIN R Rake ( h ^ / h ) = S F 1 β 1 2 E c h ^ H ( E + L ) 2 E c h ^ H H H H h ^ - h ^ H ( E + L ) 2 + h ^ 2 N 0
(4.3)
If we denote by H ^ the estimated channel matrix, the vector of LMMSE filter coefficients is written as
w ^ LMMSE = H ^ H ^ H + N 0 E c I - 1 H ^ E + L
(4.4)
Define the vector G ^ = w ^ LMMSE H H . The SINR at the output of the LMMSE filter is given by
SIN R LMMSE ( h ^ / h ) = S F 0 β 0 2 E c ĝ 0 2 E c G ^ G ^ H - ĝ 0 2 + w ^ 2 N 0
(4.5)

Performance prediction process with channel estimation is accomplished according to the following steps.

  • Step 1. Draw a channel realization h,

  • Step 2. Generate the noisy channel, h ^ such as h ^ = h + u , where u is the vector of AWGN noise samples where each has zero mean and the variance expressed in (4.2),

  • Step 3. Compute SINR ( h ^ / h ) using the formula in (4.3) for the Rake receiver, or (4.5) for the LMMSE detector,

  • Step 4. Calculate the mathematical expectation of SINR ( h ^ / h ) ,

  • Step 5. Perform the TPC process
    • Compare SINR ( h ^ / h ) to the target SINR, SINR T

    • Update the transmitted chip energy, E c , using TPC command as expressed in (4.6)

    • Calculate the SINR ( h ^ / h ) with updated E c

  • Step 6. Predict the BLER using LUTs and the final SINR corresponding to current transmission.

Note that TPC process (Step 5) is repeated until the estimated SINR ( h ^ / h ) is close to target SINR. Then, the final value of SINR is used for Hybrid-ARQ Chase combining purpose.

To see whether a retransmission of a packet is required or not, the predicted BLER in Step 6 is exploited and compared to a uniform random variable ϑ, in the following criterion
ACK, if BLER ϑ NACK, elsewhere
(4.6)

5. Numerical results

In this section, simulation results are presented to investigate the effect of channel estimation on the FPP technique. First, we describe how the LUTs are built. The FPP is then validated with the HSUPA link simulator (LS) according to 3GPP technical specifications [12]. The joint application of Chase combining and transmit power control is also addressed. Finally, simulation results of FPP with channel estimation are presented for HSUPA configurations presented in Table 1.
Table 1

HSUPA modulation and coding schemes

MCS

Number of codes

Min. SF

Coding rate

TTI (ms)

Max. bit rate (kbps)

1

1

16

0.288

10

69.0

2

2

2

0.502

10

1927.0

3

2

2

0.702

2

2706.0

This table summarizes HSUPA configurations used in this study.

5.1. Look-up tables

As mentioned above, the LUTs are built using the HSUPA LS with an AWGN channel. The Max-Log-MAP algorithm, with 8 iterations, is considered for decoding the 1/3 rate Turbo encoder. The LUTs summarize the HSUPA decoder behavior in terms of BLER as a function of received E c /N0. Each selected HSUPA modulation and coding scheme (MCS) needs only one LUT, also called a reference curve, for its performance prediction in a multipath channel.

5.2. Fast performance prediction validation

To see how accurate the FPP simulator is, computer simulations are done for HSUPA transmission. The FPP performance are obtained using the simulator corresponding to the structure presented in Figure 3 which consider hybrid-ARQ Chase combining [13, 14]. The TPC process is assumed to be inactive. For FPP verification, it is necessary to run the HSUPA link simulator and FPP simulator with the same assumptions. In the LS, the turbo decoding is performed using the same algorithm and number of iterations as those used for building the LUTs. However, in the FPP simulator, turbo decoding process is not run since its performance is summarized in LUTs.

Simulations were done for MCS 2 through a multipath channel which has the same profile as ITU-Pedestrian B Channel with the mobile speed of 3 Km/h. Note that profile is used for all computer simulations in this work. Results of FPP and LS simulator, are shown in Figure 4. It is observed that the FPP simulator is accurate compared to the LS for both single transmission and Hybrid-ARQ retransmissions. Moreover, with FPP, a significant gain, in terms of CPU time is obtained.
Figure 4

Validation of FPP with MCS 2. In this figure we show how accurate is our proposed prediction strategy in terms of BLER. The results presented in this figure are given for MCS 2 configuration (see Table 1).

5.3. Channel estimation effect on FPP

Having shown the accuracy of FPP simulator, computer simulations are run to assess the impact of noisy channel on this simulator considering Hybrid-ARQ Chase combining and TPC. The HSUPA configuration we adopted in this assessment includes MCS 1 and MCS 3. The number of Hybrid-ARQ transmissions is fixed to 2. The detection is done with a Rake receiver for the first configuration. The second one (MCS 3) is detected with LMMSE equalizer. As mentioned in 3GPP technical specifications [9], the maximum number of pilot symbols, Npilot, is fixed to 150 for MCS 1 and 30 for MCS 3.

BLER results of MCS 1 are presented in Figure 5. It is seen that for received E c /N0 lower than -19 dB, no enhancement is provided by the TPC process when perfect channel knowledgement is assumed at the receiver end. However, when received E c /N0 is up to -19 dB, an important gain is offered. In fact, we observed a gap of 2.5dB when a BLER of 10-2 is reached. If channel estimation is taken into consideration, this gain depends on the number of pilot symbols used to estimate the channel coefficients. A great number of pilots results in more accurate estimated channel coefficients. It is also seen that the noisy channel effect is considerable for a small number of pilot symbols. This effect is significantly reduced after applying TPC.
Figure 5

Channel estimation effect on MCS 1 performance using the Rake receiver. This figure presents the effect of channel estimation on MCS 1 which is detected by a Rake receiver. This effect is seen for several numbers of pilot symbols.

Figure 6 presents the BLER results of MCS 3 which uses LMMSE equalizer. It is concluded that the system exhibits poor performance for lowest number of pilot symbols.
Figure 6

Channel estimation effect on MCS 3 performance using the LMMSE chip equalizer. Figure 6 shows the channel estimation effect on MCS 3 performance. The detection for this configuration is done with LMMSE chip equalizer.

The channel estimation effect, in terms of transmitted pilot symbols, may be seen using the empirical cumulative density function (CDF) of parameter Delta which is defined to be the difference between the SINR computed assuming perfect channel knowledge and that calculated with noisy channel coefficients. Figure 7 shows the CDF of Delta for different numbers of pilot symbols. It is also seen, in terms of CDF that the impact of channel estimation on fast simulator is significantly reduced when increasing the number of pilot symbols.
Figure 7

Impact of channel estimation on MCS 1 performance in terms of CDF. In Figure 7, we present the channel estimation effect on MCS 1 in terms of cumulative distribution function.

6. Conclusion

In this article, we have studied the effect of channel estimation on the simplified simulation methodology for HSUPA. Transmit power control and Hybrid-ARQ Chase combining have been considered. It has been seen that a noisy channel effect depends on the number of pilot symbols transmitted on the HSUPA control channel. Simulation results have demonstrated that when a sufficient number of these symbols is used, the performance is close to that obtained with the perfect CHACK assumption. Moreover, the application of TPC compensates the performance degradation when a small number of pilot symbols. This has been verified for both Rake and LMMSE receivers.

Appendix 1: DPCCH despreading

For channel coefficients estimation in HSUPA, we have to extract the time multiplexed control channel, DPCCH, from received signal containing the pilot symbols. For this, we consider the HSUPA transmission scenario presented in Figure 1. The multicode transmitted signal with time multiplexed control channels is expressed as follows
x hsupa ( t ) = E c k = 0 K - 1 s e d , k ( t ) c e d , k ( t ) β e d , k i q e d , k + E c S e c ( t ) C e c ( t ) β e c i q e c + E c S h s ( t ) C h s ( t ) β h s i q h s + E c S c ( t ) C c ( t ) β c i q c
(6.1)
After time multiplexing, the multicode signal is sent through a multipath channel which has the well known impulse response given by this expression
h c ( t ) = l = 0 L - 1 h l δ ( t - τ l )
(6.2)
The received signal is then expressed as
x hsupa ( t ) = x hsupa ( t ) * h c ( t ) + n ( t ) = E c l = 0 L - 1 h l k = 0 K - 1 s e d , k ( t - τ l ) c e d , k ( t - τ l ) β e d , k i q e d , k + E c S e c β e c i q e c l = 0 L - 1 h l C e c ( t - τ l ) + E c l = 0 L - 1 h l S h s β h s i q h s C h s ( t - τ l ) + E c S c β c i q c C c ( t - τ l ) + n ( t )
(6.3)
DPCCH despreading is performed by calculating the inter-correlation between the received multicode signal and the spreading code corresponding to DPCCH channel. The output of the despreading process is written as
v l ( t ) = 1 S F pilot E c β c i q c S c l = 0 L - 1 h l + n l ( t )
(6.4)
where n l (t) is the noise after despreading. The l th channel coefficient is estimated by multiplying the despreading output by the transmitted pilot sequence. This is expressed as
h ̃ l = 1 S F pilot E c β c i q c l = 0 L - 1 h l + n l ( t ) S c
(6.5)
Since the additive noise is an AWGN with zero mean (by simulation), its effect on channel estimation can be significantly reduced by taking an average of h ̃ l over the pilot sequence size, N p .
ĥ l = 1 S F pilot N p E c β c l = 0 L - 1 h l + 1 N p j = 0 N p - 1 n l ( t ) S c , j
(6.6)

Declarations

Acknowledgements

Many thanks to our TEX-pert for developing this class file.

Authors’ Affiliations

(1)
Department of Communications Systems, INPT
(2)
Lab-STICC, UMR CNRS 3192/Ueb, Signal and Communications Department, Institut Telecom/Telecom Bretagne, Technopôle, Brest-Iroise
(3)
Orange-Labs, 38-40 rue du générale-Leclerc

References

  1. Et tolba M, Saoudi S, Visoz R, Idir TA: Chip-level LMMSE based Hybrid-ARQ Chase combining for HSUPA. In IEEE VTC-Spring. Volume 3. Barcelona, Spain; 2009:1-5.Google Scholar
  2. Kim J, Ashikhmin A, van Wijngaarden AJ, Sljanin E, Gopalakrishman N: On Efficient Link Error Prediction based on Convex Metrics. Volume 6. IEEE VTC-Fall, Los Angeles; 2004:4190-4194.Google Scholar
  3. TSG-RAN WG1 #35: Link Error Prediction for E-DCH. Lucent Technologies, Lisbon; 2003.Google Scholar
  4. Et tolba M, Eljamai M, Saoudi S, Visoz R: Link performance prediction for HSUPA in a multipath channel. In ACM IWCMC'09. Volume 2. Leipzig, Germany; 2009:859-863.View ArticleGoogle Scholar
  5. Lalam M, Visoz R, Berthet AO: Fast performance prediction of iterative MMSE-IC receivers in MU-MIMO CDMA systems. In IEEE VTC-Fall. Volume 6. Anchorage, Alaska; 2009:1-5.Google Scholar
  6. Stupia I, Gianneti F, Lottici V, Vandendorpe L: A novel link performance prediction method for coded MIMO-OFDM systems. In IEEE WCNC. Volume 1. Budapest; 2009:1-5.Google Scholar
  7. Das A, Sampath A: Link error prediction for wireless system simulations. In IEEE WCNC. Volume 1. Atlanta, Georgia USA; 2004:507-512.Google Scholar
  8. Ratasuk R, Ghosh A, Brown T, Love R, Xiao W: Predicting link level performance for enhanced uplink. In IEEE VTC-Fall. Volume 6. Los Angeles; 2004:4185-4189.Google Scholar
  9. 3GPP TS 25.213: Spreading and Modulation (FDD). 2007. Version 7.2.0Google Scholar
  10. Holma H, Toskala A: HSDPA/HSUPA for UMTS. John Wiley and Sons Ltd, The Atium Southern Gate, Chichester, West Sussex PO 19 8SQ, England; 2006.View ArticleGoogle Scholar
  11. Visoz R, Berthet AO, Lalam M: A novel fast semi-analytical performance prediction method for iterative MMSE-IC multiuser MIMO joint decoding. In IEEE GLOBECOM. Volume 55. New Orleans, LA, USA; 2008:1-5.Google Scholar
  12. Parkvall S, Paisa J, Torsner J, Sagfors M, Malm P: WCDMA enhanced uplink - principles and basic operation. In IEEE VTC-Spring. Volume 3. Stockholm, Sweden; 2005:1411-1415.Google Scholar
  13. Chase D: Code Combining-a maximum-likelihood decoding approach for combining an arbitrary number of noisy packets. IEEE Trans Commun 1985, XXXIII: 385-393.View ArticleGoogle Scholar
  14. Bertinelli M, Malkamaki E: Hybrid-ARQ for WCDMA enhanced uplink: link level performance in SHO. In IEEE PIMRC. Volume 4. Barcelona, Spain; 2004:2856-2860.Google Scholar

Copyright

© Et-tolba et al; licensee Springer. 2012

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.