Abstract
The greedy approach is widely used for combinatorial optimization problems, but its implementation varies from problem to problem. In this paper we propose a mechanical approach for implementing greedy algorithmic programs. Using PAR method, a problem can be continually partitioned into subproblems in smaller size based on the problem singleton and the maximum selector, and the greedy algorithm can be mechanically generated by combining the problem-solving sequences. Our structural model supports logical transformation from specifications to algorithmic programs by deductive inference, and thus significantly promotes the automation and reusability of algorithm design.
Supported by grants from Natural Science Foundation (No. 60573080, 60773054) and International Sci. & Tech. Cooperation Program (No. 2008DFA11940) of China and Natural Science Foundation (No. 2008GQS0056) of Jiangxi Province.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Aho, A.V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Addison Wesley, Reading (1974)
Alsuwaiyel, M.H.: Algorithms Design Techniques and Analysis. World Scientific Publishing, Singapore (1999)
Bird, R.S.: An Introduction to the Theory of Lists. In: Broy, M. (ed.) Logic of Programming and Calculi of Discrete Design. NATO ASI. Ser. F, vol. 36, pp. 5–42 (1987)
Bird, R.S., Moor, O.D.: From Dynamic Programming to Greedy Algorithms. In: Moller, B., Partsch, H.A., Schuman, S.A. (eds.) Formal Program Development. LNCS, vol. 755, pp. 43–61. Springer, Heidelberg (1993)
Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithm, 2nd edn. McGraw-Hill, New York (2001)
Dijkstra, E.W., Scholten, C.S.: Predicate Calculus and Program Semantics. Texts and Monographs in Computer Science. Springer, New York (1990)
Edmonds, J.: Matroids and the Greedy Algorithm. Math. Prog. 1, 171–236 (1971)
Fujishigey, S., Koshevoyb, G.A., Sano, Y.: Matroids on Convex Geometries (cg-matroids). Discrete Math. 307, 1936–1950 (2007)
Gries, D.: The Science of Programming. Springer, New York (1981)
Helman, P.: An Algebra for Search Problems and Their Solutions. In: Kanal, L., Kumar, V. (eds.) Search in Artificial intelligence, pp. 28–90. Springer, Berlin (1988)
Jeuring, J.: Theories for Algorithm Calculation. PhD thesis, Faculty of Science, Utrecht University (1993)
Kaldewaij, A.: Programming: The Derivation of Algorithms. Prenctice-Hall, Englewood Cliffs (1990)
Lawler, E.L.: Combinatorial Optimization: Networks and Matroids. Holt, Rinehart and Winston, New York (1976)
Luan, S.M., Li, W.: An Incremental Approach to Automatic Algorithm Design. J. Comput. Sci. & Technol. 14, 314–319 (1999)
Lowry, M.R.: Algorithm Synthesis Through Problem Reformulation. PhD Thesis, Stanford University (1989)
Meertens, L.: Algorithmics towards Programming as a Mathematical Activity. In: Bakker, J.W., Vliet, J. (eds.) CWI Symposium on Mathematics and Computer Science, pp. 289–334. North-Holland, Amsterdam (1986)
Smith, D.R.: Designware: Software Development by Refinement. In: 8th International Conference on Category Theory and Computer Science, Edinburgh, pp. 3–21 (1999)
Tardos, E.: An Intersection Theorem for Supermatroids. J. Combin. Theory, Ser. B 50, 150–159 (1990)
Wachter, R., Reif, J.H., Paige, R.A. (eds.): Parallel Algorithm Derivation and Program Transformation. Kluwer Academic Publishers, New York (1993)
Xue, J.Y.: Two New Strategies for Developing Loop Invariants and Their Application. J. Comput. Sci. & Technol. 8, 95–102 (1993)
Xue, J.Y.: A Unified Approach for Developing Efficient Algorithmic Programs. Journal J. Comput. Sci. & Technol. 12, 103–118 (1997)
Xue, J.Y.: A Practicable Approach for Formal Development of Algorithmic Programs. In: 1st International Symposium on Future Software Technology, Nanjing, China, pp. 158–160 (1999)
Xue, J.Y.: PAR Method and its Supporting Platform. In: 1st International Workshop of Asian Working Conference on Verified Software, Macao, China, pp. 11–20 (2006)
Zheng, Y.J., Shi, H.H., Xue, J.Y.: Toward a Unified Implementation for Dynamic Programming. In: 8th International Conference on Young Computer Scientists, Beijing, China, pp. 181–185 (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Zheng, Y., Xue, J., Zuo, Z. (2009). Toward an Automatic Approach to Greedy Algorithms. In: Deng, X., Hopcroft, J.E., Xue, J. (eds) Frontiers in Algorithmics. FAW 2009. Lecture Notes in Computer Science, vol 5598. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02270-8_31
Download citation
DOI: https://doi.org/10.1007/978-3-642-02270-8_31
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02269-2
Online ISBN: 978-3-642-02270-8
eBook Packages: Computer ScienceComputer Science (R0)