The Greedy Algorithm

In this chapter we study a method for optimizing over certain set systems, the so-called greedy algorithm. More precisely, it is used for maximizing a weight function on so-called independence systems, the classical instance being the system of spanning forests of a graph. The greedy strategy is rather short-sighted: one always selects the element which seems best at the moment. In other words, among all the admissible elements, one chooses that with maximal weight and adds it to the solution being constructed. In general, this simple-minded strategy will not work, but for a certain class of structures playing a very important part in combinatorial optimization, the so-called matroids, it indeed leads to optimal solutions. Actually, matroids may even be characterized by the fact that the greedy algorithm works for them, but there are other possible definitions. We shall look at various other characterizations of matroids and also consider the notion of matroid duality. Following this, we will consider the greedy algorithm as an approximation method for maximization on independence systems which are not matroids. We examine the efficiency of this approach, that is, we derive bounds for the ratio between the solution given by the greedy algorithm and the optimal solution. We also look at the problem of minimization on independence systems. Finally, in the last section, we discuss some further generalizations of matroids and their relationship to the greedy algorithm.

[1]  William H Cunningham,et al.  Improved Bounds for Matroid Partition and Intersection Algorithms , 1986, SIAM J. Comput..

[2]  Günter M. Ziegler,et al.  Matroid Applications: Introduction to Greedoids , 1992 .

[3]  Alfred Lehman,et al.  A Solution of the Shannon Switching Game , 1964 .

[4]  J. Kruskal On the shortest spanning subtree of a graph and the traveling salesman problem , 1956 .

[5]  Robert E. Tarjan,et al.  On a Greedy Heuristic for Complete Matching , 1981, SIAM J. Comput..

[6]  D. Welsh Kruskal's theorem for matroids , 1968, Mathematical Proceedings of the Cambridge Philosophical Society.

[7]  András Frank,et al.  Generalized polymatroids and submodular flows , 1988, Math. Program..

[8]  H. Whitney On the Abstract Properties of Linear Dependence , 1935 .

[9]  B. Sturmfels Oriented Matroids , 1993 .

[10]  D. Hausmann,et al.  Algorithmic versus axiomatic definitions of matroids , 1981 .

[11]  E. Andrew Boyd,et al.  An algorithmic characterization of antimatroids , 1990, Discret. Appl. Math..

[12]  W. Kern,et al.  Linear Programming Duality: An Introduction to Oriented Matroids , 1992 .

[13]  Robin Milner An Action Structure for Synchronous pi-Calculus , 1993, FCT.

[14]  László Lovász,et al.  Mathematical Structures Underlying Greedy Algorithms , 1981, International Symposium on Fundamentals of Computation Theory.

[15]  H. Perfect,et al.  Submodular functions and independence structures , 1970 .

[16]  R. Rado Note on Independence Functions , 1957 .

[17]  Bernd Sturmfels,et al.  Oriented Matroids: Notation , 1999 .

[18]  Liqun Qi,et al.  Directed submodularity, ditroids and directed submodular flows , 1988, Math. Program..

[19]  W. T. Tutte Introduction to the theory of matroids , 1971 .

[20]  Peter A. Brooksbank,et al.  Greedy Algorithm compatibility and heavy-set structures , 1992, Eur. J. Comb..

[21]  B. Korte,et al.  An Analysis of the Greedy Heuristic for Independence Systems , 1978 .

[22]  Walter Kern,et al.  Linear Programming Duality , 1992 .

[23]  D. Gale Optimal assignments in an ordered set: An application of matroid theory , 1968 .

[24]  Ulrich Faigle,et al.  The greedy algorithm for partially ordered sets , 1979, Discret. Math..

[25]  Ulrich Faigle On ordered languages and the optimization of linear functions by greedy algorithms , 1985, JACM.

[26]  U. Faigle,et al.  Book reviews , 1991, ZOR Methods Model. Oper. Res..

[27]  Jack Edmonds,et al.  Submodular Functions, Matroids, and Certain Polyhedra , 2001, Combinatorial Optimization.

[28]  Oskar Goecke,et al.  A greedy algorithm for hereditary set systems and a generalization of the Rado-Edmonds characterization of matroids , 1988, Discret. Appl. Math..

[29]  Henry D. Shapiro,et al.  An Exact Characterization of Greedy Structures , 1993, IPCO.

[30]  Jack Edmonds,et al.  Matroids and the greedy algorithm , 1971, Math. Program..

[31]  N. White Theory of Matroids , 2008 .

[32]  Satoru Fujishige,et al.  Submodular functions and optimization , 1991 .

[33]  Eugene L. Lawler,et al.  Matroid intersection algorithms , 1975, Math. Program..