Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

4    1    #1
04.02.2019 15:07

qwerty
Участник (+244, -117)
Зарегистрирован: 21.12.2005
Сообщений: 206
Вебсайт

Новые методы голосования на КРИЛ

Надеюсь, в будущих КРИЛах применяться будет метод Шульце, то есть, голосующие будут присылать список игр от наиболее понравившейся к наименее понравившейся. Сейчас, если игрок ставит одной игре 10, а четырём другим 1, то он поднимает одну игру над всеми играми вообще и опускает 4 другие ниже всех игр вообще. Если же игрок оценит 5 игр согласно методу Шульце, то он просто даст знать, какую из оцененных игр он ценит выше других оцененных им игр. И это уравнивает голоса игроков с разной шкалой: допустим, один оценил игры КРИЛа в диапазоне 1..6, другой - в 3...8, третий - в 5..10. Выяснять "абсолютную оценку" в такой ситуации бессмысленно- разные люди ставят X баллов за совершенно разное. Но метод Шульце выявляет главное: какая игра оказалась предпочтительнее других.

Неактивен

2    0    #2
04.02.2019 20:12

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: Новые методы голосования на КРИЛ

qwerty написал:

Надеюсь, в будущих КРИЛах применяться будет метод Шульце, то есть, голосующие будут присылать список игр от наиболее понравившейся к наименее понравившейся. Сейчас, если игрок ставит одной игре 10, а четырём другим 1, то он поднимает одну игру над всеми играми вообще и опускает 4 другие ниже всех игр вообще. Если же игрок оценит 5 игр согласно методу Шульце, то он просто даст знать, какую из оцененных игр он ценит выше других оцененных им игр. И это уравнивает голоса игроков с разной шкалой: допустим, один оценил игры КРИЛа в диапазоне 1..6, другой - в 3...8, третий - в 5..10. Выяснять "абсолютную оценку" в такой ситуации бессмысленно- разные люди ставят X баллов за совершенно разное. Но метод Шульце выявляет главное: какая игра оказалась предпочтительнее других.

Боюсь, не сработает. Очень трудоемко для среднего игрока, особенно при большом количестве игр.

Неактивен

1    1    #3
04.02.2019 21:21

qwerty
Участник (+244, -117)
Зарегистрирован: 21.12.2005
Сообщений: 206
Вебсайт

Re: Новые методы голосования на КРИЛ

uux написал:

Боюсь, не сработает. Очень трудоемко для среднего игрока, особенно при большом количестве игр.

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

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

 спойлер…

Неактивен

0    1    #4
05.02.2019 14:17

JackCL
Участник (+55, -24)
Зарегистрирован: 03.03.2001
Сообщений: 416

Re: Новые методы голосования на КРИЛ

uux написал:

Боюсь, не сработает. Очень трудоемко для среднего игрока, особенно при большом количестве игр.

Не в обиду будет замечено, но голосующих на КРИЛах не очень-то много и в основном это старожилы ифни, люди с интеллектом, которые, лично мне кажется, как-то справятся с тем чтобы расставить десяток игр по местам.

Если при этом произойдет отсев случайно забежавших накрутчиков то это к лучшему.

Неактивен

2    0    #5
05.02.2019 16:03

Ajenta
Модератор (+1279, -325)
Зарегистрирован: 03.05.2009
Сообщений: 993
Вебсайт

Re: Новые методы голосования на КРИЛ

qwerty написал:

Надеюсь, в будущих КРИЛах применяться будет метод Шульце, то есть, голосующие будут присылать список игр от наиболее понравившейся к наименее понравившейся. Сейчас, если игрок ставит одной игре 10, а четырём другим 1, то он поднимает одну игру над всеми играми вообще и опускает 4 другие ниже всех игр вообще. Если же игрок оценит 5 игр согласно методу Шульце, то он просто даст знать, какую из оцененных игр он ценит выше других оцененных им игр. И это уравнивает голоса игроков с разной шкалой: допустим, один оценил игры КРИЛа в диапазоне 1..6, другой - в 3...8, третий - в 5..10. Выяснять "абсолютную оценку" в такой ситуации бессмысленно- разные люди ставят X баллов за совершенно разное. Но метод Шульце выявляет главное: какая игра оказалась предпочтительнее других.

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

Неактивен

2    3    #6
05.02.2019 17:28

Oreolek
Модератор (+451, -169)
Откуда: Кемерово
Зарегистрирован: 02.11.2009
Сообщений: 673
Вебсайт

Re: Новые методы голосования на КРИЛ

Не в обиду будет замечено, но голосующих на КРИЛах не очень-то много и в основном это старожилы ифни, люди с интеллектом, которые, лично мне кажется, как-то справятся с тем чтобы расставить десяток игр по местам.

