In control engineering, a statespace representation is a mathematical model of a physical system as a set of input, output and state variables related by firstorder differential equations. "State space" refers to the space whose axes are the state variables. The state of the system can be represented as a vector within that space.
To abstract from the number of inputs, outputs and states, these variables are expressed as vectors. Additionally, if the dynamical system is linear, timeinvariant, and finitedimensional, then the differential and algebraic equations may be written in matrix form.^{[1]}^{[2]} The statespace method is characterized by significant algebraization of general system theory, which makes possible to use Kronecker vectormatrix structures. The capacity of these structures can be efficiently applied to research systems with modulation or without it. ^{[3]} The statespace representation (also known as the "timedomain approach") provides a convenient and compact way to model and analyze systems with multiple inputs and outputs. With p inputs and q outputs, we would otherwise have to write down q \times p Laplace transforms to encode all the information about a system. Unlike the frequency domain approach, the use of the statespace representation is not limited to systems with linear components and zero initial conditions.
Contents

State variables 1

Linear systems 2

Example: continuoustime LTI case 2.1

Controllability 2.2

Observability 2.3

Transfer function 2.4

Canonical realizations 2.5

Proper transfer functions 2.6

Feedback 2.7

Feedback with setpoint (reference) input 2.8

Moving object example 2.9

Nonlinear systems 3

See also 4

References 5

Further reading 6

External links 7
State variables
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.^{[4]} The minimum number of state variables required to represent a given system, n, is usually equal to the order of the system's defining differential equation. 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 statespace 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 statespace 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 will not be able to be solved.
Linear systems
Block diagram representation of the linear statespace equations
The most general statespace representation of a linear system with p inputs, q outputs and n state variables is written in the following form:^{[5]}

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

\mathbf{y}(t) = C(t) \mathbf{x}(t) + D(t) \mathbf{u}(t)
where:

\mathbf{x}(\cdot) is called the "state vector", \mathbf{x}(t) \in \mathbb{R}^n;

\mathbf{y}(\cdot) is called the "output vector", \mathbf{y}(t) \in \mathbb{R}^q;

\mathbf{u}(\cdot) is called the "input (or control) vector", \mathbf{u}(t) \in \mathbb{R}^p;

A(\cdot) is the "state (or system) matrix", \operatorname{dim}[A(\cdot)] = n \times n,

B(\cdot) is the "input matrix", \operatorname{dim}[B(\cdot)] = n \times p,

C(\cdot) is the "output matrix", \operatorname{dim}[C(\cdot)] = q \times n,

D(\cdot) is the "feedthrough (or feedforward) matrix" (in cases where the system model does not have a direct feedthrough, D(\cdot) is the zero matrix), \operatorname{dim}[D(\cdot)] = q \times p,

\dot{\mathbf{x}}(t) := \frac{\operatorname{d}}{\operatorname{d}t} \mathbf{x}(t).
In this general formulation, all matrices are allowed to be timevariant (i.e. their elements can depend on time); however, in the common LTI case, matrices will be time invariant. The time variable t can be continuous (e.g. t \in \mathbb{R}) or discrete (e.g. t \in \mathbb{Z}). In the latter case, the time variable k is usually used instead of t. Hybrid systems allow for time domains that have both continuous and discrete parts. Depending on the assumptions taken, the statespace model representation can assume the following forms:
System type

Statespace model

Continuous timeinvariant

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

Continuous timevariant

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

Explicit discrete timeinvariant

\mathbf{x}(k+1) = A \mathbf{x}(k) + B \mathbf{u}(k)
\mathbf{y}(k) = C \mathbf{x}(k) + D \mathbf{u}(k)

Explicit discrete timevariant

\mathbf{x}(k+1) = \mathbf{A}(k) \mathbf{x}(k) + \mathbf{B}(k) \mathbf{u}(k)
\mathbf{y}(k) = \mathbf{C}(k) \mathbf{x}(k) + \mathbf{D}(k) \mathbf{u}(k)

Laplace domain of
continuous timeinvariant

s \mathbf{X}(s) = A \mathbf{X}(s) + B \mathbf{U}(s)
\mathbf{Y}(s) = C \mathbf{X}(s) + D \mathbf{U}(s)

Zdomain of
discrete timeinvariant

