RoboFEI Humanoid Team 2016

Danilo H. Perico, Thiago P. D. Homem, Isaac J. da Silva, Claudio Vilão, Vinicius Nicassio, Aislan C. Almeida, Flavio Tonidandel, Reinaldo A. C. Bianchi

Department of Electrical Engineering and Department of Computer Science Centro Universitário FEI, São Bernardo do Campo, Brazil


Abstract This paper presents the description of the RoboFEI-Humanoid Team (RoboFEI-HT) as it stands for the RoboCup 2016 in Leipzig, Germany. This paper contains the descriptions of mechanical, electrical and software modules, designed and improved to enable the robots to play soccer in the environment of the RoboCup Humanoid League.

Keywords: RoboCup Humanoid League, Humanoid Robot, Autonomous Robot.

1 Introduction

This paper describes the hardware and software aspects of the RoboFEI-HT, designed to compete in the RoboCup 2016 Humanoid League.

The development of this team started in 2012, with students designing and building a humanoid robot from scratch. In 2014, we competed in our first RoboCup World Competition, held in João Pessoa, PB, Brazil, with 4 humanoid robots: two Newton Robot [14], that was developed by us, being all the pieces of one of them made in a 3D printer, and two humanoids robots based on DARwIn-OP [16], that we called B1 Robots (number 1 and 2). At RoboCup 2014, we finished in the top 16 teams and, three months later, the team competed in the Latin American Robotics Competition (LARC 2014) and became the champion in the LARC RoboCup Humanoid Kid Size league.

Last year, in Heifei, China, we competed with three B1 Robots (numbers 1, 2 and 3). We adjusted the B1 Robots project to attend to the new requirements of field and ball, so they could walk on artificial grass and distinguish the white ball from afar. Three months later, in LARC 2015, we finished in second place using the same team, but as the field and ball were in agreement with the former rules of RoboCup, we had to re-adapt our robots. Figure 1 shows a game in RoboCup and a game in LARC, both in 2015.

Since then, we've been working hard to enhance our robots for this RoboCup. We have been making several improvements in the software aspects of the robots and we have a team that is able to compete and win the RoboCup World Cup competition.

(a) RoboCup 2015
(a) RoboCup 2015
(b) LARC 2015
(b) LARC 2015

Fig. 1: Games played in RoboCup 2015 and in LARC 2015. Our robots are playing in magenta in both images.

2 Hardware Design

This year, we are going to compete with four robots of two different types, both developed by us: we have one Newton Robot [14] and three B1 Robots, based on DARwIn-OP [16]. The robots are described in this section.

Although we have two different types robots, the electronic, computer and sensors of the four robots are the same, allowing us to use basically the same software to control all robots.

2.1 Mechanical Design

We developed Newton Robot with 22 degrees of freedom, as follows: six in each leg, three in each arm, two in the torso and two in the neck. Newton robot's specification is in Table 1.

Table 1: Newton Robot Characteristics

Robot Name Newton
Height 520 mm
Weight 3.0 Kg
Walking Speed 70 cm/min
Degrees of Freedom 22 in total: 6 per leg, 3 per arm , 2 on the head, 2 on the hip
Type of motors Dynamixel RX-28
Sensors UM6 Ultra-Miniature Orientation Sensor
Camera Logitech HD Pro Webcam C920 (Full HD)
Computing Unit Intel NUC Core i5-4250U, 8GB SDRAM, 120GB SDD

Based on the mechanical of the Darwin-OP Robot[16], we developed the B1 Robots. B1 Robots' specifications can be seen in Table 2. In order to improve the performance of the robots, several studies focused on the material stress were performed. Some research has been done to replace some metal parts by ABS parts (designed to be made in a 3D printer) in order to maintain the strength, but with a lower weight. Our four robots can be seen in Figure 2. Newton robot is the second one from the right, whereas all the others are B1 robots.

Robot Color: Up to date, our robots are composed of several white parts. However, if the white color become an issue, we could easily change the robot color, since all the white parts were made of plastic, in a 3D printer.

