# Hybrid Swarm Algorithms for Parameter Identification of an Actuator Model in an Electrical Machine

Authors: Ying Wu; Sami Kiviluoto; Kai Zenger; X. Z. Gao; Xianlin Huang
Journal: Advances in Acoustics and Vibration
 (2011)

---

## Abstract

Efficient identification and control algorithms are needed, when active vibration suppression techniques are developed for industrial machines. In the paper a new actuator for reducing rotor vibrations in electrical machines is investigated. Model-based control is needed in designing the algorithm for voltage input, and therefore proper models for the actuator must be available. In addition to the traditional prediction error method a new knowledge-based Artificial Fish-Swarm optimization algorithm (AFA) with crossover, CAFAC, is proposed to identify the parameters in the new model. Then, in order to obtain a fast convergence of the algorithm in the case of a 30 kW two-pole squirrel cage induction motor, we combine the CAFAC and Particle Swarm Optimization (PSO) to identify parameters of the machine to construct a linear time-invariant(LTI) state-space model. Besides that, the prediction error method (PEM) is also employed to identify the induction motor to produce a black box model with correspondence to input-output measurements.


---

## Body

## 1. Introduction

One of the fundamental processes of control is the parameter identification. In control engineering a lot of effort has been done to develop methods to identify the system model and its parameters. A wide range of techniques such as the least squares method, the maximum likelihood method, and the cross correlation method, exist for system identification [1]. However, a drawback of traditional identification methods is their dependence on unrealistic assumptions such as unimodal performance landscapes and differentiability of the cost function. Consequently, some problems are oversimplified to fulfil such assumptions. Stochastic search algorithms such as evolutionary-based algorithms seem to be a promising alternative to these conventional methods. Swarm Intelligence is one of the most important branches for Evolutionary Algorithms, which has been widely used in identification problems [2–4].The Artificial Fish-Swarm Algorithm (AFA) and the Particle Swarm Optimization (PSO) are  two kinds of typical Swarm Intelligence methods [5]. The AFA is an animal behaviour-based optimization method and, like the PSO, which was firstly developed by Li and Eberhart and Kennedy, respectively [6–9]. PSO has been widely used in identification in many research fields [10–15]. However, there are few researches to apply the AFA in such kind of problems. The AFA can search for the global optimum effectively and has a certain adaptive ability for searching space. But the AFA individual behaviour is to hunt for local optimum. Therefore, avoiding individual premature becomes difficult. In this case, artificial fish will be stuck into local optima when dealing with multimodal optimization problems. To improve the performance of AFA is an important challenge for applying the AFA in real problems [16].In order to guide the evolutionary-based stochastic algorithms, a novel optimization method, the Cultural Algorithm (CA) proposed by Reynolds in 1994 was developed to demanding problems, due to its flexibility and efficiency [17]. The CA is a class of computational models derived from the principles of the culture evolution in nature, composed by the population space, the belief space and a communication protocol. In the CA, the evolution takes place in the population space. The knowledge generated from the experiences of the individuals is stored in the belief space. The communication protocol can be depicted as an acceptance function and an influence function, which is utilized to make interaction between the other two components [18, 19]. Various evolutionary algorithms have been utilized in the population space of the CA leading to good results [20–27]. The framework of the culture algorithm can be depicted in Figure 1.Figure 1
Culture algorithm framework.The motivation behind this work is twofold. Firstly, in the literature there seems to be no results on hybrid AFA and CA. The knowledge stored in the belief space do act as a significant role in the process of evolution, and we try to find a proper framework for updating the belief space in combining the CA and AFA. Secondly, the new hybrid algorithm is applied to identify the parameters of a new kind of actuator, which is used to suppress rotor vibrations of an electronic machine.As part of our investigation, two typical kinds of knowledge in CA, the situation knowledge and the normative knowledge, are stored in the belief space to update the population space and to establish the relationship between the two spaces in the CA. The performance of the CAFAC is explored using offline parameter identification of the actuator-rotor system in an electrical machine. The identification is performed based on a lower-order physical linear time invariant (LTI) parametric state-space model of the actuator-rotor system. The resulting model can be utilized to design model-based active control algorithms for vibrations reduction.The rest of this paper is organized as follows. Section2 briefly introduces the background knowledge of the system under control and the AFA. Section 3 proposes and discusses the underlying principle of the CAFAC. In Section 4 the identification of an actuator-rotor system is considered using CAFAC and PEM and simulation results showing the control performance is established. A few conclusions and remarks are given in Section 5.


## 2. Problem Statement and Preliminaries

### 2.1. The Parametric Model of the Actuator-Rotor System

We examine a two-pole cage induction motor equipped with a built-in force actuator, which actively generates force on the rotor (Figure2(a)). The actuator is a four-pole extra winding inside the stator slots (Figure 2(b)). This design allows producing additional forces without harming the normal operation of the motor. The actuator is controlled by two voltage signals that by design induce forces on the rotor in horizontal and vertical directions (x and y).(a) The test motor [28]. Eddy current sensors are positioned on top of the rotor and behind it on the left. Encoder is located on the left side of the machine in the end of the rotor. (b) Control windings are built in the stator slots inside the motor [28].
(a)(b)The most important measurements for the identification are obtained using eddy current sensor. The sensors, conforming to the control signals, measure the rotor position also in horizontal and vertical directions. With them it is possible to record the rotor movement in any conditions accurately. Another set of sensors has been added on the right side of the motor in order to improve accuracy.  Another important measurement devise is the encoder that provides the rotational angle and frequency of the rotor.In the identification measurement the motor was operating at 32.085 Hz and the excitation input (control voltages in horizontal and vertical directions) was a uniform random number signal with frequency content up to 500 Hz. The output data was then processed so that the effects of vibrations were removed and only the response to the excitation signals remained [28]. The processed measurement is displayed in Figure 3.The response to control voltages inx- and y-directions.
(a)(b)The data from this setup is used to obtain a mathematical actuator model that can be used for control design purposes, when the objective is compensating rotor vibrations. The motivation of obtaining a new parametric physical model is increased understanding of the model compared to a black box model, which has been used before successfully [29]. Parametric models have been identified before with data from a finite element model, but they do not describe the test motor and some of the identified parameters had complex values, although for a realistic machine the parameters such as resistances must be realvalued.The linear time-invariant parametric (LTI) model of the system will be discussed. The model for the induction motor according to [30] is based on the mechanical model in modal coordinates [31](1)η̈+2ΩΞη̇+Ω2=ΦrcTfc+ΦrcTfex,(2)urc=Φrcη,
where η is the modal coordinate vector, urc is the displacement in x-direction and y-direction, Φrc is the modal matrix, Ω is a diagonal matrix, and Ξ is the modal damping matrix, fex denotes the sinusoidal disturbance causing rotor vibration disturbance, and fc the electro mechanical force acting on the rotor. The model structure is the same as in [32](3)ddt(η̇ηi)=[-2ΩΞΦrcTPemΦrc-Ω2ΦrcTCemI00SemΦrcQemΦrcAem](η̇ηi)+[0ΦrcT00Bem0](vfex),urc=[0Φrc0](η̇ηi).
The input v=(Re(û̲c,0),Im(û̲c,0)), is the control voltage, the first block row is the mechanical model, and  i=(Re(î̲c,0),Re(Mr,c,2î̲r,2,0)T,Im(î̲c,0),Im(Mr,c,2î̲r,2,0))T, where î̲c,0 and î̲r,2,0 are current space vectors and Mr,c,2 included in i is mutual inductance of control winding and the rotor cage. In variables the subscript c denotes a relation to the control winding, the subscript r denotes a relation to the rotor cage inside the motor, and the number in subscript denotes harmonic component [33]. All the parameters for the model are based on measured data and their explanations are listed in Table 1 [30].Table 1
Parameters in the electromechanical model.
ParameterUnitExplanationRcmΩThe resistance of the control winding.LcmHThe inductance of the control winding.kcB̲1*N/(A·m)The eccentricity coupling factor of the control winding  multiplied with the complex conjugate of the first air-gap field harmonic [34].Mr,c,2M̃c,r,2mHMutual inductance of rotor cage and control winding multiplied by itself and divided by rotor cage inductance of four-pole harmonic(Mc,r,2·Mc,r,2/Lr,2).γr,21/sRr,2Mc,r,2/Lr,2, where Rr,2 is the rotor cage resistant of 4-pole harmonic.Xc,ϵ,2B̲1Wb/mThe eccentricity coupling factor of control winding multiplied with first air-gap field harmonic.αT²A coefficient related to the unbalanced magnetic pull towards the shortest air-gap (gap between stator and rotor) [33].kr,2B1*/Mr,c,2N/(m·Wb)The coupling factor of rotor cage multiplied with the complex conjugate of the first air-gap field harmonic and divided by rotor cage inductance of four-pole harmonic.X̃r,ϵ,2B̲1/Mr,c,2Wb/mThe eccentricity coupling factor of rotor cage four-pole harmonic multiplied with the first air-gap field harmonic and divided by rotor cage inductance of four-pole harmonic.Following [30, 32] a combined electromechanical model can be derived starting from the voltage-flux equation for the control winding and the equation for rotor cage four-pole harmonic in stator coordinates(4)û̲c=Rcî̲c+dψ̲̂c,2dt,0=Rr,2î̲r,2+dψ̲̂r,2dt-j2ωmψ̲̂r,2.
The four-pole harmonic flux leakages are(5)ψ̲̂c,2=Lcî̲c+Mr,c,2î̲r,2+Xc,ϵ,2B̲̂1z̲r,ψ̲̂r,2=Lr,2î̲r,2+Mc,r,2î̲c+Xr,ϵ,2B̲̂1z̲r.
By substitution
(6)û̲c,0=(Rc+jω1Lc)î̲c,0+Lcdî̲c,0dt+jω1Mr,c,2î̲r,2,0+ddt(Mr,c,2î̲r,2,0)+Xc,ϵ,2B̲1(ż̲r+jω1z̲r),0=(γr,2+jω2)Mr,c,2î̲r,2,0+ddt(Mr,c,2î̲r,2,0)+jω2Mr,c,2M̃c,r,2î̲c,0+Mr,c,2M̃c,r,2dî̲c,0dt+Mr,c,2X̃r,ϵ,2B̲1[ż̲r+jω2z̲r],
where z̲ is a complex coordinate representation of the rotor eccentricity. In addition, the control force fc  in terms of the parameters in Table 1 is given by(7)fc=πdrlr4μ0δ0[αz̲r+β̲ej2ω1tz̲r*]︸⇒Pem(t)+πdrlr4δ0B̲1*[(kr,2Mr,c,2)Mr,c,2î̲r,2,0+kcî̲c,0].︸⇒Cem
These equations include all the parameters to identify. Since the complex coordinate system of z̲ is decomposed in real and imaginary parts in the final model, matrices Pem(t) and Cem, are given by(8)Pem(t)=πdrlr4μ0δ0([Re{α}-Im⁡{α}Im⁡{α}Re{α}]+[Re{βej2ω1t}Im⁡{βej2ω1t}Im⁡{βej2ω1t}-Re{βej2ω1t}]),(9)CemC=πdrlr4δ0[kcB̲1*(kr,2Mr,c,2)B̲1*],(10)Cem=[Re{CemC}-Im⁡{CemC}Im⁡{CemC}Re{CemC}].
It should be noted that in the time-invariant case Pem(t) is constant Pem.Equation (6) can be written in matrix form(11)[Lc1Mr,c,2M̃c,r,21]×ddt[î̲c,0Mr,c,2î̲r,2,0]+[Rc+jω1Lcjω1jω2Mr,c,2M̃c,r,2γr,2+jω2][î̲c,0Mr,c,2î̲r,2,0]+[Xc,ϵ,2B̲1Mr,c,2X̃r,ϵ,2B̲1]ż̲r+[jω1Xc,ϵ,2B̲1jω1Mr,c,2X̃r,ϵ,2B̲1]z̲r=[10]û̲c,0.Rearranging this will give the rest of the matrices, which are needed for the combined model(12)ddt[î̲c,0Mr,c,2î̲r,2,0]=-[Lc1Mr,c,2M̃c,r,21]-1[Xc,ϵ,2B̲1Mr,c,2X̃r,ϵ,2B̲̂1]︸SemCż̲r-[Lc1Mr,c,2M̃c,r,21]-1[jω1Xc,ϵ,2B̲1jω1Mr,c,2X̃r,ϵ,2B̲1]︸QemCz̲r-[Lc1Mr,c,2M̃c,r,21]-1[Rc+jω1Lcjω1jω2Mr,c,2M̃c,r,2γr,2+jω2]︸AemC×[î̲c,0Mr,c,2î̲r,2,0]+[Lc1Mr,c,2M̃c,r,21]-1[10]︸BemCû̲c,0.
Matrices Aem, Bem, Sem, and Qem are finally obtained like Cem in  (10)(13)Aem=[Re{AemC}-Im⁡{AemC}Im⁡{AemC}Re{AemC}],Bem=[Re{BemC}-Im⁡{BemC}Im⁡{BemC}Re{BemC}],Sem=[Re{SemC}-Im⁡{SemC}Im⁡{SemC}Re{SemC}],Qem=[Re{QemC}-Im⁡{QemC}Im⁡{SemC}Re{QemC}].These matrices and the mechanical model (1) can be combined in one state-space model (3).The parameters of the electromechanical model are listed in Table1. Certain practical constraints were set for the parameters for fulfilling physical quantities. Here the resistance is constant and known (14.5), so it does not need to be optimized. When the effect of the unbalanced magnetic pull is ignored we can get the LTI model. The input u(t) consists of the voltage input v to the control winding and the disturand the outputs are the displacements urc of the rotor center. The system matrices A, B, and C are the functions of the unknown parameters in the model which are reformed in a vector as(14)P={Lc,kcB̲1*,Mr,c,2M̃c,r,2,γr,2,Xc,ϵ,2B̲1,α,kr,2B̲1*Mr,c,2,X̃c,ϵ,2B̲1Mr,c,2}.
The corresponding significances of the unknown parameters, and the detailed derivation of the model can be found in [32].


