Applicazione della teoria dei grafi in informatica


11

Sono uno studente CS. Abbiamo fatto la teoria dei grafi in un corso. L'ho trovato interessante.

Quali sono le vere applicazioni della teoria dei grafi nel campo dell'informatica?

Ad esempio, ho scoperto che alcuni concetti della teoria dei grafi possono essere utilizzati per progettare reti. Quali sono altre applicazioni simili?


1
questa potrebbe essere una lista terribilmente lunga. Sto pensando in CW?
Suresh Venkat,

4
Questo sembra un po 'troppo generale anche per un CW. La teoria dei grafi è onnipresente in TCS.
Huck Bennett,

30
La richiesta di argomenti in CS che non utilizzano grafici potrebbe aver prodotto un elenco più breve.
Raffaello,

1
@peedarpk: se stai seguendo una lezione di teoria dei grafi in un CS cursus, perché non chiedi al professore?
Anthony Labarre

3
Davvero, possiamo chiuderlo adesso? La risposta a questa domanda è su Wikipedia ( en.wikipedia.org/wiki/Graph_theory#Applications ) o in qualsiasi libro di testo introduttivo per studenti non laureati.
RJK,

Risposte:


12

Questa non è in alcun modo una risposta definitiva e non la intendo come tale.

Molti problemi di interesse per gli informatici possono essere definiti come problemi dei grafici e, di conseguenza, la teoria dei grafi si presenta molto nella teoria della complessità. Lo sforzo computazionale richiesto per determinare dove due grafici sono isomorfi, ad esempio, è attualmente un argomento di grande interesse per la teoria della complessità (non è noto che sia NP-completo né contenuto in P, BPP o BQP, ma è chiaramente in NP) . Il non isomorfismo grafico, d'altra parte, ha una prova a conoscenza zero molto bella (un'altra area di studio nella teoria della complessità). Molte classi di complessità hanno problemi di grafici che sono completi per quella classe (con una certa riduzione).

Tuttavia, non è solo la teoria della complessità che fa uso della teoria dei grafi. Come puoi vedere da alcune delle altre risposte, esiste una serie di problemi per i quali il linguaggio della teoria dei grafi è più appropriato. Esistono molte applicazioni per fornire un elenco diffinitivo, quindi ti lascerò un esempio di come la teoria dei grafi gioca un ruolo fondamentale nella mia area di ricerca.

Il calcolo quantistico basato sulla misura è un modello di calcolo che non ha una controparte nel mondo classico. In questo modello, il calcolo è guidato effettuando misurazioni su una classe speciale di stati quantistici. Questi stati sono noti come stati del grafico, poiché ogni stato può essere identificato in modo univoco con un grafico non orientato con un numero di vertici pari al numero di qubit nello stato del grafico. Questo legame con la teoria dei grafi è tuttavia più che casuale. Sappiamo che un'importante classe di misurazioni (misurazioni basate su Pauli nel caso sia interessato) associa lo stato del grafico sottostante a un nuovo stato del grafico su un qubit in meno e le regole con cui ciò avviene sono ben comprese. Inoltre, le proprietà della famiglia di grafi sottostanti (è flusso e flusso g) hanno determinato completamente se supporta il calcolo universale. Infine, per qualsiasi grafico G 'che può essere raggiunto da un altro grafico G mediante una sequenza arbitraria di complemento dei bordi del vicinato di un vertice può essere raggiunto da sole operazioni a singolo qubit, e quindi sono ugualmente potenti come risorsa per il calcolo. Questo è interessante perché il numero di spigoli, il massimo dei gradi di vertice, ecc. Possono cambiare drasticamente.


Ottima risposta a ciò che era improbabile che il PO avesse chiesto! Ma soprattutto, perché non dimentichiamo la versione (cattiva) originale della domanda e facciamo finta di giocare a Jeopardy: "Qual è l'intuizione dietro l'ubiquità dei grafici in quasi tutte le sotto-discipline dell'informatica teorica?"
RJK,

@RJK: Forse avrei dovuto leggere la domanda con più attenzione, ma ho pensato che questo potrebbe essere almeno interessante per la persona che ha posto la domanda.
Joe Fitzsimons,

No no, questa è stata un'ottima risposta.
Montagist,

5

Le applicazioni della teoria dei grafi sono abbondanti nell'informatica e nella vita di tutti i giorni:

  • Ricerca dei percorsi più brevi nei sistemi di navigazione per auto
  • I motori di ricerca utilizzano algoritmi di classificazione basati sulla teoria dei grafi
  • Ottimizzare gli orari per le scuole o le università
  • Analisi dei social network
  • Ottimizzazione dell'utilizzo dei sistemi ferroviari
  • I compilatori utilizzano algoritmi di colorazione per assegnare i registri alle variabili
  • Pianificazione del percorso in robotica

3

La teoria dei grafi ha una varietà di applicazioni. Le mie preferite sono le applicazioni in:

  • Reti su larga scala
  • Social Computing
  • Bio-informatica

2

Le reti di modellazione vengono eseguite utilizzando grafici. Ad esempio, se è necessario studiare il broadcasting o il multicasting in alcuni tipi di topologie di rete, utilizzare i grafici per modellare le reti. Per esempio:

  • ipergrafi
  • grafici completi
  • grafici a stelle
  • maglie

Quando si modellano le reti utilizzando i grafici, è possibile utilizzare tutta la potenza della teoria dei grafi per analizzare la rete.

Questa è solo una delle molte applicazioni della teoria dei grafi nell'informatica.


-2

La struttura delle directory è una struttura ad albero (con nodi radice e nodi figlio. Nelle reti viene utilizzata per trovare il percorso più breve utilizzando l'albero di spanning minimo, l'algoritmo di Dijkstra.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.