Популярное заблуждение, которое нужно подкреплять исследованиями.

По статистике, среди всех голосов (включая забаненные):

Год - Количество судей - Количество игр с оценками - Среднее количество оценённых игр - Медиана количества оценённых игр
2017 - 43 - 26 - 14.7 - 13
2018 - 69 - 26 - 12.0 - 10

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

Насколько я знаю, предлагаемый метод ещё не применялся ни в одном из конкурсов ифни; угадайка "выше или ниже" была не при Волке, а при Евге, и это было не конкурсное голосование, а только открытие результатов. Был ещё недавний концепт от Madzi со сравнением пар, где предлагалось для сравнения 7 элементов ответить на 21 вопрос (комбинаторика бессердечна). Хотелось бы посмотреть на это в реальности.

Отредактировано Oreolek (05.02.2019 17:35)

Неактивен

2    2    #7
06.02.2019 00:02

JackCL
Участник (+55, -24)
Зарегистрирован: 03.03.2001
Сообщений: 416

Re: Новые методы голосования на КРИЛ

Oreolek написал:

Не в обиду будет замечено, но голосующих на КРИЛах не очень-то много и в основном это старожилы ифни, люди с интеллектом, которые, лично мне кажется, как-то справятся с тем чтобы расставить десяток игр по местам.

Популярное заблуждение, которое нужно подкреплять исследованиями.

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

Неактивен

2    0    #8
08.02.2019 08:09

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: Новые методы голосования на КРИЛ

JackCL написал:

uux написал:

Боюсь, не сработает. Очень трудоемко для среднего игрока, особенно при большом количестве игр.

Не в обиду будет замечено, но голосующих на КРИЛах не очень-то много и в основном это старожилы ифни, люди с интеллектом, которые, лично мне кажется, как-то справятся с тем чтобы расставить десяток игр по местам.

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

Неактивен

0    0    #9
08.02.2019 10:23

Enola
Участник (+465, -141)
Зарегистрирован: 20.11.2015
Сообщений: 325

Re: Новые методы голосования на КРИЛ

uux написал:

JackCL написал:

uux написал:

Боюсь, не сработает. Очень трудоемко для среднего игрока, особенно при большом количестве игр.

Не в обиду будет замечено, но голосующих на КРИЛах не очень-то много и в основном это старожилы ифни, люди с интеллектом, которые, лично мне кажется, как-то справятся с тем чтобы расставить десяток игр по местам.

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

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


Для метода Шульце необязательно сравнивать все игры между собой.

Неактивен

4    1    #10
08.02.2019 10:34

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

qwerty написал:

Надеюсь, в будущих КРИЛах применяться будет метод Шульце, то есть, голосующие будут присылать список игр от наиболее понравившейся к наименее понравившейся. Сейчас, если игрок ставит одной игре 10, а четырём другим 1, то он поднимает одну игру над всеми играми вообще и опускает 4 другие ниже всех игр вообще. Если же игрок оценит 5 игр согласно методу Шульце, то он просто даст знать, какую из оцененных игр он ценит выше других оцененных им игр. И это уравнивает голоса игроков с разной шкалой: допустим, один оценил игры КРИЛа в диапазоне 1..6, другой - в 3...8, третий - в 5..10. Выяснять "абсолютную оценку" в такой ситуации бессмысленно- разные люди ставят X баллов за совершенно разное. Но метод Шульце выявляет главное: какая игра оказалась предпочтительнее других.

В общем, я немного заморочился и подключил метод Шульце к текущим оценкам, чтобы перед началом нового КРИЛ мы смогли проанализировать его применимость к нашему конкурсу и претендентам. Посмотреть можно тут: https://forum.ifiction.ru/kril2018schulze.php

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

Обратите внимание на выдержку из статьи из Википедии о методе Шульце:

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

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

Неактивен

0    3    #11
08.02.2019 10:36

Enola
Участник (+465, -141)
Зарегистрирован: 20.11.2015
Сообщений: 325

Re: Новые методы голосования на КРИЛ

Oreolek написал:

Не в обиду будет замечено, но голосующих на КРИЛах не очень-то много и в основном это старожилы ифни, люди с интеллектом, которые, лично мне кажется, как-то справятся с тем чтобы расставить десяток игр по местам.

Популярное заблуждение, которое нужно подкреплять исследованиями.

По статистике, среди всех голосов (включая забаненные):

Год - Количество судей - Количество игр с оценками - Среднее количество оценённых игр - Медиана количества оценённых игр
2017 - 43 - 26 - 14.7 - 13
2018 - 69 - 26 - 12.0 - 10

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

Сколько в этой статистике старожилов ифни? Думаю, что больше половины от общего количества судей.

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

