Open Problem 37:Counting Polyominoes

Open Problem 37:
Counting Polyominoes
http://maven.smith.edu/~orourke/TOPP/P37.html
by Jason Wilkins
Polyominoes
A polyomino is an edge-connected union of cells in the planar square
lattice [5]. In other words "Tetris Blocks."
Pentominoes (5-ominoes) [1]
Hexominoes (6-ominoes) [1]
Heptominoes (7-ominoes) [1]
Open Problem Statement
How many polyominoes on n squares are there? [5]
This would seem to be a simple problem of counting, but it
appears to be intractable due to the exponential growth in the
number of n-polyominoes as n gets larger and the difficulty in
not counting polyominoes multiple times.
Different Ways to Count
● What do we consider to be a unique polyomino? [1]
○ Fixed - translations do not count
○ Chiral - translations and reflections do not count
○ Free - translations, reflections, and rotations do not count
● Example: The game of Tetris uses 7 tetrominoes. [2]
○ There are actually only 5 free tetrominoes.
○ The extra tetrominoes come from using the chiral duals (reflections) of
the
and
pieces.
○ There are 19 fixed tetrominoes which represent every way you can
orient the pieces during play.
Partial Results
Precise counts for fixed n-ominoes are known up to n = 46. [4]
6,855,776,266,634,516,541,016,873
Denote the number of fixed n-ominoes as t(n). Then we can characterize t
(n) asymptotically by the constant q where q is the limit of the nth root of t(n) as
n approaches infinity, and q is between 3.9 and 4.65.
lim [t(n)]1/n = q
In other words, t(n) is asymptotically similar to qn.
(The problem page says nq but that can't be right) [5]
The exact method used to determine these bounds is lengthy [3][6], so I think it
would be better to give the intuition behind how this problem has been
approached.
Getting a Lower Bound
● Create a procedure to generate polyominoes that is
simpler than the naive algorithm
● Will also need to be more efficient than best known
methods
● Efficiency here means it generates a larger number of
polyominoes for less computational cost
● The procedure should generate only polyominoes, but does
not have to produce all of them.
● Be able to count the number of polyominoes generated
○ prove it
○ or, just compute them all
● Of course, the goal here is to produce a procedure that
generates all of the polyominoes more efficiently, but then
you may have completely solved the problem.
Getting and Upper Bound
● Create a procedure that generates objects that can be
mapped to the polyominoes
● The procedure should be simpler and more efficient than
the best known methods
● Some of the objects will not be mappable to polyominoes
and those objects will inflate the count
● The procedure should generate all of the polyominoes,
leaving none of them out
● again, be able to count the number of objects generated
● Certainly, the goal here is to not generate any extra objects,
but if you do that you may have already solved the problem.
Possible Approaches
● Improve on the previous methods by devising more
algorithms to generate better upper and lower bounds.
● Devise a way to partition the space of polyominoes such
that the computation can be done more efficiently in
parallel.
● Use a probabilistic model. Instead of computing an
absolute number of extra non-polyominoes, compute the
probability that each generated object is a polyominoe and
get an expected number from that.
References
1. Polyomino. Wikipedia. Nov 27, 2011. http://en.wikipedia.
org/wiki/Polyomino
2. Tetromino. Wikipedia. Nov 27, 2011. http://en.wikipedia.
org/wiki/Tetromino
3. David A. Klarner. Polyominoes. In Jacob E. Goodman and Joseph
O'Rourke, editors, Handbook of Discrete and Computational Geometry,
chapter 12, pages 225-242. CRC Press LLC, Boca Raton, FL, 1997.
4. Iwan Jensen. Enumerations of lattice animals and trees. J. Statistical
Physics, 102:865-881, 2001.
5. Erik D. Demaine, Joseph S. B. Mitchell, Joseph O'Rourke. Problem 37:
Counting Polyominoes. The Open Problems Project. Jul 10, 2011. http:
//maven.smith.edu/~orourke/TOPP/P37.html
6. David A. Klarner, R.L. Rivest. A Procedure for Improving the Upper
Bound of the Number of n-ominoes. Canadian Journal of Math. Vol.
XXV, No. 3, 1973, pp. 585-602.