psoptimset

(Не рекомендуемый) Создать структуру опций поиска шаблона

psoptimset не рекомендуется. Использовать optimoptions вместо этого. Для получения дополнительной информации см. раздел Вопросов совместимости.

Синтаксис

psoptimset
options = psoptimset
options = psoptimset(@patternsearch)
options = psoptimset('param1',value1,'param2',value2,...)
options = psoptimset(oldopts,'param1',value1,...)
options = psoptimset(oldopts,newopts)

Описание

psoptimset без входных или выходных аргументов отображает полный список параметров с их допустимыми значениями.

options = psoptimset (без входных параметров) создает структуру с именем options который содержит опции, или параметры, для patternsearch, и устанавливает параметры на [], с указанием patternsearch использует значения по умолчанию.

options = psoptimset(@patternsearch) создает структуру с именем options который содержит значения по умолчанию для patternsearch.

options = psoptimset('param1',value1,'param2',value2,...) создает структуру options и устанавливает значение 'param1' на value1, 'param2' на value2и так далее. Для всех неопределенных параметров заданы значения по умолчанию. Достаточно ввести только достаточно начальных символов, чтобы однозначно задать имя параметра. Случай игнорируется для имен параметров.

options = psoptimset(oldopts,'param1',value1,...) создает копию oldopts, изменение заданных параметров с заданными значениями.

options = psoptimset(oldopts,newopts) объединяет существующую структуру опций, oldopts, с новой структурой опций, newopts. Любые параметры в newopts с непустыми значениями перезаписать соответствующие старые параметры в oldopts.

Опции

В следующей таблице перечислены опции, которые можно задать с помощью psoptimset. Полное описание Шаблона и их значений смотрите в Опции Search опций. Значения в {} обозначить значение по умолчанию. Можно также просмотреть параметры оптимизации и значения по умолчанию путем ввода psoptimset в командной строке.

optimoptions скрывает опции, перечисленные курсивом, но psoptimset Не видит. Смотрите Опции, которые Оптимизирует Скрывает.

Опции для patternsearch и paretosearch

ОпцияОписаниеЗначения

ConstraintTolerance

Допуск на ограничения.

Для структуры опций используйте TolCon.

Положительная скалярная величина | {1e-6}

Display

Level of display.

'off' | 'iter' | 'diagnose' | {'final'}

MaxFunctionEvaluations

Максимальное количество вычислений целевой функции.

Для структуры опций используйте MaxFunEvals.

Положительное целое число | {'2000*numberOfVariables'} для patternsearch, {'3000*(numberOfVariables+numberOfObjectives)'} для paretosearch, где numberOfVariables количество переменных задачи и numberOfObjectives - количество целевых функций

MaxIterations

Максимальное количество итераций.

Для структуры опций используйте MaxIter.

Положительное целое число | {'100*numberOfVariables'} для patternsearch, {'100*(numberOfVariables+numberOfObjectives)'} для paretosearch, где numberOfVariables количество переменных задачи и numberOfObjectives - количество целевых функций

MaxTime

Общее время (в секундах), допустимое для оптимизации.

Для структуры опций используйте TimeLimit.

Положительная скалярная величина | {Inf}

MeshTolerance

Допуск размера сетки.

Для структуры опций используйте TolMesh.

Положительная скалярная величина | {1e-6}

OutputFcn

Функция, которая вызывается оптимизационной функцией при каждой итерации. Задайте как указатель на функцию или cell-массив указателей на функцию.

Для структуры опций используйте OutputFcns.

Указатель на функцию или cell-массив указателей на функцию | {[]}

PlotFcn

Графики выхода из поиска шаблона. Задайте как имя встроенной функции построения графика, указателя на функцию или массива ячеек с именами встроенных функций построения графика или указателей на функцию.

Для структуры опций используйте PlotFcns.

{[]} | для обоих patternsearch и paretosearch: 'psplotfuncount' | 'psplotmaxconstr' | пользовательскую функцию построения графика

Для paretosearch только с несколькими целями: 'psplotdistance' | 'psplotparetof' | 'psplotparetox' | 'psplotspread' | 'psplotvolume'

Для patternsearch только или paretosearch с одной целью: 'psplotbestf' | 'psplotmeshsize' | 'psplotbestx'

PollMethod

Стратегия опроса, используемая в поиске шаблона.

{'GPSPositiveBasis2N'} | 'GPSPositiveBasisNp1' | 'GSSPositiveBasis2N' | 'GSSPositiveBasisNp1' | 'MADSPositiveBasis2N' | 'MADSPositiveBasisNp1'

Для paretosearch только: {'GSSPositiveBasis2np2'}

UseParallel

Вычислите функции объектива и нелинейных ограничений параллельно. См. Векторизованные и параллельные опции и как использовать параллельную обработку в Global Optimization Toolbox.

Примечание

Вы должны задать UseCompletePoll на true для patternsearch для использования векторизованного или параллельного опроса. Точно так же задайте UseCompleteSearch на true для векторизованного или параллельного поиска.

Начиная с R2019a, когда вы устанавливаете UseParallel опция для true, patternsearch внутренне переопределяет UseCompletePoll установка значения true так что он опрашивает параллельно.

true | {false}

UseVectorized

Определяет, векторизированы ли функции. Смотрите Векторизованные и параллельные опции и Векторизация функций цели и ограничения.

Примечание

Вы должны задать UseCompletePoll на true для patternsearch для использования векторизованного или параллельного опроса. Точно так же задайте UseCompleteSearch на true для векторизованного или параллельного поиска.

Для структуры опций используйте Vectorized = 'on' или 'off'.

true | {false}

Опции для paretosearch Только

ОпцияОписаниеЗначения

InitialPoints

