В следующей таблице описаны параметры оптимизации. Создание параметров с помощью optimoptions функция, или optimset для fminbnd, fminsearch, fzero, или lsqnonneg.
Для получения информации о доступных значениях опций и параметрах по умолчанию см. отдельные страницы ссылок на функции.
Значения по умолчанию для опций изменяются в зависимости от функции оптимизации, вызываемой с помощью options в качестве входного аргумента. Можно определить значения опций по умолчанию для любой из функций оптимизации, введя optimoptions(' или эквивалент solvername')optimoptions(@. Например,solvername)
optimoptions('fmincon')возвращает список опций и значений по умолчанию для 'interior-point'
fmincon алгоритм. Поиск значений по умолчанию для другого fmincon алгоритм, установите Algorithm вариант. Например,
opts = optimoptions('fmincon','Algorithm','sqp')
optimoptions «скрывает» некоторые параметры, то есть не отображает их значения. Эти параметры не отображаются в этой таблице. Вместо этого они отображаются в разделе «Скрытые параметры».
Параметры оптимизации
| Имя опции | Описание | Используется функциями | Ограничения |
|---|---|---|---|
AbsoluteGapTolerance | Ненегативный реал.
| intlinprog | optimoptions только |
AbsoluteMaxObjectiveCount | Число F (x) для минимизации абсолютных значений наихудшего случая. | ||
Algorithm | Выбирает алгоритм, используемый решателем. | fmincon, fminunc, fsolve, linprog, lsqcurvefit, lsqlin, lsqnonlin, quadprog | |
BarrierParamUpdate | Выбирает алгоритм обновления параметра барьера в | fmincon | |
BranchRule | Правило выбора компонента для ветвления:
| intlinprog | optimoptions только |
CheckGradients | Сравнение предоставленных пользователем аналитических производных (градиентов или якобиана в зависимости от выбранного решателя) с конечными разностными производными. |
| optimoptions только. Для optimset, использовать DerivativeCheck |
ConstraintTolerance | Допуск для нарушения ограничения. |
| optimoptions только. Для optimset, использовать TolCon |
CutGeneration | Уровень генерации реза (см. раздел Генерация реза):
| intlinprog | optimoptions только |
CutMaxIterations | Количество проходов через все методы генерации вырезов перед входом в фазу ответвления и границы, целое число от 1 через 50. Отключите генерацию вырезов, установив CutGeneration опция для 'none'. | intlinprog | optimoptions только |
Display | Уровень отображения.
| Все. Соответствующие значения см. на страницах ссылок на отдельные функции. | |
EqualityGoalCount | Укажите количество целей, необходимых для цели | optimoptions только. Для optimset, использовать GoalsExactAchieve | |
FiniteDifferenceStepSize |
Коэффициент размера шага скаляра или вектора для конечных разностей. При установке
sign′(x) = sign(x) кроме sign′(0) = 1. Центральными конечными различиями являются
FiniteDifferenceStepSize расширяется до вектора. Значение по умолчанию: sqrt(eps) для прямых конечных разностей, и eps^(1/3) для центральных конечных разностей.
|
| optimoptions только. Для optimset, использовать FinDiffRelStep |
FiniteDifferenceType | Конечные различия, используемые для оценки градиентов: |
| optimoptions только. Для optimset, использовать FinDiffType |
FunctionTolerance | Допуск окончания для значения функции. |
| optimoptions только. Для optimset, использовать TolFun |
HessianApproximation | Метод гессенского приближения: Игнорируется, когда | optimoptions только. Для optimset, использовать Hessian | |
HessianFcn | Предоставленный пользователем гессен, указанный как дескриптор функции (см. Включение гессенов). | fmincon, fminunc | optimoptions только. Для optimset, использовать HessFcn |
HessianMultiplyFcn | Пользовательская функция умножения Гессена, заданная как дескриптор функции. Игнорируется, когда | optimoptions только. Для optimset, использовать HessMult | |
Heuristics | Алгоритм поиска возможных точек (см. Эвристика поиска возможных решений):
| intlinprog | optimoptions только |
HeuristicsMaxNodes | Строго положительное целое число, ограничивающее число узлов intlinprog может исследовать в своем филиале и связанный поиск возможных точек. См. раздел Эвристика для поиска возможных решений. | intlinprog | optimoptions только |
HonorBounds | Дефолт | fmincon | optimoptions только. Для optimset, использовать AlwaysHonorConstraints |
IntegerPreprocess | Типы целочисленной предварительной обработки (см. раздел Смешанная целочисленная предварительная обработка программы):
| intlinprog | optimoptions только |
IntegerTolerance | Реально от 1e-6 через 1e-3, где максимальное отклонение от целого числа, которое является компонентом решения x может иметь и по-прежнему считаться целым числом. IntegerTolerance не является критерием остановки. | intlinprog | optimoptions только |
JacobianMultiplyFcn | Определяемая пользователем функция умножения якобиана, заданная как дескриптор функции. Игнорируется, если | ||
LinearSolver | Тип внутреннего линейного решателя в алгоритме. Для
Для
|
| |
LPMaxIterations | Строго положительное целое число, максимальное количество итераций симплексного алгоритма на узел во время процесса ветвления и ограничения. | intlinprog | optimoptions только |
LPOptimalityTolerance | Неотрицательный реал, где сниженные затраты должны превышать LPOptimalityTolerance для переменной, которая должна быть принята в основу. | intlinprog | optimoptions только |
MaxFunctionEvaluations | Максимально допустимое число оценок функций. |
| optimoptions только. Для optimset, использовать MaxFunEvals |
MaxIterations | Максимально допустимое число итераций. | optimoptions только. Для optimset, использовать MaxIter | |
MaxFeasiblePoints | Строго положительное целое число. intlinprog останавливается, если находит MaxFeasiblePoints целочисленные возможные точки. | intlinprog | optimoptions только |
MaxNodes | Строго положительное целое число, которое является максимальным числом узлов, исследуемых решателем в его процессе ветвления и привязки. | ||
MaxTime | Максимальное время в секундах, допустимое для алгоритма. | ||
NodeSelection | Выберите узел для просмотра.
| intlinprog | optimoptions только |
ObjectiveCutOff | В реальности больше, чем -Inf. Значение по умолчанию: Inf. | intlinprog | optimoptions только |
ObjectiveImprovementThreshold | Ненегативный реал. intlinprog изменяет текущее осуществимое решение только в том случае, если оно находит другое с целевым значением функции, которое, по крайней мере, ObjectiveImprovementThreshold нижний: (fold - fnew )/( 1 + | fold |) > Порог изменения. | intlinprog | optimoptions только |
ObjectiveLimit | Если значение целевой функции ниже | fmincon, fminunc, lsqlin, quadprog | |
OptimalityTolerance | Допуск окончания для оптимальности первого порядка. |
| optimoptions только. Для optimset, использовать TolFun |
OutputFcn | Укажите одну или несколько пользовательских функций, вызываемых функцией оптимизации в каждой итерации. Передача дескриптора функции или массива ячеек дескрипторов функции. См. раздел Синтаксис функции вывода и функции печати или Синтаксис функции вывода и функции печати intlinprog. |
| |
PlotFcn | Отображает различные показатели прогресса во время выполнения алгоритма. Выберите из предопределенных графиков или напишите собственные. Укажите имя функции, как указано в списке, или в качестве дескриптора функции, например
См. раздел Функции печати или Функция вывода intlinprog и синтаксис функции печати. |
| optimoptions только. Для optimset, использовать PlotFcns |
RelativeGapTolerance | Реально от
допуск = | intlinprog | optimoptions только |
RootLPAlgorithm | Алгоритм решения линейных программ:
| intlinprog | optimoptions только |
RootLPMaxIterations | Неотрицательное целое число, которое является максимальным числом итераций симплексного алгоритма для решения задачи начального линейного программирования. | intlinprog | optimoptions только |
ScaleProblem | Для | fmincon | |
SpecifyConstraintGradient | Пользовательские градиенты для нелинейных зависимостей. | optimoptions только. Для optimset, использовать GradConstr | |
SpecifyObjectiveGradient | Определяемые пользователем градиенты или якобинцы для объективных функций. |
| optimoptions только. Для optimset, использовать GradObj или Jacobian |
StepTolerance | Допуск окончания на x. | ||
SubproblemAlgorithm | Определяет способ вычисления шага итерации. | fmincon, fminunc, fsolve, lsqcurvefit, lsqlin, lsqnonlin | |
TypicalX | Массив, определяющий типовую величину массива параметров |
| |
UseParallel | Когда |
|
optimoptions «скрывает» некоторые параметры, то есть не отображает их значения. Сведения о том, как просмотреть эти параметры и почему они скрыты, см. в разделе Параметры просмотра.
На страницах ссылок на функции эти параметры выделены курсивом.
В этой таблице перечислены скрытые опции Toolbox™ оптимизации.
Опции, которые optimoptions Скрывается
| Имя опции | Описание | Используется функциями | Ограничения |
|---|---|---|---|
| Диагностика | Отображение диагностической информации о функции, которая должна быть свернута или решена. | Все, кроме | |
| DiffMaxChange | Максимальное изменение переменных для конечных разностей. |
| |
| DiffMinChange | Минимальное изменение переменных для конечных разностей. |
| |
| FunValCheck | Проверьте допустимость значений целевой функции и ограничений. Примечание
|
| |
| HessPattern | Узор разреженности гессена для конечных разностей. Размер матрицы - n-by-n, где n - количество элементов в | ||
| HessUpdate | Схема обновления Квази-Ньютона. | ||
| InitBarrierParam | Начальное значение барьера. | fmincon | |
| InitDamping | Начальный параметр Левенберга-Марквардта. | fsolve, lsqcurvefit, lsqnonlin | optimoptions только |
| InitTrustRegionRadius | Начальный радиус области доверия. | fmincon | |
| JacobPattern | Узор разреженности якобиана для конечных разностей. Размер матрицы: | ||
| LPPreprocess | Тип предварительной обработки решения для ослабленной линейной программы (см. Предварительная обработка линейной программы):
| intlinprog | optimoptions только |
| MaxPCGIter | Максимальное число итераций метода предварительно кондиционированных сопряженных градиентов. |
| |
| MaxProjCGIter | Допуск для числа проецируемых сопряженных градиентных итераций; это внутренняя итерация, а не количество итераций алгоритма. | fmincon | |
| MaxSQPIter | Максимальное число итераций метода последовательного квадратичного программирования. | ||
| MeritFunction | Использовать функцию достижения цели/минимакса заслуг (мультиобъективная) в сравнении с | ||
| PrecondBandWidth | Верхняя полоса пропускания устройства предварительного кондиционирования для PCG. Установка для |
| |
| Предварительно обработать | Уровень предварительной обработки ЛП до итераций симплексного или двойного симплексного алгоритма. | optimoptions только | |
| RelLineSrchBnd | Относительная длина шага поиска в строке. | ||
| RelLineSrchBndDuration | Число итераций, для которых граница указана в | ||
| ScaleProblem | При использовании | fsolve, lsqcurvefit, lsqnonlin | |
| TolConSQP | Допуск нарушения ограничения для внутренней итерации SQP. | fgoalattain, fmincon, fminimax, fseminf | |
| TolPCG | Допуск окончания на итерации PCG. |
| |
| TolProjCG | Относительный допуск для алгоритма проецированного сопряженного градиента; это для внутренней итерации, а не для итерации алгоритма. | fmincon | |
| TolProjCGAbs | Абсолютный допуск для алгоритма проецированного сопряженного градиента; это для внутренней итерации, а не для итерации алгоритма. | fmincon |
По причинам, по которым эти параметры скрыты, см. раздел Опциональные опционы скрыты (панель инструментов глобальной оптимизации).
Опции, которые optimoptions Скрывается
| Имя опции | Используется функциями |
|---|---|
| Тайник |
|
| CacheSize |
|
| CacheTol |
|
| DisplayInterval |
|
| FunValCheck |
|
HybridInterval |
|
| InitialPenalty |
|
| MaxMeshSize |
|
| MeshRotate |
|
MigrationDirection |
|
MigrationFraction |
|
MigrationInterval |
|
PenaltyFactor |
|
PlotInterval |
|
StallTest |
|
| TolBind | patternsearch |