IPB

Добро пожаловать, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Рейтинг Магараджи, вынесено из темы игры
Owen
28.12.2020, 23:49
Сообщение #1


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



[вынес из http://www.braingames.ru/forum/index.php?s...=0&#entry109664
© alan]


Что касается "лучшего", то, конечно, если считать индивидуальные рейтинги, то лучший выбор - WHR, вот пдфка для вкуривания:
https://www.remi-coulom.fr/WHR/WHR.pdf

Глико несложен по сравнению с WHR, но почему-то его не любят.

Эло - простейший в реализации из этих трех рейтинг, обкатанный поколениями.

Гошники (и не только) уже некоторое время используют WHR, шахматисты не перейдут никуда никогда, потому что... ну, шахматы - такая странная игра, где всем по фиг, что матожидание очков в турнире зависит от твоего номера в турнирной таблице, а матожидание в партии - от того, каким цветом ты играешь (и если убрать ничьи, то на топ-уровне там что-то типа 5:3 для шансов на победу). Если шахматные лидеры даже с этим не хотят бороться, то апгрейдить худо-бедно работающий рейтинг они не станут точно.

alan написал мне очень странный приват про то, что Эло вообще не соответствует игре, типа как в шахматный рейтинг съеденные фигуры считать. Это, конечно, вообще не так.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
alan
29.12.2020, 9:31
Сообщение #2


zzz...
*****

Группа: Администраторы Braingames
Сообщений: 13 475
Регистрация: 23.2.2009
Из: Симферополь
Пользователь №: 13 114



QUOTE
alan написал мне очень странный приват про то, что Эло вообще не соответствует игре, типа как в шахматный рейтинг съеденные фигуры считать. Это, конечно, вообще не так.

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

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

Почему странно? Потому что результаты отдельных недель и рейтинг не будут соответствовать.
Игрок1 может набрать 10 баллов благодаря позиции игрока-10, и по 0 баллов благодаря всем остальным противникам. В то время как Игрок2 наберет по 1 баллу благодаря 5 противникам и по 0 баллов благодаря всем остальным. Итого Игрок1 получил в 2 раза больше баллов, но выиграл в 5 раз меньше раз.
При использовании систем подсчета рейтинга на основе 1на1 игр наш Топ-1 по результатам недели будет получать меньше рейтинга, чем Топ-2. И какой смысл тогда в таком рейтинге?

Систему Эло можно адаптировать для игры 1 против всех, если рассчитать вероятность, что игрок с рейтингом Х, играя против N игроков с рейтингами Х1,X2,...ХN займет место K. Но я не встречал такой адаптации.
По сути система Харкнесса и есть чем-то таким, но очень приближенным.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Owen
29.12.2020, 10:42
Сообщение #3


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



По порядку.
Во-первых, победа в шахматах сама по себе ничего не значит. Надо выиграть турнир, а в турнире надо побольше народу обыграть. Если взять круговую систему или ее любой аналог (а это турнир претендентов, многие топовые турниры, суперфинал чемпионата России и т.д.), то аналогия с магараджами полная: и там, и там берутся попарные результаты и суммируются (в шахматах еще умеют разрешать ситуации равенства набранных очков - ты в магараджах пока не дозрел до использования этого опыта). И рейтинг работает отлично при этом.

Далее.
Давай внимательно разберем твой пример.
> Игрок1 может набрать 10 баллов благодаря позиции игрока-10, и по 0 баллов благодаря всем остальным противникам. В то время как Игрок2 наберет по 1 баллу благодаря 5 противникам и по 0 баллов благодаря всем остальным. Итого Игрок1 получил в 2 раза больше баллов, но выиграл в 5 раз меньше раз.

Пусть амплитуда изменения рейтинга для ясности будет 20, т.е. за победу над равным получишь 10 очков (сам Арпад Эло завещал амплитуду 32, но это неважно).
Тогда игрок1 имеет равный рейтинг со всеми остальными (иначе не будет изменения 0, оно будет положительным или отрицательным) и равный с игроком-10. Он одну выиграл, скатал кучу ничьих в равном турнире - немножко рейтинга набрал. Хорошо.
Теперь игрок2. Он набрал по 1 баллу в 5 выигранных партиях - стало быть, у него запредельно выше рейтинг, если за победу он получает 1 (а за поражение теряет 19). Результат "победа" против столь низких по рейтингу соперников является высоковероятным.
В твой турнир он уже не особо вписывается, так как там, как мы выяснили, у всех рейтинга поровну, а у этого товарища значительно выше рейтинг, чем у 5 побежденных визави. И эта проблема вырастает еще сильнее, если там еще есть кто-то, с кем он набирает ноль. Это либо ничьи с равными, либо победа над соперниками, с которыми за победу положено около нуля - то есть за предыдущую историю набралось МОРЕ побед уже в одну калитку (потому что эту разницу надо было создать все уменьшающимися добавками, которые сейчас уже пришли к нулю).

