Problem in estimation

Hi,

I want to estimate a simple new Keynesian model, and when I launch the estimation code it stops at the step bellow.
I’ve tried the command (mode_compute=6) to use the Monte-Carlo based optimization routine. but the problem still persists.

Thnx

the code ==> attachement

  • the error message -

    Log data density [Laplace approximation] is 476.161580.

Error using chol
Matrix must be positive definite.

Error in metropolis_hastings_initialization (line 68)
d = chol(vv);

Error in random_walk_metropolis_hastings (line 62)
ix2, ilogpo2, ModelName, MetropolisFolder, fblck, fline, npar, nblck, nruns, NewFile, MAX_nruns, d ] = …

Error in dynare_estimation_1 (line 782)
feval(options_.posterior_sampling_method,objective_function,options_.proposal_distribution,xparam1,invhess,bounds,dataset_,options_,M_,estim_params_,bayestopt_,oo_);

Error in dynare_estimation (line 89)
dynare_estimation_1(var_list,dname);

Error in nkmodel (line 198)
dynare_estimation(var_list_);

Error in dynare (line 180)
evalin(‘base’,fname) ;

The data file is missing. Please upload everything in a zip-file

Thank you Mr Jpfeifer

The problem is that the mode-finder got stuck and that your prior for the standard deviations is rather tight, leading to a corner solution because you did not disable prior-truncation.
Use

and

and it should work.

I did what you said and I got the same error message
Thank you for your help

Configuring Dynare …
[mex] Generalized QZ.
[mex] Sylvester equation solution.
[mex] Kronecker products.
[mex] Sparse kronecker products.
[mex] Local state space iteration (second order).
[mex] Bytecode evaluation.
[mex] k-order perturbation solver.
[mex] k-order solution simulation.
[mex] Quasi Monte-Carlo sequence (Sobol).
[mex] Markov Switching SBVAR.

Starting Dynare (version 4.4.3).
Starting preprocessing of the model file …
Found 9 equation(s).
Evaluating expressions…done
Computing static model derivatives:

  • order 1
    Computing dynamic model derivatives:
  • order 1
  • order 2
    Processing outputs …done
    Preprocessing completed.
    Starting MATLAB/Octave computing.

prior_trunc =

 0

mode_compute =

 9

STEADY-STATE RESULTS:

y 0
pi 0
r 0
e_D 0
e_S 0
e_R 0
y_obs 0
pi_obs 0
r_obs 0

EIGENVALUES:
Modulus Real Imaginary

         0.1              0.1                0
      0.3477           0.3477                0
         0.8              0.8                0
        0.95             0.95                0
       1.172            1.172                0
       1.487            1.487                0

There are 2 eigenvalue(s) larger than 1 in modulus
for 2 forward-looking variable(s)

The rank condition is verified.

Loading 67 observations from data_mar_nk.xlsx

Initial value of the log posterior (or likelihood): 194.1499


f at the beginning of new iteration, -194.1498512794
Predicted improvement: 52.168759666
lambda = 1; f = -352.0064620
lambda = 1.9332; f = -194.1464507
lambda = 1.3017; f = -433.4682531
lambda = 1.6503; f = -194.1488575
lambda = 1.4313; f = -194.1497350
lambda = 1.3141; f = -433.9914171
lambda = 1.3832; f = -194.1498125
lambda = 1.3413; f = -194.1498462
lambda = 1.3168; f = -194.1498513
Norm of dx 0.10215
Cliff. Perturbing search direction.
Predicted improvement: 93.028944505
lambda = 1; f = -194.1471884
lambda = 0.33333; f = -271.6718659
lambda = 0.64439; f = -402.0752920
lambda = 1.2457; f = -194.1408514
lambda = 0.8388; f = -194.1493079
lambda = 0.66161; f = -410.8550407
lambda = 0.76285; f = -194.1497471
lambda = 0.70038; f = -194.1498498
lambda = 0.66539; f = -412.6342030
lambda = 0.68617; f = -420.3524608
lambda = 0.7076; f = -194.1498466
lambda = 0.69466; f = -194.1498510
lambda = 0.68702; f = -420.5523270
Norm of dx 0.18367
Cliff again. Try traversing
Predicted improvement: 261500.246194323
lambda = 1; f = 521771.5141630
lambda = 0.33333; f = 57719.2653347
lambda = 0.11111; f = 6213.6611290
lambda = 0.037037; f = 509.3004061
lambda = 0.012346; f = -118.6195549
lambda = 0.0041152; f = -186.5005538
lambda = 0.0013717; f = -193.5185419
lambda = 0.00045725; f = -194.1295907
lambda = 0.00015242; f = -266.1057582
lambda = 0.00029465; f = -194.1490104
lambda = 0.0001984; f = -299.7687352
lambda = 0.00025153; f = -347.0679735
lambda = 0.0003189; f = -194.1477441
lambda = 0.00027658; f = -194.1495822
lambda = 0.00025393; f = -194.1498509
Norm of dx 723.19

Improvement on iteration 1 = 239.841565858
back and forth on step length never finished


f at the beginning of new iteration, -433.9914171370
Predicted improvement: 25.927405870
lambda = 1; f = -433.9909869
lambda = 0.33333; f = -433.9913720
lambda = 0.11111; f = -433.9914130
lambda = 0.037037; f = -433.9914169
lambda = 0.012346; f = -434.3883650
Norm of dx 0.07201

Improvement on iteration 2 = 0.396947825


f at the beginning of new iteration, -434.3883649616
Predicted improvement: 10.314142853
lambda = 1; f = -434.3882825
lambda = 0.33333; f = -434.3883588
lambda = 0.11111; f = -434.3883649
lambda = 0.037037; f = -435.0927020
lambda = 0.071599; f = -435.6326392
lambda = 0.13841; f = -434.3883646
lambda = 0.0932; f = -434.3883649
lambda = 0.073512; f = -435.6589047
lambda = 0.084761; f = -434.3883650
lambda = 0.07782; f = -435.7165955
lambda = 0.081913; f = -434.3883650
lambda = 0.079432; f = -435.7376559
lambda = 0.080912; f = -435.7567287
lambda = 0.082419; f = -434.3883650
lambda = 0.081511; f = -434.3883650
Norm of dx 0.045418
Cliff. Perturbing search direction.
Predicted improvement: 15.625548101
lambda = 1; f = -434.3880212
lambda = 0.33333; f = -434.3883331
lambda = 0.11111; f = -434.3883632
lambda = 0.037037; f = -435.3001070
lambda = 0.071599; f = -434.3883646
lambda = 0.048211; f = -434.3883649
lambda = 0.038027; f = -435.3171023
lambda = 0.043845; f = -434.3883650
lambda = 0.040255; f = -435.3538356
lambda = 0.042372; f = -434.3883650
lambda = 0.041089; f = -435.3670254
lambda = 0.041854; f = -434.3883650
lambda = 0.041393; f = -435.3717645
Norm of dx 0.069065
Cliff again. Try traversing
Predicted improvement: 99533.211056942
lambda = 1; f = 196793.8202819
lambda = 0.33333; f = 21418.3113022
lambda = 0.11111; f = 1973.8546689
lambda = 0.037037; f = -172.8667487
lambda = 0.012346; f = -406.9738560
lambda = 0.0041152; f = -431.7324238
lambda = 0.0013717; f = -434.1812848
lambda = 0.00045725; f = -434.3843311
lambda = 0.00015242; f = -434.3883649
lambda = 5.0805e-05; f = -434.3883650
lambda = 1.6935e-05; f = -437.7464665
lambda = 3.2739e-05; f = -434.3883650
lambda = 2.2044e-05; f = -438.7881249
lambda = 2.7948e-05; f = -440.0091186
lambda = 3.5433e-05; f = -434.3883650
lambda = 3.0731e-05; f = -440.5912339
lambda = 3.3472e-05; f = -434.3883650
lambda = 3.1799e-05; f = -440.8158377
lambda = 3.2793e-05; f = -434.3883650
lambda = 3.2193e-05; f = -434.3883650
lambda = 3.1839e-05; f = -440.8240795
Norm of dx 446.17

Improvement on iteration 3 = 6.435714569
back and forth on step length never finished


