Analyzing algorithms by simulation: variance reduction techniques and simulation speedups

  • Authors:
  • Catherine McGeoch

  • Affiliations:
  • Amherst College, Amherst, MA

  • Venue:
  • ACM Computing Surveys (CSUR)
  • Year:
  • 1992

Quantified Score

Hi-index 0.00

Visualization

Abstract

Although experimental studies have been widely applied to the investigation of algorithm performance, very little attention has been given to experimental method in this area. This is unfortunate, since much can be done to improve the quality of the data obtained; often, much improvement may be needed for the data to be useful. This paper gives a tutorial discussion of two aspects of good experimental technique: the use of variance reduction techniques and simulation speedups in algorithm studies.In an illustrative study, application of variance reduction techniques produces a decrease in variance by a factor 1000 in one case, giving a dramatic improvement in the precision of experimental results. Furthermore, the complexity of the simulation program is improved from &THgr;mn/Hn) to &THgr;(m + n log n) (where m is typically much larger than n), giving a much faster simulation program and therefore more data per unit of computation time. The general application of variance reduction techniques is also discussed for a variety of algorithm problem domains.