Набор опций для hinfsyn
и mixsyn
Используйте алгоритм, основанный на LMI, чтобы вычислить -оптимальный контроллер для объекта с одним управляющим сигналом и двумя измерительными сигналами. Включите отображение, показывающее прогресс расчета. Использование hinfsynOptions
чтобы задать эти опции алгоритма.
Загрузите объект и укажите количество измерений и средств управления.
load hinfsynExData P ncont = 1; nmeas = 2;
Создайте набор опций для hinfsyn
который задает алгоритм, основанный на LMI, и включает отображение.
opts = hinfsynOptions('Method','LMI','Display','on');
Кроме того, начните с набора опций по умолчанию и используйте запись через точку для изменения значений опций.
opts = hinfsynOptions; opts.Method = 'LMI'; opts.Display = 'on';
Вычислите контроллер.
[K,CL,gamma] = hinfsyn(P,nmeas,ncont,opts);
Minimization of gamma: Solver for linear objective minimization under LMI constraints Iterations : Best objective value so far 1 2 223.728733 3 138.078240 4 138.078240 5 74.644885 6 48.270221 7 48.270221 8 48.270221 9 19.665676 10 19.665676 11 11.607238 12 11.607238 13 11.607238 14 4.067958 15 4.067958 16 4.067958 17 2.154349 18 2.154349 19 2.154349 20 1.579564 21 1.579564 22 1.579564 23 1.236726 24 1.236726 25 1.236726 26 0.993341 27 0.993341 28 0.949317 29 0.949317 30 0.949317 31 0.945765 32 0.944068 33 0.941253 34 0.941253 35 0.940613 *** new lower bound: 0.931677 Result: feasible solution of required accuracy best objective value: 0.940613 guaranteed absolute accuracy: 8.94e-03 f-radius saturation: 0.404% of R = 1.00e+08 Optimal Hinf performance: 9.397e-01
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'Display','on','RelTol',0.05
'Display'
- Отобразите прогресс и сгенерируйте отчет'off'
(по умолчанию) | 'on'
Отобразите прогресс оптимизации и сгенерируйте отчет в командном окне, заданном как разделенная разделенными запятой парами, состоящая из 'Display'
и 'on'
или 'off'
. Содержимое отображения зависит от значения 'Method'
опция.
Для 'Method' = 'RIC'
, на отображении показана область значений целевой эффективности (gamma
значения) проверено. Для каждого gamma
отображение показывает:
Самые маленькие собственные значения нормализованных решений Riccati X = <reservedrangesplaceholder4> / γ и Y = <reservedrangesplaceholder1> / γ
Спектральный радиус rho(XY) = max(abs(eig(XY)))
Проход/отказ (p/f
) флаг, указывающий, является ли это gamma
значение удовлетворяет условия <reservedrangesplaceholder2> 0, <reservedrangesplaceholder1> ≥ 0 и rho(XY)
< 1
Лучшие достигнутые gamma
значение эффективности
Для получения дополнительной информации об отображаемой информации смотрите раздел «Алгоритмы» hinfsyn
.
Для 'Method' = 'LMI'
, отображение показывает лучшее достигнутое gamma
значение для каждой итерации задачи оптимизации. Он также отображает отчет о наилучшем достигнутом значении и других параметрах расчета.
Пример: opts = hinfsynOptions('Display','on')
создает набор опций, который включает отображение прогресса.
'Method'
- Алгоритм оптимизации'RIC'
(по умолчанию) | 'LMI'
Алгоритм оптимизации, который hinfsyn
или mixsyn
используется для оптимизации эффективности в системе с обратной связью, заданной как разделенная разделенными запятой парами, состоящая из 'Method'
и одно из следующих:
'RIC'
- алгоритм, основанный на Риккати. Метод Риккати самый быстрый, но не может справиться с сингулярными проблемами, не добавив сначала дополнительные нарушения порядка и ошибки. Этот процесс называется регуляризацией и выполняется автоматически hinfsyn
и mixsyn
если вы не задаете 'Regularize'
опция для 'off'
. При регуляризации этот метод хорошо работает для большинства задач.
Когда 'Method' = 'RIC'
доступны дополнительные опции, перечисленные в разделе «Параметры метода Риккати».
'LMI'
- алгоритм, основанный на LMI. Этот метод не требует регуляризации, но является в вычислительном отношении более интенсивным, чем метод Риккати.
Когда 'Method' = 'LMI'
Доступны дополнительные опции, перечисленные в разделе Опции метода LMI.
'MAXE'
- Алгоритм максимальной энтропии.
Когда 'Method' = 'MAXE'
Доступны дополнительные опции, перечисленные в разделе «Параметры метода максимальной энтропии».
Для получения дополнительной информации о том, как эти алгоритмы работают, смотрите раздел Алгоритмы hinfsyn
.
Пример: opts = hinfsynOptions('Mathod','LMI')
создает набор опций, который задает основанный на LMI алгоритм оптимизации.
'RelTol'
- Относительная точность на оптимальном H ∞ эффективностьОтносительная точность на оптимальном H ∞ эффективность, заданная как разделенная разделенными запятой парами, состоящая из 'RelTol'
и положительная скалярная величина значение. Алгоритм останавливает тестирование значений γ, когда относительное различие между последним неудачным значением и последним проходящим значением меньше RelTol
.
Пример: opts = hinfsynOptions('RelTol',0.05)
создает набор опций, который устанавливает относительную точность 0,05.
'AbsTol'
- Абсолютная точность на оптимальном H ∞ эффективностьАбсолютная точность на оптимальном H ∞ эффективность, заданная как разделенная разделенными запятой парами, состоящая из 'AbsTol'
и положительная скалярная величина значение.
Пример: opts = hinfsynOptions('AbsTol',1e-4)
создает набор опций, который устанавливает абсолютную точность 0,0001.
'AutoScale'
- Автоматическое масштабирование объекта'on'
(по умолчанию) | 'off'
Автоматическое масштабирование объекта управления, заданное как разделенная разделенными запятой парами, состоящая из 'AutoScale'
и одно из следующих:
'on'
- Автоматическое масштабирование состояния объекта управления, а также измерений для повышения численной точности. hinfsyn
всегда возвращает контроллер K
в исходных немасштабированных координатах.
'off'
- Не изменяет масштабирование объекта. Отключение масштабирования, когда вы знаете, что ваш объект хорошо масштабировано, может ускорить расчет.
Пример: opts = hinfsynOptions('AutoScale','off')
создает набор опций, который отключает автоматическое масштабирование.
'Regularize'
- Автоматическая регуляризация'on'
(по умолчанию) | 'off'
Автоматическая регуляризация объекта управления, заданная как разделенная разделенными запятой парами, состоящая из 'Regularize'
и один из:
'on'
- Автоматическое упорядочивание объекта для обеспечения соблюдения требований к P 12 и P 21 ( см.hinfsyn
). Регуляризация является процессом добавления дополнительных нарушений порядка и ошибок для решения сингулярных задач.
'off'
- Не регулирует работу объекта. Выключение регуляризации может ускорить расчет, когда вы знаете, что ваша задача достаточно далека от сингулярной.
Пример: opts = hinfsynOptions('Regularize','off')
создает набор опций, который отключает регуляризацию.
'LimitGain'
- Предел на коэффициент усиления контроллера'on'
(по умолчанию) | 'off'
Предел усиления контроллера, заданный как разделенная разделенными запятой парами, состоящая из 'LimitGain'
и любой из них 'on'
или 'off'
. Для растений непрерывного времени регуляризация исходных матриц объекта D 12 или D 21 ( см.hinfsyn
) может привести к контроллерам с большими коэффициентами и быстрой динамикой. Используйте эту опцию для автоматического поиска контроллера с той же эффективностью, но с меньшими коэффициентами усиления и лучшим состоянием.
'LimitRS'
- Предел на норму LMI решенийПредел на норму LMI решений, заданное как разделенная разделенными запятой парами, состоящая из 'LimitRS'
и скалярный коэффициент в области значений [0,1]. Увеличьте это значение, чтобы замедлить динамику контроллера, штрафуя LMI- решений с большой нормой. См. раздел [1].
'TolRS'
- Допуск синтеза пониженного порядкаДопуск синтеза пониженного порядка, заданный как разделенная разделенными запятой парами, состоящая из 'TolRS'
и положительная скалярная величина значение. hinfsyn
вычисляет контроллер пониженного порядка при 1 <= rho(R*S) <= TolRs
, где rho(A)
- спектральный радиус, max(abs(eig(A)))
.
'S0'
- Частота, на которой можно оценить энтропиюInf
(по умолчанию) | действительный скалярЧастота, на которой можно оценить энтропию, заданная как действительное скалярное значение. Для получения дополнительной информации смотрите раздел Алгоритмы hinfsyn
.
opts
- Опции для hinfsyn
и mixsyn
hinfsyn
объект опцииОпции для hinfsyn
или mixsyn
расчеты, возвращенные как hinfsyn
объект опции. Используйте объект как входной параметр для hinfsyn
или mixsyn
. Для примера:
[K,CL,gamma,info] = hinfsyn(P,nmeas,ncont,opts);
[1] Gahinet, P., and P. Apkarian. Подход линейного матричного неравенства к H∞-control. Int J. Robust and Nonlinear Control, Vol. 4, No4, 1994, pp. 421-448.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.