4 research outputs found

    An Optimal Algorithm for Tiling the Plane with a Translated Polyomino

    Full text link
    We give a O(n)O(n)-time algorithm for determining whether translations of a polyomino with nn edges can tile the plane. The algorithm is also a O(n)O(n)-time algorithm for enumerating all such tilings that are also regular, and we prove that at most Θ(n)\Theta(n) such tilings exist.Comment: In proceedings of ISAAC 201

    On the Number of p4-Tilings by an n-Omino

    Get PDF
    A plane tiling by the copies of a polyomino is called isohedral if every pair of copies in the tiling has a symmetry of the tiling that maps one copy to the other. We show that, for every nn-omino (i.e., polyomino consisting of n cells), the number of non-equivalent isohedral tilings generated by 90 degree rotations, so called p4-tilings or quarter-turn tilings, is bounded by a constant (independent of n). The proof relies on the analysis of the factorization of the boundary word of a polyomino

    A Quasilinear-Time Algorithm for Tiling the Plane Isohedrally with a Polyomino

    Get PDF
    A plane tiling consisting of congruent copies of a shape is isohedral provided that for any pair of copies, there exists a symmetry of the tiling mapping one copy to the other. We give a O(n log2 n)-time algorithm for deciding if a polyomino with n edges can tile the plane isohedrally. This improves on the O(n18)-time algorithm of Keating and Vince and generalizes recent work by Brlek, Provençal, Fédou, and the second author.SCOPUS: cp.pinfo:eu-repo/semantics/publishe

    A new mathematical model for tiling finite regions of the plane with polyominoes

    Get PDF
    We present a new mathematical model for tiling finite subsets of Z2\mathbb{Z}^2 using an arbitrary, but finite, collection of polyominoes. Unlike previous approaches that employ backtracking and other refinements of `brute-force' techniques, our method is based on a systematic algebraic approach, leading in most cases to an underdetermined system of linear equations to solve. The resulting linear system is a binary linear programming problem, which can be solved via direct solution techniques, or using well-known optimization routines. We illustrate our model with some numerical examples computed in MATLAB. Users can download, edit, and run the codes from http://people.sc.fsu.edu/~jburkardt/m_src/polyominoes/polyominoes.html. For larger problems we solve the resulting binary linear programming problem with an optimization package such as CPLEX, GUROBI, or SCIP, before plotting solutions in MATLAB
    corecore