UBC Reports | Vol. 50 | No. 4| Apr.
Building a Better Mars Rover
UBC Computer scientist works on giving robots the brains
to fend for themselves
By Michelle Cook
When NASA bounced a pair of robots onto Mars earlier this
year to explore the red planet and look for evidence of water,
Nando de Freitas took more than a passing interest in how
the two rovers, dubbed Spirit and Opportunity, would manage
The UBC computer scientist is part of a team of researchers
working with NASA to design the “brains” of the
next generation of rovers that will follow Spirit and Opportunity
into space. The team’s goal is to develop a more autonomous
robot able to fend for itself 170 million kilometres from
its creators on Earth.
The two rovers currently exploring Mars have some autonomy
but, for the most part, their activities are controlled via
basic instructions sent daily from mission control.
“We want rovers to handle the more mundane tasks of
monitoring their own “health” and navigating the
rough Mars terrain so that scientists back on Earth can focus
on the smaller amount of information [the robot is sending
back] related to scientific questions about the planet,”
says de Freitas.
“We’re really only interested in a certain amount
of information from the rovers such as ‘did you see
an alien?’” he adds with a laugh.
To do this, de Freitas has been exploring how to give a
rover the ability to learn to do things such as recognize
when something is wrong with it and then fix itself.
“As humans, we know our bodies. We know how we feel.
We also know when something doesn’t feel right -- if
our heart is beating too fast, for example,” de Freitas
“A robot by itself should know, without having to
communicate with Earth, ‘okay, my wheel isn’t
working; I should replace it.’ We’re not at that
point yet but that’s where we want to be -- to really
get robots aware for their internal state.”
Judging from the work de Freitas has been conducting in
UBC’s Lab for Computational Intelligence, it may not
be too long before the kind of touchy-feely rover he envisions
is brought to life. His research team has already created
a robot that can differentiate between various surfaces --
carpet, grass, tile -- that it travels over and diagnose whether
its wheel is stuck. The results of the team’s research
will be published this month by the Institute of Electrical
and Electronic Engineers (IEEE).
While it may all sound a bit Frankenstein-ish, the process
doesn’t require knowledge of anatomy so much as a mastery
of algorithms - Monte Carlo algorithms to be exact.
Developed by an employee of the Guinness beer company in
the 1700s and, more infamously, used to build the atom bomb,
de Freitas says Monte Carlo algorithms are particularly suited
to the task of programming an autonomous robot to learn. Algorithms
are a set of mathematical rules. De Freitas compares them
to cookbook recipes. They give a robot a formula with parameters
that is also flexible enough to allow for variations and substitutions
in information and a margin of error.
With this, de Freitas and other scientists are developing
a robot that can recognize and then fix any number of potential
problems on a space mission. By loading the robot with data
and then simulating as many scenarios as they can beforehand,
they “teach” it to become familiar with when it’s
functioning properly and when it’s not.
“We have to explain to it, this is what it feels like
to have a broken wheel so that it learns all the possible
internal states and when you let it go, if anything happens,
it knows what’s happening and what to do,” he
De Freitas is also trying to improve a rover’s ability
to see. Better vision would enable it to better self-navigate
and carry out other small tasks on its own. The Spirit and
Opportunity rovers are equipped with sensors and a set of
nine cameras each. These capture the spectacular panoramic
pictures they’ve been sending back to Earth, but the
rovers can’t yet process the images they’re seeing
and decide where to go by themselves.
The main challenge to overcome is understanding how human
vision works, de Freitas says, and to be able to model mathematically
everything that goes into visual recognition -- colour, texture,
shape -- so a robot can understand what they’re seeing.
“Think of all the things that are the colour blue,”
he explains. “How do you distinguish between the blue
of the sky and of the ocean? Humans bring context to what
they see; robots don’t. There’s a lot of uncertainty
and you have to bring in context for them.”
Again, the Monte Carlo algorithms are particularly suited
for teaching a robot how to sift through massive amounts of
data in order to build a probalistic model to represent the
world around them. This enables them to learn how to recognize
objects, find patterns in what they’re seeing, match
images to words, and label things.
De Freitas says the algorithms allow robots to simulate
possible scenarios before they make a decision on what action
to take. This mental decision process is constructed so that
the number of mistakes is reduced or completely eliminated.
So how smart will the next crew of rovers be?
“They will be more robust robots able to fix themselves
and able to operate for much longer times,” de Freitas
says. “That’s important when you consider the
cost of these missions. They’re extremely expensive
and it would be nice if you could just drop rovers off and
you knew they would be able to move and do all sorts of things
without having to contact us all the time.”