"Fminunc cannot continue" Error with gamma function

1 次查看(过去 30 天)
I am trying to minimize minus likelihood function for the ML estimation. I get the following error: "Objective function is undefined at initial point. Fminunc cannot continue."
Part of my code is that,
likelihoods(i) = - R2(i)/(2*K(i)*sigma^2) - (v0 + v1*K(i)) + V(i)*log(v0 + v1*K(i))/c - ...
log(2*K(i)*sigma^2)/2 - log(gamma(V(i)/c + 1));
The problem is coming from the part " gamma(..) " because it is about factorials and the array V contains bigger numbers matlab compute it as infinity. So it gave me above error. I deal with this difficulty by scaling the array V by 10^-9. Is there any way to handle with this trouble?

采纳的回答

David Goodmanson
David Goodmanson 2019-8-21
Hi Yasin,
You can use the gammaln function which is tailor made for this situation.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Global Optimization Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by