Неактивен

1    0    #12
08.02.2019 12:06

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

qwerty написал:

Надеюсь, в будущих КРИЛах применяться будет метод Шульце, то есть, голосующие будут присылать список игр от наиболее понравившейся к наименее понравившейся. Сейчас, если игрок ставит одной игре 10, а четырём другим 1, то он поднимает одну игру над всеми играми вообще и опускает 4 другие ниже всех игр вообще. Если же игрок оценит 5 игр согласно методу Шульце, то он просто даст знать, какую из оцененных игр он ценит выше других оцененных им игр. И это уравнивает голоса игроков с разной шкалой: допустим, один оценил игры КРИЛа в диапазоне 1..6, другой - в 3...8, третий - в 5..10. Выяснять "абсолютную оценку" в такой ситуации бессмысленно- разные люди ставят X баллов за совершенно разное. Но метод Шульце выявляет главное: какая игра оказалась предпочтительнее других.

В общем, я немного заморочился и подключил метод Шульце к текущим оценкам, чтобы перед началом нового КРИЛ мы смогли проанализировать его применимость к нашему конкурсу и претендентам. Посмотреть можно тут: https://forum.ifiction.ru/kril2018schulze.php

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

Обратите внимание на выдержку из статьи из Википедии о методе Шульце:

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

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

А как ты ничьи разрешаешь, можешь показать исходник?

У меня всё то же самое (вроде бы), но когда ничьи, то от твоего порядок отличается:
https://docs.google.com/spreadsheets/d/ … 1184762425
(табы "остальные хуже" и "остальные не знаю")

Мой исходник можно открыть в меню Tools -> Script Editor.

Неактивен

1    1    #13
08.02.2019 12:22

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

crem написал:

У меня всё то же самое (вроде бы), но когда ничьи, то от твоего порядок отличается:

Нет не всё то же самое. Например, у меня фуга выше чашки супа, а у тебя нет (если "остальные хуже").
Короче, давай исходник.

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

Неактивен

1    1    #14
08.02.2019 14:51

Cheshire
Участник (+141, -23)
Зарегистрирован: 01.07.2009
Сообщений: 340
Вебсайт

Утлый парсер ©

Re: Новые методы голосования на КРИЛ

Одна ремарка: может, не тестировать систему на последнем КРИЛе, а выбрать что-то более раннее, чтобы не возбуждать лишних кривотолков?

Неактивен

0    0    #15
08.02.2019 15:02

Ajenta
Модератор (+1279, -325)
Зарегистрирован: 03.05.2009
Сообщений: 993
Вебсайт

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

В общем, я немного заморочился и подключил метод Шульце к текущим оценкам, чтобы перед началом нового КРИЛ мы смогли проанализировать его применимость к нашему конкурсу и претендентам. Посмотреть можно тут: https://forum.ifiction.ru/kril2018schulze.php

Надо как крем делал, сделать таблицу и результаты только принятых голосов и таблицу и результаты всех поступивших. Вот тогда мы увидим, нивелирует метод накрутки или нет.

Неактивен

2    1    #16
08.02.2019 16:02

Oreolek
Модератор (+451, -169)
Откуда: Кемерово
Зарегистрирован: 02.11.2009
Сообщений: 673
Вебсайт

Re: Новые методы голосования на КРИЛ

Вот тогда мы увидим, нивелирует метод накрутки или нет.

Нет, не увидим. Будет ещё больше информации, которую надо будет анализировать, кто-нибудь вместо этого опять сделает скоропалительный вывод и вопрос не сдвинется.

Мы всё ещё спорим на тему алгоритма и его параметров: какой вес нужно назначать неоценённым играм, какой из вариантов метода Шульце использовать. Это требует анализа. Как минимум нужно вручную последовательно проверить промежуточные шаги у crem и Olegus t.Gl., если исходные данные у обоих совпадают. Я тоже набросал скрипт по готовой библиотеке, он выдал третий результат. Надо отлаживать и доказывать, что багов нет.

А вот когда проверим расчёты и их можно будет легко подтвердить, то сможем посмотреть, нужно ли вручную отсматривать голоса или можно считать всё без разбора. Вот здесь и пригодятся голосования прошлых лет. И даже тогда будет 10-20 табличек и несколько вариантов их интерпретации, потому что встанет вопрос "где лучше?", который опять же решается предпочтением.

Отредактировано Oreolek (08.02.2019 16:16)

Неактивен

1    2    #17
08.02.2019 17:47

Ajenta
Модератор (+1279, -325)
Зарегистрирован: 03.05.2009
Сообщений: 993
Вебсайт

Re: Новые методы голосования на КРИЛ

Oreolek написал:

И даже тогда будет 10-20 табличек и несколько вариантов их интерпретации, потому что встанет вопрос "где лучше?", который опять же решается предпочтением.

Ну, предпочтение у нас одно - чтобы с накрутками и без, получался сходный вариант же, нет?

Неактивен

2    3    #18
08.02.2019 19:52

blinovvi
Участник (+675, -117)
Зарегистрирован: 16.11.2014
Сообщений: 278
Вебсайт

blinovvi.blogspot.com

Re: Новые методы голосования на КРИЛ

Ну, раз уж пошла такая движуха, мне тоже стало интересно написать тест, только вот я уже посмотрел на таблички... я делал самым лобовым способом, поэтому ошибки там найти проще всего. И я пока не нашёл -- буду благодарен, если кто-то обнаружит.
https://blinovvi.blogspot.com/2019/02/blog-post.html

Неактивен

3    4    #19
08.02.2019 20:02

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Ajenta написал:

Ну, предпочтение у нас одно - чтобы с накрутками и без, получался сходный вариант же, нет?

Предпочтение у нас в том, чтобы в момент голосования игроки знали, что их голос учтётся (кроме случаев, когда они в момент голосования знают, что они накрутчики и нарушители. В этом случае надо, чтобы они заранее знали, что их голос не учтётся).

Короче, надо чтобы было доверие к голосованию, как с точки зрения процедуры, так и с точки зрения результата.

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

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

Игроки тоже хотят понимать, что происходит, а ещё лучше -- принимать участие в обсуждении, что с этим делать, и видеть конкретные данные. Иначе доверия нет, пусть даже на самом деле оно там внутри супермегасправедливое.


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


По такому принципу работают многие проекты, и очень успешно.
Например, на шахматном сайте lichess желающих почитерить очень много. Это даже целый бизнес, продаются специальные программы чтобы читерить на lichess!
И тем не менее, весь код по выявлению читеров открыт на github'е, и все могут посмотреть как это делается и придумать контрмеру. И пытаются! Но сообщество придумывает контр-контрмеру.
И это всё очень хорошо работает, читеров на lichess на порядки меньше, чем на каком-нибудь chess.com с их секретным методом.

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



И ещё (непопулярное мнение!):
НЕ важно, попадут ли в общий пул голосов или нет игроки, являющиеся накрутчиками ОБЪЕКТИВНО (например, с точки зрения очень объективного организатора).
Важнее, попадут ли в общий пул голосов или нет игроки, являющиеся накрутчиками С ТОЧКИ ЗРЕНИЯ ДРУГИХ ИГРОКОВ.
Тогда будет доверие к конкурсу, тогда люди будут приходить и участвовать.
Так что может организатор и знает лучше, кто накрутчик, но это не важно. Важно, чтобы остальные были согласны.

Если из-за накрутчиков вдруг выиграла КРИЛ какая-то игра, которая не выиграла бы без накруток, но при этом они так замаскировали свои накрутки, что ни игроки, ни авторы игр не смогли этого заметить, то это хорошо! Все довольны, все считают конкурс справедливым, все считают свой голос значимым, и все придут в следующий раз.

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

Отредактировано crem (08.02.2019 20:44)

Неактивен

4    0    #20
09.02.2019 01:30

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

crem написал:

У меня всё то же самое (вроде бы), но когда ничьи, то от твоего порядок отличается:

Нет не всё то же самое. Например, у меня фуга выше чашки супа, а у тебя нет (если "остальные хуже").
Короче, давай исходник.

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

Нет, я не считал по общей куче. Я считал всё по каждой номинации отдельно.
Нет, я пользовался именно что официальными оценками игр. Ореолек брал эти оценки из того же источника, откуда я беру для расчёта как по методу Шульце, так и по средней для результата КРИЛа.

Для пущей прозрачности и наглядности, я добавил таблицу с оценками участников (без имён), а также инструмент выделения интересующих пар для проверки корректности расчёта. Например, по "Фуге" и "Чашке супа" это выглядит так: https://forum.ifiction.ru/kril2018schul … mp;g=36:41

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

1. Если включена опция "Без оценок считать ниже всех", то дополняю таблицу оценок нулями.
2. По таблице оценок я заполняю таблицу, сколько голосующих той или иной игре отдали предпочтение. Тут всё просто: беру оценки участника, сравниваю игры попарно и добавляю +1 игре, у которой оценка выше.
Пример:
База для расчёта: https://forum.ifiction.ru/kril2018schul … 1#a_scores
Результат: https://forum.ifiction.ru/kril2018schul … 41#a_votes

3. Расчитываю силу путей. Перебираю все пути по возможным переходам по направленному графу (возможные переходы по каждой игре выделены жёлтым в таблице: "Число голосующих, предпочитающих одну игру другой"). Внизу можно посмотреть, какие пути были найдены, и почему был выбран определённый путь (максимальная слабая точка).

