Application de la théorie des graphes en informatique


11

Je suis un étudiant CS. Nous avons fait de la théorie des graphes dans un cours. Je l'ai trouvé intéressant.

Quelles sont les applications réelles de la théorie des graphes dans le domaine de l'informatique?

Par exemple, j'ai trouvé que certains concepts de la théorie des graphes peuvent être utilisés pour concevoir des réseaux. Quelles sont les autres applications similaires?


1
cela pourrait être une liste terriblement longue. Je pense à CW?
Suresh Venkat

4
Cela semble un peu trop général même pour un CW. La théorie des graphes est omniprésente dans TCS.
Huck Bennett

30
Demander des sujets dans CS qui n'utilisent pas de graphiques peut avoir produit la liste la plus courte.
Raphael

1
@peedarpk: Si vous suivez un cours sur la théorie des graphes dans un cursus CS, pourquoi ne demandez-vous pas au professeur?
Anthony Labarre

3
Vraiment, pouvons-nous fermer cela maintenant? La réponse à cette question se trouve sur wikipedia ( en.wikipedia.org/wiki/Graph_theory#Applications ) ou dans tout manuel d'introduction au premier cycle.
RJK

Réponses:


12

Ce n'est en aucun cas une réponse définitive, et je ne l'entends pas comme telle.

De nombreux problèmes intéressant les informaticiens peuvent être exprimés comme des problèmes de graphes et, par conséquent, la théorie des graphes apparaît beaucoup dans la théorie de la complexité. L'effort de calcul nécessaire pour déterminer où deux graphiques sont isomorphes, par exemple, est actuellement un sujet de grand intérêt pour la théorie de la complexité (il n'est ni connu pour être NP-complet ni contenu dans P, BPP ou BQP, mais est clairement dans NP) . Le non-isomorphisme des graphes, en revanche, a une très belle preuve de connaissance zéro (un autre domaine d'étude en théorie de la complexité). De nombreuses classes de complexité ont des problèmes de graphes qui sont complets pour cette classe (sous une certaine réduction).

Cependant, ce n'est pas seulement la théorie de la complexité qui utilise la théorie des graphes. Comme vous pouvez le voir dans certaines des autres réponses, il existe toute une série de problèmes pour lesquels le langage de la théorie des graphes est le plus approprié. Il existe de nombreuses applications pour fournir une liste diffinitive, donc je vous laisserai plutôt un exemple de la façon dont la théorie des graphes joue un rôle fondamental dans mon propre domaine de recherche.

Le calcul quantique basé sur la mesure est un modèle de calcul qui n'a pas d'équivalent dans le monde classique. Dans ce modèle, le calcul est conduit en effectuant des mesures sur une classe spéciale d'états quantiques. Ces états sont appelés états de graphe, car chaque état peut être identifié de manière unique avec un graphe non orienté avec un nombre de sommets égal au nombre de qubits dans l'état du graphe. Ce lien avec la théorie des graphes est cependant plus que fortuit. Nous savons qu'une classe importante de mesures (mesures basées sur Pauli au cas où vous êtes intéressé) mappe l'état du graphique sous-jacent à un nouvel état de graphique sur un qubit de moins, et les règles par lesquelles cela se produit sont bien comprises. De plus, les propriétés de la famille de graphes sous-jacente (c'est-à-dire le flux et le g-flow) ont déterminé entièrement si elle prend en charge le calcul universel. Enfin, pour tout graphe G 'qui peut être atteint à partir d'un autre graphe G par une séquence arbitraire de complémentation des bords du voisinage d'un sommet peut être atteint par des opérations à un seul qubit, et est donc tout aussi puissant comme ressource pour le calcul. Ceci est intéressant car le nombre d'arêtes, le maximum des degrés de sommet, etc. peuvent changer radicalement.


Excellente réponse à ce que le PO avait peu de chances de demander! Mais topiquement, pourquoi n'oublions-nous pas la (mauvaise) version originale de la question et prétendons-nous jouer à Jeopardy: "Quelle est l'intuition derrière l'omniprésence des graphiques dans presque toutes les sous-disciplines de l'informatique théorique?"
RJK

@RJK: J'aurais peut-être dû lire la question plus attentivement, mais j'ai pensé que cela pourrait au moins être intéressant pour la personne qui pose la question.
Joe Fitzsimons

Non non, c'était une excellente réponse.
Montagist

5

Les applications de la théorie des graphes sont nombreuses en informatique et dans la vie de tous les jours:

  • Trouver les itinéraires les plus courts dans les systèmes de navigation automobile
  • Les moteurs de recherche utilisent des algorithmes de classement basés sur la théorie des graphes
  • Optimisation des horaires pour les écoles ou les universités
  • Analyse des réseaux sociaux
  • Optimiser l'utilisation des systèmes ferroviaires
  • Les compilateurs utilisent des algorithmes de coloration pour affecter des registres aux variables
  • Planification de parcours en robotique

3

La théorie des graphes a une variété d'applications. Mes applications préférées sont:

  • Réseaux à grande échelle
  • Informatique sociale
  • Bio-informatique

2

La modélisation des réseaux se fait à l'aide de graphiques. Par exemple, si vous devez étudier la diffusion ou la multidiffusion dans certains types de topologies de réseau, vous utiliserez des graphiques pour modéliser les réseaux. Par exemple:

  • hypergraphes
  • graphiques complets
  • graphiques en étoile
  • mailles

Lorsque vous modélisez des réseaux à l'aide de graphiques, vous pouvez utiliser toute la puissance de la théorie des graphes pour analyser le réseau.

Ce n'est là qu'une des nombreuses applications de la théorie des graphes en informatique.


-2

La structure de répertoires est une structure arborescente (avec des nœuds racine et des nœuds enfants. Dans les réseaux, elle est utilisée pour trouver l'itinéraire le plus court en utilisant l'arbre minimal couvrant, l'algorithme de Dijkstra.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.