# Two Identification Methods for Dual-Rate Sampled-Data Nonlinear Output-Error Systems

Authors: Jing Chen; Ruifeng Ding
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

This paper presents two methods for dual-rate sampled-data nonlinear output-error systems. One
method is the missing output estimation based stochastic gradient identification algorithm and the other
method is the auxiliary model based stochastic gradient identification algorithm. Different from the
polynomial transformation based identification methods, the two methods in this paper can estimate
the unknown parameters directly. A numerical example is provided to confirm the effectiveness of the
proposed methods.


---

## Body

## 1. Introduction

System identification plays an important part in many engineering applications [1–6]. Many identification methods assume that the input-output data at every sampling instant are available for linear systems [7–11] and nonlinear systems [12–20], which is usually not the case in practice. When the input and output signals of the systems have different sampling rates, these systems are usually called irregularly sampled-data systems [21–27], for example, dual-rate or multirate systems [28–30]. Dual-rate/multirate systems in which the input and the output are sampled at different frequencies arise widely in robust filtering and control [31–33], adaptive control [34–37], and system identification [38–43]. In the literature of dual-rate system identification, the so-called polynomial transformation technique is often used to transform the dual-rate model [44, 45].As far as we know, the identification methods based on the polynomial transformation technique cannot directly estimate the parameters of the dual-rate system and the number of the unknown parameters to be estimated is more than the number of the unknown parameters of the original dual-rate system.The nonlinear system consisting of a static nonlinear block followed by a linear dynamic system is called a Hammerstein system [46–49]. The nonlinearity of the Hammerstein system is usually expressed by some known basis functions [50, 51] or by a piece-wise polynomial function [52, 53]. When the Hammerstein system is a dual-rate system and has a preload nonlinearity, to the best of our knowledge, there is no work on identification of such systems. The main contributions of this paper are presenting the two methods directly for estimating the parameters of the dual-rate system. The proposed methods of this paper can combine the auxiliary model identification methods [54–57], the iterative identification methods [58–62], the multi-innovation identification methods [63–70], the hierarchical identification methods [71–83], and the two-stage or multistage identification methods [84, 85] to study identification problems for other linear systems [86–90] or nonlinear systems [91–97].The rest of this paper is organized as follows. Section2 introduces the dual-rate nonlinear output-error systems. Section 3 gives a missing output identification model based stochastic gradient algorithm. Section 4 provides an auxiliary model based stochastic gradient algorithm. Section 5 introduces an illustrative example. Finally, concluding remarks are given in Section 6.


## 2. Problem Formulation

