Robotics have proven over the last decades to have positive impact across many domains, medical, logistics, surveying, search and rescue, agriculture, to name a few.. There are more prospect applications for robotics when the system has multiple of them functioning in a group, which is formally known as Multi-Robot System (MRS).

Within such frontiers of deploying MRS come challenges that are not yet resolved till our current days. One of the most important issues is to manage the fleet of robots in a coordinated motion robustly. Any MRS should be developed with algorithms that can guarantee naturally within the group of robots, an obstacle avoidance module. Usually for such coordinated motion to be planned, the data from the different robots within the fleet should be transmitted to a central processing unit, then planning algorithms are calculated and transmit back actuation commands to be executed by each individual robot. Such systems are prone to failure and perturbations. Indeed, if a problem occurs on the central processing unit or if the quality of communications degrades, the system as a whole might become uncontrollable as it happened recently in China during a show using a swarm based on a centralized coordination system. 2 Moreover, in most cases, centralization obstructs system scalability. Indeed, scalability means that at any moment, some robots can join or leave the group, a possibility difficult to consider when all information have to go through one central processing unit.

MRS literature have many propositions on how to address the coordination challenge. Among the most cited approaches we can distinguish, Leader-Followers (LF) schemes, distributed algorithms and swarming techniques. A second issue, linked to the first one, is often considered: the way information are transmitted between the robots, with concerns related to the quantity and type of data that should be exchanged within the group, but also related to the quality of the communications, latency and delay, and perturbations that might occur potentially leading to temporary loss of connection.

In this thesis, solutions are proposed within a distributed decentralized frameworks. Algorithms developed are taking into consideration realistic conditions regarding communications, coordinate frames, and global localization. A first contribution consist of designing a high level decentralized formation controller for MRS in a LF framework. This controller has some key features that can be summed up in being easy to tune, can handle intermittent communications by compensating the missing information utilizing 2 https://youtu.be/gohD23-0UBw last visit Oct. 30 2021 v robot's onboard sensors, significantly the visual feedback. Then a second proposition is concerned with forming LF MRS without inter-robots communications. In this proposition a predictive component is introduced within a classical Extended Kalman Filter (EKF). Another key feature of such system is the exclusion of direct distance measurement, utilizing the image moments Image Based Visual Servoing (IBVS). IBVS has not been widely explored in literature on underactuated systems such as a classical aerial multirotor (quad, hexa). Moreover such technique was not investigated before in MRS society in the same way of image moments. It showed good results in simulation and real experiments.

Finally, for the last contribution, we investigate the problem of the alignment of three robots without any communication between them and without any measure of distance, always in the context of a decentralized approach. Relying only on bearing measurements between robots, we show that the theoretical probability of success is 1, but decreases when a non-zero security distance between drones is defined.

Résumé

Au cours des dernières décennies, de multiples travaux ont montré que l'apport des robots pouvait être significatif pour des domaines très variés, tels que la logistique, la surveillance, les opérations de secours, l'agriculture de précision ou la médecine pour n'en citer que quelques uns. L'éventail des applications potentielles s'élargit encore lorsque le système est composé de plusieurs robots fonctionnant en groupe, un système communément appelé Multi-Robot System (MRS).

Dans le cadre du déploiement d'un MRS de nombreux défis restent, encore aujourd'hui, à relever.

Parmi les principaux problèmes, le déplacement coordonné du groupe, avec la prise en compte de contraintes de robustesse est central. Très souvent, la gestion de la coordination entre les robots d'un groupe est déléguée à un ordinateur central qui, sur la base des deonnées transmises par les robots, détermine une planification du déplacement puis transmet à tous les robots du groupe un ensemble de commandes que ceux-ci doivent exécuter. Une telle approche est sensible aux perturbations et aux pannes. En effet, si un problème survient sur l'ordinateur central ou si la qualité des communications se dégrade, le système dans son ensemble devient inopérant comme la montré récemment un vol coordonné de manière centralisé en Chine qui a finalement abouti à la chute des machines au milieu du public 1 . De plus, dans la majorité des cas, la centralisation, du fait de la nécessité de connaître à chaque instant le nombre de machines en cours d'utilisation, rend plus difficile l'extensibilité du système par l'ajout ou le retrait de robots.

La littérature dans le domaine des MRS, riche de travaux s'intéressant aux problèmes de coordination dans les systèmes décentralisés et distribués, fait apparaître plusieurs types d'approches, depuis les schémas Leader-Followers (LF) jusqu'aux techniques de vol en essaim en passant par l'algorithmique distribuée. Un second problème, lié au premier, est souvent abordé, il s'agit de la manière dont les informations transitent entre les machines, avec des questions relatives à la quantité et au type de données qui doivent être échangés au sein du groupe, mais également relatives à la qualité des communications et des perturbations pouvant les affecter, comme la latence, la perte temporaire de connexion et les délais de transmission.

Ce travail de thèse a pour objectif d'apporter des solutions pour le vol en groupe dans le cadre d'approches décentralisées et distribuées. Les algorithmes présentés dans ce 1 https://youtu.be/gohD23-0UBw vidéo consultée le 30 octobre 2021 iii manuscrit prennent en considération des conditions réalistes pour les communications, pour les référentiels considérés ainsi que pour la localisation des machines.

La première contribution présentée est un contrôleur de haut niveau pour le vol en formation dans un schéma de type Leader-Followers (LF). Le contrôleur présente quelques caractéristiques clefs qui peuvent être résumées par sa facilité de réglage et sa capacité à s'adapter à des communications intermittentes, en compensant les informations perdues par des données des capteurs embarqués, en provenance principalement de capteurs de vision.

La seconde contribution de ce travail concerne toujours le vol en formation selon un schéma LF mais en l'absence de communications entre les robots. Dans ce contexte, un composant prédictif est ajouté à un filtre de Kalman étendu (EKF). Une autre caractéristique de la méthode mise au point est l'absence de mesure directe de la distance, en lui substituant les fonctionnalités des moments d'images pour l'asservissement visuel, une technique connue sous le nom de IBVS (Image Based Visual Servoing). Cette méthode n'a pas fait l'objet de nombreux travaux pour les systèmes sosu-actionnés, tels que les drones multirotors (quadri, hexa, etc.). De plus cette technique n'a pas été étudiée dans le domaine MRS de la même manière que nous le proposons dans ce travail, par l'utilisation des moments des images. De bons résultats ont été obtenus à la fois en simulation et lors d'expériences réelles.

Enfin, pour la dernière contribution, nous nous intéressons au problème de l'alignement de trois machines sans communication entre elles et sans aucune mesure de distance, toujours dans un contexte décentralisé. A l'aide d'un algorithme utilisant seulement les angles entre les robots, nous montrons que la probabilité théorique de parvenir à l'alignement est de 1, mais diminue lorsqu'une distance de sécurité non nulle entre les robots est définie.

List of Figures

Generalities

Robotics studies are attaining more importance due to the need of augmenting humans in order to solve many challenges, be more efficient, environment friendly and achieve tasks more safely. Robots have a long history in industry and their origin can be dated from the early 1960s (Unimate robot). They are mainly used for the so-called DDDD tasks standing for Dull, Dirty, Dangerous And Dear tasks. Since that time robots have spread in a large number of domains and sectors. In industry they are used for welding, painting, clamping, while in mining sector, robots help for mapping sites, inspecting mines without exposing humans to danger, or evaluating some volumes of minerals. In agriculture, using specific sensors (i.e: NDVI), robots are able to detect drought stress in some parts of the inspected fields or to measure health of crops. In construction sector, which is physically demanding, they are mainly used for maintenance and inspection tasks, especially when dangerous (large height or hazardous environment). In transport and logistics, at the extremities of the supply chain, big companies have great hope about autonomous container ships, and there are intense discussions about last mile delivery possibilities offered by drones in urban environments. But robots are also very present nowadays in areas where they were, a priori, less expected such as leisure (show, races), ecology (endangered species tracking and monitoring), environmental monitoring, human health (medical cargo (organs, medics, testing kits) transportation, surgical) or everyday life (vacuum cleaner, lawn mower for instance).

Quantities of factors have contributed to this diffusion. They are to be found in the economy (lower price, birth of new manufacturers), technological improvements (better on-board computing, computing power increased tenfold, software frameworks availability). Also there are scientific advances which have solved many problems and which have made it possible to provide robots with better mobility and relatively higher autonomy. Finally another factor has played an important role in the diffusion of robots in recent years, is the ubiquitous use of drones.

Motivation

While many robots are deployed in the time when this study takes place, there are many more tasks that could be automated or delegated from humans to machines, specially in the context of multi robot systems. That draws the need to do more rigorous research in both fundamental and field robotics aspects on both the hardware and software.

Additionally to such aforementioned applications there are numerous advantages of using multiple robots in missions. For instance the use of Multi Robot Systems (MRS) bring flexibility, robustness, efficiency and redundancy, fault tolerance and scalability to the systems used in missions. Also capabilities that can never be met with only one robot as heterogeneous sensing, time reduction required for many tasks like search and rescue, inspections, surveillance, emergency delivery. Particularly research on multi aerial robots (drones) to collectively execute these tasks are gaining traction in academic literature.

In the domain of civil security for instance, when telecommunication networks fall down after a natural disaster (hurricanes, floods) and when repairing operations are not possible during hours or days because the area is not reachable by terrestrial vehicles, UAV swarms can, temporarily bring a solution for keeping the contact with concerned people.

In the domain of industry and more specifically for hazardous industrial sites, there is a crucial need of detect any abnormal situation or intrusion of non authorized people in a given zone. For large areas the deployment of many UAVs guarantees a short delay between the occurrence of any targeted event and the alert, improving the security of the site.

The MRS great capabilities, brought the motivation to solve the scientific and technical challenges to overcome the feasibility limitations for deploying such robotic systems. Challenges of paramount importance are coordination and communication issues.

In current scientific literature, coordination might be centralized or decentralized. In this thesis the focus will be toward aerial and ground mobile robots functioning in groups. The algorithms in literature could be categorized as centralized and distributed or decentralized. This thesis focuses on distributed/decentralized algorithms.

Distributed/Decentralized Systems

Distributed and decentralization of information flow among the group of robots grows attention day by day due to their great advantages over the centralized approaches. Some of the important distributed formation control properties are as follows:

• Scalability: The resources needed by a single autonomous agent do not grow with the increase of the total number of agents in the system. • Fault tolerance: The system entities are resilient as there is not a single/central unit of control/failure. • Concurrency: The process of (local) information is performed in a parallel and independent fashion in order to achieve a global goal.

Communication Issues

In literature as well most of the algorithms consider perfect communication between the robots within the group. For systems operating in large size areas, with sometimes harsh and changing environmental conditions, reliability of communications cannot always be guaranteed. Usually the full robot states are shared in between them, the task is shared as well. These information can be passed either in to a central point or as mentioned above in between the robots in a distributed/decentralized fashion. Some research study the issue of reducing the data being shared within the robots in the group.

The assumption of the presence of perfect communication is unrealistic. It is an issue that motivated this current study, leading to the development and test of algorithms that can be in charge of constructing robot formation, and navigating such formation in presence of such communication imperfections or even without communication utilizing the information that can be perceived solely by onboard sensors of the robots within the group.

When deploying MRS, the untackled question even in the recent literature, is the consequences of the group of robots losing their communications. This thesis proposes a line of research on acting as a recovery mode to retain formation shape using visual feedback inspired from how birds flock, form and reform their group with focus on possible solutions for coping with all these issues.

Thesis Contribution

The main focus in this thesis is toward the challenges that occur in coordinating the MRS in the presence of intermittent communication, or at the time of the complete communications dropout. While there are some studies in literature that rely on vision and other sensing modalities, they are not widely available and still quite challenging to execute. That was one of the motivations developed in this thesis, to tackle such challenges and propose solutions that can lead to multi robots navigate as intended. Also an important point was regarding absolute positioning challenge in MRS. Usual solutions rely on global positioning systems either indoor such as widely used motion tracking systems, or outdoor such as Global Navigation Satellite System (GNSS) i.e: GPS, GLONASS, Galileo, Beidou. That leads to most of the solutions being tested in constrained unrealistic environmental setup. Other scenarios where the GNSS availability is of concern like forests, signal jammed arena, etc, are also considered by this work.

In this thesis some solutions are proposed that can handle the MRS coordination relying on onboard sensing. That adds resilience to the system in unstructured situations when communications and absolute positioning are disturbed or unreliable.

Within that context, the main focus was a proposition of a control law for the a group of UAVs in order to make them flying in a coordinated manner. The first contribution is a high level controller for formation flight in the context of a leader-follower (LF) scheme. The presented controller presents some key features as its capability to self-adapt to intermittent communications between the robots of the group. This self-adaptation is obtained by compensating lost information by data stemmed from on-board sensors and mainly from visual feedback. With respect to existing literature, studies that were trying to solve this type of challenge with similar approaches, that first contribution was focusing on solving the problem with high level controller that can be tuned much more easier than the available algorithms.

The second contribution of this thesis is still concerned by formation flight following a LF scheme. But, the presented method works with neither communication between the robots, nor direct distance measurement. In such study the use of a well known visual control feedback framework was utilized. The exclusion of direct distance measurement, utilizing the image moments features for Image Based Visual Servoing (IBVS). It adapted for the need of the particular kinematics of the robots. A classical extended Kalman filter (EKF) is used in that context, particularly for its predictive component to compensate for the non communicated information about the leader robot.

For the last contribution, we were interested in the problem of the alignment of only three machines. There were two main constraints: the machines were unable to communicate with each-other and they were unable to measure distance between them, directly or even indirectly. For solving the problem, we designed a decentralized algorithm using only bearing angles between robots. We show, by a theoretical proof, that the probability to reach the alignment is close to 1, but decreases when a non zero security distance between the robots is imposed.

Structure

This thesis is distributed as follows, chapter 2 is discussing the State Of The Art (SOTA) in the MRS and swarm robotics with focus on decentralized methods. Each particular method of the thesis are having their own particular SOTA.

Chapter 3 represents the first contributed approach toward the decentralized algorithm proposed to control a formation of multi aerial robots. Chapter 4 is proposing the second approach where, the visual feedback is formulated in a different way allowing the formation to not rely on distance or displacement measurements. While chapter 5 is showing a higher level approach where there is no leader in the MRS, and only bearing measurement is used to form a line out of three robots. All the methods available in chapter 3, 4, and 5 have the theoretical formulation and simulation results. Chapters 4, 5 are corroborated with practical experimental results.

Chapter 6 is providing a general conclusion and perspectives of this thesis.

CHAPTER 2

State of the art

Introduction

Multi-Robot Systems (MRS) have been widely studied since the 90s [START_REF] Arai | Editorial: Advances in multi-robot systems[END_REF], [START_REF] Cao | Cooperative mobile robotics: Antecedents and directions[END_REF]. Many advantages can be expected from using a group of robots: increase and share of the payload [4], reduction of the time needed for the achievement of a task [5], fault tolerance and resilience of the system [START_REF] Zeng | Wireless communications with unmanned aerial vehicles: opportunities and challenges[END_REF], [START_REF] Tuna | Unmanned aerial vehicle-aided communications system for disaster recovery[END_REF], or use of simpler and cheaper robots for adaptability to the environment [START_REF] Tosun | Perception-informed autonomous environment augmentation with modular robots[END_REF]. However, making a group of robots evolving together in the same environment entails the resolution of some problems. Coordination is one of the most critical ones, especially considering decentralized settings. Coordination between the members of the group can be achieved through various ways, behavior or force-based methods, Virtual Rigid Body (VRB) structure building, or Leader-Follower (LF) schemes.

According to the classification of [START_REF] Parker | Multiple Mobile Robot Systems[END_REF], the interactions of a group of entities can be of several types: collective actions, collaboration, cooperation or coordination. Additionally another type of interaction can be competition within .

According to that classification, the main interest of this thesis is the coordination type, when robots attempt to form a given pattern or attempt to fly according to a given formation.

There are several perspectives for addressing the coordination problem. One of which is the control engineering perspective, where formation control is taking charge of such systems. Another perspective is the algorithmic, where swarm engineering is investigated. There are approaches such as flocking and others that is addressing such problem.

As mentioned in the introductory chapter, research on multi-agent systems, and in particular multirobot systems (e.g., ground and aerial mobile robots), has achieved many advances over the last decades with a number of theoretical and experimental accomplishments. In other terms multiple vehicles, including unmanned aerial vehicles, unmanned ground vehicles and unmanned underwater vehicles have been studied by many communities, through different perspectives. Many challenges were overcame and much more were introduced in their place. Both technological advances and fundamental theoretical maturity in multiple disciplines of science, have contributed for such achievements.

Among many topics that were discussed in the literature, consensus, formation control, optimization, task assignment, and estimation; are of great importance and interest.

From technological side, onboard sensing, communication and computing capabilities, have opened new frontiers for scientific methods to be validated and tested [START_REF] Schiano | A rigiditybased decentralized bearing formation controller for groups of quadrotor uavs[END_REF][START_REF] Spica | Active decentralized scale estimation for bearingbased localization[END_REF][START_REF] Stump | Connectivity management in mobile robot teams[END_REF][START_REF] Cornejo | Scale-free coordinates for multi-robot systems with bearing-only sensors[END_REF][START_REF] Eren | Sensor and network topologies of formations with direction, bearing, and angle information between agents[END_REF]. For guaranteeing real missions success, the team of robots should preserve specifications and abilities, either similar or different from one robot to another. This can be sensing or actuating capabilities. Communication property in between the robots is of great importance to share information, sensing values, robot states, and commanded control values. The communication can be centralized or decentralized considered as one or multi hop. Some other algorithms rely only on the sensing network in between the robots. The later algorithms are harder to be achieved. Other algorithms are taking into consideration all the realistic aspects of communication range, sensing range, uncertainty encountered in these processes, as well as delay in computation and processing. In the survey [START_REF] Doriya | A brief survey and analysis of multi-robot communication and coordination[END_REF], a list of communication approaches were discussed. Notably the survey showed in the context of MRS, different routing algorithms, and protocols. As well as the extension between the classical communication approaches and cloud servers. Either in communication or sensing network, connectivity in between mobile robot group is considered vital for mission success and control convergence. The problem of maintaining this connectivity is of great importance as well, and it carry good added value in the recent literature.

