Fuzzy Rule Extraction for Shooting Action Controller of Soccer Robot

1 downloads 0 Views 450KB Size Report
The other is the motion control level that outputs robot wheel velocities to ... Among the many problems of robot soccer system we fo- ... achieve shoot action.
Fuzzy Rule Extraction for Shooting Action Controller of Soccer Robot M.-J. Jung, H.-S. Kim, H.-S. Shim and J.-H. Kim Dept. of Electrical Engineering Korea Advanced Institute of Science and Tech.(KAIST) Yusung-gu, Taejon-shi, 305-701, Korea (E-mail : fmjjung, hskim, hsshim and [email protected]) Abstract A fuzzy logic controller (FLC) for shooting action is proposed which is one of the fundamental actions for soccer robots. Shooting action is viewed as a posture control problem with such a constraint that the robot should not approach the ball so that the ball moves to the home team area. The FLC consists of two levels: one is the planner level that generates a path to the ball with obstacle avoidance. The other is the motion control level that outputs robot wheel velocities to follow the desired path given the robot’s current posture. The effectiveness of the proposed scheme is verified by the real experiments.

[4]-[7]. In this paper we propose a fuzzy logic scheme to solve the same. The FLC consists of two levels: one is the planner level that generates a path to the ball with obstacle avoidance. The other is the motion control level that outputs robot wheel velocities to follow the desired path given the robot’s current posture. The effectiveness of the proposed scheme is verified by the real experiments. In Section 2 the overall fuzzy logic control structure is described which consists of a fuzzy planner and a fuzzy motion controller. They are explained in Sections 3 and 4, respectively. In Section 5 simulation and experimental results are reported. We conclude in Section 6 with some remarks on the results and future research.

1.Introduction Fuzzy logic has been used widely in controlling mobile robots, such as path following or local obstacle avoidance [1] [2]. In most cases the desired path is given by a higher level planner. In this paper we apply fuzzy logic to this planner level as well as to the motion control level in designing the shooting action controller of soccer robot. For the past three years the micro-robot soccer tournament (MiroSot) [3] has encouraged developing small mobile robot systems in terms of both hardware and software together. Many teams have shown their creativity in designing systems and optimizing their resources. Among the many problems of robot soccer system we focus on developing a controller for a low level mission of soccer robot. Shooting action is the fundamental function each robot should be able to perform. It can be viewed as a posture control problem in mobile robotics’ point of view (Figure 1). But because of the geometric relation between the ball, robot and each goal area, there are several constraints. In this paper the followings are considered:

 

The robot should approach the ball from the opposite side of the line connecting the ball and the opponent goal, The robot should avoid obstacles that are not very close to the ball on the field.

Such methods as uni-vector field method, geometric calculation method, and heuristics method have been utilized to solve these constraints so far in the robot soccer competitions

Figure 1: Robot soccer system and shooting action

2.Overall Fuzzy Control Structure

3.Fuzzy Planner

2.1.Robot Soccer System

Fuzzy planner is for generating a path globally that meets the constraints by calculating desired robot’s heading angle D at each relative position ; ' . It is again divided into two sub-blocks: one is a destination block generating a path that leads to the destination or the ball to meet the first constraint in Section 1. The other is an obstacle block to compensate  D for obstacle avoidance to meet the second constraint.

The system (Figure 1) consists of three parts: one is the vision system that locates objects on the field by the global camera fixed above the field. Second component is the host computer which calculates strategies and decides actions for each robot. The last one is the robot, which follows an action given by the host computer through radio frequency (RF) communication. Since the action is represented as a number of sequential motions, sometimes host computer sends each robot’s left and right wheel velocities rather than higher liguistic terms. In this paper the fuzzy logic controller implemented in the host computer generates and sends the velocities to the robot through RF communication.

( )

3.1.Destination Block This is for getting desired heading angle at each robot position. The robot’s relative position to the ball is represented in polar coordinates ; ' . Since the lower half plane is sym-

( )

2.2.Overall Fuzzy Controller Because of the constraints mentioned in Section 1, all components of the robot posture ; ';  are required to achieve shoot action. If the three components are to be elaborated into one fuzzy rule table, the number of rules could be very large because it increases by the factor of the number of term sets of each input variable. So the controller is decomposed into two sub-controllers (Figure 2) that each takes only two input variables. This will significantly reduces the number of rules and make it easier to design the controller. One is a fuzzy motion controller and the other is a fuzzy planner. This is for generating a global path connecting the present robot position to the ball, meeting the constraints. The fuzzy motion controller then commands robot wheel velocities to follow this desired path given the current robot posture.

(

)

