Nella seconda metà degli anni 80 mi sono interessato per un po’ di computer graphics, e mi sono imbattuto in Symbolics, uno spinoff del MIT AI Lab che si occupava tra l’altro di visualizzazione avanzata. Questo video, presentato da Symbolics a SIGGRAPH 1987, mi colpì moltissimo: come facevano a fare muovere uno stormo di uccelli in un modo così naturale? Al tempo sembrava stregoneria, e io del resto ero uno studente di economia della provincia italiana, senza nessuna possibilità di capire il lavoro dei maghi del computer del MIT; quindi ho accantonato la domanda. Fino a che, nel 2009, mi è capitato di leggere un libro del 1992, Complexity di Mitchell Waldrop, che ha la risposta alla mia domanda di 22 anni prima. Ogni uccello dello stormo (o pesce del banco), segue tre semplici regole di comportamento:
- Prova a mantenere una distanza minima dagli altri oggetti dell’ambiente, inclusi gli altri uccelli/pesci (Craig Reynolds a Symbolics li chiamava “boids”).
- Prova ad adeguare la propria velocità a quella degli altri uccelli/pesci nelle vicinanze.
- Prova a spostarsi verso il centro di gravità degli altri uccelli/pesci nelle vicinanze.
La naturalezza dei movimenti dello stormo è emergente. Per quanto ne sa il programma, non c’è nessuna entità chiamata stormo: sta animando dei singoli boids. Semplici regole di interazione locale tra di essi producono un comportamento collettivo elegante ed efficace.
Aspetta un attimo. Questo non è poi così diverso da quello che succede in Kublai. Esempio: volevamo che la community salutasse i nuovi iscritti. Naturalmente non è una cosa che si possa fare per decreto. Quindi abbiamo fatto così: Walter e io, che siamo amici e anche membri molto attivi della community, abbiamo creato un Welcome Group e abbiamo iniziato a farlo. Questo ha generato un movimento che può ricordare il volo di un (piccolo) stormo: i nostri “vicini di rete”, o almeno alcuni di essi, si sono a loro volta iscritti al gruppo e hanno iniziato anch’essi a dare il benvenuto ai nuovi entrati. In breve tempo hanno sviluppato un modo più efficace di tenere nota di chi stava facendo cosa (dopo un po’ di tentativi-ed-errori Pico ha proposto un widget che va bene per tutti), e i loro vicini di rete hanno cominciato a imitarli… iniziatori compresi!
Le communities sono, per definizione, impossibili da controllare; ma certamente è possibile influenzarle. Questa affermazione è abbastanza ovvia, molti di noi ne hanno fatto esperienza. Questa intuizione di volare a stormi, se confermata dall’analisi, potrebbe portare allo sviluppo di tecniche per influenzare i social network (non solo sicuro che “gestire” sia una parola appropriata) basate sulla costruzione di “isole” di interazione locale in cui certe regole sono accettate, e da cui poi queste regole si propagano attraverso le connessioni della rete stessa. Naturalmente la localizzazione di queste isole è importante: in Kublai Walter e io siamo le persone di gran lunga più centrali negli autovettori, secondo Ruggero.
Mi chiedo se questo meccanismo possa aiutarci a capire perché la gente sembri “troppo collaborativa” sui social networks e perché, di converso, i comportamenti opportunistici siano molto meno diffusi di quanto si possa pensare “da fuori” (e infatti “da fuori” la rete sembra un luogo pericoloso ai vari D’Alia, Carlucci, Rossi et cetera). La cooperazione è una proprietà emergente delle reti, anziché una intrinseca delle persone?