SlideShare a Scribd company logo
1 of 9
Download to read offline
MRL Team Description Paper
for Humanoid KidSize League of RoboCup 2015
Mostafa E. Salehi1
, Meisam Teimouri, Amir Salimi, Emad Farokhi, M. Hosein
Gholampour, Bahareh Foroughi, M. Saeed Yousefi, and Roham Shakiba
Mechatronics Research Lab, Dept. of Computer and Electrical Engineering,
Qazvin Islamic Azad University, Qazvin, Iran
Email: 1
m.e.salehi@qiau.ac.ir
Web: http://mrl.ir
Abstract. This team description paper presents the specifications of the MRL
kidsize humanoid robot system which contains different parts including robot
vision, motion control, world modeling, self-localization, and behavior. MRL
humanoid team is developed under the RoboCup 2015 rules to participate in the
humanoid kidsize soccer league competition in Hefei, the China and like the
last year we will introduce a referee with sufficient knowledge of the rules
available during the competitions. We use modified DARwIn-OP as our base
platform and we have also designed a new robot called Rabo. We have modi-
fied DARwIn-OP in architecture, vision, motion control, world modeling, self-
localization, behavior, embedded control board, and also the robot embedded
operating system as will be discussed in the related sections.
Keywords: RoboCup, Kidsize Humanoid League, Bipedal Locomotion, Artifi-
cial Intelligence, Embedded System Design
1 Introduction
RoboCup uses soccer as a research area to develop a team of humanoid robots that
can win the human world champion soccer team in 2050. In the Humanoid league,
human-like fully autonomous robots play soccer against each other and meanwhile
handle stable walking, modeling and kicking the ball, visual perception, and self-
localization. The RoboCup soccer playing robots introduce challenges in design, con-
trol, stability, and behavior of autonomous humanoid robots.
The MRL project was started in 2003 in the Mechatronics Research Laboratory in
Islamic Azad University, Qazvin branch looking onward to enhance the knowledge of
robotics and the MRL humanoid kidsize soccer league is aimed to develop a human-
oid platform for research and education. Our research center has the honor to hold the
RoboCup IranOpen from 2003 to 2015. MRL has a successful history in RoboCup for
many years. Our humanoid soccer playing team has participated in RoboCup and
IranOpen Humanoid League in 2011, 2012, 2013 and 2014. In 2012, 2013 and 2014
we had the honor to be in the top 8 teams among 22 participating teams. This year we
are planning to participate in the kidsize humanoid competition for the fifth time in
IranOpen 2015 and RoboCup 2015 in Hefei, China. Our mission is to fulfill our study
in motion control, vision, world modeling, artificial intelligence, and embedded sys-
tem design.
MRL Humanoid Kid Size team consists of two Ph.D., eight graduate, and eight
undergraduate students from software, hardware, electronics, and mechatronics. The
other team members are: Mahdi Yarahmadi, Hamed Torki, Ashkan Farhadi, Hamed
Sharifi, and Pourya Shahverdi.
2 Overview of the System
We will use DARwIn-OP (Dynamic Anthropomorphic Robot with Intelligence Open
Platform) [1] and our new robot called Rabo in our soccer playing team for Ro-
boCup2015. The kinematic structure of these robots can be seen in Fig.1. The actua-
tors used in our robots are the MX28 and MX64 servo motors. Physical specifications
of the robots are illustrated in Table 1. Our developments for the kidsize humanoid
robot include the design and construction of modular software architecture based on
the Upenn RoboCup released code [2]. The software contains robot applications in-
cluding autonomous motion and walking controller, self-localization base on vision,
planning, and communication.
Table 1. Physical measurements of modified DARwIn.
Feature DARwIn
Height: 45.5 cm
Weight: 2.8 Kg
Walking Speed: 24 cm/s
Degrees of freedom: 20 in total
Servo motors: 20 MX-28
Sensors: Accelerometer, gyroscope
Embedded PC board: Fit-PC2i
Physical measurements of our new Robot
Feature Rabo
Height: 58 cm
Weight: 5.2 Kg
Walking Speed: 36 cm/s
Degrees of freedom: 20 in total
Servo motors: 20 MX-64
Sensors: Accelerometer, gyroscope
Embedded PC board: Fit-PC2i
Fig.1. kinematic structure of our robots.
Considering the processing power of humanoid soccer playing robots, we need to use
a customized operating system for special purposes. We have customized the Linux
kernel for our robots in order to have a proper scheduling getting the best result. In
fact we build up a light specific distribution of Linux for DARwIn-OP. We have im-
proved some quality factors such as performance and running time by deploying our
novel light distribution and using specific CPU scheduler, file system and customized
kernel which only installs the minimum required libraries and applications. Instead of
the GUI (Graphical User Interface), we have only provided BASH as a CLI (Com-
mand Line Interface) user interface. We have also chosen the RSDL for scheduling
processes in which the processes at the highest priority are allowed to execute and
will be given the time slices [3]. For our file system we have deployed BRTFS. Con-
sidering that our distribution is Debian-based, we use APT as package manager. Also
we have implemented MUSH (MRL User Shell) to simplify and expedite the configu-
ration, compilation and running multiple robots simultaneously.
Each robot is able to detect the ball and goal by scanning the field, can walk towards
the ball, and kick it when it catches the ball. The project is still in progress and some
developed methods are described in the current report. Our robots consist of a USB
camera, two embedded processing systems, gyro, acceleration and compass sensors,
servo motors, batteries and some user interfaces such as switch and LED. Images are
captured by the USB camera, the camera sends image signal to the main CPU board.
The CPU processes the image data to detect positions of ball, goals, and other robots
by a combination of color-based and shape-based image processing. A hybrid locali-
zation method is employed to localize the robot in the soccer field. We also have used
wireless communication between the robots. Exploiting the vision and network data
we select the next behavior of the robot according to the robot role and the priority of
the behaviors. The defined behaviors are composed of simple motions to support
more complex tasks.
3 Motion Control
One of the challenging research areas in humanoid robots is the walking and stabil-
ity. In this section we introduce our methodology and the proposed evolutionary algo-
rithm that is used to modify the DARwIn robot motion. Motion of joints in biped
robots can be studied in two categories: a) movement position, b) angular position [4].
Mechanical methods are based on the dynamics of the robot and information from the
environment. In our methodology we focus on angular positions of the joints and we
use sinusoid equations to generate motion gait patterns for swing leg and we use pol-
ynomial equations for support leg which leads to higher performance and stability
during the walk. We have also used an evolutionary algorithm in tuning the parame-
ters of robot motion. These parameters are the coefficients of equations that are set for
each joint and create the sequence of joint angles for robot walking. The evolutionary
algorithm that we use in this implementation is the PSO algorithm. We have produced
single step cycles in 0.48s and record the angular position value of each joint in each
0.04s (angular position for both swing leg and support leg).
4 Robot Vision
Vision is one of the most important interfaces for robot perception [5]. The main
vision sensor is a camera that is located in the robot’s head. This camera model of
DARwIn-OP is Logitech C905 that uses USB2 connection with 2 Megapixel 640×480
resolutions (up to 1600×1200, 10fps or 1280×720, 30fps) in YUYV color space. At
the first step, we used V4L2 module to grab the raw output of the camera, then the
grabbed image was converted to HSI color space and is mapped to the field’s colors,
using a color look-up table to segment the image according to the color. One of the
leading problems of this approach is its dependency to the light intensity and the other
problem is that it takes a pretty long time to set the color look-up table manually.
According to our previous research [6], the HSI color space is less affected in varia-
tions in light intensity comparing to other color spaces. To solve the first problem we
used HSI color space and for the second one, we deployed autonomous color look-up
table which the TT-UT Austin villa team has already implemented [7].
Due to the changes of rules in humanoid robot league and changing the color of
goals to white which has the same color with lines, distinguishing these two objects,
is a new challenge of the league and thus we decided to use a new approach to detect
line and goal simultaneously. To detect goals and lines, we first detect the white seg-
ments using our customized RANSAC algorithm which is a learning technique to
estimate the parameters of a model by random sampling of observed data. After de-
tecting the segments, we should distinguish lines and goals. To accomplish this, we
utilize the structure of the field lines, goal posts and the matrix of head position.
5 World Modeling
World model is a key component in intelligent and autonomous robots. Modeling
the system consist of a model for each static and dynamic object in the field. These
models are formed by the incoming data from the sensors of the robot. Due to the
noise and uncertainty of observations and limitations in humanoid sensors, tracking
the surrounding environment of the robot is an important challenge. This year we
have implemented models for self-localization and ball tracking and we are working
on modeling obstacles.
5.1 Self-localization
Self-Localization is a key problem in autonomous soccer playing robots. Making
proper decision for the robot that is not aware about his position is impossible. With
respect to the limited field of view and limitation in robot sensors, tracking the pose is
a complex problem. Last year we utilized a hybrid method based on the MCL and
EKF. This year we have implemented a new combined method that uses MCL sam-
ples and UKF population. The key idea of this method is that kidnap and global local-
ization problems can be handled by MCL as quickly as possible and the position
tracking is done with UKFs accurately. To achieve this, we have used two types of
hypothesis: MCL samples and a population of UKF. Every hypothesis has a weight
that shows it effectiveness and is updated smoothly. Each MCL sample is a light hy-
pothesis that is not good for tracking robot position. But it can be used for keeping a
probable hypothesis about robot location for a short time. When absolute measure-
ments mismatched with hypothesis, theses samples are created. One the other hand
UKF hypothesis is more robust and we use them to track more probable location for
long times.
Initially the samples of MCL are distributed uniformly in the state space (if we ha-
ven’t any prior information) and there isn’t any UKF hypothesis. These samples are
updated with incoming measurements. When the samples are converged to a limited
number of clusters and the number of UKFs does not exceed a maximum number,
then for each cluster that its weight pass from a threshold a UKF hypothesis is re-
placed by it and there is no need for updating the samples of that cluster. The efficien-
cy of the proposed method is related to the clustering algorithm. Because it isn’t a
trivial task and can take a huge time.
In [9] a clustering algorithm is introduced that uses the intrinsic features of MCL
and clusters the samples in linear time. We have used their method in our algorithm.
Moreover, to manage the number of UKF hypothesis we remove the low weighed
ones and merge two near UKF hypotheses. To evaluate the efficiency of our algo-
rithm, we have done two experiments that measure the accuracy and ability to relocal-
ization. The implemented methods are compared against one of the most stable locali-
zation methods, called Temporal Smoothing MCL (TSMCL) [10]. As illustrated in fig
2. Our method outperforms the TSMCL.
Fig. 2- Results of the accuracy and relocalization experiments. Top row shows the accuracy and
bottom row shows the ability to recovering from kidnap.
0
0.5
1
1.5
2
2.5
3
3.5
1
276
551
826
1101
1376
1651
1926
2201
2476
2751
3026
3301
3576
3851
4126
4401
4676
4951
5226
5501
5776
6051
6326
6601
6876
7151
distance(m)
Frames
Distance Error
MCL-UKF TSMCL
0
50
100
150
200
1
205
409
613
817
1021
1225
1429
1633
1837
2041
2245
2449
2653
2857
3061
3265
3469
3673
3877
4081
4285
4489
4693
4897
5101
5305
Angle(degree)
Frames
Angle Error
MCL-UKF TSMCL
0
1
2
3
4
5
1
205
409
613
817
1021
1225
1429
1633
1837
2041
2245
2449
2653
2857
3061
3265
3469
3673
3877
4081
4285
4489
4693
4897
5101
5305
distance(m)
Frames
Distance Error
MCL-UKF TSMCL
0
20
40
60
80
100
120
140
160
180
1
205
409
613
817
1021
1225
1429
1633
1837
2041
2245
2449
2653
2857
3061
3265
3469
3673
3877
4081
4285
4489
4693
4897
5101
5305
Angle(degree)
Frames
Angle Error
MCL-UKF TSMCL
Goal posts are the most important landmarks to update localization, however, be-
cause of long distance between the goalie and opponent goal, the result of the estimat-
ed position of the goalie would be unstable. Thus we decided to develop a specialized
localization method to improve the mentioned defect. To accomplish this, we defined
an uncertainty value ranged between 0 and 1. The higher this value, the more accurate
position we have. As uncertainty decreases during the game, we should do the corre-
sponding actions to improve it to get higher. Based on the uncertainty value, first we
validate the current position and then using nearby landmarks around our goal, we try
to correct the position by detecting more landmarks. This cycle will continue until the
uncertainty threshold value is reached.
5.2 Co-Operative Occupancy Grid Map
Considering the high probability of collisions in operational environment, ro-
bots need to model the environment for intelligent activities like planning and obsta-
cle avoidance. We have used a co-operative Occupancy Grid Map in which the ro-
bot’s environment is divided into specific number of cells based on [10]. In our exper-
iments, the robot’s field is divided into 5400 cells and each cell size is 10×10 centi-
meter. The current state of each cell and the probability of being occupied is deter-
mined with a floating point number between [0, 1], where 0 indicate free cells and 1
indicating occupied cells. We employed a count model for calculating this probability
which is based on the number of times the cell has been occupied or free. The output
of vision module which is FOV data of the robot is mapped on corresponding cell in
Occupancy Grid Map using Bresenham line algorithm [12]. Then we update the count
model counters according to the state of the cell, using the co-operative occupancy
grid map which uses the other teammates’ data, we cover parts of the field which are
not in robot’s field of view. Each robot broadcasts free and occupied counters of last
seen cells as well as the ones received from its teammates; the new robot’s perception
is preferable to the other robots data about that cell. This way robot has better
knowledge of occupancy cells of the field which leads to a better game planning. In
Fig 3, a sample scenario of generating co-operative occupancy grid map in collabora-
tion with two robots of the blue team is shown.
5.3 Ball tracking
Ball is the most important moving object in the field that should be tracked
by every player in the field depending on its role. We use Kalman filter to decrease
ball detection noise. After applying this filter we create a model of ball for each robot,
including important data for behavior control layer. Our goal is to have a stable and
reliable model. Vision data, odometry, kicking and passing, affect this model and also
affect uncertainty of ball with specified ratios. Each robot playing in same team can
share its own model with its teammates. We can also improve ball model of each
robot by the means of other robot's ball model.
a) Scenario in simulator b) OnBall Robot's OccMap
c) Forward Robot's OccMap d) Co-Operative OccMap
Fig. 3- Samples of angular positions for (a, c) Hip joint, (b) Knee joint, (d) Ankle joint.
6 Behavior Control
Due to the essence of AI as our super-field, there is a spectrum of problems and
their relevant spectrum of solutions. For handling this spectrum and with respect to
the hierarchical structure of these problems as are described in [13] we have defined a
simple hierarchical structure constituted from three layers. The top-most layer namely
Game, the second layer is labeled as Player, and the bottom-most layer is Body.
As our contributions in the behavior, firstly we have applied most of the improve-
ments in the bottom layer as player’s action parameter optimization. In second layer
we have implemented new path planning algorithm which uses Ferguson splines and
particle swarm optimization (PSO) for planning optimum path through obstacles [14].
Experimental results indicate that in 92% of the configurations our new proposed
method plans a path considering both length and safety.
This year we concentrated on three problems. The first one is path planning and we
implemented our proposed algorithm [15] on robot. Also we are working on another
method for obstacle avoidance using a fuzzy system. We hope we can compare these
two methods in several terms. The second problem is positioning which can be con-
sidered as several sub-problems. Finding a solution to select the best position to pass
the ball to another player has been one of the challenges in humanoid soccer robots.
To solve this problem, we have developed a positioning algorithm using a Fuzzy Sys-
tem to select that position. The Fuzzy system can output a good position based on the
attacker's current position and the best free point in the occupancy grid map. The new
approach however still needs optimization to work perfectly but early tests has proven
that it is a successful system and will be as the backbone of the strategy in our future
behavior plans.
7 Conclusion
In this paper we have presented the specifications of the hardware and software of
MRL kidsize humanoid robot system developed under the RoboCup 2014 rules. MRL
commits to participate in RoboCup 2015 with further enhanced hardware and soft-
ware based on the achievements of previous year and also commits to introduce a
referee familiar with the rules of the Humanoid League. We use DARwIn-OP as our
base platform and we have also designed a new robot called Rabo. We are working on
this platform with about totally 20 graduate and undergraduate students modifying
and optimizing the platform in vision, motion control, world modeling, self-
localization, behavior, embedded control board, and also the robot embedded operat-
ing system as is discussed in the related sections. Up to now we have 12 published
papers in the related research fields.
References
[1] DARwIN OP, http://www.romela.org/main/DARwIn_OP:_Open_Platform_ Human-
oid_Robot_for_Research_and_Education, retrieved Jan 2013.
[2] Upenn RoboCup: Code, available online: https://fling.seas.upenn.edu/~robocup/
wiki/index.php?n=Main.Code, retrieved Jan 2013.
[3] Shen Wang, Yu Chen, Wei Jiang, Peng Li, Ting Dai, Yan Cui “Fairness and Interactivity
of Three CPU Schedulers in Linux” In 15th IEEE International Conference on Embedded and
Real-Time Computing Systems and Applications, RTCSA, pp. 172-177, 2009
[4] N. Shafii, S. Aslani, O. M. Nezami and S. Shiri, “Evolution of biped walking using truncat-
ed fourier series and particle swarm optimization,” Springer, Robocup, pp. 344-354, 2010.
[5] Rafael C. Gonzales and Richard E. Woods, Digital Image Processing, Prentice Hall, 2001.
[6] Mojtaba Ghanbari, Reza Safdari, Ehsan Nazari, and Mostafa E. Salehi “Evaluating the
Effect of Intensity Variations on Object Detection in Humanoid Soccer Playing Robots,” in
Proceedings the 2013 RSI International Conference on Robotics and Mechatronics (ICROM
2013), in press, 13 -15 Feb 2013.
[7] M. Sridharan and P. Stone, "Autonomous Planned Color Learning on a Mobile Robot
Without Labeled Data," in Proc. of ICARCV, pp.1-6, 2006.
[8] Wei Hong, Changjiu Zhou and Yantao Tian, Robust Monte Carlo Localization For Human-
oid Soccer Robot, IEEE/ASME International Conference on Advanced Intelligent Mechatron-
ics, 2009.
[9]. T. Laue and T. Röfer, "Pose Extraction from Sample Sets in Robot Self-Localization - A
Comparison and a Novel Approach," in 4th European Conference on Mobile Robots,
Mlini/Dubrovnik, Croatia, 2009, pp. 283–288.
[10]. W. Nisticò and M. Hebbel, "Particle Filter with Temporal Smoothing for Mobile Robot
Vision-Based Localization," in Informatics in Control, Automation and Robotics. vol. 37, J.
Cetto, J.-L. Ferrier, and J. Filipe, Eds., ed: Springer Berlin Heidelberg, 2009, pp. 167-180.
[11] Bahareh Foroughi, Reza Safdari, Reza Kashkoee and Mostafa E. Salehi" Action Selection
Using Co-Operative Occupancy Grid Map for Humanoid Soccer Robot", The 22nd Iranian
Conference on Electrical Engineering ICEE 2014 (Under Review)
[12] J. Bresenham, “Algorithm for computer control of a digital plotter,” IBM Systems Journal,
vol. 4, no. 1, pp. 25–30, 1965.
[13] Sven Behnke and Jorg Stuckler, “Hierarchical reactive control for a team of humanoid
soccer robots,” IEEE-RAS International Conference on Humanoid Robots, pp. 622-629, 2007.
[14] Wu Xianxiang, Ming Yan and Wang Juan, “An improved Path Planning Approach Based
on Particle Swarm Optimization,” Hybrid Intelligent Systems (HIS), pp. 157-161, 2011.
[15] R. Shakiba, M. Najafipour, and M. E. Salehi, "An improved PSO-based path planning
algorithm for humanoid soccer playing robots," in AI & Robotics and 5th RoboCup Iran Open
International Symposium (RIOS), 2013 3rd Joint Conference of, 2013, pp. 1-6.

More Related Content

What's hot

SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS
 SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS  SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS
SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS Nandakishor Jahagirdar
 
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...IRJET Journal
 
Grid Based Autonomous Navigator
Grid Based Autonomous Navigator Grid Based Autonomous Navigator
Grid Based Autonomous Navigator Sayeed Mohammed
 
Autonomous laser guided vehicle for book deposition in a library
Autonomous laser guided vehicle for book deposition in a libraryAutonomous laser guided vehicle for book deposition in a library
Autonomous laser guided vehicle for book deposition in a libraryPushkar Limaye
 
Visual pattern recognition in robotics
Visual pattern recognition in roboticsVisual pattern recognition in robotics
Visual pattern recognition in roboticsIAEME Publication
 
Building a-line-following-robot
Building a-line-following-robotBuilding a-line-following-robot
Building a-line-following-robotFahmy Akbar Aparat
 

What's hot (8)

SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS
 SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS  SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS
SIMULTANEOUS MAPPING AND NAVIGATION FOR RENDEZVOUS IN SPACE APPLICATIONS
 
Automatic P2R Published Paper P1277-1283
Automatic P2R Published Paper P1277-1283Automatic P2R Published Paper P1277-1283
Automatic P2R Published Paper P1277-1283
 
seminar presentation
seminar presentationseminar presentation
seminar presentation
 
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
A Global Integrated Artificial Potential Field/Virtual Obstacles Path Plannin...
 
Grid Based Autonomous Navigator
Grid Based Autonomous Navigator Grid Based Autonomous Navigator
Grid Based Autonomous Navigator
 
Autonomous laser guided vehicle for book deposition in a library
Autonomous laser guided vehicle for book deposition in a libraryAutonomous laser guided vehicle for book deposition in a library
Autonomous laser guided vehicle for book deposition in a library
 
Visual pattern recognition in robotics
Visual pattern recognition in roboticsVisual pattern recognition in robotics
Visual pattern recognition in robotics
 
Building a-line-following-robot
Building a-line-following-robotBuilding a-line-following-robot
Building a-line-following-robot
 

Similar to MRL Team Description Paper for Humanoid KidSize League Of 2015

Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...
Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...
Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...Waqas Tariq
 
Modelling of walking humanoid robot with capability of floor detection and dy...
Modelling of walking humanoid robot with capability of floor detection and dy...Modelling of walking humanoid robot with capability of floor detection and dy...
Modelling of walking humanoid robot with capability of floor detection and dy...ijfcstjournal
 
A Review On AI Vision Robotic Arm Using Raspberry Pi
A Review On AI Vision Robotic Arm Using Raspberry PiA Review On AI Vision Robotic Arm Using Raspberry Pi
A Review On AI Vision Robotic Arm Using Raspberry PiAngela Shin
 
