Vous êtes sur la page 1sur 149

‫امجلهورية اجلزائرية ادلميقراطية الشعبية‬

‫وزارة التعلمي العايل و البحث العلمي‬


‫جامعة وهران للعلوم و التكنولوجيا محمد بوضياف‬

Présenté par : Mr. ZAREB Mohamed El Mehdi

Utilisation des techniques du soft-computing pour la commande


des systèmes non linéaires : application sur un mini hélicoptère

Faculté : Faculté de génie électrique

Département : Électronique

Spécialité : Électronique

Option : Automatique

Devant le Jury Composé de :

Membres de Jury Grade Qualité Domiciliation


Mr. MIDOUN Abdelhamid Pr Président USTO-MB
Mr. NOUIBAT Wahid Pr Encadrant USTO-MB
Mr. TAHOUR Ahmed Pr ESSE-Tlemcen
Mr. OMARI Abdelhafid Pr USTO-MB
Examinateurs
Mr. ELKEBIR Abdelkader MCA Université de Mascara
Mr. KHELFI Mohamed Fayçal Pr Université Oran 1
Mr. BOUZID Yasser MCB Invité CSCS Bordj elbahri

Année Universitaire : 2019-2020


Résumé

Ce travail traite la méthodologie de concevoir un pilote automatique pour un drone type quadricoptère,
simple à mettre en œuvre, moins gourmand en énergie et plus performant. Mais, ces performances sont
conditionnées par le choix des paramètres du pilote automatique . Pour résoudre ce problème, nous avons
élaboré une approche hors-ligne appelée Système évolutif de contrôle du vol (SECV), basée sur des al-
gorithmes génétiques. Comme cela a été montré dans le travail présenté dans cette thèse les algorithmes
génétiques peuvent être une solution pour résoudre le problème du réglage des paramètres d’un système
de contrôle du vol, néanmoins, leur utilisation est conditionnée par certaines caractéristiques du problème
comme : le temps de calcul de la fonction d’évaluation (fitness fonction) qui doit être raisonnablement courts,
en effet nous avons proposé une solution pour celle-ci dans l’approche développée ; le nombre de solutions
important, car l’utilisation des algorithmes génétiques comme nous l’avons vu engendrera le risque d’obte-
nir une solution non optimale, afin de l’éviter nous avons proposé une solution de configuration automatique
des algorithmes génétiques. L’apparition d’un nouveau cadre de contrôle robotique en temps réel comme
ROS (Robot Operating System) a simplifié la mise en œuvre. Les résultats des simulations numériques et de
l’expérimentation réalisée sur l’AR-Drone ont validé l’utilité d’implémenter le SECV pour l’amélioration
de la précision, la rapidité et la robustesse du contrôle.

Mots-clés : Soft-Computing, la logique Floue, contrôleur flou, contrôleur PID, les algorithmes géné-
tiques, drone, pilote automatique, quadrotor, AR-Drone, ROS.

In English : This work deals with the methodology of designing an autopilot for a quadcopter type UAV,
simple to implement, less energy-consuming, and more efficient. However, these performances are condi-
tioned by the choice of the autopilot parameters. To solve this problem, we developed an off-line approach
called Evolutionary Flight Control System (SECV), based on genetic algorithms. As shown in the work pre-
sented in this thesis, genetic algorithms can be a solution to solve the problem of adjusting the parameters
of a flight control system, however, their use is conditioned by some characteristics of the problem such
as the computation time of the fitness function, which must be reasonably short, indeed we have proposed
a solution for it in the developed approach ; the important number of solutions, because the use of genetic
algorithms as we have seen will generate the risk of obtaining a non-optimal solution, to avoid it we have
proposed a solution for the automatic configuration of genetic algorithms. The appearance of a new real-time
robotic control framework such as ROS (Robot Operating System) has simplified the implementation. The
results of numerical simulations and experimentation carried out on the AR-Drone validated the usefulness
of implementing SECV to improve the accuracy, speed, and robustness of the control.

Keywords : Soft Computing, Fuzzy logic, Fuzzy controller, PID controller, genetic algorithm, UAV,
UAS, autopilot, quadrotor, AR-Drone, ROS.

2
Table des matières

Table des figures 6

Liste des tableaux 10

1 Introduction générale 12

2 État de l’art 16
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2 Systèmes d’inférence floue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Réseaux de neurones artificiels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4 Swarm Intelligence ou Intelligence en l’essaim . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.5 Les algorithmes génétiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.6 Systèmes évolutifs hybrides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.6.1 Systèmes neuro-flou . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.6.2 Algorithme génétique flou . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6.3 Systèmes Neuro-Flous évolutifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6.4 Apprentissage PSO génétique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7 Les approches intelligentes Appliquées dans la commande des drones . . . . . . . . . . . . . 24
2.7.1 La modélisation et les systèmes de contrôle de vol intelligents . . . . . . . . . . . . . 24
2.8 Les opportunités et les défis des systèmes de vol intelligent . . . . . . . . . . . . . . . . . . . 30
2.8.1 Le calcul informatique et les capacités du système . . . . . . . . . . . . . . . . . . . 30
2.8.2 Apprentissage en ligne : structurel et paramétrique . . . . . . . . . . . . . . . . . . . 31
2.8.3 Accélération du temps d’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.8.4 Incertitudes dans la distribution et la représentation des données . . . . . . . . . . . . 32
2.8.5 Dilemme de Stabilité-plasticité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.8.6 La dimensionnalité des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.8.7 Charges utiles limitées et environnement de vol . . . . . . . . . . . . . . . . . . . . . 33
2.9 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.10 Contributions et Motivation du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.10.1 La motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.10.2 Les problématiques et les contributions du travail réalisé . . . . . . . . . . . . . . . . 35

3
2.11 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

3 Aperçu des systèmes Drones 37


3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2 Définition d’un drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3 Histoire des drones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.4 Classification des drones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.5 Les catégories de drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.6 Les types de drones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.6.1 Les drones Quadricoptères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.6.2 Les drones Hexacoptères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.6.3 Les drones à aile fixe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.6.4 Les drones à aile battante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.6.5 Les drones à monorotor , coaxial et à ventilateur . . . . . . . . . . . . . . . . . . . . 49
3.6.6 Les drones Octocoptère, Glider, Blimp et Ionic Flyer . . . . . . . . . . . . . . . . . . 49
3.6.7 Les drones Cyclocoptére, Spincopter, Coanda, Parafoil et Kite . . . . . . . . . . . . . 51
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

4 Modélisation et identification des drones quadricoptère 54


4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2 Modèle mathématique du drone quadricoptère . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2.1 Représentation des repères utilisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3 Les mouvements principaux de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.1 Les mouvements de tangage et de roulis . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.2 La variation du lacet et d’altitude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.4 Identification des mouvements de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.4.1 Identification du modèle de tangage et de roulis . . . . . . . . . . . . . . . . . . . . . 62
4.4.2 Identification de la variation de lacet et d’altitude . . . . . . . . . . . . . . . . . . . . 65
4.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

5 Système de contrôle de vol intelligent (SCVI) pour les drones quadricoptères 70


5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.2 Définition du pilote automatique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.3 Le choix d’une stratégie de commande pour les drones quadricoptères . . . . . . . . . . . . . 71
5.4 La présentation du pilote automatique SCVI . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.5 L’approche évolutive du réglage des paramètres du SCVI . . . . . . . . . . . . . . . . . . . . 77
5.5.1 La formulation mathématique du problème de réglage . . . . . . . . . . . . . . . . . 77
5.5.2 Système évolutif de contrôle de vol (SECV) . . . . . . . . . . . . . . . . . . . . . . . 78
5.6 La configuration automatique des algorithmes génétiques . . . . . . . . . . . . . . . . . . . . 82
5.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

6 Mise en œuvre du système et expérimentations 86

4
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.2 Les résultats de simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.2.1 La configuration manuelle des algorithmes génétiques . . . . . . . . . . . . . . . . . 88
6.2.2 Les tests de performance du SECV . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.2.3 La configuration automatique des algorithmes génétiques Bi-GA . . . . . . . . . . . . 91
6.2.4 Analyse de stabilité du SECV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.3 Les résultats expérimentaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4 Un exemple d’application du drone qui utilise le SECV . . . . . . . . . . . . . . . . . . . . . 109
6.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

7 Conclusion générale 117

A ROS " Robot Operating System" 120


A.1 Définition du système d’exploitation des robots ROS . . . . . . . . . . . . . . . . . . . . . . 120
A.2 L’historique du ROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
A.3 Les concepts de base du ROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
A.3.1 Les nœuds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
A.3.2 Le cœur du ROS "Master" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
A.3.3 Les topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
A.3.4 Les messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
A.3.5 Les services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
A.3.6 Les bags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
A.3.7 Les packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
A.3.8 Les Stacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
A.4 Présentation du pilote ardrone_autonomy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
A.5 Les données de navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
A.6 Les commandes de vol principales de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . 126
A.6.1 Le décollage du drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
A.6.2 L’atterrissage du drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
A.6.3 L’état d’urgence du drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
A.6.4 La manipulation des camera du drone . . . . . . . . . . . . . . . . . . . . . . . . . . 129
A.6.5 Les déplacements principales du drone . . . . . . . . . . . . . . . . . . . . . . . . . 129
A.7 Le pilote tum_ardrone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
A.8 Présentation de l’outil de simulation Gazebo . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

Bibliographie 133

5
Table des figures

2.1 Concept de systèmes intelligents hybrides : les systèmes neuro-évolutifs. Les systèmes flous. La
lettre "S" désigne système. La lettre "F" désigne les systèmes flous, la lettre "E" représente les
algorithmes évolutifs et la lettre "N" représente les systèmes RNA (traduit de [42]). . . . . . . . . 22

