MINISTERE DE L'ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE
UNIVERSITE D'ABOMEY CALAVI
école polytechnique d'abomey-calavi
département de génie informatique et télécommunications Option : Réseaux et Télécommunications
mémoire de fin de formation
Résolution du problème
d'affectation de fréquences avec la programmation par contraintes
Par Marianne A. O. BALOGOUN, en vue de l'obtention du diplôme d'ingénieur de conception
Avec l'encadrement de :
Dr Ing. Vinasétan Ratheil HOUNDJI
Sous la supervision de :
Professeur Kokou Marc ASSOGBA Soutenu le 04 Avril 2019 devant le Jury composé de :
Dr léopold DJOGBE, Enseignant chercheur à l'EPAC, Président Cdt Dr Michel Dossou, Enseignant chercheur à l'EPAC, Membre Dr Patrick SOTINDJO, Enseignant chercheur à l'EPAC, Membre
Dr Vinasétan Ratheil HOUNDJI, Enseignant chercheur à IFRI, Encadreur
Année académique 2017-2018
Dédicace
A mon seigneur Jésus-Christ qui règne d'éternité en éternité, mes parents, mes frères et soeurs.
Remerciements
Merci à tous ceux qui de près ou de loin ont contribué à la réalisation de ce travail. Mes remerciements vont particulièrement à l'endroit de :
• Pr Guy ALITONOU , Directeur de l'Ecole Polytechnique d'Abomey-Calavi, et à son adjoint le Pr François-Xavier FIFATIN ;
• Dr Léopold DJOGBE, Chef du département de Génie Informatique et Télécommuni- cations (GIT) de l'EPAC ;
• Dr Ing. Vinasétan Ratheil HOUNDJI, mon maitre de mémoire, qui a accepté d'encadrer mes travaux. Ses enseignements de qualité, son oreille attentive, sa patience, ses conseils judicieux m'ont été d'une aide précieuse. Merci d'avoir cru en moi ;
• Pr Kokou Marc ASSOGBA, qui a bien voulu superviser mes travaux. Je le remercie de m'avoir accepté malgré ses multiples occupations ;
• Tous les professeurs de l'EPAC, et en particulier à ceux qui ont participé à ma formation, pour la richesse de leurs enseignements ;
• Tous les enseignants du département de GIT, pour la richesse de leurs enseignements ;
• M. Joël FIOSSI, chef centre réseaux sans l de BENIN TELECOMS SA pour son soutien ;
• Toute ma famille pour son soutien indéfectible ;
• Tous mes camarades du Département de GIT en particulier et de la 10 ème promotion du secteur industriel en général.
Table des matières
Dédicace i
Remerciements ii
Liste des sigles et abréviations vii
Liste des tableaux vii
Liste des gures ix
Liste des algorithmes x
Résumé xii
Abstract xiv
Introduction 1
I Revue de littérature 3
1 Le problème d'aectation de fréquences 4
1.1 Histoire du PAF . . . 4
1.2 Quelques rappels sur le réseau GSM . . . 5
1.3 Interférences . . . 7
1.3.1 Dénition . . . 7
1.3.2 Gestion de la bande de fréquences . . . 8
1.3.3 Mesure d'interférence . . . 8
1.3.4 Graphe d'interférences . . . 10
1.4 Catégories d'allocation de fréquences . . . 11
TABLE DES MATIÈRES
1.5 Classication des modèles du PAF . . . 12
1.6 Description du PAF . . . 13
1.6.1 Contraintes de séparation . . . 13
1.6.2 Canaux bloqués . . . 14
1.7 Modèle mathématique du MI-FAP . . . 14
2 Etat de l'art des méthodes de résolution 16 2.1 Méthodes exactes . . . 16
2.2 Approches heuristiques . . . 18
2.2.1 Algorithme glouton ou constructif . . . 19
2.2.2 Recherche tabou . . . 19
2.2.3 Algorithme génétique . . . 21
2.2.4 Colonie de fourmis . . . 22
2.2.5 Recuit simulé . . . 23
2.3 Programmation par contraintes . . . 23
2.3.1 Heuristiques . . . 23
2.3.2 Brève description de la programmation par contraintes . . . 25
2.4 Comparaison des méthodes de résolution . . . 26
II Matériel et méthodes 27
3 Matériel 28 3.1 Outils et choix techniques . . . 283.1.1 Solveurs . . . 28
3.1.2 EDI . . . 29
3.2 Instances de test . . . 30
3.2.1 Petite instance Tiny . . . 30
3.2.2 Description des instances de tests . . . 33
4 Notre Solution 35 4.1 Modélisation . . . 35
4.1.1 Faisabilité d'une assignation . . . 35
4.1.2 Fonction objectif . . . 38
4.2 Présentation du modèle CP . . . 38
TABLE DES MATIÈRES
4.2.1 Données . . . 41
4.2.2 Variables et domaines . . . 42
4.2.3 Contraintes . . . 43
4.2.4 Recherche . . . 45
4.2.5 Fonction objectif et solutions . . . 50
III Résultats et discussion 51
5 Résultats et discussion 52 5.1 Solutions obtenues avec Tiny . . . 525.2 Tests . . . 54
5.2.1 Faisabilité . . . 55
5.2.2 Faisabilité en considérant les arrêtes du graphe . . . 55
5.2.3 Faisabilité en parcourant les arrêtes du graphe une seule fois . . . 56
5.2.4 Faisabilité avec ajout de contraintes . . . 56
5.2.5 Minimisation des interférences . . . 57
5.3 Comparaison avec des travaux de l'Etat de l'art . . . 59
Conclusion 61
IV English part 62
6 State-of-the-art 64 6.1 Some reminders about the GSM . . . 646.2 Constraint programming . . . 65
6.2.1 Heuristics . . . 65
6.2.2 Brief description of constraint programming . . . 66
7 Material and methods 67 7.1 Material . . . 67
7.1.1 OscaR . . . 67
7.1.2 IntelliJ IDEA . . . 67
7.2 Our solution . . . 68
7.2.1 Modeling . . . 68
7.2.2 Presentation of the CP model . . . 71
TABLE DES MATIÈRES
7.2.3 Search . . . 74
7.2.4 Objective Function and Solutions . . . 75
8 Results and discussion 76 8.1 Solutions obtained with Tiny . . . 76
8.2 The tests . . . 76
8.2.1 Feasibility . . . 77
8.2.2 Minimizing interference . . . 78
8.3 Comparison to the work of other researchers . . . 78
Conclusion 81
Liste des sigles et abréviation
BCCH :Brodcast Control CHannel (Canal de Contrôle de Diusion) BTS : Base Transceiver Station (Station de Base)
COP :Constraint Optimisation Constraint (Problème d'Optimisation sous Contraintes) CP : Constraint Programming (Programmation par Contraintes)
CSP :Constraint Satisfaction Problem(Problème de Satisfaction de Contraintes) DCA : Aectation Dynamique de Canaux
EDI : Environnement de Développement Intégré FCA : Aectation Statique de Canaux
GSM : Global System for Mobile (Système Global pour Mobile) HCA : Aectation Hybride de Canaux
LNS : Local Neighbor Search (Recherche Locale de Solutions Voisines)
MB-FAP :Minimum Blocked channels Frequency Assignment Problem ( Minimisation des fréquences Bloquées dans un Problème d'Assignation de Fréquences)
MI-FAP : Minimum Interference Frequency Assignment Problem (Minimisation d'Interfé- rences dans un Problème d'Assignation de Fréquences)
MO-FAP : Minimum Order Frequency Assignment Problem (Minimisation du Plan de fré- quence dans un Problème d'Assignation de Fréquences)
MS-FAP : Minimum Space Frequency Assignment Problem(Minimisation de l'Espace de fré- quences dans un Problème d'Assignation de Fréquences)
OscaR : Optimisation Scala Research PAF : Problème d'Aectation de Fréquence TCH :Trac CHannel (Canal de Trac)
TRX : Transmission/Reception Unit (Emetteur/Récepteur)
Liste des tableaux
3.1 Demande de trac . . . 31
3.2 Contrainte de séparation Handover . . . 31
3.3 Possibilité de handover . . . 32
3.4 Interférences co-canal et canaux-adjacents entre paire de cellules . . . 32
4.1 Contraintes de séparation Handover . . . 37
5.1 Solutions obtenues sur l'instance Tiny . . . 53
5.2 Tableau comparatif des résultats obtenus sur Tiny . . . 54
5.3 Solutions faisables obtenues sur les instances K et Siemens1 . . . 55
5.4 Solutions faisables avec le graphe d'interférence . . . 56
5.5 Solutions faisables en parcourant les arrêtes du graphe une seule fois . . . 56
5.6 Solutions faisables en brisant la symétrie . . . 56
5.7 Solutions faisables en évitant la redondance . . . 57
5.8 Solutions faisables en brisant la symétrie et évitant la redondance . . . 57
5.9 Solutions sans ajout de contraintes supplémentaires . . . 58
5.10 Solutions avec ajout de contraintes supplémentaires . . . 58
5.11 Solutions avec LNS . . . 58
5.12 Comparaison des solutions obtenues sur la faisabilité . . . 59
5.13 Comparaison des solutions obtenues avec les valeurs seuil . . . 59
5.14 Discussion avec le LNS . . . 60
5.15 Comparaison aux valeurs de référence . . . 60
8.1 Comparative table of the results obtained on Tiny . . . 76
8.2 Feasible solutions obtained with heuristics . . . 77
8.3 Feasible solutions with interferences graph . . . 77
LISTE DES TABLEAUX
8.4 Solutions with threshold . . . 78
8.5 Solutions with LNS . . . 78
8.6 Comparison of solutions obtained on feasibility . . . 78
8.7 Comparison of the solutions obtained with the threshold values . . . 79
8.8 Discussion with the LNS . . . 79
8.9 Comparison with reference values . . . 80
Table des gures
1.1 Représentation d'un site dans un réseau GSM . . . 6
1.2 Représentation d'un PAF . . . 10
2.1 Organigramme d'un exemple d'algorithme glouton [1] . . . 19
2.2 Illustration de la notion d'optimum local et d'optimum global [2] . . . 25
3.1 Instance Tiny [3] . . . 31
Liste des Algorithmes
1 Notre modèle CP . . . 39
2 Ajout de la contrainte pour briser la symétrie . . . 44
3 Ajout de la contrainte pour éviter la redondance . . . 45
4 binaryMaxDegree . . . 45
5 binarySplit . . . 46
6 binary . . . 46
7 binaryFirstFail . . . 47
8 binaryLastConict . . . 47
9 binaryStatic . . . 48
10 Heuristique 1 proposée : leastAectedVal . . . 48
11 Heuristique 2 proposée : leastAectedAdjacentVal . . . 49
12 Heuristique 3 proposée : minInterference . . . 49
13 LNS . . . 50
Résumé
Les opérateurs des systèmes de réseaux mobiles, en raison du spectre de fréquences dispo- nibles et de son coût élevé, tirent un grand prot de la réutilisation de façon optimale des fréquences. En eet, dans un réseau de téléphonie mobile par exemple, on a un ensemble de cellules disposant d'un certain nombre de canaux auxquels l'on attribue des fréquences. Ce- pendant, la réutilisation des canaux n'a pas que des avantages, elle a pour eet d'engendrer des interférences particulièrement lorsque des TRX proches géographiquement utilisent la même fréquence ou des fréquences adjacentes. Ces interférences perturbent le réseau. L'assignation de fréquences est un problème combinatoire NP-dicile et un problème d'optimisation du point de vue réutilisation de fréquences et minimisation d'interférences. Pour résoudre cette perturbation, il faudrait assigner les fréquences de sorte à minimiser les interférences. Dans ce travail, nous avons abordé la résolution du Problème d'Aectation de Fréquences (PAF) avec la Programmation par Contraintes (CP). La programmation par contraintes fait partie des méthodes de programmation déclarative entre l'Intelligence Articielle, l'optimisation et l'algorithmique. Le problème a été traité en nous basant sur le cas pratique du GSM avec une aectation statique. La version de PAF traitée est la Minimisation d'Interférences dans un Problème d'Allocation de Fréquences (MI-FAP). Nous avons utilisé le solver OscaR pro- grammé en scala et l'EDI utilisé est IntelliJ IDEA. Nous avons implémenté un modèle qui consiste à trouver une première assignation de niveau d'interférences relativement réduit.
A cet eet, nous avons implémenté trois heuristiques de recherche à savoir leastAected- Val, leastAectedAdjacentVal et minInterference. De plus, une réduction de l'interférence maximale tolérable entre chaque paire de cellules a été appliquée.Deux tiers (2/3) de nos heuristiques de recherche ont été meilleures que les heuristiques génériques disponibles dans OscaR testées. Également, leastAectedVal s'est révélée une bonne heuristique de recherche en programmation par contraintes pour résoudre le MI-FAP. Pour améliorer les résultats ob- tenus, le LNS (Local Neighbor Search) a été appliqué. Les résultats expérimentaux montrent
LISTE DES ALGORITHMES
l'ecacité de l'heuristique de recherche leastAectedVal et du LNS dans la minimisation des interférences lors de l'assignation des fréquences dans un réseau mobile.
Mots clés : PAF, CP, GSM, MI-FAP, TRX, heuristique, LNS.
Abstract
Operators of mobile network systems, because of the available frequency spectrum and its high cost, benet greatly from the optimal reuse of frequencies. Indeed, in a mobile network for example, we have a set of cells with a number of channels to which we assign frequencies.
However, the reuse of channels is not only benecial, it has the eect of causing interference particularly when geographically close TRX use the same frequency or adjacent frequencies.
These interferences disturb the network. Frequency assignment is an NP-hard combinato- rial problem and an optimization problem from the point of view of frequency reuse and minimization of interference. To resolve this disturbance, frequencies should be assigned to minimize interference. In this work, we have addressed the resolution of the Frequency As- signment Problem (PAF) with Constraint Programming (CP). Constraint programming is part of declarative programming methods between Articial Intelligence, Optimization and Algorithmics. The problem was dealt with based on the practical case of GSM with a static assignment. The processed PAF version is the Interference Minimization in a Frequency Allocation Problem (MI-FAP). We used the OscaR solver programmed in scala and the EDI used is IntelliJ IDEA. We have implemented a model that consists of nding a rst, relatively small interference level assignment. For this purpose, we implemented three search heuris- tics namely leastAectedVal, leastAectedAdjacentVal and minInterference. In addition, a reduction in tolerable maximum interference between each pair of cells was applied. Two- thirds (2/3) of our search heuristics were better than the generic heuristics available in OscaR tested. Also, leastAectedVal proved to be a good constraint programming search heuristic for solving MI-FAP. To improve the results obtained, the LNS (Local Neighbor Search) has been applied. The experimental results show the eectiveness of the leastAectedVal search heuristic and the LNS in minimizing interference when assigning frequencies in a mobile network.
Key words: FAP, CP, GSM, MI-FAP, TRX, heuristic, LNS.
Introduction
Contexte
La communication mobile est utilisée dans plusieurs domaines tels que la téléphonie mobile, les diusions radio et télé, la communication par satellite et les opérations militaires. Dans chacun de ces domaines, la communication mobile soulève le Problème d'Aectation de Fré- quences(PAF) avec des caractéristiques d'application spéciques. Les chercheurs ont alors développé divers modèles pour chacune des caractéristiques de ce problème, telles que la ma- nipulation des fréquences entre les signaux radios, la disponibilité de fréquences et le critère d'optimisation [4]. Les opérateurs des systèmes de réseaux mobiles, en raison du spectre de fréquences disponibles et de son coût élevé, tirent un grand prot de la réutilisation de façon optimale des fréquences. En eet, dans un réseau de téléphonie mobile par exemple, on a un ensemble de cellules disposant d'un certain nombre de canaux auxquels l'on attribue des fréquences [5]. Ces canaux sont utilisés par les émetteurs/récepteurs, on parle d'aectation de fréquences aux émetteurs/récepteurs (TRX). Cependant, la réutilisation des canaux n'a pas que des avantages, elle a pour eet d'engendrer des interférences particulièrement lorsque des TRX proches géographiquement utilisent la même fréquence ou des fréquences adjacentes [6].
Ces interférences perturbent le réseau. L'assignation de fréquences est un problème combina- toire NP-dicile et un problème d'optimisation du point de vue réutilisation de fréquences et minimisation d'interférences. Pour résoudre cette perturbation, il faudrait assigner les fré- quences de sorte à minimiser les interférences.E
Pour ce faire, il y a plusieurs méthodes qui peuvent être utilisées dont la programmation par contraintes. La Programmation par Contraintes (CP) est une technique issue de l'intel- ligence articielle et de la recherche opérationnelle qui peut être utilisée pour résoudre des problèmes d'optimisation pour lesquels il faut satisfaire certaines contraintes. La résolution de ces Problèmes de Satisfaction de Contraintes (CSP) est généralement combinatoire dans le sens où il faut envisager un grand nombre de combinaisons avant d'en trouver une qui
LISTE DES ALGORITHMES
satisfasse toutes les contraintes [7]. La puissance des ordinateurs ne permet pas toujours d'examiner en temps acceptables toutes les combinaisons possibles [8], il faut faire appel à des éléments capables de réduire la combinatoire tout en guidant la recherche vers les bonnes combinaisons, la recherche locale pourra être utilisée. La recherche locale est souvent utilisée pour résoudre les problèmes d'optimisation diciles. Elle part d'une solution réalisable à une autre selon un critère (dépendant de la méthode utilisée) et de proche en proche aboutit à une solution ayant un coût relativement proche du coût optimal [9]. Dans le cadre de ce projet, nous utiliserons la recherche locale en CP.
Problématique
Le trac de données sur les réseaux mobiles s'est accru depuis l'avènement des termi- naux mobiles évolués. Les canaux étant beaucoup sollicités, les possibilités d'interférence augmentent du fait de la réutilisation des fréquences. Les opérateurs ayant la préoccupation de satisfaire la clientèle cherchent à résoudre le problème. Quelles sont les contraintes à satis- faire ? Comment modéliser ce problème ? Quel algorithme faudrait-il utiliser pour de bonnes solutions ? Pour répondre à toutes ces questions, les chercheurs ont abordé le problème avec diverses méthodes, cependant la programmation par contraintes a été peu utilisée. Notons que la programmation par contraintes est une méthode qui a été utilisée pour résoudre de multiples problèmes avec de résultats intéressants.
Méthodologie
Il s'agit dans ce travail de résoudre le MI-FAP dans un réseau GSM avec la recherche locale en programmation par contraintes. Pour résoudre ce problème, nous travaillons sur un cas pratique de réseau mobile qu'est le GSM. D'abord, nous étudions spécialement les interfé- rences lors de l'aectation de fréquences dans un réseau GSM. Ensuite, nous dénissons les contraintes et minimisons globalement les interférences dans un réseau GSM. An de minimi- ser globalement les interférences, une fonction objectif est dénie pour caractériser la solution optimale. Les algorithmes seront implémentés en utilisant le solver open source OscaR. Nous proposons un modèle et des heuristiques de recherche. Toutes les expériences sont réalisées avec un processeur intel core i5 à 2,5 GHz utilisant windows 8. Nous comparons nos résultats avec ceux des travaux antérieurs.
Première partie
Revue de littérature
Chapitre premier
Le problème d'affectation de fréquences
Le Problème d'Aectation de Fréquences (PAF) consiste à trouver une assignation aux émet- teurs/récepteurs de façon à satisfaire certaines contraintes. Lorsque ces contraintes sont res- pectées et l'on veut minimiser les interférences, on parle de Problème de Minimisation d'In- terférences lors de l'Assignation de Fréquences (MI-FAP). Dans ce chapitre, nous présentons brièvement quelques notions sur le réseau cellulaire GSM, l'histoire du PAF, les interférences, les catégories d'allocation de fréquences, la classication des modèles de PAF et enn nous décrivons le PAF et présentons un modèle mathématique du MI-FAP.
1.1 Histoire du PAF
Le Problème d'Assignation de Fréquences (PAF) est apparu pour la première fois dans les années 1960 [4]. Le développement de nouveaux services sans l tels que les premiers réseaux de téléphonie cellulaire ont conduit à la rareté des fréquences utilisables dans le spectre radioélectrique. Ceci a introduit le besoin pour les opérateurs d'augmenter leurs plans de fré- quences pour non seulement éviter les niveaux élevés d'interférences mais qui vont également minimiser les coûts de licence. Il s'est avéré qu'il était loin d'être évident de trouver de tels plans.
À ce stade,les techniques de la recherche opérationnelle et de la théorie des graphes ont été introduites. En 1970, Metzger( [10]) a eu le mérite de ressortir les possibilités d'utiliser l'op- timisation mathématique, en particulier les techniques de coloration des graphes, pour ce but. Jusqu'au début des années 1980, la plupart des contributions sur l'assignation de fré- quences utilisaient des heuristiques basées sur le problème de coloration de graphes connexes.
Le développement du cellulaire numérique GSM à la n des années 1980 et 1990 conduit à un intérêt croissant pour l'assignation de fréquences [4]. Mais aussi des projets sur d'autres
Quelques rappels sur le réseau GSM
applications tels que la communication sans l militaire et la radio / TV ont contribué à la littérature sur l'assignation de fréquences ces dernières années.
En 1980, Hale présente une vue d'ensemble sur le PAF avec un accent particulier sur la modélisation des problèmes. Il a aussi parlé de la relation entre le PAF et la coloration de graphes [11]. En particulier la relation entre les PAF et le problème de T-coloration des graphes a été introduit par Hale. Ceci conduisit à plusieurs nouveaux résultats qui ont été étudiés par Roberts au début des années 1990 [4]. L'étude de Murphey et al se concentre également sur les résultats pour les généralisations de la coloration incitées par l'assignation de fréquences [4]. Jaumard et al ont fait une brève description de plusieurs méthodes [12].
Eisenblätter et al ont donné un aperçu de l'évolution de la planication des fréquences à partir de la coloration des graphes et ses généralisations aux modèles utilisés de nos jours, avec un accent sur l'usage du GSM [13].
Le travail de Karen I. Aardal et al en 2003 renseigne sur les modèles de PAF, les méthodes d'optimisation et les approches heuristiques à cette époque. En 2004, P. Galinier et J.-K.
Hao [14] introduisent une approche générale pour la résolution des contraintes avec la re- cherche locale, ce qui a conduit à plusieurs propositions d'algorithmes de recherche locale pour le PAF.
Dans l'histoire du PAF, on remarque que les travaux, qui renseignent globalement sur une question du PAF ou qui font le point des travaux, donnent beaucoup d'ouverture suscitant l'engouement chez plusieurs chercheurs. C'est ainsi que l'idée de créer un site web pour le PAF est né. Sur ce site, on trouve la bibliographie presque complète sur le PAF, les problèmes pour les tests an que les chercheurs puissent comparer leurs résultats etc.
1.2 Quelques rappels sur le réseau GSM
Pour mieux cerner le problème et les notions que nous abordons dans la suite, nous nous basons sur le cas pratique du réseau mobile GSM. Nous présentons la structure de la partie accès des réseaux GSM dans cette section. Précisons que notre projet intervient au niveau de la partie accès. Seules les parties pertinentes pour la planication de fréquences sont expliquées.
Le signal de la parole et la transmission de données entre les mobiles et le système sont reçus et transmis au moyen de stations de base (BTS). Un BTS typiquement exploite trois antennes. Plusieurs unités émetteur/récepteur (TRX) peuvent être installées pour chaque
Quelques rappels sur le réseau GSM antenne (voir gure 1.1 ).
Figure 1.1 Représentation d'un site dans un réseau GSM
Chaque TRX ore une capacité d'environ six à huit time slots (voix à grand débit). Cela se fait au moyen de division du temps, où chaque abonné ne reçoit qu'un seul des huit dis- ponibles tranches de temps. Un site est l'emplacement d'une station de base, la zone qui peut être desservie par une antenne s'appelle une cellule. Certains time slots des TRX dans chaque cellule sont nécessaires pour diuser des informations de protocoles. Un TRX exploite le canal de contrôle de diusion (BCCH). Ce TRX lui-même plutôt que son canal logique assigné est souvent appelé BCCH [15]. Les autres TRX installés dans une cellule sont appelés trac de canaux (TCH).
La réutilisation des fréquences dans le réseau est inévitable puisque le nombre de fréquences disponibles pour un opérateur de réseau est plus petit que le nombre de TRX installés du fait de la rareté, du coût du spectre de fréquences et chaque TRX nécessite un canal [15].
An de gérer ces deux faits, les opérateurs font appel au principe de réutilisation de fré- quences. Ce dernier n'a pas que des avantages, il a pour eet d'engendrer des interférences particulièrement lorsque des TRX proches géographiquement utilisent la même fréquence ou des fréquences adjacentes [6]. En outre, il est possible que chaque canal disponible dans le monde ne soit pas disponible dans chaque cellule. Ces canaux localement bloqués peuvent, par exemple, apparaître le long des frontières nationales en raison d'accords internationaux.
Par conséquent, pour chaque cellule, une liste (éventuellement vide) des canaux bloqués lo- calement sont spéciés.
Un canal doit être aecté à chaque TRX de sorte qu'aucun canal ne soit localement bloqué et
Interférences
que toutes les exigences de séparation soient respectées. Il y a divers types de séparation tels que la séparation co-site qui impose des restrictions aux TRX d'un même site, la séparation co-cellule qui impose des restrictions aux TRX d'une même cellule et la séparation handover qui est utilisée pour assurer le handover des appels actifs entre deux cellules.
L'objectif d'optimisation est d'eectuer une assignation de fréquences avec des interférences aussi minimes que possible. Notre objectif est de minimiser la somme de toutes les interfé- rences. Même si l'interférence globale est faible, il peut y avoir un petit nombre de cellules sourant d'un niveau élevé d'interférence. L'obtention de valeurs d'interférences entre les cel- lules est complexe. Là, plusieurs approches permettent de prédire les interférences co-canal et canaux-adjacents. Considérons d'une part, deux cellules se chevauchant sur une petite région avec un haut niveau d'interférence et d'autre part, deux cellules se chevauchant sur une grande région avec peu d'interférence ; Il n'y a pas de règle générale pour exprimer cela au moyen d'une seule valeur. De plus, les interférences se produisent entre plusieurs cellules plutôt qu'entre des paires de cellules uniquement. Le fait de jouer sur la somme des interfé- rences qui sont déterminables reste la meilleure option car il donne une satisfaction globale du réseau.
1.3 Interférences
Les interférences peuvent être internes ou externes au réseau déployé. Nous nous intéressons à celles qui sont internes au réseau. Dans le réseau, les interférences sont dues à la réutilisation de fréquences donc elles sont étroitement liées à la gestion de la bande de fréquences lors de l'assignation. Dans cette section, nous dénissons les interférences, nous parlons de la gestion de la bande de fréquences pour l'aectation de fréquences, nous décrivons la mesure de l'interférence en théorie et en pratique et enn abordons la question de graphe d'interférences.
1.3.1 Dénition
Etant donné qu'il existe de multiples dénitions pour les interférences, nous allons nous limiter aux problèmes typiques du champ radio. Les interférences les plus fréquentes sont provoquées par des inuences mutuelles entre des fréquences utiles, d'où des interférences co-canal ou canaux adjacents créant des problèmes de réception considérables.
Interférences
1.3.2 Gestion de la bande de fréquences
La bande de fréquences[fmin, fmax]disponible pour certains fournisseurs de communication sans l est généralement partitionnée en un ensemble de canaux, tous avec la même bande passante∆des fréquences. Pour cette raison, les canaux sont généralement numérotés de 1 à un maximum donné N , oùN = (fmax−fmin)/∆. Les canaux disponibles sont indiqués par le domaineD={1, . . . , N}. Pour une liaison particulière, tous les canaux de D ne sont pas nécessairement disponibles. Par exemple, si cette liaison est proche de la frontière d'un pays, les règles de division entre les pays concernés peuvent entraîner une diminution substantielle de la disponibilité des canaux. Par conséquent, les canaux disponibles pour une liaison v forment un sous-ensembleDv ⊆D. Sur chaque canal disponible, on peut communiquer des informations d'un émetteur à un récepteur.
Pour le trac bidirectionnel, il faut deux canaux de ce type, un pour chaque direction donc naturellement deux bandes de fréquences. Dans les modèles considérés dans la littéra- ture, le deuxième canal est presque toujours ignoré. Les raisons d'ignorer cet aspect du PAF dépendent de l'application. Au lieu d'une bande[fmin, fmax], dans la plupart des applications deux bandes[fmin1, fmax1]et [fmin2, fmax2]de N canaux sont disponibles : une avec les ca- naux{1, . . . , N}, et un avec les canaux{s+1, . . . , s+N}, oùsN. Ainsi, la liaison inverse utilise un canal qui est décalé de s canaux. Le choix de s évite toute interférence entre les canaux montants et les canaux descendants. Par conséquent, chaque aectation pour les ca- naux descendants peut être directement transformée en aectation pour les canaux montants avec des performances similaires.
1.3.3 Mesure d'interférence
L'interférence des signaux est mesurée par le rapport signal / bruit (ou rapport signal sur interférence) à l'extrémité réceptrice d'une liaison. Là, le signal transmis devrait être clai- rement connu. Le bruit provient d'autres signaux qui ont une fréquence d'interférence sur laquelle ils diusent. Il peut y avoir plus d'une source qui émet sur la même fréquence ou une fréquence proche, ce qui contribue ainsi au bruit total subi par le récepteur. En pratique, une valeur seuil de 12 dB ou 15 dB pour le rapport signal / bruit est jugée satisfaisante [16].
Au delà de ce seuil, on interdit l'aectation simultanée de la fréquence interférente et de la fréquence interférée.
Interférences
Le calcul du niveau d'interférence est un travail dicile en soi, car il dépend non seule- ment du choix et de la puissance du signal, mais aussi de la forme de l'environnement. Si nous ignorons l'environnement et considérons un autre signal transmis sur le même canal de fréquence, alors l'interférence de ce signal au niveau du récepteur est calculée avec la formule suivante :P/dγ où P est la puissance de l'émetteur et d la distance au récepteur perturbé.
Ici, γ est un facteur d'évanouissement avec des valeurs comprises entre 2 et 4. Si cet autre signal est transmis à une fréquence à une distance den≥1du signal original, un facteur de ltrage de−15(1 + log2n)doit être pris en compte [16].
Le fait que plusieurs signaux à la fois peuvent perturber la qualité de la communication est ignoré dans la plupart des modèles, où seule l'interférence entre les paires de liaisons est mesurée. Une exception notable est le travail de Fischetti et al., [4] en 1998 dans lequel des contraintes sont développées pour déterminer l'interférence totale des liaisons voisines. Une autre hypothèse est la quantication des niveaux d'interférence. Pour les modèles en théorie, les valeurs d'interférences sont supposées.
Le trac bidirectionnel discuté précédemment pose un autre problème, même dans le cas où seule l'interférence entre des paires de liaisons est prise en compte. Les interférences ne sont pas forcément symétriques : si un émetteur-récepteur (r1, r2) transmet et reçoit sur les fréquences respectives f et f +s , et un autre émetteur-récepteur (s1, s2) transmet et reçoit sur les fréquences g et g+s oùf et g s'interfèrent, f +s et g+s s'interfèrent, les niveaux d'interférence enr1etr2peuvent être diérents. Comme mentionné précédemment, cet aspect est ignoré dans la majeure partie de la littérature. Selon l'application, une ou plusieurs liaisons doivent être établies entre les mêmes extrémités géographiques. En général, ceci est modélisé en supposant que c(v) ∈ Z+ est l'ensemble des fréquences qui doivent être aectées au trac v. L'interférence entre les fréquences aectées au même trac peut être évitée par l'introduction d'une valeur supplémentaire pour certaines combinaisons de fréquencesf, g∈Dv. En pratique, les valeurscvvarient au cours du temps, en fonction de la demande réelle de trac. Avec les instances du Cost 259 que nous utilisons dans notre travail, cet aspect est pris en compte.
Interférences
Figure 1.2 Représentation d'un PAF
1.3.4 Graphe d'interférences
Dans une esquisse d'Aectation Statique de Canaux(en anglais FCA pour Fixed Channel Assignment), la charge de trac attendue du réseau est transformée en une exigence selon laquelle nous devons assigner à chaque liaison un nombre xe de fréquences. La représenta- tion standard d'un PAF se fait au moyen d'un grapheG= (V, E), appelé graphe d'interfé- rences ou graphe de contraintes. Chaque liaison est représentée par un sommetv∈V .G= C1, C2, C3, C4, C5, C6, C7etE= (C1, C2),(C1, C3),(C1, C4),(C2, C3),(C2, C4),(C3, C4).
Notons qu'il y a une arrête reliant deux cellules lorsque celles-ci peuvent s'interférer. Les canaux (ou fréquences) disponibles pour un sommet sont indiqués par l'ensemble Dv ⊆D. Soitcv le nombre de fréquences requis pour la liaisonv∈V . Deux sommetsvetwpour les- quels les liaisons correspondantes peuvent interférer pour au moins une paire de fréquences, sont reliés par une arête{v, w} ∈E . Pour chaque paire de fréquencesf ∈Dv etg∈Dwune pénalité est attribuée au choix combiné par une mesure dépendant du niveau d'interférence.
La pénalité est notéepvwf g.
L'interférence entre deux fréquences f, g ∈Dv aectées au même sommet v peut être mo- délisée de la même manière : une arête {v, v} ∈E et la pénalité pvvf g. Une autre façon de
Catégories d'allocation de fréquences
modéliser ceci est de remplacervparcvsommets et des arêtes supplémentaires entre chacun d'eux. Certaines instances traitent d'un plan de fréquences dans lequel des modications sont envisagées an de réduire les interférences. Cette réduction devrait avoir lieu sous des chan- gements minimes du plan de fréquences total, ainsi les changements dans le plan changent aussi les pénalités. Ceci est modélisé avec des pénalités additionnelles sur les fréquences à choisir pour chaque sommet : le choix de la fréquencef ∈Dvet le coût correspondantqvf.
La réutilisation d'une fréquence engendre des interférences qui sont fonction de la distance de réutilisation. Plus la distance de réutilisation est petite, plus l'interférence est grande.
Les fréquences adjacentes (fréquences d'écart de 1) s'interfèrent également en fonction de la distance à laquelle elles sont utilisées. Les types d'interférences dont nous avons parlé sont respectivement les interférences co-canal et canaux-adjacents. Il faut donc connaître l'emplacement des sites. Un travail se fait en amont pour déterminer en théorie le niveau d'interférence entre paire de cellules en cas de réutilisation de fréquence ou d'utilisation de fréquences adjacentes. Ces diérentes valeurs sont rangées dans des matrices que nous nommonsCo(pour les interférences co-canal) etAdj(pour les interférences canaux-adjacents) et ont pour éléments des interférences entre paires de cellules. Ces matrices sont des matrices carrées de tailleC×C.
1.4 Catégories d'allocation de fréquences
Les approches suggérées dans la littérature pour traiter le PAF peuvent être divisées en trois catégories : l'Aectation Statique de Canaux (en anglais FCA : Fixed Channel Assignment), l'Aectation de Canaux Dynamique ( en anglais DCA pour Dynamic Channel Assignment) et l'Assignation Hybride de Canaux (en anglais HCA pour Hybrid Channel Assignment).
Le besoin de liaisons multiples , et l'application des systèmes DCA et HCA proviennent des réseaux de téléphonie cellulaire [3].
FCA : dans une FCA, la demande prévue est transformée en exigence d'assignation préa- lable à chaque liaison d'un certain nombre de fréquences. Dans ce schéma, il n'est pas permis de modier l'assignation en cours pour satisfaire la demande réelle de liaisons sans l.
DCA : les systèmes DCA dans lesquels les fréquences sont attribuées en temps réel aux liaisons de telle sorte que la demande réelle est satisfaite et que les interférences sont réduites au minimum. Un exemple d'une procédure pour DCA a été présenté par Janssen, Kilakos
Classication des modèles du PAF
et Marcotte [17]. Ils discutent d'un schéma d'attribution de préférences xes. Pour chaque cellule, il existe une liste de fréquences préférentielles pour répondre à la demande. Dans le travail de Janssen et al, il est prouvé que les listes de préférences peuvent être construites de telle sorte qu'elles soient optimales selon certaines mesures de performance.
HCA : dans les schémas HCA, une combinaison de FCA et de DCA est mise en ÷uvre pour obtenir une meilleure performance globale du réseau. Dans les systèmes HCA, un certain nombre de fréquences est assigné à chaque liaison, tandis qu'une autre partie du spectre peut être utilisée pour l'attribution en temps réel de fréquences sur demande. Sandalidis, Stavroulakis et Rodriguez-Tellez [18] décrivent un réseau de neurones et une approche par algorithme génétique du problème d'aectation d'emprunt des canaux et donnent un exemple de schéma HCA. Dans le problème d'aectation d'emprunt des canaux, un nombre xe de fréquences est aecté aux liaisons. Cependant, lorsque la demande réelle de fréquences dépasse le nombre de fréquences disponibles, la liaison peut emprunter une fréquence inutilisée aectée à une liaison adjacente. La performance des réseaux qui fonctionnent sur les systèmes DCA et HCA est principalement étudiée par simulation de la procédure particulière. Il est prouvé par Johri [19] que les schémas DCA fonctionnent mieux que les schémas FCA sous un trac léger et sous un trac non uniforme. Cependant, sous une charge uniforme et lourde, les systèmes FCA surpassent les systèmes DCA. En outre, FCA limite la performance du système DCA.
En eet, dans le cas où le schéma DCA permet un réarrangement complet de l'aectation, un problème FCA doit être résolu, chaque fois que la situation change.
1.5 Classication des modèles du PAF
Dans la littérature, l'assignation de fréquences a été discutée dans de nombreux contextes, en fonction des applications et le but des chercheurs, les modèles proposés peuvent être classés en fonction de leur objectif :
1. MO-FAP : il s'agit de la minimisation du plan de fréquences lors de l'assignation dans laquelle le nombre de fréquences diérentes attribuées lors d'une aectation sans inter- férence doit être minimisé ;
2. MS-FAP : la minimisation de l'espace de fréquences lors de l'allocation dans laquelle la diérence entre les fréquences maximum et minimum utilisées dans une assignation sans interférence doit être minimisée ;
Description du PAF
3. MB-FAP : la minimisation des fréquences bloquées lors de l'assignation dans laquelle la probabilité globale de blocage doit être minimisé ;
4. MI-FAP : la minimisation d'interférences lors de l'aectation de fréquences dans laquelle l'interférence globale dans le réseau doit être minimisée [20].
1.6 Description du PAF
Pour aecter les fréquences d'un spectreFà un réseau deCcellules, il y a certaines règles qui doivent être respectées. Chaque cellule a des TRX auxquels l'on doit aecter des fréquences.
En eet le nombre total de TRX est nettement supérieur au nombre N de fréquences. Il faudra donc réutiliser les fréquences. Cette réutilisation se fait en respectant des contraintes.
1.6.1 Contraintes de séparation
Les contraintes de séparation sont des exigences minimales nécessaires sur les fréquences des TRX de la même zone géographique. Nous avons la contrainte de séparation co-cellule et la contrainte de séparation co-site. Pour assurer la mobilité dans le réseau, il faut également dé- nir des séparations entre les fréquences des cellules entre lesquelles le transfert de l'appel sera fait lorsque les communicants se déplacent. Cette séparation est appelée séparation handover.
Contrainte de séparation co-cellule : elle est très importante parce que sans elle, il sut d'avoir par exemple deux appels simultanés dans une même cellule et le réseau ne pourra plus répondre si les TRX sollicités utilisent le même canal. Si les TRX dans la même cellule utilisent aussi des canaux adjacents, il y a aussi une possibilité de pertubation parce que pour une bonne puissance de réception, le BCCH fait le calage sur la porteuse en se baladant un peu dans la bande de fréquences, ce qui va engendrer une interférence entre les TRX utlisant des canaux adjacents. Pour cela au sein d'une cellule, les fréquences assignées aux TRX doivent être séparées de deux ou trois au minimum.
Contrainte de séparation co-site : elle découle de la même idée que celle de la contrainte de séparation co-cellule du fait que les TRX d'un même site sont voisins, il fauit donc un minimum de séparation de deux.
Modèle mathématique du MI-FAP
Contrainte de séparation handover : le handover permet à un abonné en déplacement d'une cellule à une autre de continuer son appel sans interruption. Pour ce fait, un contrôle qui est fait entre paire de cellules pour permettre le handover. Il faut une séparation entre les BCCHs des deux cellules, entre TCH des cellules , entre TCH de l'une et BCCH de l'autre,entre BCCH de l'une et TCH de l'autre.
1.6.2 Canaux bloqués
Pour des raisons de normes internationales ou nationales, il y a certaines fréquences qui sont interdites dans certaines zones. Il s'agit des canaux bloqués. Ils sont pour la plupart bloqués localement.
Toute assignation respectant toutes ces contraintes est une assignation faisable. Le coût d'une assignation est la somme des interférences co-canal et canaux adjacents. Pour le MI-FAP, il faut une assignation faisable de coût minimum.
1.7 Modèle mathématique du MI-FAP
Nous présentons dans cette section un modèle mathématique pour le MI-FAP. Pour poser le problème, on a deux parties. La première concerne les données et la deuxième concerne le modèle d'assignation qu'on veut obtenir.
Données : en nous référant au COST 259 (cf. [3]), les données pour l'aectation sont généralement la gamme de fréquences, la liste de canaux localement bloqués, la liste d'émet- teurs/récepteurs (TRX ou encore porteuses), le nombre de cellules, le nombre de TRX par cellule, les minimums de séparations co-site, co-cellule, handover et les matrices d'interfé- rences co-canal et canaux-adjacents.
Modèle d'aectation : étant donné qu'il s'agit du MI-FAP, l'objectif ici est d'assigner une fréquence qui n'est pas localement bloquée à chaque TRX de sorte que les contraintes de séparation soient respectées et que la somme des interférences produites par une telle assignation soit minimisée. Le PAF est modélisé mathématiquement par un graphe indirect G= (V, E) où V est l'ensemble des cellules et E représente la relation entre chaque paire de cellules. La gamme de fréquences est notéeF. Un sous-ensemble Bu de canaux bloqués localement est spécié pour chaque celluleuavecBu⊂F. Il y a donc pour chaque celluleu
Modèle mathématique du MI-FAP
un ensembleCu de fréquences disponibles tel queCu=C Bu. De plus, on a trois fonctions décrites comme suit :
• fCo:E→[0,1]pour les interférences co-canal ;
• fAdj:E→[0,1]pour les interférences canaux-adjacents ;
• d:E→N pour les exigences de séparation.
Une assignation de fréquence est la fonctiong:V →F. Soityune assignation de fréquence à une cellule. Les contraintes s'expriment comme suit :
• y(u)∈Cu,∀u∈V
• |y(u)−y(v)| ≤d(u, v),∀(u, v)∈E
Chapitre deux
Etat de l'art des méthodes de résolution
Plusieurs approches de résolution du MI-FAP ont été proposées, allant des méthodes de résolution exactes aux approches heuristiques. Dans ce chapitre, nous abordons quelques méthodes utilisées dans la littérature pour résoudre le MI-FAP.
2.1 Méthodes exactes
Les Méthodes d'énumération implicites telles que la recherche arborescente et la programma- tion dynamique peuvent fournir une solution optimale au problème. L'objectif est de trouver un ensemble d'assignations de valeur à certaines variables qui satisferont des équations et inéquations et maximiser ou minimiser une certaine fonction. Un tel schéma de résolution peut être basé sur des formulations de programmation mathématique, principalement des formulations de programmation entières ou mixtes ou sur formulations de problèmes de sa- tisfaction de contraintes (CSP). Généralement, l'espace de solution croît exponentiellement avec la taille du problème. Des techniques telles que la réduction d'instances et l'élagage de n÷ud, par exemple grâce à un enregistrement non-bon, la relaxation LP, les bornes etc,sont appliquées an de réduire l'espace de recherche et le temps d'exécution [21].
La majorité des travaux qui abordent les méthodes exactes développent de nouvelles bornes pour la résolution du MI-FAP alors nous présentons brièvement les bornes pour donner une idée sur les méthodes exactes.
Bornes : la méthode de limite inférieure pour MI-FAP a commencé avec le travail de Tiou- rine et al. [22] en 1995 qui consiste à utiliser une relaxation de programmation quadratique qui peut être résolue par une énumération intelligente. Des limites non triviales sont signalées sur un ensemble limité d'instances CALMA, à savoir du côté des pénalités d'interférence, des pénalités à fréquence unique qui sont également utilisées pour favoriser certaines fréquences
Méthodes exactes pour les sommets.
Une autre borne inférieure y a été dérivée par Eisenblätter [23] en 2001 utilisant la programmation semi-dénie. Il étudie la relaxation semi-dénie de la programmation du minimum pour le problème de k-partition. MI-FAP réduit à un problème min k-partition dans le cas où seule l'interférence dans le même canal est considérée. Comme le problème max cut associé, le minimum pour le problème de k-partition peut être modélisé comme un programme semi-déni. La relaxation de ce programme semi-déni peut être résolu en temps polynomial. Pour les réseaux GSM du projet COST 259, les premières limites inférieures ont été calculées.
Dans le travail de Maniezzo et Montemanni [24] en 2000, la formulation MI-FAP consti- tue le point de départ pour dériver des bornes inférieures. Ces limites sont inspirées par des limites pour le problème d'aectation quadratique. En outre, la réduction et la domination des règles sont présentées. Un algorithme d'arbre de recherche est basé sur ces limites et règles. L'algorithme est testé sur les instances de CALMA et de Philadelphie (en prenant spectre xe) ainsi que sur certains benchmarks de coloration de graphes. Dans le travail de Montemanni et al. [25] en 2002, un anement de la formulation d'orientation de Koster de 1999 [26] est utilisé.
Formulation : nous allons formuler ici un certain nombre de paramètres pour pouvoir montrer quelques exemples de bornes inférieures.
• G(V, E): le graphe d'interférences d'un réseau décrit lors de la formulation du PAF, où V est l'ensemble des sommets (cellules) et E est l'ensemble des arêtes reliant les TRX qui s'interfèrent.
• n:le nombre de sommets dansG.
• Γ(x): l'ensemble des voisins d'un sommetx,Γ(x) ={y: (x, y)∈E, y6=x}.
• deg(x):le degré dexqui est égal à la cardinalité deΓ(x).
• X(G) : le nombre chromatique de G,le plus petit nombre de couleurs requis pour la coloration du graphe c'est -à-dire de sorte que deux voisins n'aient la même couleur.
• XT(G) : le nombre T-Chromatique, le plus petit nombre de couleurs requis pour sa T-coloration.
Approches heuristiques
• w(G): la taille de la plus grande cliqueG
• t-complétude : un graphe d'interférence est ditt-complet avec t≥1 si les sommets de V forment un graphe complet avec tij ≥t pour toutes les arêtesvivj.
Exemples de bornes : comme exemple, on a une borne inférieure intuitive simple proposée par Berge [27] dans un problème de coloration :X(G)≥w(G)
Une borne supérieure sur le nombre chromatique a été proposée par Hertz et Werra [27] : XT(G)≤1≤i≤n max(min(Pi
k=1dk, di+ (di−1)×deg(vi)P
j:vj∈Γ(vj)dj)).
Même si les bornes facilitent la recherche de solutions optimales, elles restent valables au type particulier du problème analysé et donc ne sont pas facilement adaptables et très coûteuses en temps. Plusieurs autres méthodes ont été développées permettant d'accélérer la recherche de bonnes solutions mais laissant de côté la garantie d'optimalité des solutions obtenues ; il s'agit des heuristiques.
2.2 Approches heuristiques
En raison de la diculté des diverses PAF, la majorité des documents de recherche ont été sur les approches heuristiques. Nous avons des méthodes de recherche locale standard (comme les algorithmes constructifs qui construisent une solution d'une manière gloutonne) qui commencent par une solution donnée avec de petits changements qui font itérativement des mouvements pour essayer de trouver de bonnes solutions, ces méthodes standard de re- cherche locale ne permettant que l'amélioration des mouvements (en descente) entraînant ainsi le risque de blocage en optima locaux.
Pour augmenter les chances d'amélioration de solutions, la dégradation des mouvements également vers le haut peut être autorisée. La recherche Tabou permet la dégradation des déplacements sous certaines conditions (restriction de voisinage avec la liste tabou) et le recuit simulé permettant une dégradation avec une probabilité, qui généralement dépend de la taille de la dégradation, et qui diminue généralement dans le temps. Les algorithmes génétiques quant à eux commencent par un ensemble de solutions, appelé génération, et construisent itérativement de nouvelles générations par recombinaison des solutions des générations pré- cédentes. Les réseaux de neurones articiels génèrent de nouvelles solutions par émulation du comportement d'une grille de neurones, où chaque neurone représente un morceau de la solution et son état est dynamiquement déterminé par les états de ses neurones voisins. L'op- timisation de colonie de fourmis est une métaheuristique qui est inspirée par le comportement
Approches heuristiques
des fourmis. Nous allons donner quelques exemples de ces approches heuristiques élaborées dans le domaine du PAF pour étayer les descriptions faites.
2.2.1 Algorithme glouton ou constructif
Un algorithme glouton est un algorithme qui suit le principe de faire, étape par étape, un choix optimum local, dans l'espoir d'obtenir un résultat optimum global.
Exemple : l'organigramme à la gure 2.1 a été tiré du travail de El Madhi [1]. Il résume les diérentes étapes de l'algorithme constructif proposé par El Madhi pour allouer les ressources dans un réseau sans l. Les notationsON et OK,N désignent respectivement le vecteur nul de taille N x 1 et la matrice nulle de taille K x N. Ce qui traduit que l'algorithme prend n soit lorsque le vecteur de disponibilité est égal au vecteur nul, soit lorsque tous les sommets sont colorés.
Figure 2.1 Organigramme d'un exemple d'algorithme glouton [1]
2.2.2 Recherche tabou
La recherche tabou a été introduite par Glover comme une nouvelle stratégie pour échapper aux optima locaux en utilisant une notion de mémoire. L'exploitation du voisinage permet de se déplacer de la solution courante vers sa meilleure voisine (celle ci n'ayant pas forcément une
Approches heuristiques
qualité meilleure que la solution courante). Pour éviter de cycler entre un optimum local et sa meilleure voisine, la méthode interdit de se déplacer vers une solution récemment visitée. Pour cela, une liste tabou contenant les attributs des dernières solutions visitées est tenue à jour.
Chaque nouvelle solution considérée enlève de cette liste la solution la plus anciennement visitée. Ainsi, la recherche de la solution courante suivante se fait dans le voisinage de la solution courante sans considérer les solutions appartenant à la liste tabou. Néanmoins, la taille de cette liste est un paramètre de la méthode qui s'avère dicile à régler.De même, cette stratégie nécessite de dénir un critère d'arrêt [28].
Exemple : ceci est un exemple d'algorithme tabou présenté par Jin-Kao Hao [29]. Le PAF a été déni en considérant les stations. Pour minimiser les interférences entre les cellules, une matrice recueille le niveau d'interférences co-station ou co-site et le niveau d'interférences stations adjacentes. L'algorithme qui a été proposé, a naturellement pour but de minimiser le niveau global d'interférences lors de l'aectation. Le nombre de fréquences attribuées à chaque station n'est pas xe, il est fonction du trac. Voici comment il se décrit :
• la conguration : une aectation respectant les tracs et les contraintes de co-station ;
• fonction de voisinageN :S ←2S >: s et s' voisins s'ils dièrent par la valeur d'une seule fréquence en conit d'une station ;
• liste tabou : attribut _memoris=< station;ancienne_val_de_f rquence >;
• la longueur de la liste tabou : une fonction linéaire de la taille du voisinage ;
• évaluation incrémentale des congurations : valeur d'évaluation de chaque mouvement possible (une matrice∆ dew×k) ;
• aspiration : accepter tout mouvement conduisant à une conguration de qualité supé- rieure à la meilleure conguration rencontrée ;
étape 1 (initialisation)
• choisir une solution initiales∈S;
• mémoriser la meilleure solution trouvées∗ ←s;
• initialiser les structures de données (liste tabou, matrice∆. . .) ;
Approches heuristiques
étape 2 (choix et terminaison)
• choisir un des meilleurs voisins non tabous0∈N(s)tq∀s”∈N(s), f(s0)< f(s”);
• s←s0 (même si s' est moins performant que s) ;
• terminer si max_itérest eectué(ou si s n'est plus améliorée pendant max_itér) ;
• s∗ ←ssif(s)< f(s∗);
• rendre le dernier mouvement tabou pendant k itérations ;
• mettre à jour d'autres structures de données (matrice∆. . .) ;
• aller à l'étape 2.
2.2.3 Algorithme génétique
Les algorithmes génétiques simulent le processus d'évolution d'une population. À partir d'une population de N solutions du problème représentant des individus, on applique des opérateurs simulant les interventions sur le génome telles que le croisement(crossover) ou la mutation pour obtenir une population de solutions de mieux en mieux adaptées au problème. Cette adaptation est évaluée grâce à la fonction objectif associée au problème d'optimisation [28].
Exemple d'algorithme génétique : l'exemple d'algorithme que nous présentons ici a été proposé par Boudina Ikram et Taleb Soumia Imane [30] pour le développement d'un outil d'optimisation pour l'allocation des fréquences dans le réseau GSM. Plus précisément, cet algorithme consiste à choisir un plan de fréquence optimal de sorte à minimiser les in- terférences Co-canal et canaux adjacents. Initialement, un ensemble de solutions est généré aléatoirement ; chaque solution représentant un chromosome. La représentation se fait en nombres réels tel que chaque gène représente la fréquence BCCH d'une cellule donnée. Par exemple, le premier gène représente la fréquence BCCH de la première cellule, le deuxième gène pour la fréquence BCCH de la deuxième cellule etc.
La gure ci-dessus montre un exemple de chromosome, pour cette solution la fréquence BCCH pour la première cellule est égale à 810, à 830 pour la deuxième cellule, etc. Les diérentes étapes de cet algorithme génétique se présentent comme suit :
Approches heuristiques
• étape 1 : générer la population initiale P de taille N aléatoirement ;
• étape 2 : évaluer toutes les solutions dans P ;
• étape 3 : sélectionner les deux parents en utilisant la "sélection binaire par tournoi"
( elle consiste à tirer au hasard deux solutions de la population P puis sélectionner la solution avec le rang le plus élevé) ;
• étape 4 : générer deux solutions enfants par le croisement des deux solutions parents avec une probabilité Pc ;
• étape 5 : exécuter l'opérateur de mutation avec une probabilité Pm pour chaque solution enfant ;
• étape 6 : ajouter les deux solutions enfants dans la population suivante G ;
• étape 7 : répéter les étapes de 3 à 6 pour obtenir N solutions enfants dans G ;
• étape 9 : répéter les étapes de 2 à 7 jusqu'à atteindre le nombre d'itérations.
2.2.4 Colonie de fourmis
L'idée est de représenter le problème à résoudre sous la forme de la recherche d'un meilleur chemin dans un graphe, appelé graphe de construction, puis d'utiliser des fourmis articielles pour rechercher de bons chemins dans ce graphe. Le comportement des fourmis articielles est inspiré des fourmis réelles :elles déposent des traces de phéromone sur les composants du graphe de construction et elles choisissent leurs chemins relativement aux traces de phéromone précédemment déposées ; ces traces sont évaporées au cours du temps. Intuitivement, cette communication indirecte via l'environnement connue sous le nom de stigmergie fournit une information sur la qualité des chemins empruntés an d'attirer les fourmis et d'intensier la recherche dans les itérations futures vers les zones correspondantes de l'espace de recherche.
Ce mécanisme d'intensication est combiné à un mécanisme de diversication, essentiellement basé sur la nature aléatoire des décisions prises par les fourmis, qui garantit une bonne exploration de l'espace de recherche. Le compromis entre intensication et diversication peut être obtenu en modiant les valeurs des paramètres déterminant l'importance de la phéromone [31].
Les fourmis articielles ont aussi d'autres caractéristiques, qui ne trouvent pas leur équi- valent dans la nature. En particulier, elles peuvent avoir une mémoire, qui leur permet de
Programmation par contraintes
garder une trace de leurs actions passées. Dans la plupart des cas, les fourmis ne déposent une trace de phéromone qu'après avoir eectué un chemin complet, et non de façon incrémen- tale au fur et à mesure de leur progression. Enn, la probabilité pour une fourmi articielle de choisir un arc ne dépend généralement pas uniquement des traces de phéromone, mais aussi d'heuristiques dépendantes du problème permettant d'évaluer localement la qualité du chemin [31].
2.2.5 Recuit simulé
Le recuit simulé est une technique d'optimisation de type Monte-Carlo généralisé à laquelle on introduit un paramètre de température qui est ajusté pendant la recherche.Elle s'inspire des méthodes de simulation de Metropolis (années 50) en mécanique statistique. La méthode du recuit simulé, appliquée aux problèmes d'optimisation, considère une procédure d'exploitation du voisinage qui permet de se diriger vers une solution voisine de moins bonne qualité avec une probabilité non nulle. Ceci permet d'échapper aux optima locaux. Au début de l'algorithme, un paramètre T est déterminé et décroît tout au long de l'algorithme pour tendre vers 0. De la valeur de ce paramètre dépend la probabilité p d'acceptation des solutions détériorantes (plus la température T décroit, plus cette probabilité diminue) [28].
L'intérêt du recuit simulé est qu'il existe une preuve de la convergence asymptotique. Ainsi, lorsque certaines conditions sont vériées (schéma de décroissance particulier de T), on a la garantie d'obtenir la solution optimale. Malheureusement, le paramétrage recommandé par la théorie n'est pas réaliste et il faut beaucoup de temps pour arriver à paramétrer ces méthodes.
Cette méthode peut, elle aussi, nécessiter un critère d'arrêt, dans le cas, où le paramétrage
"optimal" n'a pas été trouvé [28]. Dans ce travail, nous utilisons la programmation par contraintes, approche qui a été peu utilisée pour le MI-FAP.
2.3 Programmation par contraintes
La programmation par contraintes fait partie des méthodes de programmation déclarative, entre l'Intelligence Articielle, l'optimisation et l'algorithmique. Dans ce chapitre, nous dé- crivons les notions d'heuristique , de recherche locale et de programmation par contraintes.
2.3.1 Heuristiques
Soitgune fonction qui donne la distance réelle (exacte) de tous les autres points d'un réseau en partant d'un point A pris comme origine telle que g(A) = 0. Une fonction heuristique
Programmation par contraintes
f permettant de déterminer la distance de A aux autres points peut être la distance à vol d'oiseau de ces points à A. SiB est un point du réseau, on aura f(B)' g(B). Une fonc- tion heuristique est donc une estimation de la fonction exacte. l'impossibilité de la résolution soit à un temps de calcul très élevé, on pourra utiliser une méthode heuristique qui don- nera une solution approchée de qualité raisonnable au problème. On pourrait donc juger de la qualité(bonne ou mauvaise) d'une heuristique sur la base de quelques caractéristiques à savoir :
• la complexité (temps d'exécution) raisonnable idéalement polynomiale ou tout au moins ecace en pratique ;
• la robustesse : sa capacité à fournir le plus souvent une solution proche de l'optimum ;
• la faible probabilité de donner une solution de qualité mauvaise ;
• la simplicité de mise en oeuvre.
Recherche locale : pour un problème d'optimisation combinatoire comme le PAF, il y a un espace de solutions assez grand qui ne saurait être parcouru en un temps raisonnable.
La recherche locale permet de rechercher dans cet espace de solutions vastes, un optimum en reliant des solutions entre elles par des rapports de voisinage. Une solution est reliée à un ensemble de solutions qui lui sont voisines où le choix de la prochaine solution courante se fait suivant une procédure exploitant ce rapport de voisinage. Le rapport de voisinage est donc le paramètre d'une recherche locale. En eet, une fonction objectiff est dénie pour évaluer les solutions. Pour une solution courantex, il faudrait choisir à chaque itération une solutionx∗dans l'ensemble de ses solutions voisines telle que f(x∗)< f(s)ouf(x∗)> f(s) selon que l'objectif est de minimiser ou de maximiserf. Dans le cas du PAF, on cherche à minimiser la fonction objectif. Une méthode de recherche locale est diérente d'une autre en la manière dont ce rapport de voisinage est exploité pour choisir la solution suivante, le but étant de trouver en dénitif une solution proche de la meilleure solution. La recherche locale est donc une heuristique.
En recherche locale, les heuristiques étant basées sur le rapport de voisinage, il survient parfois le blocage en optimum local. Ce blocage est dû au fait que la recherche s'arête lorsque dans le voisinage dex, il n'y a aucune solutionx∗ telle quef(x∗)< f(x)par exemple dans le domaine du PAF et retourne donc l'optimum localxcomme la meilleure solution possible alors que la vraie meilleure solution est l'optimum global (Voir gure 2.2).
Programmation par contraintes
Figure 2.2 Illustration de la notion d'optimum local et d'optimum global [2]
2.3.2 Brève description de la programmation par contraintes
La programmation par contraintes est une technique de programmation issue de l'intelligence articielle et de la recherche opérationnelle. Elle permet de résoudre de manière exacte ou approchée les problèmes combinatoires de grande taille. Elle pourrait très coûteuse en temps parce qu'elle parcourt potentiellement un grand nombre de combinaisons avant d'en trouver une qui satisfasse toutes les contraintes ou qui soit la meilleure. C'est pour cela on peut introduire des heuristiques pour réduire les combinaisons et guider la recherche vers de bonnes solutions. Il sura de bien dénir le problème et l'ordinateur le résout.
La programmation par contraintes permet de résoudre les Problèmes de Satisfaction de Contraintes (CSPs pour Contraints Satisfaction Problems en anglais). Pour bien dénir un CSP, il est modélisé en trois parties : l'ensemble des variables, le domaine des variables et les contraintes. En eet, les contraintes sont posées avec des variables de l'ensemble des variables et qui prennent des valeurs dans chacun de leurs domaines. Cette modélisation donne un triplet(X, D, C)où :
• X est l'ensemble des variables, soitX ={X1, X2, . . . , Xn} pournvariables ;
• D est la fonction qui associe chaque variable Xi à son domaineD(Xi)c'est-à-dire les valeurs qu'elle peut prendre ;
Comparaison des méthodes de résolution
• C est l'ensemble des contraintes, soit C = {C1, C2, . . . , Ck}, chaque contrainte étant une relation entre les variables.
La résolution d'un CSP implique une aectation et une instanciation. Une aectation est l'ensemble des domaines courants de toutes les variables et une instanciation assigne une valeur de son domaine à une variable [32]. Pour résoudre certains CSPs il est possible de violer quelques contraintes, là on parle de sur-contrainte, il va falloir alors trouver des solutions qui violent le moins de contraintes. Lorsque c'est possible de faire une résolution en satisfaisant toutes les contraintes,on parle de sous-contrainte et la solution trouvée qui est une aectation totale et consistante.
2.4 Comparaison des méthodes de résolution
Nous faisons un tableau comparatif des méthodes précitées pour déterminer celle qui nous correspond.
Méthodes Avantages Inconvénients
Méthodes
exactes Recherche des bornes pour re- duire l'espace de solutions, fa- vorise l'optimalité de la solu- tion
Trop coûteux en temps, pas facilement adaptable, ne ré- sout que des problèmes par- ticuliers
Méthodes heu- ristiques
Moins coûteux en temps, plus ou moins adaptable, plusieurs résolutions de pro- blèmes combinatoires ou non.
Blocage en optima locaux, ne garantit pas l'optimalité
Programmation
par contraintes Moins coûteux en temps, pos- sibilité d'utiliser la recherche locale pour guider la re- cherche vers de bonnes so- lutions, possibilité d'utiliser des heuristiques pour parcou- rir l'arbre de recherche, pos- sibilité d'utiliser les bornes déterminées avec les mé- thodes exactes sous forme de contraintes, facilement adap- table, plusieurs résolutions de problèmes combinatoires à succès
Ne garantit pas l'optimalité
Deuxième partie
Matériel et méthodes
Chapitre trois
Matériel
Dans ce chapitre, nous décrivons le matériel utilisé pour résoudre le problème.
3.1 Outils et choix techniques
Nous décrivons ici les outils utilisés pour résoudre le PAF. Nous avons utilisé le solver OscaR programmé en scala. L'EDI utilisé est IntelliJ IDEA.
3.1.1 Solveurs
Pour faire de la programmation par contraintes, il y a beaucoup de solveurs disponibles. Nous présentons ici trois solveurs : IBM ILOG CP Optimizer, Oracle ACT, OscaR.
IBM ILOG CP Optimizer
IBM ILOG CP Optimizer est un optimiseur de modèle et d'exécution basé sur la programma- tion par contraintes qui résout les problèmes de satisfaction de contraintes et d'optimisation.
Un accent particulier est mis sur la modélisation et la résolution des problèmes de planica- tion pour lesquels CP Optimizer fournit des concepts de modélisation simples mais expressifs tels que les intervalles, les fonctions et les séquences. Pour de nombreuses applications, la recherche automatique robuste et ecace de CP Optimizer évite à l'utilisateur d'écrire et de gérer sa propre stratégie de recherche. Cependant, pour les applications nécessitant des algo- rithmes de propagation spéciaux et des stratégies de recherche dédiées, CP Optimizer permet également de dénir des contraintes personnalisées, ainsi qu'un contrôle total du processus de recherche de la solution.
Il ore des contraintes globales telles que l'arithmétique et la logique, les tables, les contraintes réiées, l'inverse etc.
La recherche automatique basée sur les arbres de recherche, les redémarrages, les impacts, le non-bon apprentissage, la recherche dans le large voisnage, la relaxation linéaire, les algo- rithmes évolutifs et l'apprentissage automatique En C ++, API disponible pour l'utilisateur