• 沒有找到結果。

A Rule-Based Symbiotic Modified Differential Evolution

4 A Rule-Based Symbiotic Modified Differential Evolution for the FLNFN Model

4.2 A Rule-Based Symbiotic Modified Differential Evolution

This section represents the proposed rule-based symbiotic modified differential evolution (RSMODE). The RSMODE learning algorithm comprises the initialization phase and the parameter learning phase. The initialization phase uses the entropy measure that determines proper input space partitioning, finds the mean and variance of the Gaussian membership

function and the number of rules. Next, the initial rule-based subpopulation is created according to a range of the mean and variance of the membership function. The parameter learning phase consists of a subpopulation symbiotic evolution (SSE) and a modified differential evolution (MODE). Each individual in each subpopulation evolves separately using a modified differential evolution. But in order to evaluate each individual, the individual is composed a fuzzy system using other individuals (rules) in other subpopulations. The detailed flowchart of the proposed RSMODE learning algorithm is presented in Fig. 4.1.

Is the first input data?i

Generate the first subpopulation according to the current input data

Generate a new subpopulation according to the current input data Yes

Yes No

Are all training data finished in the first

generation?

No

No

Yes

initialization phase

Generate the initial best fuzzy system by the first individual in each subpopulation

Update each individual in each subpopulation with a knockout competition between the current composed fuzzy system and the trial composed fuzzy system using

a modified differential evolution

Update the best fuzzy system

Mutation Termination?

Begin

End No

Yes

parameter learning

phase

? EM EMmax<

Figure 4.1: Flowchart of the RSMODE learning algorithm.

4.2.1 Initialization Phase

In this dissertation, we finish initialization phase from training data in the first generation.

This subsection introduces the production of initial rule-based subpopulation, covering the coding and initialization steps. The coding step involves the membership functions and the fuzzy rules of a fuzzy system that represent individuals and are suitable for subpopulation symbiotic evolution. The initialization step assigns the number of subpopulation before the evolution process begins.

A. Coding Step

The first step in RSMODE learning algorithm is the coding of a fuzzy rule into an individual. Figure 4.2 shows an example of a fuzzy rule coded into an individual where i and j are the ith dimension and the jth rule. Figure 4.2 describes a fuzzy rule given by Eq. (2.3), where mij and

σ

ij are the mean and variance of a Gaussian membership function,

respectively, and w represents the corresponding link weight of the consequent part that is kj connected to the jth rule node. In this dissertation, a real number represents the position of each

m1j m2j ….. mij ….. w1j w2j ….. wMj

Individual

j

σ1 σ2j

σ

ij

Figure 4.2: Coding a fuzzy rule into an individual in the RSMODE learning algorithm.

B. Initialization Step

For training data, finding the optimal solution is difficult because the range of training data is wide. Therefore, the data must be normalized. Let training date be transformed to the interval of [0, 1]:

' min _ '

max _

' min _ '

ˆ ˆ

ˆ ˆ ˆ

i i

i i

i

x x

x x x

= −

(4.1)

where xˆ is the value after normalization; i x is the vector of the ith dimension to be ˆi'

normalized; xˆi'_min is the minimum value of vector x ; ˆi' xˆi'_max is the maximum value of

vector x . ˆi'

Before the RSMODE method is designed, the individuals that will constitute R initial subpopulation must be created. The first step in initialization phase is to create the initial first individual in each subpopulation to satisfy the fuzzy rule partition of input variables. The fuzzy rule partition strategy can determine whether a new rule should be extracted from the training data and determine the number of fuzzy rules in the universal of discourse of each input variable, since one cluster in the input space corresponds to one potential fuzzy logic rule, in which m and ij

σ

ij represent the mean and variance of that cluster, respectively. For each incoming data i, the rule firing strength can be regarded as the degree to which the incoming data belongs to the corresponding cluster. Entropy measure between each data point and each membership function is calculated based on a similarity measure. A data point of closed mean will has lower entropy. Therefore, the entropy values between data points and current membership functions are calculated to determine whether or not to add a new rule into the initial first individual and create a new rule-based subpopulation space. For computational efficiency, the entropy measure can be calculated using the firing strength from

