|
boards at the second level gives rise to other cases. For
example, the board in which X plays the center square and then
another square results in two different boards. The other two
boards at the second level each generate five new boards at the
third level.
I pruned many branches from the tic-tac-toe tree by appealing
to a symmetry argument: the excluded boards are merely rotations
or reflections of the included ones. Symmetry seems simple to
humans, but a computer must be programmed or wired to recognize
it. In a world of Tinkertoy engineering, symmetry operations
would require elaborate structures.
Silverman was dealing with a tree, therefore, that was many
times larger than the fragment shown in the illustration. But
perseverance paid off, especially when Silverman employed a computer
program that analyzed the game of tic-tac-toe and discovered
that a great many boards could be collapsed into one by a forced
move. Suppose, for example, that two squares in a row contain
O's and the third is blank. The contents of the remaining two
rows are irrelevant since an opponent must fill the third square
with an X or lose the game.
Silverman was delighted when he tallied up the final total
of relevant boards: only 48. For each of them he noted the appropriate
move by the machine. The surprisingly short list of possible
board positions heartened Hillis. The group converged on Hot
Springs, Silverman says, "with the list of 48 patterns and
only a vague idea of how to interpret them mechanically."
( Readers who have a fanatical bentor are stranded in
airline terminalsmay enjoy working out the game tree on
a few sheets of paper. How long does it take, after all, to draw
48 tic-tac-toe patterns? Four symbols should help sort things
out X O, blank and a dash for "don't care.")
Once settled in Hot Springs, the team assembled the raw material
for
|
their spool-and-stick odyssey: 30 boxes of Tinkertoys, each
containing 250 pieces. Some team members put together the supporting
framework that would hold all 48 memory spindles. To explain
precisely how the spindles were made, I must digress for a moment
and describe the conventions employed by the team to encode tic-tac-toe
positions.
First, the squares of a tic-tac-toe board were numbered as
follows:
1 2 3
4 5 6
7 8 9
Then a memory spindle was divided conceptually into nine consecutive
lengths in which information about the status of each tic-tac-toe
square was stored from left to right.
Each length was further subdivided into three equal sections,
one for each possible item one might find in a square: an X,
an O or a blank. Each possibility was encoded by the lack of
a spool. For example, if an X happened to occupy a certain square,
the memory spindle would have no spool in the first position,
one spool in the second and one spool in the third. Similarly,
a spool missing in the second position denoted an unplayed square,
and one missing in the third position symbolized an O. Finally,
if all three spools were missing, it meant that what occupied
the square was irrelevant.
One can hardly mention the subject of memory spindles without
bringing up the core piece, a thing of digital beauty. Here the
Latin digitus came into its own, the construction resembling
a kind of rotating claw with nine fingers. The core piece and
a sample memory spindle are shown in the illustration below.
The core piece consisted of nine equal sections. Each had
its own finger, a short stick protruding from the rim of a sliding
spool. Within each section the finger couid be moved
|
along the axis of the core piece into any of three possible
positions: one for X, one for O and one for blank. The core piece
could therefore store any possible tic-tac-toe board by virtue
of the positions of its nine fingers as moved by the operator
for each play by human or machine. In the illustration below,
fingers in the consecutive positions 2,1, 2, 3,1, 2, 2, 2, 2
would represent the board shown.
If the current situation of play is stored in the core piece,
does the Tinkertoy computer require any other memory? Could spool-and-stick
logic devices be strung together to cogitate on the position
and ultimately to signal a move? Well, yesbut such a Tinkertoy
computer would be complicated and immense. The memory spindles
eliminated the need for most of the computer's cogitation. All
the Tinkertoy computer had to do was to look up the current board
in the memory spindles. The only purpose of the search, naturally,
was to decide what move to make.
A glance at the illustration on the preceding page makes it
clear that each memory spindle was accompanied by a number written
on a paper strip hanging next to its output duck. These numbers
were the machine's responses. As the read head clicks down the
rows of spindles, the core piece wants to turn but cannot as
long as at least one memory-spindle spool blocks one of the core
piece's nine fingers. Only when the read head falls adjacent
to the spindle that matches the current board do all nine fingers
miss. Then the core piece whirls.
By a mechanism that would do Rube Goldberg proud, a stick
protruding from the end of the core piece engages another stick
connected to the output duck. The spinning core piece thus kicks
the duck off its perch to peck at a number writ large on the
paper strip.
Computer purists will ask whether the Tinkertoy contraption
really deserves the title "computer." It is not, to
|