I_love_natalia's blog

By I_love_natalia, 13 years ago, In Russian

После ноябрьской революции я решил немного разобраться в первопричинах инфляции рейтинга. Первые модельные запуски прошли, оказываются важными некоторые параметры системы, но об этом ниже.

В ходе экспериментов я натолкнулся на забавный факт. Оказывается, что разделение по дивизионам увеличивает рейтинг участников первого дивизиона! Рассмотрим гипотетическую последовательность:
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 выиграл контест и получил минус к рейтингу.

  • Vote: I like it
  • +12
  • Vote: I do not like it