# Instability Problem in Normalized Least Mean Squares (NLMS) Adaptive Algorithm

I have been used NLMS algorithm to equalize 4x4 MIMO signals, but the bit-error-rate (BER) after equalization is unstable with iterations. I don't know if it is the normal behavior of the adaptive algorithm or some parameters in the algorithm needed to be adjusted.

the updated equation used for this algorithm is:

$$\mathbf{w}[n+1] = \mathbf{w}[n] + \mu \mathbf{x}[n]\frac{ e^*[n]}{\mathbf{x}^H[n] \mathbf{x}[n] + \gamma}$$

where $\mathbf{w}$ is the weights, $\mu$ is the step size, $\mathbf{x}$ is the input signal, $e$ is the error and $\gamma$ is a small positive number.

in my simulation, I used these values:

number of weights=100, mu=0.001 and gamma=0.001

the constellation of the desired signal and output signal from channel

(the length of the channel filter is 400) and the BER figures are shown:

is the instability normal for this algorithm?. Although I have tried different values for filter length and the step size, the BER is still unstable

• Unstable ? Or do you mean not Converging ? The oscillation (variation) from sample to sample in the BER plot is a typical of LMS type of adaptive filters when the convergence is slow. Which can be due to a number of factors, other than an implementation error, such as non-stationary input signal or improper step size $\mu$. – Fat32 Jun 21 '16 at 16:34
• yes, i mean the oscillation from sample to sample. even when i increased the step size these oscillations still exist. – M. F. Jun 21 '16 at 16:59
• how to know if the input signal is non-stationary? at first, i generate random binary data, data modulated using 4-QAM then the data passed through the channel with length 400 – M. F. Jun 21 '16 at 17:53
• If your channel length is 400 and your adaptive filter is length 100, how do you expect it to equalize at all? – Peter K. Jun 21 '16 at 18:17
• @Peter Actually, increasing the filter length decreases the min BER at the expense of increasing these oscillations. – M. F. Jun 21 '16 at 19:02