mussv

Вычислите границы на структурированном сингулярном значении (µ)

Синтаксис

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- r повторное, диагональное действительное скалярное возмущение;

  • если BlockStructure(i,:) = [r 0], затем i-th блок является r- r повторное, диагональное комплексное скалярное возмущение;

  • если BlockStructure(i,:) = [r c], затем i-th блок является r- 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'

Верхняя граница “только” (нижняя граница использует быстрый/дешевый алгоритм).

'gN'

Используйте основанный на усилении метод нижней границы многократно. Значение N устанавливает число раз, согласно 10+N*10. Например, 'g6' использует основанную на усилении нижнюю границу 70 раз. Большее число обычно дает лучшие нижние границы.

Если все блоки неопределенности описаны blk действительны, затем значением по умолчанию является 'g1'. Если по крайней мере один блок неопределенности является комплексным, то mussv нижняя граница итерации степени использования по умолчанию.

'i'

Повторно инициализируйте расчет нижней границы в каждой новой матрице (только релевантный, если M ND массив или frd).

m, n '

Случайным образом повторно инициализируйте итерацию нижней границы многократно. N целое число между 1 и 9. Например, 'm7' случайным образом повторно инициализирует итерацию нижней границы 7 раз. Большее число является обычно более в вычислительном отношении дорогим, но часто дает лучшие нижние границы.

'p'

Используйте метод итерации степени, чтобы вычислить нижнюю границу. Когда по крайней мере один из блоков неопределенности описан BlockStructure является комплексным, затем 'p' метод нижней границы по умолчанию.

's'

Подавите (тихую) информацию о прогрессе.

'd'

Выведите предупреждения.

'x'

Уменьшите итерации в расчете нижней границы (быстрее, но не столь трудные как значение по умолчанию). Используйте 'U' для еще более быстрой нижней границы.

'an'

То же самое как 'a', но без автоматического предварительного масштабирования.

'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.

Смотрите также

| | | |

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