Перейти к содержанию
Друзья, важная новость! ×

Нужен програмер. Требования к проге инсайд.


do Kier

Рекомендуемые сообщения

  • Отец-основатель

1. Оплата. Договорная. Если вы беретесь - мы договоримся. Предложения кидать в ПМ или писать здесь, в теме.

2. ТЗ:

Итак, собственно, что мы имеем. Имеем мы замечательную идею Rjak`а об использовании рейтинга:

Дуэлистам со стажем и начинающим бретерам.

Приведу сводку, для тех кому лень читать целую страницу:

- выдержка из 3 сообщений Rjak`a -

N участников

первое место получает N-1 "побед" (он выиграл у остальных участников) и соответственно по стандартному алгоритму Эло рейтинга получает:

R=R+Ki*(1-Ei), где R - рейтинг, K - коэффициент, значение которого равно 10 для сильнейших игроков (рейтинг 2400 и выше), 15 — для игроков с рейтингом меньше чем 2400 и 25 — для новых игроков, E - вероятность победы над данным участником, Ei=1/(1+10^((Ri-R)/400)))

Второе место - N-2 победа и 1 проигрыш. Точно также, только в случае проигрыша формула R=R+Ki*(-Ei),



4 учаснега
Место Рейтинг
1 1600 1637,5 (+12,5 за каждого побеждённого)
2 1600 1612,5 (+12,5х2 за двоих побеждённых -12,5 за проигрыш первому месту)
3 1600 1587,5 (+12,5 за одного побежденного -12,5х2 за два проигрыша)
4 1600 1562,5 (-12,5х3)

3 учаснега

Место Рейтинг
1 1600 1625
2 1600 1600
3 1600 1575

Все аналагично

И 2 участника

Место Рейтинг
1 1600 1612,5
2 1600 1587,5


[/code]

Это стандартный ЭЛО. Ну, в первоначальной формуле надо еще ничью предусмотреть. там тогда не 1-Е, а 0,5-Е

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

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

А мастер проиграв новичку - потеряет очень много. Как результат мастера буду "побаиватся" соревноватся с незнакомыми художнеками :)

В шахматах такая штука используется.

- конец цитаты-

Собственно, ТЗ: [b]разработать простенькую прогу, которая бы сама считала изменения рейтинга по формуле. И могла бы добавлять новых участников.[/b]

Изменено пользователем do Kier
Ссылка на комментарий
Поделиться на другие сайты

Я делаю.

Простое окно с таблицей и кнопкой-двумя, хранение информации в текстовичке - этого хватит?

Только я в формуле не совсем разобрался. Если что - спрошу.

Изменено пользователем Jack the great mage
Ссылка на комментарий
Поделиться на другие сайты

Я делаю.

Простое окно с таблицей и кнопкой-двумя, хранение информации в текстовичке - этого хватит?

Только я в формуле не совсем разобрался. Если что - спрошу.

дэлфи?)

Ссылка на комментарий
Поделиться на другие сайты

  • Отец-основатель

Я делаю.

Простое окно с таблицей и кнопкой-двумя, хранение информации в текстовичке - этого хватит?

Только я в формуле не совсем разобрался. Если что - спрошу.

Спасибо.

Да, именно то, что надо.

Формулы сейчас сегодня чуть более детально распишу.

Ссылка на комментарий
Поделиться на другие сайты

  • Отец-основатель

R1new = R1old + K * (X1 - E)

E = 1/(1+10^((R2old - R1old)/400)))

R1new - новый рейтинг 1 участника

R1old - рейтинг 1 участника на момент начала дуэли

R2new - новый рейтинг 2 участника

R2old - рейтинг 2 участника на момент начала дуэли

K - коэффициент, отражающий силу оппонента

К = 10 если рейтинг оппонента 2400+

К = 15 если рейтинг оппонента менее 2400

К = 25 если это первая дуэль оппонента /вбивается вручную/

X1 - результат дуэли для 1 участника

победа Х = 1, ничья X = 0.5, поражение X = 0

Каждый новый участник имеет рейтинг 1600.

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
×
×
  • Создать...