Начальные точки для paretosearch. Используйте один из следующих типов данных:

  • Матрица с nvars столбцы, где каждая строка представляет одну начальную точку.

  • Структура, содержащая следующие поля (все поля являются необязательными, кроме X0):

    • X0 - Матрица с nvars столбцы, где каждая строка представляет одну начальную точку.

    • Fvals - Матрица с numObjectives столбцы, где каждая строка представляет значения целевой функции в соответствующей точке X0.

    • Cineq - Матрица с numIneq столбцы, где каждая строка представляет нелинейные значения ограничений неравенства в соответствующей точке X0.

paretosearch вычисляет все отсутствующие значения в Fvals и Cineq поля.

Матрица с nvars столбцы | структура | {[]}

MinPollFraction

Минимальная доля шаблона для опроса.

Скаляр от 0 до 1 | {0}

ParetoSetSize

Число точек в наборе Парето.

Положительное целое число | {'max(numberOfObjectives, 60)'}, где numberOfObjectives - количество целевых функций

ParetoSetChangeTolerance

Решатель останавливается, когда относительное изменение меры остановки в окне итераций меньше или равно ParetoSetChangeTolerance.

  • Для трех или менее целей, paretosearch использует измерения объема и распределения.

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

Смотрите Определения для Алгоритма Паретосеарха.

Решатель останавливается, когда относительное изменение любой применимой меры меньше ParetoSetChangeTolerance, или максимум квадратов преобразований Фурье временных рядов этих измерений относительно невелик. См. Алгоритм Паретозеарха.

Примечание

Настройка ParetoSetChangeTolerance <sqrt(eps) ~ 1.5e-8 не рекомендуется.

Положительная скалярная величина | {1e-4}

Опции для patternsearch Только

ОпцияОписаниеЗначения
Кэш

С Cache установлено на 'on', patternsearch сохраняет историю mesh, которые он опрашивает. При последующих итерациях, patternsearch не опрашивает точки, близкие к уже опрашиваемым. Используйте эту опцию, если patternsearch запускается медленно при вычислении целевой функции. Если целевая функция является стохастической, не используйте эту опцию.

Примечание

Cache не работает, когда вы запускаете решатель параллельно.

'on' | {'off'}

CacheSize

Размер истории.

Положительная скалярная величина | {1e4}

CacheTol

Наибольшее расстояние от текущей точки сетки до любой точки в истории в порядок для patternsearch чтобы избежать опроса текущей точки. Используйте, если Cache для опции задано значение 'on'.

Положительная скалярная величина | {eps}

FunctionTolerance

Допуск на функцию. Итерации останавливаются, если изменение значения функции меньше FunctionTolerance и размер сетки меньше StepTolerance. Эта опция не применяется к опросу MADS.

Для структуры опций используйте TolFun.

Положительная скалярная величина | {1e-6}

InitialMeshSize

Начальный размер сетки для алгоритма. Смотрите, как работает опрос поиска шаблона.

Положительная скалярная величина | {1.0}

InitialPenalty

Начальное значение параметра штрафа. См. Алгоритм нелинейного решателя ограничений.

Положительная скалярная величина | {10}

MaxMeshSize

Максимальный размер сетки, используемый на шаге опроса или поиска. Смотрите, как работает опрос поиска шаблона.

Положительная скалярная величина | {Inf}

MeshContractionFactor

Коэффициент сужения сетки для неудачной итерации.

Для структуры опций используйте MeshContraction.

Положительная скалярная величина | {0.5}

MeshExpansionFactor

Коэффициент расширения сетки для успешной итерации.

Для структуры опций используйте MeshExpansion.

Положительная скалярная величина | {2.0}

MeshRotate

Поверните шаблон перед объявлением точки оптимальной. См. Раздел «Опции сетки»

'off' | {'on'}

PenaltyFactor

Параметр обновления штрафа. См. Алгоритм нелинейного решателя ограничений.

Положительная скалярная величина | {100}

PlotInterval

Задает, что функции построения графика вызываются с каждым интервалом.

положительное целое число | {1}

PollOrderAlgorithm

Порядок направления опроса в поиске шаблона.

Для структуры опций используйте PollingOrder.

'Random' | 'Success' | {'Consecutive'}

ScaleMesh

Автоматическое масштабирование переменных.

Для структуры опций используйте ScaleMesh = 'on' или 'off'.

{true}| false

SearchFcn

Тип поиска, используемый в поиске шаблона. Задайте как имя или указатель на функцию.

Для структуры опций используйте SearchMethod.

'GPSPositiveBasis2N' | 'GPSPositiveBasisNp1' | 'GSSPositiveBasis2N' | 'GSSPositiveBasisNp1' | 'MADSPositiveBasis2N' | 'MADSPositiveBasisNp1' | 'searchga' | 'searchlhs' | 'searchneldermead' | {[]} | пользовательская функция поиска

StepTolerance

Допуск по переменной. Итерации останавливаются, если и изменение положения, и размер сетки меньше StepTolerance. Эта опция не применяется к опросу MADS.

Для структуры опций используйте TolX.

Положительная скалярная величина | {1e-6}

TolBind

Допуск привязки. См. «Ограничение Параметров».

Положительная скалярная величина | {1e-3}

UseCompletePoll

Завершите опрос вокруг текущей точки. Смотрите, как работает опрос поиска шаблона.

Для структуры опций используйте CompletePoll = 'on' или 'off'.

true | {false}

UseCompleteSearch

Завершите поиск вокруг текущей точки, когда метод поиска является методом опроса. Смотрите Поиск и опрос.

Для структуры опций используйте CompleteSearch = 'on' или 'off'.

true | {false}

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

расширить все

Не рекомендуемый запуск в R2018b

См. также

|

Представлено до R2006a