"Fminunc cannot continue" Error with gamma function

1 visualizzazione (ultimi 30 giorni)
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?

Risposta accettata

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

Più risposte (0)

Categorie

Scopri di più su Global Optimization Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by