5.4.3. Итеративный метод синтеза с предварительной фильтрацией
Шоу и Мерсеро [13] предложили
другой метод синтеза двумерных БИХ-фильтров по минимуму среднеквадратичной
ошибки. Он является развитием метода идентификации одномерных систем [19] и
состоит в том, что норма ошибки записывается в форме системы линейных
уравнений, решаемых на каждой итерации относительно параметров фильтра . Выражение (5.72)
можно переписать в виде
(5.102)
где
использовано определение
. (5.103)
В
пространственной области выражение (5.102) принимает вид
, (5.104)
причем
. (5.105)
Пока,
еще задача минимизации не модифицирована, так как - функция коэффициентов знаменателя . Однако если бы
последовательность не
зависела от ,
то минимизация (5.104) привела бы к решению системы линейных уравнений. При
итерационной оптимизации для вычисления последовательности в текущей итерации можно
использовать из
предыдущей итерации. После этого можно решить систему линейных уравнений для
получения новых значений .
Приравнивая нулю частные производные
выражения (5.104), получим
, (5.106a)
. (5.106б)
Нетрудно
проверить, что частные производные выражения (5.105), используемые в (5.106),
имеют вид
, (5.107а)
, (5.107б)
предполагая,
что последовательность не изменяется во время текущей итерации.
Последовательность для
текущей итерации, обозначенная , находится из с использованием рекурсивного
выражения
. (5.108)
В точке сходимости ошибки,
вычисленные из выражений (5.105) и (5.75), будут идентичны. Однако эта величина
может не быть истинным минимумом [13,19], так как истинные частные производные
от по
коэффициентам фильтра не равны выражению (5.107б), где считалось константой.
Поэтому при равенстве нулю выражения (5.106б) истинные градиенты могут
отличаться от нуля, указывая направление дальнейшего уменьшения .
Истинные частные производные от по имеют вид [13]
, (5.109)
где
- результат
обратного преобразования Фурье функции
. (5.110)
После того как итеративные
вычисления, основанные на выражениях (5.106) и (5.107), сошлись, мы можем
использовать результирующие параметры фильтра в качестве начального приближения для
вторичных итеративных вычислений, в которых вместо выражения (5.107б)
используется выражение (5.109). Уравнения, решаемые на каждой итерации, по-прежнему
будут линейными [13].
Итеративный метод проектирования
с предварительной фильтрацией на практике сходится гораздо быстрее, чем более
общие методы оптимизации, например метод Флетчера-Пауэлла [14]. Однако может
случиться, что на некоторой конкретной итерации фильтр окажется неустойчивым,
что обычно приводит к серьезным трудностям при вычислении последовательности для следующей
итерации. Хотя устойчивость фильтра нельзя доказать аналитически,
представляется, что если метод на практике сходится, то он всегда дает
устойчивый фильтр [13].
Пример 1 [13]
Итерационный метод проектирования
с предварительной фильтрацией был использован для синтеза двумерного фильтра
нижних частот. Требуемый отклик был откликом -точечного КИХ-фильтра первого
квадранта, синтезированного методом окон с номинальной частотой среза и шириной переходной
полосы .
Номинальное усиление в полосе пропускания равнялось 1,0 с максимальным
значением пульсаций 0,017. Максимальное значение пульсаций в полосе
непропускания равнялось 0,0076. Поскольку использовался только первый квадрант
импульсного отклика, последовательность отличалась от нуля только в области
плоскости размером
точек.
Результирующий отклик с круговой симметрией был получен с помощью четырех
одноквадрантных фильтров, соединенных параллельно.
Для аппроксимации
последовательности с
помощью итерационного метода проектирования с предварительной фильтрацией был
синтезирован двумерный БИХ-фильтр. Порядок фильтра как в числителе, так и в
знаменателе равнялся . Полная среднеквадратичная ошибка по 144
отсчетам в равнялась
в точке сходимости ,
причем она была достигнута лишь за четыре итерации (по две каждого типа).
Пульсации результирующего составного фильтра в полосе пропускания равнялись
0,015, а в полосе непропускания - 0,0072; ширина переходной полосы равнялась .
Для сравнения тот же фильтр был
синтезирован с использованием общего алгоритма оптимизации Флетчера-Пауэлла [14].
Сходимость была достигнута приблизительно за 80 итераций.
В данном случае итерационный
метод синтеза с предварительной фильтрацией существенно более эффективен с
точки зрения вычислений.