• 沒有找到結果。

3 A Modified Differential Evolution for the FLNFN Model

3.2 A Modified Differential Evolution

3.2.4 Cluster-Based Mutation Phase

>

= ≤

CR d Rand x

CR d Rand u v

g id

g id g

id , if ( )

) ( if ,

, ,

, (3.7)

where d =1,2,...,D denotes the dth element of individual vectors. Rand(d)∈[0 ,1] is the dth evaluation of a random number generator.

C. Survivor Selection

MODE applies selection pressure only when selecting survivors. A knockout competition is played between each individual xi,g and its offspring ui,g, and the winner is selected

deterministically based on objective function values and is then promoted to the next phase.

Moreover, the best individual also reserves to the next generation.

3.2.4 Cluster-Based Mutation Phase

To prevent the MODE from being trapped in the local optima of the search space (i.e., problems in which there are a number of points that are better than all their neighboring solutions, but do not have as good a fitness as the globally optimal solution), we adopt a cluster-based mutation scheme, which maintains diversity in the population to increase the search capability. We use an easy and fast self-cluster algorithm (SCA) [66] to cluster the population. Each cluster can be viewed as a subspace with similar biological features in the environment that can support different types of life; that is, these similar individuals of each cluster direct the search toward the same local optima. Then, for each cluster, the best individual will be reserved and other individuals will be suitably mutated to the next generation. Mutation is an operator that randomly alters the allele of an element. Figure 3.4 shows the mutation of an individual. The mutation value is generated according to

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

σ

ij (3.8)

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

σ

ij (3.9) Other parameters: Individual[d]=random[−1,1] (3.10) where mij and σij are the current mean and variance in the current individual, respectively.

Following the mutation step, a new individual can be introduced into the each population.

m11 σ11 ….. mi1 wi1 …..

Mutation Point

mijnew

Old Individual

New Individual

1

σ …..i m1j σ1j ….. mij σij ….. wij …..

m11 σ11 ….. mi1 σ …..i1 wi1 ….. m1j σ1j ….. mijnew σij ….. wij …..

Figure 3.4: A mutation operation in the modified differential evolution.

3.3 Experimental Results

This dissertation demonstrated the performance of the FLNFN-MODE controller for nonlinear system control. The FLNFN-MODE controller is applied to control of water bath temperature system. In addition, this experimentation discusses the use of a real-time digital control environment with a hardware-in-the-loop (HIL) control application. We configure a real-time visual simulation (VisSim) environment including a RT-DAC4/PCI motion control card and HIL systems to demonstrate the performance of the FLNFN-MODE controller for practical control applications. VisSim is a Windows-based program for the modeling and simulation of complex nonlinear dynamic systems. VisSim combines an intuitive drag and drop block diagram interface with a powerful simulation engine. We can generate a VisSim diagram using a customizable ANSI C code directly. In this dissertation, we applied the FLNFN-MODE controller to the planetary train type inverted pendulum system and the magnetic levitation system in the VisSim. The experiment compares the performance with

that of the FLNFN-MODE controller, the FLNFN-DE controller, and the FLNFN-GA controller. Table 3.1 presents the parameter settings before training used in the three computer simulations for the MODE. In the 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 3.1: Parameter settings before training.

Parameter Value

Population Size 50

Maximum Number of

Generation 2000

Crossover Rate 0.9

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 this example, four fuzzy rules are adopted and the population size is set to 50. The evolution proceeded for 2000 generations, and was repeated thirty times.

This dissertation compares the FLNFN-MODE controller to 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 3.5(a) presents the regulation performance of the FLNFN-MODE controller. The regulation performance was also tested using the FLNFN-DE controller and the FLNFN-GA controller. Figure 3.5(b) plots the error curves of the FLNFN-MODE controller, the FLNFN-DE controller and the FLNFN-GA controller. Figure 3.6(a) and (b) present the

behaviors of the FLNFN-MODE controller under the influence of impulse noise, and the corresponding errors, respectively. Figure 3.7(a) presents the behaviors of the FLNFN-MODE controller when in the plant dynamics change. Figure 3.7(b) presents the corresponding errors of the FLNFN-MODE controller, the FLNFN-DE controller and the FLNFN-GA controllers.

Figure 3.8(a) presents the tracking performance of the FLNFN-MODE controller. Figure 3.8(b) presents the corresponding errors of the FLNFN-MODE controller, the FLNFN-DE controller, and the FLNFN-GA controller. The aforementioned simulation results, presented in Table 3.2, demonstrate that the proposed FLNFN-MODE controller outperforms other controllers.

(a)

(b)

Figure 3.5: (a) Final regulation performance of FLNFN-MODE controller in water bath

system. (b) Error curves of the FLNFN-MODE controller, FLNFN-DE controller and FLNFN-GA controller.

(a)

(b)

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

(a)

(b)

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

(a)

(b)

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

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

=

=120

1

| ) ( ) (

|

k yref k yk

SAE FLNFN-MODE

Controller

FLNFN-DE Controller

FLNFN-GA Controller Regulation

Performance 352.78 352.91 372.85

Influence of Impulse

Noise 270.59 270.65 282.21

Effect of Change in

Plant Dynamics 263.39 263.25 270.66

Tracking

Performance 42.03 42.92 62.02

Example 2: Control of Planetary Train Type Inverted Pendulum System

In order to predict the dynamic behavior of a system from given input command and initial conditions of the system, it is necessary to make a mathematical model of the planetary train type inverted pendulum system [67]. The dynamic behavior of the system is helpful in sizing the actuator, choosing the amplifier power, designing the details of the mechanisms, and tuning the controller by computer simulation. To clarify the kinematic and dynamic

relations, three major movable parts, the center gear, the planetary gear and the pendulum, are depicted in Fig. 3.9.

θ &

1

θ &

2

m

0

g

m

1

g m

2

g

θ

0

Figure 3.9: A physical model geometry of the planetary train type inverted pendulum.

The kinematic relations of the three components can be allotted to two mutual movements as follows. First, we assume the pendulum to be stationary (

θ

&0=0). The ratio of the movements of the planetary gear to the center gear is

1 2 1 2 2

1

r r N e= ′ =−N =−

θ θ

&

&

(3.11) where

θ

1 and

θ

2 are the angle of the center gear and the planetary gear, respectively; N1

and N2 are the number of the tooth of the center gear and the planetary gear, respectively; r1

and r2 are the radius of the center gear and the planetary gear; the dot denotes the time derivative; and

θ

1′& refers to the angular velocity of the planetary gear in this case. Thus,

2

1

θ

θ

&′=e& . (3.12) Second, we assume the center gear to be stationary (

θ

&2 =0) and allow the pendulum and planetary gear to turn. The velocity of the planetary gear center can then be expressed as

0 2

1 )

(r r

θ

&

v= + . (3.13)

This velocity lets the angular velocity of the planetary gear (

θ

& ) in this case be 1′′

Combining Eqs. (3.13) and (3.14), we obtain

0

For the purpose of obtaining the relations between the input motor torque

τ

2, the output responses of the pendulum

θ

0, and the center gear

θ

2, we will use Lagrangian mechanics.

Using this method can ensure that we analyze the mechanism in a systematic approach. It starts with the findings of kinetic energy and potential energy of each movable part.

0 planetary gear and the pendulum, respectively; I2andI1 are the moment of inertia of the center gear and the planetary gear, respectively; m1andm0 are the mass of the planetary gear and the pendulum, respectively; and l is the length of the pendulum.

Substituting Eq. (3.15) into Eq. (3.16), we obtain Lagrangian as follows:

0

Because

θ

0 and

θ

2 are two independent variables, we regard them as generalized coordinates. Using Lagrange’s equation, two of the dynamic equations are derived as follows:

0

In Eq. (3.19), there is no external torque applied in the pendulum, so we assign zero to the variable

τ

0.

In this dissertation, the proposed control structure is shown in Fig. 3.10. The applied encoder is used to sense the angle of the pendulum and then to translate the signal as a feedback signal. The pendulum angle is controlled by a motor torque until the pendulum is balanceable. To validate the usefulness of the proposed control system under different reference trajectories, two cases, including the set-point command (i.e., the stick angle command is equal to zero) and the periodic square command (i.e., the stick angle command is equal to the square wave) are used in this experimentation.

Controller D/A Driver Planetary Train Type Inverted

Pendulum

Encoder

pendulum angle pendulum angle

command

PC

A/D

Figure 3.10: Control block diagram for the planetary train type inverted pendulum system.

This dissertation compares the FLNFN-MODE controller to the PID controller, the FLNFN-DE controller, and the FLNFN-GA controller. Each of these controllers is applied to the planetary train type inverted pendulum system. The PID controller is implemented as follows:

dt K de d e K t e K t

u( )= p ()+ i

0t (

τ

)

τ

+ d (3.20) where u(t) is the control output and the error, e(t), is defined as e(t)=desired value-measured value of quantity being controlled. The control gains Kp=830, Ki=0, and Kd=0.3284 are designed. The training patterns of the FLNFN model are generated using the various PID controllers with different control gains.

Figure 3.11 shows an experimental planetary train type inverted pendulum system test used to validate the experimentation results. The performance measures include the set-points regulation (Case 1) and the square command tracking capability (Case 2) of the controllers. In Case 1, the proposed system is controlled to follow the set-points, which is equal to zero.

Figure 3.12(a)-(d) presents the regulation performance of the FLNFN-MODE controller, the PID controller, the FLNFN-DE controller, and the FLNFN-GA controller. Figure 3.12(e) plots the scaling curves of the FLNFN-MODE controller and the PID controller between the 1.5th second and the 3.5th second. To test their regulation performance, two performance indexes, the sum of absolute error (SAE) for the pendulum angle and the pendulum speed, are defined by

= 0 0

0

θ θ

θ ref

SAE and SAEθ&0 =

∑ θ

&0ref

θ

&0 (3.21) where

θ

0ref and

θ

0 are the referred pendulum angle and the actual pendulum angle,

respectively, and

θ

& and 0ref

θ

& are the referred pendulum speed and the actual pendulum 0 speed, respectively. The SAE and θ0

θ&0

SAE of the experimental results are presented in

Table 3.3.

Figure 3.11: The experimental planetary train type inverted pendulum system.

(a)

(b)

(c)

(d)

(e)

Figure 3.12: (a)-(d) Final regulation performance of the FLNFN-MODE controller, PID controller, FLNFN-DE controller and FLNFN-GA controller. (e) Scaling curves of the FLNFN-MODE controller and PID controller between the 1.5th second and the 3.5th second.

In Case 2, the tracking capability of the proposed system is tested using a square wave with amplitude ±0.02 and frequency 0.5Hz. Figure 3.13(a)-(d) presents the regulation performance of the FLNFN-MODE controller, the PID controller, the FLNFN-DE controller, and the FLNFN-GA controller. Figure 3.13(e) plots the scaling curves of the FLNFN-MODE controller and the PID controller between the 4th second and the 8th second. A summary of the experimental results are presented in Table 3.3. As presented in Table 3.3, the proposed FLNFN-MODE controller outperforms the other controllers.

(a)

(b)

(c)

(d)

(e)

Figure 3.13: (a)-(d) Tracking of the FLNFN-MODE controller, PID controller, FLNFN-DE controller and FLNFN-GA controller, respectively, for a square wave with amplitude ±0.02 and frequency 0.5Hz. (e) Tracking curves of the FLNFN-MODE controller and PID controller between the 4th second and the 8th second.

Table 3.3: Comparison of performance of various controllers to control of the planetary train type inverted pendulum system with a 0.1s sampling rate.

FLNFN-MODE Controller

PID Controller

FLNFN-DE Controller

FLNFN-GA Controller

θ0

SAE

θ&0

SAE SAEθ0

θ&0

SAE SAEθ0

θ&0

SAE SAE θ0

θ&0

SAE Case 1 33.3549 68.5454 34.0881 73.3770 33.4316 69.1548 33.5696 69.7101 Case 2 33.6101 72.3521 34.4442 80.4085 33.7968 72.9001 33.8245 73.3907

Example 3: Control of Magnetic Levitation System

In order to construct a physical model of the behavior of the magnetic levitation system [68], it is necessary to make some statements about the system and also to make some simplifying assumptions. The physical model of the sphere and coil of the magnetic levitation system is shown in Fig. 3.14. The applied control is voltage, which is converted into a current within the mechanical unit. The current passes through an electromagnet which creates the corresponding magnetic field in its vicinity. The sphere is placed along the vertical axis of the electromagnet.

Using the fundamental principle of dynamics, the behavior of the ferromagnetic ball is given by the following electromechanical equation

)

where m is the mass of the levitated ball, g denotes the acceleration due to gravity, x is the distance of the ball from the electromagnet, i is the current across the electromagnet, and

) , ( ix

FB is the magnetic control force.

The effect of the magnetic field from the electromagnetic is to introduce a magnetic dipole in the sphere which itself becomes magnetized. The force acting on the sphere is then composed of gravity and the magnetic force acting on the induced dipole. The magnetic field at a distance of x from the end of the coil may be calculated from the Biot-Savart Law. This states that the magnetic field produced by a small segment of wire, Sd , carrying a current I is given by

Figure 3.14: Sphere and coil arrangement of the magnetic levitation system.

We are interested in the field along the axis of the coil. Consideration of symmetry shows that the magnetic field perpendicular to the axis is zero. To evaluate the integral in Eq.

(3.23), we position the current carrying element Sd to lie horizontally on the top of the coil and specify it by its unit vector components similarly, we specify the vector r by its unit vector components. Then we have

]

In Eq. (3.23), the vector product of Sd and r from Eq. (3.24) is given by Now, from considerations of symmetry the field component perpendicular to the coil axis must be zero on the axis. This is the sin component in Eq. (3.25). Also

θ

Hence, from Eqs. (3.23), (3.25) and (3.26), the magnetic field component dB along the axis x is given by

Hence integrating Eq. (3.27) round a single loop gives

2

To evaluate the field due to the many turns along the axis of the coil, let n be the number of turns per meter and let L (m) be its length. Now, we sum all the contributions from all the turns of the coils, as shown in Fig 3.14. When Eq. (3.28) is used, the total axial field from all the turns of the coil becomes

