Набор опций для hinfsyn и mixsyn
Используйте алгоритм на основе LMI для вычисления контроллера H∞-optimal для установки с одним управляющим сигналом и двумя измерительными сигналами. Включите дисплей, показывающий ход выполнения вычислений. Использовать 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, на дисплее отображаются:
Наименьшие собственные значения нормализованных решений Риккати X = X∞/γ и Y = Y∞/γ
Спектральный радиус rho(XY) = max(abs(eig(XY)))
A Проход/сбой (p/f) флаг, указывающий, gamma значение удовлетворяет условиям X ≥ 0, Y ≥ 0 и rho(XY) < 1
Лучшее достигнуто gamma значение производительности
Дополнительные сведения о отображаемой информации см. в разделе Алгоритмы hinfsyn.
Для 'Method' = 'LMI', дисплей показывает наилучшие достигнутые результаты gamma значение для каждой итерации задачи оптимизации. Он также отображает отчет о наилучшем достигнутом значении и других параметрах вычислений.
Пример: opts = hinfsynOptions('Display','on') создает набор опций, который включает отображение хода выполнения.
'Method' - Алгоритм оптимизации'RIC' (по умолчанию) | 'LMI'Алгоритм оптимизации, который hinfsyn или mixsyn использует для оптимизации производительности по замкнутому циклу, определяемой как пара, разделенная запятыми, состоящая из 'Method' и одно из следующих:
'RIC' - алгоритм на основе Riccati. Метод Риккати является быстрым, но не может справиться с единичными проблемами без добавления дополнительных возмущений и ошибок. Этот процесс называется регуляризацией и выполняется автоматически hinfsyn и mixsyn если вы не установили 'Regularize' опция для 'off'. При регуляризации этот метод хорошо работает для большинства проблем.
Когда 'Method' = 'RIC', доступны дополнительные опции, перечисленные в разделе Параметры метода Riccati.
'LMI' - алгоритм на основе LMI. Этот метод не требует регуляризации, но вычислительно более интенсивен, чем метод Риккати.
Когда 'Method' = 'LMI', доступны дополнительные опции, перечисленные в разделе Опции метода LMI.
'MAXE' - алгоритм максимальной энтропии.
Когда 'Method' = 'MAXE'доступны дополнительные опции, перечисленные в разделе Опции метода максимальной энтропии (Maximum-Entropy Method Options).
Дополнительные сведения о работе этих алгоритмов см. в разделе Алгоритмы 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' - Автоматическая регуляризация установки для выполнения требований к P12 и P21 (см. hinfsyn). Регуляризация - это процесс добавления дополнительных возмущений и ошибок для обработки единичных проблем.
'off' - Не регулирует завод. Отключение регуляризации может ускорить вычисления, когда вы знаете, что ваша проблема достаточно далека от единичной.
Пример: opts = hinfsynOptions('Regularize','off') создает набор опций, который отключает регуляризацию.
'LimitGain' - Ограничение на выигрыш контроллера'on' (по умолчанию) | 'off'Предел усиления контроллера, указанный как пара, разделенная запятыми, состоящая из 'LimitGain' и либо 'on' или 'off'. Для установок непрерывного времени регуляризация матриц прохождения через установку D12 или D21 (см. 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 и mixsynhinfsyn объект optionsОпции для hinfsyn или mixsyn вычисление, возвращенное как hinfsyn объект options. Использовать объект в качестве входного аргумента для hinfsyn или mixsyn. Например:
[K,CL,gamma,info] = hinfsyn(P,nmeas,ncont,opts);
[1] Гахинет, П. и П. Апкарян. «Подход линейного матричного неравенства к H∞-control». Int J. Надежный и нелинейный контроль, том 4, № 4, 1994, стр. 421-448.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.