"Fminunc cannot continue" Error with gamma function

1 vue (au cours des 30 derniers jours)
Yasin Simsek
Yasin Simsek le 21 Août 2019
Commenté : Yasin Simsek le 21 Août 2019
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?

Réponse acceptée

David Goodmanson
David Goodmanson le 21 Août 2019
Hi Yasin,
You can use the gammaln function which is tailor made for this situation.

Plus de réponses (0)

Catégories

En savoir plus sur Global Optimization Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by