Tiny-YOLO distance measurement and object detection coordination system for t...
Tiny-YOLO distance measurement and object detection coordination system for t...Tiny-YOLO distance measurement and object detection coordination system for t...
Tiny-YOLO distance measurement and object detection coordination system for t...IJECEIAES
 
VIP - Wheelchair Project Final Report
VIP - Wheelchair Project Final ReportVIP - Wheelchair Project Final Report
VIP - Wheelchair Project Final ReportKarvin Dassanayake
 
IRJET- Smart Luggage Carrying Robot Using Raspberry Pi
IRJET- Smart Luggage Carrying Robot Using Raspberry PiIRJET- Smart Luggage Carrying Robot Using Raspberry Pi
IRJET- Smart Luggage Carrying Robot Using Raspberry PiIRJET Journal
 
Final Year Project Poster - RoboCup SSL
Final Year Project Poster - RoboCup SSLFinal Year Project Poster - RoboCup SSL
Final Year Project Poster - RoboCup SSLİbrahim Can Yılmaz
 
Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...
Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...
Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...CSCJournals
 
Vision System and its application,Problems
Vision System and its application,ProblemsVision System and its application,Problems
Vision System and its application,ProblemsNikhil Chavda
 
Portfolio - Ramsundar K G
Portfolio - Ramsundar K GPortfolio - Ramsundar K G
Portfolio - Ramsundar K GRamsundar K G
 
