0

From wikipedia, Consider the continuous linear system: $$\mathbf{\dot x} (t) = A(t)\mathbf{x}(t) + B(t)\mathbf{u}(t)$$

There exists a control $u$ from state $x_0$ at time $t_0$ to state $x_1$ at time $t_1 > t_0$ if and only if $x_1 - \phi(t_0,t_1)x_0$ is in the column space of $$W(t_0, t_1) = \int_{t_0}^{t_1}\phi(t_0,t)\mathbf{B}(t)\mathbf{B}(t)^T\phi(t_0,t)^Tdt$$ where $\phi$ is the state-transition matrix and $W(t_0,t_1) is the controllability Gramian.

In fact, if $\eta_0$ is a solution to $W(t_0,t_1)\eta = x_1 - \phi(t_0, t_1)x_0$ then a control given by $u(t) = -B(t)^T\phi(t_0,t)^T\eta_0$ would make the desired transfer.

Let's say the system is also time-invariant such that $\phi(t,t_0) = e^{\mathbf{A}(t -t_0)}$ which denotes the matrix expoential.

Also, let $t_0 = 0$ so the controllability Gramian reduces to: $$W(0, t_1) = \int_{0}^{t_1}e^{\mathbf{A}(t_1-\tau)}\mathbf{B}\mathbf{B}^Te^{\mathbf{A}^T(t_1-\tau)}d\tau$$

Question:

If I know the matrix/vectors $\mathbf{A}$, $\mathbf{B}$, $\mathbf{x_0}$ and $\mathbf{x_1}$ how do you check if $\mathbf{x_1} - e^{\mathbf{A}(t_1-0)}\mathbf{x_0}$ is in the column space of $W(0,t_1)$ without knowing $t_1$? That is, without knowing the time it would take to transition from $x_0$ to $x_1$? Is there a way to solve for this time? Do I need an explicit value of $t_1$ to get $u$?

Jason
  • 1
  • You don't in general. You would need to look at the controllable subspace. You cannot do anything about the part of the initial state that is not controllable, so to determine if the states can be steered you need to know the time elapsed. Just think about a simple system $x'=u, y' = y$ for example. – copper.hat Apr 14 '20 at 17:11
  • @copper.hat so if the controllable subspace neither completely contains $x_0$ or $x_1$ how would know if you can steer $x_0$ to $x_1$? – Jason Apr 14 '20 at 17:27
  • You would need to know the time difference. This is what influences were the uncontrolled part goes. – copper.hat Apr 14 '20 at 17:35
  • @copper.hat the time difference to bring the controllable subspace to the origin? Or just in general, as the $u$ for the controllable subspace would change depending on the time? – Jason Apr 14 '20 at 17:39
  • $t_1-t_0$. You can do nothing about the uncontrolled part, so you need to know where it evolves to in order to determine if the remainder can be controlled. So you need to know the time difference. Think about my example above. – copper.hat Apr 14 '20 at 17:50

1 Answers1

1

I think there are a lot of confusions are going on with this article. First of all the given definition is for reachability, not controllability and they are slightly different. See my answer here for more information.

Secondly, their claim is not true at all. To see this consider the solution of the system and put the suggested $u(t)$ in the equation:

$$\begin{align} x(t_1) &= \phi(t_1, t_0) x_0 + \int_{t_0}^{t_1} \phi(t_1, \tau) B(\tau) u(\tau) d\tau \\\\ &= \phi(t_1, t_0) x_0 - \phi(t_1, t_0) \int_{t_0}^{t_1} \phi(t_0, \tau) B(\tau) B(\tau)^T \phi(t_0, \tau)^T \eta_0 d\tau \\\\ &= \phi(t_1, t_0) x_0 - \phi(t_1, t_0) [x_1 - \phi(t_0, t_1) x_0] \\\\ &\neq x_1 \end{align}$$

It would have been true however if we use reachability gramian instead.

Assuming reachability, let's answer your questions. In general, the times $t_0$ and $t_1$ must be specified for time-varying systems. So for reachability this definition is broadly accepted:

A state $x_1$ is called reachable at time $t_1$ if for some finite initial time $t_0$ there exists an input $u(t)$ that transfers the state $x(t)$ from the origin at $t_0$ to $x_1$.

A system is reachable at time $t_1$ if every state $x_1$ in the state-space is reachable at time $t_1$.

The definition assumes $x_0=0$ but it is easy to see that we can assume this without losing generality.

For LTI systems $\operatorname{Im} W(0,t_1) = \operatorname{Im} W(0,t_2)$ for any $t_1, t_2 > 0$. (By the way your definiton of controllability gramian for LTI systems is actually the reachability gramian, so I will go with that). So, you don't need to specify a time, hence you can change it to "in finite time".

It is easier to show that $\operatorname{Ker} W(0,t_1) = \operatorname{Ker} W(0,t_2)$ (note that $W$ is symmetric). Let $x \in \operatorname{Ker} W(0,t_1)$, which means $$ x^T W(0, t_1) x = \int_0^{t_1} \lVert B^T e^{A^T(t_1-\tau)} x \rVert d\tau = 0 $$ which implies that $B^T e^{A^T(t_1-\tau)} x = 0, \forall \tau \in [0, t_1]$. If $t_1 > t_2$, obviously $\operatorname{Ker} W(0,t_1) \subset \operatorname{Ker} W(0,t_2)$ (which is also true for time-varying systems). Otherwise, we have to use the fact that $e^{At} = \sum_{i=0}^{n-1} \alpha_i(t) A^i$ for some scalar functions $\alpha_i(\cdot)$.

So in the LTI case selection of $t_1$ is arbitrary and you can select any $t_1$ you want and calculate $u(t)$ according to this $t_1$.

obareey
  • 5,797