1 Introduction

In the past decade, multi-agent systems have been attracted considerable attention; more results can be seen in [1,2,3,4] and references therein. With the increasing scale and complexity of multi-agent systems, the requirement for system reliability is becoming important and urgent. In practice, multi-agent systems are vulnerable to faults and attacks resulted from the network because of the distributed topology and the lack of centralized entity. The fault or the attack occurring on any agent might not only affect the agent itself but also jeopardize the entire system. Consequently, the subject of fault detection and isolation (FDI) of multi-agent systems is becoming a very important and promising area. The centralized solutions to tackle FDI problems cannot be directly used in multi-agent systems as the result of the lack of the centralized entity monitoring the overall system state. Therefore, distributed FDI strategies should be proposed to carry out the FDI for the multi-agent systems.

For the past few years, the topics on distributed FDI have been received great attention and obtained fruitful results [5,6,7,8,9,10,11,12,13]. Despite the urgent need of distributed FDI for multi-agent systems, there are few contributions in this field. In [14], using graph theory, Sundaram and Hadjicostis investigated the problem of distributed FDI for multi-agent systems. In [15], Pasqualetti et al. designed two different monitors to fulfill the FDI for cyber-physical systems. Using the technology of unknown input observer, Shames et al. proposed a novel distributed FDI scheme for interconnected systems [16]. These above results only considered the FDI for multi-agent systems with perfect communication. However, in real applications, the disturbances always exist in multi-agent systems and might influence the result of FDI.

In [17], Teixeira et al. researched the problem of FDI for multi-agent systems with uncertain system model. In [18], using the optimal robust observer approach, the distributed FDI was investigated for multi-agent systems with measurement noises. Using the technology of linear matrix inequality, distributed FDI schemes robust to disturbances were addressed in [19, 20]. These FDI schemes proposed in the above-recited works [17,18,19,20] can only carry out the FDI for single fault in multi-agent systems. However, the case that several faults simultaneously occur in the multi-agent systems is more practical and challenging. In [21, 22], a novel FDI strategy suitable for multiple faults was presented for a team of networks, which makes each robot of the team able to detect and isolate faults occurring on other robots, even if they are not direct neighbor.

Most of the aforementioned results mainly considered the FDI for multi-agent systems with leaderless. Recently, leader–follower multi-agent systems, which require all agents to simultaneously communicate with their neighbors and virtual leader agents, have been an active topic and achieved significant progresses; more results can be seen in [23,24,25,26,27,28,29,30]. However, there are few studies considering the FDI for leader–follower multi-agent systems. In [31], using linear matrix inequalities, a robust unknown input observer is proposed to fulfill fault estimation for leader–follower multi-agent systems.

On the basis of the above considerations, we consider the problem of distributed FDI for leader–follower multi-agent systems with disturbances. Firstly, an observer is proposed, which uses local information and suitable auxiliary information, to estimate the overall system state. There are two differences between the result of this paper and Refs. [21, 22]. One is that all the agents in this paper not only communicate with their neighbors but also receive information from the virtual leader agent. The other is that a sliding-mode observer is designed, which is effective to estimate the overall system state in the presence of uncertainties compared to the result of [21, 22]. Secondly, using the relative output estimations, a residual vector is developed to detect and isolate faults occurring on any follower agent of the leader–follower multi-agent systems. A threshold is derived to distinguish the difference between fault and disturbance. Comparing with some previous results, such as in Refs. [17,18,19,20], the merit of the distributed FDI strategy proposed in this paper is that it can achieve the FDI not only for single faulty agent but also for multiple faulty agents.

2 Problem statement

Consider a leader–follower multi-agent systems composed of \(n+1\) agents, one virtual leader agent labeled by 0 and n followers labeled by 1 to n. The interaction communication between n followers is represented by undirected graph \({\mathcal {G}} =({\mathcal {V}},{\mathcal {E}},{\mathcal {A}} )\), where \({\mathcal {V}} \) is a finite non-empty set of nodes, \({\mathcal {E}} ={\mathcal {V}} \times {\mathcal {V}} \) denotes the edge set of the graph, \({\mathcal {A}} =\left[ {\alpha _{ij} } \right] \) is the adjacency matrix, \(\alpha _{ii} =0\) and \(\alpha _{ij} =\alpha _{ji} >0\) if \(\varepsilon _{ij}=({\mathcal {V}}_i, {\mathcal {V}}_i) \in {\mathcal {E}}, i\ne j\in {\mathcal {V}} \). The degree of the node i is \(d_{i} =\sum \nolimits _{i\in N_{i} } {\alpha _{ij} } \), where \(N_{i} =\left\{ {j\in {\mathcal {V}} : \varepsilon _{ij} \in {\mathcal {E}} } \right\} \) is the neighborhood set of agent i. The degree matrix D is defined as \(D=\hbox {diag}\{d_{1} , d_{2} , \ldots , d_{n} \}\). The weighed Laplacian matrix of \({\mathcal {G}} \) is defined as \(L=D-{\mathcal {A}}\). The interaction between \({\mathcal {G}}\) and the virtual leader is denoted by \(\alpha _{i0} \), \(\alpha _{i0} >0\) if agent i is connected to the leader (otherwise, \(\alpha _{i0} =0)\).

Let us consider the first-order leader–follower multi-agent systems. Each agent is characterized by the following dynamic

$$\begin{aligned} \dot{{x}}_{i} (t)=u_{i} (t)+\phi _{i} (t)+\xi _{i} (t), \quad i \in {\mathcal {V}} \end{aligned}$$
(1)

where \(x_{i} (t)\in R\) represents the state of agent i, \(\phi _{i} (t)\in R\) is the addictive fault signal that is zero in healthy condition, \(u_{i} (t)\in R\) is the control input, and \(\xi _{i} (t)\in R\) is an uncertainty disturbance supposed to be bounded

$$\begin{aligned} \left\| {\xi _{i} (t)} \right\| \le \bar{{\xi }}\quad \forall i=1, 2, \ldots , n. \end{aligned}$$
(2)

The control input \(u_{i} (t)\) can be chosen as

$$\begin{aligned} u_{i}(t)=\beta \left[ {\sum \limits _{j\in N_{i} } {\alpha _{ij} (x_{j} (t)-x_{i} (t))+\alpha _{i0} (x_{0} (t)- x_{i} (t))} } \right] \end{aligned}$$
(3)

where \(x_{0} (t)\) is the state of the virtual leader and \(\beta >0\) is the control gain.

Let \(u(t)=\left[ {u_{1} (t), \ldots , u_{n} (t)} \right] ^\mathrm{T}\in R^{n}\) denote the collective input vector, and it can be got

$$\begin{aligned} u(t)=Ax(t)+Bx_{0} \end{aligned}$$
(4)

where \(A=\beta (-L-\varDelta )\), \(B=\beta \varDelta \), and \(\varDelta =\hbox {diag}\left\{ {\alpha _{10} , \ldots , \alpha _{n0} } \right\} \), \(x_{0} =1_{n} x_{0} (t)\) and \(1_{n} \) denotes a n-dimensional vector with all 1.

The collective dynamic of the first-order leader–follower multi-agent systems can be expressed as

$$\begin{aligned} \dot{{x}}(t)=u(t)+\phi (t)+\xi (t) \end{aligned}$$
(5)

where \(x(t)=[{x_{1}(t),\ldots , x_{n}(t)}]^\mathrm{T}\in R^{n}\), \(\phi (t)=\left[ {\phi _{1} (t), \ldots , \phi _{n} (t)} \right] ^\mathrm{T}\in R^{n}\), and \(\xi (t)=[ \xi _{1} (t), \ldots , \xi _{n} (t) ]^\mathrm{T}\in R^{n}\) represent the collective state vector, the collective fault vector, and the collective disturbance vector, respectively.

The following assumption and lemma will be used.

Assumption 1

The communication network topology \({\mathcal {G}}\) of multi-agent systems considered in this paper is fixed, undirected, and connected, and there is at least one agent connected to the virtual leader.

Lemma 1

[27] If assumption 1 holds, the matrix \(\varDelta +L\) is positive definite, where \(\varDelta =\mathrm{diag}\left\{ {\alpha _{10} , \ldots , \alpha _{n0} } \right\} \), and \(\alpha _{i0} (i\in {\mathcal {V}}) \) are defined as above.

3 Main results

3.1 State observer

In multi-agent systems, not all the states in x(t) are available to each agent due to the lack of both central unit and all-to-all communication. In this section, for FDI purposes, an observer will be designed at each agent, which uses local information received from neighbor agents, to estimate the overall system state x(t).

Let us first define an auxiliary output vector y(t) according to the following dynamics:

$$\begin{aligned} \dot{{y}}(t)=\dot{{x}}(t)-u(t). \end{aligned}$$
(6)

The estimations of the collective state x(t) and the auxiliary output vector y(t) can be computed by the agent i using the following observers:

$$\begin{aligned} {}^{i}\dot{{\hat{{x}}}}(t)= & {} k_{0}\left( \!{\sum \limits _{j\in N_{i}}{\alpha _{ij} (\hat{{y}}_{j} (t)-\hat{{y}}_{i} (t))+\varPi _{i} (y(t)-\hat{{y}}_{i} (t))} }\!\! \right) \!\nonumber \\&+\,\!{}^{i}\hat{{u}}(t,{ }^{i}\hat{{x}})-\nu _i(t) \end{aligned}$$
(7)
$$\begin{aligned} \dot{{\hat{{y}}}}_{i} (t)= & {} { }^{i}\dot{{\hat{{x}}}}(t)-{ }^{i}\hat{{u}}(t,{ }^{i}\hat{{x}}) \end{aligned}$$
(8)

where \(\varPi _{i} =\varGamma _{i}^{T} \varGamma _{i} \), \(\varGamma _{i} =[\underbrace{0, \ldots ,}_{i-1}1, 0, \ldots 0]\in R^{1\times n}\) is a selection matrix that extracts the components of the agent i from a collective vector, \({ }^{i}{\hat{{x}}}(t)\) and \({\hat{{y}}}_{i} (t)\) are the estimates of x(t) and y(t) computed by agent i, respectively, \(k_{0}>0\) is a scalar gain, the function \(\nu _i(t)\) is the nonlinear input of the observer to be determined, and \({ }^{i}\hat{{u}}(t,{ }^{i}\hat{{x}})\) is the estimation of the collective input. Together with (4), the estimation of the collective input can be rewritten as

$$\begin{aligned} { }^{i}\hat{{u}}(t,{ }^{i}\hat{{x}})=A({ }^{i}\hat{{x}}(t))+Bx_{0}. \end{aligned}$$
(9)

Let \({ }^{i}e_{y} (t)=y(t)-{ }^{i}\hat{{y}}(t)\) denote the estimation error of the auxiliary output vector. Then, \(\nu _i(t)\) can be designed as

$$\begin{aligned} {\nu _i}(t) = \left\{ {\begin{array}{ll} \frac{{{}^i{e_y}(t)}}{{\left\| {{}^i{e_y}(t)} \right\| }}&{}\quad {\mathrm{if }} \quad {}^i{e_y}(t) \ne 0\\ 0 &{}\quad {\mathrm{otherwise }}\\ \end{array}} \right. \end{aligned}$$
(10)

Let \(\hat{{x}}^{*}(t)=[{ }^{1}\hat{{x}}^{T}(t), { }^{2}\hat{{x}}^{T}(t), \ldots { }^{n}\hat{{x}}^{T}(t)]^\mathrm{T}\), and \(\hat{{y}}^{*}(t)=[\hat{{y}}_{1}^{T}(t), \hat{{y}}_{2}^{T} (t), \ldots , \hat{{y}}_{n}^{T}(t)]^\mathrm{T}\). The collective dynamic of the observer (7) is expressed as

$$\begin{aligned} {\dot{\hat{x}}^*}(t)= & {} {\hat{u}^*}(t) - {k_0}(L \otimes {I_n}){\hat{y}^*}(t)\nonumber \\&+\, {k_0}{\varPi ^*}({1_n} \otimes y(t) - {\hat{y}^*}(t)) -\nu (t) \end{aligned}$$
(11)

where \(\hat{{u}}^{*}(t)=[{ }^{1}\hat{{u}}^{T}(t,{ }^{1}\hat{{x}}(t)), \ldots , { }^{n}\hat{{u}}^{T}(t,{ }^{n}\hat{{x}}(t))]^\mathrm{T}\), \(\varPi ^{*}=\hbox {diag}\{\varPi _{1} , \ldots , \varPi _{n} \}\), and \(\nu (t)= \Big [ {\frac{{{}^1{e_y}^{T}(t)}}{{\left\| {{}^1{e_y}(t)} \right\| }}},\ldots ,{\frac{{{}^n{e_y}^{T}(t)}}{{\left\| {{}^n{e_y}(t)} \right\| }}} \Big ]^\mathrm{T} \).

The following estimation errors are defined as

$$\begin{aligned}&^{i}e_{x} (t)=x(t)-{ }^{i}\hat{{x}}(t) \end{aligned}$$
(12)
$$\begin{aligned}&e_{x}^{*}(t)=1_{n} \otimes x(t)-\hat{{x}}^{*}(t) \end{aligned}$$
(13)
$$\begin{aligned}&e_{y}^{*(t)}=1_{n} \otimes y(t)-\hat{{y}}^{*}(t) \end{aligned}$$
(14)

where \({ }^{i}e_{x} (t)\) denotes the estimation error of the overall system state computed by agent i, \(e_{x}^{*}(t)=[{ }^{1}e_{x} ^{T}(t), { }^{2}e_{x}^{T}(t), \ldots ,{ }^{n}e_{x} ^{T}(t)]^\mathrm{T}\) is the collective state estimation error, and \(e_{y}^{*}(t)=[{ }^{1}e_{y}^{T}(t), { }^{2}e_{y}^{T}(t), \ldots , { }^{n}e_{y}^{T}(t)]^\mathrm{T}\) is the collective auxiliary output estimation error.

Before giving the main result, the following lemma is needed.

Lemma 2

[32] If assumption 1 holds, the matrix \(L^{*}=L\otimes I_{n} \) is symmetric and positive semi-definite, where \(I_{n} \) denotes the n-dimensional identity matrix. Furthermore, the matrix \(-(L^{*}+\varPi ^{*})\) is Hurwitz and \(\varPi ^{*}\) is a diagonal matrix defined in (11).

Theorem 1

Under assumption 1, considering the leader–follower multi-agent systems (5) without any fault, the collective estimation errors described as (13) and (14) are asymptotically bounded if the following condition

$$\begin{aligned} \varTheta = \left[ {\begin{array}{cc} {I - 2{k_0}P(L \otimes {I_n} + {\varPi ^*}) + 2\eta P}&{}\quad P\\ P&{}\quad { - {\gamma ^2}I} \end{array}} \right] \end{aligned}$$
(15)

holds, where I is an identity matrix with appropriate dimension and \(P>0\) is a symmetric matrix, \(\gamma >0\) and \(\eta >0\).

Proof

\(\phi (t)=0\) if the faults are not considered in the leader–follower multi-agent systems (5). It is firstly proved that the collective auxiliary output estimation error (14) is bounded. From (8) and (11), it obtains

$$\begin{aligned} {\dot{\hat{y}}^*}(t)= & {} {\dot{\hat{x}}^*}(t) - {u^*}(t) = - {k_0}(L \otimes {I_n}){\hat{y}^*}(t)\nonumber \\&+\, {k_0}{\varPi ^*}e_y^*(t) - \nu (t) \end{aligned}$$
(16)

Considering (14)

$$\begin{aligned} (L\otimes I_{n} )\hat{{y}}^{*}(t)= & {} (L\otimes I_{n} )(1_{n} \otimes y(t)-e_{y}^{*} (t)) \nonumber \\= & {} (L\otimes I_{n} )(1_{n} \otimes y(t))-(L\otimes I_{n} )e_{y}^{*} (t) \nonumber \\= & {} (L1_{n} )\otimes (I_{n} y(t))-(L\otimes I_{n} )e_{y}^{*} (t).\nonumber \\ \end{aligned}$$
(17)

Notice that \(L1_{n} =0\); then, (17) can be rewritten as

$$\begin{aligned} (L\otimes I_{n} )\hat{{y}}^{*}(t)=-(L\otimes I_{n} )e_{y}^{*} (t). \end{aligned}$$
(18)

Substituting (18) into (16) results in

$$\begin{aligned} {\dot{\hat{y}}^*}(t) = {\dot{\hat{x}}^*}(t) - {u^*}(t) = {k_0}(L \otimes {I_n} + {\varPi ^*})e_y^*(t) -\nu (t) \end{aligned}$$
(19)

which together with (14) further yields that

$$\begin{aligned} \dot{e}_y^*(t)= & {} {1_n} \otimes \dot{y}(t) - {\dot{\hat{y}}^*}(t) = {1_n} \otimes \dot{y}(t)\nonumber \\&-\, {k_0}(L \otimes {I_n} + {\varPi ^*})e_y^*(t) + \nu (t) \end{aligned}$$
(20)

Combined (5) and (6) gives

$$\begin{aligned} \dot{y}(t)=\xi (t) \end{aligned}$$
(21)

Substituting (21) into (19) yields

$$\begin{aligned} \dot{e}_y^*(t)= & {} {1_n} \otimes \dot{y}(t) - {\dot{\hat{y}}^*}(t) = - {k_0}(L \otimes {I_n} + {\varPi ^*})e_y^*(t)\nonumber \\&+\, \nu (t)\mathrm{{ + }}{1_n} \otimes \xi (t). \end{aligned}$$
(22)

Choose a candidate Lyapunov function \(V(t) = {(e_y^*(t))^T}Pe_y^*(t)\). Then, the time derivative of V(t) can be calculated as

$$\begin{aligned} \dot{V}(t)= & {} 2{(e_y^*(t))^T}P\dot{e}_y^*(t) \nonumber \\\le & {} 2{(e_y^*(t))^T}P( - {k_0}(L \otimes {I_n} + {\varPi ^*})e_y^*(t)\nonumber \\&+\, 2\eta {(e_y^*(t))^T}P e_y^*(t) + 2{(e_y^*(t))^T}P \xi ^{*} (t)\nonumber \\ \end{aligned}$$
(23)

where \(\xi ^{*} (t)=1_n \otimes \xi (t)\) and \(\eta = \max \{ \hbox {1}/ {\left\| {^1{e_y}(t)} \right\| },\ldots , \hbox {1} / {{\left\| {^n{e_y}(t)} \right\| }} \} \).

For any \(T>0\), consider the following cost function

$$\begin{aligned} {J_T} = \int \limits _0^T \left[ {{\left( e_y^*(t)\right) }^T} e_y^*(t) - {\gamma ^2}{\left( {\xi ^*}(t)\right) ^T}{\xi ^{*}}(t)\right] \hbox {d}t. \end{aligned}$$
(24)

To analyze the performance of disturbances on system (22), it supposes that all initial states of the observer of (8) are equal to the initial states of auxiliary output vector defined in (6), that is \(e_y^*(0)=0\). Clearly, \(V(0)=0\). Then, it follows that

$$\begin{aligned} J_T= & {} \int \limits _0^T \left[ {\left( e_y^*(t)\right) }^T e_y^{*(t)} - {\gamma ^2}{\xi ^{*}(t))}^T {\xi ^{*}}(t)\right. \nonumber \\&+ \left. \dot{V}(t)\right] \hbox {d}t - V(t)\nonumber \\\le & {} \int \limits _0^T \left[ {\left( e_y^*(t)\right) }^T e_y^*(t) - {\gamma ^2}{\xi ^{*}(t)}^T \xi ^{*}(t)\right. \nonumber \\&+\,2{\left( e_y^*(t)\right) }^TP(- k_0(L \otimes {I_n} + {\varPi ^*})e_y^*(t)\nonumber \\&\left. +\, 2 {\left( e_y^*(t)\right) }^TPe_y^*(t) + 2{\left( e_y^*(t)\right) ^T}P{\xi ^{*}}(t)\right] \hbox {d}t - V(t)\nonumber \\= & {} {\left[ {\begin{array}{c} {e_y^*(t)}\\ {{\xi ^{*}}(t)} \end{array}} \right] ^\mathrm{T}}\varTheta \left[ {\begin{array}{c} {e_y^*(t)}\\ {{\xi ^\mathrm{{*}}}(t)} \end{array}} \right] - V(t) \end{aligned}$$
(25)

where \(\varTheta = \left[ {\begin{array}{cc} {I - 2{k_0}P(L \otimes {I_n} + {\varPi ^{*}}) + 2\eta P}&{}P\\ P&{}{ - {\gamma ^2}I} \end{array}} \right] \) and I is an identity matrix with appropriate dimension. Obviously, \(J_T<0\) if (15) holds. This means that the (14) is asymptotically bounded.

Next, it is proved that the collective state estimation error (13) is bounded. Combining (5), (13), and (22) results in

$$\begin{aligned} \dot{e}_x^*(t)= & {} {1_n} \otimes \dot{x}(t) - {{\dot{\hat{x}}}^*}(t)\nonumber \\= & {} {1_n} \otimes (Ax(t)) + {1_n} \otimes (B{x_0})\nonumber \\&-\, ({I_n} \otimes A){{\hat{x}}^*}(t) - ({I_n} \otimes B)({1_n} \otimes {x_0}) \nonumber \\&-\, {k_0}(L \otimes {I_n} + {\varPi ^*})e_y^*(t) + \nu (t) + {\xi ^\mathrm{{*}}}(t)\nonumber \\= & {} ({I_n} \otimes A)({1_n} \otimes x(t)) + ({I_n} \otimes B)({1_n} \otimes {x_0})\nonumber \\&-\, ({I_n} \otimes A){{\hat{x}}^*}(t) \nonumber \\&-\, ({I_n} \otimes B)({1_n} \otimes {x_0}) + \dot{e}_y^*(t)\nonumber \\= & {} ({I_n} \otimes A) e_x^*(t)\mathrm{{ + }}\dot{e}_y^*(t) \end{aligned}$$
(26)

From the above analysis, the term \(\dot{e}_y^*(t)\) is stable. Hence, it can be seen as a bounded disturbance in (26). With the aid of Lemma 1, it gets that all the eigenvalues of A are in the open left half plane, and hence, \(I_{n} \otimes A\) is a stable matrix. Consequently, \(e_{x}^{*} (t)\) is asymptotically bounded. This completes the proof. \(\square \)

3.2 Fault detection and isolation

For detecting faults occurring on the leader–follower multi-agent systems, a residual vector computed by agent i is chosen as:

$$\begin{aligned} { }^{i}\gamma (t)=\sum \limits _{j\in N_{i} } {\alpha _{ij} (\hat{{y}}_{j} (t)-\hat{{y}}_{i} (t))+\varPi _{i} (y(t)-\hat{{y}}_{i} (t)} ) \end{aligned}$$
(27)

where \({ }^{i}\gamma (t)=[{ }^{i}r_{1} (t),{ }^{i}r_{2} (t),\ldots ,{ }^{i}r_{n} (t)]^\mathrm{T} \in R^{n}\), and \({ }^{i}r_{j} (t)(j=1, 2, \ldots , n)\) represents the residual relative to agent j.

Theorem 2

The residual components \({ }^{i}r_{k} (t)\quad (k=1, 2, \ldots , n)\) in residual vector \({ }^{i}\gamma (t)\) computed by agent i can only be affected by the certain fault \(\phi _{k} (t)\) occurring on the agent k and not be affected by the other faults \(\phi _{l} (t)\quad (l=1, 2, \ldots , n\) and \(l\ne k)\).

Proof

Let \(\gamma _{k}(t)=[{ }^{1}r_{k}(t), { }^{2}r_{k} (t), \ldots , { }^{n}r_{k}(t)]^\mathrm{T}\in R^{n}\) denote the collective dynamic of residual relative to agent k. Combining with (27) results in

$$\begin{aligned} \gamma _{k} (t)=(L+\varPi _{k} )\tilde{{e}}_{y}^{k}(t) \end{aligned}$$
(28)

where \(\tilde{{e}}_{y}^{k}(t)=\hbox {diag}\{\varGamma _{k} ,\varGamma _{k} ,\ldots ,\varGamma _{k} \}e^{*}_{y} (t)=\varGamma _{k}^{*} e_{y}^{*}(t)\), and \(\varGamma _{k}\) is a selection matrix chosen as the same as Eq. (7).

From (22) and (28), we get

$$\begin{aligned} \dot{{\tilde{{e}}}}_{y}^{k}(t)= & {} \varGamma _{k}^{*}\dot{{e}}_{y} (t)= -k_{0}(L+\varPi _{k} )\tilde{{e}}_{y}^{k}(t)+1_{n} \otimes \phi _{k}(t)\nonumber \\&+\,1_{n}\otimes \xi _{k}(t)+\varGamma _{k}^{*}\nu (t). \end{aligned}$$
(29)

where \(\nu (t)= [\nu _1^T(t), \ldots , \nu _n^T(t)]^\mathrm{T}\). According to Lemma 2, \(-(L+\varPi _{k} )\) is a stable matrix. Hence, the solution of (29) can be written as

$$\begin{aligned} \tilde{{e}}_{y}^{k}(t)= & {} e^{-k_{0} (L+\varPi _{k} )t}\tilde{{e}}_{y} ^{k}(0)\nonumber \\&+\int \limits _0^t {e^{-k_{0} (L+\varPi _{k} )(t-\tau )}}(1_{n} \otimes \phi _{k}(\tau )\nonumber \\&+1_{n} \otimes \xi _{k}(\tau )+ \varGamma _{k}^{*}\nu (\tau ))\hbox {d}\tau . \end{aligned}$$
(30)

Consequently, the residual \({ }^{i}r_{k} (t)\) can be rewritten as

$$\begin{aligned} { }^{i}r_{k} (t)= & {} \varGamma _{i} (L+\varPi _{k} )(e^{-k_{0} (L+\varPi _{k} )t}\tilde{{e}}^{k}_{y} (0)\nonumber \\&+ \int \limits _0^t {e^{-k_{0} (L+\varPi _{k} )(t-\tau )}} (1_{n} \otimes \phi _{k}(\tau )\nonumber \\&+1_{n} \otimes \xi _k (\tau ) + \varGamma _{k}^{*}\nu (\tau ))\hbox {d}\tau ). \end{aligned}$$
(31)

Obviously, the results of \({ }^{i}r_{k} (t)\) only contain a single fault \(\phi _{k}(t)\). It means that \({ }^{i}r_{k} (t)\) is only affected by the fault \(\phi _{k}(t)\) occurring on agent k and not affected by fault \(\phi _{l}(t) \) occurring on agent l (\(l\in {\mathcal {V}}\) and \(l\ne k\)). This completes the proof. \(\square \)

When there is not any fault in the multi-agent systems, the following equation can be derived from equation (31):

$$\begin{aligned} \Vert { }^{i}r_{k} (t)\Vert= & {} \Vert \varGamma _i(L+\varPi _k)(e^{k_0(L+\varPi _k)t})\tilde{e}^k(0)\nonumber \\&+\,\int _0^t e^{-k_0(L+\varPi _k)(t-\tau )}(1_n\otimes \xi _k(\tau )\nonumber \\&+\,\varGamma _k^{*}\nu (t))\hbox {d}\tau \Vert \nonumber \\\le & {} \Vert \varGamma _i(L+\varPi _k)(e^{k_0(L+\varPi _k)t})\tilde{e}^k(0)\Vert \nonumber \\&+\, \Vert \varGamma _i(L+\varPi _k)\int _0^t e^{-k_0(L+\varPi _k)(t-\tau )}\nonumber \\&(1_n\otimes \xi _k(\tau )+\varGamma _k^{*}\nu (t))\hbox {d}\tau \Vert \nonumber \\\le & {} \Vert \varGamma _i(L+\varPi _k)\Vert \Vert (e^{k_0(L+\varPi _k)t})\tilde{e}^k(0)\Vert \nonumber \\&+ \, \Vert \varGamma _i(L+\varPi _k)\Vert \int _0^t \Vert e^{k_0(L+\varPi _k)t})\tilde{e}^k(0)\Vert \nonumber \\&(\sqrt{n}(1+\bar{\xi }))\hbox {d}\tau \end{aligned}$$
(32)

According to the result of Ref. [33], we can get that

$$\begin{aligned} \left\| \left( e^{k_0(L+\varPi _k)t}\right) \right\| \le \beta e^{-\lambda t} \end{aligned}$$
(33)

where \(\beta =\sqrt{\dfrac{\lambda _\mathrm{min}(H)}{\lambda _\mathrm{max}(H)}}\), \(\lambda _\mathrm{max}(H)\) and \(\lambda _\mathrm{max}(H)\) are the minimum eigenvalue and the maximum eigenvalue of the symmetric positive definite matrix H, which is a solution of Eq. (34), respectively.

$$\begin{aligned} k_0H(L+\varPi _k)^T+k_0(L+\varPi _k)H = 2I \end{aligned}$$
(34)

where I is an identify matrix with appropriate dimension.

According to the result of Ref. [21], we can get that

$$\begin{aligned} \Vert \varGamma _i(L+\varPi _k)\Vert \le \Vert \varGamma _i L\Vert + \Vert \varGamma _i \varPi _k\Vert = d_i+{}^i\sigma _k \end{aligned}$$
(35)

where \({}^i\sigma _k=1\) if \(i=k\), otherwise \({}^i\sigma _k=0\)

Combining (32), (33), and (35) yields

$$\begin{aligned} \Vert { }^{i}r_{k} (t)\Vert\le & {} (d_i+{}^i\sigma _j )(\Vert \tilde{e}_y^j(0))\Vert \beta e^{-\lambda (t)}\nonumber \\&+\,\beta \sqrt{n}(1+\bar{\xi })(1-e^{-\lambda (t)})) \end{aligned}$$
(36)