Какой мы делаем вывод из твоего примера? Ну, во-первых, он не получился корректным, ситуация невозможна в принципе. Во-вторых, когда ты его подкорректируешь, тебе надо будет держать в голове тот факт, что если А набирает на Х 1 очко в случае победы, а Б набирает 10 на Х, то у А сейчас много-много-много больший рейтинг, и Б, показывая равный уровень игры, просто сокращает разрыв, и это правильно и хорошо.

> результаты отдельных недель и рейтинг не будут соответствовать

Так и есть, и это нормально. "Выстрелил" на первое место один раз, остальные разы играя в минус? Довольно странно оказаться на первом месте рейтинга, для него лучше подходят люди, которые стабильно играют в плюс (и, возможно, тоже бывали первыми).

Рейтинг - величина, сглаживающая и усредняющая выступление игрока за некоторый период. По истории рейтинга, понятно, будет виден пиковый перформанс, но не он будет определять итоговый рейтинг, а история в целом (и для Эло чем новее соревнования, тем больше фактический вклад).

> Систему Эло можно адаптировать для игры 1 против всех, если рассчитать вероятность, что игрок с рейтингом Х, играя против N игроков с рейтингами Х1,X2,...ХN займет место K.

Система Эло в одно действие дает матожидание количества набранных очков. Если сравнить это матожидание у всех игроков, получишь результат.
Кстати, Глико делает это лучше (давая еще дисперсию), но пока надо начать с понимания (высказанного уже не только мной, кстати), что Эло подходит магараджам вполне.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
alan
29.12.2020, 10:56
Сообщение #4


zzz...
*****

Группа: Администраторы Braingames
Сообщений: 13 475
Регистрация: 23.2.2009
Из: Симферополь
Пользователь №: 13 114



Owen, я устал спорить. Ощущение, что ты придираешься к словам и не хочешь видеть суть. Я не могу рассмотреть все возможные системы 1 на 1, со всеми возможными рейтингами игроков итд.

Победить максимальное число участников на неделе и набрать максимальное число баллов на неделе - это разные задачи, и ход позволяющий победить в первой часто не будет побеждать во второй, и наоборот.
Рейтинг за все игры и рейтинг за неделю/турнир (т.е. баллы) должны поощрять использование одной и той же стратегии, а не разных. Если ИгрокА Всегда набирает большее число баллов за неделю чем ИгрокБ, то он гарантированно должен иметь большее количество рейтинга, чем ИгрокБ. Система Эло это не обеспечивает.



Если Магараджа и Король не достаточно яркий пример, чтобы сразу понять в чем отличие от шахматных турниров, то вот одна из следующих вариаций игры, которые я планирую:

Ваша задача — набрать максимальное количество балов, разместив на шахматной доске произвольное количество королей и пешек. Единственное ограничение - ваши фигуры не могут стоять в соседних клетках.
За каждого размещенного вами короля вы получите число баллов, равное числу других игроков, НЕ разместивших на данной клетке пешки.
За каждого короля, размещенного другими игроками на клетках, где стоят ваши пешки, вы получите по 5 баллов.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Owen
29.12.2020, 11:12
Сообщение #5


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



> в) хотелось бы чтобы все же рейтинг поощрял играть и оставаться на сайте, а не вызывал тревогу потери баллов.

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

> Если ИгрокА Всегда набирает большее число баллов за неделю чем ИгрокБ, то он гарантированно должен иметь большее количество рейтинга, чем ИгрокБ. Система Эло это не обеспечивает.

Чтобы это утверждать, тебе надо построить непротиворечивый контрпример. Ты не справился с первого раза, и нет интуитивных оснований утверждать, что это вообще возможно.
Упрощаю постановку задачи. А и Б участвуют в одной и той же серии из 10 турниров с одними и теми же соперниками, у всех стартовый рейтинг одинаков. Я утверждаю, что из того, что А все турниры набирал больше очков, чем Б, следует, что у А будет выше рейтинг Эло, чем у Б.

