Сбалансированное усечение модели методом Шура
GRED = schurmr(G) GRED = schurmr(G,order) [GRED,redinfo] = schurmr(G,key1,value1,...) [GRED,redinfo] = schurmr(G,order,key1,value1,...)
schurmr возвращает модель сокращенного заказа GRED G и структурный массив redinfo, содержащий границу ошибки уменьшенной модели и сингулярные значения Ханкеля исходной системы.
Граница ошибки вычисляется на основе сингулярных значений Ханкеля G. Для стабильной системы сингулярные значения Hankel указывают соответствующую энергию состояния системы. Следовательно, уменьшенный порядок может быть непосредственно определен путем исследования системы Hankel SV's,
Только с одним входным аргументом G, функция покажет график сингулярных значений Ханкеля исходной модели и предложит уменьшить номер заказа модели.
Этот метод гарантирует привязку ошибки к бесконечной норме аддитивной ошибки ∥ G-GRED ∥∞ для хорошо кондиционированной модели уменьшил проблемы [1]:
В этой таблице описаны входные аргументы для schurmr.
Аргумент | Описание |
|---|---|
G | Модель LTI должна быть уменьшена (без каких-либо других входных данных построят график ее сингулярных значений Ханкеля и предложат уменьшить порядок). |
ORDER | (Необязательно) целое число для требуемого порядка уменьшенной модели или, необязательно, вектор, упакованный с требуемыми заказами для пакетных прогонов |
Пакетное выполнение серии различных моделей сокращенного заказа может быть создано путем указания order = x:y, или вектор целых чисел. По умолчанию вся антистабильная часть системы сохраняется, поскольку с точки зрения стабильности управления избавление от нестабильного состояния (состояний) опасно для моделирования системы.
'MaxError' может быть указан таким же образом, как альтернатива для ' ORDER '. В этом случае уменьшенный порядок будет определен, когда сумма хвостов Hankel sv достигнет 'MaxError'.
Аргумент | Стоимость | Описание |
|---|---|---|
'MaxError' | Действительное число или вектор различных ошибок | Сокращение для достижения H∞ ошибки. При наличии, |
'Weights' |
| Оптимальный массив ячеек 1x2 с весами LTI |
'Display' |
| Отображение сингулярных графиков Hankel (по умолчанию |
'Order' | Целое число, вектор или массив ячеек | Порядок уменьшенной модели. Используйте, только если не указан в качестве второго аргумента. |
Веса на входе и/или выходе исходной модели могут заставить алгоритм уменьшения модели сосредоточиться на некотором частотном диапазоне интересов. Но веса должны быть стабильными, минимальными по фазе и обратимыми.
В этой таблице описываются выходные аргументы.
Аргумент | Описание |
|---|---|
GRED | Модель сокращенного заказа LTI. Становится многомерным массивом, когда вход является последовательным массивом другого порядка модели. |
REDINFO | Массив STRUCT с 3 полями:
|
G может быть стабильной или нестабильной. G и GRED может быть непрерывным или дискретным.
Учитывая непрерывную или дискретную, стабильную или нестабильную систему, G, следующие команды могут получить набор моделей уменьшенного порядка на основе выбранных вами вариантов:
rng(1234,'twister');
G = rss(30,5,4);
[g1, redinfo1] = schurmr(G); % display Hankel SV plot
% and prompt for order (try 15:20)
[g2, redinfo2] = schurmr(G,20);
[g3, redinfo3] = schurmr(G,[10:2:18]);
[g4, redinfo4] = schurmr(G,'MaxError',[0.01, 0.05]);
for i = 1:4
figure(i); eval(['sigma(G,g' num2str(i) ');']);
end
При заданном пространстве состояний (A, B, C, D) системы и k, требуемом уменьшенном порядке, следующие этапы будут производить преобразование подобия для усечения исходной системы состояния-пространства до k-й уменьшенной модели [16].
Найдите грамматики управляемости и наблюдаемости P и Q.
Найдите разложение Шура для PQ в порядке возрастания и убывания соответственно.
= [λ n...... 0...... 00λ 1]
Найдите ортонормированные собственные основания PQ слева/справа, связанные с k-ми большими сингулярными значениями Ханкеля.
BIG] ︷
Найти SVD для (VTL, BIG VR, BIG) = U Λ VT
SMALL]
Сформировать левое/правое преобразование для последней модели уменьшенного порядка k
SL, BIG = V L, BIG UΛ (1: k, 1: k) - ½
SR, BIG = VR, BIGVΛ (1: k, 1: k) - ½
Наконец,
BIGTBCSR, BIGD]
Доказательство алгоритма усечения баланса Шура можно найти в [2].
[1] К. Гловер, «Все оптимальные аппроксимации норм Hankel линейных многовариантных систем и их L∝ - границы ошибок», Int. J. Control, том 39, № 6, стр. 1145-1193, 1984 .
[2] М. Г. Сафонов и Р. Я. Чианг, «Метод Щура для сбалансированного снижения модели», IEEE Trans. on Automat. Контр., том 34, № 7, июль 1989, стр. 729-733.