Upload
patricia
View
213
Download
0
Embed Size (px)
Citation preview
This article was downloaded by: [Dicle University]On: 02 November 2014, At: 06:04Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House,37-41 Mortimer Street, London W1T 3JH, UK
International Journal of General SystemsPublication details, including instructions for authors and subscription information:http://www.tandfonline.com/loi/ggen20
Hierarchical genetic algorithms for topologyoptimization in fuzzy control systemsOscar Castillo a , Fevrier Valdez a & Patricia Melin aa Division of Graduate Studies and Research , Tijuana Institute of Technology , P.O. Box4207, Chula Vista, CA, 91909, USAPublished online: 26 Oct 2007.
To cite this article: Oscar Castillo , Fevrier Valdez & Patricia Melin (2007) Hierarchical genetic algorithms fortopology optimization in fuzzy control systems, International Journal of General Systems, 36:5, 575-591, DOI:10.1080/03081070701321860
To link to this article: http://dx.doi.org/10.1080/03081070701321860
PLEASE SCROLL DOWN FOR ARTICLE
Taylor & Francis makes every effort to ensure the accuracy of all the information (the “Content”) containedin the publications on our platform. However, Taylor & Francis, our agents, and our licensors make norepresentations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of theContent. Any opinions and views expressed in this publication are the opinions and views of the authors, andare not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon andshould be independently verified with primary sources of information. Taylor and Francis shall not be liable forany losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoeveror howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use ofthe Content.
This article may be used for research, teaching, and private study purposes. Any substantial or systematicreproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in anyform to anyone is expressly forbidden. Terms & Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions
Hierarchical genetic algorithms for topology optimizationin fuzzy control systems
OSCAR CASTILLO*, FEVRIER VALDEZ and PATRICIA MELIN†
Division of Graduate Studies and Research, Tijuana Institute of Technology, P.O. Box 4207,Chula Vista, CA 91909, USA
(Received December 2006; in final form 8 February 2007)
We describe in this paper the use of hierarchical genetic algorithms (HGA) for fuzzy system optimizationin intelligent control. In particular, we consider the problem of optimizing the number of rules andmembership functions using an evolutionary approach. The HGA enables the optimization of the fuzzysystem design for a particular application. We illustrate the approach with two cases of intelligent control.Simulation results for both applications show that we are able to find an optimal set of rules andmembership functions for the fuzzy control system.
Keywords: Fuzzy control system; Hierarchical genetic algorithms; Membership functions; Neuralnetwork
1. Introduction
We describe in this paper the application of a Hierarchical Genetic Algorithm (HGA) for
fuzzy system optimization (Man et al. 1999). In particular, we consider the problem
of finding the optimal set of rules and membership functions for a specific application
(Yen and Langari 1999). The HGA is used to search for this optimal set of rules and
membership functions, according to the data about the problem. We consider, as an
illustration, the case of a fuzzy system for intelligent control (Castillo et al. 2004).
Fuzzy systems are capable of handling complex, non-linear and sometimes
mathematically intangible dynamic systems using simple solutions (Jang et al. 1997).
Very often, fuzzy systems may provide a better performance than conventional non-fuzzy
approaches with less development cost (Procyk and Mamdani 1979). However, to obtain an
optimal set of fuzzy membership functions and rules is not an easy task (Langari 1990).
It requires time, experience and skills of the designer for the tedious fuzzy tuning exercise
(Valdes et al. 2005). In principle, there is no general rule or method for the fuzzy logic set-up,
although a heuristic and iterative procedure for modifying the membership functions to
improve performance has been proposed (Sepulveda et al. 2005). Recently, many
International Journal of General Systems
ISSN 0308-1079 print/ISSN 1563-5104 online q 2007 Taylor & Francis
http://www.tandf.co.uk/journals
DOI: 10.1080/03081070701321860
*Corresponding author. Tel. 1 526 623 6318. Email: [email protected]†Email: [email protected]
International Journal of General SystemsVol. 36, No. 5, October 2007, 575–591
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
researchers have considered a number of intelligent schemes for the task of tuning the fuzzy
system (Baruch and Garrido 2005). The noticeable Neural Network (NN) approach (Jang and
Sun 1995) and the Genetic Algorithm (GA) approach (Homaifar and McCormick 1995) to
optimize either the membership functions or rules, have become a trend for fuzzy logic
system development.
The HGA approach differs from the other techniques (Davis 1991) in that it has the
ability to reach an optimal set of membership functions and rules without a known fuzzy
system topology (Tang et al. 1998). Of course, the optimal solution can only be found if
the appropriate parameters of the HGA are selected. During the optimization phase, the
membership functions need not be fixed. Throughout the genetic operations (Holland
1975), a reduced fuzzy system including the number of membership functions and fuzzy
rules will be generated (Yoshikawa et al. 1996). The HGA approach has a number of
advantages:
(1) an optimal with the least number of membership functions and rules are obtained,
(2) no pre-fixed fuzzy structure is necessary, and
(3) simpler implementing procedures and less cost are involved.
We consider in this paper the case of automatic anaesthesia control in human patients for
testing the optimized fuzzy controller. We did have, as a reference, the best fuzzy controller
that was developed for the automatic anaesthesia control (Lozano 2004), and we consider the
optimization of this controller using the HGA approach. After applying the GA the number
of fuzzy rules was reduced from 12 to 9 with a similar performance of the fuzzy controller.
Of course, the parameters of the membership functions were also tuned by the GA. We did
compare the simulation results of the optimized fuzzy controllers obtained with the HGA
against the best fuzzy controller that was obtained previously with expert knowledge, and
control is achieved in a similar fashion. Since simulation results are similar, and the number
of fuzzy rules was reduced, we can conclude that the HGA approach is a good alternative for
designing fuzzy systems.
2. Genetic algorithm for optimization
In this paper, we used a floating-point GA (Castillo and Melin 2003) to adjust the parameter
vector u, specifically we used the Breeder Genetic Algorithm (BGA). The GA is used to
optimize the fuzzy system for control that will be described later. A BGA can be described by
the following equation:
BGA ¼ P0g;N; T ;G;D;HC; F; term
� �ð1Þ
where: P0g ¼ initial population, N ¼ the size of the population, T ¼ the truncation threshold,
G ¼ the recombination operator, D ¼ the mutation operator, HC ¼ the hill climbing method,
F ¼ the fitness function, term ¼ the termination criterion.
The BGA uses a selection scheme called truncation selection. The %T best individuals are
selected and mated randomly until the number of offspring is equal the size of the population.
The offspring generation is equal to the size of the population. The offspring generation
replaces the parent population. The best individual found so far will remain in the population.
O. Castillo et al.576
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
Self-mating is prohibited. As a recombination operator we used “extended intermediate
recombination”, defined as: If x ¼ (xi, . . . , xn) and y ¼ ( y1, . . . , yn) are the parents, then the
successor z ¼ (z1, . . . , zn) is calculated by:
zi ¼ xi þ aiðyi 2 xiÞ i ¼ 1; . . . ; n ð2Þ
The mutation operator is defined as follows: A variable xi is selected with probability pm for
mutation. The BGA normally uses pm ¼ 1/n. At least one variable will be mutated. A value
out of the interval [2 rangei, rangei] is added to the variable. Rangei defines the mutation
range. It is normally set to (0.1 x searchintervali). Searchintervali is the domain of definition
for variable xi. The new value zi is computed according to
zi ¼ xi ^ rangei·d ð3Þ
The þ or 2 sign is chosen with probability 0.5. d is computed from a distribution which
prefers small values. This is realized as follows
d ¼X15i¼0
ai2i ai [ 0; 1 ð4Þ
Before mutation we set ai ¼ 0. Then each ai is mutated to 1 with probability pd ¼ 1/16.
Only ai ¼ 1 contributes to the sum. On the average there will be just one ai with value 1,
say aj. Then d is given by
d ¼ 22j ð5Þ
The standard BGA mutation operator is able to generate any point in the hypercube with
center x defined by xi ^ rangei. But it generates values much more often in the neighborhood
of x. In the above standard setting, the mutation operator is able to locate the optimal xi up to
a precision of rangei·22150.
We also solved the problem with a LMS algorithm with the purpose of have a good
reference mark. To monitor the convergence rate of the LMS algorithm, we computed a short
term average of the squared error e2(n) using
ASEðmÞ ¼1
K
XnþK
k¼nþ1
e2ðkÞ ð6Þ
where m ¼ n/K ¼ 1, 2, . . . The averaging interval K may be selected to be (approximately)
K ¼ 10N. The effect of the choice of the step size parameter D on the convergence rate of
LMS algorithm may be observed by monitoring the ASE(m).
2.1 Genetic algorithm for optimization
The proposed GA is as follows:
1. We use real numbers as a genetic representation of the problem.
2. We initialize the iteration count variable i with zero (i ¼ 0).
3. We create an initial random population Pi, in this case (P0). Each individual of the
population has n dimensions and each coefficient of the fuzzy system corresponds to one
dimension. Since we are using a fuzzy system of 25 coefficients, then our search space is
of n ¼ 25. The generated individuals have their coefficients in [23,3].
Hierarchical genetic algorithms 577
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
4. We calculate the normalized fitness of each individual of the population using linear
scaling with displacement, in the following form:
f 0i ¼ f i þ1
N
Xj f ij þ jmin
ið f iÞj ;i
5. We normalize the fitness of each individual using:
Fi ¼f 0iPNi¼1 f
0i
;i
6. We sort the individuals from greater to lower fitness.
7. We use the truncated selection method, selecting the %T best individuals, for example if
there are 500 individuals and, then we select 0.30*500 ¼ 150 individuals.
8. We apply random crossover, to the individuals in the population (the 150 best ones) with
the goal of creating a new population (of 500 individuals). Crossover with the same
individual is not allowed, and all the individuals participate. To perform this operation
we apply the genetic operator of extended intermediate recombination as follows:
If x ¼ (x1, . . . , xn) and y ¼ (y1, . . . , yn) are the parents, then the successors
z ¼ (z1, . . . , zn) are calculated by, zi ¼ xi þai(yi 2 xi) for i ¼ 1, . . . , n where a is a
scaling factor selected randomly in the interval [2d, 1 þ d ]. In intermediate
recombination d ¼ 0, and for extended d . 0, a good choice is d ¼ 0.25, which is the
one that we used.
9. We apply the mutation genetic operator of BGA. In this case, we select an individual
with probability pm ¼ 1/n (where n represents the working dimension, in this case
n ¼ 25, which is the number of coefficients in the membership functions). The mutation
operator calculates the new individuals zi of the population in the following form:
zi ¼ xi ^ rangei d we can note from this equation that we are actually adding to the
original individual a value in the interval: [2 rangei, rangei] the range is defined as the
search interval, which in this case is the domain of variable xi, the sign ^ is selected
randomly with probability of 0.5, and is calculated using the following formula,
d ¼Xm21
i¼0
ai22i ai [ 0; 1
Commonly used values in this equation are m ¼ 16 y m ¼ 20. Before mutation we
initiate with ai ¼ 0, then for each ai we mutate to 1 with probability pd ¼ 1/m.
10. Let i ¼ i þ 1, and continue with step 4.
3. Evolution of fuzzy systems
Since the very first introduction of the fundamental concept of fuzzy logic (Zadeh 1965), its
use in engineering disciplines has been widely studied. Its main attraction undoubtedly lies in
the unique characteristics that fuzzy logic systems possess (Zadeh 1987). They are capable of
handling complex, non-linear dynamic systems using simple solutions. Very often, fuzzy
systems provide a better performance than conventional non-fuzzy approaches with less
development cost (Yen and Langari 1999).
O. Castillo et al.578
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
However, to obtain an optimal set of fuzzy membership functions and rules is not an easy
task (Karr and Gentry 1993). It requires time, experience and skills of the operator for the
tedious fuzzy tuning exercise (Castillo and Melin 2001). In principle, there is no general rule
or method for the fuzzy logic set-up (Melin and Castillo 2002). Recently, many researchers
have considered a number of intelligent techniques for the task of tuning the fuzzy set.
Here, another innovative scheme is described (Valdez and Castillo 2004). This approach
has the ability to reach an optimal set of membership functions and rules without a known
overall fuzzy set topology. The optimal solution can only be found, if the appropriate
parameters of the evolution process are selected. The conceptual idea of this approach is to
have an automatic and intelligent scheme to tune the membership functions and rules, in
which the conventional closed loop fuzzy control strategy remains unchanged, as indicated in
figure 1.
In this case, the chromosome (Goldberg 1989) of a particular system is shown in figure 2.
The chromosome consists of two types of genes, the control genes and parameter genes.
The control genes, in the form of bits, determine the membership function activation, whereas
the parameter genes are in the form of real numbers to represent the membership functions.
To obtain a complete design for the fuzzy control system, an appropriate set of fuzzy rules
is required to ensure system performance (Yoshikawa et al. 1996). At this point it should
Figure 1. GA for a fuzzy control system.
Figure 2. Chromosome structure for the fuzzy system.
Hierarchical genetic algorithms 579
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
be stressed that the introduction of the control genes is done to govern the number of fuzzy
subsets in the system.
Once the formulation of the chromosome has been set for the fuzzy membership functions
and rules, the genetic operation cycle can be performed. This cycle of operation for the fuzzy
control system optimization using a GA is illustrated in figure 3.
There are two population pools, one for storing the membership chromosomes and the
other for storing the fuzzy rule chromosomes. We can see this in figure 3 as the membership
population and fuzzy rule population, respectively. Considering that there are various types
of gene structure, a number of different genetic operations can be used. For the crossover
operation, a one-point crossover is applied separately for both the control and parameter
genes of the membership chromosomes within certain operation rates. There is no crossover
operation for fuzzy rule chromosomes since only one suitable rule set can be assisted.
Bit mutation is applied for the control genes of the membership chromosome. Each bit of
the control gene is flipped if a probability test is satisfied (a randomly generated number is
smaller than a predefined rate). As for the parameter genes, which are real numbers, random
mutation is applied.
Figure 3. Genetic cycle for fuzzy system optimization.
O. Castillo et al.580
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
The complete genetic cycle continues until some termination criteria, for example, meeting
the design specification or number of generation reaching a predefined value are fulfilled.
The fitness function can be defined in this case as follows:
f i ¼X
jyðkÞ2 rðkÞj ð7Þ
where S indicates the sum for all the data points in the training set, and y(k) represents the
real output of the fuzzy system and r(k) is the reference output. This fitness value measures
how well the fuzzy system is approximating the real data.
4. Application to anaesthesia control
We consider the case of controlling the anaesthesia given to a patient as the problem for
finding the optimal fuzzy system for control (Lozano 2004). The complete implementation
was done in the MATLAB programming language. The fuzzy systems were built
automatically by using the Fuzzy Logic Toolbox, and GA was coded directly in the
MATLAB language. The fuzzy systems for control are the individuals used in the GA, and
these are evaluated by comparing them to the ideal control given by the experts. In other
words, we compare the performance of the fuzzy systems that are generated by the GA,
against the ideal control system given by the experts in this application.
4.1 Anaesthesia control using fuzzy logic
The main task of the anaesthesist, during an operation, is to control anaesthesia
concentration. Anaesthesia concentration cannot be measured directly. For this reason, the
anaesthesist uses indirect information, like the heartbeat, pressure and motor activity. The
anaesthesia concentration is controlled using a medicine, which can be given by an injection
or by a mix of gases. We consider here the use of isoflurance, which is usually given in a
concentration of 0–2% with oxygen. In figure 4 we show a block diagram of the controller.
The air that is exhaled by the patient contains a specific concentration of isoflurance, and it
is recirculated to the patient. As consequence, we can measure isoflurance concentration on
the inhaled and exhaled air by the patient, to estimate isoflurance concentration on the
patient’s blood. From the control engineering point of view, the task by the anaesthesist is to
maintain anaesthesia concentration between the high level W (threshold to wake up) and the
low level E (threshold to success). These levels are difficult to be determine in a changing
environment and also are dependent on the patient’s condition. For this reason, it is important
Figure 4. Architecture of the fuzzy control system.
Hierarchical genetic algorithms 581
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
to automate this anaesthesia control, to perform this task more efficiently and accurately, and
also to free the anaesthesist from this time consuming job. The anaesthesist can then
concentrate in doing other tasks during the operation on a patient.
The first automated system for anaesthesia control was developed using a PID controller
in the 60s (Curatolo et al. 1996). However, this system was not very successful due to the
non-linear nature of the problem of anaesthesia control. After this first attempt, adaptive
control was proposed to automate anaesthesia control, but robustness was the problem in
this case. For these reasons, fuzzy logic was proposed for solving this problem. An
additional advantage of fuzzy control is that we can use in the rules the same vocabulary as
the medical doctors use. The fuzzy control system can also be easily understood by the
anaesthesists.
4.2 Characteristics of the fuzzy controller
In this section we describe the main characteristics of the fuzzy controller for anaesthesia
control. We will define input and output variables of the fuzzy system. Also, the fuzzy rules
of fuzzy controller previously designed will be described.
The fuzzy system is defined as follows:
(1) Input variables: Blood pressure and Error
(2) Output variable: Isoflurance concentration
(3) Nine fuzzy if-then rules of the optimized system, which is the base for comparison
(4) Twelve fuzzy if-then rules of an initial system to begin the optimization cycle of
the GA.
The linguistic values used in the fuzzy rules are the following:
PB ¼ Positive Big
PS ¼ Positive Small
ZERO ¼ zero
NB ¼ Negative Big
NS ¼ Negative Small
We show below a sample set of 12 fuzzy rules that are used in the fuzzy inference system
that is represented in the GA for optimization.
if Blood pressure is NB and error is NB then conc_isoflurance is PS
if Blood pressures is PS then conc_isoflurance is NS
if Blood pressure is NB then conc_isoflurance is PB
if Blood pressure is PB then conc_isoflurance is NB
if Blood pressure is ZERO and error is ZERO then conc_isoflurance is ZERO
if Blood pressure is ZERO and error is PS then conc_isoflurance is NS
if Blood pressure is ZERO and error is NS then conc_isoflurance is PS
if error is NB then conc_isoflurance is PB
if error is PB then conc_isoflurance is NB
if error is PS then conc_isoflurance is NS
O. Castillo et al.582
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
if Blood pressure is NS and error is ZERO then conc_isoflurance is NB
if Blood pressure is PS and error is ZERO then conc_isoflurance is PS.
4.3 Genetic algorithm specification
The general characteristics of the GA that was used are the following:
NIND ¼ 40; Number of individuals in each subpopulation.
MAXGEN ¼ 300; Maximum number of generations allowed.
GGAP ¼ .6; “Generational gap”, which is the percentage from the complete population of
new individuals generated in each generation.
PRECI ¼ 120; Precision of binary representations.
SelCh ¼ select(“rws”, Chrom, FitnV, GGAP); Roulette wheel method for selecting the
indivuals participating in the genetic operations.
SelCh ¼ recombin(“xovmp”,SelCh,0.7); Multi-point crossover as recombination method
for the selected individuals.
ObjV ¼ FuncionObjDifuso120_555 (Chrom, sdifuso); Objective function is given by the
error between the performance of the ideal control system given by the experts and the
fuzzy control system given by the GA.
4.4 Representation of the chromosome
In Table 1 we show the chromosome representation, which has 120 binary positions. These
positions are divided in two parts, the first one indicates the number of rules of the fuzzy
inference system and the second one is divided again into fuzzy rules to indicate which
membership functions are active or inactive for the corresponding rule.
4.5 Simulation results for the case of anaesthesia control
We describe in this section the simulation results that were achieved using the HGA for the
optimization of the fuzzy control system, for the case of anaesthesia control. The GA is able
to evolve the topology of the fuzzy system for the particular application. We used 300
generations of 40 individuals each to achieve the minimum error. We show in figure 5 the
final results of the GA, where the error has been minimized. This is the case in which only
nine fuzzy rules are needed for the fuzzy controller. The value of the minimum error achieved
with this particular fuzzy logic controller was of 0.0064064, which is considered a small
number in this application.
Table 1. Binary chromosome representation.
Bit assigned Representation
1–12 Which rule is active or inactive13–21 Membership functions active or inactive of rule 122–30 Membership functions active or inactive of rule 2. . . Membership functions active or inactive of rule . . .112–120 Membership functions active or inactive of rule 12
Hierarchical genetic algorithms 583
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
In figure 6 we show the simulation results of the fuzzy logic controller produced by the GA
after evolution. We used a sinusoidal input signal with unit amplitude and a frequency of
2 radians/second, with a tranfer function of [1/(0.5 s þ 1)]. In this figure we can appreciate
the comparison of the outputs of both the ideal controller (1) and the fuzzy controller
optimized by the GA (2). From this figure it is clear that both controllers are very similar and
as a consequenque we can conclude that the GA was able to optimize the performance
Figure 5. Plot of the error after 300 generations of the HGA.
Figure 6. Comparison between outputs of the ideal controller (1) and the fuzzy controller produced with theHGA (2).
O. Castillo et al.584
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
of the fuzzy logic controller. We can also appreciate this fact more clearly in figure 7, where
we have amplified the similation results from figure 6 for a better view.
5. Aplication to the control of the bar and ball system
In this section, we describe the ball and beam experiment (Valdez and Castillo 2004), which
was also used as a basis for testing the genetic approach of fuzzy controller optimization.
A ball is placed on a beam, see figure 8, where it is allowed to roll with one degree of
freedom along the length of the beam. A lever arm is attached to the beam at one end and a
servo gear at the other. As the servo gear turns by an angle theta, the lever changes the angle
of the beam by a magnitude “alpha”. When the angle is changed from the horizontal position,
gravity causes the ball to roll along the beam. A controller will be designed for this system so
that the ball’s position can be manipulated.
For this problem, we will assume that the ball rolls without slipping and friction between
the beam and ball is negligible. The constants for this example are defined as follows:
The Lagrangian equation of motion for the ball is then given by the following equation:
J
R2þ m
� �r00 þ mg sina2 mrða0Þ2 ¼ 0 ð8Þ
M Mass of the ball 0.11 kgR Radius of the ball 0.015 mD Lever arm offset 0.03 mG Gravitational acceleration 9.8 m/s^2L Length of the beam 1.0 mJ Moment of inertia 9.99e-6 kgm^2R Ball position coordinatea Beam angle coordinateu Servo gear angle
Figure 7. Zoom in of figure 6 to view in more detail the difference between the controllers.
Hierarchical genetic algorithms 585
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
5.1 Simulation results with the complete HGA
In this case, we use the complete HGA with the following parameters:
NIND ¼ 50; % Number of individuals in the population
MAXGEN ¼ 80; % Maximum number of generations
GGAP ¼ 0.8; % Generation gap
PRECI ¼ 120; % Length of the Chromosome
At the end of the genetic evolution seven fuzzy rules were obtained, which are shown in
Table 2. In this table, the indexed rules use the numbering of MATLAB, which indicates the
number of rule and the numbers of the variables in the fuzzy system.
5.2 Simulation results with a method based only on mutation
In this section, we show results for the HGA method based only on mutation (no crossover
was used). The parameters of the GA are:
NIND ¼ 50; Number of individuals in the population
MAXGEN ¼ 250; Maximum number of generations
Table 2. Fuzzy rules in indexed and linguistic form.
Indexed rules Linguistic rules
1 1, 1 (1): 1 If error is N and derror is N then angle is NG1 2, 2 (1): 1 If error is N and derror is Z then angle is N2 1, 2 (1): 1 If error is Z and derror is N then angle is N2 2, 3 (1): 1 If error is Z and derror is Z then angle is Z2 3, 4 (1): 1 If error is Z and derror is P then angle is P3 2, 4 (1): 1 If error is P and derror is Z then angle is P3 3, 5 (1): 1 If error is P and derror is P then angle is PG
Figure 8. Diagram of the ball and beam system.
O. Castillo et al.586
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
GGAP ¼ 0.8; Generation gap
PRECI ¼ 120; Length of the chromosome
Table 3 shows the fuzzy rules obtained at the end with this type of GA.
5.3 Simulation results with a method based only on crossover
In this section, we show results for the HGA method based only on crossover (no mutation
was used). The parameters of the GA are the same. The fuzzy rules obtained at the end of the
genetic evolution are shown in Table 4.
5.4 Comparison of the simulation results
In this section we show the comparison of the fuzzy controllers that were obtained with the
different types of GA that were considered. We show in figures 9 and 10 the comparison of
the responses of the different fuzzy controllers. From these figures we can appreciate that the
different types of HGA work. However, a pseudobacterial genetic algorithm (PBGA) does
not give a valid fuzzy controller. The PBGA is not described in this paper, but can be seen
with detail in Nawa and Furuhashi (1999) and Salmeri et al. (1999).
Table 5 shows the comparison between the different methods used. This table summarizes
response times of the controllers and the number of fuzzy rules of the corresponding
controllers. This table also contains the information of a PID controller. We also show in
figure 11 the behaviour of the PID controller to have a basis for comparison with the other
controllers.
We can appreciate from Table 5 that the best result corresponds to the method using only
mutation, because it achieved a lower number of fuzzy rules without losing the efficiency
of the control goal. The complete HGA method also achieves control but with one more
Table 3. Fuzzy rules in indexed and linguistic form.
Indexed rules Linguistic rules
1 1, 1 (1): 1 If error is N and derror is N then angle is NG1 2, 2 (1): 1 If error is N and derror is Z then angle is N2 1, 2 (1): 1 If error is Z and derror is N then angle is N2 2, 3 (1): 1 If error is Z and derror is Z then angle is Z2 3, 4 (1): 1 If error is Z and derror is P then angle is P3 2, 4 (1): 1 If error is P and derror is Z then angle is P
Table 4. Fuzzy rules in indexed and linguistic form.
Indexed rules Linguistic rules
1 1, 1 (1): 1 If error is N and derror is N then angle is NG1 3, 3 (1): 1 If error is N and derror is P then angle is Z2 1, 2 (1): 1 If error is Z and derror is N then angle is N2 3, 4 (1): 1 If error is Z and derror is P then angle is P3 2, 4 (1): 1 If error is P and derror is Z then angle is P3 3, 5 (1): 1 If error is P and derror is P then angle is PG
Hierarchical genetic algorithms 587
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
Table 5. Comparison of the different methods.
Methods Time Reference Number of rules
Only mutation 12.000 0.25 6Ideal fuzzy system (not optimized) 13.8000 0.25 12Complete HGA 12.000 0.25 7PBGA Did not control 0.25 9Only crossover Did not control 0.25 7Traditional (PID) 400 0.25 Transfer
function
Figure 9. Responses of the fuzzy controllers obtained (green ¼ PBGA, red ¼ HGA complete, blue ¼ ideal fuzzy,black ¼ HGA with only mutation).
Figure 10. Magnification of figure 9.
O. Castillo et al.588
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
fuzzy rule. The ideal fuzzy controller (from the experts) also achieves control but with
12 fuzzy rules. The other methods do not achieve the control goal.
6. Conclusions
We consider in this paper the case of automatic anaesthesia control in human patients for
testing the optimized fuzzy controller. We did have, as a reference, the best fuzzy
controller that was developed for the automatic anaesthesia control, and we consider the
optimization of this controller using the HGA approach. After applying the GA the
number of fuzzy rules was reduced from 12 to 9 with a similar performance of the fuzzy
controller. Of course, the parameters of the membership functions were also tuned by the
GA. We did compare the simulation results of the optimized fuzzy controllers obtained
with the HGA against the best fuzzy controller that was obtained previously with expert
knowledge, and control is achieved in a similar fashion. Since simulation results are
similar, and the number of fuzzy rules was reduced, we can conclude that the HGA
approach is a good alternative for designing fuzzy systems. We also consider the case of
controlling the bar and ball system, and the genetic approach was able to optimize the
number of rules from 12 to 6. In conclusion, the HGA approach is a good alternative in
optimizing fuzzy controllers. Future work will include testing the proposed approach with
the optimization of other fuzzy controllers.
References
Baruch, I.S. and Garrido, R., 2005, A direct adaptive neural control scheme with integral terms. InternationalJournal of Intelligent Systems, 20(2), pp. 213–224.
Castillo, O. and Melin, P., 2001, Soft Computing for Control of Non-Linear Dynamical Systems (Heidelberg,Germany: Springer-Verlag).
Castillo, O. and Melin, P., 2003, Soft Computing and Fractal Theory for Intelligent Manufacturing (Heidelberg,Germany: Springer-Verlag).
Castillo, O., Huesca, G. and Valdez, F., 2004. Evolutionary computing for fuzzy system optimization inintelligent control. Proceedings of IC-AI’04, Las Vegas, USA, vol. 1, pp. 98–104.
Figure 11. Response of the PID controller (blue ¼ reference, black ¼ response of the controller).
Hierarchical genetic algorithms 589
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
Curatolo, M., Derighetti, M., Petersen-Felix, S., Feigenwinter, P., Fischer, M. and Zbinden, A.M., 1996,Fuzzy logic control of inspired isoflurance and oxygen concentrations using minimal flow anaesthesia. BritishJournal of Anaesthesia, 76, pp. 245–250.
Davis, L., 1991, Handbook of Genetic Algorithms (New York: Van Nostrand Reinhold).Goldberg, D., 1989, in Genetic Algorithms in Search, Optimization and Machine Learning, Addison Wesley (Ed.).Holland, J., 1975, Adaptation in Natural and Artificial Systems (MI: University of Michigan Press).Homaifar, A. and McCormick, E., 1995, Simultaneous design of membership functions and rule sets for fuzzy
controllers using genetic algorithms. IEEE Transactions Fuzzy Systems, 3, pp. 129–139.Jang, J.-S.R. and Sun, C.-T., 1995, Neurofuzzy fuzzy modeling and control. Proceeding of the IEEE,
83, pp. 378–406.Jang, J.-S.R., Sun, C.-T. and Mizutani, E., 1997, Neuro-fuzzy and Soft Computing, A Computational Approach to
Learning and Machine Intelligence (Upper Saddle River, NJ: Prentice Hall).Karr, C.L. and Gentry, E.J., 1993, Fuzzy control of pH using genetic algorithms. IEEE Transaction Fuzzy Systems,
1, pp. 46–53.Langari, R., 1990, A framework for analysis and synthesis of fuzzy linguistic control systems, Ph.D. thesis,
University of California, Berkeley.Lozano, A., 2004, Optimizacion de un Sistema de control Difuso por medio de algoritmos geneticos jerarquicos,
Thesis, Dept. of Computer Science, Tijuana Institute of Technology, Mexico.Man, K.F., Tang, K.S. and Kwong, S., 1999, Genetic Algorithms: Concepts and Designs (New York: Springer
Verlag).Melin, P. and Castillo, O., 2002, Modelling, Simulation and Control of Non-Linear Dynamical Systems
(London, Great Britain: Taylor and Francis).Nawa, N.E. and Furuhashi, T., 1999, Fuzzy system parameters discovery by bacterial evolutionary algorithm.
IEEE Transaction Fuzzy Systems, 7, pp. 608–616.Procyk, T.J. and Mamdani, E.M., 1979, A linguistic self-organizing process controller. Automatica, 15(1),
pp. 15–30.Salmeri, M., Re, M., Petrongari, E. and Cardarilli, G.C., 1999, A novel bacterial algorithm to extract the rule
base from a training set, Dept. of Electronic Engineering, University of Rome.Sepulveda, R., Castillo, O., Melin, P., Montiel, O. and Rodriguez-Diaz, A., 2005, Handling uncertainty in
controllers using type-2 fuzzy logic. Journal of Intelligent Systems, 14, pp. 237–262.Tang, K.-S., Man, K.-F., Liu, Z.-F. and Kwong, S., 1998, Minimal fuzzy memberships and rules using hierarchical
genetic algorithms. IEEE Transaction on Industrial Electronics, 45(1).Valdes, M., Gomez-Skarmeta, A.F. and Botia, J.A., 2005, Toward a framework for the specification of hybrid
fuzzy modeling. International Journal of Intelligent Systems, 20(2), pp. 225–252.Valdez, F. and Castillo, O., 2004. Comparative study of evolutionary computing methods for fuzzy system
optimization in intelligent control. Proc. IS-IC’04, Tijuana, B.C, Mexico, pp. 1–5.Yen, J. and Langari, R., 1999, Fuzzy Logic: Intelligence, Control and Information (Englewood Cliffs: Prentice
Hall, Inc).Yoshikawa, T., Furuhashi, T. and Uchikawa, Y., 1996. Emergence of effective fuzzy rules for controlling mobile
robots using DNA coding method. Proc. ICEC’96, Nagoya, Japan, pp. 581–586.Zadeh, L., 1965, Fuzzy sets. Journal of Information and Control, 8, pp. 338–353.Zadeh, L., 1987, in Fuzzy Sets and Applications R. R.Yager, S. Ovchinnikov, R. M. Tong and H. T. Nguyen, (Eds.)
(Nueva York: John Wiley).
Oscar Castillo is a Professor of Computer Science in the Graduate Division,
Tijuana Institute of Technology, Tijuana, Mexico. In addition, he is serving as
Research Director of Computer Science and head of the research group on
fuzzy logic and GA. Currently, he is President of Hispanic American Fuzzy
Systems Association (HAFSA) and Vice-President of International Fuzzy
Systems Association (IFSA) in charge of publicity. Prof. Castillo is also Vice-
Chair of the Mexican Chapter of the Computational Intelligence Society
(IEEE). Prof. Castillo is also General Chair of the IFSA 2007 World Congress
to be held in Cancun, Mexico. He also belongs to the Technical Committee on Fuzzy Systems of IEEE
and to the Task Force on “Extensions to Type-1 Fuzzy Systems”. His research interests are in Type-2
Fuzzy Logic, Intuitionistic Fuzzy Logic, Fuzzy Control, Neuro-Fuzzy and Genetic-Fuzzy hybrid
approaches. He has published over 50 journal papers, five authored books, 10 edited books, and 160
papers in conference proceedings.
O. Castillo et al.590
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014
Fevrier Valdez is a Professor of the Computer Science Department of Tijuana
Institute of Technology. Previously he was a graduate student in Computer
Science and her thesis was conducted under the supervision of Prof. Oscar
Castillo. The thesis was on topology optimization of fuzzy controllers using
HGA. His research interests are in NN, GA, and Fuzzy Logic. He has
published six papers in conference proceedings.
Patricia Melin is a Professor of Computer Science in the Graduate Division,
Tijuana Institute of Technology, Tijuana, Mexico. In addition, she is serving
as Director of Graduate Studies in Computer Science and head of the research
group on fuzzy logic and NN. Currently, she is Vice President of HAFSA
(Hispanic American Fuzzy Systems Association) and Program Chair of
International Conference FNG’05. Prof. Melin is also Chair of the Mexican
Chapter of the Computational Intelligence Society (IEEE). She is also
Program Chair of the IFSA 2007 World Congress to be held in Cancun,
Mexico. She also belongs to the Committee of Women in Computational
Intelligence of the IEEE and to the New York Academy of Sciences. Her research interests are in Type-
2 Fuzzy Logic, Modular NN, Pattern Recognition, Fuzzy Control, Neuro-Fuzzy and Genetic-Fuzzy
hybrid approaches. She has published over 50 journal papers, five authored books, eight edited books,
and 140 papers in conference proceedings.
Hierarchical genetic algorithms 591
Dow
nloa
ded
by [
Dic
le U
nive
rsity
] at
06:
04 0
2 N
ovem
ber
2014