3.1 ABBAS IBN FIRNAS l’homme volant (Portrait par Eulogia Merle) [211] . . . . . . . . . . . . . 38
3.2 Maquette de la Vis Aérienne de Léonard de Vinci (Musée de Léonard de Vinci, Italie) [212] . . . 38
3.3 Le premier vol habité en utilisant un ballon à air chaud a eu lieu en 1783 en France (Dessin de
Claude-Louis Desrais) [214] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.4 Photo du drone Kettering [215] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.5 Photo de l’avion automatique Curtiss-Sperry N-9 [216] . . . . . . . . . . . . . . . . . . . . . . . 39
3.6 Photo du drone Queen Bee et sa station de contrôle au sol [221], [215] . . . . . . . . . . . . . . . 40
3.7 Photo de Reginald Denny et son ’Radioplane’ RP-1 [217] . . . . . . . . . . . . . . . . . . . . . . 40
3.8 La bombe volante V-1 [218] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.9 Photo de la bombe ASM-N-2 BAT (SWOD Mk 9) [219] . . . . . . . . . . . . . . . . . . . . . . 40
3.10 Photo du drone AQM-34 Ryan Firebee [220] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.11 Photo du drone D21 [221] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.12 Photo du drone Pathfinder-Plus [222] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.13 Photo du drone AAI Aerosonde [223] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.14 Photo du drone RQ-1 [224] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.15 Photo du drone Global Hawk RQ-4 [225] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.16 Photo du drone DJI [226] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.17 Photo du drone DJI Inspire utilisé pour inspection [227] . . . . . . . . . . . . . . . . . . . . . . . 42
3.18 Les types de drones courants (inspiré de [110]) . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.19 Les deux méthodes de catégorisation des drones trouvées dans la littérature. . . . . . . . . . . . . 44
3.20 Les plates-formes quadricoptères (dans l’ordre alphabétique [135], [93], [228] , [1], [56] et [165] ) 45
3.21 Les plates-formes hexacoptères (dans l’ordre alphabétique [38], [197], [127] et [154]) . . . . . 46
3.22 Les plates-formes à aile fixe (dans l’ordre alphabétique [24], [180], [57] et [198] . . . . . . . . 48
3.23 Les plates-formes à aile battante (dans l’ordre alphabétique [150] et [140]) . . . . . . . . . . . . 48
3.24 Les plates-formes à monorotor, coaxial et à ventilateur (dans l’ordre alphabétique [117], [100] et
[36] ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

6
3.25 Les plates-formes Octocoptère, Planeur, Blimp et Ionic Flyer (dans l’ordre alphabétique [161],
[35], [49] et [141]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.26 Les plates-formes Cyclocopter, Spincopter, Coanda, Parafoil et Kite (dans l’ordre alphabétique
[175], [74], [131], [196], [47] et [73]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

4.1 Photo du drone quadricoptère AR-Drone V2.0 ; un test de vol au laboratoire IBISC-France . . . . 54
4.2 Les repères : inertiel, du corps et du véhicule . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3 Les forces agissent sur le quadricoptère . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.4 les mouvements principaux du quadricoptère : (1) stationnaire, (2) roulis, (3) tangage et (4) lacet. 58
4.5 Les forces du mouvement de tangage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.6 Réponse indicielle du contrôleur de tangage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.7 Comparaison entre les réponses de tangage en simulation et en expérimentation de l’AR-Drone
avec θdes = 1.2 ◦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.8 Réponse indicielle du contrôleur du roulis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.9 Comparaison entre les réponses de roulis en simulation et en expérimentation de l’AR-Drone avec
φdes = −1.2 ◦ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.10 Réponse indicielle du contrôleur de lacet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.11 Comparaison entre les réponses indicielles du lacet en simulation et en expérimentation de l’AR-
Drone avec ψ̇des = −100deg/s. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.12 Réponse indicielle du contrôleur de l’altitude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.13 La comparaison de la dynamique de l’altitude de l’AR-Drone avec żdes = 70mm/s . . . . . . . . 69

5.1 Structure générale du système de contrôle du vol . . . . . . . . . . . . . . . . . . . . . . . . . . 72


5.2 Structure d’un contrôleur flou type-PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.3 Les fonctions d’appartenance des entrées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.4 Les fonctions d’appartenance des sorties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.5 Mouvement longitudinal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.6 Mouvement latéral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.7 Schéma du principe de l’optimisation des paramètres du pilote automatique . . . . . . . . . . . . 78
5.8 Organigramme de la stratégie de réglage des paramètres du SCVI (où P1∗ et P2∗ représentent les
valeurs optimales) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

6.1 Simulateur de vol pour le drone AR-Drone v2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . 87


6.2 Schéma fonctionnel de la mise en œuvre du SCVI . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.3 Comparaison des réponses d’altitude/attitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.4 Réponse indicielle de l’altitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
6.5 Réponse des angles de tangage et du roulis en vol stationnaire . . . . . . . . . . . . . . . . . . . 91
6.6 Les signaux de commande de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.7 Réponse au mouvement de vol en trois dimensions de l’AR-Drone . . . . . . . . . . . . . . . . . 92
6.8 Comparaison des angles de roulis en utilisant des tailles de population différente de l’AG . . . . . 94
6.9 Comparaison de l’angle de tangage en utilisant des tailles de population différente de l’AG . . . . 95
6.10 Comparaison de l’angle de lacet en utilisant des tailles de population différente de l’AG . . . . . 96

7
6.11 Comparaison d’altitude en utilisant des tailles de population différente de l’AG . . . . . . . . . . 96
6.12 Le scénario du vol suivi dans les expériences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.13 Comparaison de l’angle de tangage en utilisant la configuration manuelle et Bi-GA . . . . . . . . 98
6.14 Comparaison des angles de roulis en utilisant la configuration manuelle et Bi-GA . . . . . . . . . 99
6.15 Comparaison de l’angle de lacet en utilisant la configuration manuelle et Bi-GA . . . . . . . . . . 99
6.16 Comparaison de la réponse en altitude en utilisant la configuration manuelle et Bi-GA . . . . . . 100
6.17 Évaluation de la fonction fitness f4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.18 Réponses indicielle de la dynamique du tangage en utilisant différents paramètres SECV . . . . . 101
6.19 Comparaison des diagrammes Black-Nichols de tangage des différents paramètres SECV . . . . 101
6.20 Diagramme de Black-Nichols du roulis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.21 Schéma d’implémentation de l’SECV sur l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . 102
6.22 Réponse du déplacement longitudinal avec les paramètres SECV . . . . . . . . . . . . . . . . . . 103
6.23 Réponse du déplacement latéral avec les paramètres SECV . . . . . . . . . . . . . . . . . . . . . 104
6.24 La réponse de l’angle de roulis avec les paramètres SECV . . . . . . . . . . . . . . . . . . . . . 104
6.25 La réponse de l’angle de tangage avec les paramètres SECV . . . . . . . . . . . . . . . . . . . . 105
6.26 Réponse d’altitude avec les paramètres SECV . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.27 Comparaison des déplacements en trois dimensions . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.28 Expérimentation du mouvement longitudinal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.29 La réponse de l’angle de tangage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.30 Expérimentation du mouvement latéral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.31 Expérience d’angle de roulis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.32 Réponse 3D à l’aide des paramètres évolutifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
6.33 Réponse 3D sans utiliser les paramètres évolutifs . . . . . . . . . . . . . . . . . . . . . . . . . . 109
6.34 Comparaison 3D avec la variation des paramètres du drone . . . . . . . . . . . . . . . . . . . . . 110
6.35 Comparaison 3D avec de grandes variations de paramètres du drone . . . . . . . . . . . . . . . . 111
6.36 Le système d’inspection visuelle AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.37 Photo du fuselage à inspecter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.38 Première photo du fuselage inspecté par le drone . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.39 Deuxième photo du fuselage inspecté par le drone . . . . . . . . . . . . . . . . . . . . . . . . . 113
6.40 Solution de trajectoire proposée pour l’inspection visuelle VTOL . . . . . . . . . . . . . . . . . . 114
6.41 La spirale d’Archimède . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6.42 Trajectoire de type Boustrophédon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

A.1 Photo des symboles des versions de ROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121


A.2 Protocole de communication des nœuds et des topics . . . . . . . . . . . . . . . . . . . . . . . . 122
A.3 Présentation de la structure de ROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
A.4 Diagramme des nœuds et topics du package Tum_ardrone . . . . . . . . . . . . . . . . . . . . . 125
A.5 Diagramme des nœuds sous le topic Navdata . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
A.6 Diagramme des nœuds sous le topic du décollage . . . . . . . . . . . . . . . . . . . . . . . . . . 126
A.7 Diagramme de nœuds sous le topic de l’atterrissage . . . . . . . . . . . . . . . . . . . . . . . . . 127
A.8 Photos présentant le mode de décollage et d’atterrissage . . . . . . . . . . . . . . . . . . . . . . 127

8
A.9 La variation d’altitude du drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
A.10 La puissance des quatre moteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
A.11 Les trois accélérations linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
A.12 Les deux vitesses linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
A.13 Diagramme de nœuds sous le topic de l’arrêt d’urgence . . . . . . . . . . . . . . . . . . . . . . . 129
A.14 Photo prise par la camera de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
A.15 La fenêtre du tum_ardrone GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
A.16 Photo d’ensemble des boutons de clavier utilisés pour la commande de l’AR-Drone . . . . . . . . 131
A.17 Photo de Gazebo sur le test du mode de vol longitudinal . . . . . . . . . . . . . . . . . . . . . . . 131
A.18 Diagramme englobant les nœuds et les topics utilisés par le simulateur . . . . . . . . . . . . . . . 132

9
Liste des tableaux

4.1 Valeurs maximales des commandes du l’AR-Drone. . . . . . . . . . . . . . . . . . . . . . . . . . 61


4.2 Les paramètres du modèle linéaire de tangage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.3 Les paramètres du modèle linéaire du roulis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.4 Les paramètres du modèle linéaire du lacet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.5 Les paramètres du modèle linéaire de l’altitude. . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

6.1 Les paramètres physique de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88


6.2 Les paramètres AG choisis manuellement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.3 Les paramètres du SECV de l’AR-Drone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.4 Les Paramètres SECV ajustés en utilisant différentes tailles de population . . . . . . . . . . . . . 93
6.5 Comparaison entre les performances pour différentes tailles de population . . . . . . . . . . . . . 93
6.6 Configuration GA interne ajustée à l’aide de Bi-GA . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.7 Les Paramètres SECV résultants de l’utilisation de la configuration Bi-GA . . . . . . . . . . . . . 93
6.8 Comparaison entre les performances Manuelles et Bi-GA . . . . . . . . . . . . . . . . . . . . . 96
6.9 Comparaison des Performances SECV-BIGA et des travaux précédents . . . . . . . . . . . . . . . 97

10
Dédicace

Pour mes Parents, mes enfants Imed et Yasmina, mon épouse et pour mon Professeur Yasmina Bestaoui,
que Dieu ait son âme.

11
Chapitre 1

Introduction générale

L’utilisation des Drones ou UAV (véhicules aériens sans pilotes) civils est en pleine expansion. Ces sys-
tèmes aériens sans pilote ont séduit plusieurs industries. Les missions civiles des Drones sont en fait en cours
d’investigation dans de nombreux domaines d’application. Par exemple, les archéologues utilisent de petits
Drone pour l’imagerie aérienne [119], [41]. Pour l’agriculture de précision, les UAV (drones) sont équipés
de caméras multi-spectrales et de capteurs GPS pour collecter des données. Les images ainsi obtenues sont en-
suite exécutées à travers des algorithmes de traitement d’image ainsi que des techniques d’analyse géospatiale
pour détecter des plantes saines ou affectées par la maladie [155] et [48]. L’utilisation des Drones est plus
économique que l’utilisation d’images satellites. Parmi ces Drones, le quadricoptère se détache comme étant
l’un des appareils les plus prometteurs de par la diversité des applications, pour laquelle il peut être utilisé.
D’autres exemples d’utilisation des drones sont dans le transport de marchandises ; dont le géant du commerce
par internet Amazon [6], ou aussi la Poste de France qui utilise les drones quadricoptère pour la livraison de
leur colis [4]. D’autre part, dans la société de demain, appelée SMART Community les systèmes de drones
contiendront : des caméras et des unités de mesure inertielles, capteur GPS et les capteurs lasers et utltra-son, le
capteur Lidar. Ils contiendront aussi des algorithmes et des systèmes informatiques embarqué pour achever des
missions automatiques, tels que la surveillance, l’inspection, etc. Ce qui rendra les drones plus en plus sophis-
tiqués et difficile à commander (au sens large). Nous voulons dire par la commande au sens large des drones
l’ensemble de ; l’asservissement, la fusion de données, l’estimation des états du drone ou bien odométrie en six
degrés de liberté, le suivi de trajectoire, la reconnaissance de forme ou de couleur, l’évitement d’obstacle, la
commande des Drones en formation (commande de plusieurs drone en même temps). La communication aussi
elle joue un rôle important durant les missions de drone soit par le Wi-Fi ou bien par la RF (radio fréquences),
etc. Prenons un exemple d’utilisation du drone comme un outil pour aider les pompiers pour trouver et localiser
des victimes coincées dans un bâtiment en incendie. Les Drones équipés de caméra thermique, embarquée avec
des algorithmes de planification et de localisation pour qu’il puisse naviguer d’un étage vers l’autre, il doit par
conséquent utiliser des algorithmes pour voler via les escaliers, les fenêtres. À chaque étage, le drone vole via
les portes et doit scanner les endroits et les pièces susceptibles de contenir des individus en difficultés ou les
algorithmes de reconnaissance de forme et de traitement image pour le filtrage sont utilisés. Les drones doivent
envoyer les coordonnées de la victime aux pompiers, etc.

12
Toutes ces actions sont basées sur le système d’asservissement embarqué dans les cartes de commande
électroniques du drone, la commande ici est pris dans le sens de l’asservissement (systèmes de pilotage auto-
matique). Il faut noter que la synthèse d’un système de pilotage automatique et son implémentation pour un
drone est un défi et ceci à cause des différentes considérations : la première considération est liée au modèle
du système qui est non-linéaire et fortement couplé, là où nous trouvons de nombreux systèmes de contrôle
récent comme MPC (model-based control systems) [168] et [86] s’appuient toujours sur la disponibilité de
modèles mathématiques précis, en pratique, il n’existe aucun modèle mathématique parfait pour capturer toute
la dynamique de tous les systèmes. De plus, les erreurs dans la modélisation, il existe de nombreuses sources
d’incertitudes imprévisibles telles que les impacts négatifs des pannes de composants et des dommages struc-
turels qui devraient être pris en compte pour assurer une opération de vol sûre et fiable. Les techniques de
contrôles robustes nommées en anglais cutting-edge model-based robust controls sont utilisées dans [83], les
performances des contrôleurs robustes linéaires invariables (Exemple µ-synthesis [144], [159] et H∞ [157],
[69]) peuvent se détériorer face aux grandes incertitudes, à savoir les défaillances ou les dégradations impor-
tantes des moteurs, ou des capteurs. En outre, la limitation de la charge utile pour les drones restreindra à la
fois les dimensions des masses et de la physique des capteurs qui peuvent être transportés à bord, limitant
les capacités d’estimer les états du système. La deuxième considération est liée à la robustesse du système de
contrôle en boucle fermée en face les perturbations, telles que des rafales de vent aléatoires qui peuvent forcer
le système à diverger de sa trajectoire désirée. D’autres défis peuvent être présentés pour les drones avec les
bandes passantes limitées de contrôle (du point de vue télécommunication), durant le suivi des trajectoires à
haute performance, comme les obstacles présentés dans des environnements encombrés de nature incertaine,
par exemple, rue en ville, forêt et même à l’intérieur de bâtiment, les obstacles aléatoires en particulier quand
les drones se déplacent (par exemple des voitures, personnes ou autres drones).
Les développements récents des systèmes de pilotage automatique ont été déplacés vers des approches les plus
souples grâce au développement des systèmes de contrôle adaptatif qui peuvent obtenir une meilleure capacité
à prendre en compte les variations des signaux et les modèles de système (c-à-d les caractéristiques du système
et le modèle des perturbations) indépendamment de la classe des modèles d’incertitudes employées. Bien que
de nombreux systèmes de contrôle adaptatif à la pointe de la technologie s’appuient encore fortement sur des
modèles mathématiques des systèmes (comme par exemple le gain-Scheduling [79] et [159], Backstepping
[20] et la technique de feedback linearization [94]). Ces approches pourraient être trop complexes ou peu pra-
tiques dans certaines situations. Par exemple, le contrôle de gain Scheduling ait été considéré comme l’une des
techniques de contrôle adaptatif historiquement réussie, cette méthode souffre de plusieurs inconvénients tech-
niques comme il est indiqué dans [40]. Elle s’appuie sur un modèle mathématique complexe du système, ainsi
que sur la linéarisation de la dynamique du drone à travers plusieurs points de fonctionnement. La méthode
feedback linearization peut s’avérer peu pratique en l’absence de modèles mathématiques précis.
Le contrôle adaptatif est devenu un domaine de recherche d’actualité, car le nombre d’article publié à ce sujet,
a connu une croissance exponentielle ; selon la base Scopus, plus de 5x104 articles sont publiés entre 2012
et 2016. Le développement du contrôle intelligent et les techniques de contrôle évolutionnaires basées sur la
logique floue connues aussi par les techniques du soft-computing (TSC) a connu aussi un accroissement im-
portant, plus de 2000 articles publiés entre 2012 et 2016 selon la base de Scopus, suite aux progrès réalisés en
informatique. Selon la loi de Moore (nommé en l’honneur de Gordon Moore), la vitesse des ordinateurs dou-

13
blerait presque tous les dix-huit mois en raison de la capacité de multiplier les transistors embarqués dans des
circuits intégrés chaque année. Aussi, ils ont récemment été mises en œuvre dans de grandes applications d’in-
génierie, ce qui est dû au progrès de la technologie informatique. Les robots volants ont été également utilisé
les TSC dans des applications réelles, comme dans la conception de pilote automatique ou dans les dévelop-
pements de systèmes de suivi de trajectoire et pour les stratégies d’évitement d’obstacles, etc. Une croissance
rapide dans le secteur commercial des drones, selon le rapport annuel de prévisions aérospatiales [12] publié
par la FAA (Federation Aviation Administration) estime que d’ici 2020 plus de sept millions de drones seront
achetés. En outre, le rapport [2] publié par Price Waterhouse Coopers estime que la valeur financière des drones
dans toutes les industries atteint plus de 127,3 milliards de dollars en 2020.

Motivée par ces données statistiques, cette thèse propose un pilote automatique intelligent, standard pour
tous les drones types quadricopète existant dans le marché comme par exemple : le DJI [1], le Parrot [7], le
Yuneec [8], Kespry [3], etc. où les paramètres de ce système seront codés en chromosomes binaires comme
un ADN biologique. Ainsi, ces paramètres seront ajustés en utilisant les algorithmes génétiques (Genetic Al-
gorithms [138], [99]) et mis à jour via internet. Le réglage et le codage des paramètres du pilote automatique
en tant qu’ADN biologique peuvent offrir deux avantages. Premièrement, il permet d’assurer la robustesse des
pilotes automatiques qui deviennent capables de s’adapter aux variations des signaux et des modèles de sys-
tèmes et de prendre en compte des incertitudes, tels que les flux d’air externes changeants (nature incertaine
des environnements de vol) et les erreurs de modélisation provoquées par les décalages (offset) des capteurs
(exemples : l’IMU, l’accéléromètre et le baromètre) ou les décalages des actionneurs. Deuxièmement, il permet
d’assurer les meilleures performances au pilote automatique pendant toute la durée de vie des drones et dans
tous types d’environnement de vol (intérieur, extérieur).

Les contributions de ce travail sont : (1) une conception complète d’un pilote automatique intelligent (mou-
vements longitudinaux et latéraux) pour un drone de type quadricoptère utilisant un contrôleur flou avec seule-
ment deux entrées (afin de réduire le nombre de règles contraires à certain travaux de recherche où ils utilisent
trois entrées (e, e et ė). (2) Une nouvelle approche basée sur l’AG est utilisée afin d’ajuster les paramètres du
R

pilote automatique intelligent, où ils sont codés sur des chromosomes binaires en tant qu’ADN biologique. Elle
aborde séparément la dynamique des boucles interne et externe afin de réduire la complexité du problème. (3)
Une nouvelle fonction d’adaptation (d’évaluation) est proposée pour simplifier la complexité du calcul. (4) Les
paramètres des algorithmes génétiques utilisés pour le réglage sont auto-configurés à l’aide d’un algorithme
génétique.

Nous avons commencé le travail par la modélisation de la dynamique du quadricoptère pour réaliser un
simulateur de vol sous Simulink Matlab. Ensuite, nous avons identifié les différents mouvements du quadri-
coptère nommé AR-Drone afin de tirer les bases de règles nécessaires pour la synthèse des contrôleurs flous.
Nous avons proposé un système de contrôleur de vol intelligent (SCVI) comme structure standard de pilote
automatique. Ce système imite les actions d’un pilote expérimental lorsqu’il guide et maintient le drone à un
emplacement spécifique (x, y, z et ψ). Après cela, une approche à base des algorithmes génétiques est utilisée
pour le réglage des paramètres du système de vol SCVI. La combinaison du SCVI et les AGs conduit à un sys-

14
tème Évolutif de contrôle de Vol (SECV). Cette approche est conçu pour être utilisée pour toutes les formes des
drones de type quadricoptère. Les tests de simulation sont effectués sous Matlab Simulink, où les paramètres
du SECV sont calculés hors-ligne en prenant différentes valeurs de la taille de population des AGs afin d’éva-
luer leur influence sur la solution finale. Après, l’approche SECV est testée avec l’utilisation des algorithmes
génétiques pour la configuration automatique (Bi-GA) des AGs utilisés durant le réglage des paramètres, avec
cela on améliore la certitude d’avoir la meilleure solution. Une comparaison est réalisée entre les performances
obtenues grâce au Bi-GA et celles obtenues en utilisant des méthodes méta-heuristiques pour la configuration
automatique des AGs (trouvé dans des travaux de recherche). La dernière étape est consacré à l’implémentation
du système SECV dans l’AR-Drone V2. Dans cette étape nous avons utilisé le système ROS (Robot Operating
System). Plusieurs tests expérimentaux sont réalisés pour vérifier l’efficacité de l’approche.

Le mémoire de thèse est organisé comme suit : Premier chapitre : l’état de l’art sur l’utilisation des techniques
du soft-computing est présenté ainsi que la problématique et la contribution du travail. Chapitre deuxième : un
aperçu des systèmes drones est présenté en détail. Chapitre troisième : la modélisation et l’identification des
drones quadricoptère est présenté. Chapitre quatrième : il détaille l’élaboration du système de contrôle de vol
intelligent (SECV) destiné pour les drones quadricoptère. Chapitre cinquième : il détail et discute la mise en
œuvre du système et les résultats expérimentaux. Le dernier chapitre concerne quelques conclusions et les
perspectives.

15
Chapitre 2

État de l’art

2.1 Introduction

Les méthodes du soft-computing (SC) ont été largement implémentées dans de nombreuses applications
d’ingénierie. Ainsi, prenant en compte la nature multidisciplinaire de la recherche dans les systèmes de drone,
il y eut une demande urgente pour le développement de systèmes autonomes, non seulement adaptatifs et
intelligents, mais également performants sur le plan informatique pour pouvoir apprendre en ligne et prendre
des décisions en temps réel. En conséquence, les tendances actuelles de la recherche en matière de contrôle
adaptatif ont été progressivement déplacées vers le développement de systèmes intelligents pour accueillir la
base des règles ou la base des connaissances tel que les systèmes d’inférence floue [166], les réseaux de
neurones [40], les algorithmes génétiques [71] et l’intelligence en essaim [31], [158]. Ils sont adaptés à des
systèmes a dynamique très complexe, où très difficile, ou qui n’ont pas de modèle mathématique précis. L’autre
avantage n’est pas limité non seulement à leur nature adaptative, mais aussi à leur capacité d’auto-apprendre
(self-learning).
Dans ce chapitre on étudie l’application des différentes techniques du SC pour la commande des drones où
plusieurs algorithmes sont analysés. La problématique traitée dans cette thèse et la contribution du travail sont
aussi présentées.

2.2 Systèmes d’inférence floue

Considérant la nature imprécise des concepts abstraits, la logique floue repose sur le raisonnement approxi-
matif qui donne une conclusion fondée sur un ensemble de règles IF-THEN floues établies par des experts,
qui est sous la forme d’une valeur continue comprise entre 0 et 1. Le système se compose de trois éléments
fondamentaux, à savoir, la fuzzification, l’inférence fondée sur des règles et la défuzzification, ainsi le mapping
flou peuvent être considérées comme une traduction d’entrées nettes en ensemble flou, tandis que le processus
de défuzzification est destiné à reconvertir les valeurs de sortie floues en des valeurs nettes. Étant donné les
règles de contrôle linguistique, la logique floue imite le raisonnement et la prise de décision humaine en lan-
gage naturel.

Bénéficiant d’un ensemble de règles de contrôle linguistique dérivées à partir de connaissances spéciali-
sées, il peut convertir les stratégies de contrôle linguistique. Dans le cadre d’un système automatique. Bien

16
que le FIS préconise la capacité de tenir compte des incertitudes inhérentes à la connaissance humaine dans
ses variables linguistiques et son interaction simple ainsi qu’une interprétation facile des résultats, le système
dépend totalement de la connaissance experte et n’a pas capacité de généralisation, ni robuste en réponse à la
topologie changements du système [181]. Zadeh dans [191], [87] a présenté la logique floue de type-2, pour
mieux tenir compte de l’incertitude, comme une extension de son homologue de type 1. Il présente d’une nou-
velle dimension appelée l’empreinte de l’incertitude, le système emploi la même structure de règle. Bien que
le système flou de type-2 puisse rendre le système plus tolérant au bruit, il est, en effet, plus coûteux en termes
de charge de calcul. Zadeh a étendu plus tard le travail présenté dans [191] vers le type-n des systèmes flous.
Cependant, ce travail est encore considéré comme étant encore à ses débuts.

D’autre part, l’analyse de la stabilité du contrôleur flou n’est pas non plus triviale. Un défi potentiel dans la
mise en œuvre de systèmes à base de la logique floue sont les problèmes linguistiques c’est-à-dire la généra-
tion des règles floues et les fonctions d’appartenance (MF) pour chaque ensemble flou, en particulier pour les
systèmes au nombre d’entrées/sorties élevé [166]. D’une manière conventionnelle, un expert dans un domaine
particulier définit manuellement les règles, en particulier pour les systèmes de contrôle avec seulement quelques
variables d’entrée. Cependant, pour un système à grande échelle, la configuration manuelle par un expert pour
réaliser une bonne performance de contrôle peut ne pas être possible, ou au moins le processus deviendra très
fastidieux, compliqué et inefficace. Ainsi, le développement d’un système automatique de réglage flou est pré-
férable. Une approche simple pour résoudre ce problème consiste à utiliser des algorithmes de partitionnement
des données (le mot anglais clustering Algorithms, en utilisant les méthodes des k-moyennes ) pour subdiviser
l’espace en plusieurs partitions avant de distinguer le centre de chaque partition comme étant une règle linguis-
tique floue [166]. Néanmoins, cette approche ne garantit pas les performances des systèmes, en particulier pour
les systèmes à grande échelle avec de nombreuses variables d’entrée en raison de la nature indépendante des
fonctions d’appartenances, en ce qui concerne l’extraction de la base les règles, selon [166]. Bien que le regrou-
pement des données expérimentales puisse diminuer le nombre de règles, il peut aussi diminuer l’interprétation
des classes obtenues [14]. Dans de nombreux cas, par conséquent, un réglage supplémentaire de la fonction
d’appartenance, y compris la sélection de méthodes appropriées de fuzzification et de défuzzification, est tou-
jours nécessaire. Compte tenu de la nature des systèmes de logique floue, qui peut être considéré comme un
algorithme de recherche en haut dimension, il est très pratique d’utiliser des calculs évolutifs (par exemple les
AG) pour déterminer une solution optimale sur une hypersurface. Ce problème d’optimisation n’est pas banal
en raison de la nature de l’hypersurface elle-même, qui est très complexe et bruité, car les performances d’un
ensemble flou similaire peuvent être complètement différents [166], [65]. En adoptant le concept des systèmes
évolutionnaires, les systèmes d’inférence flous peuvent subir des changements structurels et paramétriques à
mesure que les systèmes évoluent.

2.3 Réseaux de neurones artificiels

Émulant les systèmes nerveux biologiques, un RNA (réseau de neurones artificiel) peut être considéré
comme un système adaptatif non-linéaire comprenant des neurones inter-connectés qui échangent des mes-
sages les un avec les autres. La connexion est représentée par des poids numériques qui peuvent être ajustés en
fonction de l’expérience, ce qui le rend adapté à un apprentissage très parallèle et intelligent. Cette approche est

17
souvent utilisée pour s’attaquer à des problèmes d’optimisation difficiles qui ne conviennent pas à la program-
mation linéaire conventionnelle. Contrairement à la logique floue, les avantages principaux des RNA sont leur
capacité d’apprentissage et de généralisation en plus de la robustesse aux perturbations. Cependant, déterminer
le nombre de couches et de neurones n’est pas une tâche facile [181]. En raison de sa nature de boîte noire,
il faut avoir des connaissances supplémentaires relatives aux caractéristiques du système pour interpréter sa
fonctionnalité [181]. Bien qu’il existe diverses architectures des RNA, telles que les RN de type feedforward,
récurrents [193], auto-organisés [61], le RNA Hopfield [109], et la fonction de base radiale feedforward
(RBF) [184]. Les RNAs de type feedforward et récurrent sont les plus largement considérées ils sont large-
ment mis en œuvre en robotique. La configuration du RNA récurrente intègre des connexions de retour à action
anticipatrice (feedforward), en connectant toutes les couches de l’entrée et caché, jusqu’à la couche de sortie, la
configuration du RNA récurrente intègre des connexions de retour. En outre, le concept de rétropropagation du
gradient est souvent utilisé pour entraîner le système et pour perturber les poids du RNA par une valeur aléatoire
pour éviter le scénario de minimum minimal local. Ces stratégies d’apprentissage peuvent être classées en trois
parties principales.
— L’apprentissage supervisé [26], est lorsque le réseau est entraîné par des paires d’entrée/sortie fournies
par des composants externes ou par le réseau lui-même.
— L’apprentissage non-supervisé [61], se produit lorsque les sorties sont entraînées pour répondre à un
certain modèle en l’absence d’exemples de sortie.
— L’apprentissage par renforcement [187] peut être considéré comme une combinaison d’apprentissage
supervisé et non surveillé. En adoptant un concept évolutif, les RNAs peuvent subir des changements
structurels et paramétriques à mesure que les systèmes évoluent.

2.4 Swarm Intelligence ou Intelligence en l’essaim

La Swarm Intelligence (SI) est la propriété collective d’un système composé de nombreux individus ho-
mogènes, dont les comportements sociaux entraînent une réponse globale à leur environnement [133]. Le
comportement général du système est dérivé de l’interaction des individus les uns avec les autres sur l’infor-
mation locale et avec leur environnement par des règles comportementales simples [133]. Un certain nombre
de techniques d’optimisation basées sur l’essaimage ont été publiées dans la littérature. : 1) L’optimisation
en l’essaim de particules (PSO)(OEP ou PSO en anglais) [97], [59] et [31] ; 2) l’optimisation de la colonie
de fourmis (ACO), sont des algorithmes inspirés du comportement des fourmis [55] ; 3) l’optimisation de la
colonie d’abeilles artificielles (ABC) est un algorithme d’optimisation basé sur le comportement intelligent de
l’alimentation des abeilles [95] ; et 4) l’algorithme des lucioles (En anglais : the firefly algorithm ) [188].
Bien que ce concept crée une robustesse à l’échec de chaque individu, le comportement des agents indivi-
duels peut ne pas représenter nécessairement le comportement collectif de l’ensemble du système. Comme il
n’existe pratiquement aucun mécanisme d’analyse pour cette approche, la conception d’un système basé sur
l’essaimage n’est pas une tâche facile. Connu sous le nom d’algorithme évolutif basé sur la population, PSO est
similaire à d’autres algorithmes évolutifs basés sur la population. Cependant, il faut souligner que la PSO est
principalement guidée par la propriété du comportement social, au lieu de la survie du plus fort comme dans
l’AG [97]. S’inspirant du flocage d’oiseaux ou de bancs de poissons, PSO emploie un ensemble de candidats

18
solution connue sous le nom de particules. Dans chaque itération, chaque particule met à jour sa position et sa
vitesse comme suit : xik+1 = xik + υk+1
i le système fonctionne à base de la communication entre les particules
et chaque particule a une vitesse qui correspond au taux de changements de la rapidité avec laquelle il vole dans
l’espace de recherche. La vitesse de la particule est réglable en fonction de l’expérience correspondante de la
particule comme suit :
i
υk+1 = υki + c1 r1 (pik − xik ) + c2 r2 (pik − xik ) (2.1)

Où, pik indique le mieux positionné, tandis que c1,2 représente les paramètres cognitifs et sociaux et r1,2 in-
dique des nombres aléatoires compris entre 0 et 1. La connaissance est représentée dans la précédente position
locale/globale la meilleure entre toutes les particules. Il est donc possible d’explorer la résolution de problèmes
distribués en l’absence de contrôle centralisé ou la fourniture du modèle global [133]. De cette façon, le PSO
a moins de paramètres à régler et peut offrir la simplicité et une utilisation plus efficace de la mémoire par
rapport à l’AG. Inspiré par le comportement des colonies de fourmis à la recherche de la route la plus proche de
leurs nids aux sources de nourriture en créant des traînées de phéromones sur la route qu’elles ont empruntée,
ACO fournit une autre solution heuristique aux problèmes d’optimisation. Les phéromones stimuleront une ré-
ponse naturelle aux autres groupes de fourmis, car les fourmis subséquentes sont attirées par des chemins où la
concentration de phéromones est la plus élevée [133]. Ainsi, plus le chemin est court, plus la concentration de la
phéromone est élevée, puisqu’elle deviendra le chemin le plus fréquenté. Bien que la convergence soit garantie,
le temps nécessaire est incertain. ABC est un autre algorithme heuristique basé sur la population, inspiré par
les comportements collectifs des abeilles dans la recherche de sources de nourriture autour de la ruche [96].
Sur le plan conceptuel, il y a trois groupes d’abeilles : 1) les abeilles employées dont la tâche est d’apporter le
nectar de fleurs à l’intérieur de la ruche à un endroit, nommé (la piste de danse) ; 2) les abeilles spectateurs qui
regardent la danse et prennent la décision de choisir la meilleure fleur ; et 3) les abeilles éclaireuses qui effec-
tuent une recherche aléatoire d’un aliment autour de la ruche. Une fois que la source de nourriture a été épuisée
par les abeilles employées, les abeilles qui les observent deviennent des éclaireurs. Il existe deux types de danse
dans la ruche [133]. La danse circulaire est effectuée lorsque la région visitée par une abeille employée se
trouve près de la ruche et contient des informations sur la qualité du nectar de la fleur visitée comme un guide
pour les autres abeilles et la danse en huit est effectuée par les abeilles pour échanger des informations sur les
fleurs, y compris la direction, la distance de la ruche et sa qualité [133], [29]. Dans ce scénario, la position de
la source alimentaire indique la solution possible au problème d’optimisation, tandis que la quantité de nectar
dans la source alimentaire indique la qualité (condition physique) de la solution correspondante. Plus la quan-
tité de nectar est élevée, plus grande est la probabilité que la source alimentaire soit choisie par le spectateur.
En arrivant à une certaine zone, les abeilles employées choisissent une nouvelle source de nourriture dans le
voisinage d’une autre zone sauvée en mémoire. Si la nouvelle nourriture a de meilleurs nectars que l’ancienne
source, la mémoire sera mise à jour.
Une autre approche heuristique s’inspire du comportement des lucioles dans [188] et [189]. Initiale-
ment, l’algorithme génère une population aléatoire de solutions réalisables. Toutes les lucioles de la population
doivent explorer l’espace de recherche de solutions, avec une connaissance partagée entre les lucioles pour
guider la recherche vers le meilleur emplacement. La luciole se déplace dans l’espace de recherche multidi-
mensionnel, avec une mise à jour continue de l’attractivité basée sur la connaissance de la luciole et de sa
voisine [133]. Comme il est décrit dans [188], les caractéristiques de clignotement des lucioles satisfont à la

19
condition suivante. Tout d’abord, toutes les lucioles sont unisexes et l’attractivité est proportionnelle au niveau
de luminosité. Cela aura tendance à faire en sorte que la luciole moins lumineuse se rapproche du plus brillant.
L’attractivité diminuera à mesure que la distance augmentera, comme le décrivent les équations suivantes :
2
Li = L0 e(−µd) (2.2)

Où, Li indique l’intensité de la lumière à la i ème itération, L0 est l’intensité initiale, µ désigne le coefficient
d’absorption de lumière et d est la distance euclidienne entre deux lucioles. Alors que la valeur initiale de
la lumière clignotante est constante, la modification du paramètre d’absorption de lumière est la clé de la
convergence (de l’algorithme). Inspiré par les oiseaux et les insectes, un autre comportement intelligent est
connu sous le nom de flocage aérien, ce qui permet à plusieurs robots de se déplacer ensemble dans l’unité, afin
d’améliorer la capacité de l’ensemble des systèmes. Le principal avantage de cette stratégie est la robustesse et
l’évolutivité puisque l’échec d’un ou de plusieurs agents ne fait pas que la mission échoue [63]. De cette façon,
on peut partager la charge des systèmes (par exemple, la communication, le calcul et la détection) à travers
plusieurs agents. Par conséquent, la capacité de garder une distance prédéfinie parmi les nœuds voisins avec la
possibilité d’éviter les obstacles est d’une importance cruciale. Une des mises en œuvre directe du flocage est
dans les systèmes de positionnement par satellite pour la surveillance de la Terre. Les règles de Reynolds [147]
consistent en trois étapes principales, l’alignement, la cohésion et la séparation et est la recherche pionnière du
flocage aérien.
Hauert et al. [77] ont mis au point des essaims de robots à voilure fixe pour résoudre les problèmes de
portée de communication limitée auxquels sont souvent confrontés les petits robots volants légers et à coût
réduit. Les petits drones sont souvent confrontés à un autre défi, car ils doivent maintenir leur vitesse linéaire
pour éviter de bloquer et les éviter de créer un virage en épingle. Hauert et al. [77] ont employé les règles de
Reynolds [147], englobant trois étapes principales (par exemple, l’alignement, la cohésion et la séparation),
pour atteindre le flocage de robot. Ils ont effectué des simulations informatiques approfondies pour mettre
en évidence les défis que pose le maintien de la cohérence de l’essaim de drones, en particulier lorsque la
portée de communication est très limitée. Ils ont étudié les comportements des essaims lors du flocage et
lorsque les paramètres empêchaient le flocage. Compte tenu du fait que les performances de flocage peuvent
être améliorées en augmentant le taux de rotation maximal des robots et leur portée de communication, leurs
recherches ont suggéré le taux de rotation maximal de 0,7 [rad/s] et une portée de communication de 150 [m]
pour un réglage optimal.

2.5 Les algorithmes génétiques

En imitant l’évolution darwinienne, les algorithmes génétiques (AG) peuvent être considérés comme une
stratégie d’optimisation heuristique aléatoire basée sur l’idée de sélection naturelle. Ce concept a été introduit
par Holland dans [72]. Dans ce scénario, la population peut être considérée comme un candidat de solutions.
Par conséquent, en faisant évoluer la population, le candidat le plus fort peut émerger par mutation et par croise-
ment. L’algorithme fonctionne bien lorsque la surface de la fonction coût est continu. L’information génétique
est encodée dans les chromosomes. Un chromosome contient des centaines à des milliers de gènes qui peuvent
être considérés comme un segment d’ADN contenant le code utilisé pour synthétiser une protéine. Par exemple,
les cellules humaines contiennent 23 paires de chromosomes représentant 46 chromosomes. Certains exemples

20
d’application des AGs dans le pilote automatique peuvent être trouvés dans [115] et [167], alors que l’appli-
cation pour la planification peut être trouvée dans [46]. Chaque fois qu’un élément est choisi pour être muté,
il sera itéré par un entier aléatoire d’un pas à l’intérieur de son intervalle. Le croisement et la mutation sont
destinés à faciliter une recherche et la rendre plus efficace et à guider le processus dans une nouvelle région.
Alors que le croisement explore l’espace de recherche, le but de la mutation est de faciliter la diversité génétique
d’une génération de chromosomes à la suivante. Bien qu’il soit possible d’utiliser une probabilité fixe de croi-
sement et de mutation, cela ne conduira généralement pas à un résultat optimal. Ainsi, la pratique courante est
d’utiliser un taux variable, c’est-à-dire en commençant par une valeur relativement plus élevée de croisement
et une valeur de mutation inférieure, puis en diminuant la valeur de croisement et en augmentant le taux de mu-
tation vers la fin du processus. Cependant, bien que des modifications normalement linéaires soient adoptées, il
n’y a pas de règle rigoureuse pour ajuster les paramètres durant le processus de l’évolution. Les AGs peuvent
être considérer comme une solution de recherche plus simple et peut nécessiter, une exigence de mémoire in-
férieure par rapport à une méthode de recherche analytique explicite, elle peut se bloquer en un optimum local.
Cet inconvénient peut être atténué par le processus de croisement. Sa nature intrinsèquement parallèle et distri-
buée peut également offrir moins de temps de calcul. Le processus commence par une population d’individus
générés au hasard. Le degré d’évolution (Fitness) de chaque individu est évalué dans chaque génération et une
nouvelle population est formée par la sélection de multiples individus de la population actuelle en fonction de
leur degré d’évolution. Le processus sera terminé après qu’un nombre maximum de générations a été produit
ou qu’une condition de certains niveaux dévolution a été atteinte pour la population. Une valeur de dévaluation
élevée suggère un faible taux de croisement et un taux de mutation élevé, pour éviter le minimum local, il faut
diminuer le taux de croisement et augmenter le taux de mutation. Le même principe est également applicable
pour la variance de l’évaluation de la population, c’est-à-dire que la faible variance indique une mutation et une
variance élevée indique un croisement. Cela suggère un taux de croisement élevé (> 80%) et un faible taux
de mutation (< 1%) [123]. Il existe plusieurs façons d’accélérer le temps de traitement [45], par exemple en
employant les AGs parallèles [149], les AGs incrémentales [25] ou micro-AGs [91]. Les AGs incrémentales
ont l’avantage de réduire le temps de cycle de génération, puisque le système produit seulement une ou deux
progénitures à chaque génération, les systèmes peuvent ne pas produire des individus satisfaisants. Les micro-
AGs utilisent une très petite population et ont donc le potentiel de produire plus de progénitures, bien que les
systèmes souffrent d’un manque de diversité génétique [45]. Par conséquent, il n’est pas impossible pour les
AGs de produire des lois de commande successives qui pourraient poser un problème de stabilité.

2.6 Systèmes évolutifs hybrides

Le développement d’un système hybride peut être nécessaire pour obtenir les solutions optimales [42]. La
figure 2.1 représente la notion de systèmes évolutifs hybrides, comprenant trois courants majeurs (par exemple,
systèmes d’inférence floue, RNA et les algorithmes évolutifs). Dans ce qui suit, nous présentons plusieurs
systèmes d’apprentissage hybrides largement mis en œuvre en robotique.

21
Connaissances Apprentissage

NFS
Systèmes Réseaux
Flous de Neurones

ENFS

EFS ENN

Algorithmes
évolutifs
Recherche Globale

F IGURE 2.1 – Concept de systèmes intelligents hybrides : les systèmes neuro-évolutifs. Les systèmes flous.
La lettre "S" désigne système. La lettre "F" désigne les systèmes flous, la lettre "E" représente les algorithmes
évolutifs et la lettre "N" représente les systèmes RNA (traduit de [42]).

2.6.1 Systèmes neuro-flou

Les systèmes neuro-flous sont largement connus pour leur capacité à modéliser des systèmes dynamiques
complexes. Fusion de RNA et de système d’inférence floue le neuro-flou a attiré beaucoup d’attention dans de
nombreuses disciplines d’ingénierie en raison de leur nature complémentaire. Bien que les systèmes flous ne
disposent pas d’un mécanisme d’apprentissage automatique, tels que les RNA, ils nécessitent donc une base de
connaissance experte, les systèmes flous quant à eux peuvent imiter le processus de raisonnement linguistique
humaine. Leur aptitude à représenter le comportement d’informations complexes, imprécises ou mal définies
pour être adapté aux systèmes de contrôle est établi sans aucun doute. Les RNAs sont conçus pour faciliter
l’apprentissage automatique, compte tenu de la disponibilité des données de l’apprentissage, car les systèmes
peuvent apprendre à partir de zéro en ajustant l’interconnexion entre les couches [10]. Le processus d’appren-
tissage des RNAs est un peu plus rapide que les algorithmes évolutifs. Il existe deux principales approches
neuro-flou hybrides, à savoir les systèmes coopératifs et les systèmes concurrents [10]. Dans un modèle co-
opératif, la fonction d’appartenance du système d’inférence floue, peut-être déterminé à partir du mécanisme
d’apprentissage RNA ou des données d’apprentissage, tandis que le système flou à base des règles peut être
déterminé par des algorithmes de partitionnement de données floues. Dans un modèle concurrent, le système
d’inférence floue est continuellement assisté par un RNA pour calculer les paramètres requis, en particulier
pour le cas de variables d’entrées non-mesurables. Le système fusionné va partager les structures de données
et les bases de connaissances. Néanmoins, la méthode d’apprentissage conventionnelle basée sur le gradient
ne peut pas être directement implémentée compte tenu de la nature non-différentiable des fonctions utilisées
dans le processus d’inférence. Les architectures neurone floues hybrides majeurs sont FALCON [111], ANFIS
[88], GARIC [27], NEFCON [126], FINEST [177] et FUN [172].

22
2.6.2 Algorithme génétique flou

Alors que la première tâche dans le système flou est de spécifier chaque ensemble flou, comprenant la
règle et les FA(fonctions d’appartenances), le défi principal lié au système AG-Flou est lié au processus de
codage complet du système flou dans le chromosome à base d’entiers au lieu du binaire [166]. Chaque élément
d’un chromosome possède une certaine plage d’entiers en fonction du paramètre représenté dans le système
flou d’origine. Dans le cas d’un système inconnu, cependant, on peut deviner le nombre maximal de règles
acceptables compte tenu du nombre maximal de contraintes. Le principal avantage de l’AG est sa capacité de
recherche dans plusieurs directions, ce qui réduit le problème de se faire piéger dans les minima locaux. Le
choix de la fonction objective (fonction d’évaluation) est important. La collection de gènes de l’individu en-
code le problème dans un entier, la fonction d’évaluation indique les performances du système. Par conséquent,
trouver une bonne mesure du degré d’évaluation pour un système est d’une importance cruciale. Contrairement
aux méthodes basées sur le gradient, l’AG peut être implémentée pour évoluer des systèmes avec différents
types de fonctions d’évaluation, y compris les non-différentiables et les discontinus Évaluation, y compris les
non-différentiables et les discontinus. Cela conduit à des questions sur la façon de définir une bonne mesure du
degré d’évaluation. La fonction la plus couramment utilisée est le carré de la moyenne de l’erreur ou la valeur
absolue de la différence de l’erreur. Une approche bien connue pour optimiser la base des règles paramétriques
floues Si-Alors, est le concept de maximisation de l’entropie floue [183] plutôt que de se baser sur la minimi-
sation de l’erreur d’apprentissage. Une limitation majeure des AG est due à son long temps de traitement et à la
possibilité d’être piégée dans un minimum local. Ces problèmes peuvent être pris en compte en s’appuyant sur
les avantages de l’algorithme d’évolution différentielle (ED). Par exemple, Lampinen et Zelinka dans [102] ont
développé un schéma de génération hybride pour accélérer la convergence de l’algorithme ED original, tandis
que Hassanein et al. [75], [76] ont proposé un système hybride d’apprentissage flou utilisant l’entropie et ED
pour l’identification des systèmes dynamiques.

2.6.3 Systèmes Neuro-Flous évolutifs

L’intégration des concepts évolutifs dans les systèmes neuro-flou peut résoudre certaines limitations d’une
forme simple d’hybridation [153]. Par exemple, la technique d’optimisation de rétropropagation de la descente
du gradient utilisée dans le système neuro-flou ne garantit pas la convergence du système, car elle peut être
piégée dans un minimum local. Le réglage réussi de la fonction d’appartenance floue n’est pas garanti [42].
Pour surmonter ce défi, des approches évolutives peuvent être intégrées pour effectuer l’optimisation structu-
relle et paramétrique du système flou dans [153] par un système neuro-flou génétique. Les systèmes neuro-flou
évolutif [11] peuvent ajuster les FA et la structure des règles évolue. Cependant, de tels systèmes peuvent être
intensifs en calcul et nécessitent donc une attention particulière afin de ne pas limiter leur utilité pratique, en
particulier pour les petits drones avec une charge utile limitée.

2.6.4 Apprentissage PSO génétique

Les AGs et les PSOs ont leurs propres avantages et désavantages discutés. Alors que l’algorithme PSO
représente le processus d’évolution sous la formule de mises à jour de particules vers leurs meilleures positions
en l’absence d’un opérateur de sélection, AG emploie trois opérateurs de reproduction (sélection, croisement
et mutation). En outre, alors que l’AG emploie, un processus de reproduction omnidirectionnel, la recherche

23
en PSO canonique est plus directionnelle, c’est-à-dire pour générer des particules par leur meilleure position
précédente et la meilleure position globale [31]. En conséquence, on peut s’attendre à ce que l’AG puisse mieux
explorer que PSO, alors que la PSO peut avoir une convergence plus rapide. PSO a une faible robustesse aux
fonctions multimodales (tâches impliquant la recherche de la totalité ou de la plupart des solutions multiples
d’un problème), tandis que l’AG a une capacité de recherche globale supérieure à localiser l’optimum global
d’une fonction multimodale, bien qu’avec une vitesse de convergence beaucoup plus lente. D’un point de vue
biologique, l’AG traite d’un processus à long terme, car il modifie les génotypes de l’individu, tandis que la
PSO traite des activités d’apprentissage itératif à court terme pour ajuster les phénotypes des particules [31].
La question qui se pose consiste à combiner les deux méthodes pour améliorer la performance globale, c’est-à-
dire comment améliorer la capacité de recherche globale des PSO en utilisant les techniques AG sans ralentir
le processus de recherche. Gong dans [31] a développé un nouveau cadre pour fusionner PSO avec AG, connu
sous le nom d’algorithme d’apprentissage PSO génétique, pour développer l’apprentissage. Une population de
particules issues du concept PSO interagira pour rechercher une solution. L’algorithme comprend deux étapes,
à savoir une généralisation des exemples et des mises à jour de particules. Alors que les particules peuvent
apprendre de la généralisation des exemples par les opérateurs génétiques, les informations historiques de
recherche peuvent guider l’évolution de l’exemple. La réalisation d’un croisement, d’une mutation et d’une
sélection diversifiera les exemples construits et améliorera leur qualité. Cela se traduira par une efficacité et une
meilleure capacité de la recherche de l’optimum globale du système. La recherche de Gong et al. [31] indique
que l’algorithme proposé surpasse les autres algorithmes de recherche (Par exemple, EDA [103]ABC [96]
Et ACO continu [169]) sur une majorité de critères de référence, tels que la capacité de recherche globale, la
précision, la vitesse, la fiabilité et évolutivité.

2.7 Les approches intelligentes Appliquées dans la commande des drones

Dans cette section, nous discuterons de plusieurs systèmes de commandes de vol intelligents à la fine pointe
de la technologie pour les petits drones.

2.7.1 La modélisation et les systèmes de contrôle de vol intelligents

Les systèmes de commandes de vol jouent un rôle essentiel dans la détermination de la capacité de ma-
nœuvre d’un drone. Dans ce qui suit, nous discuterons de plusieurs systèmes de commandes de vol intelligents
à la fine pointe de la technologie qui ont été inspirés de la nature. Johnson et Kannan dans [90] ont proposé un
système adaptatif de contrôle de vol basé sur le réseau de neurones pour un hélicoptère autonome (Yamaha R-
Max) pour obtenir un système de suivi précis de position. Ce travail a été le premier dans la littérature qui utilise
l’adaptation pour compenser les erreurs de modélisation des systèmes a six dégrées de libertés. Ils ont utilisé
un RN paramétrique de manière non-linéaire pour fournir une adaptation en ligne. Pour surmonter la question
de l’adaptation indésirable, ils ont utilisé la technique de PCH (pseudo-control hedging), pour modifier la dy-
namique de la boucle interne et faciliter l’adaptation d’une manière continue. Le PCH est une technique dans
le contrôle adaptatif de référence de modèle (MRAC) pour éviter que le système ne tente pas d’adapter les ca-
ractéristiques des systèmes et des contrôleurs [89] en déplaçant le modèle de référence vers l’arrière (PCH), ce
qui signifie que l’élément adaptatif ne peut voir les caractéristiques du système comme un modèle de suivi d’er-
reur. Le même principe a été mis en place pour empêcher l’adaptation indésirable à la dynamique de la boucle

24
interne et pour éviter l’interaction entre les boucles internes et externes. En protégeant la boucle externe, il était
possible de s’adapter à l’incertitude dans la dynamique de translation. La combinaison de la sélection PCH et
du gain (obtenue par l’analyse combinée des deux boucles) peut atténuer l’effet de l’écart temporel [40] entre
la commande d’attitude de la boucle intérieure et la commande de trajectoire de la boucle extérieure, qui exige
une largeur de bande beaucoup plus importante pour la boucle intérieure (commande d’attitude) dans la plupart
des véhicules aériens. Ainsi, la bande passante de la boucle externe peut être plus proche de celle de la boucle
interne, ce qui conduit à des performances de suivi améliorées. Le RNA a été tout à fait capable d’adapter la
condition de vol rapide à partir de la ligne de base à la vitesse maximale de l’hélicoptère en l’absence d’un
modèle mathématique précis à chaque point, contrairement aux approches basées sur le modèle. Le pilote auto-
matique a été testé sur les commandes de trajectoire et d’assiette d’un hélicoptère sans pilote Yamaha R-Max.
Tang et al. [176] a introduit une nouvelle approche PSO pour améliorer la contrôlabilité, où un ensemble de
drones volent ensemble en formation. La PSO a été mise en place pour sélectionner les nœuds fixés et pour
déterminer le gain de contrôle. Cela comprend une technique de recherche globale, un croisement binaire si-
mulé modifié et un système de masse d’inertie adaptative. En outre, Tang et al. [176] introduisent également
une stratégie de positionnement (pinning strategy). L’algorithme s’avère être assez efficace et fiable pour réa-
liser sa mission. Cependant, il existe des possibilités d’amélioration telles que la résolution de la rapidité de
convergence et la maîtrise des délais dans les réseaux complexes. La contrôlabilité globale mérite également
une attention particulière, car ce document se concentre sur la contrôlabilité locale. Fu et al. [67] a développé
un nouveau contrôleur flou basé sur l’optimisation de l’entropie CE (cross-entropy) pour réguler le cap d’un
drone quadricoptère afin d’éviter les obstacles. Bien que le concept de la distance d’EC (Kullback-Leibler) soit
dérivé du concept fondamental de la théorie de l’information, l’algorithme d’optimisation a été élaboré selon
un concept adapté pour estimer la probabilité des événements rares, par exemple, la minimisation de la va-
riance. Le processus implique une procédure itérative en deux étapes. Dans la première étape, un échantillon de
données aléatoires représentant des facteurs d’échelle donnés sous la forme d’un ensemble de FAs (fonctions
d’appartenances) de contrôleurs à logique floue est généré sur la base d’un mécanisme spécifique ; dans l’étape
suivante, les paramètres du mécanisme aléatoire seront mis à jour en fonction des données pour obtenir un
échantillon plus précis dans la prochaine itération. L’efficacité de l’algorithme proposé a été étudiée à travers
une série d’expériences de simulation et de vol réel en utilisant un quadricoptère AR-Drone. La recherche de
Fu et al. [67] indique que le pilote automatique de la logique floue optimisée a conduit à des performances
raisonnablement bonnes, car le drone a pu naviguer avec précision pour éviter les obstacles. En outre, il y avait
une réduction de 64% de la base de règles initiale (de 125 à 45 règles) en raison de l’optimisation du facteur
d’échelle et des FA. Motivé par le problème de la robustesse, Babaei et al. dans [23] a abordé le problème
du vol stationnaire pour un drone à aile rotative à phase non-minimale au moyen d’algorithmes génétiques
flous. Compte tenu du fait que les pilotes automatiques à base de logique floue sont conçus en fonction de la
connaissance et de l’expérience de l’expert, la tâche de concevoir de telles règles devient compliquée pour un
système dynamique grand et complexe. En bénéficiant des avantages de l’AG multi-objectif, ils ont optimisé le
mécanisme de réglage du contrôleur flou pour obtenir de meilleures performances par rapport à une fonction
de coût déterminée. Ils ont également comparé les performances du système proposé avec un pilote automa-
tique classique. En outre, ils ont également proposé un système de contrôle à une seule boucle, contrairement
à l’approche conventionnelle qui emploie plus de boucles de contrôle, ce qui entraîne la nécessité d’avoir plus

25
de mesures. Alors que le pilote automatique a été conçu, selon un modèle linéaire nominal, la robustesse du
système a été étudiée en fonction du modèle linéaire dégradé et du modèle non-linéaire pour tenir compte des
incertitudes. Les recherches de Babaei indiquent une amélioration des performances en termes de caractéris-
tiques de réponse temporelle pour les modes de vol courte et longue durées, en plus de la robustesse et de
l’adaptation du système en ce qui concerne les commandes larges. Ghiglino et al. [71] ont introduit une pro-
cédure de réglage simple basée sur l’heuristique pour obtenir un gain PID quasiment optimal pour un drone
quadricoptère pour contrôler l’attitude et la poussée. Ils tirent parti des avantages d’ABC. Malgré sa simpli-
cité et sa pertinence pour un scénario de réglage en ligne, l’algorithme s’avère très efficace et, dans certains
cas, peut surpasser les AGs traditionnelles. Contrairement à nombreuses techniques de réglages automatiques
décrits dans la littérature, telle que MRAC [185] - [156], cette approche peut accorder le contrôleur PID en
l’absence d’un gain initial stable, ce qui élimine la charge d’un processus de réglage initial. Dans cet algo-
rithme, une colonie d’abeilles artificielles, agissant comme agents, recherche de riches sources alimentaires
artificielles représentant des solutions optimales possibles pour un problème donné. Ainsi, le problème d’opti-
misation peut être considéré comme un problème de trouver le meilleur vecteur des paramètres qui minimise
une certaine fonction objective. En conséquence, les abeilles artificielles découvriront au hasard un ensemble
de vecteurs de solution initiale, avant d’employer itérativement les stratégies de recherche au moyen du méca-
nisme de recherche du voisinage (en Anglais Neighborhood search mechanisms développé par MLADENOVIC
et HANSEN dans [210]). Bien qu’il existe une possibilité que l’algorithme soit coincé dans l’optimum local
pour un modèle complexe, il existe des versions modifiées de l’algorithme pour résoudre ce problème [18],
[106]. Pour mettre en évidence l’efficacité de l’algorithme proposé, Armano et Farmani [18] et Lee et al. [106]
effectuent les réglages hors-ligne et en ligne. La version de réglage hors-ligne est plus intensive en calcul, car
elle peut toujours atteindre un ensemble de gain optimal avec un écart type pratiquement nul et donc peut être
utilisé comme référence pour évaluer les performances de réglage en ligne. Leurs recherches indiquent que la
performance du réglage online est raisonnablement proche de l’équivalent hors ligne, avec 80% moins de temps
de calcul que le réglage hors ligne. Dierks et Jagannathan [54] ont développé un nouveau pilote automatique
non-linéaire pour un drone quadricoptère utilisant RNA et les techniques du retour de sortie. Le RNA a été
introduit pour apprendre la dynamique du drone en line face aux incertitudes, par exemple : le frottement et le
battement des hélices. Le but de l’introduction de l’observateur RNA est d’estimer les vitesses de translation
et de rotation du drone (par exemple : les vecteurs de dynamique et de vitesse), puisque la loi de contrôle de
retour de sortie (output feedback control), est développée sous l’hypothèse que seule la position et l’attitude
des drones sont mesurables. Une nouvelle structure de contrôle virtuel RNA a été implémentée pour permettre
aux vitesses de translation souhaitées d’être entièrement contrôlées à l’aide du tangage et le roulis du drone.
Dierks et Jagannathan [54] démontrent l’efficacité de l’algorithme de contrôle adaptatif back-stepping proposé
face aux incertitudes issus de la dynamique et des perturbations non-linéaires inconnues. Leur recherche in-
dique que l’estimation des erreurs de chaque RNA, observateur et contrôleur virtuel ainsi que les erreurs de
suivi de position, d’orientation et de vitesse satisfont à la condition bornée globalement et uniformément. En
outre, l’observateur RNA peut atténuer le principe de séparation, c’est-à-dire en employant la même fonction de
Lyapunov pour les erreurs d’observateur du RNA que les erreurs de suivi du drone. Leurs résultats numériques
confirment également que le contrôleur proposé surpasse le contrôleur linéaire conventionnel. Rezoug et al.
[148] ont proposé un pilote automatique intelligent pour un système d’hélicoptère comprenant un contrôleur

26
flou de type-2 combiné à un la technique ACO comme défuzzificateur. ACO est une méthode d’optimisation
basée sur les probabilités, inspirée du comportement des fourmis dans la recherche de chemins entre le nid ou
la colonie et la source de nourriture. Alors que les entrées manipulées sont la tension des moteurs ; principal
et latéral, les deux signaux de sortie mesurées sont l’élévation et l’azimut. L’algorithme utilise un ensemble
de chemins présentés comme des graphiques inter-connectés en avance pour trouver le meilleur chemin pour
résoudre le problème imposé. Les avantages de l’algorithme ont été étudiés à travers une série de tests de si-
mulations. L’avantage principal du système flou du type-2 comparé à celui du type-1 typique est sa capacité
à gérer les incertitudes [43]. Le système flou type-2 peut être considéré comme une généralisation du type-1
dans le sens où le système définit des incertitudes dans ses fonctions d’appartenances et n’est pas limité sur les
variables linguistiques. Ainsi, la fonction d’appartenance du flou de type 2 se trouve dans l’espace 3-D pour
intégrer la surface des incertitudes.
L’architecture du système flou type-2 contient cinq étapes, à savoir, la fuzzification, la base de règles, le
moteur d’inférence floue, le type-réducteur et la défuzzification [43], ce qui peut être considéré comme un
problème d’optimisation avec plusieurs contraintes. Pour souligner les avantages du système proposé, Castillo
et Melin dans [43] comparent les performances de l’ACO par rapport à la performance de la technique PSO
bien connue, qui s’inspire également des comportements des animaux tels que les oiseaux, les poissons et
abeilles. À cet égard, les particules se déplacent d’une manière itérative dans l’espace du problème jusqu’à
ce qu’elles convergent vers le même point. Leur recherche indique que l’hybridation entre l’ACO et le flou
type-2 peuvent surpasser le type- standard et l’algorithme PSO et ou par une erreur statique proche de zéro
dans tous les cas tests et son meilleur temps de monté en plus de sa capacité à optimiser l’énergie de contrôle.
Amaral et Crisotomo [17] ont introduit un pilote automatique neurone flou (NF) hybride pour un modèle
d’hélicoptère Sikorsky S-61, comprenant un SLF (système de logique floue) de type de Takagi-Sugeno et un
contrôleur à réseau de neurones a régression générale (GRNN). Le pilote automatique n’a que deux sorties, à
savoir cyclique longitudinale et latérale, qui contrôle l’inclinaison du rotor principal et donc le tangage et le
roulis.
Alors que la technique GRNN facilite l’algorithme d’apprentissage par une seule passe avec une struc-
ture hautement parallèle pour permettre une transition rapide et régulière d’une valeur observée à une autre,
le système utilise également un algorithme de regroupement pour faciliter le calcul en donnant une grande
quantité de données. La raison d’employer un CF (contrôleur flou) / GRNN hybride est leur nature complé-
mentaire. Alors que la logique floue peut combiner les données d’apprentissage numérique et les connaissances
linguistiques de l’expert, le GRNN peut faciliter une approche adaptative rapide puisqu’il s’agit d’un processus
non-opérationnel. En outre, le paramètre de lissage peut être réglé en grand pour lisser les données bruyantes
ou en petit pour permettre à une surface de régression non-linéaire de se rapprocher des données d’apprentis-
sages. Cependant, le GRNN nécessite la disponibilité d’un grand échantillon d’apprentissage pour représenter
avec précision la dynamique du système. Pour surmonter cet inconvénient, Amaral et Crisotomo dans [17] ont
également utilisé un algorithme de regroupement basé sur la distance Euclidienne pour acquérir les exemples
représentatifs et écarter les autres points de données. De cette façon, les données de formation peuvent être
réduites pour obtenir un contrôleur plus rapide. Ils ont vérifiés les performances du système avec des tests de
simulation. Avanzini et Minisci dans [19] ont développé une technique hybride entre l’évolution et H∞ pour
synthétiser les gains du contrôleur qui minimisent une combinaison pondérée de la norme infinie et la fonc-

27
tion de transfert afin de répondre à la réduction des perturbations et aux exigences de stabilité robustes. Pour
atteindre les performances satisfaisantes sur l’ensemble de l’enveloppe de vol, ils ont également appliqué la
technique du gain-scheduling. Ils ont utilisé un modèle hypothétique (théorique) d’aéronef et ils ont introduit
deux approches différentes, à savoir un processus uni-objectif d’optimisation avec contrainte et une recherche
bi-objective. L’efficacité des algorithmes proposés a été étudiée à l’aide de nombreux tests de simulation. Leur
recherche indique le bénéfice de l’approche évolutive par rapport à la synthèse du contrôleur traditionnel en trai-
tant la contrainte du domaine temporel lors de la synthèse de la loi de commande, plutôt que par une technique
d’essai et d’erreur basée sur les recherches postérieures. En outre, l’approche bi-objective permet la détermina-
tion des contrôleurs qui peuvent être très bien fonctionner en dehors de l’état nominal. Cependant, la limitation
de cette approche est liée à la partie limitée de l’enveloppe de vol incluse dans l’analyse.
Garratt et Anavatti dans [70] ont proposés une technique de contrôle non-linéaire pour contrôler le vol
stationnaire d’un hélicoptère sans pilote. Ils ont développé un modèle hybride du système, comprenant la dy-
namique connue et une représentation en boîte noire de celle-ci. Le système utilise un RNA simple pour l’or-
dinateur de bord de l’hélicoptère PC104. Sous contrôle manuel, l’hélicoptère doit être en mode stationnaire
avant que le système de contrôle ne passe au pilote automatique RNA. Le système génère les trajectoires sou-
haitées pour obtenir une séquence de changements aléatoires de l’altitude souhaitée en fonction d’un indice
optimal et en considérant la limitation du système. Le Toolbox d’optimisation MATLAB est utilisé pour géné-
rer les trajectoires souhaitées et le RNA est entraîné pour imiter l’entrée optimisée du contrôle. Les données
d’apprentissage du RNA sont affectées par la relation non-linéaire du collectif par rapport à la vitesse et à l’ac-
célération verticale. La recherche de Garratt et Anavatti dans [70] indique que le pilote automatique à base de
RNA réalise des trajectoires similaires à celle générée par le processus d’optimisation, mais avec un temps de
calcul beaucoup plus court. Leur recherche indique la capacité du pilote automatique RNA de surmonter les
perturbations sévères et de surpasser le contrôleur traditionnel PD . Cela élimine également le besoin de la mo-
délisation et de technique d’identification du système. Tijani et al dans [178] ont proposés pour l’identification
du modèle non-linéaire d’un petit drone hélicoptère à partir de données de vol en temps réel, une hybridation
entre l’apprentissage par rétropropagation conventionnelle pour les systèmes autorégressifs non-linéaires avec
des entrées de réseaux exogènes (NARX) et des algorithmes d’évolution différentielle multi-objectifs.
Leur recherche a été motivée par la demande ambitieuse d’obtenir un modèle de haute-fidélité d’un drone
hélicoptère en raison de la complexité et l non-linéarité de ce type des systèmes tout en abordant le problème
de la détermination d’une architecture de réseau à performance optimale ou sous-optimale. Contrairement à
d’autres l’AE (algorithme évolutionnaire), l’AED (algorithme évolutionnaire différentiel) résout le problème
d’optimisation en utilisant les concepts fondamentaux de la population, l’initialisation, la mutation, le croi-
sement et la sélection. Le modèle développé a été capable de satisfaire les contraintes entre les objectifs de
conception.
Par rapport à une approche similaire utilisant des réseaux NARX (nonlinear autoregressive exogenous mo-
del)(modèle exogène autorégressif non-linéaire), le modèle MODE-NARX proposé peut améliorer la précision
de 55% par rapport à l’architecture du modèle précédent. Le système a pu réaliser un ensemble de solutions de
Pareto avec un équilibre délicat (solution optimale) entre précision et complexité. En dehors de cela, l’algo-
rithme de conception proposé peut renforcer convenablement le développement du modèle non-paramétrique
du drone hélicoptère. L’algorithme proposé peut servir comme une architecture de réseau automatique de sé-

28
lection pour surmonter la sélection par essai et erreur de l’architecture de sélection des paramètres, ce qui peut
nécessiter plusieurs jours pour obtenir des résultats similaires en fonction de l’expérience du concepteur. Zhang
et al [194] ont proposés une stratégie d’apprentissage basée sur la mémoire (Memory-Based Learning) qui peut
accéder à des informations importantes provenant d’observations antérieures.
Il fonctionne en augmentant l’état du système avec des états de mémoire continus qui ont la stratégie de
lire et d’écrire des informations, adaptés aux systèmes continus de grande dimension. Le défi principal de la
recherche dans la création d’une telle stratégie est lié au besoin de déterminer l’information la plus importante
et de la mémoriser à chaque étape. Zhang et al dans [195] démontrent que la recherche orientée (guided policy
search en Anglais) obtenue en décomposant la stratégie de recherche en une phase d’optimisation de la trajec-
toire, permet d’obtenir des techniques de mémorisation et de rappel efficaces. L’apprentissage supervisé utilise
des actions de mémorisation pour développer des états de mémoire, l’optimisation de trajectoire utilise sa phase
d’optimisation pour choisir une valeur appropriée des états afin de déterminer la stratégie, menant aux bonnes
actions dans les futurs états. Basés sur une tâche de contrôle continu dans les réglages de manipulation et de
navigation, ils démontrent l’efficacité de leur méthode proposée dans les stratégies de traitement complexe, par
exemple pour se souvenir de la position cible en se souvenant des données sensorielles passées. L’algorithme
peut également surpasser d’autres algorithmes tels que les réseaux de neurones à mémoire à court terme, car ils
sont plus difficiles à entraîner.

Zhang et al. dans [195] ont développés une technique de contrôle hybride comprenant l’MPC assistée
avec l’apprentissage par renforcement dans le cadre d’une stratégie de la recherche orientée. Leur recherche
vise à améliorer la praticabilité de la technique MPC, qui est efficace pour contrôler les robots aériens, mais
qui nécessite beaucoup de calculs et nécessite souvent l’estimation de l’état du système. Alors que le MPC
est utilisé pour générer des données d’apprentissage, les données peuvent ensuite être utilisées pour entraîner
une approche profonde de réseaux de neurones pour observation les états du système à partir des capteurs
embarqués. L’algorithme MPC minimise la fonction de coût par rapport à l’approche du réseau de neurones.
En conséquence, le réseau de neurones peut être utilisé pour contrôler le véhicule en l’absence de la connais-
sance complète de l’état, ce qui entraîne un coût de calcul nettement inférieur du MPC. En utilisant MPC
pour l’optimisation de trajectoire hors ligne, le système peut être rendu robuste à l’erreur et ainsi les échecs
catastrophiques sur la phase d’entraînement peuvent être évités. En utilisant l’apprentissage supervisé pour la
stratégie finale, on peut entraîner des stratégies complexes et de grande dimension, représentant le comporte-
ment des systèmes dynamiques complexes. Cependant, le système partage les limites de la méthode précédente
de stratégie guidée, par exemple l’obligation d’avoir une observation d’état complète lors de la phase d’appren-
tissage pour effectuer la MPC, bien que la stratégie de réseau neurone puisse utiliser les capteurs embarqués
pour effectuer des tâches de contrôle. Ainsi, bien que cette technique soit pratique pour de nombreuses tâches
robotiques, certaines manœuvres de drone ne peuvent pas être apprises dans une configuration d’entraînement
instrumentée.
Une façon de surmonter ce problème consiste à combiner les techniques d’estimation de l’état avec la re-
cherche orientée des stratégies.
Li et al dans [108] ont développés une stratégie de contrôle hiérarchique hybride basée sur les RBFNN adapta-
tifs et la technique du mode glissant intégral pour le contrôle d’attitude et de position d’un drone quadricoptère

29
face aux perturbations et aux incertitudes. Le système de contrôle proposé utilise la technique de mode de
glissement double intégral pour suivre l’attitude désirée avec une erreur nulle en régime permanent tout en uti-
lisant un RBFNN pour approximer des fonctions arbitraires afin de générer une loi de contrôle agressive où les
variables d’état convergent plus rapidement et rejettent rapidement les perturbations. En outre, Li et al [108]
utilisent la technique de stabilité de Lyapunov pour prouver la performance d’erreur de poursuite nulle et la
capacité d’estimation adaptative du système. L’efficacité du système de commande proposé est comparée aux
performances du contrôleur PD/intégrale glissant et de contrôleurs non-linéaires back-stepping et H∞.

Howard et Merz dans [82] ont proposés un pilote automatique évolutif pour un drone quadricoptère afin
de régler les performances du contrôleur PID embarqué en cascade. Le système fonctionne au moyen de la
technique d’évolution différentielle. Les avantages de la plateforme proposée sont multiples. Tout d’abord, le
système est fiable, car il peut fonctionner en continu pendant plus de 24 heures. Le contrôleur peut également
être mis en œuvre immédiatement sans avoir besoin de modélisation. De plus, le système offre également de
la flexibilité puisque les paramètres optimisés peuvent rester au-delà de ses limites estimées. Contrairement à
la méthode de réglage traditionnel, il n’est pas nécessaire de séparer les positions de la boucle d’altitude. Ceci
ouvrira la voie à un nouvel axe de recherche, par exemple, étudier les effets de différentes configurations de
charge utile sur l’optimalité du gain et la comparaison avec différents EA sur le hardware (drones). Howard et
Elfes [81] ont étudiés le développement du pilote automatique des réseaux de neurones impulsionnels (spiking
neural networks), comprenant un algorithme évolutif auto-adaptatif pour générer une combinaison de poids
dans les réseaux, en plus d’un mécanisme de plasticité synaptique. Ils ont étudié les effets de couplage d’un
contrôleur dynamique avec un problème ayant les mêmes propriétés. Ce travail est le premier dans la littérature
qui utilise le calcule évolutionnaire pour développer des neuro-contrôleurs destiner pour un quadricoptère.
Il montre en outre que même des schémas de plasticité simple peuvent être utilisés pour l’adaptation dans
un scénario dynamique, permettant aux réseaux impulsionnels de fonctionner à une fréquence plus élevée par
rapport à un avec des techniques de codage traditionnelle. Leur recherche indique également que les contrôleurs
impulsionnels peuvent atteindre raisonnablement moins d’erreurs de suivi que les contrôleurs PID classiques
et les réseaux neurones basé sur la Rétropropagation de l’erreur.

2.8 Les opportunités et les défis des systèmes de vol intelligent

Dans cette partie, nous mettrons en évidence plusieurs opportunités de recherche et des défis potentiels dans
l’axe d’utilisation des techniques intelligentes dans la robotique aérienne.

2.8.1 Le calcul informatique et les capacités du système

Considérant les aspects pratiques des algorithmes de contrôle intelligent, il convient d’examiner attenti-
vement le compromis entre la demande de calculs requis (limite supérieure et inférieure) et les capacités de
traitement des systèmes, y compris le taux d’acquisition des données et les capacités des capteurs. Par exemple,
un robot aérien à 6-DDL avec m variables d’état représentées par n variables linguistiques nécessitera des
règles approximatives de nm , comparé à plusieurs techniques GA (par exemple, algorithme de plus court che-
min qui a O (n3 ) complexité [160], l’algorithme maximal ayant la complexité O (n log n), où n indique l’entrée
des systèmes). Bien que les systèmes intelligents puissent être exigeants en termes de temps de traitement et de

30
calcul, alors ce problème est devenu de moins en moins important en raison de l’augmentation considérable de
la puissance de calcul, de la vitesse, des processeurs et de la mémoire (Loi de Moore). L’utilisation du calcul
parallèle comme dans [149] est aussi une solution possible pour accélérer le temps de calcul.

2.8.2 Apprentissage en ligne : structurel et paramétrique

Les systèmes d’inférence floue fournissent une solution alternative pour surmonter les inconvénients des
systèmes de contrôle basés sur un modèle en l’absence de modèles mathématiques complexes. Sa capacité de
raisonnement peut être réalisée en imitant l’expertise humaine représentée par sa base de règles et sa base de
données. Cependant, puisque le processus de raisonnement repose fortement sur la connaissance a priori du
système, il est souhaitable d’automatiser le processus d’acquisition de telles connaissances, en particulier pour
les systèmes complexes et à grande échelle, où le développement manuel est peu pratique. Cette tâche d’ap-
prentissage peut être réalisée en intégrant des systèmes neuro-flous, c’est-à-dire en formant le système flou par
un algorithme d’apprentissage dérivé de la théorie des réseaux neuronaux. Alors que les systèmes neuro-flous
classiques utilisent un modèle statique dérivé de ses données hors ligne, les directions de recherche actuelles ont
été déplacées vers l’utilisation d’un modèle dynamique, qui fournit une solution plus réaliste pour traiter les en-
vironnements non-stationnaires. Par exemple, des environnements dynamiques (la turbulence atmosphérique)
peuvent forcer l’aéronef à passer à un nouveau régime de fonctionnement. Cette situation peut conduire à une
demande pour synthétiser de nouvelles bases de connaissances puisque les bases connaissances précédemment
apprises ne sont plus appropriées, les données d’apprentissage hors ligne ne fournissent qu’une garantie limitée
d’une certaine condition de fonctionnement.
En ce qui concerne la limitation des modèles statiques, des modèles dynamiques ont été mis en œuvre au moyen
d’un processus d’entraînement en deux étapes, à savoir l’apprentissage de la structure et des paramètres. Alors
que l’apprentissage de la structure peut être initialement effectué en utilisant des données hors ligne (avant que
ses paramètres puissent être ajustés en utilisant un schéma de réduction d’erreur spécifié, par exemple, méthode
d’apprentissage basée sur la génétique ou la rétro-propagation ), ce processus s’avère insuffisant pour répondre à
la dynamique des flux de données entrants. La solution de ce problème est donnée sous la forme d’apprentissage
en ligne de structure [164]. De tels processus nécessitent le développement d’algorithmes d’apprentissage plus
avancés tels que l’intégration de l’algorithme d’induction des règles floues avec une méthode approximative de
réduction des éléments assistés par ensemble. Quelques exemples d’autres algorithmes d’apprentissage peuvent
être trouvés dans les travaux de Salehfar et al [170] et Soukkou et al [171], où ils proposent respectivement
l’utilisation des vecteurs d’apprentissage et la réduction de la base des règles des systèmes de Takagi-Sugeno.
Bien que l’entraînement en ligne puisse être utilisé pour améliorer la précision du modèle hors ligne, sa pré-
cision peut ne pas être suffisante en raison des incertitudes et des erreurs de mesure. Ainsi, pour obtenir le
meilleur des deux modèles, il faut d’abord développer un modèle hors ligne robuste et précis. En outre, la
précision du modèle hors ligne peut être améliorée en effectuant une entraînement en ligne.

2.8.3 Accélération du temps d’apprentissage

Une autre question à examiner est liée à l’efficacité des algorithmes d’apprentissage en termes de bits de
calcul et du temps d’apprentissage [174]. Les algorithmes complexes du point de vue informatique peuvent
mener à un traitement intraitable, en particulier pour un flux de données important. Cela sera de peu de valeur

31
en particulier pour les systèmes rapides et difficiles, comme dans les systèmes drones, où une grande bande
passante de contrôle est souvent nécessaire pour faire face à une dynamique rapide et des performances en
temps réel est essentielle. Une façon de parvenir à un mécanisme d’apprentissage efficace est de surmonter
le problème du surajustement, un problème commun avec l’augmentation de la base de règles pour englober
toutes les variations dans les données entrantes.
Un autre problème qui mérite d’être examinée est lié aux questions de savoir comment filtrer le superflu des
données entrantes qui peuvent ne pas conduire à de nouvelles connaissances du modèle existant, en plus d’avoir
la possibilité de simplifier la base de règles. Ainsi, le développement du mécanisme de rappel de règles est d’une
importance critique pour réduire la nécessité d’un nouveau mécanisme d’apprentissage et ainsi augmenter l’ef-
ficacité de calcul. Sans perte de généralité, cette procédure peut limiter l’algorithme à la mise à jour des modèles
et des informations statistiques par échantillonnage en utilisant le moins possible de données antérieures.

2.8.4 Incertitudes dans la distribution et la représentation des données

Les flux de données en réalité, caractérisés par leur nature inexacte, imprécise et incertaine [182] (par
exemple, en raison de désaccords dans les connaissances d’experts, la mesure et le bruit de processus), peuvent
conduire à la dérive, ou les concepts d’entrée-sortie ne suivent pas une distribution de données prévisible. Pen-
dant ce temps, le désaccord dans la base de connaissance d’expert et le bruit de mesure peuvent causer une in-
certitude dans sa représentation. Étant donné que les données ne représentent pas nécessairement la dynamique
du système, l’identification de structures appropriées (par exemple des règles floues de type 2) représentant de
telles incertitudes devient une tâche importante. Compte tenu du problème de la classification, l’incertitude peut
entraîner une confusion ou un chevauchement des classes dans l’espace des caractéristiques. Bien que certains
algorithmes évolutionnaires avancés aient la capacité de capturer des environnements changeant rapidement
pour réagir face à des dérives brusques, les systèmes peuvent avoir une faible robustesse face aux dérives gra-
duelles, incrémentielles ou cycliques.
Ces types de dérives sont plus difficiles à résoudre, car ils ne peuvent pas être détectés par les approches de dé-
tection de la dérive globale dans les scénarios d’apprentissage structurels et paramétriques. Cette circonstance
peut interférer avec la distribution actuelle des données et peut sévèrement supprimer la précision du système.
De plus, la dérive cyclique peut changer les caractéristiques fonctionnelles du système au cours du temps, par
exemple en oubliant les connaissances précédemment acquises. Un composant manqué (c’est-à-dire un neu-
rone ou une branche) dans un certain incident d’entraînement ne peut pas être récupéré à l’avenir. Beaucoup de
systèmes évolutifs n’ont pas une bonne robustesse à cause de ce problème.

2.8.5 Dilemme de Stabilité-plasticité

Le dilemme stabilité-plasticité est une contrainte bien connue dans les réseaux neuronaux des systèmes
biologiques et artificiels [116]. Compte tenu de la nature des flux de données importants et illimités, des incer-
titudes peuvent survenir lorsque le système tente d’atteindre un équilibre délicat entre l’intégration de nouvelles
connaissances et le maintien de l’existant. Alors que l’apprentissage dans des systèmes parallèles et distribués
nécessite de la plasticité pour l’intégration de nouvelles connaissances, la stabilité est également nécessaire
pour éviter d’oublier les connaissances antérieures. L’oubli catastrophique est un problème émergent dans les
réseaux de neurones artificiels. Cela se produit lorsque les systèmes oublient complètement les informations

32
précédemment apprises dès qu’elles sont exposées à de nouvelles informations. Trop de plasticité peut conduire
à un oubli constant des données précédemment codées, alors qu’une trop grande stabilité générera le codage
efficace de ces données au niveau des synapses. Une façon de surmonter ce problème est de mettre en œuvre
le concept de systèmes dynamiques à double boucle comme dans le travail de Lecerf [105], où il a introduit
un concept de double boucle comme noyau d’un modèle structurel et dynamique dans de grands réseaux neu-
ronaux. le système a une capacité intégrée pour résoudre ce dilemme. Pendant ce temps, Tung et Quek [179]
ont introduit un réseau de neurones flou générique auto-organisé qui a non seulement une forte capacité de rejet
de bruit grâce à la technique proposée de regroupement incrémental discret, mais il a également la capacité de
surmonter le dilemme stabilité-plasticité en raison de l’uniformité et de la compacité de sa base de règles floue,
car il dispose d’un mécanisme intégré pour identifier et supprimer les règles redondantes et périmés.

2.8.6 La dimensionnalité des données

La dimensionnalité des données peut être considérée comme un problème commun entre les données et
l’algorithme appliqué. Cela se produit lorsque l’algorithme ne s’adapte pas aux données de grande dimension
en raison du temps de traitement élevé ou des besoins en mémoire qui augmentent de manière exponentielle par
rapport à la dimension de données. Ce problème rend difficile, voire impossible, la configuration d’une base de
règles avec plus de trois entrées tout en maintenant l’interopérabilité de l’utilisateur final [14].
Bien que ce problème puisse être résolu au moyen des systèmes décentralisés, il est évident que la réduction de
le problème de la dimensionnalité et l’évitement du surajustement peuvent améliorer la précision du modèle. Le
processus de sélection des caractéristiques peut être effectué hors ligne à l’aide d’échantillons pré-enregistrés.
Un élément d’entrée qui ne peut pas être rappelée à l’avenir une fois éliminé peut entraîner la discontinuité du
processus d’entraînement qui justifie la nécessité d’une phase de recyclage à partir de zéro.
En considérant un contrôleur flou de n-dimension, qui effectue un mapping n-à-un, le nombre de variables
d’entrée peut augmenter exponentiellement le nombre de règles ou de paramètres flous. Par conséquent, la
conception d’un contrôleur flou de grande dimension n’est pas une tâche banale, en particulier pour les sys-
tèmes avec un grand nombre d’entrées [58]. Aborder ce problème reste un défi de recherche majeur dans les
algorithmes évolutionnaires. Une solution potentielle de ce problème est donnée dans Du et al [58], où ils
ont étudié une classe de contrôleurs flous de Takagi-Sugeno d’ordre zéro de grande dimension, initialement
proposée par Lewis et Liu [107], capables de surmonter la problème de la dimensionnalité. Ils ont également
exploré la stabilité locale et la stabilité bornée des entrées-sorties des systèmes flous.

2.8.7 Charges utiles limitées et environnement de vol

Pour être en mesure de naviguer avec succès dans des environnements difficiles, tels que dans des envi-
ronnements encombrés (par exemple, un bâtiment intérieur ou une zone urbaine), les données doivent souvent
posséder une bande passante de contrôle élevée. Cependant, les petits drones sont toujours soumis à des charges
utiles computationnelles et mécaniques limitées. Cela signifiera l’importance d’avoir un algorithme de contrôle
qui soit non seulement optimal et intelligent, mais aussi capable d’effectuer un auto-apprentissage efficace face
aux incertitudes, aux contraintes des actionneurs et aux variations dans les évolutions des données.

33
2.9 Problématique

Les travaux de recherche sur le sujet de la synthèse des pilotes automatiques comme par exemple dans [52]
et [204], ont abouti a ce que le contrôleur PID est le plus utilisé dans les pilotes automatique, parce-qu’il est
facile à implémenter, il a aussi la plus petite erreur de suivi avec une économie de consommation d’énergie que
le contrôleur par mode glissant par exemple. Mais le contrôleur PID montre le manque de robustesse vis à vis
les perturbations. De ce fait, cette thèse traite les aspects du développement et d’implémentation des techniques
du SC dans la synthèse des pilote automatique des drone quadricoptère. Pour cette raison, nous avons fait une
hybridation du PID avec le contrôleur Flou (CF) afin de réduire les non-linéarités et de découpler système. Le
contrôleur Flou a un inconvénient majeur est la non-existence de méthode systématique pour déterminer ces
paramètres. Pour surmonter ces problèmes et d’améliorer le pilote automatique hybride PID-CF proposé, l’op-
timisation des paramètres et le réglage automatique peuvent être utile. Nous pouvons trouver quelques travaux
sur le paramétrage du système de contrôle comme dans [53], où ils ont utilisé le CF pour adapter le gain des
contrôleurs x, y PID, où ils prouvent que cette technique donne de meilleures performances que la méthode
Ziegler-Nichols. Dans [44], ils ont utilisé l’algorithme PSO (Particle Swarm Optimization) afin d’évaluer les
paramètres de l’altitude et du stationnaire du contrôleur d’attitude du quadricoptère.
En outre, nous pouvons trouver des travaux intéressants qui étudient le problème de réglage des systèmes de
vol intelligent, en particulier à la conception du pilote automatique adaptatif (contrôleur de vol automatique),
poussé par les progrès de la technologie de calcul. Certains d’entre eux proposent un pilotage automatique du
cap (contrôle de lacet) comme dans [68], où ils présentent un CF optimisé utilisant la méthode l’entropie-
croisée en anglais Cross-Entropy Method (CE) et la fonction d’appartenance (MF), et l’appliquer à l’évitement
des collisions à l’aide de la stratégie SLAM Monoculaire. Les résultats dans [68] montrent de meilleures per-
formances en comparaison avec l’optimisation de CE uniquement présentée dans [129] par MAO Mendez,
où il compare deux approches différentes floues basées sur le CE optimisation pour la conception système de
pilotage automatique. Encore, AR Babaei dans [22] utilise les algorithmes génétiques multi-objectifs pour
ajuster les paramètres d’un CF afin d’obtenir de meilleures performances (temps de montée, temps de prise
et stabilité), appliqués uniquement au pilote automatique en mode maintien en altitude. Le pilote automatique
altitude/attitude dans [22] et [21] étaient basés sur un modèle linéaire nominal. Cette stratégie a été testée
en simulation, selon différents critères et montre une meilleure robustesse (par rapport aux incertitudes para-
métriques et aux non-linéarités non modélisées) que l’architecture conventionnelle dans la conception du pilote
automatique d’altitude.
Cependant, aucune de leurs applications n’est pas réellement utilisée dans un environnement réel. Même s’il
avait été utilisé pendant un certain temps, il a été généralement un outil pour un seul utilisateur (c’est-à-dire
fabriqué sur-mesure), que la même application n’a jamais été utilisée dans des sociétés.

2.10 Contributions et Motivation du travail

2.10.1 La motivation

Des techniques intelligentes d’informatique douce ( ou bien les TSC) ont récemment été mises en œuvre
dans de grandes applications d’ingénierie, en raison des progrès de la technologie computationnelle. Les ro-
bots volants ont également utilisé les TSC dans des applications réelles, comme dans la conception de pilotes

34
automatiques ou dans le développement de systèmes de suivi de trajectoire et pour des stratégies de concep-
tion d’évitement d’obstacles. Selon le rapport annuel Aerospace Forecast Report de 2016 publié par la FAA
(Federation Aviation Administration), une croissance rapide dans le secteur commercial des drones estime que
d’ici 2020, plus de sept millions d’appareils seront achetés. De plus, un rapport publié par Price waterhouse
Coopers en 2016 estime que la valeur financière des solutions alimentées par drones dans toutes les industries
applicables est supérieure à 127,3 milliards $ en 2020.
Motivés par ces données statistiques, notre vision est de centraliser tous les pilotes automatiques de drone au-
près de leurs constructeurs comme par exemple : DJI , Parrot , Yuneec , Kespry ,etc. Lorsque la conception du
pilote automatique sera unifiée pour chaque type de drone et que leurs paramètres seront codés sur les chromo-
somes binaires en tant qu’ADN biologique. Les fabriquants de drone peuvent utilisés cette approche à base des
AGs (Algorithmes génétiques [138], [99]) pour ajusté les paramètres à l’aide d’internet.
Le réglage et le codage des paramètres du pilote automatique sous forme d’ADN biologique peuvent offrir
deux avantages. Tout d’abord, elle permet d’assurer la robustesse des pilotes automatiques qui peuvent mieux
s’adapter aux variations des signaux et des modèles de systèmes et de surmonter les incertitudes, telles que les
flux d’air externes variables (nature incertaine des environnements de vol) et les erreurs de modélisation dues
aux décalages des entrées (par exemple : IMU, accéléromètres, baromètres) ou des sorties. Deuxièmement, il
permet d’assurer les meilleures performances au pilote automatique pendant toute la durée de vie des drones
et dans tout type d’environnement de vol (intérieur, extérieur). Afin de réaliser cette vision, dans ce travail,
nous nous somme concentré sur la conception hors-ligne d’un pilote automatique simple et flexible, ou égale-
ment appelé système de commandes de vol (FCS) pour les petits drones de type quadricoptère en utilisant une
approche évolutive intelligente.

2.10.2 Les problématiques et les contributions du travail réalisé

À notre connaissance l’ajustement du système du contrôle de vol global (altitude, attitude et x,y mouve-
ments) des drones quadricoptère n’est pas encore étudié jusqu’à maintenant, malgré que les robots volants
utilisent les techniques du SC dans des applications réelles, comme dans la conception de pilotes automatiques
ou dans le développement de systèmes de suivi de trajectoires, des stratégies d’évitement d’obstacles. Le ré-
glage du système de vol automatique est une phase indispensable afin d’assurer la stabilité, la rapidité et la
précision du quadricoptère. Pour cette raison, les algorithmes génétiques sont employés. Les AGs peuvent être
une bonne solution pour le problème de réglage, néanmoins, leurs utilisation conditionnée par le temps de
calcule de la fonction d’évaluation (vu la complicité du problème) qui doit raisonnablement être court. Aussi,
l’utilisation des AGs engendrera le risque d’obtenir une solution non-optimale vu le nombre important de solu-
tions possibles.
Le but de la thèse et pour résoudre vu toutes ces considération ces problématiques concerne les contributions
suivantes : (1) la conception du système de vol basée sur l’hybridation entre les contrôleurs Flous CF et PID
classiques, nommés système de contrôle de vol intelligent (SCVI). (2) Une nouvelle approche nommée SECV
(Système évolutif de contrôle de vol) est développée en se basant sur les AGs pour le réglage. Dans laquelle ;
seulement les paramètres et non pas la structure du système de contrôle (c-à-d la base des règles et les fonctions
d’appartenances utilisées dans le contrôleur flou) sont réglés. Le réglage paramétrique choisi dans ce travail de
recherche traite séparément les dynamiques de la boucle interne (les dynamiques de l’altitude et d’attitude) et

35
celle externe (dynamiques des mouvements, selon x et y), où la solution est présentée sous forme d’un algo-
rithme. (3) Une nouvelle fonction de d’évaluation (fitness function) est proposée pour trouver les paramètres
optimaux du SECV, en effet c’est la solution pour assurer un temps court pour le calcul de cette dernière. (4)
Pour éviter le risque d’obtenir une solution non-optimal des AGs et assurer les meilleures performances du sys-
tème de contrôle vol une nouvelle configuration automatique des algorithmes génétiques nommée Bi-GA est
proposée. Les résultats de ce travail ont fait l’objet d’un article [209] classe A dans : Iranian Journal of Science
and Technology, Transactions of Electrical Engineering intitulé Evolutionary Autopilot Design Approach for
UAV Quadrotor by Using GA.

2.11 Conclusion

