exponenta event banner

hinfstructOptions

Задать параметры для hinfstruct

Синтаксис

options = hinfstructOptions
options = hinfstructOptions(Name,Value)

Описание

options = hinfstructOptions возвращает набор опций по умолчанию для hinfstruct команда.

options = hinfstructOptions(Name,Value) создает набор опций с опциями, заданными одним или несколькими Name,Value аргументы пары.

Входные аргументы

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

hinfstructOptions принимает следующее Name аргументы:

'Display'

Определяет объем информации, отображаемой во время hinfstruct выполнение оптимизации.

Display принимает следующие значения:

  • 'off'hinfstruct выполняется в автоматическом режиме без отображения информации во время или после выполнения.

  • 'iter' - отображение хода оптимизации после каждой итерации. После каждой итерации на дисплее отображается значение нормы H∞ по замкнутому контуру. Дисплей также включает в себя Progress значение, указывающее процентное изменение нормы H∞ по сравнению с предыдущей итерацией.

  • 'final' - Отображение сводки в одну строку в конце каждого прогона оптимизации. Отображение включает минимизированное значение нормы H∞ по замкнутому контуру и количество итераций для каждого прогона.

По умолчанию: 'final'

'MaxIter'

Максимальное количество итераций в каждом прогоне оптимизации.

По умолчанию: 300

'RandomStart'

Количество дополнительных оптимизаций, начиная от случайных значений свободных параметров в контроллере.

Если RandomStart = 0, hinfstruct выполняет один прогон оптимизации, начиная с начальных значений настраиваемых параметров. Настройка RandomStart = N > 0 выполняет N дополнительных оптимизаций, начиная с N случайным образом сгенерированных значений параметров.

hinfstruct находит локальный минимум проблемы минимизации усиления. Чтобы увеличить вероятность нахождения значений параметров, соответствующих требованиям проекта, установите RandomStart > 0. Затем можно использовать наилучшую конструкцию, которая является результатом нескольких прогонов оптимизации.

Использовать с UseParallel = true для распределения независимых прогонов оптимизации среди работников MATLAB ® (требуется программное обеспечение Parallel Computing Toolbox™).

По умолчанию: 0

'UseParallel'

Флаг параллельной обработки.

Установить в значение true разрешить параллельную обработку путем распределения рандомизированных стартов среди работников в параллельном пуле. Если имеется доступный параллельный пул, программное обеспечение выполняет независимую оптимизацию одновременно среди работников этого пула. Если параллельный пул недоступен, происходит одно из следующих действий:

  • Если Автоматически создают параллельный бассейн, отобран в Ваших Параллельных Вычислительных предпочтениях Комплекта инструментов (Параллельный Вычислительный Комплект инструментов), то программное обеспечение начинает параллельный бассейн, используя параметры настройки в тех предпочтениях.

  • Если параметр Автоматически создавать параллельный пул (Automatically create a parallel pool) не выбран в настройках, то программа выполняет оптимизацию последовательно, без параллельной обработки.

Если параметр Автоматически создавать параллельный пул не выбран в настройках, можно вручную запустить параллельный пул с помощью parpool (Панель параллельных вычислений) перед выполнением команды настройки.

Для параллельной обработки требуется программное обеспечение Parallel Computing Toolbox.

По умолчанию: false

'TargetGain'

Целевая H∞ норма.

hinfstruct оптимизация прекращается, когда H∞ норма (пиковый коэффициент усиления по замкнутому контуру) падает ниже указанного TargetGain значение.

Набор TargetGain = 0 оптимизация производительности контроллера путем минимизации пикового коэффициента усиления по замкнутому контуру. Набор TargetGain = Inf для стабилизации системы с замкнутым контуром.

По умолчанию: 0

'TolGain'

Относительный допуск для завершения. Оптимизация завершается, когда H∞ норма уменьшается менее чем на TolGain более 10 последовательных итераций. Увеличение TolGain ускоряет завершение и уменьшает TolGain дает более жесткие конечные значения.

По умолчанию: 0,001

'MaxFrequency'

Максимальная собственная частота замкнутого контура.

Настройка MaxFrequency ограничивает полюса замкнутого контура для удовлетворения |p| < MaxFrequency.

Позволять hinfstruct автоматически выбирать полюса замкнутого контура на основе динамики разомкнутого контура системы, установка MaxFrequency = Inf. Для предотвращения нежелательной быстрой динамики или управления с высоким коэффициентом усиления установите MaxFrequency до конечного значения.

Определить MaxFrequency в единицах 1/TimeUnit, относительно TimeUnit свойства настраиваемой системы.

По умолчанию: Inf

'MinDecay'

Минимальная скорость затухания для полюсов с замкнутым контуром

Наложение зависимостей на полюса замкнутого контура для удовлетворения Re(p) < -MinDecay. Увеличьте это значение, чтобы улучшить стабильность полюсов замкнутого контура, которые не влияют на усиление замкнутого контура из-за гашения полюсов/нулей.

Определить MinDecay в единицах 1/TimeUnit, относительно TimeUnit свойства настраиваемой системы.

По умолчанию: 1e-7

Выходные аргументы

options

Набор опций, содержащий указанные опции для hinfstruct команда.

Примеры

свернуть все

Создание набора параметров для hinfstruct запуск с использованием трех случайных перезапусков и смещения стабильности 0,001. Кроме того, настройте hinfstruct выполнить остановку, как только коэффициент усиления по замкнутому контуру меньше 1.

 options = hinfstructOptions('TargetGain',1,...
                          'RandomStart',3,'StableOffset',1e-3);

Либо используйте точечную нотацию для установки значений options.

options = hinfstructOptions;
options.TargetGain = 1;
options.RandomStart = 3;
options.StableOffset = 1e-3;

Настройка набора опций для hinfstruct запуск с использованием 20 случайных перезапусков. Выполнение этих независимых прогонов оптимизации одновременно для нескольких работников в параллельном пуле.

Если установлено программное обеспечение Parallel Computing Toolbox, можно использовать параллельные вычисления для ускорения hinfstruct настройка систем управления неподвижной структурой. При выполнении нескольких рандомизированных операций hinfstruct начинается оптимизация, параллельные вычисления ускоряют настройку, распределяя запуски оптимизации между работниками.

Если параметр Автоматически создавать параллельный пул не выбран в настройках Панели параллельных вычислений (Панель параллельных вычислений), вручную запустите параллельный пул с помощью parpool(Панель инструментов параллельных вычислений). Например:

parpool;

Если в настройках выбран параметр Автоматически создавать параллельный пул (Automatically create a parallel pool), то вручную запускать пул не требуется.

Создание hinfstructOptions набор, который задает 20 случайных перезапусков для параллельного запуска.

options = hinfstructOptions('RandomStart',20,'UseParallel',true);

Настройка UseParallel кому true обеспечивает параллельную обработку путем распределения рандомизированных стартов среди доступных работников в параллельном пуле.

Используйте hinfstructOptions устанавливается при звонке hinfstruct. Например, предположим, что вы уже создали настраиваемую модель замкнутого контура CL0. В этом случае следующая команда использует параллельные вычисления для настройки CL0.

[CL,gamma,info] = hinfstruct(CL0,options);

См. также

Представлен в R2010b