Parallel Sequential Monte Carlo for Efficient Density Combination: The DeCo MATLAB Toolbox

This paper presents the MATLAB package DeCo (density combination) which is based on the paper by Billio, Casarin, Ravazzolo, and van Dijk (2013) where a constructive Bayesian approach is presented for combining predictive densities originating from different models or other sources of information. The combination weights are time-varying and may depend on past predictive forecasting performances and other learning mechanisms. The core algorithm is the function DeCo which applies banks of parallel Sequential Monte Carlo algorithms to filter the time-varying combination weights. The DeCo procedure has been implemented both for standard CPU computing and for graphical process unit (GPU) parallel computing. For the GPU implementation we use the MATLAB parallel computing toolbox and show how to use general purpose GPU computing almost effortlessly. This GPU implementation provides a speed up of the execution time of up to seventy times on a standard CPU MATLAB implementation on a multicore CPU. We show the use of the package and the computational gain of the GPU version through some simulation experiments and empirical applications.

[1]  F. A. Seiler,et al.  Numerical Recipes in C: The Art of Scientific Computing , 1989 .

[2]  Martin Lilleeng Sætra,et al.  Graphics processing unit (GPU) programming strategies and trends in GPU computing , 2013, J. Parallel Distributed Comput..

[3]  Francesco Ravazzolo,et al.  The Macroeconomic Forecasting Performance of Autoregressive Models with Alternative Specifications of Time-Varying Volatility , 2012 .

[4]  Stefano Grassi,et al.  Heterogeneous Computing in Economics: A Simplified Approach , 2013, Computational Economics.

[5]  Drew D. Creal A Survey of Sequential Monte Carlo Methods for Economics and Finance , 2012 .

[6]  A. Raftery,et al.  Strictly Proper Scoring Rules, Prediction, and Estimation , 2007 .

[7]  Todd E. Clark,et al.  Approximately Normal Tests for Equal Predictive Accuracy in Nested Models , 2005 .

[8]  William L. Goffe,et al.  Multi-core CPUs, Clusters, and Grid Computing: A Tutorial , 2005 .

[9]  D. Hendry,et al.  Econometric Evaluation of Linear Macro-Economic Models , 1986 .

[10]  Eric M. Aldrich Massively Parallel Computing in Economics , 2013 .

[11]  Christian Musso,et al.  Improving Regularised Particle Filters , 2001, Sequential Monte Carlo Methods in Practice.

[12]  Timothy J. Robinson,et al.  Sequential Monte Carlo Methods in Practice , 2003 .

[13]  S. Hall,et al.  Combining density forecasts , 2007 .

[14]  Antonello D’Agostino,et al.  Macroeconomic Forecasting and Structural Change , 2009, SSRN Electronic Journal.

[15]  Sergei Morozov,et al.  Massively Parallel Computation Using Graphics Processors with Application to Optimal Experimentation in Dynamic Control , 2011, Computational Economics.

[16]  Jean-Michel Marin,et al.  DATA PROCESSING : COMPARISON OF BAYESIAN REGULARIZED PARTICLE FILTERS by Roberto Casarin , 2007 .

[17]  Shaun P. Vahey,et al.  Combining forecast densities from VARs with uncertain instabilities , 2010 .

[18]  Christopher Holmes,et al.  Some of the What?, Why?, How?, Who? and Where? of Graphics Processing Unit Computing for Bayesian Analysis , 2011 .

[19]  Jesús Fernández-Villaverde,et al.  Tapping the Supercomputer Under Your Desk: Solving Dynamic Equilibrium Models With Graphics Processors , 2010 .

[20]  C. Granger,et al.  Improved methods of combining forecasts , 1984 .

[21]  Anthony Lee,et al.  Parallel Resampling in the Particle Filter , 2013, 1301.4019.

[22]  J. M. Bates,et al.  The Combination of Forecasts , 1969 .

[23]  P. Moral,et al.  On the stability of interacting processes with applications to filtering and genetic algorithms , 2001 .

[24]  Hoon Kim,et al.  Monte Carlo Statistical Methods , 2000, Technometrics.

[25]  Michael Creel,et al.  User-Friendly Parallel Computations with Econometric Examples , 2005 .

[26]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[27]  Michael A. West,et al.  Combined Parameter and State Estimation in Simulation-Based Filtering , 2001, Sequential Monte Carlo Methods in Practice.

[28]  Frank Arens,et al.  [Welcome to the Jungle]. , 2014, Pflege Zeitschrift.

[29]  Ade Miller,et al.  C++ AMP: Accelerated Massive Parallelism with Microsoft Visual C++ , 2012 .

[30]  N. Chopin Central limit theorem for sequential Monte Carlo methods and its application to Bayesian inference , 2004, math/0508594.

[31]  Vu,et al.  Time-Varying Combinations of Predictive Densities Using Nonlinear Filtering , 2012 .

[32]  электротехника коммуникационные технологии Электроника IEEE 754-2008 , 2010 .

[33]  Herb Sutter,et al.  The Free Lunch Is Over A Fundamental Turn Toward Concurrency in Software , 2013 .

[34]  J. Geweke,et al.  Optimal Prediction Pools , 2008 .

[35]  Christopher A. Swann,et al.  Maximum Likelihood Estimation Using Parallel Computing: An Introduction to MPI , 2002 .

[36]  John Geweke,et al.  Massively Parallel Sequential Monte Carlo for Bayesian Inference , 2011 .

[37]  F. Gland,et al.  STABILITY AND UNIFORM APPROXIMATION OF NONLINEAR FILTERS USING THE HILBERT METRIC AND APPLICATION TO PARTICLE FILTERS1 , 2004 .

[38]  ECONOMETRICS: MATLAB toolbox of econometrics functions , 1998 .

[39]  Dimitrios Korompilis Magkas VAR Forecasting Using Bayesian Variable Selection , 2011 .

[40]  T. Lai,et al.  A general theory of particle filters in hidden Markov models and some applications , 2013, 1312.5114.

[41]  H. V. Dijk,et al.  Combined forecasts from linear and nonlinear time series models , 1999 .

[42]  Paul Newbold,et al.  Testing the equality of prediction mean squared errors , 1997 .