Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Алгоритм RLS
В принципе, в процессе приема сигнала можно на каждом очередном шаге пересчитывать коэффициенты фильтра непосредственно по формуле (5.13), однако это связано с неоправданно большими вычислительными затратами. Действительно, размер матрицы U постоянно увеличивается и, кроме того, необходимо каждый раз заново вычислять обратную матрицу (UUT) . Сократить вычислительные затраты можно, если заметить, что на каждом шаге к матрице U добавляется лишь один новый столбец, а к вектору d – один новый элемент. Это дает возможность организовать вычисления рекурсивно. Соответствующий алгоритм называется рекурсивным методом наименьших квадратов (Recursive Least Square, RLS). Подробный вывод формул, описывающих алгоритм RLS, можно найти, например, в [2, 3], здесь, cледуя [4], приведем лишь основные идеи. При использовании алгоритма RLS производится рекурсивное обновление оценки обратной корреляционной матрицы P= (UUT) , а вывод формул основывается на следующем матричном тождестве: (A + BCD) = где А и С – квадратные невырожденные матрицы (необязательно одинаковых размеров), а В и D – матрицы совместимых размеров. Применение этой формулы для рекурсивного обновления обратной корреляционной матрицы Р в сочетании с исходной формулой (5.13) для коэффициентов оптимального фильтра дает следующую последовательность шагов адаптивного алгоритма RLS.
1. При поступлении новых входных данных u(k) производится фильтрация сигнала с использованием текущих коэффициентов фильтра w(k-1) и вычисление величины ошибки воспроизведения образцового сигнала: y(k)=u (k)w(k-1); (5.14) e(k) = d(k)-y(k). 2. Рассчитывается вектор-столбец коэффициентов усиления (следует отметить, что знаменатель дроби в следующих двух формулах является скаляром, а не матрицей): K(k) = . (5.15) 3. Производится обновление оценки обратной корреляционной матрицы сигнала: . (5.16) 4. Наконец, производится обновление коэффициентов фильтра . (5.17) Начальное значение вектора w обычно принимается нулевым, а в качестве исходной оценки матрицы Р используется диагональная матрица вида CE , где скаляр С > > 1 (в [2] рекомендуется С > =100). В критериях ошибок (5.10) и (5.12) значениям ошибки на всех временных тактах придается одинаковый вес. В результате, если статистические свойства входного сигнала со временем изменяются, это приводит к ухудшению качества фильтрации. Чтобы дать фильтру возможность отслеживать нестационарный входной сигнал, можно применить в (5.10) экспоненциальное забывание, при котором вес прошлых значений сигнала ошибки экспоненциально уменьшается . В этом случае формулы (15), (16) принимают следующий вид ; . Главным достоинством алгоритма RLS является быстрая сходимость. Однако достигается это за счет значительно более высокой (по сравнению с алгоритмом LMS) вычислительной сложности. Согласно [2] при оптимальной организации вычислений для обновления коэффициентов фильтра на каждом такте требуется (2.5N2+4N) пар операций «умножение–сложение».
|