11 research outputs found

    Computing the Rank Profile Matrix

    Get PDF
    The row (resp. column) rank profile of a matrix describes the staircase shape of its row (resp. column) echelon form. In an ISSAC'13 paper, we proposed a recursive Gaussian elimination that can compute simultaneously the row and column rank profiles of a matrix as well as those of all of its leading sub-matrices, in the same time as state of the art Gaussian elimination algorithms. Here we first study the conditions making a Gaus-sian elimination algorithm reveal this information. Therefore, we propose the definition of a new matrix invariant, the rank profile matrix, summarizing all information on the row and column rank profiles of all the leading sub-matrices. We also explore the conditions for a Gaussian elimination algorithm to compute all or part of this invariant, through the corresponding PLUQ decomposition. As a consequence, we show that the classical iterative CUP decomposition algorithm can actually be adapted to compute the rank profile matrix. Used, in a Crout variant, as a base-case to our ISSAC'13 implementation, it delivers a significant improvement in efficiency. Second, the row (resp. column) echelon form of a matrix are usually computed via different dedicated triangular decompositions. We show here that, from some PLUQ decompositions, it is possible to recover the row and column echelon forms of a matrix and of any of its leading sub-matrices thanks to an elementary post-processing algorithm

    Rank-profile revealing Gaussian elimination and the CUP matrix decomposition

    Get PDF
    Transforming a matrix over a field to echelon form, or decomposing the matrix as a product of structured matrices that reveal the rank profile, is a fundamental building block of computational exact linear algebra. This paper surveys the well known variations of such decompositions and transformations that have been proposed in the literature. We present an algorithm to compute the CUP decomposition of a matrix, adapted from the LSP algorithm of Ibarra, Moran and Hui (1982), and show reductions from the other most common Gaussian elimination based matrix transformations and decompositions to the CUP decomposition. We discuss the advantages of the CUP algorithm over other existing algorithms by studying time and space complexities: the asymptotic time complexity is rank sensitive, and comparing the constants of the leading terms, the algorithms for computing matrix invariants based on the CUP decomposition are always at least as good except in one case. We also show that the CUP algorithm, as well as the computation of other invariants such as transformation to reduced column echelon form using the CUP algorithm, all work in place, allowing for example to compute the inverse of a matrix on the same storage as the input matrix.Comment: 35 page

    Métodos matemáticos e computacionais para modelagem e edição de deformações

    Get PDF
    Orientador: Jorge StolfiTese (doutorado) - Universidade Estadual de Campinas, Instituto de ComputaçãoResumo: Nesta tese, descrevemos primeiramente o algoritmo ECLES (Editing by Constrained LEast Squares), um método geral para edição interativa de objetos definidos por parâmetros sujeitos a restrições lineares ou afins. Neste método, as restrições e as ações de edição do usuário são combinadas usando mínimos quadrados restritos, ao invés da abordagem mais comum de elementos finitos. Usamos aritmética exata para detectar e eliminar redundâncias no conjunto de restrições e evitar falhas devido a erros de arredondamento. O algoritmo ECLES tem diversas aplicações. Entre elas, podemos citar a edição de deformações spline com continuidade C¹. Nesta tese, descrevemos um método interativo de edição de deformações do plano, o algoritmo 2DSD (2D Spline Deformation). As deformações são definidas por splines de grau 5 sobre uma malha triangular arbitrária. Estas deformações são editadas alterando-se as posições dos pontos de controle da malha. O algoritmo ECLES é usado em cada ação de edição do usuário para detectar, de forma robusta e eficiente, o conjunto de restrições de continuidade C¹ que são relevantes, garantindo que não existam redundâncias. Em seguida, como os parâmetros são modificados pelo usuário, o ECLES é chamado para calcular as novas posições dos pontos de controle satisfazendo as restrições e as posições especificadas pelo usuário. A fim de validar nosso método 2DSD, ele foi utilizado como parte de um editor interativo para deformações do espaço 2.5D, o editor PrisMystic. Este editor foi utilizado, principalmente, para deformar modelos tridimensionais de organismos microscópicos não-rígidos de modo a coincidir com imagens reais de microscopia ótica. Também utilizamos o editor para editar modelos de terrenosAbstract: In this thesis, we present the ECLES algorithm (Editing by Constrained LEast Squares), a general method for interactive editing of objects that are defined by parameters subject to linear or affine constraints. In this method, the constraints and the user editing actions are combined using constrained least squares instead of the usual finite element approach. We use exact integer arithmetic in order to detect and eliminate redundancies in the set of constraints and to avoid failures due to rounding errors. The ECLES algorithm has various applications. Among them, we can cite the editing of C¹-continuous spline deformations. In this thesis, we describe an interactive editing method for deformations of the plane, the 2DSD algorithm (2D Spline Deformation). The deformations are defined by splines of degree 5 on an arbitrary triangular mesh. The deformations are edited by changing the positions of its control points. The ECLES algorithm is first used in each user editing action in order to detect, in a robust and efficient way, the set of relevant constraints of C¹ continuity, ensuring that there are no redundancies. Then, as the parameters are changed by the user, ECLES is called to compute the new positions of the control points satisfying the constraints and the positions specified by the user. To validate our 2DSD algorithm, we used it as part of an interactive editor for 2.5D space deformations, the PrisMystic editor. This editor has been used, mainly, to deform 3D models of non-rigid living microscopic organisms as seen in actual optical microscope images. We also used the editor to edit terrain modelsDoutoradoCiência da ComputaçãoDoutora em Ciência da Computação140780/2013-001-P-04554-2013CNPQCAPE

    Cache-Friendly, Modular and Parallel Schemes For Computing Subresultant Chains

    Get PDF
    The RegularChains library in Maple offers a collection of commands for solving polynomial systems symbolically with taking advantage of the theory of regular chains. The primary goal of this thesis is algorithmic contributions, in particular, to high-performance computational schemes for subresultant chains and underlying routines to extend that of RegularChains in a C/C++ open-source library. Subresultants are one of the most fundamental tools in computer algebra. They are at the core of numerous algorithms including, but not limited to, polynomial GCD computations, polynomial system solving, and symbolic integration. When the subresultant chain of two polynomials is involved in a client procedure, not all polynomials of the chain, or not all coefficients of a given subresultant, may be needed. Based on that observation, we design so-called speculative and caching strategies which yield great performance improvements within our polynomial system solver. Our implementation of these techniques has been highly optimized. We have implemented optimized core arithmetic routines and multithreaded subresultant algorithms for univariate, bivariate and multivariate polynomials. We further examine memory access patterns and data locality for computing subresultants of multivariate polynomials, and study different optimization techniques for the fraction-free LU decomposition algorithm to compute subresultants based on determinant of Bezout matrices. Our code is publicly available at www.bpaslib.org as part of the Basic Polynomial Algebra Subprograms (BPAS) library that is mainly written in C, with concurrency support and user interfaces written in C++

    A Riemannian approach to large-scale constrained least-squares with symmetries

    Get PDF
    This thesis deals with least-squares optimization on a manifold of equivalence relations, e.g., in the presence of symmetries which arise frequently in many applications. While least-squares cost functions remain a popular way to model large-scale problems, the additional symmetry constraint should be interpreted as a way to make the modeling robust. Two fundamental examples are the matrix completion problem, a least-squares problem with rank constraints and the generalized eigenvalue problem, a least-squares problem with orthogonality constraints. The possible large-scale nature of these problems demands to exploit the problem structure as much as possible in order to design numerically efficient algorithms. The constrained least-squares problems are tackled in the framework of Riemannian optimization that has gained much popularity in recent years because of the special nature of orthogonality and rank constraints that have particular symmetries. Previous work on Riemannian optimization has mostly focused on the search space, exploiting the differential geometry of the constraint but disregarding the role of the cost function. We, on the other hand, propose to take both cost and constraints into account to propose a tailored Riemannian geometry. This is achieved by proposing novel Riemannian metrics. To this end, we show a basic connection between sequential quadratic programming and Riemannian gradient optimization and address the general question of selecting a metric in Riemannian optimization. We revisit quadratic optimization problems with orthogonality and rank constraints by generalizing various existing methods, like power, inverse and Rayleigh quotient iterations, and proposing novel ones that empirically compete with state-of-the-art algorithms. Overall, this thesis deals with exploiting two fundamental structures, least-squares and symmetry, in nonlinear optimization

    A Riemannian approach to large-scale constrained least-squares with symmetries

    Full text link
    This thesis deals with least-squares optimization on a manifold of equivalence relations, e.g., in the presence of symmetries which arise frequently in many applications. While least-squares cost functions remain a popular way to model large-scale problems, the additional symmetry constraint should be interpreted as a way to make the modeling robust. Two fundamental examples are the matrix completion problem, a least-squares problem with rank constraints and the generalized eigenvalue problem, a least-squares problem with orthogonality constraints. The possible large-scale nature of these problems demands to exploit the problem structure as much as possible in order to design numerically efficient algorithms. The constrained least-squares problems are tackled in the framework of Riemannian optimization that has gained much popularity in recent years because of the special nature of orthogonality and rank constraints that have particular symmetries. Previous work on Riemannian optimization has mostly focused on the search space, exploiting the differential geometry of the constraint but disregarding the role of the cost function. We, on the other hand, propose to take both cost and constraints into account to propose a tailored Riemannian geometry. This is achieved by proposing novel Riemannian metrics. To this end, we show a basic connection between sequential quadratic programming and Riemannian gradient optimization and address the general question of selecting a metric in Riemannian optimization. We revisit quadratic optimization problems with orthogonality and rank constraints by generalizing various existing methods, like power, inverse and Rayleigh quotient iterations, and proposing novel ones that empirically compete with state-of-the-art algorithms. Overall, this thesis deals with exploiting two fundamental structures, least-squares and symmetry, in nonlinear optimization

    Computer Science for Continuous Data:Survey, Vision, Theory, and Practice of a Computer Analysis System

    Get PDF
    Building on George Boole's work, Logic provides a rigorous foundation for the powerful tools in Computer Science that underlie nowadays ubiquitous processing of discrete data, such as strings or graphs. Concerning continuous data, already Alan Turing had applied "his" machines to formalize and study the processing of real numbers: an aspect of his oeuvre that we transform from theory to practice.The present essay surveys the state of the art and envisions the future of Computer Science for continuous data: natively, beyond brute-force discretization, based on and guided by and extending classical discrete Computer Science, as bridge between Pure and Applied Mathematics
    corecore