Previous Next Contents

Chapter 4    Sectorisation de l'espace et répartition des flux

4.1  Introduction

Le contrôle1 de la circulation aérienne organise les flux aériens afin d'assurer la sécurité des vols (en terme de risque de collision) et d'améliorer la capacité du réseau de routes sur lequel les avions se déplacent. Suivant la nature du trafic, on distingue les trois types de contrôle suivants :

Dans le cadre de ce travail, on s'est plus particulièrement intéressé aux problèmes du contrôle en route.

Actuellement on enregistre sur le territoire français environ 4000 mouvements par jour, ce qui représente une charge de contrôle impossible à gérer par un seul contrôleur. On répartit alors cette charge de travail en divisant l'espace aérien en plusieurs secteurs pour chacun desquels on affecte une équipe de contrôleurs. Le nombre de secteurs est alors déterminé par la capacité d'un contrôleur à gérer N avions simultanément (dans la pratique la moyenne semble être de 10 à 15 avions; lorsque cette limite est atteinte on dit que le secteur est saturé). Un des objectifs principaux de la sectorisation est de fournir des secteurs équilibrés en terme de charge de contrôle afin que chaque équipe de contrôleurs travaille de la même façon.

Au cours de ces dernières décennies, au fur et à mesure de l'augmentation du trafic, l'espace aérien a été divisé en secteurs de plus en plus petits afin d'éviter la saturation de ces derniers. Malheureusement, ce principe de resectorisation présente une limite dans la mesure où l'on doit ménager un temps suffisant au contrôleur pour gérer son trafic (élaboration des stratégies de résolution des conflits entre aéronefs) et donc générer des secteurs dont la taille permet de satisfaire cette contrainte. De plus, le contrôleur ne connaît que le trafic lié à son secteur et lorsqu'un avion passe d'un secteur à un autre, il s'opère un dialogue entre les contrôleurs et le pilote afin d'assurer la sécurité du vol lorsqu'il pénètre dans le nouveau secteur (ce dialogue induit une charge de travail supplémentaire pour les contrôleurs appelée charge de coordination). Ainsi, en augmentant le nombre des secteurs, on augmente aussi les coordinations et donc la charge de contrôle globale.

Dans le cadre opérationnel, le principe de resectorisation d'un domaine d'espace aérien est le suivant. Lorsque l'on détecte un secteur qui se trouve souvent en limite de saturation, une équipe d'experts se réunit et propose une nouvelle sectorisation de la zone incriminée. Pour valider cette proposition on procède à deux types de simulations : simulation arithmétique et simulation temps réel. La première consiste à évaluer la sectorisation à l'aide de logiciels de simulation sur trafic enregistré (ou simulé). Si les résultats de ces premières évaluations sont satisfaisants, la sectorisation est ensuite testée en temps réel à l'aide d'un environnement de contrôle simulé faisant intervenir des contrôleurs et des pseudo-pilotes (sur poste de pilotage reconstitué en salle (version simplifiée)). Après cette dernière étape, on modifie les frontières des secteurs sur site et on contrôle que ces changements permettent effectivement de résoudre les problèmes initiaux. On gardera cette sectorisation jusqu'à ce que de nouveaux problèmes apparaissent, liés principalement à la croissance du trafic.

Cette approche est essentiellement locale et aboutit à une sectorisation globale qui est la juxtaposition de régions de contrôle optimisées individuellement. Pour mieux comprendre les méthodes utilisées dans le contrôle du trafic aérien, on pourra consulter les références [Mai91, Vil84, CDV92].

Le travail de Daniel Delahaye se décomposait en trois parties principales :
Sectorisation d'un réseau à flux affectés :
il s'agit de réaliser une sectorisation équilibrée de l'espace en fonction des flux affectés sur le réseau de routes.

Affectation des flux sur un réseau sectorisé :
résolution du problème dual : l'affectation des avions sur les routes aériennes, la sectorisation étant fixée.

Optimisation simultanée de la sectorisation et de l'affectation de trafic :
Partant simplement des demandes de trafic entre les paires Origine-Destination, il s'agit de construire simultanément une sectorisation et une affectation des avions sur les routes.

4.2  Modélisation

4.2.1  Routes aériennes

Lorsqu'un avion relie deux villes du continent européen, on pourrait s'attendre à ce que la route directe soit utilisée systématiquement pour des questions d'économie de carburant. En réalité, les avions suivent des routes aériennes constituées d'une succession de tronçons orientés différemment dont les extrémités correspondent à des balises qui matérialisent souvent les croisements de routes. En préparant sa navigation, le pilote jalonne sa route de points de report (balises) sur lesquels il devra faire un passage à la verticale afin de confirmer sa position. Le nombre de balises au sol étant limité, la route réellement suivie s'écartera plus ou moins de la route idéale en fonction de la disposition locale de ces dernières.

Ce principe de navigation par jalonnement sur balises est pénalisant en terme de consommation car il induit des rallongements de route systématiques ; actuellement en Europe, le réseau de routes aériennes provoque des rallongements moyens de 9 %, soit 420000 heures de vol supplémentaires par an ou 1.2 million de tonnes de kérosène. Les avions modernes sont maintenant équipés de calculateur de bord qui, lorsqu'ils sont couplés au pilote automatique, sont capables de suivre avec une grande précision n'importe quelle route définie par un point origine et un point destination, dont les coordonnées sont introduites par l'équipage ou sont extraites d'une base de données du calculateur de bord. Malheureusement, ce système de progression de point à point n'est pas encore possible pour deux raisons. D'une part, il existe dans beaucoup de pays un assez grand nombre de zones réservées aux militaires qui doivent être contournées par les routes aériennes civiles, d'autre part, le contrôle de la circulation aérienne n'est pas capable d'assurer un écoulement sûr et ordonné du trafic lorsque chacun va directement de son point de départ à son point de destination. L'aiguilleur du ciel a besoin pour travailler de points de report par rapport auxquels il peut situer son trafic.

Une route aérienne pouvant être utilisée dans les deux sens, il a été élaboré une règle de séparation verticale (règle semi-circulaire) imposant des altitudes de vol aux aéronefs afin d'assurer des croisements en toute sécurité. Dans un soucis de simplicité, une route aérienne sera donc simplement modélisé par un arc bidirectionnel joignant deux balises.

Le réseau aérien sera donc modélisé par un réseau de transport qui aura les propriétés suivantes : Les demandes de trafic des usagers sont ensuite distribuées sur le réseau (à l'initiative des utilisateurs ou par l'intermédiaire d'un processus d'affectation de trafic ou les deux). En supposant que les avions se déplacent à des vitesses moyennes quasi-identiques (homogénéité du trafic), la répartition de flux induite fait apparaître une charge de contrôle répartie dans l'espace que nous nous proposons maintenant de modéliser avant de décrire les problèmes qu'il nous faut résoudre.

4.2.2  Charge de contrôle dans un secteur

Introduction

Un secteur de contrôle est un domaine limité de l'espace traversé par des routes aériennes, pour lequel une équipe de contrôleurs assure la sécurité des vols qui y transitent en séparant les aéronefs entre eux. Plus le nombre d'avions dans un secteur est important, plus la charge de contrôle induite augmente (de façon non linéaire). Il existe une limite au delà de laquelle le contrôleur en charge du secteur ne peut plus accepter de nouveaux avions et oblige ces derniers à contourner le secteur en traversant des secteurs voisins moins chargés. On dit alors que le secteur est saturé. Cet état critique doit être évité car il provoque un phénomène cumulatif de surcharge sur les secteurs amonts pouvant remonter jusqu'aux aéroports de départ. En effet, lorsque le trafic ne peut être dévié, il est mis en attente dans les secteurs amonts faisant augmenter progressivement la charge de contrôle de ces derniers jusqu'à ce qu'ils soient saturés. Le seuil au delà duquel le secteur est saturé est très difficile à estimer car il dépend de la géométrie des routes qui le traversent, de la géométrie du secteur lui-même, de la répartition des avions sur les routes, des performances de l'équipe de contrôle etc. Un seuil généralement admis est de 3 conflits et 15 avions dans un secteur donné. Cette charge maximum ne doit pas perdurer plus de 10 minutes car elle provoque un fort stress des contrôleurs qui risquent alors de ne plus pouvoir assurer la gestion du trafic dans des conditions optimales de sécurité.

Après une enquête auprès des contrôleurs on remarque que la charge de travail dans un secteur dépend des critères qualitatifs et quantitatifs. Les critères qualitatifs regroupent essentiellement les facteurs humains dont le principal est le stress. Tous les contrôleurs ne réagissent pas de la même façon face à une situation de trafic difficile et il est donc délicat de fournir un modèle ``mathématique'' de stress applicable à tous les contrôleurs. On peut seulement préciser que le stress est directement lié aux critères quantitatifs suivants :

Il existe d'autres charges de contrôle [TPC76] facilement quantifiables mais leur impact sur l'ensemble de la charge secteur est négligeable par rapport aux trois précédentes.

Nous allons dans un premier temps, préciser et quantifier chacune de ces trois charges de contrôle avant de fournir un modèle mathématique de la charge globale dans un secteur.

Charge de résolution des conflits

On dit que deux avions sont en conflit lorsque la distance qui les sépare risque de devenir inférieure à une valeur particulière appelée norme de séparation. Lorsque deux avions sont en conflit, le contrôleur doit modifier la route des avions afin d'assurer le respect des normes de séparation.

Suivant l'angle de croisement des routes aériennes les conflits sont plus ou moins faciles à résoudre car les avions sont plus ou moins longtemps en situation conflictuelle.

