Blog divulgativo sulla matematica applicata

Siamo già in Matrix: come un matematico vede la rete

matrix-1799659_1920Nel 2003 uno studente di Harvard si è inventato uno dei siti web che avrebbe rivoluzionato il modo di vivere la nostra vita sia reale che virtuale. Il sito era facemash il papà di Facebook, il primo vero social network mondiale. Capiamoci, i social networks esistevano ancora prima che Facebook nascesse, ma all'amico Mark dobbiamo riconoscere il merito di aver diffuso il termine. Ma che cosa è un social network? Lo scopriremo attraverso Facebook e gli occhi di un matematico e per farlo riporterò alcuni (pochi)  aspetti matematici.

Faremo un primo viaggio attraverso la network analysis, la scienza che studia le reti, matematizzando il concetto di rete e affrontando uno degli argomenti cardini di questa disciplina, l'indice di centralità. Inoltre, è importante ricordare che Facebook è solo uno dei più famosi social networks, e che la network analysis è utile in molti altri contesti ben lontani da questo, come per esempio la biologia, l'economia, e la sociologia.

La rete: definizione matematica

Come siamo rappresentati dal grande cervellone di Facebook? Cioè, qual è lo strumento matematico che viene usato per rappresentare gli utenti? La risposta è triviale: la rete.

La rete è una struttura matematica formata da due insiemi: i nodi e i links. Nel nostro esempio, i nodi sono gli utenti, mentre i links sono la matematizzazione delle amicizie fra loro.

Anche la rete metropolitana di una città è una rete dove i nodi sono le stazioni (fermate) e i links sono i collegamenti, cioè i treni che collegano fisicamente le stazioni. Un altro esempio di rete - e vi suggerisco di giocarci un po' su moviegalaxies.com - sono le trame dei film dove i nodi sono i personaggi e i links rappresentano i dialoghi/contatti tra loro.

moviegalaxies_lordofrings Kaminski, J., Schober, M., Albaladejo, R., Zastupailo, O., Hidalgo, C. (2012). "Moviegalaxies - Social Networks in Movies", http://moviegalaxies.com, August 2012, Accessed Date Month Year.

Nodi e Links

Veniamo ora all'aspetto matematico, ci servono due insiemi quello dei nodi N e quello dei links E (edges). Il primo contiene gli utenti, cioè noi, numerati da 1 fino a n (in genere n è un numero molto, molto grande), quindi possiamo scrivere \ N=\{1,2,3,\ldots,n\}.

fig_retegiocattolo2Il secondo insieme è un sottoinsieme del prodotto cartesiano tra N e se stesso, scriviamo E\subset N\times N. Ma andiamo per gradi e consideriamo la rete giocattolo della figura accanto. Il prodotto cartesiano non è niente altro che l'insieme delle coppie formate dai 3 utenti dell'insieme N=\{1,2,3\},

N\times N=\{(1,1);(1,2);(1,3);(2,1);(2,2);(2,3);(3,1);(3,2);(3;3)\}.

Ma non tutte le coppie sono "utili" per tre motivi principali:

  1. Le coppie (1,1), (2,2), (3,3) ci dicono che gli utenti sono amici di se stessi, un'informazione inutile ai nostri fini (non in generale) quindi queste coppie non faranno parte dell'insieme dei links E.
  2. Le coppie possono essere inserite nell'elenco dei links se i nodi sono amici; nel nostro esempio giocattolo  l'utente 1 NON è amico del 3 e viceversa, quindi dobbiamo buttare via anche le coppie (1,3) e (3,1).
  3. Su alcune reti - e Facebook ne è un esempio - il link tra due utenti è simmetrico cioè le coppie (1,2) e (2,1) ci danno la stessa informazione quindi il link può essere rappresentato solo da una di esse; la stessa cosa vale per gli amici 2 e 3. In generale questo non è vero - pensate a twitter - ed è quindi importante tenere entrambe le coppie; a seconda che in una rete ci sia simmetria o meno la chiameremo rete non-diretta (undirected) o rete diretta (directed).  Ma Facebook è simmetrica e non-diretta, quindi ci basta solo una delle due coppie.

Questo ci dice che i vertici della rete giocattolo sono E=\{(1,2) ; (2,3)\}, quindi la rete giocattolo si può scrivere come T=(N,E)

Fino a qui abbiamo descritto gli elementi della rete ed abbiamo imparato a rappresentarla attraverso un grafo (punti e linee), non ci manca che introdurre una nuova rappresentazione che ci permette di fare i conti quando il numero di nodi (utenti) si fa importante. Poiché il link è una relazione tra due nodi, possiamo costruire una tabella a doppia entrata con i nodi sia sulle righe che sulle colonne ed associare 1 o 0 nel caso in cui ci sia un link tra i due nodi o meno:

\begin{array}{c|ccc}\text{Nodi}&1&2&3\\\hline1&0&1&0\\2&1&0&1\\3&0&1&0 \\\end{array}