Based on the above results, the fault occurring on agent j can be detected and isolated by agent i as follows:

$$\begin{aligned} \begin{array}{ll} \left\| {{ }^{i}r_{j} (t)} \right\|>\theta _j &{}\quad t>t_{f} \\ \left\| {{ }^{i}r_{l} (t)} \right\| \le \theta _l &{}\quad l\ne j\in {\mathcal {V}}, t>0 \\ \end{array} \end{aligned}$$
(37)

where \(t_{f}\) is the instant at which the fault starts and \(\theta _k = (d_i+{}^i\sigma _k )(\beta \Vert \tilde{e}_y^k(0))\Vert +\beta \sqrt{n}(1+\bar{\xi })),(k=j, l)\) is the FDI threshold.

Remark 1

From (31), we can get that the fault \(\phi _{k}\) only affects the residual \({ }^{i}r_{k} (t)\) and it can not influence the other residual \({ }^{i}r_{l} (t)\) computed by agent i. It means that the residual components in the residual vector computed by agent i are not influenced by each other. This implies that the FDI scheme in (37) can fulfill the FDI for multiple faulty agents.

Remark 2

Comparing with our early work [20], the advantage of the FDI scheme proposed in this paper is that agent i can monitor the overall system state even if they do not directly connected. It means that we can carry out the FDI for the whole system through any agent i.

