Abstract
Skeleton based libraries are considered one of the alternatives to reduce the distance between end users and parallel architectures. Algorithmic skeletons are based in general procedures describing the method to be implemented. Although a gap between general formalizations for dynamic programming and software components can be found, we develop a skeleton tool for dynamic programming problems. The design strategy is general enough to consider a wide rage of dynamic programming recurrences. As usual in skeleton approaches, the parallelism is provided in a transparent manner, so that, sequential users may access to the system. A set of tests problems representative of different classes of dynamic programming formulations has been used to validate the distributed memory implementation on an IBM-SP.
This work has been partially supported by the EC (FEDER) and the Spanish MEC (Plan Nacional de I+D+I, TIN2005-09037-C025).
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Helman, P.: A common schema for dynamic programming and branch and bound algorithms. Journal of the ACM 36, 97–128 (1989)
Karp, R.M., Held, M.: Finite state process and dynamic programming. SIAM Journal in Applied Mathematics 15, 693–718 (1967)
Ibaraki, T.: Enumerative Approaches to Combinatorial Optimization, Part II. Annals of Operations Research 11, 1–4 (1988)
de Moor, O.: Dynamic programming as a software component. In: Mastorakis, N. (ed.): Proc. 3rd WSEAS Int. Conf. Circuits, Systems, Communications and Computers (1999)
Li, G., Wah, B.: Parallel processing of serial dynamic programming programs. In: Proc. of COMPSAC 1985, pp. 81–89 (1985)
Wah, B., Li, G., Fen, C.: Multiprocessing of combinatorial search problems 18, 93–108 (1985)
Gibbons, A., Rytter, W.: 3.6. In: Efficient parallel algorithms, Cambridge University Press, Cambridge (1988)
Bitz, F., Kung, H.: Path planning on the warp computer using a linear systolic array in dynamic programming. Inter. J. Computer Math. 25, 173–188 (1988)
Galil, Z., Park, K.: Parallel algorithms for dynamic programming recurrences with more than o(1) dependency. Journal of Parallel and Distributed Computing 21, 213–222 (1994)
Louka, B., Tchuente, M.: Dynamic programming on two-dimensional systolic arrays. Information Processing Letters 29, 97–104 (1988)
Miguet, S., Robert, Y.: Dynamic programming on a ring of processors. Hypercube and Distributed Computers, 19–33 (1989)
Rytter, W.: On efficient parallel computations for some dynamic programming problems. Theoretical Computer Science 59 (1988)
Rodríguez, C., González, D., Almeida, F., Roda, J., García, F.: Parallel algorithms for polyadic problems. In: Proceedings of the 5t h Euromicro Workshop on Parallel and Distributed Processing, pp. 394–400 (1997)
Andonov, R., Balev, S., Rajopadhye, S., Yanev, N.: Otimal semi-oblique tiling and its application to sequence comparison. In: 13th ACM Symposium on Parallel Algorithms and Architectures (SPAA) (2001)
Andonov, R., Rajopadhye, S.: Optimal Orthogonal Tiling of 2-D Iterations. Journal of Parallel and Distributed Computing 45, 159–165 (1997)
Morales, D., Almeida, F., Rodríguez, C., Roda, J., Coloma, I., Delgado, A.: Parallel dynamic programming and automata theory. Parallel Computing (2000)
Eckstein, J., Phillips, C.A., Hart, W.E.: PICO: An object-oriented framework for parallel branch and bound. Technical report, RUTCOR (2000)
Cun, B.L.: Bob++ library illustrated by VRP. In: European Operational Research Conference (EURO 2001), Rotterdam, p. 157 (2001)
Lubow, B.C.: SDP: Generalized software for solving stochastic dynamic optimization problems. Wildlife Society Bulletin 23, 738–742 (1997)
Lohmander, P.: Deterministic and stochastic dynamic programming, http://www.sekon.slu.se/PLO/diskreto/dynp.htm
Alba, E., et al.: MALLBA: A library of skeletons for combinatorial optimisation (research note). In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 927–932. Springer, Heidelberg (2002)
Peláez, I., Almeida, F., González, D.: High level parallel skeletons for dynamic programming. Parallel Processing Letters (to appear, 2006)
Kumar, V., Grama, A., Gupta, A., Karypis, G.: Introduction to Parallel Computing Design and Analysis of Algorithms. The benjamin/Cummings Publishing Company, Inc. (1994)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Peláez, I., Almeida, F., Suárez, F. (2008). DPSKEL: A Skeleton Based Tool for Parallel Dynamic Programming. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Wasniewski, J. (eds) Parallel Processing and Applied Mathematics. PPAM 2007. Lecture Notes in Computer Science, vol 4967. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-68111-3_117
Download citation
DOI: https://doi.org/10.1007/978-3-540-68111-3_117
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-68105-2
Online ISBN: 978-3-540-68111-3
eBook Packages: Computer ScienceComputer Science (R0)