Main Content

What Are Polynomial Models?

Polynomial Model Structure

A polynomial model uses a generalized notion of transfer functions to express the relationship between the input,u(t), the outputy(t), and the noisee(t) using the equation:

A ( q ) y ( t ) = i = 1 n u B i ( q ) F i ( q ) u i ( t n k i ) + C ( q ) D ( q ) e ( t )

The variablesA,B,C,D, andFare polynomials expressed in the time-shift operatorq^-1.uiis theith input,nuis the total number of inputs, andnkiis theith input delay that characterizes the transport delay. The variance of the white noisee(t)is assumed to be λ . For more information about the time-shift operator, seeUnderstanding the Time-Shift Operator q.

In practice, not all the polynomials are simultaneously active. Often, simpler forms, such as ARX, ARMAX, Output-Error, and Box-Jenkins are employed. You also have the option of introducing an integrator in the noise source so that the general model takes the form:

A ( q ) y ( t ) = i = 1 n u B i ( q ) F i ( q ) u i ( t n k i ) + C ( q ) D ( q ) 1 1 q 1 e ( t )

For more information, seeDifferent Configurations of Polynomial Models.

You can estimate polynomial models using time or frequency domain data.

For estimation, you must specify themodel orderas a set of integers that represent the number of coefficients for each polynomial you include in your selected structure—naforA,nbforB,ncforC,ndforD, andnfforF. You must also specify the number of samplesnkcorresponding to the input delay—dead time—given by the number of samples before the output responds to the input.

The number of coefficients in denominator polynomials is equal to the number of poles, and the number of coefficients in the numerator polynomials is equal to the number of zeros plus 1. When the dynamics fromu(t)toy(t)contain a delay ofnksamples, then the firstnkcoefficients ofBare zero.

For more information about the family of transfer-function models, see the corresponding section inSystem Identification: Theory for the User, Second Edition, by Lennart Ljung, Prentice Hall PTR, 1999.

Understanding the Time-Shift Operator q

The general polynomial equation is written in terms of the time-shift operatorq–1. To understand this time-shift operator, consider the following discrete-time difference equation:

y ( t ) + a 1 y ( t T ) + a 2 y ( t 2 T ) = b 1 u ( t T ) + b 2 u ( t 2 T )

wherey(t)is the output,u(t)is the input, andTis the sample time.q-1is a time-shift operator that compactly represents such difference equations using q 1 u ( t ) = u ( t T ) :

y ( t ) + a 1 q 1 y ( t ) + a 2 q 2 y ( t ) = b 1 q 1 u ( t ) + b 2 q 2 u ( t ) or A ( q ) y ( t ) = B ( q ) u ( t )

In this case, A ( q ) = 1 + a 1 q 1 + a 2 q 2 and B ( q ) = b 1 q 1 + b 2 q 2 .

Note

Thisqdescription is completely equivalent to the Z-transform form:qcorresponds toz.

Different Configurations of Polynomial Models

These model structures are subsets of the following general polynomial equation:

A ( q ) y ( t ) = i = 1 n u B i ( q ) F i ( q ) u i ( t n k i ) + C ( q ) D ( q ) e ( t )

The model structures differ by how many of these polynomials are included in the structure. Thus, different model structures provide varying levels of flexibility for modeling the dynamics and noise characteristics.

The following table summarizes common linear polynomial model structures supported by the System Identification Toolbox™ product. If you have a specific structure in mind for your application, you can decide whether the dynamics and the noise have common or different poles.(问)corresponds to poles that are common for the dynamic model and the noise model. Using common poles for dynamics and noise is useful when the disturbances enter the system at the input.Fidetermines the poles unique to the system dynamics, andDdetermines the poles unique to the disturbances.

Model Structure Equation Description
ARX

A ( q ) y ( t ) = i = 1 n u B i ( q ) u i ( t n k i ) + e ( t )

The noise model is 1 A and the noise is coupled to the dynamics model. ARX does not let you model noise and dynamics independently. Estimate an ARX model to obtain a simple model at good signal-to-noise ratios.

ARIX

A y = B u + 1 1 q 1 e

