Séminaire 8INF952 Visual Analytics – Cours II Dessin de graphes Graphes planaires Graphes ‘mous’ Méthodes spectrales.

Slides:



Advertisements
Présentations similaires
7. Probème de flot à coût minimum.
Advertisements

Introduction à la Théorie des graphes
Théorie des graphes.
Présentation générale Marc Gengler
Optimisation de maillages Simplification Marc Neveu.
Traitement d’images : concepts avancés
Dans cette partie Graphes Eulériens.
Algorithmes et structures de données avancées Cours 7
Algorithmes et structures de données avancés
Graphes et Applications Thème de léquipe « Combinatoire et Algorithmique » LaBRI – janvier 2008.
Efficient Simplification of Point-Sampled Surfaces
Introduction à la Théorie des graphes
et les multipartis complets
UMLV 1 Problème G = (S, A) graphe (orienté) Calculer H = (S, B) où B est la clôture réflexive et transitive de A. Note : (s,t) B ssi il existe un chemin.
Problème des 4 couleurs, graphes planaires.
Modélisation par le concept de graphe
Xialong Dai, Siamak Khorram
Visualisation d’information interactive 5 : Graphes
Visualisation d’information interactive : Graphes
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
Chap. 1 INTRODUCTION Beaucoup de problèmes de la vie courante, tels la gestion de réseaux de communication ou l'ordonnancement de tâches, correspondent.
Animation de solides en contact par modèle physique
Chapitre VII :Commande par retour d’état
COURS SUR LA THEORIE DES GRAPHES
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Heuristiques A. Introduction B. Recherche d ’une branche
Problème des 4 couleurs, graphes planaires.
Optimisation linéaire
Théorie des graphes Un peu de vocabulaire.
La segmentation
Structures de données IFT-2000
Coloration gap sommet identifiante de graphes
La corrélation et la régression multiple


Algorithmes d ’approximation
PROBLEMES DE DEGRE-DIAMETRE DE GRAPHES DANS LE CAS GENERAL
Optimisation dans les réseaux
Recherche Opérationnelle
Recherche Opérationnelle
- GRAPHES - Composantes et types
1 Protection des arbres multicast avec une forêt duale Mohand Yazid SAIDI Bernard COUSIN Miklós MOLNÁR 15 Février 2006.
Cours de graphes Marc Gengler Alexandra Bac Sébastien Fournier
21 février 2006Cours de graphes 2 - Intranet1 Cours de graphes Les plus courts chemins, les chemins les plus légers : à laide de la vague, à laide de la.
DONG Xiaoguang HONG Liang OULDBABA Fadel WANG Min
Programmation dynamique
8INF8061 Conception et analyse des algorithmes Comment comparer deux problèmes?
Pour le chemin le plus court pour tous les couples
Structures de données IFT-2000 Abder Alikacem Arbres de recouvrement minimum Département dinformatique et de génie logiciel Édition Septembre 2009 JFK.

Graphes 1. Introduction 2. Définition 3. Représentation mémoire
Dév. d’application interactive III Recherche de chemin.
D.E ZEGOUR Ecole Supérieure d’Informatique
Programmation linéaire en nombres entiers
Algorithmes Branch & Bound
LE FLOT MAXIMAL et LA COUPE MINIMALE
Modèles Mathématiques et représentation discrètes pour la description des images couleur Luc Brun.
Problème de double digestion
6. Problème de flot à coût minimum.
ASI 3 Méthodes numériques pour l’ingénieur
Recalage contraint par cartes de courbures discrètes pour la modélisation dynamique du rein Valentin LEONARDI, Jean-Luc MARI, Philippe SOUTEYRAND, Julien.

31/05/2007Projet Master 11 Présentation ludique de la recherche opérationnelle à la fête de la science Année universitaire 2006/2007 Sylvain FIX Julien.
A propos du “Minimal Controllability Problem” C. Commault Département Automatique Gipsa-Lab Grenoble –FRANCE 1 Séminaire GIPSA-Lab 22 octobre 2015.
CSI2510 Structures de données et algorithmes Plus court chemin
Introduction à la Théorie des graphes
Techniques d’Optimisation Chapitre 2: Problème de flôt Dr TARI Abdelkamel Mars 2014.
Cycle, Cocycle, Arbre et Arborescence
Séminaire 8INF952 Visual Analytics – Cours II Dessin de graphes Arbres, graphes Cartes interactives Graphes.
Chapitre 3 Problèmes de Cheminement
Transcription de la présentation:

Séminaire 8INF952 Visual Analytics – Cours II Dessin de graphes Graphes planaires Graphes ‘mous’ Méthodes spectrales

