18
This article was downloaded by: [Dicle University] On: 02 November 2014, At: 06:04 Publisher: Taylor & Francis Informa 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 Systems Publication details, including instructions for authors and subscription information: http://www.tandfonline.com/loi/ggen20 Hierarchical genetic algorithms for topology optimization in fuzzy control systems Oscar Castillo a , Fevrier Valdez a & Patricia Melin a a Division of Graduate Studies and Research , Tijuana Institute of Technology , P.O. Box 4207, Chula Vista, CA, 91909, USA Published online: 26 Oct 2007. To cite this article: Oscar Castillo , Fevrier Valdez & Patricia Melin (2007) Hierarchical genetic algorithms for topology 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”) contained in the publications on our platform. However, Taylor & Francis, our agents, and our licensors make no representations or warranties whatsoever as to the accuracy, completeness, or suitability for any purpose of the Content. Any opinions and views expressed in this publication are the opinions and views of the authors, and are not the views of or endorsed by Taylor & Francis. The accuracy of the Content should not be relied upon and should be independently verified with primary sources of information. Taylor and Francis shall not be liable for any losses, actions, claims, proceedings, demands, costs, expenses, damages, and other liabilities whatsoever or howsoever caused arising directly or indirectly in connection with, in relation to or arising out of the use of the Content. This article may be used for research, teaching, and private study purposes. Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form 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 optimization in fuzzy control systems

Embed Size (px)

Citation preview

Page 1: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 2: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 3: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 4: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 5: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 6: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 7: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 8: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 9: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 10: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 11: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 12: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 13: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 14: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 15: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 16: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 17: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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

Page 18: Hierarchical genetic algorithms for topology optimization in fuzzy control systems

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