RoboFEI Humanoid Team 2017
Aislan C. Almeida, Danilo H. Perico, Thiago P. D. Homem, Isaac J. da Silva, Claudio Vilão, Vinicius Nicassio, Amanda G. Garcia, Jade C. C. Gali, Sylvio R. J. Neto, Wagner R. Ricci, Luccas M. Carregaro, Vincent Rayneau, 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 contains the description of mechanical, electrical and software modules, designed and implemented to enable the robots to play soccer in the environment of the RoboCup Humanoid League. It presents the description of the RoboFEI-Humanoid Team (RoboFEI-HT) as it stands for the RoboCup 2017 in Nagoya, Japan.
1 Introduction
This paper describes the hardware and software aspects of the RoboFEI-HT, designed to compete in the RoboCup 2017 Humanoid League.
The development of this team started in 2012, with students designing and building a humanoid robot from scratch [15]. In 2014, the team competed for the first time in the RoboCup World Competition, held in João Pessoa, PB, Brazil, with 4 humanoid robots, in which the team finished as one of the best 16 teams, and three months later, the team became the champion of the Latin American Robotics Competition (LARC) on the category LARC RoboCup Humanoid Kid Size League.
In RoboCup 2015, in Heifei, China, the team competed with three robots. The robots where adjusted to attend to the new requirements of field and ball, so they could walk on artificial grass and distinguish the white ball from afar. In the same year, the team finished in second place on LARC 2015.
Last year, on Leipzig, Germany, the team competed with four robots, finishing in the top 8 teams, thus showing a great improvement on the walking capability on artificial grass. Then in the same year, the team became the champion of the LARC 2016. Figure 1 shows a game in RoboCup and a game in LARC, both in 2016. The first one is a photo taken at a kickoff, the second is from moments after a game started.
Since then, the team has been working hard to enhance the robots for this year's RoboCup. The team made several improvements in the software and hardware of the robots, in order to be able to compete and win the RoboCup 2017.
2 Hardware Design
This year, the team will compete with four robots, all of them are B Robots, based on DARwIn-OP [16]. The robots are described in this section.
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
Based on the mechanics of the Darwin-OP Robot[16], the team developed the B1 Robots. The specifications of B1 Robots are presented in Table 1. In order to improve the performance of the robots, several studies focused on the material stress were performed. A research was realized in order to replace some of the metal parts by ABS parts (designed to be made in a 3D printer) in order to maintain the strength, but with a lower weight.
The robots are composed of several white parts. However, if the white color becomes an issue, it is possible to change the white printed parts for black printed ones.
B1 Robots Characteristics
| Robot Name | B1, B2, B3 and B4 |
|---|---|
| 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 |
2.2 Electronic Design
The team decided to perform all control and processing using a computer, the Intel NUC, which controls the motors through the USB ports using an USB/RS485 adapter. The robots have a hot-swap circuitry, which makes possible to exchange the power source without the need to turn off the robot.
3 Software Design
The team uses the Cross Architecture [15] depicted in Figure 2, which was developed by the team, where the solid line boxes are completely independent processes for the computer.
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.
3.1 Vision System
As the color is no longer a discrepant feature for the ball recognition in the current Robocup rules, a classifier using HAAR wavelets has been trained with several ball images. The classifier used was the cascade of boosted classifiers working with haarlike features proposed by Viola and Jones [23] and improved by Lienhart and Maydt [10].
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 [6]. This classifier is trained with images that has at least one robot in each image and random images. Once a robot is found, in order to identify the robot's team, it is used color segmentation to identify the robot's jersey color, thus identifying the robot's team, then it is possible to infer the robot's distance by its size on the image.
3.2 Localization
If the robot has a world map of the environment, it is possible for the robot to present a higher level of intelligence. In order to build this map, the team is developing a localization system.
The system uses recent information from the vision system, as well as information from other robots to create a world map, and share it with other robots. Making possible for all robots to localize themselves and plan the game play.
3.3 Decision algorithms
The team uses the Qualitative Case-Based Reasoning (Q-CBR) [9] method to select the most similar case and coordinate the actions that each robot must perform. Q-CBR uses a qualitative distance and orientation calculus (EOPRA) to model cases using qualitative relations between the objects (robots and ball) in the case. A coordinator robot retrieves the most similar case that may solve the problem, and then shares the case among teammates, sending their qualitative position and the actions they must perform.
3.4 Movement Control
Through the performed experiments to improve and speed up the walking on artificial grass, the team found that each movement needs its own set of parameters in order to reach a fast and dynamically balanced gait.
In config.ini archive, sections for each kind of movement were added, as shown in Figure 3. Inside the control program it was created a class that holds the attributes related to the configuration parameters of the movements, the class has a constructor which reads the parameters of the chosen section and it has a method to update the parameters of the gait pattern generator.
4 Telemetry
The telemetry was developed by the team in order to monitor the robots' system. All robots broadcasts all relevant informations through the network. Using a computer connected to the same network, it is possible to receive and interpret these informations, and then present it for the team.
It helps on debugging code on real robots, track the system situation (e.g. which process in running), the battery status, the estimated position and the behaviour which is been executed. Figure 4 depicts the telemetry, where each robot is represented by a color. The floating boxes presents the robots' present state of internal variables. The robots' localization is given by the robot icons (rectangles) in the field, the circle around the icon represents the robot's belief in that position and the ball within a circle in the color of a robot represents the position where a given robot perceives the ball.
5 Work in Progress
At the moment the team is actively working on the robots, improving hardware and software, to compete and win the RoboCup 2017.
The team is studying the possibility of using Carbon Fiber to improve resistance of the plastic parts, and reduce the robots' weight. Also all electronic circuitry is been integrated in the same circuit board, in order to reduce connection breaks, and improve the use of space.
6 Research interests
Our group consists of 2 Faculty Professors , 4 Ph.D. students, 2 MSc. students, 5 undergraduate students and 1 exchange 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. The team is interested in finding an automatic way to adjust the values of these parameters. The team is 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 this, 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: The team is studying and developing a collaborative relative localization 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 categorization of space and, also, to have a more effective way of interaction between robots and humans.
The team is also 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 [5,7] have been used.
EOPRAm 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, EOPRAm is more abstract and can be regardless of the domain, since a robot will localize itself in relation to the others.
Spatial reasoning in multi-robot systems: it is possible to use Collaborative Spatial Reasoning [17] applied on the scene interpretation from multiple cameras and on the task of scene understanding from the viewpoint of multiple robots.
Case-Based Reasoning for soccer games: the team is investigating a Qualitative Case-based 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.
Stereo Vision The team is experimenting with the use of stereo vision in order to improve the playing capabilities of the robots, regarding the quality of distance information obtained by the vision system. Preliminary studies in programming a goalkeeper using stereo vision, succeeded in the improvement of the robot's decision making.
Project of Taller Robots In order to build taller robots, to compete on teen and adult size categories, new studies on mechanical structures, dynamics of objects and material resistance are in course.
6.1 Publications
Our researches have been proved to be very rewarding, as we had several papers published at Brazilian conferences, 7 papers published in the International Latin American Robotics Symposium [15,22,14,18,21,20,19], 2 papers published in the International RoboCup Symposium [1,4], 1 book's chapter published by Springer [13], and 5 papers published in major journals [2,8,12,9,3].
7 Conclusion
In this paper we have presented the specifications of hardware and software aspects of RoboFEI-HT, designed to compete at the RoboCup 2017, in Nagoya, Japan. The team will be composed of four B1 Robots based on DARwIn-OP.
Our team commits to participate in RoboCup 2017, and to make a person with sufficient knowledge of the rules available as referee during the competition.
References
- 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 Artificial Intelligence, vol. 2377, pp. 281–286. Springer Verlag, Berlin, Heidelberg (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., Celiberto, L.A., Santos, P.E., Matsuura, J.P., de Mantaras, R.L.: Transferring knowledge as heuristics in reinforcement learning: A case-based approach. Artificial Intelligence 226, 102–121 (2015)
- 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, pp. 220–227. Springer (2007)
- Cohn, A.G., Renz, J.: Qualitative spatial reasoning. In: van Harmelen, F., Lifschitz, V., Porter, B. (eds.) Handbook of Knowledge Representation. Elsevier (2007)
- 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)
- Dylla, F.: Qualitative Spatial Reasoning for Navigating Agents: Behavior Formalization with Qualitative Representations, Ambient Intelligence and Smart Environments, vol. 3 (2009)
- 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)
- Homem, T.P., Perico, D.H., Santos, P.E., Bianchi, R.A., de Mantaras, R.L.: Qualitative casebased reasoning for humanoid robot soccer: A new retrieval and reuse algorithm. In: International Conference on Case-Based Reasoning. pp. 170–185. Springer (2016)
- Lienhart, R., Maydt, J.: An extended set of haar-like features for rapid object detection. In: IEEE ICIP 2002. pp. 900–903 (2002)
- 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)
- Perico, D.H., Santos, P.E., de Mántaras, R.L.: Collaborative communication of qualitative spatial perceptions for multi-robot systems. International Workshop on Qualitative Reasoning 4(11), 11 (2016)
- 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)
- Perico, D., Santos, P., Bianchi, R.: Vision-based monte carlo localization without measurement: A qualitative approach during update phase. In: SBR-LARS Robotics Symposium (SBR LARS), 2015 Joint Conference on (Oct 2015)
- 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 Robotics Symposium and Robocontrol (SBR LARS Robocontrol), 2014 Joint Conference on. pp. 73–78 (Oct 2014)
- Romela: Darwin op: Open platform humanoid robot for research and education, http: //www.romela.org/main/DARwIn\\_OP
- Santos, P., Santos, D.E.: Towards an image understanding system for multiple viewpoints. In: Brazilian Symposium on Intelligent Automation (2013)
- 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 Robotics Symposium (SBR LARS), 2015 Joint Conference on (Oct 2015)
- Silva, I.J., Perico, D.H., Homem, T.P., Vil, C.O., Bianchi, R.A., et al.: Using reinforcement learning to improve the stability of a humanoid robot: Walking on sloped terrain. In: 2015 12th Latin American Robotics Symposium and 2015 3rd Brazilian Symposium on Robotics (LARS-SBR). pp. 210–215. IEEE (2015)
- Silva, I.J., Perico, D.H., Homem, T.P., Vilão Jr, C.O., Tonidandel, F., Bianchi, R.A.: Humanoid robot gait on sloping floors using reinforcement learning. In: Latin American Robotics Symposium. pp. 228–246. Springer (2016)
- Vilao, C., Celiberto Jr., L., Bianchi, R.: Evaluating the performance of two visual descriptors techniques for a humanoid robot. In: SBR-LARS Robotics Symposium (SBR LARS), 2015 Joint Conference on (Oct 2015)
- Vilao, C., Perico, D., Silva, I., Homem, T., Tonidandel, F., Bianchi, R.: A single camera vision system for a humanoid robot. In: Robotics: SBR-LARS Robotics Symposium and Robocontrol (SBR LARS Robocontrol), 2014 Joint Conference on. pp. 181–186 (Oct 2014)
- Viola, P., Jones, M.: Rapid object detection using a boosted cascade of simple features. pp. 511–518 (2001)