Dans ce chapitre, nous avons exploré plusieurs aspects importants de la robotique aérienne intelligente du
point de vue méthodologique et technologique, tels que la vitesse de traitement, la fiabilité, la flexibilité et
la capacité d’apprentissage. Nous pensons que le calcul bio-inspiré a encore beaucoup de marge de progres-
sion puisque les progrès actuels sont encore à leur début. Il est considéré parmi les techniques de calcul les
plus puissantes et il est considéré comme la prochaine génération d’informatique. Bien qu’il existe de grandes
possibilités d’explorer de nouveaux concepts, le principal défi associé à ce sujet est lié à sa nature interdisci-
plinaire. Ainsi, des collaborations d’études de recherche provenant de différentes communautés (par exemple,
l’informatique, les sciences de la vie et l’intelligence artificielle) peuvent être nécessaires. Bien que nous esti-
mions que la tendance future des drones évoluerait vers des conceptions hybrides, plus rapides, plus robustes,
nous envisageons également que les algorithmes génétiques auront joué un rôle plus essentiel pour répondre
aux insuffisances des contrôle basé sur le modèle, par exemple, en raison d’une meilleure robustesse, d’une
plus grande praticabilité et d’une plus grande flexibilité en l’absence de modèles mathématiques complexes.
Aussi, en trouve que le contrôleur PID reste au sommet des contrôleurs les plus utilisés dans les pilotes au-
tomatique malgré que ce contrôleur a des inconvénients puisque le modèle linéaire ne sera pas capable de
capturer la dynamique du système que pour une plage limitée autour de son point de linéarisation et puisque
il aura certaines incertitudes liés au erreurs d’identification et liés au paramètres du système. Même que les
techniques de contrôle basées sur les modèles non-linéaires ont données des solutions pour les problèmes de
robustesse, l’application réelle de ces derniers reste modeste. Nous envisageons également que les techniques
intelligentes ou bien autrement dit soft-computing auront joué un rôle plus important dans le développement
des systèmes de pilotage automatique bien que la technique proposé dans cette thèse sera largement utilisée
dans des applications réelles. Dans le prochain chapitre un aperçu des systèmes drones est présenté.

36
Chapitre 3

Aperçu des systèmes Drones

3.1 Introduction

Dans ce chapitre un aperçu général sur la définition des drones (UAV) et leur histoire sont présenté. Il existe
plusieurs catégories de types de drone, à notre connaissance aucune documentation n’a tenté de résumer tous
les types de drone en même temps. Alors, dans ce chapitre, en s’inspirant de la méthode de classification des
drones présentée dans les travaux [110] et [64], nous présentons les types et les catégories des drones étudiés
par les chercheurs durant ces dix dernières années et publiés dans les meilleurs journaux et conférences.

3.2 Définition d’un drone

Actuellement connu sous le nom de drone ou UAV (Unmanned Aerial Vehicle) est un avion qui peut ef-
fectuer des missions de vol de manière autonome sans pilote humain à bord, ou peut être télécommandé par
un pilote à partir d’une station au sol. Le degré d’autonomie du drone varie mais possède souvent des caracté-
ristiques d’autonomie de base telles que l’auto-odométrie en utilisant une unité de mesure inertielle (IMU), le
maintien de la position on utilisant un capteur GNSS (système mondial de navigation par satellite) et le main-
tien de l’altitude à l’aide d’un baromètre ou d’un altimètre. Les drones dotés d’un plus haut degré d’autonomie
offrent plus de fonctions comme le décollage et l’atterrissage automatiques, la planification de trajectoires et
l’évitement d’obstacles [110]. En général, un drone peut être vu comme un robot volant. Dans la littérature et
les communautés drone, un drone a aussi d’autres noms comme véhicule micro aérien (MAV), système aérien
sans pilote (UAS), avion à décollage et atterrissage vertical (VTOL), multi-copter, giravion, et robot aérien.
Dans cette thèse, nous utiliserons les expressions "UAV" et "drone" de manière interchangeable. En anglais, un
drone désigne aussi « un faux-bourdon ». Le nom a été donné au drone sans doute du fait d’une ressemblance
physique ou par le son produit.

3.3 Histoire des drones

Bien qu’il y ait beaucoup de gens qui croient que les drones sont une invention récente remontant au plus à
deux ou trois décennies, le vol sans pilote a une histoire riche qui remonte à l’Antiquité. ABBAS IBN FIRNAS
(l’homme volant) figure 3.1, la littérature scientifique attribue à Leonardo da Vinci 1487 (l’année de l’apparition
de l’idée des drones) la paternité du planeur et de l’hélice figure 3.2, on oublie que ce touche-à-tout s’est inspiré

37
des travaux de Abbas Qasim Ibn Firnas. Celui qui est né en 810 dans la province de Malaga, en terre musulmane,
a été le premier à entreprendre le projet fou de voler dans les airs tel un oiseau [28]. Vêtu d’un manteau orné de
plumes, il s’élança du haut d’un minaret espérant planer sans grand succès. Mais rien n’effraye Ibn Firnas : en
880 et à 70 ans, il tente à nouveau l’expérience, en utilisant des ailes confectionnées avec du bois et recouvertes
de plumes. Une fois outillé, il se lance du haut d’une tour, parvient à planer quelque peu et finit par se crasher.
Résultat des courses : deux côtes cassées, mais une expérience prometteuse. C’est comme cela que le premier
planeur dans l’histoire de l’humanité a été crée, c’est l’ancêtre des Boeings et autres appareils à hélices qui
nous permettent de voyager dans les airs aujourd’hui [5]. Le premier vol habité, largement reconnu, eut lieu

F IGURE 3.1 – ABBAS IBN FIRNAS l’homme volant (Portrait par Eulogia Merle) [211]

F IGURE 3.2 – Maquette de la Vis Aérienne de Léonard de Vinci (Musée de Léonard de Vinci, Italie) [212]

en 19 septembre 1783 à l’aide d’un ballon à air chaud conçu par les frères Montgolfier [213] représenté dans la
figure 3.3. Peu de temps après, des tentatives similaires ont eu lieu en Angleterre et pendant plusieurs années,
les vols habités ont dominé les vols habités, jusqu’aux premiers hélicoptères dans les années 1860 et plus tard,
les aéronefs à voilure fixe. En 1916, moins de 15 ans après le vol historique des frères Wright, le premier avion
sans pilote moderne a été conçu. C’était l’avion automatique, nommé ainsi d’après les deux inventeurs qui l’ont
crée : le Dr Peter Cooper et Elmer Saperry. Ils ont converti un avion d’entraînement de la marine américaine
(l’US Navy) en premier drone radiocommandé nommé N-9 c’est la torpille aérienne Sperry représenté dans
la figure 3.5 . Cet avion n’aurait pas pu devenir réalité sans les travaux antérieurs de Sperry lui même sur
le stabilisateur gyroscopique automatique, qui permet à un avion de voler en ligne droite et horizontal. En
1917, la Force aérienne des États-Unis a sponsorisé la torpille aérienne nommée Kettering de General Motors
illustrée à la figure 3.4. En raison de problèmes techniques et d’un manque de précision, l’intérêt pour les avions

38
F IGURE 3.3 – Le premier vol habité en utilisant un ballon à air chaud a eu lieu en 1783 en France (Dessin de
Claude-Louis Desrais) [214]

automatiques a été perdu, mais le potentiel d’utilisation de drones télécommandés utilisé entant que cibles s’est
rapidement atténué [98].

F IGURE 3.4 – Photo du drone Kettering [215] F IGURE 3.5 – Photo de l’avion automatique Curtiss-
Sperry N-9 [216]

La première fois en 1930, un drone nommé Queen Bee, qui peut faire demi-tour, a été conçu par un scien-
tifique britannique. Il a été développé afin de piéger des avions ennemis dans la bataille. Le Queen Bee est le
père du drone moderne, comme il est présenté dans la figure 3.6. Le drone Queen Bee était radiocommandé
et pouvait voler jusqu’à 5,1816 [km] et parcourir une distance maximale de 482,803 [km] à plus de 160,934
[km/h]. Au total, 380 drones Queen Bee ont servi de cibles dans le Royal Air Force et la Royal Navy jusqu’à
leur retrait en 1947. En 1935, la star hollywoodienne Reginald DENNY eu l’idée d’un avion dirigé à distance
par radio, d’où le nom radio plane OQ Targets représenté dans la figure 3.7.

39
F IGURE 3.6 – Photo du drone Queen Bee et sa sta- F IGURE 3.7 – Photo de Reginald Denny et son ’Ra-
tion de contrôle au sol [221], [215] dioplane’ RP-1 [217]

En 1938, Fieseler Flugzeuhau de l’armée allemande a conçu un drone nommé le Fieseler Fi-103, mieux
connu sous le nom de Vengeltungswaffe-1, ou V-1, il était lancé à partir d’une longue rampe en forme de
catapulte puis a voler à 756,392 [Km/h]. Le drone V-1 était alimenté par un plus de poussée, qui produisait un
son de bourdonnement caractéristique. Il pouvait transporter un missile de 907,1847 [kg], comme représenté
dans la figure 3.8. La figure 3.9 représente une photo du drone nommé ASM-N-2 BAT (SWOD Mk 9) guidé
par le radar de l’US Navy des États-Unis qui a été utilisé dans des combats antichar et véhicules à partir
d’avril 1944. Après la deuxième guerre mondiale, les systèmes drones ont évolués à cause de la nécessité

F IGURE 3.8 – La bombe volante V-1 [218] F IGURE 3.9 – Photo de la bombe ASM-N-2 BAT
(SWOD Mk 9) [219]

des applications militaires. En 1960, l’US Air Force a lancé son premier programme d’avions furtifs nommé
l’AQM-34 Ryan Firebee représenté dans la figure 3.10 contrôlé à partir de l’avion DC-130. Durant quinze ans
après le lancement du programme, plus de 1000 drones Ryan Firebee ont effectué plus de 34 000 missions
de surveillance opérationnelle en Asie du Sud-Est. En 1965, la CIA a produit un drone espion, invulnérable à
attaquer nommé U-D-21 Lockheed. Ce drone a été conçu pour atteindre Mach 4 (ou 4 fois la vitesse du son), il a
été transporté à bord d’un avion pilote M12 d’une portée de 4828 [Km]. Il a fonctionné à une altitude de 24,384
[km] et a été couvert d’un revêtement antiradar en plastique représenté dans la figure 3.11 (un seul drone a été
fabriqué). Le drone nommé Pathfinder représenté dans la figure 3.12 était un avion ultraléger à énergie solaire
développé par AeroVironment Corporation a la fin de 1993, il a été modifiée en 1998 dans la configuration
Pathfinder-Plus à ailes plus longues. Le 6 août 1998, Pathfinder-Plus a porté le record d’altitude à 24,5120165
[km] pour les avions à propulsion solaire et à hélice. La figure 3.13 représente un petit drone nommé AAI
Aerosonde, il a été conçu pour recueillir des données météorologiques sur les océans et les régions éloignées.
Il a été développé par la société Insitu il est maintenant fabriqué par la société Aerosonde Ltd. Il embarque un
petit ordinateur, des instruments météorologiques et un récepteur GPS pour la navigation. Le 21 août 1998, le

40
F IGURE 3.10 – Photo du drone AQM-34 Ryan Fire- F IGURE 3.11 – Photo du drone D21 [221]
bee [220]

AAI Aerosonde a effectué un vol de 3 031 mille (3 270 km) à travers l’océan Atlantique à une altitude de 580
mètres (1 500 m) et a été le premier aéronef à traverser l’océan Atlantique. Les aérosondes sont également les
premiers avions sans pilote à pénétrer dans les cyclones tropicaux, lors de missions en 2001 et 2005. À cette

F IGURE 3.12 – Photo du drone Pathfinder-Plus [222] F IGURE 3.13 – Photo du drone AAI Aerosonde
[223]

époque, le drone a évolué en technologie ce qui l’a rendu sophistiqué, par exemple : le General Atomics MQ-1
Predator est décrit comme un système drone MALE (moyenne altitude, longue endurance) représenté dans la
figure 3.14. Il peut servir dans un rôle de reconnaissance et a tirer deux missiles type AGF-114 Hellfire. Utilisé
depuis 1995, le système Predator a été initialement désigné comme le Predator RQ-1. Le «R» est la désignation
du ministère de la défense pour la reconnaissance et le « Q» désigne un système d’aéronef sans pilote. Le « 1»
le décrit comme étant le premier d’une série de systèmes d’avions construits pour la reconnaissance sans pilote.
Le RQ-1 peut voler 741 [km] vers une cible, il a une autonomie de 14 heures. Le drone RQ-4 Global Hawk
représenté dans la figure 3.15 est un avion sans pilote de surveillance aérienne, il est similaire à l’avion espion
TR-1.
Le drone RQ-4 Global Hawk représenté dans la figure 3.15 coûte environ 35 millions de dollars américain
(coûts réels par aéronef, les coûts de développement étant également inclus, le coût par aéronef s’élève à 123,2
millions USD chacun.). Le drone RQ-4 a une envergure de 35,3568 mètres, il peut soutenir les opérations
aériennes jusqu’à 32 heures de façon autonome et recueillir et transmettre des données de surveillance à 19812
mètres, puis retourner à sa base sans ravitaillement.
Aujourd’hui, les systèmes drone ont évolué et se sont étendus à des conceptions très différentes comme
les quadricoptères, les drones à soufflantes (une soufflante est un propulseur à hélice qui pulse de l’air) et les
dirigeables en plus d’approches classiques à voilure fixe et en hélicoptère. Ils ont également acquis de nouveaux
rôles au-delà de la reconnaissance et ont également trouvé des applications au-delà du domaine militaire. Dans

41
F IGURE 3.14 – Photo du drone RQ-1 [224] F IGURE 3.15 – Photo du drone Global Hawk RQ-
4 [225]

F IGURE 3.16 – Photo du drone DJI [226] F IGURE 3.17 – Photo du drone DJI Inspire utilisé
pour inspection [227]

le secteur commercial le rapport annuel publié par la Federal Aviation Administration (Aerospace Forecast
Report) FAA des États-Unis estime que plus de sept millions de drones sont achetés entre 2016 et 2020 [12].
Un autre rapport récent [2] publié par Pricewaterhouse-Coopers (PwC) la plus grande entreprise de services
professionnels au monde, estime le marché mondial des applications de drones à plus de 127 milliards de dollars
en 2020.

3.4 Classification des drones

Selon le principe de vol, les drones peuvent être classés en plusieurs types. La figure 3.18 illustre une
méthode de classification commune, dans laquelle les drones sont d’abord classés en fonction de leur masse.
Par exemple, les drones « les plus lourds que l’air» ont normalement une masse importante de véhicule et
dépendent d’une poussée aérodynamique ou propulsive pour voler. D’un autre côté, les drones « les plus légers
que l’air», tels que les ballons et les dirigeables, reposent normalement sur la force de flottabilité (par exemple,
en utilisant de l’hélium ou de l’air chaud) pour voler. Les drones « les plus lourds » peuvent être classés en «
aile» ou « rotor». Les drones de type « Wing», y compris les drones à voilure fixe, à voilure tournante et à ailes
battantes, s’appuient sur leurs ailes pour générer une portance aérodynamique ; les drones de type « rotor», y
compris une multitude de multirotors, reposent sur multiples rotors et les hélices qui pointent vers le haut pour
générer une poussée propulsive.

42
Drone
Plus lourd que l’air Plus léger que l’air
Type d’aile Type de rotor

Aile battante

Quadcoptère

Hexacoptère

Dirigeable
Aile volante

Hélicoptère

Octocopter
Aile fixe

Ballon
F IGURE 3.18 – Les types de drones courants (inspiré de [110])

3.5 Les catégories de drone

Les drones sont classés en plusieurs types en fonction de leurs principes de vol. Dans la Figure 3.19, Flo-
reano et Wood [64] et Liew [110] donnent un aperçu de la manière dont les drone peuvent être classés en deux
composantes principales. Floreano et Wood dans [64] classent les drone en deux composantes principales : le
temps de vol et la masse de drone. La figure 3.19 représente un diagramme simplifié pour la classification des
drones. En général, les drones à ailes battantes sont généralement petits et ont un temps de vol court. Les drones
en dirigeable/ballon sont légers et ont un vol plus long. Les drones à rotor et à voilure fixe sont généralement
plus lourds. En supposant la même masse de drone et une conception optimale, les drones à voilure fixe auraient
un temps de vol plus long que les drones de type rotor en raison de leur plus grande efficacité aérodynamique.
D’un autre côté, Liew dans [110] propose de classer les drones en fonction du degré d’autonomie et du de-
gré de sociabilité. Traditionnellement, les drones sont contrôlés manuellement par des opérateurs humains et
ont un faible degré d’autonomie et de sociabilité (drone télécommandé). Graduellement, parallèlement à l’axe
vertical du degré d’autonomie, les chercheurs ont amélioré les aspects d’autonomie des drones, comme un
meilleur contrôle réactif avec plus de capteurs et de meilleurs algorithmes de planification de trajectoire (drone
autonome). Essentiellement, les drones autonomes ne dépendent pas d’opérateurs humains et sont capables de
réaliser des vols simples et des tâches de manière autonome. D’un autre côté, avec l’axe horizontal du degré de
sociabilité, les chercheurs ont amélioré les aspects sociaux des drones, comme la conception de drones sûrs pour
l’interaction homme-robot (IHR), le développement d’un modèle de planification de mouvement du drone qui
est plus confortable pour les êtres humains et la construction d’une interface de communication intuitive pour
les drones pour comprendre les êtres humains (drone social). Contrairement aux drones autonomes, les drones
sociaux ont souvent un faible degré d’autonomie. La plupart des chercheurs de l’interaction homme-robot se
concentrent uniquement sur les aspects sociaux et contrôlent manuellement un drone en utilisant la technique
du Magicien d’Oz (une expérience dans le domaine de l’interaction homme-machine et de l’ergonomie infor-
matique). Liew dans [110] lance d’abord l’expression « compagnon UAV », où il définit un drone compagnon
comme celui qui possède des degrés élevés d’autonomie et de sociabilité. En plus des aspects d’autonomie, tels
que le contrôle de stabilisation et la planification des mouvements, les drones compagnons doivent également

43
se concentrer sur les aspects de la sociabilité tels que la sécurité des interaction homme-robot et l’interface de
communication intuitive.

Degré d’autonomie
Temps de vol

Dirigeable Aile fixe Autonome Compagnon

Aile battante Type rotor Télécommandé Social

Masse du drone Degré de sociabilité

F IGURE 3.19 – Les deux méthodes de catégorisation des drones trouvées dans la littérature.

3.6 Les types de drones

Pour améliorer la compréhension et éviter la confusion, nous résumons dans cette section tous les types
de drones qui ont été proposés par les chercheurs dans les articles publiés dans les meilleurs journaux et
conférences telles que TRO (IEEE Transactions on Robotics), TME (IEEE/ASME Transactions on Mecha-
tronics), IJRR (IEEE The International Journal of Robotics Research), RAS (IEEE Robotics and Automation
Society), IROS (International Conference on Intelligent Robots and Systems), ICRA (International Conference
on Robotics and Automation), ICUAS (International Conference on Unmanned Aircraft Systems) et HRI (IEEE
conference on Human-Robot Interaction), au cours des seize dernières années. Nous décrivons brièvement la
nouveauté de chaque exemple de drone, y compris le quadricoptère, l’hexacoptère, aile fixe, aile battante, mo-
norotor, coaxial, ventilateur canalisé, octocoptère, planeur, dirigeable, ionique flyer, cyclocoptère, spincoptère,
Coanda, parafoil.

3.6.1 Les drones Quadricoptères

Un quadricoptère (figure 3.20) [104], [93], [135] - [56] est un drone à quatre rotors. Messieurs Papa-
christos et al. [135] présentent d’abord un quadricoptère autonome (figure 3.20a) avec une unité de perception
stéréo à monter soi-même (DIY) qui pourrait suivre une cible mobile et effectuer une navigation sans collision.
Dans le but de réduire la consommation d’énergie des quadricoptères, Kalantari et al. dans [92] ont conçu un
quadricoptère qui utilise une nouvelle pince adhésive pour se percher et décoller de façon autonome sur les pa-
rois verticales lisses. Kalantari et Spenko [93] construisent l’un des premiers quadricoptères hybrides capable
à la fois de locomotion au sol ( figure 3.20b). Alors que ce quadricoptère ne peut tourner que dans une seule
direction, Okada et al. dans [128] présentent un quadricoptère avec un mécanisme à cardan qui le permet de
tourner librement dans un espace 3D. Le quadricoptère développé est adapté pour les applications d’inspection
car la coque tournante de type cardan aide le quadricoptère à voler en toute sécurité dans un environnement
confiné avec de nombreux obstacles. À notre connaissance, Shen et al. dans [165] sont les premiers à pré-
senter un quadricoptère autonome (figure 3.20f) qui pouvait voler à l’intérieur et à l’extérieur en intégrant des

44
(b)

(a)

(d)
(c)

(e) (f)

F IGURE 3.20 – Les plates-formes quadricoptères (dans l’ordre alphabétique [135], [93], [228] , [1], [56] et
[165] )

informations provenant d’une caméra stéréo, d’un capteur lidar 2D, d’un IMU (unité de mesure inertielle), d’un
magnétomètre, d’un altimètre Capteur GPS. Visant l’application dans les missions de recherche et de sauvetage,
Ishiki et Kumon [85] présentent un quadricoptère qui est équipé d’un réseau de microphones pour effectuer la
localisation du son. Alors que le quadricoptère hybride représenté dans [93] est conçu pour rouler sur un sol
plat, Latscha et al. dans [104] ont combiné un quadricoptère avec deux robots mobiles ressemblant à des ser-
pents, qui rendent le robot hybride capable de se déplacer efficacement dans des scénarios de catastrophe. Pour
augmenter la sécurité et la robustesse d’un essaim de quadricoptère, Mulgaonkar et al. dans [124] ont conçus
un petit quadricoptère avec une masse de seulement vingt-cinq Grammes. En visant une meilleure performance,
Oosedo et al. dans [130] ont développé un quadricoptère unique qui peut planer stablement avec divers angles
de lancement avec quatre hélices inclinables. Abeywardena et al. dans [9] ont présenté un quadricoptère qui
utilise un filtre de Kalman étendu (EKF) pour produire une haute fréquence d’odométrie en fusionnant des in-
formations provenant d’un capteur IMU et une caméra monoculaire. Darivianakis et al. dans [51] ont conçu un
quadricoptère pouvant interagir physiquement avec les infrastructures qui sont inspectés. Driessens et Pounds

45
(a) (b)

(d)
(c)

F IGURE 3.21 – Les plates-formes hexacoptères (dans l’ordre alphabétique [38], [197], [127] et [154])

dans [56] ont présenté un quadricoptère "Y4" (Figure 3.20e) qui combine la simplicité d’un quadricoptère
conventionnel et l’efficacité énergétique d’un hélicoptère.

3.6.2 Les drones Hexacoptères

Un hexacoptère (figure 3.21a - 3.21d ) [38] - [127] est un drone avec six rotors. Burri et al.dans [38]
utilisent un hexacoptère (figure 3.21a) pour effectuer une étude d’identification du système. Plus précisément,
ils collectent des informations à partir d’une centrale inertielle IMU embarquée, les vitesses du moteur et la
pose de l’hexacoptère pour estimer le modèle dynamique complexe (requis pour un vol de positionnement
précis). En plus des informations venant de l’IMU , Zhou et al. dans [197] ont combinés des informations
visuelles de deux caméras orientées vers le bas pour effectuer une odométrie visuelle dans leur hexacoptère
(figure 3.21b). D’un autre côté, Yol et al. dans [190] ont démontré un hexacoptère qui pouvait effectuer une
localisation basée sur la vision en utilisant une caméra orientée vers le bas et des images géo-référencées.
La navigation et l’évitement d’obstacles sont également des sujets importants pour les drones. Nguyen et al.
dans [127] ont réalisé un algorithme de planification de trajectoire en temps réel avec évitement d’obstacles
pour un hexacoptère commercial (figure 3.21c). Semblable à un quadricoptère conventionnel, un hexacoptère
conventionnel est un avion non-holonome, qui ne peut pas se déplacer horizontalement sans changer d’attitude.
Messieurs Ryll et al. dans [154] ont présenté un hexacoptère (figure 3.22d) qui pourrait se transformer d’un
hexacoptère classique à un hexacoptère holonome, c’est-à-dire, capable de se déplacer horizontalement sans
incliner l’aéronef, en utilisant un servomoteur pour incliner les six rotors simultanément. De même, Monsieur
Park et al. dans [137] ont conçu un hexacoptère spécial avec six rotors asymétriques alignés et bidirectionnels,
qui permettent à l’hexacoptère d’effectuer un vol entièrement actionné. Bien que la capacité holistique d’un
hexacoptère n’est pas aussi efficace sur le plan énergétique qu’un hexacoptère conventionnel, il a plusieurs
mérites tels que la robustesse aux perturbations (par exemple le vent), la précision du vol, et l’interaction

46
intuitive homme-drone.

3.6.3 Les drones à aile fixe

Un drone à voilure (aile) fixe (figure 3.22a - 3.22d) [24], [134], [50], [142], [37] - [198], également
connu sous le nom d’avion, est l’un des avions les plus courants de l’histoire de l’aviation. Comparé à un avion
multi-rotor, un drone à voilure fixe a généralement une sécurité de vol plus élevée (capable de voler longtemps
après que les moteurs tombent en panne dans l’air) et un temps de vol plus long (beaucoup plus économe en
énergie). Bryson et Sukkarieh dans [37] montrent une application de cartographie avec leur drone à voilure
fixe en intégrant des informations provenant d’un capteur IMU, d’un capteur GPS et d’une caméra monocu-
laire orientée vers le bas. Hemakumara et Sukkarieh dans [78] se concentrent sur le sujet de l’identification
du système et visent à apprendre le modèle dynamique complexe de leur drone à voilure fixe en utilisant des
processus gaussiens. Morton et al. dans [122] se concentre sur le développement du matériel, où ils détaillent
la conception et les développements de leur drone solaire et fixe. Comparé à un drone multi-rotor, un drone
à voilure fixe est plus économe en énergie pendant le vol stationnaire mais sans la capacité de voler en sta-
tionnaire, un drone à voilure fixe ne peut pas maintenir sa position dans l’air et nécessite plus d’espace pour
le décollage et l’atterrissage. Bapst et al. dans [24] visent à combiner les mérites des deux types de drone,
lorsqu’ils présentent leur conception, la modélisation, et le contrôle d’un drone qui pourrait décoller et atterrir
verticalement (VTOL) comme un drone multi-rotor et effectuer une croisière de vol comme un drone à voilure
fixe (figure 3.22a). Verling et al. dans [180] ont présenté une autre architecture de ce type de drone hybride à
voilure fixe basé sur une nouvelle approche de modélisation et de contrôleur, où ils se concentrent sur la tran-
sition autonome entre les modes VTOL et le mode stationnaire (figure 3.22b). Les chercheurs ont également
exploré des approches sur les drones à voilure fixe avec des formes transformables. Daler et al. dans [50] ont
conçu un drone à voilure fixe qui pourrait voler dans les airs et marcher sur le sol en faisant tourner ses ailes.
D’Sa et al. dans [57] présentent un drone capable de voler dans une configuration à voilure fixe et d’effectuer
un VTOL comme un quadricoptère (figure 3.22c). Alexis et Tzes dans [15] présentent un drone hybride, où le
drone pourrait effectuer un vol stationnaire comme un drone à voilure fixe et effectuer un vol en stationnaire
comme un bi-coptère. Leur conception repose sur les structures des ailes / hélices hybrides : dans la configura-
tion à voilure fixe, les structures à une pale sont fixées aux bonnes positions et agissent comme des ailes ; dans
la configuration bi-coptère, les structures à une pale tournent et agissent comme des hélices. Papachristos et al.
dans [134] développent un autre type de drone hybride, où le drone peut effectuer un vol de croisière comme
un drone à voilure fixe et effectuer un vol en stationnaire comme un tricoptère. Plusieurs drones à voilure fixe
de la taille d’une plume ont également été conçus par des chercheurs. Zufferey et Floreano dans [198] ont
conçu un petit drone à voilure fixe de 30 Grammes seulement capable de naviguer de façon autonome dans un
environnement intérieur (figure 3.22d). En dépit de sa petite taille, le drone à voilure fixe de 30 Grammes peut
également éviter les obstacles pendant le vol en s’appuyant sur la technique des flux optiques.

