A Sparse Parallel Hybrid Monte Carlo Algorithm for Matrix Computations Simon Branford, Christian Weihrauch, and Vassil Alexandrov Advanced Computing and Emerging Technologies Centre, School of System Engineering, The University of Reading Whiteknights, P.O. Box 225 Reading, RG6 6AY, UK {s.j.branford, c.weihrauch, v.n.alexandrov}@reading.ac.uk Abstract. In this paper we introduce a new algorithm, based on the suc- cessful work of Fathi and Alexandrov, on hybrid Monte Carlo algorithms for matrix inversion and solving systems of linear algebraic equations. This algorithm consists of two parts, approximate inversion by Monte Carlo and iterative refinement using a deterministic method. Here we present a parallel hybrid Monte Carlo algorithm, which uses Monte Carlo to generate an approximate inverse and that improves the accuracy of the inverse with an iterative refinement. The new algorithm is applied efficiently to sparse non-singular matrices. When we are solving a system of linear algebraic equations, Bx = b, the inverse matrix is used to compute the solution vector x = B -1 b. We present results that show the efficiency of the parallel hybrid Monte Carlo algorithm in the case of sparse matrices. Keywords: Monte Carlo Method, Matrix Inversion, Sparse Matrices. 1 Introduction The problem of inverting a real n ×n matrix (MI) or solving a system of linear al- gebraic equations (SLAE) is of unquestionable importance in many scientific and engineering applications: e.g real-time speech coding, digital signal processing, communications, stochastic modelling, and many physical problems involving partial differential equations. The direct methods of solution require O(n 3 ) se- quential steps when using the usual elimination or annihilation schemes (e.g. non-pivoting Gaussian elimination, Gauss-Jordan methods) [10]. Consequently the computation time for very large problems, or for real-time solution problems, can be prohibitive and this prevents the use of many established algorithms. It is known that Monte Carlo methods give statistical estimates for elements of the inverse matrix, or for components of the solution vector of SLAE, by performing random sampling of a certain random variable, whose mathemati- cal expectation is the desired solution [11,13]. We concentrate on Monte Carlo methods for MI and/or solving SLAE, since, first, only O(NT ) steps are re- quired to find an element of the inverse matrix or component of the solution V.S. Sunderam et al. (Eds.): ICCS 2005, LNCS 3516, pp. 743–751, 2005. c Springer-Verlag Berlin Heidelberg 2005