f at the beginning of new iteration, -440.8240795304
Predicted improvement: 10.314142853
lambda = 1; f = -440.8239974
lambda = 0.33333; f = -440.8240734
lambda = 0.11111; f = -440.8240795
lambda = 0.037037; f = -441.6100524
Norm of dx 0.045418

Improvement on iteration 4 = 0.785972892


f at the beginning of new iteration, -441.6100524224
Predicted improvement: 13.435909517
lambda = 1; f = -441.6100312
lambda = 0.33333; f = -441.6100503
lambda = 0.11111; f = -441.6100523
lambda = 0.037037; f = -441.6100524
lambda = 0.012346; f = -441.9184305
lambda = 0.023866; f = -442.1660401
lambda = 0.046138; f = -441.6100524
lambda = 0.031067; f = -441.6100524
lambda = 0.024504; f = -442.1786714
lambda = 0.028254; f = -441.6100524
lambda = 0.02594; f = -441.6100524
lambda = 0.024644; f = -442.1814291
lambda = 0.025414; f = -441.6100524
lambda = 0.024949; f = -442.1874213
lambda = 0.025227; f = -441.6100524
Norm of dx 0.051838
Cliff. Perturbing search direction.
Predicted improvement: 22.828234730
lambda = 1; f = -441.6099782
lambda = 0.33333; f = -441.6100446
lambda = 0.11111; f = -441.6100517
lambda = 0.037037; f = -441.6100524
lambda = 0.012346; f = -442.0895107
lambda = 0.023866; f = -441.6100524
lambda = 0.01607; f = -441.6100524
lambda = 0.012676; f = -442.1001275
lambda = 0.014615; f = -441.6100524
lambda = 0.013418; f = -442.1236428
lambda = 0.014124; f = -441.6100524
lambda = 0.013696; f = -441.6100524
lambda = 0.013446; f = -442.1245041
lambda = 0.013596; f = -441.6100524
Norm of dx 0.088313
Cliff again. Try traversing
Predicted improvement: 101620.783074178
lambda = 1; f = 136318.3737848
lambda = 0.33333; f = 14707.6592573
lambda = 0.11111; f = 1227.0608566
lambda = 0.037037; f = -260.2410699
lambda = 0.012346; f = -422.2677198
lambda = 0.0041152; f = -439.6805220
lambda = 0.0013717; f = -441.4607467
lambda = 0.00045725; f = -441.6070391
lambda = 0.00015242; f = -441.6099775
lambda = 5.0805e-05; f = -441.6100458
lambda = 1.6935e-05; f = -441.6100521
lambda = 5.645e-06; f = -442.6059992
lambda = 1.0913e-05; f = -441.6100524
lambda = 7.3481e-06; f = -442.8917728
lambda = 9.3161e-06; f = -441.6100524
lambda = 8.0798e-06; f = -441.6100524
lambda = 7.4182e-06; f = -442.9033754
lambda = 7.8083e-06; f = -441.6100524
lambda = 7.5718e-06; f = -442.9287718
lambda = 7.7129e-06; f = -441.6100524
lambda = 7.6279e-06; f = -441.6100524
Norm of dx 450.82

Improvement on iteration 5 = 1.318719418
back and forth on step length never finished


f at the beginning of new iteration, -442.9287718403
Predicted improvement: 13.435909517
lambda = 1; f = -442.9287506
lambda = 0.33333; f = -442.9287697
lambda = 0.11111; f = -442.9287717
lambda = 0.037037; f = -442.9287718
lambda = 0.012346; f = -443.3243675
Norm of dx 0.051838

Improvement on iteration 6 = 0.395595661


f at the beginning of new iteration, -443.3243675018
Predicted improvement: 17.934748789
lambda = 1; f = -412.8675929
lambda = 0.33333; f = -433.0637678
lambda = 0.11111; f = -442.6821752
lambda = 0.037037; f = -443.9726370
Norm of dx 0.059891

Improvement on iteration 7 = 0.648269484


