Algorithmics for Hard Problems: Introduction to Combinatorial Optimization, Randomization, Approximation, and HeuristicsAlgorithmic design, especially for hard problems, is more essential for success in solving them than any standard improvement of current computer technologies. Because of this, the design of algorithms for solving hard problems is the core of current algorithmic research from the theoretical point of view as weIl as from the practical point of view. There are many general textbooks on algorithmics, and several specialized books devoted to particular approaches such as local search, randomization, approximation algorithms, or heuristics. But there is no textbook that focuses on the design of algorithms for hard computing tasks, and that systematically explains, combines, and compares the main possibilities for attacking hard algorithmic problems. As this topic is fundamental for computer science, this book tries to elose this gap. Another motivation, and probably the main reason for writing this book, is connected to education. The considered area has developed very dynamically in recent years and the research on this topic discovered several profound re sults, new concepts, and new methods. Some of the achieved contributions are so fundamental that one can speak about paradigms which should be ineluded in the education of every computer science student. Unfortunately, this is very far from reality. This is because these paradigms are not sufficiently known in the computer science community, and so they are insufficiently communicated to students and practitioners. |
Contents
Introduction | 1 |
Elementary Fundamentals | 11 |
Deterministic Approaches | 143 |
Copyright | |
6 other sections not shown
Other editions - View all
Common terms and phrases
according application approach approximation algorithms assignment bits Boolean bound called choice clauses combinatorial optimization complexity computation concept consider consists contains corresponding cost cover decision define Definition determined deterministic edges efficient elements equations event exactly example executed Exercise exists exponential fact feasible solution Figure formula function fundamental genetic given goal graph Hamiltonian hard idea independent input instance least Lemma length linear means method minimal neighborhood NP-hard Observe obtain Obviously operation optimal solution optimization problems output parallel polynomial polynomial-time positive integer possible presented prime Prob probability programming Proof prove provides PTAS randomized algorithm ratio reasonable reduction represent representation result runs satisfied sequence simple simulated annealing solving space specific Step technique Theorem tour values variables vertex vertices viewed weighted