Keywords

1 Introduction

System modeling [1, 2] is one of the most common methods to find the true value of the complex models and analyze the relation between the input and output signals. In the recent years, the set membership modeling algorithm is studied for estimating the parameters of the systems with unknown but bounded noise term [3,4,5]. Some geometric spaces with regular structures are commonly used for describing the bounded noise terms, i.e., the ellipsoidal space is usually adopted for the simplicity of its formulation [6, 7]. However, the space sets listed in the previous works are commonly fitted for the linear system identification field, rather than in the system modeling for the nonlinear ones, i.e., the Hammerstein system. Considering the computational complexity and the estimation accuracy, in this paper, the ellipsoidal space is employed for constructing the known boundary of the noise term.

Differing from the works in [6, 7], in order to diminish the impact of unknown but bounded colored noise term, this paper considers the modeling problem of Hammerstein models and a two-stage ellipsoid filtering modeling algorithm is studied. The main contributions of this paper are listed as follows: (1) a two-stage filtering method is proposed for the Hammerstein system modeling by filtering the nonlinear model with unknown noises into two different subsystems, one contains the noise term and the other includes the system parameters; (2) the minimization criteria is adopted to determine the recursive step and find the minimum value of the ellipsoid volume; (3) the simulation results show the motion trail of the ellipsoidal sets via the sample time, which can directly illustrate the parameter estimation process.

Briefly, the rest of this paper is organized as follows. Section 2 gives the Hammerstein system with an unknown but bounded noise term and its identification model. Section 3 presents a two-stage ellipsoid volume minimization based filtering algorithm by adopting different ellipsoids to wrap the boundary of the feasible parameter sets. Section 4 provides an example to illustrate the accuracy and the effectiveness of the proposed algorithm. Finally, the conclusions and some future works are offered in Sect. 5.

2 Problem Statement

The following single input/single output nonlinear system is further considered:

$$\displaystyle \begin{aligned} y(t)=B(z)\sum_{i=1}^{n_c}c_if_i(u(t))+D(z)v(t),\ \|v(t)\|\leqslant \delta,\ \delta>0, \end{aligned} $$
(1)

where {u(t), y(t)} is the pair of the signal sequences at time t, v(t) is the unknown but bounded noise term with a priori bound δ. B(z) and D(z) are combinations of negative powers that are defined by \(B(z):=1+\sum \limits _{i=1}^{n_b}b_iz^{-i}\) and \(D(z):=1+\sum \limits _{j=1}^{n_d}d_iz^{-j}\) in the unit delay operator z −1 [z −1y(t) = y(t − 1)].

The aim of identifying this nonlinear Hammerstein system is to propose a geometrical recursive algorithm to consistently estimate the unknown parameter vectors \(\boldsymbol {b}:=[b_1,b_2,\cdots ,b_{n_b}]^{\mathrm {T}}\in {\mathbb {R}}^{n_b}\), \(\boldsymbol {c}:=[c_1,c_2,\cdots ,c_{n_c}]^{\mathrm {T}}\in {\mathbb {R}}^{n_c}\) and \(\boldsymbol {d}:=[d_1,d_2,\cdots ,d_{n_d}]^{\mathrm {T}}\in {\mathbb {R}}^{n_d}\), from the measured data \(\{u(t), y(t)\}_{t=1}^{L}\). From Eq. (1), the identification model can be rewritten as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} y(t)&\displaystyle =&\displaystyle B(z)\bar{u}(t)+D(z)v(t)\\ &\displaystyle =&\displaystyle \sum_{i=1}^{n_b}b_i\bar{u}(t-i)+\sum_{i=1}^{n_c}c_if_i(u(t))+\sum_{i=1}^{n_d}d_iv(t-i)+v(t)\\ &\displaystyle =&\displaystyle \boldsymbol{\varphi}^{\mathrm{T}}(t)\boldsymbol{\theta}+v(t), \end{array} \end{aligned} $$
(2)

where

$$\displaystyle \begin{aligned} \begin{array}{rcl} \boldsymbol{\varphi}(t)&\displaystyle :=&\displaystyle [\bar{u}(t-1),\bar{u}(t-2),\cdots,\bar{u}(t-n_b),f_1(u(t)),f_2(u(t)),\cdots,f_{n_c}(u(t)),\\ &\displaystyle &\displaystyle v(t-1),v(t-2),\cdots,v(t-n_d)]^{\mathrm{T}}\in{\mathbb{R}}^{n_b+n_c+n_d},\\ \boldsymbol{\theta}&\displaystyle :=&\displaystyle [\boldsymbol{b}^{\mathrm{T}},\boldsymbol{c}^{\mathrm{T}},\boldsymbol{d}^{\mathrm{T}}]^{\mathrm{T}}\in{\mathbb{R}}^{n_b+n_c+n_d}. \end{array} \end{aligned} $$

From Eq. (2), since the error bound of the model is known, the parameters belong to the membership set \(S(L):=\{\boldsymbol {\theta }|y(t)-\delta \leqslant \boldsymbol {\varphi }^{\mathrm {T}}(t)\boldsymbol {\theta }\leqslant y(t)+\delta ,\ t\in [1,L]\}\). In the geometry, the set S(L) is delimited by L pairs of parallel hyperplanes, i.e., H 1(t) := {θ|φ T(t)θ = y(t) − δ} and H 2(t) := {θ|φ T(t)θ = y(t) + δ}. In the whole parametric space, the hyperplanes are the boundaries of different subspaces.

3 The Ellipsoid Volume Minimization Based Filtering Algorithm

Based on the input and output signals, the identification model in Eq. (2) can be changed into a controlled autoregressive model by adopting the unknown filter D −1(z). The filtered model can be written as

$$\displaystyle \begin{aligned} y_{\mathrm{f}}(t)=B(z)\bar{u}_{\mathrm{f}}(t)+v(t),\end{aligned} $$
(3)

where \(\bar {u}_{\mathrm {f}}(t):=\sum \limits _{i=1}^{n_c}c_iU_i(t)\) and \(y_{\mathrm {f}}(t):=\frac {1}{D(z)}y(t)\). The intermediate variable U j(t) is defined by \(U_j(t):=\frac {1}{D(z)}f_j(u(t)),\ j=1, 2, \ldots , n_c\). Then, Eq. (3) can be written as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} y_{\mathrm{f}}(t)=\sum_{i=1}^{n_c}c_iU_i(t)+\sum_{i=1}^{n_b}b_i\bar{u}_{\mathrm{f}}(t-i)+v(t),\ \|v(t)\|\leqslant \delta,\ \delta>0. \end{array} \end{aligned} $$
(4)

Define the filtered information vector and two parameter vectors:

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \boldsymbol{\varphi}_{\mathrm{f}}(t)&\displaystyle :=&\displaystyle [\bar{u}_{\mathrm{f}}(t-1),\bar{u}_{\mathrm{f}}(t-2),\cdots,\bar{u}_{\mathrm{f}}(t-n_b),\\ &\displaystyle &\displaystyle U_1(t),U_2(t),\cdots,U_{n_c}(t)]^{\mathrm{T}}\in{\mathbb{R}}^{n_b+n_c}, \end{array} \end{aligned} $$
(5)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \boldsymbol{\theta}_{\mathrm{s}}&\displaystyle :=&\displaystyle [\boldsymbol{b}^{\mathrm{T}},\boldsymbol{c}^{\mathrm{T}}]^{\mathrm{T}}=[b_1,b_2,\cdots,b_{n_b},c_1,c_2,\cdots,c_{n_c}]^{\mathrm{T}}\in{\mathbb{R}}^{n_b+n_c}, \end{array} \end{aligned} $$
(6)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \boldsymbol{\theta}_{\mathrm{n}}&\displaystyle :=&\displaystyle \boldsymbol{d}=[d_1,d_2,\cdots,d_{n_d}]^{\mathrm{T}}\in{\mathbb{R}}^{n_d}. \end{array} \end{aligned} $$
(7)

From Eq. (4), the parameters c i and b j are determined by a feasible set and the two parallel hyperplanes H 1,f(t), H 2,f(t) that divide the n-dimensional space, are listed as follows:

However, the true values of the parameters are all in a part of the space instead of the whole space, i.e.,

$$\displaystyle \begin{aligned} \begin{array}{rcl} H_{\mathrm{f}}^+(t)&\displaystyle =&\displaystyle H_{1,\mathrm{f}}^{+}(t)\cap H_{2,\mathrm{f}}^{+}(t), \end{array} \end{aligned} $$
(8)
(9)
(10)

Since the unknown but bounded noise term \(v(t)=y_{\mathrm {f}}(t)-\boldsymbol {\varphi }_{\mathrm {f}}^{\mathrm {T}}(t)\boldsymbol {\theta }_{\mathrm {s}}\) determines the spatial distance between the two parallel hyperplanes H 1,f(t), H 2,f(t), the ellipsoidal set membership idea [8, 9] can be adopted in estimating \(\boldsymbol {\hat \theta }(t)\) as the first stage in solving all the parameter estimates. The filtered model in Eq. (4) can be rewritten in a vector form:

$$\displaystyle \begin{aligned} y_{\mathrm{f}}(t)=\boldsymbol{\varphi}_{\mathrm{f}}^{\mathrm{T}}(t)\boldsymbol{\theta}_{\mathrm{s}}+v(t), \end{aligned} $$
(11)

or

$$\displaystyle \begin{aligned} v(t)=y_{\mathrm{f}}(t)-\boldsymbol{\varphi}_{\mathrm{f}}^{\mathrm{T}}(t)\boldsymbol{\theta}_{\mathrm{s}}, \end{aligned} $$
(12)

where \(y_{\mathrm {f}}(t)=y(t)-\sum \limits _{i=1}^{n_d}d_iy_{\mathrm {f}}(t-i)\). Because of the unknown parameters d i, it is impossible to use \(\bar {u}_{\mathrm {f}}(t)\) to construct the known parameter vector φ f(t) in Eq. (5). The solution here is to use their estimates to derive the following filtering based ellipsoid recursive algorithm for the Hammerstein models. For the filtered model in Eq. (11), the normalized ellipsoidal set is [7]

$$\displaystyle \begin{aligned} E(P_{\mathrm{s}}^{-1},\hat{\boldsymbol{\theta}}_{\mathrm{s}})=\{{\boldsymbol{\theta}}_{\mathrm{s}}\in {\mathbb{R}}^{n_{\mathrm{s}}}:({\boldsymbol{\theta}_{\mathrm{s}}}-\hat{\boldsymbol{\theta}}_{\mathrm{s}})^{\mathrm{T}}P_{\mathrm{s}}^{-1}({\boldsymbol{\theta}_{\mathrm{s}}}-\hat{\boldsymbol{\theta}}_{\mathrm{s}})\leqslant \sigma_{\mathrm{s}}^2\}. \end{aligned} $$
(13)

The a priori assumed noise bound σ s also represents the radius of the ellipsoid \(E(P^{-1},\hat {\boldsymbol {\theta }}_{\mathrm {s}})\) and the error bound of feasible parameter θ s is lower than θ, that is, \(\sigma _{\mathrm {s}}\leqslant \sigma \). The estimates \(\hat {B}(t,z)\) and \(\hat {D}(t,z)\) are constructed by \(\hat {B}(t,z):=1+\sum \limits _{i=1}^{n_b}\hat {b}_i(t)z^{-i}\) and \(\hat {D}(t,z):=1+\sum \limits _{j=1}^{n_d}\hat {d}_j(t)z^{-j}\), respectively.

In the first stage, the intermediate variable estimates are \(\hat {w}(t):=\hat {\boldsymbol {\varphi }}_{\mathrm {n}}^{\mathrm {T}}(t)\hat {\boldsymbol {\theta }}_{\mathrm {n}}(t-1)+\hat {v}(t)\), where the \(\hat {\boldsymbol {\varphi }}_{\mathrm {n}}(t)\) is determined by the estimates \(\hat {v}(t-i)\), i = 1, 2, ⋯ , n d. Similarly to the procedure of forming the normalized ellipsoid in Eq. (13), the set of feasible parameter vectors θ n is defined as follows:

$$\displaystyle \begin{aligned} E(P_{\mathrm{n}}^{-1},\hat{\boldsymbol{\theta}}_{\mathrm{n}})=\{{\boldsymbol{\theta}}_{\mathrm{n}}\in {\mathbb{R}}^{n_{\mathrm{n}}}:({\boldsymbol{\theta}_{\mathrm{n}}}-\hat{\boldsymbol{\theta}}_{\mathrm{n}})^{\mathrm{T}}P_{\mathrm{n}}^{-1}({\boldsymbol{\theta}_{\mathrm{n}}}-\hat{\boldsymbol{\theta}}_{\mathrm{n}})\leqslant \sigma_{\mathrm{n}}^2\}. \end{aligned} $$
(14)

Using the ellipsoid volume minimization principle, we list the ellipsoid volume minimization based filtering (EVMF for short) algorithm in the first stage to compute \(\hat {\boldsymbol {\theta }}_{\mathrm {n}}(t)\):

$$\displaystyle \begin{aligned} \begin{array}{rcl} \hat{\boldsymbol{\theta}}_{\mathrm{n}}(t)&\displaystyle =&\displaystyle \hat{\boldsymbol{\theta}}_{\mathrm{n}}(t-1)+\beta_{\mathrm{n}}(t)P_{\mathrm{n}}(t)\hat{\boldsymbol{\varphi}}_{\mathrm{n}}(t)r_{\mathrm{n}}(t),\\ r_{\mathrm{n}}(t)&\displaystyle =&\displaystyle \hat{w}(t)-\hat{\boldsymbol{\varphi}}_{\mathrm{n}}^{\mathrm{T}}(t)\hat{\boldsymbol{\theta}}_{\mathrm{n}}(t-1),\\ P_{\mathrm{n}}(t)&\displaystyle =&\displaystyle \frac{1}{\alpha_{\mathrm{n}}(t)}\Big[P_{\mathrm{n}}(t-1)-\frac{\beta_{\mathrm{n}}(t)P_{\mathrm{n}}(t-1)\hat{\boldsymbol{\varphi}}_{\mathrm{n}}(t)\hat{\boldsymbol{\varphi}}_{\mathrm{n}}^{\mathrm{T}}(t)P_{\mathrm{n}}(t-1)}{\alpha_{\mathrm{n}}(t)+\beta_{\mathrm{n}}(t)g_{\mathrm{n}}(t)}\Big],\\ \sigma^2_{\mathrm{n}}(t)&\displaystyle =&\displaystyle 1+q_{\mathrm{n}}(t)-\frac{\alpha_{\mathrm{n}}(t)\beta_{\mathrm{n}}(t)r^2_{\mathrm{n}}(t)}{\alpha_{\mathrm{n}}(t)+\beta_{\mathrm{n}}(t)g_{\mathrm{n}}(t)},\\ g_{\mathrm{n}}(t)&\displaystyle =&\displaystyle \hat{\boldsymbol{\varphi}}_{\mathrm{n}}^{\mathrm{T}}(t)P_{\mathrm{n}}(t-1)\hat{\boldsymbol{\varphi}}_{\mathrm{n}}(t),\\ \alpha_{\mathrm{n}}(t)&\displaystyle =&\displaystyle \frac{1}{\sigma^2_{\mathrm{n}}(t-1)},\\ \beta_{\mathrm{n}}(t)&\displaystyle =&\displaystyle \frac{q_{\mathrm{n}}(t)}{\delta^2(t)}. \end{array} \end{aligned} $$

The intermediate variable q n(t) is the positive real root of the equation

$$\displaystyle \begin{aligned} \lambda_{\mathrm{n},2}(t)q^{2}_{\mathrm{n}}(t)+\lambda_{\mathrm{n},1}(t)q_{\mathrm{n}}(t)+\lambda_{\mathrm{n},0}(t)=0, \end{aligned} $$
(15)

where \(\lambda _{\mathrm {n},2}(t):=(n_{d}-1)\sigma ^4_{\mathrm {n}}(t-1)g^{2}_{\mathrm {n}}(t)\), \(\lambda _{\mathrm {n},1}(t):=[(2n_{d}-1)\delta ^2(t)-\sigma ^2_{\mathrm {n}}(t-1)g_{\mathrm {n}}(t)+r_{\mathrm {n}}^{2}(t)]\sigma ^2_{\mathrm {n}}(t-1)g_{\mathrm {n}}(t)\), \(\lambda _{\mathrm {n},0}(t):=[n_d(\delta ^2(t)-r_{\mathrm {n}}^{2}(t))-\sigma ^2_{\mathrm {n}}(t-1)g_{\mathrm {n}}(t)]\delta ^2(t)\). If Equation (15) does not have any positive real root, i.e., the sampling data at time t does not update the ellipsoid \(E(P_{\mathrm {n}}^{-1},\hat {\boldsymbol {\theta }}_{\mathrm {n}})\), let q n(t) = 0 at time t.

In the second stage, the other ellipsoidal set in Eq. (13) is to be formed. The filter \(\hat {D}^{-1}(t,z)\) is obtained after running the first stage of the EVMF algorithm and it is easy to compute the estimates, such as \(\hat {\bar {u}}_{\mathrm {f}}(t)=\sum \limits _{i=1}^{n_c}\hat {c}_i(t)\hat {U}_i(t)\), \(\hat {y}_{\mathrm {f}}(t)=-\sum \limits _{j=1}^{n_d}\hat {d}_j(t)\hat {y}_{\mathrm {f}}(t-j)+y(t)\). The intermediate term \(\hat {U}_k(t)\) can be computed by \(\hat {U}_k(t):=\frac {1}{D(z)}f_k(u(t))=-\sum \limits _{l=1}^{n_d}\hat {d}_l(t)\hat {U}_k(t-l)+f_k(u(t))\). Construct the estimate of φ f(t) with \(\hat {\bar {u}}_{\mathrm {f}}(t)\) and \(\hat {U}_j(t)\):

$$\displaystyle \begin{aligned} \hat{\boldsymbol{\varphi}}_{\mathrm{f}}(t)=[\hat{\bar{u}}_{\mathrm{f}}(t-1),\hat{\bar{u}}_{\mathrm{f}}(t-2),\cdots,\hat{\bar{u}}_{\mathrm{f}}(t-n_b),\hat{U}_1(t),\hat{U}_2(t),\cdots,\hat{U}_{n_c}(t)]^{\mathrm{T}}. \end{aligned}$$

Similar to the first stage of EVMF algorithm, by using the ellipsoid volume minimization principle, the estimation of \(\hat {\boldsymbol {\theta }}_{\mathrm {s}}(t)\) can be obtained in the second stage. By replacing v(t), y f(t), φ f(t), and θ s in Eq. (12) with their estimates \(\hat {v}(t)\), \(\hat {y}_{\mathrm {f}}(t)\), \(\hat {\boldsymbol {\varphi }}_{\mathrm {f}}(t)\), and \(\hat {\boldsymbol {\theta }}_{\mathrm {s}}(t)\) at time t, the filtered noise vector can be computed as

$$\displaystyle \begin{aligned} \hat{v}(t)=\hat{y}_{\mathrm{f}}(t)-\hat{\boldsymbol{\varphi}}_{\mathrm{f}}^{\mathrm{T}}(t)\hat{\boldsymbol{\theta}}_{\mathrm{s}}(t). \end{aligned}$$

4 Example

Consider the simplified wind turbine model in Fig. 1. The hydraulic pitch system can be modeled as in [10].

$$\displaystyle \begin{aligned} \left[\begin{array}{c} \dot\beta\\ \dot\beta_{\mathrm{a}}\end{array}\right]=\left[\begin{array}{cc} 0& 1\\-\omega^{2}_{\mathrm{n}} &-2\zeta\omega_{\mathrm{n}}\end{array}\right]\left[\begin{array}{c} \beta\\ \beta_{\mathrm{a}}\end{array}\right]+\left[\begin{array}{c} 0\\ \omega^{2}_{\mathrm{n}}\end{array}\right]\beta_{\mathrm{r}}, \end{aligned} $$
(16)

