Book contents
- Frontmatter
- Contents
- Preface
- I An Introduction to the Techniques
- 1 An Introduction to Approximation Algorithms
- 2 Greedy Algorithms and Local Search
- 3 Rounding Data and Dynamic Programming
- 4 Deterministic Rounding of Linear Programs
- 5 Random Sampling and Randomized Rounding of Linear Programs
- 6 Randomized Rounding of Semidefinite Programs
- 7 The Primal-Dual Method
- 8 Cuts and Metrics
- II Further Uses of the Techniques
- Appendix A Linear Programming
- Appendix B NP-Completeness
- Bibliography
- Author Index
- Subject Index
1 - An Introduction to Approximation Algorithms
from I - An Introduction to the Techniques
Published online by Cambridge University Press: 05 June 2012
- Frontmatter
- Contents
- Preface
- I An Introduction to the Techniques
- 1 An Introduction to Approximation Algorithms
- 2 Greedy Algorithms and Local Search
- 3 Rounding Data and Dynamic Programming
- 4 Deterministic Rounding of Linear Programs
- 5 Random Sampling and Randomized Rounding of Linear Programs
- 6 Randomized Rounding of Semidefinite Programs
- 7 The Primal-Dual Method
- 8 Cuts and Metrics
- II Further Uses of the Techniques
- Appendix A Linear Programming
- Appendix B NP-Completeness
- Bibliography
- Author Index
- Subject Index
Summary
The Whats and Whys of Approximation Algorithms
Decisions, decisions. The difficulty of sifting through large amounts of data in order to make an informed choice is ubiquitous in today's society. One of the promises of the information technology era is that many decisions can now be made rapidly by computers, from deciding inventory levels, to routing vehicles, to organizing data for efficient retrieval. The study of how to make decisions of these sorts in order to achieve some best possible goal, or objective, has created the field of discrete optimization.
Unfortunately, most interesting discrete optimization problems are NP-hard. Thus, unless P = NP, there are no efficient algorithms to find optimal solutions to such problems, where we follow the convention that an efficient algorithm is one that runs in time bounded by a polynomial in its input size. This book concerns itself with the answer to the question “What should we do in this case?”
An old engineering slogan says, “Fast. Cheap. Reliable. Choose two.” Similarly, if P ≠ NP, we can't simultaneously have algorithms that (1) find optimal solutions (2) in polynomial time (3) for any instance. At least one of these requirements must be relaxed in any approach to dealing with an NP-hard optimization problem.
- Type
- Chapter
- Information
- The Design of Approximation Algorithms , pp. 3 - 26Publisher: Cambridge University PressPrint publication year: 2011
- 2
- Cited by