Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
5.4.2. Методы спуска для синтеза в пространственной областиДля решения задачи синтеза двумерных БИХ-фильтров можно использовать общие методы нелинейной оптимизации. Ограниченность объема книги не позволяет нам привести здесь общее сравнение и оценку всех известных методов. Заинтересованному читателю хорошую отправную точку дадут работы [10,11]. В этом разделе мы отметим несколько методов оптимизации, часто используемых при проектировании как одномерных, так и двумерных БИХ-фильтров.
Для удобства определим вектор параметров как набор коэффициентов фильтра . Возмущения вектора параметров обозначим через . В общем случае алгоритмы нелинейной оптимизации итеративны по своей природе. На каждой итерации заданием возмущений текущих значений параметров делается попытка уменьшить ошибку аппроксимации. Обозначим функциональную зависимость ошибки от вектора параметров . Тогда на каждой итерации отыскивается вектор возмущений , для которого . (5.91) (На практике можно умножить на положительный скаляр . Тогда можно считать, что определяет направление поиска, а - размер шага.) В методе наискорейшего спуска вектор направления выбирается равным градиенту функционала ошибки, взятому со знаком минус: . (5.92) Частные производные связаны с частными производными выходного сигнала выражениями (5.77). Метод наискорейшего спуска относительно прост в использовании, но отличается медленной сходимостью [10,13]. Поэтому часто его используют лишь на нескольких первых итерациях минимизации. Метод Ньютона аппроксимирует функционал ошибки с помощью ряда Тейлора второго порядка вида , (5.93) где - матрица Гессе, -я компонента которой представляет собой частную производную второго порядка , a и - -я и -я компоненты вектора параметров . Чтобы найти вектор возмущений , необходимо продифференцировать выражение (5.93) по и приравнять результат нулю. Это приводит к системе линейных уравнений , (5.94) которая решается на каждой итерации для нахождения . Теоретически этот метод обеспечивает квадратичную сходимость, если вектор параметров близок к оптимальному. Однако метод требует для нахождения вычисления частных производных второго порядка. Это, конечно, связано с дополнительными вычислительными расходами. Несмотря на потенциально быструю сходимость, метод Ньютона часто вообще не сходится при минимизации в пространственной области, потому что при векторе , близком к оптимальному, матрица Гессе может иметь отрицательные собственные значения [10]. Тем не менее, как мы увидим в разд. 5.6.1, метод Ньютона используется с определенным успехом при минимизации в частотной области. Для синтеза прямых форм двумерных БИХ-фильтров успешно использовался [13] алгоритм минимизации Флетчера-Пауэлла [14]. Этот алгоритм получил название «алгоритма наискорейшего спуска с ускоренной сходимостью», поскольку в нем для вычисления частных производных второго порядка используются частные производные первого порядка плюс информация, полученная на предыдущих итерациях. Алгоритм Флетчера-Пауэлла, как и алгоритмы наискорейшего спуска и Ньютона, требует начальной оценки вектора параметров. Обоснованный выбор этой начальной оценки помогает ускорить сходимость, а также избежать при поиске глобального минимума локальных минимумов. Часто в качестве хорошей начальной оценки используется алгоритм Шэнкса [11]. При синтезе одномерных и двумерных БИХ-фильтров успешно применялся также метод линеаризации [10,15,16]. В этом методе используется разложение в ряд Тейлора первого порядка вариации выходного сигнала как функции вектора параметров . Чтобы подчеркнуть эту функциональную зависимость, а также для некоторого упрощения обозначений будем использовать индекс и опустим указание на зависимость от , т. е. определим . (5.95) Запишем ряд Тейлора первого порядка , (5.96) в котором компоненты градиентного вектора представляют собой частные производные по коэффициентам фильтра, образующим вектор параметров . Теперь функционал ошибки можно приближенно выразить в виде . (5.97) Дифференцируя это выражение по вектору возмущений и приравнивая производные нулю, получим . (5.98) Эти нормальные уравнения следует разрешить относительно . Используя соотношение , (5.99) их можно записать в более сжатом виде. Подставив (5.99) в (5.98), получим систему линейных уравнений , (5.100) где - матрица, -й элемент которой имеет вид . (5.101) Поскольку на первой итерации значение вектора известно, можно вычислить величины и . Из них легко получить и и нормальные уравнения (5.100), которые затем разрешаются относительно . Строго говоря, все эти способы не могут гарантировать устойчивости [ни в смысле ограниченности входа и выхода , ни в среднеквадратичном смысле ], поскольку на практике квадратичная ошибка суммируется только по области конечной протяженности в плоскости . Однако если требуемый сигнал квадратично суммируем и область суммирования ошибки выбрана достаточно протяженной, то фильтр будет скорее всего устойчив в обоих упомянутых выше смыслах. В интересах полноты упомянем алгоритм минимизации Левенберга-Марквардта [17], который использовался для синтеза двумерного БИХ-фильтра в частотной области [18]. Этот алгоритм можно рассматривать как компромисс между методами Ньютона и наискорейшего спуска. Поэтому он итеративен и обеспечивает решение системы линейных уравнений относительно вектора направления на каждой итерации. В варианте метода, использованном в работе [18], необходимые частные производные вычислялись не с помощью явных формул, а численно.
|
1 |
Оглавление
|