© 2010


An Interactive Course in Combinatorial Optimization


Table of contents

  1. Front Matter
    Pages i-ix
  2. Winfried Hochstättler, Alexander Schliep
    Pages 1-5
  3. Winfried Hochstättler, Alexander Schliep
    Pages 7-17
  4. Winfried Hochstättler, Alexander Schliep
    Pages 19-32
  5. Winfried Hochstättler, Alexander Schliep
    Pages 33-52
  6. Winfried Hochstättler, Alexander Schliep
    Pages 53-67
  7. Winfried Hochstättler, Alexander Schliep
    Pages 69-87
  8. Winfried Hochstättler, Alexander Schliep
    Pages 89-109
  9. Winfried Hochstättler, Alexander Schliep
    Pages 111-128
  10. Winfried Hochstättler, Alexander Schliep
    Pages 129-154
  11. Back Matter
    Pages 155-190

About this book


Graph algorithms are easy to visualize and indeed there already exists a variety of packages and programs to animate the dynamics when solving problems from graph theory. Still, and somewhat surprisingly, it can be difficult to understand the ideas behind the algorithm from the dynamic display alone.

CATBox consists of a software system for animating graph algorithms and a course book which we developed simultaneously. The software system presents both the algorithm and the graph and puts the user always in control of the actual code that is executed. He or she can set breakpoints, proceed in single steps and trace into subroutines. The graph, and additional auxiliary graphs like residual networks, are displayed and provide visual feedback.  The course book, intended for readers at advanced undergraduate or graduate level, introduces the ideas and discusses the mathematical background necessary for understanding and verifying the correctness of the algorithms and their complexity. Computer exercises and examples replace the usual static pictures of algorithm dynamics.

For this volume we have chosen solely algorithms for classical problems from combinatorial optimization, such as minimum spanning trees, shortest paths, maximum flows, minimum cost flows as well as weighted and unweighted matchings both for bipartite and non-bipartite graphs.

We consider non-bipartite weighted matching, in particular in the geometrical case, a highlight of combinatorial optimization. In order to enable the reader to fully enjoy the beauty of the primal-dual solution algorithm for weighted matching, we present all mathematical material not only from the point of view of graph theory, but also with an emphasis on linear programming and its duality. This yields insightful and aesthetically pleasing pictures for matchings, but also for minimum spanning trees.

You can find more information at


Graph Graph theory Matching Maxima Sim algorithms combinatorial optimization complexity computer data structures optimization programming

Authors and affiliations

  1. 1.FB MathematikFernuniversität HagenHagenGermany
  2. 2.Molekulare GenetikMax-Planck-GesellschaftBerlinGermany

About the authors

Winfried Hochstättler is a professor of "Discrete Mathematics and Optimization" at FernUniversität in Hagen. The material of this book has been used for teaching in several courses.

Alexander Schliep is a professor in the department of computer science and the BioMaPS institute for quantitative biology at Rutgers University.  Gato, derived tools, and parts of CATBox have been used in graduate training at the Max Planck Institut for Molecular Genetics in Berlin.

Bibliographic information


From the book reviews:

“We warmly recommend the book for those who teach an undergraduate or graduate course on discrete optimization for students who are not theory driven or just want to see the algorithms taught in action.” (Péter Hajnal, Acta Scientiarum Mathematicarum (Szeged), Vol. 77 (3-4), 2011)

“Intend to provide both mathematical rigor as well as an interactive tool to assist the learning process. … The text is proposed for use at the graduate or advanced undergraduate levels. … theory and practice come together admirably. … CATBox is an excellent tool for learning the presented algorithms and concepts. … Students … in both computer science and the methods of mathematical proof would be well-served by this text.” (Keith Sinkhorn, The Mathematical Association of America, October, 2010)

“This book is devoted to algorithms which solve some classical problems from discrete optimization. … The authors … attempt to make accessible a number of topics that are not often found in textbooks. … The organization and presentation of the materials of the book makes it possible to use it both for readers at advanced undergraduate or graduate level and as a reference book. It is a very valuable book for successful application of real life problems from discrete optimization. I certainly recommend buying it.” (Samir Kumar Neogy, Zentralblatt MATH, Vol. 1190, 2010)