ˆ)

)(

2 (

i

ij x

µ

as follow;

=

= N

i

ij ij

j D D

EM

1

log2 (4.2) where Dij =exp

(

uij(2)(xˆi)1

)

and EMj∈[0,1]. According to Eq. (4.2), the measure is used to generate a new fuzzy rule and new functional link bases for new incoming data is described as follows. The maximum entropy measure

R j

j EM

EM =

max 1max (4.3)

is determined, where R is the number of existing rules. If EMmaxEM, then a new rule and

a new rule-based subpopulation space are generated, where EM∈[0,1] is a prespecified threshold.

Once a new rule has been generated, the next step is to assign the initial first individual in the new rule-based subpopulation by the initial mean and variance to the new membership function and the corresponding link weight. Hence, the mean, variance and weight for the new rule are set as follows;

i

ij x

m = (4.4) ˆ

init

ij

σ

σ

= (4.5)

] 1 , [−1

= random

wkj (4.6) where i is the current input data and

σ

init is a prespecified constant.

The second step is to create other individuals in each subpopulation according to a range of the initial first individual. The following formulations show the production of the other individuals.

Mean: Individual[d]=mij +random[0,1]×

σ

ij, where d=1,3,…,2×N-1 (4.7)

Variance: Individual[d]=2×random[0,1]×

σ

ij, where d=2,4,…,2×N (4.8) Other parameters:

Individual [ d ] = random [ − 1 , 1 ]

, where d>2×N (4.9) where d is the site of each individual and mij and σij are the corresponding mean and variance, respectively, of the initial first individual.

4.2.2 Parameter Learning Phase

The parameter learning combines two strategies including a subpopulation symbiotic evolution (SSE) and a modified differential evolution (MODE). Each subpopulation allows

the individual (rule) itself to evolve by evaluating the composed fuzzy system. Figure 4.3 shows the structure of the individual in the rule-based symbiotic modified differential evolution. The parameter learning process is described step-by-step below.

Rule 12

....

. Rule 1k

Subpopulation 1

....

. Rule 1ps

Rule 11

...

Rule j2

....

. Rule jk

Subpopulation j

....

. Rule jps

Rule j1

...

Rule R2

....

. Rule Rk

Subpopulation R

....

. Rule Rps

Rule R1

Rule 1 …... Rule j …... Rule R Best Fuzzy System

Individual

m1j σ1j m2j σ2j ….. mij σij ….. w1j w2j ….. wMj

Rule 1 …... Rule jk …... Rule R Current Fuzzy System

Rule 1 …... Rule' jk …... Rule R Trial Fuzzy System

MODE

Figure 4.3: Structure of the individual in the RSMODE learning algorithm.

Step 1: Generate the Initial Best Fuzzy System

In this step, we orderly select the first individual from each subpopulation, and compose a fuzzy system as the initial best fuzzy system.

Step 2: Update Each Individual in Each Subpopulation using MODE

In order to update each individual in each subpopulation, we use a modified differential

evolution to select the better individual to the next step. Figure 4.4 gives an example of the MODE process. Hence, this step comprises of three components - parent choice phase, offspring generation phase and survivor selection phase.

Step 2.1: Parent Choice Phase

Each individual in the current generation is allowed to breed through mating with other randomly selected individuals from the subpopulation. Specifically, for each current individual xk,g, k=1, 2, …, PS, where g denotes the current generation and PS denotes the

population size, three other random individuals xr,g

1 , xr,g

2 and xr,g

3 are selected from the subpopulation such that r1, r2, and r3

{

1,2,...PS

}

and kr1r2r3. This way, a parent pool of four individuals is formed to breed an offspring.

Step 2.2: Offspring Generation Phase

After choosing the parents, MODE applies a differential operation to generate a mutated individual vk,g+1, according to the following equation:

) (

) (

) 1

( , , ,

, 1

,g r1g r2g r3g best r1g

k x F x x F x x

v + = + − ⋅ − + ⋅ − (4.10)

where F, commonly known as scaling factor, is defined as Gg to control the rate at which the subpopulation evolves, g denotes the current generation, G is the maximum number of generations, and xbest is the corresponding parameter of the best fuzzy system. To complement the differential operation search strategy, then uses a crossover operation, often referred to as discrete recombination, in which the mutated individual vk,g+1 is mated with

g

xk, and generates the offspring uk,g+1. The element of trial individual uk,g+1 are inherited from xk,g and vk,g+1, determined by a parameter called crossover probability (CR∈[0 ,1]), as follows:

 dth evaluation of a random number generator. For searching in nonseparable and multimodal landscapes CR=0.9 is a good choice [55].

Current Individual Trial Individual

Figure 4.4: Illustration of the MODE process for 8-dimensional vector.

Step 2.3: Survivor Selection Phase

MODE applies selection pressure only when selecting survivors. First, the current composed fuzzy system embeds the current individual xi,g into the best fuzzy system and

the trial composed fuzzy system embeds the trial individual ui,g+1 into the best fuzzy system.

Second, a knockout competition is played between the current composed fuzzy system and the trial composed fuzzy system. Then, the corresponding individual of the winner is selected deterministically based on objective function values and promoted to the next phase. In this dissertation, we adopt a fitness function (i.e., objective function) to evaluate the performance of these composed fuzzy systems. The fitness function is defined as follows.

1 1

1

1

2

=

− +

=

Nt

l

l l t

) y y N (

F

(4.12)

where yl represents the model output of the lth data;

y

l represents the desired output of the lth data, and Nt represents the number of the training data.

Step 3: Update the Best Fuzzy System

Compare the fitness value of the current composed fuzzy system, the trial composed fuzzy system and the best fuzzy system. If the fitness value of the current composed fuzzy system exceeds those of the best fuzzy system, then the best fuzzy system is replaced with the current composed fuzzy system. If the fitness value of the trial composed fuzzy system exceeds those of the best fuzzy system, and then the best fuzzy system is replaced with the trial composed fuzzy system.

Step 4: Mutation

After the above process yielded offspring, no new information is introduced to the each subpopulation at the site of an individual. As a source of new sites, mutation should be used sparingly because it is a random search operator. In the following simulations, a mutation rate was set to 1/(2*N+M), meaning that, on average, only one trial parameter is mutated, where N is the number of input variables, M is the number of basis function of FLNFN and 2*N+M is the length of each individual. Mutation is an operator that randomly alters the allele of a element. The mutation adopted in MODE to yield diversity. The individual suffers from a mutation to avoid falling in a local optimal solution and to ensure the searching capacity of approximate global optimal solution. Figure 4.5 shows the mutation of an individual. The mutation value is generated according to Eqs. (4.7)-(4.9), where mij and σij are the corresponding mean and variance, respectively, of the current individual. Following the mutation step, a new individual can be introduced into the each subpopulation.

Mutation Site

mijnew

Old Individual

New Individual

m1j σ1j m2j σ2j ….. mij σij ….. w1j w2j ….. wMj

m1j σ1j m2j σ2j …..mijnew σij ….. w1j w2j ….. wMj

Figure 4.5: A mutation operation in the rule-based symbiotic modified differential evolution.

4.3 Experimental Results

This dissertation evaluated the performance of the proposed FLNFN controller using a rule-based symbiotic modified differential evolution (FLNFN-RSMODE) for nonlinear control systems. This section presents several examples and compares the performance with that of the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller.

In the nonlinear control system problems, FLNFN-RSMODE is adopted to design controllers in three simulations - water bath temperature control system, ball and beam system and backing up the truck. Table 4.1 presents the parameter settings before training used in the three computer simulations for the RSMODE. In the RSDE and DE, the population size is set to 50, the maximum number of generation is set to 2000, and the crossover rate is set to 0.9.

In the GA, the population size is set to 50, the maximum number of generation is set to 2000, the crossover rate is set to 0.5, and the mutation rate is set to 0.3.

Table 4.1: Parameter settings before training.

Parameter Value

Population Size 50

Maximum Number of

Generation 2000

Crossover Rate 0.9

Mutation Rate 1/(2*N+M)

Coding Type Real Number

Example 1: Control of Water Bath Temperature System

The description of the system is the same as Example 1 of Section 2.3. In initialization phase, four subpopulations are generated. This dissertation compares the FLNFN-RSMODE controller to the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller. Each of these controllers is applied to the water bath temperature control system.

The performance measures include the set-points regulation, the influence of impulse noise, and a large parameter variation in the system, and the tracking capability of the controllers.

Figure 4.6 plots the learning curves of the best performance of the FLNFN-RSMODE controller for the fitness value, the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller, after the learning process of 2000 generations. Figure 4.7(a) presents the regulation performance of the FLNFN-RSMODE controller. The regulation performance was also tested using the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller. Figure 4.7(b) plots the error curves of the FLNFN-RSMODE controller, the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller. Figure 4.8(a) and (b) present the behaviors of the FLNFN-RSMODE controller, the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller under the influence of impulse noise, and the corresponding errors, respectively. Figure 4.9(a) presents the behaviors of the FLNFN-RSMODE controller when in the plant dynamics change. Figure 4.9(b) presents the corresponding errors of the FLNFN-RSMODE controller, the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller. Figure 4.10(a) presents the tracking performance of the FLNFN-RSMODE controller. Figure 4.10(b) presents the corresponding errors of the FLNFN-RSMODE controller, the FLNFN-RSDE controller, the FLNFN-DE controller, and the FLNFN-GA controller. The aforementioned simulation results, presented in Table 4.2, demonstrate that the proposed FLNFN controller outperforms other controllers.

Figure 4.6: Learning curves of best performance of the FLNFN-RSMODE, FLNFN-RSDE, FLNFN-DE and FLNFN-GA in Example 1.

(a)

(b)

Figure 4.7: (a) Final regulation performance of FLNFN-RSMODE controller in water bath system. (b) Error curves of the FLNFN-RSMODE controller, FLNFN-RSDE controller, the

FLNFN-DE controller, and FLNFN-GA controller.

(a)

(b)

Figure 4.8: (a) Behavior of FLNFN-RSMODE controller under impulse noise in water bath system. (b) Error curves of FLNFN-RSMODE controller, FLNFN-RSDE controller, the FLNFN-DE controller and FLNFN-GA controller.

(a)

(b)

Figure 4.9: (a) Behavior of FLNFN-RSMODE controller when a change occurs in the water bath system. (b) Error curves of FLNFN-RSMODE controller, FLNFN-RSDE controller, the FLNFN-DE controller, and FLNFN-GA controller.

(a)

(b)

Figure 4.10: (a) Tracking of FLNFN-RSMODE controller when a change occurs in the water bath system. (b) Error curves of FLNFN-RSMODE controller, FLNFN-RSDE controller, the FLNFN-DE controller, and FLNFN-GA controller.

Table 4.2: Comparison of performance of various controllers to control of water bath temperature system.

=

=120

1

| ) ( ) (

|

k yref k yk

SAE FLNFN-RSMODE

Controller

FLNFN-RSDE Controller

FLNFN-DE Controller

FLNFN-GA Controller Regulation Performance 352.66 352.81 352.91 372.85 Influence of Impulse Noise 270.46 270.76 270.65 282.21

Effect of Change in Plant

Dynamics 262.63 263.21 263.25 270.66

Tracking Performance 41.73 42.56 42.92 62.02

Example

2

: Control of the Ball and Beam System

The description of the system is the same as Example 1 of Section 2.3. In initialization phase, 14 subpopulations are generated. This example was simulated 30 times. Figure 4.11 plots the learning curves of the best performance of the FLNFN-RSMODE controller for the fitness value, the FLFNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller, after the learning process of 2000 generations. The FLNFN-RSMODE controller after learning was tested under the following four initial conditions; x(0) = [2.4, -0.1, 0.6, 0.1]T, [1.6, 0.05, -0.5, -0.05]T, [-1.6, -0.05, 0.5, 0.05]T and [-2.4, 0.1, -0.6, -0.1]T. Figure 4.12

plots the output responses of the closed-loop ball and beam system controlled by the FLNFN-RSMODE controller and the FLNFN-RSDE controller. These responses approximate those of the controller under the four initial conditions. In this figure, the curves of the FLNFN-RSMODE controller tend quickly to stabilize. Figure 4.13 also shows the behavior of the four states of the ball and beam system, starting for the initial condition [-2.4, 0.1, -0.6, -0.1]T. In this figure, the four states of the system decay gradually to zero. The results show the perfect control capability of the trained FLNFN-RSMODE controller. The performance of the FLNFN-RSMODE controller is compared with that of the FLNFN-RSDE controller, the FLNFN-DE controller and the FLNFN-GA controller. Table 4.3 presents the comparison results. The results demonstrate that the proposed FLNFN-RSMODE controller outperforms other controllers.

Figure 4.11: Learning curves of best performance of the FLNFN-RSMODE, FLNFN-RSDE, FLNFN-DE, and FLNFN-GA in Example 2.

Figure 4.12: Responses of ball and beam system controlled by FLNFN-RSMODE controller (solid curves) and FLNFN-RSDE controller (dotted curves) under four initial conditions.

Figure 4.13: Responses of four states of the ball and beam system under the control of the FLNFN-RSMODE controller.

Table 4.3: Comparison of performance of various controllers to control of ball and beam system.

Method FLNFN-RSMODE FLNFN-RSDE FLNFN-DE FLNFN-GA

Fitness Value (Ave) 0.9041 0.8737 0.8516 0.8287

Fitness Value (Best) 0.9653 0.9447 0.9441 0.9131

Example 3: Control of Backing Up the Truck

Backing a truck into a loading dock is difficult. It is a nonlinear control problem for

which no traditional control method exists [76]. Figure 4.14 shows the simulated truck and loading zone. The truck position is exactly determined by three state variables

φ

, x and y, where

φ

is the angle between the truck and the horizontal, and the coordinate pair (x, y) specifies the position of the center of the rear of the truck in the plane. The steering angle

θ

of the truck is the controlled variable. Positive values of

θ

represent clockwise rotations of the steering wheel and negative values represent counterclockwise rotations. The truck is placed at some initial position and is backed up while being steered by the controller. The objective of this control problem is to use backward only motions of the truck to make the truck arrive in the desired loading dock (xdesired, ydesired) at a right angle (

φ

desired=90°). The truck moves backward as the steering wheel moves through a fixed distance (df) in each step.

The loading region is limited to the plane [0,100] × [0,100].

Figure 4.14: Diagram of simulated truck and loading zone.

The input and output variables of the FLNFN-RSMODE controller must be specified.

The controller has two inputs, truck angle

φ

and cross position x. When the clearance between the truck and the loading dock is assumed to be sufficient, the y coordinate is not considered as an input variable. The output of the controller is the steering angle

θ

. The ranges of the variables x,

φ

and

θ

are as follows.

100 x

0≤ ≤ (4.13)

°

°

90

φ

270 (4.14)

°

°

30

θ

30 (4.15) The equations of backward motion of the truck are,



where l is the length of the truck. Equation (4.16) yields the next state from the present state.

Learning involves several attempts, each starting from an initial state and terminating when the desired state is reached; the FLNFN is thus trained. In initialization phase, 7 subpopulations are generated. This example was simulated 30 times. The fitness value of the FLNFN-RSMODE is approximately 0.9746 and the learning curve of FLNFN-RSMODE is compared with those obtained using the FLNFN-RSDE, FLNFN-DE, and FLNFN-GA, as shown in Fig. 4.15. In Fig. 4.16, the solid curves are the training paths and the dotted curves are the paths that the tuck runs under the control of the proposed controller. As this figure shown, the FLNFN-RSMODE controller can smooth the training paths. Figures 4.17(a)-(d) plot the trajectories of the moving truck controlled by the FLNFN-RSMODE controller, starting at initial positions (x, y,

φ

) = (a) (40, 20, -30°), (b) ( 10 ,20 ,150°), (c) ( 70, 20, -30°) and (d) ( 80, 20, 150°), after the training process has been terminated. The considered performance indices include the best fitness and the average fitness value. Table 4.4 compares the results. According to these results, the proposed FLNFN-RSMODE controller outperforms

Learning involves several attempts, each starting from an initial state and terminating when the desired state is reached; the FLNFN is thus trained. In initialization phase, 7 subpopulations are generated. This example was simulated 30 times. The fitness value of the FLNFN-RSMODE is approximately 0.9746 and the learning curve of FLNFN-RSMODE is compared with those obtained using the FLNFN-RSDE, FLNFN-DE, and FLNFN-GA, as shown in Fig. 4.15. In Fig. 4.16, the solid curves are the training paths and the dotted curves are the paths that the tuck runs under the control of the proposed controller. As this figure shown, the FLNFN-RSMODE controller can smooth the training paths. Figures 4.17(a)-(d) plot the trajectories of the moving truck controlled by the FLNFN-RSMODE controller, starting at initial positions (x, y,

φ

) = (a) (40, 20, -30°), (b) ( 10 ,20 ,150°), (c) ( 70, 20, -30°) and (d) ( 80, 20, 150°), after the training process has been terminated. The considered performance indices include the best fitness and the average fitness value. Table 4.4 compares the results. According to these results, the proposed FLNFN-RSMODE controller outperforms

相關文件