State-space representation

Mathematical model of a system in control engineering

This article includes a list of general references, but it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (May 2009) (Learn how and when to remove this message)

|

See also: quantum state space and configuration space (physics)

In control engineering and system identification, a state-space representation is a mathematical model of a physical system specified as a set of input, output, and variables related by first-order differential equations or difference equations. Such variables, called state variables, evolve over time in a way that depends on the values they have at any given instant and on the externally imposed values of input variables. Output variables’ values depend on the state variable values and may also depend on the input variable values.

The state space or phase space is the geometric space in which the axes are the state variables. The system state can be represented as a vector, the state vector.

If the dynamical system is linear, time-invariant, and finite-dimensional, then the differential and algebraic equations may be written in matrix form.[1][2] The state-space method is characterized by the algebraization of general system theory, which makes it possible to use Kronecker vector-matrix structures. The capacity of these structures can be efficiently applied to research systems with or without modulation.[3] The state-space representation (also known as the "time-domain approach") provides a convenient and compact way to model and analyze systems with multiple inputs and outputs. With  p {\displaystyle p} inputs and  q {\displaystyle q} outputs, we would otherwise have to write down  q × p {\displaystyle q\times p} Laplace transforms to encode all the information about a system. Unlike the frequency domain approach, the use of the state-space representation is not limited to systems with linear components and zero initial conditions.

The state-space model can be applied in subjects such as economics,[4] statistics,[5] computer science and electrical engineering,[6] and neuroscience.[7] In econometrics, for example, state-space models can be used to decompose a time series into trend and cycle, compose individual indicators into a composite index,[8] identify turning points of the business cycle, and estimate GDP using latent and unobserved time series.[9][10] Many applications rely on the Kalman Filter or a state observer to produce estimates of the current unknown state variables using their previous observations.[11][12]

## State variables

[edit]

The internal state variables are the smallest possible subset of system variables that can represent the entire state of the system at any given time.[13] The minimum number of state variables required to represent a given system,  n {\displaystyle n} , is usually equal to the order of the system's defining differential equation, but not necessarily. If the system is represented in transfer function form, the minimum number of state variables is equal to the order of the transfer function's denominator after it has been reduced to a proper fraction. It is important to understand that converting a state-space realization to a transfer function form may lose some internal information about the system, and may provide a description of a system which is stable, when the state-space realization is unstable at certain points. In electric circuits, the number of state variables is often, though not always, the same as the number of energy storage elements in the circuit such as capacitors and inductors. The state variables defined must be linearly independent, i.e., no state variable can be written as a linear combination of the other state variables, or the system cannot be solved.

## Linear systems

[edit]

Block diagram representation of the linear state-space equations

The most general state-space representation of a linear system with  p {\displaystyle p} inputs,  q {\displaystyle q} outputs and  n {\displaystyle n} state variables is written in the following form:[14]

x ˙ ( t ) = A ( t ) x ( t ) + B ( t ) u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\mathbf {A} (t)\mathbf {x} (t)+\mathbf {B} (t)\mathbf {u} (t)}
y ( t ) = C ( t ) x ( t ) + D ( t ) u ( t ) {\displaystyle \mathbf {y} (t)=\mathbf {C} (t)\mathbf {x} (t)+\mathbf {D} (t)\mathbf {u} (t)}

where:

x ( ⋅ ) {\displaystyle \mathbf {x} (\cdot )} is called the "state vector", x ( t ) ∈ R n {\displaystyle \mathbf {x} (t)\in \mathbb {R} ^{n}} ;
y ( ⋅ ) {\displaystyle \mathbf {y} (\cdot )} is called the "output vector", y ( t ) ∈ R q {\displaystyle \mathbf {y} (t)\in \mathbb {R} ^{q}} ;
u ( ⋅ ) {\displaystyle \mathbf {u} (\cdot )} is called the "input (or control) vector", u ( t ) ∈ R p {\displaystyle \mathbf {u} (t)\in \mathbb {R} ^{p}} ;
A ( ⋅ ) {\displaystyle \mathbf {A} (\cdot )} is the "state (or system) matrix", dim ⁡ [ A ( ⋅ ) ] = n × n {\displaystyle \dim[\mathbf {A} (\cdot )]=n\times n} ,
B ( ⋅ ) {\displaystyle \mathbf {B} (\cdot )} is the "input matrix", dim ⁡ [ B ( ⋅ ) ] = n × p {\displaystyle \dim[\mathbf {B} (\cdot )]=n\times p} ,
C ( ⋅ ) {\displaystyle \mathbf {C} (\cdot )} is the "output matrix", dim ⁡ [ C ( ⋅ ) ] = q × n {\displaystyle \dim[\mathbf {C} (\cdot )]=q\times n} ,
D ( ⋅ ) {\displaystyle \mathbf {D} (\cdot )} is the "feedthrough (or feedforward) matrix" (in cases where the system model does not have a direct feedthrough,  D ( ⋅ ) {\displaystyle \mathbf {D} (\cdot )} is the zero matrix), dim ⁡ [ D ( ⋅ ) ] = q × p {\displaystyle \dim[\mathbf {D} (\cdot )]=q\times p} ,
x ˙ ( t ) := d d t x ( t ) {\displaystyle {\dot {\mathbf {x} }}(t):={\frac {d}{dt}}\mathbf {x} (t)} .