### 2.2. The Artificial Fish-Swarm Algorithm

Suppose that the problem under consideration hasD-dimensions. Initialize the swarm with N artificial fish. The state of one artificial fish can be formulated as Xi=(xi1,xi2,…,xiD), i=1,…,N, where Xi represents the target variable for the problem under consideration. y=f(Xi) stands for the food concentration of the artificial fish currently, where it is the objective function. The basic behaviours of artificial fish can be expressed as follows (dij=∥Xj-Xi∥ stands for the Euclidean distance between Xi and Xj, “vd” is visual distance of the artificial fish individual, “s” is the size of the movement of artificial fish, δ is the crowd factor of the artificial fish) [6].(1) Preying
The current state of the artificial fish isXi, the artificial fish selects a state Xj randomly within the visual distance, such as Xj=Xi+rand(0,1)×vd. If f(Xj)<f(Xi) the artificial fish moves from Xi towardsXj, meaning that Xit→Xit+1. The formulation can be depicted as follows:
(15)Xit+1=Xit+rand(0,1)×s×Xjt-Xit‖Xjt-Xit‖.
If f(Xj)>f(Xi), the artificial fish selects another state randomly again. If the artificial fish cannot meet the requirement in a given time, then it moves one step randomly as
(16)Xit+1=Xit+rand(0,1)×s.(2) Swarming
The current state of the artificial fish isXi,   nf is the number of its fellows within the visual distance, equal to the number of elements in the set of B={Xj∣dij≤Visual}. If nf≠0 that is the set B is not empty, let Xcenter=∑j=1nfXj/nf and then ycenter=f(Xcenter) stands for the fitness of the centre position. If nf×ycenter<δ×yi, meaning that this area is not crowded, then if ycenter<yi, the artificial fish moves one step towards the centre position:
(17)Xit+1=Xit+rand(0,1)×s×Xct-Xit‖Xct-Xit‖.
Otherwise it executes the behaviour of preying.(3) Chasing
The current state of the artificial fish isXi, Xminstands for the best artificial fish individual within Xi’s visual distance. nf is the number of Xmin’s fellows within the visual distance. ymin=f(Xmin), if ymin<yi and nf×ymin<δ×yi, the artificial fish moves one step to Xmin:
(18)Xit+1=Xit+rand(0,1)×s×Xmin⁡t-Xit‖Xmin⁡t-Xit‖.
Otherwise it executes the behaviour of preying.


## 2.1. The Parametric Model of the Actuator-Rotor System

We examine a two-pole cage induction motor equipped with a built-in force actuator, which actively generates force on the rotor (Figure2(a)). The actuator is a four-pole extra winding inside the stator slots (Figure 2(b)). This design allows producing additional forces without harming the normal operation of the motor. The actuator is controlled by two voltage signals that by design induce forces on the rotor in horizontal and vertical directions (x and y).(a) The test motor [28]. Eddy current sensors are positioned on top of the rotor and behind it on the left. Encoder is located on the left side of the machine in the end of the rotor. (b) Control windings are built in the stator slots inside the motor [28].
(a)(b)The most important measurements for the identification are obtained using eddy current sensor. The sensors, conforming to the control signals, measure the rotor position also in horizontal and vertical directions. With them it is possible to record the rotor movement in any conditions accurately. Another set of sensors has been added on the right side of the motor in order to improve accuracy.  Another important measurement devise is the encoder that provides the rotational angle and frequency of the rotor.In the identification measurement the motor was operating at 32.085 Hz and the excitation input (control voltages in horizontal and vertical directions) was a uniform random number signal with frequency content up to 500 Hz. The output data was then processed so that the effects of vibrations were removed and only the response to the excitation signals remained [28]. The processed measurement is displayed in Figure 3.The response to control voltages inx- and y-directions.
(a)(b)The data from this setup is used to obtain a mathematical actuator model that can be used for control design purposes, when the objective is compensating rotor vibrations. The motivation of obtaining a new parametric physical model is increased understanding of the model compared to a black box model, which has been used before successfully [29]. Parametric models have been identified before with data from a finite element model, but they do not describe the test motor and some of the identified parameters had complex values, although for a realistic machine the parameters such as resistances must be realvalued.The linear time-invariant parametric (LTI) model of the system will be discussed. The model for the induction motor according to [30] is based on the mechanical model in modal coordinates [31](1)η̈+2ΩΞη̇+Ω2=ΦrcTfc+ΦrcTfex,(2)urc=Φrcη,
where η is the modal coordinate vector, urc is the displacement in x-direction and y-direction, Φrc is the modal matrix, Ω is a diagonal matrix, and Ξ is the modal damping matrix, fex denotes the sinusoidal disturbance causing rotor vibration disturbance, and fc the electro mechanical force acting on the rotor. The model structure is the same as in [32](3)ddt(η̇ηi)=[-2ΩΞΦrcTPemΦrc-Ω2ΦrcTCemI00SemΦrcQemΦrcAem](η̇ηi)+[0ΦrcT00Bem0](vfex),urc=[0Φrc0](η̇ηi).
The input v=(Re(û̲c,0),Im(û̲c,0)), is the control voltage, the first block row is the mechanical model, and  i=(Re(î̲c,0),Re(Mr,c,2î̲r,2,0)T,Im(î̲c,0),Im(Mr,c,2î̲r,2,0))T, where î̲c,0 and î̲r,2,0 are current space vectors and Mr,c,2 included in i is mutual inductance of control winding and the rotor cage. In variables the subscript c denotes a relation to the control winding, the subscript r denotes a relation to the rotor cage inside the motor, and the number in subscript denotes harmonic component [33]. All the parameters for the model are based on measured data and their explanations are listed in Table 1 [30].Table 1
Parameters in the electromechanical model.
ParameterUnitExplanationRcmΩThe resistance of the control winding.LcmHThe inductance of the control winding.kcB̲1*N/(A·m)The eccentricity coupling factor of the control winding  multiplied with the complex conjugate of the first air-gap field harmonic [34].Mr,c,2M̃c,r,2mHMutual inductance of rotor cage and control winding multiplied by itself and divided by rotor cage inductance of four-pole harmonic(Mc,r,2·Mc,r,2/Lr,2).γr,21/sRr,2Mc,r,2/Lr,2, where Rr,2 is the rotor cage resistant of 4-pole harmonic.Xc,ϵ,2B̲1Wb/mThe eccentricity coupling factor of control winding multiplied with first air-gap field harmonic.αT²A coefficient related to the unbalanced magnetic pull towards the shortest air-gap (gap between stator and rotor) [33].kr,2B1*/Mr,c,2N/(m·Wb)The coupling factor of rotor cage multiplied with the complex conjugate of the first air-gap field harmonic and divided by rotor cage inductance of four-pole harmonic.X̃r,ϵ,2B̲1/Mr,c,2Wb/mThe eccentricity coupling factor of rotor cage four-pole harmonic multiplied with the first air-gap field harmonic and divided by rotor cage inductance of four-pole harmonic.Following [30, 32] a combined electromechanical model can be derived starting from the voltage-flux equation for the control winding and the equation for rotor cage four-pole harmonic in stator coordinates(4)û̲c=Rcî̲c+dψ̲̂c,2dt,0=Rr,2î̲r,2+dψ̲̂r,2dt-j2ωmψ̲̂r,2.
The four-pole harmonic flux leakages are(5)ψ̲̂c,2=Lcî̲c+Mr,c,2î̲r,2+Xc,ϵ,2B̲̂1z̲r,ψ̲̂r,2=Lr,2î̲r,2+Mc,r,2î̲c+Xr,ϵ,2B̲̂1z̲r.
By substitution
(6)û̲c,0=(Rc+jω1Lc)î̲c,0+Lcdî̲c,0dt+jω1Mr,c,2î̲r,2,0+ddt(Mr,c,2î̲r,2,0)+Xc,ϵ,2B̲1(ż̲r+jω1z̲r),0=(γr,2+jω2)Mr,c,2î̲r,2,0+ddt(Mr,c,2î̲r,2,0)+jω2Mr,c,2M̃c,r,2î̲c,0+Mr,c,2M̃c,r,2dî̲c,0dt+Mr,c,2X̃r,ϵ,2B̲1[ż̲r+jω2z̲r],
where z̲ is a complex coordinate representation of the rotor eccentricity. In addition, the control force fc  in terms of the parameters in Table 1 is given by(7)fc=πdrlr4μ0δ0[αz̲r+β̲ej2ω1tz̲r*]︸⇒Pem(t)+πdrlr4δ0B̲1*[(kr,2Mr,c,2)Mr,c,2î̲r,2,0+kcî̲c,0].︸⇒Cem
These equations include all the parameters to identify. Since the complex coordinate system of z̲ is decomposed in real and imaginary parts in the final model, matrices Pem(t) and Cem, are given by(8)Pem(t)=πdrlr4μ0δ0([Re{α}-Im⁡{α}Im⁡{α}Re{α}]+[Re{βej2ω1t}Im⁡{βej2ω1t}Im⁡{βej2ω1t}-Re{βej2ω1t}]),(9)CemC=πdrlr4δ0[kcB̲1*(kr,2Mr,c,2)B̲1*],(10)Cem=[Re{CemC}-Im⁡{CemC}Im⁡{CemC}Re{CemC}].
It should be noted that in the time-invariant case Pem(t) is constant Pem.Equation (6) can be written in matrix form(11)[Lc1Mr,c,2M̃c,r,21]×ddt[î̲c,0Mr,c,2î̲r,2,0]+[Rc+jω1Lcjω1jω2Mr,c,2M̃c,r,2γr,2+jω2][î̲c,0Mr,c,2î̲r,2,0]+[Xc,ϵ,2B̲1Mr,c,2X̃r,ϵ,2B̲1]ż̲r+[jω1Xc,ϵ,2B̲1jω1Mr,c,2X̃r,ϵ,2B̲1]z̲r=[10]û̲c,0.Rearranging this will give the rest of the matrices, which are needed for the combined model(12)ddt[î̲c,0Mr,c,2î̲r,2,0]=-[Lc1Mr,c,2M̃c,r,21]-1[Xc,ϵ,2B̲1Mr,c,2X̃r,ϵ,2B̲̂1]︸SemCż̲r-[Lc1Mr,c,2M̃c,r,21]-1[jω1Xc,ϵ,2B̲1jω1Mr,c,2X̃r,ϵ,2B̲1]︸QemCz̲r-[Lc1Mr,c,2M̃c,r,21]-1[Rc+jω1Lcjω1jω2Mr,c,2M̃c,r,2γr,2+jω2]︸AemC×[î̲c,0Mr,c,2î̲r,2,0]+[Lc1Mr,c,2M̃c,r,21]-1[10]︸BemCû̲c,0.
Matrices Aem, Bem, Sem, and Qem are finally obtained like Cem in  (10)(13)Aem=[Re{AemC}-Im⁡{AemC}Im⁡{AemC}Re{AemC}],Bem=[Re{BemC}-Im⁡{BemC}Im⁡{BemC}Re{BemC}],Sem=[Re{SemC}-Im⁡{SemC}Im⁡{SemC}Re{SemC}],Qem=[Re{QemC}-Im⁡{QemC}Im⁡{SemC}Re{QemC}].These matrices and the mechanical model (1) can be combined in one state-space model (3).The parameters of the electromechanical model are listed in Table1. Certain practical constraints were set for the parameters for fulfilling physical quantities. Here the resistance is constant and known (14.5), so it does not need to be optimized. When the effect of the unbalanced magnetic pull is ignored we can get the LTI model. The input u(t) consists of the voltage input v to the control winding and the disturand the outputs are the displacements urc of the rotor center. The system matrices A, B, and C are the functions of the unknown parameters in the model which are reformed in a vector as(14)P={Lc,kcB̲1*,Mr,c,2M̃c,r,2,γr,2,Xc,ϵ,2B̲1,α,kr,2B̲1*Mr,c,2,X̃c,ϵ,2B̲1Mr,c,2}.
The corresponding significances of the unknown parameters, and the detailed derivation of the model can be found in [32].


## 2.2. The Artificial Fish-Swarm Algorithm

Suppose that the problem under consideration hasD-dimensions. Initialize the swarm with N artificial fish. The state of one artificial fish can be formulated as Xi=(xi1,xi2,…,xiD), i=1,…,N, where Xi represents the target variable for the problem under consideration. y=f(Xi) stands for the food concentration of the artificial fish currently, where it is the objective function. The basic behaviours of artificial fish can be expressed as follows (dij=∥Xj-Xi∥ stands for the Euclidean distance between Xi and Xj, “vd” is visual distance of the artificial fish individual, “s” is the size of the movement of artificial fish, δ is the crowd factor of the artificial fish) [6].(1) Preying
The current state of the artificial fish isXi, the artificial fish selects a state Xj randomly within the visual distance, such as Xj=Xi+rand(0,1)×vd. If f(Xj)<f(Xi) the artificial fish moves from Xi towardsXj, meaning that Xit→Xit+1. The formulation can be depicted as follows:
(15)Xit+1=Xit+rand(0,1)×s×Xjt-Xit‖Xjt-Xit‖.
If f(Xj)>f(Xi), the artificial fish selects another state randomly again. If the artificial fish cannot meet the requirement in a given time, then it moves one step randomly as
(16)Xit+1=Xit+rand(0,1)×s.(2) Swarming
The current state of the artificial fish isXi,   nf is the number of its fellows within the visual distance, equal to the number of elements in the set of B={Xj∣dij≤Visual}. If nf≠0 that is the set B is not empty, let Xcenter=∑j=1nfXj/nf and then ycenter=f(Xcenter) stands for the fitness of the centre position. If nf×ycenter<δ×yi, meaning that this area is not crowded, then if ycenter<yi, the artificial fish moves one step towards the centre position:
(17)Xit+1=Xit+rand(0,1)×s×Xct-Xit‖Xct-Xit‖.
Otherwise it executes the behaviour of preying.(3) Chasing
The current state of the artificial fish isXi, Xminstands for the best artificial fish individual within Xi’s visual distance. nf is the number of Xmin’s fellows within the visual distance. ymin=f(Xmin), if ymin<yi and nf×ymin<δ×yi, the artificial fish moves one step to Xmin:
(18)Xit+1=Xit+rand(0,1)×s×Xmin⁡t-Xit‖Xmin⁡t-Xit‖.
Otherwise it executes the behaviour of preying.


## 3. Hybrid Optimization Methods of Articificial Fish Algorithm and Culture Algorithm

Here, the fish swarm is regarded as the population space, where the domain knowledge is extracted from. Then the domain knowledge is formed and stored in belief space so as to model and impact the evolution of the population at iteration. In four versions of CAFAC, we use the situation knowledge and the normative knowledge to guide the direction and the step size of the evolution. Both of them can be depicted as follows.


### 3.1. Structures of Belief Space in CAFAC

The situational knowledge provides a set of best individuals available for the interpretation of specific individual experience [19]. Here, the situational exemplar set consists of only the best fish found so far, S=〈St∣St={s1t,s2t,…,snt}〉, St stands for the best fish in the swarm at iteration t. In other words, it can be initialized with the best fish in the initial fish swarm and updated by the following function: (19)sjt+1={Xgbest,jt+1iff(Xgbestt+1)<f(st),sjtotherwise,
where Xgbestt+1 denotes the best artificial fish individual in the fish swarm at generation t+1.The normative knowledge can give the feasible solution space of the optimization problems under consideration [19]. It is a set of information for each variable and is given as (20)N=〈I,U,L,D〉,
where U, L and D are n-dimensional vectors, and I={x∣l≤x≤u}, n is the number of the variables, lj and uj are the lower and upper bounds for the jth variable, respectively, Lj and Ujare the values of the fitness function associated with the bound lj and uj. Generally, lj and uj are initialized with the lower and upper bounds of individuals. Lj and Uj are usually initialized with positive infinity. The formulation for normative knowledge updating can be depicted in Table 2.Table 2
Formulation for normative knowledge updating.
ljt+1={xi,jifxi,j≤ljtorf(Xi)<Ljtljt,otherwiseLjt+1={f(Xi)ifxi,j≤ljtorf(Xi)<LjtLjt,otherwiseujt+1={xk,jifxk,j≥ujtorf(Xk)<Ujtujt,otherwiseUjt+1={f(Xk)ifxk,j≥ujtorf(Xk)<UjtUjt,otherwisewhere theith individual affects the lower bound for variable j, and the kth individual affects the upper bound for variable j. Note that t denotes the current generation of the belief space.


### 3.2. Acceptance Function in CAFAC

The acceptance function determines which individuals and their performances can have impact on the knowledge in the belief space. The number of the individuals accepted for the update of the belief space is obtained according to the following function [1]: (21)fa(N,t)=N⋅β+⌊N⋅βt⌋,
where N is the size of the swarm, t is the iteration number, and β is a constant (usually chosen as 0.2).


### 3.3. Influence Functions in CAFAC

The belief space can influence the evolution in the population space in three ways:(i)
determining the step size of the evolution,(ii)
determining the direction of the evolution,(iii)
determining the visual distance of AFA.More precisely, if the normative knowledge is used to determine the step size of the evolution and visual distance in AFA, our knowledge-based AFA is named as CAFAC (Ns). In four versions of CAFAC, all of the behaviours, preying, swarming, and chasing, are modelled by the knowledge. The influence function for the CAFAC is defined as in Tables3, 4 and 5.Table 3
Influence function for swarming.
SwarmingNsxikt+1=xikt+size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥Sdxikt+1={xikt+|rand(0,1)×s×(xckt-xikt)∥Xct-Xit∥|ifxikt<sktxikt-|rand(0,1)×s×(xckt-xikt)∥Xct-Xit∥|ifxikt>sktxikt+rand(0,1)×s×(xckt-xikt)∥Xct-Xit∥,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt<sktxikt-|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt>sktxikt+size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥,otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt<lktxikt-|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt>uktxikt+size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥,otherwiseTable 4
Influence function for preying.
PreyingSelect next  state (Ns, NsSd, NsNd)Xit+1=Xit+rand(0,1)×size(Ii)i≤try_numNsxikt+1=xikt+size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥Sdxikt+1={xikt+|rand(0,1)×s×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt<sktxikt-|rand(0,1)×s×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt>sktxikt+rand(0,1)×s×(xikt+1-xikt)∥Xit+1-Xit∥,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt<sktxikt-|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt>sktxikt+size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥,otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt<lktxikt-|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt>uktxikt+size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥,otherwisei>try_numNsxikt+1=xikt+size(Ik)×rand(0,1)Sdxikt+1={xikt+|rand(0,1)×s|ifxikt<sktxikt-|rand(0,1)×s|ifxikt>sktxikt+rand(0,1)×s,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)|ifxikt<sktxikt-|size(Ik)×rand(0,1)|ifxikt>sktxikt+size(Ik)×rand(0,1),otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)|ifxikt<lktxikt-|size(Ik)×rand(0,1)|ifxikt>uktxikt+size(Ik)×rand(0,1),otherwiseTable 5
Influence function for chasing.
ChasingNsxikt+1=xikt+size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥Sdxikt+1={xikt+|rand(0,1)×s×(xminkt-xikt)∥Xmint-Xit∥|ifxikt<sktxikt-|rand(0,1)×s×(xminkt-xikt)∥Xmint-Xit∥|ifxikt>sktxikt+rand(0,1)×s×(xminkt-xikt)∥Xmint-Xit∥,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt<sktxikt-|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt>sktxikt+size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥,otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt<lktxikt-|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt>uktxikt+size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥,otherwiseIf the situational knowledge is used to guide the direction of the evolution, our knowledge-based AFA is named as CAFAC (Sd).If the normative knowledge guides the step size and the visual distance meanwhile the situational knowledge is used to determine the direction of the evolution, respectively, our knowledge-based AFA is named as CAFAC (Ns+Sd).If the normative knowledge is used to determine the step size and direction of the evolution and the visual distance, our knowledge-based AFA is named as CAFAC (Ns+Nd).In Tables3, 4, and 5, size(Ik)=uk-lk  is the size of the belief interval which is decided by the normative knowledge for the kth variable. The rand(0,1) is a random number uniformly distributed in the interval (0,1). The other parameters are depicted in Section 2.2.


### 3.4. Crossover Operator

A criterion is set up to judge whether the algorithm falls into local optimum:(22)|f(Xit)-f(Xit-1)f(Xit-1)|<0.1.
When the criterion is satisfied, the crossover operator will be applied to the ith artificial fish Xi(i=1,…,N):(23)xi′=xr1+α×(xr2-xr1),
where  xr2, xr1 are two individuals selected randomly, r1, r2 are integers, which are generated randomly in the interval of [1,N] and r1≠r2≠i.  α is random number uniformly distributed in interval of [-d,1+d] and d is constant (0.25). Evaluate the child xi′ and replace the individual xi with the child if xi′ performs better [35].


## 3.1. Structures of Belief Space in CAFAC

The situational knowledge provides a set of best individuals available for the interpretation of specific individual experience [19]. Here, the situational exemplar set consists of only the best fish found so far, S=〈St∣St={s1t,s2t,…,snt}〉, St stands for the best fish in the swarm at iteration t. In other words, it can be initialized with the best fish in the initial fish swarm and updated by the following function: (19)sjt+1={Xgbest,jt+1iff(Xgbestt+1)<f(st),sjtotherwise,
where Xgbestt+1 denotes the best artificial fish individual in the fish swarm at generation t+1.The normative knowledge can give the feasible solution space of the optimization problems under consideration [19]. It is a set of information for each variable and is given as (20)N=〈I,U,L,D〉,
where U, L and D are n-dimensional vectors, and I={x∣l≤x≤u}, n is the number of the variables, lj and uj are the lower and upper bounds for the jth variable, respectively, Lj and Ujare the values of the fitness function associated with the bound lj and uj. Generally, lj and uj are initialized with the lower and upper bounds of individuals. Lj and Uj are usually initialized with positive infinity. The formulation for normative knowledge updating can be depicted in Table 2.Table 2
Formulation for normative knowledge updating.
ljt+1={xi,jifxi,j≤ljtorf(Xi)<Ljtljt,otherwiseLjt+1={f(Xi)ifxi,j≤ljtorf(Xi)<LjtLjt,otherwiseujt+1={xk,jifxk,j≥ujtorf(Xk)<Ujtujt,otherwiseUjt+1={f(Xk)ifxk,j≥ujtorf(Xk)<UjtUjt,otherwisewhere theith individual affects the lower bound for variable j, and the kth individual affects the upper bound for variable j. Note that t denotes the current generation of the belief space.


## 3.2. Acceptance Function in CAFAC

The acceptance function determines which individuals and their performances can have impact on the knowledge in the belief space. The number of the individuals accepted for the update of the belief space is obtained according to the following function [1]: (21)fa(N,t)=N⋅β+⌊N⋅βt⌋,
where N is the size of the swarm, t is the iteration number, and β is a constant (usually chosen as 0.2).


## 3.3. Influence Functions in CAFAC

The belief space can influence the evolution in the population space in three ways:(i)
determining the step size of the evolution,(ii)
determining the direction of the evolution,(iii)
determining the visual distance of AFA.More precisely, if the normative knowledge is used to determine the step size of the evolution and visual distance in AFA, our knowledge-based AFA is named as CAFAC (Ns). In four versions of CAFAC, all of the behaviours, preying, swarming, and chasing, are modelled by the knowledge. The influence function for the CAFAC is defined as in Tables3, 4 and 5.Table 3
Influence function for swarming.
SwarmingNsxikt+1=xikt+size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥Sdxikt+1={xikt+|rand(0,1)×s×(xckt-xikt)∥Xct-Xit∥|ifxikt<sktxikt-|rand(0,1)×s×(xckt-xikt)∥Xct-Xit∥|ifxikt>sktxikt+rand(0,1)×s×(xckt-xikt)∥Xct-Xit∥,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt<sktxikt-|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt>sktxikt+size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥,otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt<lktxikt-|size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥|ifxikt>uktxikt+size(Ik)×rand(0,1)×(xckt-xikt)∥Xct-Xit∥,otherwiseTable 4
Influence function for preying.
PreyingSelect next  state (Ns, NsSd, NsNd)Xit+1=Xit+rand(0,1)×size(Ii)i≤try_numNsxikt+1=xikt+size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥Sdxikt+1={xikt+|rand(0,1)×s×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt<sktxikt-|rand(0,1)×s×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt>sktxikt+rand(0,1)×s×(xikt+1-xikt)∥Xit+1-Xit∥,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt<sktxikt-|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt>sktxikt+size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥,otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt<lktxikt-|size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥|ifxikt>uktxikt+size(Ik)×rand(0,1)×(xikt+1-xikt)∥Xit+1-Xit∥,otherwisei>try_numNsxikt+1=xikt+size(Ik)×rand(0,1)Sdxikt+1={xikt+|rand(0,1)×s|ifxikt<sktxikt-|rand(0,1)×s|ifxikt>sktxikt+rand(0,1)×s,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)|ifxikt<sktxikt-|size(Ik)×rand(0,1)|ifxikt>sktxikt+size(Ik)×rand(0,1),otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)|ifxikt<lktxikt-|size(Ik)×rand(0,1)|ifxikt>uktxikt+size(Ik)×rand(0,1),otherwiseTable 5
Influence function for chasing.
ChasingNsxikt+1=xikt+size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥Sdxikt+1={xikt+|rand(0,1)×s×(xminkt-xikt)∥Xmint-Xit∥|ifxikt<sktxikt-|rand(0,1)×s×(xminkt-xikt)∥Xmint-Xit∥|ifxikt>sktxikt+rand(0,1)×s×(xminkt-xikt)∥Xmint-Xit∥,otherwiseNsSdxikt+1={xikt+|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt<sktxikt-|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt>sktxikt+size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥,otherwiseNsNdxikt+1={xikt+|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt<lktxikt-|size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥|ifxikt>uktxikt+size(Ik)×rand(0,1)×(xminkt-xikt)∥Xmint-Xit∥,otherwiseIf the situational knowledge is used to guide the direction of the evolution, our knowledge-based AFA is named as CAFAC (Sd).If the normative knowledge guides the step size and the visual distance meanwhile the situational knowledge is used to determine the direction of the evolution, respectively, our knowledge-based AFA is named as CAFAC (Ns+Sd).If the normative knowledge is used to determine the step size and direction of the evolution and the visual distance, our knowledge-based AFA is named as CAFAC (Ns+Nd).In Tables3, 4, and 5, size(Ik)=uk-lk  is the size of the belief interval which is decided by the normative knowledge for the kth variable. The rand(0,1) is a random number uniformly distributed in the interval (0,1). The other parameters are depicted in Section 2.2.


## 3.4. Crossover Operator

A criterion is set up to judge whether the algorithm falls into local optimum:(22)|f(Xit)-f(Xit-1)f(Xit-1)|<0.1.
When the criterion is satisfied, the crossover operator will be applied to the ith artificial fish Xi(i=1,…,N):(23)xi′=xr1+α×(xr2-xr1),
where  xr2, xr1 are two individuals selected randomly, r1, r2 are integers, which are generated randomly in the interval of [1,N] and r1≠r2≠i.  α is random number uniformly distributed in interval of [-d,1+d] and d is constant (0.25). Evaluate the child xi′ and replace the individual xi with the child if xi′ performs better [35].


## 4. Application for Parameter Identification of Induction Motor

### 4.1. Identification Using CAFAC and PEM

In the identification process we disturb the system by voltagev and force fex excitations. In order to decrease the dimension of the problem we remove the disturbance from the data. So the input fex is set to zero. Then the problem to be considered is to match the model output with processed data using the recorded band limited white noise signal as input v. The basic idea of parameter estimation is to find a vector P to minimize the following cost function:(24)J(P)=∑n=1N|u⌢rc(n)-urc(n)|N,
where urc(n) are the measurement of output for the real system under certain inputs; u⌢rc(n) is the estimated output by exciting the model (1)-(2) using the same inputs. The experiments are carried out using a simulated reference signal generated by the real system’s parameters, which have been verified by simulations for a small 30 kW two-pole cage induction motor.Here we use an indicator of fit value to evaluate the accuracy of an identified model for a specific parameters vectorP and given inputs v(t) and fex(t). The fit value is computed as [30](25)md=100×(1-J(P)(∑n=1N|u⌢rc(n)-u̅rc|2)1/2),
where u̅rc is the average value of the measurement data {urc(n)}. This indicator was chosen because it has been used in the research of optimal control of an induction motor using the prediction error method (PEM) for identification.In our previous work, we found that the NsSd version has better performance than the three others we mentioned in Section3 [26]. Even if the CAFAC has better optimization function than PSO, the speed of the PSO is an obvious advantage. Therefore we combine the CAFAC and the basic PSO so as to speed up the optimization process. The optimization process is implemented using the software MATAB. The basic procedure of CAFAC algorithm can be described as follows.(1)
Set all the values for the parameters and initialize theN artificial fish in the search scope with random positions.(2)
Evaluate all the artificial fishes using the fitness functiony and initialize the belief space.(3)
For eachith artificial fish, simulate the preying pattern, swarming, and chasing patterns separately, and select the best child fish. If the child is better, replace the ith artificial fish with the child.(4)
Update the belief space.(5)
If the crossover criterion is satisfied, apply the crossover operator to theith artificial fish got from Step (3).(6)
Switch to PSO until the termination criterion is satisfied.(7)
Switch to (3) until the termination criterion is satisfied.(8)
End the program if the final termination criterion is satisfied.The termination criterion here is the same as (22) and the final termination criterion is the maximum of the whole iteration.In PEM identification the general idea is to produce a model that minimizes a norm, such as(26)VN(θ,ZN)=1N∑t=0Nl(εF(t,θ)),
where εF(t,θ) is the prediction error filtered through a linear filter and ℓ(·) is a scalar function [36]. ZN  is the data consisting of N samples and θ is the model parameterization (i.e., polynomials). The problem is usually solved iteratively using gradient-based methods.With the identification data, the PEM identification will result in fit values of 79.1 and 80.6 in horizontal and vertical directions. The CAFAC identification produced a model that had fit values of 73.9 and 77.7. Figure4 displays the filtered measurement, and the model outputs from PEM and the parametric model. It can be stated that the models estimate the data reasonably well. The main differences occur near zero where the response is modest.Measured data and modelled outputs using PEM and CAFAC identification methods.
(a)(b)


### 4.2. Simulation Results

The obtained model was tested in simulations by implementing a state observer and a linear quadratic controller (LQ) for the model. The same was done in [29] with a model, which was identified using PEM. A real measurement of rotor vibrations (similar to the identification data, but including the disturbance and not input signal) in the 2-pole induction motor was used as the input in the simulations. The expected result was that the observer would follow this signal and the LQ controller, fed through the model of the actuator and would compensate the vibrations. Figure 5 shows the estimation error of the observer. It can be concluded that the observer works decently since the amplitude of the estimation error is about 5 μm and the measured amplitude varies between 130 and 240 μm. The control result is displayed in Figure 6, where the controller is switched on after three seconds. During the 17-second period when control is on, the reductions of the vibrations are up to 67.0% and 70.3% and the control also reduces the fluctuation of the amplitude, which depends on the slip angle.Figure 5
The estimation error of the observer inx- and y-directions.Figure 6
Rotor displacement with the CAFAC model when control is switched on after 3 seconds.It is also necessary to consider the control signal because the test equipment can produce voltages in the range of ±100 V, and naturally the voltage levels should not be very high in a properly working controller. Figure7 shows that there is at first a peak in the control signal, which reaches the saturation level, but it settles close to ±20 V range after 0.02 seconds.Figure 7
Control voltage of the LQ controller with CAFAC model when control is switched off after 3 seconds.The same simulations were also done with the black box model, which was identified using PEM, and the controller was tuned in the same manner. In this case the controller reduced vibrations in the simulations by 70.0% and 64.2%. The result is displayed in Figure8. The control signals with the PEM model stay between ±50 V after that (see Figure 9). Strictly based on this data, the parametric model is slightly better than the PEM identification. However, the parametric model has not yet been successfully used in the real environment, whereas the PEM identification has been proven to work and to provide a reduction of the vibrations up to 90% depending on how the controller is tuned.Figure 8
Rotor displacement with the PEM model when control is switched on after  3 seconds.Figure 9
Control voltage of the LQ controller with PEM model when control is switched on after 3 seconds.


## 4.1. Identification Using CAFAC and PEM

In the identification process we disturb the system by voltagev and force fex excitations. In order to decrease the dimension of the problem we remove the disturbance from the data. So the input fex is set to zero. Then the problem to be considered is to match the model output with processed data using the recorded band limited white noise signal as input v. The basic idea of parameter estimation is to find a vector P to minimize the following cost function:(24)J(P)=∑n=1N|u⌢rc(n)-urc(n)|N,
where urc(n) are the measurement of output for the real system under certain inputs; u⌢rc(n) is the estimated output by exciting the model (1)-(2) using the same inputs. The experiments are carried out using a simulated reference signal generated by the real system’s parameters, which have been verified by simulations for a small 30 kW two-pole cage induction motor.Here we use an indicator of fit value to evaluate the accuracy of an identified model for a specific parameters vectorP and given inputs v(t) and fex(t). The fit value is computed as [30](25)md=100×(1-J(P)(∑n=1N|u⌢rc(n)-u̅rc|2)1/2),
where u̅rc is the average value of the measurement data {urc(n)}. This indicator was chosen because it has been used in the research of optimal control of an induction motor using the prediction error method (PEM) for identification.In our previous work, we found that the NsSd version has better performance than the three others we mentioned in Section3 [26]. Even if the CAFAC has better optimization function than PSO, the speed of the PSO is an obvious advantage. Therefore we combine the CAFAC and the basic PSO so as to speed up the optimization process. The optimization process is implemented using the software MATAB. The basic procedure of CAFAC algorithm can be described as follows.(1)
Set all the values for the parameters and initialize theN artificial fish in the search scope with random positions.(2)
Evaluate all the artificial fishes using the fitness functiony and initialize the belief space.(3)
For eachith artificial fish, simulate the preying pattern, swarming, and chasing patterns separately, and select the best child fish. If the child is better, replace the ith artificial fish with the child.(4)
Update the belief space.(5)
If the crossover criterion is satisfied, apply the crossover operator to theith artificial fish got from Step (3).(6)
Switch to PSO until the termination criterion is satisfied.(7)
Switch to (3) until the termination criterion is satisfied.(8)
End the program if the final termination criterion is satisfied.The termination criterion here is the same as (22) and the final termination criterion is the maximum of the whole iteration.In PEM identification the general idea is to produce a model that minimizes a norm, such as(26)VN(θ,ZN)=1N∑t=0Nl(εF(t,θ)),
where εF(t,θ) is the prediction error filtered through a linear filter and ℓ(·) is a scalar function [36]. ZN  is the data consisting of N samples and θ is the model parameterization (i.e., polynomials). The problem is usually solved iteratively using gradient-based methods.With the identification data, the PEM identification will result in fit values of 79.1 and 80.6 in horizontal and vertical directions. The CAFAC identification produced a model that had fit values of 73.9 and 77.7. Figure4 displays the filtered measurement, and the model outputs from PEM and the parametric model. It can be stated that the models estimate the data reasonably well. The main differences occur near zero where the response is modest.Measured data and modelled outputs using PEM and CAFAC identification methods.
(a)(b)


## 4.2. Simulation Results

The obtained model was tested in simulations by implementing a state observer and a linear quadratic controller (LQ) for the model. The same was done in [29] with a model, which was identified using PEM. A real measurement of rotor vibrations (similar to the identification data, but including the disturbance and not input signal) in the 2-pole induction motor was used as the input in the simulations. The expected result was that the observer would follow this signal and the LQ controller, fed through the model of the actuator and would compensate the vibrations. Figure 5 shows the estimation error of the observer. It can be concluded that the observer works decently since the amplitude of the estimation error is about 5 μm and the measured amplitude varies between 130 and 240 μm. The control result is displayed in Figure 6, where the controller is switched on after three seconds. During the 17-second period when control is on, the reductions of the vibrations are up to 67.0% and 70.3% and the control also reduces the fluctuation of the amplitude, which depends on the slip angle.Figure 5
The estimation error of the observer inx- and y-directions.Figure 6
Rotor displacement with the CAFAC model when control is switched on after 3 seconds.It is also necessary to consider the control signal because the test equipment can produce voltages in the range of ±100 V, and naturally the voltage levels should not be very high in a properly working controller. Figure7 shows that there is at first a peak in the control signal, which reaches the saturation level, but it settles close to ±20 V range after 0.02 seconds.Figure 7
Control voltage of the LQ controller with CAFAC model when control is switched off after 3 seconds.The same simulations were also done with the black box model, which was identified using PEM, and the controller was tuned in the same manner. In this case the controller reduced vibrations in the simulations by 70.0% and 64.2%. The result is displayed in Figure8. The control signals with the PEM model stay between ±50 V after that (see Figure 9). Strictly based on this data, the parametric model is slightly better than the PEM identification. However, the parametric model has not yet been successfully used in the real environment, whereas the PEM identification has been proven to work and to provide a reduction of the vibrations up to 90% depending on how the controller is tuned.Figure 8
Rotor displacement with the PEM model when control is switched on after  3 seconds.Figure 9
Control voltage of the LQ controller with PEM model when control is switched on after 3 seconds.


## 5. Conclusions

In this paper, we used a knowledge-based Artificial Fish-Swarm optimization algorithm to identify the parameters of an actuator model in an electrical machine. The culture framework was invested to direct the crossover operation in the AFA. In the culture framework, the situation knowledge and the normative knowledge were employed to guide the evolution of the Artificial Fish-Swarm optimization. The crossover operation can help the artificial fish jump out of the local optimum without losing the characteristics of the previous generation. The proposed knowledge-based Artificial Fish-Swarm optimization can improve the performance of the original Artificial Fish-Swarm optimization and can be applied, for example, to find parameter values for a model of an actuator used for vibration control of rotor in an induction motor. Realistic values for the components of a structural first-principles electromechanical model were obtained, which improved the earlier identification results considerably. The results compared well with those obtained by PEM identification, but because the latter does not provide physical parameter values, the method presented in the paper can be considered an improvement.  Also, the nature-inspired evolutionary algorithms considered are particularly interesting, because they are computationally effective and reasonably easy to understand.  Also, they do not need computation of gradients. For the future works, a time-varying model must be considered. In order to do that, more knowledge in the culture framework should be invested and more swarm intelligence must be tested to succeed in parameter identification.



---

*Source: 637138-2011-05-29.xml*