Можно задать параметры оптимизации с помощью структуры options, что вы создаете использование функции optimset. Вы затем передаете options как входной параметр к функции оптимизации, например, путем вызова fminbnd с синтаксисом
x = fminbnd(fun,x1,x2,options)
или fminsearch с синтаксисом
x = fminsearch(fun,x0,options)
Например, чтобы отобразить вывод из алгоритма в каждой итерации, установите опцию Display на 'iter':
options = optimset('Display','iter');| Опция | Описание | Решатели |
|---|---|---|
| Флаг, указывающий, появляются ли промежуточные шаги на экране.
| fminbnd, fminsearch, fzero, lsqnonneg |
| Проверьте, допустимы ли значения целевой функции.
| fminbnd, fminsearch, fzero |
| Максимальное количество функциональных оценок позволено. Значением по умолчанию является | fminbnd, fminsearch |
| Максимальное количество итераций позволено. Значением по умолчанию является | fminbnd, fminsearch |
| Отобразите информацию об итерациях решателя. Значением по умолчанию является | fminbnd, fminsearch, fzero |
| Постройте график информации об итерациях решателя. Значением по умолчанию является | fminbnd, fminsearch, fzero |
| Допуск завершения к значению функции. Значением по умолчанию является | fminsearch |
| Допуск завершения к x. Значением по умолчанию является | fminbnd, fminsearch, fzero, lsqnonneg |
Количество итераций в оптимизации зависит от критерия остановки для решателя. Эти критерии включают несколько допусков, которые можно установить. Обычно допуск является порогом, который, если пересечено, останавливает итерации решателя.
Обычно установите TolFun и допуски TolX к много больше eps, и обычно выше 1e-14. Установка маленьких допусков не гарантирует точные результаты. Вместо этого решатель может не распознать, когда он сходился и может продолжить бесполезные итерации. Значение допуска, меньшее, чем eps эффективно, отключает то условие остановки. Этот совет не применяется к fzero, который использует значение по умолчанию eps для TolX.
TolX является нижней границей на размере шага, означая норму (кси – xi+1). Если решатель пытается предпринять шаги, который меньше, чем TolX, конец итераций. Решатели иногда используют TolX в качестве родственника связанный, означающий конец итераций когда | (кси – xi+1) | <TolX* (1 + |xi |), или подобная относительная мера.

TolFun является нижней границей на изменении в значении целевой функции во время шага. Если |f (xi) – f (xi+1) | <TolFun, конец итераций. Решатели иногда используют TolFun в качестве родственника связанный, означающий конец итераций когда |f (xi) – f (xi+1) | < TolFun (1 + |f (xi) |), или подобная относительная мера.
MaxIter является привязанным количество итераций решателя. MaxFunEvals является привязанным количество функциональных оценок.
В отличие от других решателей, останавливается fminsearch, когда он удовлетворяет и TolFun и TolX.
Структура output включает количество функциональных оценок, количество итераций и алгоритм. Структура появляется, когда вы обеспечиваете fminbnd, fminsearch или fzero с четвертым выходным аргументом, как в
[x,fval,exitflag,output] = fminbnd(@humps,0.3,1);
Детали структуры output для каждого решателя находятся на страницах ссылки на функцию.
Структура output не является опцией, которую вы выбираете с optimset. Это - дополнительный вывод для fminbnd, fminsearch и fzero.