Book contents
- Frontmatter
- Contents
- Preface
- Translator's preface
- Acknowledgments
- Part I Algorithmic tools
- Chapter 1 Notions of complexity
- Chapter 2 Basic data structures
- Chapter 3 Deterministic methods used in geometry
- Chapter 4 Random sampling
- Chapter 5 Randomized algorithms
- Chapter 6 Dynamic randomized algorithms
- Part II Convex hulls
- Part III Triangulations
- Part IV Arrangements
- Part V Voronoi diagrams
- References
- Notation
- Index
Chapter 5 - Randomized algorithms
Published online by Cambridge University Press: 05 June 2012
- Frontmatter
- Contents
- Preface
- Translator's preface
- Acknowledgments
- Part I Algorithmic tools
- Chapter 1 Notions of complexity
- Chapter 2 Basic data structures
- Chapter 3 Deterministic methods used in geometry
- Chapter 4 Random sampling
- Chapter 5 Randomized algorithms
- Chapter 6 Dynamic randomized algorithms
- Part II Convex hulls
- Part III Triangulations
- Part IV Arrangements
- Part V Voronoi diagrams
- References
- Notation
- Index
Summary
A randomized algorithm is an algorithm that makes random choices during its execution. A randomized algorithm solves a deterministic problem and, whatever the random choices are, always runs in a finite time and outputs the correct solution to the problem. Therefore, only the path that the algorithm chooses to follow to reach the solution is random: the solution is always the same. Most randomized methods lead to conceptually simple algorithms, which often yield a better performance than their deterministic counterparts. This explains the success encountered by these methods and the important position they are granted in this book. The time and space used when running a randomized algorithm depend both on the input set and on the random choices. The performances of such an algorithm are thus analyzed on the average over all possible random choices made by the algorithm, yet in the worst case for the input. Randomization becomes interesting when this average complexity is smaller than the worst-case complexity of deterministic algorithms that solve the same problem.
The randomized algorithms described in this chapter, and more generally encountered in this book, use the randomized incremental method. The incremental resolution of a problem consists of two stages: first, the solution for a small subset of the data is computed, then the remaining input objects are inserted while the current solution is maintained. An incremental algorithm is said to be randomized if the data are inserted in a deliberately random order.
- Type
- Chapter
- Information
- Algorithmic Geometry , pp. 63 - 94Publisher: Cambridge University PressPrint publication year: 1998