<< 1 >>
Rating: Summary: First and only book for network modeling/programming Review: Ahuja creates one of the best operations research book on the planet. I'm afraid no one can conduct network modeling without take a look at this book though. Go for it!
Rating: Summary: First and only book for network modeling/programming Review: Ahuja creates one of the best operations research book on the planet. I'm afraid no one can conduct network modeling without take a look at this book though. Go for it!
Rating: Summary: The Most comprehensive Network Programmin book ever Review: Dr.Tom and other authors have done a great job in writing this book. The book covers a lot of topics in Network Programming and a variety of algorithms are cited.A must buy for any serious student taking a course in Network Programming.
Rating: Summary: PLEASE, write a corrected edition! Review: First of all, I am not surprised that the book got so many good reviews: at first look, it is truly impressive, and it is clearly a work of love. I was looking forward to teaching from it. It is quite clear from the reviews though, that the reviewers have not **used** it for teaching; they may have browsed it at most. The first disappointments came very soon in the course I taught. The biggest flaw of the book is the really bad style in which the proofs are written. They manage to be seemingly overflowing with explanation, and at the same time difficult to understand. They gloss over many details: if the teacher tries to skip these, an alert student could easily make him/her look pretty silly. One case in point is the proof of the label correcting algorithm's correctness starting on page 136. I knew this material from before, so I thought preparing class from here would be a breeze. I was wrong: after going back to my notes, and breaking up the mess into several simple claims did I manage to make notes from which I could teach. Whoever missed the class was helpless, when they looked for explanation in the book. I only remark, that all classes that I taught from this book were at some of the top 10 OR depts at the US... so this is hardly the students' fault. Many exercises are wrong as well, and although the authors claim that they will try to fix the mistakes, they hardly ever reply to reader's comments, as some of my fellow professors told me. I can only compare the style of the exposition to the later written Combinatorial Optimization book by Cunningham et. al. There is a WORLD of difference. One can try to look up for instance, the proof for the label correcting algorithm: the proof in the Ahuja et. al book is practically creaking at the joints, while in Cunningham et. al. it flows lucidly. I suspect that the authors of the latter book wrote it, since they were unhappy with this one; one can hardly be surprised. On the positive side, the plethora of applications presented is truly amazing, and the exercises (when correct) are excellent. To sum it up: A good book, which could have become a great one, but have not; one which is very useful, but at the same time very hard to use... I think the community would thank the authors for a second, revised edition, that would fix all the mistakes, and all those terrible proofs. A final word: this text received the prestigious Lanchester prize. One may surmise that giving prizes to a textbook would be best done maybe after 5 years, after a book proved its worth in actual teaching in the trenches, so to speak, and NOT based on the first impression that the jury gets.
Rating: Summary: Bible for Network flows Review: Go for it! Other books do give algorithms but some of them have sloopy versions of the algorithms. This book not only gives the efficient versions of algorithms but also gives pseudo code for all of them. And the treatment of the subject itself is flawless. The theory leading to algorithms is very important to understand the algorithms and the authors do an excellent job. The way the book is organised the pictures and examples - everything is perfect. The exercises are not just number crunching problems but real good problems which require lot of thinking.
Rating: Summary: This book makes me finish my master thesis Review: I use this book to be the guide line for proposing the strongly polynomial-time algorithm named CMCP for solving the constrained maximum capacity path problem, similar to the constrained shortest path problem, one of the NP-Complete problems. The complexity of the algorithm is O(m*sqr(n)) using Dijkstra's algorithm, the algorithm solving the maximum capacity path problem and the technique for creating subnetworks as submodules. I graduated in the master degree of Industrail Engineering at Kasetsart U. in Bangkok and now I'v been working at IBM Storage Product, Thailand.
Rating: Summary: the best network flow book for computer scientists Review: I've been using this book as the primary text for my class in
"Network Flow Programming" (senior & graduate level) at the
University of Tennessee for about 10 years. Prior to that time
I had used Jensen & Barnes' Network Flow Programming (now long out
of print). The code in Jensen & Barnes is in FORTRAN (not so fun
or useful for CS majors) and the intended audience seemed to be OR.
Ahuja's code is pascal pseudo-code for the most part, which usually
translates easily into the C language that most of our students
use.
For CS students, there is excellent use of algorithm analysis
(big-O) throughout the book, and there are long discussions
about different approaches and algorithms and the complexity of
each. There is a lot of mathematical notation, but my students
have never had to worry about PDEs and the like here. Any good
advanced CS student (graduate or undergraduate) will find the
book very worthwhile. In my course the students must implement
min-cost spanning trees, shortest paths, critical path/PERT
networks (not in Ahuja), max flow, and min-cost flow. I would
also recommend (for CS majors) Tarjan's excellent (and
succinct) Data Structures and Network Algorithms.
Rating: Summary: Great book for Network Theory and Application Review: This book contains a lot of great algorithms for network flow theory and it also contains many of the great applications, which are very useful in practice. This book is very completed. Personally, I learn a lot of new things about Multi commodity Flow, which are the use of Lagrangian Relaxation, Column generation, Resource allocation techniques for solving multi commodity flow. There are also the good chapters in Convex cost flow and Generalized Flow and good appendix in complexity. Beside this book is very easy to read and understand. It is a great idea to have if you are in OR or IE major. :)
Rating: Summary: Very complete Review: This book is a comprehensive overview of network flow algorithms with emphasis on cost constraint algorithms. In chapter 1 the authors introduce the network flow problems that will be studied in the book along with a discussion of the applications of these problems. The terminology needed for network flow problems is introduced in Chapter 2, with rigorous definitions given for graphs, trees, and network representations. Most interesting is the discussion on network transformations, for here the authors discuss how to simplify networks to make their study more tractable. An overview of complexity concepts in algorithms is given in the next chapter. A good discussion is given on parameter balancing. Pseudocode is given at various places to illustrate the algorithms. Chapter 4 discusses shortest-path algorithms, with emphasis on label-setting algorithms. For network modelers and designers involved in routing algorithms, there is a nice discussion of Dijkstra's algorithm in this chapter, along with a treatment of how to improve on that algorithm by using Dial's, heap, and radix heap implementations. A more general discussion of shortest path algorithms follows in Chapter 5, with details on label-correcting algorithms. The reader is asked to investigate the Bellman's equations in the exercises. The maximum flow algorithm is treated in Chapter 6, and the reader with a background in linear programming will see ideas from that area applied nicely here. An application to parallel programming is given also. The maximum flow problem is treated using algorithms that improve worst-case complexity in Chapter 7, by employing the preflow-push algorithms. Even more approaches to the maximum flow problem are considered in Chapter 8, where the reader can find a good presentation of dynamic tree implementations. All of the algorithms up to this point are put into the context of the minimum cost flow problem in Chapter 9. It is here that optimality conditions become very transparent in the implementation of the algorithms. A very quick but helpful discussion is given on sensitivity analysis of the minimum cost flow problem. An interesting application of the results is given to the problem of reconstructing the left ventricle in the heart from X-ray projections. Polynomial time algorithms for minimum cost flows are discussed effectively in Chapter 10, which is followed by a discussion of using linear programming methods in the minimum cost flow problem in Chapter 11. The application of combinatorial optimization techniques is the subject of Chapter 12, where matching problems are discussed. The authors give a thorough treatment, along with many examples. Spanning trees again make their appearance in Chapter 13, via the minimum spanning tree problem. The all-important Kruskal algorithm is given a detailed treatment, along with a very interesting discussion of matroids. Nonlinear optimization via convex cost flows is the subject of Chapter 14, wherein the authors show how to transform a convex cost flow problem into a minimum cost flow problem. Flow problems that are not conservative at the nodes are the subject of the next chapter on generalized flow problems. The solutions of these problems are discussed within the context of augmented forest structures, and many applications are given. Lagrangian methods are the subject of Chapter 16, where the authors show how to solve constrained shortest path algorithms using Lagrangian relaxation. It is here that one can see the interplay between all of the techniques introduced so far. Particularly interesting is the discussion on applications to the traveling salesman problem, vehicle routing, and network design. Flow problems where more than one entity are transferred across the network are the subject of Chapter 17, and logistic planners and engineers will find the treatment very helpful. Most helpful to those using network flow algorithms in their everyday work is the discussion in Chapter 18 on the computational testing of algorithms. The authors give a fine discussion on how to identify bottlenecks, compare performance differences between two algorithms, and how to use virtual running times instead of CPU times to test algorithms. The book ends with a chapter on more applications of network flow problems. Twenty-four applications are discussed, the most interesting ones to me being the optimal destruction of military targets, data scaling, DNA sequence alignment, automatic karyotyping of chromosomes, minimum project duration, just-in-time scheduling, warehouse layout, and inventory planning.
Rating: Summary: Good Introductory Book Review: This is a good introductory book. I particularly liked the applications of the problems, introduced in the book. The main negative point that I could mention is, the redundant explanations and discussions you might see in different chapters. I would say the volume of the book could have been reduced by some 15%-20%, if the authors had chosen to be more concise.
The book, Combinatorial Optimization by William J. Cook, et al, is an alternative. It covers a whole lot of topics and is just too succinct, a little more elaboration would have been appreciated !
<< 1 >>
|