Team Mexico RoboCup 2014 Humanoid KidSize Team Description Paper

Luis F Lupi´an, Jes´us Savage, Alejandro Aceves-L´opez

BioRobotics Lab, Universidad Nacional Autónoma de México; Robotics and Intelligent Machines Lab, Instituto Tecnológico y de Estudios Superiores de Monterrey; Mobile Robotics and Automated Systems Lab, Universidad La Salle, México

www.teammexico.org


Abstract We describe the RoboCup KidSize humanoid robots to be used by Team Mexico in the RoboCup 2014 competition to be held in João Pessoa, Brazil. For this edition of the competition Team Mexico is integrated by three institutions: ITESM, ULSA and UNAM. We present five different robot architectures: Bogobot V2, Cyberlords T2, Cyberlords T3, DARwIn-OP and NimbRo-OP. The focus of this paper is on a proposed standard for humanoid robot collaboration on the RoboCup field. This standard is outlined in three parts: (1) the high-level state machines that define the basic roles for the robots, (2) the higher-level state machine that allows each robot to choose its role depending on the status of the game, and (3) the data packets required for the robots to exchange information and play collaboratively.

Introduction

Team Mexico is a multi-institutional initiative represented this year by Instituto Tecnológico y de Estudios Superiores de Monterrey (ITESM), Universidad La Salle (ULSA), and Universidad Nacional Autónoma de México (UNAM). Each of these institutions have previously competed in the Humanoid KidSize League of the RoboCup World Championship under the names of Bogobots, Cyberlords La Salle and Pumas UNAM, respectively. Several other institutions have expressed their interest in this initiative and may join for the next edition of RoboCup, among them: INAOE, ITAM, and UPAEP, the second one with experience in the SPL and SSL leagues, the other two with experience in the @home league.

The three institutions representing Team Mexico for this edition of RoboCup have a history of participation in the Humanoid KidSize League that dates back to 2008, both at the local and international levels.

Team Bogobots participated for the first time in the Humanoid KidSize League in RoboCup 2008 in Suzhou, China, although they had previous international experience in the RoboCup four-legged league with Sony Aibo robots since 2002. In RoboCup 2009 in Graz, team Bogobots reached the quarterfinals. They were runner-ups during the RoboCup Mexican Open in 2009 losing the final against Darmstadt Dribblers, and then went on to become mexican champions in the 2011 edition of the RoboCup Mexican Open. They were also runner-ups at the 2012 and 2013 editions of the RoboCup Mexican Open. Their research has been focused on humanoid robot locomotion, computational vision and localization.

Team Pumas UNAM had their debut in the Humanoid League in RoboCup 2008. They imported their accumulated experience from the @home league, where they participated in RoboCup 2006 for the first time, and have continued to do so ever since. They were runner-ups at the 2008 and 2011 editions of the RoboCup Mexican Open. Their research in humanoid robots is tightly linked to that of their service robots in the @home league.

Team Cyberlords La Salle debuted at the First RoboCup Mexican Open in September 2008. Since 2009, the team has taken part in all editions of the RoboCup World Championship, and three RoboCup Latin American Opens. Team Cyberlords La Salle took the championship at the RoboCup Mexican Open in 2008 and 2012, and at the RoboCup Latin American Open in 2010 and 2011. Their research has been concentrated on software architectures for mobile robots with heterogeneous architectures, localization and computational vision.

Bogobots and Cyberlords La Salle playing at the RoboCup Mexican Open 2012
Bogobots and Cyberlords La Salle playing at the RoboCup Mexican Open 2012

Architectures

Team Mexico will compete at the RoboCup World Championship in 2014 with five different hardware architectures, all of which are depicted in Figure 2. Each of these architectures is briefly described in the following paragraphs. Further details can be found on the Specification Sheets submitted by Team Mexico for the competition.

