Задание и изменение опций

Рекомендуемый способ задать опции - использовать 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.

См. также

| |

Похожие темы