In this general formulation, all matrices are allowed to be time-variant (i.e. their elements can depend on time); however, in the common LTI case, matrices will be time invariant. The time variable  t {\displaystyle t} can be continuous (e.g.  t ∈ R {\displaystyle t\in \mathbb {R} } ) or discrete (e.g.  t ∈ Z {\displaystyle t\in \mathbb {Z} } ). In the latter case, the time variable  k {\displaystyle k} is usually used instead of  t {\displaystyle t} . Hybrid systems allow for time domains that have both continuous and discrete parts. Depending on the assumptions made, the state-space model representation can assume the following forms:

System type | State-space model

|

Continuous time-invariant |  x ˙ ( t ) = A x ( t ) + B u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\mathbf {A} \mathbf {x} (t)+\mathbf {B} \mathbf {u} (t)}
y ( t ) = C x ( t ) + D u ( t ) {\displaystyle \mathbf {y} (t)=\mathbf {C} \mathbf {x} (t)+\mathbf {D} \mathbf {u} (t)}
Continuous time-variant |  x ˙ ( t ) = A ( t ) x ( t ) + B ( t ) u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\mathbf {A} (t)\mathbf {x} (t)+\mathbf {B} (t)\mathbf {u} (t)}
y ( t ) = C ( t ) x ( t ) + D ( t ) u ( t ) {\displaystyle \mathbf {y} (t)=\mathbf {C} (t)\mathbf {x} (t)+\mathbf {D} (t)\mathbf {u} (t)}
Explicit discrete time-invariant |  x ( k + 1 ) = A x ( k ) + B u ( k ) {\displaystyle \mathbf {x} (k+1)=\mathbf {A} \mathbf {x} (k)+\mathbf {B} \mathbf {u} (k)}
y ( k ) = C x ( k ) + D u ( k ) {\displaystyle \mathbf {y} (k)=\mathbf {C} \mathbf {x} (k)+\mathbf {D} \mathbf {u} (k)}
Explicit discrete time-variant |  x ( k + 1 ) = A ( k ) x ( k ) + B ( k ) u ( k ) {\displaystyle \mathbf {x} (k+1)=\mathbf {A} (k)\mathbf {x} (k)+\mathbf {B} (k)\mathbf {u} (k)}
y ( k ) = C ( k ) x ( k ) + D ( k ) u ( k ) {\displaystyle \mathbf {y} (k)=\mathbf {C} (k)\mathbf {x} (k)+\mathbf {D} (k)\mathbf {u} (k)}
Laplace domain of
continuous time-invariant |  s X ( s ) − x ( 0 ) = A X ( s ) + B U ( s ) {\displaystyle s\mathbf {X} (s)-\mathbf {x} (0)=\mathbf {A} \mathbf {X} (s)+\mathbf {B} \mathbf {U} (s)}
Y ( s ) = C X ( s ) + D U ( s ) {\displaystyle \mathbf {Y} (s)=\mathbf {C} \mathbf {X} (s)+\mathbf {D} \mathbf {U} (s)}
Z-domain of
discrete time-invariant |  z X ( z ) − z x ( 0 ) = A X ( z ) + B U ( z ) {\displaystyle z\mathbf {X} (z)-z\mathbf {x} (0)=\mathbf {A} \mathbf {X} (z)+\mathbf {B} \mathbf {U} (z)}
Y ( z ) = C X ( z ) + D U ( z ) {\displaystyle \mathbf {Y} (z)=\mathbf {C} \mathbf {X} (z)+\mathbf {D} \mathbf {U} (z)}

### Example: continuous-time LTI case

[edit]

Stability and natural response characteristics of a continuous-time LTI system (i.e., linear with matrices that are constant with respect to time) can be studied from the eigenvalues of the matrix  A {\displaystyle \mathbf {A} } . The stability of a time-invariant state-space model can be determined by looking at the system's transfer function in factored form. It will then look something like this:

G ( s ) = k ( s − z 1 ) ( s − z 2 ) ( s − z 3 ) ( s − p 1 ) ( s − p 2 ) ( s − p 3 ) ( s − p 4 ) . {\displaystyle {\textbf {G}}(s)=k{\frac {(s-z_{1})(s-z_{2})(s-z_{3})}{(s-p_{1})(s-p_{2})(s-p_{3})(s-p_{4})}}.}

The denominator of the transfer function is equal to the characteristic polynomial found by taking the determinant of  s I − A {\displaystyle s\mathbf {I} -\mathbf {A} } ,

λ ( s ) = | s I − A | . {\displaystyle \lambda (s)=|s\mathbf {I} -\mathbf {A} |.}

The roots of this polynomial (the eigenvalues) are the system transfer function's poles (i.e., the singularities where the transfer function's magnitude is unbounded). These poles can be used to analyze whether the system is asymptotically stable or marginally stable. An alternative approach to determining stability, which does not involve calculating eigenvalues, is to analyze the system's Lyapunov stability.

The zeros found in the numerator of  G ( s ) {\displaystyle {\textbf {G}}(s)} can similarly be used to determine whether the system is minimum phase.

The system may still be input–output stable (see BIBO stable) even though it is not internally stable. This may be the case if unstable poles are canceled out by zeros (i.e., if those singularities in the transfer function are removable).

### Controllability

[edit]

Main article: Controllability

The state controllability condition implies that it is possible – by admissible inputs – to steer the states from any initial value to any final value within some finite time window. A continuous time-invariant linear state-space model is controllable if and only if

rank ⁡ [ B A B A 2 B ⋯ A n − 1 B ] = n , {\displaystyle \operatorname {rank} {\begin{bmatrix}\mathbf {B} &\mathbf {A} \mathbf {B} &\mathbf {A} ^{2}\mathbf {B} &\cdots &\mathbf {A} ^{n-1}\mathbf {B} \end{bmatrix}}=n,}

where rank is the number of linearly independent rows in a matrix, and where n is the number of state variables.

### Observability

[edit]

Main article: Observability

Observability is a measure for how well internal states of a system can be inferred by knowledge of its external outputs. The observability and controllability of a system are mathematical duals (i.e., as controllability provides that an input is available that brings any initial state to any desired final state, observability provides that knowing an output trajectory provides enough information to predict the initial state of the system).

A continuous time-invariant linear state-space model is observable if and only if

rank ⁡ [ C C A ⋮ C A n − 1 ] = n . {\displaystyle \operatorname {rank} {\begin{bmatrix}\mathbf {C} \\\\\mathbf {C} \mathbf {A} \\\\\vdots \\\\\mathbf {C} \mathbf {A} ^{n-1}\end{bmatrix}}=n.}

### Transfer function

[edit]

The "transfer function" of a continuous time-invariant linear state-space model can be derived in the following way:

First, taking the Laplace transform of

x ˙ ( t ) = A x ( t ) + B u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\mathbf {A} \mathbf {x} (t)+\mathbf {B} \mathbf {u} (t)}

yields

s X ( s ) − x ( 0 ) = A X ( s ) + B U ( s ) . {\displaystyle s\mathbf {X} (s)-\mathbf {x} (0)=\mathbf {A} \mathbf {X} (s)+\mathbf {B} \mathbf {U} (s).}

Next, we simplify for  X ( s ) {\displaystyle \mathbf {X} (s)} , giving

( s I − A ) X ( s ) = x ( 0 ) + B U ( s ) {\displaystyle (s\mathbf {I} -\mathbf {A} )\mathbf {X} (s)=\mathbf {x} (0)+\mathbf {B} \mathbf {U} (s)}

and thus

X ( s ) = ( s I − A ) − 1 x ( 0 ) + ( s I − A ) − 1 B U ( s ) . {\displaystyle \mathbf {X} (s)=(s\mathbf {I} -\mathbf {A} )^{-1}\mathbf {x} (0)+(s\mathbf {I} -\mathbf {A} )^{-1}\mathbf {B} \mathbf {U} (s).}

Substituting for  X ( s ) {\displaystyle \mathbf {X} (s)} in the output equation

Y ( s ) = C X ( s ) + D U ( s ) , {\displaystyle \mathbf {Y} (s)=\mathbf {C} \mathbf {X} (s)+\mathbf {D} \mathbf {U} (s),}

giving

Y ( s ) = C ( ( s I − A ) − 1 x ( 0 ) + ( s I − A ) − 1 B U ( s ) ) + D U ( s ) . {\displaystyle \mathbf {Y} (s)=\mathbf {C} ((s\mathbf {I} -\mathbf {A} )^{-1}\mathbf {x} (0)+(s\mathbf {I} -\mathbf {A} )^{-1}\mathbf {B} \mathbf {U} (s))+\mathbf {D} \mathbf {U} (s).}

Assuming zero initial conditions  x ( 0 ) = 0 {\displaystyle \mathbf {x} (0)=\mathbf {0} } and a single-input single-output (SISO) system, the transfer function is defined as the ratio of output and input  G ( s ) = Y ( s ) / U ( s ) {\displaystyle G(s)=Y(s)/U(s)} . For a multiple-input multiple-output (MIMO) system, however, this ratio is not defined. Therefore, assuming zero initial conditions, the transfer function matrix is derived from

Y ( s ) = G ( s ) U ( s ) {\displaystyle \mathbf {Y} (s)=\mathbf {G} (s)\mathbf {U} (s)}

using the method of equating the coefficients which yields

G ( s ) = C ( s I − A ) − 1 B + D {\displaystyle \mathbf {G} (s)=\mathbf {C} (s\mathbf {I} -\mathbf {A} )^{-1}\mathbf {B} +\mathbf {D} } .

Consequently,  G ( s ) {\displaystyle \mathbf {G} (s)} is a matrix with the dimension  q × p {\displaystyle q\times p} which contains transfer functions for each input output combination. Due to the simplicity of this matrix notation, the state-space representation is commonly used for multiple-input, multiple-output systems. The Rosenbrock system matrix provides a bridge between the state-space representation and its transfer function.

### Canonical realizations

[edit]

Main article: Realization (systems)

Any given transfer function which is strictly proper can easily be transferred into state-space by the following approach (this example is for a 4-dimensional, single-input, single-output system):

