Training a robot vehicle to survive a 150 mile race
Team members drove the vehicle to help it learn how to avoid obstacles. As the human drove around, sensor data was collected and later used to train the software on how a real obstacle should look like. In the beginning, around 12 percent of seen objects were false positives and according to Montemerlo, the vevicle has not been driveable then. After several driving sessions, the vehicle detected 1 in 50,000 objects as false positives. While it may seem that Stanford is trying to make the vehicle more humanlike, Montemerlo told us that there are limits, "it can be taken too far, we are not trying to duplicate a human being, we are trying to build a car that drives itself."
When avoiding obstacles, the software will swerve and brake the vehicle to the "safety speed" specified by the team members. The safety speed is the top speed where the car can make any maneuver without exceeding lateral acceleration and flip over. Montemerlo told us that unexpected results happened when the team changed the safety speed from 7 mph to 15 mph. If the vehicle was already below 15 MPH, a software glitch caused Stanley to gun the engine and accelerate to 15 mph. "It was scary because it would approach a gate and speed through it, breaking any speed limits imposed by DARPA or us," said Montemerlo.
We asked the team what the most dastardly obstacle could be on the actual Grand Challenge course. Montemerlo told us that cliffs, which is are negative obstacles, are extremely tough to detect. Sensor beams go out to infinity causing the vehicle to think that there is no obstacle. In addition, high speed zones could prove dangerous because of the decreased reaction times, "If there is an obstacle in a 35 mph zone, you're going to wreck a lot of robots," says Montemerlo
Most of the software runs on Fedora Core 3 Linux, but the vision uses Debian because of a software library issue. In the back of the vehicle are six Intel Pentium-M rackmount computers connected by a Gigabit Ethernet switch. All the computer equipment was donated by Intel. "The Pentium-Ms provide a lot of bang for your buck computational wise for electrical power." With the low power requirements of the CPUs Stanford can run all the computers off of the alternator. There are redundant power supplies and the whole assembly is mounted on shocks, but Montemerlo says, "The car itself is the real shock mount."
Any component can be hard power cycled and another computer can send UDP packets that can turn anything on or off. This improves reliability and helps in isolating components for testing. "We've pushed very hard for a reliable run. If you are going to win a 150 mile race, you realistically need to run 500 miles without problems. This takes into account mean time before failure," explained Montemerlo. Before the qualification runs, Stanford took the vehicle into the desert and drove 420 miles without intervention, he said.
While Stanford doesn't want to tell anyone how fast their vehicle has gone, many people think that Stanford has a good chance of winning the Grand Challenge race. Montemerlo isn't that concerned about winning and simply wants the vehicle to survive the unpredictable and perhaps destructive desert route. "It's been a great learning experience, and I just hope Stanley will be in one piece [after the race]," says Montemerlo.
DARPA Grand Challenge update #1: Qualification day 1 results