Playing Pinball using
Human Level Artificial Intelligence
Note: To make this website free to the public
please click on an ad to support my sponsors or you
can make a tax-deductable donation using Paypal
(click on the donation icon on the left).
This video shows a
robot playing a pinball machine. There are no sound
in the video because I wanted to show the viewers
what the robot is thinking while playing the game.
The flashing text and freeze frames are the internal
thoughts of the robot and not instruction text for
the viewers. These internal thoughts describe the
details of how the robot produce intelligence.
My robot doesn't use:
planning programs/heuristic searches (used by MIT and
Stanford University), Bayesian's probability theories
for decision making, Bayesian's equation for
induction and deduction, semantic networks for
natural language understanding, predicate calculus,
common sense systems, first-order logic, rule-based
systems, genetic programming, or MACHINE LEARNING.
When playing pinball,
the robot has to understand how balls roll on flat
surfaces, like in a pinball machine. Based on past
experiences, the robot knows how a ball rolls on a
flat surface and how gravity affects its speed,
direction, and physical properties. This information
is important because the robot needs to predict the
future path of the ball when playing the game. By
understanding where the ball will be in the future,
the robot can set up strategies to hit the ball in a
certain direction. For example, if the robot wanted
to hit the ball into a small hole, he has to predict
the future path of the ball, and identify where to
hit the ball using pivoting flippers.
In the game of
pinball, the objective is very simple: keep the ball
in play for as long as possible. The longer the ball
is playing the more points the player accumulates. If
the ball goes into the pit areas, then the player
loses. These rules are constantly being followed by
the robot while playing the game. The robot is also
doing other things, like formulating strategies to
beat the game. He will keep the good strategies and
eliminate the bad strategies.
What is remarkable
about this robot is that it can play any pinball
machine, regardless of environment. He can play a
really complex pinball machine with lots of twists
and turns or play a simple pinball machine. If the
rules and objectives of the game are changed, the
robot can still adapt to the environment and play the
game. For example, if the gravity of the pinball
machine was changed -- let's say someone tilted the
machine at a 45 degree angle instead of a 15 degree
angle, the ball will be rolling much faster. The
robot can compensate for that change and still play
the game.
On more thing i have
to mention is that the internal thoughts of the
robot, the text that flashes in the robot's mind are
actually sound text. Normally, the robot's brain is
given diagrams, symbols, and arrows to suggest an
action. The robot's mind isn't presented with a
perfect english sentence. Only bits and pieces of
words are given (usually in the form of pictures).
Based on these simple pictures the robot will know
what to do. For example, if the robot was given this
instruction: "wait for the ball to touch the yellow
area before pressing the A button". The robot's mind
might show a yellow line on the left flipper and an
arrow pointing to the ball with a press A button on
the side. This fabricated animation is the meaning to
the sentence and is most likely to activate in the
robot's mind. In other words, instead of a complete
sentence being activated in the robot's mind, a
simple fabricated movie is activated. This fabricated
movie represents the meaning to the sentence. Also,
in the robot's mind, facts and knowledge are
presented in a gibberish manner, whereby the
sentences are not complete sentences, but important
words flashing in sequence order.