Блоги

Кто выиграет The International? Отвечает математика

85


При моделировании был использован метод Монте-Карло. Для тех, кто не в курсе, вот какое определение этому методу дается в Википедии:

«Методы Монте-Карло — группа численных методов для изучения случайных процессов. Суть метода заключается в следующем: процесс моделируется при помощи генератора случайных величин. Это повторяется много раз, а потом на основе полученных случайных данных вычисляются вероятностные характеристики решаемой задачи. Например, чтобы узнать, какое в среднем будет расстояние между двумя случайными точками в круге, методом Монте-Карло, нужно взять много случайных пар точек, для каждой пары найти расстояние, а потом усреднить».

То есть, надо много раз смоделировать какой-то турнир, а потом посмотреть, какая команда будет чаще оказываться на первом месте. В случае спортивного турнира случайное событие — это отдельный матч двух команд. С футболом тут сложнее, поскольку в нем могут быть три исхода — победа, ничья и поражение, поэтому я решил взять дотку. На отдельной карте возможны только два исхода — победа или поражение.

Итак, предположим, что у нас есть матч Команда 1 — Команда 2. Вероятность победы команды 1 — p, команды 2, соответственно, q=1-p. Далее сгенерим случайное число от 0 до 1, если оно меньше p, то победила команда 1, иначе — команда 2. Но тут возникает вопрос, как вычислить вероятность победы для реальных команд. Мой ответ тут не лучше и не хуже любого другого. Я скачал базу данных всех матчей миноров и мажоров (наверное) с сайта datdota (я выбрал вкладку Premier и выгрузил оттуда около 700 матчей) и посчитал долю побед каждой команды над каждой другой. На самом деле формула немного сложнее и выглядит так:

Таким образом, получаем матрицу 65х65 (в выгруженных матчах принимало участие 65 команд, включая знаменитые ? и Unknown Radiant Team), где в каждой ячейке стоит вероятность победы команды из строки над командой из столбца. Вот ее небольшая часть:

Теперь начинается веселье. Надо смоделировать турнир. Я сделал невероятное предположение, что в The International будут участвовать топ 16 команд по DPC, помещенных в сетку double-elimination (тут спасибо Liquipedia).

Сетка выглядела так (тут показана одна из случайных реализаций. Кстати, финал в ней оказался весьма эпичным):

Сетка увеличивается по клику
Сетка увеличивается по клику

Все матчи кроме финала были bo3, финал — bo5. Начальное расположение команд всегда было одинаковым (первые восемь пар). Я старался развести VP и Liquid как можно дальше по сетке.

Осталось всего ничего — провести эту симуляцию 10000 раз и усреднить результаты. И вот мы получаем вероятность того, что VP выиграют наш воображаемый Int — 32,9%.

Очевидно, что FlyToMoon так высоко, потому что они сыграли недостаточно много матчей и не было нормальной статистики по их играм. Опять же, я брал только мажоры и миноры. Если бы Na'Vi не слились в открытых отборочных, то с вероятностью 5,2% мы бы увидели «НАВИ В ГРАНД ФИНАЛЕ».

Очевидно, что сетка не будет такой, какая задана в моей программе. Есть тут и много других «если», но в общем и целом, мне кажется, тут весьма неплохо оценена вероятность победы той или иной команды на некотором воображаемом турнире.

P.S.: Уже позже я сделал тест с рандомной жеребьевкой первого раунда (рисунок ниже). Видно, что распределение сильно поменялось. Такое сильное влияние показывает, что результат турнира очень зависит от того, как организаторы проведут жеребьевку турнира. Если поместить VP в одну часть сетки, а Liquid с LGD — в другую, то вероятность победы коллектива из СНГ возрастает почти в два раза. Диванный аналитик внутри меня говорит, что аналогично можно сказать и про группы — если VP окажется в одной, а Liquid с LGD — в другой, то VP очень сильно повезет. Значит, организаторы своими решениями могут довольно сильно повлиять на результат турнира.05Oo5bqOOFs.jpg

Спасибо за внимание!

С уважением,

Костя

Тут пазла нет!

Комментарии