A Selection Scheme for Excluding Defective Rules of Evolutionary Fuzzy Path Planning Jong-Hwan Park1 , Jong-Hwan Kim2 , Byung-Ha Ahn1 , and Moon-Gu Jeon1 1
2
Dept. of Mechatronics, Gwangju Institute of Science and Technology, South Korea {jhpark, bayhay, mgjeon}@gist.ac.kr Dept. of Electrical Engineering and Computer Science, Korea Advanced Institute of Science and Technology, South Korea
[email protected]
Abstract. This paper proposes a new selection mechanism in evolutionary algorithm for fuzzy systems that can be applied to robot learning of shooting ability in robot soccer. In generic evolutionary algorithms, evaluation and selection are performed on the chromosome level, where a selected chromosome may include non-effective or bad genes. This may lead to an increase in the uncertainty of the solutions. To solve this problem, we propose a rule-scoring method for gene level selection, which grades genes at the same position in the chromosomes. This method is applied to a fuzzy path planner for the shooting of a soccer robot, where each fuzzy rule is encoded as a gene. Simulation and experimental results show the effectiveness and the applicability of the proposed method.
1 Introduction Fuzzy logic control has been proven effective for complex, nonlinear, and imprecisely defined processes for which standard analytical model-based control techniques are impracticable [1,4]. However, a common bottleneck encountered is that the derivation of fuzzy control rules is often time consuming and difficult, and relies to a great extent on so-called process experts. An automated way to design fuzzy systems might be preferable. Therefore, more attention has been paid to the problem of how to construct a suitable rule base for a given task, and numerous researches have been conducted to automate the knowledge acquisition step in a fuzzy system design using evolutionary algorithms (EAs) [10,12]. The evolutionary fuzzy systems employ the paradigm of chromosomes whose components are rules as genes. While the chromosomes are struggling to survive, all the rules are not used every time, but a part of them is used for carrying out fuzzy reasoning. Accordingly, one best rule (gene) for a certain state may not be used for another state or even may negatively affect other states. Since the rule sets are evaluated and selected on a chromosome level, a defective gene contributing to few cases can survive to deteriorate the performance of other cases. Therefore, the convergence of the evolutions has a variance and brings out uncertainty, and the reliability of solutions is damaged. To overcome this problem, we propose a rule-scoring methodology to deal with each gene in a selection step. In evaluation, each gene in a chromosome is graded by a score for survival competition and the parents for the next generation are reproduced on the Q. Yang and G. Webb (Eds.): PRICAI 2006, LNAI 4099, pp. 747–756, 2006. c Springer-Verlag Berlin Heidelberg 2006
748
J.-H. Park et al.
basis of superiority among the genes at the same position of chromosomes in the population (that are equivalent to alleles). We calculate the variance to compare solution reliability of the proposed approach with that of the conventional methodology. Evolutions are repeatedly carried out for a fuzzy inference system, and solution distributions are examined in a simulation analysis. As a result, the small variance in solutions shows that the consistency improves. The proposed method also brings better performance with fast convergence. Moreover, the real robot also runs faster with small variance of the records in repeated experiments. The evolved fuzzy system to be examined in this study is a path planner for shooting in robot soccer. The shooting behavior is a fundamental function, and it can be viewed as a posture control where the non-holonomic constraints of wheeled mobile robots make it difficult to derive a stable trajectory control law [9]. The fuzzy logic controller (FLC) providing shooting ability consists of two levels: the fuzzy planner and the fuzzy motion controller [11]. The path generated by the fuzzy planner consists of singleton values for the direction at sampled positions for the optimal trajectory to the ball, like a univector field [8]. This paper is organized as follows. In Section 2, the overall structure of the FLC is described, in which a fuzzy planner and a fuzzy motion controller are developed for posture control. Section 3 explains the evolutionary fuzzy system and the rulescoring methodology. The proposed scheme is analyzed in both simulations and experiments for a robot soccer system in Section 4. Finally, concluding remarks follow in Section 5.
2 Fuzzy Controller and Target System 2.1 Fuzzy Logic Controller FLCs are rule-based systems that successfully incorporate the flexibility of humandecision making into autonomous machinery by means of the use of fuzzy set theory. Rules take the form of IF conditions THEN actions, where conditions and actions are linguistic terms which are described by membership functions. The fuzzy rule-base of the FLC is composed of a number of such fuzzy rules, and this rule-base is used to produce precise output values according to actual input values. The fuzzy membership function for the i-th variable is defined as an triangle, and singleton membership functions are used as the output fuzzy sets in order to simplify the defuzzification method [5,8]. This paper employs Mandani’s style MIN-MAX type inference engine and the center of average defuzzification, since this combination yields the basic implementation of the fuzzy control algorithm. 2.2 Robot Soccer System with Fuzzy Controller The robot soccer system for MiroSot [7,13] consists of three parts: a visual function of locating objects on the field, a host computer which calculates strategies and decides actions, and robots which follow actions transmitted by the computer as shown in figure 1. The fuzzy logic controller implemented in the host computer generates and sends the
A Selection Scheme for Excluding Defective Rules
Host Computer
Y
Ball
Goal
X
ϕ ρ
ρ θ
Visual Function
ϕ v
749
X
Robot
(a) Variables for robot condition
θ
x,y
Fuzzy Planner Destination
Fuzzy Motion Controller vL, vR
Robot
(b) System architecture
Fig. 1. Overall structure of fuzzy posture controller
velocities to the robot through radio frequency communication to enable the shooting of the robot. The three posture variables (ρ, ϕ, θ) (Fig. 1(a)) are required to achieve shooting ability. The controller is decomposed into two sub-controllers (Fig. 1(b)) in a hierarchical manner in which each takes only two variables as input. One of the sub-controllers is the fuzzy planner and the other is the fuzzy motion controller. The planner is for generating a global path connecting the present robot posture to the ball, meeting the non-holonomic constraints. The fuzzy motion controller then commands using robot wheel velocities the robot to follow this desired path at the current robot posture. Fuzzy Planner. The fuzzy planner is for generating a path globally that satisfies the constraints by calculating the desired robot’s heading angle θD at each relative position (ρ, ϕ) in polar coordinates. Since the lower half plane is symmetric to x-axis, only the upper-half plane can be considered. The input space is divided into 7 membership functions of isosceles triangle from at intervals of 10 cm for ρ and 30 degree for ϕ, respectively. The forty-nine rules are obtained using θD at sampled positions by evolutionary algorithm. Fuzzy Motion Controller. In Figure 1, the fuzzy motion controller receives θD from the fuzzy planner and robot posture information (ρ, θ) from the vision. Then the motion controller generates appropriate left and right wheel velocities to make θ following θD . For this conventional problem of mobile robots, the following heuristics are incorporated: – If ρ large → vL , vR large – If |θe | = |θD − θ| large → |vL − vR | large Table 1 shows the rule for right wheel velocity. Left wheel velocity is symmetrical with respect to θe = 0 and one unit corresponds to 1.534 cm/sec in the table.
750
J.-H. Park et al. Table 1. Rules for right wheel velocity vR θe NB NM NS ZE PS PM PB
NE -35 -25 -15 30 15 25 35
AN -27 8 15 30 40 51 63
SN -27 8 22 50 44 51 63
ρ MD -3 18 35 60 65 61 67
SF -3 31 57 90 82 68 67
AF -3 31 67 100 92 68 67
FA -3 42 67 100 92 77 67
Y
θe
tl
X
ye Fig. 2. The performance factors of shooting ability
3 Evolutionary Fuzzy System 3.1 Evolutionary Learning of Fuzzy System In this paper, we simply define the rule combination set, Ri , as a chromosome in which the rule, ri,h is contained in h-th gene of i-th chromosome, because all the membership functions are defined as isosceles triangles for partitioning input space and singleton values for output variables as described in Section 2. Mutation is the self-adaptive Gaussian operator which is commonly used in evolutionary algorithms [6]. The selection scheme is based on q-tournament. A (μ, λ)evolution strategy [2] is used, and an elite chromosome is preserved by the elitism [3]. The performance index (P I) of the i-th chromosome is defined as the sum of evaluations for j-th training trajectories as follows: Kt · tl + Kp · |θe | + Kd · ye2 , (1) P Ii = j
where Kt ,Kp and Kd are coefficients for weights. How well the robot has shot the ball is evaluated in three parts, elapsed time to reach the ball, tl , heading direction error, θe , and drift at an impact point, ye , to transfer the momentum to the ball. Fig. 2 shows these three parameters for a kicking situation.
A Selection Scheme for Excluding Defective Rules
751
60
B
C
40
A
20
0 -60
-40
-20
0
20
40
60
(a) r11
0.2
A
Firing Ratio
0.1 0 0.2
B
0.1 0 0.2
C
0.1 01
7
14
27
21
Fuzzy Rules
35
42
49
(b) Fig. 3. Rule firing ratio for trajectories, A, B and C
3.2 Rule-Score Selection Method Generic EA to obtain the optimal parameters of an evolutionary fuzzy system requires training for many points in the input space. When the evolutionary fuzzy system works with a given chromosome (rule set), all the genes (rules) may not contribute to the result of each training case. Only a part of genes is employed to obtain the result for a training point. Even if the fitness of a chromosome is excellent, inferior genes in the chromosome can survive, because the EA evaluates and selects chromosomes on the basis of their total fitness. Figure 3 shows the normalized rule firing ratio for three trajectories (A, B and C) for a given fuzzy planner and uneven activation of rules. Let us assume that the rule set performs well for cases B and C, but not for case A. Rule r11 does not positively contribute to overall fitness, because it only triggers for the poor case A. As the evaluation in the conventional EA is carried out on the chromosome level, when the fitness of the chromosome is better than that of others, it will be selected. Thus, the rule r11 that performs poorly for A, will survive, since it is in the same chromosome that performs well generally. However rule r11 should be changed in order to search for a better solution at the other training point. Obviously, the evaluation on the level of gene should be considered for a better solution. As the contributions being calculated and compared, the genes are distinguished from each other and the chromosome can be recomposed to remove the inferior genes.
752
J.-H. Park et al.
… … … …
… …
… …
R1:
r
r
Ri :
ri,1
ri,2
Rλ:
rλ,1
rλ,2 … rλ,h … rλ,49
1,1
r r 1,2 … 1,h … 1,49 … ri,h
… ri,49
λ Chromosomes: Evaluate RS
Selection:
… … … …
… …
… …
R'1:
r3,1
r12,2 … r15,h … r5,49
R'i:
r18,1
r14,2 … r11,h … r9,49
R'μ:
re,1
re,2
Ranked by RS
μ Parents: Rearrange genes
… re,h … re,49
Fig. 4. Reproduction with rule score ranking
The fuzzy system can compute each rule’s contribution by its firing strength, and can rearrange the rules on the same column in chromosomes. Based on these properties, we propose a rule-scoring method as a new selection scheme in evolutionary fuzzy systems. The rule-scoring method has two steps: calculation of each rule score (RS) and reproduction. The rule score is calculated to grade rules on the same column in rule sets. The rule score considers firing rate of each rule (gene) and its achievement for each training case. First, we calculate the firing strength ratio of h-th rule of i-th rule set for j-th training case as follows: wh , (2) Fi,j (h) = w h h i,j t where wh is the firing strength of the h-th rule and t is the travel time to the ball. Then, we normalize the firing ratio of each rule for the trajectory by Fi,j (h) . RFi,j,h = h Fi,j (h)
(3)
Hence, the rule score for h-th rule in the i-th rule set for m training cases is obtained as RSi,h =
m
(RFi,j,h × CWi,j ),
(4)
j=1
where CWi,j is the count of wins of the i-th rule set among n rule sets by q-tournament for the j-th training case. The next step is shown in figure 4 to reproduce the parents for next generation. The rule set, Ri , i = 1, · · · , μ, is recombined at the gene-level. The genes are ranked on the basis of their score in the same column (position) of chromosomes. The genes of the first rank in each position, h, are collected into the first chromosome, R1 and the genes of the second rank make a second one, R2 and so on. Through this process, eventually an appropriate chromosome is obtained.
A Selection Scheme for Excluding Defective Rules
753
4 Evolutionary Learning and Experiments 4.1 Robot Soccer System To demonstrate the effectiveness and applicability of the proposed method, evolutionary learning of the fuzzy rules and real robot experiments were performed for the shooting ability of a soccer robot for MiroSot [7,13]. The MiroSot soccer playing field is of size 220cm × 180cm. and the dimension of soccer robot itself with two driving wheels, is 7.5cm × 7.5cm × 7.5cm. For real robot manipulation, the vision system consists of a Samsung SDC410 CCD camera with a MATROX Meteor-II image grabber that operates at a rate of 60 frames/second. The host computer is a Pentium processor with a clock speed of 2GHz. The vision system extracts an estimate for the posture information of both robot and ball, which is then transmitted to the FLC’s. The path planning and control algorithms were implemented using Visual C++ 6.0. 4.2 Evolution Results The evolutionary learning techniques introduced in the previous section were used to assist in the generation of the fuzzy rules for the path planning algorithm. Given the robot size (7.5cm) and the ball diameter (4.27cm), the robot is required to be stopped when the center of robot arrived at a distance of within 5 cm from the ball position and calculate performance index by eq. (1) in simulation. Because the fuzzy planner consists of 49 rules for generating θD , a chromosome consists of 49 genes which represent each rule. The evolutionary algorithm introduced in Section 3 was performed using a (μ, λ) strategy where the number of parents (μ) and offspring (λ) were set to 10 and 20, respectively. The q-tournament selects 10 competitors in each round. The coefficients to calculate the PI of eq. (1) were manually tuned and finalized at Kt = 10, Kp = 1 and Kd = 3. Forty-eight points were selected for an exercise in which all the genes were used at least once. The evolutionary algorithm was evolved for 3,000 generations in both the conventional and proposed rule-scoring methods. To conduct statistical analysis, the evolutionary algorithm was applied to each method 62 times. Table 2 shows that the proposed method performs better with smaller mean value standard deviation, and figure 5 demonstrates faster convergence. Moreover, the coefficient of variation was reduced by about 50% on average. These results imply a tendency for the proposed algorithm to consistently find more optimal solutions than the conventional method. Table 2. Converged performance index Algorithm Mean Std Conventional 434.39 45.88 Rule-score selection 382.51 15.22
J.-H. Park et al.
6000
500
Average of Performance Index
480
Conventional
5000
460
Rule Scoring 4000
440 3000
420 400
2000 380 1000 360 0
0
500
1000
1500
2000
2500
Distribution of Converged Performance Index
754
340
3000
Generations
(b)
(a)
Fig. 5. Convergence of performance index and standard deviation
4.3 Experimental Results In order to validate the applicability of the proposed rule-scoring method, the mobile robot was required to show an improvement in shooting ability. Kicking was tested with 27 randomly selected rule sets generated from both conventional and proposed methods. The robot was initialized from five distinct positions with various facings as shown in Figure 6. To compensate for variation from the noise caused by physical disturbances and errors, the robot was tested with five kicks for each combination of starting point and applied rule set. Subsequently this resulted in 135 kicks for each method at a particular point and 1,350 kicks in total. The elapsed traveling time (along the path) was used to evaluate the path effectiveness and its statistical analysis is shown in Table 3. The results indicate the proposed rule-scoring method consistently generates paths that have shorter elapsed times with significantly reduced variation. Table 3. Elapsed time for shooting in experiments (sec) Start point A B C D E Average
Conventional Mean Std 2.60 0.33 2.23 0.28 1.93 0.28 1.73 0.23 1.77 0.22 2.05 0.27
Rule-scoring Mean Std 2.33 0.14 2.00 0.11 1.71 0.10 1.60 0.06 1.59 0.07 1.85 0.09
Figure 6 illustrates several shooting solutions generated by both conventional and proposed rule-scoring methods. Figure 6(a) shows several trajectories generated by an applied rule set derived using the conventional method. As discussed earlier, chromosomes could be trapped in a local minimum, when they had relatively high PI including inferior genes (rules). The chromosomes were selected and defective rules were survived, and these often had genes (rules) that were only triggered for the paths on
A Selection Scheme for Excluding Defective Rules 70
Robot Ball
60
D
y(cm)
50
755
C
40 30 20
B
E
10 0
A
-10 -60
-40
-20
0
20
x(cm)
40
60
80
100
(a) Conventional method 70 60
D
y(cm)
50
Robot Ball
C
40 30 20
B
E
A
10 0 -10 -60
-40
-20
0
20
x(cm)
40
60
80
100
(b) Proposed method Fig. 6. Experiment of robot shooting
which they performed poorly. Consequently, evolution of these genes (rules) did not occur and the final rules needed for these poorly evolved points remained inferior. In contrast, chromosomes holding genes (rules) which might better evolve solutions from these points might undergo bad fitness (relatively low PI) from the other points, and subsequently died out. This is clearly seen in the diagram where paths generated for D and E provide successful solutions, however the remaining paths for A, B and C deviate undesirably. Alternatively, the proposed rule-scoring method discriminates among genes using the strength of the rules in the evolutionary process. This helps to eliminate defective rules and allows for evolution of superior rules more evenly spread across the entire input space. This is perfectly illustrated in figure 6(b).
5 Conclusion In this paper, a new selection scheme was proposed which evaluated chromosomes on the gene level. The method scores rules on the same column of the chromosomes for selection and rearranges the rules for reproducing parents, on the contrary of conventional EA working on the chromosome level. The simulation and experiment were performed for path planning for shooting in robot soccer. The results of evolutions showed that
756
J.-H. Park et al.
the proposed method performs better, with fast convergence and smaller standard deviation. It also maintains consistency that suggests evolved solutions are more reliable. The experiments also showed that the robot following paths evolved by the proposed method ran faster with lower variation of performance.
Acknowledgement This research is supported by the Ubiquitous Computing and Network (UCN) Project, the Ministry of Information and Communication (MIC) 21st Century Frontier R&D Program in Korea.
References 1. T. J. Procyk and E. H. Mamdani, “A linguistic self-organizing process controller,” Automatica, Vol.15, pp.15-30, 1979. 2. H.-P. Schwefel, Numerical Optimization of Computer Models. Chichester, UK:John Wiley, 1981. 3. D. E. Goldberg, Genetic Alogrithms in Search, Optimization, and Machine Learning. Addison-Wesley,1989. 4. C. C. Lee, “Fuzzy logic in control system: fuzzy logic controller-part I and II,” IEEE Trans. Syst. Man Cybern., Vol.20, 1990. 5. M.Mizumoto, “Fuzzy controls by fuzzy sington-type resoning method,” Proc. of the Fifth IFSA world congress, Seoul, Korea, pp.945-948, 1993. 6. T.B¨ack and H.-P.Schwefel,“An overview of evolutionary algorithms for parameter optimization,” Evol. Comput., Vol.1, pp.1-23, 1993. 7. J.-H. Kim, Ed., Robotics and Autonomous Systems, Special Issue: First Micro-Robot World Cup Soccer Tournament, MiroSot, vol. 21, no. 2, Sept. 1997. 8. Y.-J. Kim, J.-H. Kim and D.-S. Kim, ”Evolutionary Programming-Based Uni-vector Field Navigation Method for Fast Mobile Robots”, IEEE Trans. on Systems Man and Cybernetics - Part B - Cybernetics, vol. 31, no. 3, pp. 450-458, Jun. 2001. 9. J.-M. Yang and J-H. Kim, “Sliding Mode Control for Trajectory Tracking of Nonholonomic Wheeled Mobile Robots,” IEEE Transactions on Robotics and Automation, Vol.15, No.3, Jun. 1999. 10. S.-J. Kang, C.-H. Woo, H.-S. Hwang, K.B. Woo, “Evolutionary design of fuzzy rule base for nonlinear system modeling and 5control,” IEEE Transactions on Fuzzy Systems, Vol.8, No.1, pp37 - 45, 2000. 11. M.-S. Lee, M.-J. Jung, J.-H. Kim, “Evolutionary programming-based fuzzy logic path planner and follower for mobile robots,” Proceedings of the 2000 Congress on Evolutionary Computation, Vol.1, pp.139 - 144., 2000. 12. W. Pedycz and M. Reformat, “Evolutionary Fuzzy Modeling,” IEEE Trans. Fuzzy Syst., Vol.11, No.5, pp.652-665, Oct. 2003. 13. J.-H. Kim, D.-H. Kim, Y.-J. Kim, K.-T. Seow, Soccer Robotics (Springer Tracts in Advanced Robotics), Springer Verlag, 3540218599, 326, 326, Sep. 2004.