reduce

Упрощенный доступ к сингулярному значению Ханкеля, основанному снижением сложности модели функциях

Синтаксис

GRED = reduce(G)
GRED = reduce(G,order)
[GRED,redinfo] = reduce(G,'key1','value1',...)
[GRED,redinfo] = reduce(G,order,'key1','value1',...)

Описание

reduce возвращает модель пониженного порядка GRED от G и массив структур redinfo содержащий границу ошибок уменьшенной модели, сингулярные значения Ханкеля исходной системы и некоторую другую соответствующую информацию о снижении сложности модели.

Привязка к ошибке является мерой того, насколько близко GRED является G и вычисляется на основе любой аддитивной ошибки,G-GRED ∥∞, мультипликативная ошибка,G–1(G-GRED) ∥∞, или ошибка nugap (ссылка: ncfmr) [1],[4],[5].

Сингулярные значения Ханкеля стабильной системы указывают на соответствующую энергию состояния системы. Следовательно, пониженный порядок может быть непосредственно определен путем исследования системы Hankel SV. Снижения сложности моделим сокращения, которые основаны на сингулярных значениях Ханкеля, сгруппированы по их типам, связанным с ошибками. Во многих случаях метод аддитивной ошибки GRED=reduce(G,ORDER) адекватно для обеспечения хорошей модели пониженного порядка. Но для систем с легкими демпфированными полюсами и/или нулями, мультипликативный метод ошибки (а именно GRED=reduce(G,ORDER,'ErrorType','mult')), что минимизирует относительную погрешность между G и GRED имеет тенденцию производить лучшую подгонку.

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

Аргумент

Описание

G

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

ORDER

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

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

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

Аргумент

Значение

Описание

'Algorithm'

'balance'

'schur'

'hankel'

'bst'

'ncf'

По умолчанию для 'add' (balancmr)

Опция для 'add' (schurmr)

Опция для 'add' (hankelmr)

По умолчанию для 'mult' (bstmr)

По умолчанию для 'ncf' (ncfmr)

'ErrorType'

'add'

'mult'

'ncf'

Аддитивная ошибка (по умолчанию)

Мультипликативная ошибка на выходе модели

Ошибка NCF nugap

'MaxError'

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

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

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

'Weights'

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

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

'Display'

'on' или 'off'

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

'Order'

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

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

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

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

Аргумент

Описание

GRED

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

REDINFO

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

  • REDINFO.ErrorBound

  • REDINFO.StabSV

  • REDINFO.UnstabSV

    Для 'hankel' алгоритм, массив структур становится:

  • REDINFO.ErrorBound

  • REDINFO.StabSV

  • REDINFO.UnstabSV

  • REDINFO.Ganticausal

    Для 'ncf' опция, массив структур становится:

  • REDINFO.GL

  • REDINFO.GR

  • REDINFO.hsv

G может быть стабильным или нестабильным. G и GRED может быть непрерывным или дискретным.

Успешное снижение сложности модели с хорошо обусловленной исходной моделью G гарантирует, что уменьшенная модель GRED удовлетворяет норму по бесконечности ошибке.

Примеры

свернуть все

Учитывая непрерывную или дискретную, стабильную или нестабильную систему, G, создайте набор моделей пониженного порядка на основе выбранных вами вариантов.

rng(1234,'twister'); % For reproducibility
G = rss(30,5,4);

Если вы звоните reduce не задавая порядок для уменьшенной модели, программа отображает график сингулярного значения Ханкеля и предлагает вам выбрать заказ.

Если вы задаете порядок сокращенной модели, reduce по умолчанию - balancmr алгоритм для снижения сложности модели.

[g1,redinfo1] = reduce(G,20);

Задайте другие алгоритмы, использующие Algorithm аргумент. Используйте ErrorType аргумент, чтобы определить, использует ли алгоритм мультипликативную или аддитивную ошибку, и максимально допустимую ошибку в уменьшенной модели.

[g2,redinfo2] = reduce(G,[10:2:18],'Algorithm','schur'); 
[g3,redinfo3] = reduce(G,'ErrorType','mult','MaxError',[0.01 0.05]);
[g4,redinfo4] = reduce(G,'ErrorType','add','Algorithm','hankel','MaxError',[0.01]);
for i = 1:4
    figure(i); eval(['sigma(G,g' num2str(i) ');']);
end

Figure contains an axes. The axes contains 8 objects of type line. These objects represent G, g1.

Figure contains an axes. The axes contains 24 objects of type line. These objects represent G, g2.

Figure contains an axes. The axes contains 12 objects of type line. These objects represent G, g3.

Figure contains an axes. The axes contains 8 objects of type line. These objects represent G, g4.

Ссылки

[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. Контр., т. AC-2, № 7, июль 1989, с. 729-733.

[3] М. Г. Сафонов, Р. Я. Чанг и Д. Ж. Н. Лимебир, «Оптимальное снижение сложности модели Ханкеля для неминимальных систем», IEEE Trans. on Automat. Contr., vol. 35, No 4, April, 1990, pp. 496-502.

[4] М. Г. Сафонов и Р. Я. Чанг, «Снижение сложности модели for Robust Control: A Schur Relative-Error Method», International Journal of Adaptive Control and Signal Processing, vol. 2, pp. 259-272, 1988.

[5] K. Zhou, «Frequency weighted L [[BULLET]] error bounds», System. Contr. Lett., Vol. 21, 115-125, 1993.

См. также

| | | | |

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