W oczekiwaniu na rozwiązanie kwestii dokończenia sezonu w poszczególnych krajach postanowiłem wziąć sprawy we własne ręce i samemu je zasymulować 🙂 Jak zabawnie by to nie brzmiało przeprowadziłem eksperyment symulacji końcówki sezonu w konkretnych ligach w Europie. Jako, że z oficjalnych informacji wynika, że Ligue 1 nie zostanie rozegrana do końca, a Bundesliga wznowi mecze już w najbliższy weekend – na pierwszy ogień przyjrzałem się Premier League w Anglii oraz hiszpańskiej La Liga. Oczywiście nie obyło się w tym zadaniu bez nauki nowych rzeczach, których jeszcze do końca nie próbowałem, albo przynajmniej się nie zagłębiłem. Do predykcji wykorzystałem model uczenia maszynowego XGBoost Classifier, na podstawie którego określiłem wyniki poszczególnych meczów.

Całość skryptu, który stworzyłem na potrzeby tej analizy znajdziecie tu: https://github.com/szydlinho/Season_simulation/blob/master/Premier%20League%20Simulation%20.ipynb .

Premier League symulacja

Zaczniemy od ligi angielskiej. Schemat analizy i jej przedstawienia będzie taki sam również dla ligi hiszpańskiej. 1. Przypomnimy sobie aktualną sytuację w lidze a następnie, 2. stworzymy predykcje wszystkich pozostałych meczów w sezonie. 3. W wyniki czego otrzymamy zasymulowane wyniki w każdym ze spotkań, co pozwoli 4. stworzyć wykresy stanu na koniec sezonu.

Warto tutaj zaznaczyć, że o ile do predykcji końcowego wyniku spotkania wykorzystałem XGClassifier, o tyle do określenia konkretnego wyniku wykorzystałem model Poissona, co do którego informacje znajdziecie chociażby w Prognozowanie wyniku na podstawie rozkładu Poissona

Aktualny stan – 29 kolejek za nami

Nie wszystkie zespoły rozegrały wszystkie 29 kolejek, dlatego też zaległe spotkania musiały zostać poddane predykcji. W przypadku Premier League do pełnych 29 kolejek zostały do rozegrania dwa spotkania. Wyniki symulacji dla nich przedstawia tabela poniżej.

HomeTeamAwayTeamFTHGFTAGFTRMW
Aston VillaSheffield United21H28
Man CityArsenal21H29
Predykcje dwóch zaległych meczów PL

Po uzupełnieniu zaległych spotkań możemy przejść do przedstawienia sytuacji na 29 kolejkę rozgrywek.

Na wykresie przedstawiona została liczba punktów danego zespołu w 29 kolejce ligi angielskiej. Zdecydowany lider – Liverpool z 82 punktami wydaje się zupełnie niezagrożony. Dosyć pewną pozycję ma również Manchester City. Na trzecim miejscu, jak dotychczas – Leicester. Pozostała części tabeli wydaje się dosyć wyrównana i tylko kwestia kilku punktów może skutkować przesunięciem w tabeli. Szczególnie ciekawa przedstawia się również walka o utrzymanie na najwyższym poziomie rozgrywkowym w Anglii. Wiele zespołów nie może w tym momencie czuć się pewnym utrzymania w Premier League. Wśród zagrożonych zespołów można wyróżnić zdecydowanie Norwich, West Ham, Watford oraz Bournemouth, jak również Aston Villa czy Brighton.

Predykcje wyników pozostałych meczów Premier League

Powyższy wykres był punktem wyjścia do stworzenia modelu do predykcji wyników spotkań. Sama predykcja została wykonana za pomoc XGClissifier. Modelowana zmienna, czyli wynik spotkania przyjmował 3 kategorie (inaczej niż zwykle na analizadanychwpilce.com) – wygrana gospodarzy, gości lub remis. Wszystkie wyniki możecie znaleźć w załączonym pliku csv poniżej.

Na podstawie wygenerowanych wyników wszystkich meczów sytuacja z punktami wygląda jak na poniższym wykresie.

