Grafi, Social Network e Ricerca su Web Prof. Maurizio Naldi

Похожие документы
Algoritmi e Strutture Dati

Lezione n.15 Random Graphs, Small-Worlds, Scale-Free Networks Materiale didattico: Peer-to-Peer Systems and Applications Capitolo 6

LA MATEMATICA DELLE RELAZIONI SOCIALI

Modello dei grafi casuali

Esercizi Capitolo 11 - Strutture di dati e progettazione di algoritmi

Grafi. Il collegamento fra due nodi in un grafo rappresenta una relazione di adiacenza o di vicinanza tra essi

Appunti del corso di Informatica 1 (IN110 Fondamenti) 7 Grafi e alberi: introduzione

Corso di elettrotecnica Materiale didattico: i grafi

Grafi: definizioni e visite

Progettazione di Algoritmi

UNIVERSITÀ di ROMA TOR VERGATA

Alberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa

Grafi (orientati): cammini minimi

Dati e Algoritmi 1: A. Pietracaprina. Grafi (II parte)

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 20 giugno 2014

una possibile funzione unidirezionale

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013

Problemi, istanze, soluzioni

Progettazione di Algoritmi

Informatica e Interazione Uomo-Macchina

Minimo albero di copertura

Grafi: visite. Una breve presentazione. F. Damiani - Alg. & Lab. 04/05 (da C. Demetrescu et al - McGraw-Hill)

Luca Costabile Esercizi di Logica Matematica Dispensa Calcolo Proposizionale 1

Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE

Cammini minimi. Definizioni. Distanza fra vertici. Proprietà dei cammini minimi. Algoritmi e Strutture Dati

11.4 Chiusura transitiva

Routing IP. IP routing

Il problema del commesso viaggiatore

Problema del cammino minimo

Insiemi, Numeri, Terminologia. Prof. Simone Sbaraglia

Algoritmi e strutture dati

Università degli Studi di Roma Tor Vergata. Principio di induzione matematica

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

Ricerca Operativa e Logistica Dott. F.Carrabs e Dott.ssa M.Gentili

PRINCIPI DI SOCIAL NETWORK ANALYSIS CORSO DI INTERFACCE, CONTENUTI E SERVIZI PER LE TECNOLOGIE INTERATTIVE PROF. GIOVANNI CIOFALO

RETI DI CALCOLATORI II

4c. Esercizi sul livello di Rete Instradamento in Internet

Il pallone di Luca di Marcello Falco

Ricerca Operativa. Claudio Arbib Universitàdi L Aquila. Alcuni problemi combinatorici (Gennaio 2006)

Corso di Laurea in Matematica per l Informatica e la Comunicazione Scientifica

Problemi di Flusso: Il modello del Trasporto

1 IL LINGUAGGIO MATEMATICO

Kangourou della Matematica 2009 finale nazionale italiana Mirabilandia, 11 maggio 2009

Grafi pesati Minimo albero ricoprente

Cammini minimi fra tutte le coppie

Fondamenti di Internet e Reti

La teoria dei grafi permette di esprimere in modo sistematico le LKT e LKC con i metodi della

Un po di logica. Christian Ferrari. Laboratorio di matematica

Esercizi per il corso di. Logistica I. a.a Daniela Favaretto. Dipartimento di Matematica Applicata Università Ca Foscari di Venezia

2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

PROCESSI STOCASTICI 1: ESERCIZI

2.2 Alberi di supporto di costo ottimo

Progettazione di Algoritmi

Geometria euclidea. Alessio del Vigna. Lunedì 15 settembre

Barriere assorbenti nelle catene di Markov e una loro applicazione al web

Esercizi di Matematica per la prova di ammissione alla Scuola Galileiana /16

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente

2. Paradosso #1. Cominciamo col paradosso il più difficile, mentre che siamo ancora svegli.

Euristiche per il Problema del Commesso Viaggiatore

Partiamo da un informazione comune a tutti gli alunni della scuola italiana: La somma degli angoli interni di un triangolo è 180.

Corso di Sistemi di Elaborazione delle informazioni

UNIVERSITA DEGLI STUDI DI PERUGIA

Topologie delle reti di telecomunicazione

Sommario. Rappresentazione dei grafi. Ordinamento topologico. Visita in ampiezza Visita in profondità

PROGRAMMAZIONE: Le strutture di controllo

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi

Possibile applicazione

Routing. Forwarding e routing

A lezione sono stati presentati i seguenti passi per risolvere un problema:

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

Транскрипт:

Grafi, Social Network e Ricerca su Web Prof. Maurizio Naldi

Teoria dei Grafi È uno strumento indispensabile per l analisi di reti e, quindi, di social network.... è fondamentale anche per capire come funziona un moderno motore di ricerca.... anche i navigatori sono basati su algoritmi su grafi!

Definizioni Un grafo G=(V,E) consiste in: un insieme V di vertici (o nodi) un insieme E di coppie di vertici, detti archi o spigoli: ogni arco connette due vertici Esempio 1: V={Insieme delle persone che vivono in Italia}; E={Coppie di persone che si conoscono} Esempio 2: V={Insieme delle persone che vivono in Italia}; E={(x,y): Se la persona x ha mandato una mail alla persona y}

Terminologia Esempio 1: relazione simmetrica: Grafo NON orientato Esempio 2: relazione NON simmetrica: Grafo orientato n=numero di vertici m=numero di archi I vertici L ed H sono ADIACENTI L arco (L,H) è INCIDENTE a L Grado di un nodo è il numero di archi incidenti 4

Esempi Grafo NON orientato: Facebook - i nodi sono le persone e gli archi sono le amicizie Grafo orientato: il Grafo del Web (Webgraph) - i nodi sono le pagine Web e gli archi sono i link (diretti) tra le pagine [torneremo a parlare del Webgraph quando parleremo di come funzionano i motori di ricerca...] 5

I grafi (o le reti) sono dovunque!!!

Collegamenti aerei

Autostrade

Metro Roma

Metro Manhattan

Catene alimentari (food networks) Catena alimentare

Personaggi di Orgoglio e Pregiudizio

Cause giudiziarie

Una partita di calcio!

Problema delle strette di mano (in versione Facebook): Considerate solo le amicizie all interno del vostro gruppo di amici. Ovvero, se un vostro amico è amico di qualcuno che non è vostro amico, non la contiamo. AFFERMAZIONE: In questo gruppo ristretto, esistono (almeno) due persone distinte che hanno lo stesso numero di amici 1 7

Problema delle strette di mano L affermazione è VERA o FALSA? Se è VERA, riusciamo a dimostrarla?!? Se è FALSA, riusciamo a trovare un controesempio?!? 1 8

L affermazione è VERA! Cenni della dimostrazione: In un gruppo di N persone, ognuno ha da 0 a N-1 amici Attenzione!: nel gruppo, o c è quello amico di tutti (N-1 collegamenti) oppure c è quello amico di nessuno (0 collegamenti) Supponiamo ci sia l amico di tutti: abbiamo N persone da classificare in gruppetti con 1,2..,N-1 collegamenti: almeno 2 devono finire nello stesso gruppetto! Ragionamento analogo se c è l amico di nessuno: abbiamo N persone da classificare in gruppetti con 0,1..,N-2 collegamenti: almeno 2 devono finire nello stesso gruppetto! 1 9

Il problema delle strette di mano... In realtà, abbiamo dimostrato il seguente teorema della Teoria dei Grafi: In un Grafo NON orientato, esistono sempre (almeno) due nodi che hanno lo stesso grado. Riusciamo a dimostrare il seguente: in un grafo, la somma di tutti i gradi è pari a 2m? 2 0

Le origini della Teoria dei Grafi: I ponti di Koenigsberg (materiale preso da wikipedia.it)

Il problema dei ponti Nel corso dei secoli è stata più volte proposta la questione se sia possibile con una passeggiata seguire un percorso che attraversi ogni ponte una e una volta soltanto e tornare al punto di partenza.

I ponti di Koenigsberg

I ponti di Koenigsberg

Il Teorema di Eulero Nel 1736 Leonhard Euler dimostra che la passeggiata ipotizzata non era possibile: Un qualsiasi grafo è percorribile se e solo se ha tutti i nodi di grado pari, o due di essi sono di grado dispari; per percorrere un grafo "possibile" con due nodi di grado dispari, è necessario partire da uno di essi, e si terminerà sull altro nodo dispari.

