(Будет удален) Создайте объект адаптивного алгоритма наименьшего среднего размера переменной (LMS)
varlms будет удален в следующем релизе. Использование comm.LinearEqualizer
или comm.DecisionFeedback
вместо этого.
alg = varlms(initstep,incstep,minstep,maxstep)
varlms
функция создает объект адаптивного алгоритма, который можно использовать с lineareq
функция или dfe
функция для создания объекта эквалайзера. Затем можно использовать объект эквалайзера с equalize
функция для выравнивания сигнала. Чтобы узнать больше о процессе выравнивания сигнала, смотрите эквализация.
alg = varlms(initstep,incstep,minstep,maxstep)
создает объект адаптивного алгоритма на основе алгоритма наименьшего среднего квадрата (LMS) переменного размера. initstep
- начальное значение параметра размера шага. incstep
- шаг, на который изменяется размер шага от итерации до итерации. minstep
и maxstep
- пределы, между которыми может варьироваться размер шага.
В таблице ниже описаны свойства объекта адаптивного алгоритма LMS переменного размера. Чтобы узнать, как просмотреть или изменить значения объекта адаптивного алгоритма, смотрите эквализация.
Свойство | Описание |
---|---|
AlgType | Фиксированное значение, 'Variable Step Size LMS' |
LeakageFactor | Коэффициент утечки LMS, действительное число от 0 до 1. Значение 1 соответствует обычному алгоритму обновления веса, в то время как значение 0 соответствует безпамятному алгоритму обновления. |
InitStep | Начальное значение размера шага, когда алгоритм запускается |
IncStep | Шаг, на который размер шага изменяется с итерации на итерацию |
MinStep | Минимальное значение размера шага |
MaxStep | Максимальное значение размера шага |
Кроме того, когда вы используете этот объект адаптивного алгоритма для создания объекта эквалайзера (через lineareq
или dfe
функция), объект эквалайзера имеет StepSize
свойство. Значение свойства является вектором, который перечисляет текущий размер шага для каждого веса в эквалайзере.
Ссылаясь на схемы, представленные в эквализация, задайте w как вектор всех токовых весов w i и задайте u как вектор всех входов u i. На основе текущего размера шага
μ0 = μ + (IncStep
) Re (gprev)
где g = ue*, g предыдущая - аналогичное выражение от предыдущей итерации, и оператор * обозначает комплексный сопряженный.
Затем новый размер шага задается как
мк0, если он находится между MinStep
и MaxStep
MinStep
, если мк0 < MinStep
MaxStep
, если мк0 > MaxStep
Новый набор весов задается как
(LeakageFactor
) ш + 2 мкг*
[1] Farhang-Boroujeny, B., Adaptive Filters: Theory and Applications, Chichester, England, Wiley, 1998.