f at the beginning of new iteration, -443.9726369853
Predicted improvement: 39.389148617
lambda = 1; f = -443.9708480
lambda = 0.33333; f = -443.9726370
lambda = 0.11111; f = -453.2493484
lambda = 0.2148; f = -443.9726370
lambda = 0.14463; f = -456.2768851
lambda = 0.18337; f = -443.9726370
lambda = 0.15903; f = -457.6142105
lambda = 0.17322; f = -443.9726370
lambda = 0.16456; f = -458.1336815
lambda = 0.1697; f = -443.9726370
lambda = 0.1666; f = -443.9726370
lambda = 0.16476; f = -458.1527808
Norm of dx 0.15878
Cliff. Perturbing search direction.
Predicted improvement: 69.896606784
lambda = 1; f = -443.9449702
lambda = 0.33333; f = -443.9726369
lambda = 0.11111; f = -461.3540662
lambda = 0.2148; f = -443.9726370
lambda = 0.14463; f = -443.9726370
lambda = 0.11408; f = -461.8776430
lambda = 0.13154; f = -443.9726370
lambda = 0.12077; f = -463.0701041
lambda = 0.12712; f = -464.2204270
lambda = 0.1338; f = -443.9726370
lambda = 0.12975; f = -443.9726370
lambda = 0.12738; f = -464.2680489
lambda = 0.1288; f = -443.9726370
Norm of dx 0.28167
Cliff again. Try traversing
Predicted improvement: 184849.393453108
lambda = 1; f = 367841.0604465
lambda = 0.33333; f = 40438.1563269
lambda = 0.11111; f = 4086.5983466
lambda = 0.037037; f = 55.7044858
lambda = 0.012346; f = -389.5661562
lambda = 0.0041152; f = -438.2889506
lambda = 0.0013717; f = -443.4541793
lambda = 0.00045725; f = -443.9452891
lambda = 0.00015242; f = -512.2368837
lambda = 0.00029465; f = -443.9681814
lambda = 0.0001984; f = -443.9725669
lambda = 0.00015649; f = -514.9789189
lambda = 0.00018043; f = -529.0689563
lambda = 0.00020804; f = -443.9724347
lambda = 0.00019101; f = -443.9726219
lambda = 0.00018146; f = -529.3761323
lambda = 0.00018713; f = -443.9726346
lambda = 0.00018371; f = -529.8252655
lambda = 0.00018575; f = -443.9726365
Norm of dx 608.03

Improvement on iteration 8 = 85.852628474
back and forth on step length never finished


f at the beginning of new iteration, -529.8252654594
Predicted improvement: 39.389148617
lambda = 1; f = -529.8016361
lambda = 0.33333; f = -529.8226765
lambda = 0.11111; f = -529.8249898
lambda = 0.037037; f = -529.8252387
lambda = 0.012346; f = -529.8252636
lambda = 0.0041152; f = -529.8252654
lambda = 0.0013717; f = -529.8696766
Norm of dx 0.15878

Improvement on iteration 9 = 0.044411138


f at the beginning of new iteration, -529.8696765971
Predicted improvement: 5.935021575
lambda = 1; f = -529.8666467
lambda = 0.33333; f = -529.8693482
lambda = 0.11111; f = -529.8696428
lambda = 0.037037; f = -529.8696737
lambda = 0.012346; f = -529.8696765
lambda = 0.0041152; f = -529.9124330
lambda = 0.0079555; f = -529.8696766
lambda = 0.0053568; f = -529.9229082
lambda = 0.0067914; f = -529.8696766
lambda = 0.0058901; f = -529.9270559
lambda = 0.0064154; f = -529.8696766
lambda = 0.0060949; f = -529.8696766
lambda = 0.0059103; f = -529.9272085
lambda = 0.0060204; f = -529.8696766
lambda = 0.0059541; f = -529.8696766
Norm of dx 0.059112
Cliff. Perturbing search direction.
Predicted improvement: 8.289542211
lambda = 1; f = -529.8636446
lambda = 0.33333; f = -529.8690180
lambda = 0.11111; f = -529.8696072
lambda = 0.037037; f = -529.8696701
lambda = 0.012346; f = -529.8696762
lambda = 0.0041152; f = -529.9259519
lambda = 0.0079555; f = -529.8696765
lambda = 0.0053568; f = -529.8696766
lambda = 0.0042252; f = -529.8696766
lambda = 0.0041479; f = -529.9263016
lambda = 0.0041941; f = -529.9267929
lambda = 0.0042408; f = -529.8696766
Norm of dx 0.082481
Cliff again. Try traversing
Predicted improvement: 248.981409240
lambda = 1; f = -430.6520228
lambda = 0.33333; f = -521.2405313
lambda = 0.11111; f = -529.2584875
lambda = 0.037037; f = -529.8082637
lambda = 0.012346; f = -529.8628668
lambda = 0.0041152; f = -529.8689246
lambda = 0.0013717; f = -529.8695946
lambda = 0.00045725; f = -529.8696680
lambda = 0.00015242; f = -529.8696758
lambda = 5.0805e-05; f = -529.8696766
lambda = 1.6935e-05; f = -529.8750979
Norm of dx 22.315

