Commit Graph

117 Commits (e9ffb16ec62b8e6cba2ca1dc84e8c4c65d8a45f0)

Author SHA1 Message Date
Michel Juillard bbd95b3a60 adding Ed Herbst fast implementation of the Kalman filter and test
cases with timing. Still needs preprocessor interface (option) and documentation.
2013-02-21 17:47:16 +01:00
Marco Ratto e637319be5 bug fix. the diffuse filter should simply penalize the likelihood with the NaN without breaking the estimation (this is in line with missing_observations_kalman_filter_d.m). 2012-09-14 17:05:35 +02:00
Marco Ratto 6b91301365 Reduce memory requirements for analytic Hessian.
Tested with QUEST III (Ratto et al. 2009): 63 params and 59 state dimension.
2012-08-21 16:00:55 +02:00
Marco Ratto 7683175e8e Bug fix in terms for outer product gradient with analytic derivatives 2012-08-21 15:45:25 +02:00
Marco Ratto f7aae77f16 removed useless elements + reduce loops for efficiency
(cherry picked from commit f2271264994af253ccdc7f01478320e4d2c2c0e7)
2012-08-13 13:04:34 +02:00
Ferhat Mihoubi 307d5d5d6a Initializes the s variable 2012-07-01 15:19:36 +02:00
Michel Juillard 2fa433f18e fixing bug for estimation of models with measurement errors and
missing observations
2012-06-19 16:35:44 +02:00
Sébastien Villemot 129553579a Merge remote-tracking branch 'ratto/master' 2012-06-08 18:24:18 +02:00
Sébastien Villemot 1f9cea669a Update copyright notices 2012-06-08 18:22:34 +02:00
Marco Ratto bf88b6e93d LIKK needs to be initialized when analytic derivation =0. 2012-06-08 17:06:59 +02:00
Marco Ratto 2fecf9946b 1) Extended optimizer = 5 for analytic derivatives;
2) Start adapting identification routines to allow computation of analytic asymptotic Hessian with KF routines
2012-06-08 14:23:18 +02:00
Michel Juillard c15123878f fixed rare bug in Kalman filter when one should switch to steady state
filter in last period of the sample
2012-05-10 11:09:06 +02:00
Marco Ratto da9ec0f187 Estimation with analytic scores and hessian;
This includes re-setting the list of output arguments in objective functions
Added test function
2012-04-29 21:18:33 +02:00
Marco Ratto 459744649d bug fixes: output argument name "lik" and check of no more missing obs 2012-04-29 21:18:33 +02:00
Michel Juillard d86daa0169 fixing bug in recent commit 919c2f8fb4 2012-01-23 16:24:47 +01:00
Michel Juillard 919c2f8fb4 correcting bug with presample and diffuse filter + simplified logic
for computation of likelihood with presample
2012-01-22 22:40:46 +01:00
Michel Juillard f0d1f033b0 correcting bug in univariate diffuse filter with presample 2012-01-22 18:36:31 +01:00
Stéphane Adjemian (Charybdis) ecac871435 Changed the name of DsgeLikelihood (-> dsge_likelihood). 2011-12-26 17:46:48 +01:00
Michel Juillard 976c8c1654 making univariate Kalman filter code simpler and more efficient 2011-12-15 17:35:26 +01:00
Michel Juillard e4c803d0db fixed issues with estimation of non-stationary models. Option lik_init=2
is contradictory with diffuse_filter or unit_root_variables
declaration. Models with non-stationary variables, but only stationary
observed variables need diffuse_filter option and make a useless call
to kalman_filter_d (this seems better than trying to distinguish these
rare cases)
2011-11-21 12:39:02 +01:00
Michel Juillard 9d91625c10 fixing bug related to measurement errors 2011-11-02 11:10:58 +01:00
Stéphane Adjemian (Charybdis) 88814c9b93 Added texinfo header. 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) c2eb6f11d3 Added texinfo header. Fixed efficiency issue (missing parenthesis). 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) e60032a6f7 More typo fixes. 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) 52e803f3b7 Fixed typo. 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) 681a7e1df5 Added texinfo header. Fixed efficiency issue (missing parenthesis). 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) fc21af10ea Cosmetic changes. 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) ffbb5bc765 Added texinfo header. 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) e270c29bd9 Fixed texinfo header (Z was missing in the description). 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Charybdis) 95c3b6396c Added texinfo header and cosmetic changes. 2011-10-25 12:34:05 +02:00
Stéphane Adjemian (Scylla) f2ca6d0ad9 Changed kalman filter routines to allow for arbitrary initial conditions (needed for the introduction of breaks on the estimated
parameters and also for the estimation of the initial states).

Added specialized routines for steady state  kalman filter.

Completed header of DsgeLikelihood (missing refs to the routines called by DsgeLikelihood).
2011-09-19 17:01:24 +02:00
Michel Juillard f553e69de3 removing unused Kalman smoother functions 2011-02-23 11:07:06 +01:00
Houtan Bastani c59133562c more short-circuit logicals in the place of element-wise logicals 2011-02-22 15:06:38 +01:00
Marco Ratto 13ea1c0046 A better way to compute outer product gradient (for optimizer 5) with the univariate Kalman Filter. 2011-02-14 11:48:29 +01:00
Houtan Bastani 43479f6ef3 use short-circuit ops (|| and &&) as opposed to (| and &) to avoid warnings in Octave (and save time) 2011-02-10 15:54:23 +01:00
Sébastien Villemot 02652f6eb8 Updated copyright notices 2011-02-04 17:27:33 +01:00
Michel Juillard c1cb452e3d correcting headers of all Kalman filter functions: returns MINUS loglikelihood 2010-12-10 22:31:30 +01:00
Michel Juillard b400e97887 added missing initialization in kalman_smoother 2010-06-26 15:14:11 +02:00
Stéphane Adjemian (Scylla) bb47d78611 Fixed bug in Kalman filter routines + Cosmetic changes. 2010-06-24 18:20:07 +02:00
Michel Juillard 61e78763da correcting bug in kalman filter when it reaches the steady state (multivariate diffuse Kalman filter, both versions, regular Kalman filter with missing observations) 2010-06-09 18:00:17 +02:00
Stéphane Adjemian (Scylla) a512b9b263 Bug fix. We don't have to check the convergence of the Kalman filter to its steady state if the
covariance matrix F is singular.
2010-06-09 11:04:59 +02:00
Michel Juillard 4bde063669 Kalman filters: fixing initialization of oldK to Inf instead of 0 2010-04-16 12:20:57 +02:00
Michel Juillard e54a505159 bug correction 2010-04-02 21:38:05 +02:00
Michel Juillard 7668bc4a11 -new smoother function kalman/smoother/kalman_smoother.m
-fixing bugs in dynare_estimation_1.m
2010-03-23 18:17:15 +01:00
Marco Ratto 24d41f66c8 fixed bug with tolerance for steady state kalman filter 2010-03-05 11:26:29 +01:00
Stéphane Adjemian (Charybdis) 3f1fad9cd2 Added trap for cases where diffuse filters fail (replaced error messages by warning messages). 2010-02-05 23:18:08 +01:00
sebastien 1be52aaa5f Beautification: removed tabulation characters which were left in previous beautification pass
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3300 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-05 10:46:10 +00:00
sebastien 502e3e1df8 Beautified MATLAB code (Unix newline convention + Emacs indentation), except: AIM, swz, particle
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3250 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-16 17:17:34 +00:00
ratto bb271bb8ac Eliminated double counting in constant: now result is identical to univariate algorithm.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2858 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-14 09:29:09 +00:00
stepan 3692d5f99b + Added missing semicolon.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2813 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-06 12:34:57 +00:00
michel 3260ba476e 4.1 correcting bug for large values of start and fixed constants in lik. Still need to be tested
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2715 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-28 18:14:07 +00:00
michel 27387d5e10 4.1: changing handling of constants in Kalman filter
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2700 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-27 10:43:34 +00:00
sebastien 2495aca72a trunk:
* updated copyright headers of all files modified since January 1st: the copyright notice now encompasses 2009
* fixed various other copyright header issues


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2364 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-21 14:39:24 +00:00
michel 3a55016cf6 more speeding up changes
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2353 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-05 11:37:05 +00:00
michel 163b4461ec adding parentheses for speed improvement
code factorization


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2352 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-04 07:53:49 +00:00
michel bf65cb4f10 various bug fixes for filter and smoother with missing observations
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2282 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-03 07:30:26 +00:00
michel eba6164cae fixing bugs around missing observations and starting to add smoother with missing observations
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2274 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-11-25 17:31:37 +00:00
adjemian 6929164339 v4.1: Added univariate approach for the diffuse kalman filter (with correlated measurement errors).
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2230 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-29 15:38:34 +00:00
adjemian 6eadbe0005 v4.1: Added univariate approach of the diffuse kalman filter (missing observations and uncorrelated
measurement errors are allowed).



git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2225 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-29 14:18:18 +00:00
adjemian 5618fea33b v4.1: Added two routines for diffuse kalman filtering (with or without missing observations).
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2216 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-27 17:12:44 +00:00
adjemian 42bdc2726c v4.1: Added a new m file for the univariate kalman filter allowing for missing observations and
correlated measurement errors. Tests show that there is a "significant" discrepancy between the 
univariate filter and the standard filter in presence of correlated measurement errors... 

 


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2185 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-21 15:29:33 +00:00
adjemian 616f47377f v4.1: Bug corrections.
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2180 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-20 12:58:08 +00:00
adjemian c5e73fcbaf v4.1: Added subfolders in ./matlab/kalman.
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2162 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-16 21:15:07 +00:00
adjemian 8c030e7eb0 v4.1: Changed header.
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2161 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-16 18:04:43 +00:00
adjemian d0e8345536 v4.1: Changes related to kalman filter with missing observations.
* Changed header of missing_observations_kalman_filter
 * Added the univariate approach. This file handles the cases with measurement errors and/or missing data.

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2160 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-16 18:03:33 +00:00
adjemian 09e32240bd v4.1 Changes related to the kalman filter (for evaluation of the likelihood) with missing observations.
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2155 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-16 13:40:40 +00:00
adjemian f58cdcf676 v4.1: Files related to kalman filter (likelihood evaluation of a state space model with or without missing observations).
* Added a new tolerance parameter specific to the iteration on the riccati equation.
 * Added a kalman filter routine allowing for missing observations.
 * I do not distinguish anymore models with and without measurement errors (the same m file is used for both models to evaluate the likelihood). For a model without measurement errors H hat to be set to 0 scalar.

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2148 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-13 18:54:42 +00:00