Volterra system identification using adaptive genetic algorithms
Introduction
Identification of nonlinear systems is of considerable interest in many engineering and science applications. Volterra series provide a general representation of nonlinear systems and have been applied in system identification [1]. They have been also applied in other engineering applications [2], [3], [4]. The complexity of the identified system is normally determined by the order and the time delays of the Volterra system used for identification. Naturally, the number of possible Volterra candidates which can model the system will excessively increase in proportion with the system order and/or time delays. There have been many attempts to detect and estimate the proper Volterra candidates and their corresponding coefficients or kernels. Neural networks [5] have been used to identify second-order time-invariant nonlinear system using a combination of quadratic polynomials and linear layers. Korenberg [6] proposed a fast orthogonal approach to select the exact candidates using a modified Gram-Shmidt orthogonalization and Choleskey decomposition. Korenberg’s method is a substantial improvement of the methods introduced by Wiener [7] and later developed by Lee and Schetzen [8]. Wiener employed Gram-Shmidt orthogonalization to rearrange Volterra series into a sum of functionals that were orthogonal for a particular Gaussian input. Wiener kernels are determined by the Lee and Schetzen formula. A truncated Wiener series of a given order could be arranged to a truncated Volterra series of the same order which correspond to a least-square fit out of the Volterra series of that order given the particular Gaussian input used in the orthogonalization process. Korenberg eliminated many drawbacks of Wiener and Lee and Schetzen approaches. For example, the input signal need not be a white or a Gaussian sequence as required by the two methods. Additionally, the input does not have to have special autocoreelataion properties. Also, the two approaches do not provide as accurate kernel computation. Finally, matrix inversion is not required. It should be noted that the approach proposed in this paper do possess those advantages when compared to the two approaches.
Evolutionary algorithms have also been applied to find the minimal structure of nonlinear systems. In [9], a genetic algorithm searches the space of subsets of polynomial neural units and applies evolutionary operator to detect a near-minimal linear architecture to construct a functional link neural network (FLN). Yao [10] has proposed another GA method to model the sparse Volterra filter so that the number of candidates to be estimated is greatly reduced.
The Volterra system modeling process requires a candidate selection and associated kernel estimation. Yao [10] used a binary coded chromosomes to encode the candidate location in each chromosome and then used a least square approach to find the kernel value. In the evolutionary FLN [9], a similar approach was adopted where a binary chromosome was used to indicate whether an input polynomial is either dropped or included in the representation. The weight associated with each polynomial is adjusted using a learning rule which decreases the overall representation error for the network described by each chromosome.
In this paper we address the problem of selecting the reduced Volterra candidates and calculating the kernel of each candidate in one single step. To do that we employ a genetic algorithm with floating point representation of its parameters. At the outset all chromosomes will have the longest possible number of parameters which might encode the system. During the process of evolution, the parameters which have the least significant effect on the error reduction process are continuously removed from the chromosome. The GA population selection process and the genetic operators, mutation and crossover have been chosen to accelerate the evolution process and to find the correct solution as well. Also, the fitness function chosen in this work does not allow insignificant candidates to participate in the final solution or to “hitch hike”.
The paper is organized as follows, Volterra system representation of nonlinear system is presented in Section 2. The evolutionary approach for candidate detection and kernel estimation is then discussed in Section 3. 4 The proposed evolutionary approach, 5 Adaptation of the GA algorithm present the proposed evolutionary algorithm. Section 6 describes the experiments of applying the proposed algorithm in identifying several nonlinear systems and the analysis of those results.
Section snippets
Discrete Volterra systems
The Volterra approach can be considered as a mapping between the input and output spaces of a system. The Volterra series representation of continuous time dynamic systems takes the formwhere y(t) is the system output at time t, u(t) is the input at time t,is the nth order Volterra operator, hn(τ1,…,τn) is the nth order Volterra kernel, and τn is the system memory. There are some problems that exist in the
The evolutionary Volterra detection approach
Identification of Volterra terms and their kernels can be considered as an optimization problem where a set of parameters are needed to be estimated in such a way that the error between the outputs of the Volterra representation and the actual system is minimum. Classical optimization methods such as gradient-based techniques can easily get trapped in local minima. They also rely on local information and need smooth search space. The possibility of these methods to find a good solution
The proposed evolutionary approach
In the following, another GA-based approach to Volterra system identification is proposed. The approach differs from previous GA-based methods in the following aspects:
- •
A floating point chromosome representation of the Volterra kernels is used. The advantages of using floating point encoding instead of the binary one has been demonstrated in [12].
- •
Neither the system order, n, nor the number of time delays, N, need to be prespecified a priori. The algorithm starts with relatively large values for
Adaptation of the GA algorithm
Since the number of possible Volterra kernels can become too large, it is always desirable to provide a mechanism which can detect the significant ones. Korenberg used the orthogonal search method [6] and introduced the Fast Orthogonal Search method [22] for building difference equations models of nonlinear systems and for modeling time-series data. A modified Gram-Schmidt orthogonalization is applied to the truncated Volterra model represented by Eq. (2) in order to generate mutually
Simulation results and analysis
The proposed Volterra system identification algorithm has been tested using a set of experiments. We will describe two examples to demonstrate the performance of the algorithm. For the two examples, the input sequence, u, is drawn from a zero-mean unit-variance white Gaussian distribution. A number of 4000 data points was generated. The evolution process is halted when the final fitness of the system reaches a value of 0.9999 or a maximum number of generations have elapsed. In each generation a
Conclusions
In this paper, an evolutionary algorithm for Volterra systems identification is presented. The proposed approach is based on real-value encoding of the individuals of the genetic algorithm. The genes comprising an individual or chromosome represent the values of the Volterra kernels of the identified system. Volterra kernels which do not contribute to the system output are being removed through the process of evolution. The removal process exploits the correlation between the kernels and the
References (23)
Identification of nonlinear systems using laguuerre expansion of kernels
Ann. Biomed. Eng
(1993)- et al.
Nonlinear equalization of digital satellite channels
IEEE J. Selected Areas Commun
(1983) - et al.
Nonlinear echo cancellation of data signals
IEEE Trans. Commun
(1982) Quadratic linear filters for signal detection
IEEE Trans. Signal Process
(1991)- R. Parker, M. Tummala, Identification of volterra systems with a polynomial neural network, in: Proceedings of the 1992...
A robust orthogonal algorithm for system identification and time-series analysis
Biol. Cybern
(1989)- N. Wiener, Nonlinear Problems in Random Theory, MIT Press, Cambridge, MA,...
- et al.
Measurement of the wiener kernels of a nonlinear system by crosscorrelation
Int. J. Control
(1964) - et al.
Evolution of functional link networks
IEEE Trans. Evol. Comput
(2001) Genetic algorithm based identification of nonlinear systems by sparse volterra filters
IEEE Trans. Signal Process
(1999)
Calculation of the volterra kernels of nonlinear dynamic systems using an artificial neural network
Biol. Cybern
Cited by (15)
Synthesis of multi-variate Volterra systems by a topological assemblage scheme
2014, Probabilistic Engineering MechanicsCitation Excerpt :In civil engineering these concepts have been applied to calculate the wind-excited response of structures due to buffeting [9,10], as well as to represent the response of bridges subjected to vortex-induced vibration [11] and self-excited forces [12,13]. Several authors applied the Volterra series as a general framework for the identification of non-linear dynamical systems, e.g. [14,15] and within structural-health monitoring procedures, e.g. [16,17]. In cases where an analytical model of the dynamical system is available (e.g. through a non-linear differential equation), the VFRFs are usually calculated by means of harmonic probing method, which consists of evaluating analytically the response of a system excited by products of harmonic functions with different frequencies [18].
Parameters identification of nonlinear state space model of synchronous generator
2011, Engineering Applications of Artificial IntelligenceCitation Excerpt :Usually, it is considered that LS method is simple to use and cost little computation but large estimation error occurs when the system is influenced by colorful noises (Modares et al., 2010b). Although Volterra Series is useful in SG model identification but large number of Volterra kernels need to be selected and determined (Abbas and Bayoumi, 2004). Hartley series can be successfully used for parameters identification of SG but the assumption of the differentiability and continuity of the input and output variables are needed.
Adaptive genetic algorithms applied to dynamic multiobjective problems
2007, Applied Soft Computing JournalAir combat maneuver trajectory prediction of target based on Volterra series optimized by SAВA algorithm
2023, Beijing Hangkong Hangtian Daxue Xuebao/Journal of Beijing University of Aeronautics and Astronautics