where β and β a are the pitch angle and angular velocity, respectively. β r is the pitch angle reference value, ω n and ζ are the nominal system’s bandwidth and the nominal system’s damping, respectively. In this paper, we set ω n = 11.11rad/s and ζ = 0.6 be the system natural frequency and the damping factor, respectively [11]. The hydraulic pitch system of the wind turbine model can be approximated to a second-order transfer function [11, 12]:

$$\displaystyle \begin{aligned} \frac{y}{\bar u}=\frac{\omega^{2}_{\mathrm{n}}}{s^{2}+2\zeta\omega_{\mathrm{n}}s+\omega^{2}_{\mathrm{n}}}, \end{aligned} $$
(17)

where y = β and \(\bar u=\beta _{\mathrm {r}}\). Set the discrete time T s = 0.01s [10]. Define \(s=\frac {2}{T_{s}}\frac {z-1}{z+1}\) and we use the bilinear transformation method and discretize the given model in Eq. (17), the given model in Eq. (17) can be transformed to

$$\displaystyle \begin{aligned} \frac{y(t)}{\bar u(t)}&=\frac{\omega_{n}^2}{(\frac{2}{T_s}\frac{z-1}{z+1})^2+2\zeta\omega_n \frac{2}{T_s}\frac{z-1}{z+1}+\omega_{n}^2}\\ &=\frac{\omega_{n}^{2}T_{s}^{2}z^{2}+2\omega_{n}^{2}T_{s}^{2}z+\omega_{n}^{2}T_{s}^{2}}{\alpha z^{2}+\beta z+\gamma},\notag \end{aligned} $$
(18)

where \(\alpha =4+4\zeta \omega _{n}T_s+\omega _{n}^{2}T_{s}^{2}\), \(\beta =2\omega _{n}^{2}T_{s}^{2}-8\), \(\gamma =4-4\zeta \omega _{n}T_{s}+\omega _{n}^{2}T_{s}^{2}\).

Fig. 1
figure 1

The wind turbine system structure

Thus, Eq. (17) can be rewritten as

$$\displaystyle \begin{aligned} \frac{y(t)}{\bar u(t)}=\frac{0.0029 z^2 + 0.0058 z + 0.0029}{z^2 - 1.8638 z + 0.8754}. \end{aligned} $$
(19)

The above function can be changed to the model \(y(t)=B(z){\bar u}(t)\) via the long division method. After the regularization step that set b 0 = 1, and consider the disturbance from the noise term v(t), the hydraulic pitch system can be described by the finite impulse response model as follows:

$$\displaystyle \begin{aligned} y(t)=B(z){\bar u}(t)+D(z)v(t), \end{aligned} $$
(20)

where B(z) = 1 + 0.0112z −1 + 0.0213z −2, \({\bar u}(t)=-0.4802u(t)\), D(z) = 1 − 0.2678z −1 + 0.0505z −2. In the simulation, the input and noise signals are uniform random numbers that are randomly distributed in the interval [−1, 1]. When adopting the proposed EVMF algorithm, the ellipsoidal set of the noise terms via sampling time are shown in Fig. 2.

Fig. 2
figure 2

Variation of the feasible noise term parameter ellipsoidal sets of the hydraulic pitch system

From Fig. 2, it can be seen that the parameters of the hydraulic pitch system are quickly estimated, which shows the given EVMF algorithm also has a good performance on estimating the wind turbine system structure under the available benchmark data.

5 Conclusions

This paper presents a two-stage ellipsoid estimation algorithm for the Hammerstein nonlinear system with unknown noises. The probability distribution of the noise term is unknown and ellipsoidal sets are formed to contain the feasible noise parameters. This work can be also extended to deal with other types of nonlinear system modeling problems, such as the Wiener nonlinear system modeling and parameter estimation for the error-in-variables systems.