Given a transfer function, expand it to reveal all coefficients in both the numerator and denominator. This should result in the following form:

G ( s ) = n 1 s 3 + n 2 s 2 + n 3 s + n 4 s 4 + d 1 s 3 + d 2 s 2 + d 3 s + d 4 . {\displaystyle {\textbf {G}}(s)={\frac {n_{1}s^{3}+n_{2}s^{2}+n_{3}s+n_{4}}{s^{4}+d_{1}s^{3}+d_{2}s^{2}+d_{3}s+d_{4}}}.}

The coefficients can now be inserted directly into the state-space model by the following approach:

x ˙ ( t ) = [ 0 1 0 0 0 0 1 0 0 0 0 1 − d 4 − d 3 − d 2 − d 1 ] x ( t ) + [ 0 0 0 1 ] u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)={\begin{bmatrix}0&1&0&0\\\0&0&1&0\\\0&0&0&1\\\\-d_{4}&-d_{3}&-d_{2}&-d_{1}\end{bmatrix}}\mathbf {x} (t)+{\begin{bmatrix}0\\\0\\\0\\\1\end{bmatrix}}\mathbf {u} (t)}

y ( t ) = [ n 4 n 3 n 2 n 1 ] x ( t ) . {\displaystyle \mathbf {y} (t)={\begin{bmatrix}n_{4}&n_{3}&n_{2}&n_{1}\end{bmatrix}}\mathbf {x} (t).}

This state-space realization is called controllable canonical form because the resulting model is guaranteed to be controllable (i.e., because the control enters a chain of integrators, it has the ability to move every state).

The transfer function coefficients can also be used to construct another type of canonical form

x ˙ ( t ) = [ 0 0 0 − d 4 1 0 0 − d 3 0 1 0 − d 2 0 0 1 − d 1 ] x ( t ) + [ n 4 n 3 n 2 n 1 ] u ( t ) {\displaystyle {\dot {\textbf {x}}}(t)={\begin{bmatrix}0&0&0&-d_{4}\\\1&0&0&-d_{3}\\\0&1&0&-d_{2}\\\0&0&1&-d_{1}\end{bmatrix}}{\textbf {x}}(t)+{\begin{bmatrix}n_{4}\\\n_{3}\\\n_{2}\\\n_{1}\end{bmatrix}}{\textbf {u}}(t)}

y ( t ) = [ 0 0 0 1 ] x ( t ) . {\displaystyle {\textbf {y}}(t)={\begin{bmatrix}0&0&0&1\end{bmatrix}}{\textbf {x}}(t).}

This state-space realization is called observable canonical form because the resulting model is guaranteed to be observable (i.e., because the output exits from a chain of integrators, every state has an effect on the output).

### Proper transfer functions

[edit]

Transfer functions which are only proper (and not strictly proper) can also be realised quite easily. The trick here is to separate the transfer function into two parts: a strictly proper part and a constant.

G ( s ) = G S P ( s ) + G ( ∞ ) . {\displaystyle {\textbf {G}}(s)={\textbf {G}}_{\mathrm {SP} }(s)+{\textbf {G}}(\infty ).}

The strictly proper transfer function can then be transformed into a canonical state-space realization using techniques shown above. The state-space realization of the constant is trivially  y ( t ) = G ( ∞ ) u ( t ) {\displaystyle {\textbf {y}}(t)={\textbf {G}}(\infty ){\textbf {u}}(t)} . Together we then get a state-space realization with matrices A, B and C determined by the strictly proper part, and matrix D determined by the constant.

Here is an example to clear things up a bit:

G ( s ) = s 2 + 3 s + 3 s 2 + 2 s + 1 = s + 2 s 2 + 2 s + 1 + 1 {\displaystyle {\textbf {G}}(s)={\frac {s^{2}+3s+3}{s^{2}+2s+1}}={\frac {s+2}{s^{2}+2s+1}}+1}

which yields the following controllable realization

x ˙ ( t ) = [ − 2 − 1 1 0 ] x ( t ) + [ 1 0 ] u ( t ) {\displaystyle {\dot {\textbf {x}}}(t)={\begin{bmatrix}-2&-1\\\1&0\\\\\end{bmatrix}}{\textbf {x}}(t)+{\begin{bmatrix}1\\\0\end{bmatrix}}{\textbf {u}}(t)}

y ( t ) = [ 1 2 ] x ( t ) + [ 1 ] u ( t ) {\displaystyle {\textbf {y}}(t)={\begin{bmatrix}1&2\end{bmatrix}}{\textbf {x}}(t)+{\begin{bmatrix}1\end{bmatrix}}{\textbf {u}}(t)}

Notice how the output also depends directly on the input. This is due to the  G ( ∞ ) {\displaystyle {\textbf {G}}(\infty )} constant in the transfer function.

### Feedback

[edit]

Typical state-space model with feedback

A common method for feedback is to multiply the output by a matrix K and setting this as the input to the system:  u ( t ) = K y ( t ) {\displaystyle \mathbf {u} (t)=K\mathbf {y} (t)} . Since the values of K are unrestricted the values can easily be negated for negative feedback. The presence of a negative sign (the common notation) is merely a notational one and its absence has no impact on the end results.