Figure 3: Input space (upper half plane) metric to x-axis, only the upper-half plane is considered as in Figure 3. The input and output spaces and their membership functions are depicted in Figures 4 and 5, respectively. The linguistic values of each variable are labelled with numbers for notational convenience.

( )

1. Input space ; ' : relative position of the robot to the ball,  2 [0cm, 100cm] ' 2 [0, 180 deg.] 2. Output space ( D ): desired heading angle at that position, D 2 [-180 deg., 180 deg.]

Figure 2: Overall fuzzy control structure

3. Rules for destination block To obtain fuzzy rules that generate smooth  D , Wang and Mendel’s method is adopted [8]. The numerical data are obtained by a number of rollings of a soccer robot manually on the plane as in Figure 6. The encoder data of each wheel sampled at 10ms are recorded at the soccer robot SOTY-III’s RAM and later retrieved through RS-232C serial cable to PC. Odometry error caused by wheel slippage and discrete manipulation of data is ignored here. Figure 6 shows how a two wheeled-mobile-robot should approach the ball from any position in the input domain. Wang and Mendel’s idea is to map input-output that have the largest value

Figure 6: Data acquired by manual rollings

Figure 4: Membership functions of  and '

Figure 5: Membership functions of  D of the multiplication of their membership values. From this numerical data and with the methodology 80 rules are obtained. The rule table for the destination block is in Table 1. 3.2.Obstacle Block This block is to modify  D if there are any obstacles nearby. Two variables,  obs and D 'obs , are utilized to obtain the modified angle  off .

(

)

1. Input space( obs , D 'obs ): relative position of the obstacle, obs 2 [0cm, 100cm] D 'obs 2 [-180 deg., 180 deg.] 2. Output space  off : offset angle added to  D , off 2 [-180 deg., 180 deg.] 3. Rules for obstacle block

Figure 7: Membership functions of  obs and D

'obs

Heuristics are utilized for making rules. Obstacles are considered only when they come close and in front of the robot. But the obstacle avoidance block is implemented in the planner level, and  D , rather than , is considered. If the distance is short and obstacles are on the direction of  D , D is modified to avoid the obstacles. The angle consideration is that if  D is close to 'obs and the distance is short, turn more than  D by off . The resultant rule table for the obstacle block is in Table 1. 4.Fuzzy Motion Controller In the overall structure of Figure 2, the fuzzy motion controller block receives  D from the fuzzy planner block and part of robot posture information ;  from the vision. Then the motion controller block generates appropriate left and right wheel velocities to follow  D by  before  diminishes.

( )

Figure 8: Membership function of  off D ' 1 2 3 4 5 6 7 8 9 10

 1 10 10 10 10 10 10 10 10 10 10

2 15 15 16 17 18 3 4 6 8 10

3 16 2 3 4 5 6 7 8 9 10

4 17 18 18 2 3 4 4 7 8 10

5 18 18 19 1 2 4 5 6 8 10

6 18 18 19 2 2 3 5 7 8 10

7 18 18 1 19 2 4 5 6 9 10

8 18 18 1 19 3 4 6 7 9 10

 off  D 'obs 1 2 3 4 5 6

obs

1 3 2 1 5 4 3

2 3 3 3 3 3 3

Table 1: Rules for destination (left) and obstacle (right) blocks

Figure 9: Membership function of  and  e

In fact, this will not happen unless  converges to  D . So motion controller is concerned only controlling robot heading angle  to be  D with the positive linear velocity. For this conventional problem of mobile robots, following heuristics are adopted:

 If  large ! vL ; vR large  If je j = jD (+off ) j large ! jvL

(

j

vR large

)

1. Input space ;  e : posture error of the robot to the ball and the path,  2 [0cm, 100cm] e 2 [-180 deg., 180 deg.]

(

)

2. Output space v L ; vR : desired left and right wheel velocities, vL ; vR 2 [-6 cm/s, 20 cm/s] 3. Rules According to above heuristics, 21 rules are acquired for left and right wheel velocities as in Table 2. 5.Simulation and Experiment 5.1.Simulation Simulation is performed based on the following robot kinematics: (k + 1) x(k + 1) y(k + 1)

= = =

v (k)  (k ) + R

D

vL (k)

x(k) +

vR (k) + vL (k)

y(k) +

vR (k) + vL (k)

2

2

 Ts

(1)

 cos

(k) + (k + 1)

 sin

(k) + (k + 1)

2

2

 Ts

(2)

 Ts

(3)

Figure 10: Membership function of v L , vR Robot’s physical quantities are

  

wheelbase (D) = 6.7 cm wheel radius (r) = 3.15 cm

( )

sampling interval T S = 10 ms.

Figure 11 shows the simulation results with and without the obstacle avoidance block. The initial heading angle of all the trials is 0 deg. In the simulation it was observed that smooth velocity profiles were generated as shown in Figure 12. The obstacles are marked with ’o’ and they are well avoided as seen from Figure 11. Since heuristics are utilized for this algorithm it is not for sure how big obstacles can be avoided. Tunings for desired repulsive force are required in real situation. We assumed that the obstacle was of radius 4cm, and in the experiment these fuzzy rules showed obstacle avoidance capability.

vL e

1 2 3 4 5 6 7



1 5 5 5 5 4 3 2

2 8 8 8 8 7 6 5

3 12 12 12 12 9 8 7

vR e

1 2 3 4 5 6 7



1 2 3 4 5 5 5 5

2 5 6 7 8 8 8 8

3 7 8 9 12 12 12 12

Table 2: Rules for motion block

Figure 11: Simulation results with and without obstacles

Figure 12: Velocity profile when (x s ; ys ; s ) = (30, 15, 0 deg.)

Figure 13: Control panel of host computer 6.Conclusions

5.2.Experiment Experiments were performed with the real micro robot soccer system (Soty-III, Figure 1). The system specifications are: vision (Meteor) is 60 Hz of 640  480 resolution and the robot is of 1.5 m/s maximum speed and equipped with a RF module and batteries. The vision detects the ball and robots’ positions, the FLC is infered to output the desired left and right wheel velocities, then the calculated velocity commands are sent to the robot through the RF communication module. The on-board PID speed control chips in the robot then command the wheel speeds. Figure 13 shows the control panel showing on the host computer screen. In the simulation, all the scale factors for the input and output of FLC blocks were one. But during the experiments it was found that the final FLC rules still worked fine with the output scale factor of wheel velocity set to two. For scale factors more than two, tuning for the rule table was required. It is observed that the FLC generates smooth wheel speeds that leads smooth path of the robot. The maximum velocity was 40cm/s and minimum was -12cm/s (with the output scale factor of 2). With the presence of obstacles the desired angle D was well modified by the obstacle block in the planner so that the path avoided them and the robot was well following the desired path. The success rate to reach the ball at the desired angle (0 deg.) was more thatn 80 , but that of shooting into the goal area reduced to around 40 . This is due to the fact that near the ball, it is very critical to steer the robot heading angle so that the robot pushes the ball precisely with enough force.

%

%

A fuzzy logic controller (FLC) for shooting action of soccer robot was proposed. Shooting action is tackled as a posture control problem with such a constraint that the robot should approach the ball in such a way that the ball goes to the opponent team area. Fuzzy rules were generated from numerical data and heuristics as well. Two sub-blocks of the FLC enable the mission with total 113 rules covering all three dimensional input spaces. Simulation and experimental results show that proposed FLC works well. Fine tuning and optimization of the fuzzy rules are needed for further work. The motion of the ball should be also considered in the optimizing process. References [1] S. Ishikawa, “A method of autonomous mobile robot navigation by using fuzzy control,”Advanced Robotics, Vol. 9, No. 1, pp.29-52, 1995. [2] J. S. Choi, J. S. Joo, ”FLC for Tracking Problem of Mobile Robot with Obstacle Avoidance,” Intelligent Control Class term project report, Dept. of Electrical Engineering, KAIST, 1996. [3] MiroSot homepage at http://www.fira.net [4] Y.-J. Kim, D.-H. Kim, J.-H. Kim,“Evolutionary Programming-Based Vector Field Method for Fast Mobile Robot Navigation,” The Second Asia-Pacific

Figure 14: Experimental results with or without obstacle Conference on Simulated Evolution And Learning (SEAL’98), Session 9, 1998. [5] G. Springer, P. Hannah, R. J. Stonier, S. Smith, P. Wolfs, “Simiple strategies for collision-avoidance in robot soccer,” Robotics and Automous Systems, Vol.21, No. 2, pp. 191-196, 1997. [6] H. -S. Shim, H.-S. Kim, M.-J. Jung, I.-H. Choi, J.-H. Kim, J.-O. Kim, “Designing distributed control architecture for cooperative multi-agent system and its realtime application to soccer robot,” Robotics and Automous Systems, Vol.21, No. 2, pp. 149-166, 1997. [7] Proceedings of the 1st Workshop on Soccer Robotics (Korean), Federation of International Robot-soccer Association (FIRA), 1999. [8] Li-Xin Wang, J. M. Mendel, “Generating Fuzzy Rules by Learning from Examples,” IEEE Transactions on Sys., Man, and Cybernetics, Vol. 22, No. 6, pp.14141427, 1992.

Suggest Documents