Time-Series Models
Time series are a result of stochastic/random input to some system or some inaccessible random influence on some phenomenon, e. g., the pressure variation at some point at a certain time. A time series can be considered as a stochastic signal. Time-series models provide external description of systems and lead to a parsimonious representation of a process or phenomenon. For this class of models, accurate determination of the order of the model is a necessary step. Many statistical tests for model structure/ order are available in the literature [4]. Time-series/TF models are special cases of the general state-space models. The coefficients of time-series models are parameters that can be estimated by the methods discussed in Chapter 9. One aim of time-series modeling is its use in predicting of the future behavior of the system/phenomenon. One application is to predict rainfall runoff. The theory of discrete-time modeling is easy to appreciate. Simple models represent the discrete-time noise processes. This facilitates easy implementation of identification/estimation algorithms on a digital computer. A general linear stochastic discrete-time system/model is described here with the usual meaning for the variables in state-space form [4] as
x(k F 1) = Fkx(k) + Bu(k) F w(k) y(k) = Hx(k) F Du(k) F v(k)
For time-series modeling, a canonical form known as Astrom’s model is given as A(q—1)y(k) = B(q—1)u(k) F C(q—1)e(k) (2.18)
Here, A, B, and C are polynomials in q—1, which is a shift operator defined as
q—ny(k) = y(k — n) (2.19)
For SISO system, we have the expanded form as
y(k) F a1y(k — 1) + ••• + any(k — n) = b0u(k) F b1u(k — 1) + ••• + bmu(k — m)
+ e(k) + C1 e(k — 1) + ••• + Cpe(k — p)
(2.20)
Here, y is the discrete-time measurement sequence, u is the input sequence, and e is the random noise/error sequence. We have the following equivalence:
A(q—1) = 1 + aq—i H—– F anq—n
B(q—1) = b0 F b1q—1 F ••• F bnq~m (2.21)
C(q *) = 1 F cq 1 F ••• F Cnq p
that first – and second-order statistics are not dependant on time “t” explicitly. These models are called time-series models because the observation process is considered as a time-series of data that has some dynamic characteristics, affected usually by unknown random processes. The input should be able to excite the modes of the system. The input, deterministic or random, should contain sufficient frequencies to excite the dynamic system to ensure that the output has sufficient effects of the mode characteristics. This will ensure the possibility of good identification. Such an input is called persistently exciting. It means that the input signal should contain sufficient power at the frequency of the mode to be excited. The bandwidth of the input signal should be greater (broader) than that of the system.
The TF form is given by
This model can be used to fit time-series data that arise out of some system/ phenomenon with a controlled input U and a random excitation. Many special forms of Equation 2.22 are possible [4,9].
Example 2.11
Expand the TF of Example 2.4 into a time-series model. Also, obtain the poles and zeros of the TF.
3z2 + 4z
z3 – 1.2z2 + 0.45z – 0.05
Solution
We use the complex variable z for denoting the Z-transform (in discrete domain). It must be noted here that q and z are interchangeably used in the literature. Interestingly enough the variable z is, in fact, a complex variable and can represent a complex frequency parameter in z-domain. Use the forward shift operator zny(k) — y(k + n) to obtain
y(k + 3) – 1.2y(k + 2) + 0.45y(k + 1) – 0.05y(k) — 3u(k + 2) + 4u(k + 1) y(k + 3) — 1.2y(k + 2) – 0.45y(k + 1) + 0.05y(k) + 3u(k + 2) + 4u(k + 1)
Use roots ([3 4 0]) to get zeros as 0, -1.333 and roots ([1 -1.2 0.45 -0.05]) to obtain the poles as 0.20, 0.50 ± 0.0i. We see that the poles lie within a circle of radius z — 1 indicating that the model is a stable system (Appendix C).
Example 2.12
Generate a time series y using the equation y(k – 2) — 0.9y(k – 1) + 0.05y(k) + 2u(k). Let u(k) be a random Gaussian (noise) sequence with zero mean and unit standard deviation. Compute SNR as 20 log 10(var(y)/var(u)) (in MATLAB).