# Can we implicitly fit a system of linear ODEs by reduced information?

Assume we are given several initial vectors $x^{(1)},\ldots,x^{(r)} \in \mathbb{R}^n$, where the dimension $n$ is in the range of 50 to 100, and the number of initial vectors $r$ is in the range of 10000 to 20000. Also all entries of the vectors are real numbers between $0$ and $1$, if that helps.

We now consider the system of linear ODEs $$\frac{d}{dt} x = A \cdot x + b,$$ with respective initial vectors $x^{(1)},\ldots,x^{(r)}$, where $A$ is a real valued $n \times n$ matrix and $b$ is a real $n$-dimensional vector. However, we do not know the coefficients of $A$ and $b$ yet. (If beneficial, you may assume $b=0$.)

Consider now the function $G: \mathbb{R}^n \rightarrow \mathbb{R}$ given by $$G(x) = c_0 + \sum_{i=1}^n c_i \cdot x_i.$$ Here most $c_i$, i.e. all apart from 6 to 12 of these $c_i$, are 0, so just a fraction of the entries of the vectors matters. We do know the exact weights of the $c_i$.

We fix three time points: Time point zero plus two further time points $(t_0,t_1,t_2)$.

Now let $x^{(j)}(t_k)$ denote the vector of the curve induced by $x^{(j)}$ and the system of linear ODEs at time point $t_k$. Then, in our scencario we do have for $i = 1,\ldots,r$ and $k=0,\ldots,2$, the values $G(x^{(j)}(t_k))$ at hand, which is, of course, a much reduced information compared to the complete knowledge of $x^{(j)}(t_k)$ and also just allows limited insight, since most entries do not matter in $G$.

My question is now: Can we fit the entries $A$ (and $b$) by knowing all $x^{(j)}$ initial vectors, the function $G$ and the values $G(x^{(j)}(t_k))$ for $i = 1,\ldots,r$ and $k=0,\ldots,2$ ?

On the one hand, since $G$ uses just a small fraction of entries, this seems to be very difficult (particularly for predicting the dynamics of those entries that do not matter in $G$), but on the other hand we have around 10000 to 20000 measured values for each time point and just 10000 entries in the matrix $A$ to fit. Therefore, there might be a chance to fit it.

• Do you have any assumptions on $A$? Is it symmetric or invertible? If it is invertible, then the unique solution to the ODE is $x^{(j)}(t)=e^{tA}x^{(j)}(0)+(e^{tA}-I)b$. Have you tried using this explicit solution? – Joonas Ilmavirta Oct 7 '14 at 13:53
• Thanks for your reply, Joonas. However, even if I would try that I do not see how I can get out the individual rates $a_{ij}$ in $A$, particularly where $i$ is one of those indices that do not matter in $G$. – tobias Oct 7 '14 at 14:04
• There was a typo: I meant $x^{(j)}(t)=e^{tA}x^{(j)}(0)+(e^{tA}-I)A^{-1}b$. If $c_0$ is known, we can assume $c_0=0$. Then $G(x^{(j)}(t))=c^Tx^{(j)}(t)=c^T[e^{tA}x^{(j)}(0)+(e^{tA}-I)A^{-1}b]$. If the vectors $x^{(j)}$ span $\mathbb R^n$, we also know the solution to the ODE with initial value zero. Thus we know $c^T(e^{tA}-I)A^{-1}b$ for $t\in\{t_0,t_2,t_2\}$ and we lose no generality assuming $b=0$. If $A$ is symmetric (do you know this?), you can diagonalize the situation and you can probably see more. – Joonas Ilmavirta Oct 7 '14 at 14:16
• It is unfortunately very unlikely, that $A$ is going to symmetric. There might be huge deviances between $a_{ij}$ and $a_{ji}$. – tobias Oct 7 '14 at 14:21

Let me expand my comments into an answer. The essential conclusion is that you cannot recover the matrix $A$ and the vector $b$ from your data, no matter how large you take $r$. Finding $A$ and $b$ might be possible if the amount of time measurements is at least $n$; three is not enough. Increase the amount of time measurements or use several functions $G$ if you want to recover your unknowns.
First, the solution of the ODE $$\begin{cases} \frac{d}{dt}x=At+b\\ x(0)=x^{(j)} \end{cases}$$ is $$x^{(j)}(t)=e^{tA}x^{(j)}+(e^{tA}-I)A^{-1}b$$ if $A$ is invertible. The matrix $(e^{tA}-I)A^{-1}$ is well defined even if $A$ is not invertible (expand the Taylor series to see this), so I will write my formal solution in the same way for any $A$.
Since $c_0$ is known, we can subtract it from the data, so we take $c_0=0$. Our data consists of the numbers $$D^j_k=c^T[e^{t_kA}x^{(j)}+(e^{t_kA}-I)A^{-1}b]$$ for all $j\in\{1,\dots,r\}$ and $k\in\{0,1,2\}$.
Since $r\gg n$ it seems reasonable to assume the set $\{x^{(j)};1\leq j\leq r\}$ spans $\mathbb R^n$ and moreover that $x^{(1)}=\sum_{j=2}^r\lambda_jx^{(j)}$ for some coefficients $\lambda_j$ such that $\sum_{j=2}^r\lambda_j\neq1$. Now we know $$D^1_k-\sum_{j=2}^r\lambda_jD^j_k = \left(1-\sum_{j=2}^r\lambda_j\right)c^T(e^{t_kA}-I)A^{-1}b,$$ whence we know $c^T(e^{t_kA}-I)A^{-1}b$ for all $k$. In particular we know the numbers $$c^Te^{t_kA}x^{(j)}.$$ (In short, we can assume $b=0$ in figuring out $A$.)
Change basis so that $c=(1,0,\dots,0)$ and write $A_k=e^{t_kA}$. Recall that the vectors $x^{(j)}$ span $\mathbb R^n$. We thus know $c^TA_kx$ for all $x\in\mathbb R^n$. All we know about the matrix $A_k$ is its first row. Since there are $n^2$ entries in $A$ and we only get to know $3n$ numbers, it seems highly unlikely to be able to reconstruct $A$. Even if it can be reconstructed by some miracle, it is unlikely to be stable. If the number of measurement times is larger than $n$, then it might be possible. (But it seems to fail if $c$ is an eigenvector of $A$.)
Something similar happens for $b$. Suppose we have figured out what $A$ is and want to find $b$. All we know is $c^T(A_k-I)A^{-1}b$ for all $k$. We should have at least about $n$ equations to recover $b$, less than $n$ time measurements will not suffice.