En supposant que la charge de contrôle à la verticale du croisement est proportionnelle au nombre de conflits générés, on a Cre=a(qijl)fijflj dans le cas d'un croisement à deux routes, où a(qijl) est un coefficient de proportionnalité dépendant de l'angle de croisement entre les routes, et fij et flj les flux sur les arcs (i,j) et (l,j). Lorsque le croisement comporte plus de deux routes incidentes, la charge de conflit est la somme des charges induites par les arcs pris deux à deux. La charge de conflit dans un secteur S est alors la somme des charges de conflits sur chacun des noeuds contenus dans ce secteur.

Charge de coordination

Tous les avions qui sont dans un même secteur communiquent au moyen de la même fréquence avec le contrôleur en charge du secteur. Lorsqu'ils changent de secteur, ils doivent changer de fréquence et il s'opère alors un transfert de contrôle. Ce transfert doit avoir fait l'objet au préalable d'une négociation entre le contrôleur qui transfère et le contrôleur qui reçoit, pour assurer que celui-ci peut accepter l'avion et pour définir les modalités (niveau de vol, etc) selon lesquelles l'opération a lieu. Un transfert nécessite un travail relativement important de la part des deux contrôleurs; de plus c'est une opération au cours de laquelle des incompréhensions ou des erreurs peuvent se produire causant des pertes accidentelles de séparation. Les charges de contrôle induites par ces transferts sont regroupées dans une charge unique appelée coordination. Dans un réseau de transport sectorisé la charge de coordination est proportionnelle aux flux coupés par les frontières des secteurs. En étudiant la charge de coordination générée par un arc (i,j) de route aérienne dont une partie ou la totalité appartient à un secteur Sk, on peut identifier trois cas de figure :

  1. Les deux extrémités de l'arc appartiennent au secteur Sk auquel cas la charge de coordination est nulle.

  2. Une seule extrémité de l'arc appartient au secteur Sk Il existe donc une intersection entre l'arc (i,j) et la frontière du secteur Sk. On peut alors représenter la charge de coordination par : Cco=bijfijbij est un coefficient de proportionnalité permettant de pondérer l'influence de la coordination par rapport aux autres charges de contrôle.

  3. Les deux extrémités de l'arc sont extérieures au secteur Sk ; dans ce cas le flux est coupé deux fois. On peut alors modéliser la charge par : Cco=2bijfij

Charge de monitoring

Dans un secteur de contrôle les avions qui ne sont pas en conflit ou en transfert nécessitent une surveillance de la part du contrôleur qui vérifie le bon déroulement des plans de vol sur l'image radar et qui essaye de déterminer les risques potentiels de conflits futurs induits par ces avions. Le monitoring est en fait la tâche de fond du contrôleur et représente une source importante de stress pour ce dernier. Cette charge de contrôle est directement liée au nombre d'avions présents dans le secteur de contrôle. Pour un secteur Sk on peut la modéliser par : Cmo(Sk)=hS(i,j) Î Lkpij(k)fij; avec : La charge de contrôle dans un secteur est donc la somme de la charge de conflit, de la charge de coordination et de la charge de monitoring.

Disposant maintenant d'un modèle mathématique du réseau aérien ainsi que de la charge de contrôle (qu'il nous faudra confronter à la réalité), nous pouvons formaliser la description des deux problèmes que nous nous sommes attachés à résoudre.

4.3  Problèmes à résoudre



4.3.1  Problème de sectorisation

A partir de la connaissance de la répartition surfacique (réseau à deux dimensions) de la charge de contrôle, on se propose de trouver une sectorisation équilibrée aboutissant à un rendement homogène des équipes de contrôle en charge de l'ensemble de l'espace aérien. En examinant cette charge de contrôle et en faisant abstraction, dans un premier temps, de la charge de coordination, on remarque qu'elle comporte deux composantes spatiales distinctes :

Lorsque l'on met en place des frontières de secteur, ces dernières coupent des arcs de routes aériennes générant a posteriori une nouvelle charge de contrôle (coordination) pouvant remettre en cause l'équilibre obtenu pour les deux critères précédents (conflit et monitoring). Un petit exemple simple nous permet de mieux comprendre ce problème. Sur la figure 4.1 la sectorisation est initialement équilibrée (à 50) pour les charges de conflit et de monitoring. Si l'on tient compte des coordinations dans l'équilibrage, on constate un déséquilibre net des nouvelles charges de contrôle dans les secteurs. De fait, ce n'est qu'après avoir pris la décision de sectoriser que l'on sait a posteriori si les secteurs sont équilibrés ou non. Une analogie avec la mécanique nous permet de mieux sentir ce problème. Si l'on assimile la charge de contrôle à une masse, notre réseau de transport peut être modélisé par un ensemble de boules denses réparties aux noeuds, reliées entre elles par des barres pesantes. Notre objectif initial est donc de rechercher une sectorisation pour laquelle chaque secteur a la même masse. Le problème est que l'on ajoute des ``masses de coordination'' lorsque l'on coupe des barres modifiant ainsi l'équilibre calculé. Ce premier objectif d'équilibrage est important mais doit être complété par un objectif connexe de minimisation des coordinations. En effet, si l'on se contente seulement de rechercher l'équilibrage, on risque d'obtenir des aberrations en terme de contrôle dont un exemple extrême est donné figure 4.2. On remarque sans difficulté que le cas 2 est nettement meilleur en terme de contrôle quand bien même il est moins équilibré.




Figure 4.1: Influence de la coordination sur l'équilibrage a posteriori




Figure 4.2: Importance de la minimisation des coordinations

Enfin, la sectorisation construire doit prendre en compte certaines contraintes :

Convexité de routes :
Lorsque l'on examine la sectorisation actuelle ainsi que le réseau de routes associé, on remarque que pour chacun des trajets possibles reliant une paire Origine-Destination, les secteurs rencontrés ne sont traversés qu'une seule fois. Ainsi un pilote ne contacte qu'une seule fois le contrôleur en charge du secteur qu'il traverse.

Temps minimal de résolution :
Lorsqu'un contrôleur détecte un conflit entre deux avions, il doit se ménager un délai suffisant afin d'élaborer un processus de résolution adapté. Or, comme nous l'avons vu précédemment, les conflits entre aéronefs sont localisés aux croisements des routes aériennes et donc sur les noeuds du réseau de transport. De plus, le trafic géré par un contrôleur est limité au secteur dont il a la charge et il ne dispose pas d'informations sur le trafic présent dans les secteurs voisins. Si au moment où un avion lui est transféré ce dernier se trouve en conflit, le contrôleur n'a pas le temps de construire un processus de résolution. Pour éviter ce problème, il faut éloigner suffisamment les frontières des secteurs des points de croisement afin de ménager un temps minimum de résolution au contrôleur recevant les avions. Ceci induit une seconde contrainte, dite contrainte de sécurité : la distance entre un noeud et une frontière de secteur sera au moins égale à une distance de sécurité de l'ordre de 50NM.

Temps minimal de séjour :
pour qu'un contrôleur puisse agir facilement sur les vols présents dans son secteur, ces derniers doivent y séjourner un temps suffisant égal au temps de sécurité. Un avion devra rester un temps minimum dans chacun des secteurs qu'il traverse.
Le problème de sectorisation peut donc se formuler de la façon suivante : Soit un réseau de transport dans un espace à deux dimensions sur lequel une répartition de flux produit une charge de contrôle répartie dans l'ensemble de l'espace aérien. On se propose de sectoriser cet espace en K secteurs équilibrés (en terme de charge de contrôle) en minimisant les coordinations. Cette sectorisation devra respecter les contraintes de convexité de route, de sécurité aux balises et de temps de séjour minimum.

4.3.2  Problème d'affectation

L'affectation de trafic a pour but de définir les routes des flux aériens afin de réduire la charge de contrôle et donc d'augmenter la capacité du système même si cela doit se faire au détriment des performances individuelles. L'amplitude de ces modifications de route doit être suffisamment faible pour que la pénalisation sur les coûts de transport soit comparable au gain apporté sur les performances ATC. Il y a donc un compromis à trouver entre performances ATC et pénalisation des routes, sachant qu'il existe des intérêts communs au système ATC et aux compagnies aériennes. Pour des raisons d'équité, on ne peut faire suivre des routes différentes à des avions joignant la même paire Origine-Destination. En effet, l'avion qui serait routé sur une route plus longue en distance, trouverait ce choix injuste, même s'il permet de diminuer fortement le coût global de transport. Ainsi, si l'on veut que la libre concurrence s'exerce entre les compagnies, sans pour autant laisser toute la liberté à ces dernières pour choisir leurs routes, provoquant des surcharges secteurs anarchiques, il faut nous astreindre à placer les avions sur la même route. Dans la suite de ce rapport cette contrainte sera appelée : contrainte d'équité. Notre objectif final étant l'optimisation de la sectorisation (dont les modifications se font à longue échéance), on ne prendra pas en compte l'aspect dynamique du trafic et nous nous attacherons à travailler sur des flux d'avions macroscopiques. De plus, on se placera dans le cas le plus défavorable consistant à prendre les demandes de trafic maximum entre chaque paire Origine-Destination.

Le problème d'affectation peut donc s'énoncer ainsi : Soit un réseau de transport dans un espace à deux dimensions, divisé en K secteurs. On désire affecter le trafic entre chaque paire Origine-Destination, en respectant la contrainte d'équité, afin de minimiser la charge de contrôle tout en réduisant les rallongements induits.

4.4  Complexité associée

4.4.1  Problème de sectorisation

Le problème de sectorisation peut être décomposé en deux sous-problèmes presque indépendants, correspondant aux deux objectifs fixés :

Le premier sous-problème est discret-continu NP_complet (discret : équilibrage des charges de conflit et de coordination; continu : équilibrage des charges de monitoring). En effet, en ne considérant que la partie discrète liée aux charges de conflit et de coordination, le problème est équivalent à un K_Partitionnement de graphe en composantes connexes qui est connu pour être NP_complet [Che92]. Le sous-problème de minimisation des coordinations est aussi un K_partitionnement de graphe à minimisation de flux coupés et est donc NP_complet. On peut donc raisonnablement penser que la combinaison de ces deux problèmes est aussi NP_complet.

