Modélisation Applications Théorie de graphes – Introduction Frédéric Guinand, Stefan Balev Master I - Le Havre Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Définition Graphe G(V , E) V est un ensemble (fini) dont les éléments sont appelés sommets E ⊆ V × V est un ensemble dont les éléments sont appelés arêtes Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Graphe représentation des relations entre les entités d’un système Objectifs 1 modélisation de systèmes par des graphes 2 résolution mathématique et algorithmique de problèmes de graphes Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Cheminement Question → Solution ou idée de solution 1 observation du système → question 2 question → modèle 3 modèle → problème 4 problème → algorithme/analyse théorique 5 algorithme → implémentation 6 implémentation → exécution (benchmarks) 7 exécution → analyse des résultats Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Cheminement Système → Simulation 1 observation du système → question 2 question → modèle 3 modèle → implémentation 4 implémentation → simulation 5 simulation → observation du modèle Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Schématiquement Question Formulation Modélisation Identification des éléments Système réel Représentation en machine Etude théorique Conception d’un algorithme de résolution Analyses/Observations Implémentation/Benchmarks/Exécution Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Points clefs 1 conception/choix du modèle. 2 identification du problème et de sa nature (complexité). 3 conception et analyse d’un algorithme. 4 implémentation de l’algorithme dans un langage de programmation pour exécution sur une machine réelle. 5 Selon la nature du problème, construction d’un jeu de tests (benchmarks) pour les simulations numériques. Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Modélisation : du monde réel au graphe Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Domaines d’applications variés... Logistique Chimie Biologie Informatique Géographie Sciences humaines et sociales Ecologie Finance Electronique etc. Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Du schéma électronique... Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant ...au circuit imprimé Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Schéma → circuit passage du schéma au circuit : réalisation du circuit imprimé (layout) Contraintes et objectifs : encombrement minimum, limiter les croisements. → problème de planarité Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Schéma → circuit passage du schéma au circuit : réalisation du circuit imprimé (layout) Contraintes et objectifs : encombrement minimum, limiter les croisements. → problème de planarité Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux résultant des activités humaines Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Logistique Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Logistique Problèmes principaux : planification/ordonnancement stockage/compatibilité routage/tournées de véhicules → recherche de plus courts chemins → problèmes de flots → recherche de chemins/tours hamiltoniens → recherche de chemins/tours euleriens Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Logistique Problèmes principaux : planification/ordonnancement stockage/compatibilité routage/tournées de véhicules → recherche de plus courts chemins → problèmes de flots → recherche de chemins/tours hamiltoniens → recherche de chemins/tours euleriens Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux informatiques Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux informatiques Principaux objectifs : assurer l’acheminement des données vers les machines destinataires en un temps minimum ⇒ utilisation de multiples chemins limiter les vulnérabilités diffusion/multicast d’informations efficace → problèmes de graphes associés : flots routage recherche d’arbres couvrants, augmentation de la k -connexité et de la k -arête-connexité Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux informatiques Principaux objectifs : assurer l’acheminement des données vers les machines destinataires en un temps minimum ⇒ utilisation de multiples chemins limiter les vulnérabilités diffusion/multicast d’informations efficace → problèmes de graphes associés : flots routage recherche d’arbres couvrants, augmentation de la k -connexité et de la k -arête-connexité Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Topologies machines parallèles Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Topologies machines parallèles Principales contraintes : réduire autant que possible la distance entre les processeurs offrir autant de chemins que possible pour chaque couple de processeurs minimiser la masse des fils ! Problème de nature différente : trouver un graphe en fonction de contraintes plutôt que résoudre un problème sur un graphe donné. ⇒ recherche de graphes offrant un compromis intéressant entre faible diamètre, k-arête-connexité importante, degré régulier, et nombre de liens faible. Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Topologies machines parallèles Principales contraintes : réduire autant que possible la distance entre les processeurs offrir autant de chemins que possible pour chaque couple de processeurs minimiser la masse des fils ! Problème de nature différente : trouver un graphe en fonction de contraintes plutôt que résoudre un problème sur un graphe donné. ⇒ recherche de graphes offrant un compromis intéressant entre faible diamètre, k-arête-connexité importante, degré régulier, et nombre de liens faible. Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Géographie - Réseaux routiers Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Géographie - Réseaux routiers Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Géographie - Réseaux routiers Applications multiples : positionnement (GPS) mise en place de réseaux de transports en commun surveillance du trafic routier ⇒ problèmes de graphes associés : flots conception de graphes guidés par un ensemble de contraintes problèmes de plus courts chemins multiobjectifs : compromis temps/coût plongement de graphes dans des graphes. Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Géographie - Réseaux routiers Applications multiples : positionnement (GPS) mise en place de réseaux de transports en commun surveillance du trafic routier ⇒ problèmes de graphes associés : flots conception de graphes guidés par un ensemble de contraintes problèmes de plus courts chemins multiobjectifs : compromis temps/coût plongement de graphes dans des graphes. Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux sociaux Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Sciences humaines et sociales mySpace, facebook, LinkedIn, etc. objectifs : étudier leur formation, mettre en évidence des relations entre certains groupes d’individus recherche de propriétés particulières, ⇒ problèmes : étude de la structure de tels graphes que l’on appelle complex networks détection de communautés développement de métriques adaptées Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Sciences humaines et sociales mySpace, facebook, LinkedIn, etc. objectifs : étudier leur formation, mettre en évidence des relations entre certains groupes d’individus recherche de propriétés particulières, ⇒ problèmes : étude de la structure de tels graphes que l’on appelle complex networks détection de communautés développement de métriques adaptées Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux du vivant Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Ecologie - Chaînes trophiques Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux écologiques objectifs : étudier leur formation, comprendre les inter-relations entre espèces/individus via le modèle étudier leur vulnérabilité, l’existence de phénomènes de bifurcation, modélisation/simulation, ⇒ problèmes : étude de la structure de tels graphes que l’on appelle complex networks détection de communautés simulation de la dynamique du système en fonction des interactions entre individus (vidéo) Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux écologiques objectifs : étudier leur formation, comprendre les inter-relations entre espèces/individus via le modèle étudier leur vulnérabilité, l’existence de phénomènes de bifurcation, modélisation/simulation, ⇒ problèmes : étude de la structure de tels graphes que l’on appelle complex networks détection de communautés simulation de la dynamique du système en fonction des interactions entre individus (vidéo) Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Réseaux métaboliques Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Taille des données ! ! Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Phylogénie/classification Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Phylogénie/classification objectifs : sur la base de caractères communs regrouper les individus, avoir une idée sur l’évolution/les liens de parentés des êtres vivants mieux comprendre le vivant, ⇒ problèmes : construire des arbres, voire des graphes, à partir d’une ou plusieurs mesures de distance entre éléments Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction Modélisation Applications Réseaux des activités humaines Réseaux du vivant Phylogénie/classification objectifs : sur la base de caractères communs regrouper les individus, avoir une idée sur l’évolution/les liens de parentés des êtres vivants mieux comprendre le vivant, ⇒ problèmes : construire des arbres, voire des graphes, à partir d’une ou plusieurs mesures de distance entre éléments Frédéric Guinand, Stefan Balev Théorie de graphes – Introduction