z \mathbf{X}(z) = A \mathbf{X}(z) + B \mathbf{U}(z)
\mathbf{Y}(z) = C \mathbf{X}(z) + D \mathbf{U}(z)

Example: continuoustime LTI case
Stability and natural response characteristics of a continuoustime LTI system (i.e., linear with matrices that are constant with respect to time) can be studied from the eigenvalues of the matrix A. The stability of a timeinvariant statespace model can be determined by looking at the system's transfer function in factored form. It will then look something like this:

\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 sI  A,

\mathbf{\lambda}(s) = sI  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 \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
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 timeinvariant linear statespace model is controllable if and only if

\operatorname{rank}\begin{bmatrix}B& AB& A^{2}B& \dots & A^{n1}B\end{bmatrix} = n, \,
where rank is the number of linearly independent rows in a matrix.
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 timeinvariant linear statespace model is observable if and only if

\operatorname{rank}\begin{bmatrix}C\\ CA\\ \vdots\\ CA^{n1}\end{bmatrix} = n. \,
Transfer function
The "transfer function" of a continuous timeinvariant linear statespace model can be derived in the following way:
First, taking the Laplace transform of

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

s\mathbf{X}(s)X(0) = A \mathbf{X}(s) + B \mathbf{U}(s). \,
Next, we simplify for \mathbf{X}(s), giving

(s\mathbf{I}  A)\mathbf{X}(s) =X(0)+ B\mathbf{U}(s), \,
and thus

\mathbf{X}(s) =(s\mathbf{I}  A)^{1}X(0)+ (s\mathbf{I}  A)^{1}B\mathbf{U}(s). \,
Substituting for \mathbf{X}(s) in the output equation

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

\mathbf{Y}(s) = C((s\mathbf{I}  A)^{1}B\mathbf{U}(s)) + D\mathbf{U}(s). \,
Because the transfer function \mathbf{G}(s) is defined as the ratio of the output to the input of a system, we take

\mathbf{G}(s) = \mathbf{Y}(s) / \mathbf{U}(s)
and substitute the previous expression for \mathbf{Y}(s) with respect to \mathbf{U}(s), giving

\mathbf{G}(s) = C(s\mathbf{I}  A)^{1}B + D. \,
Clearly \mathbf{G}(s) must have q by p dimensionality, and thus has a total of qp elements. So for every input there are q transfer functions with one for each output. This is why the statespace representation can easily be the preferred choice for multipleinput, multipleoutput (MIMO) systems. The Rosenbrock system matrix provides a bridge between the statespace representation and its transfer function.
Canonical realizations
Any given transfer function which is strictly proper can easily be transferred into statespace by the following approach (this example is for a 4dimensional, singleinput, singleoutput system):
Given a transfer function, expand it to reveal all coefficients in both the numerator and denominator. This should result in the following form:

\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 statespace model by the following approach:

\dot{\textbf{x}}(t) = \begin{bmatrix} d_{1}& d_{2}& d_{3}& d_{4}\\ 1& 0& 0& 0\\ 0& 1& 0& 0\\ 0& 0& 1& 0 \end{bmatrix}\textbf{x}(t) + \begin{bmatrix} 1\\ 0\\ 0\\ 0\\ \end{bmatrix}\textbf{u}(t)

\textbf{y}(t) = \begin{bmatrix} n_{1}& n_{2}& n_{3}& n_{4} \end{bmatrix}\textbf{x}(t). \,
This statespace 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

\dot{\textbf{x}}(t) = \begin{bmatrix} d_{1}& 1& 0& 0\\ d_{2}& 0& 1& 0\\ d_{3}& 0& 0& 1\\ d_{4}& 0& 0& 0 \end{bmatrix}\textbf{x}(t) + \begin{bmatrix} n_{1}\\ n_{2}\\ n_{3}\\ n_{4} \end{bmatrix}\textbf{u}(t)

\textbf{y}(t) = \begin{bmatrix} 1& 0& 0& 0 \end{bmatrix}\textbf{x}(t). \,
This statespace 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
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.

\textbf{G}(s) = \textbf{G}_\mathrm{SP}(s) + \textbf{G}(\infty). \,
The strictly proper transfer function can then be transformed into a canonical statespace realization using techniques shown above. The statespace realization of the constant is trivially \textbf{y}(t) = \textbf{G}(\infty)\textbf{u}(t). Together we then get a statespace 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:

\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

\dot{\textbf{x}}(t) = \begin{bmatrix} 2& 1\\ 1& 0\\ \end{bmatrix}\textbf{x}(t) + \begin{bmatrix} 1\\ 0\end{bmatrix}\textbf{u}(t)

\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 \textbf{G}(\infty) constant in the transfer function.
Feedback
Typical statespace 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: \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.

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

\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)
becomes

\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B K \mathbf{y}(t)

\mathbf{y}(t) = C \mathbf{x}(t) + D K \mathbf{y}(t)
solving the output equation for \mathbf{y}(t) and substituting in the state equation results in

\dot{\mathbf{x}}(t) = \left(A + B K \left(I  D K\right)^{1} C \right) \mathbf{x}(t)

\mathbf{y}(t) = \left(I  D K\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 \left(A + B K \left(I  D K\right)^{1} C \right). This assumes that the closedloop system is controllable or that the unstable eigenvalues of A can be made stable through appropriate choice of K.
Example
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

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

\mathbf{y}(t) = \mathbf{x}(t)
This reduces the necessary eigendecomposition to just A + B K.
Feedback with setpoint (reference) input
Output feedback with set point
In addition to feedback, an input, r(t), can be added such that \mathbf{u}(t) = K \mathbf{y}(t) + \mathbf{r}(t).

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

\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)
becomes

\dot{\mathbf{x}}(t) = A \mathbf{x}(t)  B K \mathbf{y}(t) + B \mathbf{r}(t)

\mathbf{y}(t) = C \mathbf{x}(t)  D K \mathbf{y}(t) + D \mathbf{r}(t)
solving the output equation for \mathbf{y}(t) and substituting in the state equation results in

\dot{\mathbf{x}}(t) = \left(A  B K \left(I + D K\right)^{1} C \right) \mathbf{x}(t) + B \left(I  K \left(I + D K\right)^{1}D \right) \mathbf{r}(t)

\mathbf{y}(t) = \left(I + D K\right)^{1} C \mathbf{x}(t) + \left(I + D K\right)^{1} D \mathbf{r}(t)
One fairly common simplification to this system is removing D, which reduces the equations to

\dot{\mathbf{x}}(t) = \left(A  B K C \right) \mathbf{x}(t) + B \mathbf{r}(t)

\mathbf{y}(t) = C \mathbf{x}(t)
Moving object example
A classical linear system is that of onedimensional movement of an object. Newton's laws of motion for an object moving horizontally on a plane and attached to a wall with a spring

m \ddot{y}(t) = u(t)  b\dot{y}(t)  k y(t)
where

y(t) is position; \dot y(t) is velocity; \ddot{y}(t) is acceleration

u(t) is an applied force

b is the viscous friction coefficient

k is the spring constant

m is the mass of the object
The state equation would then become

\left[ \begin{matrix} \mathbf{\dot{x}_1}(t) \\ \mathbf{\dot{x}_2}(t) \end{matrix} \right] = \left[ \begin{matrix} 0 & 1 \\ \frac{k}{m} & \frac{b}{m} \end{matrix} \right] \left[ \begin{matrix} \mathbf{x_1}(t) \\ \mathbf{x_2}(t) \end{matrix} \right] + \left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix} \right] \mathbf{u}(t)

\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) represents the position of the object

x_2(t) = \dot{x}_1(t) is the velocity of the object

\dot{x}_2(t) = \ddot{x}_1(t) is the acceleration of the object

the output \mathbf{y}(t) is the position of the object
The controllability test is then

\left[ \begin{matrix} B & AB \end{matrix} \right] = \left[ \begin{matrix} \left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix} \right] & \left[ \begin{matrix} 0 & 1 \\ \frac{k}{m} & \frac{b}{m} \end{matrix} \right] \left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix} \right] \end{matrix} \right] = \left[ \begin{matrix} 0 & \frac{1}{m} \\ \frac{1}{m} & \frac{b}{m^2} \end{matrix} \right]
which has full rank for all b and m.
The observability test is then

\left[ \begin{matrix} C \\ CA \end{matrix} \right] = \left[ \begin{matrix} \left[ \begin{matrix} 1 & 0 \end{matrix} \right] \\ \left[ \begin{matrix} 1 & 0 \end{matrix} \right] \left[ \begin{matrix} 0 & 1 \\ \frac{k}{m} & \frac{b}{m} \end{matrix} \right] \end{matrix} \right] = \left[ \begin{matrix} 1 & 0 \\ 0 & 1 \end{matrix} \right]
which also has full rank. Therefore, this system is both controllable and observable.
Nonlinear systems
The more general form of a statespace model can be written as two functions.

\mathbf{\dot{x}}(t) = \mathbf{f}(t, x(t), u(t))

\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(\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) argument to the functions can be dropped if the system is unforced (i.e., it has no inputs).
Pendulum example
A classic nonlinear system is a simple unforced pendulum

m\ell^2\ddot\theta(t)=  m\ell g\sin\theta(t)  k\ell\dot\theta(t)
where

\theta(t) is the angle of the pendulum with respect to the direction of gravity

m is the mass of the pendulum (pendulum rod's mass is assumed to be zero)

g is the gravitational acceleration

k is coefficient of friction at the pivot point

\ell is the radius of the pendulum (to the center of gravity of the mass m)
The state equations are then

\dot{x_1}(t) = x_2(t)

\dot{x_2}(t) =  \frac{g}{\ell}\sin{x_1}(t)  \frac{k}{m\ell}{x_2}(t)
where

x_1(t) = \theta(t) is the angle of the pendulum

x_2(t) = \dot{x_1}(t) is the rotational velocity of the pendulum

\dot{x_2} = \ddot{x_1} is the rotational acceleration of the pendulum
Instead, the state equation can be written in the general form

\dot{\mathbf{x}}(t) = \left( \begin{matrix} \dot{x_1}(t) \\ \dot{x_2}(t) \end{matrix} \right) = \mathbf{f}(t, x(t)) = \left( \begin{matrix} x_2(t) \\  \frac{g}{\ell}\sin{x_1}(t)  \frac{k}{m\ell}{x_2}(t) \end{matrix} \right).
The equilibrium/stationary points of a system are when \dot{x} = 0 and so the equilibrium points of a pendulum are those that satisfy

\left( \begin{matrix} x_1 \\ x_2 \end{matrix} \right) = \left( \begin{matrix} n\pi \\ 0 \end{matrix} \right)
for integers n.
See also
References

^ Katalin M. Hangos, R. Lakner, and M. Gerzson (2001). Intelligent Control Systems: An Introduction with Examples. Springer. p. 254.

^ Katalin M. Hangos, József Bokor, and Gábor Szederkényi (2004). Analysis and Control of Nonlinear Process Systems. Springer. p. 25.

^ Vasilyev A.S., Ushakov A.V. (2015). "Modeling of dynamic systems with modulation by means of Kronecker vectormatrix representation.". Scientific and Technical Journal of Information Technologies, Mechanics and Optics 15 (5): 839–848.

^ Nise, Norman S. (2010). Control Systems Engineering (6th ed.). John Wiley & Sons, Inc.

^ Brogan, William L. (1974). Modern Control Theory (1st ed.). Quantum Publishers, Inc. p. 172.
Further reading

Antsaklis, P. J.; Michel, A. N. (2007). A Linear Systems Primer. Birkhauser.

Chen, ChiTsong (1999). Linear System Theory and Design (3rd ed.). Oxford University Press.

Khalil, Hassan K. (2001). Nonlinear Systems (3rd ed.). Prentice Hall.

Hinrichsen, Diederich; Pritchard, Anthony J. (2005). Mathematical Systems Theory I, Modelling, State Space Analysis, Stability and Robustness. Springer.

Sontag, Eduardo D. (1999). Mathematical Control Theory: Deterministic Finite Dimensional Systems (

Friedland, Bernard (2005). Control System Design: An Introduction to StateSpace Methods. Dover.

Zadeh, Lotfi A.; Desoer, Charles A. (1979). Linear System Theory. Krieger Pub Co.

On the applications of statespace models in econometrics

Durbin, J.; Koopman, S. (2001). Time series analysis by state space methods. Oxford, UK: Oxford University Press.
External links

Wolfram language functions for linear statespace models, affine statespace models, and nonlinear statespace models.
This article was sourced from Creative Commons AttributionShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, EGovernment Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a nonprofit organization.