Cosa hanno in comune uno dei più influenti matematici del Novecento e il famoso gioco prodotto dalla Niantic? La risposta più intuitiva per un allenatore di Pokemon sarebbe “nulla”, poiché i lavori di Hilbert riguardano per lo più gli spazi infinito dimensionali (i famosi spazi di Hilbert) e la sistemazione assiomatica della geometria euclidea.
Tale risposta è in realtà sbagliata! Il matematico tedesco, infatti, ha posto le basi per il sistema gerarchico che consente l’individuazione delle palestre, l’esclusione dei territori militari e la distribuzione degli spawn all’interno dell’universo di Pokemon Go. Come è possibile? Sin dal lancio del gioco, la Niantic ha assicurato una esperienza il più vicino possibile alla realtà: i Pokemon si comportano come animali veri e propri, interagendo con timore o reagendo con violenza ai tentativi di cattura. I punti di interesse come scuole, musei, monumenti e giardini pubblici diventano Pokestop nei quali rifornirsi di Pokeball e bacche o Palestre nelle quali sfidare boss leggendari. Persino il meteo, grazie alla recente aggiunta del weather system, influisce nella partita, consentendo anche all’avatar di vivere le stesse condizioni climatiche del giocatore.
In quanto “reali”, i Pokemon e i punti di interesse del gioco sono individuabili attraverso delle coordinate, che corrispondono alle vere posizioni dei luoghi ricercati. Ad esempio, se una palestra con coordinate (x,y) ha nel disco foto una immagine di un particolare monumento, a quei valori di latitudine e longitudine è ubicato realmente il monumento. Come è possibile questa corrispondenza biunivoca tra le coordinate del mondo reale, che è sferico, e la Terra piatta di Pokemon Go? Grazie al lavoro svolto da Hilbert!
Nel 1891, a seguito degli studi di Peano, il matematico tedesco propone una curva frattale continua, che prenderà il nome di curva di Hilbert, in grado di riempire interamente il piano. Per costruire questa particolare curva, si parte da un quadrato unitario:
- Lo si divide in quattro quadratini uguali
- Si prende il centro di ogni quadratino e lo si congiunge col centro di due quadratini adiacenti con una linea spezzata di tre segmenti
- Ognuno dei quattro quadratini viene diviso in quattro parti uguali e si ripete il procedimento
Al quarto stadio della costruzione la poligonale risulta formata da 255 segmenti, ognuno che misura 1/16 del lato del quadrato di partenza.
Le curve di Hilbert furono adoperate per la prima volta nel 2005 da Eric Veach per trasformare la forma della Terra in uno spazio bidimensionale, idealizzato come una curva che occupa l’intero piano.
Il passaggio dal geoide al piano avviene mediante le celle S2, che costituiscono una decomposizione gerarchica della superficie terrestre. La decomposizione si dice gerarchica perché divisa su livelli: a livelli più elevati corrispondono celle più piccole e con una maggiore accuratezza. Ogni cella S2, che è identificata in maniera univoca, può essere divisa in più celle di gerarchia superiore.
Senza le curve di Hilbert non ci sarebbero le celle S2 e, in loro assenza, avremmo dovuto dire addio all’esperienza di gioco di Pokemon Go. Poiché si è basato, fino a pochi mesi fa, sulla mappa fornita da Google Maps, il prodotto Niantic ne ha ereditato la dipendenza dalle celle; sebbene ciò non sia stato evidente sin dagli inizi, molte prove emergono dalla distribuzione degli ex raid pass all’interno delle palestre non sponsorizzate.
Qual è il ruolo delle celle S2 in Pokemon Go?
- Le celle di livello 10 determinano le condizioni atmosferiche e i luoghi di cattura dei Pokemon
- Le celle di livello 12 stabiliscono le zone di distribuzione degli Ex Raid
- Le celle di livello 15 servono ad escludere dal gioco le aree militari
- Le celle di livello 16 sono necessarie per valutare quali palestre e pokestop far rientrare nel campo di osservazione del giocatore
- Le celle di livello 20 generano gli spawn
In definitiva, la prossima volta che vi chiederanno a cosa serve la matematica e, in particolare, la curva di Hilbert, potrete rispondere: a completare il Pokedex!
Il presente articolo non può essere copiato parzialmente o integralmente