Robot Soccer

RoboCup is an annual robot soccer competition involving teams from around the world. The robots compete in different categories or leagues: Medium size, Small size, Simulation, Legged and Humanoid. More information on the RoboCup initiative can be found on the RoboCup website.

I was part of the Upennalizers, the University of Pennsylvania Robot Soccer Team. We participated in the legged league in RoboCup using a team of Sony four legged robots. I traveled to Melbourne, Australia in 2000 (a few days before the Sydney Olympics!) to take part in RoboCup 2000. Here's an article I wrote for the Pennsylvania Triangle about the trip and the contest. It also explains most of the rules of the competition. (Note: The rules have changed a lot since RoboCup 2000.)

RoboCup 2001 was held in Seattle, USA. We did extremely well in the competition and won the 3rd prize in the Team competition and the 2nd prize in the Technical Challenge competition. More details about our participation in RoboCup, movies of our robots in action and pictures of us at the competition can be found on the Upennalizers webpage. Have a look at my article about Robocup 2001 in the Triangle. RoboCup 2002 was held in Japan.

My Contribution

As part of the team for RoboCup, I designed and implemented algorithms for several different parts of the Robot Soccer Team.

  1. Walking gaits - I designed omnidirectional walking gaits that allowed us to move much faster on the field in comparison to the earlier implementations of walking on the robots. Details of the gait design for walking are given in
  2. Software Architecture and Strategies - A heirarchical software structure that I helped design allowed the details of the low-level tasks like walking, object tracking, localization to be hidden from a high-level planner. Lower level tasks were abstracted into a generic sensor or actuator class. Thus, information on the ball was abstracted into a ball class that provided access to the distance of the ball and its position relative to the robot. This made it easier for team members to develop higher level strategies to play soccer without needing to specify how each low-level task was to be carried out. The planning algorithm designated a particular role to each robot based on a combination of factors including the position of the robot relative to the ball and the goal and the position of its teammates. A particularly difficult task was the design of a goalie. The strategy for the goalie needed to take into account some very strict rules that forbid holding onto the ball outside a designated defensive area. The goalie that I helped design was pretty successful in the actual competition.
  3. Vision and Localization - I also designed and modified vision algorithms for object detection, tracking and localization. The ball is the most important object on the field and needs to be tracked almost continuously by the robots. A ball tracking algorithm helped track the ball across the field and we used a combination of ball size and its negative elevation from the horizon to calculate ball distance and heading. I also helped implement a Kalman filter based localization algorithm that used the cylindrical markers on the field to figure out where the robot was on the field.
  4. Sound based communication - Until RoboCup 2002, information could be passed between the robots using only sound. Our team was one of only three teams to use sound for planning. Sound was used to warn a teammate that one robot was going after the ball and the other teammates should try and stay out of its way.
  5. Wireless communication - Starting with RoboCup 2002, information was passed among the robots using a wireless connection. This allowed the use of a more sophisticated algorithm for switching between different roles. One robot played the role of an attacker, always going after the ball. Another played the role of a defender, a third was designated as a permanent goalie. A fourth robot played the role of an attacking midfielder, staying in the vicinity of the attacker and the ball. The robots switched between these roles depending on where the ball was relative to them. I designed a software structure for passing information that allowed, for example, the goalie to direct the behavior of all the other robots. It took into account robots dropping out of the wireless network due to hardware difficulties or when the batteries ran out.
  6. Cooperative Sensing - In RoboCup 2002, we also made a first attempt at cooperative sensing by combining the information from different robots to generate a combined view of the world. This particularly helped in keeping track of the ball even when some team members had lost sight of it. Information from our fused estimate for the position of the ball was used to direct the behavior of the robots so that they could regain visual contact with the ball or place themselves in an ideal position to intercept the ball.

More information on our team can be found in our team reports:

 

Why Robot Soccer?

Robots! From the fearsome killers in the Terminator series to the cute R2D2 in Star Wars, Robots have captured the public imagination in all conceivable forms. The recent burst of interest in Robotics, thanks to the Mission to Mars and the introduction of Honda's and Sony's biped robots, has brought back focus on an important question.

How big a part will robots play in our life in the future?

The question is misleading since Robots already play a vital part in the industry. Robots perform assembly tasks, carry food around in hospitals  and help in bomb disposal. Yet, these devices are a far cry from the popular conception of a Robot. The robots in Hollywood's blockbusters have, till recently, outshone their real life counterparts in every department. They have danced, played games, killed people and attempted to learn the meaning of true love. Will robots have such capabilities in the near future? What are the barriers, if any, to such achievements?

These questions and more are the subject of research at dozens of Robotics labs all over the world. Robotics brings together people working in a variety of disciplines, from Mechanical Engineers to Philosophers. In an effort to bring together these different threads of research and direct them towards a common goal, the RoboCup Soccer initiative was established. Soccer is easy enough for robots to play and yet difficult enough to present a challenging research problem. And come to think of it, wouldn't you rather have robots playing the world's most popular game than attempting to terminate us?