Randomized algorithms are ubiquitous in computer science and computer engineering. Many problems that are intractable when viewed deterministically can be effectively solved with probabilistic techniques. Perhaps the most important aspect of most randomized procedures in current use is the fact that they produce the correct result with (practically speaking) 100% reliability, and with (essentially) machine precision. Historically, randomized techniques have been less popular in numerical analysis. Most of them trade accuracy for speed, and in many numerical environments one does not want to add yet another source of inaccuracy to the calculation that is already sufficiently inaccurate. One could say that in numerical analysis probabilistic methods are an approach of last resort.

I will discuss several probabilistic algorithms of numerical linear algebra that are never less accurate than their deterministic counterparts, and in fact tend to produce better accuracy. In many situations, the new schemes have lower CPU time requirements than existing methods, both asymptotically and in terms of actual timings. I will illustrate the approach with several numerical examples, and discuss possible extensions.

The use of inexact and randomized algorithms – all is fair in the quest for speed.

Classical algorithms for solving problems on a computer are often exact and deterministic, that is, they compute the solution as accurately as the machine precision and the input data allow and behave in a predictable fashion. Examples include QR factorization and standard schemes for computing gravitational N-body interactions. These algorithms are easy to understand and the fact that they are exact and predictable is very reassuring and makes life easier for the programmer. There is, however, a lot of speed to be gained by instead using inexact and/or randomized algorithms. We will look at a few examples of such algorithms that professor Vladimir Rokhlin helped pioneer, with some emphasis on the fast multipole method for particle interactions.