4. Для построения финального рейтинга я сравниваю силу пути игр попарно и записываю +1 в победы той, у кого сила больше. По количеству побед и сортирую.

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

Если найдёте ошибки в результатах — сообщайте, обсудим, доработаем. Если есть предложения по алгоритму — излагайте.

Неактивен

0    0    #21
09.02.2019 01:58

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

4. Для построения финального рейтинга я сравниваю силу пути игр попарно и записываю +1 в победы той, у кого сила больше. По количеству побед и сортирую.

А что если в обе стороны равный вес дуг? Я в этом случае записываю +0.5.
(точнее, я записываю 1 если больше, -1 если меньше, и 0 если равное значение, но это то же самое что если записывать 1 если больше, и 0.5 если ничья).

Неактивен

3    0    #22
09.02.2019 11:59

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

Olegus t.Gl. написал:

4. Для построения финального рейтинга я сравниваю силу пути игр попарно и записываю +1 в победы той, у кого сила больше. По количеству побед и сортирую.

А что если в обе стороны равный вес дуг? Я в этом случае записываю +0.5.
(точнее, я записываю 1 если больше, -1 если меньше, и 0 если равное значение, но это то же самое что если записывать 1 если больше, и 0.5 если ничья).

Для построения финального рейтинга обрабатывается таблица сил сильнейших путей. Там нет значений дуг, там значения сил сильнейших путей.
Веса дуг используются на предыдущем шаге, хранятся в таблице "Число голосующих, предпочитающих одну игру другой" и означают, соответственно, "количество голосующих, отдавших предпочтение той или иной игре".
Так вот, если значения сил путей двух игр равны, то это ничья. "Ничья — результат в матче или партии, при котором победитель игры или состязания не выявлен", поэтому записывать обеим играм победы в данном случае сложно для восприятия со стороны и объяснения. Это вмешательство в логику метода, а это на данном этапе неправильно (так мы к единым результатам не придём никогда).

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

Например, сейчас в рейтинге по методу Шульце у игр "Паладин" и "Star Wars: Турнир Юнлингов" ничья.

1. Сравниваем их друг с другом. Тут всё, в принципе, просто: "П" оценили выше "SW" 16 против 15. В этой ситуации данных достаточно, чтобы построить локальный рейтинг внутри этой группы ничьих.

Смотрим вторую группу: "Золотарский хомяк" и "КрШа: Новая история со старыми персонажами".

1. Вариант сравнения друг с другом не годится — у них равное число голосующих, 11.

2. Смотрим на игру "Павший во мраке - Иные", стоящую выше по рейтингу. Сравним, "Х" и "К" с "Павшим".

"К" проигрывает "Павшему" 6 против 17 голосующих, а "Х" проигрывает "Павшему" — 7 против 22.

И вот тут вступаем в область "высшей математики". Что лучше +6/-17 или +7/-22? От этого зависит, как строить рейтинг в этой группе ничьих. И вот тут уже можно рассмотреть вариант, с исключением нулевых оценок, чтобы оценивать по реальным голосам и смотреть уже на эти результаты.

Как-то так.

P.S. Кстати, у "SW" и "Супа" ещё и ничья по голосам, то есть как раз по весам дуг, а это влияет на переходы. Но это отдельная тема.

Неактивен

0    0    #23
09.02.2019 13:31

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

crem написал:

Olegus t.Gl. написал:

4. Для построения финального рейтинга я сравниваю силу пути игр попарно и записываю +1 в победы той, у кого сила больше. По количеству побед и сортирую.

А что если в обе стороны равный вес дуг? Я в этом случае записываю +0.5.
(точнее, я записываю 1 если больше, -1 если меньше, и 0 если равное значение, но это то же самое что если записывать 1 если больше, и 0.5 если ничья).

Для построения финального рейтинга обрабатывается таблица сил сильнейших путей. Там нет значений дуг, там значения сил сильнейших путей.
Веса дуг используются на предыдущем шаге, хранятся в таблице "Число голосующих, предпочитающих одну игру другой" и означают, соответственно, "количество голосующих, отдавших предпочтение той или иной игре".
Так вот, если значения сил путей двух игр равны, то это ничья. "Ничья — результат в матче или партии, при котором победитель игры или состязания не выявлен", поэтому записывать обеим играм победы в данном случае сложно для восприятия со стороны и объяснения. Это вмешательство в логику метода, а это на данном этапе неправильно (так мы к единым результатам не придём никогда).

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

Например, сейчас в рейтинге по методу Шульце у игр "Паладин" и "Star Wars: Турнир Юнлингов" ничья.

