Randomized Algorithms: Motwani, Rajeev, Raghavan, Prabhakar: 9780521474658: Amazon.com: Books (original) (raw)

Algorithms are my specialty, and I'm really interest in everything that is connected with them. This is one of the few books from the field of algorithms that I was a problem to read. I found this book hard to read because of several reasons.

Firstly, i have a problem with the composition of material from the book. The material is in the many places presented in the unnatural way. Book is method oriented, so often same problem is treated in several places in the book. On the other hand the book is not fully method oriented, so there are chapters of the book that don't present any method of building randomized algorithms. There are several chapters that are organized around some concept from the probability theory. I don't see the reason for these two orientation to be mixed.

Often I have a feeling that authors are not particulary interested in randomized algorithms, and that thet their main interest is to show probability methods in the theory of algorithms. So, there are, for example, chapters in the book named "Moments and Deviations" and "Tail Inequalities". I don't want to say that these concepts are not important for the randomized algorithm complexity claculations, but I think that such chapters belongs to book on probability theory, not randomized algorithms book. On the other side, therms of Monte Carlo and Las Vegas algorithms get together one section in the chapter in which they are described. It is true that in these chapters contain randomized algorithms as examples of usage of mathematical concepts, but the question is: should this book present general mathematical concepts, or randomized algorithms.

The second big drawback is lack of precise mathematical notion in many places in the book. For example, in the chapter on game theory the reader get impression that the whole game theory are game trees. Yet, authors fail to define what game tree is. The definition they give is more lausy desciption than definition. They don't say which kind of tree is game tree. Is it binary? Of course it is not, but authors in this section work only with binary trees. Further, in the text authors said that this tree is uniform. I have to admit that I never heard about uniform trees. The problem is that all definitions in the book is given in this way, by the paragraph of the text, which describe the term, not define it. In fact, the only concepts that are properly defined are ones form the probability theory. None of the concepts from the algorithms theory or data structures theory is not defined as it should be.

The third great problem with the book is that these concepts are never ilustrated with the concrete example. There is a section about the game trees, for example, but there is no single game tree for some game generated in this section. This is not a single case. All examples in the book are about mathmatical, or nore precisely probability theory concepts, and all of them looks like they are taken from the workbook on probability theory, and doesn't have any connection with algorithms.

Another problem is that all chapters are not builded in the same manner. There are chapters (unfortenately very little of them) that have theoretical overview of the method they deal with, but in the other chapters there are no proper theoretical description of the method of the matter.

To resume, this book shows the lack of concept and system in the writting, as well as the interest of authors more in mathmatics than in algorithm field.

My opinion is that there are much better books on the randomized algorithms tnan this one.