(18)
Для вирішення завдання необхідно перейти у формулі (3) до матричної записи уздовж координати k, отримавши формули для векторів-стовпців вихідного сигналу у і для помилки відтворення вхідного сигналу е:
(19)
Тут d - вектор-стовпець відліків зразкового сигналу, а X - матриця, стовпці якої являють собою вміст лінії затримки фільтра на різних тактах:
Вираз (18) для для сумарної квадратичної помилки можна переписати у матричному вигляді наступним чином:
(20)
Підставивши (19) в (20), маємо:
Для знаходження мінімуму необхідно обчислити градієнт даного функціоналу і прирівняти його нулю:
Звідси легко виходить шукане оптимальне рішення:
(21)
У формулі простежується близьку спорідненість з формулою (8), яка описує оптимальний в статистичному сенсі фільтр Вінера. Дійсно, якщо врахувати, що дає оцінку кореляційної матриці сигналу, отриману за однією реалізації ергодичного випадкового процесу шляхом тимчасового усереднення, а є аналогічною оцінкою взаємних кореляцій між зразковим сигналом і вмістом лінії затримки фільтра, то формули (8) і (21) співпадуть.
.4 Адаптивний алгоритм RLS
В принципі, в процесі прийому сигналу можна на кожному черговому кроці перераховувати коефіцієнти фільтра безпосередньо за формулою (21), проте це пов'язано з невиправдано великими обчислювальними витратами. Дійсно, розмір матриці X постійно збільшується і, крім того, необхідно щоразу заново обчислювати зворотну матрицю.
Скоротити обчислювальні витрати можна, якщо зауважити, що на кожному кроці до матриці X додається лише один новий стовпець, а до вектора d - один новий елемент. Це дає можливість організувати обчислення рекурсивно. Відповідний алгоритм називається рекурсивним методом найменших квадратів (Recursive Least Square, RLS).
На k-му кроці оптим?? льний вектор коефіцієнтів фільтра, згідно (21), дорівнює
. (22)
До матриці X на кожному кроці додається новий стовпець x (k + 1), а до вектора d - новий елемент d (k + 1):
(23)
При використанні алгоритму RLS виробляється рекурсивне оновлення оцінки зворотного кореляційної матриці.
При переході до наступного кроку маємо:
(24)
Тепер скористаємося матричним тотожністю
(25)
де А і С - довільні квадратні невироджені матриці, а В і D - довільні матриці сумісних розмірів.
Встановимо між (24) і (25) відповідність:
? (квадратна матриця);
? (вектор-стовпець);
? (скаляр);
? (вектор-рядок).
У результаті (24) можна записати наступним чином:
(26)
Зауважимо, що фрагмент вираження, що зводиться в мінус перший ступінь, являє собою скаляр. Використовуємо (23) і (26) у виразі (22) для коефіцієнтів фільтра:
Розкриємо дужки:
Перший доданок в отриманій формулі, згідно (22), являє собою коефіцієнти оптимального фільтра для k-го кроку - w (k). Цей же вектор можна виділити в якості множника в другому доданку. У третьому і четвертому доданків можна виділити загальний множник P (k) x (k + 1) d (k + 1):
Виконавши обчислення в дужках і винісши спільний множник, отримуємо:
Зауважимо, що твір є результат опрацювання надходження на k-му кроці вхідного сигналу фільтром зі старими коефіцієнтами w (k). Тобто, цей твір являє собою вихідний сигнал адаптивного фільтра y (k + 1). Відповідно, різниця в дужках - це помилка фільтрації e (k + 1):
Тепер введемо позначення для винесеного за дужки векторного множника:
З урахуванням цього формула для коефіцієнтів фільтра прийме вигляд:
(27)
Вектор K (k + 1) називають вектором коефіцієнтів підсилення.
Отже, при використанні адаптивного алгоритму RLS необхідно на на кожному такті виконувати наступні кроки:
. При надходженні нових вхідних даних x (k) проводиться фільтрація сигналу з використанням поточних коефіцієнтів фільтра w (k - 1) і обчислення величини помилки відтворення зразкового сигналу:
2. Розраховується вектор-стовпець коефіцієнтів підсилення (слід зазначити, що вектор K щоразу розраховується заново, т. Е. Обчислення не рекурсивних, а також що знаменник дробу є скаляром):
(28)
. Проводиться оновлення оцінки зворотного кореляційної матриці сигналу:
(29)
Нарешті, проводиться оновлення коефіцієнтів фільтра:
...