Extends the ARX structure by including an integrator in the noise source,e(t). This is useful in cases where the disturbance is not stationary.
ARMAX

A ( q ) y ( t ) = i = 1 n u B i ( q ) u i ( t n k i ) + C ( q ) e ( t )

Extends the ARX structure by providing more flexibility for modeling noise using theCparameters (a moving average of white noise). Use ARMAX when the dominating disturbances enter at the input. Such disturbances are calledload disturbances.
ARIMAX

A y = B u + C 1 1 q 1 e

Extends the ARMAX structure by including an integrator in the noise source,e(t). This is useful in cases where the disturbance is not stationary.
Box-Jenkins (BJ)

y ( t ) = i = 1 n u B i ( q ) F i ( q ) u i ( t n k i ) + C ( q ) D ( q ) e ( t )

Provides completely independent parameterization for the dynamics and the noise using rational polynomial functions.

使用BJ模型时噪音不进入input, but is primary a measurement disturbance, This structure provides additional flexibility for modeling noise.

Output-Error (OE)

y ( t ) = i = 1 n u B i ( q ) F i ( q ) u i ( t n k i ) + e ( t )

Use when you want to parameterize dynamics, but do not want to estimate a noise model.

Note

在这种情况下,噪声模型 H = 1 in the general equation and the white noise sourcee(t)affects only the output.

The polynomial models can contain one or more outputs and zero or more inputs.

The System Identification app supports direct estimation of ARX, ARMAX, OE and BJ models. You can add a noise integrator to the ARX, ARMAX and BJ forms. However, you can usepolyestto estimate all five polynomial or any subset of polynomials in the general equation. For more information about working with pem, seeUsing polyest to Estimate Polynomial Models.

Continuous-Time Representation of Polynomial Models

In continuous time, the general frequency-domain equation is written in terms of the Laplace transform variables, which corresponds to a differentiation operation:

A ( s ) Y ( s ) = B ( s ) F ( s ) U ( s ) + C ( s ) D ( s ) E ( s )

In the continuous-time case, the underlying time-domain model is a differential equation and the model order integers represent the number of estimated numerator and denominator coefficients. For example,na=3 andnb=2 correspond to the following model:

A ( s ) = s 4 + a 1 s 3 + a 2 s 2 + a 3 B ( s ) = b 1 s + b 2

You can only estimate continuous-time polynomial models directly using continuous-time frequency-domain data. In this case, you must set theTsdata property to 0 to indicate that you have continuous-time frequency-domain data, and use theoecommand to estimate an Output-Error polynomial model. Continuous-time models of other structures such as ARMAX or BJ cannot be estimated. You can obtain those forms only by direct construction (usingidpoly), conversion from other model types, or by converting a discrete-time model into continuous-time (d2c). Note that the OE form represents a transfer function expressed as a ratio of numerator (B) and denominator (F) polynomials. For such forms consider using the transfer function models, represented byidtfmodels. You can estimate transfer function models using both time and frequency domain data. In addition to the numerator and denominator polynomials, you can also estimate transport delays. Seeidtfandtfestfor more information.

Multi-Output Polynomial Models

For a MIMO polynomial model withnyoutputs andnuinputs, the relation between inputs and outputs for thelthoutput can be written as:

j = 1 n y A l j ( q ) y j ( t ) = i = 1 n u B l i ( q ) F l i ( q ) u i ( t n k i ) + C l ( q ) D l ( q ) e l ( t )

TheApolynomial array (Aij;i=1:ny,j=1:ny) are stored in theAproperty of theidpolyobject. The diagonal polynomials (Aii;i=1:ny) are monic, that is, the leading coefficients are one. The off-diagonal polynomials (Aij;ij) contain a delay of at least one sample, that is, they start with zero. For more details on the orders of multi-output models, seePolynomial Sizes and Orders of Multi-Output Polynomial Models.

You can create multi-output polynomial models by using theidpolycommand or estimate them usingar,arx,bj,oe,armax, andpolyest. In the app, you can estimate such models by choosing a multi-output data set and setting the orders appropriately in thePolynomial Modelsdialog box.

See Also

||||||

Related Examples

More About