> Победить максимальное число участников на неделе и набрать максимальное число баллов на неделе - это разные задачи

Ты что?! Они математически идентичны.
Победить максимальное число игроков - это максимизировать разницу между "выигрышами" (ты побил короля соперника, он не побил твоего короля) и "проигрышами" (твоего короля побили, ты короля не побил).
Открываем скобки, группируем слагаемые, получаем максимизируемую величину "количество побитых тобой королей минус количество побивших твоего короля".

Для других игр надо будет думать над другими рейтингами, будет день - будет пища.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
alan
29.12.2020, 11:14
Сообщение #6


zzz...
*****

Группа: Администраторы Braingames
Сообщений: 13 475
Регистрация: 23.2.2009
Из: Симферополь
Пользователь №: 13 114



QUOTE
Ты не справился с первого раза, и нет интуитивных оснований утверждать, что это вообще возможно.

Я не справился, потому что ты взял мой контрпример, назвал его невозможным и изменил на свой манер? smile.gif

Я не буду дальше продолжать этот спор.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Owen
29.12.2020, 11:29
Сообщение #7


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



Добавлю еще вот что.
Надо понимать, что выражение "Эло поощряет обыгрывать тех, у кого рейтинг выше" не вполне корректно. Проигрыш от выигрыша разделяет амплитуда, если ты выиграл и получишь x, то при проигрыше получишь x-амплитуду. То, что обыгрывание сильного дает больше очков рейтинга, имеет обратную сторону медали: проигрыш слабому отнимет тоже больше очков рейтинга.

Если у тебя при рейтинге R0 есть N соперников с рейтингами R1..RN, ты набираешь против них k очков (0<= k <= N), то неважно, на ком конкретно ты какие очки набрал, конечный твой рейтинг будет зависеть только от R0, набора R1..RN и k, но не от частных результатов партий. Это математика.

Упрощенно, если у тебя один соперник с высоким рейтингом и один с низким, то ты получишь тождественное изменение рейтинга в обоих случаях: обыграв сильного и проиграв слабому и обыграв слабого и проиграв сильному.

Надеюсь, ты учитываешь этот факт в своих рассуждениях.

> Я не справился, потому что ты взял мой контрпример, назвал его невозможным

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

А вот если мы говорим о серии турниров, то мне совсем не очевидно, что построение контрпримера в тех простых рамках, которые я задал, вообще возможно.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
alan
29.12.2020, 11:29
Сообщение #8


zzz...
*****

Группа: Администраторы Braingames
Сообщений: 13 475
Регистрация: 23.2.2009
Из: Симферополь
Пользователь №: 13 114



QUOTE
Для других игр надо будет думать над другими рейтингами, будет день - будет пища.

Вариации игр будут меняться регулярно, раз в 1-4 недели. Суть всех игр - набрать максимальное число баллов, предсказав ходы противников и выбрав лучший контр ход для них.
Нам нужен рейтинг для всех игр сразу. Рейтинг на 1 неделю у нас уже есть - баллы.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Owen
29.12.2020, 11:40
Сообщение #9


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



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

Далее. То, как рейтинг считается сейчас (не результат выступления, который выглядит идеально, а именно кумулятивная по конкурсам штука), мне представляется просто ужасным. Недостатки я писал выше.

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

Ну вот. А все портянки выше - это крестовый поход на мельницы, мне почему-то представляется, что ты не имел дела с реальной реализацией рейтинга Эло, не очень представляешь, как он работает, и у тебя есть иллюзии или недопонимание. Вот против этого недопонимания я и взметнулся, потому что речь о чисто математических фактах.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
alan
29.12.2020, 12:08
Сообщение #10


zzz...
*****

Группа: Администраторы Braingames
Сообщений: 13 475
Регистрация: 23.2.2009
Из: Симферополь
Пользователь №: 13 114



QUOTE
То, как рейтинг считается сейчас, мне представляется просто ужасным.

С этим я согласился уже.

QUOTE
Если у тебя при рейтинге R0 есть N соперников с рейтингами R1..RN, ты набираешь против них k очков (0<= k <= N), то неважно, на ком конкретно ты какие очки набрал, конечный твой рейтинг будет зависеть только от R0, набора R1..RN и k, но не от частных результатов партий. Это математика.

1. Каким образом это работает, если против одного человека ты можешь набрать не только -1/0/1, но и, скажем, 2 очка?
2. У нас k произвольное, оно может быть и будет > N.
3. Так же ты тут забыл упомянуть, что сумма всех k по всем игрокам должна быть нулевая - опять же, у нас так не всегда будет. Хотя, возможно, это легко решается вычитанием среднего k - но не факт.