x ˙ ( t ) = A x ( t ) + B u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=A\mathbf {x} (t)+B\mathbf {u} (t)}
y ( t ) = C x ( t ) + D u ( t ) {\displaystyle \mathbf {y} (t)=C\mathbf {x} (t)+D\mathbf {u} (t)}

becomes

x ˙ ( t ) = A x ( t ) + B K y ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=A\mathbf {x} (t)+BK\mathbf {y} (t)}
y ( t ) = C x ( t ) + D K y ( t ) {\displaystyle \mathbf {y} (t)=C\mathbf {x} (t)+DK\mathbf {y} (t)}

solving the output equation for  y ( t ) {\displaystyle \mathbf {y} (t)} and substituting in the state equation results in

x ˙ ( t ) = ( A + B K ( I − D K ) − 1 C ) x ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\left(A+BK\left(I-DK\right)^{-1}C\right)\mathbf {x} (t)}
y ( t ) = ( I − D K ) − 1 C x ( t ) {\displaystyle \mathbf {y} (t)=\left(I-DK\right)^{-1}C\mathbf {x} (t)}

The advantage of this is that the eigenvalues of A can be controlled by setting K appropriately through eigendecomposition of  ( A + B K ( I − D K ) − 1 C ) {\displaystyle \left(A+BK\left(I-DK\right)^{-1}C\right)} . This assumes that the closed-loop system is controllable or that the unstable eigenvalues of A can be made stable through appropriate choice of K.

#### Example

[edit]

For a strictly proper system D equals zero. Another fairly common situation is when all states are outputs, i.e. y = x, which yields C = I, the Identity matrix. This would then result in the simpler equations

x ˙ ( t ) = ( A + B K ) x ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\left(A+BK\right)\mathbf {x} (t)}
y ( t ) = x ( t ) {\displaystyle \mathbf {y} (t)=\mathbf {x} (t)}

This reduces the necessary eigendecomposition to just  A + B K {\displaystyle A+BK} .

### Feedback with setpoint (reference) input

[edit]

Output feedback with set point

In addition to feedback, an input,  r ( t ) {\displaystyle r(t)} , can be added such that  u ( t ) = − K y ( t ) + r ( t ) {\displaystyle \mathbf {u} (t)=-K\mathbf {y} (t)+\mathbf {r} (t)} .

x ˙ ( t ) = A x ( t ) + B u ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=A\mathbf {x} (t)+B\mathbf {u} (t)}
y ( t ) = C x ( t ) + D u ( t ) {\displaystyle \mathbf {y} (t)=C\mathbf {x} (t)+D\mathbf {u} (t)}

becomes

x ˙ ( t ) = A x ( t ) − B K y ( t ) + B r ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=A\mathbf {x} (t)-BK\mathbf {y} (t)+B\mathbf {r} (t)}
y ( t ) = C x ( t ) − D K y ( t ) + D r ( t ) {\displaystyle \mathbf {y} (t)=C\mathbf {x} (t)-DK\mathbf {y} (t)+D\mathbf {r} (t)}

solving the output equation for  y ( t ) {\displaystyle \mathbf {y} (t)} and substituting in the state equation results in

x ˙ ( t ) = ( A − B K ( I + D K ) − 1 C ) x ( t ) + B ( I − K ( I + D K ) − 1 D ) r ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\left(A-BK\left(I+DK\right)^{-1}C\right)\mathbf {x} (t)+B\left(I-K\left(I+DK\right)^{-1}D\right)\mathbf {r} (t)}
y ( t ) = ( I + D K ) − 1 C x ( t ) + ( I + D K ) − 1 D r ( t ) {\displaystyle \mathbf {y} (t)=\left(I+DK\right)^{-1}C\mathbf {x} (t)+\left(I+DK\right)^{-1}D\mathbf {r} (t)}

One fairly common simplification to this system is removing D, which reduces the equations to

x ˙ ( t ) = ( A − B K C ) x ( t ) + B r ( t ) {\displaystyle {\dot {\mathbf {x} }}(t)=\left(A-BKC\right)\mathbf {x} (t)+B\mathbf {r} (t)}
y ( t ) = C x ( t ) {\displaystyle \mathbf {y} (t)=C\mathbf {x} (t)}

### Moving object example

[edit]

A classical linear system is that of one-dimensional movement of an object (e.g., a cart). Newton's laws of motion for an object moving horizontally on a plane and attached to a wall with a spring:

m y ¨ ( t ) = u ( t ) − b y ˙ ( t ) − k y ( t ) {\displaystyle m{\ddot {y}}(t)=u(t)-b{\dot {y}}(t)-ky(t)}

where

* y ( t ) {\displaystyle y(t)} is position;  y ˙ ( t ) {\displaystyle {\dot {y}}(t)} is velocity;  y ¨ ( t ) {\displaystyle {\ddot {y}}(t)} is acceleration
* u ( t ) {\displaystyle u(t)} is an applied force
* b {\displaystyle b} is the viscous friction coefficient
* k {\displaystyle k} is the spring constant
* m {\displaystyle m} is the mass of the object

The state equation would then become

