While I was at university, I read about a man named Aki Ra: a former child soldier in Cambodia, he since dedicated his life
to clearing landmines laid in his country's devastating civil war. Using little more than a leatherman, he has cleared 50,000 landmines by hand. You
can watch an excellent documentary about him here.
The more I learned about the issue of landmines, the more I thought the problem welcomed a technical solution. It checks most of the boxes for a
problem that needs automating: clearing landmines is dangerous, repetitive, and expensive, and there are millions more left to clear across
the world. Over the course of my degree, I refined my concept of a mine clearing robot, building the robot itself gradually so that
during my Master's thesis, I could develop the AI that would control the robot.
I called the robot HAROLD (Hexapodous Autonomous Robotic Ordnance and Landmine Detector). HAROLD would essentially mimic the process of detecting
landmines through prodding: gently inserting a needle into the ground, until hitting a solid object. When deminers, or HAROLD, hit a solid object,
the needle is then inserted at different angles to determine the size of the object. Usually, it will be a rock or some other harmless debris, and
will not be the same shape as a landmine. But occasionally, it will be the same shape as a landmine, at which point it needs to be carefully
excavated, and if it is a landmine, disarmed or destroyed.
As an engineering project, this is an interesting problem. Just creating the robotic motions involved in walking around and prodding were tricky,
but then there is another issue: robots, in general, have a hard time knowing exactly where they are. GPS sensors are not necessarily accurate within
a great precision, and other techniques, such as camera based localisation, can be unreliable. Of course, for HAROLD to tell deminers where the mines
are, he needs to have a good idea of where he is when he finds them! A finished HAROLD may have all the bells and whistles, such as GPS sensors, to help
narrow down the current location, but I decided to build in an AI that could provide a good estimate, and was independent of any sensors.
In robotics, the process of estimating your position without any sensors is known as dead reckoning. Dead reckoning works by remembering how you've moved,
and how that should affect your position -- for example, "I started at position X, and I've taken 5 steps forward. Each step moves me precisely 1 metre
forward, so I should now be 5 metres in front of X". This works if your robot moves perfectly, in a perfectly predictable environment, but of course
this is never true in real life. If you don't believe me, try to walk to the shops and buy some milk, with your eyes closed, relying only on memory.
(Unlimited AI accepts no responsibility for any damage incurred).
HAROLD's approach was to admit that he's not perfect, and work this in to his calculations: instead of saying that one step must move him forward exactly 10cm,
one step is modelled as moving forwards about 10cm, give or take a few millimeters, and move roughly in the right direction, give or take a few degrees.
This accounts for getting thrown off course by a bump in the ground, or a motor being slightly too powerful and causing HAROLD to take a step that's
slightly too big.
The solution is then to do a full sweep of an area suspected to contain mines. If HAROLD feels something solid, he doesn't investigate further at this point.
He continues his sweep, remembering every step he takes and the position of every prod. When he gets to the end, he tries to imagine where he might be.
He does this by imagining the steps he took, with randomly assigned position and orientation errors thrown in, thousands of times, with different random
errors each time. You could think of this as HAROLD picturing thousands of parallel universes, where he made slightly different mistakes in each one,
and picturing where his position was throughout each one. This gives him an estimate of his final position, and where he was when he made each prod.
Imagine plotting the final position from each "universe": in practice, you get a cloud of points, with a dense center. This is the most probable final
position.
The next step is the most important for getting an accurate position for each mine. HAROLD can move forwards, backwards, or sideways (a bit like a crab).
If he wants to figure out which solid objects were mines, he needs to go back and prod them again, but from a slightly different position. Now he must decide
his next steps -- the idea is to take as few steps as possible, and eliminate as much uncertainty as possible. To eliminate uncertainty, he plots a possible
route, and asks, "in how many universes will I detect a landmine at that new position?". If all the universes agree that, if a solid prod near that position
was indeed feeling a landmine shaped object, that another prod will likely hit something solid, then there is not much point in following that route:
HAROLD will only confirm what he is already very sure about. However, if half of the universes disagree with the other half, then this is a good route to
take: if HAROLD takes this route, then no matter what he detects at the end, he will be able to discard half of the parallel universes stored in his memory
as too unlikely: if a prediction based on them is incorrect, then they are probably very unlikely themselves.
HAROLD then repeats this process, narrowing down the positions of different mines, eliminating different possibilities, adding new ones each time he moves
again, until the positions of the mines are sufficiently precise. The mines would still have to be excavated by a person, but hopefully HAROLD would remove
the most dangerous and labour intensive part of the process. By the end of my degree, it turned out HAROLD worked well, but not that well. He could narrow down mine
positions quite nicely in a laboratory environment, and while promising, it would take many, many times more work to get HAROLD to a point that he could
actually be out in the field, doing something useful.
(In a laboratory, tinned pies are significantly easier to come across than actual landmines).
I think this project is a classic example of what can go wrong when engineers try to solve real world problems. Throughout the project, I never actually
spoke to someone who might use the finished product: I read all about landmines, and looked at the state of the research, so I technically knew everything
I needed to know; but that didn't change that I've never been to a minefield, and still have no idea of the reality of digging up landmines. If I'd spoken
to someone who might actually use this robot, I probably would have realised much sooner that a legged robot a bit of a silly idea, and that the same
AI I developed would work just as nicely, perhaps better, for a robot that ran on tracks, like a tank: a legged robot in theory can better navigate obstacles,
and can be more dexterous, but in practice this makes the problem infinitely more complicated outside a laboratory.
I suspect that this project also suffers from the issue of "solving a problem that doesn't exist". This might sound surprising: this phrase is often
used to describe clearly ridiculous inventions; and surely as problems go, they don't get much more real than landmines?
This is what I thought, and it is why I allowed myself to put so much work into the technical side of the project, without stopping to consider if
HAROLD is actually a solution to a real problem. As it happens, human deminers are really, really, really good at what they do: the HALO trust recently
announced that Mozambique is now
mine-free
, thanks to the painstaking efforts of many brave deminers. If they're doing such a good job, would it really
be that helpful to interrupt them with a costly robot, that does what they already do, that probably doesn't work perfectly anyway? Perhaps not.
And if they can declare one country mine free but not another, perhaps the problems are more to do with international politics, and less to do with
the physical process itself.
If I were to do it again, my very first step would be to talk to a deminer. Every project I have worked on since has not been allowed to start until I
have someone who is an expert in the problem I want to solve, and that expert understands what I am going to do. It is why, with Unlimited AI, I want
potential clients to understand that I don't just offer a free consultation: I offer an entire research process for free. I want us to go through as
many meetings, or workshops, or prototypes as it takes before we are both certain that a project is worth developing. And only then, when we have the best
chance of deploying an AI that makes a difference, will the development begin.
This project is a large part of what led me towards creating a consultancy for the third sector. It taught me that, as powerful as technology can be, it
doesn't matter unless you can develop it with someone who really understands the problem at hand. It's tempting to think that you can solve the world's
problems with a flashy idea, but in reality, the best way to apply AI in a useful way is to find someone who is already changing the world, and enhance
their work. If you are one of these people, get in touch.