После ноябрьской революции я решил немного разобраться в первопричинах инфляции рейтинга. Первые модельные запуски прошли, оказываются важными некоторые параметры системы, но об этом ниже.
В ходе экспериментов я натолкнулся на забавный факт. Оказывается, что разделение по дивизионам увеличивает рейтинг участников первого дивизиона! Рассмотрим гипотетическую последовательность:
1) участник Х хорошо сыграл тур див-2 и попал в первый дивизион, с рейтингом, скажем, 1735.
2) участник Х некоторое время поиграл в див-1.
3) участник Х слил тур див-1 и попал в див-2 с рейтингом, скажем, 1680.
Тут можно заметить, что при балансировке по сумме 55 рейтинга этого участника осталось в див-1! Более того, обратного перехода рейтинга, вообще говоря, никогда не происходит. Таким образом, даже при отсутствии поступления новых участников, разные дивизионы при балансировке суммы дают инфляцию рейтинга в див-1 (и дефляцию в див-2). Вот такие пироги.
P.S. Хотелось бы задать Михаилу Расиховичу несколько вопросов относительно системы расчета рейтинга на Codeforces. Точнее, попросить уточнить/поправить модельные предположения (на эффект выше они не повлияют).
1) Seed в 0-base вычисляется как сумма вероятностей проигрыша участникам.
2) Рейтинг изменяется на величину 360 * относительную разницу фактического места и seed-а (т.е. деленных на количество участников тура).
3) Для участвующих в первый раз относительный 0-base seed равен n/2 (хотя, точнее было бы (n-1)/2).
4) ?? - При рассчете seed-а вероятность выиграть у участника, играющего в первый раз, считается 1/2, а не вычисляется на основании рейтинга. Обратное приводит к дисбалансировке суммы seed-ов и мест.
5) Хочется знать уточнения, внесенные для подавления инфляции в ходе ноябрьской революции, применяется ли округление (и если да, то как), а также уточнения, появившиеся после забавной ситуации, когда tourist выиграл контест и получил минус к рейтингу.
Хм, интересно по поводу того, что рейтинг в див 1 остался.... Даже не кажется необоснованным :) А как посчитать изменение суммы рейтингов участников div 1 и div 2 отдельно после каждого контеста? :) Вроде такой таблицы
Спасибо за ссылку, фантастическая статистика. Очень интересно, как автор ее получил.
Еще очень интересно, почему у tourist на текущий момент такой низкий рейтинг. И почему за последний контест он получил всего +10. Действительно, заметим, что его seed, расчитанный по моей формуле, будет значительно больше 2. Каждый красный участник, например дает минимум 0,08 к сиду, по самой грубой оценке. И так далее.