Настройка параметров для поиска рабочих точек по спецификациям
возвращает набор опций с дополнительными опциями, указанными одним или несколькими 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(Панель инструментов оптимизации), lsqnonlin(Панель инструментов оптимизации), и fminsearch(Панель инструментов оптимизации).
'OptimizationOptions' - Варианты алгоритма оптимизацииОпции алгоритма оптимизации, указанные как разделенная запятыми пара, состоящая из 'OptimizationOptions' и структура, созданная с помощью optimset(Панель инструментов оптимизации).
'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 набор опцийПараметры обрезки, возвращенные как findopOptions набор опций.
'graddescent_elim' значение Optimizer свойство теперь 'graddescent-elim'В 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.