1 / 68

Cours de graphes

Cours de graphes. Quelques graphes particuliers. Les grandes lignes du cours. Définitions de base Connexité Les plus courts chemins Dijkstra et Bellmann-Ford Arbres, graphes particuliers Arbres de recouvrement minimaux Problèmes de flots Coloriage de graphes, graphes planaires

kamran
Download Presentation

Cours de graphes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cours de graphes Quelques graphes particuliers. Cours de graphes 8 - Intranet

  2. Les grandes lignes du cours • Définitions de base • Connexité • Les plus courts chemins • Dijkstra et Bellmann-Ford • Arbres, graphes particuliers • Arbres de recouvrement minimaux • Problèmes de flots • Coloriage de graphes, graphes planaires • Couplage • Chemins d’Euler et de Hamilton • Problèmes NP-complets Cours de graphes 8 - Intranet

  3. Critères sur les graphes----------------------------------------------------------------- • Nous allons étudier quelques graphes particuliers qui sont utilisés surtout dans les ordinateurs parallèles. Nous utiliserons des dénominations de machines parallèles ! Cours de graphes 8 - Intranet

  4. Critères sur les graphes----------------------------------------------------------------- • Nous allons étudier quelques graphes particuliers qui sont utilisés surtout dans les ordinateurs parallèles. • Nous pouvons classer les ordinateurs parallèles deux grandes catégories : • Les ordinateurs à mémoire partagée ! PROC M E M O I R E R E S E A U PROC PROC Cours de graphes 8 - Intranet

  5. Critères sur les graphes----------------------------------------------------------------- • Nous allons étudier quelques graphes particuliers qui sont utilisés surtout dans les ordinateurs parallèles. • Nous pouvons classer les ordinateurs parallèles deux grandes catégories : • Les ordinateurs à mémoire partagée ! • Les ordinateurs à mémoires distribuées ! R E S E A U MEMOIRE PROC Ordinateurs mis en réseau ! MEMOIRE PROC Cours de graphes 8 - Intranet

  6. Critères sur les graphes----------------------------------------------------------------- • Il y a plusieurs modes d’acheminement des données ! • Dans le mode « store and forward » le message fait escale dans les nœuds intermédiaires ! Un premier saut . . . suivi d’un second ! PROC PROC PROC MEMOIRE MEMOIRE MEMOIRE Départ ! Arrivée ! Cours de graphes 8 - Intranet

  7. Critères sur les graphes----------------------------------------------------------------- • Il y a plusieurs modes d’acheminement des données ! • Dans le mode « store and forward » le message fait escale dans les nœuds intermédiaires ! • Dans le mode « circuit switched » nous établissons un chemin direct par concaténation de liens individuels ! PROC PROC PROC MEMOIRE MEMOIRE MEMOIRE Départ ! Arrivée ! Cours de graphes 8 - Intranet

  8. Critères sur les graphes----------------------------------------------------------------- • Plusieurs critères sont importants pour le choix du réseau d’interconnexion ! • Des critères au niveau d’un nœud ! • Le degré des nœuds – le nombre de voisins ! • La régularité du degré – tout le monde a le même nombre de voisins ! • Des critères physiques sur l’ensemble du réseau ! • Des critères logiques sur l’ensemble du réseau ! Un graphe de degré régulier 3 ! Cours de graphes 8 - Intranet

  9. Critères sur les graphes----------------------------------------------------------------- • Plusieurs critères sont importants pour le choix du réseau d’interconnexion ! • Des critères au niveau d’un nœud ! • Des critères physiques sur l’ensemble du réseau ! • Le diamètre du graphe ! • La valeur de bissection qui donne le plus petit nombre de liens qui relie une moitié des nœuds à l’autre ! • Des critères logiques sur l’ensemble du réseau ! La bissection vaut 3 ici ! Cours de graphes 8 - Intranet

  10. Critères sur les graphes----------------------------------------------------------------- • Plusieurs critères sont importants pour le choix du réseau d’interconnexion ! • Des critères au niveau d’un nœud ! • Des critères physiques sur l’ensemble du réseau ! • Des critères logiques sur l’ensemble du réseau ! • Est-ce que la structure du graphe est régulière ? • Un anneau (cycle) est régulier ! • Un graphe en « ligne » ne l’est pas à cause des extrémités ! Cours de graphes 8 - Intranet

  11. Critères sur les graphes----------------------------------------------------------------- • Plusieurs critères sont importants pour le choix du réseau d’interconnexion ! • Des critères au niveau d’un nœud ! • Des critères physiques sur l’ensemble du réseau ! • Des critères logiques sur l’ensemble du réseau ! • Est-ce que nous pouvons plonger un anneau dans le graphe (cycle de Hamilton) ? Ce graphe contient un anneau Cours de graphes 8 - Intranet

  12. Critères sur les graphes----------------------------------------------------------------- • Plusieurs critères sont importants pour le choix du réseau d’interconnexion ! • Des critères au niveau d’un nœud ! • Des critères physiques sur l’ensemble du réseau ! • Des critères logiques sur l’ensemble du réseau ! • Combien y a-t-il de plus courts chemins disjoints ? Ce graphe contient deux plus courts chemins : Cours de graphes 8 - Intranet

  13. Critères sur les graphes----------------------------------------------------------------- • Le graphe idéal vérifie, entre autres : • Le degré de chaque sommet est moyen ! • Le graphe est de degré régulier ! • Le diamètre est petit ! • La bissection est grande ! • La structure du graphe est régulière ! • Il comporte l’anneau et d’autres graphes usuels comme sous-graphes ! • Il offre plusieurs plus courts chemins arêtes-disjoints ! Ce graphe n'existe pas ! ! ! Cours de graphes 8 - Intranet

  14. Numérotation des nœuds----------------------------------------------------------------- • Comment devons-nous numéroter les sommets pour que le « routage » puisse être déduit à partir des numéros des points de départ et d’arrivée ? • On appelle « router » le fait de trouver un des plus courts chemins entre l’expéditeur et le destinataire. • Les numéros de l ’expéditeur et du destinataire doivent permettre de déduire facilement la première arête du plus court chemin ! • Ensuite, nous itérons le même algorithme à partir du second sommet, etc. Cours de graphes 8 - Intranet

  15. Le graphe en ligne----------------------------------------------------------------- L E G R A P H E E N L I G N E Cours de graphes 8 - Intranet

  16. Le graphe en ligne----------------------------------------------------------------- 0 1 n–2 n–1 . . . • Routage : Nous envoyons à gauche ou à droite suivant que le destinataire a un numéro plus petit ou plus grand. • Caractéristiques du graphe : • Graphe de degré non régulier, de structure irrégulière ! • Diamètre n–1 et bissection 1 pour n nœuds ! • Nous ne pouvons pas plonger d’anneau, il n’y a pas de plus courts chemins alternatifs, . . . ! • C’est très mauvais, mis à part le fait que le degré du graphe soit limité à 2 ! Cours de graphes 8 - Intranet

  17. Le graphe en anneau----------------------------------------------------------------- L E G R A P H E E N A N N E A U Cours de graphes 8 - Intranet

  18. Le graphe en anneau----------------------------------------------------------------- 0 1 n–2 n–1 . . . • Routage : Nous envoyons à gauche ou à droite suivant que le plus court des chemins ( différence des modulos ). • Caractéristiques du graphe : • Graphe de degré régulier, de structure régulière ! • Diamètre n/2 et bissection 2 pour n nœuds ! • Nous pouvons y plonger un anneau, mais il n’y a pas de plus courts chemins alternatifs, . . . ! • Cela reste assez mauvais, mis à part la régularité, le degré limité du graphe et l’utilité de la notion d’anneau ! Cours de graphes 8 - Intranet

  19. Le produit de graphes----------------------------------------------------------------- L E P R O D U I T D E G R A P H E S Cours de graphes 8 - Intranet

  20. Le produit de graphes----------------------------------------------------------------- • Soient deux graphes G et G’ ! • Nous appelons produit de ces deux graphes le graphe : • qui est composé de sommets numérotés ( i , j ) avec i issu de la numérotation de G et j de celle de G’ , • qui comporte une arête entre ( i , j ) et ( k , l ) ssi : • i = k et ( j , l ) est une arête de G’ , • j = l et ( i , k ) est une arête de G . Cours de graphes 8 - Intranet

  21. Le produit de graphes----------------------------------------------------------------- Le voilà ! . . . . . . . . . . . . . . . . . . Cours de graphes 8 - Intranet

  22. La grille 2 - D----------------------------------------------------------------- L A G R I L L E 2 - D Cours de graphes 8 - Intranet

  23. La grille 2 - D----------------------------------------------------------------- • C’est le produit de deux graphes en ligne de n et m éléments respectivement ! • Caractéristiques du graphe : • Graphe de degré non régulier, de structure irrégulière ! • Diamètre n+m et bissection min ( n , m ) pour n*m nœuds ! • Nous pouvons parfois y plonger anneau et il y a deux plus courts chemins alternatifs, . . . ! Cours de graphes 8 - Intranet

  24. La grille 2 - D----------------------------------------------------------------- • C’est le produit de deux graphes en ligne de n et m éléments respectivement ! • Routage : • Les sommets sont indexés par un couple ( i , j ) ! • Nous routons d’abord sur l’un des axes,ensuite l’autre. • Cela s’appelle une « distance de Manhattan » ! • Il y deux plus courts chemins arêtes-disjoints ! Ce n'est toujours pas terrible ! ! ! Cours de graphes 8 - Intranet

  25. Le tore 2–D----------------------------------------------------------------- L E T O R E 2 - D Cours de graphes 8 - Intranet

  26. Le tore 2–D----------------------------------------------------------------- • C’est le produit de deux graphes en anneau de n et m éléments respectivement ! • Caractéristiques du graphe : • Graphe de degré régulier, de structure régulière ! • Diamètre ( n+m ) / 2 et bissection 2 * min ( n , m ) pour n*m nœuds ! • Nous pouvons parfois y plonger anneau et il y a deux plus courts chemins alternatifs, avec un routage comme pour la grille mais incluant les modulos ! C’est une grille avec les liens de rebouclage ! ! ! . . . . . . Cours de graphes 8 - Intranet

  27. Le tore 2–D----------------------------------------------------------------- • C’est le produit de deux graphes en anneau de n et m éléments respectivement ! • Caractéristiques du graphe : • Graphe de degré régulier, de structure régulière ! • Diamètre ( n+m ) / 2 et bissection min ( n , m ) / 2 pour n*m nœuds ! • Nous pouvons parfois y plonger anneau et il y a deux plus courts chemins alternatifs, avec un routage comme pour la grille mais incluant les modulos ! C'est déjà plus raisonnable ! ! ! . . . . . . Cours de graphes 8 - Intranet

  28. Le tore 2–D----------------------------------------------------------------- • C’est le produit de deux graphes en anneau de n et m éléments respectivement ! • Dans l’espace : C'est déjà plus raisonnable ! ! ! . . . . . . Cours de graphes 8 - Intranet

  29. La grille 3 - D----------------------------------------------------------------- L A G R I L L E 3 - D Cours de graphes 8 - Intranet

  30. La grille 3 - D----------------------------------------------------------------- • C’est le produit de trois graphes en ligne de n , m et l éléments respectivement ! • Caractéristiques du graphe : • Graphe de degré non régulier, de structure irrégulière ! • Diamètre n+m+l et bissection n * min ( m , l ) si n = min ( n , m , l ) pour n*m*l nœuds ! . . . Routage Manhattan en 3 D ! ! ! . . . La bissection est un plan de section qui coupe le moins de liens. Cours de graphes 8 - Intranet

  31. La grille 3 - D----------------------------------------------------------------- • C’est le produit de trois graphes en ligne de n , m et l éléments respectivement ! • Caractéristiques du graphe : • Graphe de degré non régulier, de structure irrégulière ! • Diamètre n+m+l et bissection n * min ( m , l ) si n = min ( n , m , l ) pour n*m*l nœuds ! • Nous pouvons parfois y plonger anneau et il y a trois plus courts chemins alternatifs, . . . ! . . . Il manque les liens de rebouclage ! . . . Cours de graphes 8 - Intranet

  32. Le tore 3–D----------------------------------------------------------------- L E T O R E 3 - D Cours de graphes 8 - Intranet

  33. Le tore 3–D----------------------------------------------------------------- • C’est le produit de trois graphes en anneau de n , m et l éléments respectivement ! • Caractéristiques du graphe : • Graphe de degré régulier, de structure régulière ! • Diamètre ( n+m+l ) / 2 et bissection 2 * n * min( m , l ) si n = min( n , m , l ) pour n*m*l nœuds ! • Nous pouvons parfois y plonger anneau et il y a trois plus courts chemins alternatifs, avec un routage comme pour la grille mais incluant les modulos ! . . . C’est une grille avec les liens de rebouclage ! ! ! . . . Cours de graphes 8 - Intranet

  34. Le tore 3–D----------------------------------------------------------------- • C’est le produit de trois graphes en anneau de n , m et l éléments respectivement ! • Dans l’espace : . . . C'est une structure très intéressante ! . . . Cours de graphes 8 - Intranet

  35. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- L E G R A P H E H Y P E R C U B E Cours de graphes 8 - Intranet

  36. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- • Nous pouvons construire des tores de toutes dimensions : • ( k , k , . . . , k ) • Nous obtenons un « hypercube » lorsque tous les anneaux comportent deux nœuds : • ( 2 , 2 , . . . , 2 ) • Deux nœuds « en ligne » et deux nœuds « en anneau » ont le même voisinage : 1 2 n Une ligne Un anneau Cours de graphes 8 - Intranet

  37. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- Nous relions deux hypercubes de dimension 0 ! L’hypercube de dimension 0 ! ! ! L’hypercube de dimension 1 ! ! ! Nous relions deux hypercubes de dimension 1 ! L’hypercube de dimension 2 ! ! ! L’hypercube de dimension 3 ! ! ! Cours de graphes 8 - Intranet

  38. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- Dimension 4 – le voilà ! Cours de graphes 8 - Intranet

  39. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- L E S P R O P R I E T E S D E L ’ H Y P E R C U B E Cours de graphes 8 - Intranet

  40. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- • Un hypercube de dimension n : • comporte 2 nœuds, • est régulier en structure et en degré qui vaut n , • a un diamètre n et une bissection de 2 , • permet d’y plonger un anneau, • possède un routage simple et intuitif, • possède n plus courts chemins arêtes-disjoints. n n–1 Il serait parfait si ce n'est pour le degré des noeuds . . . Cours de graphes 8 - Intranet

  41. L’hypercube-----------------------------------------------------------------L’hypercube----------------------------------------------------------------- Une limitation sévère : Le nombre de noeuds doit être une puissance de 2 ! • A ce moment, nous avons pour n nœuds : • une dimension en log ( n ) , • un degré en log ( n ) , • un diamètre en log ( n ) , • log ( n ) plus courts chemins arêtes-disjoints, • une bissection de n / 2 ! Cours de graphes 8 - Intranet

  42. La numérotation dans l’hypercube----------------------------------------------------------------- L A N U M E R O T A T I O N D A N S L ’ H Y P E R C U B E Cours de graphes 8 - Intranet

  43. La numérotation dans l’hypercube----------------------------------------------------------------- • La numérotation adéquate de l’hypercube est essentielle à son fonctionnement. • Elle est basée sur une écriture des nombres en base 2 . • Pour construire un hypercube numéroté de dimension n : • nous partons de deux hypercubes numérotés de dimension n–1 , • pour l’un des cubes nous préfixons les nœuds d’un 0 , • pour l’autre cube, nous préfixons les nœuds d’un 1 , • nous relions les nœuds qui ne diffèrent que dans leur chiffre de poids fort ( dimension n ) ! Cours de graphes 8 - Intranet

  44. La numérotation dans l’hypercube----------------------------------------------------------------- e 0 1 En décimal ! 2 3 Deux hypercubes et leur numérotation ! Nous préfixons d’un 0 ou d’un 1 ! Nous relions les nœuds qui diffèrent en dimension 1 seulement ! 1 0 1 1 0 0 0 1 0 1 Cours de graphes 8 - Intranet

  45. La numérotation dans l’hypercube----------------------------------------------------------------- 6 7 1 1 0 1 1 1 En décimal ! 4 5 1 0 0 1 0 1 0 1 0 0 1 1 Deux hypercubes et leur numérotation ! Nous préfixons d’un 0 ou d’un 1 ! Nous relions les nœuds qui diffèrent en dimension 1 seulement ! 2 3 0 0 0 0 0 1 0 1 Cours de graphes 8 - Intranet

  46. La numérotation dans l’hypercube----------------------------------------------------------------- Les liens de dimension 1 ! 1 1 0 1 1 1 1 0 0 1 0 1 0 1 0 0 1 1 dim 3 dim 2 0 0 0 0 0 1 dim 1 Leurs écritures décimales diffèrent de 1 . Cours de graphes 8 - Intranet

  47. L’anneau comme sous-graphe----------------------------------------------------------------- L ’ A N N E A U C O M M E S O U S – G R A P H E Cours de graphes 8 - Intranet

  48. L’anneau comme sous-graphe----------------------------------------------------------------- • Nous pouvons plonger un anneau dans un hypercube. • Les nœuds voisins dans l’hypercube ne diffèrent que dans une position binaire. • Nous devons donc énumérer les nombres 0 à n–1 en changeant un seul bit à la fois. • C’est le code de Gray : • Le code de Gray de base est constitué de 0 suivi de 1 . • Pour obtenir le code de Gray de longueur 2*n , il faut : • le code de Gray de longueur n préfixé de 0 , • le code de Gray de longueur n pris dans l’ordre inverse et préfixé de 1 . Cours de graphes 8 - Intranet

  49. L’anneau comme sous-graphe----------------------------------------------------------------- 0 1 0 0 0 1 1 1 1 0 0 0 0 00 1 01 1 01 0 1 1 0 11 1 10 1 10 0 1 1 0 1 1 1 1 0 0 1 0 1 1 0 1 1 0 1 0 0 1 1 0 0 0 0 0 1 0 0 0 1 Cours de graphes 8 - Intranet

  50. Les chemins arêtes-disjoints----------------------------------------------------------------- L E S C H E M I N S A R E T E S - D I S J O I N T S Cours de graphes 8 - Intranet

More Related