1. Сравниваем их друг с другом. Тут всё, в принципе, просто: "П" оценили выше "SW" 16 против 15. В этой ситуации данных достаточно, чтобы построить локальный рейтинг внутри этой группы ничьих.

Смотрим вторую группу: "Золотарский хомяк" и "КрШа: Новая история со старыми персонажами".

1. Вариант сравнения друг с другом не годится — у них равное число голосующих, 11.

2. Смотрим на игру "Павший во мраке - Иные", стоящую выше по рейтингу. Сравним, "Х" и "К" с "Павшим".

"К" проигрывает "Павшему" 6 против 17 голосующих, а "Х" проигрывает "Павшему" — 7 против 22.

И вот тут вступаем в область "высшей математики". Что лучше +6/-17 или +7/-22? От этого зависит, как строить рейтинг в этой группе ничьих. И вот тут уже можно рассмотреть вариант, с исключением нулевых оценок, чтобы оценивать по реальным голосам и смотреть уже на эти результаты.

Как-то так.

P.S. Кстати, у "SW" и "Супа" ещё и ничья по голосам, то есть как раз по весам дуг, а это влияет на переходы. Но это отдельная тема.

Не понимаю, объясни например почему у тебя сильнейший путь из Фуги в Чашку супа 14?
У меня 17:
Фуга. Чёрный странник. -> (20) -> Ты всё равно победишь! -> (17) -> Star Wars: Турнир Юнлингов -> (18) -> Ради чашки супа

(по поводу ничьих в пол-очка это у меня воспоминания из предыдущего метода, сейчас действительно никакой ничьи в пол-очка нету)

Отредактировано crem (09.02.2019 13:33)

Неактивен

2    3    #24
09.02.2019 13:45

blinovvi
Участник (+675, -117)
Зарегистрирован: 16.11.2014
Сообщений: 278
Вебсайт

blinovvi.blogspot.com

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

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

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

Отредактировано blinovvi (09.02.2019 13:52)

Неактивен

1    1    #25
09.02.2019 13:53

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

Не понимаю, объясни например почему у тебя сильнейший путь из Фуги в Чашку супа 14?
У меня 17:
Фуга. Чёрный странник. -> (20) -> Ты всё равно победишь! -> (17) -> Star Wars: Турнир Юнлингов -> (18) -> Ради чашки супа

(по поводу ничьих в пол-очка это у меня воспоминания из предыдущего метода, сейчас действительно никакой ничьи в пол-очка нету)

Я завтра отвечу, сейчас очень занят. Сделаю, чтобы можно было посмотреть ещё и пути, ведущие в тупик или в цикл, чтобы можно было разбирать все варианты.

Неактивен

0    3    #26
09.02.2019 13:55

blinovvi
Участник (+675, -117)
Зарегистрирован: 16.11.2014
Сообщений: 278
Вебсайт

blinovvi.blogspot.com

Re: Новые методы голосования на КРИЛ

Кстати, насколько я понимаю, в оригинальном методе Шульце в предельных случаях тоже появляются несвязные графы. Так чио даже в этом смысле правило "не голосовал=не знаю" никаких новых потенциальных проблем не создаёт.

Неактивен

2    0    #27
09.02.2019 14:37

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

Я завтра отвечу, сейчас очень занят. Сделаю, чтобы можно было посмотреть ещё и пути, ведущие в тупик или в цикл, чтобы можно было разбирать все варианты.

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

Но как определять, какое из звеньев сильнее, методом Шульце не задано, заданы только алгебраические свойства этого сравнения.
4 примера метода сравнения перечилены на стр. 12 этой статьи Шульце от 15 декабря 2018:
https://arxiv.org/pdf/1804.02973.pdf

Методы такие:
1. По разнице прямых и обратных голосов.
2. По отношению прямых и обратных голосов.
3. По превосходству выигрыша:
Если A>B и C>D, то AB сравнивается с CD по весу выигрывающей дуги.
Если A>B и C<D (и наоборот), то значения дуг не смотрятся, выигрывающая дуга сильнее.
Если A<B и C<D, то сравниваются значения выигрывающих (обратных) дуг.
4. По превосходству проигрыша.
То же самое, но сравниваются значения проигрывающих дуг.

В статье написано, что метод 1 самый понятный, и большинство примеров показано именно на этот метод (хотя есть примеры на все методы).

С первого взгляда метод, описанный в википедии, и который вроде бы ты реализовал, -- это очень хорошее приближение метода 3 из списка:
Если веса дуг (a; b) и a > b, то о значении обратной дуги b почти всегда можно забыть, но не всегда.
Когда надо не забывать:
Когда сравниваем (a;b) и (c;d), a>b, c>d и a=c, тогда сравниваются b и d.
Дуга (a; b) где a==b -- это лучше чем (c;d) где c<d, но хуже чем c>d, независимо от значений c и d (но вроде бы тут не всё так просто)..


