Рекомендуемый способ задать опции - использовать optimoptions функция. Для примера следующий код устанавливает fmincon алгоритм для sqp, задает итеративное отображение и устанавливает небольшое значение для ConstraintTolerance допуск.
options = optimoptions('fmincon',... 'Algorithm','sqp','Display','iter','ConstraintTolerance',1e-12);
Примечание
Использовать optimset вместо optimoptions для fminbnd, fminsearch, fzero, и lsqnonneg решатели. Эти решатели, которые не требуют лицензии Optimization Toolbox™.
Можно изменить опции несколькими способами. Для примера можно использовать запись через точку.
options.StepTolerance = 1e-10;
Или можно изменить опции, используя optimoptions.
options = optimoptions(options,'StepTolerance',1e-10);Чтобы сбросить опцию по умолчанию, используйте resetoptions.
options = resetoptions(options,'StepTolerance');Сбросьте более одного опции за раз, передав массив ячеек с такими именами опций, как {'Algorithm','StepTolerance'}.
Примечание
Убедитесь, что вы сдаете options в вызове решателя, как показано в этом примере.
[x,fval] = fmincon(@objfun,x0,[],[],[],[],lb,ub,@nonlcon,options);
Можно также задать и изменить опции с помощью Optimize Live Editor Task.
Оптимизировать | optimoptions | resetoptions