Freshly Printed - allow 8 days lead
The Design of Approximation Algorithms
Designed as a textbook for graduate courses on algorithms, this book presents efficient algorithms that find provably near-optimal solutions.
David P. Williamson (Author), David B. Shmoys (Author)
9780521195270, Cambridge University Press
Hardback, published 26 April 2011
518 pages, 86 b/w illus. 121 exercises
26.2 x 18.9 x 3.4 cm, 1.12 kg
"The structure of the book is very interesting and allows a deeper understanding of the techniques presented. The whole book manages to develop a way of analyzing approximation algorithms and of designing approximation algorithms that perform well."
Dana Simian, Mathematical Reviews
Discrete optimization problems are everywhere, from traditional operations research planning (scheduling, facility location and network design); to computer science databases; to advertising issues in viral marketing. Yet most such problems are NP-hard; unless P = NP, there are no efficient algorithms to find optimal solutions. This book shows how to design approximation algorithms: efficient algorithms that find provably near-optimal solutions. The book is organized around central algorithmic techniques for designing approximation algorithms, including greedy and local search algorithms, dynamic programming, linear and semidefinite programming, and randomization. Each chapter in the first section is devoted to a single algorithmic technique applied to several different problems, with more sophisticated treatment in the second section. The book also covers methods for proving that optimization problems are hard to approximate. Designed as a textbook for graduate-level algorithm courses, it will also serve as a reference for researchers interested in the heuristic solution of discrete optimization problems.
Part 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
Part II. Further Uses of the Techniques: 9. Further uses of greedy and local search algorithms
10. Further uses of rounding data and dynamic programming
11. Further uses of deterministic rounding of linear programs
12. Further uses of random sampling and randomized rounding of linear programs
13. Further uses of randomized rounding of semidefinite programs
14. Further uses of the primal-dual method
15. Further uses of cuts and metrics
16. Techniques in proving the hardness of approximation
17. Open problems
Appendix A. Linear programming
Appendix B. NP-completeness.
Subject Areas: Algorithms & data structures [UMB], Optimization [PBU]