G UEST EDITORS’ INTRODUCTION the Top

n putting together this issue of Computing in hand in developing the algorithm, and in other cases, Science & Engineering, we knew three things: the author is a leading authority. it would be difficult to list just 10 algorithms; it would be fun to assemble the authors and read their papers; and, whatever we came up In this issue with in the end, it would be controversial. We Monte Carlo methods are powerful tools for evalu- Itried to assemble the 10 algorithms with the greatest ating the properties of complex, many-body systems, influence on the development and practice of science as well as nondeterministic processes. Isabel Beichl and and engineering in the 20th century. Following is our Francis Sullivan describe the Metropolis Algorithm. list (here, the list is in chronological order; however, We are often confronted with problems that have an the articles appear in no particular order): enormous number of dimensions or a process that in- volves a path with many possible branch points, each • Metropolis Algorithm for Monte Carlo of which is governed by some fundamental probability • Simplex Method for Linear Programming of occurence. The solutions are not exact in a rigorous • Krylov Subspace Iteration Methods way, because we randomly sample the problem. How- • The Decompositional Approach to Matrix ever, it is possible to achieve nearly exact results using a Computations relatively small number of samples compared to the • The Fortran Optimizing Compiler problem’s dimensions. Indeed, Monte Carlo methods • QR Algorithm for Computing Eigenvalues are the only practical choice for evaluating problems of • Quicksort Algorithm for Sorting high dimensions. • Fast Fourier Transform John Nash describes the Simplex method for solv- • Integer Relation Detection ing linear programming problems. (The use of the • Fast Multipole Method word programming here really refers to scheduling or planning—and not in the way that we tell a With each of these algorithms or approaches, there what must be done.) The Simplex method relies on is a person or group receiving credit for inventing or noticing that the objective function’s maximum must discovering the method. Of course, the reality is that occur on a corner of the space bounded by the con- there is generally a culmination of ideas that leads to a straints of the “feasible region.” method. In some cases, we chose authors who had a Large-scale problems in engineering and science of- ten require solution of sparse problems, such as systems of equations. The importance of iter- 1521-9615/00/$10.00 © 2000 IEEE ative algorithms in linear algebra stems from the sim- 3 JACK DONGARRA ple fact that a direct approach will require O(N ) work. The Krylov subspace iteration methods have led to a and Oak Ridge National Laboratory major change in how users deal with large, sparse, non- FRANCIS SULLIVAN symmetric matrix problems. In this article, Henk van IDA Center for Computing Sciences der Vorst describes the state of the art in terms of

22 COMPUTING IN SCIENCE & ENGINEERING methods for this problem. integer relation problem: given n real numbers x1, …, Introducing the decompositional approach to ma- xn, find the n integers a1, … , an (if they exist) such that trix computations revolutionized the field. G.W. Stew- a1x1 + … + anxn = 0. Originally, the algorithm was used art describes the history leading up to the decomposi- to find the coefficients of the minimal integer polyno- tional approach and presents a brief tour of the six mial an algebraic number satisfied. However, more re- central decompositions that have evolved and are in cently, researchers have used them to discover un- use today in many areas of scientific computation. known mathematical identities, as well as to identify David Padua argues that the Fortran I compiler, some constants that arise in quantum field theory in with its parsing, analysis, and code-optimization tech- terms of mathematical constants. niques, qualifies as one of the top 10 “algorithms.” The The Fast Multipole Algorithm was developed orig- article describes the language, compiler, and opti- inally to calculate gravitational and electrostatic po- mization techniques that the first compiler had. tentials. The method utilizes techniques to quickly The QR Algorithm for computing eigenvalues of a compute and combine the pair-wise approximation matrix has transformed the approach to computing the in O(N) operations. This has led to a significant re- spectrum of a matrix. Beresford Parlett takes us duction in the computational complexity from O(N2) through the history of early eigenvalue computations to O(N log N) to O(N) in certain important cases. and the discovery of the family of algorithms referred John Board and Klaus Schulten describe the ap- to as the QR Algorithm. proach and its importance in the field. Sorting is a central problem in many areas of com- puting so it is no surprise to see an approach to solving the problem as one of the top 10. Joseph JaJa describes Your thoughts? Quicksort as one of the best practical sorting algorithm We have had fun putting together this issue, and we for general inputs. In addition, its complexity analysis assume that some of you will have strong feelings and its structure have been a rich source of inspiration about our selection. Please let us know what you think. for developing general algorithm techniques for vari- ous applications. Jack Dongarra is a professor of computer science in the Daniel Rockmore describes the FFT as an algo- Computer Science Department at the University of Ten- rithm “the whole family can use.” The FFT is per- nessee and a scientist in the mathematical science section haps the most ubiquitous algorithm in use today to of Oak Ridge National Lab. He received his BS in mathe- analyze and manipulate digital or discrete data. The matics from Chicago State University, his MS in computer FFT takes the operation count for discrete Fourier science from the Illinois Institute of Technology, and his transform from O(N2) to O(N log N). PhD in applied mathematics from the University of New Some recently discovered integer relation detection Mexico. Contact him at [email protected]; www.cs. algorithms have become a centerpiece of the emerg- utk.edu/~dongarra. ing discipline of “experimental mathematics”—the use of modern computer technology as an exploratory tool Francis Sullivan’s biography appears in his article on in mathematical research. David Bailey describes the page 69.

JANUARY/FEBRUARY 2000 23