Hashi Puzzles in a Graph-Theoretic Model
Download
Report
Transcript Hashi Puzzles in a Graph-Theoretic Model
Hashi in a Graph-Theoretic
Model
Ben Warren
What is Hashi?
Single-player puzzle
invented in Japan.
“Hashi” is short for the
Japanese name,
“hashiwokakero”,
meaning “build
bridges”.
The player is given a
puzzle key, and seeks
to construct a unique
solution according to
certain simple rules.
Rules of Hashi
Played on an n-by-n grid,
with some spaces
containing numbered
islands.
The goal is to connect all of
the islands with bridges
such that:
All bridges run orthogonally
between two distinct islands.
No two bridges cross.
Either 0, 1, or 2 bridges connect
any two islands.
The number of bridges incident
on an island matches that
island's number.
The final puzzle solution
connects all islands into a single
group.
Example Hashi Solution
Example Hashi Solution
Example Hashi Solution
Example Hashi Solution
Example Hashi Solution
Example Hashi Solution
Connection to Graph Theory
With some
restrictions, it
seems that hashi
keys are vertex sets
of an unknown
solution graph with
a given degree
sequence. Hashi
solutions seem to
behave like
connected planar
multigraphs.
Constructing a Model
In order to construct a model for hashi, we
have to consider the following:
The rules of hashi depend on distances
being fixed. Our model should not be
“stretchable”.
The rules of hashi also demand that
lines be strictly orthogonal. Our model
should not be “bendable”.
We would like to force planarity for all
solutions.
Definitions
A unit-distance
graph is a graph in
which all edges are
of unit length
Definitions
A grid graph is a
unit-distance graph
which is the
Cartesian product
of two unit-distance
path graphs.
Definitions
A Hanan grid graph
of a given set of
vertices is the
graph obtained
from the
intersection of all
the orthogonal
lines through each
vertex in the set.
Our Model
More simply put:
We are given a hashi grid with weighted
vertices.
We can construct a Hanan grid graph of all
possible connections between the set of
weighted vertices, such that the underlying
simple graph of the hashi solution is a
subgraph of the Hanan graph.
Our Model in Practice:
Suppos we're given
a 7x7 hashi puzzle
key:
Our Model in Practice:
We express the
puzzle key as a
7x7 weighted unitdistance grid
graph, G:
Our Model in Practice:
We construct the
Hanan grid graph
generated by the
non-zero weight
vertices of G
(indicated in blue):
Our Model in Practice:
The hashi solution
multigraph, H, has
an underlying
simple graph which
is some subgraph
of the Hanan graph
of G:
Our Model in Practice:
So, H can be
determined as a
multigraph which is
a supergraph of
some subset of the
Hanan graph of G:
Why is this model an
improvement over the
“common-sense” approach?
Why is this model an
improvement over the
“common-sense” approach?
Why not construct a better
model?
It turns out, according to Andersson(2009),
solving arbitrarily-sized hashi is an NPcomplete problem.
This is bad news for anyone looking for a
general solution to hashi.
Some notes on P vs. NP
In computer science,
there are different
“complexity classes” of
problems.
Problems in “P” can be
solved in polynomial time.
Problems in “NP” can
have their solutions
verified in polynomial
time.
All problems which are “NP-complete” are:
In NP
And can be reached by reducing any problem in NP.
Example problems in P
Calculating greatest common divisors
Determining if a given number is prime
Example problems in NPC
“Traveling salesman” problems.
Determining graph colorings
Sudoku
Hashi
So, why is hashi interesting?
Besides being fun, hashi is a good
“gateway” between computer science and
graph theory.
It can be expressed in the language of
either, but neither has offered a complete
picture.
As hashi keys grow in size, their
complexity compounds in a very intuitive
way.
7x7
10x10
15x15
20x20
50X50
70x70
Questions for future research:
We're given an arbitrarily-sized hashi key
whose weighted vertices generate a
Hanan graph for which all possible
solution subgraphs take the form of a tree
graph. Does this restricted case grant us
any new conclusions?
Questions for future research:
Given some small integer n, can we count
all isomorphic hashi keys and solutions
which can be generated for an nxn hashi?
Given a vertex-weighted nxn unit distance
grid graph, G, can we determine any
conditions by which G absolutely is or is
not a valid hashi key?
Citations
Wikipedia. “Hashiwokakero#Rules.” Accessed April 29, 2011.
Nikoli Co., Ltd. “Puzzle Cyclopedia”, ISBN 4-89072-406-0
Andersson, Daniel, “Hashiwokakero is NP-Complete”
Eppstein. ICS 161: Design and Analysis of Algorithms Lecture notes
for March 12, 1996: NP-Completeness. University of California,
Irvine, n.d. Web. 1 May 2011.
Special thanks to:
Simon Tatham's Portable Puzzle Collection,
http://www.chiark.greenend.org.uk/~sgtatham/, distributed freely
under the MIT License