Author: Dr Rob Wortham -
Back in December, our MSc students studying Robotics Software competed in the first MSc Robot Challenge. On the face of it, the challenge was very simple: Drive a small wheeled ‘ROSbot’ robot from one end of the lab to the other and cross the finishing line. Sounds almost too simple doesn’t it? However, our lab is cluttered with work benches and chairs, so a simple dash for the line would not do. In addition, our ever-helpful lab technicians had built a variety of obstructions, designed to challenge the robot’s sensing and impede its path. Obstacles included a transparent pyramid, unable to be sensed by the robot’s on-board LIDAR – a rotating laser distance sensor. Shiny objects of various colours provided similar challenges for those intending to use the robot’s camera, and an aluminium foil wrapped cube neatly defeated the robot’s infrared distance sensors. The ROSbots are also equipped with an IMU (inertial measurement unit) allowing them to measure their orientation – important if you are trying to head towards a target location – and wheel encoders to roughly measure distance travelled.
Unaware of the obstacles or the layout of the course, the challenge was to build a robust system able to deal with novel situations, and still reach a target. In effect this was a much scaled down version of the 2005 DARPA robot challenge, where teams competed to drive a vehicle autonomously over desert terrain, covering 142 miles in under 10 hours. 107 teams registered. 15 teams raced. 0 teams finished. No-one won the million dollar prize. It’s a hard problem. One that all roboticists need to learn.
Back to our challenge. Students, working in teams of two or three, designed and programmed their own control algorithms in C++ and/or Python, and could access all of the sensors using the open standard ROS interfaces available on the ROSbots. Students chose very different approaches, some using only one sensor, others using information from several. Some programmed the robot to build a map, and some realised that building a map of terrain you’ve already covered is only useful after the first run. In practical real-world robotics problems you sometimes need to explore without a map and still reach a target.
Challenge day was the final day of term. Staff involved with the MSc programme were invited to pop in during the event, and the whole event was filmed by one of our media teams. Each robot’s performance was scored over three runs, with penalty points accrued for time taken, number of collisions, distance travelled and human interventions. Nine teams competed, all the robots except one managed to navigate from one end of the lab to the other avoiding the obstacles. The students rose admirably to the challenge and really enjoyed the event, hotly contesting any lax adjudication to ensure the rules were properly followed. The winners chose a very simple biologically inspired reactive planning algorithm, using just the most basic left and right distance sensors. The most effective approach is often the simplest.