Рекомендуемый способ установить опции состоит в том, чтобы использовать 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);
Можно также установить и изменить опции с помощью Приложения Оптимизации.