Вычислите границы на структурированном сингулярном значении (µ)
bounds = mussv(M,BlockStructure) [bounds,muinfo] = mussv(M,BlockStructure) [bounds,muinfo] = mussv(M,BlockStructure,Options) [ubound,q] = mussv(M,F,BlockStructure) [ubound,q] = mussv(M,F,BlockStructure,'s')
bounds = mussv(M,BlockStructure)
вычисляет верхние и нижние границы на структурированное сингулярное значение или µ, для данной блочной структуры. M
является массивом double
, моделью frd
или моделью (ss
) пространства состояний.
Если M
является массивом N-D (с N
≥ 3), то вычисление выполняется pointwise вдоль третьих и более высоких измерений массива.
Если M
является моделью frd
, то вычисления выполняются pointwise в частоте (а также любые измерения массива).
Если M
является моделью ss
, вычисления выполняются с помощью алгоритмов пространства состояний. Частоты адаптивно выбраны, и верхние границы, как гарантируют, будут держать над каждым интервалом между частотами. M
должен быть единой системой без измерений массива.
BlockStructure
является матрицей, задающей блочную структуру возмущения. BlockStructure
имеет 2 столбца, и столько же строк сколько блоки неуверенности в структуре возмущения. i-th строка BlockStructure
задает размерности i'th блока возмущения.
Если BlockStructure(i,:) = [-r 0]
, то i-th блок является r
-by-r
повторенный, диагональное действительное скалярное возмущение;
если BlockStructure(i,:) = [r 0]
, то i-th блок является r
-by-r
повторенный, диагональ, объединяет скалярное возмущение;
если BlockStructure(i,:) = [r c]
, то i-th блок является r
-by-c
комплексное возмущение полного блока.
Если BlockStructure
не использован, его значением по умолчанию является ones(size(M,1),2)
, который подразумевает структуру возмущения всех комплексных блоков 1 на 1. В этом случае, если size(M,1)
не равняется size(M,2)
, ошибка заканчивается.
Если M
является двумерной матрицей, то bounds
является массивом 1-by-2
, содержащим верхнее (первый столбец) и ниже (второй столбец) связанный структурированного сингулярного значения M
. Для всех матриц Delta
с диагональной блоком структурой, заданной BlockStructure
и с нормой меньше, чем 1/bounds(1)
(верхняя граница), матричный I - M*Delta
не сингулярен. Кроме того, существует матричный DeltaS
с диагональной блоком структурой, заданной BlockStructure
и с нормой, равной 1/bounds(2)
(нижняя граница), для которой матричный I - M*DeltaS
сингулярен.
Формат, используемый в 3-м выходном аргументе от lftdata
, также приемлем для описания блочной структуры.
Если M
является frd
, вычисления всегда выполняются pointwise в частоте. Выходным аргументом bounds
является 1-by-2 frd
верхних и нижних границ на каждой частоте. Обратите внимание на то, что bounds.Frequency
равняется M.Frequency
.
Если M
является массивом N-D (или double
или frd
), верхние и нижние границы вычисляются pointwise вдоль 3-х и более высоких измерений массива (а также pointwise в частоте для frd
). Например, предположите, что size(M)
является r ×c×d1×...×dF. Затем size(bounds)
1×2×d1×...×dF. Используя одно индексное обозначение, bounds(1,1,i)
является верхней границей для структурированного сингулярного значения M(:,:,i)
, и bounds(1,2,i)
является нижней границей для структурированного сингулярного значения M(:,:,i)
. Здесь, любой i
между 1 и d 1 · d 2... dF (продукт dk) был бы допустим.
Если M
является моделью ss
, bounds
возвращен как модель frd
.
bounds = mussv(M,BlockStructure,Options)
задает опции вычисления. Options
является вектором символов, содержа любую комбинацию следующих символов:
Опция | Значение |
---|---|
'a' | Верхняя граница с самой большой точностью, с помощью решателя LMI. Это - поведение по умолчанию, когда количество переменных решения в рамках масштабирований D/G - меньше чем 45. |
'f' | Обеспечьте быструю верхнюю границу (обычно не столь трудный как значение по умолчанию) |
'G' | Обеспечьте верхнюю границу, чтобы использовать градиентный метод. Это - поведение по умолчанию, когда количество переменных решения в рамках масштабирований D/G больше, чем или равно 45. |
'U' | Верхняя граница “только” (нижняя граница использует быстрый/дешевый алгоритм). |
| Используйте основанный на усилении метод нижней границы многократно. Значение Если все блоки неуверенности, описанные |
'i' | Повторно инициализируйте вычисление нижней границы в каждой новой матрице (только релевантный, если |
| Случайным образом повторно инициализируйте итерацию нижней границы многократно. |
'p' | Используйте метод итерации степени, чтобы вычислить нижнюю границу. Когда по крайней мере один из блоков неуверенности, описанных |
's' | Подавите (тихую) информацию о прогрессе. |
'd' | Выведите предупреждения. |
'x' | Уменьшите итерации в вычислении нижней границы (быстрее, но не столь трудные как значение по умолчанию). Используйте |
'an' | То же самое как |
'o' | Запустите “старые” алгоритмы от версии 3.1.1 и прежде. Включенный, чтобы позволить точную репликацию более ранних вычислений. |
[bounds,muinfo] = mussv(M,BlockStructure)
возвращает muinfo
, структуру, содержащую более подробную информацию. Информация в muinfo
должна быть извлечена с помощью mussvextract
.
ubound = mussv(M,F,BlockStructure)
вычисляет верхняя граница на обобщенном структурированном сингулярном значении (обобщил µ) для данной блочной структуры. M
является объектом double
или frd
. M
и BlockStructure
как прежде. F
является дополнительным (double
или frd
).
ubound = mussv(M,F,BlockStructure,'s')
добавляет опция, чтобы запуститься тихо. Другие опции проигнорированы для обобщенных µ проблем.
Обратите внимание на то, что в обобщенных структурированных вычислениях сингулярного значения, только верхняя граница вычисляется. ubound
является верхней границей обобщенного структурированного сингулярного значения парного (M,F)
относительно диагональной блоком неуверенности, описанной BlockStructure
. Следовательно, ubound
1 на 1 (с дополнительной зависимостью массивов, в зависимости от M
и F
). Для всех матриц Delta
с диагональной блоком структурой, заданной BlockStructure
и norm<1/ubound
, матричный [I-Delta*M;F]
, как гарантируют, не потеряет ранг столбца. Это проверяется матричным Q
, который удовлетворяет mussv(M+Q*F,BlockStructure,'a')<=ubound
.
Смотрите mussvextract
для подробного примера структурированного сингулярного значения.
Простой пример для обобщенного структурированного сингулярного значения может быть сделан со случайными комплексными матрицами, иллюстрируя отношение между верхней границей для µ и обобщен µ, а также то, что верхняя граница для обобщенного µ прибывает из оптимизированной µ верхней границы.
M
является комплексной матрицей 5 на 5, и F
является комплексом 2 5 матрица. Блочная структура BlockStructure
является неопределенным действительным параметром δ1, неопределенный действительный параметр δ2, неопределенный комплексный параметр δ3 и дважды повторенный неопределенный комплексный параметр δ4.
rng(929,'twister') M = randn(5,5) + sqrt(-1)*randn(5,5); F = randn(2,5) + sqrt(-1)*randn(2,5); BlockStructure = [-1 0;-1 0;1 1;2 0]; [ubound,Q] = mussv(M,F,BlockStructure); bounds = mussv(M,BlockStructure); optbounds = mussv(M+Q*F,BlockStructure);
Количества optbounds(1)
и ubound
должны быть чрезвычайно близкими, и значительно ниже, чем bounds(1)
и bounds(2)
.
[optbounds(1) ubound]
ans = 2.2070 2.1749
[bounds(1) bounds(2)]
ans = 4.4049 4.1960
Нижняя граница вычисляется с помощью метода степени, Янга и Дойла, 1990, и Паккард и др. 1988, и верхняя граница вычисляется с помощью сбалансированного/AMI метода, Янг и др., 1992, для вычисления верхней границы от Фэна и др., 1991.
Питер Янг и Мэтт Ньюлин записали исходную функцию.
Алгоритм степени нижней границы от Янга и Дойла, 1990, и Паккард и др. 1988.
Верхняя граница является реализацией связанного от Фэна и др., 1991, и описана подробно в Янге и др., 1992. В вычислении верхней границы матрица сначала сбалансирована с помощью любого изменение метода Осборна (Осборн, 1960) обобщенный, чтобы обработать повторенный скаляр и полные блоки или подход Крыльца. Это генерирует стандартную верхнюю границу для связанного комплекса µ проблема. Метод собственного вектора Крыльца основан на идее Сафонова, (Сафонов, 1982). Это дает точное вычисление µ для положительных матриц со скалярными блоками, но сопоставимо с Осборном на общих матрицах. И методы Крыльца и Осборна были изменены, чтобы обработать повторенный скаляр и полные блоки. Крыльцо быстрее для маленьких матриц, но имеет темп роста n 3, по сравнению с меньше, чем n 2 для Осборна. Это происходит частично из-за реализации MATLAB
, которая значительно способствует Крыльцу. Значение по умолчанию должно использовать Крыльцо для простых блочных структур и Осборна для более сложных блочных структур. Последовательность улучшений верхней границы затем сделана на основе различных эквивалентных форм верхней границы. Много методов спуска используются, которые используют структуру проблемы, завершающей оптимизацией LMI общего назначения (Бойд и др.), 1993, чтобы получить окончательный ответ.
Оптимальный выбор Q
(чтобы минимизировать верхнюю границу) в обобщенной µ проблеме решен путем переформулировки оптимизации в полуопределенную программу (Паккард и др., 1991).
[1] Бойд, S. и Л. Эль Гаоуи, “Методы центров минимизации обобщенных собственных значений”, Линейная алгебра и Ее Приложения, Издание 188-189, 1993, стр 63–111.
[2] Вентилятор, M., А. Титс и Дж. Дойл, “Робастность в присутствии смешанной параметрической неуверенности и несмоделированной динамики”, Транзакции IEEE на Автоматическом управлении, издании AC-36, 1991, стр 25–38.
[3] Осборн, E., “При предварительном создании условий матриц”, Журнал Связанных Компьютерных Машин, Издания 7, 1960, стр 338–345.
[4] Паккард, A.K., М. Фэн и Дж. Дойл, “Метод степени для структурированного сингулярного значения”, Proc. 1 988 Конференций по IEEE по Управлению и Решению, декабрь 1988, стр 2132–2137.
[5] Сафонов, M., “Запасы устойчивости для по диагонали встревоженных многомерных систем с обратной связью”, IEEE Proc., Издание 129, Часть D, 1992, стр 251–256.
[6] Молодой, P. и Дж. Дойл, “Вычисление с действительной и комплексной неуверенностью”, Продолжения 29-й Конференции по IEEE по Решению и Управлению, 1990, стр 1230–1235.
[7] Молодой, P., М. Ньюлин и Дж. Дойл, “Практическое вычисление смешанной задачи”, Продолжения американской Конференции по Управлению, 1992, стр 2190–2194.
mussvextract
| robgain
| robstab
| wcdiskmargin
| wcgain