Improvement on iteration 10 = 0.057531933
back and forth on step length never finished


f at the beginning of new iteration, -529.9272085300
Predicted improvement: 5.935021575
lambda = 1; f = -529.9241425
lambda = 0.33333; f = -529.9268682
lambda = 0.11111; f = -529.9271708
lambda = 0.037037; f = -529.9272044
lambda = 0.012346; f = -529.9272081
lambda = 0.0041152; f = -529.9272085
lambda = 0.0013717; f = -529.9272085
lambda = 0.00045725; f = -529.9272085
lambda = 0.00015242; f = -529.9272085
lambda = 5.0805e-05; f = -529.9272085
lambda = 1.6935e-05; f = -529.9273365
Norm of dx 0.059112

Improvement on iteration 11 = 0.000127942


f at the beginning of new iteration, -529.9273364722
Predicted improvement: 2.533846696
lambda = 1; f = -529.9262769
lambda = 0.33333; f = -529.9272189
lambda = 0.11111; f = -529.9273234
lambda = 0.037037; f = -529.9273350
lambda = 0.012346; f = -529.9273363
lambda = 0.0041152; f = -529.9273365
lambda = 0.0013717; f = -529.9273365
lambda = 0.00045725; f = -529.9273365
lambda = 0.00015242; f = -529.9273365
lambda = 5.0805e-05; f = -529.9273365
lambda = 1.6935e-05; f = -529.9273365
lambda = 5.645e-06; f = -529.9273650
lambda = 1.0913e-05; f = -529.9273365
lambda = 7.3481e-06; f = -529.9273737
lambda = 9.3161e-06; f = -529.9273365
lambda = 8.0798e-06; f = -529.9273365
lambda = 7.4182e-06; f = -529.9273740
lambda = 7.8083e-06; f = -529.9273365
lambda = 7.5718e-06; f = -529.9273748
lambda = 7.7129e-06; f = -529.9273365
lambda = 7.6279e-06; f = -529.9273365
Norm of dx 0.036747
Cliff. Perturbing search direction.
Predicted improvement: 3.505019076
lambda = 1; f = -529.9255335
lambda = 0.33333; f = -529.9271364
lambda = 0.11111; f = -529.9273143
lambda = 0.037037; f = -529.9273340
lambda = 0.012346; f = -529.9273362
lambda = 0.0041152; f = -529.9273364
lambda = 0.0013717; f = -529.9273365
lambda = 0.00045725; f = -529.9273365
lambda = 0.00015242; f = -529.9273365
lambda = 5.0805e-05; f = -529.9273365
lambda = 1.6935e-05; f = -529.9273365
lambda = 5.645e-06; f = -529.9273760
lambda = 1.0913e-05; f = -529.9273365
lambda = 7.3481e-06; f = -529.9273365
lambda = 5.7958e-06; f = -529.9273770
lambda = 6.6827e-06; f = -529.9273365
lambda = 6.1355e-06; f = -529.9273365
lambda = 5.829e-06; f = -529.9273773
lambda = 6.011e-06; f = -529.9273365
lambda = 5.9011e-06; f = -529.9273365
lambda = 5.8361e-06; f = -529.9273773
Norm of dx 0.048377
Cliff again. Try traversing
Predicted improvement: 8319.709607793
lambda = 1; f = 7365.5051929
lambda = 0.33333; f = 326.4406672
lambda = 0.11111; f = -439.9533687
lambda = 0.037037; f = -521.1419586
lambda = 0.012346; f = -529.0792479
lambda = 0.0041152; f = -529.8333298
lambda = 0.0013717; f = -529.9169502
lambda = 0.00045725; f = -529.9262013
lambda = 0.00015242; f = -529.9272158
lambda = 5.0805e-05; f = -529.9273241
lambda = 1.6935e-05; f = -529.9273352
lambda = 5.645e-06; f = -529.9273364
lambda = 1.8817e-06; f = -529.9273365
lambda = 6.2723e-07; f = -529.9367609
lambda = 1.2125e-06; f = -529.9273365
lambda = 8.1646e-07; f = -529.9392034
lambda = 1.0351e-06; f = -529.9417922
lambda = 1.3123e-06; f = -529.9273365
lambda = 1.1382e-06; f = -529.9273365
lambda = 1.045e-06; f = -529.9419031
lambda = 1.1e-06; f = -529.9425114
lambda = 1.1578e-06; f = -529.9273365
lambda = 1.1227e-06; f = -529.9273365
lambda = 1.1022e-06; f = -529.9425360
lambda = 1.1145e-06; f = -529.9426695
lambda = 1.1269e-06; f = -529.9273365
Norm of dx 128.99

