Abstract
A long-standing problem in algorithm design has been to characterize the class of problems for which greedy algorithms exist. Many greedy problems can be described using algebraic structures called matroids, which were later generalized to greedoids. Once in this form, the original problem can be solved using Edmonds’ Greedy Algorithm. However there are several practical problems with greedy solutions that either do not have a greedoid representation (e.g. Activity Selection) or for which none is known (e.g. Huffman Coding). This paper presents a new characterization of greedy problems that is strictly more general than greedoids, in that it includes all greedoids, as well as problems such as Activity Selection and Huffman Coding. Unlike matroids, our characterization is an axiomatization of a form of Branch and Bound Search, where greediness is associated with the existence of an appropriate dominance relation. Starting from a definition of optimality of the required solution we derive a recurrence relation. This recurrence can then be transformed into a correct-by-construction program that solves problems in our greedy class, analogous to the Greedy Algorithm.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bird, R.S., De Moor, O.: From dynamic programming to greedy algorithms. In: Möller, B., Schuman, S., Partsch, H. (eds.) Formal Program Development. LNCS, vol. 755, pp. 43–61. Springer, Heidelberg (1993)
Björner, A., Ziegler, G.M.: Introduction to greedoids. In: White, N. (ed.) Matroid Applications. Cambridge University Press, Cambridge (1992)
Charlier, B.: The greedy algorithms class: formalization, synthesis and generalization. Technical report (1995)
Cormen, T., Leiserson, C., Rivest, R., Stein, C.: Introduction to Algorithms, 2nd edn. MIT Press, Cambridge (2001)
Curtis, S.A.: The classification of greedy algorithms. Sci. Comput. Program 49(1-3), 125–157 (2003)
Edmonds, J.: Matroids and the greedy algorithm. Math. Programming 1(1), 127–136 (1971)
Helman, P., Moret, B.M.E., Shapiro, H.D.: An exact characterization of greedy structures. SIAM J. on Discrete Math. 6, 274–283 (1993)
Ibaraki, T.: The power of dominance relations in branch-and-bound algorithms. J. ACM 24(2), 264–279 (1977)
Korte, B., Lovasz, L., Schrader, R.: Greedoids. Springer, Heidelberg (1991)
Nedunuri, S., Cook, W.R.: Synthesis of fast programs for maximum segment sum problems. In: Intl. Conf. on Generative Programming and Component Engineering (GPCE) (October 2009)
Nedunuri, S., Smith, D.R., Cook, W.R.: Synthesis of greedy algorithms using dominance relations. In: 2nd NASA Symp. on Formal Methods (2010)
Smith, D.R.: Structure and design of global search algorithms. Tech. Rep. Kes.U.87.12, Kestrel Institute (1988)
Smith, D.R.: Kids: A semi-automatic program development system. IEEE Trans. on Soft. Eng., Spec. Issue on Formal Methods 16(9), 1024–1043 (1990)
Smith, D.R., Parra, E.A., Westfold, S.J.: Synthesis of high-performance transportation schedulers. Technical report, Kestrel Institute (1995)
Smith, D.R., Westfold, S.: Synthesis of propositional satisfiability solvers. Final proj. report, Kestrel Institute (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nedunuri, S., Smith, D.R., Cook, W.R. (2010). A Class of Greedy Algorithms and Its Relation to Greedoids. In: Cavalcanti, A., Deharbe, D., Gaudel, MC., Woodcock, J. (eds) Theoretical Aspects of Computing – ICTAC 2010. ICTAC 2010. Lecture Notes in Computer Science, vol 6255. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14808-8_24
Download citation
DOI: https://doi.org/10.1007/978-3-642-14808-8_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-14807-1
Online ISBN: 978-3-642-14808-8
eBook Packages: Computer ScienceComputer Science (R0)