maximum likelihood estimation with fminsearch

4 views (last 30 days)
Hello, I would like to do a maximum likelihood estimation of normal function with the help of fminsearch. It is already working when I dont have any constraints for mu and sigma. I get the estimated mu, sigma and its value of the likelihood function. However, i will fix mu=0 but the resulting mu is never exactly 0 at the end. I dont understand why and in wich way i could do it better.
My code:
first_guess=[0 2];
[Mu_Sigma,Lk] = fminsearch('nlglklySACCzeroMu',first_guess,data);
MuEstimate(2) = Mu_Sigma(1);
SigmaEstimate(2) = Mu_Sigma(2);
L(2)=Lk;
---- next function
function L = nlglklySACCzeroMu(guess)
global data;
guess(1)=0;
if guess(2) < 0
L = inf;
else
l=-0.5*log(2*pi)-log(guess(2))-0.5*( data/guess(2) ).^2;
L = -sum(l);
end
I would be very glad to receive some suggestions! Julia

Accepted Answer

Matt J
Matt J on 25 Sep 2013
Edited: Matt J on 25 Sep 2013
If you are fixing mu=0, your function should depend on only one unknown (sigma), not two.
  4 Comments
Julia
Julia on 25 Sep 2013
i got it :-D I dont have to give fminsearch two startparameters! thank you!
mohanish
mohanish on 31 Oct 2018
what is the code you used to find the maximum likelihood ratio?

Sign in to comment.

More Answers (0)

Categories

Find more on Solver-Based Optimization Problem Setup in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!