Another category of common questions are addressed lately, like having a global frame of reference or common frame of reference or not at all. Consensus over controllable properties of the robots in the fleet like synchronizing velocities, which is commonly known as velocity alignment or consensus. Another question is addressing a rendezvous problem with objective to let the robots in the formation meet in a point, go in a certain direction toward a goal or having a reference trajectory. Another definition could be the formation cohesion, where each agent tries to stay as close as possible to the nearby robots. This can be achieved by a controller that generates an attraction force toward the neighboring robots. There are methods that are also popular in literature known as flocking algorithms. An exhaustive review can be found in [START_REF] Olfati-Saber | Flocking for multi-agent dynamic systems: Algorithms and theory[END_REF].

Solutions proposed for the formation control can be categorized as centralized, decentralized, distributed from the perspective of computational decision making. Sometimes in the literature distributed and decentralized are interchangeably used. This arises due to the fact of the multi-disciplinary research fields, that the researchers are coming from. The problems are studied by pure computer science, control, information theoretic and robotics communities of researchers. Solutions are offered taking into consideration full dynamics robots with tight methods working on specific platforms, others are offered based on the kinematics of the robots or the most simplified robotics model of double integrator systems dealing with the robot as a point in the space.

In many tasks preserving a geometrical shape or properties like keeping a distance and angle in between the robots while navigating the environment is of great importance. This can act as naturally inter-robot collision avoidance and can give access to a lot of control convergence tools to ensure mission accomplishment. This emphasises the importance of the formation control problem which will be elaborated more in the next section.

Formation Control

Formation Control for teams of multiple mobile robots is a well discussed problem in literature. The controllers are trying to keep a desired relative positions and/or angles between robots in the group. Achieving the formation requires the solution of two problems: sensing of the relative pose and regulation of the relative pose to desired values. Also commonly known as formation realisation and formation maintenance.

Formation control can have different implementation through different architectures contingent upon scenario conditions. There will be a balance between requirements and limitations. Depending on the sensing and actuating capabilities, and the interaction topology of robots in the group, a variety of challenges have been studied in the literature which will be discussed in this chapter. Some renowned implementations of formation control are the leader-follower and flocking paradigms.

The system can be defined by prescribing a desired geometric shape or pattern with distance and bearing angle values. Then the controller will have one of two main tasks, either formation creation from arbitrary placed robots in an arena, or keep a rigid formation while navigating the body in cohesive form.

The paper [START_REF] Daniel P Scharf | A survey of spacecraft formation flying guidance and control. part ii: control[END_REF] have presented a survey of spacecraft formation flying rather than an extensive survey of general multi-agent systems. Most of the results from the papers, are communication agnostic. But it has common fundamentals with the general MRS. Also they show well studied examples dealing with the commands delay, fault recovery routines and many more important building software blocks for real world systems.

The book [START_REF] Mesbahi | Graph theoretic methods in multiagent networks[END_REF] gives mature theoretic insight about the multi-agent networks with robotics perspective. Good graph theory notions is well defined. Formation control and distributed estimation is studied for mobile robots. A link between graph theory and linear algebra, which is commonly known as algebraic graph theory is well mentioned as well.

Several surveys and reviews were also part of the literature in the past decades. Survey of forma-tion control of multi-agent systems are found in [START_REF] Brian Do Anderson | Rigid graph control architectures for autonomous formations[END_REF]. A review [START_REF] Quan | Formation control: a review and a new consideration[END_REF] on distributed multi-agent systems covers seminal contributions and results in the area of consensus, formation control, optimization and estimation.

Several approaches apply artificial attraction/repulsion fields as a building block to establish forces for each robots within a formation to preserve a shape. Others use gradient based controllers.

Coordination for motion control, like cooperation is a major challenge as well, the book [START_REF] Bai | Cooperative control design: a systematic, passivity-based approach[END_REF] discuss many of them thoroughly. It shows several methods for path planning synchronisation, adaptive controllers for velocity matching and passivity based controllers as well. Formation problems for UAV swarm systems with nonlinear dynamics were addressed in [START_REF] De | Dynamic model based formation control and obstacle avoidance of multi-robot systems[END_REF]. The methods were tested on a group of ground mobile robots with omni directional camera onboard. It heavily relied on the dynamic model of the mobile robot, while this part shows that the method is not flexible to be transferred to other types of robots, the authors justify their point of view of not working on the linearized robot models. In the sequel, a brief definition of the general formation control architecture from the information flow point of view, is addressed.

Centralized control architecture

In this architecture, robots in the group are controlled by one centralized controller. This controller senses the states of all the robots, then command the corresponding control signals to all of them. Figure 2.1 illustrates the centralized control architecture. This controller can be commanded from a ground base station connected to all the robots in the group or on the leader robot in the formation. Literature specially before the latest decades is full of methods in that investigated this architecture in thorough detail.

Distributed control architecture

Interaction between the robots in the team is happening through sending some of the sensing or the desired control setpoint (but not the control commands). It can be visualised in figure 2.2. Here in this architecture a huge reduction in the communication bandwidth is achieved, with the setback of having more complicated controllers to be implemented by researchers and engineers. Moreover, this architecture is more resilient and fault tolerant than the previously mentioned centralised one. It has attracted researchers for many decades in the robotics community.

Decentralized control architecture

Similar to the previous architecture, the decentralized one is doing team interaction through interaction between robots in the team. The major difference is the less reliance on the sensing measurements from other robots in the group. Only pure local sensing is used to control the robot with communicating the desired formation task or without communication through the predefined artificial intelligence rules embedded onboard.

Methods in Literature

Leader Follower Some researches in the multi-robot systems society focuses on Leader-Follower (LF) approach where, at least one robot is considered as the leader of the group and the rest of the robots are considered as followers. The followers track the position and/or orientation of the leader with some desired distance and bearing. The leader robot can be commanded manually or follow a predefined trajectory. Multiple leaders are also used in literature. Leader can either be predefined to the mission or elected dynamically.

The vision based leader follower formation control paper such as [START_REF] Cowan | Vision-based follow-the-leader[END_REF], implement algorithms that are based on input-output linearization of the robot model and require the estimation of the relative angle between leader and followers. The leader's linear and angular velocities are estimated as well without explicitly transmitting those values to the follower robots. A decentralized LF for a group of ground mobile robot with markers attached vertically on its board was realised in [START_REF] Omar | Robust vision-based nonlinear formation control[END_REF].

In [START_REF] Da Mercado | Quadrotors flight formation control using a leaderfollower approach[END_REF] a sliding mode controller is proposed to control the translational dynamic of the robots and a linear PD controller provides the desired orientation for the UAVs in the group. A control law is designed to minimize the errors according to x,y and yaw to converge to zero even in the presence of uncertain measurements, sensed values, and inaccurate controller. The control inputs were the followers velocities. The major drawback is utilising the full dynamics of the quadrotor, limiting the formation control to this specific type of robots with very specific dynamics. Attitude stabilization was taken into consideration for the formation stability. This very sensitive controller to be extended to other platforms or other types of mobile robots. Even implementing on the same type of robot with similar hardware and software architecture, will require substantial parameter tuning.

Virtual Structure

The main goal in this family of schemes, is to construct a desired virtual formation shape. Each robot in the group has its own planned trajectory. This can be planned in a centralized, distributed or decentralized manner. They can as well be planned completely offline a priori to the mission, or can have a reactive behavior during the mission. Generally, no interactions between robots are considered. This method is widely used in formation control for spacecrafts like [START_REF] Chen | Shape control of spacecraft formation using a virtual spring-damper mesh[END_REF], where the use of Virtual Spring damper mesh was proposed as a structure maintaining controller. Examples of experimental works of virtual structure control strategies can be found in [START_REF] Kushleyev | Towards a swarm of agile micro quadrotors[END_REF] and [START_REF] Schöllig | Synchronizing the motion of a quadrocopter to music[END_REF].

This structure exhibits some drawbacks that could concern mission success. The nature of the controller where there are no interaction between robots in the formation could lead to collisions in the presence of perturbations. Most of the solutions proposed in literature was centralized control, except for minor papers where [START_REF] Zhou | Virtual rigid bodies for coordinated agile maneuvering of teams of micro aerial vehicles[END_REF] is the most prominent one. The authors propose distributed trajectory planning for a group of multi aerial robots in 3D space. The major drawback is its reliance on global positioning system and common ground frame of reference. In the paper a simple formation switching mechanism was as well developed.

Multi Robot Systems Rigidity

Since virtual structure and formation control are of great advantage, it was very important to formally study the system rigidity, which is the case of this section. The multi robot control literature can have the following taxonomy based on the sensing and measurement utility; Position-based control, Displacement-based control, Distance-based control and Bearing based control.

• Position-based control: Robots can sense and have access to their own global positions with respect to a common coordinate system. They sense and command their own positions to achieve the desired formation, which is calculated with respect to the global coordinate system. This can be mostly considered as centralized scheme. • Displacement-based control: Each robot is able to sense relative positions of its neighbouring robots with respect to the common global coordinate system. The desired formation is specified by desired displacements for each robot in the group. Robots command the control signals as displacements of their neighbouring robots to achieve the desired shape. There is a noticeable feature in this type of control which is, robots need to align their orientations globally, sometimes with respect to a common reference frame. However, the robots does not require to know its absolute pose with respect to a global coordinate system. The formation is well described in the displacement interaction in between the robots. It is depending on the implementation to consider this scheme as centralized or decentralized. • Distance-based control: Inter-agent distances are actively controlled to achieve the desired formation, which is given by the desired inter-agent distances. Individual robots are assumed to be able to sense relative positions of their neighbouring robots with respect to their own local coordinate systems. The orientations of the robot's local coordinate system are not necessarily aligned or matching. • Bearing-based control: Inter-agent presence and connectivity of the graph is the main concern but not the exact distance. This can be sub categorized in angular bearing rigidity or distance bearing rigidity. The later use at least one distance to estimate the scale of the formation in the spatial space.

Except the last control scheme, there is always a trade-off between the amount of interactions among the robot's group and the sensing capabilities of a singular robot. Some confusion also happens in the relatively older papers ( 2005 and older papers) when developing or mentioning bearing based control. They rely on at least one distance or direct measurement. That is why in the more recent publications the term Bearing-only formation control is emphasized. Formation control using distance-only measurements can be found in [START_REF] Cao | Formation control using range-only measurements[END_REF]. In order to achieve such desired shape by the robots a popular gradient-based technique for formation-control in both of the two popular variants: position-based and distance-based can be very obviously found.

In the position-based strategy the robots control the relative positions (vector quantities) between them, whereas in distance-based strategy the robots just control the distances (scalar quantities) between them.

Rigidity Theory

As mentioned above coordination problems in multi-robot systems are vital for the stability of the formation. The coordination is highly dependent on the sensing and communication mediums available. Noise and uncertainty affect the performance of one robot operation. In the system of systems, as in the case of MRS, the effect is more impactful.

Graphs can encode behaviors that encounter interaction geometrical structures by abstracting the information exchange that those systems use. Examples of these behaviors can be regularization of geometrical patterns, synchronization, tracking robots, modelling noises and uncertainities in the system.

Rigidity of the formation is important in order to accomplish many of the assigned tasks. The purpose of this tool is to help to achieve the goal of keeping a desired shape of a multi agent formation. Rigidity graph theory plays an important role in the design of a desired rigid shape for the formation of the robots. The graph rigidity may sometimes be mentioned in the literature as dimensional barand-joint framework.

The theory which is well described in [START_REF] Brian Do Anderson | Rigid graph control architectures for autonomous formations[END_REF] has proven to be an effective theoretical framework for the analysis and resolution of formation control problem and cooperative localization problem as well. There are several methods that rely on local sensing only such as relative distance, can be found in [START_REF] Krick | Stabilisation of infinitesimally rigid formations of multi-robot networks[END_REF][START_REF] Garcia De Marina | Controlling rigid formations of mobile agents under inconsistent measurements[END_REF][START_REF] Zelazo | Decentralized rigidity maintenance control with range measurements for multi-robot systems[END_REF][START_REF] Shames | Analysis of noisy bearing-only network localization[END_REF].

In the following paper, the authors propose a solution that can infer heading information of the robot from the measured angles with neighbours [START_REF] Eren | Using angle of arrival (bearing) information for localization in robot networks[END_REF]. Showing a comparison between bearing formation instead of distance based formation, this paper at its time was focusing on network topologies of robots in 2D space with the assumption that at least, there exist one node that knows the global coordinate system. This information is then communicated to the other nodes/robots in the formation.

The previous paper was advanced in [START_REF] Bishop | Stabilization of rigid formations with direction-only constraints[END_REF] by proposing a gradient based control law depending on bearing-only constrained graph rigidity and parallel drawings. However, the proposed controller was still practically requiring both bearing and one distance measurements in order to be implemented. The distance measurement was required for the purpose of scale disambiguation. That drawback was addressed and enhanced theoretically in [START_REF] Franchi | Decentralized control of parallel rigid formations with direction constraints and bearing measurements[END_REF]. Though the authors shows only simulation results; they took into consideration primitive sensor model and the actual measurement conditions, like noise, inconsistency,etc. So they discussed the use of only the bearing measurements in their control law approach. Their main contribution can be summarized in analyzing the connection between scalability, minimality and rigidity. They have considered the formation control of planar kinematic robots by assuming a common reference frame and an undirected topology for the measurement graph (i.e., all measurements are assumed to be reciprocal)

In [START_REF] Franchi | Modeling and control of uav bearing formations with bilateral highlevel steering[END_REF], authors introduced a decentralized bearing formation controller that does not require presence of a common reference frame. The formation is defined as an undirected sensing topological graph by exploiting the (body-frame) measured bearings and a single distance measurement among an arbitrary pair of robots. But they have a special requirement and assumption which is structure for the chosen measurement graph which, among others, must contain two special robots able to measure and to be measured by any other robot in the group.

Cooperative localization from local relative measurements in the absence of central sensing and processing units is achieved in [START_REF] Zelazo | Decentralized rigidity maintenance control with range measurements for multi-robot systems[END_REF], where every robot is only able to obtain relative measurements and communicate with a certain subset of the whole group. rigidity of the formation is a necessary requirement for recovering from the available relative measurements a consistent solution of the localization problem in a common shared frame.

This assumption of having reciprocating measurement modality was generalized in [START_REF] Schiano | A rigiditybased decentralized bearing formation controller for groups of quadrotor uavs[END_REF]. Where they proposed a fully decentralized bearing formation controller that only requires presence of a generic (directed) bearing rigid topology in the beginning of the formation.

In the previous papers it was important to get at least one distance measurement even if the controller was concerned with bearing measurement only. The sole reason behind that is to achieve the scale of the formation shape.

This can be solved by measuring the distance by any means, for instance, through depth sensor or LIDAR onboard of the robots. Another solution is to infer the depth through the structure from motion techniques. This work was mentioned in [START_REF] Spica | Active decentralized scale estimation for bearingbased localization[END_REF] with some physics based simulation results with camera model included. In that paper one major assumption was taken into consideration, which is presence of (at least) one pair of robots in mutual visibility; which is some kind of reciprocating assumption.

The drawback here is that they do not mention formation self scale knowledge. Also they didn't take into consideration collision avoidance between the robots. We can eliminate the limited field of view constraint by deploying an Omnidirectional image sensing or possibly a pan tilt unit (gimbal).

In the paper [START_REF] Stump | Connectivity management in mobile robot teams[END_REF] partially centralized method was proposed, where a linear program is solved at every step of motion in order to mix the derivative of the second smallest eigenvalue of a weighted Laplacian (known as algebraic connectivity, or Fiedler eigenvalue) and the k-connectivity of the system. They were considering the time-varying interaction graph. This second smallest eigenvalue has an important role in assuring the maintenance of the formation rigidity and will be elaborated more later.

Bearing Based Formation Control

These reciprocal bearing measurements which was discussed in [START_REF] Cornejo | Scale-free coordinates for multi-robot systems with bearing-only sensors[END_REF] can be achieved by having an omni-visual information system. They consider a simple sensing model in which each robot can only measure the angle, relative to its own orientation, to neighbouring robots.

In this apprehended paper, the authors consider a weak sensing model where each robot is only capable of measuring the angle, relative to its own heading, to each of its neighbour. By this way they achieve a scale-free coordinates as an alternative coordinate system for multi-robot systems Parallel rigidity used in the paper [START_REF] Eren | Sensor and network topologies of formations with direction, bearing, and angle information between agents[END_REF][START_REF] Bishop | Stabilization of rigid formations with direction-only constraints[END_REF] is another way to address the bearing rigidity. The reason behind is the parallelism between vectors required to guarantee that the graph is bearing equivalent and congruent. These are two fundamental features of the graph that can guarantee its rigidity.

An advance has been achieved, by proposing a decentralized formation controller that uses both bearing-only measurements and constraints (does not rely on distances) [START_REF] Franchi | Decentralized control of parallel rigid formations with direction constraints and bearing measurements[END_REF]. The authors draws an analysis for connecting between scalability, minimality and rigidity of the robotics networked graph.