4.4.2  Problème d'affectation

En considérant, le réseau sans trafic, notre problème consiste à affecter les demandes de chaque paire Origine-Destination sur le chemin qui minimise le critère global Cs. Ainsi pour chaque paire Origine-Destination, on associera un chemin d'affectation de la demande qui produira globalement une répartition de flux sur chacun des arcs du réseau. Les points de notre espace d'état sont donc constitués de l'ensemble des paires Origine-Destination auxquelles on associe la liste des noeuds constituant le chemin d'affectation.

La complexité de notre problème est liée à la non séparabilité des coûts qui rend l'affectation dépendante de l'ordre dans lequel on traite les diverses paires Origine-Destination. Ainsi, s'il n'existe pas d'autre principe de résolution que l'algorithme trivial d'énumération des points de l'espace d'état, on peut supposer que notre problème est NP_complet.

4.5  Sectorisation d'un réseau à flux affectés

4.5.1  Introduction

Nous allons ici résoudre le problème de sectorisation d'espace en secteurs convexes équilibrés2 . Pour cela on considère un réseau de transport à deux dimensions sur lequel sont affectées des demandes de trafic (Origine-Destination) entre les divers centroïdes induisant une répartition spatiale des flux. Cette répartition de flux génère une charge de contrôle dans l'espace qu'il nous faut maintenant sectoriser. Chacun des secteurs ainsi créés sera ensuite attribué à une équipe de contrôleurs qui aura la responsabilité du trafic qui y transitera.

Lorsqu'un contrôleur arrive sur une nouvelle position de contrôle, il lui faut entre trois et quatre mois d'apprentissage pour acquérir les réflexes de gestion du trafic associés à ce nouveau secteur. Ce long délai de formation impose une certaine stabilité de la sectorisation dans un centre de contrôle quand bien même une sectorisation dynamique serait parfois plus adaptée. En effet, pour chaque répartition de trafic sur le réseau, il existe une sectorisation optimale. Mais celle-ci serait inefficace si elle est changée toutes les heures car aucune équipe de contrôleurs ne peut la gérer. La sectorisation résulte donc d'un compromis. Elle est calculée pour accepter la charge de contrôle maximale aux heures de pointe mais elle devient sous-optimale pendant les heures creuses. Les flux sur le réseau qui sont considérés pour la sectorisation sont des flux moyennés correspondant aux périodes de fort trafic.

4.5.2  Modélisation

Charge de contrôle

Comme nous l'avons vu au chapitre 2 la charge de contrôle est la somme de trois termes :
Þ C(Sk) = Ccf(Sk) + Cco(Sk) + Cmo(Sk).

Si l'on considère la charge globale de contrôle Cgl, la répartition optimale de charge dans une sectorisation à K secteurs est donnée par :
C(Sk)Opt =
Cgl

K
.

A partir de cet optimal, on peut élaborer un critère d'équilibrage relatif CE :
CE =
K
S
k=1
|C(Sk) -
Cgl

K
|

Cgl

K
0 £ CE £ (2 K - 1)

Si l'on veut se rapprocher d'un équilibre sur chacune des charges de contrôle, il faut appliquer cette formule aux conflits, à la coordination ainsi qu'au monitoring et le critère d'équilibrage relatif devient :

CE =
K
S
k=1
|C
 
(cf)(Sk)
-
Cgl(cf)

K
|

Cgl(cf)

K
+
K
S
k=1
|C
 
(co)(Sk)
-
Cgl(co)

K
|

Cgl(co)

K
+
K
S
k=1
|C
 
(mo)(Sk)
-
Cgl(mo)

K
|

Cgl(mo)

K

Avec cette deuxième forme, on conçoit très bien qu'il sera plus difficile et même parfois impossible d'annuler le critère car certains réseaux ne peuvent pas être équilibrés pour les trois types de charges.

La minimisation de la coordination sera établie en réduisant la part relative de coordination par rapport aux charges globales de conflit et de monitoring :

CC =
K
S
k=1
Cco(Sk)

Cgl(cf) + Cgl(mo)
.

On voit bien ici que notre problème est un problème multi-objectifs mais dans un premier temps et dans un souci de simplification nous nous ramenons à un problème mono-objectif en élaborant un critère global CG qui est une pondération des deux précédents : CG= a CE + (1-a) CC; avec 0 £ a £ 1.

Principe de construction des secteurs

Il nous faut tout d'abord une méthode permettant de générer des populations d'individus dans l'espace d'état. Pour atteindre cet objectif, on utilise le principe d'agrégation de Forgy [Sap90] utilisé dans les nuées dynamiques en statistique exploratoire et qui permet d'extraire des clusters d'un ensemble de points répartis dans un espace muni d'une distance.

Une méthode simple pour obtenir un K-partitionnement d'un domaine D consiste à ``jeter'' aléatoirement dans le domaine D un ensemble de K points (appelés centres de classe) et de regrouper chacun des points contenus dans D à son centre de classe le plus proche (principe d'agrégation). Pour éviter d'avoir des secteurs vides, il faut interdire à deux centres de classes d'occuper la même position dans D. Il est facile de prouver que les secteurs ainsi générés sont géométriquement convexes. Cette propriété de convexité géométrique est plus forte que la convexité de route et permet donc de respecter la contrainte associée (pour un arc de route aérienne)3 . On peut également aisément vérifier qu'à chaque ensemble de centres de classe C correspond une sectorisation unique en K secteurs convexes du domaine D (la réciproque est fausse).

Ce principe de synthèse de sectorisation est simple à mettre en oeuvre car il nécessite peu d'informations (les positions géographiques des centres de classe) pour définir complètement l'ensemble des secteurs et satisfait la contrainte de convexité.

Prise en compte des autres contraintes

Les contraintes de sécurité et de temps de séjour minimum sont prises en compte à l'aide d'un coefficient de pénalité qui majore artificiellement la coordination sur les arcs qui violent les contraintes. La nouvelle charge de coordination sera exprimée de la façon suivante :
Cco(Sk)=
 
S
i Î Nk
Å j Î Nk
d bijfij +
 
S
i Ï Nk
j Ï Nk
(i,j) Î Lk
2 d bijfij
Å : ou exclusif ; le coefficient de pénalité d modélisant le dépassement des contraintes est calculé de la façon suivante ; Soit pijk la longueur relative du segment de l'arc (i,j) contenu dans le secteur Sk et Lij la longueur totale de l'arc (i,j). Si la portion d'arc contenu dans le secteur Sk est inférieure à la distance de sécurité, il faut majorer la coordination associée :

ì
ï
ï
í
ï
ï
î
Si (pijk . Lij) < dsecu alors d = e
-[2(
pijk . Lij

dsecu
-1)]
 
;
Sinon d =1

On traite ainsi de la même façon les deux contraintes.

A partir de cette formalisation, il nous est possible de développer un principe d'optimisation utilisant les algorithmes génétiques.

4.5.3  Optimisation du problème par Algorithmes Génétiques

Introduction

Dans un premier temps, les algorithmes binaires ont été utilisés pour résoudre ce problème. Le codage du chromosome associé à ce type d'algorithme est constitué de la concaténation du codage binaire de la position de chacun des centres de classe définissant une sectorisation (voir figure 4.3).



Figure 4.3: Codage binaire

Ce codage permet ensuite d'utiliser les opérateurs de croisement et de mutation standard. Après évaluation, on remarque que ce type d'algorithme génétique se comporte correctement pour des petits réseaux (< 20 noeuds) mais lorsque la taille du réseau augmente, il se produit un phénomène de marche aléatoire, lié principalement à la brutalité des opérateurs de croisement et de mutation qui font abstraction de la notion de centres de classe mais travaillent seulement au niveau des bits. Il y a perte de la structure du problème et ceci nous a conduit à changer le codage de l'algorithme en utilisant des algorithmes génétiques opérant sur des données plus complexes. Nous présentons maintenant ce nouveau codage ainsi que les opérateurs associés.

Codage du chromosome

Le chromosome doit contenir l'ensemble des informations nécessaires à l'évaluation de la fitness. Comme nous l'avons dit précédemment la connaissance de la position des centres de classe dans l'espace géographique est suffisante pour définir la sectorisation et donc évaluer ses performances. Ces informations sont codées dans le chromosome à l'aide d'une matrice (de dimensions K x 2) contenant les abscisses et les ordonnées des centres de classe. Un exemple de codage d'un chromosome est donné en figure 4.4.




Figure 4.4: Codage du chromosome

Comme il n'y a pas bijection entre le codage du chromosome et la sectorisation associée, une même sectorisation peut être générée par plusieurs ensembles de centres de classe différents. Toutefois lorsque le nombre de secteurs est important, ce qui est notre cas, il est quasiment impossible qu'un tel événement se produise au sein d'une population. En excluant ce cas de similitude très rare, où deux ensembles de centres de classe génèrent la même sectorisation, il faut remarquer qu'un même ensemble de centres de classe peut être codé par une multitude de chromosomes différents. En effet, toute permutation des centres de classe effectuée à l'intérieur d'un même chromosome, génère le même ensemble, donc la même sectorisation. Ainsi, le nombre de chromosomes synthétisant la même sectorisation est égale à K !. Pour une sectorisation à trois secteurs il y aura donc 3 ! = 6 chromosomes possibles ayant les mêmes centres de classe :
(C1,C2,C3);(C1,C3,C2); (C2,C1,C3);(C2,C3,C1); (C3,C1,C2);(C3,C2,C1).

Ce dernier point aura des répercussions dans le calcul de la distance inter-chromosomes pour le sharing d'état.

Principe de génération de la population initiale

Le processus de génération de la population initiale est immédiat. En effet, pour chaque individu contenu dans la population, on tire aléatoirement et de manière uniforme K couples de coordonnées géographiques représentant les K centres de classe définissant chaque sectorisation.

Opérateur de croisement

Pour ce type de problème nous avons testé deux types de croisement :

Le premier correspond au croisement classique utilisé dans les algorithmes génétiques binaires mais implanté ici avec des chaînes de flottants. Ce croisement consiste à tirer aléatoirement une position dans le chromosome et à échanger les deux sous-chaînes ainsi produites (voir figure 4.5).




Figure 4.5: Slicing crossover

Le second consiste à tirer aléatoirement un centre de classe dans chacun des chromosomes puis à joindre artificiellement ces derniers par une ligne droite ; ensuite on déplace aléatoirement (distribution uniforme) les centres sur cette ligne afin de générer deux nouveaux individus. La position des nouveaux centres de classe est alors donnée par :
C1=a P1 + (1-a)P2
C2=(1-a)P1 + a P2
(voir figure 4.6 (dans cet exemple le gène 2 a été sélectionnée)).



Figure 4.6: Croisement et mutation

Ce dernier type de croisement est plus adapté pour les espaces continus et fournit de meilleurs résultats sur notre problème qui comporte une composante continue.

Opérateur de mutation

Pour muter un chromosome, on tire aléatoirement une position dans le chromosome puis on déplace le centre de classe associé en ajoutant du bruit à chacune de ses coordonnées suivant une loi de distribution particulière. Un exemple de mutation est donné en figure 4.6.

Introduction de la distance inter-chromosomes pour le sharing

Pour faire du sharing, il faut être capable d'estimer la distance entre deux chromosomes dans l'espace d'état afin de déterminer le niveau d'agrégation des individus. Les chromosomes étant des concaténations de vecteurs en dimension deux, la méthode la plus simple pour calculer cette distance consiste à faire la somme des distances euclidiennes inter-centre de classe pris deux à deux dans l'ordre où ils apparaissent dans le chromosome. Cette méthode conduit à des erreurs importantes car comme nous l'avons dit dans la section précédente, un même ensemble de centres de classe peut être codé de multiples façons, induisant des valeurs de distance non nulles pour deux codages différents d'une même sectorisation, ce qui est contraire à l'objectif recherché dans le sharing.

Exemple :
soient deux individus
I1={(10,10);(20,20);(30,30)}
I2={(30,30),(20,20),(10,10)}
ici d(I1,I2) = ((202+202)(1/2) + ((202+202)(1/2) = 57
Pour éviter ce problème, il faut calculer la somme des distances des centres de classe les plus proches contenus dans chacun des chromosomes. Ainsi, on commence par rechercher dans I2 le centre le plus proche d'un centre de I1. On calcule la distance associée puis on élimine ces deux centres de I1 et I2 respectivement en itérant ce processus sur les centres restants.

Calcul du barycentre entre deux chromosomes

Le chromosome étant défini dans un espace vectoriel, le calcul du barycentre entre deux individus est direct. En effet, soient deux individus I1 et I2 auxquels on associe les coefficients barycentriques n1 et n2. Pour chaque centre de classe de I1 on recherche dans I2 le centre le plus proche. Soient C1 et C2 les positions géographiques de ces centres, alors le centre barycentrique est donné par :
CB=
n1 C1 + n2 C2

n1 + n2
;

On élimine ensuite ces deux centres des individus I1 et I2 avant d'appliquer le même processus sur les centres restants. Un exemple graphique d'une sectorisation barycentrique à coefficients unitaires (n1=1 et n2=1) est donné sur la figure 4.7.




Figure 4.7: Exemple de sectorisation barycentrique

Pour chaque individu il nous faut maintenant déterminer son adaptation qui sera utilisée dans le processus de sélection des algorithmes génétiques.

Calcul et normalisation de la fitness

Pour chacun des secteurs synthétisés par le chromosome, on évalue les charges de conflit, de coordination et de monitoring associées. La charge de conflit aux noeuds étant indépendante de la sectorisation, elle est calculée une seule fois au début du processus de résolution ; seule la classification des noeuds dans les différents secteurs sera effectuée à chaque évaluation de fitness. Pour les deux autres charges, il nous faut déterminer pour chaque arc : Ces deux quantités sont recherchées par dichotomie pour chacun des arcs constituant le réseau de transport. On considère pour cela les positions géographiques des noeuds extrémités de l'arc (segment [No,Nd]) que l'on traite, ainsi que la position des centres de classe permettant de synthétiser la sectorisation (voir figure 4.8).



Figure 4.8: Répartition sectorielle d'un arc

On effectue ensuite une recherche dichotomique en parcourant le segment [No,Nd], afin de déterminer les centres de classe les plus proches de chacun des points de l'arc et donc la répartition sectorielle associée (on ne calcule pas l'équation des droites constituant les frontières des secteurs). A partir des charges de conflit aux noeuds et de la répartition sectorielle de flux, on déduit les trois charges associées à chacun des secteurs et ceci nous permet ensuite de déterminer les critères d'équilibrage et de coordination utilisés dans l'évaluation finale de la fitness.

Mixage de l'AG avec une méthode déterministe

Le principe d'évaluation décrit précédemment correspond à la version de base de l'algorithme dont nous donnons maintenant une amélioration, basée sur le mixage de l'AG avec une technique déterministe d'équilibrage.

Connaissant les charges de contrôle associées à chacun des secteurs, il nous est facile de déterminer les secteurs les plus chargés et d'en déduire une tendance de déplacement des centres de classe permettant de diminuer l'écart de masse entre les secteurs. En effet, si l'on considère une répartition surfacique homogène de masse dans un rectangle et en examinant la situation initiale décrite sur partie gauche de la figure 4.9, on conclut facilement qu'il faut déplacer les centres à droite pour se rapprocher de l'équilibre. Ce principe d'équilibrage a été implanté au niveau de l'évaluation des fitness de l'algorithme génétique. En effet, c'est à ce niveau que l'on calcule les diverses charges de contrôle des secteurs et que l'on peut effectivement déduire le déséquilibre associé. A partir de la connaissance des écarts de ``masse'' entre les secteurs, on déduit les directions de déplacement des centres de classe qui permettent de nous rapprocher de l'équilibre.



Figure 4.9: Équilibrage et densité surfacique de masse

Pour comprendre le principe de rééquilibrage déterministe utilisé, nous allons prendre le cas simple d'une sectorisation à deux secteurs sachant que nous avons étendu cette méthode aux sectorisations à ``K'' secteurs. Nous considérons alors une densité surfacique de masse r(x,y) répartie sur un rectangle de dimension X.Y (voir figure 4.9). Ce rectangle est ensuite sectorisé à l'aide de centres de classe jetés aléatoirement dans cet espace. Pour simplifier la démarche (sans perte de généralité) nous supposons que les centres de classe se trouvent sur une droite horizontale parallèle à la médiane horizontale ``d''. Les masses associées à ces deux secteurs sont alors données par :

m1=ó
õ
Y
 
0
ó
õ
XM
 
0
r(x,y) dxdym2=ó
õ
Y
 
0
ó
õ
X
 
XM
r(x,y) dxdy;

M est le point médian du segment [C1,C2] :

XM=
x1+x2

2
;  YM=
Y

2
.

A l'aide de ces masses, on peut calculer les positions des centres de gravité associés à chacun des secteurs S1,S2 ainsi que le centre de gravité total : G1,G2,G.

On appelle centre géométrique :
GM=
æ
ç
ç
ç
è
G1+G2

2
ö
÷
÷
÷
ø
Le fonctionnement de l'algorithme est alors basé sur la remarque suivante :

Les deux secteurs sont équilibrés lorsque le centre de gravité est confondu avec le centre géométrique4 .

On cherchera donc à induire des déplacements des centres de classes tendant à rapprocher ces deux points. Plus précisément il faut déplacer le centre géométrique vers le centre de gravité. La difficulté vient du fait que l'on ne peut pas changer l'un sans modifier l'autre.

Nous allons alors envisager deux approches :
  1. Approche analytique :

    En revenant à notre exemple et en considérant r(x,y) constant (=r0=1), on a :

    ì
    í
    î
    m1=YGMx
    m2=Y(X-GMx)

    et

    Gx=
    m1G1x + m2G2x

    m1+m2
    =
    GMxG1x+(X-GMx)G2x

    X

    On se propose de trouver le déplacement D à ajouter à x1 et à x2 qui permettent d'annuler l'écart entre GM et G. On pose :

    ì
    í
    î
    x'1=x1+D;
    x'2=x2+D

    Après déplacement on a :

    G'x=
    G'MxG'1x  + (X-G'Mx)G'2x

    X
    ;

    On montre sans difficulté que l'écart G'  -   G'M s'annule pour :

    D=
    X

    2
      -   GMx.

  2. Approche itérative : Soit la série Un=|m1n-m2n| où n représente le numéro de l'itération courante. Soit :

    Dn=Gn-GMn=
    m1n-m2n

    2(m1n+m2n)
    [
    G1n - G2n]

    Posons :

    ì
    ï
    ï
    ï
    ï
    í
    ï
    ï
    ï
    ï
    î
    x1n+1=x1n+
    Dxn

    a
     
    x2n+1=x2n+
    Dxn

    a

    avec

    Dxn=
    X-(x1n+x2n)

    4

    On a :

    m1n=Y æ
    ç
    ç
    ç
    è
    x1n+x2n

    2
    ö
    ÷
    ÷
    ÷
    ø
    m2n=Y é
    ê
    ê
    ê
    ê
    ë
    X- æ
    ç
    ç
    ç
    è
    x1n+x2n

    2
    ö
    ÷
    ÷
    ÷
    ø
    ù
    ú
    ú
    ú
    ú
    û
     
    m1n+1=m1n+Y
    Dxn

    a
    m2n+1=m2n-Y
    Dxn

    a

    or

    Dxn=
    X-(x1n+x2n)

    4
    = æ
    ç
    ç
    ç
    ç
    ç
    ç
    ç
    è
    X-
    2m1n

    Y

    4
    ö
    ÷
    ÷
    ÷
    ÷
    ÷
    ÷
    ÷
    ø
    = æ
    ç
    ç
    ç
    ç
    ç
    ç
    ç
    ç
    è
    X-2 é
    ê
    ê
    ê
    ë
    X-
    m2n

    Y
    ù
    ú
    ú
    ú
    û

    4
    ö
    ÷
    ÷
    ÷
    ÷
    ÷
    ÷
    ÷
    ÷
    ø

    m1n+1=m1n+
    Y

    a
    é
    ê
    ê
    ê
    ê
    ê
    ê
    ê
    ë
    X-
    2m1n

    Y

    4
    ù
    ú
    ú
    ú
    ú
    ú
    ú
    ú
    û
    m2n+1=m2n+
    Y

    a
    é
    ê
    ê
    ê
    ê
    ê
    ê
    ê
    ë
    X-
    2m2n

    Y

    4
    ù
    ú
    ú
    ú
    ú
    ú
    ú
    ú
    û
      
    d'où 
      
    m1n+1=m1n+
    1

    a
    é
    ê
    ê
    ê
    ë
    XY-2m1n

    4
    ù
    ú
    ú
    ú
    û
    m2n+1=m2n+
    1

    a
    é
    ê
    ê
    ê
    ë
    XY-2m2n

    4
    ù
    ú
    ú
    ú
    û
    soit  
    m1n+1=m1n+
    1

    a
    é
    ê
    ê
    ê
    ë
    m2-m1n

    4
    ù
    ú
    ú
    ú
    û
    m2n+1=m2n+
    1

    a
    é
    ê
    ê
    ê
    ë
    m1-m2n

    4
    ù
    ú
    ú
    ú
    û

    Etude de Un

    A partir des expressions précédentes on déduit :

    Un+1=
    Un-
    1

    2a
    Un
    Þ Un+1=
    æ
    ç
    ç
    ç
    è
    1-
    1

    2 a
    ö
    ÷
    ÷
    ÷
    ø
    Un=b Un
    Þ Un=bnU0

    On obtient ainsi une série géométrique dont la convergence est assurée pour b < 1 (Þ
    1

    4
    <a <¥).

    Dans le cas général où r(x,y) est quelconque, on induit des déplacements :

    Dn= a n(Gn  -  GM).
    pour lesquels la valeur du coefficient a n dépend du problème et sera ajustée lors des expérimentations (en règle générale on prend 0   <   a   <  
    1

    2
    ).

    Si on augmente le nombre de secteurs, on applique ce principe à chaque paire de secteurs possibles puis on effectue la somme vectorielle des écarts ainsi obtenus en s'assurant que les centres de classe restent dans le domaine géographique (si tel n'est pas le cas on fait des troncatures).
Par rapport à notre problème, ce processus d'équilibrage ne peut être mené à terme pour deux raisons essentielles ; La difficulté consiste alors à déterminer le nombre d'itérations d'équilibrage. Après expérimentation, et pour deux à cinq itérations, on s'aperçoit que l'algorithme se confine dans des zones d'espace d'état desquelles il ne peut sortir facilement par mutation car le processus d'équilibrage l'y ramène systématiquement. A l'inverse, si l'on ne fait aucun équilibrage l'algorithme est plus lent à converger. D'après les évaluations, il semble qu'un seul équilibrage soit nécessaire. Ainsi après chaque calcul des charges de secteur, on effectue une itération d'équilibrage qui modifie le chromosome avant d'évaluer le critère.

4.5.4  Évaluation

Pour évaluer et comparer les différentes versions d'algorithmes, on utilise un réseau de test pour lequel une solution évidente est connue (voir figure 4.10).



Figure 4.10: Réseau test et sectorisation construite par l'AG

Sans nuire au principe général d'évaluation, on fait l'hypothèse que les flux sur les arcs de ce réseau sont constants. Les paramètres utilisés pour l'AG furent les suivants : 400 éléments de population, 200 générations, 60% de probabilité de croisement , 6% de probabilité de mutation.

Pour observer la convergence de l'algorithme, la meilleure fitness ainsi que la moyenne des fitness sur l'ensemble de la population, sont mémorisées à chaque génération. Dans le cas présent, l'algorithme travaille sur une fitness normalisée qui est bornée à ``1'' lorsque les critères d'équilibrage et de coordination s'annulent simultanément. L'évolution de ces deux paramètres en fonction de la génération est donnée sur la figure 4.11 (sans recuit simulé (FGA)) et sur la figure 4.11 (avec recuit simulé dans le croisement (EGA)).



Figure 4.11: Convergence de l'AG sans et avec RS sur le réseau symétrique

Les deux algorithmes trouvent une solution exacte très rapidement (15 générations pour FGA et 8 générations pour EGA). Un exemple de solution fourni par l'algorithme est donné en figure 4.10.

Le temps de résolution pour ce type de problème est de cinq minutes sur station ``Sparc 10'' (pour les deux cents générations).

Après ce premier réseau, nous avons testé l'algorithme sur un réseau quelconque pour lequel il n'y a pas de solution évidente (voir figure 4.12).



Figure 4.12: Réseau asymétrique et sectorisation construite par l'AG

On se propose de partitionner ce réseau en cinq secteurs. Comme on le constate sur les courbes de convergence, l'algorithme a un très bon comportement et fournit une solution quasi-exacte en moins de 10 générations (voir figure 4.13 et figure 4.13 pour cette solution le secteur le moins équilibré est à 0.7 pour cent de l'équilibre exact)



Figure 4.13: Convergence de l'AG sans et avec RS sur le réseau asymétrique

A l'inverse du cas précédent, ici la fitness ne peut atteindre 1 car il est impossible d'annuler la coordination. La sectorisation physique générée par l'algorithme est donnée en figure 4.12 et le temps de résolution associé est de trois minutes. Comme on peut le constater, cette sectorisation respecte les contraintes et présente un aspect tout à fait satisfaisant.

4.5.5  Conclusion

Cette première étude a apporté des résultats encourageants concernant l'utilisation des algorithmes génétiques dans le problème de sectorisation des réseaux de transport. Le codage du chromosome a une grande importance dans l'efficacité de l'algorithme car il permet la synthèse de sectorisation avec un grande simplicité d'implantation. Cette simplicité se retrouve dans les opérateurs de croisement et de mutation en favorisant les performances de l'algorithme. L'utilisation du recuit simulé dans l'opérateur de croisement améliore la convergence au niveau de la statistique des moyennes.

Dans la description précédente, la valeur de K (nombre de secteurs) était fixe mais il serait envisageable de la coder directement dans le chromosome pour que l'algorithme génétique ajuste sa valeur de façon adaptative. Il faudrait alors modifier le critère pour pénaliser fortement les individus dans lesquels il y a des secteurs qui ont une charge supérieure à la charge maximum que peut gérer un contrôleur.

4.6  Affectation des flux sur un réseau sectorisé

Le problème à résoudre est un problème d'affectation statique dans un réseau à coûts d'arcs non séparables asymétriques5 . Nous allons tout d'abord présenter les méthodes classiques et leurs limitations, puis décrire un principe d'affectation de trafic respectant la contrainte d'équité, basé sur les algorithmes génétiques.

4.6.1  Méthodes classiques d'affectation statique

Algorithme d'affectation de Dijsktra

Initialement cet algorithme a été développé pour simuler le premier principe de Wardrop et converge donc vers un équilibre utilisateur. Nous avons vu précédemment qu'il y a équivalence entre équilibre utilisateur et équilibre système lorsque l'on remplace les coûts réels par les coûts marginaux associés, à condition de vérifier la condition de séparabilité. Notre objectif étant d'obtenir un équilibre système, on se propose d'utiliser un algorithme de Dijsktra sur un réseau pondéré par les coûts marginaux. Le principe de cet algorithme est assez intuitif et consiste à rechercher, pour chaque paire OD, le chemin le plus court sur lequel on affecte un quantum de trafic en réactualisant les coûts d'arcs associés.

Dans le cadre des réseaux à coûts d'arcs non séparables, on peut continuer à utiliser cet algorithme sur les coût marginaux (en vue de déterminer un coût système) à condition que la non séparabilité soit localisée aux noeuds. De fait, on peut remplacer les coût réels par les coûts marginaux pour obtenir l'équilibre système à l'aide d'un algorithme de Dijsktra. Si les coûts sont non séparables mais si l'interaction n'a lieu qu'au niveau des noeuds, l'algorithme de Dijsktra continue également à fonctionner. Dans le cas d'un réseau quelconque, pour lequel la dépendance inter-arcs n'a pas de particularité, les termes dérivés ne s'annulent plus et il faut alors utiliser des algorithmes plus élaborés. C'est le cas du problème qui nous intéresse ici.

Algorithme de Dafermos

Initialement cet algorithme [Daf72] a été développé pour des applications routières afin de tenir compte des interactions des flux croisés lors des dépassements. Ce modèle mathématique s'applique essentiellement à des réseaux à coûts d'arcs non séparables asymétriques pour lesquels l'hypothèse suivante est vérifiée : la fonction coût que l'on cherche à minimiser (coût total) doit être strictement convexe par rapport à f. On suppose de plus qu'il y a une répartition de trafic sur le réseau qui satisfait les lois de Kirchoff. Cette répartition pourrait être, par exemple, le résultat d'un algorithme d'affectation de Dijsktra produisant un équilibre utilisateur.