Bogobot V2: Mechanically designed and built by the Robotics and Intelligent Machines research group at ITESM. It is based on Dynamixel RX-28 and RX-24F servomotors, for a total of 18 DOF. It features a FitPC2 embedded computer. Two of these robots are available for the competition. The software for these robots has also been developed locally at ITESM.

Cyberlords T2 and T3: Based on the Kondo KHR-3HV humanoid robot, but heavily modified to provide them with autonomy. Both architectures use roughly the same kind of sensors, but feature different processing units. In the case of T2, the robot uses a Roboard RB-110 and a Kondo RCB4, whereas the T3 architecture uses two Gumstix Overo Fire COM with Summit board. One robot of each of these two architectures is available for the competition. Both robots run applications based on libCyberlords developed at the Mobile Robotics and Automated Systems lab of Universidad La Salle.

DARwIn-OP: This is the well known commercial robot offered by ROBO-TIS. A yet to be determined number of DARwIn-OP robots will be available for the team during the competition. All three institutions representing Team Mexico have developed code for the DARwIn-OP and have used it during official competitions, a sample of which is shown on the team's qualification video.

NimbRo-OP: This robot was designed and built at Universität Bonn by team NimbRo. It was recently acquired under a joint research grant in which five Mexican institutions are involved. In order to participate in the Humanoid KidSize League, the head of the robot is being re-designed so as to meet the height restriction of 90cm maximum. The robot is hosted at the BioRobotics Lab of UNAM, where its software is currently under development.

Five hardware architectures for Team Mexico in 2014 (not to scale)
Five hardware architectures for Team Mexico in 2014 (not to scale)

Humanoid Robot Collaboration

As we approach the vision of the RoboCup initiative for 2050, more complex and expensive robots will be needed. We will soon reach a point in time when no single research lab will be able to build, maintain and transport around the world eleven humanoid robots to play either against a similar team of humanoid robots or against a team of humans. The RoboCup Humanoid League will have to evolve into an event in which researchers will meet to integrate a mix and match of different kinds of humanoid robots from different groups around the world, and these humanoid robots will have to collaborate in a soccer game in a seamless way.

During RoboCup 2011 in Istanbul, Turkey, several teams in the Humanoid KidSize League took part in a demo game that intended to demonstrate the feasibility of 5 vs 5 matches. Since no single team could provide five robots for either side of the match, it was necessary to improvise and use robots from different teams. It became painfully obvious from this demo game that the league was missing a standardized communication protocol and a collaboration strategy that would allow robots from different teams to interact with each other.

Team Mexico is in essence a mix and match of humanoid robots that are not only brought in from different research labs, but which have notably different hardware architectures. It has then become a necessity for the team to establish a basis for humanoid robot collaboration on the RoboCup football field.

We are hereby proposing a standard that specifies three basic roles for the playing field, a strategy that will allow each robot to choose their own role depending on the status of the game, and a small data packet that robots must be able to produce and understand in order to exchange meaningful information with their peers. This proposed standard is outlined in the following subsections.

Playing Roles

Whichever standard that is proposed for humanoid robot collaboration in the RoboCup field must be specified only at the higher levels of abstraction, without reference to particular details of any specific hardware and/or software architecture. This will allow for robots from different research groups to be able to play football interactively while at the same time allowing sufficient freedom to each group to pursue their own research objectives.

Moreover, in order to be able to play collaboratively each robot must be able to predict, at least to some degree, the behavior of its teammates. For this to happen, this standard proposes three basic roles for humanoid robot football players: goalie, defender and striker. These three roles are specified as state machines that have several states in common. Table 1 shows the proposed set of behaviors that must be implemented for each of the three roles, and the information that the robot would require to obtain from its teammates in order to complete each behavior successfully.

Depending on its role, each robot will have to evaluate several high-level conditions that will trigger specific transitions on the corresponding role statemachine. Table 2 lists the set of high-level conditions in this proposed standard. Some conditions require external information in order to be evaluated, either from teammate robots or from the game controller.

Based on the definition of each behavior and condition, the state machine for each of the three roles can be reduced to the transition tables shown on Table 3. It is important to notice that each behavior on these state machines may in turn be implemented as lower-level state machines. For example, the "block the ball" behavior for the goalie could in turn be a choice of a dive, a leg extension to one side or simply remain put, based on the direction and strength of the kick. How each behavior is implemented will largely depend on the hardware and software capabilities of the particular robot.

Set of high-level behavior states for autonomous football players

Acronym Description Goalie Defender Striker Required external information
GU get up yes yes yes
POG position autonomously in front of own goal yes no no
PSH position autonomously in south half of field no yes yes (own-loc) from teammates
GIPP get in position for pass no no yes (own-loc) from teammates
BB block the ball yes no no
CB clear the ball away from own goal yes no no
FB find ball yes yes yes (ball-loc belief) from teammates
SBNC find ball without changing position yes no no (ball-loc belief) from teammates
WTB walk towards ball yes yes yes (prox-to-ball) from teammates
KBTG kick the ball towards goal no no yes (prox-to-ball) from teammates
KBTN kick the ball towards north half of field no yes no (prox-to-ball) from teammates
OA obstruct adversary no yes no (prox-to-ball) from teammates
PB pass the ball no yes no (own-loc and clear-for-pass status) from teammate strikers
GOTW get out of the way of the ball no no yes (preparing-kick status) from teammate strikers

Set of high-level conditions for autonomous football players

Acronym Description Goalie Defender Striker Required external information
RF robot fallen yes yes yes
KTGD kick towards goal detected yes no no
BC ball is close yes yes yes
CPOG positioned in own goal yes no no
SB see ball yes yes yes
CPSH positioned in south half of field no yes yes
CPFP positioned for pass no no yes
BOF ball on feet yes yes yes
BOSH ball on south half yes yes yes
BONH ball on north half yes yes yes
AC adversary is close yes yes yes
ICTB I am closest to ball yes yes yes (proximity-to-ball) from teammates
TICP teammate is clear for pass no yes no (clear-for-pass status) from teammate strikers
TATK teammate about to kick no no yes (preparing-kick status) from teammate strikers
GCP game controller in PLAY yes yes yes (game status) from game controller

Role state-machines

Goalie Defender Striker
Condition Behavior Condition Behavior Condition Behavior
RF GU RF GU RF GU
KTGD BB ¬SB FB ¬CPSH&¬GCP PSH
BC WTB ICTB&BOSH WTB TATK GOTW
BOF CB BOF KBTS ¬SB FB
¬SB&¬CPOG FB AC&¬ICTB OA ICTB&BONH WTB
¬CPOG POG BOF&TIC PB BOF KBTS
default FBNC default PSH default GIPP

Role Selection

Each individual robot will be given a specific role by default. However, depending on the circumstances of the game it might make sense for a robot to change its role. For example, if only the goalie remains on the game (for whatever reason) and there are no opponents attacking it would make sense for the goalie to attempt to score. Rather than specifying complex state machines that will allow the goalie to incorporate all behaviors from the striker, we believe it is better to specify simple and concrete state-machines for each role but allow each robot to switch role when the circumstances are appropriate.

This is controlled by a role-selection state-machine in which each of the three roles is a state. The decision to switch is made locally by each robot, but requires information both from teammates and the game controller.

Another kind of "intelligent" behavior that could be incorporated from this strategy is for example: everyone turn into a striker if we are losing, the ball is on the opposite side and the time remaining is less than a minute.

A full specification for this role-selection state-machine is under development.

High-level Communication