У меня не так, я просто сравниваю значения прямых дуг (не важно, выигранные они или проигранные).
У меня получается, что (10;18) (10 за, 18 против) сильнее чем (9; 3) (9 за, 3 против).
Да, у меня неправильно. Перепишу метод с 4 предложенными способами оценок из статьи.


Возвращаясь к списку методов, мне кажется, что первые два -- самые логичные.
В методе 3 получается что 100 голосов за то что А лучше Б и 99 против -- это то же самое что 100 за и 0 против.
Что лучше, метод 1 или 2 -- это вопрос.
В первом 100 за, 90 против -- это лучше, чем 20 за, 15 против,
а во втором -- наоборот.

Тут анализ отличий метода 1 и метода 3: https://rangevoting.org/WinningVotes.html

Отредактировано crem (09.02.2019 16:17)

Неактивен

2    0    #28
09.02.2019 15:11

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

В процессе поиска сильнейшего пути надо найти самое слабое звено.

Уточню, чтобы не было недопонимания этого пункта. Нужно найти не самое слабое звено всех возможных путей, а самое слабое звено у сильнейшего пути. И поскольку сила пути определяется его слабейшим звеном, то из всех возможных путей нужно выбрать тот, у кого слабейшее звено БОЛЬШЕ, чем у остальных.

Неактивен

0    0    #29
09.02.2019 15:55

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

crem написал:

В процессе поиска сильнейшего пути надо найти самое слабое звено.

Уточню, чтобы не было недопонимания этого пункта. Нужно найти не самое слабое звено всех возможных путей, а самое слабое звено у сильнейшего пути. И поскольку сила пути определяется его слабейшим звеном, то из всех возможных путей нужно выбрать тот, у кого слабейшее звено БОЛЬШЕ, чем у остальных.

А можно поинтересоваться, для кого это уточнение? smile
Если это объяснение метода для остальных посетителей форума, ок.
Но мне просто оно прозвучало так, будто бы оно мне и Блинову. Но по-моему должно быть очевидно, что если мы уже написали свои реализации алгоритма, то основы нам понятны.

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


Другое дело, что для оценки превосходства звена иногда можно на самом деле хранить одно число. В примерах это делается так:
Пример 1. Хранить разность (в противоположном направлении будет противоположное число)
Пример 2. Хранить отношение (в противоположном направлении будет обратное число).
Пример 3. Хранить только дугу с бОльшей силой. (то, что ты сейчас делаешь)
  Значение обратной дуги нужно только для разрешения ситуаций когда прямая==обратной или прямая одного звена равно прямой другого звена, а их надо сравнить.
  Обычно этот случай можно проигнорировать, так как если голосов гораздо больше, чем кандидатов, то такие ситуации маловероятны.
  Но в нашем примере такое проходит на каждом шагу!

Неактивен

0    0    #30
09.02.2019 16:03

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Раз уж мы заговорили о широком спектре голосований методом Шульце, добавлю ещё несколько переменных.

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

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

Неактивен

3    0    #31
09.02.2019 16:05

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

А можно поинтересоваться, для кого это уточнение? smile
Если это объяснение метода для остальных посетителей форума, ок.
Но мне просто оно прозвучало так, будто бы оно мне и Блинову. Но по-моему должно быть очевидно, что если мы уже написали свои реализации алгоритма, то основы нам понятны.

Поскольку у нас у всех разные результаты, то кто-то что-то не так понял в основах. И я вполне допускаю, что все, кто у себя реализует это метод, могут сомневаться в моих результатах и алгоритмах. Поэтому я озвучиваю, как я воспринимаю (и соответственно как у меня реализованы) те или важные пункты. Просто, чтобы отбросить их из разбора, почему у нас всё разное. Никакого менторства.

Неактивен

1    0    #32
09.02.2019 16:11

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

Раз уж мы заговорили о широком спектре голосований методом Шульце, добавлю ещё несколько переменных.

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

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

Погоди, метод Шульце рассматривает не баллы, а места. Поэтому "остальные хуже" — это как раз нулевые баллы, чтобы гарантировано не смешивать их с теми, кому проставили 1 балл. В зачёт же идут не разницы между баллами, а больше они или меньше друг-друга. Наличие нуля в оценках указывает алгоритму, что эту пару можно сравнить. Если нуль отсутствует, то сравнивать тут нечего, тут нельзя определить кому отдать голос и всё такое.

Неактивен

1    0    #33
09.02.2019 16:40

crem
Участник (+231, -82)
Зарегистрирован: 22.08.2016
Сообщений: 90

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