[ x ˙ 1 ( t ) x ˙ 2 ( t ) ] = [ 0 1 − k m − b m ] [ x 1 ( t ) x 2 ( t ) ] + [ 0 1 m ] u ( t ) {\displaystyle {\begin{bmatrix}{\dot {\mathbf {x} }}_{1}(t)\\\\{\dot {\mathbf {x} }}_{2}(t)\end{bmatrix}}={\begin{bmatrix}0&1\\\\-{\frac {k}{m}}&-{\frac {b}{m}}\end{bmatrix}}{\begin{bmatrix}\mathbf {x} _{1}(t)\\\\\mathbf {x} _{2}(t)\end{bmatrix}}+{\begin{bmatrix}0\\\\{\frac {1}{m}}\end{bmatrix}}\mathbf {u} (t)}
y ( t ) = [ 1 0 ] [ x 1 ( t ) x 2 ( t ) ] {\displaystyle \mathbf {y} (t)=\left[{\begin{matrix}1&0\end{matrix}}\right]\left[{\begin{matrix}\mathbf {x_{1}} (t)\\\\\mathbf {x_{2}} (t)\end{matrix}}\right]}

where

* x 1 ( t ) {\displaystyle x_{1}(t)} represents the position of the object
* x 2 ( t ) = x ˙ 1 ( t ) {\displaystyle x_{2}(t)={\dot {x}}_{1}(t)} is the velocity of the object
* x ˙ 2 ( t ) = x ¨ 1 ( t ) {\displaystyle {\dot {x}}_{2}(t)={\ddot {x}}_{1}(t)} is the acceleration of the object
* the output  y ( t ) {\displaystyle \mathbf {y} (t)} is the position of the object

The controllability test is then

[ B A B ] = [ [ 0 1 m ] [ 0 1 − k m − b m ] [ 0 1 m ] ] = [ 0 1 m 1 m − b m 2 ] {\displaystyle {\begin{bmatrix}B&AB\end{bmatrix}}={\begin{bmatrix}{\begin{bmatrix}0\\\\{\frac {1}{m}}\end{bmatrix}}&{\begin{bmatrix}0&1\\\\-{\frac {k}{m}}&-{\frac {b}{m}}\end{bmatrix}}{\begin{bmatrix}0\\\\{\frac {1}{m}}\end{bmatrix}}\end{bmatrix}}={\begin{bmatrix}0&{\frac {1}{m}}\\\\{\frac {1}{m}}&-{\frac {b}{m^{2}}}\end{bmatrix}}}

which has full rank for all  b {\displaystyle b} and  m {\displaystyle m} . This means, that if initial state of the system is known ( y ( t ) {\displaystyle y(t)} ,  y ˙ ( t ) {\displaystyle {\dot {y}}(t)} ,  y ¨ ( t ) {\displaystyle {\ddot {y}}(t)} ), and if the  b {\displaystyle b} and  m {\displaystyle m} are constants, then there is a force  u {\displaystyle u} that could move the cart into any other position in the system.

The observability test is then

[ C C A ] = [ [ 1 0 ] [ 1 0 ] [ 0 1 − k m − b m ] ] = [ 1 0 0 1 ] {\displaystyle {\begin{bmatrix}C\\\CA\end{bmatrix}}={\begin{bmatrix}{\begin{bmatrix}1&0\end{bmatrix}}\\\\{\begin{bmatrix}1&0\end{bmatrix}}{\begin{bmatrix}0&1\\\\-{\frac {k}{m}}&-{\frac {b}{m}}\end{bmatrix}}\end{bmatrix}}={\begin{bmatrix}1&0\\\0&1\end{bmatrix}}}

which also has full rank. Therefore, this system is both controllable and observable.

## Nonlinear systems

[edit]

The more general form of a state-space model can be written as two functions.

x ˙ ( t ) = f ( t , x ( t ) , u ( t ) ) {\displaystyle \mathbf {\dot {x}} (t)=\mathbf {f} (t,x(t),u(t))}
y ( t ) = h ( t , x ( t ) , u ( t ) ) {\displaystyle \mathbf {y} (t)=\mathbf {h} (t,x(t),u(t))}

The first is the state equation and the latter is the output equation. If the function  f ( ⋅ , ⋅ , ⋅ ) {\displaystyle f(\cdot ,\cdot ,\cdot )} is a linear combination of states and inputs then the equations can be written in matrix notation like above. The  u ( t ) {\displaystyle u(t)} argument to the functions can be dropped if the system is unforced (i.e., it has no inputs).

### Pendulum example

[edit]

A classic nonlinear system is a simple unforced pendulum

m ℓ 2 θ ¨ ( t ) = − m ℓ g sin ⁡ θ ( t ) − k ℓ θ ˙ ( t ) {\displaystyle m\ell ^{2}{\ddot {\theta }}(t)=-m\ell g\sin \theta (t)-k\ell {\dot {\theta }}(t)}

where

