197 research outputs found
Lock-free Parallel Dynamic Programming
We show a method for parallelizing top down dynamic programs in a straightforward way by a careful choice of a lock-free shared hash table implementation and randomization of the order in which the dynamic program computes its subproblems. This generic approach is applied to dynamic programs for knapsack, shortest paths, and RNA structure alignment, as well as to a state-of-the-art solution for minimizing the máximum number of open stacks. Experimental results are provided on three different modern multicore architectures which show that this parallelization is effective and reasonably scalable.
In particular, we obtain over 10 times speedup for 32 threads on the open stacks problem
A Massively Parallel Dynamic Programming for Approximate Rectangle Escape Problem
Sublinear time complexity is required by the massively parallel computation
(MPC) model. Breaking dynamic programs into a set of sparse dynamic programs
that can be divided, solved, and merged in sublinear time.
The rectangle escape problem (REP) is defined as follows: For
axis-aligned rectangles inside an axis-aligned bounding box , extend each
rectangle in only one of the four directions: up, down, left, or right until it
reaches and the density is minimized, where is the maximum number
of extensions of rectangles to the boundary that pass through a point inside
bounding box . REP is NP-hard for . If the rectangles are points of a
grid (or unit squares of a grid), the problem is called the square escape
problem (SEP) and it is still NP-hard.
We give a -approximation algorithm for SEP with with time
complexity . This improves the time complexity of existing
algorithms which are at least quadratic. Also, the approximation ratio of our
algorithm for is which is tight. We also give a
-approximation algorithm for REP with time complexity and
give a MPC version of this algorithm for which is the first parallel
algorithm for this problem
Cost Innovation: Schumpeter and Equilibrium. Part 1. Robinson Crusoe
Modifying a parallel dynamic programming approach to a simple deterministic economy, we consider the effect of an innovation in the means of production. The success of the innovation is assumed to depend on the availability of financing, locus of financial control, the amount of resources invested, and on a random event. The relationship between money and physical assets is critical. In this first part stress is laid on the innovation behavior of Robinson Crusoe in a premonetary economy, then on his actions in a monetary economy in partial equilibrium. Part 2 considers the closed monetary economy with several differentiated agents.Cost innovation, Schumpeter, Circular flow, Strategic market games
A parallel dynamic programming algorithm for unranking set partitions
In this paper, an O(n) parallel algorithm is presented for unranking set partitions in Hutchinson’s representation. A simple sequential algorithm is derived on the basis of a dynamic programming paradigm. In the parallel algorithm, processing is performed in a dedicated parallel architecture combining certain systolic and associative features. The algorithm consists of two phases. In the first phase, a coefficient table is created by systolic computations. Then, n subsequent elements of a partition codeword are computed, in O(1) time each, through associative search operations
Cost Innovation: Schumpeter and Equilibrium. Part 1. Robinson Crusoe
Modifying a parallel dynamic programming approach to a simple deterministic economy, we consider the effect of an innovation in the means of production. The success of the innovation is assumed to depend on the availability of financing, locus of financial control, the amount of resources invested, and on a random event. The relationship between money and physical assets is critical. In this first part stress is laid on the innovation behavior of Robinson Crusoe in a premonetary economy, then on his actions in a monetary economy in partial equilibrium. Part 2 considers the closed monetary economy with several differentiated agents
A parallel implementation on a multi-core architecture of a dynamic programming algorithm applied in cognitive radio ad hoc networks
Spectral resources allocation is a major problem in cognitive radio ad hoc networks and currently most of the research papers use meta-heuristics to solve it. On the other side, the term parallelism refers to techniques to make programs faster by performing several computations in parallel. Parallelism would be very interesting to increase the performance of real-time systems, especially for the cognitive radio ad hoc networks that interest us in this work. In this paper, we present a parallel implementation on a multi-core architecture of dynamic programming algorithm applied in cognitive radio ad hoc networks. Our simulations approve the desired results, showing significant gain in terms of execution time. The main objective is to allow a cognitive engine to use an exact method and to have better results compared to the use of meta-heuristics
Recommended from our members
Parallel data compression
Data compression schemes remove data redundancy in communicated and stored data and increase the effective capacities of communication and storage devices. Parallel algorithms and implementations for textual data compression are surveyed. Related concepts from parallel computation and information theory are briefly discussed. Static and dynamic methods for codeword construction and transmission on various models of parallel computation are described. Included are parallel methods which boost system speed by coding data concurrently, and approaches which employ multiple compression techniques to improve compression ratios. Theoretical and empirical comparisons are reported and areas for future research are suggested
- …