Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Controllability
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Discrete linear time-invariant (LTI) systems == For a [[discrete-time]] linear state-space system (i.e. time variable <math>k\in\mathbb{Z}</math>) the state equation is :<math>\textbf{x}(k+1) = A\textbf{x}(k) + B\textbf{u}(k)</math> where <math>A</math> is an <math>n \times n</math> matrix and <math>B</math> is a <math>n \times r</math> matrix (i.e. <math>\mathbf{u}</math> is <math>r</math> inputs collected in a <math>r \times 1</math> vector). The test for controllability is that the <math>n \times nr</math> matrix :<math>\mathcal{C} = \begin{bmatrix}B & AB & A^{2}B & \cdots & A^{n-1}B\end{bmatrix}</math> has full row [[Rank (linear algebra)|rank]] (i.e., <math>\operatorname{rank}(\mathcal C) = n</math>). That is, if the system is controllable, <math>\mathcal C</math> will have <math>n</math> columns that are [[linearly independent]]; if <math>n</math> columns of <math>\mathcal C</math> are [[linearly independent]], each of the <math>n</math> states is reachable by giving the system proper inputs through the variable <math>u(k)</math>. ===Derivation=== Given the state <math>\textbf{x}(0)</math> at an initial time, arbitrarily denoted as ''k''=0, the state equation gives <math>\textbf{x}(1) = A\textbf{x}(0) + B\textbf{u}(0),</math> then <math>\textbf{x}(2) = A\textbf{x}(1) + B\textbf{u}(1)= A^2\textbf{x}(0)+AB\textbf{u}(0)+B\textbf{u}(1),</math> and so on with repeated back-substitutions of the state variable, eventually yielding :<math>\textbf{x}(n)=B\textbf{u}(n-1) + AB\textbf{u}(n-2) + \cdots + A^{n-1}B\textbf{u}(0) + A^n\textbf{x}(0)</math> or equivalently :<math>\textbf{x}(n)-A^n\textbf{x}(0)= [B \, \, AB \, \, \cdots \, \, A^{n-1}B] [\textbf{u}^T(n-1) \, \, \textbf{u}^T(n-2) \, \, \cdots \, \, \textbf{u}^T(0)]^T.</math> Imposing any desired value of the state vector <math>\textbf{x}(n)</math> on the left side, this can always be solved for the stacked vector of control vectors if and only if the matrix of matrices at the beginning of the right side has full row rank. ===Example=== For example, consider the case when <math>n=2</math> and <math>r=1</math> (i.e. only one control input). Thus, <math>B</math> and <math>A B</math> are <math>2 \times 1</math> vectors. If <math>\begin{bmatrix}B & AB\end{bmatrix}</math> has rank 2 (full rank), and so <math>B</math> and <math>AB</math> are [[linearly independent]] and span the entire plane. If the rank is 1, then <math>B</math> and <math>AB</math> are [[Line (geometry)|collinear]] and do not span the plane. Assume that the initial state is zero. At time <math>k=0</math>: <math>x(1) = A\textbf{x}(0) + B\textbf{u}(0) = B\textbf{u}(0)</math> At time <math>k=1</math>: <math>x(2) = A\textbf{x}(1) + B\textbf{u}(1) = AB\textbf{u}(0) + B\textbf{u}(1)</math> At time <math>k=0</math> all of the reachable states are on the line formed by the vector <math>B</math>. At time <math>k=1</math> all of the reachable states are linear combinations of <math>AB</math> and <math>B</math>. If the system is controllable then these two vectors can span the entire plane and can be done so for time <math>k=2</math>. The assumption made that the initial state is zero is merely for convenience. Clearly if all states can be reached from the origin then any state can be reached from another state (merely a shift in coordinates). This example holds for all positive <math>n</math>, but the case of <math>n=2</math> is easier to visualize. ===Analogy for example of ''n'' = 2=== Consider an [[Car analogy|analogy]] to the previous example system. You are sitting in your car on an infinite, flat plane and facing north. The goal is to reach any point in the plane by driving a distance in a straight line, come to a full stop, turn, and driving another distance, again, in a straight line. If your car has no steering then you can only drive straight, which means you can only drive on a line (in this case the north-south line since you started facing north). The lack of steering case would be analogous to when the rank of <math>C</math> is 1 (the two distances you drove are on the same line). Now, if your car did have steering then you could easily drive to any point in the plane and this would be the analogous case to when the rank of <math>C</math> is 2. If you change this example to <math>n=3</math> then the analogy would be flying in space to reach any position in 3D space (ignoring the [[Orientation (rigid body)|orientation]] of the [[aircraft]]). You are allowed to: *fly in a straight line *turn left or right by any amount ([[Yaw (flight)|Yaw]]) *direct the plane upwards or downwards by any amount ([[Pitch (flight)|Pitch]]) Although the 3-dimensional case is harder to visualize, the concept of controllability is still analogous.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)