DeepAI

# Tiling with Squares and Packing Dominos in Polynomial Time

We consider planar tiling and packing problems with polyomino pieces and a polyomino container P. A polyomino is a polygonal region with axis parallel edges and corners of integral coordinates, which may have holes. We give two polynomial time algorithms, one for deciding if P can be tiled with 2× 2 squares (that is, deciding if P is the union of a set of non-overlapping copies of the 2× 2 square) and one for packing P with a maximum number of non-overlapping and axis-parallel 2× 1 dominos, allowing rotations of 90^∘. As packing is more general than tiling, the latter algorithm can also be used to decide if P can be tiled by 2× 1 dominos. These are classical problems with important applications in VLSI design, and the related problem of finding a maximum packing of 2× 2 squares is known to be NP-Hard [J. Algorithms 1990]. For our three problems there are known pseudo-polynomial time algorithms, that is, algorithms with running times polynomial in the area 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(nlog n) algorithm for tiling with squares, and a more involved O(n^4) algorithm for packing and tiling with dominos.

02/12/2022

### Tight Approximation Algorithms for Two Dimensional Guillotine Strip Packing

In the Strip Packing problem (SP), we are given a vertical half-strip [0...
02/04/2014

### Optimal Rectangle Packing: An Absolute Placement Approach

We consider the problem of finding all enclosing rectangles of minimum a...
05/18/2022

### On data reduction for dynamic vector bin packing

We study a dynamic vector bin packing (DVBP) problem. We show hardness f...
04/16/2020

### Framework for ∃ℝ-Completeness of Two-Dimensional Packing Problems

We show that many natural two-dimensional packing problems are algorithm...
10/02/2019

### Rectangle Blanket Problem: Binary integer linear programming formulation and solution algorithms

A rectangle blanket is a set of non-overlapping axis-aligned rectangles,...
06/21/2022

### Orthogonal dissection into few rectangles

We describe a polynomial time algorithm that takes as input a polygon wi...
04/14/2021

### Enumerating All Convex Polyhedra Glued from Squares in Polynomial Time

We present an algorithm that enumerates and classifies all edge-to-edge ...