Playing Moonwalker 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 Moonwalker. 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.
Moonwalker is a game
where the player has to navigate in an unknown
environment to rescue children. This robot is
playing this level for the first time and has no idea
what the level environment looks like. He uses logic
to plan out optimal routes to travel to do his
searches. The player (the robot) will try not to
travel in the same areas twice. The goal is to
rescue the children in the fastest time possible.
Along the way, the
player encounters enemies. In order to avoid getting
hit or mobbed by a gang, the robot has to kill
enemies. Avoiding enemies is a stupid move because
they can always turn around and follow you. By
killing the enemy it eliminates the threat all
together. Also, the game is programmed so that
enemies are consistently attacking the player. In
order to survive, the player has to kill enemies. If
he doesn't, the enemies will keep coming and gang up
on the player, resulting in death.
In the video, the robot
is actually doing multiple tasks at the same time:
killing enemies, rescuing children, and navigating in
an unknown environment. He is making decisions every
second that will satisfy all 3 tasks. Sometimes he
might do 2 tasks or 1 task, and it really depends on
the current situation. Other times, he might abandon
a committed action/s and generate a new action. The
robot will always pursue actions that will accomplish
his goals.
At the ending of the
video, the player was stuck and doesn't know what to
do. He searched the entire level environment twice
and he can't find the 2 remaining children. At this
point, the robot has to use logic to generate
creative ideas to continue with the game. After
thinking for a few seconds, the robot generated an
idea and that idea eventual solved the problem. He
was able to rescue the 2 remaining children and pass
the level.