* θ ( t ) {\displaystyle \theta (t)} is the angle of the pendulum with respect to the direction of gravity
* m {\displaystyle m} is the mass of the pendulum (pendulum rod's mass is assumed to be zero)
* g {\displaystyle g} is the gravitational acceleration
* k {\displaystyle k} is coefficient of friction at the pivot point
* ℓ {\displaystyle \ell } is the radius of the pendulum (to the center of gravity of the mass  m {\displaystyle m} )

The state equations are then

x ˙ 1 ( t ) = x 2 ( t ) {\displaystyle {\dot {x}}_{1}(t)=x_{2}(t)}
x ˙ 2 ( t ) = − g ℓ sin ⁡ x 1 ( t ) − k m ℓ x 2 ( t ) {\displaystyle {\dot {x}}_{2}(t)=-{\frac {g}{\ell }}\sin {x_{1}}(t)-{\frac {k}{m\ell }}{x_{2}}(t)}

where

* x 1 ( t ) = θ ( t ) {\displaystyle x_{1}(t)=\theta (t)} is the angle of the pendulum
* x 2 ( t ) = x ˙ 1 ( t ) {\displaystyle x_{2}(t)={\dot {x}}_{1}(t)} is the rotational velocity of the pendulum
* x ˙ 2 = x ¨ 1 {\displaystyle {\dot {x}}_{2}={\ddot {x}}_{1}} is the rotational acceleration of the pendulum

Instead, the state equation can be written in the general form

x ˙ ( t ) = [ x ˙ 1 ( t ) x ˙ 2 ( t ) ] = f ( t , x ( t ) ) = [ x 2 ( t ) − g ℓ sin ⁡ x 1 ( t ) − k m ℓ x 2 ( t ) ] . {\displaystyle {\dot {\mathbf {x} }}(t)={\begin{bmatrix}{\dot {x}}_{1}(t)\\\\{\dot {x}}_{2}(t)\end{bmatrix}}=\mathbf {f} (t,x(t))={\begin{bmatrix}x_{2}(t)\\\\-{\frac {g}{\ell }}\sin {x_{1}}(t)-{\frac {k}{m\ell }}{x_{2}}(t)\end{bmatrix}}.}

The equilibrium/stationary points of a system are when  x ˙ = 0 {\displaystyle {\dot {x}}=0} and so the equilibrium points of a pendulum are those that satisfy

[ x 1 x 2 ] = [ n π 0 ] {\displaystyle {\begin{bmatrix}x_{1}\\\x_{2}\end{bmatrix}}={\begin{bmatrix}n\pi \\\0\end{bmatrix}}}

for integers n.

## See also

[edit]

* Control engineering
* Control theory
* State observer
* Observability
* Controllability
* Discretization of state-space models
* Phase space for information about phase state (like state space) in physics and mathematics.
* State space for information about state space with discrete states in computer science.
* Kalman filter for a statistical application.

## References

[edit]

1. ^ Katalin M. Hangos; R. Lakner & M. Gerzson (2001). Intelligent Control Systems: An Introduction with Examples. Springer. p. 254\. ISBN 978-1-4020-0134-5.
2. ^ Katalin M. Hangos; József Bokor & Gábor Szederkényi (2004). Analysis and Control of Nonlinear Process Systems. Springer. p. 25\. ISBN 978-1-85233-600-4.
3. ^ Vasilyev A.S.; Ushakov A.V. (2015). "Modeling of dynamic systems with modulation by means of Kronecker vector-matrix representation". Scientific and Technical Journal of Information Technologies, Mechanics and Optics. 15 (5): 839–848. doi:10.17586/2226-1494-2015-15-5-839-848.
4. ^ Stock, J.H.; Watson, M.W. (2016), "Dynamic Factor Models, Factor-Augmented Vector Autoregressions, and Structural Vector Autoregressions in Macroeconomics", Handbook of Macroeconomics, vol. 2, Elsevier, pp. 415–525, doi:10.1016/bs.hesmac.2016.04.002, ISBN 978-0-444-59487-7
5. ^ Durbin, James; Koopman, Siem Jan (2012). Time series analysis by state space methods. Oxford University Press. ISBN 978-0-19-964117-8. OCLC 794591362.
6. ^ Roesser, R. (1975). "A discrete state-space model for linear image processing". IEEE Transactions on Automatic Control. 20 (1): 1–10. doi:10.1109/tac.1975.1100844. ISSN 0018-9286.
7. ^ Smith, Anne C.; Brown, Emery N. (2003). "Estimating a State-Space Model from Point Process Observations". Neural Computation. 15 (5): 965–991. doi:10.1162/089976603765202622. ISSN 0899-7667. PMID 12803953. S2CID 10020032.
8. ^ James H. Stock & Mark W. Watson, 1989. "New Indexes of Coincident and Leading Economic Indicators," NBER Chapters, in: NBER Macroeconomics Annual 1989, Volume 4, pages 351-409, National Bureau of Economic Research, Inc.
9. ^ Bańbura, Marta; Modugno, Michele (2012-11-12). "Maximum Likelihood Estimation of Factor Models on Datasets with Arbitrary Pattern of Missing Data". Journal of Applied Econometrics. 29 (1): 133–160. doi:10.1002/jae.2306. hdl:10419/153623. ISSN 0883-7252. S2CID 14231301.
10. ^ "State-Space Models with Markov Switching and Gibbs-Sampling", State-Space Models with Regime Switching, The MIT Press, 2017, doi:10.7551/mitpress/6444.003.0013, ISBN 978-0-262-27711-2
11. ^ Kalman, R. E. (1960-03-01). "A New Approach to Linear Filtering and Prediction Problems". Journal of Basic Engineering. 82 (1): 35–45. doi:10.1115/1.3662552. ISSN 0021-9223. S2CID 259115248.
12. ^ Harvey, Andrew C. (1990). Forecasting, Structural Time Series Models and the Kalman Filter. Cambridge: Cambridge University Press. doi:10.1017/CBO9781107049994
13. ^ Nise, Norman S. (2010). Control Systems Engineering (6th ed.). John Wiley & Sons, Inc. ISBN 978-0-470-54756-4.
14. ^ Brogan, William L. (1974). Modern Control Theory (1st ed.). Quantum Publishers, Inc. p. 172.

## Further reading

[edit]

* Antsaklis, P. J.; Michel, A. N. (2007). A Linear Systems Primer. Birkhauser. ISBN 978-0-8176-4460-4.
* Chen, Chi-Tsong (1999). Linear System Theory and Design (3rd ed.). Oxford University Press. ISBN 0-19-511777-8.
* Khalil, Hassan K. (2001). Nonlinear Systems (3rd ed.). Prentice Hall. ISBN 0-13-067389-7.
* Hinrichsen, Diederich; Pritchard, Anthony J. (2005). Mathematical Systems Theory I, Modelling, State Space Analysis, Stability and Robustness. Springer. ISBN 978-3-540-44125-0.
* Sontag, Eduardo D. (1999). Mathematical Control Theory: Deterministic Finite Dimensional Systems (PDF) (2nd ed.). Springer. ISBN 0-387-98489-5. Retrieved June 28, 2012.
* Friedland, Bernard (2005). Control System Design: An Introduction to State-Space Methods. Dover. ISBN 0-486-44278-0.
* Zadeh, Lotfi A.; Desoer, Charles A. (1979). Linear System Theory. Krieger Pub Co. ISBN 978-0-88275-809-1.

On the applications of state-space models in econometrics

* Durbin, J.; Koopman, S. (2001). Time series analysis by state space methods. Oxford, UK: Oxford University Press. ISBN 978-0-19-852354-3.

## External links

[edit]

* Wolfram language functions for linear state-space models, affine state-space models, and nonlinear state-space models.

* v
* t
* e

Differentiable computing

General|

* Differentiable programming
* Information geometry
* Statistical manifold
* Automatic differentiation
* Neuromorphic engineering
* Pattern recognition
* Tensor calculus
* Computational learning theory
* Inductive bias

Concepts|

* Gradient descent
* SGD
* Clustering
* Regression
* Overfitting
* Hallucination
* Adversary
* Attention
* Convolution
* Loss functions
* Backpropagation
* Batchnorm
* Activation
* Softmax
* Sigmoid
* Rectifier
* Regularization
* Datasets
* Augmentation
* Diffusion
* Autoregression

Applications|

* Machine learning
* In-context learning
* Artificial neural network
* Deep learning
* Scientific computing
* Artificial Intelligence
* Language model
* Large language model

Hardware|

* IPU
* TPU
* VPU
* Memristor
* SpiNNaker

Software libraries|

* TensorFlow
* PyTorch
* Keras
* Theano
* JAX
* Flux.jl
* MindSpore

Implementations|

| Audio–visual|

* AlexNet
* WaveNet
* Human image synthesis
* HWR
* OCR
* Speech synthesis
* Speech recognition
* Facial recognition
* AlphaFold
* Text-to-image models
* DALL-E
* Midjourney
* Stable Diffusion
* Text-to-video models
* Sora
* VideoPoet
* Whisper

|

Verbal|

* Word2vec
* Seq2seq
* BERT
* Gemini
* LaMDA
* Bard
* NMT
* Project Debater
* IBM Watson
* IBM Watsonx
* Granite
* GPT-1
* GPT-2
* GPT-3
* GPT-4
* ChatGPT
* GPT-J
* Chinchilla AI
* PaLM
* BLOOM
* LLaMA
* PanGu-Σ

Decisional|

* AlphaGo
* AlphaZero
* Q-learning
* SARSA
* OpenAI Five
* Self-driving car
* MuZero
* Action selection
* Auto-GPT
* Robot control

People|

* Yoshua Bengio
* Alex Graves
* Ian Goodfellow
* Stephen Grossberg
* Demis Hassabis
* Geoffrey Hinton
* Yann LeCun
* Fei-Fei Li
* Andrew Ng
* Jürgen Schmidhuber
* David Silver
* Ilya Sutskever

Organizations|

* Anthropic
* EleutherAI
* Google DeepMind
* Hugging Face
* OpenAI
* Meta AI
* Mila
* MIT CSAIL
* Huawei

Architectures|

* Neural Turing machine
* Differentiable neural computer
* Transformer
* Recurrent neural network (RNN)
* Long short-term memory (LSTM)
* Gated recurrent unit (GRU)
* Echo state network
* Multilayer perceptron (MLP)
* Convolutional neural network
* Residual neural network
* Mamba
* Autoencoder
* Variational autoencoder (VAE)
* Generative adversarial network (GAN)
* Graph neural network

* Portals
* Computer programming
* Technology
* Categories
* Artificial neural networks
* Machine learning

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template