Estimate weights of LMS adaptive filter
DSP System Toolbox / Filtering / Adaptive Filters
The LMS Update block estimates the weights of an LMS adaptive filter. The block accepts the data and error as inputs and computes the filter weights based on the algorithm the block chooses. For more details on the algorithms, see Algorithms.
You can use this block to compute the adaptive filter weights in applications such as system identification, inverse modeling, and filtered-x LMS algorithms, which are used in acoustic noise cancellation. For more details, see References.
Data Types |
|
Direct Feedthrough |
|
Multidimensional Signals |
|
Variable-Size Signals |
|
Zero-Crossing Detection |
|
The block computes filter weight estimates using .
The function is defined according to the LMS algorithm you specify through the Algorithm parameter:
LMS
—
Normalized LMS
—
In the Normalized LMS
algorithm,
ε is a small positive constant that overcomes the
potential numerical instability in the update of weights.
For double-precision floating-point inputs, ε is
2.2204460492503131e-016
. For single-precision
floating-point inputs, ε is
1.192092896e-07
. For fixed-point input,
ε is 0.
Sign-Error LMS
—
Sign-Data LMS
— , where u(n) is
real
Sign-Sign LMS
— , where u(n) is
real
In the previous equations:
n — The current time index
u(n) — The vector of buffered input samples at step n
u*(n) — The complex conjugate of the vector of buffered input samples at step n
w(n) — The vector of filter weight estimates at step n
e(n) — The estimation error at step n
µ — The adaptation step size
α — The leakage factor (0 ≤ α ≤ 1)
[1] Madisetti, Vijay, and Douglas Williams. "Introduction to Adaptive Filters." The Digital Signal Processing Handbook. Boca Raton, FL: CRC Press, 1999.
[2] Akhtar, M. T., M. Abe, M. Kawamata. "Modified-filtered-x LMS algorithm based active noise control systems with improved online secondary-path modeling." IEEE Symposium on Circuits and Systems, 2004.