2.2 Electronic Design

Our robots does not have microcontrollers. We decided to perform all the control and processing using only a personal computer, the Intel NUC, so, the motors are controlled by the computer's USB port with an USB/RS485 adapter.

Table 2: B1 Robots Characteristics

Robot Name B1-1, B1-2 and B1-3
Height 490 mm
Weight 3.0 Kg
Walking Speed 10 cm/s
Degrees of Freedom 20 in total: 6 per leg, 3 per arm , 2 on the head
Type of motors Dynamixel RX-28
Sensors UM7 Ultra-Miniature Orientation Sensor
Camera Logitech HD Pro Webcam C920 (Full HD)
Computing Unit Intel NUC Core i5-4250U, 8GB SDRAM, 120GB SDD
Fig. 2: Our robots.
Fig. 2: Our robots.

3 Software Design

We have been using the Cross Architecture depicted in Figure 3, that was developed by our team, where the solid line boxes are completely independent processes for the computer [14].

To communicate between the processes, Cross Architecture uses a blackboard concept, so independent processes can access a global database. In the proposed architecture, the global database was created using shared memory, which contributed to increase the speed of data exchange among processes.

Fig. 3: The Cross Architecture implemented.
Fig. 3: The Cross Architecture implemented.

3.1 Vision System

Ball tracking: As the color is no longer a discrepant feature for the ball recognition and for the goal identification in the current Robocup rules, a classifier using HAAR wavelets has been trained with several ball and goal images. The classifier used was the cascade of boosted classifiers working with haar-like features proposed by [22] and improved by [10].

Opponents and Teammates: The group implemented opponent recognition using the Histogram of Oriented Gradients (HOG) which is a solid technique widely used to recognize people in several environments and it uses as a classifier the Support Vector Machines [5]. This classifier is trained with images that has at least one robot in each image and random images. Once robots are found, we need to determine to which team the identified robot belongs, that is done using segmentation of the team color inside the detection window. By using the sizes of the robots it is possible to infer their distance from the seeing robot.

3.2 Localization

We are implementing a qualitative approach for localizing the robots. In order to achieve this kind of localization, the Elevated Oriented Point Algebra (EOPRAm) [11], that is a technique of Qualitative Spatial Reasoning [4,6] have been used.

EOPRA$^m$ fits well for addressing the localization problem, because it is relative and treats the relations of orientation and distance qualitatively. Because of the fact that it is relative, EOPRA$^m$ is more abstract ans can be regardless of the domain, since a robot will localize itself in relation to the others.

3.3 Decision algorithms

We are using Star Calculus [15], with a concept of distance, to represent the qualitative position of the ball and the robots in the field and Case-based Reasoning (CBR) to select the most similar case and coordinate the actions that each robot must perform. So, we have a base of past cases and the agent coordinator checks all the time which case they can use at a certain moment, it shares with all the robots and they act on it. This work is based in a previous work on the 4-legged Aibo robots, by Ross et al. [17], and we extended the research on Qualitative Spatial Reasoning.

3.4 Movement Control

Through the performed experiments to improve and speed up the walking on artificial grass, we found that for each kind of movement we needed to adjust the parameters in order to seek a fast and dynamically balanced gait.

In config.ini archive we added sections related to the kind of movement, as shown in Figure 4. Inside the control program we created a class that holds the attributes related to the configuration parameters of the movements, where this class has a constructor which reads the parameters of the chosen section and it has a method that updates the parameters to the gait pattern generator.

4 Work in Progress

At the moment we are actively working on our robots to improve the algorithms to compete and win the RoboCup 2016.

In the hardware aspect, we redid all robot control, so the robots are walking faster and better than the last RoboCup. In the software aspect, we also implemented and now we are testing the path planning algorithm with Artificial Potential Field [9] and the stereo vision to Vision System.

Still in the software domain, we are also working for improving the localization by developing a qualitative-probabilistic approach, combining the Qualitative Spatial Reasoning with a Bayesian filter [7].

5 Research interests