We believe that rather than exchanging numeric data between robots and have each robot interpret the information received from each of its peers, it is preferable to have each robot interpret its own numeric data and communicate it to the rest as high-level semantic information. For this purpose, this proposed standard partitions the RoboCup field into 20 regions and each one is referred to with a name in stead of a coordinate, as depicted in Figure 3. For this standard, the "north" is defined as the direction from the own-goal to the opposing team's goal. In order to communicate its own location, each robot is responsible for generating its best estimate regarding which of the 20 regions it is currently located at and in what orientation with respect to the field. For example, a striker may be located at W4 and facing in the SE direction. This would be a good choice to wait for a pass.

In the case of proximity of the robot to the ball, distance is also expressed semantically. It makes sense to do it this way rather than in precise centimeters because depending on the speed of the robot the distance to the ball may be close or far. If this information is going to be used to decide who gets to walk towards the ball then it makes sense to base the decision on who will get there sooner. Also, by sharing the perceived location of the ball, the team will enhance its ability to find the ball after losing sight of it.

Semantic Partition of the RoboCup Humanoid Field
Semantic Partition of the RoboCup Humanoid Field

Data packet for autonomous football players

Description Field Confidence Field Confidence
own-location region-of-field 1-100 orientation 1-100
ball-location-belief region-of-field 1-100
proximity-to-ball very-close/close/far 1-100
own-battery-level 1-100
clear-for-pass status true/false
preparing-kick status true/false
walking-towards-ball status true/false

Conclusion and Future Work

We have outlined a proposed standard for humanoid robots playing collaboratively in the RoboCup field. Team Mexico will have its first chance to fully test this standard during the 6th RoboCup Mexican Open, three months before RoboCup 2014. We do encourage other teams in the Humanoid League to try our proposed standard and to contribute with feedback. A "C" header definition of the data packet is under review and should be released soon.

Future work on this standard should incorporate communication between robots by means other than the wireless network, such as audible and visual cues.

Acknowledgements. This project is supported in part by CONACyT, the Federación Mexicana de Robótica and the Red Nacional de Robótica y Mecatrónica.

References

  1. Aceves-López, A., Cruz-Hernández, E., Villarreal-Pulido, G., Sumohano-Verdeja, S.: Bogobots humanoid team 2008 (kid size). In: RoboCup World Championship, Suzhou, China, RoboCup Federation (July 2008)
  2. Cruz-Hernández, E., Villarreal-Pulido, G., Sumohano-Verdeja, S., Aceves-López, A.: Bogobots-TecMTY humanoid kid-size team 2009. In: RoboCup World Championship, Graz, Austria, RoboCup Federation (July 2009)
  3. Villarreal-Pulido, G., Cruz-Hernández, E., Aceves-López, A.: Bogobots-TecMTY humanoid kid-size team 2010. In: RoboCup World Championship, Singapore, RoboCup Federation (June 2010)
  4. Villarreal-Pulido, G., Cruz-Hernández, E., Aceves-López, A.: Bogobots-TecMTY humanoid Kid-Size Team 2012. In: RoboCup World Championship, Singapore, RoboCup Federation (June 2012)
  5. González-Núñez, Aceves-López, A., Ramírez-Sosa: Control para el seguimiento de trayectoria de movimiento de un bípedo con fase: pie de soporte, pie en movimiento. In: Primer Encuentro Internacional de Investigación Científica Multidisciplinaria ICM2007, Chihuahua, ITESM (2007)
  6. González-Núñez, Aceves-López, A., Ramírez-Sosa: Análisis cinemático de un bípedo con fases: Pie de soporte-pie en movimiento. In: IEEE 5º Congreso Internacional en Innovación y Desarrollo Tecnológico, Cuernavaca, Morelos, México, CIINDET (October 2007)
  7. Meléndez, A., Aceves-López, A.: Human gait cycle analysis for the improvement of MAYRA's biped foot. In: 37 Congreso de Investigación y Desarrollo del Tecnológico de Monterrey, México, ITESM (January 2007) 60–67
  8. Barrera-Tovar, L., Aceves-López, A.: Clasificador de color y segmentación para el sistema de percepción de los robots bogobots. In: XII Congreso Mexicano de Robótica, Mazatlán, Sinaloa, México, Asociación Mexicana de Robótica (November 2010) 124–129
  9. Barrera-Tovar, L., Aceves-López, A.: Interpretación de la escena y auto localización vía triangulación de los robots bogobots. In: XII Congreso Mexicano de Robótica, Mazatlán, Sinaloa, México, Asociación Mexicana de Robótica (November 2010) 136–142
  10. Llarena, A., Escalante, B., Torres, L., Abad, V., Vázquez, L.: Virbot@field : taking service robots to play soccer. In: RoboCup World Championship, Graz, Austria, RoboCup Federation (July 2009)
  11. Llarena, A., Escalante, B., Arámbula, F., Vázquez, L.: Virbot@field : taking service robots to play soccer. In: RoboCup World Championship, Istanbul, Turkey, RoboCup Federation (July 2011)
  12. Savage, J., Llarena, A., Carrera, G., Cuellar, S., Esparza, D., Minami, Y., Peñuelas, U.: ViRbot: A System for the Operation of Mobile Robots. In: RoboCup Symposium, Atlanta, USA, RoboCup Federation (June 2007)
  13. Lupián, L.F., Romay, A.I., Monroy, P., Espínola, A.F., Cisneros, R., Benítez, F.: Cyberlords RoboCup 2009 Humanoid KidSize team description paper. In: RoboCup World Championship, Graz, Austria, RoboCup Federation (July 2009)
  14. Lupián, L.F., Romay, A., Espínola, A., Cisneros, R., Ibarra, J.M., Gutiérrez, D., Hunter, M., del Valle, C., de la Loza, K.: Cyberlords RoboCup 2010 Humanoid KidSize team description paper. In: RoboCup World Championship, Singapore, RoboCup Federation (June 2010)
  15. Lupián, L.F., Romay, A., Espínola, A., Ramírez, E.: Cyberlords RoboCup 2011 Humanoid KidSize team description paper. In: RoboCup World Championship, Istanbul, Turkey, RoboCup Federation (July 2011)
  16. Lupián, L.F., Romay, A., Espínola, A., Márquez, D., Reyes, D.M.: Cyberlords+Falconbots RoboCup 2012 Humanoid KidSize team description paper. In: RoboCup World Championship, Mexico City, Mexico, RoboCup Federation (June 2012)
  17. Lupián, L.F., Márquez, D., Nelson, O., Lecumberri, F., Sanz, I.: Cyberlords RoboCup 2013 Humanoid KidSize team description paper. In: RoboCup World Championship, Eindhoven, The Netherlands, RoboCup Federation (June 2013)
  18. Lupián, L.F., Romay, A., Espínola, A.: Vision Based Localization of Humanoid Robots by Inverse Pose-Estimation Using a Small Set of Fixed Landmark Features. In: Robotic Symposium, IEEE Latin American, Bogotá, Colombia (October 2011)
  19. Romay Tovar, A.I.: Visión computacional para problemas de estimación de pose. Master's thesis, Universidad La Salle, D.F., México (2011)
  20. Espínola Auada, A.F.: Sistema de visión de un robot humanoide en un ambiente semi estructurado. Master's thesis, Universidad Nacional Autónoma de México, D.F., México (2011)
  21. Schwarz, M., Pastrana, J., Allgeuer, P., Schreiber, M., Schueller, S., Missura, M., Behnke, S.: Humanoid teensize open platform nimbro-op. In: 17th RoboCup International Symposium, Eindhoven, Netherlands, RoboCup Federation (June 2013)
  22. Schwarz, M., Schreiber, M., Schueller, S., Missura, M., Behnke, S.: Nimbro-op humanoid teensize open platform. In: 7th Workshop on Humanoid Soccer Robots, Osaka, IEEE-RAS International Conference on Humanoid Robots (November 2013)