Недавно я прочитал Soccermatics Дэвида Самптера, в котором исследуются некоторые математические аспекты мира спорта и, в основном, футбола. В главе 1 автор описывает, как общее количество голов, забитых в сезоне АПЛ, соответствует распределению Пуассона. Я также наткнулся на видео Numerophile, где они моделируют 1 миллион футбольных сезонов, используя распределение Пуассона.

Распределение целей

Прежде чем перейти к шагам, давайте посмотрим на распределение голов в сезоне 2019–20.

Теперь мы можем смоделировать различные совпадения на основе распределения Пуассона.

Распределение Пуассона определяется формулой:

Используя это λ, мы можем получить параметры количества голов, забитых в каждой игре.

Методология

Итак, вот простая пошаговая методология моделирования всего сезона. Эта методология не принимает во внимание форму, смену менеджеров или другие вещи, такие как травмы, смена собственника и т. д. и т. д. Тем не менее, она работает достаточно хорошо. Мы будем использовать данные за 2019–2020 годы для этого моделирования, где «Ливерпуль» и «Манчестер Сити» были безусловно лучшими командами. Итак, результат симуляции подобен тому, где по результатам нескольких симуляций эти два клуба превосходят все остальные клубы.

Для каждой игры между командой хозяев и командой гостей нам нужно рассчитать, сколько голов забьет команда хозяев и сколько голов забьет команда гостей. Цели могут быть выбраны из распределения Пуассона с их собственными уникальными лямбда-параметрами.

Вопрос в том, как мы получаем эти значения λ. Это λ можно рассматривать как фактор силы или показатель эффективности команды. Нам нужна атакующая сила и оборонительная сила этих команд, чтобы сгенерировать значения λ.

Формула для имитации матча.

1. Шаг 1. Рассчитайте среднее количество домашних голов, забитых за сезон.

2. Шаг 2. Рассчитайте среднее количество голов, забитых на выезде за сезон.

3. Шаг 3. Для каждой команды, которая играла дома:

Рассчитайте атакующую силу дома = среднее количество голов, забитых дома командой / среднее количество голов, забитых дома в целом. (С шага 1)

4. Шаг 4. Для каждой команды, которая играла на выезде:

Рассчитайте силу обороны на выезде = среднее количество голов, пропущенных командой на выезде / среднее количество голов, забитых дома в целом. (С шага 1)

5. Шаг 5: для каждой команды, которая играла дома:

Рассчитайте силу обороны дома = среднее количество голов, пропущенных дома командой / среднее общее количество голов, забитых на выезде. (Из шага 2)

6. Шаг 6: для каждой команды, которая играла на выезде:

Рассчитайте силу атаки на выезде = Среднее количество голов, забитых командой на выезде / Среднее количество голов, забитых на выезде в целом. (Из шага 2)

7. Шаг 7. Ожидаемые домашние голы, забитые в игре:

Сила атаки команды хозяев * сила защиты команды гостей * среднее количество голов дома

8. Шаг 8. Ожидаемые голы, забитые на выезде в игре:

Сила защиты команды хозяев * сила атаки команды гостей * среднее количество голов на выезде

9. Шаг 9. Вместо того, чтобы использовать ожидаемые значения из шагов 7 и 8, выберите их из распределения Пуассона с параметром лямбда = параметрам из шагов 7 и 8.

Помните для распределения Пуассона: лямбда - это ожидаемое значение (или среднее значение)

10. Шаг 10. Запустите эти сценарии в течение нескольких итераций, чтобы получить смоделированные результаты за длительный период времени.

Найдите код, чтобы сделать это здесь, на питоне с пандами. Данные взяты с http://www.football-data.co.uk/

Интересные результаты

Таблица после 1 одиночной симуляции:

Я провел симуляцию более 100 сезонов, и «Манчестер Сити» выиграл 64 раза, а «Ливерпуль» выиграл 29 раз. Даже Волкам удалось однажды выиграть! Вот посмотрите на 3 лучших места и количество раз, когда каждый клуб финишировал в этих местах.

А вот некоторые интересные и причудливые футбольные результаты, которые могут показаться странными, но определенно возможны за 100 сезонов. (Черт возьми, «Манчестер Юнайтед» выиграл 9–0 в этом сезоне и проиграл 1–6; даже «Ливерпуль» проиграл 7–2).

Поскольку голы выбираются из распределения Пуассона, бывают редкие события, когда команды забивают МНОГО.

Дополнительные баллы

Мотивация для этого была исключительно благодаря Soccermatics и видео Numerophile, и я настоятельно рекомендую вам их проверить. (Я связал их в верхней части статьи).

Потенциальные улучшения для добавления некоторой свежей информации в симуляции:

· управленческие изменения

· недавняя форма

· изменение других факторов, таких как право собственности, пандемия и т. д.

Но прелесть этой простой методологии в том, что она работает в общем смысле, и «Манчестер Сити» действительно завоевал титул чемпиона английской премьер-лиги в сезоне 2020–2021 годов, что видно из 100 симуляций, в которых они выигрывают 64% матчей. время. Однако красота заключается в таких историях, как «Лестер», которому обычно дают 1 из 100 шансов на победу в лиге, и в конечном итоге они это делают!

Бонусные результаты:

Победители после 100 000 симуляций: