Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Brush_Lecture_5.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
199.17 Кб
Скачать

Знаковые алгоритмы мнк (Simplified lms Algorithms)

Знаковые алгоритмы используются, главным образом, в аппаратных реализациях алгоритма МНК, поскольку они позволяют уменьшить число операций умножения при вычислениях новых значений коэффициентов адаптивного фильтра. Имеется 3 варианта знаковых алгоритмов.

  1. Алгоритм знака ошибки (The Sign Algorithm)

Этот алгоритм получается из обычного МНК алгоритма заменой значения ошибки её знаком .

Как обычно знаковая функция , т.е. эта функция равна (-1 ) для отрицательных значений ошибки e[k], равна 1 для положительных значений ошибки и равна 0 для e[k]=0. Вид функции знака

При этом для выполнения алгоритма достаточно N умножений вместо 2N, эти N умножений нужны для вычисления фильтром свертки.

  1. Алгоритм знака сигнала (The SignedRegressor Algorithm, алгоритм знаковой независимой переменной)

В этом варианте вектор значений сигнала в выражении для вычисления коэффициентов фильтра заменяется на вектор знаков сигнала. В результате рекурсия коэффициентов фильтра происходит по выражению

.

Формально это выражение аналогично предыдущему, но, как правило, сходимость данного алгоритма выше, чем у предыдущего.

  1. Алгоритм двойного знака (The Sign-Sign Algorithm)

Этот вариант представляет собой комбинацию двух предыдущих, т.е. в нем и ошибка e[k] и сигнал X[k] представляются знаковыми функциями, в связи с этим рекурсивное выражение обновления коэффициентов фильтра приобретает вид

.

Знаковые алгоритмы требуют меньше операций умножения, чем стандартный МНК алгоритм. Кроме того, если выбрать значение шага сходимости , то операция умножения в выражении для обновления коэффициентов заменяется на простые и быстрые операции сдвига и сложения, выполняемые с помощью логических элементов. Это значительно упрощает схемно – аппаратную реализацию всех этих упрощенных алгоритмов МНК.

В MATLAB имеются 3 функции, каждая из которых соответствует разновидности знакового МНК. Например, функция ha = adaptfilt.sd(l,step,leakage,coeffs,states) служит для реализации алгоритма знака сигнала (данных).

Как правило, рассматриваемые здесь 3 алгоритма имеют более медленную скорость сходимости., чем у стандартного МНК. Ниже на рис. приведены результаты моделирования задачи адаптивной идентификации КИХ – фильтра 31 – го порядка с использованием стандартного МНК и трех его модификаций - знаковых алгоритмов. Вычислялись кривые обучения для каждого из алгоритмов. Программная процедура представлена в Приложении 3. Из полученных результатов следует, что алгоритмы стандартного МНК и алгоритма знака сигнала имеют примерно одинаковую скорость сходимости и ошибку в установившемся режиме. Алгоритмы знака ошибки и двойного знака показали большее значение ошибки.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]