A partir de la distribution de trafic initiale, l'algorithme recherche pour chaque paire Origine-Destination, le chemin utilisé de coût marginal maximum et le chemin de coût marginal minimum (utilisé ou non). Soient chmax et chmin ces deux chemins. On retire ensuite une quantité du flux transitant sur chmax et on le place sur chmin afin de minimiser le critère global. On reproduit ce processus sur toutes les OD en itérant par permutation circulaire, jusqu'à ce que l'on ne puisse plus diminuer le critère global. On montre alors que l'on a atteint l'équilibre système.

Dans notre cas, l'algorithme de Dafermos ne peut être utilisé car il ne prend pas en compte la contrainte d'équité susmentionné.

4.6.2  Optimisation du problème par AG

Aucun des algorithmes classiques ne donnant de résultats, il a été nécessaire de recourir à des techniques d'optimisation stochastique. Les algorithmes génétiques ont été préférés au recuit simulé, car ils permettent de fournir plusieurs solutions de coût proche. Or, nous souhaitons avant tout proposer à des experts humains différentes solutions parmi lesquelles ils pourront choisir celle qui leur paraît la plus adapté. L'AG est donc plus adapté que le recuit simulé.

Codage du chromosome

Le codage du chromosome est une des phases les plus importantes car elle conditionne en grande partie la réussite du processus de résolution. Le chromosome doit contenir l'information nécessaire pour évaluer la fitness associée en modélisant un point de l'espace d'état. Dans le cas présent, chacun des points de l'espace d'état est représenté par un tableau dont chaque colonne décrit le chemin de la paire Origine-Destination associée (voir figure 4.14). Comme on peut le constater, l'espace de recherche est discret.




Figure 4.14: Structure d'un point de l'espace d'état

L'appartenance des noeuds à un chemin implique que ces derniers soient connexes, ce qui interdit certaines combinaisons qui violent cette contrainte. De plus, pour des questions d'économie, on ne code dans le chromosome que les noeuds qui appartiennent à un chemin sans tenir compte des autres noeuds du réseau. Ce codage rend la dimension du chromosome variable en fonction des longueurs des chemins qu'il code comme on peut le constater sur l'exemple de codage donné en figure 4.15. Dans cet exemple les avions reliant l'aéroport 1 à l'aéroport 16 sont routés sur le chemin {1,4,3,7,12,16}. Inversement les avions faisant le trajet inverse sont routés sur le chemin {16,11,6,3,4,1} etc.




Figure 4.15: Codage du chromosome

Principe de génération de la population initiale

Pour utiliser correctement les algorithmes génétiques, il nous faut disposer d'une population initiale d'individus regroupant un ensemble de chemins initialisés aléatoirement. Pour chaque individu, on considère le graphe initial dont les coûts d'arcs sont initialisés à l'aide de la distance géographique associée que l'on bruite ensuite à l'aide d'une distribution gaussienne en veillant à ce que les coûts restent positifs. Pour chacune des paires Origine-destination contenues dans le chromosome, on recherche le chemin le plus court à l'aide d'un algorithme de Dijkstra (complexité O(N2) où N est le nombre de noeuds du réseau).

Suivant la déviation de la distribution gaussienne, les chemins générés seront plus ou moins différents du chemin géographique le plus court dans le réseau non bruité. Ce principe d'initialisation évite la génération purement aléatoire des chemins dans le réseau qui conduirait à des aberrations en terme de navigation (par exemple, un chemin qui passerait par Moscou pour une paire Origine-Destination reliant Madrid à Londres). Ce type d'événement doit rester rare mais ne doit pas être complètement inhibé car il permet d'enrichir la diversité des gènes. En effet, après croisement un mauvais chemin peut produire des solutions tout à fait acceptables. Ayant maintenant une population non homogène, il nous faut définir les opérateurs de croisement et de mutation associés qui vont permettre la génération de nouveaux éléments au sein de la population.

Opérateur de croisement

Notre espace de recherche étant discret, on ne peut envisager d'utiliser un croisement barycentrique et seul le croisement à segmentation de chromosome a été utilisé (Slicing Crossover). Pour effectuer un croisement, on tire aléatoirement une position dans le chromosome puis on échange les deux ensembles de chemins terminaux (voir figure 4.16).



Figure 4.16: Opérateur de croisement et de mutation

Opérateur de mutation

L'opérateur de mutation nous permet d'enrichir la diversité de la population en créant de nouveaux chemins. En effet, l'opérateur de croisement décrit précédemment génère des nouveaux chromosomes mais ne modifie pas la population de chemins générés aléatoirement lors de l'initialisation du processus. Pour créer de nouveaux chemins, l'opérateur de mutation tire aléatoirement une paire Origine-Destination dans le chromosome et applique le même principe de génération aléatoire de chemin que celui utilisé lors de la création de la population initiale mais ici avec un écart-type plus fort. Un exemple d'opérateur de mutation est donné dans figure 4.16.

Introduction de la distance inter-chromosomes pour le sharing

Pour effectuer un sharing, on doit disposer d'une distance inter-chromosomes afin d'évaluer le taux d'agrégation des individus dans l'espace d'état. Si l'on considère la description stricte du chromosome, on ne peut pas définir une distance réaliste entre individus car on ne dispose pas d'une structure d'espace vectoriel. En effet, chaque chemin étant codé par la liste des indices des noeuds qui le composent, il est très difficile de déterminer une notion de distance représentative de la différence physique induite dans l'espace géographique sous-jacent. Pour déterminer cette distance entre chemins, on se place directement dans cet espace géographique en considérant non plus les indices des noeuds mais leurs coordonnées. On définit alors la distance entre deux chemins par la surface fermée qu'ils entourent (voir figure 4.17).




Figure 4.17: Surface délimitée par deux chemins

Cette surface est alors calculée en faisant la somme des surfaces des triangles construits à l'aide des noeuds de chacun des chemins comme le montre la figure 4.17. L'expression analytique de cette surface est donnée par la formule suivante:

S=A(P1,P2,Q2) +
m-1
S
i=2
{A(Pi,Qi,Qi+1) + A(Pi,Pi+1,Qi+1) }+
n-2
S
i=m
{A(Pm,Qi,Qi+1) };
avec
Ch1={P1,P2,...,Pm}; Ch2={Q1,Q2,...,Qnm<n   et   n ³ 3;

Que se passe-t-il lorsque les chemins se croisent ? Dans le cas général, cette pseudo-distance majore l'aire comprise entre les deux chemins ; dans le cas particulier de notre réseau de transport planaire dans lequel les croisements de routes se font au niveau des noeuds, la pseudo-distance est toujours égale à l'aire comprise entre les deux chemins.

Disposant d'une distance entre deux chemins, on calcule la distance entre deux chromosomes en faisant la somme des distances respectives associées à chacune des paires de chemins contenues dans chaque chromosome.

Calcul du barycentre entre deux chromosomes

Comme pour le calcul de la distance inter-chromosomes, il nous faut travailler dans l'espace géographique sous-jacent au réseau de transport pour calculer le barycentre entre deux chemins. Soient deux chemins :
Ch1={P1,P2,...,Pm}; Ch2={Q1,Q2,...,Qnn ³ 3;  m < n

Soient n1 et n2 les coefficients barycentriques associés respectivement aux chemins Ch1 et Ch2. Le chemin barycentrique est alors donné par :

ChB=( P1,
n1 P2+n2 Q2

n1+n2
,
n1 P3+n2 Q3

n1+n2
,...,
n1 Pm-1+n2 Qm-1

n1+n2
,
n1 Pm-1+n2 Qm

n1+n2
,...,
n1 Pm-1+n2 Qn-1

n1+n2
, Qn);

Dans cette expression P représente la position géographique du noeud P.

Un exemple de chemin barycentrique est donné sur la figure 4.18 avec n1=2 et n2=1.




Figure 4.18: Exemple de chemin barycentrique

Pour déterminer le barycentre entre deux chromosomes, il suffit d'appliquer ce processus de calcul à chacun des chemins contenus dans le chromosome.

Calcul et normalisation de la fitness

Dans un premier temps, on considère le réseau de transport sans trafic. Pour chaque paire Origine-Destination contenue dans le chromosome, on affecte la demande correspondante sur le chemin décrit par la liste des noeuds associée. On dispose alors de la répartition de flux sur chacun des arcs du réseau, ce qui nous permet de calculer le sous-critère d'affectation C1 ainsi que la charge de contrôle globale (et donc le critère C).

Le nombre d'opérations nécessaires à l'évaluation d'une fitness dépend de la taille du réseau et varie en O(Nod+L+K(N+L)) (Nod : nombre de paires Origine-Destination, L : nombre d'arcs du réseau, K : nombre de secteurs, N : nombre de noeuds).

Évaluation

Pour évaluer notre algorithme, on utilise un réseau test pour lequel on connaît une solution triviale d'affectation (voir figure 4.19).




Figure 4.19: Réseau test et affectation résultante

Sur ce réseau, les noeuds sur la première diagonale représentent les aéroports et ceux de la deuxième diagonale sont les balises. On se propose d'affecter une demande de trafic constante entre chaque paire d'aéroports de façon symétrique (chaque aéroport génère une demande à destination de l'aéroport symétrique, ce dernier lui envoyant la même quantité de trafic).

Pour cet exemple, on règle le coefficient de congestion de telle sorte que deux flots de trafic ne peuvent emprunter le même arc ; on interdit de même que deux flots se retrouvent face à face sur un arc. Le critère se présente alors sous la forme suivante :

C=a
 
S
(i,j) Î L
Cij(fij) + (1-a)
 
S
(i,j) Î L
g fijfji

Comme on peut le constater, il n'y a pas de sectorisation mais la forme du critère est similaire à celle décrite précédemment et ne change en rien la généralité de l'algorithme.

Les paramètres utilisés furent les suivants : 400 éléments de population, 300 générations, 60% de probabilité de croisement , 6% de probabilité de mutation.

Pour ce test nous avons utilisé un algorithme génétique avec du recuit simulé dans l'opérateur de croisement afin d'améliorer les performances de convergence. L'évolution de la fitness (normalisée entre 0 et 1) du meilleur individu ainsi que la moyenne des fitness sur l'ensemble de la population, en fonction de la génération, sont données sur la figure 4.20.




Figure 4.20: Évolution de la fitness normalisée

Comme on peut le constater, une solution optimale est trouvée à partir de la génération 180 pour laquelle intervient seulement la partie du critère liée à la distance de parcours. Cette solution est obtenue en six minutes sur une station ``Sparc 10''. L'affectation physique correspondant à cette solution est donnée sur la figure 4.19.

Au cours de ces évaluations, on s'aperçoit que les performances de cet algorithme sont très sensibles à l'amplitude de l'écart-type de la distribution utilisée pour bruiter les coûts d'arcs dans le processus de génération des chemins aléatoires. Pour chaque problème, il faut régler ce paramètre afin d'obtenir des chemins aléatoires différents du chemin optimal (en terme de distance) mais qui à l'inverse ne soient pas trop pénalisants par rapport au rallongement induit. Une solution consisterait à coder ce paramètre dans le chromosome et à le faire ajuster par l'algorithme génétique de façon adaptative.

4.6.3  Conclusion

La contrainte d'équité nous empêche d'utiliser les méthodes classiques d'affectation de trafic sur les réseaux à coûts d'arcs non séparables et induit une forte complexité nous obligeant à nous orienter vers des méthodes d'optimisation stochastique. Après avoir développé un codage du chromosome ainsi que des opérateurs adaptés, on s'aperçoit que les algorithmes génétiques traitent ce problème de façon efficace à condition que le générateur de chemins aléatoires soit adapté au réseau de transport utilisé.

La contrainte d'équité, qui permet de conserver la libre concurrence des compagnies aériennes, a pour inconvénient de réduire notre espace de recherche et nous interdit donc d'accéder à des zones d'espace où le critère serait assurément meilleur. En effet, on montre que lorsque le critère à optimiser n'est pas linéaire par rapport aux flux sur les chemins, mais plutôt quadratique, il est plus avantageux de segmenter les flux afin de rendre le système plus capacitif.

4.7  Sectorisation et affectation de trafic simultanées

La dépendance très forte des problèmes d'affectation et de sectorisation incite à penser que ces deux problèmes doivent être résolus simultanément. Dans le cas de la sectorisation, l'optimisation visait essentiellement à réduire les coordinations et à équilibrer les charges de contrôle. De même, l'optimisation de l'affectation avait pour but la minimisation de la charge globale de contrôle tout en minimisant les rallongements de route induits.

La diversité des critères liés à ces deux problèmes, quand bien même certains sont communs, révèle la nature multi-objectifs du problème global. Dans un premier temps, une approche itérative avec deux algorithmes génétiques bouclés s'est révélée inefficace de par l'instabilité des solutions fournies. Cet échec a amené Daniel Delahaye à proposer de traiter le problème dans sa globalité à l'aide d'un algorithme génétique unique en codant les deux sous-problèmes dans un diploïde6 . Cette approche n'a pas encore été testée.

4.8  Regroupement de secteurs

4.8.1  Introduction

Au cours d'une journée de trafic ordinaire, on remarque que la charge de contrôle fluctue dans le temps en fonction des demandes de trafic entre les diverses paires Origine-Destination. Par exemple, en France, il y a une pointe de trafic le matin et une pointe le soir.

Les algorithmes présentés jusqu'à présent ont toujours travaillé avec des flux importants sur le réseau afin d'assurer l'absorption des pointes de trafic, ce qui correspond au cas le plus défavorable. Ainsi nos problèmes sont optimisés pour ce genre de trafic et les solutions apportées deviennent sous-optimales lorsque les flux sur le réseau diminuent.

Dans le système opérationnel actuel, le nombre de contrôleurs varie en fonction des demandes de trafic. Ainsi, la nuit, le nombre d'équipes de contrôle est réduit car il y a beaucoup moins de trafic. Si tel n'était pas le cas, on se retrouverait avec des positions de contrôle traversées par une dizaine d'avions par heure ; ce qui générerait un coût de contrôle surdimensionné par rapport au service rendu aux usagers. Les secteurs sont donc regroupés la nuit en groupe de trois à quatre ; chaque groupe ainsi constitué est ensuite attribué à une équipes de contrôleurs. Actuellement ce regroupement est fait de façon empirique au niveau de chaque centre de contrôle régional par des experts gérant l'espace aérien, qui groupent et dégroupent les secteurs par anticipation des fluctuations de trafic. Ainsi, le matin, les secteurs sont dégroupés un peu avant la pointe de trafic liée à l'ouverture des aéroports.

Dans ce chapitre, nous décrivons une méthode automatique de regroupement7 de secteurs fournissant une solution globale sur l'ensemble de l'espace aérien.

4.8.2  Modélisation

Nous faisons l'hypothèse que les secteurs initiaux sont convexes au sens géométrique du terme et pourraient être le résultat de l'algorithme de sectorisation décrit dans les chapitres précédents. Ceci ne change en rien les propriétés de l'algorithme de regroupement proposé dans ce chapitre et ce dernier pourrait très bien s'appliquer à la sectorisation actuelle qui est constituée par des secteurs convexes au sens des routes aériennes. Les propriétés d'un bon regroupement sont en fait les mêmes que celles demandées à la sectorisation : on cherche à synthétiser des groupes de secteurs dont les charges de contrôle résultantes sont équilibrées et qui minimisent les coordinations restantes (coordination inter-groupes). Un exemple de regroupement de secteurs de contrôle est fourni sur la figure 4.21.




Figure 4.21: Exemple de regroupement pour N=4 et K=2

Comme on peut le constater, le regroupement {(S1,S2,S3);(S4,S5,S6)} fait disparaître les charges de coordination liées aux anciennes frontières de secteur : (S1,S2);(S2,S3);(S4,S5);(S5,S6).

D'autre part, tous les secteurs appartenant à un même groupe doivent être connexes. Cette contrainte évite par exemple qu'un même contrôleur gère une portion de trafic à Lille et une autre à Marseille ; ce qui est une aberration en terme de contrôle du trafic aérien dans la mesure où l'on perd l'homogénéité du trafic dans les secteurs gérés par une même équipe de contrôleurs et produit de plus des coordinations inutiles.

Comme on peut le remarquer, ce problème est très proche du problème de sectorisation. La différence essentielle réside dans la description de l'espace de recherche associé. En effet, dans le problème de sectorisation l'espace était continu et les frontières des secteurs générés pouvaient se trouver à n'importe quel endroit dans l'espace géographique. A l'inverse, l'espace de recherche lié au problème de regroupement est un espace discret pour lequel les frontières des groupes constitués doivent coïncider avec les frontières des secteurs existants (chaque groupe associe un ensemble de secteurs sans en créer de nouveaux). Notre problème de regroupement s'apparente donc à un problème de classification.

4.8.3  Complexité du principe de regroupement

Dans un premier temps nous examinons le nombre de points constituant notre espace de recherche en négligeant la contrainte de connexité. Il s'agit donc de savoir quel est le nombre de façon possible de construire K sous-ensembles d'un ensemble de N éléments où N représente le nombre total de secteurs et K le nombre de groupes constitués. Le nombre de cas possibles est donné par le second nombre de Stirling,soit pour N=600 et K=200 (groupement moyen de trois secteurs) :

S600200 = 0.8  101001

Si l'on tient compte maintenant de la contrainte de connexité l'espace de recherche se réduit. Pour étudier la complexité induite, le problème est modélisé de la façon suivante. On construit un graphe dans un espace euclidien dont chaque noeud représente le barycentre de chacun des secteurs constituant la sectorisation initiale et dont chaque arc traduit la relation ont une frontière commune.

Il s'agit alors de la recherche d'un K-partitionnement optimal d'un graphe à N noeuds en composantes connexes, problème connu pour être NP_complet. Le problème traité étant de forte dimension (N=600,K=200), seules les techniques d'optimisation stochastique ont été envisagées pour le résoudre.

4.8.4  Optimisation par algorithme génétique

La ressemblance des problèmes de sectorisation et de regroupement conduit à des similitudes dans l'utilisation des algorithmes génétiques pour les résoudre. En effet, le problème de regroupement étant une version discrète du problème de sectorisation, il est tout à fait logique d'utiliser un codage et des opérateurs similaires.

Ainsi, disposant d'une sectorisation initiale, on calcule pour chaque secteur le barycentre géométrique associé auquel on affecte la charge de contrôle qu'il renferme. Pour générer aléatoirement N groupes de secteurs, on jette N points (centres de groupe) dans l'espace géographique, dont les coordonnées suivent une loi de distribution uniforme, puis on agrège chaque barycentre à son centre de groupe le plus proche. On synthétise ainsi des groupes qui respectent toujours la contrainte de connexité car le polygone construit à l'aide des barycentres des secteurs contenus dans un groupe est convexe, les secteurs associés sont donc obligatoirement connexes. On retrouve alors un codage du chromosome identique à celui utilisé pour le problème de sectorisation dans lequel sont regroupés ici les coordonnées des centres de groupe.



Ayant un codage identique à celui utilisé dans la résolution du problème de sectorisation on utilise les mêmes opérateurs de croisement et de mutation. Le calcul des distances inter-chromosomes et du barycentre entre deux individus est effectué de la même façon.

A l'initialisation du processus, on calcule la charge de contrôle de chacun des secteurs de la sectorisation initiale. Pour chaque individu, on détermine la charge de monitoring et de conflit dans chacun des groupes qu'il renferme en faisant la somme des charges de contrôle contenues dans les divers secteurs ainsi que la charge résiduelle de coordination. Ces quantités nous permettent ensuite de calculer les sous-critères d'équilibrage et de coordination et donc la fitness associée à un regroupement.

De la même manière que pour les problèmes de sectorisation, on valide les performances de l'algorithme à l'aide d'un réseau artificiel pour lequel on connaît une solution évidente. Dans le cas présent, on reprend le réseau test utilisé dans le problème de sectorisation (voir figure 4.22) que l'on découpe initialement en 81 secteurs (voir figure 4.22) et pour lequel on recherche neuf groupes équilibrés qui minimisent les coordinations. La solution évidente de ce problème est constituée des neuf sous-réseaux regroupant chacun neuf secteurs.



Figure 4.22: Réseau test utilisé et son découpage

Une solution optimale est trouvée à la génération 50 (après une minute de temps de calcul sur ``Sparc 10'').



Figure 4.23: Solution et regroupement résultant

Le résultat obtenu peut surprendre au premier abord (figure 4.23), mais il faut se rappeler que l'algorithme travaille avec les barycentres des secteurs et non avec les secteurs eux-mêmes. En revenant à la définition initiale des secteurs, on obtient le regroupement décrit sur la figure 4.23 qui correspond bien au résultat attendu.

Les résultats fournis par ces évaluations, nous incitent à penser que les algorithmes génétiques sont bien adaptés pour résoudre le problème de regroupement. Malgré la restriction de l'espace d'état liée au codage du chromosome, les solutions apportées par l'algorithme sont de très bonne qualité dans la plupart des cas.

4.9  Limitations du modèle

4.9.1  Modélisation de la charge de contrôle

Les paramètres liés à la description de cette charge ont été choisis empiriquement et pourraient être affinés à l'aide d'expérimentations. Cette modélisation est très délicate car beaucoup de facteurs entrent en jeu dans la résultante de la charge de contrôle. EUROCONTROL (Brétigny projet RAMS) a développé un modèle assez réaliste de cette charge mais au prix d'une complexité élevée. En effet, ce dernier intègre 200 tâches élémentaires de contrôle dans le cadre des simulations arithmétiques qu'on ne peut utiliser dans nos algorithmes génétiques pour des questions de temps de calcul.

Une autre approche consisterait à faire de l'apprentissage sur les paramètres utilisés dans la description simplifiée de la charge de contrôle que l'on a développée. Dans un premier temps, l'algorithme génétique utiliserait des paramètres grossiers, et fournirait tout de même une sectorisation. Ce résultat serait ensuite présenté à des experts qui corrigeraient ce dernier en modifiant les frontières des secteurs à l'aide d'une interface graphique. On calculerait alors un écart (D) entre les deux sectorisations qui servirait de base à la redéfinition des coefficients du modèle. On itèrerait ce procédé jusqu'à ce que les experts soient satisfaits du résultat produit par l'algorithme. Si l'on ne peut atteindre cet objectif, il faudrait revoir le modèle lui-même et non le réglage de ses coefficients. Pour que cette méthode fonctionne correctement il faut que les objectifs de sectorisation utilisés par les algorithmes génétiques soient les mêmes que ceux des experts, ce qui n'est pas toujours le cas.

Enfin, il serait possible de faire un ajustement statistique des paramètres utilisés dans notre modèle de charge de contrôle à l'aide de la connaissance précise de la charge de travail dans un secteur (connaissance issue d'un modèle intégrant un grand nombre de tâches de contrôle (simulation RAMS par exemple) que l'on ne peut utiliser dans nos algorithmes à cause de la complexité associée).

4.9.2  Prise en compte de la troisième dimension

Jusqu'à présent, seul le trafic en route a été pris en compte pour synthétiser la charge de contrôle. Cette hypothèse sur la nature du trafic nous a permis de modéliser le réseau de transport aérien à l'aide d'un graphe dans un espace de dimension deux.

Malheureusement, ce type de représentation n'est pas adapté pour le trafic évolutif pour lequel les avions changent très souvent de niveau de vol. Il faut alors utiliser un réseau de transport à trois dimensions dans lequel les arcs représentent des ``routes aériennes 3D''.

On pourrait essayer de se rapprocher du principe actuel de sectorisation 3D qui utilise des secteurs de forme polygonale à frontières verticales planaires (voir figure 4.24). Ces secteurs ont de plus des extensions verticales différentes qui produit une structure imbriquée dont un exemple est donné sur la figure 4.24.



Figure 4.24: Structure des secteurs actuels

Cependant cette structure de sectorisation demande de modifier en profondeur la représentation du chromosome et donc l'algorithme génétique dans son ensemble.

4.9.3  Limitation de l'exploration de l'espace d'état

La synthèse des secteurs de contrôle à l'aide des centres de classe (voir chapitre traitant de la sectorisation) est très intéressante pour la description du chromosome utilisé par les algorithmes génétiques car très peu d'informations sont nécessaires pour construire une sectorisation complète qui de plus, satisfait la propriété de convexité géométrique. On rappelle que seules les positions géographiques des centres de classe sont codées dans le chromosome. En examinant la sectorisation actuelle, on constate que les secteurs ont des formes polygonales mais pas nécessairement convexes d'un point de vue géométrique. Ce type de représentation est plus riche en terme d'exploration spatiale et permet d'accéder à de nouveaux points de l'espace d'état, que la propriété de convexité nous interdit d'adresser. Ainsi, sur l'exemple de la figure 4.25, une sectorisation convexe ne peut pas équilibrer les charges de contrôle alors qu'en supprimant la convexité géométrique il est possible d'atteindre cet objectif.



Figure 4.25: Exemple de limitation liée à la convexité géométrique

De la même façon que pour la limitation des algorithmes génétiques par rapport à l'extension tridimensionnelle, le codage de chromosomes permettant de synthétiser des sectorisations polygonales non convexes s'avère assez compliqué. Daniel Delahaye propose diverses solutions pour remédier à ce problème [Del95].

4.9.4  Prise en compte des zones militaires

Une partie de l'espace aérien est réservé aux autorités militaires. L'activation de ces zones, qui est faite à l'initiative des instances de la défense, provoque des perturbations plus ou moins importantes dans le trafic aérien civil suivant la configuration du moment. De plus, les secteurs qui contiennent ces zones voient leur espace se réduire brutalement limitant ainsi les possibilités d'action des contrôleurs. Cette restriction d'espace provoque une augmentation de la charge de contrôle induite pour la même quantité de trafic.

Nous n'avons pas pris en compte ce type d'événement dans nos algorithmes car leur modélisation est très délicate. Un moyen détourné d'intégrer ces zones dans le processus de résolution consisterait à augmenter artificiellement la charge de contrôle des secteurs qui les contiennent.

4.9.5  Problèmes politiques liés à la souveraineté de l'espace aérien

En observant la sectorisation actuelle, on constate que les limites des secteurs épousent les frontières géographiques des pays qui les contiennent. Ceci se justifie dans la mesure où le contrôle du trafic aérien est généralement confié aux pays survolés par les aéronefs. Il est clair que cette restriction réduit les performances de la sectorisation actuelle car elle provoque des coordinations superflues.

4.9.6  Prise en compte de la propagation des flux

Le fait d'utiliser des flux statiques sur le réseau produit une charge de contrôle invariante dans le temps, que l'on a majorée en considérant le flux maximum enregistré sur une journée sur chacun des arcs du réseau. Or, on sait très bien que ces valeurs extrêmes ne sont jamais présentes simultanément, car les heures de pointe de trafic sont locales aux fuseaux dans lesquels se trouvent les aéroports. Ainsi, les pointes sont décalées dans le temps. De plus, lorsqu'il y a une augmentation de la demande de trafic sur une paire Origine-Destination donnée, elle va induire un accroissement du flux sur la route associée avec un délai de propagation lié à la vitesse des aéronefs. Les algorithmes (de sectorisation et surtout d'affectation) devraient tenir compte de cette propagation pour déterminer la charge réellement présente sur le réseau de transport.

4.10  Conclusion

En examinant le contexte opérationnel, on remarque que ces algorithmes ont besoin d'adaptation pour envisager leur utilisation sur le réseau aérien réel. La principale amélioration se situe au niveau de la description de la charge de contrôle. Le problème à résoudre est complexe et il n'existe pas aujourd'hui de modèle fiable facile à implanter.

La seconde limitation se trouve au niveau du codage du chromosome de sectorisation qui, dans son état actuel, synthétise des secteurs convexes au sens géométrique du terme. Ce type de convexité masque des domaines de l'espace d'état où se trouve parfois l'optimum global.

Enfin, la prise en compte de la troisième dimension permettrait de traiter le trafic évolutif dans les zones terminales, mais il faut pour cela synthétiser des secteurs à frontières latérales verticales, ce qui complique sensiblement la description du chromosome. En amont de la sectorisation, il est clair que le réseau de routes aériennes actuel nécessite lui-même une optimisation qui permettrait ensuite de développer une sectorisation plus performante. En effet, ce réseau a été ``construit'' en regroupant un ensemble de sous-réseaux (propres à chaque pays européen), optimisés individuellement. Il est possible que l'augmentation de la capacité des secteurs ATC, passe d'abord par une redéfinition du réseau de routes : ces dernières ont été construites pour une demande de trafic donnée qui ne cesse aujourd'hui de se modifier tant en volume qu'en orientation.




1
Ce chapitre présente les résultats obtenus par Daniel Delahaye dans le cadre de sa thèse.
2
Ce travail a donné lieu à deux publication[DASF94a, DASF94c]
3
Il faut préciser que ce type de convexité (géométrique) restreint notre espace d'état en nous interdisant de générer des secteurs polygonaux non convexes.
4
Cet objectif est bien différent de celui proposé dans les méthodes de partitionnement (voir chapitre 3) pour lesquelles on recherche une minimisation de l'inertie intra-classe.
5
Ce travail a donné lieu à une publication[DASF94b]
6
Un ``diploïde'' est un chromosome à deux branches possédant des gènes bien distincts.
7
Ce travail a donné lieu à une publication[DASF95].

Previous Next Contents