Reusing Random Walks in Monte Carlo Methods for Linear Systems

Abstract In this paper, we present an approach of reusing random walks in Monte Carlo methods for linear systems. The fundamental idea is, during the Monte Carlo sampling process, the random walks generated to estimate one unknown element can also be effectively reused to estimate the other unknowns in the solution vector. As a result, when the random walks are reused, a single random walk can contribute samples for estimations of multiple unknowns in the solution simultaneously while ensuring that the samples for the same unknown element are statistically independent. Consequently, the total number of random walk transition steps needed for estimating the overall solution vector is reduced, which improves the performance of the Monte Carlo algorithm. We apply this approach to the Monte Carlo algorithm in two linear algebra applications, including solving a system of linear equations and approximating the inversion of a matrix. Our computational results show that compared to the conventional implementations of Monte Carlo algorithms for linear systems without random walk reusing, our approach can significantly improve the performance of Monte Carlo sampling process by reducing the overall number of transition steps in random walks to obtain the entire solution within desired precision.

[1]  I. Dimov,et al.  A new iterative Monte Carlo approach for inverse matrix problem , 1998 .

[2]  Vikram Aggarwal,et al.  Improved Monte Carlo Linear Solvers Through Non-diagonal Splitting , 2003, ICCSA.

[3]  Karl K. Sabelfeld,et al.  Sparsified Randomization Algorithms for large systems of linear equations and a new version of the Random Walk on Boundary method , 2009, Monte Carlo Methods Appl..

[4]  Ian T. Foster,et al.  The Anatomy of the Grid: Enabling Scalable Virtual Organizations , 2001, Int. J. High Perform. Comput. Appl..

[5]  Ameet Talwalkar,et al.  Large-scale manifold learning , 2008, 2008 IEEE Conference on Computer Vision and Pattern Recognition.

[6]  Kurt Bryan,et al.  The $25,000,000,000 Eigenvector: The Linear Algebra behind Google , 2006, SIAM Rev..

[7]  Rajkumar Buyya,et al.  High-Performance Cloud Computing: A View of Scientific Applications , 2009, 2009 10th International Symposium on Pervasive Systems, Algorithms, and Networks.

[8]  Jack J. Dongarra,et al.  Dense linear algebra solvers for multicore with GPU accelerators , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW).

[9]  J. Hammersley,et al.  Monte Carlo Methods , 1965 .

[10]  John E. Hershey,et al.  Computation , 1991, Digit. Signal Process..

[11]  Yaohang Li,et al.  Analysis of Large-Scale Grid-Based Monte Carlo Applications , 2003, Int. J. High Perform. Comput. Appl..

[12]  Michael Mascagni,et al.  A Parallel Quasi-Monte Carlo Method for Solving Systems of Linear Equations , 2002, International Conference on Computational Science.

[13]  Mateu Sbert,et al.  Reusing paths in radiosity and global illumination , 2004, Monte Carlo Methods Appl..

[14]  R. A. Leibler,et al.  Matrix inversion by a Monte Carlo method , 1950 .

[15]  J. Halton Sequential monte carlo techniques for the solution of linear systems , 1994 .

[16]  W. Wasow A note on the inversion of matrices by random walks , 1952 .

[17]  Chih Jeng Kenneth Tan Antithetic Monte Carlo Linear Solver , 2002, International Conference on Computational Science.

[18]  The International Journal of High Performance Computing Applications— , 1998 .