128 research outputs found

    Pruned Bit-Reversal Permutations: Mathematical Characterization, Fast Algorithms and Architectures

    Full text link
    A mathematical characterization of serially-pruned permutations (SPPs) employed in variable-length permuters and their associated fast pruning algorithms and architectures are proposed. Permuters are used in many signal processing systems for shuffling data and in communication systems as an adjunct to coding for error correction. Typically only a small set of discrete permuter lengths are supported. Serial pruning is a simple technique to alter the length of a permutation to support a wider range of lengths, but results in a serial processing bottleneck. In this paper, parallelizing SPPs is formulated in terms of recursively computing sums involving integer floor and related functions using integer operations, in a fashion analogous to evaluating Dedekind sums. A mathematical treatment for bit-reversal permutations (BRPs) is presented, and closed-form expressions for BRP statistics are derived. It is shown that BRP sequences have weak correlation properties. A new statistic called permutation inliers that characterizes the pruning gap of pruned interleavers is proposed. Using this statistic, a recursive algorithm that computes the minimum inliers count of a pruned BR interleaver (PBRI) in logarithmic time complexity is presented. This algorithm enables parallelizing a serial PBRI algorithm by any desired parallelism factor by computing the pruning gap in lookahead rather than a serial fashion, resulting in significant reduction in interleaving latency and memory overhead. Extensions to 2-D block and stream interleavers, as well as applications to pruned fast Fourier transforms and LTE turbo interleavers, are also presented. Moreover, hardware-efficient architectures for the proposed algorithms are developed. Simulation results demonstrate 3 to 4 orders of magnitude improvement in interleaving time compared to existing approaches.Comment: 31 page

    An image-space algorithm for hardware-based rendering of constructive solid geometry

    Get PDF
    A new approach to image-space hardware-based rendering of Constructive Solid Geometry (CSG) models is presented. The work is motivated by the evolving functionality and performance of computer graphics hardware. This work is also motivated by a specific industrial application --- interactive verification of five axis grinding machine tool programs. The goal is to minimise the amount of time required to render each frame in an animation or interactive application involving boolean combinations of three dimensional shapes. The Sequenced Convex Subtraction (SCS) algorithm utilises sequenced subtraction of convex objects for the purpose of interactive CSG rendering. Concave shapes must be decomposed into convex shapes for the purpose of rendering. The length of Permutation Embedding Sequences (PESs) used as subtraction sequences are shown to have a quadratic lower bound. In ma ny situations shorter sequences can be used, in the best case linear. Approaches to subtraction sequence encoding are presented including the use of object-space overlap information. The implementation of the algorithm is experimentally shown to perform better on modern commodity graphics hardware than previously reported methods. This work also examines performance aspects of the SCS algorithm itself. Overall performance depends on hardware characteristics, the number and spatial arrangement of primitives, and the structure and boolean operators of the CSG tree

    Combinatorial generation via permutation languages. I. Fundamentals

    Get PDF
    In this work we present a general and versatile algorithmic framework for exhaustively generating a large variety of different combinatorial objects, based on encoding them as permutations. This approach provides a unified view on many known results and allows us to prove many new ones. In particular, we obtain the following four classical Gray codes as special cases: the Steinhaus-Johnson-Trotter algorithm to generate all permutations of an nn-element set by adjacent transpositions; the binary reflected Gray code to generate all nn-bit strings by flipping a single bit in each step; the Gray code for generating all nn-vertex binary trees by rotations due to Lucas, van Baronaigien, and Ruskey; the Gray code for generating all partitions of an nn-element ground set by element exchanges due to Kaye. We present two distinct applications for our new framework: The first main application is the generation of pattern-avoiding permutations, yielding new Gray codes for different families of permutations that are characterized by the avoidance of certain classical patterns, (bi)vincular patterns, barred patterns, boxed patterns, Bruhat-restricted patterns, mesh patterns, monotone and geometric grid classes, and many others. We also obtain new Gray codes for all the combinatorial objects that are in bijection to these permutations, in particular for five different types of geometric rectangulations, also known as floorplans, which are divisions of a square into nn rectangles subject to certain restrictions. The second main application of our framework are lattice congruences of the weak order on the symmetric group~SnS_n. Recently, Pilaud and Santos realized all those lattice congruences as (n−1)(n-1)-dimensional polytopes, called quotientopes, which generalize hypercubes, associahedra, permutahedra etc. Our algorithm generates the equivalence classes of each of those lattice congruences, by producing a Hamilton path on the skeleton of the corresponding quotientope, yielding a constructive proof that each of these highly symmetric graphs is Hamiltonian. We thus also obtain a provable notion of optimality for the Gray codes obtained from our framework: They translate into walks along the edges of a polytope

    Asymmetric Construction of Low-Latency and Length-Flexible Polar Codes

    Full text link
    Polar codes are a class of capacity-achieving error correcting codes that have been selected for use in enhanced mobile broadband in the 3GPP 5th generation (5G) wireless standard. Most polar code research examines the original Arikan polar coding scheme, which is limited in block length to powers of two. This constraint presents a considerable obstacle since practical applications call for all code lengths to be readily available. Puncturing and shortening techniques allow for flexible polar codes, while multi-kernel polar codes produce native code lengths that are powers of two and/or three. In this work, we propose a new low complexity coding scheme called asymmetric polar coding that allows for any arbitrary block length. We present details on the generator matrix, frozen set design, and decoding schedule. Our scheme offers flexible polar code lengths with decoding complexity lower than equivalent state-of-the-art length-compatible approaches under successive cancellation decoding. Further, asymmetric decoding complexity is directly dependent on the codeword length rather than the nearest valid polar code length. We compare our scheme with other length matching techniques, and simulations are presented. Results show that asymmetric polar codes present similar error correction performance to the competing schemes, while dividing the number of SC decoding operations by up to a factor of 2 using the same codeword lengthComment: To appear in IEEE International Conference on Communications 2019 (Submitted October 12, 2018), 6 page

    Implementación de un algoritmo de codificación universal eficiente usando árboles de contexto

    Get PDF
    En este trabajo se propone una nueva variante del algoritmo context [28] usando codificacion semi-predictiva y se desarrolla una implementacion eficiente del mismo. Para manejar los problemas relacionados con la gran cantidad de parametros tıpicos de los archivos de texto y ejecutables y mejorar el nivel de compresi´on del algoritmo, se adaptaron algunas t´ecnicas principalmente de algoritmos tipo PPM [8]. El procedimiento de podado y el estimador de probabilidad fueron adaptados para tener en cuenta estos cambios. Ademas se uso una version modificada del algoritmo wotd [11] para podar el ´arbol durante su construccion reduciendo ası los requerimientos de memoria durante la fase de codificacion del algoritmo. Finalmente se realizo una comparacion experimental entre el algoritmo desarrollado aquı y algunas de las mejores implementaciones de otros algoritmos de codificacion conocidos

    Combinatorial algorithms for the seriation problem

    Get PDF
    In this thesis we study the seriation problem, a combinatorial problem arising in data analysis, which asks to sequence a set of objects in such a way that similar objects are ordered close to each other. We focus on the combinatorial structure and properties of Robinsonian matrices, a special class of structured matrices which best achieve the seriation goal. Our contribution is both theoretical and practical, with a particular emphasis on algorithms. In Chapter 2 we introduce basic concepts about graphs, permutations and proximity matrices used throughout the thesis. In Chapter 3 we present Robinsonian matrices, discussing their characterizations and recognition algorithms existing in the literature. In Chapter 4 we discuss Lexicographic Breadth-First search (Lex-BFS), a special graph traversal algorithm used in multisweep algorithms for the recognition of several classes of graphs. In Chapter 5 we introduce a new Lex-BFS based algorithm to recognize Robinsonian matrices, which is derived from a new characterization of Robinsonian matrices in terms of straight enumerations of unit interval graphs. In Chapter 6 we introduce the novel Similarity-First Search algorithm (SFS), a weighted version of Lex-BFS which we use in a multisweep algorithm for the recognition of Robinsonian matrices. In Chapter 7 we model the seriation problem as an instance of Quadratic Assignment Problem (QAP) and we show that if the data has a Robinsonian structure, then one can find an optimal solution for QAP using a Robinsonian recognition algorithm. In Chapter 8 we discuss how to solve the seriation problem when the data does not have a Robinsonian structure, by finding a Robinsonian approximation of the original data. Finally, in Chapter 9 we discuss some experiments which we have carried out in order to compare the performance of the algorithms introduced in the thesis

    Combinatorial algorithms for the seriation problem

    Get PDF
    • …
    corecore