Погоди, метод Шульце рассматривает не баллы, а места. Поэтому "остальные хуже" — это как раз нулевые баллы, чтобы гарантировано не смешивать их с теми, кому проставили 1 балл. В зачёт же идут не разницы между баллами, а больше они или меньше друг-друга. Наличие нуля в оценках указывает алгоритму, что эту пару можно сравнить. Если нуль отсутствует, то сравнивать тут нечего, тут нельзя определить кому отдать голос и всё такое.

Я имею в виду, что можно сделать так, чтоб можно было сказать не только "все игры, которые я оценил, лучше тех, которые нет", но и "вот эта игра настолько ужасна, что она даже хуже тех, которые я не видел".
Метод Шульце рассматривает взаимное отношение игр, но из-за того, что в прошедших КРИЛах мы ставили баллы (которые мы потом преобразовываем в список отношений хуже/лучше), так проще объяснять.

Не то что бы мне очень нравится это предложение ("остальным -- как будто 2.5"), но вот, что я имел в виду:
- Игроки ставят оценки от 1 до 10
- Мы преобразовываем оценки в отношения "лучше/хуже", как мы сейчас делаем упражняясь на КРИЛ-2018
- Игры, оцененные оценками 3, 4, 5,..., 9, 10  лучше неоцененных.
- Игры, оцененные оценками 1 и 2 хуже неоцененных.


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

Тогда вопрос "остальные хуже" или "остальные не знаю" вообще стоять не будет. Голосовать обязательно, это "как остальные хуже", но по желанию игрока может быть и "остальные нормально".

Неактивен

0    0    #34
09.02.2019 16:48

Oreolek
Модератор (+451, -169)
Откуда: Кемерово
Зарегистрирован: 02.11.2009
Сообщений: 673
Вебсайт

Re: Новые методы голосования на КРИЛ

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

Неактивен

3    0    #35
10.02.2019 14:01

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Новые методы голосования на КРИЛ

Olegus t.Gl. написал:

Я завтра отвечу, сейчас очень занят. Сделаю, чтобы можно было посмотреть ещё и пути, ведущие в тупик или в цикл, чтобы можно было разбирать все варианты.

Обновил модуль. Можно выбирать методику расчёта показателя сравнения (crem, по твоему перечню это 1, 2 и, наверное, 3), а также смотреть все пути, включая тупики и циклы (для сверки расчётов).

Вот: https://forum.ifiction.ru/kril2018schul … =1&c=2

Чтобы посмотреть пути теперь обязательно нужно выбрать пару игр. Для этого в нужно щёлкнуть на пересечении в таблице B или C.

Неактивен

2    4    #36
12.02.2019 13:28

qwerty
Участник (+244, -117)
Зарегистрирован: 21.12.2005
Сообщений: 206
Вебсайт

Re: Новые методы голосования на КРИЛ

crem написал:

Тогда вопрос "остальные хуже" или "остальные не знаю" вообще стоять не будет. Голосовать обязательно, это "как остальные хуже", но по желанию игрока может быть и "остальные нормально".

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

"Остальные не знаю" - это по-факту, то, что сигнализирует голосующий. И странно было бы допридумывать какие-то оценки за него. Да, могут возникнуть несвязные графы. И это будет означать ровно то, что выставленные оценки не дают нам оснований предпочесть одни игры другим. И, в этом случае, проблему можно решать, проведя дополнительные этапы голосования, на которых игроки могут скорректировать и/или дополнить свои голоса. Разумеется, ранее проставленные голоса потеряться не должны. Но игрок может исправить собственные голоса, при желании.

Общий принцип в том, что к голосам нужно относиться как к волеизъявлению игроков, которое нужно учитывать. А не как к абстрактным цифрам, к которым нужно применять методы для получения абы какого результата. И насильно выжимать голоса тоже не нужно.

===

Вообще, подход crema ко многим вопросам меня откровенно удивляет. Что касается Олегуса, то, похоже, я ошибался, когда считал тонкости голосования мелочью, не достойной обсуждения в отдельной теме. А он оказался прав.

upd: в крайнем случае, если по итогам всех голосований, останутся несвязные графы, то придётся признать ситуацию такой, какая она есть. И это будет не недостатком метода Шульце, а наоборот: получится, что метод показал настоящую ситуацию с предпочтениями игроков.

Отредактировано qwerty (12.02.2019 13:35)

Неактивен

0    3    #37
21.02.2019 22:14

Пашка
Участник (+10, -14)
Зарегистрирован: 09.11.2018
Сообщений: 14

Колобок и компания | ЗОК 2021

Re: Новые методы голосования на КРИЛ

Может использовать для подсчета точную , четкую, простую и понятную схему: лайк-дизлайк ?

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru