Расчет рейтинга Эло для игрков Бакуган-Клуба

Методика вычисления рейтинга игроков Бакуган-Клуба

Игровой рейтинг - это условный численный показатель, отражающий силу игрока.

Силу игрока можно оценить только по результатам его игр с другими игроками, также имеющими некоторый рейтинг в данной рейтинговой системе. Рейтинги позволяют ранжировать игроков и с некоторой степенью достоверности предсказывать результаты игр между ними. Хотя, конечно же, результат отдельно взятой игры между двумя игроками зависит не только от их относительной силы, отражаемой их рейтингами, но и от множества других факторов, а именно: спортивной формы, мотивации, настроения, физического самочувствия и т.п.

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

В основе любой рейтинговой системы лежат некоторые характерные для данной системы предположения, допущения и соглашения. Среди наиболее известных систем игровых рейтингов является рейтинг Международной шахматной федерации (ФИДЕ, World Chess Federation, Federation Internationale des Echecs, FIDE).
По аналогичной ситеме считаются почти все рейтинговые соревнования, начиная от шахмат - "Рейтинг Эло", шашек, Подкидного дурака, Берсерк, и даже Heroes of MM, Warcraft и многие другие. Система расчета рейтингов достаточно универсальна, мы лишь адаптировали ее под наши условия проведения игровых встреч по настольной игре Бакуган..

Расчет рейтинга Эло для игрков Бакуган-Клуба.

Рассмотрим поединок между двумя игроками A и B, имеющими рейтинги RA и RB соответственно. Вероятность того, что победу одержит игрок A равна:

EA = 1 / (1 + 10(RB - RA) / 400)

а вероятность выигрыша игрока B

EB = 1 / (1 + 10(RA - RB) / 400)

Данные вероятности зависят только от разности рейтингов участников и несложно убедиться, что EA + EB = 1.

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

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

Обозначим через SA фактическое количество очков, которое по результатам рейтингового события наберет игрок A.

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

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

Расчет производится на основании сравнения фактического количества набранных очков с ожидаемым, то есть сравниваются величины Sa и Ea. Если количество завоеванных очков оказывается больше предсказанного значения, то рейтинг игрока увеличивается, если — меньше, то рейтинг игрока уменьшается.

Новое значение рейтинга R'A игрока A рассчитывается по формуле:

R'A = RA + К * (SA - EA )

где К — численный коэффициент, имеющий, как правило, несколько значений в рамках рейтинговой системы.
Кроме того, набор значений этого коэффициента может быть разным в различных системах рейтингов, например, в рейтингах FIDE, USCF, ICC и т.д. Для Бакуган-Клуба мы подобрали следующие значения коэффициента К:

K = G+2,40 – при результате игры со счетом 3:0
K = G+2,25 – при результате игры со счетом 3:1
K = G+2,00 – при результате игры со счетом 3:2

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

Точно так же новое значение рейтинга R'B игрока B рассчитывается по формуле:

R'B = RB + К * (SB - EB )

Соответственно Sa и Sb принимают значения 0 или 1 в зависимости от выигрыша или поражения в партии для каждого игрока.

Рассмотрим следующий пример:

Пусть игрок A в рамках игрового дня сыграл 2 игры с другими участниками: выиграл у B со счетом 3:1, но проиграл C со счетом 2:3.
Таким образом, коэффициент K для первой игры будет равен 5.25, а для второй игры 5.00.

Зная рейтинги всех игроков на начало дня, можно вычислить ожидаемое количество очков, которое должен был набрать игрок A по итогам этого дня.
Предположим, что вероятности победы игрока А в партиях с B и C равны соответственно 0.74 и 0.68.

Тогда получаем:

EA = 5.25*(1 - 0.74) + 5.00*(0 - 0.68) = 1.365 – 1,60 = - 0.235 очка.

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

Если игрок сыграл не все партии в течении игрового дня, то вводится поправочный коэффициент Ки на пропущенные игры, который рассчитывается по формуле:

Ки = 0.25 * (Общее кол-во игр – Количество сыгранных + 1)

В случае, если игрок сыграл все партии в течении игрового дня, данный коэффициент принимает значение Ки = 0,25.
Это значение прибавляется к суммарному рейтингу игрока за текущий игровой день.

Т.е. в нашем примере рейтинг игрока А будет составлять -0.235 + 0.25 = 0.015.

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