4 Simulation

In this section, an undirected multi-agent system shown in Fig. 1 is considered, where the agent 0 represents the virtual leader, which is only connected with the follower agent 1, and the arrow symbol between agent 1 and agent 0 represents the communication between them is unidirectional. Without loss of generality, all weights of edges are assumed to be 1, the initial states of four agents are randomly chosen, the state of the virtual leader is fixed to \(x_{0}(t) =2\), and the distributed disturbance bound in (2) is set to \(\bar{{\xi }}=0.05\). Observer and control gain are set to \(k_{0} =1.3\) and \(\beta =2\). Next, three examples are given to illustrate the validity of the distributed FDI scheme.

Fig. 1
figure 1

The network topology of leader–follower multi-agent systems

Case 1: FDI for multi-agent systems without faulty agent. Figure 2 is the state output of the leader–follower multi-agent systems. It shows that all the follower agents can track the leader agent in the presence of disturbance if there is not any fault in the multi-agent systems. For the purpose of FDI, we construct observer and residual in the multi-agent systems. Figure 3 shows the residual output, where \(\left\| {{ }^{1}r_{i}(t) } \right\| (i=1, 2, 3, 4) \) represents the residual computed by agent 1, which is concerned with agent j. The residual threshold is chosen as \(\theta =0.08\). It shows that \(\left\| {{ }^{1}r_{i}(t) } \right\| <\theta \). According to the FDI criterion described in (37), we can get that there is not any faulty agent. This means that the FDI scheme proposed in this paper is valid for multi-agent systems with disturbance and without faulty agent.

Fig. 2
figure 2

States of the leader–follower multi-agent systems without fault

Fig. 3
figure 3

Residuals computed by agent 1 for the leader–follower multi-agent systems without fault

Case 2: FDI for single faulty agent. It is assumed that there is only one fault described as \(\phi _{2} (t)=\left\{ {{\begin{array}{c} {0,{t}<2} \\ {1,{t}\ge 2} \\ \end{array} }} \right. \) in the multi-agent systems. Figure 4 is the state output of the leader–follower multi-agent systems with a faulty agent. Although the states of the multi-agent systems can achieve consensus, they failed in tracking with the leader in the presence of the faulty agent. Hence, it shows that the leader–follower multi-agent systems do not achieve leader–follower with a faulty agent. We construct observer and residual in the multi-agent systems for FDI. The result of residual is presented in Fig. 5, where \(\left\| {{ }^{1}r_{i}(t) } \right\| (i=1, 2,\mathrm{}3, 4)\) denotes the residual computed by the agent 1, which is relative to agent i. If we choose threshold \(\theta =0.08\), we can get that \(\left\| {{ }^{1}r_{2}(t) } \right\| >\theta \) when \(t>2s\), and \(\left\| {{ }^{1}r_{j}(t) } \right\| <\theta \) (\(j=1, 3, 4)\) for all \(t>0\). According to the FDI criterion described in (37), it means that agent 2 is faulty when \(t>2s\) .

Fig. 4
figure 4

States of the leader–follower multi-agent systems with a fault

Fig. 5
figure 5

Residuals computed by agent 1 for the leader–follower multi-agent systems with a fault

Case 3: FDI for multiple faulty agents. It is assumed that there are two faults in the multi-agent systems, which are described as \(\phi _{2} (t)=\left\{ {{\begin{array}{c} {0,\mathrm{t}<2} \\ {2,\mathrm{t}\ge 2} \\ \end{array} }} \right. \) and \(\phi _{3} (t)=\left\{ {{\begin{array}{c} {0,t<3} \\ {1,t\ge 3} \\ \end{array} }} \right. \). The result of FDI is presented in Fig. 6. If we choose threshold \(\theta =0.08\), we can get that \(\left\| {{ }^{1}r_{2}(t) } \right\| >\theta \) when \(t\ge 2s\), \(\left\| {{ }^{1}r_{3}(t) } \right\| >\theta \) when \(t\ge 3s\) and \(\left\| {{ }^{1}r_{i}(t) } \right\| <\theta \) (\(i=1,\mathrm{}4)\) for all \(t>0\). According to the FDI criterion described in (37), we can get that the agent 2 is faulty when \(t>2s\) and the agent 3 is faulty when \(t>3s\). It means that the FDI scheme proposed in this paper can carry out the FDI for multiple faults.

Fig. 6
figure 6

Residuals computed by agent 1 for the leader–follower multi-agent systems with two faults

5 Conclusion

In this paper, the problems of distributed FDI for leader–follower multi-agent systems with disturbances have been considered. For FDI purpose, an observer is designed which can estimate the overall follower’s state of the leader–follower multi-agent systems. Based on the designed observer, a residual vector is introduced and a distributed FDI scheme is proposed. Different from previous works cited in this paper, using the distributed FDI scheme, each agent can fulfill the FDI for multiple faulty agents even if they are not directly connected. However, in this paper, we only considered the FDI for first-order leader–follower multi-agent systems with fixed topology and delay less. In our future work, FDI for high-order leader–follower multi-agent systems with switched topology and communication delay will be investigated.