197 research outputs found

    Lock-free Parallel Dynamic Programming

    Get PDF
    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

    Full text link
    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 nn axis-aligned rectangles inside an axis-aligned bounding box BB, extend each rectangle in only one of the four directions: up, down, left, or right until it reaches BB and the density kk is minimized, where kk is the maximum number of extensions of rectangles to the boundary that pass through a point inside bounding box BB. REP is NP-hard for k>1k>1. 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 22-approximation algorithm for SEP with k2k\geq2 with time complexity O(n3/2k2)O(n^{3/2}k^2). This improves the time complexity of existing algorithms which are at least quadratic. Also, the approximation ratio of our algorithm for k3k\geq 3 is 3/23/2 which is tight. We also give a 88-approximation algorithm for REP with time complexity O(nlogn+nk)O(n\log n+nk) and give a MPC version of this algorithm for k=O(1)k=O(1) which is the first parallel algorithm for this problem

    Cost Innovation: Schumpeter and Equilibrium. Part 1. Robinson Crusoe

    Get PDF
    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

    Get PDF
    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

    Get PDF
    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

    Get PDF
    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
    corecore