RoboFEI Humanoid Team 2015
Danilo H. Perico, Thiago P. D. Homem, Isaac J. da Silva, Claudio Vilhão, Vinicius Nicassio, Flavio Tonidandel, Reinaldo A. C. Bianchi
Department of Electrical Engineering and Department of Computer Science Centro Universitário da FEI, São Bernardo do Campo, Brazil
Abstract This paper presents the description of the RoboFEI-HT Humanoid League team as it stands for the RoboCup 2015 in Hefei, China. The paper contains descriptions of the mechanical, electrical and software modules, designed and improved to enable the robots to achieve playing soccer capabilities in the environment of the RoboCup Humanoid League.
Team Description Paper for the Humanoid KidSize League
This paper describes the hardware and software aspects of the RoboFEI-HT Humanoid team, designed to compete in the RoboCup 2015 Humanoid League.
1 Introduction
This paper describes the hardware and software aspects of the RoboFEI-HT Humanoid team, designed to compete in the RoboCup 2015 Humanoid League.
The group has a long tradition in Robotic Soccer and the first time we took part in a competition was in 1998, when Prof. Reinaldo Bianchi was a member of the group that developed the FutePOLI Team, which competed in the First Brazilian Micro Robot Soccer Cup, held in São Paulo, Brazil. Since then, Bianchi started the development of soccer playing robots at the Centro Universitário da FEI, competing in the Very Small Size category and after, in the Very Small Size league.
After developing robotic soccer players for the last 16 years, we developed a team to compete in the RoboCup Humanoid League. The development of this team started in 2012, with students designing and building a humanoid robot from scratch. Last year, the RoboFEI-HT team competed our first RoboCup World Competition, held in João Pessoa, PB, Brazil, with 4 humanoid robots: two Newton (developed in the institution, being the pieces of one of them, made in a 3D printer) and two humanoids robots based on Darwin-OP.
At RoboCup 2014, the team stayed among the 16 top teams and in the same year, the team competed the Latin American Robotics Competition (LARC 2014) and became champion in the LARC RoboCup Humanoid Kid Size league. The Fig. 1 show the game in RoboCUP 2014 (left) and the game in LARC 2014 (right), the unofficial match played versus UNBeatables - NAO. The official matches were versus EDROM end ITAndroids.
2 Hardware Design
Our team consists of four robots, of two different types: one type is the Newton Robot and the other type is the B1 Robot based in Darwin-OP Robot[18], both that is described in depth in this section.
We decided to build two different type of Robots in our team to be able to access the performance of both Robots, and to identify strong points and weak points in each robot. Although we have 2 different types robots, the electronic, computer and sensors of the four robots are the same, allowing us to use the same software to control all the robots.
2.1 Mechanical Design
Based on this analysis, we developed a 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. The Newton Robot, its schematic representation and exploded view are shown in Fig. 2. The robot's specification is in Table 1.
Some equilibrium criteria such as Zero Moment Point and Center of Pressure [21] were used to project the geometry of the robot parts. To guarantee the mobility necessary for each joint, avoiding collisions and interferences from simultaneous movements, the motors were designed considering the relative movement between them, keeping the anatomy and the functioning of the robot.
Based on Darwin-OP Robot[18], we developed a B1 robot, however, only the mechanical parts are the same Darwin-OP but we modified the chest to adapt the Intel NUC. The B1 robot's specification is in Table 2.
To improve the performance of the robot have been several studies focused on stress, loads and simulations efforts, have also been made with different types of materials. Some reserch is being done to replace some metal parts in carbon fiber parts or ABS (Patterned to be made in a 3D printer) in order to maintain
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 |
the strength but with a lower weight. As part of test an entire robot test was done in order ABS are making a comparison between the two models. The parts of ABS are made in a 3D printer in our own laboratory.
2.2 Electronic and Electrical Design
As a project goal, we decided to minimize the use of electronic parts in the robot. Our aim was to reduce all possible processing units and other accessory hardware, concentrating all the processing in one computer. We decided to control the motors using the computer's USB port. Thus, we eliminated the use of a microcontroller board, that is often used as an intermediate step between the computer and the motors. With this, all the processes responsible for the robot the motion is now executed on the computer. Before eliminating the microcontroller board, that is traditionally used by most of the teams, we conducted several tests to validate this new hardware and software architecture. So, this year, we improved the algorithm and our robots that can walk almost fast as the other teams, without using a microcontroller. The robots also use the UM6 ultra-miniature orientation sensor[17].
Table 2. B1 Robot Characteristics
| Robot Name | B1 |
|---|---|
| Height | 450 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 | UM6 Ultra-Miniature Orientation Sensor |
| Camera | Logitech HD Pro Webcam C920 (Full HD) |
| Computing Unit | Intel NUC Core i5-4250U, 8GB SDRAM, 120GB SDD |
3 Software Design
The team's software was completely developed by our group, using no software from other teams. We used a hybrid architecture, named Cross Architecture shown in Fig. 3, where each one of the solid line box in the Cross Architecture is a completely independent process for the computer [16], composed by a vision system, localization system, decision system, planning system, communication system, sense system and control system. As only one processor is used, the processes were divided into 4 clusters due to their computational cost (dashed line polygons in figure 3) and allocated in one core of the processor, as follows:
- Cluster 1: Vision (core 0);
- Cluster 2: Localization (core 1);
- Cluster 3: Decision, Communication and Planning (core 2);
- Cluster 4: Sense and Act (IMU and Control) (core 3).
3.1 Vision System
As we have a long tradition in the study vision systems [1,2], we decided to make a system that is as robust as possible, in terms of lightning conditions, ball tracking and occlusions, shadows, and other aspects that usually makes the vision one of the most difficult problems in the RoboCup competition.
Ball tracking and Goal recognition: 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 is been trained with several ball and goal images. The classifier used was the cascade of boosted classifiers working with haar-like features proposed by [24] and improved by [15].
Field lines detection: As done before, in previous Robocup edition, the field lines detection work with a transformation of the RGB color space to gray scale. This serves as an input for the Canny filter which defines the contours of the image, then the Hough transform is used as a method to find lines, fitting a set of 2D points. In a multi-stage process, pixels of colors that are non related to the field are discarded, so that only the color of the relevant characteristics remains. Processing this picture, the field line points can be detected applying elongated Gaussian kernels to determine the probability of pixels being part of a line [23].
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 [10]. This classifier is trained with images that has at least one robot in each image and aleatory images, as done before by [8]. 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
Currently we are using particle filter localization and we are implementing a qualitative-probabilistic approach – combination of Qualitative Reasoning with a Bayesian filter [11] – to localize the robots.
3.3 Decision algorithms
We are using 2 distinct decision levels for the robots in our team. In the higher level, we are using Multi-Robot Task Allocation to dynamically change the role of the robots during the game. Based on the system used in our RoboCup Small Size League team[13], robots participate of auctions for the available roles, such as attacker or defender. Using Reinforcement Learning, we evaluate their aptitude to perform these roles, given the situation of the team, in real-time.
In a lower level, we are using Case Based Reasoning to define the roles of attacked and defender. The agents checks all the time which case they can use at a certain moment, acting on it. This work is based a previous work on the 4 legged Aibo robots, by Ross et al. [19]. For the goalkeeper, we used Reinforcement Learning to develop a player that tracks the ball and decides which side it should fall, and at which moment. It also moves the robot so it will be at the best position for catching the ball.
4 Work in Progress
At the moment we are actively working on our robots to improve the robots and algorithms to compete and win the RoboCup 2015.
In the hardware aspect, we redo all the robot control, so the robots are walking faster then RoboCup 2014. We are also developing a 90cm robot, based in Newton robot, using carbon fiber and with 2 computers working together (cluster). In the software aspect, we also implemented and now we are testing the path planning algorithm with Artificial Potential Field [14] and the stereo vision to Vision System.
4.1 Research interests
Our group consists of 2 Faculty Professors (one from the electrical and one from computer science departments), 2 Ph.D., 2 MSc. and 1 undergraduate students. Our current research interests are: Gait generation and optimization: using Reinforcement Learning, Particle Swarm Optimization and Simulated Annealing; Stabilization Methods: using Reinforcement Learning to prevent the robot from falling down; Vision: using Hough Transform, Histogram of Oriented Gradients (HOG) and Support Vector Machines to create a robust vision system, including the new task of finding white ball and goalposts; Robot Localization: using a merge of Qualitative Reasoning with Particle Filtering techniques; Multi-Robot Task Allocation: how can we dynamically change the role of the robots during the game? We aim to adapt a system developed for our a RoboCup Small Size League team[13]; Spacial reasoning in multi-robot systems: using a new formalism, which we call Collaborative Spatial Reasoning[20], 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: using CBR together with Reinforcement Learning, to have a collection of cases that can work as set-pieces during the game[4]; Mechanical design of humanoid robots: how can a robot be build, using lighter parts and new kinematic configurations?
As it can be seen, our research interests range from the very bottom level of the robot construction, to the high level intelligent control of the team behavior. This research has been proved very rewarding, as we had several papers accepted at Brazilian conferences, 2 papers accepted in the International Latin American Robotics Symposium [16,23], 2 papers accepted in the International RoboCup Symposium [2,7], 2 papers accepted at the IJCAI International Joint Conference on Artificial Intelligence [5,9], and 2 papers published in major journals [3,12].
5 Conclusion
In this paper we have presented the specifications of the hardware and software aspects of RoboFEI-HT Humanoid Team, designed to compete at the RoboCup in Hefei, China. Our team will be composed of one Newton Robot, a robot designed and built at our institution, and three robots based on Darwin-OP, with the mechanical parts built by us, and the electronically and computational parts developed by the team.
Our team commits to participate in RoboCup 2015, and also commits to to making a person with sufficient knowledge of the rules available as referee during the competition.
References
- Bianchi, R.A.C., Costa, A.H.R.: A distributed control architecture for a purposive computer vision system. In: IEEE International Joint Symposia on Intelligence and Systems, 2nd. IAR'96. pp. 288–294. IEEE Computer Society Press ( 1996)
- Bianchi, R.A.C., Costa, A.H.R.: Implementing computer vision algorithms in hardware: an FPGA/VHDL–based vision system for mobile robot. In: RoboCup–01: Robot Soccer World Cup V. Lecture Notes in Artificial Intelligence, vol. 2377, pp. 281–286. Springer Verlag (2002)
- Bianchi, R., Martins, M., Ribeiro, C., Costa, A.: Heuristically-accelerated multiagent reinforcement learning. Cybernetics, IEEE Transactions on 44(2), 252–265 (Feb 2014)
- Bianchi, R.A.C., López de Mántaras, R.: Case-based multiagent reinforcement learning: Cases as heuristics for selection of actions. In: 19th European Conference on Artificial Intelligence. IOS Press (2010)
- Bianchi, R.A.C., Ribeiro, C.H.C., Costa, A.H.R.: Heuristic selection of actions in multiagent reinforcement learning. In: IJCAI 2007. pp. 690–695 (2007)
- Bianchi, R., Ros, R., Lopez de Mantaras, R.: Improving reinforcement learning by using case based heuristics. In: Lecture Notes in Computer Science, vol. 5650, pp. 75–89. Springer (2009)
- Celiberto, L.A., Ribeiro, C.H.C., Costa, A.H.R., Bianchi, R.A.C.: Heuristic reinforcement learning applied to robocup simulation agents. In: RoboCup 2007: Lecture Notes in Computer Science, vol. 5001, pp. 220–227. Springer (2007)
- Estivill-Castro, V., Radev, J.: Humanoids Learning who are teammates and who are opponents. In: The 8th Workshop on Humanoid Soccer Robots 13th at IEEE-RAS International Conference on Humanoid Robots, http://www.humanoidsoccer.org/ws13/program.html (2013)
- Celiberto, Jr., L.A., Matsuura, J.P., De Mantaras, R.L., Bianchi, R.A.C.: Using cases as heuristics in reinforcement learning: a transfer learning application. In: Proceedings of the Twenty-Second international joint conference on Artificial Intelligence - Volume Volume Two. pp. 1211–1217. IJCAI'11, AAAI Press (2011)
- Dallal, N., Triggs, B.: Histograms of Oriented Gradients for Human Detection. In: Conference on Computer Vision and Pattern Recognition, v. 1, p. 886-893, (2005)
- Fenelon Pereira, V., Gagliardi Cozman, F., Santos, P., Fernandes Martins, M.: A qualitative-probabilistic approach to autonomous mobile robot self localisation and self vision calibration. In: Intelligent Systems (BRACIS), 2013 Brazilian Conference on. pp. 157–162 (Oct 2013)
- 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), 69–82 (2011), http://dx.doi.org/10.1007/s13173-011-0028-4
- Gurzoni, Jose Angelo, J., Tonidandel, F., Bianchi, R.A.C.: Market-based dynamic task allocation using heuristically accelerated reinforcement learning. In: Lecture Notes in Computer Science, vol. 7026, pp. 365–376. Springer (2011)
- Khatib, O.: Real-time obstacle avoidance for manipulators and mobile robots. In. IEEE International Conference on Robotics and Automation, p. 500-505 (1985)
- Lienhart, R., Maydt, J.: An Extended Set of Haar-like Features for Rapid Object Detection. In. IEEE ICIP, v. 1, p. 900-903 (2002)
- Perico, D.H., Silva, I.J., Vilhão Jr., C.O., Homem, T.P.D., Destro, R.C., Tonidandel, F., Bianchi, R.A.C.: Hardware and Software Aspects of the Design and Assembly of a New Humanoid Robot for RoboCup Soccer. In: SBR-LARS Robotics Symposium, Joint Conference on robotics, IEEE, ISBN 978-1-4799-6710-0, p. 73-78 (2014)
- Pululu: Um6 ultra-miniature orientation sensor datasheet, http://www.pololu.com/file/0J442/UM6 datasheet.pdf
- Romela: Darwin op: Open platform humanoid robot for research and education, http://www.romela.org/main/DARwIn OP
- 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 ( 2009)
- Santos, P., Santos, D.E.: Towards an image understanding system for multiple viewpoints. In: Brazilian Symposium on Intelligent Automation (2013)
- Sardain, P., Bessonnet, G.: Forces acting on a biped robot. center of pressurezero moment point. IEEE Transactions on Systems, Man, and Cybernetics, Part A 34(5), 630–637 (2004)
- Sigmund, O., Bendsoe, M.: Topology optimization from airplanes to nanooptics, pp. 40–51. Technical University of Denmark (2004)
- Vilhão Jr., C.O., Silva, I.J., Perico, D.H., Homem, T.P.D., Tonidandel, F., Bianchi, R.A.C.: A Single Camera Vision System For a Humanoid Robot. In: SBR-LARS Robotics Symposium, Joint Conference on robotics, IEEE, ISBN 978-1-4799-6710- 0, p. 181-186 (2014)
- Viosa, P.,Jones, M.: Rapid Object Detection using a Boosted Cascade of Simple Features. In. Conference on Computer Vision and Pattern Recognition (CVPR), p. 511-518 (2001)