# Laplacian Controllability and Observability of Multi-Agent Systems: Recent Advances in Tree Graphs
## 2 Problem Setting and Preliminary Results

Table 2: Notation. between themselves and exchange their values (namely node \(i\) receives \(x_{j}(t)\) from node \(j\) and vice versa), and each node \(i\) sets its own input according to the agreed protocol:  
\[v_{i}(t)=\sum_{j\in N_{i}}(x_{j}(t)-x_{i}(t)). \tag{1}\]  
Under this protocol, the evolution of the overall dynamics can be effectively described through an overall vector \(\mathbf{x}\in\mathbb{R}^{\mathbf{N}}\) built as \((\mathbf{x})_{i}(t)=x_{i}(t)\) whose time update is compactly expressed by  
\[\dot{\mathbf{x}}(t)=-L_{\mathcal{G}}\mathbf{x}(t), \tag{2}\]  
\(\mathcal{G}\) denoting the topology of communication among agents. Assume now that a subset of nodes \(\mathcal{V}_{i}=\{i_{1},\ldots,i_{\ell}\}\), injecting an additional input \(u_{i}(t)\) to the agreed Protocol (1) with the intent of controlling the team evolution [12]. In this setting, the resulting system dynamics takes the following form:  
\[ \begin{array}{ll}\dot{\mathbf{x}}(t)&=-L_{\mathcal{G}}\mathbf{x}(t)+ \mathbf{e}_{i_{1}}u_{i_{1}}(t)+\mathbf{e}_{i_{2}}u_{i_{2}}(t)+\cdots+\mathbf{ e}_{i_{\ell}}u_{i_{\ell}}(t)=\\ &=-L_{\mathcal{G}}\mathbf{x}(t)+B\mathbf{u}(t),\end{array}  \tag{3}\]  
with \(\mathbf{u}(t)= \begin{bmatrix}u_{i_{1}}(t)&\ldots&u_{i_{\ell}}(t)\end{bmatrix} ^ {\top}\) and \(B= \begin{bmatrix}\mathbf{e}_{i_{1}}&\ldots&\mathbf{e}_{i_{\ell}}\end{bmatrix} \). In the following, we refer to \(i_{1},\ldots,i_{\ell}\) as the _control nodes_, or equivalently _leader nodes_. Analogously, consider the case when it is desired to monitor the system evolution of (2), and the value of a subset of nodes \(\mathcal{V}_{o}=\{i_{o_{1}},\ldots,i_{o_{\ell}}\}\) is collected with the goal of reconstructing the whole system evolution. In such scenario, nodes \(i_{o_{1}},\ldots,i_{o_{\ell}}\) are called _observation nodes_ or _measured nodes_, and their values \(y_{i}(t)=x_{i}(t)=\mathbf{e}_{i}^{\top}\mathbf{x}(t)\) are exploited for supervision and surveillance of the whole system. In this case, the overall system dynamics is expressed by  
\[\left\{ \begin{array}{ll}\dot{\mathbf{x}}(t)&=-L_{\mathcal{G}}\mathbf{x}(t) \\ \mathbf{y}(t)&=C\mathbf{x}(t)\end{array} \right., \tag{4}\]  
with \(C= \begin{bmatrix}\mathbf{e}_{o_{1}}&\ldots&\mathbf{e}_{o_{\ell}}\end{bmatrix} ^ {\top}\). The above framework is widely adopted in several modern engineering applications in the area of distributed control systems and robotic networks [31; 32; 33]. Considering the above Setting (3), one main analysis is focused on the states that can be achieved through a suitable choice of \(\mathbf{u}(t)\), which are called _controllable_ or _reachable states_ and they constitute a subspace of of the state space \(\mathbb{R}^{N}\) called _reachable subspace_, denoted by \(X_{R}\). The reachable subspace can be obtained computing the image of the _reachability matrix_:  
\[\mathcal{R}= \begin{bmatrix}B&L_{\mathcal{G}}B&\ldots&L_{\mathcal{G}}^{N-1}B \end{bmatrix} , \tag{5}\]  
and if \(\mathcal{R}\) has full rank, System (3) is called _completely controllable_. In regard to the state estimation framework based on the knowledge of some measured nodes described by Equation (4), the system-theoretic analysis based on the intial state values that produce an identically zero measured vector, which are called _unobservable states_. The set of unobservable states is a subspace of \(\mathbb{R}^{N}\) that can be computed as the kernel of the _observability matrix_:  
\[\mathcal{O}= \begin{bmatrix}C\\ CL_{\mathcal{G}}\\ \ldots\\ CL_{Q}^{N-1}\end{bmatrix} . \tag{6}\]  
**Remark 1**. : _Some multi-agent processes are better described by discrete updates of a local quantity, namely \(\mathbf{x}(t+1)=(I-\gamma L_{\mathcal{G}})\mathbf{x}(t)\), where \(\gamma\in\mathbb{R}_{+}\) is called coupling factor and it should be chosen sufficiently small to keep the system stable [33], and analogously, in this case, one obtains the following system evolution:_  
\[