Dwa pierwsze miejsca – bez zmian. Liverpool skończyłby z 104 punktami na koniec sezonu! Wow. Na podium zakończyłaby sezon również Chelsea. Na pozostałych miejscach, promujących udział w pucharach europejskich znalazły się Man United oraz Tottenham. Jeśli chodzi o spadek z Premier League to sytuacja jest następująca: według naszej symulacji w Championship w następnym sezonie zagrałoby Norwich, Aston Villa oraz Southampton.

Krótką animację przedstawiającą ilość punktów drużyny w danej kolejce możecie znaleźć na zamieszczonym już wcześniej githubie po uprzednim ściągnięciu pliku html.

Zmiany w tabeli na przestrzeni sezonu

Na koniec analizy symulacji Premier League chciałem przedstawić jak zmieniałaby się sytuacja w tabeli na przestrzeni analizowanej końcówki sezonu 2019/20. Wyniki przedstawione zostały na wykresie poniżej.

Interesujące wnioski płynące z analizy powyższego wykresu:

  • Znaczny spadek Leicester z 3 miejsca w 34 kolejce na 6 miejsce na koniec sezonu,
  • Man United w ostatniej kolejce przeskoczył aż o dwa oczka w tabeli
  • Ładna ucieczka ze strefy spadkowej zarówno West Ham’u jak i Watfordu

La liga

W lidze hiszpańskiej dojechaliśmy do 27 kolejki włącznie. Tu na szczęście nie musieliśmy dokonywać dodatkowych predykcji do stanu wejściowego, gdyż wszystkie ekipy rozegrały równo 27 spotkań. Aktualna sytuacja w lidze przedstawia się jak poniżej.

Na tę chwilę Barcelona na pierwszym, Real na drugim miejscu. Za nimi z dosyć znaczną stratą – kolejno Sevilla, Sociedad oraz Getafe. W strefie spadkowej Espanol, Leganes oraz Mallorca.

Symulację wszystkich poszczególnych meczów znajdziecie w pliczku przygotowanym poniżej.

Barca mistrzem, Real vice, Atletico trzecie

Przyznam się szczerze, że pierwszą trójką w ogóle się nie zdziwiłem. O ile kolejność tych trzech klubów zmienia się na przestrzeni ostatnich lat, o tyle ich obecność na podium powtarza się często do znudzenia 🙂 Według naszych symulacji Barcelona została mistrzem z 88 punktami na koncie, za nią Real Madryt ze strat 5 punktów. W strefie spadkowej na koniec sezonu znalazły się Celta Vigo, Espanol oraz Leganes. Jeśli nie dostrzegacie jeszcze wyjątkowości sezonu 2019/20 w wykonaniu Liverpool’u to zerknijcie proszę na punktację. Liverpool po zasymulowanym sezonie zdobyłby aż 104 punkty, wygrywając Premier League, natomiast mistrz La Liga zebrał ich „wyłącznie” 88. Trzeba przyznać, że ten klub zdeklasował rywali pod względem przewagi w lidze na tle chociażby właśnie ligi hiszpańskiej.

Kolejka po kolejce w lidze hiszpańskiej sezonu 19/20

Na już sam koniec przejrzyjmy się dynamicznej sytuacji w lidze hiszpańskiej w zasymulowanej części sezonu 2019/20.

Atletico Madryt, które jeszcze w 28 kolejce plasowałoby się na 6 miejscu, ostatecznie skończyłoby na podium. Spory awans zanotowała również Valencia (z 7 miejsca w 28 kolejce na 4 w 38.). Pechowcem okazałaby się Celta Vigo, gdyż aktualnie znajdująca się tuż nad strefą spadkową, spadłaby na samo dno tabeli zamykając ją na koniec sezonu.

Na koniec

To by było na tyle ode mnie. Parą wykresów przedstawiłem, zrobiliśmy poważną analizę a co najważniejsze poznaliśmy nowe rzeczy. Przyznam się szczerze, że model uczenia maszynowego XGBoost spodobał mi się na tyle, iż postaram wykorzystać go do moich cotygodniowych predykcji, które swoją drogą możecie znaleźć na stronie https://footballbettips.herokuapp.com/ .

Jeśli się podobało – oczywiście zachęcam do dzielenia się treści, jak również do podsyłania swoich wrażeń. Dodatkowo muszę powiedzieć, że stworzony skrypt jest dosyć uniwersalny także, jeśli będzie taka inicjatywa zasymuluje również pozostałe ligi w Europie.