close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#664 closed enhancement (fixed)

Metropolis-Hastings simulation of BSR linear block

Reported by: Víctor de Buen Remiro Owned by: Víctor de Buen Remiro
Priority: highest Milestone: Numerical methods
Component: Math Version: 2.0.1
Severity: major Keywords: BSR, linear, ARIMA, preconditioned
Cc:

Description (last modified by Víctor de Buen Remiro)

In each iteration of BSR, we need to simulate vector \beta $$ matching this linear constrained regression with ARIMA noise:

Y = X \beta + z $$
A \beta \leq a $$
\phi\left(B\right) z_t = \theta\left(B\right) e_t $$
e \sim N\left(0,\sigma^{2} I\right) $$

ARMA and variance parameters are changing in each iteration of BSR, and, if there are missing values or non linear filters matrices Y $$ and X $$ could also change in each iteration. Only constraining inequations remain invariant in any case.

So, an ARIMA decomposition and filter and a Cholesky decomposition are needed in order to simulate linear block. Even if X $$ is very sparse, after applying ARIMA filter it could become dense and process will be too slow.

I propose a preconditioning method to save a lot of time calculating and storing all blocks of a simulation only for one of a lot of iterations and using them to generate aproximations that will be refinated inside an internal Metropolis-Hastings chain.

The main idea behind this method is that, when external BSR Gibbs chain is already in convergence phase, difference of expected values between two different iterations should tend to zero. So, the simulator of a past iteration should be a good candidate generator for distribution of current iteration.

Let be the last full calculated and stored system

Y' = X' \beta + z' $$
A \beta \leq a $$
\phi'\left(B\right) z'_t = \theta'\left(B\right) e'_t $$
e' \sim N\left(0,\sigma'^{2} I\right) $$

Following these steps for each Metropolis-Hastings step we can generate a candidate of vector \beta $$ calculating simultaneously its exact density:

  1. Since this system has been previously decomposed is very fast to generate a candidate vector and its density  \log\left(Q\left(\beta\right)\right) $$, that is not depending on previous state.
  2. In order to calculate the density for current system we will get corresponding ARIMA noise
    z = Y - X \beta $$
  3. By means of Levinson or Almagro method of ARMA evaluation it's posible to calculate in a very fast way differential equation
    \phi\left(B\right) z_t = \theta\left(B\right) e_t $$
    getting also residuals likelihood which logarithm is, but a constant, the exact density  \log\left(P\left(\beta\right)\right) $$

Due to candidates are independent of previous chain it is enought to have just one non rejected sample. When number of rejected iterations growns is the moment of remake full calculations and store a new preconditioner regression. If this happens after a large number of iterations, then a lot of time will be saved.

Change History (18)

comment:1 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:2 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:3 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:4 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:5 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:6 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:7 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:8 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)
Status: newassigned

comment:9 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:10 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:11 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:12 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:13 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:14 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:15 Changed 16 years ago by Víctor de Buen Remiro

Milestone: Using OOP in BSRBSR Numerical methods

comment:16 Changed 16 years ago by Víctor de Buen Remiro

Resolution: fixed
Status: assignedclosed

comment:17 Changed 16 years ago by Víctor de Buen Remiro

Summary: Preconditioned simulation of BSR linear blockMetropolis-Hastings simulation of BSR linear block

comment:18 Changed 16 years ago by Víctor de Buen Remiro

Description: modified (diff)
Note: See TracTickets for help on using tickets.