This book covers the dominant theoretical approaches to the approximate solution of hard combinatorial optimization and enumeration problems. It contains elegant combinatorial theory, useful and interesting algorithms, and deep results about the intrinsic complexity of combinatorial problems. Its clarity of exposition and excellent selection of exercises will make it accessible and appealing to all those with a taste for mathematics and algorithms.
Richard Karp,University Professor, University of California at Berkeley
Following the development of basic combinatorial optimization techniques in the 1960s and 1970s, a main open question was to develop a theory of approximation algorithms. In the 1990s, parallel developments in techniques for designing approximation algorithms as well as methods for proving hardness of approximation results have led to a beautiful theory. The need to solve truly large instances of computationally hard problems, such as those arising from the Internet or the human genome project, has also increased interest in this theory. The field is currently very active, with the toolbox of approximation algorithm design techniques getting always richer.
It is a pleasure to recommend Vijay Vazirani's well-written and comprehensive book on this important and timely topic. I am sure the reader will find it most useful both as an introduction to approximability as well as a reference to the many aspects of approximation algorithms.
László Lovász, Senior Researcher, Microsoft Research
Most natural optimization problems, including those arising in important application areas, are NP-hard. Therefore, under the widely believed conjecture that P≠NP, their exact solution is prohibitively time consuming. Charting the landscape of approximability of these problems, via polynomial-time algorithms, therefore becomes a compelling subject of scientific inquiry in computer science and mathematics. This book presents the theory of approximation algorithms.
This book is divided into three parts. Part I covers combinatorial algorithms for a number of important problems, using a wide variety of algorithm design techniques. Part II presents linear programming based algorithms. These are categorized under two fundamental techniques: rounding and the primal-dual schema. Part III covers four important topics: the first is the problem of finding a shortest vector in a lattice; the second is the approximability of counting, as opposed to optimization, problems; the third topic is centered around recent breakthrough results, establishing hardness of approximation for many key problems, and giving new legitimacy to approximation algorithms as a deep theory; and the fourth topic consists of the numerous open problems of this young field.
This book is suitable for use in advanced undergraduate and graduate-level courses on approximation algorithms. An undergraduate course in algorithms and the theory of NP-completeness should suffice as a prerequisite for most of the chapters. This book can also be used as supplementary text in basic undergraduate and graduate algorithms courses.
Vijay V. Vazirani
Approximation Algorithms Algorithm Design Computational Complexity Algorithm Analysis Combinatorial Optimization Operations Research Scheduling Linear Optimization Problem Complexity Combinatorics
From the reviews:
"Approximation algorithms is an area where much progress has been made in the last 10 years. The book under review is a very good help for understanding these results. In each of the 27 chapters an important combinatorial optimization problem is presented and one or more approximation algorithms for it are clearly and concisely described and analyzed. In this way most of the most important results from the approximation algorithm literature are covered, often more easily comprehensible than the original articles." (Viggo Kann, Zentralblatt MATH, Vol. 1005, 2003)
"The book under review concentrates on the … design and analysis of efficient approximation algorithms with good performance guarantees. It is possibly the first textbook to provide an extensive and systematic coverage of this topic. … The book starts briskly, using simple examples to illustrate some of the key concepts and draw the reader rapidly in. … Copious exercises are included to test and deepen the reader’s understanding. … It deserves a place in every computer science and mathematical library." (Mark R. Jerrum, Mathematical Reviews, 2002 h)
"The book of Vijay Vazirani is not the first one dedicated to approximation algorithms … . However it is, I believe, among the very best from a didactical point of view: this is the text I would chose, would I have to give a course on approximation algorithms … . I suspect that for many researchers it would be the first one to consult … . It is a must acquisition for libraries of computer science/engineering departments … ." (Francesco Maffioli, Mathematical Methods of Operations Research, Vol. 56 (2), 2002)
"The book gives an overview on the theory of approximation algorithms. It presents the most important problems, the basic methods and ideas which are used in this area. … The book can be used for a graduate course on approximation algorithms. … The chapters also contain asection of exercises, which can help the students to understand the material in a deeper way. … On the other hand the book can be used by the researchers of the field … ." (Csanád Imreh, Acta Scientiarum Mathematicarum, Vol. 68, 2002)