#matlab
#matlab
Вопрос:
Я использую optimoptions
функцию в MATLAB R2015a. Синтаксис выглядит следующим образом :
options = optimoptions('fmincon','Display','iter','MaxFunEvals',3000000);
fx = @(x)modifiedLogLikelihood(x,len,ET,counta,vals,INT);
parameters = fmincon(fx,x0,[],[],[],[],lb,ub,[],options);
Я хотел бы запустить тот же код на R2011a, но я получаю следующую ошибку, поскольку optimoptions
она была введена после R2011a.
Неопределенная функция или метод ‘optimoptions’ для входных аргументов типа ‘char’.
Я ссылался на этот документ, который предложил мне использовать optimset.
Я попытался воспользоваться их советом и написал:
options = optimset('fmincon','Display','iter',3000000);
fx = @(x)modifiedLogLikelihood(x,len,ET,counta,vals,INT);
parameters = fmincon(fx,x0,[],[],[],[],lb,ub,[],options);
Но это приводит к следующей ошибке:
Ошибка при использовании ==> optimset в 198
Нераспознанное имя параметра ‘fmincon’. Пожалуйста, смотрите справочную страницу optimset в документации для получения списка допустимых параметров опции. Ссылка на справочную страницу.
Как я могу использовать optimset
, чтобы получить эквивалентный набор параметров, который я смог получить с optimoptions
помощью . Я был бы очень благодарен за вашу помощь.
Ответ №1:
Полезно, если вы читаете страницу документации для функции при попытке ее использования.
С optimset
помощью вы хотите получить параметры по умолчанию, используя только 'fmincon'
строку в качестве входных данных, а затем использовать optimset
снова, чтобы изменить только те параметры, которые вы хотели бы изменить по сравнению с их значением по умолчанию.
options = optimset('fmincon');
options = optimset(options, 'Display', 'iter', 'MaxFunEvals', 3000000);