Установите опции для нахождения рабочих точек от спецификаций
options = findopOptions
options = findopOptions(Name,Value)
возвращает набор опции с дополнительными опциями, заданными одним или несколькими аргументами пары 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
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: 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'
осуществите непротиворечивость образцовых начальных условий при каждой функциональной оценке. Этот метод оптимизации не поддерживает аналитические Якобианы.
Симплекс
Используйте ту же функцию стоимости в качестве lsqnonlin
с прямой стандартной программой оптимизации поиска, найденной в fminsearch
.
Для получения дополнительной информации об этих алгоритмах оптимизации, смотрите fmincon
, lsqnonlin
и fminsearch
в документации Optimization Toolbox™.
'OptimizationOptions'
— Опции для алгоритма оптимизацииОпции для алгоритма оптимизации, заданного как пара, разделенная запятой, состоящая из 'OptimizationOptions'
и структуры, создали использование функции optimset
.
'DisplayReport'
— Отметьте указание, отобразить ли операционный сводный отчет'on'
(значение по умолчанию) | 'off'
| 'iter'
Отметьте указание, отобразить ли сводный отчет рабочей точки, заданный как пара, разделенная запятой, состоящая из 'DisplayReport'
и одно из следующего:
'on'
— Отобразите сводный отчет рабочей точки в командном окне MATLAB® при выполнении findop
.
'off'
Подавите отображение сводного отчета.
'iter'
— Отобразите итеративное обновление прогресса оптимизации.
'AreParamsTunable'
— Отметьте указание, перекомпилировать ли модель при варьировании значений параметровtrue
(значение по умолчанию) | false
Отметьте указание, перекомпилировать ли модель при варьировании значений параметров для обрезки, заданный как пара, разделенная запятой, состоящая из 'AreParamsTunable'
и одно из следующего:
tRUE
Не перекомпилируйте модель, когда все переменные параметры будут настраиваемыми. Если какие-либо переменные параметры не являются настраиваемыми, перекомпилировали модель для каждого узла решетки параметра и выпускают предупреждающее сообщение.
ложь
Перекомпилируйте модель для каждого узла решетки параметра. Используйте эту опцию, когда вы будете отличаться значения ненастраиваемых параметров.
'ConstraintType'
— Типы ограничения для 'graddescent-proj'
Типы ограничения для алгоритма оптимизатора 'graddescent-proj'
, заданного как пара, разделенная запятой, состоящая из 'ConstraintType'
и структуры со следующими полями:
dx
— Введите для ограничений на производные состояния
x
Введите для ограничений на значения состояния
y
Введите для ограничений на выходные значения
Задайте каждое ограничение как одно из следующего:
'hard'
— Осуществите ограничения, чтобы быть нулем.
'soft'
— Минимизируйте ограничения.
Всеми типами ограничения является 'hard'
по умолчанию.
опции
Обрезка опцийfindopOptions
установленаПри обрезке опций возвращенных, когда установлена опция findopOptions
.
Поведение изменяется в R2017b
Значением 'graddescent_elim'
свойства Optimizer
объекта 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.