RMV robot programming
RMV robot programmingRMV robot programming
RMV robot programminganand hd
 
Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...
Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...
Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...IJECEIAES
 
Development of image processing based human tracking and control algorithm fo...
Development of image processing based human tracking and control algorithm fo...Development of image processing based human tracking and control algorithm fo...
Development of image processing based human tracking and control algorithm fo...adarsa lakshmi
 

Similar to MRL Team Description Paper for Humanoid KidSize League Of 2015 (20)

Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...
Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...
Dynamic Role Engine and Formation Control for Cooperating Agents with Robust ...
 
Final-Report
Final-ReportFinal-Report
Final-Report
 
30120140506012 2
30120140506012 230120140506012 2
30120140506012 2
 
30120140506012 2
30120140506012 230120140506012 2
30120140506012 2
 
Modelling of walking humanoid robot with capability of floor detection and dy...
Modelling of walking humanoid robot with capability of floor detection and dy...Modelling of walking humanoid robot with capability of floor detection and dy...
Modelling of walking humanoid robot with capability of floor detection and dy...
 
A Review On AI Vision Robotic Arm Using Raspberry Pi
A Review On AI Vision Robotic Arm Using Raspberry PiA Review On AI Vision Robotic Arm Using Raspberry Pi
A Review On AI Vision Robotic Arm Using Raspberry Pi
 
Tiny-YOLO distance measurement and object detection coordination system for t...
Tiny-YOLO distance measurement and object detection coordination system for t...Tiny-YOLO distance measurement and object detection coordination system for t...
Tiny-YOLO distance measurement and object detection coordination system for t...
 
Robocup2006
Robocup2006Robocup2006
Robocup2006
 
VIP - Wheelchair Project Final Report
VIP - Wheelchair Project Final ReportVIP - Wheelchair Project Final Report
VIP - Wheelchair Project Final Report
 
Colour tracking robot.pdf
Colour tracking robot.pdfColour tracking robot.pdf
Colour tracking robot.pdf
 
IRJET- Smart Luggage Carrying Robot Using Raspberry Pi
IRJET- Smart Luggage Carrying Robot Using Raspberry PiIRJET- Smart Luggage Carrying Robot Using Raspberry Pi
IRJET- Smart Luggage Carrying Robot Using Raspberry Pi
 
Final Year Project Poster - RoboCup SSL
Final Year Project Poster - RoboCup SSLFinal Year Project Poster - RoboCup SSL
Final Year Project Poster - RoboCup SSL
 
Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...
Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...
Autonomous Path Planning and Navigation of a Mobile Robot with Multi-Sensors ...
 
Vision System and its application,Problems
Vision System and its application,ProblemsVision System and its application,Problems
Vision System and its application,Problems
 
H011124050
H011124050H011124050
H011124050
 
Resume
ResumeResume
Resume
 
Portfolio - Ramsundar K G
Portfolio - Ramsundar K GPortfolio - Ramsundar K G
Portfolio - Ramsundar K G
 
RMV robot programming
RMV robot programmingRMV robot programming
RMV robot programming
 
Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...
Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...
Mathematical modeling and kinematic analysis of 5 degrees of freedom serial l...
 
Development of image processing based human tracking and control algorithm fo...
Development of image processing based human tracking and control algorithm fo...Development of image processing based human tracking and control algorithm fo...
Development of image processing based human tracking and control algorithm fo...
 