Come si può facilmente intuire, la riga e la colonna di intestazione della tabella sono assolutamente superflue e i matematici non amano il superfluo, quindi buttiamo via l'inutile e teniamoci solo gli zeri e gli uni della parte interna per costruire quella che si chiama la matrice di adiacenza

A=\begin{bmatrix}0 & 1 & 0\\1 & 0 & 1\\ 0 & 1 & 0\end{bmatrix}

Questo è l'oggetto matematico che viene usato per analizzare le reti, anche se ad occhio nudo è illegibile i computer ne vanno pazzi così come molti matematici (tra cui il sottoscritto).

Analisi della rete

fig_rete_matrixOra consideriamo la rete dei nostri amici di Facebook, quanti nodi ha? Scommetto che sono tanti - la mia poco più di 700-, ma pochi se paragonati ai circa 2 miliardi di utenti dell'intera rete.

Chi di noi non si è mai chiesto chi sia l'amico più fico tra i nostri amici? Oppure perché proprio lui/lei ha così tanti più like sulle sue foto. E sono sicuro che tutti se la siano fatta almeno una volta.  Possiamo formulare la domanda in questi termini:

chi tra i miei amici (incluso me stesso) è il più importante?

Questa domanda è una delle domande cruciali della network analysis, e la risposta è solo una: "in che senso?". Già, perché qui, ora, si tratta di capire cosa intendiamo per "importante". Non voglio entrare in una discussione filosofica/matematica, perciò vi racconto alcune delle interpretazioni date dagli analisti a questo termine che hanno portato a costruire diversi indici di centralità.

Il modo più intuitivo di misurare la centralità è quella basata sul numero di amici che ognuno dei nostri amici ha, cioè quello che si chiama grado di un nodo d_i (degree). Come si calcola? Basta sommare tutti gli elementi delle righe della matrice di adiacenza ed il gioco è fatto!

d_i=a_{i,1}+a_{i,1}+\ldots+a_{i,n}=\sum_{j=1}^n a_{i,j}.

Ovviamente questo tipo di informazione ci dice che chi ha più connessioni (amici) è più centrale (famoso).

Ma non sempre i famosi sono i più importanti. Ad esempio, un nodo può avere pochi amici, ma diventa importante se fa da mediatore tra due gruppi di amici. Immaginate il seguente panorama: voi conoscete il più famoso di due gruppi di amici, che in gergo si chiamano comunità, C_1 e C_2, allora la vostra rete sarà del tipo rappresentata in figura.

fig_rete_btw

Voi (il nodo arancione) sarete un nodo cruciale in quanto avete il potere di poter trasmettere una informazione dalla comunità C_1 alla C_2 o di nascondere l'informazione ad uno dei due gruppi. Il nome di questo indice è betweenness  - intraducibile dall'inglese! - ma che vuole misurare il "stare in mezzo". Come si misura una grandezza del genere? La betweenness di un generico nodo i, che indichiamo con b_i, è una media pesata dei percorsi minimi che uniscono due nodi (diversi da i) passando per il nodo i rispetto a tutti i percorsi minimi tra i due nodi, in matematichese si ha:

\displaystyle b_i=\sum_{j,k\neq i} \frac{\sigma_{j,k}^i}{\sigma_{j,k}}

dove \sigma_{j,k} è il numero di cammini minimi tra i nodi j,k e \sigma_{j,k}^i sono quelli che passano dal nodo i.

Lo so, con questa ultima formula me la sono cercata, però non è così cattiva come sembra, provate a ragionarci un po' prendendovi il tempo necessario per farlo.

Prima di chiudere questo articolo devo fare una seconda precisazione: questi due indici centralità, che risultano essere tra i più efficaci nell'analisi di rete, non esauriscono l'argomento centralità, che, a sua volta, rappresenta solo un aspetto della network analysis. Nel prossimo articolo, vi racconterò come abbiamo usato l'analisi di comunità, uno dei tanti temi caldi, non per capire chi è il più fico dei nostri amici ma a scopi investigativi!

CC BY-NC-SA 4.0
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Nessun commento ancora

Lascia una risposta

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Partecipa all’indagine “Io e la Matematica”

Clicca sull'immagine sottostante per rispondere al breve e anonimo questionario:

MIA15 - Nomination

Conviditi con i tuoi contatti questo link!

Canale Telegram dedicato alla Matematica

Iscriviti sul nostro canale Telegram

MIA15 - Nomination

Rimani aggiornato sui più interessanti articoli di divulgazione matematica e non solo!

Iscriviti alla nostra newsletter

Resta aggiornato sui nostri post e su quello che facciamo.

Seguici su Twitter

Tag Cloud

Grazie per il sostegno ai #MIA2015

Grazie a tutti per averci votato ai "Macchia Nera Awards 2015" nella categoria "Miglior Sito Tecnico-Divulgativo".

Siamo arrivati in finale grazie al vostro sostegno!

MIA15 - Nomination