Let “A=:X” or “X:=A” stand for “A is defined as X,” let the norm of a column vector X be ∥X∥2:=tr⁡[XTX], and let the superscript T denote the matrix transpose.Consider the following dual-rate nonlinear output-error system with colored noise:(1)y(t)=B(z)A(z)f(u(t))+v(t),
where y(t) is the system output, u(t) is the system input, v(t) is a stochastic white noise with zero mean, A(z) and B(z) are the polynomials in the unit backward shift operator [z-1y(t)=y(t-1)],
(2)A(z)=1+a1z-1+a2z-2+⋯+anz-n,B(z)=b1z-1+b2z-2+⋯+bnz-n,
and f(u(t)) is a preload nonlinearity shown in Figure 1 and can be expressed as [98, 99]
(3)f(u(t))={u(t)+m1,u(t)>0,0,u(t)=0,u(t)-m2,u(t)<0,
where m1 and -m2 are two preload points.Figure 1
The preload characteristics.For the dual-rate sampled-data system, all the input data{u(t), t=0,1,2,…} and only the scarce output data {y(tq), t=0,1,2,…,(q⩾2)} are known. The intersample outputs or missing outputs y(tq+j), j=1,2,…,q-1 are unavailable.Define a sign function(4)sgn⁡(u(t)):={1,ifu(t)>0,0,ifu(t)=0,-1,ifu(t)<0.
Then the function f(u(t)) can be expressed as
(5)f(u(t))=u(t)+m1+m22sgn⁡(u(t))+m1-m22sgn⁡(u2(t)).
Let
(6)g1=m1+m22,g2=m1-m22.
Hence, we have
(7)f(u(t))=u(t)+g1sgn⁡(u(t))+g2sgn⁡(u2(t)).
Once g1 and g2 are estimated, the parameters m1 and m2 can be computed by m1=g1+g2, m2=g1-g2.


## 3. The Missing Outputs Identification Model Based Stochastic Gradient Algorithm

Substituting (7) into (1) gets
(8)A(z)y(t)=B(z)(u(t)+g1sgn⁡(u(t))+g2sgn⁡(u2(t)))+A(z)v(t).
Define the parameter vector θ and information vector φ1(t) as
(9)θ≔[a1,a2,…,an,b1,b2,…,bn,b1g1,b2g1,…,bng1,b1g2,b2g2,…,bng2]T∈ℝ4n,(10)φ1(t)≔[(u2(t-n))-y(t-1)+v(t-1),-y(t-2)+v(t-2),…,-y(t-n)+v(t-n),u(t-1),u(t-2),…,u(t-n),sgn⁡(u(t-1)),sgn⁡(u(t-2)),…,sgn⁡(u(t-n)),sgn⁡(u2(t-1)),sgn⁡(u2(t-2)),…,sgn⁡(u2(t-n))]T∈ℝ4n.
From (9) and (10), we get
(11)y(t)=φ1T(t)θ+v(t)
or
(12)y(tq)=φ1T(tq)θ+v(tq).
Let θ^(t) be the estimate of θ. Defining and minimizing the cost function
(13)J(θ):=[y(tq)-φ1T(tq)θ]2
give the following stochastic gradient (SG) algorithm for estimating θ:
(14)θ^(tq)=θ^(tq-q)+φ^1(tq)r1(tq)e1(tq),(15)θ^(tq-i)=θ^(tq-q),i=q-1,q-2,…,1,e1(tq)=y(tq)-φ^1T(tq)θ^(tq-q),(16)φ^1(tq)=[(u2(t-n))-y(tq-1)+v^(tq-1),-y(tq-2)+v^(tq-2),…,-y(tq-n)+v^(tq-n),u(t-1),u(t-2),…,u(t-n),sgn⁡(u(t-1)),sgn⁡(u(t-2)),…,sgn⁡(u(t-n)),sgn⁡(u2(t-1)),sgn⁡(u2(t-2)),…,sgn⁡(u2(t-n))]T,(17)v^(tq-i)=y(tq-i)-φ^1T(tq-i)θ^(tq-i),(18)r1(tq)=r1(tq-q)+∥φ^1(tq)∥2,r(0)=1.
Since the information φ^1(tq) on the right-hand sides of (16) contains the unknown variables -y(tq-i)+v^(tq-i), i=q-1,q-2,…,1, the SG algorithm in (14)–(18) is impossible to implement. In this section, we use the missing outputs identification model (MOI) to overcome this difficulty; these unknown -y(tq-i)+v^(tq-i) are replaced with the output estimates -y^(tq-i)+v^(tq-i) of an MOI model,
(19)-y^(tq-i)+v^(tq-i)=-φ^1T(tq-i)θ^(tq-i),i=q-1,q-2,…,1,φ^1(tq-i+1)=[(u2(tq-i+1-n))-y^(tq-i)+v^(tq-i),-y^(tq-i-1)+v^(tq-i-1),…,-y^(tq-q+1)+v^(tq-q+1),-y(tq-q)+v^(tq-q),…,-y^(tq-i+1-n)+v^(tq-i+1-n),u(tq-i),u(tq-i-1),…,u(tq-i+1-n),sgn⁡(u(tq-i)),sgn⁡(u(tq-i-1)),…,sgn⁡(u(tq-i+1-n)),sgn⁡(u2(tq-i)),sgn⁡(u2(tq-i-1)),…,sgn⁡(u2(tq-i+1-n))]T,
where -y^(tq-i)+v^(tq-i) represents the estimate of -y(tq-i)+v(tq-i) at time tq-i, θ^(tq-i) represents the estimate of θ at time tq-i, and φ^1(tq-i) represents the estimate of φ1(q-i).Thus, we have the following missing output estimates based SG (MOE-SG) algorithm for estimating the parameter vectorθ in (9):
(20)θ^(tq)=θ^(tq-q)+φ^1(tq)r1(tq)e2(tq),(21)θ^(tq-i)=θ^(tq-q),i=q-1,q-2,…,1,(22)-y^(tq-i)+v^(tq-i)=-φ^1T(tq-i)θ^(tq-i),(23)φ^1(tq-i+1)=[(u2(tq-i+1-n))-y^(tq-i)+v^(tq-i),-y^(tq-i-1)+v^(tq-i-1),…,-y^(tq-q+1)+v^(tq-q+1),-y(tq-q)+v^(tq-q),…,-y^(tq-i+1-n)+v^(tq-i+1-n),u(tq-i),u(tq-i-1),…,u(tq-i+1-n),sgn⁡(u(tq-i)),sgn⁡(u(tq-i-1)),…,sgn⁡(u(tq-i+1-n)),sgn⁡(u2(tq-i)),sgn⁡(u2(tq-i-1)),…,sgn⁡(u2(tq-i+1-n))]T,(24)e1(tq)=y(tq)-φ^1T(tq)θ^(tq-q),(25)r1(tq)=r1(tq-q)+∥φ^1(tq)∥2,r(0)=1.
The steps of computing the parameter estimate θ^(tq) by the MOE-SG algorithm are listed as follows. (1)
Letu(-j)=0, y(-j)=0, j=0,1,2,…,n-1, and give a small positive number ε.(2)
Lett=1, r(0)=1, and θ^(0)=1/p0 with 1 being a column vector whose entries are all unity and p0=106.(3)
Collect the input datau(tq),u(tq-1),…,u(tq-n), and collect the output data y(tq).(4)
Leti=q-1 and compute -y^(tq-i)+v^(tq-i) by (22).(5)
Formφ^1(tq-i+1) by (23).(6)
Decreasei by 1; if i⩾1, go to step (4); otherwise, go to the next step.(7)
Computee1(tq) and r1(tq) by (24) and (25), respectively.(8)
Update the parameter estimation vectorθ^(tq) by (20).(9)
Compareθ^(tq) and θ^(tq-q); if ∥θ^(tq)-θ^(tq-q)∥⩽ε, then terminate the procedure and obtain the θ^(tq); otherwise, increase t by 1 and go to step (3).The flowchart of computing the MOE-SG parameter estimateθ^(tq) is shown in Figure 2.Figure 2
The flowchart of computing the estimateθ^(tq).


## 4. The Auxiliary Model Based Stochastic Gradient Algorithm

Define(26)x(t)=B(z)A(z)(u(t)+g1sgn⁡(u(t))+g2sgn⁡(u2(t))).
From (8) and (26), we have
(27)y(t)=x(t)+v(t).
Define the information vector φ2(t) as
(28)φ2(t)≔[(u2(t-n))-x(t-1),-x(t-2),…,-x(t-n),u(t-1),u(t-2),…,u(t-n),sgn⁡(u(t-1)),sgn⁡(u(t-2)),…,sgn⁡(u(t-n)),sgn⁡(u2(t-1)),sgn⁡(u2(t-2)),…,sgn⁡(u2(t-n))]T∈ℝ4n.Then we get(29)x(t)=φ2T(t)θ,(30)y(t)=φ2T(t)θ+v(t).Assumet is an integer multiple of q and rewrite (30) as
(31)y(tq)=φ2T(tq)θ(tq)+v(tq).Letθ^(t) be the estimate of θ. Defining and minimizing the cost function
(32)J(θ):=[y(tq)-φ2T(tq)θ]2
give the following SG algorithm of estimating θ:
(33)θ^(tq)=θ^(tq-q)+φ2(tq)r2(tq)e2(tq),(34)e2(tq)=y(tq)-φ2T(tq)θ^(tq-q),(35)φ2(tq)=[(u2(t-n))-x(tq-1),-x(tq-2),…,-x(tq-n),u(t-1),u(t-2),…,u(t-n),sgn⁡(u(t-1)),sgn⁡(u(t-2)),…,sgn⁡(u(t-n)),sgn⁡(u2(t-1)),sgn⁡(u2(t-2)),…,sgn⁡(u2(t-n))]T,(36)r2(tq)=r2(tq-q)+∥φ2(tq)∥2,r(0)=1.
Because of the unknown variables x(tq-i) in (33), the SG algorithm in (33)–(36) is impossible to implement. In this section, we use the auxiliary model; these unknown x(tq-i) are replaced with the outputs xa(tq-i) of an auxiliary model,
(37)xa(tq-i)=θaT(tq-i)φa(tq-i),
where θa(tq-i) is the estimate θ^(tq-i) of θ and φa(tq-i) is the estimate φ^2(tq-i) of φ2(tq-i). We can obtain an auxiliary model based stochastic gradient (AM-SG) algorithm:
(38)θ^(tq)=θ^(tq-q)+φ^2(tq)r2(tq)e2(tq),(39)θ^(tq-i)=θ^(tq-q),i=q-1,q-2,…,1,(40)xa(tq-i)=θ^T(tq-i)φ^2(tq-i),(41)φ^2(tq-i+1)=[(u2(t-i+1-n))-xa(tq-i),-xa(tq-i-1),…,-xa(tq-i+1-n),u(t-i),u(t-i-1),…,u(t-i+1-n),sgn⁡(u(t-i)),sgn⁡(u(t-i-1)),…,sgn⁡(u(t-i+1-n)),sgn⁡(u2(t-i)),sgn⁡(u2(t-i-1)),…,sgn⁡(u2(t-i+1-n))]T,(42)e2(tq)=y(tq)-φ^2T(tq)θ^(tq-q),(43)r2(tq)=r2(tq-q)+∥φ^2(tq)∥2,r(0)=1.
The steps of computing the parameter estimate θ^(tq) by the AM-SG algorithm are listed as follows.(1)
Letu(-j)=0, y(-j)=0, x(-j)=0, j=0,1,2,…,n-1, and give a small positive number ε.(2)
Lett=1, r(0)=1, and θ^(0)=1/p0 with 1 being a column vector whose entries are all unity and p0=106.(3)
Collect the input datau(tq),u(tq-1),…,u(tq-n), and collect the output data y(tq).(4)
Leti=q-1 and compute xa(tq-i) by (40).(5)
Formφ^2(tq-i+1) by (41).(6)
Decreasei by 1; if i⩾1, go to step (4); otherwise, go to next step.(7)
Computee2(tq) and r2(tq) by (42) and (43), respectively.(8)
Update the parameter estimation vectorθ^(tq) by (38).(9)
Compareθ^(tq) and θ^(tq-q); if ∥θ^(tq)-θ^(tq-q)∥⩽ε, then terminate the procedure and obtain the θ^(tq); otherwise, increase t by 1 and go to step (3).The flowchart of computing the AM-SG parameter estimateθ^(tq) is shown in Figure 3.Figure 3
The flowchart of computing the estimateθ^2(tq).Remark 1.
Compared with the polynomial transformation technique, the MOE-SG method and the AM-SG method can estimate the unknown parameters directly.


## 5. Example

Consider the following nonlinear output-error system with the updating periodq=2:
(44)y(t)=B(z)A(z)f(u(t))+v(t),A(z)=1+a1z-1+a2z-2=1+0.49z-1-0.2z-2,B(z)=b1z-1+b2z-2=0.2z-1+0.4z-2,f(u(t))=u(t)+m1+m22sgn⁡(u(t))+m1-m22sgn⁡(u2(t))=u(t)+0.5+0.32sgn⁡(u(t))+0.5-0.32sgn⁡(u2(t))=u(t)+g1sgn⁡(u(t))+g2sgn⁡(u2(t))=u(t)+0.4sgn⁡(u(t))+0.1sgn⁡(u2(t));
the input {u(t)} is taken as a persistent excitation signal sequence with zero mean and unit variance and {v(t)} is a white noise sequence with zero mean and variance σ2=0.102. The unknown parameters are as follows:
(45)θ=[a1,a2,b1,b2,b1g1,b2g1,b1g2,b2g2]T=[0.49,-0.2,0.2,0.4,0.08,0.16,0.02,0.04]T.
Applying the MOE-SG algorithm and the AM-SG algorithm to estimate the parameters, the parameter estimates and their errors based on the MOE-SG algorithm and the AM-SG algorithm are shown in Tables 1 and 2 and the parameter estimation errors δ:=∥θ^-θ∥/∥θ∥ versus t are shown in Figures 4 and 5.Table 1
The MOE-SG algorithm estimates and errors.
t
1000
2000
3000
4000
5000
True values
a
1
0.30790
0.43409
0.48162
0.49513
0.49505
0.49000
a
2
−0.16601
−0.20319
−0.20626
−0.20656
−0.20341
−0.20000
b
1
0.19508
0.19548
0.19462
0.19665
0.19816
0.20000
b
2
0.36487
0.39043
0.39879
0.40105
0.39987
0.40000
b
1
g
1
0.09729
0.09384
0.08995
0.08769
0.08705
0.08000
b
2
g
1
0.13565
0.14818
0.15401
0.15931
0.15867
0.16000
b
1
g
2
0.02161
0.02602
0.02558
0.02764
0.02770
0.02000
b
2
g
2
0.02641
0.03181
0.03127
0.03378
0.03385
0.04000
δ (%)
26.70140
8.46344
2.72656
2.15284
1.91759Table 2
The AM-SG algorithm estimates and errors.
t
1000
2000
3000
4000
5000
True values
a
1
0.39201
0.46141
0.50310
0.49802
0.48917
0.49000
a
2
−0.18980
−0.19696
−0.19784
−0.20113
−0.20307
−0.20000
b
1
0.18974
0.19349
0.19872
0.20192
0.20281
0.20000
b
2
0.40122
0.41674
0.39648
0.40109
0.40350
0.40000
b
1
g
1
0.09799
0.08924
0.08427
0.08475
0.08276
0.08000
b
2
g
1
0.14716
0.15484
0.15489
0.16514
0.16040
0.16000
b
1
g
2
0.02005
0.02781
0.02034
0.02761
0.02600
0.02000
b
2
g
2
0.02674
0.03708
0.02712
0.03682
0.03467
0.04000
δ (%)
14.27547
5.08770
2.79209
1.91002
1.41209Figure 4
The parameter estimation errorsδ versus t (MOE-SG).Figure 5
The parameter estimation errorsδ versus t (AM-SG).From Tables1 and 2 and Figures 4 and 5, we can draw the following conclusions.(1)
Both the MOE-SG algorithm and the AM-SG algorithm can estimate the unknown parameters directly.(2)
The parameter estimation errors become smaller and smaller and go to zero witht increasing.


## 6. Conclusions

Two identification methods for dual-rate nonlinear output-error systems are presented to estimate the unknown parameters directly and can avoid estimating more parameters than the original systems. Furthermore, the two methods can also be extended to other systems such as(46)y(t)=B(z)A(z)f(u(t))+D(z)C(z)v(t),A(z)y(t)=B(z)f(u(t))+D(z)v(t).



---

*Source: 329437-2014-04-10.xml*