Colorations identiantes de graphes
|
|
|
- Anne-Sophie Dupont
- il y a 10 ans
- Total affichages :
Transcription
1 Institut Supérieur d'informatique, de Modélisation et de leurs Applications Campus des Cézeaux avenue des Landais BP 05 7 AUBIERE Cedex Laboratoire d'analyse et d'architecture des Systèmes 7 avenue du Colonel Roche BP Toulouse cedex Rapport d'ingénieur Stage de ème année Filière Calcul et Modélisation scientiques Colorations identiantes de graphes Présenté par : Pierre COUPECHOUX Responsable LAAS : Julien MONCEL Responsable ISIMA : Philippe MAHEY septembre 0 Stage de 5 mois
2
3 Remerciements Je tiens tout d'abord à remercier Julien Moncel, mon tuteur de stage, pour avoir mis à ma disposition plusieurs livres, et pour les conseils qu'il m'a donnés, tout au long de mon stage. Je remercie aussi Christian Artigues, chef de l'équipe ROC, pour son implication dans la validation de la thèse à venir à la suite du stage. Je remercie plus généralement l'ensemble de l'équipe ROC, pour l'accueil sympathique que j'ai reçu au sein du LAAS, et pour le challenge proposé pendant la journée d'équipe. i
4 ii
5 Résumé Les colorations identiantes sont un sujet assez récent en théorie des graphes. Le but de ce stage de recherche était d'obtenir une bibliographie aussi large que possible, et d'explorer ce domaine de la théorie des graphes en étudiant des questions de la littérature. J'ai pu travailler ce sujet avec une session sur le réseau informatique du LAAS, sous une version d'ubuntu. J'ai eu l'occasion de créer plusieurs programmes en C/C++, ainsi que des scripts bash. Mes travaux m'ont permis d'améliorer un résultat et répondre à une question de Parreau. J'ai également commencé à explorer deux nouvealles questions liées aux colorations identiantes. Mots-clés : coloration identiante, théorie des graphes, C/C++, bash Abstract Identifying coloring of graphs is a fairly recent topic in graph theory. The purpose of this internship was to get a wide bibliography and explore this part of graph theory. I worked with a computer session of the LAAS network, using Ubuntu. I created some C/C++ programs, and bash scripts. My work allowed me to improve a result and answer a question of Parreau. I also addressed two new questions on identifying colorations. Keywords : identifying coloring, graph theory, C/C++, bash iii
6 iv
7 Table des matières Introduction Contexte et sujet du stage. Présentation du laboratoire Le CNRS Le LAAS L'équipe ROC Origine du sujet de stage Domination Identication Lien vers les colorations identiantes Colorations identiantes de graphes Principaux résultats sur les colorations globalement et localement identiantes Diérents types de coloration Travail réalisé Cycles universels 7. Séquences de de Bruijn Dénition Cas particulier pour les cycles universels d'ordre Résultats Construction des cycles universels Relation d'équivalence Types Graphe associé aux types Cycles universels avec répétition Nouvelles questions ouvertes 5. Suppression d'un sommet Conjecture Arbres innis Treillis des couleurs Nouveaux problèmes Problème de modication des couleurs Problème du sous-graphe identié Heuristique Retour à un cadre général v
8 .. L'identication Continuité du stage Conclusion 7 Bibliographie 8 A Résumé des résultats de la littérature I A. [AGS] I A. [HM] I A. [WW08] II A. [BKT] III A.5 [PW] III A. [TCSW] V B Codes et scripts VII vi
9 Table des gures Les 0 instituts du CNRS Le LAAS Exemple de dominant d'un graphe. Le dominant est constitué des sommets rouges ; tout sommet est soit rouge soit voisin d'au moins un sommet rouge... 5 Exemple de code identiant. Les sommets du code sont coloriés en noir Exemples de graphes tels que χ id (G) = V Exemple de graphe tel que χ id (G) = log ( V + ) Exemple de coloration localement identiante d'une grille avec couleurs Graphe extrémal pour la coloration localement identiante Exemple d'une coloration localement identiante avec couleurs d'un graphe biparti Colorations optimums pour quelques graphes cycliques. Celles-ci respectent le motif donné par l'expression régulière fournie par Parreau Capture d'écran du programme graphique réalisé Graphe de de Bruijn B(, ) Une suite de de Bruijn obtenue par un circuit hamiltonien du graphe de la Figure Un cycle universel d'ordre sur l'alphabet [, 8]. Chaque sous-ensemble à trois éléments distincts de [, 8] apparaît exactement une fois comme suite de sommets successifs Exemple d'amélioration des cycles universels pour les colorations globalement identiantes Exemples d'ensembles équivalents pour L = 8 couleurs Liste des ensembles à éléments de [0, L ] et leur type associé. Pour plus de clarté, les ensembles {i, j, k} (i j k) sont représentés ijk. Les types sont indiqués en gras Graphe orienté des types pour L = Exemple de cycle universel avec répétition qui n'est pas une coloration globalement identiante. Un doublon a été mis en évidence, mais il en existe d'autres.. 0 Graphes obtenus après le choix des types Cycle obtenu pour L = 8 en appliquant 8 fois la somme des sommets du circuit eulérien C Construction d'un cycle contenant tous les ensembles représentés par les types du graphe pour L = Insertion de nouveaux ensembles dans le cas L impair vii
10 Cycle obtenu dans la deuxième partie pour L = 8 couleurs. Si l'on retire l'un des sommets verts, la coloration reste une coloration globalement identiante. Si l'on retire un sommet noir, alors on obtient un doublon Un graphe G muni d'une coloration globalement identiante. Les valeurs inscrites dans les sommets sont celles de la coloration, et les valeurs inscrites à côté sont les noms des sommets Valeurs de la fonction f sur le graphe de la Figure Arbre construit à partir de la fonction f de l'exemple de la Figure 5, en choisissant une racine étiquetée par a Treillis associé à l'exemple de la Figure 5. Les ensembles de couleurs du voisinage de chaque sommet sont indiqués à côté de chaque sommet, sous forme de mot Treillis associé à l'exemple de la Figure 5, coloré. Les ensembles de couleurs du voisinage de chaque sommet sont indiqués à côté de chaque sommet, sous forme de mot. Les sommets blancs sont les sommets que l'on peut retirer dans le graphe d'origine sans créer de collisions. Les sommets rouges sont ceux que l'on ne peut pas retirer sans créer de collision Un graphe G muni d'une coloration quelconque, qui n'est pas globalement identiante. Il y a deux collisions, entre les sommets dont les ensembles de couleurs sont écrits en rouge Modication d'une couleur par rapport au graphe de la Figure 0 pour essayer de faire disparaître une collision Solution optimale du problème de modication des couleurs, par rapport au graphe initial de la Figure Solution optimale du problème du sous-graphe identié, par rapport au graphe initial de la Figure
11 Introduction Le thème de recherche sur lequel j'ai travaillé au LAAS est la coloration identiante de graphes. Le principe est de donner une couleur à chacun des sommets d'un graphe, pour que chaque sommet voie un ensemble de couleurs unique. Le document sur lequel je me suis le plus basé est le mémoire de thèse d'aline Parreau, daté de juillet 0. Le sujet est assez récent, mais on trouve tout de même plusieurs articles sur le sujet. Dans un premier temps, je me suis familiarisé avec les notions en jeu, et j'ai pris connaissance des divers résultats actuels. À l'aide d'un papier et d'un crayon, j'ai pu me rendre compte quelles étaient les dicultés, et où se situaient les problèmes. Dans un second temps, j'ai créé un programme qui me permettait de faire beaucoup plus rapidement ce que je faisais à la main, et de manière plus dynamique. Ceci m'a permis de partiellement répondre à une question ouverte de la thèse d'aline Parreau, en utilisant des cycles universels. J'ai aussi pu, en constatant divers phénomènes, énoncer une conjecture et poser deux nouveaux problèmes. Dans ce rapport, je commencerai par situer les colorations identiantes dans la théorie des graphes. Je présenterai ensuite les améliorations que j'ai apportées aux cycles universels dans le cadre des coloration identiantes, en expliquant d'où viennent ces améliorations. Enn, j'exposerai une conjecture et deux problèmes, ainsi que diérentes pistes que j'ai suivies pour les aborder.
12 Contexte et sujet du stage. Présentation du laboratoire.. Le CNRS Source : Site du CNRS [CNR] Le Centre National de la Recherche Scientique (CNRS) est un organisme public de recherche (Etablissement public à caractère scientique et technologique, placé sous la tutelle du Ministère de l'éducation nationale, de l'enseignement supérieur et de la Recherche). Il produit du savoir et met ce savoir au service de la société. Sa gouvernance est assurée par Alain Fuchs, président du CNRS, assisté de deux directeurs généraux délégués, Philippe Baptiste à la science et Xavier Inglebert aux ressources. Avec près de 000 personnes (dont 955 statutaires - 0 chercheurs et 75 ingénieurs, techniciens et administratifs), un budget pour 0 de, milliards d'euros dont 89 millions d'euros de ressources propres, une implantation sur l'ensemble du territoire national, le CNRS exerce son activité dans tous les champs de la connaissance, en s'appuyant sur plus de 00 unités de recherche et de service. Figure Les 0 instituts du CNRS. Des chercheurs éminents ont travaillé, à un moment ou à un autre de leur carrière, dans des laboratoires du CNRS [LAU]. Avec 9 lauréats du prix Nobel et de la Médaille Fields,
13 Figure Le LAAS. le CNRS a une longue tradition d'excellence. Le CNRS a été créé en 99, en cherchant à regrouper tous les organismes d'état, non spécialisés, de recherche fondamentale ou appliquée, et de coordonner les recherches à l'échelon national. Les premières années sont orientées vers les recherches appliquées (militaires jusqu'à l'armistice, économiques jusqu'en 9). Après 95, l'organisme s'oriente nettement vers la recherche fondamentale. Aujourd'hui, le CNRS mène des recherches dans l'ensemble des domaines scientiques, technologiques et sociétaux, regroupés au sein de 0 instituts (voir Figure )... Le LAAS Le Laboratoire d'analyse et d'architecture des Systèmes (LAAS), situé à Toulouse, est rattaché à l'institut des Sciences de l'ingénierie et des Systèmes (INSIS) et à l'institut des Sciences de l'information et de leurs Interactions (INSI). Le LAAS mène des recherches dans 8 domaines scientiques : Informatique critique ; Réseaux et communications ; Robotique ;
14 Décision et optimisation ; Hyperfréquences et optique : de l'électromagnétisme aux systèmes ; Nano ingénierie et intégration ; Micro nano bio technologies ; Gestion de l'énergie. Ces domaines sont recouverts par équipes de recherche, pour un total de personnes (hors stagiaires). En 0, ces personnes sont à l'origine de 0 publications... L'équipe ROC Les travaux de l'équipe Recherche Opérationnelle, Optimisation Combinatoire et Contraintes (ROC) se situent dans des branches de la recherche opérationnelle et de l'intelligence articielle ; ils correspondent donc parfaitement au master recherche MAD de l'isima. L'équipe ROC est constituée de membres permanents, doctorants (pour l'année 0/0), 7 stagiaires (pendant l'été 0), et une doctorante invitée. Parmi les problèmes qu'elle traite, on trouve : Des problèmes de satisfaction de contraintes (CSP, pour Constraint Satisfaction Problem) [HOO0] [LETH] ; Des problèmes d'ordonnancement (scheduling en anglais) [KALM] [OBB] ; Des problèmes de programmation en nombres entiers (MILP pour Mixed Integer Linear Programming) [JLS] [KALM] ; Des problèmes d'allocation de ressources [HAC] [KAHM] ; Des problèmes de tournée de véhicules [GAFJ0] [NPC] ; Des problèmes d'optimisation combinatoire sur les graphes [BMP] [GKM + ] ;. Origine du sujet de stage.. Domination En théorie des graphes, le problème de domination est très classique, et a été très étudié [AL78][HHS98] (le premier étant l'un des plus anciens articles à ce sujet, et le second une célèbre monographie). Un dominant d'un graphe (ou ensemble dominant, ou code couvrant) est un ensemble de sommets D tel que chaque sommet qui n'est pas dans D possède au moins un voisin qui est dans D. Le problème de domination consiste à trouver un dominant de taille minimum (l'ensemble de tous les sommets du graphe étant un dominant trivial). La Figure montre un exemple de dominant d'un graphe.
15 Le problème suivant a été montré NP-complet [GJ79] : DOMINATION_DEC : Instance : Un graphe G, un entier k Question : Existe-t-il un dominant D de G tel que D k? Figure Exemple de dominant d'un graphe. Le dominant est constitué des sommets rouges ; tout sommet est soit rouge soit voisin d'au moins un sommet rouge. L'ensemble des voisins d'un sommet u, appelé voisinage ouvert, est noté N(u) (il faut cependant bien voir que cette notation dépend du graphe duquel u est issu). Le voisinage fermé d'un sommet u, noté N[u], est le voisinage ouvert du sommet, auquel on ajoute le sommet u. Avec ces termes, on peut redénir un dominant D d'un graphe G = (V, E) comme étant un sous-sensemble des sommets du graphe tel que : u V, N[u] V. Dans les applications, les applications de ce problème sont nombreuses. On peut par exemple imaginer la surveillance d'un musée par des caméras, le but étant de surveiller la totalité du musée, avec un nombre minimal de caméras. On peut modéliser ce problème de façon très simple : les sommets du graphe sont les pièces du musée, et deux sommets sont voisins si une caméra posée dans l'une des deux pièces peut voir la seconde. Trouver une répartition optimale des caméras correspond exactement à trouver un ensemble dominant du graphe, de cardinalité minimum. Puisque DOMINATION_DEC est NP-complet, et donc NP-dicile, les autres problèmes de la classe NP peuvent se réduire à un problème de domination... Identication La domination n'est cependant pas toujours une propriété susante. Par exemple, si on veut surveiller d'éventuelles pannes dans un réseau, modélisé par un graphe, il est intéressant, non seulement d'avoir une vue sur tout le graphe (propriété de domination), mais aussi de pouvoir localiser la panne. C'est de ce constat qu'ont été créé les codes identiants, en 998 [KCL98]. Dans ce contexte, un code désigne un sous-ensemble des sommets du graphe ; d'où l'appellation code couvrant pour parler d'un ensemble dominant. Avant de dénir ce qu'est un code identiant, il faut dénir la notion de séparation : Dénition (Sommet séparant). Un sommet x sépare deux sommets u et v s'il est dans la diérence symétrique de leur voisinage fermé : x N[u] N[v]. Dénition (Code séparant). Un code C est dit séparant si toutes les paires de sommets du graphe sont séparées par au moins un sommet de C. 5
16 Finalement, on peut dénir simplement un code identiant : Dénition (Code identiant). Un code identiant est un code couvrant et un code séparant. Un code identiant correspond au cas concret d'un réseau multiprocesseurs dans lequel on voudrait détecter et identier les processeurs défectueux. Cela reviendrait à choisir des processeurs (le code, en terme graphes), qui renverraient un signal pour dire que tous les processeurs autour d'eux ainsi qu'eux-mêmes sont fonctionnels. Si tous les processeurs du code renvoient bien un signal, cela veut dire qu'il n'y a aucune panne (propriété de domination, tous les processeurs sont surveillés). Si au moins un des processeurs du code indique qu'il y a une panne, alors on peut identier quel est le processeur défectueux (propriété de séparation). La gure donne un exemple de code identiant. Le tableau indique, pour chaque sommet, quels sont les éléments du code dans son voisinage ; on constate bien que toutes les lignes sont diérentes. v v v C v v V v v v - v - v - - v - - v 5 v v v 5 v Figure Exemple de code identiant. Les sommets du code sont coloriés en noir. Depuis leur création, les codes ont été très étudiés (on peut par exemple citer la thèse de Julien Moncel [Mon05]). Des articles présentent diverses applications, comme c'est le cas de [RSTU0] et de [SRP + 0]... Lien vers les colorations identiantes C'est sur cette notion de code identiant qu'est basée celle de coloration identiante. Elle a été proposée en 009 par Eric Duchêne et Julien Moncel lors de la semaine discrète de l'institut Fourier. L'idée est toujours de pouvoir identier les sommets de manière unique, non pas grâce à un sous-ensemble de sommets comme dans le cas des codes, mais avec un ensemble de couleurs, que l'on obtient en coloriant les sommets du graphe. Cette coloration particulière, qui sera dénie plus loin, est nommée coloration globalement identiante.
17 Il existe aussi des notions plus anciennes de colorations identiantes, qui colorient les arêtes et non pas les sommets [RS08]. Dans la partie., je donnerai des exemples de diérentes colorations identiantes possibles. Les résultats obtenus pour ces colorations sont donnés dans l'annexe A.. Colorations identiantes de graphes Dans sa thèse [Par], Aline Parreau a étudié deux types de colorations identiantes. Toutes les deux reposent sur une coloration des sommets. Dénition (Coloration de sommets). Une coloration c des sommets d'un graphe G = (V, E) est une fonction de V dans N. La valeur c(v) pour un sommet v du graphe est alors appelée la couleur de v. Si A est un ensemble de sommets, on note alors c(a) = v Ac(v). En général, par souci de clarté, on choisit c de telle sorte que c(v ) = [, n] ou c(v ) = [0, n ]. Le problème certainement le plus célèbre lié aux colorations de sommets consiste à trouver une coloration propre (le théorème des couleurs [co] dans le cas des graphes planaires). C'est pour cette raison qu'on trouve parfois dans la littérature l'emploi abusif du terme coloration pour désigner une coloration propre. Dénition 5 (Coloration propre). Une coloration propre est une coloration d'un graphe G = (V, E) telle que deux sommets voisins n'aient pas la même couleur. An de faciliter les dénitions à venir, je vais introduire quelques notations. Pour v un sommet d'un graphe, on note N(v) son voisinage ouvert, c'est à dire l'ensemble de tout ses voisins, et N[v] son voisinage fermé, auquel on ajoute le sommet v (N[v] = N(v) {v}). Dénition (Coloration globalement identiante). Une coloration globalement identiante est une coloration c d'un graphe G = (V, E) telle que : u, v V, u v c(n[u]) c(n[v]) Dénition 7 (Coloration localement identiante). Une coloration localement identiante est une coloration propre telle que : (u, v) E, c(n[u]) c(n[v]) 7
18 C'est sur ces deux premières colorations qu'a travaillé Aline Parreau dans sa thèse, et sur lesquelles j'ai moi-même travaillé. Dans les cas, on cherche à utiliser un nombre de couleurs minimum. Le nombre chromatique χ(g) d'un graphe G est le nombre minimum de couleurs d'une coloration propre de G. La déclinaison de ce nombre dans le cas de la coloration globalement identiante (resp. coloration localement identiante) est notée χ id (G) (resp. χ lid (G)). Si on peut obtenir d'un graphe une coloration globalement identiante (resp. localement) avec k couleurs, on dira que le graphe est k-id-coloriable (resp. k-lid-coloriable). La coloration en question sera une k-id-coloration (resp. k-lid-coloration)... Principaux résultats sur les colorations globalement et localement identiantes Avant même de pouvoir parler du nombre minimal de couleurs pour avoir une coloration globalement ou localement identiante, il faut être sûr que celle-ci existe. Or, ce n'est pas toujours le cas. Dénition 8 (Sommets jumeaux). Deux sommets u et v d'un graphe sont dits jumeaux si N[u] = N[v]. Il est clair qu'en présence de tels sommets, on ne pourra pas avoir de coloration globalement ou localement identiante, car quel que soit c, on aura c(n[u]) = c(n[v]). Pour résoudre ce problème, on peut modier la dénition des colorations (il faut seulement séparer les sommets non jumeaux), ou travailler avec des graphes sans jumeaux. On connaît des bornes serrées sur χ id, en fonction du nombre de sommets du graphe. Théorème (Parreau). Soit G un graphe connexe sans jumeaux. Alors log ( V + ) χ id (G) V En eet, avec k couleurs, on peut identier au plus k sommets diérents (un sommet possède au moins une couleur dans son voisinage, la sienne), d'où la première inégalité. En donnant une couleur diérente à chaque sommet, on obtient une coloration globalement identiante, d'où la seconde inégalité. On sait caractériser les graphes qui vérient χ id (G) = V. Il va d'abord falloir dénir plusieurs notations : Dénition 9 (Joint de deux graphes). Soit G = (V, E ) et G = (V, E ) deux graphes. Le joint de G et G, noté G G, est le graphe ayant pour sommets l'ensemble V V et pour arêtes l'ensemble E E {(u, v) : u V, v V }. 8
19 Dénition 0 (Puissance d'un graphe). Soit G = (V, E) un graphe et k un entier. La puissance k-ème du graphe G, notée G k, est le graphe ayant pour sommets l'ensemble V, et tel que deux sommets u et v sont adjacents si et seulement si la distance de u à v dans le graphe G est inférieure ou égale à k. Le chemin consistué de k sommets est noté P k. Le graphe complet (tout sommet est voisin de tous les autres) constitué de k sommets est noté K k. Le complémentaire d'un graphe G, noté G, est le graphe dont les sommets sont ceux de G et où (u, v) est une arête si et seulement si (u, v) n'est pas une arête de G. Un couplage d'un graphe est un ensemble d'arêtes qui n'ont aucun sommet en commun. Un couplage maximum d'un graphe est un couplage contenant le plus grand nombre d'arêtes possible. Théorème (Parreau). Il y a équivalence entre les deux propriétés :. χ id (G) = V. G est un graphe complet privé d'un couplage maximum, ou G est de la forme G = K G... G l, avec G i = K ou G i = P k k i [, l]. La Figure 5 montre deux exemples de tels graphes. On peut en eet montrer que tous les sommets doivent être coloriés avec des couleurs diérentes pour obtenir une coloration globalement identiante. Supposons que l'on ait une k-id-coloration du premier graphe, avec k < 5. Alors il existe au moins deux sommets qui ont la même couleur. Notons les u et v. Au moins l'un des deux n'est pas voisin de tous les sommets du graphe (sinon, le couplage ne serait pas maximum). Considérons par exemple que u n'est pas voisin de tous les autres sommets. Il existe donc un unique u tel que (u, u ) n'est pas une arête du graphe. u et u sont voisins avec tous les autres sommets, et N[u] N[u ]. Si u = v, alors notons V = V \ {u, u }. c(n[u]) = c(v ) {c(u)}, et c(n[u ]) = c(v ) {c(u )} ; donc c(n[u]) = c(n[u ]) (car u et v ont la même couleur), ce qui est absurde. Si u = v, alors appelons v le sommet qui n'est pas relié à v s'il existe, ou posons v = v si v est voisin de tous les autres sommets. Dans les deux cas, c(n[v ]) = c(v ) et N[v ] N[u ]. De plus u est relié à tous les sommets sauf u, qui est de la même couleur que v. Donc c(n[u ]) = c(v ), ce qui est absurde. On peut construire des graphes qui au contraire possèdent une coloration globalement identiante avec très peu de couleurs. C'est le cas du graphe de la Figure. Les couleurs sont notées à l'intérieur des sommets, et pour chaque sommet u gure c(n[u]), sous forme d'un mot pour plus de lisibilité. On trouve beaucoup plus de résultats concernant les colorations localement identiantes que les colorations globalement identiantes. Ceci s'explique par le fait que la version locale permet, lorsque l'on travaille sur un sommet u en particulier, de ne regarder que les sommets 9
20 K 5 privé d'un couplage maximum K K P Figure 5 Exemples de graphes tels que χ id (G) = V. Figure Exemple de graphe tel que χ id (G) = log ( V + ). qui sont susamment proches de u. C'est d'ailleurs sur cette idée qui sont basés le lemme et la propriété suivante : Lemme (Parreau). Si G est un graphe connexe tel que χ lid (G), alors G a au plus sommets. Démonstration. Supposons que G a au moins sommets, et que c est une coloration localement identiante de G. Si G contient un triangle, alors il faut au moins couleurs pour le colorier (coloration propre). Sinon, considérons u et v deux voisins, qui sont de couleurs diérentes. Si la coloration n'était composée que de couleurs, alors on aurait nécessairement c(n[u]) = c(n[v]). Mais, le graphe étant connexe et sans triangle, N[u] N[v]. Il faut donc au moins couleurs pour obtenir une coloration localement identiante de G. Théorème (Parreau). Il existe une innité de graphes G tels que χ lid (G). 0
21 Démonstration. On peut par exemple considérer des grilles de taille quelconque, que l'on peut colorier comme sur la gure 7, avec seulement couleurs. On peut de plus préciser que d'après le Lemme, ces colorations sont optimum. Figure 7 Exemple de coloration localement identiante d'une grille avec couleurs. En revanche, on peut, comme dans le cas des colorations globalement identiantes, trouver des graphes qui nécessitent autant de couleurs qu'ils ont de sommets. Considérons un graphe complet, auquel on rajoute un sommet pendant à chaque sommet, sauf un, qu'on notera u. Tous les sommets de la clique issue du graphe complet ont des couleurs diérentes (coloration propre). De plus, pour séparer u des autres sommets de la clique, il faut que les sommets pendants de ceux-ci aient une couleur diérente des couleurs de la clique. Enn, si on considère v et v deux sommets de la clique, diérents de u, alors leurs sommets pendants ne peuvent pas avoir la même couleur (séparation de v et v ). v u v Figure 8 Graphe extrémal pour la coloration localement identiante Cependant, on ne sait pas caractériser les graphes G tels que χ lid (G) = V (G). Parreau a montré le théorème suivant pour les graphes -lid-coloriables : Théorème. Un graphe -lid-coloriable est soit un triangle, soit un graphe biparti.
22 Parreeau a aussi montré les deux théorèmes suivants pour les graphes bipartis : Théorème 5 (Parreau). Les graphes bipartis sont tous -lid-coloriables. Théorème (Parreau). Si un graphe biparti G = (U V, E) est -lid-coloriable et u U est tel que c(n[u]) = {,, }, alors : c(u) = c(u) c(v ) = {,, } \ {c(u)} u U, c(n[u ]) = {,, } La Figure 9 montre un exemple d'une coloration d'un graphe biparti -lid-coloriable vériant les hypothèses du Théorème. Figure 9 Exemple d'une coloration localement identiante avec couleurs d'un graphe biparti Les cycles présentent un comportement particulier face aux colorations localement identiantes. C 5 et C 7 sont les seuls à ne pas être -coloriables. En eet, on peut vérier la propriété suivante : χ lid (C 5 ) = χ lid (C 7 ) = 5 χ lid (C k ) =, si n 0[], n χ lid (C k ) =, si n 0[], n 5, n 7 Parreau donne de plus des colorations identiantes optimums des graphes C k, pour k. Celles-ci sont créées à partir de l'expression régulière : [][]() Une motif entre crochets, [M], signie que l'on peut prendre le motif M ou ne pas le prendre. (M) signie que le motif M peut-être répété autant de fois que l'on veut, ou ne pas l'utiliser... Diérents types de coloration Comme je l'ai précisé plus tôt, il existe plusieurs sortes de colorations, et a fortiori, plusieurs sortes de colorations identiantes. Pour l'instant, je n'ai parlé que de coloration de sommet. On peut aussi colorier les arêtes, ou les sommets et les arêtes.
23 C 5 5 C C 7 5 C 8 C 9 C 0 Figure 0 Colorations optimums pour quelques graphes cycliques. Celles-ci respectent le motif donné par l'expression régulière fournie par Parreau. Dénition (Coloration d'arêtes). Une coloration d'arêtes d'un graphe G = (V, E) est une fonction de E dans N. Dénition (Coloration totale). Une coloration totale est une union d'une coloration d'arêtes et d'une coloration de sommets d'un même graphe. Il est possible de dénir de nouvelles colorations identiantes à partir de ces dénitions. Dénition (Coloration localement identiante relaxée). c est une coloration localement identiante relaxée d'un graphe G = (V, E) si : c est une coloration de sommets, et (u, v) E, N[u] N[v] c(n[u]) c(n[v]) Le nombre minimum de couleurs d'une coloration localement identiante relaxée d'un graphe G est noté χ rlid (G). Les résultats portant sur cette coloration présents dans l'annexe A proviennent de [AGS].
24 Lorsque l'on rajoute la condition de coloration propre, on retrouve la dénition de la coloration localement identiante. Dénition (Coloration d'arêtes globalement identiante). c est une coloration d'arête globalement identiante si : e, e E, e et e sont adjacentes c(e ) c(e ) et u, v V, F (u) F (v), où F (u) est l'ensemble des couleurs des arêtes incidentes à u. Le nombre minimum de couleurs d'une coloration d'arêtes globalement identiante d'un graphe G est noté χ s(g). De même que pour la version de coloration des sommets, on peut dénir une version locale : Dénition 5 (Coloration d'arêtes localement identiante). c est une coloration d'arêtes localement identiantes si : e, e E, e et e sont adjacentes c(e ) c(e ) et (u, v) E, F (u) F (v), où F (u) est l'ensemble des couleurs des arêtes incidentes à u. Le nombre minimum de couleurs d'une coloration d'arêtes globalement identiante d'un graphe G est noté χ α(g). La version globale est étudiée dans [BKT], et la version locale dans [TCSW], [BKT], [HM] et [WW08]. On retrouve le même genre de coloration identiante pour les coloration totales, étudiée dans [TCSW], [BKT] et [WW08], dont les résultats sont listés dans l'annexe [?]. Enn, la dernière coloration que je présenterai ici est la coloration totale localement identi- ante par somme. On dénit pour cela, étant donné une coloration totale c, la fonction f c qui à un sommet v V associe la somme des couleurs des arêtes incidentes à v et de la couleur de v. Dénition (Coloration totale localement identiante par somme). c est une coloration totale localement identiante par somme si : c est une coloration totale propre et (u, v) E, f c (u) f c (v) Cette coloration a été étudiée dans [PW], dont les résultats sont aussi présentés dans l'annexe A.
25 .. Travail réalisé Pendant mon stage, mon document de référence était la thèse d'aline Parreau [Par], dont le dernier chapitre portait sur les colorations identiantes. J'ai pu me familiariser avec les diérentes notions mises en jeu, à travers les exemples et les preuves exposés. Une fois que cela a été fait, je me suis interessé à des questions qui étaient restées ouvertes. La deuxième partie de ce rapport traitera l'une d'elles, qui porte sur les cycles universels [Jac9], cousins des séquences de de Bruijn [db]. Figure Capture d'écran du programme graphique réalisé. J'ai disposé pendant mon stage d'un compte informatique LAAS, et d'un ordinateur sous Ubuntu.0 LTS. Cela m'a permis, entre autre, de créer diérents programmes/scripts pour m'assister dans mes recherches. J'ai ainsi développé un programme graphique (avec Xlib) me permettant de manipuler des graphes : ajouter ou retirer des sommets, ajouter ou retirer des 5
26 arêtes, changer la couleur des sommets, et surtout, vérier si une coloration est propre, localement identiante, ou globalement identiante (voir Figure ). En utilisant ce programme, j'ai pu constater certaines propriétés, et imaginer de nouveaux problèmes, que je présenterai en troisième partie. J'ai aussi créé d'autres programmes (C/C++, scripts bash) pour pouvoir tester rapidement, en faisant facilement varier plusieurs paramètres, les algorithmes créés pour la génération de cycles universels, présentés dans la deuxième partie. J'ai aussi créé des scripts pour générer des graphes aléatoires directement utilisables sur mon programme graphique, pour pouvoir tester des propriétés (voir dans la troisième partie), sans devoir les créer un par un à chaque fois.
27 Cycles universels Dans sa thèse [Par], Aline Parreau cherche, entre autre, à construire une coloration globalement identiante sur un cycle. Elle cherche quelle est la taille du plus grand cycle L-idcoloriable, pour un nombre L de couleurs xé, que l'on notera n(l). La borne évidente qu'elle donne est la suivante : Théorème 7 (Parreau). n(l) ( ) L + ( ) L + ( ) L L + 5L Démonstration. Chaque sommet du cycle a deux voisins. Il peut donc y avoir, ou couleurs dans son voisinage fermé. Elle montre ensuite que l'ordre de cette borne est atteint, en utilisant les cycles universels étudiés par Jackson [Jac9] : Théorème 8 (Parreau). Soit L 8 un entier non divisible par. Alors ( ) L n(l) Pour expliquer d'où vient ce résultat, je vais tout d'abord expliquer ce qu'est une suite de de Bruijn, sur lesquelles sont basés les cycles universels, pour ensuite exposer comment Jackson montre l'existence de tels cycles dans [Jac9]. De plus, ceci me permettra enn d'adapter les preuves de Jackson pour construire des colorations globalement identiantes sur des cycles plus grand, c'est-à-dire de trouver un meilleur minorant pour n(l) (voir Théorème page ).. Séquences de de Bruijn.. Dénition Les cycles universels sont inspirés d'un objet combinatoire bien connu, les suites de de Bruijn[dB], elles-mêmes basées sur les graphes de de Bruijn. Ceux-ci sont des graphes orientés dont les sommets représentent des mots, et la présence d'arc entre deux sommets indique un chevauchement entre ces mots. Dénition 7 (Graphes de de Bruijn). Un graphe de de Bruijn B(k, n) d'ordre n sur un alphabet à k lettres est constitué de k n sommets, chacun étiqueté par un mot de n lettres (on identiera le sommet à son étiquette). Il existe un arc entre deux sommets u et v si et seulement s'il existe un mot x et deux lettres a et b tels que u = ax et v = xb. 7
28 La Figure montre un exemple de graphe de de Bruijn. Ces graphes possèdent plusieurs propriétés, dont celle d'être hamiltonien (c'est-à-dire qu'il existe un circuit qui passe une et une seule fois par chaque sommet du graphe) Figure Graphe de de Bruijn B(, ). Un circuit hamiltonien sur un graphe de de Bruijn permet de créer une suite de de Bruijn. Dénition 8 (Suite de de Bruijn). Une suite de de Bruijn d'ordre n sur un alphabet de taille k est une suite (x,..., x k n) telle que chaque sous-suite (x i, x i+,..., x i+n ) (où les indices sont considérés modulo k n ) est un mot de n lettres qui n'apparaît qu'une et une seule fois. Lorsque l'on parcourt un circuit hamiltonien du graphe de de Bruijn, par dénition, on obtient une nouvelle lettre à chaque nouveau sommet. Une suite de de Bruijn s'obtient donc en prenant la dernière lettre de chaque sommet rencontré. La Figure montre l'obtention d'une telle suite de de Bruijn par cette méthode. Les cycles universels dièrent des cycles de de Bruijn dans le sens où l'on regarde les soussuites (x i, x i+,..., x i+n ) du cycle comme des ensembles (non-ordonnés, sans répétition). Dénition 9 (Cycle universel). Un cycle universel d'ordre n sur un alphabet A de taille k est une suite (x,...,x ( k n) ) d'éléments de l'alphabet tel que chaque ensemble {x i, x i+,..., x i+n } (indices modulo ( k n) ) constitué de n sommets successifs soit unique, et ne contienne pas de doublon. La Figure est un exemple de cycle universel d'ordre sur un alphabet de taille 8. 8
29 (, 0, 0) (0, 0, 0) 0 0 (,, 0) (0, 0, ) 0 (,, ) (0,, 0) 0 (, 0, ) (0,, ) Figure Une suite de de Bruijn obtenue par un circuit hamiltonien du graphe de la Figure Figure Un cycle universel d'ordre sur l'alphabet [, 8]. Chaque sous-ensemble à trois éléments distincts de [, 8] apparaît exactement une fois comme suite de sommets successifs. On peut remarquer que le sens de lecture n'intervient pas dans la constitution des ensembles, ceux-ci étant non ordonnés, contrairement aux cycles de de Bruijn (pour lesquels il faut s'assurer de lire les sommets toujours dans le même ordre). L'existence des cycles universels n'est pas systématique, et dépend de la valeur des paramètres k et n. Jackson a montré dans [Jac9] une condition nécessaire et susante d'existence. J'exposerai cette condition dans la partie... 9
30 .. Cas particulier pour les cycles universels d'ordre Le cas particulier des cycles universels d'ordre se prête bien aux colorations globalement identiantes (comme on peut le remarquer sur la Figure ). En eet, on peut voir un tel cycle comme étant une coloration d'un cycle, le nombre de couleurs utilisées étant la taille de l'alphabet. En revanche, une coloration globalement identiante ne constitue pas nécessairement un cycle universel, à cause d'éventuelles répétitions de couleurs : on peut par exemple trouver trois sommets consécutifs tous coloriés d'une seule couleur, ce qui n'est pas autorisé dans le cas des cycles universels (pas de doublon). Un cycle universel d'ordre étant constitué de ( L ) sommets, ceci permet de justier la borne donnée par Aline Parreau, énoncée plus haut (n(l) ( L ) ). Cependant, elle précise aussi que cette borne n'est pas serrée : si l'on trouve le motif dans la suite des couleurs des sommets du cycle par exemple (quitte à permuter les couleurs), on peut alors remplacer celles-ci par. On obtient ainsi nouveaux ensembles, en en perdant un (voir Figure 5). La coloration est toujours globalement identiante, et on obtient un cycle avec deux sommets supplémentaires. La borne n'est de plus obtenue que pour certaines valeurs de L. S T S T Figure 5 Exemple d'amélioration des cycles universels pour les colorations globalement identiantes... Résultats Jackson [Jac9] s'est intéressé au cas général des cycles universels d'ordre k sur un alphabet de taille n, ainsi que les cas particuliers k = et k =. Nous allons nous intéresser aux cycles d'ordre. Un résultat important, qui permet d'obtenir une borne inférieure pour les colorations, est un résultat d'existence : Théorème 9 (Jackson). Pour L 8 et pgcd(l, ) =, il existe un cycle universel d'ordre sur un alphabet de taille L. Jackson donne de plus une méthode systématique de construction des cycles universels d'ordre k = dans la preuve de ce théorème. Nous aborderons cette construction dans la partie suivante. On peut rapidement démontrer que la condition pgcd(l, ) = est nécessaire : chaque sommet d'un cycle universel d'ordre apparaît dans ensembles distincts (celui de son prédécesseur, 0
31 le sien et celui de son successeur). Ainsi, si on considère un élément x de l'alphabet, le nombre d'ensembles contenant x est un multiple de. Or le nombre de tels ensembles est ( ) n, ce qui revient à dire ( ) n 0[] ou pgcd(n, ) =. Jackson montre aussi un résultat d'existence pour les cycles d'ordre k = : Théorème 0 (Jackson). Pour L 9 et pgcd(l, ) =, il existe un cycle universel d'ordre sur un alphabet de taille L. La conjecture dans le cas général, posée par Chung et al. [CDG9] est encore ouverte. Conjecture (Chung et al.). Pour tout k, il existe un entier n 0 (k) tel que pour tout n n 0 (k) satisfaisant ( n k ) 0[k], il existe un cycle universel d'ordre k sur un alphabet de taille n.. Construction des cycles universels La preuve de Jackson pour montrer l'existence de cycles universels est constructive. L'idée est de représenter les ensembles de valeurs par des arcs d'un graphe bien choisi. Un parcours eulérien de ce graphe permet au nal de construire un cycle universel. Dans toute la suite, on travaille dans Z/LZ, où L est la taille de l'alphabet du cycle universel, c'est-à-dire le nombre de couleurs que l'on veut utiliser... Relation d'équivalence Tout d'abord, on peut dénir une relation d'équivalence sur les ensembles. Pour ce faire, on dénit fonctions v, v et v de l'ensemble des ensembles à éléments dans [0, L ] telles que pour tout ensemble A à trois éléments, v (A) est la plus petite des valeurs de A, v (A) est la valeur médiane, et v (A) la plus grande des valeurs de A. On considère ensuite les fonctions diérences d, d et d : d = v v d = v v d = v v (modulo L) On dit alors que deux ensembles A et B sont équivalents si (d (A), d (A), d (A)) est une permutation circulaire de (d (B), d (B), d (B)). Autrement dit, si l'on place les éléments des deux ensembles sur une horloge, A et B sont équivalents si on passe d'un schéma à l'autre en tournant l'horloge (voir Figure ). Le lemme suivant sera utile par la suite : Lemme. Pour tout ensemble A à trois éléments de [0, L ], d (A) + d (A) + d (A) = 0.
32 0 0 5 A = {0,, } v (A) = 0 d (A) = v (A) = d (A) = v (A) = d (A) = B = {,, } v (B) = d (B) = v (B) = d (B) = v (B) = d (B) = C = {0,, 5} v (C) = 0 d (C) = v (C) = d (C) = v (C) = 5 d (C) = Figure Exemples d'ensembles équivalents pour L = 8 couleurs. Démonstration. d (A) + d (A) + d (A) = (v (A) v (A)) + (v (A) v (A)) + (v (A) v (A)) [L] = 0 [L].. Types Grâce à cette relation d'équivalence, on obtient des classes d'équivalence, que l'on va représenter avec des types. Lemme (Jackson). Chaque type (chaque classe d'équivalence) est constituée de L ensembles diérents. Démonstration. Considérons un type particulier, un représentant A de cette classe et notons abusivement d, d et d les valeurs des diérences de ce représentant. Considérons les L ensembles A i = {i, i + d, i + d + d } pour i variant de 0 à L. Par dénition, ces ensembles sont tous du type considéré. Supposons maintenant par l'absurde que A i = A j, pour i j. Deux cas sont alors possibles : i = j + d ou i = j + d + d. Dans le premier cas, on aurait alors i + d = j + d + d et i + d + d = j. On en déduit que d = d, donc d = L. C'est absurde car pgcd(l, ) =. On trouve la même absurdité dans le second cas.
33 Pour un type donné, les valeurs prises par v, v et v changent, mais les diérences d, d et d sont constantes (à une permutation circulaire près) ; ce sont donc celles-ci que l'on va utiliser pour noter les types. De plus, deux diérences sont susantes pour caractériser une classe d'équivalence (la somme des trois étant nulle, modulo L). Un type sera donc un couple (t, t ) avec t, t {d, d, d }, noté t t. Cependant, il faut choisir les deux diérences à conserver tout en évitant les collisions. Jackson propose la méthode suivante, dans le cas où L est pair : Si les diérences sont diérentes alors on enlève la plus grande des, notée d i. Le type est alors d i+ d i+ (en travaillant modulo, c'est-à-dire d = d et d 5 = d ). Si deux diérences sont égales et valent k, alors le type est kk. La Figure 7 est une liste exhaustive des types associés par Jackson aux ensembles à trois éléments, pour L = Figure 7 Liste des ensembles à éléments de [0, L ] et leur type associé. Pour plus de clarté, les ensembles {i, j, k} (i j k) sont représentés ijk. Les types sont indiqués en gras.
34 Figure 8 Graphe orienté des types pour L = 8... Graphe associé aux types Une fois ces types dénis, Jackson construit un graphe orienté dans lequel chaque arc représente un type. Les sommets sont les valeurs que peuvent prendre t et t, et un type t t est représenté par l'arc (orienté) (t, t ). La Figure 8 est le graphe obtenu pour L = 8. On peut remarquer que ce graphe est fortement connexe, et eulérien (il existe un circuit qui passe par chacun des arcs exactement une fois). Lorsque L est impair, pour garder ces deux propriétés, il faut changer un type particulier. En eet, dans le cas L =, l'ensemble {0,, } donne le type 55, qui est le seul à faire intervenir le sommet 5 du graphe, qui n'est donc pas connexe. Pour pallier ce problème, Jackson remplace les types et par les types 5 et 5 (en général, les types L- L- L- et par les types L- et ). Ces nouveaux types n'étaient pas utilisés, et les valeurs restent toujours parmi les valeurs d, d et d ; cette modication ne pose donc pas de problème. Ce changement permet à Jackson de montrer le théorème suivant : Théorème (Jackson). Lorsque pgcd(l, ) =, le graphe orienté construit comme expliqué ci-dessus est fortement connexe et eulérien. Un circuit eulérien sur ce graphe est une suite de sommets. Ces sommets vont représenter les diérences dans le cycle universel. Par exemple, un déplacement du sommet vers le sommet, c'est-à-dire suivant l'arc (, ), soit le type, consiste à ajouter, puis à la valeur initiale. Puisque l'on suit un cycle, on est assuré d'avoir une cohérence : la deuxième diérence d'un type sera la première du type suivant. Ainsi, en suivant le chemin,,, on parcourt les arêtes représentant les types et. En ajoutant les valeurs des sommets à une valeur initiale, on
35 obtient donc un ensemble de chacun de ces types. Par exemple, avec 0 comme valeur initiale, en ajoutant les valeurs ci-dessus, on obtient : 05. Le premier ensemble, {0,, } est bien de type et le second, {,, 5}, de type. L'ordre dans lequel on va obtenir les valeurs d'un ensemble est donc dépendant des conventions choisies pour noter les types. Avec la notation de Jackson, dans laquelle on enlève la plus grande diérence, on obtient un cycle universel dans lequel les diérences entre les éléments successifs n'excèdent pas L. Cependant, lorsque l'on eectue un parcours eulérien du graphe, on obtient seulement une chaîne (et non pas un cycle) "universelle", qui ne contient qu'un ensemble de chaque type. Mais Jackson a montré que les sommes des valeurs des sommets du cycle notons la σ (modulo L) est première avec L. Si on commence à construire la chaîne à partir de la valeur 0, arbitrairement, alors on la termine par la valeur σ. La primalité entre σ et L assure ensuite de pouvoir répéter ce processus L fois (la seconde fois en partant de σ au lieu de 0, etc), et d'obtenir des ensembles diérents pour un type donné à chaque répétition, de retomber sur la valeur 0 à la n, et donc de pouvoir "refermer" la chaîne, et créer un cycle. L'exemple de la Figure page 9 a été construit de cette manière. Le circuit eulérien du graphe de la Figure 8 choisi est le suivant : ( ) Avec pour valeur initiale 0, on obtient donc le début de cycle suivant : L'itération suivante, en partant de 5 donne : Et ainsi de suite jusqu'à obtenir le cycle complet de la Figure.. Cycles universels avec répétition Jackson a aussi considéré le cas des cycles universels avec répétition, mais celui-ci n'est plus applicable aux colorations globalement identiantes. Dans le cas de celles-ci, la répétition revient à considérer des ensembles de à couleurs (trois sommets consécutifs de couleurs 0, 0 et formeront l'ensemble {0, }). Un cycle universel avec répétition ne donne donc pas une coloration globalement identiante d'un cycle, car L(L ) sommets seraient deux à deux des doublons (Figure 9). 5
36 On pourrait envisager de partir d'un cycle universel avec répétition, puis de supprimer les sommets doublons, c'est-à-dire les sommets qui ont un voisinage de couleurs identique. Mais en enlevant un sommet, on modie également les voisinages de ses voisins, et donc créer de nouvelles erreurs {0, } {0, } Figure 9 Exemple de cycle universel avec répétition qui n'est pas une coloration globalement identiante. Un doublon a été mis en évidence, mais il en existe d'autres. Étant donné un nombre L de couleurs, une borne supérieure du nombre de sommets que l'on peut avoir dans un cycle L-id-coloriable est donc : ( ) ( ) ( ) L L L n(l) + + L + 5L On peut essayer d'obtenir des colorations globalement identiantes de cycles en partant d'un cycle universel (sans répétition), puis en le modiant localement, pour essayer de rajouter des sommets au cycle (comme sur la Figure 5). Cependant, cette façon de procéder mène vite à des impasses. On peut imaginer pourquoi, en se disant que les modications sont locales, alors que la coloration est globalement identiante. On risque donc, en modiant localement le graphe et la coloration, d'obtenir des redondances, et donc une coloration qui n'est pas globalement identiante. J'ai donc cherché à adapter la méthode de Jackson. Tout d'abord, il faut regarder quels sont les nouveaux ensembles que l'on ajoute, et comment leur attribuer un type. Si l'on applique la méthode de Jackson, on obtient alors des types comportant un 0, mais certains sont redondants entre eux (comme on a pu le constater sur la Figure 9). Par exemple, si l'on considère la suite de trois sommets colorés 00, alors les diérences associées sont 07, ce qui donne un type 0. La suite 0, dont les diérences sont 07, donne un type 0. De manière générale, on peut constater que les types 0i et i0 représentent les mêmes ensembles. Un autre problème qui se 7 7 5
37 pose quand L est pair est l'apparition du type L L. En eet, ce type représente des suites qui forment des ensembles identiques. Par exemple, toujours dans le cas L = 8, les suites 00 et 0 sont deux suites représentées par le type. Lemme. Lorsque L est pair, le type L L représente L ensembles diérents. Démonstration. Tous les ensembles représentés par le type L L contiennent deux valeurs : i et i + L. Il y a donc L { ensembles diérents possibles : i, i + L } pour i < L. En eet, comme i + L + L = i, on retrouve les mêmes ensembles pour i L. Contrairement aux autres types rencontrés jusqu'à présent, celui-ci représente donc deux fois moins d'ensembles diérents. Il n'est donc pas possible de l'utiliser comme le fait Jackson (on aurait sinon deux fois chaque ensemble de ce type). Le même problème se pose lorsque l'on considère le cas L multiple de. Le type L L présente le même problème. Lemme 5. Lorsque L est multiple de, le type L L ne représente que L ensembles diérents. Démonstration. Pour le type L L, les trois diérences sont constantes : d = d = d = L {. Les ensembles représentés par ce type sont donc de la forme i, i + L, i + L }. Or chacun de ces ensembles est obtenu fois lorsque i parcourt [0, L ] (par exemple pour i = 0, puis i = L, et i = L ). Au total, on obtient donc seulement L ensembles diérents. Il faut donc enlever ce type pour ne pas obtenir de répétition en parcourant le cycle eulérien plusieurs fois. Pour choisir quels types conserver, j'ai commencé par caractériser les valeurs de i 0 telles que le type 0i existe (pour L xé). Lemme. Les types 0i et i0 existent si et seulement si i < L. Démonstration. Considérons le triplet de valeurs (0, 0, i), qui est un représentant du type 0i si le type existe. Ses diérences sont d = 0, d = i et d = L i = j. Ce triplet est donc de type 0i si et seulement si i < j, c'est-à-dire i < L. On raisonne de la même manière pour le type i0 avec le triplet (0, i, i). 7
38 Le type 00 ne représente pas un problème dans le graphe orienté, dans le sens où les boucles L n'aectent pas l'existence d'un chemin eulérien. On a donc valeurs possibles de i (avec i 0). Pour chacune de ces valeurs, il faut choisir, arbitrairement, le type 0i ou le i0. Il y aura L L donc arcs entrants ou sortants du sommet 0. Si est impair, alors le graphe n'est pas eulérien, quelque soit les choix faits, puisqu'il faut autant d'arcs sortants que d'arcs entrants dans chaque sommet, pour avoir un graphe eulérien. Pour obtenir un nombre pair L d'arcs, j'ai choisi d'enlever l'arc qui relie les sommets 0 et (autrement dit, la valeur L médiane parmi toutes celles possibles). Il reste donc un nombre pair d'arc, que soit pair ou impair. J'ai choisi de considérer les types 0i pour la première moitié des valeurs de i, et les types i0 pour l'autre moitié. Lorsque L est impair, le type 0 L (ou L 0) pose problème car le graphe n'est pas fortement connexe ; le sommet L n'étant relié qu'au sommet 0, on ne peut pas imposer le type dans un sens ou dans l'autre. Il faut donc retirer ce type pour avoir un graphe eulérien. Notons I l'ensemble des valeurs de i pour lesquelles les arcs 0i ont été ajoutés, et I + les valeurs pour lesquelles ce sont les arcs i0 qui ont été ajoutés. Après avoir ajouté ces arcs, le graphe n'est plus eulérien : les sommets numérotés i I ont un arc rentrant en trop, et les sommets numérotés i I + ont un arc sortant en trop. Pour équilibrer, j'ai donc choisi d'enlever des arcs de la manière suivante : j'enlève l'arc qui va du sommet numéroté par la plus grande valeur de I + au sommet numéroté par la plus petite valeur de I, puis l'arc du sommet numéroté par la deuxième plus grande valeur de I + au sommet numéroté par la deuxième plus petite valeur de I, et ainsi de suite. Cette opération permet d'équilibrer les sommets de I et de I +. Au nal, il y a donc cas diérents possibles, suivant la valeur de L modulo. Je vais illustrer les choix dénis plus haut par des exemple pour L variant de 88 à. La Figure 0 montre dans ces exemples quels sont les types qui sont retirés, et lesquels sont conservés pour avoir un graphe eulérien. Si L = 8 : L est pair, et le sommet L n'est pas relié aux autres sommets. On enlève donc le type L L L (). Le nombre de sommets pouvant être reliés à 0 est impair ( = ). On choisit les types 0i pour i < L, et i0 pour i > L. On enlève donc le type 0L et le type L 0 (0 et 8
39 0). Pour rendre le graphe eulérien, on choisit d'enlever le type. On obtient alors le premier graphe de la Figure 0. Si L = 9 : L Le sommet () pose problème, car il est seulement relié au sommet 0. Que l'on choisisse le type 0 ou 0, on ne pourra pas obtenir un graphe eulérien. On supprimme donc ce type, et par conséquent, le type. Le sommet 0 n'est plus relié qu'aux sommets, et, qui sont en nombre impair. On choisit d'enlever le sommet médian (), et de prendre les types 0i, pour i plus petit que ce sommet médian, et i0 sinon (0 et 0). Pour rendre le graphe eulérien, on choisir d'enlever le type. On obtient alors le deuxième graphe de la Figure 0. Si L = 0 : L est pair donc, de même que pour le cas L 0[], on retire le type L L (55). Le sommet 0 est relié aux sommets,, et, qui sont en nombre pair. On choisit de prendre les types 0i pour la première moitié de ces sommets, et le type i0 pour la seconde moitié (0, 0, 0 et 0). Pour rendre le graphe eulérien, on choisir d'enlever les types et. On obtient alors le troisième graphe de la Figure 0. Si L = : De même que pour le cas L [], le sommet L (5) pose problème, car il est seulement relié au sommet 0. On enlève donc les types 05 et 55. Le sommet 0 est alors relié aux sommets,, et, qui sont en nombre pair. On choisit, comme dans le cas L [] de prendre les types 0, 0, 0 et 0. Pour rendre le graphe eulérien, on choisir d'enlever les types et. On obtient alors le troisième graphe de la Figure 0. Dans le cas L = 8, un exemple de circuit eulérien est le suivant : C = 0 0( ) On peut vérier que comme c'est systématiquement le cas pour les cycles universels sans répétition la somme des valeurs des sommets de ce cyle est première avec L. En ce cas, de même que précédemment, on peut répéter ce cycle eulérien en partant d'une valeur initiale pour obtenir une coloration globalement identiante d'un cycle, dont tous les ensembles d'au plus éléments associés aux types du graphe sont représentés. La Figure montre ce cycle, pour L = 8, en choisissant 0 comme valeur initiale et C comme circuit eulérien. 9
40 0 0 L = 8 L = L = 0 L = Figure 0 Graphes obtenus après le choix des types. Cependant, il arrive que la somme des valeurs des sommets du circuit eulérien ne soit pas première avec L. Dans ce cas, on ne peut pas refaire L fois le parcours du circuit eulérien en ajoutant à chaque fois les valeurs des sommets. Notons p = pgcd(σ, L). Le nombre de fois qu'on va pouvoir répéter le même circuit eulérien successivement est L. Par exemple, pour L =, p on obtient le circuit eulérien dont la somme vaut σ = 0 = 8 (modulo ). Ainsi, en partant 0
41 Figure Cycle obtenu pour L = 8 en appliquant 8 fois la somme des sommets du circuit eulérien C. de la valeur 0, en parcourant le cycle eulérien une première fois, on obtient une valeur nale égale à 8. En répétant le procédé à partir de 8, on retombe aussitôt sur 0, la valeur initiale. On a donc eectivement répété le procédé L p = = fois. Le cycle obtenu ne contient donc que 8 ensembles sur de chacun des types représentés dans le graphe. L'astuce que j'ai trouvée pour retrouver tous les ensembles manqués consiste à enlever le type, préalablement choisi comme point de départ du circuit eulérien, une fois tous les L répétitions du procédé, après les p L p premières. Ainsi, après itération des L premières fois, cela revient à partir de L au lieu de p repartir sur la valeur initiale 0, ce qui permet de recommencer L nouvelles itérations. On peut p donc répéter p fois ce processus, jusqu'à obtenir la valeur nale L (p ). Ensuite, on peut ajouter tous les types que l'on a enlevés. Ce faisant, on retombe alors sur la valeur initiale 0, et on peut donc "fermer" la chaîne pour obtenir un cycle qui contient tous les ensembles représentés par les types choisis. La Figure montre ce phénomène. 0 5
42 0 8 0 Deux premières itérations du circuit eulérien, en partant de la valeur initiale Construction de la chaine en enlevant certains types Ajout des types précédemment enlevés Figure Construction d'un cycle contenant tous les ensembles représentés par les types du graphe pour L =. Lorsque L est impair, on peut modier la n de la construction de la chaîne pour obtenir de nouveaux ensembles correspondant aux types que l'on a enlevés (0 L et L L ). L'idée est de rajouter des sommets qui seront de ces types-là après un type 00. Cela revient à eectuer plusieurs fois le cycle eulérien (en enlevant des types, c'est-à-dire une boucle sur le sommet, lorsque c'est nécessaire), en insérant après une des boucles sur le sommet 0 le chemin L L L La Figure illustre ces modications, du point de vue du parcours du graphe, des types successifs, et du cycle obtenu au nal. Avant insertion : Parcours des sommets du graphe Types Éléments du cycle obtenu Après insertion : Figure Insertion de nouveaux ensembles dans le cas L impair
43 On peut facilement compter le nombre de sommets du cycle obtenu, en fonction de L. Si L 0[] : On a enlevé L types, chacun représentant L ensembles, donc L sommets. On a aussi enlevé L, qui représente L L, qui représente L le type L à trois éléments étant L + 5L, le cycle est donc composé de L + 5L Si L [] : On a retiré L tous les ensembles de type L L 0 et 0 Si L [] : On a retiré L sommets est donc L + 5L Si L [] : ensembles diérents. Le nombre d'ensembles L + L sommets. + types, mais, grâce à la dernière insertion proposée, on a pu rajouter L L, sauf un. Et l'on a aussi inséré deux ensembles de type. Le nombre de sommets est donc : L + 5L L + L +. types représentant L ensembles, ainsi que le type L L L. L. Le nombre de On a retiré L + types, mais de même que pour le cas L [], on a compensé un type par une insertion à la n de la construction. Le nombre de sommets est donc L + 5L L + L +. Enn, lorsque L est multiple de, il faut retrancher L à la valeur trouvée, car on a enlevé le type L L, qui représente L ensembles distincts. Ce résultat permet d'énoncer le théorème suivant :
44 Théorème. Pour L 8, L + L si L 0[] L + n(l) L + 5L L si L [] L si L 0[] L si L [] 0 sinon L + L si L []
45 Nouvelles questions ouvertes. Suppression d'un sommet Lorsque j'ai créé mon programme, il m'a fallu faire plusieurs tests pour vérier qu'il fonctionnait bien. En particulier, il était important que la mise à jour des propriétés du graphe se fasse correctement ; c'est-à-dire que lorsque je modie la couleur d'un sommet, que je supprime un sommet, ou que j'ajoute une arête, par exemple, il fallait vérier à nouveau si la coloration était globalement/localement identiante ou non... Conjecture C'est en faisant ces vérications que j'ai formulé la conjecture suivante : Conjecture. Étant donné un graphe G = (V, E) non vide et c une coloration globalement identiante de G, il existe un sommet u V telle que la coloration induite sur le graphe induit G \ {u} est une coloration globalement identiante de G \ {u}. La Figure montre un exemple de graphe satisfaisant cette conjecture. Le graphe pris dans l'exemple est le cycle obtenu dans la partie précédente, pour L = 8 couleurs Figure Cycle obtenu dans la deuxième partie pour L = 8 couleurs. Si l'on retire l'un des sommets verts, la coloration reste une coloration globalement identiante. Si l'on retire un sommet noir, alors on obtient un doublon. J'ai testé cette conjecture sur de nombreux exemples, de manière automatisée. Pour cela, j'ai créé un script qui génère des graphes. Ce script dépend de plusieurs paramètres : le nombre de sommets, la probabilité d'arête entre deux sommets et une graine pour l'aléatoire (par souci de reproductibilité). Un second script me permet ensuite de vérier la conjecture, pour chacun des graphes. Ce script m'a permis de vérier la conjecture sur plusieurs milliers de graphes, jusqu'à plusieurs dizaines de sommets, pour diérentes valeurs de probabilité d'arêtes
46 Pendant que les scripts s'exécutaient, j'ai cherché à prouver cette conjecture, de plusieurs manière. Dans la suite, je présenterai les deux principales idées que j'ai eues. Les deux reposent sur un raisonnement par l'absurde. Je n'ai pas encore réussi à prouver la conjecture, mais je présenterai tout de même quelques lemmes que j'ai trouvés en essayant de le faire. Pour illustrer, j'utiliserai le graphe de la Figure 5. h c g i f e a d b j Figure 5 Un graphe G muni d'une coloration globalement identiante. Les valeurs inscrites dans les sommets sont celles de la coloration, et les valeurs inscrites à côté sont les noms des sommets... Arbres innis La première idée consiste à créer un arbre particulier, qui possèdera certaines propriétés. Tout d'abord, il faut dénir une fonction f qui à chaque sommet u V du graphe associe un ensemble de sommets. Les sommets de cet ensemble seront ceux qui deviendraient des doublons si l'on retirait le sommet u. Si la conjecture est vraie, alors pour tout graphe, il existe au moins un sommet u V tel que f(u) =. Par contraposée, pour que la conjecture soit fausse, il surait de trouver un contre-exemple : un graphe G = (V, E) tel que u V, f(u). La Figure montre les valeurs que prend la fonction f sur les sommets du graphe de la Figure 5 (on constate que ce graphe n'est pas un contre-exemple à la conjecture). Si l'on essaye de retirer le sommet a par exemple, alors le voisinage de couleurs du sommet e devient {, }, c'est-à-dire le même que le sommet f. Si l'on essaye de supprimer le sommet g, alors deux problèmes se posent : le voisinage de couleurs du sommet c devient {}, le même que celui du sommet d ; le voisinage de couleurs du sommet j devient {, }, le même que celui du sommet b. Ensuite, on construit un arbre, dont tous les sommets u seront étiquetés par un des sommets du graphe d'origine, e(u). On choisit arbitrairement une étiquette pour la racine. Le nombre
47 u a b c d e f(u) {e,f} {a,d} u f g h i j f(u) {a,e} {b,c,d,j} {b,d} Figure Valeurs de la fonction f sur le graphe de la Figure 5. de ls de chaque sommet u de l'arbre sera alors égal au cardinal de f (e(u)). Les étiquettes de ceux-ci seront exactement les valeurs de l'ensemble f (e(u)). Autrement dit, lorsque l'on prend un sommet de l'arbre, étiqueté e(u), les étiquettes de ses ls seront exactement les sommets qui posent problème lorsque l'on retire le sommet e(u) dans le graphe d'origine. S'il existe un contre-exemple H à la conjecture, alors l'arbre obtenu à partir de H par ce procédé sera inni. Cet arbre aura aussi la propriété de n'avoir aucune feuille. En eet, chaque suppression d'un sommet du graphe entraîne des doublons, et donc chaque n ud de l'arbre possède des ls. Lemme 7. Étant donné un arbre construit de cette manière, prendre un sous-arbre de celui-ci depuis une étiquette e revient à construire un arbre dont l'étiquette de la racine est e. Démonstration. Le processus de construction reste tout le temps le même, indépendamment de la profondeur à laquelle se situe le n ud. Le fait que l'arbre soit inni n'est pas une absurdité en soi. On peut constater que l'arbre construit à partir du graphe de la Figure 5, selon la valeur en laquelle on l'enracine, peut aussi être inni. La Figure 7 montre cet arbre. On peut constater sur cet arbre inni, enraciné en a, que toutes les étiquettes présentes dans l'arbre le sont une innité de fois. On peut montrer que c'est tout le temps le cas : Lemme 8. Si un arbre construit comme précédemment est inni, alors il existe une possibilité d'étiqueter la racine de telle sorte que toutes les étiquettes de l'arbre soient présentes une innité de fois. Démonstration. Comme l'arbre est inni, il existe une branche composée de n + n uds, où n est le nombre de sommets du graphe (et donc le nombre d'étiquettes possible). Sur cette branche, au moins une étiquette apparaît plusieurs fois. Notons e une telle étiquette. Alors l'arbre construit par rapport au même graphe, mais dont l'étiquette de la racine est e ne possède aucune étiquette en nombre ni d'exemplaires. En eet, pour toute étiquette e qui apparaît dans l'arbre, on peut construire un chemin de la racine à l'un des n ud d'étiquette e (ce chemin est unique, car c'est un chemin dans un arbre). Or, il y a une innité de n uds 7
48 a e f a d a e e f e f a d Figure 7 Arbre construit à partir de la fonction f de l'exemple de la Figure 5, en choisissant une racine étiquetée par a. dont l'étiquette est e. En copiant ce chemin à partir de chacun d'entre eux, on obtient alors une innité de n uds étiquetés e. Ces lemmes sont peut-être utilisables pour prouver la Conjecture, mais ne m'ont pas permis d'y arriver, pour l'instant... Treillis des couleurs L'autre idée que je présente ici consiste à créer un treillis, c'est-à-dire un graphe dont les sommets sont classés par une relation d'ordre. Dans le cas présent, cette relation d'ordre sera le nombre de couleurs diérentes dans le voisinage fermé. Autrement dit, si le graphe a une L-id-coloration, le sommet de niveau sera (s'il existe) le sommet qui a les L couleurs dans son voisinage fermé, les sommets de niveau seront ceux qui ont L couleurs dans leur voisinage fermé, et ainsi de suite. Ensuite, on ajoute une arête entre deux sommets u et v s'il est possible en retirant un troisième sommet que u et v rentrent en collision (deviennent doublon en ayant le même ensemble de couleurs dans le voisinage). La Figure 8 montre le treillis associé à l'exemple de la Figure 5. En triant les sommets de cette façon, on peut rapidement voir quels sont les paires de sommets qui peuvent se retrouver en doublon, après avoir retiré un sommet du graphe. En eet, lorsque l'on retire un sommet, chacun de ses voisins est susceptible de "perdre" une couleur dans son voisinage (si aucun de ses autres voisins n'ont la même couleur), et donc de passer du niveau k au niveau k +. 8
49 g j e b c a f h d i Figure 8 Treillis associé à l'exemple de la Figure 5. Les ensembles de couleurs du voisinage de chaque sommet sont indiqués à côté de chaque sommet, sous forme de mot. Comme on peut le voir sur la Figure 8, le treillis n'est pas un arbre, malgré l'ordre des sommets, qui pourrait correspondre à la profondeur dans un arbre. Il est possible que le treillis ne soit pas connexe, et qu'il présente des cycles. J'ai ensuite essayé de voir ce qui se passerait si on avait un contre-exemple à la conjecture. Notons G ce contre-exemple, et T le treillis associé. On ne peut enlever aucun sommet du graphe G tout en gardant une coloration globalement identiante, donc à chaque sommet de G correspond au moins une arête de T. Lemme 9. Soit e = (u, v) une arête de T, treillis associé à un contre-exemple de la Conjecture. Il existe un unique sommet w diérent de u et v tel que la suppression de w entraîne la collision de u et v. Démonstration. Comme e est une arête de T, il existe au moins un sommet w qui entraîne la collision de u et v. Sans perte de généralité, supposons que u possède une couleur de plus que v dans son voisinage, notée c. Puisque sans w, il y a collision entre u et v, la couleur de w est c, w est un voisin de u et w n'est pas un voisin de v. S'il existait un sommet x tel que la suppression de x entraînerait la collision de u et v, alors par le même raisonnement, x serait de couleur c et serait voisin de u. Mais alors, la suppression de w ne changerait pas les couleurs du voisinage de u, car c serait toujours présente, avec le sommet x ; ce qui est absurde. Ce lemme permet de déduire que T contiendrait au moins autant d'arêtes que de sommets. 9
50 T ne pourrait donc en aucun cas être un arbre. Le lemme suivant permet de voir où peuvent se situer les arêtes. Lemme 0. Un sommet qui a k couleurs dans son voisinage peut rentrer en collision avec maximum L sommets, où L est le nombre de couleurs de G. Démonstration. Soit u un sommet ayant k couleurs dans son voisinage. Il y a L k ensembles de couleurs qui sont composés des couleurs du voisinage de u et d'une autre couleur. Et il y a k possibilités que u perde une couleur en supprimant un de ses voisins (u ne peut en eet pas perdre sa propre couleur). Il y a donc au nal au plus L k + k = L sommets qui peuvent rentrer en collision avec u. Au nal, il y a donc beaucoup de positions possibles pour les arêtes. Moralement, la contrainte de positions possibles pour les arêtes semble assez large par rapport au nombre d'arêtes. Le treillis tel qu'il est construit permet de voir directement quels sont les sommets qui entrent en collision, mais ne permet pas de voir quels sont les sommets que l'on peut enlever ou pas. Pour améliorer ceci, j'ai choisi de colorier le treillis avec deux couleurs ; la première signiant que le sommet peut être retiré sans collision, et la seconde que ce n'est pas le cas. La Figure 9 montre ce qu'on obtient avec le graphe de la Figure 5. La structure du treillis est la même que celle du treillis de la Figure 8 ; l'élément nouveau est la coloration. Les sommets blancs sont ceux que l'on peut retirer sans créer de collisions. Les sommets rouges sont ceux qui créent des collisions. Dans le cas du treillis T du contre-exemple, tous les sommets seraient de couleur T. On peut essayer de trouver de nouvelles structures qui pourraient apparaître sur T, et entraîner une absurdité. J'ai donc essayé de trouver des structures qui n'apparaissaient pas sur les treillis que je créais, pour ensuite essayer de comprendre pourquoi cette structure était impossible, et donc montrer que le treillis T ne pouvait exister. Ceci prouverait la conjecture. Bien que sur les exemples générés aléatoirement, il y ait beaucoup de cycles, ceux-ci semblaient toujours être composés d'au moins un sommet "blanc", c'est-à-dire un sommet que l'on pouvait enlever sans collision. Cependant, je n'ai pas réussi à montrer qu'un cycle constitué uniquement de sommets "rouges" qu'on ne peut pas enlever sans créer de collision était un cas impossible. Et pour cause, à force de tester plusieurs centaines de graphe, à l'aide de scripts, j'ai ni par en trouver un qui présente cette structure. Ce graphe est composé de 9 sommets et 5 arêtes.. Nouveaux problèmes De la même manière que la conjecture précédente, c'est en utilisant mon programme que j'ai pensé à nouveaux problèmes. Dans les deux cas, on dispose initialement d'un graphe G = (V, E) et d'une coloration quelconque c. 0
51 g j e b c a f h d i Figure 9 Treillis associé à l'exemple de la Figure 5, coloré. Les ensembles de couleurs du voisinage de chaque sommet sont indiqués à côté de chaque sommet, sous forme de mot. Les sommets blancs sont les sommets que l'on peut retirer dans le graphe d'origine sans créer de collisions. Les sommets rouges sont ceux que l'on ne peut pas retirer sans créer de collision... Problème de modication des couleurs Le premier problème consiste à changer les couleurs de certains sommets pour obtenir une coloration globalement identiante. Le problème de décision associé est le suivant : MODIFICATION_COULEURS_DEC : Instance : Un graphe G = (V, E), une coloration c quelconque, et un entier k. Question : Est-il possible d'obtenir une coloration globalement identiante de G à partir de c en modiant au plus les couleurs de k sommets? Ce problème est clairement dans la classe NP, car il est facile de vérier qu'une coloration est globalement identiante polynomialement, par rapport au nombre de sommets. En revanche, il est plus dicile de montrer si ce problème est NP-dicile (et donc NPcomplet) ou pas. Lorsque l'on cherche une liste de modications de couleurs, il semble naturel de commencer par regarder quels sont les sommets qui sont actuellement en collision. Ensuite, lorsque l'on a deux sommets qui sont en collision, on peut essayer de modier une couleur dans le voisinage de l'un des deux sommets, pour essayer de les séparer. Évidemment, en faisant ceci, on va modier les voisinages d'autres sommets, et ceci risque de créer de nouvelles
52 5 5 5 Figure 0 Un graphe G muni d'une coloration quelconque, qui n'est pas globalement identiante. Il y a deux collisions, entre les sommets dont les ensembles de couleurs sont écrits en rouge. collisions. Par exemple, avec le graphe de la Figure 0, deux sommets ont {, } comme couleurs dans leur voisinage. On peut essayer de modier le voisin du sommet de degré (celui le plus à droite), et passer sa couleur de à, comme c'est fait sur le Figure. Les deux sommets qui étaient en collision ne le sont plus, mais une autre collision est apparue. En essayant de trouver une solution au problème, sur un graphe simple, on conçoit bien que ce problème est relativement dicile. Il existe néanmoins une solution optimale en modiant la couleur d'un seul sommet : elle est présentée dans la Figure... Problème du sous-graphe identié Le second problème consiste aussi à obtenir une coloration globalement identiante sans changer les couleurs des sommets cette fois-ci mais en ne considérant qu'un sous-graphe induit, c'est-à-dire en enlevant des sommets. Le but est d'enlever le moins de sommets possibles.
53 5 5 5 Figure Modication d'une couleur par rapport au graphe de la Figure 0 pour essayer de faire disparaître une collision Figure Solution optimale du problème de modication des couleurs, par rapport au graphe initial de la Figure 0.
54 Le problème de décision associé est le suivant : SOUS-GRAPHE_IDENTIFIE_DEC : Instance : Un graphe G = (V, E), une coloration c quelconque, et un entier k. Question : Existe-t'il un sous ensemble V de V de cardinal V k tel que la coloration c induite sur le sous-graphe de G induit par V est globalement identiante? De même que pour le premier problème, celui-ci est clairement dans la classe NP. Il est aussi tout à fait naturel de commencer par regarder quels sont les sommets en collision. Mais de la même manière que pour le problème de modication des couleurs, en supprimant les sommets qui sont en collision, on peut en créer de nouvelles. La Figure montre cependant que c'est parfois une bonne solution : dans ce cas, en supprimant un sommet, on supprime les deux collisions, sans en créer de nouvelle Figure Solution optimale du problème du sous-graphe identié, par rapport au graphe initial de la Figure 0... Heuristique Dans l'optique où ces problèmes seraient NP-complets, il pourrait être intéressant de chercher à construire des heuristiques pour les résoudre. Plusieurs approches sont envisageables.
55 On pourrait essayer une approche gloutonne, en cherchant à modier (changer la couleur ou supprimer, suivant le problème) les sommets qui sont en collision. La Figure montre bien que cette approche peut parfois être ecace. Une autre idée serait de construire un treillis des couleurs, comme dans la sous-partie précédente. Cela permettrait de voir quels ensembles de couleurs on peut modier sans collision. Une approche prudente pourrait consister à modier les sommets de degré faible. Ce faisant, on aurait sûrement moins de chance de créer de nouvelles collisions. 5
56 . Retour à un cadre général Après s'être penché sur des problèmes particuliers de coloration identiante, il peut être intéressant de prendre un peu de recul et de s'intéresser à l'identication en général... L'identication C'est une notion qui était déjà présente dans les années 90, notamment dans [KS]. C'était alors dans un contexte purement théorie de l'information, sans structure de graphe sous-jacente. L'identication dans la théorie des graphes a débuté en 998 dans un article de l'ieee Transactions on Information Theory ; ce sont les codes identiants, que j'ai présentés en première partie de ce rapport [KCL98]. Il est peut-être possible d'unier les diérentes identications qui existent, en généralisant les colorations identiantes que j'ai présentées dans ce rapport. On peut par exemple, pour chaque sommet du graphe, restreindre les couleurs qu'on peut lui donner (on parle alors de coloration par liste identiante), ou bien colorier chaque sommet avec un sous-ensemble de couleurs d'une liste (on parle de multicoloration par liste identiante) [Mon]. Le cas des colorations par liste identiantes est un cadre qui permet de regrouper les colorations globalement identiantes et les codes identiants. En eet, si l'on donne la même liste à chacun des sommets, on se retrouve dans le cas des colorations globalement identiantes. On peut aussi retrouver un code identiant en procédant comme suit : la liste des couleurs utilisées pour un sommet u est constituée de deux éléments : u et un élément abstrait ω V. Pour obtenir un code à partir d'une coloration par liste identiante, construites avec ces listes, il sut de considérer l'ensemble C des sommets coloriés par eux-mêmes. Alors C est un code identiant du graphe. Réciproquement, à partir d'un code identiant C, on peut construire une coloration par liste identiante de la même manière. Les colorations par liste identiantes généralisent donc correctement les colorations globalement identiantes et les codes identiants. Le cas des multicolorations par liste identiantes généralisent naturellement les colorations par liste identiantes... Continuité du stage Quand j'aurai ni le stage, je continuerai à travailler sur ce sujet, en thèse. Ce sera l'occasion d'essayer de prouver ce qui ne l'est pas à l'heure actuelle, notamment la conjecture que j'ai énoncée. Je pourrai aussi analyser plus attentivement des problèmes que je n'ai pu qu'eeurer pour l'instant (graphes de Sierpi«ski, graphes aléatoires, etc).
57 Conclusion Lors de mon stage au LAAS, j'ai amélioré une borne fournie par Aline Parreau pendant sa thèse, en utilisant et en adaptant les cycles universels de Jackson. J'ai de plus proposé de nouveaux problèmes et énoncé une conjecture, qui peuvent être une piste à suivre pour continuer les recherches dans ce domaine. Pendant ces 5 mois, j'ai eu l'occasion de découvrir le monde de la recherche, en explorant librement un domaine assez vaste de la théorie des graphes. Les compétences acquises pendant ma scolarité, en terme de connaissance en théorie des graphes, ou en programmation, m'ont été très utiles. Bien que le stage se termine, ce n'est pour moi que le début, car je vais continuer à étudier ce sujet en thèse. Je pourrai ainsi travailler plus profondément sur les résultats que j'ai obtenus, et en découvrir de nouveaux. 7
58 Références [co] Théorème des couleurs. %A8me\_des\_quatre\_couleurs. [AGS] M. Aïder, S. Gravier, and S. Slimani. Relaxed locally identifying coloring of graphs. 0. [AL78] R. B. Allan and R. Laskar. On domination and independent domination numbers of a graph. Discrete Mathematics, :77, 978. [BKT] J.-L. Baril, H. Kheddouci, and O. Togni. Vertex distinguishing edge- and totalcolorings of cartesian and other product of graphs. 0. [BMP] M. Bouznif, J. Moncel, and M. Preissmann. Generic algorithms for some decision problems on fasciagraphs and rotagraphs. Discrete Mathematics,, 0. [CDG9] F. Chung, P. Diaconis, and R. Graham. Universal cycles for combinatorial structures. Discrete Mathematics, 0 :59, 99. [CNR] Présentation du cnrs. [db] N. G. de Bruijn. A combinatorial problem. 9. [GAFJ0] T. Garaix, C. Artigues, D. Feillet, and D. Josselin. Vehicle routing problems with alternative paths : an application to on-demand transportation. European Journal of Operational Research, 0, 00. [GJ79] M. R. Garey and D. S. Johnson. Computers And Intractability A Guide to the Theory of NP-Completeness. W. H. Freeman And Company, 979. [GKM + ] S. Gravier, M. Kovse, M. Mollard, J. Moncel, and A. Parreau. New results on variants of covering codes in sierpinski graphs. Designs Codes and Cryptography, 9 :888, 0. [HAC] L. Houssin, C. Artigues, and E. Corbel. Frequency allocation problem in a sdma satellite communication system. Computers and Industrial Engineering, : 5, 0. [HHS98] T. W. Haynes, S. T. Hedetniemi, and P. J. Slater. Fundamentals of domination in graphs. New York : Marcel Dekker, 998. [HM] H. Hocquard and M. Montassier. Adjacent vertex-distinguishing coloring of graphs with maximum degree δ. 0. [HOO0] E. Hebrard, E. O'Mahony, and B. O'Sullivan. Constraint programming and combinatorial optimisation in numberjack. Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems, pages 885, 00.
59 [Jac9] B. W. Jackson. Universal cycles of k-subsets and k-permutations. Discrete Mathematics, 7 :50, 99. [JLS] N. Jozefowiez, G. Laporte, and F. Semet. A branch-and-cut algorithm for the minimum labeling hamiltonian cycle problem and two variants. Computers & Operations Research, 8 :55, 0. [KAHM] K. Kiatmanaroj, C. Artigues, L. Houssin, and F. Messine. Frequency assignment in a sdma satellite communication system with beam decentring feature. Computational Optimization and Applications, 5 :955, 0. [KALM] O. Koné, C. Artigues, P. Lopez, and M. Mongeau. Event-based milp models for resource-constrained project scheduling problems. Computers & Operations Research, 8 :, 0. [KALM] O. Koné, C. Artigues, P. Lopez, and M. Mongeau. Comparison of mixed integer linear programming models for the resource-constrained project scheduling problem with consumption and production of resources. Flexible Services and Manufacturing Journal, 5 :57, 0. [KCL98] M. Karpovsky, K. Chakrabarty, and L. Levitin. On a new class of codes for identifying vertices in graphs. IEEE Transactions on information theory,, 998. [KS] W. H. Kautz and R. C. Singleton. Nonranom binary superimposed codes. IEEE transactions on information theory, pages 77, 9. [LAU] Lauréats du cnrs. [LETH] P. Lopez, P. Esquirol, M. Trojet, and F. H'mida. Planication multi-site : Modélisation sous forme d'un problème desatisfaction de contraintes dynamiques. In International Conference on Modeling Optimization & SIMulation (MOSIM 0), Bordeaux : France (0), 0. [Mon05] J. Moncel. Codes identiants dans les graphes. PhD thesis, Université Joseph- Fourier, juin 005. [Mon] J. Moncel. Identication de sommets dans les graphes. Habilitation à diriger des recherches, Université Toulouse - Paul Sabatier, 0. [NPC] S.U. Ngueveu, C. Prins, and R. Woler Calvo. New lower bounds and exact method for the m-pvrp. Transportation Science, 7 :85, 0. [OBB] S. Ourari, C. Briand, and B. Bouzouia. Minimizing the number of tardy jobs in single machine scheduling using mip. RAIRO Operations Research, 7 :, 0. [Par] A. Parreau. Problèmes d'identication dans les graphes. PhD thesis, Institut Fourier, juillet 0. [PW] M. Pil±niak and M. Wo¹niak. On the adjacent-vertex-distinguishing index by sums in total propre colorings. 0.
60 [RS08] J. Rudasová and R. Sotak. Vertex-distinguishing proper edge colourings of some regular graphs. Discrete Mathematics, 08 :79580, 008. [RSTU0] S. Ray, D. Starobinski, A. Trachtenberg, and R. Ungrangsi. Robust location detection with sensor networks. IEEE Journal on Selected Areas in Communications, :005, 00. [SRP + 0] S.Ray, R.Ungrangsi, F. Pellegrini, A.Trachtenberg, and D.Starobinski. Robust location detection in emergency sensor networks. INFOCOM, 00. [TCSW] S. Tian, P. Chen, Y. Shao, and Q. Wang. Adjacent vertex distinguishing edgecoloring and total-coloring of the cartesian product of graphs. Numerical algebra, control and optimization,, 0. [WW08] W. Wang and Y. Wang. Adjacent vertex distinguishing total coloring of graphs with lower average degree. Taiwanese journal of mathematics, :979990, 008.
61 A Résumé des résultats de la littérature Cette annexe référence les résultats de diérents articles. A. [AGS] Soit G = (V, E) un graphe. Notons R la relation d'équivalence suivante : pour u V et v V, urv ssi u et v sont jumeaux. Notons t(g) la taille de la plus grande classe d'équivalence de G. Alors : χ rlid (G/R) t(g) χ rlid (G) χ rlid (G/R) log (ω(g/r)) + s χ rlid (G) s n H = H H... H l χ rlid (G) = n ssi G = K H avec et H i P k k ou H i K Soit G un graphe sans jumeaux et k un entier. Posons G le graphe obtenu à partir de G en remplaçant chaque arête par un chemin de taille, et en ajoutant un sommet pendant à chaque sommet de G. Alors : χ rlid (G ) k ssi χ(g) k Si G est un graphe biparti, alors : χ rlid (G) Si G est un graphe scindé connexe et sans jumeaux, alors : A. [HM] log (ω(g)) + χ rlid (G) ω(g) + Soit G un cycle d'ordre n. Alors : si n 0[] χ α(g) = si n 0[] et n 5 5 si n = 5 Si G est un graphe de degré maximum (G) 5 et de degré moyen maximum mad(g) < (G), alors : χ α (G) (G) + I
62 A. [WW08] χ α(g) χ (G) + χ(g) Si G est un graphe avec deux voisins de degré maximum, alors : χ α(g) (G) + Soit G un graphe planaire. Notons g(g) la longueur d'un cycle le plus court de G. Alors : mad(g) < g(g) g(g) Si G est un graphe tel que mad(g) < et (G) 5, alors : (G) + χ α(g) (G) + et χ α(g) = (G) + ssi G contient deux voisins de degré maximum Si G est un graphe tel que mad(g) < et (G) =, alors : χ α(g) Si G est un graphe tel que mad(g) < et (G) =, alors : χ α(g) 5 Si G est un graphe tel que mad(g) <, alors : χ α(g) max { (G) +, } Si G est un graphe tel que mad(g) < et ne possédant pas deux voisins de degré maximum, alors : χ α(g) max { (G) +, } Si G est un graphe tel que mad(g) < 8 et (G), alors : χ α (G) 5 II
63 A. [BKT] Soit d un entier et G un graphe tel que (G) d. S'il existe une coloration d'arêtes localement identiante de G avec d couleurs, alors : χ α(g P ) d + et χ α(g P k ) d +, pour k Si G et H sont deux graphes diérents de K, alors : Si G est un graphe, alors : χ s(g H) χ s(g) + χ s(h) χ s(g K ) χ s(g) + Si G et H sont deux graphes diérents de K tels que χ(h) χ α(g), alors : χ α(g H) χ α(g) + χ α(h) Si G est un graphe tel que le degré de tout sommet de G est premier avec χ α(g), et H est un graphe tel que χ(h) χ α(g), alors : χ α(g H) χ α(g) + (H) Si G est un graphe tel que le degré de tout sommet de G est premier avec χ α(g), et H est un graphe tel que χ(h) χ α(g), alors : A.5 [PW] Si P n est un chemin d'ordre n, alors : Conjecture : pour tout graphe G : χ α(g H) χ α(g) + (H) χ Σ (P n ) = = (G) + χ Σ (G) (G) + Si G possède deux voisins de degré maximum (G), alors : χ Σ (G) (G) + III
64 χ Σ (P ) = = (G) + Si C n est un cycle d'ordre n, alors : Si K,n est une étoile d'ordre n +, alors : χ Σ (C ) = 5 = (G) + χ Σ (C n ) = = (G) + χ Σ (K,n ) = n + = (K,n ) + Si K n est un graphe complet d'ordre n, alors : { n + = (Kn ) +, si n est pair χ Σ (K n ) = n + = (K n ) +, si n est impair Si K p,q est un graphe biparti complet d'ordre p + q, alors : { (Kp,q ) +, si p < q χ Σ (K p,q ) = (K p,q ) +, si p = q Si G est un graphe biparti k-régulier, alors : Si G est un graphe biparti, alors : χ Σ (G) = (G) + χ Σ (G) (G) + Soit G est un arbre. Si G possède deux voisins de degré maximum, alors : Sinon : χ Σ (G) = (G) + χ Σ (G) = (G) + Si G est un graphe de degré maximum (G), alors : χ Σ (G) (G) + IV
65 A. [TCSW] Soit G et H deux graphes, et c une coloration d'arêtes localement identiante de H avec k (H) + couleurs. Alors : ω(g) est plus petit que le plus petit des facteurs premiers de k χ α(g H) (G) + k si ou H est t-régulier et k r et pgcd(t, k) = Soit G un graphe biparti et K n un graphe complet d'ordre n. Alors : χ α(g K n ) = (G) + n Soit G et H deux arbres d'ordre au moins. Si G et H n'ont pas de sommets de degré maximum qui sont voisins, alors : χ α(g H) = (G) + (H) Sinon : χ α(g H) = (G) + (H) + Pour i [, d] et t t... t d, soit G i un graphe t i -régulier. Si χ α(g ) = t, alors pour tout entier k : k χ α(g G... G k ) = t i + Si G et H sont deux graphes, et c une coloration totale localement identiante de H avec k (H) + couleurs, alors : ω(g) est plus petit que le plus petit des facteurs premiers de k χ α(g H) (G) + k si ou H est t-régulier et k ω(g) et pgcd(t +, k) = Si G est un graphe tel que ω(g), et n un entier, alors : i= χ α(g C n ) = (G) + Si G est un graphe biparti et K n un graphe complet d'ordre n, alors χ α(g K n ) = (G) + n + Soit C m un cycle d'ordre m et K n un graphe complet d'ordre n. Si m est pair ou si n est pair, alors : χ α(c m K n ) = n + V
66 Soit G et H deux arbres d'ordre supérieur à. Si G et H n'ont pas de voisins de degré maximum, alors : χ α(g H) = (G) + (H) + Sinon : χ α(g H) = (G) + (H) + Pour i [, d] et t t... t d, soit G i un graphe t i -régulier. Si χ α(g ) = t +, alors pour tout entier k : k χ α (G G... G k ) = t i + i= VI
67 B Codes et scripts Les diérents programmes et scripts ont été réalisés en C/C++, et en script bash. Les scripts avaient pour but de coordonner les diérents programmes compilés entre eux. Classe Graphe qui modélise des graphes avec une coloration de sommets : c l a s s Graphe { protected : Ensemble e ; i n t nb_sommets_visibles ; i n t nb_arcs_visibles ; vector<pair<int, int> > pos ; vector<pair<int, int> > arcs ; vector<bool> a c t i f s ; vector<int> couleurs ; stack<int> l_suppression ; s t a t i c i n t rayon ; s t a t i c i n t NB_COULEURS_MAX_DESSIN; i n t nb_couleurs ; f l o a t zoom ; bool flag_ok ; bool est_coloration_propre ; bool est_coloration_id ; bool est_coloration_lid ; / bool calc_coloration_propre ( ) ; bool calc_coloration_id ( ) ; bool calc_coloration_lid ( ) ; / public : void c a l c u l ( ) ; Graphe ( i n t nb_c = ) ; VII
68 Graphe ( const Graphe& g ) ; Graphe& operator=(const Graphe &g ) ; ~Graphe ( ) ; void r e s e t ( ) ; void l i r e _ f i c h i e r ( const char s ) ; void sauvegarder ( const char s ) ; i n t ajouter_sommet ( i n t x, i n t y ) ; void annuler_suppression ( ) ; void supprimer_sommet ( i n t s ) ; i n t ajouter_arc ( i n t s, i n t s ) ; bool jumeaux ( i n t s, i n t s ) ; / bool separes ( i n t s, i n t s ) ; / bool coloration_propre ( ) ; bool coloration_id ( ) ; bool c o l o r a t i o n _ l i d ( ) ; void d e s s i n e r ( Display &dpy, Window& win, GC& pen, XColor tab_couleurs [ ] ) ; void changer_couleur ( i n t s, i n t c ) ; void changer_couleur ( i n t s ) ; i n t trouver_sommet ( i n t x, i n t y ) ; void t r a n s l a t i o n ( i n t x, i n t y ) ; void zoomer ( f l o a t z ) ; void chercher_coloration ( i n t num_coloration ) ; void i n i t _ c o l o r a t i o n ( ) ; void c o l o r a t i o n _ a l e a t o i r e ( ) ; void chercher_coloration_id_alea ( ) ; bool coloration_suivante ( ) ; void afficher_ensemble ( ) ; void deplacer_sommet ( i n t s, i n t x, i n t y ) ; i n t get_nb_couleurs () const ; i n t get_nb_sommets () const ; i n t get_nb_arcs () const ; i n t get_couleur ( i n t n) const ; pair<int, int > get_pos ( i n t n) const ; pair<int, int > get_arc ( i n t n) const ; VIII
69 bool e s t _ a c t i f ( i n t n) const ; bool couleur_voisine ( i n t s, i n t c ) ; bool i d e n t i f i e ( i n t s ) ; }; ostream& a f f i c h e r ( ostream& f ) ; ostream& operator <<(ostream &f, Graphe& g ) ; Le programme qui fournit une interface graphique avec les graphes permet : d'ajouter un sommet avec le clic gauche ; de retirer un sommet avec le clic droit ; d'ajouter une arête entre deux sommets en cliquant dessus ; de changer la couleur d'un sommet avec le clic gauche ; de déplacer des sommets en changeant entre les modes édition/déplacement avec la touche d ; de sauvegarder un graphe avec la touche s ; de charger un graphe avec la touche o ; de zoomer avec la touche * ; de dézoomer avec la touche / ; de déplacer le graphe entier avec les touches échées ; de chercher une coloration propre en brute force avec la touche ; de chercher une coloration localement identiante en brute force avec la touche ; de chercher une coloration globalement identiante en brute force avec la touche ; de générer une coloration aléatoire avec la touche c ; IX
70 d'annuler la suppression d'un sommet avec la touche a. Le script bash suivant permet de coordonner les diérents programmes pour créer les cycles universels de manière automatique. #!/ bin /sh./ nettoyage. sh expor t LMAX=50 cd /home/pcoupech/documents/ S tage_colorations_identifiantes / Cycles_universels / echo " Creation des c y c l e s... " echo "$LMAX"./ aaa >/dev/ n u l l echo " Modification des f i c h i e r s... "./ script_modification_pour_verification. sh cd.. / Calculs echo " Calcul des e r r e u r s... "./ r e s u l t a t s _ t e s t s. sh >/dev/ n u l l cd.. / generation echo " Stats... "./comp_max. sh cd.. / v e r i f i c a t i o n echo " Calcul des pgcd ' s... "./ t o u t _ v e r i f i e r. sh echo " Creation du graphique... "./ a f f i c h e r _ p o i n t s. sh cd.. / X
LE PROBLEME DU PLUS COURT CHEMIN
LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs
Introduction à la théorie des graphes. Solutions des exercices
CAHIERS DE LA CRM Introduction à la théorie des graphes Solutions des exercices Didier Müller CAHIER N O 6 COMMISSION ROMANDE DE MATHÉMATIQUE 1 Graphes non orientés Exercice 1 On obtient le graphe biparti
chapitre 4 Nombres de Catalan
chapitre 4 Nombres de Catalan I Dénitions Dénition 1 La suite de Catalan (C n ) n est la suite dénie par C 0 = 1 et, pour tout n N, C n+1 = C k C n k. Exemple 2 On trouve rapidement C 0 = 1, C 1 = 1, C
Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1
CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste
La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.
La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of
6. Les différents types de démonstrations
LES DIFFÉRENTS TYPES DE DÉMONSTRATIONS 33 6. Les différents types de démonstrations 6.1. Un peu de logique En mathématiques, une démonstration est un raisonnement qui permet, à partir de certains axiomes,
RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources
Master Maths Finances 2010/2011 Data Mining janvier 2011 RapidMiner 1 Introduction 1.1 Présentation RapidMiner est un logiciel open source et gratuit dédié au data mining. Il contient de nombreux outils
PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES
Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.
CHAPITRE VIII : Les circuits avec résistances ohmiques
CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On
Algorithmes de recherche
Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème
Télécom Nancy Année 2013-2014
Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON
Par : Abdel YEZZA, Ph.D. Date : avril 2011 / mise à jour oct. 2012 (ajout de la section 3 et augmentation de la section 1)
1 Que signifient AON et AOA? Par : Abdel YEZZA, Ph.D. Date : avril 2011 / mise à jour oct. 2012 (ajout de la section 3 et augmentation de la section 1) Sommaire 1. Concepts... 2 2. Méthode PCM appliquée
Recherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Théorie des Graphes Cours 3: Forêts et Arbres II / Modélisation
IFIPS S7 - informatique Université Paris-Sud 11 1er semestre 2009/2010 Théorie des Graphes Cours 3: Forêts et Arbres II / 1 Forêts et arbres II Théorème 1.1. Les assertions suivantes sont équivalentes
Couples de variables aléatoires discrètes
Couples de variables aléatoires discrètes ECE Lycée Carnot mai Dans ce dernier chapitre de probabilités de l'année, nous allons introduire l'étude de couples de variables aléatoires, c'est-à-dire l'étude
D'UN THÉORÈME NOUVEAU
DÉMONSTRATION D'UN THÉORÈME NOUVEAU CONCERNANT LES NOMBRES PREMIERS 1. (Nouveaux Mémoires de l'académie royale des Sciences et Belles-Lettres de Berlin, année 1771.) 1. Je viens de trouver, dans un excellent
Exercices de dénombrement
Exercices de dénombrement Exercice En turbo Pascal, un entier relatif (type integer) est codé sur 6 bits. Cela signifie que l'on réserve 6 cases mémoires contenant des "0" ou des "" pour écrire un entier.
Date : 18.11.2013 Tangram en carré page
Date : 18.11.2013 Tangram en carré page Titre : Tangram en carré Numéro de la dernière page : 14 Degrés : 1 e 4 e du Collège Durée : 90 minutes Résumé : Le jeu de Tangram (appelé en chinois les sept planches
Eléments de Théorie des Graphes et Programmation Linéaire
INSTITUT NATIONAL POLYTECHNIQUE DE LORRAINE Ecole Nationale Supérieure d Electricité et de Mécanique Eléments de Théorie des Graphes et Programmation Linéaire Didier Maquin Professeur à l INPL Version
Conception d'un réseau de transport d'électricité
La Fédération Française des Jeux Mathématiques et la Société de Calcul Mathématique SA avec l'appui de Réseau de Transport d'electricité Conception d'un réseau de transport d'électricité Auteurs : Florian
Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1
Exemples de problèmes et d applications INF6953 Exemples de problèmes Sommaire Quelques domaines d application Quelques problèmes réels Allocation de fréquences dans les réseaux radio-mobiles Affectation
Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.
Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis
Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques :
MTH EN JEN 2013-2014 Elèves de seconde, première et terminale scientifiques : Lycée Michel Montaigne : HERITEL ôme T S POLLOZE Hélène 1 S SOK Sophie 1 S Eteindre Lycée Sud Médoc : ROSIO Gauthier 2 nd PELGE
Table des matières. 1 Programmation linéaire 1
Table des matières 1 Programmation linéaire 1 2 La théorie des graphes 3 2.1 Dénitions et premières exemples................... 6 2.2 Représentation non graphique d'un graphe.............. 9 2.2.1 Représentation
UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Nombre de marches Nombre de facons de les monter 3 3 11 144 4 5 12 233 5 8 13 377 6 13 14 610 7 21 15 987 8 34 16 1597 9 55 17 2584 10 89
Soit un escalier à n marches. On note u_n le nombre de façons de monter ces n marches. Par exemple d'après l'énoncé, u_3=3. Pour monter n marches, il faut d'abord monter la première. Soit on la monte seule,
Carl-Louis-Ferdinand von Lindemann (1852-1939)
Par Boris Gourévitch "L'univers de Pi" http://go.to/pi314 [email protected] Alors ça, c'est fort... Tranches de vie Autour de Carl-Louis-Ferdinand von Lindemann (1852-1939) est transcendant!!! Carl Louis
TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts
E3FI ESIEE Paris Systèmes et scripts B. Perret TP : Shell Scripts 1 Remarque générale Lorsque vous cherchez des informations sur Internet, n'oubliez pas que langage de shell script que nous avons vu correspond
Raisonnement par récurrence Suites numériques
Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.
Algorithmes d'apprentissage
Algorithmes d'apprentissage 1 Agents qui apprennent à partir d'exemples La problématique : prise de décision automatisée à partir d'un ensemble d'exemples Diagnostic médical Réponse à une demande de prêt
Nombres premiers. Comment reconnaître un nombre premier? Mais...
Introduction Nombres premiers Nombres premiers Rutger Noot IRMA Université de Strasbourg et CNRS Le 19 janvier 2011 IREM Strasbourg Definition Un nombre premier est un entier naturel p > 1 ayant exactement
Structures algébriques
Structures algébriques 1. Lois de composition s Soit E un ensemble. Une loi de composition interne sur E est une application de E E dans E. Soient E et F deux ensembles. Une loi de composition externe
Chapitre 1 : Introduction aux bases de données
Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données
2. RAPPEL DES TECHNIQUES DE CALCUL DANS R
2. RAPPEL DES TECHNIQUES DE CALCUL DANS R Dans la mesure où les résultats de ce chapitre devraient normalement être bien connus, il n'est rappelé que les formules les plus intéressantes; les justications
Axiomatique de N, construction de Z
Axiomatique de N, construction de Z Table des matières 1 Axiomatique de N 2 1.1 Axiomatique ordinale.................................. 2 1.2 Propriété fondamentale : Le principe de récurrence.................
Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies
Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Régis Boulet Charlie Demené Alexis Guyot Balthazar Neveu Guillaume Tartavel Sommaire Sommaire... 1 Structure
Suites numériques 3. 1 Convergence et limite d une suite
Suites numériques 3 1 Convergence et limite d une suite Nous savons que les termes de certaines suites s approchent de plus en plus d une certaine valeur quand n augmente : par exemple, les nombres u n
5 ème Chapitre 4 Triangles
5 ème Chapitre 4 Triangles 1) Médiatrices Définition : la médiatrice d'un segment est l'ensemble des points équidistants des extrémités du segment (cours de 6 ème ). Si M appartient à la médiatrice du
Ebauche Rapport finale
Ebauche Rapport finale Sommaire : 1 - Introduction au C.D.N. 2 - Définition de la problématique 3 - Etat de l'art : Présentatio de 3 Topologies streaming p2p 1) INTRODUCTION au C.D.N. La croissance rapide
TP3 : Creation de tables 1 seance
Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer
Groupe symétrique. Chapitre II. 1 Définitions et généralités
Chapitre II Groupe symétrique 1 Définitions et généralités Définition. Soient n et X l ensemble 1,..., n. On appelle permutation de X toute application bijective f : X X. On note S n l ensemble des permutations
Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé
Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e
Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples
45 Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples Les espaces vectoriels considérés sont réels, non réduits au vecteur nul et
1.5 0.5 -0.5 -1.5 0 20 40 60 80 100 120. (VM(t i ),Q(t i+j ),VM(t i+j ))
La logique oue dans les PME/PMI Application au dosage de l'eau dans les bétons P.Y. Glorennec INSA de Rennes/IRISA [email protected] C. Hérault Hydrostop [email protected] V. Hulin Hydrostop [email protected]
modélisation solide et dessin technique
CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir
Développements limités. Notion de développement limité
MT12 - ch2 Page 1/8 Développements limités Dans tout ce chapitre, I désigne un intervalle de R non vide et non réduit à un point. I Notion de développement limité Dans tout ce paragraphe, a désigne un
Probabilités Loi binomiale Exercices corrigés
Probabilités Loi binomiale Exercices corrigés Sont abordés dans cette fiche : (cliquez sur l exercice pour un accès direct) Exercice 1 : épreuve de Bernoulli Exercice 2 : loi de Bernoulli de paramètre
MIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Compte-rendu de projet de Système de gestion de base de données
Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison
CNAM UE MVA 210 Ph. Durand Algèbre et analyse tensorielle Cours 4: Calcul dierentiel 2
CNAM UE MVA 210 Ph. Duran Algèbre et analyse tensorielle Cours 4: Calcul ierentiel 2 Jeui 26 octobre 2006 1 Formes iérentielles e egrés 1 Dès l'introuction es bases u calcul iérentiel, nous avons mis en
Retournement Temporel
Retournement Temporel Rédigé par: HENG Sokly Encadrés par: Bernard ROUSSELET & Stéphane JUNCA 2 juin 28 Remerciements Je tiens tout d'abord à remercier mes responsables de mémoire, M.Bernard ROUSSELET
Principe de symétrisation pour la construction d un test adaptatif
Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, [email protected] 2 Université
Cours 02 : Problème général de la programmation linéaire
Cours 02 : Problème général de la programmation linéaire Cours 02 : Problème général de la Programmation Linéaire. 5 . Introduction Un programme linéaire s'écrit sous la forme suivante. MinZ(ou maxw) =
Définitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Pourquoi l apprentissage?
Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage
Chapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
1. Création d'un état... 2. 2. Création d'un état Instantané Colonnes... 3. 3. Création d'un état Instantané Tableau... 4
1. Création d'un état... 2 2. Création d'un état Instantané Colonnes... 3 3. Création d'un état Instantané Tableau... 4 4. Création d'un état avec plusieurs tables... 9 5. Modifier la structure d'un état...11
Programmation linéaire
CHAPTER 1 Programmation linéaire 1.1. Qu'est-ce que la programmation linéaire 1.1.1. Exemple: le problème du régime de Polly [1, p.3]. Besoins journaliers: Énergie: 2000 kcal Protéines: 55g Calcium: 800
6. Hachage. Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses
6. Hachage Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses PLAN Définition Fonctions de Hachage Méthodes de résolution de collisions Estimation
Programmation linéaire
1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit
Université Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications
Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au
Année Universitaire 2009/2010 Session 2 de Printemps
Année Universitaire 2009/2010 Session 2 de Printemps DISVE Licence PARCOURS : CSB4 & CSB6 UE : INF 159, Bases de données Épreuve : INF 159 EX Date : Mardi 22 juin 2010 Heure : 8 heures 30 Durée : 1 heure
Une réponse (très) partielle à la deuxième question : Calcul des exposants critiques en champ moyen
Une réponse (très) partielle à la deuxième question : Calcul des exposants critiques en champ moyen Manière heuristique d'introduire l'approximation de champ moyen : on néglige les termes de fluctuations
Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/
Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation
Objets Combinatoires élementaires
Objets Combinatoires élementaires 0-0 Permutations Arrangements Permutations pour un multi-ensemble mots sous-ensemble à k éléments (Problème du choix) Compositions LE2I 04 1 Permutations Supposons que
GEA II Introduction aux probabilités Poly. de révision. Lionel Darondeau
GEA II Introduction aux probabilités Poly. de révision Lionel Darondeau Table des matières Énoncés 4 Corrigés 10 TD 1. Analyse combinatoire 11 TD 2. Probabilités élémentaires 16 TD 3. Probabilités conditionnelles
NOTATIONS PRÉLIMINAIRES
Pour le Jeudi 14 Octobre 2010 NOTATIONS Soit V un espace vectoriel réel ; l'espace vectoriel des endomorphismes de l'espace vectoriel V est désigné par L(V ). Soit f un endomorphisme de l'espace vectoriel
ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE
ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE P. Baudet, C. Azzaro-Pantel, S. Domenech et L. Pibouleau Laboratoire de Génie Chimique - URA 192 du
Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes
Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction
ÉPREUVE COMMUNE DE TIPE 2008 - Partie D
ÉPREUVE COMMUNE DE TIPE 2008 - Partie D TITRE : Les Fonctions de Hachage Temps de préparation :.. 2 h 15 minutes Temps de présentation devant le jury :.10 minutes Entretien avec le jury :..10 minutes GUIDE
Optimisation Combinatoire et Colonies de Fourmis Nicolas Monmarche April 21, 1999 Sommaire Inspiration biologiques Ant Colony Optimization Applications TSP QAP Flow Shop Problemes dynamiques 1 Historique
9 5 2 5 Espaces probabilisés
BCPST2 9 5 2 5 Espaces probabilisés I Mise en place du cadre A) Tribu Soit Ω un ensemble. On dit qu'un sous ensemble T de P(Ω) est une tribu si et seulement si : Ω T. T est stable par complémentaire, c'est-à-dire
BACCALAUREAT GENERAL MATHÉMATIQUES
BACCALAUREAT GENERAL FEVRIER 2014 MATHÉMATIQUES SERIE : ES Durée de l épreuve : 3 heures Coefficient : 5 (ES), 4 (L) 7(spe ES) Les calculatrices électroniques de poche sont autorisées, conformement à la
OPTIMISATION À UNE VARIABLE
OPTIMISATION À UNE VARIABLE Sommaire 1. Optimum locaux d'une fonction... 1 1.1. Maximum local... 1 1.2. Minimum local... 1 1.3. Points stationnaires et points critiques... 2 1.4. Recherche d'un optimum
1. Introduction...2. 2. Création d'une requête...2
1. Introduction...2 2. Création d'une requête...2 3. Définition des critères de sélection...5 3.1 Opérateurs...5 3.2 Les Fonctions...6 3.3 Plusieurs critères portant sur des champs différents...7 3.4 Requête
Annexe 6. Notions d ordonnancement.
Annexe 6. Notions d ordonnancement. APP3 Optimisation Combinatoire: problèmes sur-contraints et ordonnancement. Mines-Nantes, option GIPAD, 2011-2012. [email protected] Résumé Ce document
Baccalauréat technologique
Baccalauréat technologique Épreuve relative aux enseignements technologiques transversaux, épreuve de projet en enseignement spécifique à la spécialité et épreuve d'enseignement technologique en langue
I3, Probabilités 2014 Travaux Dirigés F BM F BM F BM F BM F B M F B M F B M F B M 20 20 80 80 100 100 300 300
I3, Probabilités 2014 Travaux Dirigés TD 1 : rappels. Exercice 1 Poker simplié On tire 3 cartes d'un jeu de 52 cartes. Quelles sont les probabilités d'obtenir un brelan, une couleur, une paire, une suite,
Problème : Calcul d'échéanciers de prêt bancaire (15 pt)
Problème : Calcul d'échéanciers de prêt bancaire (15 pt) 1 Principe d'un prêt bancaire et dénitions Lorsque vous empruntez de l'argent dans une banque, cet argent (appelé capital) vous est loué. Chaque
Propagation sur réseau statique et dynamique
Université de la Méditerranée UFR Sciences de Luminy Rapport de stage informatique pour le Master 2 de Physique, Parcours Physique Théorique et Mathématique, Physique des Particules et Astroparticules.
Big Data et Graphes : Quelques pistes de recherche
Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de
I. Ensemble de définition d'une fonction
Chapitre 2 Généralités sur les fonctions Fonctions de références et fonctions associées Ce que dit le programme : Étude de fonctions Fonctions de référence x x et x x Connaître les variations de ces deux
De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que
Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer
1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Initiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Chaînes de Markov au lycée
Journées APMEP Metz Atelier P1-32 du dimanche 28 octobre 2012 Louis-Marie BONNEVAL Chaînes de Markov au lycée Andreï Markov (1856-1922) , série S Problème 1 Bonus et malus en assurance automobile Un contrat
Vers l'ordinateur quantique
Cours A&G Vers l'ordinateur quantique Données innies On a vu dans les chapîtres précédents qu'un automate permet de représenter de manière nie (et même compacte) une innité de données. En eet, un automate
Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé
Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé EXERCICE 1 5 points Commun à tous les candidats 1. Réponse c : ln(10)+2 ln ( 10e 2) = ln(10)+ln ( e 2) = ln(10)+2 2. Réponse b : n 13 0,7 n 0,01
3 Approximation de solutions d équations
3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle
Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot
Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,
Info0804. Cours 6. Optimisation combinatoire : Applications et compléments
Recherche Opérationnelle Optimisation combinatoire : Applications et compléments Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 17 février 2014 Plan de
Systèmes de transport public guidés urbains de personnes
service technique des Remontées mécaniques et des Transports guidés Systèmes de transport public guidés urbains de personnes Principe «GAME» (Globalement Au Moins Équivalent) Méthodologie de démonstration
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Cours de Probabilités et de Statistique
Cours de Probabilités et de Statistique Licence 1ère année 2007/2008 Nicolas Prioux Université Paris-Est Cours de Proba-Stat 2 L1.2 Science-Éco Chapitre Notions de théorie des ensembles 1 1.1 Ensembles
Conduite et Gestion de Projet - Cahier des charges
Conduite et Gestion de Projet - Cahier des charges 1 Introduction Sophie Toulouse LIPN - Université Paris 13 +33.1.49.40.40.73 99 av. Jean-Baptiste Clément [email protected] 93430 Villetaneuse
Cours de Master Recherche
Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction
Travaux pratiques avec RapidMiner
Travaux pratiques avec RapidMiner Master Informatique de Paris 6 Spécialité IAD Parcours EDOW Module Algorithmes pour la Fouille de Données Janvier 2012 Prise en main Généralités RapidMiner est un logiciel
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications
Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications A. Optimisation sans contrainte.... Généralités.... Condition nécessaire et condition suffisante
Image d un intervalle par une fonction continue
DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction
