برنامه ریزی پویا موازی و نظریه ماشینها
|کد مقاله||سال انتشار||مقاله انگلیسی||ترجمه فارسی||تعداد کلمات|
|24783||2000||22 صفحه PDF||سفارش دهید||7680 کلمه|
Publisher : Elsevier - Science Direct (الزویر - ساینس دایرکت)
Journal : Parallel Computing, Volume 26, Issue 1, January 2000, Pages 113–134
Following Karp's discrete Dynamic Programming (DP) approach, this work extends the sequential model for monadic DP to the parallel case. We propose general parallel DP algorithms for pipeline and ring networks. The study of the optimality of these algorithms leads us to the introduction of new classes of multistage automata. However, the important class of Polyadic Dynamic Problems is out of the scope of this theory. Based on the concept of tree automaton, a new theory covering both Sequential and Parallel Dynamic Programming Polyadic Programs is presented. Monadic Programs appear as a particular case of this new theory. A large number of experiments have proved that the schemes proposed in this work lead to efficient implementations.
Dynamic Programming is an important problem-solving technique that has been widely used in various fields such as operations research  and , compute science  and , control theory , control theory ,  and , and biology . Li and Wah  and  classify Dynamic Programming (DP) programs into monadic and polyadic according to the form of the functional equation. When the functional equation contains a single recursive term it yields to a monadic DP formulation. DP formulations whose cost function contains multiple recursive terms are called polyadic formulations. Sequential computation for DP has been extensively studied. A theory for General Discrete Sequential Monadic Dynamic programs viewed as multistage finite automaton with a certain cost structure superimposed was presented in  and . Unfortunately, the important class of Polyadic Dynamic Problems was out of the scope of this theory. Many authors describe parallel algorithms for specific DP problems. Parallel DP algorithms for 0/1, two-dimensional and integer knapsack problems have been proposed for different architectures in , , , , , , , , ,  and . Specific recurrence relations such as shortest paths, optimal binary search tree, optimal chained matrix multiplication parathesizations, etc. have been approached for systolic arrays ,  and , general shared-memory multiprocessors  and for PRAM models  and . However, few efforts have been made for general parallel DP formal model. The common practice is to introduce the parallelization of the functional equation in an intuitive and non-formal way. For example, in the previously quoted work  and  Li and Wah suggest parallelizations of certain classes of DP formulations using parallel matrix product algorithms. It is a well-known fact that the availability of a formal model for a given paradigm constitutes the core for the development of automatic tools and skeletons for the parallelization of such paradigm. In this paper, we develop formal models that allow to broach DP problems in a methodical fashion. The proposed models may constitute the kernel of high level tools to parallelize the technique. Following Karp's  discrete DP approach, this work extends the sequential model for monadic DP to the parallel case. We propose general parallel Dynamic Programming algorithms for pipeline and ring networks. The study of the optimality of these algorithms leads us to the introduction of new classes of multistage automata. A problem corresponding to these type of automata can be easily parallelized. So the form of the automata is a guideline for the programmers, who should try to reformulate their problems in such a way that they corresponds to one of these automata. Based in the concept of tree automata , ,  and , a new theory covering both Sequential and Parallel DP Polyadic Programs is presented. Monadic Programs appear as a particular case of this new theory. Four representative platforms of the current state of parallel computing hardware were used for the experiences. The IBM SP2 is a distributed memory computer with a omega-like multistage interconnection network. The CRAY T3E is a three-dimensional torus with a shared address space but no shared memory. The Silicon Origin 2000 (O2000) computer has a shared distributed memory and a hypercube interconnection network. Completing the group, the Digital Alpha Server 8400 (DEC 8400) is a single bus shared memory computer. The native versions of MPI were used for all the implementations. In 2 and 3 we present the extension to the parallel case of the theory for the monadic case, we deduce the algorithms and study the conditions for their optimality. Following an analogous scheme, 4 and 5 are devoted to the new theory for the polyadic case. Computational results for both examples of Monadic and Polyadic Problems (the Single Resource Allocation Problem the Matrix Multiplication Parenthesization Problem) are presented in Section 6. Section 7 summarizes the conclusions. The computational experiments confirm the scalability of the proposed parallel algorithms.
نتیجه گیری انگلیسی
We give a general parallel DP frame that can be applied to a wide range of problems, not only for the monadic case but for the polyadic case also. The proposed models admit efficient implementations as confirmed by the computational experiments. These computational experiments agree with the predicted theoretical results: algorithm of Section 3 prove to be optimal for non-decreasing automata and algorithm of Section 5 is optimal for the Free Partition selected. The proposed models constitute a suitable kernel to build general parallel tools and skeletons for DP like described in  for microcomputers.