Grafi triangolati e triangolazioni di grafi
M. Moscarini
M. Mezzini
Definizioni
Definizioni
Percorso in un grafo
3
2
1
4
5
Definizioni
Percorso in un grafo
3
2
1
4
5
Definizioni
Ciclo in un grafo
3
2
1
4
5
Definizioni
Corda di un ciclo o di un percorso
3
2
1
4
5
Definizioni
Grafo triangolato (o cordale)
3
2
1
4
5
Definizioni
Triangolazione di un grafo
3
2
1
4
5
Definizioni
Triangolazione di un grafo
3
2
1
4
5
Applicazioni dei grafi triangolati
•Basi dati: progettazione delle basi di dati
Applicazioni dei grafi triangolati
•Basi dati: progettazione delle basi di dati
•Calcolo numerico: calcolo delle soluzioni dei sistemi di equazioni lineari
Applicazioni dei grafi triangolati
•Basi dati: progettazione delle basi di dati
•Calcolo numerico: calcolo delle soluzioni dei sistemi di equazioni lineari
•Statistica: calcolo di probabilità
Applicazioni dei grafi triangolati
•Basi dati: progettazione delle basi di dati
•Calcolo numerico: calcolo delle soluzioni dei sistemi di equazioni lineari
•Statistica: calcolo di probabilità
•Intelligenza artificiale: machine learning
Applicazioni dei grafi triangolati
Schema base di dati
Studenti
Mat_Stud
Nome
Cognome
Appello
Codice_App
Materia
Prenotazione
Codice_App
Mat_Stud
Data
Applicazioni dei grafi triangolati
Ipergrafo associato allo
schema
Schema base di dati
Studenti
Mat_Stud
Nome
Cognome
Mat_Stud
Nome
Cognome
Appello
Codice_App
Materia
Data
Codice_App
Prenotazione
Codice_App
Mat_Stud
Materia
Data
Applicazioni dei grafi triangolati
Ipergrafo associato allo
schema
Schema base di dati
Grafo associato allo schema
Studenti
Mat_Stud
Nome
Cognome
Mat_Stud
Nome
Appello
Codice_App
Materia
Data
Codice_App
Prenotazione
Codice_App
Mat_Stud
Nome
Cognome
Materia
Mat_
Stud
Cogn
ome
Codice_
App
Data
Data
Materia
Applicazioni dei grafi triangolati
Ipergrafo associato allo
schema
Schema base di dati
Grafo associato allo schema
Studenti
Mat_Stud
Nome
Cognome
Mat_Stud
Nome
Appello
Codice_App
Materia
Data
Codice_App
Prenotazione
Codice_App
Mat_Stud
Nome
Cognome
Materia
Mat_
Stud
Cogn
ome
Codice_
App
Data
Data
Materia
Lo schema è buono solo se il grafo associato è cordale
Attività di ricerca nell’ambito della cordalità
Attività di ricerca nell’ambito della cordalità
Percorso senza corde per tre vertici in grafi bipartiti
Attività di ricerca nell’ambito della cordalità
Percorso senza corde per tre vertici in grafi bipartiti
v
s
t
Attività di ricerca nell’ambito della cordalità
Percorso senza corde per tre vertici in grafi bipartiti
v
s
t
Motivazioni:
•Collegato alla teoria dei grafi perfetti
•Collegato alla convessità dei percorsi senza corde in grafi bipartiti
Attività di ricerca nell’ambito della cordalità
Percorso senza corde per tre vertici in grafi bipartiti
v
s
t
Motivazioni:
•Collegato alla teoria dei grafi perfetti
•Collegato alla convessità dei percorsi senza corde in grafi bipartiti
Risultati:
•NP-Completo
Attività di ricerca nell’ambito della cordalità
Convessità dei percorsi senza corde in grafi bipartiti. Dato un insieme di
vertici X trovare l’involucro convesso CH(X).
5
3
6
4
X
1
2
Attività di ricerca nell’ambito della cordalità
Convessità dei percorsi senza corde in grafi bipartiti. Dato un insieme di
vertici X trovare l’involucro convesso CH(X).
5
3
6
4
X
1
2
Attività di ricerca nell’ambito della cordalità
Convessità dei percorsi senza corde in grafi bipartiti. Dato un insieme di
vertici X trovare l’involucro convesso CH(X).
5
3
6
4
CH(X)
1
2
Attività di ricerca nell’ambito della cordalità
Convessità dei percorsi senza corde in grafi bipartiti. Dato un insieme di
vertici X trovare l’involucro convesso CH(X).
5
6
3
4
CH(X)
1
Motivazioni:
•Collegato alla teoria delle basi di dati
•Collegato alla teoria della convessità
2
Attività di ricerca nell’ambito della cordalità
Convessità dei percorsi senza corde in grafi bipartiti. Dato un insieme di
vertici X trovare l’involucro convesso CH(X).
5
6
3
4
CH(X)
1
Motivazioni:
•Collegato alla teoria delle basi di dati
•Collegato alla teoria della convessità
Risultati:
•Algoritmo polinomiale
2
Attività di ricerca nell’ambito della cordalità
Triangolazione minimale di un grafo
Attività di ricerca nell’ambito della cordalità
Triangolazione minimale di un grafo
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Triangolazione minimale di un grafo
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Triangolazione minimale di un grafo
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Triangolazione minimale di un grafo
3
2
1
4
5
Motivazioni:
•Calcolo delle soluzioni di un sistema di equazioni lineari
•Teoria dei grafi
Attività di ricerca nell’ambito della cordalità
Triangolazione minimale di un grafo
3
2
1
4
5
Motivazioni:
•Calcolo delle soluzioni di un sistema di equazioni lineari
•Teoria dei grafi
Risultati:
•Algoritmo semplice e veloce quando il grafo è denso
•Implementazione in C e confronto con gli algoritmi esistenti
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
1
4
5
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
4
1
Motivazioni:
•Applicazioni in ambito dell’intelligenza artificiale
5
Attività di ricerca nell’ambito della cordalità
Algoritmo dinamico per inserire o rimuovere archi da un grafo cordale
3
2
4
1
5
Motivazioni:
•Applicazioni in ambito dell’intelligenza artificiale
Risultati:
•Algoritmo con O(1) per decidere se un arco può essere aggiunto od
eliminato e O(n2) per modificare le strutture dati.
Attività di ricerca nell’ambito della protezione
dei dati statistici
Attività di ricerca nell’ambito della protezione
dei dati statistici
4
x2
x3
x5
4
4
x4
x1
2
Attività di ricerca nell’ambito della protezione
dei dati statistici
4
x3 =1
x2 =3
x5=1
4
4
x4 =2
x1 =0
2
Attività di ricerca nell’ambito della protezione
dei dati statistici
4
x3 =2
x2 =2
x5=1
4
4
x4 =1
x1 =1
2
Attività di ricerca nell’ambito della protezione
dei dati statistici
4
x3 =2
x2 =2
x5=1
4
4
x4 =1
x1 =1
2
Attività di ricerca nell’ambito della protezione
dei dati statistici
4
x3 =2
x2 =2
x5=1
4
4
x4 =1
x1 =1
2
Motivazioni:
•Protezione della privacy
Risultati:
•Diversi algoritmi lineari nelle dimensioni del grafo (ottimi)