Установите опции для нахождения рабочих точек из технических требований
возвращает набор опции с дополнительными опциями, заданными одним или несколькими options
= findopOptions(Name,Value
)Name,Value
парные аргументы. Используйте этот набор опции, чтобы задать опции для findop
команда.
Создайте набор опции для поиска рабочей точки, который устанавливает тип оптимизатора на градиентный спуск и подавляет отображаемый вывод findop
.
option = findopOptions('OptimizerType','graddescent','DisplayReport','off');
В качестве альтернативы используйте запись через точку, чтобы установить значения options
.
options = findopOptions; options.OptimizerType = 'graddescent'; options.DisplayReport = 'off';
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'DisplayReport','off'
подавляет отображение поиска рабочей точки, сообщают Командному окну.OptimizerType
— Тип оптимизатора используется алгоритмом оптимизации'graddescent-elim'
(значение по умолчанию) | 'graddescent'
| 'graddescent-proj'
| 'lsqnonlin'
| 'lsqnonlin-proj'
| 'simplex'
Тип оптимизатора, используемый алгоритмом оптимизации в виде разделенной запятой пары, состоящей из 'OptimizerType'
и одно из следующего:
'graddescent-elim'
— Осуществите ограничение равенства, чтобы обеспечить производные времени состояний, чтобы быть нулем (dx/dt = 0
, x(k+1) = x(k)
) и выходные сигналы, чтобы быть равным их заданным известным значениям. Оптимизатор фиксирует состояния, x
, и входные параметры, u
, это отмечено как Known
в спецификации рабочей точки, и оптимизирует остающиеся переменные.
'graddescent'
— Осуществите ограничение равенства, чтобы обеспечить производные времени состояний, чтобы быть нулем (dx/dt = 0
, x(k+1) = x(k)
) и выходные сигналы, чтобы быть равным их заданным известным значениям. Оптимизатор также минимизирует ошибку между состояниями, x
, и входные параметры, u
, и их соответствующие известные значения из спецификации рабочей точки. Если нет никаких входных параметров или состояний, отмеченных как Known
, findop
попытки минимизировать отклонение между исходными предположениями для x
и u
, и их обрезанные значения.
'graddescent-proj'
— В дополнение к 'graddescent'
, осуществите непротиворечивость начальных условий модели в каждом вычислении функции. Чтобы задать, являются ли ограничения трудными или мягкими, используйте ConstraintType
опция. Этот метод оптимизации не поддерживает аналитические Якобианы.
'lsqnonlin'
— Зафиксируйте состояния, x
, и входные параметры, u
, отмеченный как Known
в спецификации рабочей точки, и оптимизируют остающиеся переменные. Алгоритм пытается минимизировать обоих ошибка в производных времени состояний (dx/dt = 0
, x(k+1) = x(k)
) и ошибка между выходными параметрами и их заданными известными значениями.
'lsqnonlin-proj'
— В дополнение к 'lsqnonlin'
, осуществите непротиворечивость начальных условий модели в каждом вычислении функции. Этот метод оптимизации не поддерживает аналитические Якобианы.
'simplex'
— Используйте ту же функцию стоимости как lsqnonlin
с прямой стандартной программой оптимизации поиска, найденной в fminsearch
.
Для получения дополнительной информации об этих алгоритмах оптимизации, смотрите fmincon
(Optimization Toolbox), lsqnonlin
(Optimization Toolbox), и fminsearch
(Optimization Toolbox).
OptimizationOptions
— Опции для алгоритма оптимизацииОпции для алгоритма оптимизации в виде разделенной запятой пары, состоящей из 'OptimizationOptions'
и структура создала использование optimset
(Optimization Toolbox) функция.
DisplayReport
— Отметьте указание, отобразить ли операционный сводный отчет'on'
(значение по умолчанию) | 'off'
| 'iter'
Отметьте указание, отобразить ли сводный отчет рабочей точки в виде разделенной запятой пары, состоящей из 'DisplayReport'
и одно из следующего:
'on'
— Отобразите сводный отчет рабочей точки в MATLAB® командное окно при выполнении findop
.
'off'
— Подавите отображение сводного отчета.
'iter'
— Отобразите итеративное обновление прогресса оптимизации.
AreParamsTunable
— Отметьте указание, перекомпилировать ли модель при варьировании значений параметровtrue
(значение по умолчанию) | false
Отметьте указание, перекомпилировать ли модель при варьировании значений параметров для обрезки в виде разделенной запятой пары, состоящей из 'AreParamsTunable'
и одно из следующего:
true
— Не перекомпилируйте модель, когда все различные параметры будут настраиваемыми. Если какие-либо различные параметры не являются настраиваемыми, перекомпилировали модель для каждого узла решетки параметра и выпускают предупреждающее сообщение.
false
— Перекомпилируйте модель для каждого узла решетки параметра. Используйте эту опцию, когда вы будете варьироваться значения ненастраиваемых параметров.
ConstraintType
— Типы ограничения для 'graddescent-proj'
Типы ограничения для 'graddescent-proj'
алгоритм оптимизатора в виде разделенной запятой пары, состоящей из 'ConstraintType'
и структура со следующими полями:
dx
— Введите для ограничений на производные состояния
x
— Введите для ограничений на значения состояния
y
— Введите для ограничений на выходные значения
Задайте каждое ограничение как одно из следующего:
'hard'
— Осуществите ограничения, чтобы быть нулем.
'soft'
— Минимизируйте ограничения.
Всеми типами ограничения является 'hard'
по умолчанию.
options
— Обрезка опцийfindopOptions
опция установленаОбрезка опций, возвращенных как a findopOptions
опция установлена.
'graddescent_elim'
значение Optimizer
свойством является теперь 'graddescent-elim'
Поведение изменяется в R2017b
'graddescent_elim'
значение Optimizer
свойство a findopOptions
объектом является теперь 'graddescent-elim'
.
Чтобы обновить ваш код, измените значение оптимизатора от graddescent_elim
к graddescent-elim
. Следующая таблица показывает типичное использование этого значения свойства и как обновить ваш код.
Если ваш код имеет эту форму: | Используйте этот код вместо этого: |
---|---|
opt = findopOptions('Optimizer',... 'graddescent_elim'); |
opt = findopOptions('Optimizer',... 'graddescent-elim') |
opt = findopOptions; opt.Optimizer = 'graddescent_elim'; |
opt = findopOptions; opt.Optimizer = 'graddescent-elim'; |
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.