A Class of Greedy Algorithms and Its Relation to Greedoids

  • Srinivas Nedunuri
  • Douglas R. Smith
  • William R. Cook
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6255)

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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [BM93]
    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)Google Scholar
  2. [BZ92]
    Björner, A., Ziegler, G.M.: Introduction to greedoids. In: White, N. (ed.) Matroid Applications. Cambridge University Press, Cambridge (1992)Google Scholar
  3. [Cha95]
    Charlier, B.: The greedy algorithms class: formalization, synthesis and generalization. Technical report (1995)Google Scholar
  4. [CLRS01]
    Cormen, T., Leiserson, C., Rivest, R., Stein, C.: Introduction to Algorithms, 2nd edn. MIT Press, Cambridge (2001)MATHGoogle Scholar
  5. [Cur03]
    Curtis, S.A.: The classification of greedy algorithms. Sci. Comput. Program 49(1-3), 125–157 (2003)MATHCrossRefMathSciNetGoogle Scholar
  6. [Edm71]
    Edmonds, J.: Matroids and the greedy algorithm. Math. Programming 1(1), 127–136 (1971)MATHCrossRefMathSciNetGoogle Scholar
  7. [HMS93]
    Helman, P., Moret, B.M.E., Shapiro, H.D.: An exact characterization of greedy structures. SIAM J. on Discrete Math. 6, 274–283 (1993)MATHCrossRefMathSciNetGoogle Scholar
  8. [Iba77]
    Ibaraki, T.: The power of dominance relations in branch-and-bound algorithms. J. ACM 24(2), 264–279 (1977)MATHCrossRefMathSciNetGoogle Scholar
  9. [KLS91]
    Korte, B., Lovasz, L., Schrader, R.: Greedoids. Springer, Heidelberg (1991)MATHGoogle Scholar
  10. [NC09]
    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)Google Scholar
  11. [NSC10]
    Nedunuri, S., Smith, D.R., Cook, W.R.: Synthesis of greedy algorithms using dominance relations. In: 2nd NASA Symp. on Formal Methods (2010)Google Scholar
  12. [Smi88]
    Smith, D.R.: Structure and design of global search algorithms. Tech. Rep. Kes.U.87.12, Kestrel Institute (1988)Google Scholar
  13. [Smi90]
    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)Google Scholar
  14. [SPW95]
    Smith, D.R., Parra, E.A., Westfold, S.J.: Synthesis of high-performance transportation schedulers. Technical report, Kestrel Institute (1995)Google Scholar
  15. [SW08]
    Smith, D.R., Westfold, S.: Synthesis of propositional satisfiability solvers. Final proj. report, Kestrel Institute (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Srinivas Nedunuri
    • 1
  • Douglas R. Smith
    • 2
  • William R. Cook
    • 1
  1. 1.Dept. of Computer ScienceUniversity of Texas at Austin 
  2. 2.Kestrel InstitutePalo Alto

Personalised recommendations