According to the paper [START_REF] John | Angular rigidity in 3d: combinatorial characterizations and algorithms[END_REF], generic minimal rigidity methods were developed for non robotics purposes. The paper was mainly motivated by some problems happening in Computer Aided Design (CAD) field. There work regarding spherical bar-and-joint structure is of importance for what is considered in this section of bearing based rigid formation control.

In the following paper [START_REF] Zhao | Distributed control of angleconstrained cyclic formations using bearing-only measurements[END_REF], a distributed bearing-only formation control law which ensures local exponential or finite-time stability is being proposed. They only rely on the local bearings measurements between the robots without communications in between them. The controller was also tested in simulation. An important comparison between distance based rigidity and bearing based rigidity was also studied.

The paper [START_REF] Moshtagh | Bearing-only control laws for balanced circular formations of ground robots[END_REF] from GRASP laboratory shows that measurements of the bearing angles between the robots are sufficient for reaching a balanced circular formation. They demonstrate their finding by implementation on a 2D planner mobile robots.

The paper [START_REF] Basiri | Distributed control of triangular formations with angle-only constraints[END_REF] uses angle only constraints to achieve triangular formation in a distributed control fashion. Their drawback is the limitation to three robots only through all the paper and approach. Also they were addressing the formation of triangle shape only. Another example of triangle formation can be found in [START_REF] Bishop | A very relaxed control law for bearing-only triangular formation control[END_REF]. That was inspiring for some other papers and was advanced and mentioned before in [START_REF] Franchi | Decentralized control of parallel rigid formations with direction constraints and bearing measurements[END_REF]. Also an advancement is made in the paper [START_REF] Bishop | Distributed formation control with relaxed motion requirements[END_REF], where the controller is only relying on local information. They as well draw a comparison between distance based, bearing based and mixed rigidity controller. Limited results were shown for the problem of time varying control commands. Since it was only in simulation, it can be acceptable not to be elaborated more.

Maintenance of formation

One key factor of ensuring a successful mission accomplishment of a swarm robots is to keep connectivity of all the robots in the formation.The issue of maintaining/preserving rigidity of the formation (which is a global property like graph connectivity) during the robot motion despite the possible presence of sensing constraints. Moreover, in a dynamic uncertain environment, a team of robots may not be able to maintain the same communication and sensing graph throughout the duration of a mission. Another problem such as, occlusions that appears while robots are moving can also be troublesome. Sensing range limitations should also be incorporated in the control scheme, so the links between robots drop out should be modeled. Furthermore, collisions with obstacles should be avoided during motion. Convergence of any formation MRS control scheme run by each robot in the group is dependent upon the formation rigidity.

The maintenance parameter was taken into consideration in 2D world in simulation only in [START_REF] Zelazo | Bearing-only formation control using an se (2) rigidity theory[END_REF]. Then it was extended in [START_REF] Schiano | Bearing rigidity maintenance for formations of quadrotor UAVs[END_REF]. Where it was experimented with realistic quadrotor flying robot. In which they implemented a controller that consists of a decentralized gradient descent action based on a suitable "degree of bearing rigidity" which is directly related to the spectral properties of the bearing rigidity matrix. This bearing rigidity matrix was mentioned before with more details in [START_REF] Schiano | A rigiditybased decentralized bearing formation controller for groups of quadrotor uavs[END_REF]. For every robot there is a weighted body-frame rigidity matrix representing connectivity. The strategy followed to preserve infinitesimal bearing rigidity of the formation by ensuring fulfilment of the rank condition for the weighted bearing rigidity matrix. They have added 3 constraints to be taken into consideration. As mentioned (C1) minimum/maximum range, (C2) limited field of view and (C3) occluded visibility.

Connectivity Measurements

Connectivity maintenance of a graph is of vast importance to ensure mission success as well as formation readiness to be controlled. There are several methods to do so and can be categorized in • Conservative methods: which aim at preserving the initial graph topology during the task [START_REF] Cao | Distributed coordinated tracking via a variable structure approachpart i: Consensus tracking[END_REF][START_REF] Ji | Distributed coordination control of multiagent systems while preserving connectedness[END_REF][START_REF] Notarstefano | Maintaining limitedrange connectivity among second-order agents[END_REF] • Flexible approaches: which allow to switch anytime among any of the connected topologies as in [START_REF] Yang | Decentralized estimation and control of graph connectivity for mobile sensor networks[END_REF]. In this approach, a suitable recasting of decentralized connectivity maintenance based on the second smallest eigenvalue of the graph Laplacian matrix was realised.

Formation Evaluation and Analysis

Benchmarking in robotics is challenging, taking into consideration the uncertainty, noisy, systemspecific nature of the field. Formal metrics for MRS cooperation, formation and system performance, as well as for grades of cooperation, are noticeably missing from the literature. Standards are not very common among the field. Some metrics like collaborative and absolute localization can recently be measured and get quantifiable distinguishable results.

Stability notions

The global stability of the proposed formation control laws was proved by employing the Poincare -Bendixson theorem as mentioned in [START_REF] Basiri | Distributed control of triangular formations with angle-only constraints[END_REF][START_REF] Bishop | A very relaxed control law for bearing-only triangular formation control[END_REF][START_REF] Bishop | Distributed bearing-only formation control with four agents and a weak control law[END_REF].

Problems that are concerned with this challenge can be summed up in stabilization of infinitesimally rigid formations paper [START_REF] Krick | Stabilisation of infinitesimally rigid formations of multi-robot networks[END_REF]. The study [START_REF] Herbert G Tanner | Leader-to-formation stability[END_REF] shows early results regarding stability analysis for leader and follower approachs in MRS. In [START_REF] Matthew | A survey of network formation models: stability and efficiency[END_REF] a exhaustive survey about stability and efficiency for networked formation is delivered. This can be considered an abstraction for the MRS networked formations.

When position measurements are available for formation control, a globally stable control law has been proposed in [START_REF] Cortés | Global and robust formation-shape stabilization of relative sensing networks[END_REF] to stabilize formations in desired dimensions with fixed topology.

Convergence in finite time is important as well for formation control for MRS. The robots should be steered or aggregated in definite time in several scenarios and cases to show that the controller is functioning efficiently.

Swarm, Algorithmic Methods for Pattern Formation

In this section, an overview is given, over the higher level algorithms that take place in the MRS domain inspired from Multi Agent System(MAS). MRS society gets inspiration from the MAS methods taking into account the hardware and the environment that such systems are going to be deployed.

Consensus

The main challenges with consensus based control laws can be narrowed down that all the robots should have a common sense of direction since the input biases are defined in a common reference frame. In really such common reference frame as discussed is not practically viable all the time.

Many formation control strategies have been designed based on consensus protocols, for example as in [START_REF] Ji | Leader-based multi-agent coordination: Controllability and optimal control[END_REF][START_REF] Schwager | Time scales and stability in networked multi-robot systems[END_REF].

Surveys on consensus based formation control can be found in [START_REF] Olfati-Saber | Consensus and cooperation in networked multi-agent systems[END_REF][START_REF] Ren | A survey of consensus problems in multi-agent coordination[END_REF]. In these surveys, there are many studies toward the cooperative control of different vehicles. Some papers study the effect of the kinematics on the global desired goal, some papers study the collision avoidance, and many more aspects.

In literature, there exist some papers that handle the challenge of formation control or swarm of a group of robots under the influence of communication pitfals. Some papers model the information flow between the robots as a network with time delay such as [START_REF] Lin | Distributed robust h consensus control in directed networks of agents with time-delay[END_REF].

Such paper focuses on the idea of having consensus control without having a leader robot in [START_REF] Nuno | Leaderless consensus-based formation control of multiple nonholonomic mobile robots with interconnecting delays[END_REF]. This leaderless control is providing a more emerging intelligent performance.

To this end regarding consensus controller, there is an obvious gap as in the other methods when dealing with the presence or not of communication channels among robots funcioning in a group,i.e: MRS. It is proposed in this chapter, a design of a decentralized and tuning-less high level controller able to maintain without tracking errors a Leader-Follower (LF) configuration in case of lack or degraded communications (latencies, loss. . . ) between the leader and followers UAVs. The high level controller only requires simple tunings and rests on a predictive filtering algorithm and a first order dynamic model to recover an estimation of the leader UAV velocities and avoid the tracking errors.

Keywords: Distributed/Decentralized control, Formation control, Leader-Follower, Autonomous vehicles, UAVs

Introduction

Coordination in multi-robots systems is a crucial issue that may be addressed by different approaches: behavior-based or force-based methods, Virtual Rigid Body structure building or Leader-Follower schemes. In the present chapter, we investigate the problem of building and maintaining a Leader-Follower (LF) configuration in case of degraded communications between the leader and the followers. The question of building and maintaining such a formation without communication has been addressed many times during the last two decades and most of the time the proposed solution relies on a sensorbased mechanism for compensating the absence of communication. Very often, work are considering cameras; pan controlled camera [START_REF] Chen | Adaptive leader-follower formation control of non-holonomic mobile robots using active vision[END_REF] or omnidirectional camera like in [START_REF] Morbidi | Observer design via immersion and invariance for vision-based leader-follower formation control[END_REF], [START_REF] Guo | A unified leader-follower scheme for mobile robots with uncalibrated on-board camera[END_REF], or other types of sensors like RGB-D (Kinect) [START_REF] Liu | Vision-based leader-follower formation control of multiagents with visibility constraints[END_REF]. From the data obtained by the sensors, each follower of the formation attempts to estimate the pose of the global or of its local leader. In [START_REF] Chen | Adaptive leader-follower formation control of non-holonomic mobile robots using active vision[END_REF], the authors consider this problem with a pan-controlled camera. Since no communication occurs, the leader's velocities are unknown. The goal of their work is the design of both an adaptive formation controller and an adaptive camera controller. The authors in [START_REF] Guo | A unified leader-follower scheme for mobile robots with uncalibrated on-board camera[END_REF] proposed a method for LF formation control considering a robotic system in which each follower is equipped with an uncalibrated omnidirectional or perspective camera. No communications are allowed and the velocity of the leader is considered unknown as well. In that work the authors present an adaptive estimator based on several feature points. In [START_REF] Liu | Vision-based leader-follower formation control of multiagents with visibility constraints[END_REF], the goal is to build and maintain a LF formation without communication between the robots. Each robot is equipped with only one type of sensor, a Kinect, for estimating the pose (relative orientation and position of the leader). The choice of the Kinect is justified by the fact that it provides color and depth information from which can be directly deduced angles and distances measurements but it suffers from a limited field of view. The controller depends on both the visibility maintenance and the minimization of position errors. With respect to these previous works, our main contribution is the design of a decentralized and tuning-less high level controller able to maintain a LF configuration. The proposed controller combines an omnidirectional camera with filtered and predicted measurements and a first order dynamic model of the UAV to get the leader velocities (even in case of degraded communications (latencies, loss) between the leader and followers UAVs) and avoid the tracking errors. Practical experiments are delivered utilizing perspective camera, but the algorithm is generic to work on the rectified images of an omnidirectional camera.

Problem Statement

The goal is to construct a geometrical shape sometimes known as Virtual Rigid Body (VRB) in order to establish the desired formation. The virtual structure between several robots aims at facilitating the agile control of several multi-rotor formations. The goal of each follower UAV is to follow the leader by keeping predefined separation distances X SP 1 , Y SP 1 , Z SP 1 as illustrated on Fig. 3.1. The leader UAV is assumed to track perfectly a virtual target which moves along a defined trajectory (straight line, circle, etc.). The controller of the leader UAV is not described in this work. The description of the high level controller will be done for the follower UAV number 1. The vision-based system provides the distance (d 1 ) and the bearing angle (θ 1 ) of the leader UAV.

Design of The High Level Controller

Double Exponential Smoothing (DES) algorithm

The proposed method assumes the availability of an estimation of both the distance (d 1 ) and of the bearing angle (θ 1 ) whose measurements are naturally degraded by noise and other uncertainties. A filtering stage to overcome these problems is mandatory. Such an algorithm has to be fast, accurate, robust to different motions, and easy to implement. We assume that the leader UAV moves regularly over time with a trend. In [START_REF] Joseph | Double exponential smoothing: an alternative to kalman filter-based predictive tracking[END_REF], a comparison is drawn between Double Exponential Smoothing (DES) algorithm and Kalman filter. The authors show that DES algorithm runs faster than Kalman filter with equivalent prediction performances and simpler implementations. That is why DES algorithm can be a good choice to generate smoothed estimates and forecast of distance (d 1 ) and bearing angle (θ 1 ). The DES algorithm at time instant n.T e, where T e is the sampling period and n is the discrete-time index, implemented for both the distance (d 1 ) and bearing angle (θ 1 ) measurements is given as follows:

d1n = α d 1 • d 1n + (1 -α d 1 ) • d1n-1 + b d 1n-1 (3.1) b d 1n = λ d 1 • d1n -d1n-1 + (1 -λ d 1 ) • b d 1n-1 (3.2) θ1n = α θ 1 • θ 1n + (1 -α θ 1 ) • θ1n-1 + b θ 1n-1 (3.3) b θ 1n = λ θ 1 • θ1n -θ1n-1 + (1 -λ θ 1 ) • b θ 1n-1 (3.4)
where: Usually, α is called the data smoothing factor and λ is called the trend smoothing factor. A compromise has to be found for the values of α and λ. High values make the DES algorithm follow the trend more accurately whilst small values make it generate smoother results. For the follower UAV 1, the filtered equation 3.7 and predicted equation 3.8 for both distance errors (x, y axes) are the following ones as illustrated in figure 3.1:

d
ê1x = d1 * cos θ1 -X SP 1 ê1y = d1 * sin θ1 -Y SP 1 (3.7) ẽ1x = d1 * cos θ1 -X SP 1 ẽ1y = d1 * sin θ1 -Y SP 1 (3.8)

Design of the tuning-less high level controller

We assume that the low level controllers (inner loop) implemented in the UAVs allow them to reach the desired references velocities (according to x and y axes) and the desired references positions (according to z axis (altitude, yaw angle)) with a short response time and without static errors, damping or oscillations.

All the UAVs are assumed to fly at the same altitude with the same yaw angle (altitude and yaw control can be controlled separately and are not detailed in this work). The control objective is to regulate the distance errors as follows:

lim t→∞ ê1x (t) = 0 lim t→∞ ê1y (t) = 0 (3.9)
To fulfill this control objective, we propose the following error dynamics equation:

ė1x ė1y = -   A (ê 1y ) • f DX • 3 i=1 β xi , VX -V Lx , DX f DY • 3 j=1 β yj , VY -V Ly , DY   = R • V T L -V T 1 (3.10) Where: R = cos (δ L -δ 1 ) -sin (δ L -δ 1 ) sin (δ L -δ 1 ) cos (δ L -δ 1 ) ,
and A (ê 1y ) = e -Ay•|ê 1y | A y is an attenuation parameter which makes decrease the effect of the linear control (x axis) when the lateral error (y axis) is not null, and these terms are defined as follows:

-→ V L = [V Lx V Ly ] is the leader velocity vector.

•

β xi (∈ [-1 . . . + 1]) • β yj (∈ [-1 . . . + 1]) • β x1 = f e x1 DX , 1, 1 β x2 = f e x2 DX , 1, 1 β x3 = f e x3 m•T e VX , 1, 1 • e x1 = ê1x ėx2 = ẽ1x +ê 1x 2•m e x3 = ẽ1x -ê1x • β y1 = f e y1 DY , 1, 1 β y2 = f e y2 DY , 1, 1 β y3 = f e y3 m.T e. VY , 1, 1 • e y1 = ê1y ėy2 = ẽ1y +ê 1y 2•m e y3 = ẽ1y -ê1y
The saturation function f is defined below. It allows to take into account the UAV limitations 3.10. VX , VY are the maximum allowed velocities according to x and y axes. The maximum allowed velocity of the follower is reached as soon as the components of its distance, to the leader, are greater or equal to DX , DY . The saturation function f is also used to normalize the values of β xi and β yj between -1 and +1.

f (eps, Vm, Dm) =    -V m if eps < -Dm V m Dm • eps if -Dm ≤ eps ≤ +Dm +V m if eps > +Dm (3.11)
From 3.10, we get the following control law:

-→ U 1 T = R • -→ V L T +   A (ê 1y ) • f DX • 3 i=1 β xi , VX -V Lx , DX f Dy • 3 j=1 β yj , VY -V Ly , Dy   (3.12)
In steady state 3.10, the follower will fly at the speed of the leader without tracking errors only if it receives, through a communication network, the leader velocity V L (without disturbances, latencies or losses.

Leader UAV velocities estimation

To compensate the tracking errors due to disturbances, latencies or loss of communication, the leader UAV velocity vector V L is estimated by using a first order dynamic model of the UAV in the following equation:

- -→ V 1m T = -1 τx 0 0 -1 τy • --→ V 1m T + 1 τx 0 0 1 τy • --→ U 1m T (3.13) V 1m = V 1mx V 1my , U 1m = U 1mx U 1my
are the velocity and control input vectors of the model respectively. In the earth frame as shown in figure 3.1, its position is:

- -→ P 1m = R o • --→ V 1m with R o = cos (δ 1 ) -sin (δ 1 ) sin (δ 1 ) cos (δ 1 ) (3.14)
Considering the following filtered distance errors (Fig. 1):

--→ ê1m =     d1 * cos θ1 d1 * sin θ1   + R -1 o • -→ P 1 T - --→ P 1m T   - X SP 1 Y SP 1 (3.15)
with:

--→ ê1m = [ê 1mx ê1my ] The control objective is to regulate the distance errors as follows:

lim t→∞ ê1mx (t) = 0 lim t→∞ ê1my (t) = 0 (3.16)
The following error dynamics equation is proposed to fulfill the control objective:

- -→ ê1m T = - K x 0 0 K y • --→ ê1m = R • V T L - --→ V T 1m (3.17) with: K x = V X D X , K y = V Y D Y
In steady state (3.13, 3.15), U 1m = V 1m , and

V 1m = R • V L .
The tracking errors 3.16, will be null only if the dynamic model get the leader UAV velocities without disturbances, latencies or losses. Otherwise, the tracking errors will depend on the values of the proportional gains K x , K y . Indeed, let us consider the following candidate Lyapunov function:

V = 1 2 --→ ê1m • --→ ê1m = 1 2 • ê2 1mx + ê2 1my (3.18)
Its time derivative can be written as:

V = e 1mx • ė1mx + e 1my • ė1my Thus, V < 0 if |ê 1mx | ≥ V Lx κx and |ê 1my | ≥ V Ly
Ky so that the size of the tracking errors |ê 1mx | and |ê 1my | are uniformly and ultimately bounded by V X Kx and VY Ky respectively, where V X and V Y represent bounds on the leader UAV velocity components satisfying |V Lx | < VX and |V Ly | < VY . These tracking errors do not have any effects since they concern the dynamic model. This interesting result allows to get the leader UAV velocities even in case of degraded (latencies, loss, ...) communications. From 3.16, we get for the dynamic model the following control law:

--→ U 1m = R. -→ V L T + Kx 0 0 Ky • --→ ê1m (3.19)
Finally, by combining equations 3.19, and 3.12, we get:

-→ U 1 T = --→ U 1m T +   A (ê 1y ) • f D X • 3 i=1 β xi , V X -V Lx , D X f D y • 3 j=1 β yj , V Y -V Ly , D y   (3.20)

Simulation Results

Matlab-Simulink

The simulations have been carried out on Matlab-Simulink software. They are based upon a dynamic model of the UAV [START_REF]ARdrone2.0 Simulink toolbox[END_REF] combined with usual low level controllers (PID control for horizontal velocities and Phase Lead control for altitude and angular (yaw) positions). The simulation parameters are the following ones: Simulation time: T=800s -Sampling period: Te=0.01s Altitude (after the take-off phase): 10m Omnidirectional camera position: Loc = 0.15m Attenuation parameter A y =0.3 Maximum velocities: Maximum distances: DES algorithm: α d ,θ = 0.5, λ d ,θ = 0.5, m = 10 Time constants (first order model): τ x = 0.2s, τ y = 0.2s Take-off conditions (m, deg) / linear-circle trajectories :

•

Leader (X L , Y L , θ L ) : [-82,-82,0 • ] -[-95,0,90 • ] • Follower 1 (X 1 , Y 1 , θ 1 ) : [-90,-82,0 • ] / [-95,-25,90 • ] • Follower 2 (X 2 , Y 2 , θ 2 ) : [-90,-74,0 • ] / [-110,-15,90 • ] • Follower 3 (X 3 , Y 3 , θ 3 ) : [-90,-90,0 • ] / [-80,-15,90 • ]
In order to study the LF formation and the global aspect of the Virtual Rigid Body (VRB), linear and circle trajectories (radius of the circle: 90m -leader velocity according to x and y axes: 1m/s) have been chosen. The VRB requirements are the following ones: circular trajectory (diamond):

• X SP 1 = +20m | Y SP 1 = 0m | Z SP 1 = 0m • X SP 2 = +10m | Y SP 2 = -10m | Z SP 2 = 0m • X SP 3 = +10m | Y SP 3 = +10m | Z SP 3 = 0m
UAVs yaw angle: θ 1,2,3 = 90°L inear trajectory (line):

• X SP 1 = +10m | Y SP 1 = 0m | Z SP 1 = 0m • X SP 2 = +10m | Y SP 2 = -10m | Z SP 2 = 0m • X SP 3 = +10m | Y SP 3 = +10m | Z SP 3 = 0m
UAVs yaw angle: θ 1,2,3 = 0°T he simulation results in Figures 3.2,3.3 show that the UAVs follow properly (for different velocities and orientations) the circular and linear trajectories after the take-off phase and fly according to the desired VRB requirements (a triangle for the linear trajectory and a diamond for the circular trajectory). Then, to study separately and in details the effects of the leader velocity estimation with a first order dynamic model, the following scenario has been implemented for both trajectories: Before t=200s, the leader UAV velocity is (in m/s). Between t=200s and t=600s, the leader UAV acceler-

Gazebo

In order to simulate the results with a more dynamic realistic environment, a ROS-Gazebo simulation is being utilized. An open source package known as ROTORS [START_REF] Furrer | Robot Operating System (ROS): The Complete Reference (Volume 1), chapter RotorS-A Modular Gazebo MAV Simulator Framework[END_REF] is chosen to be the main building block as it matches to great extent both the software standards, e.g., ROS and the hardware used for experiments in the lab. It relies on px4 open source flight stack controller mimicking pixhawk as software in the loop [START_REF] Meier | Pixhawk: A micro aerial vehicle design for autonomous flight using onboard computer vision[END_REF].

Each robot has the capability to navigate autonomously relying only on its on-board sensing capabilities; ie: vision and inertial measurement unit. Each follower robot is utilizing the onboard embedded monocular perspective camera to track and detect the leader robot. The leader robot has a fiducial marker primarily to do identification. The choice of the marker was fallen on Apriltag1 , a more efficient and faster than ARtag. These fiducial markers or cues are very relevant in robotics domain. They are even on planet Mars, aiding the robot arm automatic identification and automatic calibration [START_REF] Matthew L Robinson | Hybrid image plane/stereo (hips) manipulation for robotic space applications[END_REF]. Their ease of mounting and use made them ubiquitous in many systems. they can be engraved or attached to the robotic system during the assembly phase. As well they provide convenient direct process of extracting distance and bearing measurements.

In figure 3.8, the left hand side represents the visualization of the paths, leader UAV in green, follower in red. The right hand side represents the Gazebo environment simulating the robots dynamics and interactions. Fiducial marker is attached to the leader as a cube to be detected from all the sides while the robot is rotating.

The desired spacing is -2.5 in x and y. According to the graph this value have been tracked with some fluctuation around the desired -2.5 since there is no communication between the leader and follower drone. As shown in the plot in 3.9

Experimental Results

Description

As described in the simulation, the goal of the experiment is to validate the follower's robot algorithm able to track and maintain a desired distance and bearing to the leader robot.

Setup

The quadrotor is considered as the follower, the omni-directional ground mobile robot as the leader. The leader robot can either be commanded by a joystick or with a trajectory generation algorithm to perform specific navigation. The quadrotor was placed on the ground randomly apart from the the mobile robot. The taking off position should respect the detection distance of the marker from the quadrotor's onboard camera. In such a scenario, it was effective within 4-5 meters away from the ground mobile robot.

Procedure

Then the experiment starts with the drone takeoff stage, then sanity check of the sensors. Afterwards the formation control algorithm is activated. The required formation could be shown as in figure 3.10

In figure 3.10, the quadrotor drone (Parrot Bebop) is executing the following controller commands to keep track of the omni-mobile robot that is controlled by a user.

The scenario of that experiment was taken in one shot but with varying leader's velocities mainly in the global Y direction which induces the error in x axis of the image.

Results

In the figure 3.11 the graph shows the relation between the distance error measured by the quadrotor with respect to time. During the first 20 seconds in this experiment, the quadrotor robot is trying to track and maintain the formation following the take off phase, while the ground mobile robot is stationary. The leader is commanded a velocity of 0.1 m/s at around 55 seconds from the time the quadrotor took off and the follower's error calculation from the visual feedback starts to bump a little bit above zero. The controller was able to converge back toward zero which implies the quadrotor is able to follow. The leader only stopped at the time 80 seconds. At around 80 seconds the leader is commanded negative velocity of -0.15 m/s the error is bound and the follower is trying to maintain the cohesive motion.

To test the framework in a harsher scenario, a rapid switching velocity was commanded to the leader from -0.15 m/s to 0.20 m/s inducing a big error at around 115 seconds as shown in figure 3.12. The follower was able to tackle such scenario with some error but was able to converge to near zero eventually.

The main concern in this experiment as stated was related to the error of x. But due to the irregularity of the ground that the mobile robot is navigating there are some uninduced error according to Z and Y, but that does not affect the cohesive motion tracking. As shown in the figures these desired distances are maintained as well.

As expected, as the velocity of the leader increases, the error peak increases as well. But the same controller with the same gains without extra tuning was able to track the leader and keep the desired formation. Some irregularity as well and the error is not absolute zero as in reality the drone is not in a perfect hover. Figure 3.12: Error according to x,y,z in meters vs time in seconds.

Conclusion and Perspectives

In conclusion, the formation control can work in a fully decentralized way. Indeed, unlike other VRB methods, which rely on the group barycenter to steer the formation [START_REF] Santos | On the guidance of multiple uav using a centralized formation control scheme and delaunay triangulation[END_REF], this proposed approach requires neither positioning nor tracking from a centralized point.

Simulation results for several scenarios/trajectories were provided to assess the algorithm. In addition, these results were corroborated experimentally using formation in between an omni-directional mobile robot with a mounted tower and attached marker, and quadrotor UAV.

The major drawback in this method, as in others in the literature is relying on distance measurements for the algorithm to generate appropriate control signals. Moreover the fiducial marker used can be replaced, when the identification problem in robotics is solved. This challenge is an open problem with many proposals in literature.

Introduction

The numerous advantages of flying in group over using single robot in mission execution was discussed in previous chapters and extensively in literature, but usually algorithms are demanding the communication of different measurements in between the robots. The crucial issue of coordinating the motion between the robots can rely on sharing information such as distance, position, orientation, velocity, and attitude.

In the previous chapter, it is shown that visual tracking and prediction can be used to achieve a formation control even in the presence of intermittent communication. The controller was using the distance and bearing angle between a leader and follower robot. In this chapter, the goal is to propose method that can deliver similar performance but without having direct distance measurement or relying on specific marker in a more natural way like humans advanced perception systems to track targets. An Image Based Visual Servoing (IBVS) technique is utilized for building and maintaining a Leader-Follower (LF) configuration of multi aerial vehicles (UAVs) without communication. An Extended Kalman Filter (EKF) is used as well for the prediction of the leader's motion as well as follower robot state estimation and noisy measurement filtering.

The coordination between group of robots can be handled by solving the tracking and mutual localization between robots in the same group through formation control. In this chapter a method is proposed in the direction of solving such challenge of tracking and mutual localization in a unified framework.

Eventually, according to the targeted application, it may be necessary or desirable that drones fly following a given geometric shape (line, diamond, etc.), a property as well of formation control. Building and maintaining a spatial geometric shape while evolving within the environment usually requires extensive communications between the robots for coordinating their movements. In this work we focus on the use of an Image Based Visual Servoing (IBVS) technique for building and maintaining a Leader-Follower (LF) configuration of multi aerial vehicles (UAVs) without communication. While most IBVS techniques either require rigorous camera calibration or regulate the error according to the three robot axes, our approach avoids the calibration phase by relying on image moments features to provide a vision-based predictive compensation method. The follower robot's solution works in GNSS-denied conditions and can run using only on-board sensors. The method is validated through simulations for a group of three quadrotors, and another with two quadrotors. Then these results were coroborated experimentally with two holonomic robots as presented in section 4.6. The experiments where carried out by a quadrotor aerial mobile robot as a follower robot representing the main controller of the follower robot. An omni-directional ground mobile robot with a mounted marker (for robot identification reason) is used as a leader robot.

Visual Servoing

Visual servoing is an old technique that merge both the visual information in a control loop binding the effort of having a camera attached on a robot. Early work of visual servoing started to emerge in 1980's. It became more mature later with the results of the work of adaptive visual control of a robotic arm [START_REF] Arthur | Adaptive visual servo control of robots[END_REF], and then with the work of Peter Corke in [START_REF] Hutchinson | A tutorial on visual servo control[END_REF]. The control design can be described that at first a set of points have to be selected, then an analytical form of the interaction matrix is proposed. Then a goal or a desired image represents the final camera pose along with an initial pose have to be defined too. Visual Servoing later became more mature then with the results of the work of adaptive visual control of a robot arm [START_REF] Arthur | Adaptive visual servo control of robots[END_REF], and the work of [START_REF] Hutchinson | A tutorial on visual servo control[END_REF][START_REF] Chaumette | Visual servoing[END_REF].

There are major techniques that classify the field of Visual Servoing (VS) like Image Based Visual Servoing (IBVS) and Position Based Visual Servoing (PBVS). There are other branches that emerge from the pros and cons of both primary branches like. IBVS is considered to use information directly in the image plan to do control while on the contrary PBVS is using the pose of a target to control the robots. Configuration of the camera with respect to the robot, is having also an important classification on the techniques, formally there are two configurations: eye-in-hand and hand-eye/eye-to-hand. The first configuration is having the camera attached to the robot while the later means the camera is observing the robot in a scene. It depends on the application and the requirement on which technique could be used. In this thesis, the eye-in-hand configuration is going to be used due to the assumption of the availability of cameras on aerial robots. The work in literature during 1990's was more concerned about the interaction matrix evolution, and feature selection for the model of the target; such as (point,line, edge, centroids, etc).

Related Work of IBVS for LF Framework

In this section a general view about the related work in literature that have investigated some results related to VS in the context of MRS.

MRS have been widely studied since the 90s [START_REF] Arai | Editorial: Advances in multi-robot systems[END_REF][START_REF] Cao | Cooperative mobile robotics: Antecedents and directions[END_REF]. Many advantages can be expected from using a group of robots: increase and share of the payload [4], reduction of the time needed for the achievement of a task [5], fault tolerance and resilience of the system [START_REF] Zeng | Wireless communications with unmanned aerial vehicles: opportunities and challenges[END_REF][START_REF] Tuna | Unmanned aerial vehicle-aided communications system for disaster recovery[END_REF], or use of simpler and cheaper robots for adaptability to the environment [START_REF] Tosun | Perception-informed autonomous environment augmentation with modular robots[END_REF]. However, making a group of robots evolving together in the same environment entails the resolution of some problems. Coordination is one of the most critical ones, especially considering decentralized settings. Coordination between the members of the group can be achieved through various ways, from behavior-based or forces-based methods to Virtual Rigid Body (VRB) structure building, through Leader-Follower (LF) schemes.

In the present work we focus on the last approach. We consider a set of UAVs equipped with ubiquitously available sensors for flight controller, a perspective camera, but, no possibility to communicate with each others. In addition to the absence of communications, leader's velocity is considered unknown and no beforehand camera calibration is done.

VS require camera calibration in order to estimate the depth of the features in the image used. In the context of multi robot system, that would be a tedious time consuming task, some algorithms utilized in the method proposed in this chapter are tested against the non-accurate calibrated cameras bypassing pitfall that can occur. On another side note, camera self calibration is not yet widely availably used.

PBVS works as minimizing the error in 3D space. Its major disadvantage is when the feature is lost from the image during the control loop. On the contrary, IBVS is working directly in the image plane and the controller error is defined as the difference between the observed and desired feature coordinates. The disadvantage however in IBVS is stability and convergence problems that may happen due to the singularity of the image jacobian where the controller will fall in local minimum at points with unrealizable image motion [START_REF] Chaumette | Potential problems of stability and convergence in image-based and position-based visual servoing[END_REF].

In the context of building and maintaining LF formation control without communication, most of the time, compensating for such information absence, solutions rely on a sensor-based mechanism. Pan-controlled camera [START_REF] Chen | Adaptive leader-follower formation control of non-holonomic mobile robots using active vision[END_REF] or omnidirectional camera like in [START_REF] Morbidi | Observer design via immersion and invariance for vision-based leader-follower formation control[END_REF][START_REF] Guo | A unified leader-follower scheme for mobile robots with uncalibrated on-board camera[END_REF][START_REF] Liu | Vision-based leader-follower formation control of multiagents with visibility constraints[END_REF], or other types of sensors like structered light (i.e: kinect) [START_REF] Liu | Vision-based leader-follower formation control of multiagents with visibility constraints[END_REF] are often considered. Note first that the camera provides each follower the bearing angle with respect to the leader. In 2010 Fabio Mobidi and his colleagues show that an estimation of the distance between the follower and the leader, a.k.a. range estimation, can be obtained from an omnidirectional camera. However, the proposed method requires a communication between the leader and the followers. More recent works avoiding communications and considering cameras were proposed. From the data obtained by the sensors, each follower of the formation attempts to estimate the pose of the global or of its local leader. Unlike in our work, the design of the controller is often based on this estimation for deriving both the linear and angular speed for maintaining the configuration.

In 2015, Chen and Jia have presented an adaptive controller for a LF configuration without relying on communications [START_REF] Chen | Adaptive leader-follower formation control of non-holonomic mobile robots using active vision[END_REF]. An active vision sensor was used to track the leader, and they proposed both a controller for the active vision actuation and one for the tracking. However, an accurate calibration of the camera was required for the distance measurement for leader's velocity estimation. This calibration is also a critical point for other methods relying on mutual pose estimation or relative pose estimation [START_REF] Teixeira | Vi-rpe: Visual-inertial relative pose estimation for aerial vehicles[END_REF]. This makes a clear difference with our approach, which does not require camera calibration, that needs only four non co-linear points in the image plane to determine, in the follower's camera frame, the desired state of the leader.

More recently, in 2017, Guo and his colleagues proposed a method for LF formation control considering a robotic system in which communications are not allowed, leader's velocity is considered unknown and each follower is equipped with an uncalibrated omnidirectional or perspective camera [START_REF] Schiano | A rigiditybased decentralized bearing formation controller for groups of quadrotor uavs[END_REF], thus settings very similar to our current work. However, the described adaptive estimator, based on several feature points, failed when the movement of the leader is co-linear to the follower's camera axis, a situation for which the method proposed in this chapter offers a solution as explained in Section 4.4.

The last notable work under this set of constraints is due to Liu and his colleagues who consider robots equipped with kinects [START_REF] Liu | Vision-based leader-follower formation control of multiagents with visibility constraints[END_REF]. This sensor allows an estimation of the pose (relative orientation and position of the leader) and provides directly both angles and distances measurements but at the price of a very limited field of view, incompatible with many LF configurations.

In that context, our main contribution is a vision-based predictive compensation method for building and maintaining a Leader-Follower configuration under a set of restrictive constraints: no communications between the UAVs, no prior accurate calibration of the camera and considering the leader's velocity as unknown. The method is based on the use of image moments as features for Image Based Visual Servoing (IBVS), and unlike most of existing works our approach does not use explicit distance measurement or camera calibration, thus can also be applied in a GNSS-denied environment.

The remainder of the chapter is organized as follows. Section 4.4 presents the problem and the resolution method proposed. Validation of the approach through simulations, considering three aerial robots with a six Degrees of Freedom (DoF), is described in Section 4.5. Concluding remarks followed by a discussion about going from simulation to real-world experiments are presented in the last section.

Problem statement 4.4.1 Problem description

The main task to be achieved by navigating a group of robots can be described as the ability to construct a geometrical shape sometimes known as Virtual Rigid Body (VRB). The virtual structure between several robots aims at facilitating the agile control of several multi-rotor formations. The goal of the follower's robot is to follow the target, the leader in such case, by keeping a predefined separation distance d and bearing angle θ, as illustrated by Figure 4.1. Additionally we control the follower UAV without directly measuring distance and utilising the image plane of the camera that is mounted on the robot. The UAV leader is assumed to track perfectly a virtual target which moves along a defined trajectory (straight line, circle, etc) or with a human in the loop motion planning (description of leader's controller is out of the scope of this chapter). Unlike other VRB methods, which rely on the group's barycenter to steer the formation [START_REF] Santos | On the guidance of multiple uav using a centralized formation control scheme and delaunay triangulation[END_REF], in our case each robot is planning its own trajectory contributing to a distributed formation control, such that no positioning and tracking from a centralized point is required.

We adopt a multi-layer control scheme composed of a single robot layer and a formation controller layer. The single robot control, which is responsible to provide the control signals to the robot, can be achieved with off the shelf flight controller.

Figure 4.1 shows a Bird-eye view of the formation to create a triangle or V-shape with the leader in front carrying a fiducial marker. The follower is having a perspective camera viewing the leader and its marker. The camera image view is shown in figure 4.3.

In the context of unavailable communication in between the robots, the formation control should estimate the value of the leader's velocity by one way or another. In [START_REF] Bastourous | Decentralized high level controller for formation flight control of uavs[END_REF], we designed a high level controller which only requires simple tunings and rests on a predictive filtering algorithm and a first order dynamic model to recover an estimation of the leader's velocities and avoid the tracking errors. The proposition of this current chapter is to develop and test a system that does not directly measure the distance to leader and at the same time preserves the virtual structure as concise as possible. For this constraint an Image Based Visual Servoing (IBVS) will be used.

Approach description

Image moments feature First we have to define the features that are selected carefully for IBVS on an underactuated system. The features used for the algorithm are based on the popular image moments proposed in [START_REF] Tahri | Point-based and region-based image moments for visual servoing of planar objects[END_REF]. They are represented starting from defining the object in the field of view as having n points, each point p k = (x k , y k ) represents the coordinates in the image plane. The moments m ij and the centered moments µ ij of this object are defined as:

µ ij = n k=1 (x k -x g ) i (y k -y g ) j (4.2)
Where i, j represents the index of the moments, x g = m 10 /n, y g = m 01 /n and n = m 00 . Since the considered shape is composed of a discrete set of points, then it's area can be expressed as:

a = µ 12 + µ 21 , a * = µ * 12 + µ * 21 (4.3)
Where a and a * are the current and the desired areas of the shape. To choose visual features to control the translational Degrees Of Freedom (DOF), we can make use of the features proposed in [START_REF] Tahri | Point-based and region-based image moments for visual servoing of planar objects[END_REF] and validated with more results in [START_REF] Peter A Karasev | Depth invariant visual servoing[END_REF].

As mentioned in the introduction, if the target moves in the direction of the frontal axis of the center of the camera (z-axis), this can imply several singularities in the tracking. This was noted as a pitfall in the work of [START_REF] Guo | A unified leader-follower scheme for mobile robots with uncalibrated on-board camera[END_REF].

For avoiding such situation, a normalized version of the features are considered as mentioned in [START_REF] Tahri | Point-based and region-based image moments for visual servoing of planar objects[END_REF] which suggests that the direct use of the shape's area a to control the robot's motion in the zaxis can give bad behavior because the interaction matrix relating a and v z is not constant therefore, the dynamics between them will be different, not like the case of x g and y g . Where in fact they can provide a good control for their respective velocities v x and v y . So to avoid that, a better choice would be by taking a normalized version of these features and are defined such that:

a n = Z * a * a , x n = a n x g , y n = a n y g (4.4)
Where a * and Z * are the area and the depth of the target at the desired pose. And x n , y n are the normalized centroid of the shape.

Errors that we are going to regulate later through the controller. A current and a desired states of the image have to be defined.

e = s -s * (4.5)
where s = (x n , y n , a n ) T and s * = (x * n , y * n , a * n ) T be the current and the desired features' states respectively, where x n , y n and a n are expressed in equation (4.4).

The relation between the image dynamics and the velocity of the camera can be defined as:

ė = L s V c (4.6)
Since the velocities according to x,y, and z axes are the ones to be controlled, the interaction/Jacobian matrix becomes as follows:

L s =   -1 0 0 0 -1 0 0 0 -1   (4.7)
Normally it is designed to control 6 DOF robot arm, but since the multi-rotor UAVs are considered underactuated systems, there are 2 DOF that can not be directly controlled. For a multi-rotor UAV, hover condition means the pitch or roll angle of the UAV with respect to the world plane should be zeros. A classical quadrotor model can be commanded with twist velocity vector of four. These velocities are the velocity according to x,y,z axes and rotational velocity around z. This will lead to omitting the forth and fifth columns and rows of the stack of the original interaction matrix leading to 4.7. Taking into account the fact that a kinematic model was considered. Three inputs delivered to the low level velocity controller such that V c = (ν x , ν y , ν z ) T , and the resulted interaction matrix is given in 4.7.

To make sure that the error is decreasing exponentially so that

ė = -λe (4.8)
where λ is a positive control gain, substituting in (4.6) and solving for V c we get the velocity of the camera from the dynamics of the image:

V c = -λL + s e (4.9)
The transformation from the robot frame to the camera frame is fixed and known by design. Since this camera is mounted on a UAV (in our case quadrotor), this velocity twist vector should be translated and rotated with respect to the mounting details to the center of mass of the robot. The used kinematic model of a quadrotor was taken into consideration unlike most of the other IBVS implementations for quadrotor that can be found in literature. That gives more freedom for the controller to be interchangeable to other types of quadrotors or even different multi-rotor vehicles without the need to redesign the gains, but rather fine tune them. The equation 4.6 is valid for static target. An additional aspect that should be included to this error equation to compensate for the motion of the leader. The equation of the time derivative of the error ė will be:

ė = ṡ - ∂e ∂t (4.10)
we consider ∂e/∂t to be the change in the leader's position in image plane of the follower robot.

The full dynamics equation is given by substituting ṡ by it's motion equation leads to:

ė = L s V c - ∂e ∂t (4.11)
Then finally the velocity vector can be represented as:

V c = L + s (-λe - ∂e ∂t ) (4.12)
where L + s represents the pseudo-inverse of the interaction matrix. Let us mention that the gains in the previous controller are adaptive, meaning that the gain value changes depending on the the error value:

λ = (λ max -λ min ) |e t | |e max | + λ min (4.13)
Where λ max is the upper limit of the gain, λ min is the lower limit of the gain, |e t | is the norm of the error vector at time t and |e max | is the norm of the maximum error value at the first iteration of the control loop. According to [START_REF] Kermorgant | Dealing with constraints in sensor-based robot control[END_REF], the authors show the positive effect and smoothness of adaptive gains on different visual servoing scenarios. It was adopted by default in our developed framework.

The Velocity vector V c is then passed to the low level controller of the flight controller(e.g., PX4 on Pixhawk) mounted on the UAV controlling its specific dynamics. Moreover to guarantee that the robot's velocity do not exceed the physical limit (in some cases security limit), a saturation function was introduced. This function will smooth and bound the velocities.

The ∂e/∂t is an estimation of the value of ∂e/∂t. This term can be calculated in different methods dependant on the application. For instance if the target moves at a constant velocity, this value can be calculated as:

∂e ∂t = γ i e i (4.14)
Where γ is a positive gain. It should be adaptive as well as predictive to change online depending on the leader's velocity. A simplified version of that gain can be constant by tuning in the case where leader's velocities are constant, which is not our case. Since there is no communication in between the robots, the follower robots should predict leader's velocity from the direct observation of the image moments. Building on the assumption that the robots are equipped with Attitude and Heading Reference System (AHRS) sensors, the robot can have good estimate of its own velocity in 3D space. This is an actual assumption that should hold for the robot to be able to stabilize itself using its low level flight controller. To get the prediction of the leader's velocity from the direct observation of the image moments, a common nonlinear Extended Kalman Filter (EKF) is implemented.

The main components of the EKF can be defined as follows, Fundamental matrix F can be defined as a nonlinear function f (x, u), and the linear expression Hx is replaced by a nonlinear function h(x):

ẋ = f (x, u) + n x z = h(x) + n z
where n x and n z are the noises.

x is the state vector. It can be defined as the velocities according to x,y,z axes and their corresponding angular velocities w x , w y , w z .

The main equation of the filter can be written as: P = FPF T + Q F is considered the state transition matrix, with values choosen empirically depending on the observation of the experiments and can be defined as:

        1 0 0 0.005 0 0 0 1 0 0 0.005 0 0 0 1 0 0 0.005 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1        
Then the Kalman gain matrix can be defined as:

K = PH T (H PH T + R) -1
where R is the measurement noise covariance, is considered the prior and defined as identity matrix of 6x6 and P = (I -KH) P

Process and measurement uncertainty/noise matrix can be 6x6 identity matrix. Measurement model which is presented in the matrix H can be represented by 2 horizontally stacked 3x3 matrices: First matrix is the follower's robot self velocity measurement coming from a feedback sensor as optical flow or other techniques. The second matrix is represented as 3x3 zeros matrix, since Yaw control is not considered in this chapter. This will build the standard predict/update loop which will iterate to provide ∂e ∂t . Relating back to [START_REF] Bastourous | Decentralized high level controller for formation flight control of uavs[END_REF], we showed that even in the leader's velocities scarcity in the framework according to a Lyapunov function can be uniformly bounded. In that paper, a velocity compensation makes best use of a double exponential smoothing to have a prediction of the leader's velocity. The velocity error estimation presented in this paper can be compared to that compensation.

Simulation

Preliminaries

• Three UAVs are considered, one leader and two followers.

• The aggregation phase between the robots is not considered.

• UAVs are equipped with a good low level controllers, e.x. open source px4 stack. The control inputs of our concern can be summed up in vertical, lateral, linear and angular velocities.

• Each robot is equipped with embedded monocular perspective camera which can provide leader robot detection through tracking a fiducial marker like Apriltag 1 , or ARtag. • The algorithm should be initialized by posing the leader in the desired pose with regard to the follower. Then after capturing the image, the desired image moment will be deduced from it. That method can be considered as teaching by showing.

Design

In this section, we present the simulation results for both the Gazebo/ROS simulator. The model of the UAV is a available to the scientific community as a ROS package [START_REF] Furrer | Robot Operating System (ROS): The Complete Reference (Volume 1), chapter RotorS-A Modular Gazebo MAV Simulator Framework[END_REF], namely the AscTec Hummingbird model was used. We have mounted a perspective camera on the follower robots and fiducial marker as a tag on the leader to facilitate the detection of it. It has to be noted that, the algorithm is marker agnostic. It is only required to have 4 discrete points, that represent the shape that should be tracked (in our case for simplicity of experiments it was the corners of the marker). The desired image moments with respect to the detected one as seen from the follower UAV can be viewed in figure 4.3. The desired moments are in green and the detected ones are in red. Camera view of the follower UAV observing the leader UAV is shown in the figure 4.3. Image moments visualization is emphasized. The desired features location is in green, and the detected features are in red which are the corners of the marker.

Scenario

The values of the simulation model parameters used, are the following:

• Simulation time: 50s starting from 280 till 320 seconds in figure 4.5, and from 420 till 470 in figure 4.4. The results were recorded to a rosbag file, then the plots where generated continuously, that is the reason behind different time stamps which can be normalised to start from 0 seconds and end at 50 seconds. • Camera mounted distance from the center of UAV according to z-axis = -0.15m according to

x-axis = 0.15m • Altitude: 7m • Maximum allowed velocity: 0.5 m/s The initial conditions of the quadrotors are: • Take off positions (x,y,z) in meter:

leader : 0,3,0; follower 1 : 0,1,0 ; follower 2 : 0,-1,0 • Relative positions (x-spacing,y-spacing, z-spacing) between the different followers and the leader are represented in meters as follows:

follower 1 at 2,1,0 ; follower 2 at 2,-1,0 which is done by posing the leader in the desired spacing then capturing the image of the follower's camera, which will then image moments will be extracted and considered as features.

Simulation Results

Results obtained from the Gazebo simulation are reported in this section with two main analysis. Absolute distance error in figure 4.6. Another important aspect is the error according to the X,Y,Z of the two follower UAVs as shown in figures 4.4,4.5.

It shows consistent followers tracking to the same desired commanded velocities eventually after their take off throughout the whole trajectory up till the landing phase.

In the figure 4.6, to validate the algorithm and analyse its effectiveness, a logging of the absolute spacing distance ( x 2 + y 2 + z 2 ) between the leader and a follower UAV is being studied. N.P: The distance spacing is not used by the controller. The experiment starts with leader velocity of -0.3 m/s in the absolute y direction of the world. The follower will maintain a spacing distance of 1.75. Then the leader will be commanded to stop, so a velocity of zero was commanded at around 142 seconds. The follower UAV as shown will immediately react trying to achieve the same distance spacing. The prediction phase oscillates and then achieve the proper spacing. To tackle realistic scenarios, and test the robustness of the predictor. Even before it settle down to the appropriate spacing, the leader was commanded velocity of 0.3 m/s at around 150 seconds. As shown the algorithm was able after some minor oscillation to achieve the desired spacing. Then at around 165 seconds the leader was commanded with -0.3 m/s in the absolute Y of the world which according to 4.1 is in the same direction as the forward looking axis of the camera. Again and lastly the system was able to recover such variation in velocity and direction (from forward 0.3 m/s to backward 0.3 m/s of the leader). As observed the oscillation is more apparent due to the toughness of such scenario.

In the graph represented by the figure 4.6, the absolute distances with regard to the changing velocities can be shown. Absolute distance spacing between robot 2 "considered as follower 1" and the leader is analysed over time. The green line represent the commanded velocity to the leader. The follower robot has no knowledge of that velocity as there is no communication. The magenta line is the separating distance between leader and follower. As shown the distance is always around the desired 1.75 meters spacing. There exist oscillations at the time of changing the velocity of the leader.

Experimental Results

To assert the IBVS predictive formation controller, a similar setup as the experiments in the previous chapter, is considered.

Description

As a sum up of such system, the quadrotor is considered as the follower, the omni-directional ground mobile robot as the leader which will be commanded directly. The quadrotor follower should maintain an error that is near zero. More information about those particular robots can be found in appendix C.

Procedure

The experiments started with the quadrotor placed on the ground randomly apart from the the mobile robot. Then the drone takeoff phase starts, after sanity check of the sensors. Following that phase, the formation control algorithm is activated. The scenario of that experiment was taken in one shot but with varying leader's velocities mainly in the global Y direction which induces the error in x axis of the image.

In the figure 4.7, a drone as a follower robot, omni directional mobile robot with a marker attached on a mounted tower as a follower, ground features for the use of optical flow technique, an operator that operates the leader using manual commands. The drone is following the marker mounted on the mobile robot profiting from the velocity commands outcome from the EKF.

Results

In the figure 4.8, the result of a simple scenario is shown. After the drone stabilizes itself in front of the Leader mobile robot. The leader start to navigate with 0.1 m/s in the global Y direction (according to world coordinates), the drone detects that motion and the controller allows it to converge till the velocity of the leader is inverted. From the second 20, the leader will move with a velocity of -0.1 m/s. Again the drone was able to track that with a small fluctuation. The errors are in normalized pixels which spans from -1 to 1. In the sense the -1 according to X is the maximum points in the image view on the X-axis, and similar for all the axis. It is important to keep in mind absolute zero error is practically not very possible even in the indoor setup because the drone in its hover state is not ideally perfect.

Pixel errors of the IBVS tracking algorithm for formation control is shown in 4.8. Errors on the horizontal axis in normalized pixel values, and time is presented on the vertical axis. Another experimental results as shown in 4.9 with similar context, but different commanding velocity for the leader robot. As shown the peak of the errors increased but the follower's controller was able to converge and track the leader. Particularly from the second 250 till 280 seconds, it represent the takeoff phase. Then from 280 till 310 seconds, the controller of the follower is activated but the leader didn't start to move yet. Later the leader was commanded velocity in the positive global Y direction from 310 till 325 seconds. Then a pause of 5 seconds from 325 till 330. Following this pause, the leader was commanded velocity of negative global Y direction from 335 till the end. The positive notch that happened around 350 seconds is considered as overshoot from the predicted state.

Link to one of the demo videos for more clarification of the setup and the experiment is in: https://vimeo.com/431051702.

Another demo video can be found in https://www.youtube.com/watch?v=xQrFoV1jpc8 Another important demo which shows side by side, the first man view of the drone following the robot and on the right hand side the image feedback as streamed onboard of the drone: https:

Conclusion and Perspectives

In this work we focused on the problem of building a model for formation of UAVs and maintaining this formation under the constraint of using only on-board local sensing measurements to detect image moments features. The use of such features, omits the need for explicit distance measurement, which can not naturally be done by monocular cameras without sophisticated algorithms. No infrastructure is required for the controller to be operational, such as GNSS outdoor or an indoor motion capture system. The proposed solution is based on a Leader-Follower scheme. The reported results, obtained from the simulations of Gazebo are written in python and C++ under ROS, and show that the formation is maintained during the navigation mission. Real experiments corroborated these simulated results. The hardware setup was utilizing Bebop robot where the system of ROS is offboard. The quadrotor communicate its data through ROS wireless network to that offboard computer. That makes the system prone to drop in communication or noise, a future better hardware setup is designed based on DJI F450 quadrotor airframe equipped with px4 low level controller stack on pixhawk cube flight controller unit, with the offboard computer connected through serial link and perspective camera.

The future perspectives are to test Reinforcement Learning vs the classical method proposed in this chapter. It was noticed as well that the EKF tuning was time consuming. The investigation of UKF is very much recommended to tackle such pitfall. As well as, UKF is usually in literature able to tackle non linearity better than EKF.

Introduction

This chapter presents a decentralized method for aligning three robots without communication and without explicit localization. Each robot is assumed to be equipped with an omnidirectional camera and is assumed to be able to detect the two other robots in the images produced by its own camera. Each robot decides of its own movements based on the continuous measures of angles between itself and the others. We present the algorithm that performs such a task, its theoretical analysis and some simulations. We prove the correctness of the algorithm when the robots are reduced to points, when collisions are not considered and when the initial formation is not an equilateral triangle. When collisions are considered, the probability for the algorithm to be successful is greater than 1 -1 36 . We then present some simulations for measuring the success of the approach when a minimum security distance d sec has to be respected. During the execution of the algorithm by each robot, if the distance between any two robots is lower than this security distance we suppose that a collision is likely to occur and consider that the Algorithm has failed. Simulation results report that the larger d sec , the bigger the percentage of failures. However runs are always successful when d sec = 0 which suggests that the theoretical bound is not tight and could be improved. In addition, simulations reveal that the main source of failures was not the one expected by the theoretical analysis.

Related work

Pattern formation by groups of robots has received an increased attention these last years. The availability of non expensive and easy-to-set up robotic platforms has contributed to the emergence of swarm robotics for which pattern formation and formation control are keys.

Regarding pattern formation issues, roboticists as well as researchers working in distributed computing have produced several models and results.

Sugihara and Suzuki were among the first to propose a distributed method for controlling multiple mobile robots [START_REF] Sugihara | Distributed algorithms for formation of geometric patterns with many mobile robots[END_REF]. In their work, the authors address the generic problem of the geometric pattern formation, including line formation. The robots are considered as identical and they are not supposed to communicate with each other. The method developed by the authors is not fully autonomous since the user, for the line formation, has to explicitly choose the two robots that will be the extremities. In addition it is assumed that each robot is able, thanks to a sensor, to determine the position of the other robots, in its own reference frame. The model used in this work was more formally defined in [START_REF] Suzuki | Distributed anonymous mobile robots: Formation of geometric patterns[END_REF]. The robots are assumed to be reducible to a point in 2D space. Each robot is anonymous, has a memory, and its own coordinate system. In addition, after observing its environment the position of the other robots are known in its own coordinate system. The authors show in particular that oblivious robots can achieve the task of gathering altogether in a single point of the plan, a problem also addressed with mainly the same model in [START_REF] Ando | Distributed memoryless point convergence algorithm for mobile robots with limited visibility[END_REF]. In the same line, in 2001 Paola Flocchini and her colleagues refined and constrained the model, but after the observation phase, a robot knows the position, in its own coordinate system, of the robots located in its surrounding. If some assumptions regarding the model are discussed in other papers, obliviousness, sense of direction, chirality, etc. [START_REF] Flocchini | Arbitrary pattern formation by asynchronous, anonymous, oblivious robots[END_REF][START_REF] Das | Forming sequences of geometric patterns with oblivious mobile robots[END_REF], the localization knowledge after the observation phase is never questioned.

Complementary to these theoretical approaches roboticists have proposed various solutions for pattern formation. Instead of considering that each robot is able to localize the other ones in its own coordinate system, they try to find methods for allowing the robots to mutually localize themselves. Note also that pattern formation is not necessarily the final goal of the process, usually they also try to maintain the geometric pattern during a mission-specific movement of the group.

One of the founding work is due to Balch and Arkin [START_REF] Balch | Behavior-based formation control for multi-robot teams[END_REF]. They propose a method for building different topologies: line, column, diamond and wedge. Every proposed approach requires the knowl-edge of the position (using GPS coordinates or dead reckoning) of some other robots. The methods consist for each robot to maintain its position with respect to a particular point that could be either, the central point of the formation or, the position of a leader or the position of a specific neighbor. Other approaches include the computation of mutual localization which is mainly obtained through information exchanges between robots. This mutual localization can also be achieved based on the use of bearing angles, as it was exposed in [START_REF] Franchi | Mutual localization in a multi-robot system with anonymous relative position measures[END_REF], but in that case the robots have to communicate with each other. In [START_REF] Fidan | Single-view distance-estimation-based formation control of robotic swarms[END_REF], based on some prior information about the robots height and other items in the environment, each robot performs a distance estimation and run some control law to form some specific pattern from any initial configuration. This is achieved without the need for the robots to communicate with each other. The harsh underwater conditions for both wireless communications and mutual localization have led Sousselier and his colleagues to propose a line formation algorithm based on local localization information using ultra-wave ping. Their swarm is supposed to work in a synchronous way.

Our contribution is to propose an algorithm for aligning three robots requiring neither communication nor localization. In our approach each robot measures the angle formed by itself with the two other robots and behaves according to both this angle and its derivative. So, our robots are not oblivious albeit they only need to store their last angle value. In addition our robots are not communicating with each other, they are anonymous, have no common coordinate system, may not have the same chirality and are supposed to move at a constant speed, not necessarily the same for each robot. However it is assumed that robots are able to performs simultaneously sensing, computing and moving.

Our motivation for proposing such a model is that on real robotic platforms multicores processors are now often present, allowing parallel activities to occur, whilst the achievement of constant and precise mutual localization is still difficult to obtain. Moreover, our final aim is to implement this method on our fleet of home-made robots.

It is also assumed that: there is neither wind nor any environmental problem/disturbance, the environment is free of obstacles and the ground is flat (essential for Algorithm 2).

The Alignment Algorithm is described in the next Section. We theoretically prove, in Section 5.4 that this algorithm is successful 97% of time. Simulations results are presented and analyzed in Section 5.5. Finally some directions for improving and extending the current method and some perspectives are discussed in the Conclusion.

Alignment of Three Robots without Communication nor Localization 5.3.1 Introduction

Given three robots as in Figure 5.1 located on the same plane. As previously mentioned, each robot is assumed to be able to measure the angle it forms with the two other robots which corresponds to angle γ on the Figure.

The γ angle is the key element on which the alignment algorithm is built on.

Alignment Algorithm

The algorithm presented in this section is independently executed by each robot and ends only when the alignment is obtained. It can be considered as a continuous process for reaching a predefined state, this state beeing a line. From the point of view of any robot, a line is obtained as soon as its γ angle is equal to 0 or to π. In this latter case, the robot is located between the two other ones. Before reaching this desired state, at any moment the moving behavior of a robot is driven by both γ value and dγ/dt. This means that the movement of a robot may change if the value of γ is changing because of its own movements or because of the movements of the other robots (as illustrated by Figure 5.2):

1. if γ = 0 or γ = π, the robot stops, 2. if γ ≥ π/2, the robot moves into a direction corresponding to the bisector of this angle, 3. if γ ≤ π/3 the robot stops moving, 4. if π/3 < γ < π/2, the robot moves into the direction of one of the two other robots (randomly chosen), 5. a robot keeps on moving as long as γ increases, thus, as long as dγ/dt ≥ 0

Theoretical Analysis

In this section we propose a theoretical analysis of Algorithm 1. We always consider that robots are reduced to points but we distinguish two possibilities, when collisions are considered (at least two Algorithm 1 Alignment Algorithm robots are located at the same position) or not.

In order to prove the correctness of the algorithm when collisions are not consider and its probability of success when collisions are considered, we start by proving some Lemmas. Lemma 1. If the triangle is equilateral, the algorithm fails.

Proof. Based on the algorithm, for moving a robot should have γ > π/3 and in an equilateral triangle γ 1 = γ 2 = γ 3 = π/3, thus no robot is moving and thus they cannot align.

In the sequel we only consider non equilateral triangles. Lemma 2. Alignment Algorithm allows only six different scenarii of movement for the robots.

Proof. We first remark that there exist only 5 different configurations for the angles. Without loss of generality we assume that γ 1 ≥ γ 2 ≥ γ 3 .

All possible combinations are:

1. γ 3 = γ 2 = γ 1 = π/3 , already considered by Lemma 1 2. γ 3 ≤ γ 2 ≤ π/3 < π/2 ≤ γ 1 3. γ 3 ≤ γ 2 ≤ π/3 < γ 1 < π/2 4. γ 3 ≤ π/3 < γ 2 < π/2 ≤ γ 1 5. γ 3 ≤ π/3 < γ 2 ≤ γ 1 < π/2
Based on the algorithm, and due to triangle properties (there cannot be three angles strictly greater than π/3) at most two robots may move at the same time, thus D 3 is not moving since γ 3 is the smallest γ angle.

For combinaisons 2 and 3 and according to the algorithm, only D 1 moves which leads to Scenario 1 on Figure 5.3. For the case 4, D 1 is moving in the direction of the bisector of its γ angle and there exist two possibilities for the movement of Proof. When γ 2 = γ 1 , the triangle is isosceles. For scenario 4, if D 1 and D 2 start simultaneously and are moving exactly at the same speed then, both γ 2 and γ 1 angles increases up to π/2 and both robots will be positioned at the same point. If collision is not an issue, we can consider this final configuration as an alignment since the three robots belong to a same line. For scenario 6, both robots are moving toward D 3 and, if D 1 and D 2 start simultaneously and move at the same speed, both γ 2 and γ 1 remain identical during the move. The movement stops when the three robots are positioned at the same point. Which may also be considerated as a degenerated line. If collisions are considered, in both situations, as at least two of them are located at the same position, we can consider that they collide and thus that the algorithm fails. Lemma 4. For Scenario 1, the execution of Algorithm 1 on every robot leads to the alignment of the three robots.

Proof. For Scenario 1, γ 1 > π/2, only D 1 is moving and it moves in the direction of the bisector of its γ angle which entails a decrease in both γ 2 and γ 3 angles as illustrated by Figure 5.4(a) and an increase of γ 1 , thus dγ 1 /dt > 0. After some time, γ 1 reaches π and simultaneously γ 2 = 0 and γ 3 = 0, thus every robot stops the execution of its own algorithm. Thus for this case the algorithm is successful since it converges to the alignment of the three robots. When π/3 < γ 1 < π/2, either D 1 moves in the direction of D 2 entailing a decrease of γ 3 , or it moves in the direction of D 3 entailing a decrease of γ 2 . Without loss of generality let us suppose that D 1 is moving in the direction of D 3 . When D 1 moves in the direction of D 3 , dγ 2 /dt < 0 and, as dγ 3 /dt = 0 then dγ 1 /dt > 0. In addition, γ 3 < π/3, thus after some time γ 1 > π/2 leading to the previous situation, as illustrated by Figure 5.4(b). As a consequence, for scenario 1, whatever the initial value of γ 1 , given that γ 3 ≤ γ 2 < π/3 < γ 1 , the execution of the algorithm on every robot leads to the alignment of the three robots. Proof. Given the assumptions that robots are starting to move at the same moment and that they are moving at the same speed, the evolution of Scenario 3 is illustrated by Figure 5.5. In this scenario, γ 1 > π/2 thus D 1 is moving in the direction of the bisector of his γ angle, while π/3 < γ 2 < π/2 and D 2 is moving in the direction of the initial position of D 1 . As D 3 is motionless, as soon as D 1 and D 2 are moving, dγ 1 /dt > 0 and dγ 2 /dt < 0, leading D 2 to change its state from MOVE to STOP. The resulting situation, only D 1 is moving, corresponds to Scenario 1. The evolution of Scenario 4 is described in Figure 5.6. Initially π/3 < γ 2 < γ 1 < π/2. D 1 and D 2 are moving in the opposite direction, but as D 3 is not moving, both dγ 1 /dt > 0 and dγ 2 /dt > 0. After some time, γ 1 , which is greater than γ 2 reaches π/2. At that point, the direction of D 1 changes to the bisector of γ 1 , a situation corresponding to Scenario 3 which evolution leads to Scenario 1 as it was previously proved.

D 2 D 1 D 3 γ 1 γ 1 γ 2 γ 2 γ 3 γ 3 (a) D 2 D 1 D 3 π/3 < γ 1 < π/2 γ 1 = π/2 γ 2 < π/3 γ 2 < γ 2 (b)
D 1 D 2 D 3 γ 1 γ 2 γ 1 > γ 1 γ 2 < γ 2
The evolution of Scenario 5 is illustrated by Figure 5.7. The robot moving in the direction of the motionless robot (D 3 ) has its γ value increasing. On the contrary, the other robot has its γ value decreasing entailing a change in its state from MOVE to STOP. The situation corresponds then to Scenario 1, where only one robot is moving.

The evolution of Scenario 6 is illustrated by Figure 5.8. Both robots are moving in the direction of the motionless robot (D 3 ). As γ 1 > γ 2 , the distance between D 1 and D 3 is lower than the distance between D 2 and D 3 , then, as soon as they are moving, γ 1 increases while γ 2 decreases leading to a Thus, under the assumption that γ 1 > γ 2 , Scenarii 3, 4, 5 and 6 lead to Scenario 1 which leads to the alignment of the three robots.

D 1 D 2 D 3 γ 1 < π/2 γ 2 γ 1 = π/2 γ 2 > γ 2
The last Scenario which has not been considered yet is Scenario 2. When both D 1 and D 2 are moving, as illustrated on Figure 5.9, it may happen that both dγ 1 /dt > 0 and dγ 2 /dt > 0, leading, potentially, to a situation where the two robots are positioned at the same point. In that case and if collisions are not considered, the situation is comparable to that described in Lemma 3 and the algorithm is successful. However, if collisions are considered, as two robots may be positioned at the same point, the algorithm may fail. A very detailed and careful analysis would probably help finding subcases for which this Scenario might be successful even for the collision case, however we want to find a lower bound for the probability of Algorithm 1 to be successful in that case, we thus consider that, for this scenario, the algorithm fails to align the three robots when collisions are taken into consideration. Lemma 6. The probability that Scenario 2 occurs is less than 1 36 Proof. Given three non aligned points, there exist only one circle that contains these three points. Without loss of generality we can consider that: the circle is the unitary circle, the point with the lowest γ value is D 3 the point with the largest γ is D 1 and that D 3 is located at (1, 0). First note that as γ 1 > π/2, the three points have to be located on the same half-circle and that D 1 is located between D 2 and D 3 . In addition, as γ 3 < π/3 < γ 2 < π/2 < γ 1 then γ 3 < π/6. One such situation is illustrated on Figure 5.10.

D 1 D 2 D 3 γ 1 γ 2 γ 1 < γ 1 γ 2 > γ 2
D 1 D 2 D 3 γ 1 γ 2 D 1 D 2 D 3 γ 1 γ 1 γ 2 γ 2
We note also that the position of D 2 is constrained by its γ angle that should be greater than π/3. Thus D 2 has to be positioned on the unitary circle between 2π/3 and 4π/3 as illustrated on Figure 5.11, otherwise D 1 cannot be positioned on the unitary circle between D 2 and D 3 without violating the constraint γ 2 > π/3.

Then, whatever the position of D 2 within that sector, the maximum sector in which D 1 can be positioned is π/3 as illustrated by Figure 5.12. This sector is maximum when D 2 is located in (-1, 0) and reduces as soon as the position of D 2 gets closer to its extreme possible positions. As a consequence, the probability of scenario 2 is the probability of having a triangle respecting the constraints on the angles: γ 3 < π/6, π/3 < γ 2 < π/2 and γ 1 ≥ π/2, times the probability that D 2 chooses the direction of D 3 for moving. The first probability is equal to the probability of D 2 to be positioned in the 2π/3 sector, times the probability of D 1 to be positioned in the π/3 sector starting at D 2 . Thus Proba(scenario2) = 2π/3 2π × π/3 2π × 1 2 = 1 36 .

We are now considering the theoretical probabilty for the algorithm to fail according to the initial distribution of robots in the 3D space. First note that the execution of Algorithm 2 on every robot leads to a configuration for which all the robots are located at the same altitude, so on the same plane.

In the sequel we thus restrict our analysis to a 2D space.

Theorem 1. When collisions are not considered, Alignment Algorithm aligns the three robots, re-Algorithm 2 Aligning robots at the same altitude state ← GO_UP duced as points, iff the initial configuration is not an equilateral triangle.

Proof. Straightforward considering all the Lemmas.

Theorem 2. When collisions are considered, the probability for Alignment Algorithm to align three randomly distributed robots in a 3D space is greater than 0.97.

