Monte Carlo Arithmetic (MCA) is an extension of standard floating- point arithmetic that exploits randomness in basic floating-point operations. MCA uses randomization to implement random rounding --- which forces roundoff errors to be randomly distributed --- and random unrounding --- which randomly extends the inputs of arithmetic operations to arbitrary precision. MCA has potential theoretical and practical benefits. Random rounding can be used to produce roundoff errors that are truly random and uncorrelated, and that have zero expected bias, thereby avoiding some anomalies of floating-point arithmetic. Random unrounding detects catastrophic cancellation, which is the primary way that significant digits are lost in numerical computation. The primary practical benefit of MCA appears to be that it can give ordinary mortals an intuitive, empirical sense of the accuracy of their computed results. MCA transforms a floating- point computation into a Monte Carlo computation, and roundoff analysis into statistical analysis. By running a program multiple times, one directly measures sensitivity of particular outputs to random perturbations of particular inputs. Generally, it gives a different perspective on the study of error. The project will encompass two tasks: first, development of an MCA environment, a set of tools permitting numerical analysts to run existing programs with MCA instead of standard floating- point, and to analyze the results; second, study of several large- scale applications, numerically interesting models that try to establish, one way or the other, the usefulness of MCA in practice.

Project Start
Project End
Budget Start
1998-05-15
Budget End
1999-10-31
Support Year
Fiscal Year
1997
Total Cost
$53,140
Indirect Cost
Name
University of California Los Angeles
Department
Type
DUNS #
City
Los Angeles
State
CA
Country
United States
Zip Code
90095