## How can I choose the parameter of fmincon to avoid "Solver stopped prematurely."?

### guoyu ding (view profile)

on 18 May 2018
Latest activity Commented on by guoyu ding

### guoyu ding (view profile)

on 18 May 2018
The Following code：
funct=@(X,a,c,sigb,sigs,u) (1-a)*exp(-sigb)*exp(-sigs)*(sigb.^X(:,1)./factorial(X(:,1))).*(sigs.^X(:,2)./factorial(X(:,2)))+a*c*exp(-sigb)*exp(-u-sigs)*(sigb.^X(:,1)./factorial(X(:,1))).*((u+sigs).^X(:,2)./factorial(X(:,2)))+ a*(1-c)*exp(-u-sigb)*exp(-sigs)*((u+sigb).^X(:,1)./factorial(X(:,1))).*(sigs.^X(:,2)./factorial(X(:,2)));
fun=@(par) -prod(funct([B1 S1],par(1),par(2),par(3),par(4),par(5)));
options=optimset('fmincon');
[parhat,fval] = fmincon(fun,[0.1,0.1,10^7,10^7,10^7],[],[],[],[],[0,0,0,0,0],[1,1,10^9,10^9,10^9],[],options)
However， The error occurs，
Solver stopped prematurely. fmincon stopped because it exceeded the function evaluation limit,options.MaxFunEvals = 6000 (the selected value). I could not find the result.Is any errors in my code？

Torsten

### Torsten (view profile)

on 18 May 2018
Did you think about your vector of initial guesses for the solution variables ? E.g. Setting sigb = 10^7 and sigs = 10^7 makes "fmincon" evaluate exp(-10^7) !!!!!
guoyu ding

### guoyu ding (view profile)

on 18 May 2018
I try to decrease the sigb/sigs from 10^7 to 10. However, Solver still stopped prematurely. It shown that it exceeded the function evaluation limit. At end,I uploaded the data.