Grafi per modellare reti sociali I grafi sono da sempre lo strumento usato per la modellazione di reti sociali (o social networks). Nota bene: le social networks esistono da prima di Internet! 2 6

Grafo delle amicizie I nodi sono le persone, gli archi sono le amicizie (conoscenze?) tra le persone. Quanta distanza c è tra due persone? La distanza è il più breve cammino tra le due persone. Quanto sono lunghi i cammini in questo grafo? 2 7

Esperimento di Milgram Nel 1967, Milgram fece il seguente esperimento (voleva scoprire qual era la probabilità che due persone scelte a caso si conoscessero): Diede delle lettere a persone di Omaha (Nebraska) e Wichita (Kansas), destinate a residenti di Boston (Massachussets). Le buste potevano essere passate solo a conoscenti. Tra le buste che giunsero a destinazione, la media dei passaggi di mano fu 5.5. Questo condusse alla nascita dell idea dei SEI GRADI DI SEPARAZIONE 2 8

Small World Phenomenon O fenomeno di mondo piccolo : nonostante una rete sia numerosa (abbia un gran numero di nodi), il diametro (= massima distanza minima =massimo cammino minimo) è piccolo! 2 9

Esempi di Small World Phenomenon Numero di Erdős: i nodi della rete sono autori di articoli di matematica, e c è un arco tra due autori se hanno lavorato insieme in un articolo Numero di Bacon (Kevin): i nodi della rete sono attori cinematografici, e c è un arco tra due attori se hanno lavorato insieme in un film 3 0

Numero di Erdős Esiste, sul sito della AMS, un calcolatore del numero di Erdős : 3 1

Numero di Erdős Esiste, sul sito della AMS, un calcolatore del numero di Erdős : 3 2

Numero di Bacon 3 3

Numero di Bacon 3 4

Altri numeri... Numero di Erdős-Bacon: somma del numero di Erdős con il numero di Bacon (sono in pochi che lo hanno!) Numero di Morphy: distanza in partite di scacchi con Paul Morphy Numero di Shusaku: distanza in partite di GO con Honinbo Shusaku 3 5

Conseguenze dello SWP Se la distanza tra tutti è piccola, il numero di persone a distanza molto piccola è numeroso! 3 6

Visualizzazione di Reti Sociali Per renderci conto del diametro piccolo, possiamo provare a visualizzare la mappa dei nostri social network! Tante reti sociali hanno reso disponibili dei tool per poterle visualizzare Tra queste: Facebook, Twitter, LinkedIn... 3 7

LinkedIn Maps 3 8

Twitter (MentionMap) 3 9

Facebook Social Graph 4 0

Facebook Social Graph 4 1

Ricerca su Web Un motore di ricerca (Google, Bing, etc.) si può dividere in tre parti concettualmente distinte:

Componenti di un motore di ricerca Crawler: la parte che si occupa di scaricare in locale le pagine, che poi saranno processate dall Indexer, che crea un indice dei documenti, che viene usato dal Query processor, che riceve la query utente e restituisce i risultati ordinati

PageRank L algoritmo PageRank è il cuore del motore di ricerca Google. PageRank serve a ordinare i risultati: se cerco la parola Luiss trovo circa un milione e mezzo di pagine che la contengono!! Come ordinare i risultati? Usando PageRank!

PageRank L idea alla base di PageRank è la seguente: Un sito web autorevole è quello che è puntato da siti web autorevoli. PageRank, per calcolare i valori delle pagine, guarda solo la struttura di grafo delle pagine Web (WebGraph): ogni pagina è un nodo, ogni link tra le pagine è un arco diretto.

Calcolo di PageRank Inizialmente ogni pagina ha un valore di PageRank, detto il peso della pagina, w i pari a 1. Si ripete la seguente procedura (finchè i valori convergono, ovvero non cambiano più tra una iterazione e l altra): Ogni pagina divide il suo peso tra le pagine che punta Normalizzazione : divido tutti i pesi per il peso massimo tra tutte le pagine

Esempio 1 3 2 w 1 = w 2 w 2 = w 1 /2+w 3 w 3 = w 1 /2

Esempio 1 3 2 w 1 = w 2 w 2 = w 1 /2+w 3 w 3 = w 1 /2 Partendo da w1 = w2 = w3 = 1, dopo circa 50 iterazioni si giunge ai valori finali: w1 = w2= 1 e w3 = 1/2