Minus infinite initial log likelihood in second-order estimation

Hi Johannes,

I’m playing around with a second-order estimation and it fails. I’m pretty sure that the first-order counterpart works, and for the second-order one, it starts with the following error,

Initial value of the log posterior (or likelihood): -Inf
 Iteration   Func-count     min f(x)         Procedure
     0            1              Inf         
Error using chol
Matrix must be positive definite.

Error in sequential_importance_particle_filter (line 78)
StateVectorVarianceSquareRoot = chol(ReducedForm.StateVectorVariance)';%reduced_rank_cholesky(ReducedForm.StateVectorVariance)';

Error in non_linear_dsge_likelihood (line 235)
LIK = feval(DynareOptions.particle.algorithm, ReducedForm, Y, start, DynareOptions.particle, DynareOptions.threads, DynareOptions,

I was wondering what do you think could trigger the error? One thing I don’t understand is that with the same initial points the first-order ones run smoothly…

base_est.mod (12.9 KB)
data.csv (16.3 KB)

Your model needs to feature measurement error. Also, please use the unstable version due to various bugs in the particle filter that have been fixed. It will soon be released as 4.7

Thank you Johannes. I don’t think measurement error would be an issue… But I followed your advice and update the mod file, and am using the most recent unstable version of Dynare. Still, the same error message pops up. Here attached is the new mod file that I modified, and the first-order estimation is running fine, it seems.
base_est.mod (13.2 KB)

You can pretty much follow the steps in Error in 2º order estimation, while 1º order estimation works fine

This version will at least run, but the initial likelihood is extremely poor, suggesting some issue with the fit.
base_est.mod (13.3 KB)

1 Like

Ah, I see. Yes, without pruning it would explode. The system I have here has to be pruned…
Currently I’m still facing some error messages, but since you said it’s at least running I assume it’s my own issue. I’ll experiment a bit.
Thanks for your help!