Предисловие
Для багатьох старожилів нашого сайту 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}\cdot \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}\cdot \frac{1}{1+0.8}\cdot \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 Rating
В узагальненій версії 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)
All-time Ratings ґрунтуються, принаймні, на піковому кар'єрному рейтингу боксера і на його найкращих переможених суперниках. Формула виглядає так:
(0.67\times \mathrm{average\_ 5\_ top\_ defeated\_ opponents}+0.33\times \mathrm{career\_ top\_ rating})\times \mathrm{division\_ factor}\times 10.
Для нижніх вагових категорій очки коригуються з урахуванням співвідношення еталонної верхньої маси важкої ваги (240 фунтів) до верхньої межі ваги відповідної дивізії боксера.
Найкращі боксери можуть отримати вищий all-time рейтинг, якщо вищі такі показники:
- их очки за лучшие 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" Атанасов