Dessin de graphes Layout Rank Assignment Grid Layout Compaction Augment. (Two Layer) Crossing minimization Subgraph (extraction) EdgeInsertion Hierarchy Layout Hierarchy ranking DFS ranking Median heuristic Barycenter heuristic Split heuristic Greedy switch Greedy insert Cross. Min. Opt. Fast Hierarchy Layout Planar subgraph Tree Layout Sugiyama Layout Spring Layout Tutte Layout Planar Layout Visibility representation Convex Layout FPP Layout Schnyder Layout Ranking Cross. Min. Compute coord. Planar Grid Layout Shortest Path Planarize subgraph Insert edges No crossings Acyclic subgraph Planarization Background of Graph Drawing - an Overview Adapted from Mutzel et al with permission.

Graphes planaires

KEGG map 00020

Graphes planaires Bonne lisibilité des diagrammes On teste la planarité en temps linéaire

Graphes planaires Structures secondaires ARN Auber 2003

Graphes planaires

Des graphes peu denses Un graphe planaire a nécessairement peu d’arêtes Combien ?

Formule d’Euler Pour tout graphe planaire Nombre de faces (face extérieure incluse)

Formule d’Euler (preuve) Induction S’il n’y a pas de cycle, le graphe est un arbre et tout tient (il y a une seule face) S’il y a un cycle, on lui enlève une arête On obtient un nouveau graphe satisfaisant n’ – m’ + f’ = 2 avec n’ = n, m’ = m-1 et f’ = f-1

Des graphes peu denses Le nombre d’arêtes d’un graphe connexe et planaire (et qui n’est pas un arbre) est où g est la longueur de son plus court cycle

Il y a un isthme L’inégalité tient sur chacun des deux sous- graphes incidents à l’isthme

Il n’y a pas d’isthme Chaque arête est incidente à deux faces du graphes (face extérieure incluse) On applique Euler

Combien d’arêtes ? Un graphe planaire non réduit à un arbre possède au plus 3n – 6 arêtes Puisque la longueur du plus court cycle est au moins 3

Test de planarité Peut-on tester la planarité ? On possède déjà un critère pour répondre négativement (nombre d’arêtes) Sinon … Peut-on calculer un plongement d’un graphe dans le plan ? Garantie d’arêtes rectilignes ? …

Réduction du problème Un graphe est planaire ssi toutes ses composantes connexes le sont On supposera dorénavant que nos graphes sont connexes Un graphe est planaire ssi tous ses blocs le sont Vous avez dit « bloc » ?

Bloc et point d’articulation Biconnexité Il existe deux chemins disjoints entre chaque paire de sommet Un « bloc » est une composante biconnexe

Bloc et point d’articulation Point d’articulation Le graphe n’est plus connexe si on le supprime

Calcul des blocs On peut calculer les points d’articulation Soit s un sommet, T s un arbre couvrant obtenu par un parcours DFS à partir de s s est un point d’articulation ssi il est de degré sortant au moins 2 dans T s

Calcul des blocs s s est un point d’articulation

8 Calcul des blocs s’ n’est pas un point d’articulation s’

Retour au test de planarité On peut donc supposer Que le graphe compte moins de 3n – 6 arêtes Qu’il n’est pas un arbre Qu’il est biconnexe (il suffira de juxtaposer les blocs après calcul d’un plongement planaire pour chacun)

Pièces d’un graphe planaire Etant donné un cycle C (Un graphe planaire sans cycle est un arbre) (Un graphe biconnexe possède nécessairement un cycle) Arêtes dans un même classe Si un chemin ne passant pas par C les contient toutes deux Une pièce du graphe (par rapport à C) est une classe d’arêtes

Pièces (il y en a 6)

Pièces (1) P1P1

Pièces (2) P2P2

Pièces (3) P3P3

Pièces (4) P4P4

Pièces (5) P5P5

Pièces (6) P6P6

Entrelacements des pièces Les pièces ont des points d’ancrage sur le cycle Deux pièces s’entrelacent si leurs points d’ancrage définissent des « arcs de cycle » qui se chevauchent

Entrelacements des pièces P1P1 1 2 … P2P2 ne chevauche pas chevauche P5P5 P2P2

Graphe d’entrelacement De deux pièces qui s’entrelacent : L’une doit être dessiné à l’intérieur du cycle L’autre doit être dessiné à l’extérieur Comment décider s’il est possible d’appliquer ce principe de manière cohérente à l’ensemble des pièces ?

Graphe d’entrelacement Les pièces sont les sommets d’un « nouveau » graphe Deux pièces y sont adjacentes si elles s’entrelacent Le graphe est planaire ssi le graphe d’entrelacement des pièces est biparti Une pièce à l’intérieur, puis une à l’extérieur, …

Réalisation P6P6 P5P5 P1P1 P2P2 P3P3 P4P4 P6P6 P5P5 P1P1 P2P2 P3P3 P4P4 Le graphe est planaire ssi le graphe d’entrelacement des pièces est biparti Une pièce à l’intérieur, puis une à l’extérieur, …