QUOTE
изобретать велосипед не нужно, все изобретено до нас, и Эло будет как минимум неплох. И, кстати, адаптировать Эло (Глико, WHR) под нетривиальные игры типа игры с королями и пешками вполне реально и не так уж сложно.

Если так - отлично. Адаптируй. Я ведь сказал, что просто не представляю как это сделать и что версия, которая в шахматах не подходит, так как учитывает лишь три варианта - проигрыш/победа/ничья.
Условия:
а) В каждом турнире/матче участвует произвольное число игроков.
б) Каждый из них может набрать произвольное целое число баллов. В известных теоретических пределах от Bmin до Bmax, однако Bmin и Bmax меняются каждый матч.
в) Нужно чтобы если игрокА каждый матч набирает больше баллов, чем игрокБ, то его рейтинг был гарантированно выше.
г) не хотелось бы, но при большом желании можно внести дополнительное ограничение общности, и сказать, что число баллов игрокаА за матч с N+1 игроками, равна сумме баллов за N подобных матчей в каждом из которых участвует только два человека: игрокА и его соперники по очереди.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Black
29.12.2020, 12:16
Сообщение #11


Администратор
****

Группа: Главные администраторы
Сообщений: 2 389
Регистрация: 24.11.2006
Из: Москва
Пользователь №: 1



Уважаемые админы wink.gif, давайте не будем ссориться.
1. Алан молодец, он по собственной инициативе в свое время, как он считает нужным сделал игру. И планирует сделать еще.

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

Возможго имеет сиысл сделать "рейтинговую" песочницу с пользовательскими настройками
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Owen
29.12.2020, 12:22
Сообщение #12


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



Давай есть слона по частям, сначала надо придумать рейтинг, который хотя бы с магараджами будет нормально работать. Тут п.1 неактуален, п.2 неактуален (всегда 0<= k <= N), сумма нулевая.

Эло обобщается без проблем и на матчевую игру. Так, если можно набрать от -5 до 5, то есть два пути, можно (из той же функции) вытаскивать вероятности для исходов, а можно давать пропорционально, при амплитуде 32 и равных рейтингах давать +16 за +5, +12.8 за +4, +3.2 за +1.

Вот асимметрия в исходах (неприводимость к нулевой сумме) может быть проблемой, я подумаю, как с этим бороться.

Вообще, если думать про рейтинги, то надо бы сделать следующее.
1. Выписать максимально формализованные требования к математике, каким требованиям должен удовлетворять рейтинг. Нужна ли нулевая сумма или растущий ОК? Как формализовать наше желание "подсаживать" игроков на игру? Как должен вести себя рейтинг пропустившего неделю? Ну и так далее.
2. Выписать грядущие игры, чтобы было понимание, с чем придется столкнуться.

Если придти к согласию по первому пункту, остальное - дело техники.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Owen
29.12.2020, 12:33
Сообщение #13


Kорифей
****

Группа: Администраторы Braingames
Сообщений: 2 817
Регистрация: 6.3.2013
Пользователь №: 43 989



Прикольно, я это писал, когда последними словами в теме были "но не факт".
А дальше в одном направлении думаем.

> б) Каждый из них может набрать произвольное целое число баллов. В известных теоретических пределах от Bmin до Bmax, однако Bmin и Bmax меняются каждый матч.

Вот тут есть некоторая сложность, лучше бы, наверное, знать, как для данной игры очки распределяются. И чтобы понимать про возможность нулевой суммы (и какие телодвижения надо предпринять), и вообще.

Есть одна штука, которая меня смущает.
Ты после магарадж запустишь какие-нибудь пешки с королями, коней, а то и вообще какую-нибудь числовую игру, скажем. И тут у меня два вопроса. Первый такой: а что, в магарадж будет уже не поиграть? Может, экстенсивно развивать направление, а не сменой жанра каждую неделю? И тебе это будет проще (если процесс полностью автоматизирован), и нам больше развлекухи.
Второй такой: корректно ли считать в один и тот же рейтинг много разных игр? Я не знаю, какие идеи роятся в тебе, текущие магараджи выглядят вполне однородно, но могут быть и игры на совсем другие навыки. И, возможно, лучше бы для них отдельный рейтинг (отдельные рейтинги), нет?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0 -

 



- Упрощённая версия Сейчас: 19.3.2024, 5:22
Яндекс.Метрика