+

Integrating Eq. (3.29) by parts gives



We can rewrite Eq. (3.30) as

) ( )

(x K1IG X

B = (3.31) The force on the ball due to the field is proportional to the induced dipole strength and the field strength. The induced dipole strength is itself proportional to the field strength and,

hence, the upwards force on the ball due to the field B is given by )) (

) (

2(

2

1K I G X G X X

K

FB = − +

δ

. (3.32) Therefore,

)

'(

3 I X G X

K

FB ≈−

δ

(3.33) where G'(X) denotes thederivation and

δ

X is the dipole separation. On the assumption that the poles are located at the centre of the mass of each hemisphere of the ball, X

δ

is small compared to L and R and may be taken as a constant. Therefore, Eq. (3.33) becomes

)

'(

2G X

I K

FB ≈ . (3.34) In this dissertation, the proposed control structure is shown in Fig. 3.15. The applied photo detector is used to detect the position of the levitated object and then to translate the signal as feedback signal.

Controller D/A Driver Magnetic

Levitation System

Photo Detector

levitated object position levitated object

position command

PC

A/D

Figure 3.15: Control block diagram for the magnetic levitation system.

In this experiment, the proposed FLNFN-MODE controller is compared to the PID controller, the FLNFN-DE controller, and the FLNFN-GA controller. Each of the controllers is applied to control the magnetic levitation system. As in example 2, the PID controller with Kp=1.7, Ki=0, and Kd=0.031 is designed. The training patterns of the FLNFN model are generated using the various PID controllers with different control gains. Figure 3.16 shows an experimental magnetic levitation system which is tested to validate the experimentation results. In the following four cases, the FLNFN-MODE controller is demonstrated to have outperformed the other controllers.

Figure 3.16: Experimental magnetic levitation system.

The first case and the second case are used to verify the tracking capability of the controllers. In the first case, the reference signal is given by a sinusoidal wave with amplitude 0.5 and frequency 0.2Hz, and in the second case, the reference signal is presented by a square wave with amplitude 0.5 and frequency 0.2Hz. The final experimental results of the FLNFN-MODE controller, the PID controller, the FLNFN-DE controller and the FLNFN-GA controller are shown in Fig. 3.17(a)-(d) and Fig. 3.18(a)-(d). To evaluate their performance, a performance index, the sum of absolute error (SAE), is defined by

= P P

SAEP ref (3.35) where P and P are the reference trajectory and the actual position of the simulated ref system, respectively. In the first case, the SAEP values of the FLNFN-MODE controller, the PID controller, the FLNFN-DE controller and the FLNFN-GA controller are, respectively, 12.9002, 27.7017, 13.9169 and 15.1572, which values are given in the second row of Table 3.4. In the second case, the SAEP values of the FLNFN-MODE controller, the PID controller, the FLNFN-DE controller and the FLNFN-GA controller are, respectively, 48.4033, 85.7310, 50.7233 and 53.5194, which values are given in the third row of Table 3.4. The proposed FLNFN-MODE controller has a smaller SAE value than the other controllers. P

(a)

(b)

(c)

(d)

Figure 3.17: (a)-(d) Experimental results of FLNFN-MODE controller, PID controller, FLNFN-DE controller and FLNFN-GA controller due to periodic sinusoidal command for reference position and actual position, tracking error and control effort.

(a)

(b)

(c)

(d)

Figure 3.18: (a)-(d) Experimental results of FLNFN-MODE controller, PID controller, FLNFN-DE controller and FLNFN-GA controller due to periodic square command for reference position and actual position, tracking error and control effort.

The third experimentation is performed to demonstrate the noise-rejection ability of the four controllers when some unknown impulse noise is imposed on the process. One impulse noise value, −8mm, is added to the plant output at the 7th second. A set-point of 2.5mm is adopted in this experimental case. The FLNFN-MODE controller can recover from the disturbance quickly after the occurrence of the impulse noise, as shown in Fig. 3.19(a).

Figures 3.19(b)-(d) present the behaviors of the other three controllers under the influence of impulse noise. The SAE values of the FLNFN-MODE controller, the PID controller, the P

FLNFN-DE controller, and the FLNFN-GA controller are, respectively, 9.2709, 12.7345, 10.1515 and 10.8771, which are shown in the fourth row of Table 3.4. The FLNFN-MODE controller performs quite well.

(a)

(b)

(c)

(d)

Figure 3.19: (a)-(d) Behavior of the FLNFN-MODE controller, PID controller, FLNFN-DE controller and FLNFN-GA controller under impulse noise in a magnetic levitation system for reference and actual positions, tracking error, and control effort.

One common characteristic of many industrial-control processes is that their parameters

One common characteristic of many industrial-control processes is that their parameters

相關文件