## 3 Fuzzy Adaptive Formation Control Design
### ET Formation Controller Design  
The backstepping control design is a recursive method. For NMRs (1), it contains a two-step design procedure. In Step 1, we first select a Lyapunov function for each subsystem, and based on the Lyapunov function, we design the virtual controllers to stabilize each subsystem, respectively, and design the weight updating laws. In the same way, in Step 2, we select a Lyapunov function for the subsystem, and based on the Lyapunov function, we design the formation controller to stabilize the whole system and design the weight updating law. To achieve the formation control design, we define the angle and relative distance between \(i\)th and \(j\)th robot as  
\[d_{ij}(t)=\sqrt{\left(x_{i}-x_{j}\right)^{2}+\left(y_{i}-y_{j}\right)^{2}} \tag{4}\]  
\[\varphi_{ij}(t)=\text{atan2}(\tilde{y}_{i},\tilde{x}_{i}) \tag{5}\]  
\[ \begin{bmatrix}\tilde{x}_{i}\\ \tilde{y}_{i}\end{bmatrix} = \begin{bmatrix}\cos\psi_{i}&\sin\psi_{i}\\ -\sin\psi_{i}&\cos\psi_{i}\end{bmatrix}\begin{bmatrix}x_{j}-x_{i}\\ y_{j}-y_{j}\end{bmatrix}  \tag{6}\]  
where \(\text{atan2}(\tilde{y}_{i},\tilde{x}_{i})\in(-\pi,\pi]\) is the arctangent function of the two arguments \((x,y)\) and returns the appropriate quadrant of the angle of point \((x,y)\). In actual formation control, collision avoidance and field of view limitations among robots are crucial issues to consider. Therefore, to fulfill above range constraints, the constraints of distance and angle are described as  
\[0<d_{mi}<d_{ij}(t)<d_{Mi},\forall t\geq 0 \tag{7}\]  
\[-\frac{\pi}{2}<-\varphi_{Mi}<\varphi_{ij}(t)<\varphi_{Mi}<\frac{\pi}{2},\forall t\geq 0 \tag{8}\]  
where \(d_{Mi}\) and \(d_{mi}\) represent the maximum distance at which connectivity is maintained and the minimum distance at which a collision can be avoided, respectively. \(\varphi_{Mi}\) indicates the maximum angle that ensures continuous information transmission. Define the coordinate transformation as  
\[\left\{ \begin{array}{l}z_{id}=d_{ij}-d_{ij,d}\\ z_{ip}=\psi_{ij}-\psi_{ij,d}\\ z_{iv}=v_{i}-h_{i,1}\\ z_{i\omega}=\omega_{i}-\tilde{h}_{i,2}\\ \chi_{i,1}=h_{i,1}-\dot{\alpha}_{i,1}\\ \chi_{i,2}=h_{i,2}-\dot{\alpha}_{i,2}\end{array} \right. \tag{9}\]where \(d_{ij,d}\) is the desired distance, which is a constant. \(\psi_{ij,d}\) is the desired angle. \(\alpha_{i,s}\), \(\chi_{i,s}\) and \(h_{i,s}\), respectively, are virtual design control functions, first-order filter output errors, and variables (\(s=1,2\)). \(h_{i,s}\) are obtained through a first-order filter on intermediate virtual controls \(\alpha_{i,1}\) and \(\alpha_{i,2}\). We introduce the following first-order filter:  
\[\delta_{i,1}\hat{h}_{i,1}+\hat{h}_{i,1}=\alpha_{i,1},\ \hat{h}_{i,1}(0)=\alpha_{i,1} \tag{10}\]  
\[\delta_{i,2}\hat{h}_{i,2}+\hat{h}_{i,2}=\alpha_{i,2},\ \hat{h}_{i,2}(0)=\alpha_{i,2} \tag{11}\]  
where \(\delta_{i,1}>0\) and \(\delta_{i,2}>0\) are design parameters. **Step 1:** From (9), we have the following equations:  
\[\dot{z}_{id}=-v_{i}\cos\varphi_{i}+v_{i-1}\cos\gamma_{i} \tag{12}\]  
\[\dot{z}_{i\varphi}=-\omega_{i}+\frac{v_{i}}{d_{i}}\sin\varphi_{i}-\frac{v_{i -1}}{d_{i}}\sin\gamma_{i} \tag{13}\]  
where \(v_{i-1}\) and \(\psi_{i-1}\) are the linear velocity and orientation of robot \(R_{i-1}\), respectively. \(\gamma_{i}\ =\ \varphi_{i}+\psi_{i}-\psi_{i-1}\). We select log-type barrier Lyapunov functions:  
\[V_{11i}=\frac{1}{2}\log\frac{{k_{d1}}^{2}}{{k_{d1}}^{2}-{z_{i,d}}^{2}} \tag{14}\]  
\[V_{12i}=\frac{1}{2}\log\frac{{k_{p1}}^{2}}{{k_{p1}}^{2}-{z_{i\varphi}}^{2}} \tag{15}\]  
where \(k_{d1}\) and \(k_{p1}\) are design parameters. We construct the virtual control signals \(\alpha_{vi}\) and \(\alpha_{vi}\) as  
\[\alpha_{vi}=\frac{1}{\cos\varphi_{i}}(v_{i-1}\cos\gamma_{i}+k_{d1}z_{id}) \tag{16}\]  
\[\alpha_{vi}=\frac{v_{i}}{d_{i}}\sin\varphi_{i}-\frac{v_{i-1}}{d_{i}}\sin \gamma_{i}+k_{\varphi 1}z_{i\varphi} \tag{17}\]  
with \(k_{d1}>0\) and \(k_{\varphi 1}>0\) being design constants. (Equation (16) defines the virtual control signals designed to stabilize the formation tracking errors.