Proof. According to Lemmas 5 and 4, Algorithm 1 fails to align the three robots when (i) the triangle is equilateral (Lemma 1), (ii) π/3 < γ 2 = γ 1 < π/2 (Lemma 3) and (iii) when π/3 < γ 2 < π/2 ≤ γ 1 that corresponds to Scenario 2. A triangle is made or three points and the choice of the two first points has no impact on the properties of the triangle, the third point only has to be considered.

If we consider a plane (2D space), there are only two possible positions for the last point to form an equilateral triangle, thus the probability that three random points form an equilateral triangle is 0. So the probability that the algorithm fails because of case (i) is 0.

The second case corresponds to a subset of isosceles triangles. Given two points A and B in a 2D space, there are many different possibilities for the last point to form an isosceles triangle. Any point positioned on the bisector of the segment [AB] leads to an isosceles triangle as well as any point positioned on the circles which radius is equal to the length of the segment and the center is either A or B. However, both the bisector and the two circles are one-dimensional geometric objects. In comparison with the plane which is a two-dimensional object, the probability that the point C belong either to the line or to one of the two circles is again 0. So the probability that the algorithm fails because of case (ii) is 0 again. Remains the last case (iii) (Scenario 2 in Figure 5.3). According to Lemma 6, the probability to this scenario to occur is less than 1 36 . As a consequence, the probability that Algorithm 1 successfully aligns three randomly positioned robots in a 3D space is greater than or equal to 1 -1 36 ≈ 0.97.

Simulations

Simulation

For the simulations the environment is a square space of size L × L. The three robots are randomly positioned within that space. The first simulations that were performed considered the theoretical framework for which a robot is a point and collisions are not considered. Without surprise Algorithm 1 was always successful. However, as we plan to use this algorithm for real experiments on our fleet of UAVs (built upon F450 DJI frames), we introduce what we call a security distance d sec . During the simulation if the distance between any two robots is lower than d sec the algorithm is supposed unsuccessful. Note that this security distance is equivalent to consider that robots are no more reduced to points but have a non-zero size and that we do not allow two robots to be too close to each other. Initially, the three robots are randomly positioned in that space but a minimum distance d sec × 2 should be verified for the instance to be valid. The robots are supposed to be aligned as soon as either γ < π/30 or π -γ < π/30. The simulator displays the initial position of robots and the path they follow during the execution of the algorithm as illustrated below.

Initially, the robots are After running Algorithm 1, randomly positioned the robots are aligned.

The simulation results presented were obtained for almost 1 million runs. We have measured the frequency of each scenario and the percentage of unsuccessful runs.

Results

For the runs, we have considered different environment sizes and different values for the security distances: L ∈ {300, 500, 1000} and d sec ∈ {5, 10, 15}.

