Modélisation par le concept de graphe

Présentations similaires


Présentation au sujet: "Modélisation par le concept de graphe"— Transcription de la présentation:

1 Modélisation par le concept de graphe

2 Graphe (orienté) G (N, A)
N : Ensemble de noeuds (sommets), noté 1, ... n, Cardinal (N) = n A : Ensemble de couples issus de N x N - arc - (i, j) : i noeud initial, j noeud final 2 1 3 4 5

3 Définitions p-Graphe : Un graphe est un p-graphe ssi
pour tout couple (i,j) il n'existe pas plus de p arcs reliant i à j Fonction d'incidence :  : A -> N x N G (N, A, ,, ) Etiquettage des noeuds et des arcs > Type abstrait -> fonctions de manipulation : successeurs (+), prédécesseurs ( -), ...

4 Exemple + (1) = {2, 4} boucle (arc (2, 2)) - (2) = {1, 2, 4}
3 4 5 + (1) = {2, 4} boucle (arc (2, 2)) - (2) = {1, 2, 4} 2-graphe (2 arcs (5, 4))

5 Définitions (2) Demi-degré d'un noeud i : Extérieur + Intérieur
Extérieur : nombre d'arcs ayant i comme extrémité intiale (cardinal de +(i)) Intérieur : ayant i comme extrémité finale Cocycle d'un ensemble A' d'arcs inclus dans A : + (A') + - (A') + : Ensemble des arcs ayant leur extrémité initiale dans A' et finale dans A \ A' - : Ensemble des arcs ayant leur extrémité finale dans A \ A' et initiale dans A'

6 Chaîne / Cycle (-> non orienté)
Chaine : Sequence d'arètes telle que chaque arête de la séquence (sauf la 1ere et dernieer) ait une extrémité commune avec l'arête précédente et l'autre extrémité commune avec l'arête suivante Elémentaire : on ne passe pas deux fois par le même sommet Cycle : chaine dont les extrémités coïncident Cycle élémentaire : chaine élémentaire + minimal (pas d'autre cycle)

7 Chemin (dans un contexte orienté)
Chaine dont tous les arcs sont orientés dans le même sens simple : ne comporte pas deux fois le même arc élémentaire : ne rencontre pas deux fois le même sommet élémentaire => simple mais pas l'inverse circuit : chemin dont les extrémités coïncident circuit élémentaire : sommets ont un degré égal à 2 Réseau de transport : opérateur de base (sous contrainte)

8 Exemple Chaîne : (a1, a5, a6, a3, a2) Cycle : (a1, a5, a6, a4)
(-> non élémentaire) a3 a4 a5 3 Cycle : (a1, a5, a6, a4) 4 5 (-> élémentaire) a6 Chemin : (a1, a5, a7, a3) a1 2 1 a2 (-> non élémentaire) a3 a4 a5 3 Circuit : (a5, a7, a3) 4 a6 5 a7

9 Il existe une chaine joignant tout sommet i à tout sommet j
Connexité Il existe une chaine joignant tout sommet i à tout sommet j -> Composante connexe -> nombre de connexité = 1 <=> graphe connexe Fortement connexe (orienté) : il existe un chemin de i à j et de j à i Application transport : -> notion d'arbre (réseau hydrolique) -> forte connexité (réseau de transport urbain, téléphone, ...)

10 Graphe planaire Admet une représentation sur un plan Sommet : Point
Aretes : courbes -> Deux courbes ne se rencontrent pas en dehors de leurs extrémités 1 2 2 3 4 1 5 4 5 3 -> Gestion des représentations schématiques

11 (i, j) <=> Il existe un chemin de i à j dans G
FERMETURE TRANSITIVE CONSTRUIRE UN NOUVEAU GRAPHE G* A PARTIR DE G : (i, j) <=> Il existe un chemin de i à j dans G 2 1 G* 3 2 4 1 5 3 G 4 5

12 Représentations informatique
Matrices : Matrice adjacence : 1-graphe, (booléenne ou valuée) Matrice d'incidence sommets-arcs (-1 -ext-, 0, 1 -orig-) ligne sommet, colonne : arc Listes : (matrices creuses) Listes des sommets successeurs / prédécesseurs Listes des arcs (cocycles)

13 Représentations informatique (2)
Matrice : -> Que des problèmes - Espace mémoire important - Temps passé à faire des tests (complexité des algorithmes) - Pas de flexibilité - Pas de multi-graphe Listes -> Type abstrait avec primitives de manipulations - Flexibilité (insertion / suppression) - Emplacement mémoire raisonnable

14 Exemples Matrice d'adjacence non valuée / non orientée // valuée / orientée Matrice d'incidence sommets / arcs Liste des successeurs / prédécesseurs / voisins / sommets / arcs / arêtes Liste des cocycles orientés / non orientés => Problème passage d'une représentation à une autre

15 Exemple (2) Fonction de coût 5 2 1 2 2 1 7 2 3 3 4 4 5 5 2 3 1 2 1 4 3
6 Numérotation des arcs

16 Booléenne 1-graphe, Non orienté 2 arcs => Matrice symétrique 1 2 3
4 5

17 Valuation => Fonction de coût
Arc inexistant : 0 ou infini => problème de représentation 1 2 3 4 5 7

18 Sommets-arcs p-graphe, pas de boucle
Colonne : arc, ligne : sommet, origine : + destination : - 1 2 3 4 5 6 +1 -1

19 Successeurs Tableau : Nœud : tableau [1.. N+1] d’indirections sur les successeurs ([1.. M+1]) Principe : idem pour les voisins (non orienté) mais symétrique => 2M + 1 ou pour les prédécesseurs 1 2 3 4 5 6 1 3 4 4 5 7 2 4 3 2 3 4 X 1 2 3 4 5 6 7

20 Successeurs (version liste chaînée)
1 2 3 4 5 2 3 2 3 4 4

21 Orienté Valué Idem successeurs + valuation (liste chaînée : multi-graphe) 1 2 3 4 5 6 1 3 4 4 5 7 2 4 3 2 3 4 X 5 2 2 7 2 3 1 2 3 4 5 6 7

22 Cocycle Idem liste des successeurs mais avec les arcs => p-graphes avec boucles 1 2 3 4 5 6 1 3 4 4 5 7 1 2 4 3 5 6 X 2 4 3 2 3 4 X 1 2 3 4 5 6 7

23 Passages Matrice d'incidence O(MN) O (MN) Matrice d'adjacence 2 O(N )
Liste des arcs / arêtes Liste des successeurs O(M) O(M) O(M) Liste des cocycles Liste des prédécesseurs

24 Problèmatique Base de données
Fonction d'étiquettage (noeud, arc) -> Le graphe ne tient pas en MC -> Opérateurs de manipulation - chemin - Modélisation du graphe (1 ou plusieurs niveaux d'abstraction) -> Passage des informations aux différents niveaux

25 Problèmes conventionnels
Chemin eulérien : chemin qui emprunte une fois et une seule chaque arc Chemin hamiltonien : chemin qui emprunte une fois et une seule chaque sommet Stable : Sous-ensemble, S, de sommets d'un graphe tels que deux sommets de S ne sont pas adjacents () Clique : Sous graphe complet

26 Problèmes conventionnels (2)
Domaine de la recherche opérationnelle (parcours / contraintes) Opérateurs de manipulation : Attention aux pb NP-Complet Bases de données déductives / documentaires Bases de données spatiales (transports)


Télécharger ppt "Modélisation par le concept de graphe"
Annonces Google