Рейтинг гравця: чому ми взяли TrueSkill, а не ELO
Будь-який застосунок із рейтингом має відповісти на одне питання — наскільки ти хороший, числом. Звучить просто, поки не згадаєш, що падел це 2 на 2, партнери міняються щогри, а вчорашній новачок сьогодні рознесе половину клубу. Ми перебрали варіанти й зупинились на TrueSkill — системі, яку Microsoft зробила для матчмейкінгу в Xbox Live. Розповідаємо, як вона працює, чим відрізняється від шахового ELO і чому для падела це не «розумно», а єдино логічно.
Спершу ELO, бо з нього все почалося
ELO придумав фізик Арпад Ело для шахів. Логіка геніально проста: у кожного одне число, після партії переможець забирає очки в переможеного, а скільки саме — залежить від різниці рейтингів. Обіграв сильнішого — багато; того, кого й мав обіграти, — копійки. Працює бездоганно... для дуелі двох людей.
Проблеми починаються, щойно гравців на корті стає четверо.
Чому ELO ламається в паделі
Три діри, яких у дуелі не видно, а в паделі вони критичні:
- Падел — це команда, а не дуель. Щоб запхати 2 на 2 в ELO, доводиться усереднювати рейтинг пари. І тут зникає головне: пара «майстер + новачок» на папері виглядає так само, як двоє міцних середняків. «Слабку ланку» система не бачить — а саме вона часто вирішує матч.
- Партнери міняються. В americano чи mexicano ти щораунду граєш із новим напарником. ELO не вміє відповісти на питання «хто з пари витягнув матч» — а для чесного рейтингу це і є суть.
- Один K-фактор на всіх. Силу оновлення в ELO задає фіксований коефіцієнт K. Поставиш великий — рейтинг ветеранів стрибає від кожної випадкової поразки. Малий — новачок місяцями повзе до свого реального рівня. Золотої середини немає.
Усереднений ELO для падела — це молоток, яким забивають шуруп. Заходить, але криво.
Що таке TrueSkill: два числа замість одного
Головна ідея: твій рівень — це не точка, а діапазон. TrueSkill тримає про кожного гравця два числа:
- μ (мю) — наша оцінка твоєї сили. Те, що ти інтуїтивно називаєш «рейтингом».
- σ (сигма) — наскільки ми в цій оцінці ще не впевнені. Велика σ означає «ми тебе майже не бачили», мала — «ми вже добре знаємо, на що ти здатен».
Формально це нормальний розподіл N(μ, σ²): дзвоник на графіку, де μ — його центр, а σ — ширина. Новачок заходить із широким дзвоником (у нас μ = 25, σ ≈ 8,3) і з кожним матчем його звужує.
Звідки береться твоє число
Показувати гравцю сирі μ і σ — погана ідея. Тому ми зводимо їх в одне число:
R = (μ − 3σ) × 40 + 500
Уся магія в «− 3σ». Ми показуємо не середню силу, а нижню межу: з імовірністю близько 99% ти не слабший за це число. Що це дає на практиці:
- Новачок із μ = 25 і великою σ = 8,3 стартує рівно з 500 — на дні таблиці, бо ми ще нічого про нього не знаємо.
- Калібрований ветеран із μ = 35 і малою σ = 2 отримує 1660: його дзвоник вузький, віднімати «на невпевненість» майже нічого.
Двоє гравців з однаковим μ матимуть різний R, якщо в одного більше зіграних матчів. Це чесно: рейтинг треба заслужити, а не отримати за один вдалий вечір. У застосунку це число лягає в один із семи тірів — від Бронзи до Еліти.
Чому новачки калібруються швидко, а ветерани стабільні
Ось де TrueSkill кладе ELO на лопатки. Згадай σ — невпевненість. Сила оновлення рейтингу прямо залежить від неї:
- Перші ігри σ велика → кожен матч сильно рухає μ. Систему буквально несе до твого реального рівня за 5–10 ігор.
- Що більше граєш — то менша σ і то менше важить один матч. Щоб зрушити калібрований рейтинг, треба стабільно обігравати сильніших.
Це і є той самий «K-фактор», але динамічний і свій для кожного: великий, поки ти новий, маленький, коли вже відомий. ELO так не вміє в принципі. А поки зіграно менше 10 матчів, ми чесно показуємо поряд із числом смугу похибки ± — мовляв, ще придивляємось.
Дрібниці, які роблять рейтинг чеснішим
- Рахунок матчу має вагу. Розгром 6:0 6:0 рухає рейтинг майже вдвічі сильніше за виграш 7:6 7:6 на тай-брейках. Множник — від 0,5 (ледь дотиснув) до 1,0 (рознесли вщент). Для ELO перемога є перемога, без нюансів.
- Командний результат → особистий внесок. Виграв зі слабшим партнером проти сильної пари — піднімешся більше, ніж якби тебе «вивіз» майстер. Система рахує силу суперників і партнера, а не лише факт перемоги.
- Хімія пар. Принагідно ми ведемо статистику, з ким ти виграєш найчастіше — корисно, коли збираєш четвірку на турнір.
То чому саме TrueSkill для падела
Коротко: бо падел — це рівно той випадок, під який ELO ніколи не проєктували. Командна гра зі змінними партнерами, де треба швидко оцінити новачка, не обваливши рейтинг ветеранів, врахувати силу суперників і не загубити «слабку ланку». TrueSkill робить усе це з коробки, бо моделює не результат, а гравця — з його силою і нашою невпевненістю в ній.
Чесний мінус: система складніша за ELO, і сирі μ/σ гравцю не покажеш. Тому ми й ховаємо математику за одним числом і тіром — усередині рахунок баєсівський, а на екрані просто «Золото, 1180».
Коротко
ELO — для шахової дуелі 1 на 1: одне число, фіксований K, нуль уявлення про невпевненість. Падел — завжди 2 на 2 зі змінними партнерами, тому ми взяли TrueSkill: μ (сила) плюс σ (невпевненість), рейтинг R = (μ − 3σ) × 40 + 500, швидка калібрація новачків через велику σ, вага рахунку матчу й особистий внесок із командного результату. Хочеш побачити своє число в дії — збери четвірку і зіграй americano. Новачкам спершу — що таке падел.
Часті питання
Це консервативна оцінка твого рівня за формулою R = (μ − 3σ) × 40 + 500. μ — наша оцінка твоєї сили, σ — наскільки ми ще не впевнені. Ми показуємо не «середню» силу, а нижню межу: майже впевнені, що ти не слабший за це число. Новачок стартує з 500, калібрований досвідчений гравець — далеко за 1000.
Через σ — нашу невпевненість. Перші ігри σ велика, тож кожен матч сильно рухає число (швидка калібрація). З досвідом σ падає, і рейтинг стабілізується: щоб його зрушити, треба обігравати сильніших. Це автоматичний «динамічний K-фактор», якого в ELO немає.
ELO рахує дуелі 1 на 1 одним числом. Падел — завжди 2 на 2, а партнери змінюються. TrueSkill моделює кожного гравця окремо (μ і σ) і витягує особистий внесок із командного результату — не губить «слабку ланку» пари, як усереднений ELO. Плюс рахує невпевненість і чесно калібрує новачків.
Так. Розгром 6:0 6:0 рухає рейтинг майже вдвічі сильніше, ніж 7:6 7:6 на тай-брейках. Множник рахунку — від 0,5 (ледь дотиснув) до 1,0 (рознесли вщент). Класичний ELO цього не вміє: для нього перемога є перемога.