The results presented in Table 5.1 are stemmed from the aggregation of all the runs for all combinations of parameters (with the notable exception of the case for which d sec = 0. The measures reported on the second line is the percentage of occurrences of each scenario according to the random initial positions of robots. Scenario 1 is far more frequent than the other scenarii and it is the only scenario for which only one robot is moving.

The third line of Table 5.1 reports the percentage of unsuccessful runs for a given scenario while the values of failures for every combination of parameters are presented in Table 5.2. These results call for remarks. We first note that there is a noticeable difference between what was expected from the theoretical analysis and the results obtained from the simulation. Indeed, the analysis shows that Algorithm 1 should mainly fail for Scenario 2. From the simulation it appears that only 6% of the runs corresponding to Scenario 2 are unsuccessful, which represents a little bit more than 6% × 3.6% ≈ 0.2% of the total number of unsuccessful runs. The main source of failures comes from Scenario 4, for which two robots are moving in their respective directions. Theoretically, since the probability of having an isosceles triangle is 0, a collision should not occur and the contribution of Scenario 4 to the total number of failures should be 0. However, in the simulation, because we want to use this algorithm for real experiments, we introduced a security distance that has to be respected between any two robots. And in the case of Scenario 4, if the difference of the γ angles of the two moving robots is small, after some steps the security distance is no more respected, thus a collision risk is supposed to be high, and the run is declared unsuccessful. This explain the 24% of unsuccessful runs for Scenario 4. In more detail we have 33.8% of unsuccessful runs for Scenario 4 when d sec = 15, 24.5% for d sec = 10 and 19.2% for d sec = 5.

In Table 5.2 the percentages of successful runs for Algorithm 1 for each combination of the parameters are reported. As one hundred percent of unsuccessful runs are due to a collision risk, it is not surprising that the larger the environment and the lower the security distance, the better the results obtained by the algorithm. These results have to be compared to the theoretical value of 97% computed in the previous Section when robots are reduced to points and show that the approach is relevant even for non-zero size robots. It is noticeable that for small environments and large security distances the percentage of unsuccessful runs can be a little bit greater than the theoretical value, but, as for the results of Table 5.1, the main source of failures is Scenario 4 and comes from the introduction of a security distance between any two robots that has to be respected during the simulation.

Gazebo

The algorithm was also developed on Gazebo within ROS [88,89]. Such a simulator is better able to take into account more realistic constraints and is a step towards its implementation on a real platform.

The Gazebo simulator package ROTORS [START_REF] Furrer | Robot Operating System (ROS): The Complete Reference (Volume 1), chapter RotorS-A Modular Gazebo MAV Simulator Framework[END_REF], provides realistic dynamic system to different family of multi rotors (quad, hexa, etc). It is widely used in the aerial robotics society for its high fidelity. The same codes can be transferred easily to the same type of robots mentioned in the package, and with some minor tuning to similar types of multi rotor vehicles.

A link for the demo of the algorithm can be found in: https://www.youtube.com/watch? v=hC85JJcCE2o.

The same demo in case of facing difficulty accessing youtube https://drive.google. com/file/d/1HSzJs7w6RBY-iO4dj6iDgDo7jjo4bM5V/view?usp=sharing.

Conclusion and Perspective

In this work we have presented a novel simple decentralized communication and localization-free algorithm for the aligment of three robots. Assuming that each robot is a point and is equipped with a 360 degrees camera, we suppose that it can simultaneously, measure the angle it forms with the two other robots, computes the direction of its movement and moves. According to its γ angle and to its derivative (positive or null/negative), each robot, independently of the others, decides of its behavior: move or stop. The theoretical analysis of the algorithm shows that this algorithm is successful as soon as collisions are not taken into account. If not, the probability of success is greater than 0.97.

For the simulations a security distance was introduced, which is equivalent to consider that robots have a non-zero size. The motivation for introducing such a value is that we plan to implement this algorithm on our fleet of UAVs for performing real experiments. During any run if the distance between any two robots is lower than that security distance the run is considered unsuccessful. Despite this new constraint, the success of the algorithm, based on the simulation results, is between 96.9% and 99.7%. The larger the environment and the lower the security distance, the better the results obtained by Algorithm 1.

The perspectives of this work are manyfold. Current simulations were run using GraphStream, a dynamic graph library [START_REF] Dutot | Graphstream: A tool for bridging the gap between complex systems and dynamic graphs[END_REF]. These results were corroborated with GAZEBO robotics simulator. In the future, the algorithm implementation should be tested on a fleet of UAVs (built upon F450 DJI frames).

The main drawback of the method is that it cannot be easily extended to a number of robots greater than three, since it relies mainly on the properties of triangles for making the decision. Different possibilities for addressing this limitation are envisioned. The first currently investigated consists for each robot to choose, based on some particular angle properties, two other robots in its neighborhood, and then to follow Algorithm 1, until the alignment. The method is iteratively applied, on another couple of chosen robots, until the alignment of all the robots is reached. The second would be to assume the availability of an additional piece of information: the relative distance between robots, an information of the type: further, closer, similar distance.

CHAPTER 6

General conclusion

Summary of the Thesis

Autonomous Multi Robot System (MRS) are having beneficial tasks that could take place in our current world scenarios, yet MRS are not widely available to be deployed. As well, they are not easily scalable systems, as available solutions are centralized. Decentralizing the algorithms can bridge the gap of deployment, be scalable and efficient methodology for MRS to be available to fulfill tasks.

For a successful operation of MRS, two main fundamental capabilities are essential: relative location of nearby neighbors (formally known as mutual localization problem), and information flow between different peers through communication. These capabilities are going to be used by a relative collision avoidance module. A decentralized algorithm is utilizing such two capabilities in managing the fleet of robots for a common goal without the need of a centralized unit (neither for communication, sensing, nor for computation).

In case of communication failure such MRS would fail in accomplishing the defined tasks, and more worse robots in the fleet would collide together. That pitfall was a major motivation toward studying and finding methods that can act as a fail safe in the time of communication failure.

The main goal of this research and thesis was to explore the possibility of coordinating a group of robots that is constrained by intermittent communication in order to bring improvement in MRS robustness. The problem is diverse and interdisciplinary. The state of the art of these disciplines are vividly progressing globally by researchers, companies and practitioners. These advancements are fueled with the progress taking place in communication, sensing capabilities, and computing power. Some examples of these advancements can be summed up as following. In communication field, there exist new technologies and research on 5G, LORA, etc. From the sensing capabilities point of view, there are conventional, unconventional imaging, time-of-flight, etc. Computation capabilities as well has seen widening use of GPU and miniaturization of these units that are now embedded in robots nowadays. Some research is going in the direction of spiking neuromorphic hardware. There are some research direction toward hardware acceleration using FPGA.

In this chapter a final review and wrap up are presented to what have been discussed in this thesis.

A perspective is finally given for the prospect directions that could be beneficial to be thoroughly investigated in future studies.

Contributions

These proposed algorithms were validated by different simulations, and corroborated with real world experiments.

High Level Decentralized Formation Controller

In chapter 3 a decentralized high level controller for formation flight control of UAVs was proposed.

The main goal was to design a tuning-less high level controller able to maintain without tracking errors a Leader-Follower (LF) configuration in case of lack or degraded communications (latencies, loss ...) between the leader and followers UAVs. The high level controller only requires simple tunings and rests on a predictive filtering algorithm and a first order dynamic model to recover an estimation of the leader UAV velocities and avoid the tracking errors. The algorithm was tested on different simulators, and corroborated through a real world experiment. A quadrotor run the main algorithm tracking the leader which was represented by an omnidirectional mobile robot base with a mounted tower augmented by a fiducial marker.

IBVS using Image Moment for LF Formation control

In the work proposed in chapter 4 the focus was on an algorithm that could handle the LF configuration without the direct use of distance, relying mainly on bearing measurements. The bearing measurements are usually easier to be sensed by the ubiquitous sensors such as cameras. To achieve such system design, the use of the well known Image-Based Visual Servoing (IBVS) technique was exploited. While most IBVS techniques either require rigor camera calibration, the proposed approach avoids the calibration phase by relying on image moments features. In order to build and maintain a LF configuration of multi aerial vehicles (UAVs) without communication, a predictive component should be provided, to compensate for the missed crucial information. A classical extended Kalman filter was designed to compensate for the leader's robot velocity utilizing only the visibility of the leader. One important feature of the designed feature was that the follower robot's algorithm works in GNSS-denied conditions and can run using only on-board sensors without the need of absolute positioning. The method is validated in simulation and through experimental result with the same setup as the preceding chapter.

Alignment of three Robots

In the preceding two chapters, the MRS was designed around the LF configuration. As a matter of having a more naturally emerging algorithm, in this last proposition, an algorithm that rely only on the angles in between 3 robots, exploit the triangular to form a line. The algorithms didn't require any communication in between the robots. Only bearing measurements were exploited and required for such algorithm to succeed given the limited narrow cases in the chapter where it will fail. Such algorithm is tested in simulation. In the future could be tested practically, which eventually would work given the appropriate equipment, since the simulator used was similar to the one used in the aforementioned proposed methods.

Future Perspectives

It would be much more recommended to use Unscented Kalman Filter (UKF) instead of the used Extended Kalman Filter. That would have positive impact on the predictive stage of the filter. Since it is a highly non linear state, UKF would be better handle it, than the EKF. A deeper theoretical analysis should be investigated In the context of a LF MRS, another architecture for the estimation and prediction of the leader's velocity could be Model Predictive Controller (MPC) family of techniques. In the recent literature, MPC is being deployed in the robotics community.

There are numerous papers in literature that utilize Reinforcement Learning (RL) to do end-to-end autonomous flying policies. An important point is to test such policies instead of the classical hand crafted controllers. Another important study could be whether an end-to-end policy for multi system coordination possible in the current phase of scientific advancement. In this direction there are many problems to encounter like whether sim-to-real policy transfer possible or not. The efficiency of the policy to be able to run only using onboard sensing and computing power.

Since most of the real useful applications of a aerial MRS are outdoor, then the exploiting of the novel and emerging sensing capabilities should be studied as well. Among the direct and already studied systems are the papers [START_REF] Walter | Uvdar system for visual relative localization with application to leader-follower formations of multirotor uavs[END_REF] where ultraviolet Light-emitting diode (LED) are used as fiducial markers and camera with ultraviolet lens mounted on the follower quadrotor was used to detect such LEDs, then a tracking algorithm forms a LF configuration. The merge of such sensors with the algorithms developed in this thesis is very compatible with important benefits toward deploying in real world scenario.

While this thesis focused on autonomous solutions, the author is encouraging the wide adaptation of Human-In-The-Loop (HITL) in MRS. Currently there are researchers working on Human Robot Interaction (HRI), and some papers are valid within the framework on Human multi Robot Interaction. As well as teleoperation and bilateral teleoperation for MRS should be studied. This perspective can help shortening the gap between the researched algorithms and the deployment of such algorithms in real world scenario.

                     ẋ ẏ ż u v w φ θ ψ p q r                      =                       

APPENDIX C Real Robots

ROTORS [START_REF] Furrer | Robot Operating System (ROS): The Complete Reference (Volume 1), chapter RotorS-A Modular Gazebo MAV Simulator Framework[END_REF] is chosen to simulate the real flight of a UAV. The simulation can give some realistic fidelity scenes which can then be captured by simulated cameras mounted on those UAVs. Particularly a pinhole model is used. It is an open source package widely known and used within the aerial robotics researchers and practitioners for its benefits in reducing the gap between simulation and real experiments.

It is considered nowadays, that the UAV/MAV has multiple layers of control. The low level layer handles basic flight operations, which includes attitude control, height control, and velocity estimation and control. These operations are done onboard in real time manner usually programmed on a custom DSP.

Real robots used to validate the algorithms experimentally are going to be discussed in the following section.

C.0.1 Quadrotor

Bebop is a quadrotor type of a UAV it is commercial off the shelf drone. It can be shown in the figure C.1. The drone is having many on board sensors that are essential for the flight controller to be successful.

It first came to market by Parrot in 2015. The version that is used in the experimentation is Bebop 2. It is suited with a developer SDK, which is then wrapped into a ROS package 1 . The codes developed can be in Python or C++ as a publisher/subscriber mechanisms complying with the ROS mechanisms. It is equipped with the common hardware sensing IMU, camera, optical flow sensor, etc. The Bebop drone is also simulated in Gazebo as the ROTORS framework in the paper [START_REF] Silano | Software-in-the-loop simulation for improving flight control system design: a quadrotor case study[END_REF].

C.0.2 Omni-directional Mobile Robot

An omni-directional mobile robot is also used in the experiments The mobile robot has a fiducial marker primarily to do identification. It is mounted on a tower attached to the mobile robot to imitate the motion of an omni-directional aerial robot (i.e: quadrotor). Such fiducial markers are widely used in the augmented reality research and development community. It is used either to simplify feature extraction in the environment or as a ground truth for markerless algorithms. Fiducial markers have been widely used in robotics society. They are on Mars indeed on an extraterrestrial robots. Curiosity rover from NASA is already engraved with many markers specifically AR tag among others 2 . That is used in the camera calibration algorithms, arm relative positioning, and robot intrinsic parameters calibration, i.e: wheels are wearing, motors efficiency is deteriorating or changing, etc.

There exist today several markers in literature. One of the studies that draws comparison between different types of these markers can be found in [START_REF] Kalaitzakis | Experimental comparison of fiducial markers for pose estimation[END_REF]. The choice of the marker was fallen on Apriltag Any vector in a three-dimensional space can be rotated from one reference frame to another (for example a body frame), i.e., v = q * ⊗ v ⊗ q where v ∈ R 3 and v ∈ R 3 are in the fixed and body frames respectively. Any rotation can be expressed by its axis-angle representation, which is composed by a direction vector ē ∈ R 3 , ē = 1 and its angle θ ∈ R, as depicted in Figure 1. This yields to a single vector θ = θē with θ ∈ R 3 .

The Euler-Rodrigues Formula then relates this rotation vector to a unit quaternion as q = cos(θ/2)+ ē sin(θ/2)

A logarithmic mapping can be used to change any unit quaternion to the axis-angle representation θ = 2 ln q, θ = ω, where ln q = ln q + q q arccos q 0 q , q = 0 ln q , q = 0 Note that the Euler-Rodriques implies that q = 1, thus the scalar part of the quaternion logarithm is zero, implying that ln q ∈ R 3 ∀q|q 0 = 0. very useful quaternion visualization tool: 1 .

Homogeneous coordinates is used widely to represent 3d points on 2d image in projective geometry. They can express transformations as matrices, for further doing computation on them. The second key importance is representing points at infinity which is useful for geometric reconstruction algorithms of visual systems.

A lot of geometric operations can be done in homogeneous coordinates like translation rotation scale change. As well as several transformations such as similarity, affine, and projective. translation in matrix form:

I t 0 T 1
Point shifted by t: x = x 1 https://eater.net/quaternions/

2. 1 5 . 1 1 . 1

 15111 Centralized control architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Distributed control architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Decentralized control architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Task allocation in Centralized (a) and Decentralized (b) architectures. . . . . . . . . . . . . 2.5 Virtual Rigid Body visualisation in (a), and Formation switching in (b) [1] . . . . . . . . . . 3.1 Frames relations between Leader and follower UAVs. As well as reference to the ground. . 3.2 Circular trajectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Linear trajectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Follower 1 (linear trajectory) x uav tracking error (e 1x ) | model control input (U 1mx ) | x model error (e 1mx ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Follower 1 (linear trajectory) y uav tracking error (e 1y ) | model control input (U 1my ) | y model error (e 1my ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Follower 1 (circular trajectory) x uav tracking error (e 1x ) | model control input (U 1mx ) | x model error (e 1mx ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7 Follower 1 (circular trajectory) y uav tracking error (e 1y ) | model control input (U 1my ) | y model error (e 1my ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8 Gazebo Simulation for LF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.9 Desired distance in between the leader and follower. . . . . . . . . . . . . . . . . . . . . . . 3.10 Real Experimental setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11 Error according to x,y,z in meters vs time in seconds. . . . . . . . . . . . . . . . . . . . . . 3.12 Error according to x,y,z in meters vs time in seconds. . . . . . . . . . . . . . . . . . . . . . 4.1 Gazebo simulation for LF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Velocity frames transformation from the image to the world . . . . . . . . . . . . . . . . . . 4.3 Image Moments desired vs detected. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Distances spacings according to the desired (X, Y, Z) between robot 2 "considered as follower 1" and the leader. The final phase starting at 465 seconds is for landing . . . . . . . . 4.5 Distances spacings according to the desired (X, Y, Z) between robot 2 "considered as follower 1" and the leader. The final phase starting at 465 seconds is for landing. . . . . . . . . 4.6 Absolute distance spacing vs velocities commanded. . . . . . . . . . . . . . . . . . . . . . 4.7 Real experimental setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8 Pixel error vs time in LF framework. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.9 Pixel error vs time in LF framework at faster velocity. . . . . . . . . . . . . . . . . . . . . . 4.10 Pixel error vs time in LF framework. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.11 Velocities output of the drone vs time in LF framework. . . . . . . . . . . . . . . . . . . . . x Arbitrary position of the three robots. Each robot is able to measure its γ angle, the angle it forms with the two other robots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Initially, D 3 will not move since γ 3 < π/3, D 1 starts moving in the direction of the bisector of its γ value since γ 1 > π/2 and D 2 starts moving in the direction of one of the two other robots (D 1 is randomly chosen in the present case), since π/3 < γ 2 < π/2 (a). While dγ 1 /dt ≥ 0 and dγ 2 /dt ≥ 0, both D 1 and D 2 keep on moving (b). Note that γ denotes the new value of the γ angle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 The six different moving scenarii according to Algorithm 1. . . . . . . . . . . . . . . . . . 5.4 Scenario 1. Case (a) γ 1 > π/2 > π/3 > γ 2 > γ 3 and case (b) π/2 > γ 1 > π/3 > γ 2 > γ 3 5.5 Scenario 3. Initially γ 1 > π/2 and γ 2 > π/3. When D 1 and D 2 are moving, γ 1 increases while γ 2 decreases, then according to the algorithm D 2 stops, leading to a situation corresponding to Scenario 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6 Scenario 4. Initially γ 1 > π/3 and γ 2 > π/3 and during the movement dγ 1 /dt > 0 and dγ 2 /dt > 0. After some time, γ 1 > π/2 leading to a situation corresponding to Scenario 3. 5.7 Scenario 5. Initially π/3 < γ 1 < π/2 and π/3 < γ 2 < π/2. As soon as D 1 and D 2 are moving, γ 2 increases and γ 1 decreases, leading to Scenario 1, a situation where only one robot is moving. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8 Scenario 6. Initially π/3 < γ 2 < γ 1 < π/2. As soon as D 1 and D 2 are moving, γ 2 decreases and γ 1 increases, leading to Scenario 1, a situation where only one robot is moving. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9 Scenario 2. Initially γ 1 > π/2 and γ 2 > π/3. When D 1 and D 2 are moving, both γ 1 and γ 2 may increase and the evolution may lead to a collision. . . . . . . . . . . . . . . . . . . . . 5.10 Illustration of a situation where all the constraints are met: γ 3 < π/6, π/3 < γ 2 < π/2 and π/2 ≤ γ 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.11 According to the constraint π/3 < γ 2 < π/2, the possible positions for D 2 are within the blue sector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.12 In order to respect the constraints: π/3 < γ 2 < π/2 ≤ γ 1 , the possible positions of D 1 are within the blue sector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.1 Bebop quadrotor on the experimental ground. . . . . . . . . . . . . . . . . . . . . . . . . . C.2 Summit XL Steel omni ground mobile robot with a tower augmented with fiducial marker. . Generalities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3 Thesis Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.4 Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Figure 2 . 1 :

 21 Figure 2.1: Centralized control architecture.

Figure 2 . 2 :

 22 Figure 2.2: Distributed control architecture.

Figure 2 .

 2 [START_REF] Cao | Cooperative mobile robotics: Antecedents and directions[END_REF] shows more clearly the separation of interest property in the architecture.

Figure 2 . 3 :

 23 Figure 2.3: Decentralized control architecture.

Figure 2 . 4 :

 24 Figure 2.4: Task allocation in Centralized (a) and Decentralized (b) architectures.

Figure 2 .

 2 5 is showing the visualisation of the realistic experiments mentioned in the paper.

Figure 2 . 5 :

 25 Figure 2.5: Virtual Rigid Body visualisation in (a), and Formation switching in (b)[START_REF] Zhou | Virtual rigid bodies for coordinated agile maneuvering of teams of micro aerial vehicles[END_REF]

CHAPTER 3 Decentralized

 3 High-Level Controller for Formation Flight Control of UAVs Contents 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.2 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.3 Design of The High Level Controller . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.3.1 Double Exponential Smoothing (DES) algorithm . . . . . . . . . . . . . . . 34 3.3.2 Design of the tuning-less high level controller . . . . . . . . . . . . . . . . . 36 3.3.3 Leader UAV velocities estimation . . . . . . . . . . . . . . . . . . . . . . . 37 3.4 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.4.1 Matlab-Simulink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.4.2 Gazebo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.5 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.5.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.5.2 Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.5.3 Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.5.4 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.6 Conclusion and Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Figure 3 . 1 :

 31 Figure 3.1: Frames relations between Leader and follower UAVs. As well as reference to the ground.

  1n , θ 1n are the values of d 1 and θ 1 at n th sample, d1n , θ1n are the smoothed values of d 1n and θ 1n , b d 1n , b θ 1n are the trends values of d 1n and θ 1n d1n+m = d1n + m.b d 1n θ1n+m = θ1n + m.b θ 1n (3.5) The initial values given to d1n , θ1n , b d 1n , and b θ 1n are: d11 = d 11 , θ11 = θ 11 , b d 11 = d 12 -d 11 , b θ 1n = θ 12 -θ 11 (3.6)

Figure 3 . 2 :

 32 Figure 3.2: Circular trajectory

Figure 3 . 3 :

 33 Figure 3.3: Linear trajectory

Figure 3 . 4 :Figure 3 . 5 :Figure 3 . 6 :Figure 3 . 7 :Figure 3 . 8 :

 3435363738 Figure 3.4: Follower 1 (linear trajectory) x uav tracking error (e 1x ) | model control input (U 1mx ) | x model error (e 1mx )

Figure 3 . 9 :

 39 Figure 3.9: Desired distance in between the leader and follower.

Figure 3 . 10 :

 310 Figure 3.10: Real Experimental setup.

Figure 3 . 11 :

 311 Figure 3.11: Error according to x,y,z in meters vs time in seconds.

Figure 4 . 1 :

 41 Figure 4.1: Gazebo simulation for LF.

Figure 4 . 2 :

 42 Figure 4.2: Velocity frames transformation from the image to the world

Figure 4 . 3 :

 43 Figure 4.3: Image Moments desired vs detected.

Figure 4 . 4 :

 44 Figure 4.4: Distances spacings according to the desired (X, Y, Z) between robot 2 "considered as follower 1" and the leader. The final phase starting at 465 seconds is for landing

Figure 4 . 5 :

 45 Figure 4.5: Distances spacings according to the desired (X, Y, Z) between robot 2 "considered as follower 1" and the leader. The final phase starting at 465 seconds is for landing.

Figure 4 . 6 :

 46 Figure 4.6: Absolute distance spacing vs velocities commanded.

Figure 4 . 7 :

 47 Figure 4.7: Real experimental setup

Figure 4 . 8 :

 48 Figure 4.8: Pixel error vs time in LF framework.

Figure 4 . 9 :

 49 Figure 4.9: Pixel error vs time in LF framework at faster velocity.

Figure 4 . 10 :

 410 Figure 4.10: Pixel error vs time in LF framework.

Figure 4 . 11 :

 411 Figure 4.11: Velocities output of the drone vs time in LF framework.

D 1 D 2 D 3 γFigure 5 . 1 :

 12351 Figure 5.1: Arbitrary position of the three robots. Each robot is able to measure its γ angle, the angle it forms with the two other robots.

else 15 :Figure 5 . 2 :

 1552 Figure 5.2: Initially, D 3 will not move since γ 3 < π/3, D 1 starts moving in the direction of the bisector of its γ value since γ 1 > π/2 and D 2 starts moving in the direction of one of the two other robots (D 1 is randomly chosen in the present case), since π/3 < γ 2 < π/2 (a). While dγ 1 /dt ≥ 0 and dγ 2 /dt ≥ 0, both D 1 and D 2 keep on moving (b). Note that γ denotes the new value of the γ angle.

D 2 .Lemma 3 .

 23 Either D 2 moves in the direction of D 3 , leading to Scenario 2 on Figure 5.3, or in the direction of D 1 corresponding to Scenario 3. Finally, for the last case (5), there exist three possible combinations of movements: (i) D 1 and D 2 are moving in opposite directions: Scenario 4, (ii) only one of the two robots, D 1 or D 2 , is moving to D 3 leading to Scenario 5, or (iii) both D 1 and D 2 are moving in the direction of D 3 , corresponding to Scenario 6. When γ 2 = γ 1 , for scenarii 4 and 6 the algorithm reaches a degenerated alignment if collisions are not considered and it fails if not.

Figure 5 . 3 :

 53 Figure 5.3: The six different moving scenarii according to Algorithm 1.

Figure 5 . 4 : 3 Lemma 5 .

 5435 Figure 5.4: Scenario 1. Case(a) γ 1 > π/2 > π/3 > γ 2 > γ 3 and case (b) π/2 > γ 1 > π/3 > γ 2 > γ 3

Figure 5 . 5 :

 55 Figure 5.5: Scenario 3. Initially γ 1 > π/2 and γ 2 > π/3. When D 1 and D 2 are moving, γ 1 increases while γ 2 decreases, then according to the algorithm D 2 stops, leading to a situation corresponding to Scenario 1.

Figure 5 . 6 :

 56 Figure 5.6: Scenario 4. Initially γ 1 > π/3 and γ 2 > π/3 and during the movement dγ 1 /dt > 0 and dγ 2 /dt > 0. After some time, γ 1 > π/2 leading to a situation corresponding to Scenario 3.

Figure 5 . 7 :

 57 Figure 5.7: Scenario 5. Initially π/3 < γ 1 < π/2 and π/3 < γ 2 < π/2. As soon as D 1 and D 2 are moving, γ 2 increases and γ 1 decreases, leading to Scenario 1, a situation where only one robot is moving.

Figure 5 . 8 :

 58 Figure 5.8: Scenario 6. Initially π/3 < γ 2 < γ 1 < π/2. As soon as D 1 and D 2 are moving, γ 2 decreases and γ 1 increases, leading to Scenario 1, a situation where only one robot is moving.

2 Figure 5 . 9 : 3 D 1 D 2 γ 1 > π/ 2 γ 2 > π/3 γ 3 < π/ 6 Figure 5 . 10 :

 25931212236510 Figure 5.9: Scenario 2. Initially γ 1 > π/2 and γ 2 > π/3. When D 1 and D 2 are moving, both γ 1 and γ 2 may increase and the evolution may lead to a collision.

γ 2 = π/ 3 γ 2 = π/ 3 Figure 5 . 11 : 3 D1 extreme position with respect to D2 possible positions for D1 D 2 Figure 5 . 12 :

 232351132512 Figure 5.11: According to the constraint π/3 < γ 2 < π/2, the possible positions for D 2 are within the blue sector.

1 :

 1 For each scenario: percentage of occurrences and percentage of unsuccessful runs.

5 )

 5 w[s(φ)s(ψ) + c(φ)c(ψ)s(θ)] -v[c(φ)s(ψ) -c(ψ)s(φ)s(θ)] + u[c(ψ)c(θ)] v[c(φ)c(ψ) + s(φ)s(ψ)s(θ)] -w[c(ψ)s(φ) -c(φ)s(ψ)s(θ)] + u[c(θ)s(ψ)] w[c(φ)c(θ)] -u[s(θ)] + v[c(θ)s(φ)] rv -qw -gs(θ) pw -ru + gc(θ)s(θ) qu -pv + gc(θ)s(θ) -F/m p + r[c(φ)t(θ)] + q[s(φ)t(θ)] q[c(φ)] -r[s(φm(ω B ∧ ν B + ν B ) = f B (A.4) m mass, ∧ cross product, f B = f x f y f z T ∈ R 3Dynamic model in the body frameI. ωB + ω B ∧ (I.ω B ) = m B u + qw -rv) m( v -pw + ru) m( ẇ + pv -qu) ṗI x -qrI y + qrI z qI y + prI x -prI z ṙI z -pqI x + pqI y

Figure C. 1 :

 1 Figure C.1: Bebop quadrotor on the experimental ground.

  Contents 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.2 Formation Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.2.1 Methods in Literature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2.2 Multi Robot Systems Rigidity . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2.3 Formation Evaluation and Analysis . . . . . . . . . . . . . . . . . . . . . . 28 2.2.4 Stability notions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.3 Swarm, Algorithmic Methods for Pattern Formation . . . . . . . . . . . . . . . . . . 29 2.3.1 Consensus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.3.2 Multi Robot Path Planning and Task Allocation . . . . . . . . . . . . . . . . 30

Table 5 .

 5 2: Percentage of success for Algorithm 1 according to the different combination of the parameters. Each cell of the table is the result of 100000 runs

	d sec /L 300 500 1000
	0	100 100	100
	5	99.0 99.4 99.7
	10	97.9 98.8 99.4
	15	96.9 98.3 99.2

AprilTag

2: Efficient and robust fiducial detection, Wang et al, IROS 2016, https://github.com/ AprilRobotics/apriltag

https://github.com/AutonomyLab/bebop_autonomy

https://mars.nasa.gov/raw_images/944849?site=msl

AprilTag 2: Efficient and robust fiducial detection, Wang et al, IROS 2016, https://github.com/ AprilRobotics/apriltagFigure C.2: Summit XL Steel omni ground mobile robot with a tower augmented with fiducial marker.

Remerciements

Many thanks. i

APPENDIX A UAV Dynamic model

This section describes the dynamics of Drones using Newton's and Euler's equations. That would align much with the results of the paper and PhD thesis [START_REF] Bouabdallah | Full control of a quadrotor[END_REF][START_REF] Bouabdallah | Design and control of quadrotors with application to autonomous flying[END_REF] . As well as the described toolbox in [START_REF] Perozzi | A toolbox for quadrotors: from aerodynamic science to control theory[END_REF] The model can be described as follows. A vector of linear velocity and angular velocity. The linear frame's angular velocity is based on the frame of the body frame. The dynamics of the drones in relation to a world reference frame.

[x y z φ θ ψ] T (linear/angular position)

[u v w p q r] T (Inertial frame)

The angular transformation can be represented as:

where

APPENDIX B Camera Model and Camera Calibration

Camera calibration can be summed up as the process of estimating the parameters of a pinhole camera model [START_REF] Andrew | Multiple view geometry in computer vision[END_REF]. The important output is obtaining the correct values for the intrinsics and extrensics properties.

Intrinsic parameters matrix can be represented as follows:

where f x , f y is considered as focal length according to x and y axis respectively. While c x , c y represents the camera center x and y.

Camera calibration process for the ubiquitous perspective cameras can be done using the widely available open source library openCV, which found in https://docs.opencv.org/4.5.3/ dc/dbb/tutorial_py_calibration.html. The calibration setup is rather simple, it just requires printing a checkerboard and mounting it on a flat surface, then following some straightforward proceedures.

For omnidirectional cameras, some recent advances such as [START_REF] Rehder | Extending kalibr: Calibrating the extrinsics of multiple imus and of individual axes[END_REF], provides solutions to simplify the calibration process. The authors provide a library that can be found in: https://github. com/ethz-asl/kalibr APPENDIX D

Quaternion

A quaternion is basically a type of complex number that consists of four values, one of which is real, while the other three are imaginary [START_REF] De | Dynamic model based formation control and obstacle avoidance of multi-robot systems[END_REF][START_REF] Cowan | Vision-based follow-the-leader[END_REF][START_REF] Omar | Robust vision-based nonlinear formation control[END_REF][START_REF] Da Mercado | Quadrotors flight formation control using a leaderfollower approach[END_REF]. The quaternion space is denoted by H. Let q be a quaternion expresses by:

where q represents the complex vectorial part of q, and q 0 denotes the scalar part of q. Note that if q 0 = 0, then q = q, thus q ∈ R 3 , this implies that R 3 is a subset of H in which q 0 = 0.

The quaternion basic operations are:

• Quaternion multiplication q ⊗ r = (q 0 r 0 -q • r) + (r 0 q + q 0 r + q × r)

• Norm of a quaternion q

In case that |q = 1, q represents an unit quaternion • Quaternion conjugate q -1 = q -1 q *

• Quaternion inverse

If q is unitary, then the inverse and the norm are equivalent. • The derivative of a quaternion

where ω represents the angular velocity.

APPENDIX E Publications