Айфичер Э., Джервис Б. Цифровая обработка сигналов, практический подход (2-е изд., 2004) (1095888), страница 122
Текст из файла (страница 122)
Вектор-градиент!7, взаимная корреляция первичного и вторичного входов Р и авто- корреляция первичного входа 22 связаны соотношением (10.23) ц = -а + гири. В алгоритме наименьших квадратов при вычислении ьт используются мгновенные значения. Следовательно, Ъуь = — 2Рь + 2йьЪЪгь = — 2Хьуа + 2ХьХтаЪЬгь —— (! 0.24) = -2ХА(уа — ХтаЪЪгь) = -2еьХг„., где еь = рь - Хь Игь. т Глава 10. Адаптивные цифровые фильтры 712 Подставляя уравнение (10.24) в выражение для алгоритма быстрейшего спуска, полу- чаем стандартный алгоритм наименьших квадратов Уидроу-Хопфа: (10.25, а) И'ал т = И'а + 2иеаХа, где ел — — ул — Ил.
Хл. т (10.25, б) 10.4.2. Практические ограничения стандартного алгоритма наименьших квадратов Применение стандартного алгоритма наименьших квадратов сопряжено с ненэторьн ми проблемами, что приводит к снижению производительности системы. Часть наиболее существенных проблем рассмотрена в данном разделе. 10.4.2.1.
Влияние нестационарности В стационарной среде поверхность производительности фильтра имеет постоянную форму и ориентацию, а характеристики адаптивного фильтра просто сходятся к оптимальному значению или колеблются около него. Если статистики сигнала меняются после схождения весовых коэффициентов к оптимальному значению, характеристика фильтра должна также перейти в новый набор оптимальных значений путем повторной настройки весовых коэффициентов.
При этом считается, что изменение статистик сигнала происходит достаточно медленно, чтобы коэффициенты успевали сходиться до оптимального значения между изменениями. Тем не менее в нестационарной среде точка минимума непрерывно движется, кроме того, могут меняться ориентация и кривизна траектории ее движения (см. рис. 10.11). Значит, в этом случае алгоритм должен не только найти точку минимума поверхности, но и отследить ее меняющееся положение, что сушественно снижает производительность схемы.
Отметим, что переменная называется нестнацлонарной, если ее статистики (такие как среднее, дисперсия, автокорреляция) меняются со временем, Причиной таких изменений могут быть, например, случайные помехи малой продолжительности (рис. 10.12) или неверные данные, причем такие изменения часто приводят к расстройке весовых коэффициентов фильтра'.
В настоящее время разработано несколько схем, в которых данная проблема исчезает, но обычно это усложняет стандартный алгоритм наименьших квадратов. Одна из таких схем — упорядоченный во времени адаптивный фильтр (согласно 13]). 10.4.2.2. Влияние компонентов сигнала на помехи во входном канале Производительность алгоритма зависит от измеренного сигнала помехи хл(т), который сильно коррелирует с реальной помехой, но слабо коррелирует (теоретически 'В атом случал особснно «рко нрсмаллютса недостатки линсйимк фильтров. — Прин.
рот. Глава 1О. Адаптивные цифроаыв фильтры ыхолг Аааптивиыа штмополааимла Рнс. 10,1З. Адаптивное шумоподавление при наличии компонентов сигнала в канала помехи и канале полезного сигнала 10.4.2.3. Требования к длине компьютерного представления Адаптивный КИХ-фильтр, основанный на методе наименьших квадратов, характеризуется следующими уравнениями: цифровой фильтр ба = ~ пга(т)ха с, (10.26, а) т=п адаптивный алгоритм И'вот = И'а+ 2ГсеаХа, (10.26, б) где еа = ш — И'а Ха. т Когда адаптивные фильтры реализуются на практике, весовые коэффициенты фильтра нга и входные переменные ка и уь неизбежно представляются конечным числом битов.
Таким образом, необходимые численные операции выполняются с использованием арифметики конечной точности. Рекурсивная природа алгоритма наименьших квадратов означает, что длина слова будет расти без ограничений и что некоторые биты придется отбрасывать перед сохранением каждого обновленного весового юэффициента. совсем не коррелирует) с полезным сигналом.
В большинстве случаев данное условие не выполняется. В некоторых приложениях зашумленный входной сигнал может включать и нежелательную помеху, и слабые компоненты сигнала. В результате вместе с шумом подавляются некоторые компоненты полезного сигнала. Подобная ситуация иллюстрируется на рис. 10.13. В работе 111) показано, что в этих случаях процесс адаптивного шумоподавления по-прежнему ведет к значительному улучшению отношения полезный сигнал-шум, но только за счет небольшого искажения сигнала. Впрочем, если ха содержит только сигналы и совсем не содержит шумовых компонентов, полезный сигнал в уа может быть полностью уничтожен. Названные результаты подтверждает работа авторов в области бномедицинсюй обработки сигналов 15).
10.4. Стандартный адаптивный апюритм наименьших квадратов Следовательно, уы е» и ю»(1) могут значительно отличаться от их истинных значений. Использование весовых коэффициентов фильтра и результатов арифметических операций с ограниченной точностью может вводить ошибки в адаптивные фильтры, влияние юторых проявляется так: 1) возможная несходимость адаптивного фильтра к оптимальному решению, что сделает его малоэффективным (например, если фильтр используется как шумоподавитель, возможен некоторый остаточный уровень помех); 2) выход фильтра может содержать шум, которые приведет к случайным колебаниям выхода; 3) возможно преждевременное завершение алгоритма. Следовательно, чтобы удержать эти ошибки в пределах допустимого, нужно использовать достаточное число битов.
В большинстве адаптивных систем, описанных в имеюшейся литературе, цифровые сигналы х», и р» представляются как числа с фиксированной запятой, нмеюшие длину от 8 до !6 бит, а квантованные коэффициенты имеют длину от 16 до 24 бит. Размер умножителей меняется в пределах от 8 х 8 бит до 24 х 16 бит, а размер накопителей — от 16 до 40 бит. Похоже, что для фильтров небольших порядков (до 100 коэффициентов) достаточно хранить коэффициенты не более чем с 16-битовой точностью и использовать умножитель 16 х 16 бит с накопителем длиной 32 бит.
10.4.2.4. Уход коэффициентов При наличии входов определенных типов (например, узкополосных сигналов) коэффициенты фильтра могут постепенно смещаться от оптимального значения и медленно расти, со временем превышая разрешенную длину слова. Данная проблема характерна для алгоритмов наименьших квадратов и в перспективе приводит к ухудшению производительности. Чтобы препятствовать уходу коэффициентов, на практике вводится коэффициент потерь, который слегка смещает коэффициенты к нулю.
Два примера подобных схем приведены ниже. ю»+,(1) = бю»(1) + 2»»е»х»» 0 < 6 < 1 (10.27, а) ю»»,(г) = ю»(() + 21»е»х», х 6 0 < б < 1 (10.27, б) Небольшой коэффициент потерь б гарантирует, что уход коэффициентов присутствует, но вводит в ошибку е» псевдослучайный шум. Как упоминалось ранее, эффективность стандартного алгоритма наименьших квадратов можно увеличить, несколько его модифицировав. Назовем некоторые улучшенные версии схемы наименьших квадратов. 1. Комплексный алгоритм наименьших квадратов, разрешающий обрабатывать комплексные данные. 2. Блочный алгоритм наименьших квадратов, имеющий значительное вычислительное преимущество и в некоторых случаях более быструю сходимость. 3.
Алгоритмы наименьших квадратов с упорядочением во времени, позволяющие решать некоторые несгационарные задачи. 710 Глава 10. Адаптивные цифровые фильтры «ь Рнс. 1Е.!4. Упролгенная блок-схема фильтра, построенного на основе схсмм навменьшнх квадратов '10,4.3: Другие алгоритмы на основе схемы наименьших квадратов 10.4.3.1. Комплексный алгоритм наименьших квадратов Обновление весовых коэффициентов фильтра с помощью комплексного алгоритма наименьших квадратов изложено согласно [12): Ыгььг = Ыгь + 21геьХь (10.28) где символом "тильда" обозначена комплексная переменная. Комплексный алгоритм наименьших квадратов идеально воплощается на базе процессоров РВЯР16ХХХ 1М11е1), юторые могут выполнять арифметические операции непосредственно с комплексными данными, что выгодно отличает их от обычных процессоров.
10.4.3.2. Быстрые алгоритмы наименьших квадратов Значительно сэкономить на вычислениях, особенно при большом числе юэффициентов фильтра, позволяют несколько блочных алгоритмов наименьших квадратов. Для уменьшения обьема вычислений данные в таких алгоритмах обрабатываются блоками, а не отдельными выборками. Изучив представление в частотной области реализации блочного алгоритма наименьших квадратов, можно отметить, насколько выгодно при выполнении свертки использовать быстрое преобразование Фурье (БПФ) 17).
Соответствующий эффективный фильтр, представленный в частотной области, изображен на рис. 10.14. 10.5. Рекурсивный алуоритм наименьших квадратов 717 ~Е уысигнвх ь шуы) ех )выход) Фильтр оь о — — наименьших хх)огУы) «ввдРатов Рис. 10,15. Иллюстрация основная идеи метода наименьших квадратов 10.5. Рекурсивный. алгоритм, наименьших квадратов,';,'..
Рекурсивный алгоритм наименьших квадратов основан на хорошо известной схеме наименьших квадратов (рис. 10.15). В ответ на набор входных сигналов хв(ь), а = 1, 2,..., и получается выходной сигнал ры который измеряется в дискретные моменты времени и. Входные и выходной сигналы связаны следующей регрессионной моделью: ул = ~~ ш(т)х),(т) + еуш (!0.29) (10.30) где у, Иу и Х„, записываются как хт(0) т(1) хт(2) (0) ш(1) ш(2) т' т( И ш(н — 1) х~(Ь) = (хь(0) хь(1) ...
хг,(н — 1)), )с = 0,1,,от — 1. Индекс т указывает, что каждая из приведенных выше матриц вычисляется для всех т информационных точек, а через Т обозначен транспонированный вектор. Уравнение (!0.30) определяет оптимальную оценку ИУ„, по схеме наименьших квадратов, которую можно получить с помощью любого удобного метода обращения матриц. Наконец, выход фильтра записывается как бь — — ~ ш(т)хь ь, )с = 1т 2,..., т. ша (10.31) где ев представляет ошибки измерения или другие эффекты, которые нельзя учесть, а ш(т) представляет долю т-го входа в первичном сигнале уь. Задача наименьших квадратов формулируется как получение по данным хл(т) и уь оценок величин с ш(0) по ш(п — 1).
Оптимальные оценки (по схеме наименьших квадратов) весовых коэффициентов фильтра ш(т) определяются выражением тзв Глава 10. Адаптивные цифровые фильтры 10.6.1. -' Рекурсивный алгоритм наименьших квадратов Вычисление И' по формуле (10.30) требует трудоемкого вычисления обратной матрицы. Очевидно, гго описанный выше метод наименьших квадратов не подходит для фильтрации в реальном времени. На практике при получении непрерывных данных, когда требуется улучшить оценку Иг с помощью новых данных, предпочтительны рекурсивные методы. При рекурсивном методе наименьших квадратов оценки И' можно обновлять для каждого нового полученного набора данных без прямого повторного трудоемкого обращения матрицы. Подходящий рекурсивный алгоритм получается, если учитывать данные с экспоненциально затухающими весовыми коэффициентами, чтобы постепенно устранить влияние старых данных на И' и позволить отслеживать медленно меняющиеся характеристики сигнала.
Итак, (10.32, а) И"ь = Ить-1+ Сьеы Рь — — — (Рь, — Сьв (Гс)Рь,~, т 7 (10.32, б) где Рь ,ж(й) Сь = оь еь = уь — а~(й)И'ь „ + т(й)Р По сути, введение .Рь позволяет рекурсивно вычислять обратную матрицу 1Хь Хь] '. Аргумент й используется, чтобы подчеркнуть тот факт, что величины вычисляются в каждый момент получения выборки; т называется яоэффициенлпьи забывания. Если положить у = 1, приведенная схема сведется к методу наименьших квадратов. Значение т обычно выбирается между 0,98 и 1. При меньших значениях наиболее свежим данным присваиваются слишком большие весовые коэффициенты, что приводит к сильной флуктуации оценок.