Optimisation des Antennes en Télécoms
Optimisation des Antennes en Télécoms
ALEXANDRE MARTY
DÉPARTEMENT DE MATHÉMATIQUES ET GÉNIE INDUSTRIEL
ÉCOLE POLYTECHNIQUE DE MONTRÉAL
Ce mémoire intitulé :
Résumé
sation est ensuite développé, utilisant une méthode de recherche directe, l’algorithme
Mads, et une métaheuristique, la recherche tabou, et traitant la simulation de réseau
comme une boîte noire à optimiser.
La méthode est testée avec différentes instances et les résultats sont présentés et
analysés. Les résultats obtenus sont encourageants, en particulier avec l’instance cor-
respondant à un territoire réel. La méthode semble donc pouvoir être utilisée comme
point de départ pour le développement d’outils d’optimisation de réseaux de télécom-
munications.
v
Abstract
All the mobile communication services available today rely on networks operated
by telecommunications companies. To remain competitive, they have to conform to
the market and cope with the ever growing number of users and the increase in their
demands in terms of services and geographic coverage. They need to constantly im-
prove their networks by upgrading their facilities and adding new ones. Expanding
and maintaining a telecommunications network is very expensive, therefore minimiz-
ing the costs related to networks is a very important issue for operators.
And yet, telecommunications networks have now become very complex systems,
made up of various elements and depending on a large number of parameters which
have to be considered when designing a network. Thus it is a difficult task and it
would be very interesting for operators to have optimization tools to help them. The
present work intends to lay the foundations for a new telecommunications network
optimization method, in order to enable the future development of tools to help in
the process of designing a network.
The components at the root of a telecommunications network are antennas or base
stations, which have to be placed wisely on the target territory in order to supply
all users with mobile service. Placing antennas is difficult because antennas emitting
at the same frequencies interfere, and the shape of their coverage zones can then be
irregular and sensitive to variations of localization and frequencies. The goal of the
method developed here is to optimize the localization of the antennas together with
their frequency allocation.
The approach used in this work breaks down into two stages. First, a telecommu-
nications network model suitable to the optimization is developed and implemented
as a computer program in order to perform simulations. The model needs to be
accurate enough to give realistic results, but not to complex so as to allow quick
simulations. An optimization algorithm is then developed, which uses a direct search
method, the Mads algorithm, and a metaheuristic, the tabu search, and handles the
network simulation as a black-box.
The method is tested on various instances and results are presented and analysed.
The results are encouraging, especially with the instance corresponding to an actual
vi
territory. Therefore the method seems a promising first step in the development of
telecommunications networks optimization tools.
vii
RÉSUMÉ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
CHAPITRE 1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . 1
CHAPITRE 6 RÉSULTATS . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.1 Présentation des instances . . . . . . . . . . . . . . . . . . . . . . . . 86
6.1.1 Cartes de terrain . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.1.2 Cartes de densité . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.2 Déroulement de l’optimisation . . . . . . . . . . . . . . . . . . . . . . 92
6.3 Profils d’évolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.3.1 Recherche Voronoï initiale . . . . . . . . . . . . . . . . . . . . 100
6.3.2 Nombre d’antennes et nombre d’usagers non servis . . . . . . 101
6.3.3 Analyse des tendances générales d’évolution . . . . . . . . . . 103
6.3.4 Comportement individuel des recherches . . . . . . . . . . . . 112
6.3.5 Phase de terminaison . . . . . . . . . . . . . . . . . . . . . . . 114
6.4 Résultats finaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6.4.1 Influence des nombre de canaux et d’antennes . . . . . . . . . 115
6.4.2 Influence du terrain et de la densité . . . . . . . . . . . . . . . 116
6.4.3 Comportement avec les instances réelles . . . . . . . . . . . . 118
xi
RÉFÉRENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
ANNEXES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
xii
C
Figure 6.11 Profil d’évolution de l’instance Circle10,20 . . . . . . . . . . . . 98
E
Figure 6.12 Profil d’évolution de l’instance Banana10,20 . . . . . . . . . . . 99
Figure 6.13 Profil d’évolution de l’instance M tl10,20 . . . . . . . . . . . . . . 99
Figure 6.14 Deux profils d’évolution avec des longueurs relatives de re-
cherche Voronoï initiale différentes. . . . . . . . . . . . . . . . 105
Figure 6.13 Effet de l’augmentation du nombre d’antennes sur l’instance
C
Circle10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Figure 6.14 Deux instances avec couverture totale. . . . . . . . . . . . . . 109
Figure 6.15 Deux instances ne permettant pas d’obtenir une couverture totale.111
C
Figure 6.16 Exemple de l’instance Banana15,60 , pour laquelle la couverture
complète n’est obtenue qu’après un temps long. . . . . . . . . 112
xv
3 Algorithme CS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4 Algorithme Gps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5 Algorithme Mads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6 Plan général . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
7 Fonction récursive de placement des antennes. . . . . . . . . . . . . . . 71
8 Recherche tabou . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
9 Recherche tabou avec utilisation de mouvements. . . . . . . . . . . . . 76
10 Plan de l’algorithme général. . . . . . . . . . . . . . . . . . . . . . . . 84
xvi
CS Coordinate Search
Gps Generalized Pattern Search
Mads Mesh Adaptive Direct Search
VNS Variable Neighborhood Search
SMS Short Message Service
MMS Multimedia Messaging Service
WAP Wireless Application Protocol
IP Internet Protocol
UIT Union Internationale des Télécommunications
GSM Global System for Mobile Communications
UMTS Universal Mobile Telecommunications System
SIR Signal to Interference Ratio
FDMA Frequency Division Multiple Access
TDMA Time Division Multiple Access
CDMA Code Division Multiple Access
1
Chapitre 1
Introduction
Nombre d’utilisateurs
Le nombre d’utilisateurs des réseaux de téléphonie mobile dans le monde connait
une croissance très rapide depuis de nombreuses années et s’élève en 2010 à plus de
5 milliards d’abonnés ([BBC(2010)]). Cette donnée est illustrée par la figure 1.1 qui
présente l’évolution du nombre d’abonnés à un opérateur de téléphonie mobile dans
le monde, au Canada et en Chine, pays où le nombre d’utilisateurs est aujourd’hui le
plus élevé et le plus rapidement croissant.
2
(a) Monde
(b) Canada
(c) Chine
Couverture géographique
La couverture géographique est également un des objectifs importants dont doivent
tenir compte les opérateurs téléphoniques lorsqu’ils conçoivent leurs réseaux. Si en
zone urbaine il est clair que l’ensemble du territoire doit être couvert par le réseau, il
n’en va pas de même à l’échelle d’une région ou d’un pays, où les densités de population
sont variables et ne justifient pas une couverture complète du territoire. Les opérateurs
doivent faire le choix de fournir un service à certaines zones géographiques et non à
d’autres en évaluant l’importance de couvrir certains territoires par rapport à leurs
contraintes économiques. La figure 1.2 illustre la couverture du territoire du Canada
réalisée par l’opérateur Koodo Mobile.
Cet enjeu possède une importance particulière à l’heure actuelle, en raison du
4
Figure 1.2 Couverture du territoire canadien par l’opérateur Koodo Mobile en 2010
(source : Koodo Mobile). Les zones couvertes sont les zones foncées.
Chapitre 2
d’analyse et de traitement du signal. Nous résumons ici les notions présentées dans
[Gaillard et Lengellé(2006)] ou [Bellanger(2006)].
Considérons un signal s se propageant dans un canal. On peut effectuer une analyse
spectrale de ce signal en calculant la transformée de Fourier de s, ou la série de
Fourier de s dans le cas particulier d’un signal périodique. On obtient alors le spectre
de fréquences de s, qui indique la puissance transportée par le signal pour chaque
fréquence.
Pour un signal réel (par opposition à un signal aléatoire), la quasi-totalité de
l’énergie contenue dans le signal est comprise dans une bande de fréquence limitée,
en dehors de laquelle la puissance du signal est très faible. On définit ainsi un seuil de
puissance en-dessous duquel on considère que la puissance du signal est nulle, ce qui
permet d’identifier clairement la bande de fréquences occupée par le signal comme
illustré par la figure 2.1.
atténués sur de très courtes distances, de sorte que l’on dit que le canal est opaque à
ces fréquences. Au contraire, les fréquences situées dans la bande passante du canal
se propageront beaucoup mieux. La bande passante d’un canal dépend bien sûr de
la nature du support, mais également de la longueur de transmission nécessaire pour
l’utilisation envisagée.
Modulation du signal
Figure 2.2 Exemple d’un flux de données numériques représenté par différents codages.
support, de la forme : sP (t) = aP cos(2πfP t). Cette onde porteuse est modulée par
le signal à transmettre pour obtenir un nouveau signal, dont le spectre est centré
autour de fP et possédant un certain étalement spectral. Le signal est alors composé
de fréquences comprises dans la bande passante du support et peut maintenant être
transmis.
Figure 2.3 Occupation spectrale d’un signal en bande de base et bande passante de
l’air
PS
CI = ∆f log2 1 + (2.1)
PN
où : CI : capacité du canal en bits/s ;
∆f : largeur de bande du canal (ici l’air) ;
PS : puissance du signal reçu de l’émetteur ;
PN : puissance du bruit perturbant la réception.
On voit d’après cette formule que la largeur de bande du canal ∆f joue un rôle
prépondérant dans la capacité du canal, puisque cette capacité dépend linéairement
de ∆f .
10
D’autre part, il faut aussi prendre en compte les phénomènes naturels tels la
réflexion sur l’atmosphère ou la sensibilité aux intempéries. Des utilisations telles que
la radio AM, qui émet dans des bandes de fréquences de l’ordre de 100 kHz à 10000
kHz, tirent parti de la réflexion sur l’ionosphère des ondes de ces fréquences pour
augmenter leur portée d’émission. Les radio AM peuvent ainsi être reçues jusqu’à
1000 km de leur point d’émission. Cependant, cela est possible car les signaux de la
radio AM transportent une faible quantité de données par rapport à la largeur de
bande utilisée par les signaux, ce qui rend les transmissions plus robustes. Une telle
approche n’est pas envisageable dans le cas des télécommunications.
Enfin, il faut également considérer les perturbations occasionnées par les obstacles
tels que les bâtiments, les reliefs de terrain ou les arbres. Certaines applications uti-
lisent une transmission en « ligne de vue », où il n’y a pas d’obstacle entre l’émetteur
et le récepteur. Pour les télécommunications, on aimerait au contraire que les si-
gnaux puissent se propager malgré la présence d’obstacles, et il faut donc choisir des
fréquences qui le permettent.
Le choix de la bande de fréquence utilisée pour chaque type de transmission ne
doit pas être laissé au hasard. On divise conventionnellement le spectre radiofréquence
en bandes d’une décade, portant chacune un nom et correspondant à des utilisations
différentes, dont des exemples sont donnés dans le tableau 2.1.
2.2.4 Réglementation
Le domaine des radiocommunications est un domaine très réglementé. C’est l’UIT
qui établit et fait respecter le règlement des radiocommunications dans le monde. Il
concerne les ondes de fréquences comprises entre 9 kHz et 3000 GHz, les fréquences
inférieures à 9 kHz n’étant pas réglementées car elles ne sont pas utilisables pour les
radiocommunications.
La nécessité d’une réglementation des radiocommunications est indiscutable tant
le nombre d’utilisations diverses est élevé, ce qui fait du spectre radiofréquence une
ressource rare et convoitée, qu’il faut partager entre un grand nombre d’acteurs. Sans
une stratégie d’attribution efficace, l’utilisation incontrôlée du spectre radiofréquence
provoquerait des brouillages entre différentes applications qui utiliseraient les mêmes
bandes de fréquence, ce qui rendrait les communications radio impossibles.
L’UIT réserve donc des bandes de fréquences pour chaque type d’application uti-
12
Désignation interna-
Fréquence Exemples d’utilisation
tionale
ELF (extremely low 3 Hz à
Détection de phénomènes naturels
frequency) 30 Hz
SLF (super low fre- 30 Hz à
Communication avec les sous-marins
quency) 300 Hz
ULF (ultra low fre- 300 Hz à
Détection de phénomènes naturels
quency) 3 000 Hz
VLF (very low fre- 3 kHz à Communication avec les sous-marins, im-
quency) 30 kHz plants médicaux, recherches scientifiques...
30 kHz à Radionavigation, radiodiffusion GO, radio-
LF (low frequency)
300 kHz identification
MF (medium fre- 300 kHz à Radio AM, service maritime, appareil de re-
quency) 3 MHz cherche de victimes d’avalanche
Organisations diverses, militaire, radiodif-
3 MHz à
HF (high frequency) fusion, maritime, aéronautique, radioama-
30 MHz
teur, météo, radio de catastrophe...
Radio FM, aéronautique, maritime, radio-
VHF (very high fre- 30 MHz à
amateur, pompiers, réseaux privés, taxis,
quency) 300 MHz
militaire, météo...
UHF (ultra high fre- 300 MHz à Réseaux privés, militaire, GSM, GPS, Wi-
quency) 3 GHz Fi, Télévision
SHF (super high fre- 3 GHz à
Réseaux privés, micro-onde
quency) 30 GHz
EHF (extremely high 30 GHz à Réseaux privés, radars anticollision pour
frequency) 300 GHz automobiles, liaisons vidéo transportables
300 GHz à
Terahertz Applications scientifiques
3 000 GHz
lisant des ondes radio. On peut voir dans le tableau 2.1 quelques exemples de bandes
de fréquences réservées et les utilisations correspondantes. Toutes les technologies de
télécommunications utilisées aujourd’hui (en tête desquelles les technologies GSM,
13
!2
λ
Pr = Pe Ge Gr , (2.2)
4πd
où : Pr : puissance du signal capté par le récepteur ;
Pe : puissance de l’émetteur ;
Gr : gain de l’antenne du récepteur ;
Ge : gain de l’antenne de l’émetteur ;
λ : longueur d’onde du signal ;
d : distance entre l’émetteur et le récepteur.
Modèles théoriques
Pour étudier l’effet des obstacles sur la propagation des ondes, une première ap-
proche consiste à déterminer les différents chemins que peuvent emprunter les ondes
émises par une antenne pour arriver jusqu’au récepteur. Dans le modèle de propaga-
tion dans le vide, le récepteur ne reçoit les transmissions de l’émetteur qu’en ligne
15
directe. En réalité, les ondes radio subissent deux types de déviations par les obs-
tacles : elles peuvent être réfléchies ou diffractées. Il y a alors en général plusieurs
chemins que peuvent emprunter les ondes pour aller de l’émetteur au récepteur. Cela
crée des interférences qui dégradent la réception.
Les différents modèles utilisant une approche analytique considèrent un type d’obs-
tacle et développent une formule donnant la puissance reçue de l’émetteur en fonction
de la géométrie et des caractéristiques des obstacles rencontrés. Par exemple, le mo-
dèle de réflexion sur le sol, présenté dans [Rappaport(2002b)], considère que les ondes
atteignent le récepteur en empruntant deux chemins différents : un chemin en ligne
directe, et un obtenu par réflexion sur le sol.
D’autres modèles comme ceux de Walfisch-Bertoni ou Ikegami, décrits dans [Gra-
natstein(2008)], rendent compte de la diffraction subie par les ondes sur les toits des
bâtiments lorsque l’antenne est située au-dessus des toits et le récepteur plus bas dans
une rue.
L’utilisation de tels modèles peut être intéressante pour effectuer des simulations
si l’on ne recherche pas une trop grande précision et si les environnements restent
simples. C’est le cas en général pour les réseaux de téléphonie mobile. En revanche, si
l’on souhaite réaliser des simulations sur de petites échelles dans des environnements
complexes, comme c’est le cas pour les réseaux Wi-Fi à l’intérieur de bâtiments, on
préférera effectuer des simulations par lancer de rayons. Cette technique consiste à
simuler l’émission d’un grand nombre de rayons depuis la source, se propageant en
ligne droite, et à suivre le chemin de chacun d’eux. On peut ainsi obtenir des résultats
très précis, mais au prix d’un temps de calcul très long.
Modèles empiriques
Ce modèle est valable en milieu urbain. Pour modéliser la propagation des ondes
dans des milieux de densités variées, une autre méthode consiste à utiliser, pour
l’atténuation L de la puissance du signal, une formule du type :
des modèles plus élaborés est donc laissée aux travaux ultérieurs qui souhaiteraient
l’utiliser.
PS
SIR = , (2.6)
PI
ou encore en décibels :
PS
SIRdB = 10 log . (2.7)
PI
Dans le cadre de notre modèle, PS sera la puissance reçue d’une antenne, et PI la
somme des puissances reçues des autres antennes émettant à la même fréquence.
Il est souvent très pratique d’utiliser le décibel comme unité pour les grandeurs
18
que l’on considère. On utilisera alors l’indice dB pour indiquer les fonctions exprimées
en décibels, par exemple Pd B pour la puissance reçue d’une antenne.
Pour rappel, la conversion en décibels s’effectue en prenant le logarithme de la
grandeur considérée, multiplié par 10, par exemple :
P
PdB = 10 log10 . (2.8)
1W
1400 40
SIR(x) 10*log10(SIR(x))
1200 30
1000
10
800
0
600
-10
400
-20
200 -30
0 -40
-20 -15 -10 -5 0 5 10 15 20 -20 -15 -10 -5 0 5 10 15 20
Distance a l’antenne (m) Distance a l’antenne (m)
Figure 2.4 Effet de l’utilisation des décibels sur une courbe de rapport signal-bruit
typique.
Puissance de la source PS
Les interférences perturbant la réception des signaux d’une antenne peuvent pro-
venir de différentes origines. Il y a trois types d’interférences importantes :
– les interférences extérieures au réseau : il s’agit principalement des interférences
d’origine naturelle, comme le bruit provenant du soleil ou des rayons cosmiques.
En première approximation, on peut les considérer constantes dans le temps et
l’espace. Elles apportent donc une constante additive supplémentaire dans les
interférences PI . Cela est équivalent, lorsque l’on travaille en décibels, à intégrer
∗
ce terme dans le seuil SIRdB que l’on fixe alors à une valeur plus élevée. C’est
pourquoi ces interférences ne sont pas intégrées dans le modèle.
– les interférences de canal : il s’agit des ondes émises par les autres antennes
travaillant sur le même canal. La division du spectre en canaux est présentée
de façon détaillée à la section suivante. Pour effectuer le calcul, il suffit de faire
la somme des puissances reçues de toutes les antennes émettant à la même
fréquence.
– les interférences inter-canaux : ce sont les interférences se produisant entre les
signaux d’antennes émettant sur des canaux différents. Elles sont causées par
les imperfections des filtres utilisés par les équipements. Certaines fréquences
proches de celle du canal utilisé peuvent ainsi être mal filtrées et causer des
interférences. En pratique, on fait en sorte que les antennes placées à proximité
les unes des autres utilisent des canaux de fréquences assez éloignées. On divise
pour cela le spectre de fréquences disponibles en un grand nombre de canaux
de largeur plus petite. La contribution de ces interférences à la puissance totale
PI est alors faible en première approximation, et on néglige donc ce type d’in-
terférences dans le modèle. Il faudrait bien sûr en tenir compte dans un modèle
plus précis.
21
Technologie
Caractéristiques GSM cdmaOne NADC
(Europe) (Etats-Unis) (Japon)
Fréquences émission 890-915 MHz 824-849 MHz 800-1500 MHz
Fréquences réception 935-960 MHz 869-894 MHz 800-1500 MHz
Séparation des
200 kHz 1.25 MHz 30 kHz
porteuses
Créneaux temporels
8 64 3
par canal
– les distances di : plus les antennes Ai sont proches de l’antenne A, et plus les
interférences subies en un point (x, y) situé dans le voisinage de A sont élevées.
On a donc intérêt à maximiser la distance entre les antennes utilisant le même
canal.
En conséquence, on voit apparaître deux voies possibles pour maximiser les zones
de couverture des antennes :
– optimiser l’assignation de canaux : il s’agit de choisir adéquatement le canal à
assigner à chaque antenne, afin de maximiser la distance entre antennes appar-
tenant au même canal ;
– augmenter le nombre de groupes de canaux : cela permettrait d’avoir un faible
nombre d’antennes utilisant un même canal. Malheureusement, réduire le nombre
de canaux disponibles pour une antenne conduit à une réduction du nombre
d’utilisateurs pouvant être servis par une antenne, et donc à augmenter le
nombre d’antennes nécessaires pour servir tous les usagers.
seaux, ne tenant pas compte des interférences entre émetteurs. La zone couverte
par un émetteur est simplement la zone où la puissance reçue est supérieure à un
seuil. Des modèles plus fidèles apparaissent ensuite, qui tiennent compte des interfé-
rences engendrées par plusieurs stations émettant sur la même fréquence et utilisent
un critère de seuil sur le rapport signal-bruit pour définir les zones de couverture,
comme [Amaldi et al.(2003)] ou [Yang et al.(2007)]. Enfin, les travaux plus récents
tendent à considérer des modèles plus élaborés, comme [Abdel Khalek et al.(2011)]
qui traite différemment les canaux montant et descendant entre stations de base et
mobiles, prenant en compte la dissymétrie des échanges.
Une fois une modélisation choisie, l’optimisation consiste à trouver un placement
optimal des émetteurs sur un territoire. Dans la plupart des travaux, ce sont des ap-
prochez basées sur des métaheuristiques qui sont utilisées. Ainsi, [Amaldi et al.(2003)]
utilise une recherche tabou pour optimiser le placement, alors que [Cerri et al.(2002)]
choisit plutôt un algorithme génétique. [Yang et al.(2007)] compare quant à lui l’ef-
ficacité de trois algorithmes différents : un algorithme génétique, le recuit simulé, et
un algorithme hybride de recuit simulé évolutionniste. Les métaheuristiques sont un
type d’algorithme très populaire pour le problème de l’optimisation du placement des
stations de base, toujours à l’heure actuelle, car ils permettent d’atteindre assez ra-
pidement des solutions de bonne qualité malgré des problèmes de grande taille, longs
à simuler et présentant des fonctions non lisses.
Des méthodes de recherche directe, également bien adaptées à ce type de pro-
blème d’optimisation, ont aussi été employées. L’idée d’utiliser ce type d’algorithme
remonte à [Wright(1998)], qui ne propose pas d’exemple d’application mais suggère
l’utilisation de l’algorithme de Nelder-Mead ([Nelder et Mead(1965)]) et décrit son
fonctionnement. Parmi les travaux récents qui utilisent des méthodes de recherche di-
recte, on peut citer [Abdel Khalek et al.(2011)] qui sépare le problème de placement
en deux sous-problèmes, l’un continu et l’autre entier, et l’optimise avec un algorithme
de recherche par motifs.
Une autre direction de recherche est utilisée pour le cas des réseaux d’accès en
intérieur, comme les réseaux WiFi par exemple. Pour optimiser le placement des
stations de base dans ce type de réseau, une modélisation par lancer de rayons est le
plus souvent utilisée. Ce type de simulation permet de tenir compte de la géométrie
26
des espaces intérieurs, ce qui est nécessaire pour le placement d’antennes à l’intérieur
de bâtiments. Des systèmes tels que WISE ([Fortune et al.(1995)]) ou POPULAR
([Frühwirth et Brisset(1998)]) utilisent ce type de simulation. Le placement est ensuite
optimisé grâce à l’algorithme de recherche directe de Nelder-Mead pour le premier
exemple, et par programmation par contraintes pour le second.
Il s’agit dans ces exemples de maximiser la taille de la zone de couverture du réseau,
celle-ci étant définie par une puissance de réception minimale. Des environnements
de résolution de problèmes plus récents intègrent des simulations plus précises qui
utilisent un critère sur le rapport signal-bruit. Par exemple, l’environnement S4W
de [Mishra et al.(2007)] permet de choisir entre deux types de simulations différentes,
soit par lancer de rayons, soit par estimation de puissance comme ce qui est réalisé
pour les réseaux de télécommunications. Le module d’optimisation utilise l’algorithme
de recherche directe DIRECT de [Jones et al.(1993)] pour optimiser le placement des
émetteurs.
D’autres voies de modélisation et d’optimisation sont également explorées, comme
par [Vilovic et al.(2007)] qui s’appuie sur un modèle de réseau de neurones et effectue
une optimisation par essaims particulaires.
Une répartition orthogonale est utilisée, ce qui signifie que des stations de base rap-
prochées recevront des fréquences suffisamment éloignées pour diminuer les interfé-
rences inter-canaux, simplifiant l’optimisation mais réduisant l’efficacité spectrale du
réseau. De très nombreux travaux existent exploitant cette répartition et un grand
nombre d’algorithmes différents on été testés. Par exemple [Ruiz et al.(1999)] réalise
l’optimisation grâce à un algorithme de recuit simulé, alors que [Reilly(2009)] utilise
l’algorithme SIMBA, variation de l’optimisation par essaims particulaires.
Une meilleure utilisation du spectre radio peut être obtenue en n’utilisant pas un
schéma d’assignation fixe mais en modifiant l’assignation de fréquences dynamique-
ment en fonction de l’évolution de la répartition de la demande. Le défi principal
de ce type de planification est qu’une optimisation doit s’effectuer en un temps très
court pour que le réseau s’adapte en temps réel. [Lopez-Perez et al.(2009)] développe
un modèle de planification dynamique, et [Lopez-Perez et al.(2008)] présente deux
méthodes d’optimisation pour ce problème, avec un recuit simulé et une recherche
tabou.
Une autre approche, plus expérimentale, est utilisée par [Luna et al.(2007)] : les
solutions sont évaluées en utilisant des données précises d’interférences provenant d’un
réseau GSM réel. Deux algorithmes d’optimisation sont comparés : une optimisation
par colonie de fournis et un algorithme génétique, le premier donnant des résultats
bien meilleurs. [Luna et al.(2008)] poursuit dans la même voie en ajoutant de nouvelles
instances de test et en comparant un plus grand nombre d’algorithmes.
Chapitre 3
Modélisation et simulation
3.2.1 Notations
Soit un réseau de communications composé de p stations de base A1 , A2 , . . . , Ap .
Les canaux sont au nombre de q et sont notés C1 , C2 , . . . , Cq .
Les entrées de la boîte noire sont les coordonnées {(x1 , y1 ), (x2 , y2 ), . . . , (xp , yp )} de
chaque antenne, et les canaux assignés à chacune (c1 , c2 , . . . , cp ) ∈ {C1 , C2 , . . . , Cq }n .
La puissance reçue d’une antenne Ai au point (x, y) ∈ R2 sera notée Pi (x, y). De
même, PjC (x, y) sera la puissance du canal Cj au point (x, y) ∈ R2 , soit la somme des
puissances de toutes les antennes émettant sur ce canal.
K
Pi (x, y) = , i ∈ J1; pK, (x, y) ∈ R2 (3.1)
d2
q
où d = (x − xi )2 + (y − yi )2 est la distance de l’antenne au point (x, y).
Il faut cependant adapter cette formule, puisqu’elle indique que lorsqu’on se rap-
proche de l’antenne, la puissance reçue tend vers l’infini, ce qui est évidemment incor-
rect. Cette formule n’est en réalité valable que dans le champ lointain de l’antenne,
où les phénomènes de diffraction sont négligeables et ne subsiste que le rayonnement.
Comme l’indique [Rappaport(2002a)], la limite entre le champ proche et le champ
lointain se situe à la distance de Fraunhofer dF :
2D2
dF = (3.2)
λ
où D est la plus grande dimension physique de l’antenne, dépendant de sa géométrie
et typiquement de l’ordre du mètre, et λ est la longueur d’onde du rayonnement
électromagnétique émis par l’antenne.
La formule (3.1) peut dès lors être modifiée pour tenir compte de cette limite, en
introduisant une saturation dans la zone d < dF :
K2
si d < dF
Pi (x, y) = dF i ∈ J1; pK, (x, y) ∈ R2 . (3.3)
K2 si d ≥ dF
d
Ou encore en décibels :
10 log K2
si d < dF
d
Pi,dB (x, y) = F i ∈ J1; pK, (x, y) ∈ R2 . (3.4)
10 log K2
si d ≥ dF
d
Une illustration de ces formules est donnée par les figures 3.2 et 3.3.
Afin d’éviter les problèmes liés à la non validité du modèle dans le champ proche,
on fera en sorte lors de l’optimisation que deux antennes ne puissent pas se situer
dans le champ proche l’une de l’autre, c’est-à-dire que l’on empêchera qu’elles soient
à une distance trop proche.
Ce modèle pourrait être affiné, si nécessaire, en utilisant une des modélisations
présentées dans le chapitre précédent. Par exemple, on pourrait prendre en compte
les milieux urbains et la densité des obstacles que doivent traverser les ondes. Une
32
P(x,y)
0.4
0.35 0.4
0.3 0.35
0.25 0.3
0.25
0.2 0.2
0.15 0.15
0.1 0.1
0.05 0.05
0 0
40
102030
-40 -30 -20
-10 -100
-20
0 10 20 30
40 -40-30
0 10*log10(P(x,y))
-5 0
-10 -5
-10
-15
-15
-20 -20
-25 -25
203040
10
-40 -30 -20
-10 -100
-20
0 10 20 30
40 -40-30
Figure 3.3 Puissance reçue d’une antenne isotrope dans le vide en décibels
33
pratique courante dans les simulations consiste à utiliser un exposant différent pour
la distance à l’antenne selon la densité du milieu :
Kα
si d < dF
dF
Pi (x, y) = (3.5)
Kα
si d ≥ dF
d
avec α ∈ [2; 4], α = 2 pour les zones dégagées jusqu’à α = 4 pour les zones urbaines
denses.
Attention cependant à l’apparente simplicité de ce modèle de propagation. La
simulation est tout aussi simple que le modèle de propagation dans le vide si l’en-
semble du territoire est d’un seul type et donc si la valeur de α est fixe sur tout le
terrain. Mais dès que la densité est variable et que les rayons émis par une station de
base doivent traverser des zones avec des valeurs de α variées, la difficulté de simula-
tion augmente considérablement et il devient nécessaire d’utiliser des simulations par
lancer de rayons.
PjC (x, y) =
X
Pi (x, y). (3.6)
{i∈J1;pK: Ai ∈Cj }
Les interférences Ii subies par l’antenne Ai peuvent alors s’écrire comme la diffé-
34
∗
SIRdB,i (x, y) ≥ SIRdB . (3.9)
∗
La valeur du seuil SIRdB est à déterminer en fonction des caractéristiques du
réseau et de l’équipement utilisé. Elle est typiquement de l’ordre de 10 dB, ce qui
signifie que l’on reçoit correctement le signal de Ai si sa puissance est environ 10 fois
supérieure à celle des interférences.
n o
∗
Zi = (x, y) ∈ R2 : SIRdB,i (x, y) ≥ SIRdB , i ∈ J1; pK. (3.10)
p
[
Z= Zi . (3.11)
i=1
Zie = {(x, y) ∈ Zi : ∀j ∈ J1; pK, SIRdB,i (x, y) ≥ SIRdB,j (x, y)} . (3.12)
Le nombre total d’usagers à servir par l’ensemble du réseau est alors simplement
36
3.2.8 Sorties
Une fois les calculs précédents effectués, on dispose d’assez d’informations pour
calculer toutes les grandeurs pertinentes qui apportent des connaissances sur le réseau.
Le nombre total d’usagers servis par le réseau est la somme du nombre d’usagers
servis par chaque antenne. On peut aussi l’obtenir à partir de la zone de couverture
totale du réseau : p ZZ
X
N = Ni = D(x, y) dx dy. (3.17)
i=1 (x,y)∈ZR
1 Pp
nombre d’usagers par antenne, qu’il faudra alors minimiser. Notons N̄ = p i=1 Ni
la moyenne du nombre d’usagers par antenne. La variance est alors :
p
1X
V= (Ni − N̄ )2 . (3.18)
p i=1
La charge maximale des antennes est le nombre d’utilisateurs servis par l’antenne
la plus chargée :
Nmax = max Ni . (3.19)
i∈J1,pK
Cette sortie peut aussi servir à l’équilibrage du nombre d’usagers par antenne,
au même titre que la variance. Cependant, elle apporte moins d’informations que
la variance, puisqu’elle ne considère la charge que d’une seule antenne, alors que
la variance apporte une information tenant compte de toutes les antennes, ce qui
est préférable pour l’optimisation. L’intérêt de la charge maximale est alors plutôt
d’apporter une information plus claire et compréhensible.
3.3 Implémentation
Le modèle de propagation des ondes dans le vide et les calculs qui viennent d’être
présentés ont été implémentés sous forme de programme informatique en C++ pour
l’exécution de simulations. L’ensemble des calculs présentés dans la section précédente
doit être effectué au sein d’une boîte noire. Il convient de les implémenter de façon
réfléchie afin d’optimiser le temps de calcul.
puissance de réception des antennes. Chaque élément (u, v) d’une matrice correspond
à la valeur prise par une grandeur physique au point (x, y) = (δ u, δ v).
de la puissance d’un seul canal, alors que l’échange des canaux entre deux antennes
nécessite la mise à jour de deux canaux.
P
Chaque canal Cj possède une matrice MC,j , de taille n1 ×n2 , contenant la puissance
totale du canal en chaque point du treillis. Pour chaque canal à mettre à jour, il
faut recalculer la puissance de canal sur l’ensemble du terrain, comme décrit par
l’algorithme 1.
Le calcul préalable des puissances de canal permet ensuite de faire le calcul des
rapports signal-bruit plus rapidement. On met maintenant à jour la matrice MZ qui
indique, en chaque point du treillis, si ce point est couvert par le réseau et si oui, par
quelle antenne. Le calcul est décrit dans l’algorithme 2.
À la fin de ce calcul, chaque élément de MZ indique, pour chaque point du treillis,
s’il est desservi par une antenne, auquel cas MZ (u, v) est le numéro de l’antenne en
question. Si au contraire le point n’est couvert par aucune antenne, on a MZ (u, v) =
−1. La matrice MZ contient donc les zones de couverture effective de chaque antenne,
40
3.4.2 Intérêt
L’idée d’utiliser les diagrammes de Voronoï vient de l’observation des cartes des
zones de couverture obtenues lors de simulations avec le modèle complet. On constate
en effet rapidement que, de façon tout à fait visuelle, elles ressemblent à des dia-
grammes de Voronoï où les germes seraient aux mêmes coordonnées que les antennes,
comme illustré par l’exemple de la figure 3.4. Les diagrammes de Voronoï pourraient
donc permettre d’obtenir une approximation dez zones de couverture des antennes.
Chapitre 4
Recherche directe
L’optimisation d’un système est bien souvent une tâche difficile et coûteuse en
termes de temps de calcul, en particulier lorsque les problèmes sont complexes ou de
grande taille. De nombreuses méthodes d’optimisation existent qui ciblent des classes
de problèmes particulières et parviennent à en résoudre de grandes instances en un
temps raisonnable. Mais ces méthodes reposent sur la connaissance du modèle ma-
thématique décrivant le problème et nécessitent que ce dernier possède une forme ou
des caractéristiques particulières. Par exemple, la programmation linéaire ne permet
de traiter que des problèmes dont la fonction objectif ainsi que les contraintes sont li-
néaires. La plupart des méthodes d’optimisation non linéaire nécessitent quant à elles
que toutes les fonctions apparaissant dans le problème possèdent un certain degré de
régularité.
Pourtant, il existe un grand nombre de problèmes ne possédant pas ces propriétés,
ou pour lesquels on ne peut ou ne souhaite pas obtenir toutes ces informations. Dans
ce cas, on ne peut pas utiliser toutes les techniques développées dans ce cadre. C’est
ce type de problèmes que l’optimisation par recherche directe se propose de traiter.
simplement continuité pour les moins contraignantes. Il arrive pourtant souvent dans
les problèmes réels que l’on rencontre des fonctions ne présentant pas ces caractéris-
tiques. En particulier, lors de la modélisation de phénomènes physiques complexes, on
peut facilement avoir à composer avec des fonctions très irrégulières, qui ne sont déri-
vables qu’en peu d’endroits et présentant de nombreuses discontinuités. Un exemple
d’un tel problème est donné par [Audet et al.(2008a)]. D’autre part, même si on a
affaire à des fonctions dont les dérivées peuvent théoriquement être évaluées, il peut
arriver qu’en pratique leur approximation soit beaucoup trop coûteuse pour qu’on
puisse les exploiter.
Deuxièmement, il arrive fréquemment dans l’industrie que l’on n’ait pas accès
au fonctionnement interne du système que l’on souhaite optimiser. Cela arrive par
exemple lorsque le code informatique qui effectue les calculs est trop complexe, ou
inaccessible pour des raisons de confidentialité ou de propriété intellectuelle.
Face à toutes ces difficultés, on n’a pas d’autre choix que de se contenter de tester
la réponse du système à différents paramètres d’entrée, et d’effectuer l’optimisation à
partir de cette seule information. C’est pourquoi on nomme les algorithmes fonction-
nant sur ce modèle des algorithmes de recherche directe, des algorithmes d’optimisa-
tion de boîte noire, ou encore des méthodes sans dérivées. Une bonne introduction à
ce sujet peut être trouvée dans le livre [Conn et al.(2009)].
min f (x)
x∈X
(4.2)
s.c. cj (x) ≤ 0 j ∈ J1, mK.
-
f (x)
x ∈ Rn Fonction objectif
- Boîte noire
Point d’essai cj (x)
-
Fonctions contraintes
autres contraintes. De tels points peuvent être produits par exemple lorsque
l’évaluation de la boîte noire échoue pour une raison quelconque, comme dans
[Audet et al.(2008a)] où l’évaluation échoue 43 % du temps.
amélioration de l’objectif.
Base positive
La notion de base positive est analogue à celle de base de Rn : c’est une fa-
mille génératrice positive minimale de Rn , c’est-à-dire qu’elle engendre Rn par des
combinaisons linéaires positives de ses vecteurs, et qu’aucune sous-famille n’a cette
propriété. Elles ont été étudiées dans [Davis(1954)] et [Audet(2011)]. Une caractéris-
tique intéressante d’une telle famille, primordiale pour l’analyse de convergence, est
qu’il existe au moins un vecteur compris dans tout demi-espace ouvert de Rn .
Treillis
Un treillis est une discétisation régulière de Rn , sur laquelle on construit les points
d’essai pour les évaluer. Il est défini par trois paramètres : sa taille ∆ ∈ R+ , qui définit
la distance entre deux points adjacents du treillis, sa position, imposée par la position
du point courant x ∈ Rn , qui doit se trouver sur le treillis, ainsi qu’un ensemble de
directions D ∈ Rn×p . Il est également très important dans l’analyse de convergence
des algorithmes de recherche par motifs.
Lors de la recherche, sa taille est mise à jour à chaque itération. Lorsque l’évalua-
tion des points générés lors de l’étape de sonde conduit à un succès, donc à une amé-
lioration de la solution, la taille du treillis est conservée ou augmentée. Au contraire,
s’il s’agit d’un échec, la taille du treillis est réduite.
Étape de sonde
L’étape de sonde est aussi appelée sonde locale, car elle consiste en une étape de
recherche locale autour du point courant. C’est lors de cette étape que les directions
de recherche, qui forment une base positive, sont générées, ainsi que les points d’essai
qui sont attachés au treillis. La boîte noire est ensuite évaluée en ces points d’essai.
Si un point avec une meilleure valeur de la fonction objectif est trouvé, l’étape est un
succès, dans le cas contraire c’est un échec. La taille du treillis est alors mise à jour
et l’itération suivante peut avoir lieu.
Ce processus se poursuit jusqu’à atteindre le critère d’arrêt, qui peut être une taille
minimale du treillis, un nombre d’itérations de l’algorithme, un nombre d’évaluations
de la boîte noire ou encore une durée maximale d’exécution.
50
Étape de recherche
A l’étape de sonde peut s’ajouter une étape de recherche, aussi appelée recherche
globale. Une recherche composée uniquement de la sonde locale se retrouve attirée dans
un optimum local. Si l’on veut effectuer une recherche plus large, on peut élaborer
une stratégie de recherche globale qui sera exécutée lors de la phase de recherche.
A chaque itération un certain nombre de points supplémentaires seront également
évalués. Ces points, qui devront toujours être attachés au treillis, sont générés par
une stratégie définie par l’utilisateur, qui devrait tirer profit de sa connaissance du
problème pour identifier des points intéressants à explorer.
En pratique, cette étape se révèle très importante. Même si l’étape de sonde per-
met de se déplacer vers un minimum local avec des preuves de convergence, l’étape
de recherche permet de diversifier la recherche et entraîne généralement une nette
amélioration des solutions par rapport à la seule sonde locale.
est en fait la taille du treillis, qui est divisée par 2 en cas d’échec de l’étape de sonde,
et gardée constante en cas de succès. L’algorithme 3 détaille le fonctionnement de Cs.
Algorithme 3: Algorithme CS
Initialisation :
Compteur d’itérations : k = 0
Point initial : x0
Taille de pas initiale : ∆0 > 0
Sonde locale :
tant que le critère d’arrêt n’est pas atteint faire
Pk = {xk ± ∆k ei : i ∈ J1, nK}
si ∃ y ∈ Pk , f (y) < f (xk ) alors
xk+1 = y
∆k+1 = ∆k
sinon
xk+1 = xk
∆k+1 = ∆2k
fin
k =k+1
fin
constante. Son mécanisme de mise à jour lui permet de se réduire en cas d’échec
de l’étape de sonde et à grandir en cas de succès. Cette caractéristique ne modifie
aucunement l’analyse mathématique par rapport à CS, mais permet généralement
une convergence plus rapide en pratique.
L’algorithme Gps tel que décrit ici est succinctement détaillé dans l’algorithme 4.
Notations
– Sk : l’ensemble de recherche.
Treillis
Ensemble de recherche
Voisinage de sonde
Pk = {xk } ∪ {xk + ∆m
k d : d ∈ Dk } ⊂ Mk , (4.5)
p 0 0
∆m
k kdk ≤ ∆k max {kd k : d ∈ D} . (4.7)
4.3.3 Algorithme
Le fonctionnement de Mads sans contraintes est détaillé dans l’algorithme 5. Le
traitement des contraintes est expliqué dans les sections suivantes.
5. Critère d’arrêt :
Si le critère d’arrêt n’est pas rencontré, poser k = k + 1 et retourner à
l’étape de recherche.
56
∆m
k+1 = τ
wk m
∆k (4.8)
p
Pour tout K ⊂ N de cardinal infini : lim ∆m
k = 0 ⇔ lim ∆k = 0. (4.9)
k∈K k∈K
p p
Une stratégie de mise à jour typique consiste à poser ∆m m
k+1 = 2∆k et ∆k+1 = 4∆k
1 m p 1 p
en cas de succès de l’itération, et ∆m
k+1 = 4 ∆k et ∆k+1 = 2 ∆k en cas d’échec.
La barrière extrême
La barrière progressive
La barrière progressive, définie par [Audet et Dennis, Jr.(2009)], distingue les con-
traintes non relaxables, définies par le domaine X, des contraintes relaxables définies
par les fonctions cj . Elle définit une fonction de violation de contraintes h de la façon
suivante :
m (max(cj (x), 0))2 si x ∈ X,
P
j=1
h(x) = (4.11)
+∞
sinon.
Une fonction f est dite lipschitzienne ou Lipschitz s’il existe λ > 0 tel que f est
λ-lipschitzienne.
f (y + tv) − f (y)
f ◦ (x; v) = lim supy→x .
t
C’est une généralisation du cône tangent, obtenu par des combinaisons linéaires
des gradients des contraintes, lorsque celles-ci sont différentiables.
59
Ce résultat est une généralisation au cas des fonctions simplement Lipschitz des
conditions KKT (Karush-Kuhn-Tucker) pour une fonction strictement différentiable.
On peut en effet obtenir ce second résultat comme un corollaire du premier :
Il est à noter que les résultats énoncés ici nécessitent que l’algorithme génère un
ensemble de directions raffinantes denses dans TΩH (x̂). Il existe différentes stratégies
de génération des directions de sonde permettant de satisfaire cette condition. Parmi
celles-ci on peut citer la stratégie OrthoMads, une instance de l’algorithme Mads
présentée dans [Abramson et al.(2009b)].
60
4.5 Nomad
Nomad est un logiciel développé en C++ implémentant l’algorithme Mads. Le
projet Nomad a été initié par [Abramson et al.(2003)] et développé par [Le Diga-
bel(2011)]. Il permet le développement rapide d’applications d’optimisation de boîte
noire, grâce à l’existence d’un mode console pour les problèmes les plus simples. Pour
les problèmes plus complexes, le mode librairie permet le paramétrage complet de
l’algorithme Mads et l’utilisation de nombreuses fonctionnalités avancées, présentées
ici.
Variables de catégorie
Variables périodiques
Les variables périodiques sont également supportées par Nomad. Elles bénéficient
d’une analyse de convergence dans [Audet et Le Digabel(2011)]. Le gain d’efficacité
qu’elles apportent dans le déroulement de l’algorithme est incontestable lorsqu’il s’agit
par exemple de traiter des variables représentant des angles.
Optimisation biobjectif
Nomad implémente une stratégie de recherche globale dont l’utilisateur peut choi-
sir de se servir pour l’étape de recherche de Mads. Elle permet de diversifier les
zones de recherche et de traiter les problèmes possédant de multiples optima locaux.
Il s’agit d’un algorithme de type VNS, dont le couplage avec Mads est proposé et
décrit dans [Audet et al.(2008b)].
Groupes de variables
Parallélisme
Chapitre 5
Variables de position
Le problème traité dans ce travail est à deux dimensions d’espace, et les antennes
sont placées sur une surface plane. En revanche, le territoire considéré peut être
de forme quelconque. La position des antennes est repérée par leurs coordonnées
Xi = (xi , yi ), i ∈ J1, pK. La région du plan correspondant au territoire autorisé pour
le placement des antennes sera notée T .
Les variables de position sont au nombre de 2p, et sont des variables continues.
Cependant, même si la boîte noire accepte des variables réelles en entrée pour les
positions des antennes, les calculs sont réalisés sur un terrain discrétisé.
63
Chaque antenne émet et reçoit sur un canal (ou un groupe de canaux) donné.
Chaque groupe de canaux Cj , j ∈ J1, qK correspond à des fréquences d’onde por-
teuses différentes. On considère dans le modèle que les interférences entre canaux
sont négligeables, et on n’en tient donc pas compte. En revanche les antennes possé-
dant le même canal interfèrent entre elles, puisqu’elles émettent et reçoivent sur les
mêmes fréquences.
On notera ci le canal de l’antenne Ai . On pourra considérer indifféremment que
ci ∈ {1, 2, . . . , q} ou que ci ∈ {C1 , C2 , . . . , Cq }, selon la notation la plus commode.
D’autre part, il est utile de définir A(Cj ) comme l’ensemble des antennes utilisant
le canal Cj :
A(Cj ) = {Ai : ci = Cj , i ∈ J1, pK} . (5.1)
Appartenance au territoire T
Une autre information utile dans le cadre de l’optimisation et qui n’a pas encore été
mentionnée est la mesure de la violation de la contrainte d’appartenance des antennes
au territoire T . Soit d(Xi , T ) la distance du point Xi , représentant la localisation de
64
(X1 , X2 , . . . , Xp ) - Couverture A
-
Positions des antennes - Nombre d’usagers N
Boîte noire
(c1 , c2 , . . . , cp ) - Variance V
-
Assignation des canaux - Charge maximale Nmax
Variables continues
Les variables continues, qui sont les variables de position, seront traitées avec
l’algorithme Mads, présenté dans le chapitre 4.
Variables combinatoires
Les variables d’assignation de canaux ne peuvent pas être traitées de la même façon
que les variables continues. La principale difficulté, en dehors du fait qu’il s’agisse de
variables discrètes, est qu’il n’existe pas de relation d’ordre entre les différentes valeurs
prises par ces variables.
Il s’agit de variables de catégorie et l’algorithme Mads avec extension aux va-
riables de catégorie pourrait être utilisé. Dans ce cas, le problème traité serait alors
un problème d’optimisation de boîte noire à 3p variables, dont p seraient des variables
de catégorie. Ce problème serait très lourd et coûteux, et n’exploiterait aucunement
le fait que les variables combinatoires ont un rôle particulier.
Pour traiter ces variables, une métaheuristique sera utilisée. Ce type d’algorithme
est destiné au traitement des problèmes combinatoires. Plus précisément, l’algorithme
choisi est une recherche tabou, qui sera décrite plus loin.
Critère d’arrêt
Différents critères d’arrêt peuvent être utilisés. Le plus évident serait sans doute
d’utiliser un critère de qualité de la solution, qui permettrait de continuer l’optimisa-
tion jusqu’à ce que la solution obtenue soit jugée de qualité suffisante. Cependant, il
peut être difficile de définir précisément un objectif de qualité. En effet, avant d’effec-
tuer l’optimisation, on ne peut pas vraiment savoir quelle serait la solution optimale,
et donc à quelle distance on s’en trouve tout au long de la recherche.
Un autre critère simple à utiliser est une borne supérieure sur le nombre d’itéra-
tions de chaque type de recherche. C’est par exemple le type de borne qui sera utilisé
pour la recherche tabou.
Pour la recherche directe avec Mads, une particularité intéressante de l’algorithme
est l’utilisation d’un treillis. Étant donné que le terrain est discrétisé, il est inutile
d’essayer de placer les antennes avec une précision plus importante que la taille du
pas de discrétisation. On peut donc arrêter la recherche lorsque la taille du treillis
66
interne de Mads passe en-dessous de la taille du pas de discrétisation, car on sait que
l’algorithme ne pourra alors plus améliorer la solution.
Le présent travail ne se concentre que sur des zones de type urbain, où la popu-
lation à servir recouvre l’ensemble du territoire. La distinction entre les objectifs de
couverture géographique A et de la population N reste importante dans le cas où il
n’est pas possible d’arriver à une couverture totale. En effet, la densité de population
D, a priori inhomogène, intervient dans le calcul de N , alors que pour A, tous les
points du territoire ont la même importance.
67
traiter ensemble avec une méthode d’optimisation bi-objectif. La méthode utilisée ici
est cependant une méthode d’optimisation mono-objectif, pour deux raisons princi-
pales. Premièrement, l’optimisation bi-objectif est très longue et coûteuse en temps
de calcul, beaucoup plus que l’optimisation mono-objectif. Deuxièmement, elle n’est
pas nécessaire ici, car on ne veut pas calculer un front de Pareto complet, mais obtenir
seulement une solution qui réalise un compromis entre les deux aspects.
Le centre géométrique de R est l’unique point du plan qui minimise la somme des
distances à tous les autres points de R. On a donc l’intuition que ce point serait le
plus adapté pour placer une antenne si l’on voulait couvrir la région R. Cependant, on
voudrait aussi traiter des problèmes avec une densité de population non uniforme sur
le terrain considéré. Le centre géométrique n’est alors plus forcément un bon choix
69
pour placer une antenne, et il faut trouver un placement initial tenant compte de
cette densité.
Introduisons alors la notion de centre de masse, par analogie avec la physique, où
il est aussi appelé centre de gravité. Soit D(x, y) une fonction de densité sur la région
R. Dans l’analogie mécanique, il s’agirait d’une densité de masse. La masse totale m
de la région R est alors : ZZ
m= D(x, y) dx dy. (5.6)
R
Les coordonnées (xm , ym ) du centre de gravité sont données par les équations
suivantes :
RR
x D(x, y) dx dy
R
xm = , (5.7)
RR m
y D(x, y) dx dy
ym = R . (5.8)
m
µαβ
ηαβ = (5.10)
(µ00 )γ
avec
α+β
γ= + 1. (5.11)
2
Les seuls moments qui sont utiles ici sont les moments η11 , η20 et η02 . Le moment η11
quantifie l’éloignement de la population par rapport au centre de masse. Les moments
η02 et η20 renseignent quant à eux sur la direction dans laquelle la population est le
plus étalée. C’est cette information qui est importante : si η02 > η20 , la population
est plus étalée le long de l’axe des x, alors que si η02 < η20 , elle est plus étalée selon
l’axe des y.
Grâce à cette information, on peut réaliser le découpage de la région R en deux
régions R1 et R2 en sachant s’il est plus judicieux de l’effectuer selon l’axe des x ou
des y. Ainsi, si η02 > η20 , R sera coupé en deux par une droite verticale, placée de telle
sorte que les deux parties résultantes contiennent la même population. Si au contraire
η02 < η20 , c’est par une droite horizontale que R sera coupé.
1
θ= atan2(2µ11 , µ20 − µ02 ) (5.12)
2
Cet angle donne la direction de l’axe dans lequel la population est la plus étalée.
Couper R selon une droite perpendiculaire à l’axe principal permettrait d’obtenir une
meilleure répartition.
L’algorithme Mads est utilisé pour réaliser cette deuxième phase de construction
de la solution initiale, avec les paramètres suivants :
– entrées de la boîte noire : les localisations des antennes (X1 , X2 , . . . , Xp ) ;
– fonction objectif : la variance des charges des antennes V ;
– contrainte : la mesure de la violation de la contrainte d’appartenance au terri-
toire dT,2 ;
– critère d’arrêt : arrêter lorsque la taille du treillis atteint la taille de discrétisa-
tion du territoire.
Avec des territoires de formes réalistes, il est rare que la localisation des antennes
viole la contrainte d’appartenance au territoire. Ce problème d’optimisation est donc
principalement le problème non contraint de minimisation de la variance V.
5.5.1 Métaheuristiques
Une métaheuristique est un algorithme d’optimisation destiné à résoudre des pro-
blèmes difficiles, en général de façon non optimale. Les métaheuristiques sont parti-
culièrement adaptées aux problèmes combinatoires, pour lesquels on ne connait pas
de méthode efficace de résolution optimale.
Il existe de nombreux types de métaheuristiques, possédant chacune des caracté-
ristiques différentes et étant adaptées à différents types de problèmes. Dans ce travail,
c’est une recherche tabou qui a été choisie, car il s’agit d’une métaheuristique assez
73
résultante est évaluée. La solution obtenue par application d’un mouvement m à une
solution s sera notée m|s.
La liste tabou, elle aussi, contient maintenant des mouvements et non des solutions
complètes. Elle sera notée Lm pour éviter des confusions. Il faut bien voir les consé-
quences de considérer des mouvements plutôt que des solutions. Il n’est plus possible
de garder dans la liste tabou tous les mouvements effectués précédemment, sinon il
arriverait un moment où plus aucun mouvement ne serait possible et l’algorithme
serait bloqué. D’autre part, un mouvement qui vient d’être effectué doit être interdit
pour ne pas retourner immédiatement à la position précédente, mais il est tout à fait
possible qu’il soit intéressant de l’effectuer à nouveau plus tard dans la recherche, une
fois que l’on se sera éloigné du minimum local auquel on voulait échapper. Il faut
donc limiter la taille de la liste tabou, en n’y gardant les mouvements que pendant
un certain nombre d’itérations.
La nouvelle version de l’algorithme avec l’utilisation de mouvements est décrite
par l’algorithme 9.
pour m ∈ Lm faire
si m doit être retiré de Lm alors
Lm = Lm \{m}
fin
fin
fin
Type de recherche
La recherche utilisée ici est une recherche tabou avec mouvements, plutôt qu’une
recherche avec solutions complètes.
77
Les mouvements utilisés sont des échanges (swaps en Anglais), c’est-à-dire qu’un
mouvement peut être représenté par un couple (i, j), signifiant qu’il faut échanger les
canaux des antennes Ai et Aj . Considérant une solution s = (c1 , c2 , . . . , cp ), l’applica-
tion du mouvement m = (i, j) donne la solution :
Domaine de recherche
Structure de voisinage
Étant donné que les échanges ne modifient pas le nombre d’antennes par canal
et mènent toujours à une solution valide, ils sont tous autorisés. Cependant, il n’est
pas nécessaire de tous les évaluer. Par exemple, il est inutile d’échanger les canaux
78
de deux antennes si elles possèdent le même canal. De même, pour tout (i, j) dans
J1, pK2 , les mouvements (i, j) et (j, i) sont entièrement équivalents, puisqu’ils mènent à
la même solution. Il conviendra donc d’éviter d’inclure plusieurs mouvements menant
à la même solution.
Le voisinage d’une solution s = (c1 , c2 , . . . , cp ) peut être défini de la façon suivante :
n o
Nm (s) = (i, j) ∈ J1, pK2 : i < j, ci 6= cj . (5.13)
n o q n o
2
(i, j) ∈ J1, pK2 : i < j, ci = cj = k .
[
Nm (s) = (i, j) ∈ J1, pK : i < j \ (5.14)
k=1
Comme l’union d’ensembles est incluse dans l’ensemble de gauche, et que tous les
ensembles de l’union sont disjoints, on a :
n o p n o
2
(i, j) ∈ J1, pK2 : i < j, ci = cj = k
X
|Nm (s)| = (i, j) ∈ J1, pK : i < j − .
k=1
(5.15)
p(p−1)
D’une part, |{(i, j) ∈ J1, pK2 : i < j}| = (p − 1) + (p − 2) + · · · + 1 = D’autre 2
.
part, chaque canal Ck possède |A(Ck )| antennes. Le nombre de couples (i, j) que l’on
peut construire avec les entiers de 1 à |A(Ck )|, tels que i < j, est égal à :
|A(Ck )|(|A(Ck )| − 1)
(|A(Ck )| − 1) + (|A(Ck )| − 2) + · · · + 1 = .
2
On obtient donc :
q
p(p − 1) X |A(Ck )|(|A(Ck )| − 1)
|Nm (s)| = − . (5.16)
2 k=1 2
Lorsque n est un multiple de p, ce qui correspond au cas étudié, tous les canaux
ont le même nombre d’antennes |A(Ck )| = np . Le nombre de mouvements dans le
voisinage est alors : !
n2 1
|Nm (s)| = 1− . (5.17)
2 p
79
La taille du voisinage peut devenir très importante pour les problèmes de grande
taille. Dans ce cas, l’évaluation complète du voisinage à chaque itération est trop
longue en temps de calcul. Le voisinage n’est donc pas entièrement généré, et seule une
partie de tous les mouvements possibles est évaluée. Il a été choisi de ne générer que
20 % du voisinage complet, car il a été observé sur plusieurs essais que cette proportion
permet de réduire le temps de calcul de façon importante tout en conservant de bons
résultats.
Critère d’arrêt
Le critère d’arrêt utilisé est une limite sur le nombre d’itérations sans amélioration.
Un paramètre k est fixé au début de la recherche, qui se poursuit tant que k itérations
successives sans amélioration de la valeur de l’objectif n’ont pas été réalisées. De cette
façon, la recherche parvient à sortir des minima locaux dont il est facile de s’échapper,
mais lorsqu’elle rencontre un minimum difficile à améliorer, ce mécanisme évite d’y
passer trop de temps en stoppant la recherche en cours et en passant à l’étape suivante
de l’optimisation.
Quelques tests ont permis de déterminer de façon empirique qu’une valeur de
k = 15 permettait d’obtenir des résultats satisfaisants.
Couverture du réseau
Équilibrage de la charge
Les deux cas distingués dans cette fonction objectif correspondent aux situations
suivantes :
– N̂nc > 0 : la recherche précédente n’est par parvenue à atteindre une couverture
totale. Cette deuxième recherche est susceptible d’améliorer à la fois l’équili-
brage de la charge et la couverture ;
– N̂nc = 0 : une couverture totale est atteinte. Il n’est plus nécessaire d’améliorer
la couverture, puisqu’elle est maximale, mais il faut empêcher qu’elle soit trop
dégradée.
81
5.7.2 Contraintes
Les contraintes définies pour cette partie de l’optimisation sont au nombre de
trois, gérées avec les mécanismes de la barrière extrême ou progressive :
– la contrainte de non-superposition des antennes, gérée par la barrière extrême,
interdit à deux antennes de se trouver plus proches l’une de l’autre que la
discrétisation du territoire ;
– la contrainte d’appartenance au territoire dT,2 , gérée par la barrière progressive,
mesure la violation de la contrainte d’appartenance au territoire. Sa gestion par
la barrière progressive peut permettre à la recherche de faire sortir temporaire-
ment des antennes du terrain pour aller vers de meilleures régions de l’espace
de recherche ;
– la population non couverte Nnc , gérée par la barrière progressive. Grâce à l’utili-
sation de la barrière progressive avec cette contrainte, l’algorithme Mads essaye
de minimiser la population non couverte si elle est non nulle. Si toute la popu-
lation est desservie, l’objectif n’est plus violé et la recherche se concentre sur
82
L’algorithme Mads est utilisé ici sans stratégie de recherche globale, sauf la re-
cherche spéculative, activée par défaut, qui consiste à explorer plus loin dans la di-
rection d’un succès. Toutefois, les recherches tabou utilisées pour l’optimisation de
l’assignation de canaux constituent un mécanisme de diversification qui peut être vu
comme faisant office d’étape de recherche pour Mads.
Groupes de variables
Aucune stratégie de groupement de variables n’est mise en place dans cette re-
cherche. Il pourrait être intéressant d’essayer de former des groupes de variables,
d’autant plus que la structure du problème peut suggérer des stratégies intéressantes.
D’une part, la position de chaque antenne est représentée par deux variables de
position xi et yi , qui pourraient être groupées ensemble. D’autre part, les groupes
d’antennes appartenant à un même canal peuvent aussi constituer une stratégie de
groupement intéressante. Il faudrait en revanche bien gérer l’évolution des groupes
au cours de la recherche afin de conserver les propriétés de convergence de Mads,
comme expliqué dans [Garnier(2010)].
Taille de treillis
Recherche :
Optimiser l’assignation pour la couverture pendant N1 itérations
si l’assignation de canaux n’apporte aucune amélioration pour la
deuxième fois consécutive alors
Aller à la phase de terminaison
sinon
Recommencer l’étape de recherche
fin
Optimiser l’assignation pour l’équilibrage pendant N2 itérations
Optimiser la localisation des antennes pendant N3 itérations
Terminaison :
Optimiser la localisation des antennes jusqu’à rencontrer le critère d’arrêt
instances de test. Ces critères d’arrêt pourraient sans doute être améliorés, notamment
grâce à l’utilisation de critères dynamiques plutôt que statiques.
Phase de recherche
Phase de terminaison
Chapitre 6
Résultats
– l’île de Montréal M tl (figure 6.1d), possédant une forme assez régulière ainsi
que des non-convexités.
Sur les cartes, une valeur de pixel de 1 (pixels clairs) signifie qu’il fait partie du
terrain T , alors qu’une valeur de 0 (pixels noirs) signifie qu’il en est exclu.
(a) Square U : Densité uniforme. (b) Square C : Une zone de concentration centrale.
(c) Square E : Une zone de concentration excentrée. (d) Square B : Deux zones de concentration.
(a) Circle U : Densité uniforme. (b) Circle C : Une zone de concentration centrale.
(c) Circle E : Une zone de concentration excentrée. (d) Circle B : Deux zones de concentration.
(a) Banana U : Densité uniforme. (b) Banana C : Une zone de concentration centrale.
(c) Banana E : Une zone de concentration excentrée. (d) Banana B : Deux zones de concentration.
(c) Après la première recherche tabu. (d) Après la première recherche Mads.
(c) Après la première recherche tabu. (d) Après la première recherche Mads.
(c) Après la première recherche tabu. (d) Après la première recherche Mads.
(c) Après la première recherche tabu. (d) Après la première recherche Mads.
U
Figure 6.10 Profil d’évolution de l’instance Square10,20 .
C
Figure 6.11 Profil d’évolution de l’instance Circle10,20 .
99
E
Figure 6.12 Profil d’évolution de l’instance Banana10,20 .
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 64 0.45 4264 39
12 2.1 19 10188 110
4
16 0.25 33 15039 162
20 0.28 43 38064 483
14 0.0013 0 6180 239
21 2.2 1.7 22592 240
7
28 0.046 13 48667 388
35 0.091 19 138254 1332
20 0.0027 0 10237 425
Square U,V 30 0.031 0 44293 349
10
40 0.84 0.41 132378 1447
50 0.17 5.2 238936 2777
30 0.0018 0 23294 180
45 0.00072 0 52460 505
15
60 0.0011 0 70654 768
75 0.06 0.02 368696 5325
40 0.0015 0 26059 234
60 0.00054 0 86840 999
20
80 0.00054 0 154288 2098
100 0.0006 0 283748 4606
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 24 0 4183 110
12 15 10 7927 123
4
16 15 14 25534 380
20 4.5 28 43453 697
14 0.49 0 7600 331
21 5.2 0.0057 31182 405
7
28 1.4 3.9 65750 480
35 0.35 13 105843 839
20 0.058 0 13774 598
M tl V 30 1.4 0.011 30319 232
10
40 1.1 0.17 106776 880
50 0.5 1.4 267865 3438
30 0.006 0 18390 187
45 0.0032 0 45309 581
15
60 0.042 0 225778 3556
75 0.28 0 510816 9269
40 0.0043 0 42395 487
60 0.0033 0 65511 954
20
80 0.054 0 299633 5633
100 0.17 0 1421581 30582
C C
Les instances Circle10,20 et Circle10,30 , avec 2 et 3 antennes par canal, permettent
C C
d’atteindre une couverture totale, alors que les instances Circle10,40 et Circle10,50 , avec
4 et 5 antennes par canal, ne le permettent pas. Le fait qu’il soit plus difficile de couvrir
la totalité du territoire lorsque le nombre d’antennes augmente peut sembler contre-
intuitif. En réalité, lorsqu’on ajoute des antennes, les interférences entre antennes
d’un même canal augmentent rapidement, réduisant la zone de couverture de chaque
antenne. C’est ce phénomène d’augmentation des interférences qui est prépondérant
lors de l’ajout d’antennes.
Pour un nombre de canaux donné, il existe donc un nombre maximal d’antennes
par canal permettant d’obtenir une couverture complète. Ce comportement est bien
connu dans le domaine des télécommunications. Pour pouvoir augmenter le nombre
d’antennes du réseau, il faut alors également ajouter des canaux. Ce résultat est par
exemple décrit dans [Rappaport(2002a)].
le nombre d’usagers non servis a peu d’influence. En effet, il chute très rapidement
dès le début de l’optimisation, atteignant une valeur nulle. La recherche se concentre
alors sur la seule optimisation de la variance, et on observe alors sa décroissance,
rapide dans la figure 6.14a, plus lente dans la figure 6.14b. Cette différence de vitesse
s’explique par la différence de difficulté à atteindre une couverture complète entre les
instances considérées.
Pour les instances comportant peu d’antennes par canal, lors de l’optimisation
de la localisation avec l’algorithme Mads, les antennes possèdent une grande liberté
de mouvement et peuvent être facilement déplacées sans pour autant dégrader la
couverture, ce qui permet aux recherches d’emprunter de meilleures directions. On
observe alors une décroissance très rapide de la variance, d’allure exponentielle, et
l’optimisation pourrait dans ce cas être arrêtée assez vite selon la qualité de la solution
recherchée.
Au contraire, pour les instances ayant un grand nombre d’antennes par canal, il est
plus difficile d’atteindre une couverture complète. Une fois qu’on l’a obtenue, de petits
changements de position des antennes peuvent la dégrader considérablement. Les
recherches subséquentes sont donc plus contraintes et progressent moins rapidement,
d’où l’observation d’une décroissance plus lente, d’allure plutôt linéaire, ne permettant
pas d’arrêter l’optimisation trop tôt.
105
B
(a) Square10,50 .
B
(b) Banana10,20 .
Figure 6.14 Deux profils d’évolution avec des longueurs relatives de recherche Voronoï
initiale différentes.
106
C
(a) Circle10,20 : deux antennes par canal.
107
C
(b) Circle10,30 : trois antennes par canal.
C
(c) Circle10,40 : quatre antennes par canal.
108
C
(d) Circle10,50 : cinq antennes par canal.
C
Figure 6.13 Effet de l’augmentation du nombre d’antennes sur l’instance Circle10 .
109
U
(a) Circle15,30 .
U
(b) Circle15,60 .
(a) M tl7,35 .
E
(b) Banana7,35 .
Figure 6.15 Deux instances ne permettant pas d’obtenir une couverture totale.
112
Finalement, entre ces deux cas se trouvent un grand nombre d’instances pour
lesquelles une couverture totale est obtenue, mais seulement après un certain nombre
d’itérations. Un exemple d’une telle instance est donné par la figure 6.16. Deux phases
apparaissent dans l’optimisation. Dans un premier temps, la couverture du réseau est
optimisée, et la variance se dégrade rapidement, jusqu’à ce que la recherche atteigne
une couverture complète. Dans un second temps, l’optimisation peut se concentrer
sur l’optimisation de la variance du nombre d’usagers, qui est alors progressivement
améliorée.
C
Figure 6.16 Exemple de l’instance Banana15,60 , pour laquelle la couverture complète
n’est obtenue qu’après un temps long.
La recherche tabou pour la minimisation du nombre d’usagers non servis est in-
diquée sur les profils d’évolution par les rayures obliques montantes. Son rôle n’est
intéressant que lorsqu’une solution réalisant une couverture complète n’a pas encore
été trouvée, car dans le cas contraire on ne peut pas améliorer la fonction objectif et
la recherche n’est tout simplement pas exécutée. On peut s’appuyer sur la figure 6.15
pour faire des observations. On voit que dans les premiers temps de l’optimisation,
les recherches tabou pour l’amélioration de la couverture font chuter très rapidement
le nombre d’usagers non servis, tout en dégradant la variance du nombre d’usagers
par antenne. C’est bien le comportement attendu, puisque l’assignation de canaux
initiale n’est pas du tout optimisée. Mais plus on avance dans l’optimisation, et plus
les recherches tabou suivantes ont un effet faible, voire nul. On pouvait également
s’y attendre, car il arrive un point de l’optimisation où l’assignation de fréquences
est presque optimale par rapport à la localisation des antennes. Il est donc difficile
d’améliorer la couverture de cette façon, et c’est pourquoi les dernières recherches ta-
bou sont courtes, car elles apportent une petite amélioration puis s’arrêtent au bout
de 15 itérations sans succès.
Il semble donc que beaucoup de temps soit perdu dans les dernières étapes de
l’optimisation pour certaines instances comme celles de la figure 6.15, en raison d’une
trop rapide alternance entre les recherches tabou et Mads. Il pourrait donc être
intéressant d’essayer de détecter que l’on se trouve dans cette phase et d’allonger la
durée des recherches Mads pour l’optimisation de la localisation entre deux étapes
de recherche tabou.
Ensuite, la recherche tabou pour l’optimisation de l’équilibrage du nombre d’usa-
gers par antenne, qui est indiquée par les rayures obliques descendantes, a un compor-
tement très différent de la précédente. Comme on peut le voir sur la figure 6.16, elle
s’attache surtout à améliorer la variance du nombre d’usagers par antenne, sans trop
dégrader la couverture. Cela correspond tout à fait à la fonction objectif utilisée par
cette recherche, qui valorise l’amélioration de l’équilibrage et pénalise fortement la
dégradation de la couverture. Cela permet de compenser en partie la dégradation de
la variance induite par le premier type de recherche tabou lors de la recherche d’une
couverture complète, mais aussi d’essayer d’améliorer la variance si la couverture est
déjà complète. Comme précédemment, on constate que cette recherche peut avoir un
effet très bénéfique en début d’optimisation, mais qu’elle peine à améliorer la solu-
tion dans les étapes plus avancées. La voie d’amélioration à privilégier est la même :
114
il faudrait gérer dynamiquement la durée des recherches Mads entre les recherches
tabou.
Enfin, les recherches Mads pour l’optimisation de la localisation des antennes
permettent d’améliorer la solution tout au long de l’optimisation. Comme pour les
recherches tabou, les recherches Mads entraînent une très rapide amélioration de la
solution en début de recherche, puis la vitesse d’amélioration se réduit peu à peu.
On constate également que lorsque la couverture n’est pas complète, la recherche
optimise en priorité la couverture au détriment de la variance. Cela est dû au fait que
la couverture est gérée au sein de l’algorithme comme une contrainte avec barrière
progressive, ce qui revient à résoudre un problème non contraint où la couverture
compterait comme une pénalité dont la valeur est le carré du nombre d’utilisateurs
non servis. Le poids de cette pénalité est alors plus important que celui de la variance.
utilisant cette carte de terrain. On remarque que les cartes de terrain a priori les plus
régulières donnent en fait les moins bons résultats, alors que les meilleurs chiffres
sont obtenus pour les instances les plus irrégulières, aussi bien en termes de qualité
de la solution qu’en termes de temps d’exécution. Ce résultat peut sembler étonnant
à première vue, mais peut s’expliquer par le fait que les instances les plus régulières
présentent en réalité des effets de conditions aux limites importants. Par exemple, le
terrain Square, de forme carrée, possède quatre coins qui sont difficiles à couvrir, car
il faut placer des antennes assez près des limites du terrain tout en veillant à ne pas
perdre toute leur zone de couverture en dehors du terrain.
Pour ce qui est du type de carte de densité, les résultats agrégés sont présentés
dans le tableau 6.5. On constate cette fois-ci que les instance les plus faciles à traiter en
termes de temps de calcul sont celles présentant une densité de population uniforme,
ou en tous cas assez bien répartie, comme c’est le cas pour les densités U , B et
celle du terrain de Montréal. Au contraire, plus la répartition de la population est
déséquilibrée et dissymétrique et plus le temps de calcul augmente. Les valeurs des
fonctions objectif suivent également cette tendance, les moins bon scores étant réalisés
avec les densités C et E, qui sont les plus déséquilibrées.
Chapitre 7
Conclusion
La téléphonie mobile et les réseaux sans fil représentent aujourd’hui un enjeu éco-
nomique considérable. Ils constituent également un défi technique important, tant la
croissance de la demande est forte et les solutions technologiques développées sont
complexes. Le travail réalisé ici avait pour objectif initial d’évaluer la possibilité d’uti-
liser de nouvelles techniques d’optimisation pour l’amélioration de réseaux mobiles.
C’est ce qui a été réalisé tout au long de ce travail de maîtrise, qui se veut donc une ou-
verture vers le développement de nouvelles méthodes de conception et d’optimisation
de réseaux de téléphonie mobile.
clair que de gros progrès pourraient être apportés par l’optimisation des paramètres
algorithmiques, aussi bien en termes de qualité des résultats que de performances et
temps de résolution.
Références
Annexe A
Tableaux de résultats
Les tableaux ci-dessous présentent l’ensemble des résultats finaux pour toutes les
cartes de terrain et de densité et tous les nombres de canaux et d’antennes. Pour
chaque instance, les données présentées sont les valeurs des deux fonctions objectif
principales en pourcentage de la population totale, la variance du nombre d’utilisa-
teurs par antenne V % et le nombre d’usagers non servis Nnc% , le nombre d’évaluations
de boîte noire réalisées, ainsi que le temps d’exécution de l’optimisation.
Note sur les temps d’exécution : les tests ont été réalisés sur deux ordinateurs
possédant les mêmes caractéristiques : un processeur Intel i7 à 6 cœurs cadencés à
3.3 GHz avec 12 GB de mémoire, tournant sous OpenSUSE 10.4. Bien que les deux
ordinateurs possédaient des configurations identiques, on a pu constater une certaine
différence entre les temps d’exécution moyens sur les deux machines. Sur la première
machine, la plus rapide, ont été effectués les tests pour toutes les instances de terrain
avec les densités U et C, alors que les densités E et B, ainsi que le terrain M tl, ont
été testés sur la deuxième machine, un peu plus lente. Ceci explique la différence
moyenne de temps d’exécution qui peut être observée entre les instances.
132
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 64 0.45 4272 37
12 2.3 19 7184 89
4
16 0.15 32 12703 134
20 0.26 41 50347 647
14 0.0013 0 6681 218
21 3.3 0.27 30833 380
7
28 0.13 11 74114 589
35 0.16 18 163870 1599
20 0.0018 0 17858 530
Square U 30 0.099 0 69147 527
10
40 0.92 0.44 147192 1473
50 0.35 4.8 266844 3197
30 0.0017 0 26334 209
45 0.00098 0 77450 784
15
60 0.0018 0 155050 1847
75 0.098 0 435761 6652
40 0.0012 0 55736 705
60 0.00068 0 99200 1299
20
80 0.00062 0 359884 5827
100 0.00064 0 559524 10388
133
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 1.2e+02 0.27 5254 49
12 35 24 12748 215
4
16 5 44 27622 403
20 2.2 53 46257 898
14 4.4 0 9334 296
21 17 0.49 39919 527
7
28 2.2 15 67380 572
35 1.1 26 149555 1432
20 0.52 0 24318 765
Square C 30 4.7 0 63131 582
10
40 2.2 0.68 181053 1911
50 0.42 7.9 314360 3993
30 0.015 0 31516 334
45 0.12 0 116329 1350
15
60 0.34 0.0084 314744 4372
75 0.52 0.011 719546 12466
40 0.0011 0 55958 563
60 0.0016 0 140666 1943
20
80 0.027 0 483780 6564
100 0.069 0 992199 13040
134
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 1.5e+02 0.034 5416 57
12 1.1e+02 9.7 11401 188
4
16 13 34 24157 407
20 9.4 42 42109 691
14 17 0 18253 620
21 17 1.5 51996 724
7
28 6.5 10 94988 821
35 3.3 19 196075 1934
20 0.44 0 21567 685
Square E 30 7.8 0 74561 706
10
40 5.9 1 176872 1887
50 2.2 4.7 371763 4452
30 0.25 0 39233 345
45 0.64 0 177353 1981
15
60 1 0 444819 5945
75 0.57 0.36 809432 12893
40 0.0073 0 64851 720
60 0.049 0 359420 4893
20
80 0.2 0 988855 16491
100 0.21 0 1664465 25681
135
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 73 0.28 5562 57
12 13 18 10192 155
4
16 12 29 29670 430
20 2.7 41 47973 846
14 4.5 0 12768 341
21 9.4 1.5 34909 528
7
28 3.7 7.6 74263 617
35 0.81 17 154560 1455
20 0.059 0 21457 644
Square B 30 2.1 0 60680 512
10
40 2.3 0.95 180575 1823
50 1.2 4.4 402621 4809
30 0.0019 0 37607 318
45 0.28 0 147824 1594
15
60 0.78 0 355461 4715
75 0.33 0.14 917237 14550
40 0.0024 0 66174 693
60 0.008 0 225369 2967
20
80 0.066 0 581080 9612
100 0.082 0 1190929 22763
136
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 29 0.064 7274 82
12 0.85 23 8182 127
4
16 1.3 35 16959 338
20 0.056 43 47169 806
14 0.06 0 11651 445
21 1.4 1.1 37291 533
7
28 0.084 12 93016 741
35 0.034 21 159445 1443
20 0.0015 0 14318 728
Circle U 30 0.011 0 62801 486
10
40 0.22 0.85 149967 1427
50 0.022 6.3 311926 3686
30 0.0027 0 30784 242
45 0.00089 0 79794 830
15
60 0.0062 0 176148 2112
75 0.038 0.026 556088 9003
40 0.0011 0 53675 532
60 0.00081 0 95294 1300
20
80 0.00052 0 264631 4480
100 0.0012 0 402030 8108
137
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 99 0.76 7292 96
12 38 23 12906 399
4
16 3.2 49 22991 685
20 1.5 56 61190 1327
14 6.3 0 12282 463
21 8.7 1.6 39656 950
7
28 2.1 18 76248 641
35 0.48 31 167095 1559
20 0.15 0 30016 1207
Circle C 30 2.6 0 64250 584
10
40 1.2 1.2 200621 2086
50 0.28 10 317559 3953
30 0.0084 0 40562 325
45 0.031 0 127694 1593
15
60 0.4 0.0061 281920 3911
75 0.34 0.11 629111 10449
40 0.0025 0 63161 858
60 0.0014 0 170326 2440
20
80 0.025 0 596931 8055
100 0.079 0.0046 921258 12606
138
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 1.2e+02 1.5 7885 104
12 95 10 12924 257
4
16 42 23 38072 624
20 6.3 45 66880 1490
14 20 0 14832 491
21 21 1 48393 755
7
28 8.3 9.4 110098 934
35 2.5 21 146127 1295
20 3.4 0 36966 1797
Circle E 30 9.7 0 64865 578
10
40 5.9 1.1 213550 2315
50 2.7 4.7 406760 4910
30 0.42 0 66063 571
45 1.4 0 202090 2204
15
60 2.1 0.011 401840 5820
75 1.2 0.066 898047 14251
40 0.037 0 83059 829
60 0.23 0 431491 5621
20
80 0.38 0 881846 14648
100 0.34 0 1751993 27008
139
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 51 1.5 3839 42
12 18 17 11436 196
4
16 14 28 19623 457
20 7.1 40 55483 984
14 3.4 0 13098 532
21 17 0.58 38582 715
7
28 4.9 7.1 79692 628
35 1.9 16 146145 1403
20 0.89 0 25029 1054
Circle B 30 4.2 0 64942 506
10
40 3.3 0.99 173064 1659
50 1.5 4.1 406465 4879
30 0.025 0 53429 450
45 0.48 0 155311 1713
15
60 0.88 0 304814 4000
75 0.86 0.078 788180 12353
40 0.0032 0 72347 737
60 0.13 0 345374 4590
20
80 0.17 0 648747 10519
100 0.18 0 1427665 27043
140
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 0.021 0 4986 122
12 8.1 5.4 12549 236
4
16 2 16 18350 284
20 0.6 30 52135 821
14 0.0021 0 9460 402
21 0.6 0 24714 986
7
28 0.92 0.8 47797 384
35 0.62 4.9 97115 887
20 0.0035 0 11498 468
Banana U 30 0.0016 0 27472 216
10
40 0.046 0 83706 815
50 0.91 0.051 254433 2939
30 0.0026 0 27095 210
45 0.0011 0 66806 680
15
60 0.0027 0 114686 1460
75 0.002 0 222992 3378
40 0.0062 0 54053 546
60 0.0015 0 117509 1564
20
80 0.00085 0 159743 2798
100 0.00092 0 285133 5966
141
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 63 0 7693 157
12 1.1e+02 4.1 12591 267
4
16 81 10 33566 645
20 3.9 40 74298 1387
14 1.9 0 13010 537
21 19 0.0066 48010 860
7
28 6.5 2.2 111913 896
35 2.5 11 159140 1679
20 0.01 0 22096 1110
Banana C 30 1.2 0 69451 599
10
40 2.4 0.47 192967 2124
50 0.5 4.3 306197 3976
30 0.0028 0 27790 241
45 0.12 0 127431 1430
15
60 0.22 0 279559 4268
75 0.36 0.0022 588389 8678
40 0.0029 0 68034 540
60 0.022 0 183543 1748
20
80 0.031 0 476698 5669
100 0.014 0 1399320 18852
142
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 68 0 6294 152
12 23 10 15727 236
4
16 17 21 27227 465
20 1.4 44 65183 1137
14 9 0 11904 443
21 13 0 33934 1423
7
28 28 0.84 79240 658
35 20 1.5 142464 1438
20 0.04 0 22921 1072
Banana E 30 1.7 0 82985 686
10
40 3.2 0.014 126027 1362
50 1.3 0.76 358349 4542
30 0.014 0 42112 352
45 0.17 0 135937 1438
15
60 0.22 0 258306 3435
75 0.27 0.36 847102 13471
40 0.0054 0 46000 342
60 0.0074 0 184261 1801
20
80 0.033 0 516637 5910
100 0.044 0 918727 12134
143
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 0.006 0 3537 70
12 20 2.1 10275 183
4
16 3.7 18 14529 217
20 2.9 29 43622 717
14 0.0042 0 7486 269
21 2.8 0 25151 912
7
28 3.3 0.32 67176 541
35 2.2 3.8 110116 996
20 0.004 0 11629 446
Banana B 30 0.03 0 43733 346
10
40 0.72 0 109932 1055
50 1.6 0.085 229120 2628
30 0.0036 0 27093 217
45 0.0016 0 73039 781
15
60 0.0022 0 183074 2356
75 0.056 0 430502 6198
40 0.0029 0 46020 477
60 0.0013 0 95452 1371
20
80 0.001 0 195743 3212
100 0.00099 0 402981 7749
144
Terrain p n V % × 102 %
Nnc Évaluations Temps (s)
8 42 0 5095 133
12 69 4.9 12019 293
4
16 11 17 31048 621
20 3.1 32 62825 965
14 0.2 0 10884 886
21 7.3 0.011 34373 1357
7
28 10 0.51 97826 904
35 1.5 9 148557 1447
20 0.021 0 19186 783
M tl 30 0.86 0 49048 321
10
40 1.8 0 128618 985
50 8 0.096 270779 2648
30 0.0078 0 33128 211
45 0.0035 0 79079 662
15
60 0.092 0 225988 2190
75 0.3 0 473171 5273
40 0.0034 0 47667 342
60 0.0025 0 104183 1010
20
80 0.0025 0 282027 3488
100 0.023 0 699783 9584