Iterative rational Krylov algorithm
Итерационный рациональный алгоритм Крылова (IRKA) — это итеративный алгоритм, полезный для понижения порядка модели (MOR) с одним входом и одним выходом линейных, инвариантных во времени динамических систем (SISO) . [1] На каждой итерации IRKA выполняет интерполяцию типа Эрмита исходной передаточной функции системы. Каждая интерполяция требует решения сдвинутые пары линейных систем , каждая размером ; где - исходный системный порядок, и желаемый приведенный порядок модели (обычно ).
Алгоритм был впервые представлен Гугерсиным, Антуласом и Битти в 2008 году. [2] Он основан на необходимом условии оптимальности первого порядка, первоначально исследованном Мейером и Люенбергером в 1967 году. [3] Первое доказательство сходимости IRKA было предоставлено Флэггом, Битти и Гугерсином в 2012 году. [4] для определенного типа систем.
MOR как задача оптимизации
[ редактировать ]Рассмотрим линейную нестационарную динамическую систему SISO с входными данными и вывод :
Применяя преобразование Лапласа с нулевыми начальными условиями, получаем передаточную функцию , который является дробью многочленов:
Предполагать является стабильным. Данный , MOR пытается аппроксимировать передаточную функцию , устойчивой рациональной передаточной функцией , порядка :
Возможным критерием аппроксимации является минимизация абсолютной ошибки норма:
Это известно как оптимизации проблема . Эта проблема широко изучена, и известно, что она невыпуклая; [4] это означает, что обычно будет трудно найти глобальный минимизатор.
Условия Мейера – Люенбергера
[ редактировать ]Следующее необходимое условие оптимальности первого порядка для Проблема имеет большое значение для алгоритма IRKA.
Теорема ( [2] [Теорема 3.4] [4] [Теорема 1.2]) — Предположим, что задача оптимизации допускает решение с простыми столбами. Обозначим эти полюса: . Затем, должен быть интерполятором Эрмита , через отраженные полюса :
Обратите внимание, что полюса являются собственными значениями приведенного матрица .
Интерполяция Эрмита
[ редактировать ]Интерполирующий отшельник рациональной функции , через отдельные точки , имеет компоненты:
где матрицы и можно найти, решив двойные пары линейных систем, по одной на каждую смену [4] [Теорема 1.1]:
Алгоритм ИРКА
[ редактировать ]Как видно из предыдущего раздела, нахождение интерполятора Эрмита из , через учитывая очки, относительно легко. Сложнее всего найти правильные точки интерполяции. IRKA пытается итеративно аппроксимировать эти «оптимальные» точки интерполяции.
Для этого все начинается с произвольные точки интерполяции (замкнутые относительно сопряжения), а затем на каждой итерации , оно налагает необходимое условие оптимальности первого порядка проблема:
1. найти интерполянт Эрмита из , через фактическое точки переключения: .
2. обновить смены, используя полюса нового :
Итерация останавливается, когда относительное изменение набора сдвигов двух последовательных итераций меньше заданного допуска. Это условие можно сформулировать как:
Как уже упоминалось, каждая интерполяция Эрмита требует решения сдвинутые пары линейных систем, каждая размером :
Кроме того, для обновления смен необходимо найти полюса нового интерполянта . То есть найти собственные значения приведенного матрица .
Псевдокод
[ редактировать ]Ниже приведен псевдокод алгоритма IRKA. [2] [Алгоритм 4.1].
algorithm IRKA input: , , closed under conjugation % Solve primal systems % Solve dual systems while relative change in {} > tol % Reduced order matrix % Update shifts, using poles of % Solve primal systems % Solve dual systems end while return % Reduced order model
Конвергенция
[ редактировать ]Говорят, что линейная система SISO имеет симметричное пространство состояний (SSS), когда: Системы этого типа встречаются во многих важных приложениях, например, при анализе RC-цепей и в обратных задачах, включающих трехмерные уравнения Максвелла . [4] Для систем НДС с разными полюсами доказан следующий результат сходимости: [4] «IRKA — это локально сходящаяся итерация с фиксированной точкой для локального минимизатора проблема оптимизации».
Хотя для общего случая нет доказательства сходимости, многочисленные эксперименты показали, что IRKA часто сходится быстро для различных типов линейных динамических систем. [1] [4]
Расширения
[ редактировать ]Алгоритм IRKA был расширен первоначальными авторами на системы с несколькими входами и многими выходами (MIMO), а также на дискретные и дифференциально-алгебраические системы. [1] [2] [Замечание 4.1].
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: а б с «Итерационный рациональный алгоритм Крылова» . МОР Wiki . Проверено 3 июня 2021 г.
- ^ Jump up to: а б с д Гугерцин, С.; Антулас, AC ; Битти, К. (2008). Редукция модели для крупномасштабных линейных динамических систем , Журнал матричного анализа и приложений, том. 30, СИАМ, стр. 609–638.
- ^ Л. Мейер; Д. Г. Люенбергер (1967), Приближение систем линейных констант , Транзакции IEEE по автоматическому управлению, том. 12, стр. 585–588.
- ^ Jump up to: а б с д и ж г Г. Флэгг; К. Битти; С. Гугерчин (2012), Сходимость итеративного рационального алгоритма Крылова , Системы и управляющие буквы, т. 1, с. 61, стр. 688–691.