Our group consists of 2 Faculty Professors (one from the electrical and one from computer science departments), 4 Ph.D., 1 MSc. and 2 undergraduate student. Our current research interests are:

Gait generation and optimization: There are several gait generation techniques that have been developed for humanoid robots. Darwin-OP, for example, uses a method to generate the gait pattern based on coupled oscillators that perform sinusoidal trajectories, however this gait pattern generation has several parameters for its configuration. We are interested in finding an automatic way to adjust the values of these parameters. We are developing a reinforcement learning algorithm with temporal generalizations that aims to optimize the parameter values of the gait pattern generation for a humanoid robot.

Stabilization Methods: Humanoid robots need to adapt themselves to the environment, as humans do. One approach to achieve this goal is to use Machine Learning techniques that allow robots to improve their behaviour all along. One way to achieve that is the usage of Reinforcement Learning to learn the action policy that will make a robot walk in an upright position, in a lightly sloped terrain, for example.

Robot Localization: We are studying and developing a collaborative relative localisation for vision-based multi-robot system using qualitative spatial information. The motivation of using qualitative information is to obtain a level of abstraction closer to the human categorisation of space and, also, to have a more effective way of interaction between robots and humans.

Spatial reasoning in multi-robot systems: using a new formalism, which we call Collaborative Spatial Reasoning [18], that can be applied on the scene interpretation from multiple cameras and on the task of scene understanding from the viewpoints of multiple robots;

Case-Based Reasoning for soccer games: We are investigating a Qualitative Casebased Reasoning (Q-CBR) approach that makes use of Qualitative Spatial Reasoning (QSR) theory to model, retrieve and reuse cases dealing with spatial relations, for the RoboCup humanoid robots competition.

Fig. 4: The implementation of the Movement Controller.
Fig. 4: The implementation of the Movement Controller.

5.1 Publications

Our researches have been proved to be very rewarding, as we had several papers published at Brazilian conferences, 2 papers published and 3 papers accepted in the International Latin American Robotics Symposium [14,21,13,19,20], 2 papers published in the International RoboCup Symposium [1,3], 1 book's chapter published by Springer [12] and 2 papers published in major journals [2,8].

6 Conclusion

In this paper we have presented the specifications of hardware and software aspects of RoboFEI-HT, designed to compete at the RoboCup in Leipzig, Germany. Our team will be composed of one Newton Robot, a robot designed and built at our institution, and three B1 Robots based on DARwIn-OP.

Our team commits to participate in RoboCup 2016, and also commits to making a person with sufficient knowledge of the rules available as referee during the competition.

