Construct variable-step-size least mean square (LMS) adaptive algorithm object
alg = varlms(initstep,incstep,minstep,maxstep)
varlms function creates an adaptive
algorithm object that you can use with the
dfe function to create an
equalizer object. You can then use the equalizer object with the
equalize function to equalize a signal.
To learn more about the process for equalizing a signal, see Adaptive Algorithms.
alg = varlms(initstep,incstep,minstep,maxstep) constructs
an adaptive algorithm object based on the variable-step-size least
mean square (LMS) algorithm.
initstep is the initial
value of the step size parameter.
incstep is the
increment by which the step size changes from iteration to iteration.
the limits between which the step size can vary.
The table below describes the properties of the variable-step-size LMS adaptive algorithm object. To learn how to view or change the values of an adaptive algorithm object, see Access Properties of an Adaptive Algorithm.
|Fixed value, |
|LMS leakage factor, a real number between 0 and 1. A value of 1 corresponds to a conventional weight update algorithm, while a value of 0 corresponds to a memoryless update algorithm.|
|Initial value of step size when the algorithm starts|
|Increment by which the step size changes from iteration to iteration|
|Minimum value of step size|
|Maximum value of step size|
Also, when you use this adaptive algorithm object to create
an equalizer object (via the
dfe function), the equalizer object has
StepSize property. The property value is a vector
that lists the current step size for each weight in the equalizer.
For an example that uses this function, see Linked Properties of an Equalizer Object.
Referring to the schematics presented in Equalizer Structure, define w as the vector of all current weights wi and define u as the vector of all inputs ui. Based on the current step size, μ, this adaptive algorithm first computes the quantity
μ0 = μ + (
where g = ue*, gprev is the analogous expression from the previous iteration, and the * operator denotes the complex conjugate.
Then the new step size is given by
μ0, if it is between
MinStep, if μ0 <
MaxStep, if μ0 >
The new set of weights is given by
LeakageFactor) w + 2 μ g*
 Farhang-Boroujeny, B., Adaptive Filters: Theory and Applications, Chichester, England, Wiley, 1998.