Extensions/Spécialisations Dessin de graphes planaires « orthogonaux » (à la KEGG) Routage des arêtes sur une grille, minimisation des « coudes » Problème de flots dans les graphes

Dessin de graphes Layout Rank Assignment Grid Layout Compaction Augment. (Two Layer) Crossing minimization Subgraph (extraction) EdgeInsertion Hierarchy Layout Hierarchy ranking DFS ranking Median heuristic Barycenter heuristic Split heuristic Greedy switch Greedy insert Cross. Min. Opt. Fast Hierarchy Layout Planar subgraph Tree Layout Sugiyama Layout Spring Layout Tutte Layout Planar Layout Visibility representation Convex Layout FPP Layout Schnyder Layout Ranking Cross. Min. Compute coord. Planar Grid Layout Shortest Path Planarize subgraph Insert edges No crossings Acyclic subgraph Planarization Background of Graph Drawing - an Overview Adapted from Mutzel et al with permission.

Dessin et analogie physique

Graphes mous: modèles à ressorts Permet de dessiner (plonger) des graphes sans propriétés particulières Graphes simples (sans boucle, non orientés) S’appuie sur une analogie avec la physique Les sommets : des masses Les arêtes : des ressorts

Graphes mous: modèles à ressorts Démo

Dessin et analogie physique Le système doit se stabiliser Une configuration stable correspond à un « beau dessin » Qualité Bonne répartition des sommets, longueur des arêtes « uniformes » Bonne séparation des composantes plus fortement connectées Intuitif, facile à implémenter

Dessin et analogie physique Deux ingrédients Un « modèle » physique Des forces de répulsion qui agissent entre chaque paire de sommets Des forces d’attraction qui agissent entre les sommets voisins Un algorithme de simulation Application simultanée des forces Application incrémentale [Echantillonnage]

Dessin et analogie physique Deux ingrédients Un « modèle » physique Un algorithme de simulation

Dessin et analogie physique Deux ingrédients Un « modèle » physique Un algorithme de simulation Eades 1984 Energie Forces attractives Forces répulsives

Dessin et analogie physique Deux ingrédients Un « modèle » physique Un algorithme de simulation Eades 1984

Dessin et analogie physique Deux ingrédients Un « modèle » physique Un algorithme de simulation Fruchterman Reingold 1991 Energie Forces attractives Forces répulsives

Dessin et analogie physique Deux ingrédients Un « modèle » physique Un algorithme de simulation

Amélioration des performances coarsen 1275 nodes425 nodes 145 nodes50 nodes extend

Dessin et analogie physique Deux ingrédients Un « modèle » physique Un algorithme de simulation Performances Programmer directement la carte graphique (!)

Fonction d’énergie de Hall Matrice Laplacienne Méthode spectrale

Fonction d’énergie de Hall Matrice Laplacienne w 3,4 w 2,3

Méthode spectrale Fonction d’énergie de Hall / Matrice Laplacienne Minimum de la fonction d’énergie : calcul des valeurs et vecteurs propres de L (Il faut contraindre la solution à x T x = 1)

Méthode spectrale Minimum de la fonction d’énergie : calcul des valeurs et vecteurs propres de L Méthode des multiplicateurs de Lagrange On veut minimiser la fonction E(x) Sujette à la contrainte

Méthode spectrale Minimum de la fonction d’énergie : calcul des valeurs et vecteurs propres de L Méthode des multiplicateurs de Lagrange On veut minimiser la fonction E(x) Sujette à la contrainte

Méthode spectrale Minimum de la fonction d’énergie : calcul des valeurs et vecteurs propres de L Méthodes des multiplicateurs de Lagrange Au minimum local, on a nécessairement

Méthode spectrale où le vecteur cherché est donc un vecteur propre de L le minimum de E en ce vecteur est la valeur propre puisque

Amélioration des performances On déplace la difficulté en un problème de calcul rapide de « bonnes » approximations des valeurs propres et vecteurs propres de L Le vecteur propre de la matrice est un point fixe de l’opérateur Koren, Y. and D. Harel (2002). ACE A Fast Multiscale Graph Algorithm. IEEE Symposium on Information Visualization.

Each node is placed around the weighted center of its neighbors Dense areas Multi-scale f.d.ACE Exemple ( |V | = 15606, |E| = 45878)

Amélioration de la qualité Bonnes séparations des « clusters »: groupes de sommets plus proches Modèle LinLog de Noack

Amélioration de la qualité Bonnes séparations des « clusters »: groupes de sommets plus proches Modèle LinLog de Noack Un dessin atteignant une énergie minimale sépare les sommets de manière « optimale » La distance est inversement proportionnelle à la densité d’aretes entre les deux groupes de sommets

Amélioration de la qualité Bonnes séparations des « clusters »: groupes de sommets plus proches Modèle LinLog de Noack vs Fruchterman Reingold