MRL Team Description Paper for Humanoid KidSize League Of 2015

  • 1. MRL Team Description Paper for Humanoid KidSize League of RoboCup 2015 Mostafa E. Salehi1 , Meisam Teimouri, Amir Salimi, Emad Farokhi, M. Hosein Gholampour, Bahareh Foroughi, M. Saeed Yousefi, and Roham Shakiba Mechatronics Research Lab, Dept. of Computer and Electrical Engineering, Qazvin Islamic Azad University, Qazvin, Iran Email: 1 m.e.salehi@qiau.ac.ir Web: http://mrl.ir Abstract. This team description paper presents the specifications of the MRL kidsize humanoid robot system which contains different parts including robot vision, motion control, world modeling, self-localization, and behavior. MRL humanoid team is developed under the RoboCup 2015 rules to participate in the humanoid kidsize soccer league competition in Hefei, the China and like the last year we will introduce a referee with sufficient knowledge of the rules available during the competitions. We use modified DARwIn-OP as our base platform and we have also designed a new robot called Rabo. We have modi- fied DARwIn-OP in architecture, vision, motion control, world modeling, self- localization, behavior, embedded control board, and also the robot embedded operating system as will be discussed in the related sections. Keywords: RoboCup, Kidsize Humanoid League, Bipedal Locomotion, Artifi- cial Intelligence, Embedded System Design 1 Introduction RoboCup uses soccer as a research area to develop a team of humanoid robots that can win the human world champion soccer team in 2050. In the Humanoid league, human-like fully autonomous robots play soccer against each other and meanwhile handle stable walking, modeling and kicking the ball, visual perception, and self- localization. The RoboCup soccer playing robots introduce challenges in design, con- trol, stability, and behavior of autonomous humanoid robots. The MRL project was started in 2003 in the Mechatronics Research Laboratory in Islamic Azad University, Qazvin branch looking onward to enhance the knowledge of robotics and the MRL humanoid kidsize soccer league is aimed to develop a human- oid platform for research and education. Our research center has the honor to hold the RoboCup IranOpen from 2003 to 2015. MRL has a successful history in RoboCup for many years. Our humanoid soccer playing team has participated in RoboCup and IranOpen Humanoid League in 2011, 2012, 2013 and 2014. In 2012, 2013 and 2014 we had the honor to be in the top 8 teams among 22 participating teams. This year we are planning to participate in the kidsize humanoid competition for the fifth time in
  • 2. IranOpen 2015 and RoboCup 2015 in Hefei, China. Our mission is to fulfill our study in motion control, vision, world modeling, artificial intelligence, and embedded sys- tem design. MRL Humanoid Kid Size team consists of two Ph.D., eight graduate, and eight undergraduate students from software, hardware, electronics, and mechatronics. The other team members are: Mahdi Yarahmadi, Hamed Torki, Ashkan Farhadi, Hamed Sharifi, and Pourya Shahverdi. 2 Overview of the System We will use DARwIn-OP (Dynamic Anthropomorphic Robot with Intelligence Open Platform) [1] and our new robot called Rabo in our soccer playing team for Ro- boCup2015. The kinematic structure of these robots can be seen in Fig.1. The actua- tors used in our robots are the MX28 and MX64 servo motors. Physical specifications of the robots are illustrated in Table 1. Our developments for the kidsize humanoid robot include the design and construction of modular software architecture based on the Upenn RoboCup released code [2]. The software contains robot applications in- cluding autonomous motion and walking controller, self-localization base on vision, planning, and communication. Table 1. Physical measurements of modified DARwIn. Feature DARwIn Height: 45.5 cm Weight: 2.8 Kg Walking Speed: 24 cm/s Degrees of freedom: 20 in total Servo motors: 20 MX-28 Sensors: Accelerometer, gyroscope Embedded PC board: Fit-PC2i Physical measurements of our new Robot Feature Rabo Height: 58 cm Weight: 5.2 Kg Walking Speed: 36 cm/s Degrees of freedom: 20 in total Servo motors: 20 MX-64 Sensors: Accelerometer, gyroscope Embedded PC board: Fit-PC2i Fig.1. kinematic structure of our robots.
  • 3. Considering the processing power of humanoid soccer playing robots, we need to use a customized operating system for special purposes. We have customized the Linux kernel for our robots in order to have a proper scheduling getting the best result. In fact we build up a light specific distribution of Linux for DARwIn-OP. We have im- proved some quality factors such as performance and running time by deploying our novel light distribution and using specific CPU scheduler, file system and customized kernel which only installs the minimum required libraries and applications. Instead of the GUI (Graphical User Interface), we have only provided BASH as a CLI (Com- mand Line Interface) user interface. We have also chosen the RSDL for scheduling processes in which the processes at the highest priority are allowed to execute and will be given the time slices [3]. For our file system we have deployed BRTFS. Con- sidering that our distribution is Debian-based, we use APT as package manager. Also we have implemented MUSH (MRL User Shell) to simplify and expedite the configu- ration, compilation and running multiple robots simultaneously. Each robot is able to detect the ball and goal by scanning the field, can walk towards the ball, and kick it when it catches the ball. The project is still in progress and some developed methods are described in the current report. Our robots consist of a USB camera, two embedded processing systems, gyro, acceleration and compass sensors, servo motors, batteries and some user interfaces such as switch and LED. Images are captured by the USB camera, the camera sends image signal to the main CPU board. The CPU processes the image data to detect positions of ball, goals, and other robots by a combination of color-based and shape-based image processing. A hybrid locali- zation method is employed to localize the robot in the soccer field. We also have used wireless communication between the robots. Exploiting the vision and network data we select the next behavior of the robot according to the robot role and the priority of the behaviors. The defined behaviors are composed of simple motions to support more complex tasks. 3 Motion Control One of the challenging research areas in humanoid robots is the walking and stabil- ity. In this section we introduce our methodology and the proposed evolutionary algo- rithm that is used to modify the DARwIn robot motion. Motion of joints in biped robots can be studied in two categories: a) movement position, b) angular position [4]. Mechanical methods are based on the dynamics of the robot and information from the environment. In our methodology we focus on angular positions of the joints and we use sinusoid equations to generate motion gait patterns for swing leg and we use pol- ynomial equations for support leg which leads to higher performance and stability during the walk. We have also used an evolutionary algorithm in tuning the parame- ters of robot motion. These parameters are the coefficients of equations that are set for each joint and create the sequence of joint angles for robot walking. The evolutionary algorithm that we use in this implementation is the PSO algorithm. We have produced single step cycles in 0.48s and record the angular position value of each joint in each 0.04s (angular position for both swing leg and support leg).
  • 4. 4 Robot Vision Vision is one of the most important interfaces for robot perception [5]. The main vision sensor is a camera that is located in the robot’s head. This camera model of DARwIn-OP is Logitech C905 that uses USB2 connection with 2 Megapixel 640×480 resolutions (up to 1600×1200, 10fps or 1280×720, 30fps) in YUYV color space. At the first step, we used V4L2 module to grab the raw output of the camera, then the grabbed image was converted to HSI color space and is mapped to the field’s colors, using a color look-up table to segment the image according to the color. One of the leading problems of this approach is its dependency to the light intensity and the other problem is that it takes a pretty long time to set the color look-up table manually. According to our previous research [6], the HSI color space is less affected in varia- tions in light intensity comparing to other color spaces. To solve the first problem we used HSI color space and for the second one, we deployed autonomous color look-up table which the TT-UT Austin villa team has already implemented [7]. Due to the changes of rules in humanoid robot league and changing the color of goals to white which has the same color with lines, distinguishing these two objects, is a new challenge of the league and thus we decided to use a new approach to detect line and goal simultaneously. To detect goals and lines, we first detect the white seg- ments using our customized RANSAC algorithm which is a learning technique to estimate the parameters of a model by random sampling of observed data. After de- tecting the segments, we should distinguish lines and goals. To accomplish this, we utilize the structure of the field lines, goal posts and the matrix of head position. 5 World Modeling World model is a key component in intelligent and autonomous robots. Modeling the system consist of a model for each static and dynamic object in the field. These models are formed by the incoming data from the sensors of the robot. Due to the noise and uncertainty of observations and limitations in humanoid sensors, tracking the surrounding environment of the robot is an important challenge. This year we have implemented models for self-localization and ball tracking and we are working on modeling obstacles. 5.1 Self-localization Self-Localization is a key problem in autonomous soccer playing robots. Making proper decision for the robot that is not aware about his position is impossible. With respect to the limited field of view and limitation in robot sensors, tracking the pose is a complex problem. Last year we utilized a hybrid method based on the MCL and EKF. This year we have implemented a new combined method that uses MCL sam- ples and UKF population. The key idea of this method is that kidnap and global local- ization problems can be handled by MCL as quickly as possible and the position tracking is done with UKFs accurately. To achieve this, we have used two types of
  • 5. hypothesis: MCL samples and a population of UKF. Every hypothesis has a weight that shows it effectiveness and is updated smoothly. Each MCL sample is a light hy- pothesis that is not good for tracking robot position. But it can be used for keeping a probable hypothesis about robot location for a short time. When absolute measure- ments mismatched with hypothesis, theses samples are created. One the other hand UKF hypothesis is more robust and we use them to track more probable location for long times. Initially the samples of MCL are distributed uniformly in the state space (if we ha- ven’t any prior information) and there isn’t any UKF hypothesis. These samples are updated with incoming measurements. When the samples are converged to a limited number of clusters and the number of UKFs does not exceed a maximum number, then for each cluster that its weight pass from a threshold a UKF hypothesis is re- placed by it and there is no need for updating the samples of that cluster. The efficien- cy of the proposed method is related to the clustering algorithm. Because it isn’t a trivial task and can take a huge time. In [9] a clustering algorithm is introduced that uses the intrinsic features of MCL and clusters the samples in linear time. We have used their method in our algorithm. Moreover, to manage the number of UKF hypothesis we remove the low weighed ones and merge two near UKF hypotheses. To evaluate the efficiency of our algo- rithm, we have done two experiments that measure the accuracy and ability to relocal- ization. The implemented methods are compared against one of the most stable locali- zation methods, called Temporal Smoothing MCL (TSMCL) [10]. As illustrated in fig 2. Our method outperforms the TSMCL. Fig. 2- Results of the accuracy and relocalization experiments. Top row shows the accuracy and bottom row shows the ability to recovering from kidnap. 0 0.5 1 1.5 2 2.5 3 3.5 1 276 551 826 1101 1376 1651 1926 2201 2476 2751 3026 3301 3576 3851 4126 4401 4676 4951 5226 5501 5776 6051 6326 6601 6876 7151 distance(m) Frames Distance Error MCL-UKF TSMCL 0 50 100 150 200 1 205 409 613 817 1021 1225 1429 1633 1837 2041 2245 2449 2653 2857 3061 3265 3469 3673 3877 4081 4285 4489 4693 4897 5101 5305 Angle(degree) Frames Angle Error MCL-UKF TSMCL 0 1 2 3 4 5 1 205 409 613 817 1021 1225 1429 1633 1837 2041 2245 2449 2653 2857 3061 3265 3469 3673 3877 4081 4285 4489 4693 4897 5101 5305 distance(m) Frames Distance Error MCL-UKF TSMCL 0 20 40 60 80 100 120 140 160 180 1 205 409 613 817 1021 1225 1429 1633 1837 2041 2245 2449 2653 2857 3061 3265 3469 3673 3877 4081 4285 4489 4693 4897 5101 5305 Angle(degree) Frames Angle Error MCL-UKF TSMCL
  • 6. Goal posts are the most important landmarks to update localization, however, be- cause of long distance between the goalie and opponent goal, the result of the estimat- ed position of the goalie would be unstable. Thus we decided to develop a specialized localization method to improve the mentioned defect. To accomplish this, we defined an uncertainty value ranged between 0 and 1. The higher this value, the more accurate position we have. As uncertainty decreases during the game, we should do the corre- sponding actions to improve it to get higher. Based on the uncertainty value, first we validate the current position and then using nearby landmarks around our goal, we try to correct the position by detecting more landmarks. This cycle will continue until the uncertainty threshold value is reached. 5.2 Co-Operative Occupancy Grid Map Considering the high probability of collisions in operational environment, ro- bots need to model the environment for intelligent activities like planning and obsta- cle avoidance. We have used a co-operative Occupancy Grid Map in which the ro- bot’s environment is divided into specific number of cells based on [10]. In our exper- iments, the robot’s field is divided into 5400 cells and each cell size is 10×10 centi- meter. The current state of each cell and the probability of being occupied is deter- mined with a floating point number between [0, 1], where 0 indicate free cells and 1 indicating occupied cells. We employed a count model for calculating this probability which is based on the number of times the cell has been occupied or free. The output of vision module which is FOV data of the robot is mapped on corresponding cell in Occupancy Grid Map using Bresenham line algorithm [12]. Then we update the count model counters according to the state of the cell, using the co-operative occupancy grid map which uses the other teammates’ data, we cover parts of the field which are not in robot’s field of view. Each robot broadcasts free and occupied counters of last seen cells as well as the ones received from its teammates; the new robot’s perception is preferable to the other robots data about that cell. This way robot has better knowledge of occupancy cells of the field which leads to a better game planning. In Fig 3, a sample scenario of generating co-operative occupancy grid map in collabora- tion with two robots of the blue team is shown. 5.3 Ball tracking Ball is the most important moving object in the field that should be tracked by every player in the field depending on its role. We use Kalman filter to decrease ball detection noise. After applying this filter we create a model of ball for each robot, including important data for behavior control layer. Our goal is to have a stable and reliable model. Vision data, odometry, kicking and passing, affect this model and also affect uncertainty of ball with specified ratios. Each robot playing in same team can share its own model with its teammates. We can also improve ball model of each robot by the means of other robot's ball model.
  • 7. a) Scenario in simulator b) OnBall Robot's OccMap c) Forward Robot's OccMap d) Co-Operative OccMap Fig. 3- Samples of angular positions for (a, c) Hip joint, (b) Knee joint, (d) Ankle joint. 6 Behavior Control Due to the essence of AI as our super-field, there is a spectrum of problems and their relevant spectrum of solutions. For handling this spectrum and with respect to the hierarchical structure of these problems as are described in [13] we have defined a simple hierarchical structure constituted from three layers. The top-most layer namely Game, the second layer is labeled as Player, and the bottom-most layer is Body. As our contributions in the behavior, firstly we have applied most of the improve- ments in the bottom layer as player’s action parameter optimization. In second layer we have implemented new path planning algorithm which uses Ferguson splines and particle swarm optimization (PSO) for planning optimum path through obstacles [14]. Experimental results indicate that in 92% of the configurations our new proposed method plans a path considering both length and safety. This year we concentrated on three problems. The first one is path planning and we implemented our proposed algorithm [15] on robot. Also we are working on another method for obstacle avoidance using a fuzzy system. We hope we can compare these two methods in several terms. The second problem is positioning which can be con- sidered as several sub-problems. Finding a solution to select the best position to pass the ball to another player has been one of the challenges in humanoid soccer robots. To solve this problem, we have developed a positioning algorithm using a Fuzzy Sys- tem to select that position. The Fuzzy system can output a good position based on the attacker's current position and the best free point in the occupancy grid map. The new
  • 8. approach however still needs optimization to work perfectly but early tests has proven that it is a successful system and will be as the backbone of the strategy in our future behavior plans. 7 Conclusion In this paper we have presented the specifications of the hardware and software of MRL kidsize humanoid robot system developed under the RoboCup 2014 rules. MRL commits to participate in RoboCup 2015 with further enhanced hardware and soft- ware based on the achievements of previous year and also commits to introduce a referee familiar with the rules of the Humanoid League. We use DARwIn-OP as our base platform and we have also designed a new robot called Rabo. We are working on this platform with about totally 20 graduate and undergraduate students modifying and optimizing the platform in vision, motion control, world modeling, self- localization, behavior, embedded control board, and also the robot embedded operat- ing system as is discussed in the related sections. Up to now we have 12 published papers in the related research fields. References [1] DARwIN OP, http://www.romela.org/main/DARwIn_OP:_Open_Platform_ Human- oid_Robot_for_Research_and_Education, retrieved Jan 2013. [2] Upenn RoboCup: Code, available online: https://fling.seas.upenn.edu/~robocup/ wiki/index.php?n=Main.Code, retrieved Jan 2013. [3] Shen Wang, Yu Chen, Wei Jiang, Peng Li, Ting Dai, Yan Cui “Fairness and Interactivity of Three CPU Schedulers in Linux” In 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA, pp. 172-177, 2009 [4] N. Shafii, S. Aslani, O. M. Nezami and S. Shiri, “Evolution of biped walking using truncat- ed fourier series and particle swarm optimization,” Springer, Robocup, pp. 344-354, 2010. [5] Rafael C. Gonzales and Richard E. Woods, Digital Image Processing, Prentice Hall, 2001. [6] Mojtaba Ghanbari, Reza Safdari, Ehsan Nazari, and Mostafa E. Salehi “Evaluating the Effect of Intensity Variations on Object Detection in Humanoid Soccer Playing Robots,” in Proceedings the 2013 RSI International Conference on Robotics and Mechatronics (ICROM 2013), in press, 13 -15 Feb 2013. [7] M. Sridharan and P. Stone, "Autonomous Planned Color Learning on a Mobile Robot Without Labeled Data," in Proc. of ICARCV, pp.1-6, 2006. [8] Wei Hong, Changjiu Zhou and Yantao Tian, Robust Monte Carlo Localization For Human- oid Soccer Robot, IEEE/ASME International Conference on Advanced Intelligent Mechatron- ics, 2009. [9]. T. Laue and T. Röfer, "Pose Extraction from Sample Sets in Robot Self-Localization - A Comparison and a Novel Approach," in 4th European Conference on Mobile Robots, Mlini/Dubrovnik, Croatia, 2009, pp. 283–288. [10]. W. Nisticò and M. Hebbel, "Particle Filter with Temporal Smoothing for Mobile Robot Vision-Based Localization," in Informatics in Control, Automation and Robotics. vol. 37, J. Cetto, J.-L. Ferrier, and J. Filipe, Eds., ed: Springer Berlin Heidelberg, 2009, pp. 167-180.
  • 9. [11] Bahareh Foroughi, Reza Safdari, Reza Kashkoee and Mostafa E. Salehi" Action Selection Using Co-Operative Occupancy Grid Map for Humanoid Soccer Robot", The 22nd Iranian Conference on Electrical Engineering ICEE 2014 (Under Review) [12] J. Bresenham, “Algorithm for computer control of a digital plotter,” IBM Systems Journal, vol. 4, no. 1, pp. 25–30, 1965. [13] Sven Behnke and Jorg Stuckler, “Hierarchical reactive control for a team of humanoid soccer robots,” IEEE-RAS International Conference on Humanoid Robots, pp. 622-629, 2007. [14] Wu Xianxiang, Ming Yan and Wang Juan, “An improved Path Planning Approach Based on Particle Swarm Optimization,” Hybrid Intelligent Systems (HIS), pp. 157-161, 2011. [15] R. Shakiba, M. Najafipour, and M. E. Salehi, "An improved PSO-based path planning algorithm for humanoid soccer playing robots," in AI & Robotics and 5th RoboCup Iran Open International Symposium (RIOS), 2013 3rd Joint Conference of, 2013, pp. 1-6.