systuneOptions

Установите опции для systune

Синтаксис

options = systuneOptions
options = systuneOptions(Name,Value)

Описание

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

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

Входные параметры

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

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

systuneOptions берет следующий Name аргументы:

'Display'

Объем информации, чтобы отобразиться во время systune запуски.

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

  • 'final' — Отобразите короткие сводные данные в конце каждой запущенной оптимизации. Отображение включает лучшие достигнутые значения для мягких и трудных ограничений, fSoft и gHard. Отображение также включает количество итераций для каждого запуска.

    Пример:

    Final: Soft = 1.09, Hard = 0.68927, Iterations = 58
  • 'sub' — Отобразите результат каждой подпроблемы оптимизации.

    Когда вы используете и мягкие и трудные настраивающие цели, программное обеспечение решает оптимизацию как последовательность подпроблем формы:

    minxmax(αf(x),g(x)).

    Здесь, x является вектором настраиваемых параметров, f (x) является самым большим нормированным значением мягкого ограничения, и g (x) является самым большим нормированным значением твердого ограничения. (См. раздел “Algorithms” systune страница с описанием для получения дополнительной информации.) Программное обеспечение настраивает множитель α так, чтобы решение подпроблем сходилось к решению исходной ограниченной задачи оптимизации. Когда вы выбираете 'sub', отчет включает в себя результаты каждой из этих подпроблем.

    Пример:

    alpha=0.1: Soft = 3.97, Hard = 0.68927, Iterations = 8
    alpha=0.5036: Soft = 1.36, Hard = 0.68927, Iterations = 8
    alpha=1.47: Soft = 1.09, Hard = 0.68927, Iterations = 42
    Final: Soft = 1.09, Hard = 0.68927, Iterations = 58
  • 'iter' — Отобразите прогресс оптимизации после каждой итерации. Отображение включает значение после каждой итерации объективного минимизируемого параметра. Объективный параметр - то, какой бы ни больше из αf (x) и g (x). Отображение также включает значение прогресса, которое указывает на процентное изменение в ограничениях от предыдущей итерации.

    Пример:

    Iter 1: Objective = 4.664, Progress = 93%
    Iter 2: Objective = 2.265, Progress = 51.4%
    Iter 3: Objective = 0.7936, Progress = 65%
    Iter 4: Objective = 0.7183, Progress = 9.48%
    Iter 5: Objective = 0.6893, Progress = 4.04%
    Iter 6: Objective = 0.6893, Progress = 0%
    Iter 7: Objective = 0.6893, Progress = 0%
    Iter 8: Objective = 0.6893, Progress = 0%
    alpha=0.1: Soft = 3.97, Hard = 0.68927, Iterations = 8
    Iter 1: Objective = 1.146, Progress = 42.7%
    Iter 2: Objective = 1.01, Progress = 11.9%
    ...
    alpha=1.47: Soft = 1.09, Hard = 0.68927, Iterations = 42
    Final: Soft = 1.09, Hard = 0.68927, Iterations = 58
  • 'off' — Запуститесь в "тихом" режиме, не отобразив информации во время или после запуска.

Значение по умолчанию: 'final'

'MaxIter'

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

Значение по умолчанию: 300

'RandomStart'

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

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

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

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

Значение по умолчанию: 0

'UseParallel'

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

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

  • Если Automatically create a parallel pool выбран в ваших настройках Parallel Computing Toolbox (Parallel Computing Toolbox), то программное обеспечение запускает параллельный пул с помощью настроек в тех настройках.

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

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

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

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

'SkipModels'

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

Используйте эту опцию, чтобы пропустить определенные модели или проигнорировать фрагменты пробела проекта при настройке запланированных на усиление систем управления. Например, вы можете хотеть пропустить узлы решетки вне конверта рейса модели самолета или точки вне рабочего диапазона для настройки. Идентифицируйте модели, чтобы пропустить абсолютным индексом в массиве моделей, чтобы настроиться. Используя SkipModels позволяет вам сузить осциллограф настройки, не реконфигурировав каждую настраивающую цель. Для получения дополнительной информации смотрите Требования Изменения с Условиями работы.

Значение по умолчанию: []

'SoftTarget'

Целевое значение для мягких ограничений.

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

Значение по умолчанию: 0

'SoftTol'

Относительный допуск к завершению.

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

Значение по умолчанию: 0.001

'SoftScale'

Априорная оценка лучшего мягкого ограничительного значения.

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

Значение по умолчанию: 1

'MinDecay'

Минимальный уровень затухания для стабилизированной динамики.

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

  • Re(s) < -MinDecay (непрерывное время).

  • log(|z|) < -MinDecay (дискретное время).

Настройте минимальное значение, если оптимизации не удается встретить значению по умолчанию, или если значение по умолчанию конфликтует с другими требованиями. В качестве альтернативы используйте TuningGoal.Poles управлять уровнем затухания определенной обратной связи.

Для получения дополнительной информации о неявных ограничениях для конкретной настраивающей цели, смотрите страницу с описанием для той настраивающей цели.

Значение по умолчанию: 1e-7

'MaxRadius'

Максимальный спектральный радиус для стабилизированной динамики.

Эта опция ограничивает все стабилизированные полюса и нули удовлетворять |s| < MaxRadius. Стабилизированные движущие силы являются теми полюсами и нулями, затронутыми неявной устойчивостью или ограничениями минимальной фазы настраивающихся целей. MaxRadius ограничение полезно, чтобы препятствовать тому, чтобы эти полюса и нули шли в бесконечность в результате алгебраических циклов, становящихся сингулярными или усилие по управлению, становящееся неограниченными. Настройте максимальный радиус, если оптимизации не удается встретить значению по умолчанию, или если значение по умолчанию конфликтует с другими требованиями.

MaxRadius проигнорирован в течение дискретного времени, настроившись, где ограничения устойчивости уже налагают |z| < 1.

Для получения дополнительной информации о неявных ограничениях для конкретной настраивающей цели, смотрите страницу с описанием для той настраивающей цели.

Значение по умолчанию: 1e8

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

options

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

Примеры

свернуть все

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

options = systuneOptions('RandomStart',5,'Display','iter',...
                         'SoftTol',0.01);

В качестве альтернативы используйте запись через точку, чтобы установить значения options.

options = systuneOptions;
options.RandomStart = 5;
options.Display = 'iter';
options.SoftTol = 0.01;

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

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

Если Automatically create a parallel pool не выбран в ваших настройках Parallel Computing Toolbox (Parallel Computing Toolbox), вручную запустите параллельный пул с помощью parpool. Например:

parpool;

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

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

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

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

Используйте systuneOptions установите, когда вы вызовете systune. Например, предположите, что вы уже создали настраиваемую модель системы управления, CLO. Для настройки этой системы вы создали векторы SoftReqs и HardReqs из TuningGoal объекты требований. Эти векторы представляют ваши мягкие и трудные ограничения, соответственно. В этом случае следующая команда использует параллельные вычисления, чтобы настроить систему управления CL0.

[CL,fSoft,gHard] = systune(CL0,SoftReqs,HardReqs,options);

Вопросы совместимости

развернуть все

Поведение изменяется в R2016a

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

|

Введенный в R2016a