References

  1. Bianchi, R.A.C., Costa, A.H.R.: Implementing computer vision algorithms in hardware: an FPGA/VHDL–based vision system for mobile robot. In: Birk, A., Coradeschi, S., Tadokoro, S. (eds.) RoboCup–01: Robot Soccer World Cup V. Lecture Notes in Artif. Intell., vol. 2377, pp. 281–286. Springer Verlag, Berlin, Heidelberg (2002)
  2. Bianchi, R., Martins, M., Ribeiro, C., Costa, A.: Heuristically-accelerated multiagent reinforcement learning. Cybernetics, IEEE Transactions on 44(2), 252–265 (Feb 2014)
  3. Celiberto, L.A., Ribeiro, C.H.C., Costa, A.H.R., Bianchi, R.A.C.: Heuristic reinforcement learning applied to robocup simulation agents. In: Visser, U., Ribeiro, F., Ohashi, T., Dellaert, F. (eds.) RoboCup. Lecture Notes in Computer Science, vol. 5001. Springer (2007)
  4. Cohn, A.G., Renz, J.: Qualitative spatial reasoning. In: van Harmelen, F., Lifschitz, V., Porter, B. (eds.) Handbook of Knowledge Representation. Elsevier (2007)
  5. Dalal, N., Triggs, B.: Histograms of oriented gradients for human detection. In: Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05) - Volume 1 - Volume 01. pp. 886–893. CVPR '05, IEEE Computer Society, Washington, DC, USA (2005)
  6. Dylla, F.: Qualitative Spatial Reasoning for Navigating Agents: Behavior Formalization with Qualitative Representations, Ambient Intelligence and Smart Environments, vol. 3 (2009)
  7. Fenelon Pereira, V., Gagliardi Cozman, F., Santos, P., Fernandes Martins, M.: A qualitativeprobabilistic approach to autonomous mobile robot self localisation and self vision calibration. In: Brazilian Conf. on Intelligent Systems (BRACIS). pp. 157–162 (Oct 2013)
  8. Gurzoni, Jose Angelo, J., Martins, M.F., Tonidandel, F., Bianchi, R.A.C.: On the construction of a robocup small size league team. Journal of the Brazilian Computer Society 17(1) (2011)
  9. Khatib, O.: Real-time obstacle avoidance for manipulators and mobile robots. Int. J. Rob. Res. 5(1), 90–98 (Apr 1986)
  10. Lienhart, R., Maydt, J.: An extended set of haar-like features for rapid object detection. In: IEEE ICIP 2002. pp. 900–903 (2002)
  11. Moratz, R., Wallgrün, J.O.: Spatial reasoning with augmented points: Extending cardinal directions with local distances. J. Spatial Information Science 5(1), 1–30 (2012)
  12. Perico, D.H., Silva, I.J., Vilão Junior, C.O., Homem, T.P.D., Destro, R.C., Tonidandel, F., Bianchi, R.A.C.: Robotics: Joint Conference on Robotics, LARS 2014, SBR 2014, Robocontrol 2014, São Carlos, Brazil, October 18-23, 2014. Revised Selected Papers, chap. Newton: A High Level Control Humanoid Robot for the RoboCup Soccer KidSize League, pp. 53–73. Springer Berlin Heidelberg, Berlin, Heidelberg (2015)
  13. Perico, D., Santos, P., Bianchi, R.: Vision-based monte carlo localization without measurement: A qualitative approach during update phase. In: SBR-LARS Joint Conf. on Robotics Symp., 2015
  14. Perico, D., Silva, I., Vilao, C., Homem, T., Destro, R., Tonidandel, F., Bianchi, R.: Hardware and software aspects of the design and assembly of a new humanoid robot for robocup soccer. In: Robotics: SBR-LARS Joint Conf. on Robotics Symp. and Robocontrol, 2014 pp. 73–78
  15. Renz, J., Mitra, D.: Qualitative direction calculi with arbitrary granularity. In: Proc. 8th Pacific Rim Intl. Conf. on Trends in Artificial Intelligence, Auckland, New Zealand, August 9-13, 2004, . pp. 65–74 (2004)
  16. Romela: Darwin op: Open platform humanoid robot for research and education, http: //www.romela.org/main/DARwIn\\_OP
  17. Ros, R., Arcos, J.L., Lopez de Mantaras, R., Veloso, M.: A case-based approach for coordinated action selection in robot soccer. Artif. Intell. 173(9-10), 1014–1039 (Jun 2009)
  18. Santos, P., Santos, D.E.: Towards an image understanding system for multiple viewpoints. In: Brazilian Symp. on Intelligent Automation (2013)
  19. Silva, I., Perico, D., Homem, T., Vilao, C., Tonidandel, F., Bianchi, R.: Using reinforcement learning to improve the stability of a humanoid robot: Walking on sloped terrain. In: SBR-LARS Joint Conf. on Robotics Symp., 2015
  20. Vilao, C., Celiberto Jr., L., Bianchi, R.: Evaluating the performance of two visual descriptors techniques for a humanoid robot. In: SBR-LARS Joint Conf. on Robotics Symp., 2015
  21. Vilao, C., Perico, D., Silva, I., Homem, T., Tonidandel, F., Bianchi, R.: A single camera vision system for a humanoid robot. In: Joint Conf. on Robotics: SBR-LARS Robotics Symp. and Robocontrol, 2014. pp. 181–186
  22. Viola, P., Jones, M.: Rapid object detection using a boosted cascade of simple features. pp. 511–518 (2001)