Tiling with Squares and Packing Dominos in Polynomial Time
Author(s)
Aamand, Anders; Abrahamsen, Mikkel; Ahle, Thomas; Rasmussen, Peter
Download3597932.pdf (740.0Kb)
Publisher with Creative Commons License
Publisher with Creative Commons License
Creative Commons Attribution
Terms of use
Metadata
Show full item recordAbstract
In this paper, we consider planar tiling and packing problems with polyomino pieces and a polyomino container $P$. We give polynomial-time algorithms for deciding if $P$ can be tiled with $k\times k$ squares for any fixed $k$ (that is, deciding if $P$ is the union of a set of non-overlapping $k\times k$ squares) and for packing $P$ with a maximum number of non-overlapping and axis-parallel $2\times 1$ dominos, allowing rotations by $90^\circ$. As packing is more general than tiling, the latter algorithm can also be used to decide if $P$ can be tiled by $2\times 1$ dominos. These are classical problems with important applications in VLSI design, and the related problem of finding a maximum packing of $2\times 2$ squares is known to be NP-hard [J. Algorithms 1990]. For our problems there are known pseudo-polynomial-time algorithms, that is, algorithms with running times polynomial in the area or perimeter of $P$. However, the standard, compact way to represent a polygon is by listing the coordinates of the corners in binary. We use this representation, and thus present the first polynomial-time algorithms for the problems. Concretely, we give a simple $O(n\log n)$-time algorithm for tiling with squares, where $n$ is the number of corners of $P$. We then give a more involved algorithm that reduces the problem of packing/tiling with dominos to finding a maximum/perfect matching in a graph with $O(n^3)$ vertices. This leads to algorithms with running times $O(n^3 \frac{\log^3 n}{\log^2\log n})$ and $O(n^3 \frac{\log^2 n}{\log\log n})$, respectively.
Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence LaboratoryJournal
ACM Transactions on Algorithms
Publisher
ACM
Citation
Aamand, Anders, Abrahamsen, Mikkel, Ahle, Thomas and Rasmussen, Peter. "Tiling with Squares and Packing Dominos in Polynomial Time." ACM Transactions on Algorithms.
Version: Final published version
ISSN
1549-6325
Collections
The following license files are associated with this item: