Recentemente Omigrade è stata coinvolta in uno studio di fattibilità circa la realizzazione di un applicativo che consentisse di effettuare delle proiezioni sui risultati per alcuni sport di secondo piano nel panorama italiano: baseball e basket.
Un buon sistema di proiezioni deve raggiungere almeno tre obiettivi:
1- Considerare il contesto delle statistiche di un singolo giocatore
2- Separare capacità effettive dalla fortuna
3- Comprendere quale sia la curva dell’invecchiamento di un atleta in terminni di calo delle performance.
Il primo obiettivo è stato relativamente semplice da considerare e tradurre in specifiche tecniche. Osservando le prestazioni di un giocatore in casa e fuori casa, è possibile fare inferenza introducendo un fattore campo, per tener conto delle difficoltà che affronta.
Analogamente è possibile seguire quello che accade ai giocatori che passano da una serie ad un’altra per poter registrare la forza di un giocatore in gara.
Il punto 2 ha richiesto più lavoro. A volte la fortuna può oscurare le vere abilità di un giocatore. Quello che si può pensare di fare è di individuali quali dati statistici siano più suscettibili alla fortuna. Nel basket ad esempio la media dei canestri da tre punti è più incostante di quella da due o di quella dei cosiddetti coast-to-coast; (partenza dalla propria linea di canestro e raggiungimento del canestro avversario con realizzazione del punto).
Il problema più grosso da affrontare è la gestione delle interferenze che si introducono nel sistema man mano che si aggiungono dati e si più a fondo.
Ad ogni modo entrambi questi sport, pur essendo di squadra, procedono in modo abbastanza ordinato e gli atleti sono ampiamente responsabili delle loro performance e quindi dei dati relativi alle loro statistiche. Per certi versi non risulta molto complicato ordinare la casualità.
Il fatto importante nel progettare un data base che potesse essere utilizzato da un algoritmo che possa tener conto di tutte le statistiche, è proprio nella numerosità delle stesse.
Generalmente si tratta di attività che producono enormi quantità di dati nei quali si riesce ampiamente a scavare e a minimizzare il rischio che le previsioni vadano alla deriva.
IL punto 3 è stata la sfida più interessante, dovendo ricorrere a studi specialistici per poter capire come analizzare un dato relativo alla curva di invecchiamento.
La cosa interessante da un punto di vista tecnico è stato l’utilizzo di database non relazionali. La scelta si è imposta a causa del volume veramente elevato di statistiche disponibili e di dati da trattare che, se registrati su RDBMS tradizionali, comportavano sicuramente un notevole calo prestazionale.
Il metodo di implementazione utilizzato in questo caso è stato di tipo Document Store, evoluzione del più tradizionale metodo chiave/valore tipico dei db relazionali.
Grazie anche all’integrazione con sviluppo di app iphone Omigrade è riuscita a implementare il tutto in una soluzione fruibile a 360°