Предисловие
Для багатьох старожилів нашого сайту Fightnews.info я, користувач із ніком Andrey Wiki, відомий не тільки як автор статей про бокс у Вікіпедії, а й як той, хто колись детально й досконально розбирав сайт BoxRec.com. Формули та порядок просування боксерів у рейтингу цікавили багатьох. Однак BoxRec ніколи не стояв на місці: час від часу сайт переглядав, редагував і вдосконалював свою формулу та підхід до відображення різних параметрів.
У якийсь момент усе стало настільки складним і закритим, що неможливість коректно перевірити зміни в рейтингах викликала в мене роздратування і розчарування. У результаті я написав велику статтю, в якій аргументовано розкритикував нововведення, і на деякий час відклав ідею подальшого аналізу сайту.
Проте інтерес до боксу, а згодом і до боксу голими кулаками, знову занурив мене у цей вид спорту, і одного разу я вирішив спробувати стати редактором на BoxRec.com. Я підготував лист із зазначенням своїх робіт у Вікіпедії та на спортивному сайті; після перевірки моїх навичок мені надали права редагування для низки видів спорту в окремих країнах.
Хоча мої повноваження скромні й не безмежні, сам факт статусу редактора надав мені доступ до розширеної версії сайту — тієї, де видно формули, бали й навіть приховані титули, недоступні звичайним користувачам. Маючи ці можливості, я вирішив повернутися до розбору BoxRec.
Перша частина серії статей присвячена аналізу офіційної інформації щодо формули розрахунку балів.
Для початку я максимально дослівно перекладу інформацію, що міститься на сайті.
Введение
BoxRec.com публікує два типи рейтингів боксерів: Active (Current) та Active and Inactive (All Time); обидва рейтинги щодня оновлюються автоматичною системою сайту. Ці оцінки не залежать від суб'єктивних думок і повністю базуються на поєдинках, внесених до бази даних BoxRec.
До рейтингу Active включаються лише ті боксери, які провели бій протягом останніх 365 днів. Якщо боксер не виходив на ринг протягом року, система автоматично переводить його до статусу «Inactive». Статус «Inactive» також присвоюється боксеру, який оголосив про завершення кар'єри, навіть за наявності поєдинку в останні 365 днів. У базі даних має рейтинг кожен зареєстрований боксер, включно з тими, у кого рекорд 0-1.
Система BoxRec миттєво перераховує рейтинги під час додавання або зміни будь-якого поєдинку. Тому рейтинг боксера може змінюватися під час введення або коригування даних про його власні поєдинки редакторами BoxRec. Рейтинг також може змінюватися, якщо поєдинки вносяться до записів його суперників або до записів суперників їхніх суперників — навіть якщо сам боксер з моменту останнього перерахунку не бився.
Слід враховувати, що в рейтингах, особливо в All Time, трапляються неточності та аномалії, головним чином через неповноту історичних записів у базі даних. Навіть за умови наявності повного рекорду самого боксера записи про його суперників можуть бути фрагментарними. Боксери довоєнної епохи особливо вразливі порівняно із сучасниками: записи їхніх суперників часто неповні через дефіцит джерел або обмежений час редакторів, тоді як у суперників сучасних боксерів дані можуть бути набагато повнішими. У результаті, наприклад, Майк Тайсон може мати повний рекорд і рекорди своїх суперників, що приносить йому значну кількість очок і високе місце серед усіх важковаговиків за всю історію, тоді як у Янга Стріблінга записи суперників можуть бути дуже урізані, що дає йому менше очок і нижчий рейтинг All Time. Зовні може здатися, що Стріблінг бився з безліччю дебютантів або бійцями з невеликою кількістю поєдинків, тоді як насправді не всі поєдинки його суперників внесено до бази (багато старих боїв загублено, оскільки про них не повідомляли газети або джерела було знищено). У міру того як редактори BoxRec знаходять і вносять історичні поєдинки або коригують раніше внесені дані, рейтинг старовинного боксера може поступово змінюватися — вгору або вниз — залежно від додавання до записів суперників і далі по ланцюжку.
Також через невелику кількість професійних боксерок (у деяких вагових категоріях активних спортсменок дуже мало) боксерці з результатом 0-1 може бути присвоєно статус «world ranked» на BoxRec; це, найімовірніше, артефакт, пов'язаний із невеликим обсягом жіночих записів у базі.
Алгоритм рейтингов BoxRec
Алгоритм Whole‑History Rating
Рейтинги на BoxRec формуються на основі алгоритму Whole-History Rating (WHR) Ремі Кулома, описаного в статті «Whole-History Rating».
Анотація. WHR — новий метод оцінки сили бійців, що змінюється в часі, у парних порівняннях. Як і багато варіантів системи Ело, підхід whole-history ґрунтується на динамічній моделі Бредлі-Террі. На відміну від інкрементних наближень, WHR безпосередньо обчислює точний максимум апостеріорі за всією історією рейтингів усіх гравців. Така точність вимагає більших обчислювальних ресурсів порівняно з традиційними методами, але розрахунки залишаються досить швидкими для застосування в реальному часі на великомасштабних ігрових серверах (нова гра додається менш ніж за 0,001 секунди). Експерименти показують, що порівняно з Elo, Glicko, TrueSkill та алгоритмами із затухаючою історією WHR дає точніші прогнози.
Основні положення
- Все боксёры имеют рейтинг в момент каждого своего поединка.
- Рейтинги определяются по результатам поединков между двумя соперниками a и b.
- Результат поединка - победа или поражение.
- Вероятность победы боксера a с рейтингом r_a против боксера b с рейтингом r_b в тексте задана как
\frac{r_a}{(r_b + r_b)}.
- Примечание. В оригинальном тексте именно такая запись; обычно в моделях Брэдли‑Терри ожидают формулу . Я оставил исходную запись, но отмечаю это как возможную опечатку.
- Совокупное правдоподобие (likelihood) всех результатов равно произведению вероятностей отдельных исходов:
L=\prod _{\mathrm{всі\ поєдинки}}P(\mathrm{результат}).
Начальные условия и виртуальные результаты
Усі боксери починають з рейтингу 1. Для цього кожному зараховують віртуальну перемогу та віртуальну поразку від віртуального суперника з рейтингом 1 на момент їхнього першого поєдинку.
Розглянемо перший реальний поєдинок між a та b, у якому переміг a. Тоді враховуються п'ять подій:
- a победил v с вероятностью (где v - виртуальный соперник с рейтингом 1).
- v победил a с вероятностью .
- b победил v с вероятностью .
- v победил b с вероятностью .
- a победил b с вероятностью .
Якщо всі рейтинги дорівнюють 1, загальна ймовірність усіх п'яти подій дорівнює
Зі зміною рейтингів a та b загальна ймовірність змінюється. Приклади з вихідного тексту:
- Для r_a=1.1,\; r_b=0.9:
L=\frac{1,1}{1,1+1}\cdot \frac{1}{1+1,1}\cdot \frac{0,9}{0,9+1}\· \frac{1}{1+0,9}\cdot \frac{1,1}{1,1+0,9}=0,0342.
- Для r_a=1.2,\; r_b=0.8:
L=\frac{1,2}{1,2+1}\cdot \frac{1}{1+1,2}\cdot \frac{0,8}{0,8+1}\· \frac{1}{1+0,8} · \frac{1,2}{1,2+0,8}=0,0367.
Алгоритм WHR шукає такі значення рейтингів, які максимізують загальну правдоподібність усіх поєдинків. У наведеному прикладі оптимум досягається при
r_a=1,70,\quad r_b=0,59,\quad L_{\max }=0,0404.
Логарифмическая форма и временная регуляризация
Максимізація добутку ймовірностей еквівалентна максимізації суми логарифмів ймовірностей:
\mathrm{maximize}\quad \sum _{\mathrm{поєдинки}}\log P(\mathrm{результат}).
Це зручніше та стабільніше з точки зору чисельних розрахунків під час оптимізації.
WHR також враховує, що рейтинг боксера змінюється з часом: від r_1 у момент t_1 (поєдинок 1) до r_2 у момент t_2 (поєдинок 2). Вводиться регуляризуючий член, що відображає зміну рейтингу в часі, який додається до суми логарифмів імовірностей за всіма поєдинками. У вихідному описі зазначено, що цей член:
- может быть пропорционален абсолютной разнице логарифмов рейтингов;
- может быть обратно пропорционален разнице во времени между поединками.
Іншими словами, WHR штрафує надмірні або надто швидкі зміни рейтингу, додаючи відповідний член до цільової функції, і тим самим знаходить оптимальні рейтинги, що тимчасово змінюються, шляхом максимізації скоригованої правдоподібності.
Підсумок
Алгоритм WHR формалізує задачу отримання рейтингів, що змінюються в часі, як задачу максимізації правдоподібності всіх результатів усіх боксерів з урахуванням часової регуляризації. Усі ключові формули та чисельні приклади збережено в перекладі у вихідному вигляді для точності та відтворюваності розрахунків.
BoxRec как обобщённый Whole‑History Rating
Загальна ідея
У боксі не завжди є однозначний переможець: трапляються нічиї та суперечливі рішення суддів. Тому BoxRec присвоює кожному результату поєдинку числове значення в діапазоні від 0 до 1: 1 — явна перемога боксера з боку a, 0 — явна перемога боксера з боку b, 0,5 — нічия. Значення між 0,5 і 1 відображають близьку перемогу боксера a, між 0 і 0,5 — близьку перемогу боксера b.
Узагальнення рейтингу «Whole-History»
У узагальненій версії WHR дробові результати інтерпретуються як дробові «перемоги» для кожної сторони:
- близкая победа с результатом 0.7 представляется как 0.7 побед для стороны a и 0.3 для стороны b;
- ничья 0.5 представляется как 0.5 и 0.5;
- близкое поражение 0.2 представляется как 0.2 для стороны a и 0.8 для стороны b.
Специальные дополнения BoxRec для профессионального бокса
BoxRec прагне забезпечити найвищу точність прогнозування переможця. Наразі точність прогнозів для професійного боксу становить 86,57%. Для досягнення такої точності в WHR запроваджено додаткові параметри, значення яких підбираються шляхом максимізації частки правильно передбачених перемог.
Инициализация рейтинга боксёров (seeding)
Ініціалізація (seeding) на початку кар'єри — надзвичайно важливий етап.
- В стандартном WHR боксёр «сеется» одной виртуальной победой и одним виртуальным поражением против соперника с рейтингом 1.
- BoxRec инициализирует боксёров в зависимости от их связности: считается, что боксёры связаны с другими, если существует хотя бы один результат >0.16 с уже связанным боксёром.
BoxRec додає для ініціалізації по 3 віртуальні поєдинки з результатом 0,05 проти:
- соперника с рейтингом 1 для связанных боксёров;
- соперника с рейтингом 1/6 для боксёров, имеющих хотя бы одну победу;
- соперника с рейтингом 1/20 в остальных случаях.
Прив'язка рейтингу до базового рівня з часом
BoxRec «прив'язує» рейтинг боксера до базового значення, додаючи 0,1 віртуального поєдинку за кожен рік, що минув від його останнього бою, з результатом 0,05 проти:
- соперника с рейтингом 1 для связанных боксёров;
- соперника с рейтингом 1/6 для боксёров с хотя бы одной победой;
- соперника с рейтингом 1/20 в остальных случаях.
Результат поєдинку та фактор очевидності рішення
- Возможные решения: KO (knockout), TKO (technical knockout), RTD (retired), PTS (on points), UD (unanimous decision), MD (majority decision), SD (split decision), D (draw), DQ (disqualification).
- Степень явности победы задаётся фактором clear decision cd.
- Для KO, TKO, RTD: cd=1.
- Для решений по очкам без известных судейских счётов:
- \mathrm{PTS},\; \mathrm{UD}=0.875
- \mathrm{MD}=0.55
- \mathrm{SD}=0.45
- Для решений по очкам при известных счётах:
- берётся средняя разница очков scd на судью и на отработанные раунды;
- если scd\leq 0.5, то cd=1.75\cdot scd;
- если scd\leq 1, то cd=0.875+0.25\cdot (scd-0.5);
- если scd>1, то cd=1;
- при этом для MD cd не может превышать 0.55, для SD - 0.45.
- Окончательный числовой результат поединка вычисляется как
\mathrm{bout\_ result}=\frac{1+cd}{2}.
Вага поєдинків
- Поединок, завершившийся остановкой (KO/TKO/RTD), имеет вес 1.
- Результат по очкам обесценивается, если поединок длился меньше 12 раундов: вес равен
\left( \frac{\mathrm{rounds\_ boxed}}{12}\right) ^2,
- при этом значения \mathrm{rounds\_ boxed}>12 трактуются как \mathrm{rounds\_ boxed}=12.
- Поединок между несвязанными соперниками обесценивается коэффициентом 1/20.
Поточні рейтинги та правило «переможець вищий за переможеного»
- Текущий рейтинг боксёра выводится из рейтингов BoxRec на момент его последних боёв.
- Правило «победитель выше проигравшего»: в течение последних 36 месяцев победитель поединка удерживается выше проигравшего в ранжировании.
- Это ограничение может быть преодолено, если проигравший в будущем добьётся успеха против более высоко оценённого соперника.
Рейтинги за всю историю (All‑time Ratings)
Рейтинги за всю кар'єру базуються, принаймні, на найвищому рейтингу боксера за всю кар'єру та на його найсильніших переможених суперниках. Формула виглядає так:
(0,67 × середній рейтинг 5 найкращих суперників, яких було переможено + 0,33 × найвищий рейтинг за кар'єру) × коефіцієнт дивізіону × 10.
Для нижчих вагових категорій очки коригуються з урахуванням співвідношення еталонної верхньої межі ваги у важкій вазі (240 фунтів) до верхньої межі ваги відповідної дивізії боксера.
Найкращі боксери можуть отримати найвищий рейтинг за всю історію, якщо мають такі показники:
- их очки за лучшие 10 побед над соперниками из p4p топ‑1000;
- их очки за лучшие 10 годовых позиций в p4p топ‑1000.
Звёздные рейтинги поединков (Bout Star Ratings)
Усі поєдинки оцінюються від 0 до 5 зірок. Бали рейтингу перераховуються з урахуванням куба співвідношення еталонної верхньої межі ваги у важкій вазі до еталонної верхньої межі ваги дивізіону поєдинку.
Чоловіки
- 5 звёзд - оба соперника имеют не менее 9.45 рейтинговых очков (примерно лучшие 100 боксёров).
- 4 звезды - оба соперника имеют не менее 5.0 очков (примерно лучшие 300).
- 3 звезды - оба соперника имеют не менее 2.36 очков (примерно лучшие 900).
- 2 звезды - оба соперника имеют не менее 0.893 очка (примерно лучшие 2700).
- 1 звезда - оба соперника имеют не менее 0.159 очка (примерно лучшие 8100).
- 0 звёзд - хотя бы один из соперников имеет менее 0.015 очка (не ранжируемые боксёры).
Жінки
- 5 звёзд - оба соперника имеют не менее 13.6 рейтинговых очков (примерно лучшие 10 боксёров).
- 4 звезды - оба соперника имеют не менее 7.36 очков (примерно лучшие 30).
- 3 звезды - оба соперника имеют не менее 3.41 очка (примерно лучшие 90).
- 2 звезды - оба соперника имеют не менее 1.61 очка (примерно лучшие 270).
- 1 звезда - оба соперника имеют не менее 0.303 очка (примерно лучшие 810).
- 0 звёзд - хотя бы один из соперников имеет менее 0.013 очка (не ранжируемые боксёры).
---
Андрій «Wiki» Атанасов