This page presents some of the more recent mapping results achieved by RatSLAM.
Please note this page is about two years out of date and is missing about half the major results from the project which are much more impressive. I will be endeavouring to rectify this situation in the next few months. In the meantime you can read about most of our more recent research in our papers here.
In late 2004 we conducted a series of experiments where we mapped the floor of our office building, which is approximately 45 by 13 metres in size. It is a highly complex environment, with laboratories, offices and open plan space, quite a challenge for any SLAM system. The floorplan is shown here, with a green line showing the trajectory of the robot around the environment:
Floorplan of our office building, with robot's trajectory shown in green
Shown below is the trajectory of the robot as perceived by the RatSLAM system. Because RatSLAM is a topological, rather than metric representation, a successful mapping of the environment does not necessarily produce a trajectory that looks exactly like the one in the floorplan shown above. Rather, a successful mapping run is shown by consistency in the perceived trajectory. If the robot realises it is in a previously visited place when it visits it a second and third time, the SLAM technique is working.
RatSLAM map of the floor
The trajectory shown is clearly consistent
- on multiple paths down the same corridor each part of the trajectory
line clearly overlaps the previous. There is one period where the
robot becomes slightly lost, entering one of the offices at the bottom
of the diagram. However, after 'seeing' enough familiar visual
landmarks in the environment, the RatSLAM system is able to re-localise
to the correct position. This correction, which we refer to as a
"re-localisation snap", is shown in the diagram by the red and blue
circles, showing respectively the start and finish of the snap (The red
circle with the 'S' in it refers to the (S)tart of the snap, and the
blue circle with the (F) in it refers to the (F)inish point of the
Because RatSLAM relies on the wheel encoders to provide localisation information when there is insufficient visual input, it is possible for it to become temporarily slightly lost. The map below shows how the robot was still able to re-localise itself even after becoming quite lost:
Another RatSLAM map of the same floor
The robot's sense of where it is becomes quite awry for a little while as it travels down one of the corridors, before it recognizes enough familiar visual images to correct its idea of where it is.
We've also made a video showing the trajectory as perceived by the RatSLAM system throughout the experiment, which you can access by clicking on the picture:
video (646 KB)
Closing the loop is one of the seminal problems that any successful SLAM system should be able to solve. It refers simply to the problem of, whilst traversing a loop like environment, realising that you are back at the start when you complete the first lap, and also on subsequent laps. We conducted some loop experiments in one of the CSIRO buildings showing that the RatSLAM system is indeed capable of closing the loop. The floorplan of the test environment is shown here:
Here's the map RatSLAM formed of the environment. Notice how it was able to re-localise quite rapidly upon starting the second lap. Because the environment is highly ambiguous, there is no way to instantaneously re-localise upon commencing each new lap, rather the system must wait for enough visual input before it can be sure of a making a correction:
RatSLAM map of the loop environment
There are also several other re-localisation snaps where the robot has wondered for a while with insufficient visual input, before being able to correct it's position and orientation once sufficient visual input was received. Here is the video of the RatSLAM trajectory during the experiment:
of RatSLAM trajectory in loop environment (437 KB)
Kidnapping is one of the hardest problems to solve in the field of SLAM. Kidnapping a robot refers to picking up a robot mid-experiment and quickly dumping it somewhere else in the environment, without informing it that it has been kidnapped. It is akin to knocking a human over the head so that they are unconsicous, and moving them to some other location in their building. Here's an example of RatSLAM recovering from a kidnap experience:
Kidnap recovery using RatSLAM
As you can see, because of the severity of the kidnap problem, it takes the RatSLAM system quite a while to re-localise - about a third of a lap, but it does do so eventually. You can't re-localise more quickly because of the large amount of ambiguity present in the environment - there are lots of places which look the same. You need to experience several places in a row before you can deduce where you are, which is exactly what the RatSLAM system does with its probabilistic representation.
Return to my homepage