3.6.4 Les drones à aile battante

Un drone à ailes battantes (figure 3.23a - 3.23b) [140], [150] - [152], également connu sous le nom
d’ornithoptère et généralement à peu près de la taille d’une main, est un drone qui génère une force de portance
en battant des ailes. Dans le but d’améliorer la modélisation aérodynamique, Rose et Fearing dans [150]

47
(a)

(b)

(c)
(d)

F IGURE 3.22 – Les plates-formes à aile fixe (dans l’ordre alphabétique [24], [180], [57] et [198]

comparent les données de vol recueillies dans une soufflerie aux données de vol recueillies à partir d’une
condition de vol libre en utilisant leur drone UAV-H2Bird en forme d’oiseau (figure 3.23a). Ils trouvent que les
données de vol recueillies dans la soufflerie ne sont pas suffisamment précises pour prédire les données de vol
pendant le vol libre et d’autres expériences sont nécessaires.

(a) (b)

F IGURE 3.23 – Les plates-formes à aile battante (dans l’ordre alphabétique [150] et [140])

Rose et al. dans [151] ont développé un système de lancement coordonné pour le drone H2Bird en le
montant sur un robot hexapède . Avec l’aide du robot hexapédal, le drone H2Bird a une vitesse de lancement
plus régulière. Peterson et Fearing dans [140] développent un drone nommé UAV-BOLT à aile battante capable
de voler et marcher sur le sol comme un robot bipède (figure3.23b). Inspiré par les oiseaux, Paranjape et al.
dans [136] conçoivent un drone à ailes battantes capable de se percher naturellement sur une chaise ou une
main humaine. L’une des caractéristiques uniques de leur drone est de contrôler la trajectoire de vol et les

48
angles de cap en utilisant l’articulation de l’aile. D’autre part, Lamers et al. dans [101] ont développé un drone
à ailes battantes doté d’un mini système de caméra monoculaire. En combinant la caméra et un capteur de
proximité, leur drone peut détecter les obstacles en appliquant une méthode d’apprentissage automatique. Les
drones à ailes battantes avec des formes d’insectes sont également courants. Par exemple Ma et al. dans [112]
fabriquent un drone à ailes battantes en forme d’abeille qui a une masse de 380 milligrammes en utilisant de
nouvelles méthodes. Après avoir détaillé leurs processus de conception et de fabrication, ils montrent également
un vol stationnaire avec le mini drone développé. Rosen et al. dans [152] développent un autre drone à ailes
battantes à écailles d’insecte capable de flotter et de glisser.

3.6.5 Les drones à monorotor , coaxial et à ventilateur

Un hélicoptère monorotor (figure 3.24a) [117] [100] est un drone qui repose sur un rotor principal et un
rotor de queue pour générer la poussée pour les VTOL, en vol stationnaire, en avant, en arrière, et vols latéraux.
En utilisant un système de perception basé sur le capteur lidar, Merz et Kendoul [117] présentent un hélicoptère
capable d’éviter les obstacles et d’effectuer des inspections à courte distance des infrastructures. Aussi, Backus
et al. dans [118] se concentrent sur la manipulation aérienne d’un hélicoptère. Plus précisément, ils conçoivent
une main robotisée pour leur hélicoptère pour effectuer des actions de préhension et d’accrochage. Laiacker et
al. dans [100] visent à optimiser leur système d’asservissement visuel sur un hélicoptère équipé d’un manipula-
teur industriel à sept degrés de liberté. D’autre part, un hélicoptère coaxial (figure 3.24b) est un drone qui utilise
deux rotors contrarotatifs montés sur le même axe pour générer la poussée du VTOL, en vol stationnaire, en
avant, en arrière et en latéral. Moore et al. dans [121] mettent en œuvre un capteur de vision omnidirectionnel
léger pour leur mini hélicoptère coaxial afin d’effectuer une navigation visuelle. Classiquement, un hélicoptère
nécessite un servomoteur supplémentaire et un dispositif mécanique appelé plateau cyclique pour le contrôle
de position horizontale. Paulos et Yim dans [139] présentent un nouvel hélicoptère coaxial qui ne nécessite
aucun servomoteur et dispositif mécanique pour le contrôle de la position horizontale.
Afin d’effectuer un mouvement horizontal, les rotors sont entraînés par un signal modulé afin de générer
simultanément des forces de levage et latérales. Au lieu d’éviter les obstacles comme un drone conventionnel,
Briod et al. dans [36] ont conçu un hélicoptère coaxial qui utilise des capteurs de force autour du drone
pour détecter les obstacles et pouvoir effectuer une navigation autonome en toute sécurité sans risques élevés
de collisions. Un drone à ventilateur canalisé (figure 3.24c) est un drone dont la configuration des rotors est
similaire à celle d’un hélicoptère coaxial, mais les rotors sont montés dans un conduit cylindrique. Le conduit
contribue à réduire les pertes de poussée des hélices et les ventilateurs canalisés ont normalement des vitesses
de rotation.

3.6.6 Les drones Octocoptère, Glider, Blimp et Ionic Flyer

Un octocoptère (figure 3.25a - 3.25b) [161], [35] est un drone à huit rotors. Schneider et al. dans [161]
montrent un octocoptère avec un système de caméra nommée fisheye capable d’exécuter une fonction de loca-
lisation et de cartographie simultanées (SLAM) (figure 3.25a). Contrairement à un octocoptère conventionnel,
Brescianini et D’Andrea dans [35] construisent un octocoptère qui possède huit rotors orientés dans huit di-
rections différentes dans l’espace 3D (figure 3.25b). Cette configuration unique permet au drone d’avoir six
degrés de liberté et de voler de façon stable à n’importe quelle position. Plus important encore, l’octocoptère

49
(b)
(a)

(c)

F IGURE 3.24 – Les plates-formes à monorotor, coaxial et à ventilateur (dans l’ordre alphabétique [117], [100]
et [36] )

est capable de contrôler sa force dans l’espace 3D et il est utile pour des applications telles que la manipulation
aérienne. Un multirotor est un drone avec plus d’un rotor et avec une configuration simple de rotors pour le
contrôle de vol. Oung et D’Andrea dans [132] conçoivent un système multirotor modulaire, où chaque avion à
rotor a une forme hexagonale et peut être assemblé dans un avion multirotor avec une configuration différente.
Avec un algorithme d’estimation d’état distribué et une stratégie de contrôle paramétrée, le multirotor est ca-
pable de voler dans n’importe quelle configuration à l’intérieur et à l’extérieur. Un planeur (figure 3.25c) [186],
[49] est un drone qui utilise ses ailes et son aérodynamisme pour glisser dans l’air. Le planeur a normalement
une forme similaire à un drone à voilure fixe, mais ne dépend pas d’un système de propulsion actif pendant la
performance de vol à voile. Par exemple, Cobano et al. dans [49] montrent de multiples planeurs qui peuvent
glisser en coopération dans le ciel (figure 3.25c). Pour planer longtemps dans le ciel sans contrôle actif de la
propulsion, les planeurs détectent les courants thermiques et exploitent leur énergie pour monter en flèche et
continuer à glisser dans l’air. Inspirés par une chauve-souris, Woodward et Sitti dans [186] construisent un type
différent de drone planeur, où drone peut sauter du sol puis utiliser ses ailes pour planer dans l’air.
Un dirigeable, également connu sous le nom de dirigeable non rigide, est un drone plus léger que l’air qui
contient du gaz d’hélium à l’intérieur d’une enveloppe pour générer une force de levage [162]. Différent d’une
montgolfière ou d’un ballon à air chaud, un dirigeable garde sa forme d’enveloppe avec la pression interne
de l’hélium et possède des unités de commande pour le contrôle du mouvement. En utilisant un système de
capture de mouvement, Muller et Burgard dans [125] présentent un dirigeable autonome qui peut naviguer
dans un environnement intérieur avec une méthode de planification de mouvement en ligne. Poon et al. dans
[141] visent à concevoir un drone silencieux et sans vibrations en utilisant la propulsion ionique, où ils appellent
leur drone Flyer Inoic UAV (figure 3.25d ). Au lieu d’utiliser des rotors, ils créent une unité de propulsion qui
n’a aucune pièce mécanique en mouvement et qui repose sur une tension électrique élevée pour créer une
poussée en accélérant les ions.

50
(a)
(b)

(c)

(d)

F IGURE 3.25 – Les plates-formes Octocoptère, Planeur, Blimp et Ionic Flyer (dans l’ordre alphabétique [161],
[35], [49] et [141])

3.6.7 Les drones Cyclocoptére, Spincopter, Coanda, Parafoil et Kite

Un cyclocoptére (figure 3.26a, 3.26b) [175], [74] est un drone qui vole en faisant tourner une aile cyclogyro
avec plusieurs ailes positionnées autour du bord d’une structure cylindrique. Généralement, les angles d’attaque
des ailes sont ajustés collectivement par un servomoteur pour générer les forces requises. Tanaka et al. dans
[175] ont construit un cyclocoptére capable de faire les angles d’attaque en utilisant un nouveau mécanisme
de point excentrique sans actionneurs supplémentaires (figure 3.26a). Hara et al. dans [74] ont développé un
cyclocoptère basé sur une structure de pantographe où les diamètres des ailes peuvent être élargis ou contractés
(par rapport à l’axe de rotation) pour le contrôle de vol (figure 3.26b). Un spincopter (figure 3.26c - 3.26d)
[131], [196] est un drone qui tourne sur lui-même pendant le vol. Orsag et al. dans [131] ont conçu un
drone spincopter capable de faire tourner les ailes centrales (et l’ensemble du drone) à l’aide de deux petits
moteurs montés sur le bord de l’anneau virtuel du drone (figure 3.26c). Les moteurs ajustent leur poussée
de sortie symétriquement / asymétriquement pour le contrôle de mouvement vertical / horizontal. En utilisant
une conception asymétrique et une stratégie de contrôle en cascade, Zhang et al. dans [196] présentent un
spincopter qui a trois degrés de liberté en translation et deux degrés de liberté en rotation avec un seul rotor
(figure 3.26d). Un drone Coanda est un avion qui produit une force de levage en utilisant l’effet Coanda.
Plus précisément, l’effet Coanda est causé par la tendance d’un jet de fluide à suivre une surface adjacente
et à attirer le fluide environnant. Grâce au principe de Bernoulli, où la pression est faible lorsque la vitesse
est élevée, un drone de Coanda peut générer suffisamment de force de levage pour planer dans l’air lorsque
l’effet Coanda est suffisamment fort. Han et al. dans [73] ont développé un drone Coanda sous une forme de

51
(a)
(b)

(c)
(d)

(f)

(e)

F IGURE 3.26 – Les plates-formes Cyclocopter, Spincopter, Coanda, Parafoil et Kite (dans l’ordre alphabétique
[175], [74], [131], [196], [47] et [73])

52
soucoupe volante (figure 3.26f). En ajoutant des servomoteurs supplémentaires sur le drone pour le contrôle des
volets, son drone Coanda est capable d’effectuer des mouvements en VTOL et en horizontaux dans l’air. Les
drones Parafoil (figure 3.26e) [39] et les drones cerfs-volants [47] ressemblent aux formes et aux principes
de vol d’un parafoil ou d’un cerf-volant. Pour une application de livraison de cargo aérien, Cacan et al. [39]
ont amélioré la précision d’atterrissage d’un drone parafoil autonome avec l’aide d’un système de mesure du
vent au sol (figure 3.26e) tandis que Christoforou développe un drone robotisé cerf-volant qui peut naviguer
automatiquement dans l’air [47].

3.7 Conclusion

D’après ce chapitre, afin de tester le système de contrôle de vol, nous avons choisi d’utiliser le drone type
quadricoptère. Cela est justifiée par le nombre de d’articles publiés sur les quadricoptères dans les conférences
et les journaux de classe A tel que TRO, TME, IJRR, RAS, IROS, ICRA, ICUAS, HRI et ROMAN. Ce nombre
passe de 7, 19 142 à 377 au cours des seize dernières années ils ont le nombre d’articles le plus élevé par rapport
aux autres types de drone, selon l’étude [110]. Malgré que, des types comme l’hexacoptère et l’octocoptère
attirent davantage l’attention des chercheurs, car ils ont plusieurs avantages par rapport aux quadricoptères ; ils
sont toujours capables de voler/atterrir en toute sécurité quand un moteur fonctionne mal sans un algorithme de
contrôle complexe. Deuxièmement, ils peuvent gérer des charges utiles plus élevées et les chercheurs peuvent
monter un matériel plus lourd, comme un bras robotisé pour une application de manipulation aérienne, ou un
capteur Lidar 3D pour une application de cartographie. Le nombre de papiers hexacoptères de 2009-2016 est à
45 et le nombre de papiers octacoptère est à 222 pour la même période. Par contre, ces nombres restent toujours
faible par rapport au nombre de papiers quadricoptère. Les sociétés comme par exemple DJI toujours a préférée
le quadricoptère. Dans le chapitre prochain la modélisation et identification des drones type quadricoptère est
représentée, nous avons choisi pour l’application réelle un drone commercial nommée AR-Drone.

53
Chapitre 4

Modélisation et identification des drones


quadricoptère

4.1 Introduction

La plate-forme quadricoptère que nous avons utilisé est définie comme un système sous actionné équipé de
quatre moteurs. Il se déplace dans six degrés de liberté avec une vitesse pouvant aller jusqu’à 50 [km/h]. Il peut
rester en vol stationnaire pendant quinze à trente minutes et il peut couvrir un rayon de vol jusqu’à un km. Pour
tester le système de pilotage intelligent proposé, un environnement de simulation est développé en fonction
du modèle mathématique non-linéaire du quadricoptère. Le modèle mathématique qui comprend les équations
du mouvement, est présenté dans le présent chapitre ainsi, que l’identification du modèle d’un quadricoptère
commercial nommé AR-Drone V2.0 représenté dans la figure 4.1.

F IGURE 4.1 – Photo du drone quadricoptère AR-Drone V2.0 ; un test de vol au laboratoire IBISC-France

Le système de commande proposé contient deux types de contrôleur : le contrôleur PID et le contrôleur flou.

54
Pour le contrôleur flou de pilotage en mode navigation (x, y, z et ψ) sont tirées en se basant sur l’identification
des informations heuristiques et l’analyse des mouvements de quadricoptère. D’autre part l’utilisation du mo-
dèle mathématique non-linéaire du quadricoptère est nécessaire pour tester en simulation l’approche développé
nommée SECV (Système de contrôle de vol intelligent évolutif).

4.2 Modèle mathématique du drone quadricoptère

4.2.1 Représentation des repères utilisés

Nous utilisons la dérivation de Coriolis pour mieux représenter les mouvements relatifs du drone en dé-
placement, nous proposons les repères des coordonnées suivants (Figure 4.2) : le repère inertiel, le repère du
véhicule et le repère du corps. La notation et les repères de coordonnées sont typiques dans la littérature aéro-
nautique. Les équations mathématiques de la cinématique et dynamique du quadricoptère sont présentés comme
suit :

Repère corps Repère véhicule


Re Rv

ye xv
yv oe ov
xe

zv

ze

Repère inertiel
Ri

oi xi
yi

zi

F IGURE 4.2 – Les repères : inertiel, du corps et du véhicule

55
La relation entre les vitesses de translation du quadricoptère dans les trois repères prédéfinis peut être
mathématiquement écrite comme suivant :

ẋ = cθcψu + (sφsθcψ − cφsψ)v + (cφsθcψ + sφsψ)w (4.1)


ẏ = cθsψu + (sφsθsψ + cφcψ)v + (cφsθsψ − sφcψ)w (4.2)
ż = sθu − sφcθv − cφcθw (4.3)

Où, s φ = sin (φ) et c φ = cos (φ). La même notation s’applique pour s θ, c θ, s ψ et c ψ. Le modèle cinématique
de rotation peut donc être représenté comme suit :

φ̇ = p + sin(φ) tan(θ)q + cos(φ) tan(θ)r (4.4)


θ̇ = cos(φ)q − sin(φ)r (4.5)
ψ̇ = (sin φ/ cos θ)q − (cos φ/ cos θ)r (4.6)

Où, x, y et z représentent la position inertielle du quadricoptère le long de xi , yi et −zi en Ri (le repère inertiel).
( u, v et w) représentent respectivement les vitesses de translation mesurées le long de xv , yv et zv en RV
(le repère lié au corps). En outre, (φ, θ et ψ) représente respectivement les angles de roulis, de tangage et de
lacet définissant par à rapport a Re . Par ailleurs, (p, q et r) représentent respectivement les vitesses de rotation
mesurés le long de xv , yv et zv dans Rv . Dans cette thèse, nous ne décrirons pas en détail le modèle dynamique
basé sur le formalisme Newton-Euler en raison du grand nombre de thèse qui l’on fait ( [229], [98] et [162]).
Les équations mathématiques des dynamiques de translation du quadricoptère peuvent être exprimées comme
ci-dessous :

u̇ = rv − qw − g sin θ (4.7)
v̇ = pw − ru + g cos θ sin φ (4.8)
ẇ = qu − pv + g cos θ cos φ + F/m (4.9)

Deuxièmement, les équations de la dynamique de rotation peuvent également être exprimées comme suit :

ṗ = (Jyy − Jzz /Jxx )qr + (1/Jxx )Cφ (4.10)


q̇ = (Jzz − Jxx /Jyy )pr + (1/Jyy )Cθ (4.11)
ṙ = (Jxx − Jyy /Jzz )pq + (1/Jzz )Cψ (4.12)

Où, m représente la masse totale du quadricoptère, g est la gravité et Jxx , Jyy et Jzz représentent les moments
d’inerties pour le quadricoptère. La méthode utilisée pour calculer les moments d’inerties est détaillée dans
[192]. F représente la force résultante appliquée sur le COG du quadricoptère (Centre de Gravité). Les termes
Cφ , Cθ et Cψ représentent respectivement les couples de roulis, de tangage et de lacet.

56
F
Fl Ff
Fr • •
Fb

• •

mg • •

F IGURE 4.3 – Les forces agissent sur le quadricoptère

Dans le modèle dynamique, les équations de force comprennent la portance aérodynamique générée par
chaque rotor et l’attraction gravitationnelle en fonction de l’élévation totale générée. Les moments sont les
couples générés afin de réaliser les mouvements de roulis, de tangage et de lacet. La force de poussée et la
traînée produites par les hélices sont proportionnelles au carré de la vitesse angulaire comme il est indiqué
dans l’équation 4.14. Nous supposons que la vitesse angulaire est directement proportionnelle au signal de
commande par modulation de largeur d’impulsion envoyé aux moteurs. Par conséquent, la force et le couple de
chaque moteur peuvent être exprimés comme suit :

F∗ = K1 Ω2∗ (4.13)
C∗ = K2 Ω2∗ (4.14)

Où K1 et K2 représentent des constantes qui doivent être déterminées expérimentalement, Ω∗ est le signal de
commande du moteur et l’indice ∗ représente f , r, b et l, les moteurs avant, droit, arrière et gauche du drone.
Les forces et les couples agissant sur le quadricoptère sous configuration croisée (comme représenté dans la
figure 4.3 ) peuvent être écrits comme suit :

F = K1 Ω2f + K1 Ω2r + K1 Ω2b + K1 Ω2l (4.15)


Cθ = lK1 Ω2f − lK1 Ω2b (4.16)
Cφ = −lK1 Ω2r + lK1 Ω2l (4.17)
Cψ = −K2 Ω2f + K2 Ω2r − K2 Ω2b + K2 Ω2l (4.18)

Notez que le signal par modulation de largeur d’impulsion (MLI, en anglais PWM) Ω∗ doit être compris entre
zéro et un (1). Où, l est la distance du COG (centre de gravité) au centre du moteur.
Pour un quadricoptère de configuration X, les forces et les couples peuvent également être écrits comme suit :

57
F = K1 Ω2f + K1 Ω2r + K1 Ω2b + K1 Ω2l (4.19)
Cθ = 0.707lK1 (Ω2f + Ω2l ) − 0.707lK1 (Ω2b + Ω2r ) (4.20)
Cφ = 0.707lK1 (Ω2r + Ω2l ) − 0.707lK1 (Ω2b + Ω2l ) (4.21)
Cψ = −K2 Ω2f + K2 Ω2r − K2 Ω2b + K2 Ω2l (4.22)

4.3 Les mouvements principaux de l’AR-Drone

L’AR-Drone contient un contrôleur interne pour commander le tangage (figure 4.4 (3)), le roulis (figure 4.4
(2)), la variation de lacet (figure 4.4 (4)) et la variation de z (respectivement θdes , φdes , ψ̇des , żdes ), il permet
aussi au drone de rester à sa position actuelle quand aucun ordre n’est envoyé (le vol stationnaire figure 4.4 (1)).

F IGURE 4.4 – les mouvements principaux du quadricoptère : (1) stationnaire, (2) roulis, (3) tangage et (4) lacet.

4.3.1 Les mouvements de tangage et de roulis

Nous commençons par l’analyse du contrôleur du tangage intérieur du drone, le contrôleur prend la valeur
du tangage désiré θdes comme une entrée et produit le tangage réel θ en sortie. Nous supposons une fonction
de transfert du deuxième ordre de forme générale suivante :

θ(s) kωo2
G(s) = = 2 (4.23)
θdes (s) s + 2ζωo s + ωo2

Les paramètres k, ωo , ζ peuvent être tirés à partir d’une réponse indicielle (step) en utilisant les équations
suivantes [10] :

√−πζ
Dépassement = D = e 1−ζ 2 , (4.24)

58
ln(D)
ζ=p , (4.25)
π 2 + ln(D)2

ϕ = arctan ζ, (4.26)

1 ϕ
Temps de montée = tm ≈ e tan(ϕ), (4.27)
ωo

eϕ tan(ϕ)
ωo = , (4.28)
tm

valeur d’état régulier


gainDC = G(o) = k = , (4.29)
valeur d’entrée

La représentation d’état équivalente à la fonction de transfert de l’équation 4.23 est :

ẋ = Ax + Bu (4.30)

y = Cx + Du (4.31)

Donc :
      
d θ  0 1 θ 0
=   +   θdes , (4.32)
dt θ̇ 2
−ωo −2ζωo θ̇ kωo2
 
h i θ
y = 1 0   = θ. (4.33)
θ̇

Pour arriver à la représentation d’état discrète, nous ajoutons un bloqueur d’ordre zéros avec un temps
d’échantillonnage ∆t.

xt+1 = Axt + But , (4.34)

yt = Cxt + Dut , (4.35)

Avec :

A = eA∆t , (4.36)

Z +∆t
B= eA(∆t−τ ) Bdτ, (4.37)
0

C = C, (4.38)

D = D, (4.39)

59
Autrement, pour convertir la fonction de transfert continue G(s) directement en une fonction de transfert à
temps discret, nous utilisons la formule suivante :

G(s)
 
H(z) = (1 − z −1
)Z . (4.40)
s

Cette méthode est standard dans Matlab pour convertir le temps continu au discret. Un changement dans le
mouvement de tangage génère une force sur le drone comme montre la figure 4.5, qui provoque le mouvement
en avant. Grâce à la petite valeur de l’angle de tangage, les axes v1 – v3 sont proches des axes n1 – n3 , comme
indiqué dans la figure 4.5. Le seul mouvement est dans l’axe longitudinal, donc l’équation 4.9 devient :
   
u̇ F sin θ − D 
  1 
0 = F cos θ − mg  (4.41)
   
  m 
0 0

F IGURE 4.5 – Les forces du mouvement de tangage.

Qualitativement, l’étendue de la force de traînée D est proportionnelle au mouvement de tangage u. Après


une accélération inertielle (ẍ), le quadricoptère atteindra une certaine vitesse vers l’avant. Tel que l’effet de
ces forces, est explicite. La relation entre le tangage, la vitesse de translation et l’accélération est décrite par la
représentation d’état à temps discret suivante :
      
u a b u c
  =    +   θt , (4.42)
u̇ d e u̇ f
t+1 t

Les paramètres de ce système sont identifiés à partir des données expérimentales enregistrées à l’aide du
ROS (Robot Operating System) (cf. annexe A).

La procédure pour définir les forces de mouvement de roulis qui relie l’angle de roulis désiré φdes à l’angle
φ et à la vitesse de translation v est exactement la même que l’analyse de tangage et la vitesse de translation
u. Finalement, pour n’importe quel temps t nous avons simplifié les équations de mouvement (4.1)-(4.6) (Pour

60
petites valeurs des angles de tangage et roulis (θ et φ), nous permettons de substituer une petite approximation
des angles tel que : sin φ ≈ φ, sin θ ≈ θ et cos φ ≈ 1, cos θ ≈ 1 ) pour trouver ut et vt aux ẋt et ẏt , puis nous
intégrons pour obtenir la position.

xt+1 = xt + (−ut cos(ψt ) + vt sin(ψt ))∆t = xt + ẋt ∆t. (4.43)

yt+1 = yt + (−ut sin(ψt ) + vt cos(ψt ))∆t = yt + y˙t ∆t. (4.44)

4.3.2 La variation du lacet et d’altitude.

L’AR-Drone prend des entrées de contrôle pour la variation du mouvement de lacet, plutôt que l’angle de
déviation lui-même, dans ce cas-la, la fonction de transfert est donnée par la variation réelle de lacet par rapport
à la variation désirée de lacet :
ψ̇(s) kωo2
G(s) = = 2 (4.45)
ψ̇des (s) s + 2ζωo s + ωo2

Nous pouvons de la même façon identifier k ωo , ζ par une réponse indicielle échantillonnée et de transformer
les paramètres en une représentation d’état à un temps discret. Dans ce cas, le vecteur d’état devient x = [ψ̇ ψ̈].
Pour trouver l’angle de lacet, ψ, nous intégrons tel que :

ψt+1 = ψt + ψ̇∆t. (4.46)

De même manière, nous construirons le modèle d’altitude et sa variation ż.

4.4 Identification des mouvements de l’AR-Drone

Nous avons fait une série de tests expérimentaux sur l’AR-Drone. Les paramètres de ces contrôleurs internes
étant vues comme des inconnues (puisque le drone est commercial), ainsi, les deux paramètres du contrôleur
intérieur aussi bien que les différents mouvements de ce drone doivent être étudiés et identifiés afin de faire la
synthèse des contrôleurs flou de la navigation longitudinale et latérale (Cf. chapitre 5). D’après les tests nous
avons trouvé que l’AR-Drone accepte des valeurs des variables (angle, position et temps) respectivement en
degrés, millimètres et secondes. Le contrôleur interne accepte des valeurs de -1 à 1, correspondant à −12˚ et
+12˚ comme il est mentionné dans la table 4.1 pour ces expériences, les données ont été reçues à 15 échantillons
par secondes.

Propriété maximum
θmax 12 ◦
φmax 12 ◦
ψ̇max 100deg/s
żmax 700mm/s

TABLE 4.1 – Valeurs maximales des commandes du l’AR-Drone.

61
4.4.1 Identification du modèle de tangage et de roulis

Pour identifier les paramètres du mouvement de tangage de l’AR-Drone, nous faisons un décollage et on
attend que le drone se stabilise puis on donne une commande de tangage pendant 15 secondes, nous nous
intéressons aux valeurs θ, u et u̇ ; la consigne est de θdes = 1.2 ◦ . À partir de la réponse d’un échelon nous
déduisons le dépassement, le temps de montée et le temps de réponse.

Le temps de montée est le temps pour que la réponse monte de 10% aux 90% de la valeur d’état régulier
et le temps de réponse est défini comme étant le temps nécessaire pour atteindre une erreur de plus ou moins
2% de la valeur maximale de la réponse. Pour la valeur d’état, nous faisons la moyenne des valeurs de données
en régime permanent ; le rapport de cette valeur d’état sur la valeur d’entrée (valeur désirée) donne le gain
DC. Après, nous utilisons les équations (4.24-4.28) pour calculer les constantes k, ωo et ζ, donc la fonction de
transfert est comme suit :
θ(s) 0.3339
= 2 (4.47)
θdes (s) s + 0.2007s + 0.1293

Le tableau 4.2 résume les paramètres de la fonction de transfert de tangage. La figure 4.6 représente le test
expérimental du tangage θ sur le drone sachant que la consigne était de 1.2◦ . Nous utilisons alors la procédure
exposée dans les équations (4.32)-(4.38) .

2.5

1.5
θ

0.5

0
5 5.5 6 6.5 7
temps (sec)

F IGURE 4.6 – Réponse indicielle du contrôleur de tangage.

Pour transformer la fonction de transfert en temps-continu en la représentation d’état en temps-discret, on


prend ∆t = 0.067 = 15 échantillons/s :
      
θ 0.98 0.0184 θ 6.17−05
  =   +   θdes , (4.48)
θ̇ −0.0023 1 θ̇ 0.0067
t+1 t
 
h i θ
y = 1 0   = θ. (4.49)
θ̇
t

62
Paramètres Valeur
Dépassement 2.4%
Temps de monté 3s
Valeur d’état régulé 3.09 ◦
Gain DC(k) 2.5820
ζ 0.2790
ωo 0.3596

TABLE 4.2 – Les paramètres du modèle linéaire de tangage.

Donc la relation qui relie le tangage, la vitesse de translation et l’accélération est obtenu à partir des données
du test expérimental (les données sont prisent par utilisation du ROS Robot Operating System), on suppose que
cette relation est décrite par un système d’état du deuxième ordre en utilisant le Toolbox System identification
de Matlab pour obtenir les valeurs (a − f ) de l’équation (4.42). Donc cette relation est décrite comme suivant :
      
u 0.94 0.020 u 14.66
  =   +   θdes , (4.50)
u̇ −0.079 0.51 u̇ −50.1
t+1 t
 
h i u
y= 1 1   . (4.51)

t

Ensuite, nous intégrons u pour obtenir la position par rapport au repère du corps xc , en utilisant les équations
d’Euler :
xc t+1 = xc t + ut ∆t. (4.52)

Nous pouvons combiner les équations (4.48–4.52) pour obtenir la représentation d’état suivante :
      
xc 1 0 0 ∆t 0 xc 0
      
θ 0 0.98 0.0184 0 0  θ 
   0.00012 
    
(4.53)
      
 θ̇ 
  =
0 −0.0023 1 0 0   θ̇  +  0.0067 
   
 θdes ,
      
u 0 14.6 0.27 0.94 0.020
u
   0.0013 
    
u̇ 0 −49.49 −0.95 −0.079 0.51 u̇ −0.0030
t+1 t
  
1 0 0 0 0 xc
  
0 1 0 0 0
 θ 
 

(4.54)
  
y=
0 0   θ̇  .
0 0 0  
  
0 0 0 1 0
u
 

0 0 0 0 1 u̇
t

Par la suite, ce système est converti au temps continu comme suivant :


      
ẋc 0 −8.30 −0.050 1 −0.020 xc −4.6e−6
      
 θ̇  0 −0.50 0.92 0 0
  θ   0.0001 
      
(4.55)
      
 θ̈  = 0 0   θ̇  +  0.34 
−0.128 0.0014 0  θdes ,
   
  
      
 u̇  0 803.7 7.48 1.50 
−3.6   u   0.008 
   
  
ü 0 −3294 −28.47 −4.85 −30.82 u̇ −0.028

63
  
1 0 0 0 0 xc
  
0 1 0 0 0
 θ 
 

(4.56)
  
y=
0 0   θ̇  .
0 0 0  
  
0 0 0 1 0
u
 

0 0 0 0 1 u̇

La figure 4.7 représente une comparaison de la réponse de simulation, en utilisant les équations (4.55) et
(4.56) et celle de l’expérimental. D’après la comparaison, le modèle calculé s’approche du mouvement de
tangage de l’AR-Drone.

4.5
Measured
Simulated
4

3.5

2.5
θ (degree)

1.5

0.5

−0.5
0 2 4 6 8 10 12 14 16 18
T[(ec)

F IGURE 4.7 – Comparaison entre les réponses de tangage en simulation et en expérimentation de l’AR-Drone
avec θdes = 1.2 ◦ .

Nous répétons le même processus pour déduire la représentation d’état continu du roulis à partir de la com-
mande d’entrée φdes = −1.2 ◦ . L’équation (4.57), le tableau 4.3 et la figure 4.8 présente l’approximation de la
fonction de transfert continu et l’ensemble des données capter à partir de l’expérimental.
φ(s) 0.4209
= 2 (4.57)
φdes (s) s + 0.2633s + 0.1408

La figure 4.9 représente une comparaison entre la réponse correspondante aux données expérimentales et la
réponse de simulation de l’équation d’état continu du mouvement de roulis est comme suit :
      
ẏc 0 9.6 0.06 1.04 −0.019 yc −1.078e−5
      
 φ̇  0 −0.54 0.9 0 0
  φ   0.0002 
      
(4.58)
      
 φ̈  = 0 0   φ̇  +  0.422 
−0.144 0.0013 0  φdes ,
   
  
      
 v̇  0 1.4 
−936.42 −8.86 −3.09   v   −0.0141 
   
  
v̈ 0 757.15 7.27 −0.86 −3.1 v̇ 0.0120

64
0.5

−0.5
φ

−1

−1.5

−2

−2.5
2 2.5 3 3.5 4 4.5 5 5.5
temps (sec)

F IGURE 4.8 – Réponse indicielle du contrôleur du roulis.

Paramètres Valeur
Dépassement 3.2%
Temps de montée 3s
Valeur d’état régulé −3.5 ◦
Gain DC(k) 2.9899
ζ 0.3509
ωo 0.3752

TABLE 4.3 – Les paramètres du modèle linéaire du roulis.

  
1 0 0 0 0 yc
  
0 1 0 0 0
φ
 

(4.59)
  
y=
0 0 0   φ̇  .
0 0  
  
0 0 0 1 0
v
 

0 0 0 0 1 v̇
D’après la comparaison, le modèle calculé approche le mouvement de roulis de l’AR-Drone.

4.4.2 Identification de la variation de lacet et d’altitude

Nous répétons le même processus pour trouver la fonction de transfert du contrôleur de la variation du
l’angle de lacet. Pour une commande de ψ̇des = −80deg/s comme premier essai et une commande de ψ̇des =
−100deg/s comme deuxième essai. La fonction de transfert continu résultante pour ce modèle est la suivante :

ψ̇(s) 31.0277
= 2 (4.60)
ψ̇des (s) s + 8.8684s + 34.8430

Le tableau 4.4 résume les paramètres de la fonction de transfert avec une consigne de ψ̇des = −100deg/s.

65
1
Measured
Simulated

−1
φ (degree)

−2

−3

−4

−5
0 5 10 15 20
t(sec)

F IGURE 4.9 – Comparaison entre les réponses de roulis en simulation et en expérimentation de l’AR-Drone
avec φdes = −1.2 ◦ .

F IGURE 4.10 – Réponse indicielle du contrôleur de lacet.

La conversion de l’équation (4.60) à l’équation d’état continu donne les équations (4.61) et (4.62). La figure
4.11 représente une comparaison entre les réponses de l’expérimental et de la simulation.
      
ψ̇
  
0 1 0 ψ  
0 
 ψ̈  = 0 −8.9 1 ψ̇  +  0  ψ̇des , (4.61)
      
...     
ψ 0 −34.86 0 ψ̈ 31.051
h ih iT
y= 0 1 0 ψ ψ̇ ψ̈ (4.62)

66
Paramètres Valeur
Dépassement 0.04%
Temps de montée 0.28 s
Valeur d’état régulé - 89.1 deg/s
Gain DC(k) 0.8910
ζ 0.7512
ωo 5.9028

TABLE 4.4 – Les paramètres du modèle linéaire du lacet.

20
Measured
Simulated

−20
ψ̇(degree/sec)

−40

−60

−80

−100
0 2 4 6 8 10 12
t(sec)

F IGURE 4.11 – Comparaison entre les réponses indicielles du lacet en simulation et en expérimentation de
l’AR-Drone avec ψ̇des = −100deg/s.

À la fin, nous répétons la même procédure expérimentale pour identifier le modèle de l’altitude, en prenant
les valeurs suivantes : żdes = 75 mm/s et żdes = 225 mm/s. L’équation (4.63) et la figure 4.12 et le tableau 4.5
représentent respectivement la fonction de transfert associé et les résultats obtenus de l’identification.
La représentation d’état de l’altitude est résumée dans les équations (4.64) et (4.65). La figure 4.13 représente
la comparaison entre la simulation de cette dernière équation d’état avec les données expérimentales avec żdes
= 225 mm/s.

ż(s) 80.5013
= 2 (4.63)
żdes (s) s + 2.3974s + 87.0190

      

  
0 1 0 z  
0 
 z̈  = 0 −2.4 1 ż  +  0  żdes , (4.64)
      
...
      
z 0 −874 0 z̈ 80.54

67
0.12

0.1

0.08
ż (m/sec)

0.06

0.04

0.02

0
3 4 5 6 7 8 9 10 11 12 13 14
temps (sec)

F IGURE 4.12 – Réponse indicielle du contrôleur de l’altitude.

Paramètres Valeur
Dépassement 1.5%
Temps de montée 0.18 s
Gain DC(k) 0.9252
ζ 0.1285
ωo 9.3284

TABLE 4.5 – Les paramètres du modèle linéaire de l’altitude.

h ih iT
y= 1 0 0 z ż z̈ (4.65)

68
120

100

ż (mm/sec) 80

60

40

20

0
0 1 2 3 4 5 6 7 8 9 10
temps (sec)

0.12

0.1

0.08
ż (m/sec)

0.06

0.04

0.02

0
3 4 5 6 7 8 9 10 11 12 13 14
temps (sec)

F IGURE 4.13 – La comparaison de la dynamique de l’altitude de l’AR-Drone avec żdes = 70mm/s

Après la comparaison des résultats obtenus nous constatons que les modèles de la variation du lacet et
d’altitude sont proche des mouvements de lacet et d’altitude mesurés.

4.5 Conclusion

Dans ce chapitre, la modélisation d’un drone type quadricoptère est présentée. Cette phase est nécessaire
pour la réalisation du simulateur de vol dont la commande proposée sera testée.Il faut noter que l’identification
des différents mouvements du quadricoptère AR-Drone a pour but de faire la synthèse des bases des règles des
contrôleurs flous responsables de la navigation du quadricoptère qui nécessitent en priori une bonne connais-
sance du système. Il faut noter aussi que la modélisation en utilisant le formalisme Newton-Euler est limitée, ce
qui empêche par exemple d’utiliser ce modèle dans la synthèse des contrôleurs des mouvements agressifs (acro-
batie, etc.). Les sociétés de fabrication de drone se basent toujours dans la synthèse de pilote automatique sur
des modèles ou des dynamiques linéarisés. Par contre, dans cette thèse, les lois de commande dans le système
de pilotage automatique sont testées sur un modèle non-linéaire. Cela pose énormément de problèmes pour la
stabilité et la précision, afin de les surmonter une approche à base des algorithmes génétiques est proposée dans
le chapitre qui suit.

69
Chapitre 5

Système de contrôle de vol intelligent


(SCVI) pour les drones quadricoptères

5.1 Introduction

Premièrement, dans ce chapitre un système de contrôle de vol intelligent (SCVI) ou bien un pilote auto-
matique destiné pour un drone type quadricoptère est présenté. Le contrôleur à base de la logique floue et le
contrôleur PID classique sont hybridés dans cette structure (c’est un système de contrôle de vol intelligent per-
formant, simple à utiliser, etc.). Ce choix a été fait après une étude comparative entre les différentes techniques
déjà utilisées dans la littérature. Deuxièmement, le problème de réglage des paramètres du pilote automatique
SCVI est formulé mathématiquement puis les paramètres sont ajustés pour avoir les meilleures performances
de contrôle. Ensuite, une approche d’optimisation évolutionnaire à base des algorithmes génétiques est présen-
tée. Le réglage des paramètres est divisé en deux phases. L’approche est implémentée hors ligne sur le modèle
non-linéaire du quadricoptère présenté dans le chapitre précédent.

5.2 Définition du pilote automatique

L’autopilote ou pilote automatique est un dispositif de guidage et de commande automatique d’un véhicule
aérien sans intervention humaine partielle ou totale. Il s’agit plus précisément d’un système utilisé pour le
contrôle de la trajectoire d’un aéronef sans que l’opérateur humain nécessairement (pilote) le contrôle. Il ne
remplace pas l’opérateur humain, mais permet de l’aider à contrôler l’aéronef, ce qui lui permet de se concentrer
sur des aspects plus généraux de fonctionnement, comme la surveillance de la trajectoire, de la météo ou des
systèmes. Les pilotes automatiques ne sont pas utilisés uniquement dans les avions mais aussi dans les bateaux,
les véhicules spatiaux, ou encore les missiles. Les pilotes automatiques ont considérablement évolués au fil du
temps : en 1912 le premier pilote automatique a été développé par Lawrence Sperry il permet de maintenir
l’avion à un angle d’orientation nommé CAP ainsi qu’une altitude constante sans requérir l’attention du pilote.
L’angle CAP est mesuré à cette époque à l’aide d’une boussole et d’un compas gyroscopique. En 1930 la société
de Sperry Corporation a développé un pilote automatique qui garde l’avion sur la bonne trajectoire pendant
trois heures. En 1947, par conséquence de l’inclusion d’instruments supplémentaires de radio-navigation et en
utilisant des algorithmes de contrôle et les servomécanismes hydrauliques a permis aux avions d’être sous le

70
contrôle complet du pilote automatique pour effectuer des vols transatlantique, en plus d’avoir la possibilité de
faire le décollage et l’atterrissage automatique.
A nos jours, les avions complexes sont équipes des pilotes automatiques à trois axes (de roulis, tangage, lacet).
Ils sont divisé en phases du vol de décollage, de montée, et de croisière (vol de niveau), de descente, d’approche
et en phases d’atterrissage. Ils conduisent généralement les avions avec une consommation de carburant plus
économique qu’un pilote humain.
Les drones sont de nature autopilotés, ils ont bénéficié de l’évolution de la technologie des pilotes automatiques
embarqués dans les avions ordinaires et les missiles. Le point commun entre le pilote automatique des avions
et les drones est que tous les deux suivent une trajectoire (une mission de vol) sans l’intervention humaine. La
particularité des drones par rapport aux avions ordinaires est qu’ils ne transportent pas des humains et qu’ils
font plus de mission.
Le contrôle d’un drone d’un point de l’espace vers un autre point en évitant les obstacles prévus ou non-
prévus (en toute sécurité et fiabilité) passe par plusieurs tâches. Ces dernières peuvent être organisées dans
plusieurs niveaux : le premier niveau est la planification de mission c’est-à-dire le calcul du plus court chemin ou
l’optimisation de la trajectoire. Le deuxième niveau constitue la commande du drone. Ce niveau est responsable
aussi du choix du mode de vol à suivre en mode navigation (x,y ,z ,ψ ) ou en mode attitude/altitude (φ θ,ψ,z ).

5.3 Le choix d’une stratégie de commande pour les drones quadricoptères

Les chercheurs ont utilisé différentes façons pour choisir une stratégie de commande pour les drones qua-
dricoptère durant les dix dernières années (comme cela est présenté dans l’introduction générale), soit faire une
comparaison entre différentes stratégies de contrôle comme dans [33], [13], et [32], où il a été prouvé que
l’utilisation d’un contrôleur PID avec une technique de backstepping donne les meilleures performances de ro-
bustesse dans le contrôle d’attitude et d’altitude. Aussi dans [52] et [204], une étude a été réalisé sur différentes
stratégies de commande de quadricoptère, telles que le contrôleur PID classique, le contrôle par mode glissant
, le contrôle par feedback linearization-based. Pour qualifier la performance des contrôleurs, ils ont utilisé une
des critères tels que l’erreur absolue moyenne (MAE), la variance d’erreur (ER), l’intégrale de l’erreur absolue
(IAE), l’intégrale du carré de l’erreur (ISE), l’intégrale du temps par le carré de l’erreur (ITSE) et l’intégrale du
carré de la commande d’entrée du système (ISCI). Ces stratégies sont assez complexes en point de vue calcul et
leur consommation en énergie est considérablement élevée. Toutes ces stratégies ont été testées en simulation,
dont certaines ne sont toujours pas encore implémentés. Certains travaux se concentrent sur les stratégies de
réglage et l’ajustement des paramètres de réglage des pilotes automatiques comme dans [53], ils utilisent le
contrôleur flou CF pour ajuster les gains (paramètres), des contrôleurs PID des déplacements longitudinal (le
long de l’axe x) et latéral (le long de l’axe y), les auteurs montrent que cette technique donne de meilleures
performances que la méthode de Ziegler-Nichols. Dans [44], ils ont utilisé l’algorithme d’optimisation PSO
(Particle Swarm Optimization en anglais, ou OEP en français optimisation par essaim de particules) pour le
réglage des paramètres du CF de l’altitude et de l’attitude du drone.
Une loi de commande adaptative intelligente à base de la logique floue est proposée dans [80]. D’autres
algorithmes existent dans la littérature [16], [192] et [163] ou [66]. Une étude comparative est réalisée entre
différents types de contrôleurs flous tel que le Singleton et Non-Singleton dans [66]. De meilleurs résultats de
simulation ont été trouvé en utilisant la technique Cen-NSFLC (FLC au centre de non-singleton) par rapport

71
à l’utilisation de la technique Sta-NSFLC (stander NSFLC), en particulier en présence des niveaux de bruit
d’entrée de plus en plus élevés. Le contrôleur flou est également efficace pour les nouvelles structures de drone
quadricoptère, comme le drone nommé QBALL X4 testé dans [30]. Encore dans l’étude [84], les chercheurs
ont montré les avantages d’un contrôleur flou sur un modèle dynamique complexe du quadricoptère. Les tests
de simulation ont montré que l’utilisation des contrôleurs flous simples pour la commande des quadricoptères
assure des performances robustes. D’autre part, les sous ensembles flous du type-2 sont utilisés pour concevoir
un système de contrôle pour la navigation de drone dans [173] , les auteurs ont prouvé que les contrôleurs flous
type-2 sont plus efficaces par rapport aux contrôleurs flous classiques.

5.4 La présentation du pilote automatique SCVI

Dans cette section, le pilote automatique nommé SCVI (Système de Contrôle Vol Intelligent) est présenté
ainsi que la justification du choix d’un tel type de contrôleur. Le SCVI imite les actions d’un pilote humain
expérimenté lorsqu’il guide et maintient le drone quadricoptère à un emplacement spécifique (x, y, z et ψ).
Il doit être le plus simple possible. Le contrôle de vol est composé de deux boucles comme il est représenté
dans la figure 5.1 (Structure générale du système de contrôle du vol). La boucle interne contrôle l’altitude et
l’attitude du quadricoptère (dynamique la plus rapide).

ψd , zd

+ Contrôleurs
Contrôleurs
+ φd ,θd PID U Modèle
xd , yd Flous
− d’altitude non-linéaire
− type PID
/ Attitude

φ, θ, ψ et z

x, y

F IGURE 5.1 – Structure générale du système de contrôle du vol

Les contrôleurs PID sont utilisés dans de nombreuses applications du monde réel en raison de leurs bonnes
performances, ils sont appropriés pour donner le minimum d’action pour stabiliser les variables traitées, donc
ils consomment moins d’énergie. Selon les résultats obtenus dans [52], le contrôle PID sans la présence de
perturbations présente la plus petite erreur de suivi e(t), mais sa performance décroît de manière significative
en présence de perturbations et d’incertitudes. De plus, il nécessite un faible coût de calcul. Pour améliorer sa
performance contre les incertitudes de toutes natures il est préférable d’adapter ses paramètres avec par exemple
des techniques d’optimisation intelligentes.
Pour ces raisons, nous avons choisi en premier lieu d’utiliser quatre contrôleurs PID indépendants pour contrôler
l’altitude zd et l’attitude (φd , θd , ψd ). Afin d’éviter la saturation, nous avons dû tenir compte des plages de
travail des d’actionneurs (maximum et minimum), dans notre cas, les signaux de commande normalisés des

72
quatre moteurs ; Ωf , Ωr , Ωb et Ωl doivent être compris entre zéro (minimum) et un (maximum). La valeur de
modulation en largeur d’impulsion de chaque moteur est donnée par les équations suivantes :

Ωf = Uz + Uθ − Uψ + CM P (5.1)
Ωr = Uz + Uφ + Uψ + CM P (5.2)
Ωb = Uz − Uθ − Uψ + CM P (5.3)
Ωl = Uz − Uφ − Uψ + CM P (5.4)

Les variables Uθ , Uφ , Uz et Uψ sont calculées respectivement selon l’équation 5.5 qui est celle données
par les sorties des quatre contrôleurs PID. Le ’CMP’ est un paramètre déterminé d’une manière expérimentale
pour compenser le poids du quadricoptère. La commande délivrée par les quatre contrôleurs PID a la forme
suivante :
Z t
den
Un = Kpn · en + Kin en · dτ + Kdn · (5.5)
0 dt

L’indice n correspond respectivement à φ, θ, ψ et z. Par exemple pour calculer la sortie PID Uφ , nous utilisons
l’erreur eφ et les valeurs des paramètres de Kpφ , Kiφ et Kdφ . Ces derniers paramètres sont respectivement les
gains proportionnels, intégraux et dérivés de la boucle de contrôle PID de l’ angle θ. Finalement, les boucles
internes contiennent douze paramètres.

En deuxième lieu la boucle externe se compose de deux contrôleurs flous. Ce choix est justifié par les non-
linéarités qui peuvent être éliminées ou réduites par ce type de contrôleur, aussi ce type de contrôleur ne néces-
site pas la connaissance du modèle du système.
Les deux contrôleurs flous sont à action PID noté f cpid pour contrôler les déplacements linéaires du quadrico-
ptère x, y. Ils fournissent les valeurs de référence d’angle de roulis et de tangage respectivement θd et φd de
la boucle interne. La structure f cpid que nous avons utilisée est celle qui a été proposée par M.Z.Qiao dans
[143] elle est représenté dans la figure 5.2. Elle imite le comportement du contrôleur PID classique à condition
d’utiliser des fonctions d’appartenance triangulaires et uniformes pour les entrées et les sorties. De plus, le CF
utilise la méthode d’inférence product-sum-gravity. Il combine les fonctionnalités de contrôleur flou de type
PD (f cpd ) proposées par M. Mizumoto [120] et de contrôleur flou de type PI (f cpi ). Le contrôleur flou de
type PI f cpi peut être réalisé en concevant un contrôleur flou à trois entrées, l’erreur, la dérivée d’erreur et
l’intégration de l’erreur comme dans [129]. Cependant, cette méthode sera difficile à mettre en œuvre dans
la pratique, car l’ajout d’une variable d’entrée augmentera considérablement le nombre de règles de contrôle
(exemple dans le travail de [68]), car la construction d’une base des règles pour le contrôle flou devient une
tâche difficile et il faut plus de temps de calcul. Il est donc préférable de concevoir un contrôleur flou possédant
les caractéristiques du contrôleur PID en utilisant uniquement l’erreur e(t) et la dérivée d’erreur ė(t) comme
entrées pour le contrôle a mouvement latéral et longitudinal x et y (Figure 5.2). Les contrôleurs type de f cpd et
f cpi ont un comportement non linéaire, l’auteur dans [143] a réalisé une structure linéaire de ces contrôleurs
flous, leurs sorties sont données par les équations 5.6 et 5.7.

f cpd = f (e, de, t) = Kpd (A + P ke e + Dkde ė) (5.6)

73
R R
f cpi = Kpi Of dt = kpi (A + P ke e + Dkde ė)dt
R (5.7)
= kpi At + kpi kde De + kpi ke P edt

Où, Ke , Kde , Kpd et Kpi représentent les facteurs d’échelle du contrôleur flou. Le CF de type PID qui se
comporte de manière similaire au contrôleur conventionnel PID est la combinaison des contrôleurs flous type
PD et type PI, comme il est représenté sur l’équation 5.8.

f cpid = Kpd A + kpi At + (Kpd ke P + kpi kde D)e


R (5.8)
+kpi ke P edt + Kpd kde Dė

f cpd
e(t) Kpd
Ke +
Of f cpid

d Rt f cpi +
Kde Kpi 0 ·dτ
dt
ė(t)
Contrôleur F lou

F IGURE 5.2 – Structure d’un contrôleur flou type-PID

Comme présenté les figures 5.1 et 5.2, les contrôleurs flous de type PID ont des entrées identiques, l’erreur
e(t) et la dérivée de l’erreur ė(t) pour le mouvement latéral et longitudinal x et y. La sortie est f ckpid où l’indice
k prend les valeurs 1 et 2, qui sont respectivement les angles de tangage et de roulis désirés, θd et φd . Ces
derniers ne sont pas explicitement fournis au contrôleur. Au lieu de cela, ils sont anticipés en permanence
par les contrôleurs flous longitudinaux longitudinal et latéral du type PID de manière à stabiliser l’attitude du
quadricoptère.
Le contrôleur flou de type PID de la Figure 5.2 a un comportement non-linéaire qui dépend fortement des
valeurs des facteurs de mise à l’échelle Ke , Kde , Kpd et Kpi .

Pour réaliser la base de connaissance des deux CFs, trois fonctions d’appartenance sont choisie pour chaque
entrée (Figure 5.3), correspondantes à des valeurs négatives, nulles et positives de l’erreur et à sa dérivé . En
outre, le choix pour la sortie est fixé à cinq fonctions d’appartenance du type singletons comme présenté dans
la figure 5.4, ils correspondent à négatif grand et petit, positif grand et petit. Les valeurs maximales de la sortie
sont fixées à six degrés (cette valeur a été choisi après l’identification et l’étude des différentes mouvements du
drone AR-Drone (Cf.le chapitre précédent).

74
µ
N Z P
1 N : N egative
Z : Zero
0 P : P ositive
-1 -0.3 0 0.3 1 e
µ
N Z P
1 N : N egative
Z : Zero
0 P : P ositive
-1 -0.4 0 0.4 1 de

F IGURE 5.3 – Les fonctions d’appartenance des entrées

µ N B : N egative Big
NB NS Z PS PB
1 N S : N egative Small
Z : Zero
P S : P ositive Small
0 P B : P ositive Big
-5 -2 0 2 5 θd [deg]
µ N B : N egative Big
NB NS Z PS PB
1 N S : N egative Small
Z : Zero
P S : P ositive Small
0 P B : P ositive Big
-6 -3 0 3 6 φd [deg]

F IGURE 5.4 – Les fonctions d’appartenance des sorties

F IGURE 5.5 – Mouvement longitudinal F IGURE 5.6 – Mouvement latéral

Le pilote, quand il décide de faire avancer ou reculer le quadricoptère (mouvement longitudinal le long de
l’axe X), il fait ce que nous appelons un contrôle du tangage ; ce qui signifie faire varier l’angle θ (Figure 5.5)
de la même manière quand il veut déplacer le quadricoptère vers la gauche ou vers la droite, il fait un contrôle
du roulis et ceci en faisant varier l’angle φ (Figure 5.6 ). En outre, il maintient les angles de tangage et de
roulis jusqu’à la position (x, y) désirée. D’après l’identification des actions de tangage et de roulis faite par un
pilote (cf. chapitre 4), nous avons pu extraire un ensemble de règles linguistiques pour les contrôleurs flou des
déplacements longitudinal et latéral.

75
 La base des règles du contrôleur flou du déplacement latéral est donc la suivante :
Pour un mouvement latéral de référence yd , le contrôleur flou calcule la valeur l’angle de roulis désirée, φd , en
utilisant l’erreur de la position latérale, ey = yd - y mesuré par rapport au repère inertiel et la dérivée de l’erreur
latérale, dey
Les neuf règles utilisées pour le mouvement latéral sont présentées comme suit (cf. chapitre 4) :

— SI ey est N et dey est N, ALORS φd est NB


— SI ey est N et dey est Z, ALORS φd est NS
— SI ey est N et dey est P, ALORS φd est Z
— SI ey est Z et dey est N, ALORS φd est NS
— SI ey est Z et dey est Z, ALORS φd est Z
— SI ey est Z et dey est P, ALORS φd est PS
— SI ey est P et dey est N, ALORS φd est Z
— SI ey est P et dey est Z, ALORS φd est PS
— SI ey est P et dey est P, ALORS φd est PB

L’interprétation de la première règle est la suivante : si l’erreur de position est négative et que sa variation est
également négative, le quadricoptère s’éloigne de la position souhaitée, ce qui cause un angle de roulis positif,
puis un angle négatif, une valeur relativement important est nécessaire, afin de ralentir le mouvement latéral,
inverser la vitesse et réduire l’erreur de position.
 La base des règles du contrôleur flou du déplacement longitudinal :
Pour un mouvement longitudinal désiré, xd , le contrôleur flou calcule l’angle de tangage souhaité, θd , en utili-
sant l’erreur de position longitudinale, ex = xd - x mesurée par rapport au repère inertiel et la dérivée de l’erreur,
dex .

Les neuf règles utilisées pour le contrôle de mouvement longitudinal sont présentées comme suit (cf. cha-
pitre 4) :
— SI ex est N et dex est N, ALORS θd est PB
— SI ex est N et dex est Z, ALORS θd est PS
— SI ex est N et dex est P, ALORS θd est Z
— SI ex est Z et dex est N, ALORS θd est PS
— SI ex est Z et dex est Z, ALORS θd est Z
— SI ex est Z et dex est P, ALORS θd est NS
— SI ex est P et dex est N, ALORS θd est Z
— SI ex est P et dex est Z, ALORS θd est NS
— SI ex est P et dex est P, ALORS θd est NB
Un avantages d’utiliser le contrôleur flou (CF) est l’incorporation de l’expertise sur la façon de contrôler
le mouvement longitudinal et latéral dans un ensemble de règles linguistiques. Un autre avantage est la faible
sensibilité du bruit lorsque les déplacements x, y sont en régime permanent.

76
D’autres part, les performances du système de contrôle intelligent de vol (SCVI) dépendent premièrement
très fortement des douze paramètres des quatre contrôleurs PID et deuxièmement des valeurs des facteurs
d’échelle des deux contrôleurs flous. Selon les travaux de M. Mizumoto dans [143] et [120] les performances
des deux contrôleurs flous dépendent fortement des valeurs des facteurs d’échelle Ke , Kde , Kpd et Kpi (l’équa-
ρ ρ ρ
tion 5.8). Le vecteur P : P = [Kpn , Kin , Kdn , Keρ , Kde , Kpd , Kpi ] résume les vingt paramètres utilisés dans les
deux contrôleurs flou. Où, l’indice n concerne les variables φ, θ, ψ et z. L’indice ρ concerne les variables x et
y.

Le premier problème est comment régler les valeurs des paramètres résumées dans le vecteur P qui garan-
tissent les meilleures performances (stabilité, rapidité et précision) du quadricoptère durant une mission de vol.
La solution peut être faite par le réglage automatique hors ligne en utilisant une méthode d’optimisation para-
métrique de l’erreur quadratique.
Dans la section qui suit l’approche proposée pour résoudre le problème de réglage est présentée en détail.

5.5 L’approche évolutive du réglage des paramètres du SCVI

Il a été montré dans la section précédente que les performances du système de contrôle de vol dépendent
fortement des valeurs de ces paramètres quel que soit le type du contrôleur PID ou flou, donc le problème
traité ici est un problème d’optimisation paramétrique. Premièrement, le réglage des paramètres en tant qu’un
problème d’optimisation à contrainte est mathématiquement formulé. Ensuite, l’optimisation proposée à base
des algorithmes génétiques (AG) est présentée en détail.

5.5.1 La formulation mathématique du problème de réglage

La première méthode pour le réglage des paramètres du SCVI a été faite par une procédure d’essais et
erreurs. La procédure de réglage est alors difficile et délicate en raison du nombre des paramètres et de la
non-existence d’une stratégie systématique de réglage. Une autre difficulté réside dans la non-linéarité de la
dynamique du quadricoptère et du couplage existant entre ses états. Pour faire face à ces difficultés, la solution
proposée est de diviser le problème de réglage en deux : le réglage des paramètres PID des boucles internes
puis le réglage des paramètres de la boucle externe. Le premier problème est formulé comme le problème
d’optimisation suivant :



 M inimiser f1 (P )

P = [Kpn , Kin , Kdn ]T ∈ R12 , n = [φ, θ, ψ, z]




 +
Sous les contraintes : (5.9)

Otn ≤ Otmax Stmax

, Stn ≤




 n n
Trn ≤ Trmax Tsmax

, Tsn ≤

n n

Le problème d’optimisation présenté dans l’équation 5.9 consiste à trouver les valeurs des variables optimales
P ∗ = [kp∗ , ki∗ , kd∗ ]T , représentant les douze paramètres (PID) de la boucle interne du SCVI, qui minimisent
la fonction f1 définie dans l’équation 5.11 en fonction des ISE (intégrale du carré de l’erreur) des réponses
d’altitude et d’attitude. Cette fonction coût est minimisée, en utilisant les AGs, sous diverses contraintes dans le
domaine temporel, comme ; le dépassement Otn , l’état d’équilibre (régime permanent) StN , le temps de réponse

77
et temps de montée Trn et Tsn , où l’indice n concerne respectivement les variables θ, φ, ψ et z, tel qu’indiqué
dans l’équation 5.9. Les Otmax
n , Stmax
n , Tsmax
n et Trmax
n sont les valeurs maximales à ne pas dépasser.

e5 , e6
e1 ,e2 , e3 , e4 Algorithmes génétiques
ρ ρ ρ
P2 = (Keρ , Kde , Kpd , Kpi )
ψd , zd
P1 = (Kpn , Kin , Kdn )

+
+ φd ,θd Un Modèle non-
xd , yd Contrôleurs Flous Contrôleurs PID
− − linéaire du Quad

φ, θ, ψ et z

x, y

F IGURE 5.7 – Schéma du principe de l’optimisation des paramètres du pilote automatique

Le deuxième problème est formulé comme le problème d’optimisation suivant :





 M inimiser f2 (P )
ρ ρ ρ T

P = [Keρ , Kde , Kpd , Kpi ] ∈ R8+ , ρ = [x, y]






Sous les contraintes :





Otx ≤ OtM
x
ax
, Oty ≤ OtM
y
ax (5.10)

Stx ≤ StM ax
, Sty ≤ StM ax





 x y
Trx ≤ TrM ax
, Try ≤ TrM ax





 x y
Tsx ≤ TsM ax
, Tsy ≤ TsM ax


x y

Le problème d’optimisation présentée dans l’équation 5.10 consiste à trouver les variables optimales P =
rho , K rho , K rho ]T ,
[Kerho , Kde représentant les huit paramètres des contrôleurs flous des deux déplacements lon-
pd pi
gitudinal x et latéral y, qui minimisent la fonction f2 définie dans l’équation 5.22. En fait, la décomposition
du problème d’optimisation en deux équations simplifie le calcul et garantie un temps de convergence conve-
nable. C’est la deuxième contribution apportée à ce travail. Dans la section suivante la troisième contribution
est présentée elle concerne l’optimisation Bi-AG.

5.5.2 Système évolutif de contrôle de vol (SECV)

AL KHAWARIZMI a donné son nom au mot algorithme , il est connu comme étant le père de l’al-
gèbre [203], en référence à son ouvrage Kitab Al jabr w’al mouqabala [202], est célèbre pour cette invention.
Grâce à son travail les ordinateurs, les smartphones et autres machines dite intelligentes fonctionne avec des
programmes informatique, à base d’algorithmes. Les algorithmes ont données des solutions de nombreuse pro-
blèmes.
Dans ce travail, on utilise les algorithmes génétiques comme solution (approche) pour résoudre les problèmes

78
définies dans les équations 5.9 et 5.10. L’approche développée est nommée système évolutif de contrôle de vol
SECV. Dans ce système, les paramètres du SCVI (le pilote automatique développé) sont passés par le méca-
nisme évolutif des algorithmes génétiques afin de produire les meilleures valeurs. Il est représentée sur la figure
5.8. Cela commence par l’initialisation des paramètres physiques du quadricoptère tel que sa masse totale M ,
ces moments inertiels Jxx , Jyy , Jzz , etc. Ensuite, on sélectionne la configuration quadricoptère : sous forme de
croix ou de X, cela permet de définir l’équation utilisée pour calculer les couples du drone Cφ , Cθ et Cψ soit
par l’équation 4.18 ou 4.22 . Après, les AGs sont utilisés pour résoudre l’équation 5.9, nommée GA-Inner (en
référence de la boucle interne). Lorsque le quadricoptère est en mode vol stationnaire, les AGs recherchent les
valeurs optimales des douze paramètres SCVI des boucles internes P1∗ = (Kpn , KIn , Kdn ) n = [φ, θ, ψ, z]. Le
consignes de l’attitude et de l’altitude désirées sont prises comme suit (φd , θd , ψd ) = (0, 0, 0), z = H[m].

La fonction objective (fonction coût) est choisie selon la l’équation 5.11 :


Z tf
f1 = 1/(tf − ti ) (e21 (t) + e22 (t) + e23 (t) + e24 (t))dτ (5.11)
ti

En fait, la fonction de coût est basée sur le principe de l’union de l’ensemble des erreurs, qui peut être écrite
comme f1 = e21 ∪ e22 ∪ e23 ∪ e24 , Où e1 , e2 , e3 et e4 sont des erreurs calculées entre les valeurs désirées et
mesurées de l’altitude, les angles d’attitude du quadricoptère comme suit :

e1 (t) = zd (t) − z(t) (5.12)


e2 (t) = θd (t) − θ(t) (5.13)
e3 (t) = φd (t) − φ(t) (5.14)
e4(t) = ψd (t) − ψ(t) (5.15)

Le processus évolutif nommé GA − Inner est représenté par le pseudo-code dans Algorithm 1 .

Tout d’abord, le processus interne des AGs commence par générer la population initiale de l’individu α
composé respectivement par Kp , Ki et Kd pour les quatre contrôleurs PID. Pour chaque variables, on utilise 20
bits de codage binaire. Le choix de la série de bits est aléatoire, comme le montrent les matrices 5.16 et 5.17.
En effet, Kp est choisi supérieur à Kd et Ki (amélioration de la convergence de l’algorithme [209]).
 
00000110101010101011 00000000000000000010 00000000000000001011
 
 00000010011010111011 00000000000000000001 00000000000000001011 
P11 (0) = (5.16)
 

 00000010101010101011 00000000000000001011 00000000000000001010 
 
00000010011010101011 00000000000000001011 00000000000000001011

 
00000110101010101011 00000010011010101010 00000010011010101011
 
 00000010011010111011 00000010101010101011 00000010011010101011 
P1α (0) = (5.17)
 

 00000010101010101011 00000110101010101011 00000010011010101010 
 
00000010011010101011 00000010011010101011 00000010011010101011

Les équations 5.16 et 5.17 montrent deux individus (premier individu et dernier individu α) de la population
initiale. Ensuite, il évalue la fonction objective f1 de chaque chromosome α dans la population en introduisant

79
Début

Initialisation des paramètres du Micro-drone M ,Jxx , Jyy , etc.

Le quad
est-il en
Non Oui
configuration
croisée ?
Utilisez les Utilisez les
équations (4.20), équations (4.16),
(4.21), (4.22) (4.17), (4.18)
pour calculer les pour calculer les
couples du Quad couples du Quad

(φd , θd , ψd ) = (0, 0, 0),z = H[m]

Utilisez GA − Inner pour régler les paramètres PID P1 = (Kpn , Kin , Kdn )

P1 = P1∗ ?
Non
Oui

(x, y, z, ψ)=(xd , yd , zd , ψd )

ρ ρ ρ
Utilisez P1∗ dans GA − Outer pour régler les paramètres des contrôleurs flous. P2 = Keρ , Kde , Kpd , Kpi

Non P2 = P2∗ ?

Oui

Utilisez les P1∗ et P2∗ dans le SCVI

Fin

F IGURE 5.8 – Organigramme de la stratégie de réglage des paramètres du SCVI (où P1∗ et P2∗ représentent les
valeurs optimales)

80
Algorithm 1 GA-Inner
Entrées :
Taille α de la population
Taux β de croisement
Taux µ de mutation
Longueur λ de l’individu
Taux υ de la sélection
Sortie : Solution P1∗

1: procedure GA-I NNER(α, β, µ, λ, υ)


2: t←0 ⊲ Évaluation de la première génération P1 (0)
3: Un ← P1 (0) ⊲ Utilisation de P1 (0) dans les boucles SCVI internes
4: M odevol ← Stationnaire ⊲ Lancer le mode de vol stationnaire
5: F itness1 ← f1 ⊲ Calcul de la fonction coût de l’equ 5.11
6: while F itness1 6= F itness1min do ⊲ La condition de limitation n’est pas encore atteinte
7: Select(P1 (t), υ) ⊲ Sélection du chromosome parent pour reproduire la génération suivante
8: Crossover(P1 (t), β) ⊲ Choix des points de croisement aléatoires dans le chromosome parent
9: M utation(P1 (t), µ) ⊲ µ la probabilité de mutation de la nouvelle génération
10: Un ← P1 (t) ⊲ Mise à jour des paramètres dans les boucles SCVI internes
11: M odevol ← Stationnaire ⊲ Lancer le mode vol stationnaire en simulation
12: F itness1 ← f1 ⊲ Calcul de la fonction coût de l’equ 5.11
13: t←t+1
14: end while
15: return P1∗ ⊲ Paramètres optimaux du contrôleur des boucles SCVI internes
16: end procedure

ces derniers dans les contrôleurs PID des boucles internes Un où :


Z t
den
Un (0) = Kpn (0) · en + Kin (0) en · dτ + Kdn (0) · (5.18)
0 dt
Puis on lance le mode de vol stationnaire, avec (φd , θd , ψd , zd ) = (0, 0, 0, H[m]), H[m] représente l’altitude
désirée. Les opérateurs génétiques sont utilisés pour générer la prochaine génération de P1 . Cette procédure
est répétée jusqu’à ce que les critères d’optimisation soient satisfaits. Les deux chromosomes parentaux sont
choisis parmi la population par la méthode de la roulette. Les individus ayant un mauvais score seront retirées
de la population et remplacées plus tard par l’individu nouvellement créé. La chaîne dans la population est
sélectionnée avec υ probabilité proportionnelle à la condition physique de la chaîne. Une fois que le meilleur
individu a été sélectionnée avec une probabilité de croisement β la nouvelle progéniture est calculée comme il
est indiqué dans 5.19.
 

Croisement P arents P rogéniture 
10000100001000101101 10000001001000101101  (5.19)
 

 
00010001000000111110 00010100000000111110

 
M utation Avant Aprés
  (5.20)
Of f spring 10000001001000101101 00000001101000101101

Comme on peut le voir dans l’équation 5.20, les deux parties différentes de chaque chromosome sont échan-
gées avec une autre partie des chromosomes pour former deux chromosomes de nouveaux individus. Le point

81
de croisement dans les chromosomes parents est choisi au hasard.
La procédure suivante est une mutation, avec le taux µ, afin de maintenir la diversité génétique dans les chro-
mosomes de génération en génération le processus modifie les chromosomes de la progéniture en inversant
l’état d’un bit choisi de manière aléatoire, tel qu’indiqué dans l’équation 5.20. Pour éviter l’échec de toutes les
solutions dans la population pour l’optimum du problème, il est recommandé de prendre une faible valeur de µ
par exemple comprise entre [0.009, 0.04]. Les nouveaux descendants (enfants) sont placés dans la population
et utilisés dans la loi de commande interne :
Z t
den
Un (t) = Kpn (t) · en + Kin (t) en · dτ + Kdn (t) · (5.21)
0 dt
Le processus évalue la nouvelle génération en lançant le mode du vol stationnaire, puis il calcule la fonction
coût de l’équation 5.11. Si la condition indiquée dans l’équation 5.9 est satisfaite, le processus GA-Inner
s’arrête. Le résultat donne les valeurs optimales des gains proportionnels et intégrateurs et dérivés nommées
P1∗ = (Kpn , KIn , Kdn ) des boucles internes.

Après que P1∗ est calculé on cherche à trouver les meilleures paramètres des contrôleurs flous qui com-
mandent le mode de vol navigation (x, y, z, ψ) = (xd , yd , zd , ψd ). Ce qui conduit à résoudre le problème
formulé dans l’équation 5.10 avec une procédure nommée GA-Outer dont la fonction coûts est indiquée dans
l’équation 5.22 :
Z tf
f2 = 1/(tf − ti ) (e25 (t) + e26 (t))dτ (5.22)
ti

Où e5 et e6 représentent respectivement les erreurs calculées entre les déplacements (x, y) désirés et mesurés
du quadricoptère comme suit :

e5 (t) = xd (t) − x(t) (5.23)


e6 (t) = θd (t) − θ(t) (5.24)

Le processus évolutif nommé GA − Outer est représenté par le pseudo-code dans Algorithm 2.
ρ
Pour trouver les valeurs optimales des contrôleurs flous P2∗ = (Keρ , Kde , KPρ d , Kpi
ρ
) la procédure suivie
dans GA-Output est identique a celle de GA-Inner, la différence est dans le nombre de variables, soit huit
paramètres et les modes de vol. Le résultat final de l’approche représentée dans 5.8 donne les valeurs des
paramètres P ∗ = [P1∗ , P2∗ ] de tout les contrôleurs (utilisés par le SCVI).
Les AGs utilisés pour obtenir le résultat final nécessitent une configuration de leurs propre paramètres (la
taille α de la population, le taux β de croisement, le taux µ de mutation, la longueur λ de l’individu et le
taux υ de la sélection ). Pour obtenir les valeurs optimaux des paramètres P ∗ = [P1∗ , P2∗ ] il faut assurer une
bonne configuration des AGs (GA-inner et GA-outer). Pour cette raison, dans la section suivante la méthode de
configuration automatique des AGs est présentée.

5.6 La configuration automatique des algorithmes génétiques

Les algorithmes génétiques utilisés dans la phase de réglage des GA-Inner et GA-Outer sont configurés
manuellement. La configuration manuelle ne garantit pas une convergence vers les paramètres optimaux. De

82
Algorithm 2 GA-Outer
Entrées :
Taille α de la population
Taux β de croisement
Taux µ de mutation
Longueur λ de l’individu
Taux υ de la sélection
Sortie : Solution P2∗

1: procedure GA- OUTER(α, β, µ, λ, υ)


2: t←0 ⊲ Évaluation de la première génération P2 (0)
3: k
f cpid ← P2 (0) ⊲ Utiliser P2 (0) dans les boucles SCVI externes
4: M ode − de − vol ← (xd , yd , zd , ψd ) ⊲ Lancer la simulation du mode de vol stationnaire longitudinal
/lateral
5: F itness2 ← f2 ⊲ Calcul de la fonction coût de l’equ 5.22
6: while F itness2 6= F itness2min do ⊲ La condition de limitation n’est pas encore atteinte
7: Select(P2 (t), υ) ⊲ Sélection du chromosome parent pour reproduire la génération suivante
8: Crossover(P2 (t), β) ⊲ Choix des points de croisement aléatoires dans le chromosome parent
9: M utation(P2 (t), µ) ⊲ µ la probabilité de mutation de la nouvelle génération
10: k
f cpid ← P2 (t) ⊲ Mise à jour des paramètres dans les boucles SCVI externes
11: M ode − de − vol ← (xd , yd , zd , ψd ) ⊲ Lancement du mode de vol navigation
12: F itness2 ← f2 ⊲ Calculer la fonction coût de l’equ 5.22
13: t←t+1
14: end while
15: return P2∗ ⊲ Paramètres optimaux du contrôleur des boucles SCVI externes
16: end procedure

manière générale, les paramètres de configuration de l’AG qui offrent de meilleures performances par exemple
β et µ, selon [200] et [199] peuvent être choisis selon les limites suivantes : une probabilité élevée de croisement
β tel que :

0.40 < β ≤ 0.99 (5.25)

i.e. 40% - 99% de la population sélectionnée et une faible probabilité de mutation µ tel que :

0.01 < µ ≤ 0.50 (5.26)

Une question que l’on peut se poser est : comment obtenir automatiquement la configuration optimale des
AGs utilisées dans l’approche SCVI ? Nous trouvons dans la littérature des travaux traitant ce type de pro-
blème, comme dans [206] et [205], où ils ont utilisés des stratégies intelligentes basées sur la logique floue
et l’algorithme PSO pour adapter la configuration d’une AG afin d’assurer la meilleur stabilisation d’un drone
quadricoptère. Cependant dans ce travail, nous avons préféré utiliser les AG eux même pour adapter automa-
tiquement la configuration des deux algorithmes d’optimisation de GA-inner et GA-outer aux conditions 5.25
et 5.26. Cette solution est nommée BI-GA (c-à-d double AG). Dans le chapitre suivant la Bi-GA est testée, les
résultats obtenus par cette solution sont comparés à la configuration manuelle, ainsi qu’aux résultats obtenus
dans les travaux de [206] et [205].

83
L’algorithme de Bi-GA cherche à trouver la meilleur configuration des algorithmes génétiques utilisés tels
que : la taille de la population α, le nombre de générations G, le taux de croisement β , le taux de mutation µ,
λ la longueur de l’individu et υ le taux de sélection.
Premièrement, pour la la configuration automatique de GA-Inner le problème peut être formulé sous la forme :



 M inimiser f3 (P )

P = [α, G, β, µ, λ, υ]T ∈ R6





Sous les contraintes : (5.27)

Otn ≤ Otmax , Stn ≤ Stmax





 n n
Trn ≤ Trmax , Tsn ≤ Tsmax


n n

Le problème formulé dans l’équation 5.27 est résolu en fonction de la fonction fitness 5.28 suivante :
Z tf
f3 = 1/(tf − ti ) (e21 (t) + e22 (t) + ... + e2n (t))dτ (5.28)
ti
Le processus évolutif de Bi-GA pour configurer GA-Inner est représenté par le pseudo-code dans Algorithm3.
Dans le pseudo-code 3, les paramètres de configuration de GA-inner subissent le même mécanisme des AG

Algorithm 3 Bi-GA
Entrées :
Taille αBi de la population
Taux βBi de croisement
Taux µBi de