A recent study by researchers at University College London and Tufts University has found that digital computers cannot reliably reproduce the behavior of ‘chaotic systems’. In their paper published in *Advanced Theory and Simulations*, the team explains that digital computers use numbers based on flawed representations of real world numbers, which may lead to inaccuracies when simulating the motion of molecules, weather systems and fluids. This fundamental limitation could have implications for high performance computation (HPC) and for applications of machine learning to HPC.

Professor Peter Coveney, Director of the UCL Centre for Computational Science and the study’s co-author, said, “Our work shows that the behavior of the chaotic dynamical systems is richer than any digital computer can capture. Chaos is more commonplace than many people may realize and even for very simple chaotic systems, numbers used by digital computers can lead to errors that are not obvious, but can have a big impact. Ultimately, computers can’t simulate everything.”

The team investigated the impact of using floating-point arithmetic – a method standardized by the IEEE and used since the 1950s to approximate real numbers on digital computers. Digital computers use only rational numbers, ones that can be expressed as fractions. Moreover, the denominator of these fractions must be a power of two, such as 2, 4, 8, 16, etc. The problem is that there are infinitely more real numbers that cannot be expressed this way.

In the present study, the scientists used all four billion of these single-precision floating-point numbers that range from plus to minus infinity. The fact that the numbers are not distributed uniformly may also contribute to some of the inaccuracies. According to Professor Bruce Boghosian of Tufts University: “The four billion single-precision floating-point numbers that digital computers use are spread unevenly, so there are as many such numbers between 0.125 and 0.25, as there are between 0.25 and 0.5, as there are between 0.5 and 1.0. It is amazing that they are able to simulate real-world chaotic events as well as they do. But even so, we are now aware that this simplification does not accurately represent the complexity of chaotic dynamical systems, and this is a problem for all current and future digital computers.”

The study builds on the work of Edward Lorenz of MIT whose weather simulations using a simple computer model in the 1960s showed that tiny rounding errors in the numbers fed into his computer led to quite different forecasts, which is now known as the “butterfly effect”. The team compared the known mathematical reality of a simple form of a one-parameter chaotic system called the “generalized Bernoulli map” to what digital computers predict when every one of the available single-precision floating-point numbers are used.

They found that, for some values of this parameter, the computer predictions are totally wrong, whilst for other choices, the calculations may appear correct but deviate by up to 15%.

The authors say these pathological results would persist even if double-precision floating-point numbers were used, of which there are vastly more to draw on. “We use the generalized Bernoulli map as a mathematical representation for many other systems that change chaotically over time, such as those seen across physics, biology, and chemistry,” explained Professor Coveney. “These are being used to predict important scenarios in climate change, in chemical reactions and in nuclear reactors, for example, so it’s imperative that computer-based simulations are now carefully scrutinized.”

The team says that their discovery has implications for the field of artificial intelligence, when machine learning is applied to data derived from computer simulations of chaotic dynamical systems, and for those trying to model all kinds of natural processes.

More research is needed to examine the extent to which the use of floating-point arithmetic is causing problems in everyday computational science and modelling and, if errors are found, how to correct them.