Improvement on iteration 12 = 0.015333005
back and forth on step length never finished


f at the beginning of new iteration, -529.9426694776
Predicted improvement: 2.533846696
lambda = 1; f = -529.9416094
lambda = 0.33333; f = -529.9425517
lambda = 0.11111; f = -529.9426564
lambda = 0.037037; f = -529.9426680
lambda = 0.012346; f = -529.9426693
lambda = 0.0041152; f = -529.9426695
lambda = 0.0013717; f = -529.9426695
lambda = 0.00045725; f = -529.9426695
lambda = 0.00015242; f = -529.9426695
lambda = 5.0805e-05; f = -529.9426695
lambda = 1.6935e-05; f = -529.9426695
Norm of dx 0.036747

Improvement on iteration 13 = 0.000000000
improvement < crit termination
Objective function at mode: -529.942669

POSTERIOR KERNEL OPTIMIZATION PROBLEM!
(minus) the hessian matrix at the “mode” is not positive definite!
=> posterior variance of the estimated parameters are not positive.
You should try to change the initial values of the parameters using
the estimated_params_init block, or use another optimization routine.
Warning: The results below are most likely wrong!

In dynare_estimation_1 at 694
In dynare_estimation at 89
In nkmodel at 206
In dynare at 180

RESULTS FROM POSTERIOR ESTIMATION
parameters
prior mean mode s.d. prior pstdev

rho_D 0.500 0.4910 0.0614 beta 0.2000
rho_S 0.500 0.4883 0.0125 beta 0.2000
rho_R 0.600 0.5999 0.0774 beta 0.1000
phi_pi 2.000 2.0001 0.0000 gamm 0.5000
phi_y 2.000 2.0008 0.2799 gamm 0.5000
rho 0.600 0.5980 0.0695 beta 0.1000
theta 0.750 0.7308 0.0000 beta 0.1000
sigma 3.000 2.9982 0.1025 norm 0.1000

standard deviation of shocks
prior mean mode s.d. prior pstdev

eta_D 0.100 0.0118 0.0011 invg 2.0000
eta_S 0.100 0.0129 0.0014 invg 2.0000
eta_R 0.200 0.0236 0.0011 invg 2.0000

Log data density [Laplace approximation] is 498.680049.

Error using chol
Matrix must be positive definite.

Error in metropolis_hastings_initialization (line 68)
d = chol(vv);

Error in random_walk_metropolis_hastings (line 62)
ix2, ilogpo2, ModelName, MetropolisFolder, fblck, fline, npar, nblck, nruns, NewFile, MAX_nruns, d ] = …

Error in dynare_estimation_1 (line 782)
feval(options_.posterior_sampling_method,objective_function,options_.proposal_distribution,xparam1,invhess,bounds,dataset_,options_,M_,estim_params_,bayestopt_,oo_);

Error in dynare_estimation (line 89)
dynare_estimation_1(var_list,dname);

Error in nkmodel (line 206)
dynare_estimation(var_list_);

Error in dynare (line 180)
evalin(‘base’,fname) ;

Those are options of the estimation-command you need to specify (see the manual)