Piazza Fiera 4
38123, Trento (TN)
(+39) 335 718 9753 - Università degli Studi di Trento
Russia 2018
7 settembre 2018
Panoramica
L’obiettivo di Predict 404 è creare un programma in grado di prevedere chi vincerà le partite internazionali di calcio. L’uso che se ne farà sarà quello di predire gli esiti delle partite dei mondiali di Russia 2018.
Per adempiere a quest’obiettivo i membri del team hanno deciso di analizzare i parametri fisici dei giocatori, le quote SNAI delle squadre partecipanti, e il ranking delle medesime (ogni dato sarà antecedente all’effettiva data del torneo). L’algoritmo avrà il compito di calcolare il punteggio di una squadra e se superiore alla sua avversaria farla vincere. Le partite seguiranno come da regolamento FIFA:
- 8 gironi da 4 squadre;
- All’interno di ogni girone tutte le squadre si sfideranno ottenendo 3 punti per ogni vittoria e 1 punto per ogni pareggio. 0 in caso di sconfitta;
- Per ogni girone le due squadre con maggior punteggio avanzeranno alla fase ad eliminazione;
- In quest'ultima ogni squadra disputerà una partita e potrà proseguire il suo percorso verso la coppa solo in caso di vittoria;
Obiettivi
- Predire i risultati delle partite: L’obiettivo principale della sfida è produrre un servizio in grado di decretare un vincitore tra due squadre di calcio nazionali.
- Accuratezza: In secondo luogo bisogna determinare con quale probabilità le squadre seguiranno i pronostici
Specifiche
Il programma sarà presentato sabato 8 settembre 2018 e simulerà un sito web che utilizzerà il programma Predict 404 (omonimo al team di sviluppo). I linguaggi utilizzati per la programmazione front-end del sito sono html5, css3 e javascript, mentre il lato back-end è scritto unicamente in Python. Quest'ultimo si occuperà di prelevare i dati da vari csv contenenti le informazioni relative ai giocatori, ai team, alle quote e al PIL della nazione partecipante. Per ognuno di questi parametri sarà presente un moltiplicatore. Più sarà alto il valore del moltiplicatore, maggiore sarà il peso che quella caratteristica avrà sull'intera simulazione. La somma dei risultati ottenuti dovrà poi essere comparata con quella della squadra avversaria. Un punteggio simile produrrà un pareggio, mentre se una delle due dovesse possedere uno score nettamente superiore verrebbe decretata vincitrice della partita. Al contrario, il team con punteggio nettamente inferiore perderà lo scontro.
Tappe intermedie
- Ricercare i dati
- Pulizia dei dati
- Immagazinamento delle informazioni
- Bilanciamento parametri
- Risultato
- Esposizione dei risultati
- Presentazione del progetto completo
La ricerca dei dati è il primo passo fondamentale all’interno della realizzazione del progetto. Al fine di procurarci tutti i dataset necessari abbiamo attinto a diverse fonti: wikipedia, github e kaggle.com
I dataset presentavano inoltre incoerenze e incompatibilità tra di essi (campi mancanti o che erano in conflitto a seconda dei file), per tanto è stato necessario verificare la veridicità delle informazioni e ricostruire quelle mancanti cercando di non alterare la media complessiva
Al fine di immagazzinare in memoria le informazioni ricavate dai dati è stata creata una complessa struttura di classi che è in grado di memorizzare ogni informazione relativa a ciascun giocatore,squadra,girone
Una volta salvati i dati necessari al perseguimento della challenge sarà necessario modificare i pesi (l’influenza) che ogni parametro (punteggio totale giocatori, quote SNAI, team ranking, ecc) avrà sulla simulazione in modo da ricondurre il programma alla simulazione perfetta. Sarebbe stato quindi appropriato l'utilizzo di una regressione lineare ma a causa della scarsa quantità di tempo questo non è stato possibile e si è optato per una bilanciamento statistico (il peso è più alto per i parametri che sono statisticamente più influenti)
Dopo avere effettuato la predizione, l'algoritmo produce delle immagini rappresentanti le classifiche di ciascun girone e delle eliminatorie
Le immagini prodotte vengono successivamente utilizzare da una pagina web che le rende accessibili al pubblico
Sabato 8 settembre i membri del gruppo esporranno l'origine e il funzionamento del prototipo ad una giuria
Conclusioni
Questo progetto è un prototipo, la sua accuratezza è ancora lontana da quella ottimale ma si possono già notare alcune previsioni corrette e quindi un buon potenziale di crescita (aumentando i dati a disposizione e rendendo più precisi i parametri per elaborarli). L'accuratezza di questo algoritmo permette di scommettere sulle squadre classificate in alte posizioni ottenendo la (quasi) sicurezza che i pronostici vengano rispettati