schurmr

Усечение сбалансированной модели через метод Шура

Синтаксис

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 SV, σ ι.

С одним только входным параметром Gфункция покажет график сингулярного значения Ханкеля исходной модели и предложит уменьшить число порядков моделей.

Этот метод гарантирует ограничение ошибки на норме по бесконечности аддитивногоошибки G-GRED ∥∞ для хорошо обусловленных моделей уменьшенных задач [1]:

GGred2k+1nσi

Эта таблица описывает входные параметры для schurmr.

Аргумент

Описание

G

Модель LTI, которая будет уменьшена (без каких-либо других входов будет строить графики ее сингулярных значений Ханкеля и запрашивать пониженный порядок).

ORDER

(Необязательно) целое число для желаемого порядка уменьшенной модели или, опционально, вектор, упакованный с желаемыми порядками для пакетных запусков

Пакетный запуск последовательного набора различных моделей пониженного порядка может быть сгенерирован путем определения order = x:y, или вектор из целых чисел. По умолчанию вся антистабильная часть системы сохранена, потому что с точки зрения стабильности контроля, избавление от нестабильного состояния (состояний) опасно, чтобы смоделировать систему.

'MaxError' может быть задано так же, как альтернатива для ' ORDER '. В этом случае пониженный порядок будет определен, когда сумма хвостов Hankel sv достигает 'MaxError'.

Аргумент

Значение

Описание

'MaxError'

Действительное число или вектор различных ошибок

Уменьшите, чтобы добиться H ∞ ошибки.

Когда присутствует, 'MaxError' переопределяет ORDER вход.

'Weights'

{Wout,Win} массив ячеек

Оптимальный массив ячеек 1x2 весов LTI Wout (выход) и Win (вход); по умолчанию оба являются единичными; Веса должны быть инвертируемыми.

'Display'

'on' или 'off'

Отобразите сингулярные графики Ханкеля (по умолчанию 'off').

'Order'

Целое число, вектор или массив ячеек

Порядок уменьшенной модели. Используйте только, если не задан как второй аргумент.

Веса на входе и/или выходе исходной модели могут заставить алгоритм снижения сложности модели фокусироваться на некоторой частотной области значений интересов. Но веса должны быть стабильными, минимальными фазами и инвертируемыми.

Эта таблица описывает выходные аргументы.

Аргумент

Описание

GRED

Модель пониженного порядка LTI. Становится многомерным массивом, когда вход является последовательным номером другого массива порядка модели.

REDINFO

A Массива структур с 3 полями:

  • REDINFO.ErrorBound

  • REDINFO.StabSV

  • REDINFO.UnstabSV

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, желаемый пониженный порядок, следующие шаги произведут преобразование подобия, чтобы обрезать исходную систему в пространстве состояний кth упорядочить уменьшенную модель [16].

  1. Найдите P и Q грамматики управляемости и наблюдаемости.

  2. Найдите разложение Шура для PQ как в порядке возрастания, так и в порядке убывания, соответственно,

    VATPQVA=[λ1000λn]VDTPQVD=[λn000λ1]

  3. Найдите левое/правое ортонормальное собственное основание PQ, сопоставленное с kth большие сингулярные значения Ханкеля.

    VA=[VR,SMALL,VL,BIG]

  4. Поиск SVD (V)TL, BIG VR, BIG) = UT

    VD=[VR,BIG,VL,SMALL]

  5. Сформируйте преобразование слева/справа для последнего kth упорядочить уменьшенную модель

            S L,BIG = V L,BIG и U (1: k, 1: k)–½

            S R, BIG = V R,BIG и V (1: k, 1: k)–½

  6. Наконец,

    [A^B^C^D^]=[SL,BIGTASR,BIGSL,BIGTBCSR,BIGD]

Доказательство алгоритма усечения баланса Шура можно найти в [2].

Ссылки

[1] K. Glover, «All Optimal Hankel Norm Approaction of Linear Multivariable Systems, and Their L∝ - Error Bounds», Int. J. Контроль, том 39, № 6, стр. 1145-1193, 1984 .

[2] М. Г. Сафонов и Р. Я. Чанг, «Метод Шура для сбалансированного Снижения сложности модели», IEEE Trans. on Automat. Contr., vol. 34, No. 7, July 1989, pp. 729-733.

См. также

| | | | |

Представлено до R2006a