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

Первая проблема, с которой мы столкнулись, - это дефицит разнородных интересных задач в очереди на публикацию. Искать нужно было там, ведь все задачи отборочного тура останутся на сайте, когда турнир закончится. Поэтому они должны проходить по текущим критериям отбора на сайт: набирать нужный перевес голосов за публикацию среди модераторов, иметь окончательное условие и хорошо разобранное решение. Целью отборочного тура было, прежде всего, привлечь как можно больше участников к главному мероприятию. Мы делали ставку на то, что отборочные задачи будут решать активнее, чем обычные. Поэтому важно было соблюсти еще 2 критерия: отборочные задачи должны быть не слишком сложными, но и не слишком устными, при этом достаточно интересными. Формулировка должна цеплять своей доступностью и в то же время провоцировать игрока на быстрый поиск решения, а потом обескураживать тем, что результат, оказывается, еще можно улучшить. На самом деле, мы всегда стараемся публиковать именно такие задачи, но сейчас нужны были самые интересные из них. А чтобы гарантировать равные условия всем участникам, нужно было отсеять задачи, которые уже "светились" за пределами модераторской части форума. Так была забракована очень хорошая задача про развертку куба, которая уже находилась в разделе "Отбор", доступном VIP-игрокам. Она примечательна тем, что эталонный ответ держался несколько лет, после чего результат смог улучшить один из пользователей, чем сильно удивил модераторский коллектив.

Наконец, мы отобрали шесть задач и присвоили им условную сложность по пятибалльной шкале. Изначально планировалось публиковать их в порядке роста сложности, чтобы разница в мотивации участвовать в финале повлияла на результат решения самой сложной задачи. Затем от идеи отказались, чтобы наоборот, сложную задачу решило больше участников. Кстати, последнюю, шестую задачу в выбранном списке мы заменили буквально за пару дней до публикации и не прогадали - задача "Вкусный рацион" набрала 94% симпатий.

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

Следующая проблема касалась трех турнирных задач. Для них критерии отбора намного жестче. Они должны быть не только новыми для участников турнира, но и достаточно сложными, чтобы не получилось десять первых мест с одинаковым максимальным результатом. Однако, и сложности не хватит: задач будет всего три, и бинарная система "зачет/незачет" все равно не обеспечит разнообразие результатов. Поэтому подбирались задачи на оптимизацию некоторого параметра, чтобы детализировать шкалу оценок. Чтобы за неоптимальное решение участник мог получить меньше максимума баллов, но не 0. А еще, если задача легко поддается компьютерному перебору (намного легче, чем ручному), такая задача не очень подходит. Не все умеют или хотят программировать, поэтому справедливо оценить решения не выйдет. Несмотря на то, что разработка эффективного алгоритма перебора - это тоже интересная задача, она не формат для braingames.

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

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

Стоит отметить, что в исходном варианте задачи про предохранители был всего один вопрос: каково минимальное число попыток, гарантирующее включение света. Доказательство минимальности не требовалось, потому что многие варианты доказательства не были лаконичными. Эта часть задачи не представляла особого интереса, и в таких случаях при публикации задачи мы явно не требуем обоснование. Но в связи с тем, что турнирных задач было мало, мы стремились выжать из них весь потенциал. Пришла идея: а что, если на турнире давать баллы и за доказательство минимальности? Так родился окончательный формат задач. В каждой из них будет два параметра для оптимизации. Один нужно максимизировать, а второй, соответственно, минимизировать. Параметры дополняют друг друга, например, в первой задаче параметр M - количество попыток, не гарантирующее включение света, а параметр N - количество попыток, за которое уже можно восстановить электричество, следуя определенному алгоритму. Тогда исходная версия задачи равносильна минимизации N, а доказательство минимальности - это не что иное, как верное решение для максимального M. Зная, насколько разные есть подходы к доказательству минимальности, мы заранее предусмотрели бонусы за самый изящный подход.

По сути, каждая задача разделилась на две самостоятельные части, которые можно решать и оценивать независимо друг от друга. Однако, мы не знали оптимальное значение N в задачах "Бармен" и "Мегазолото" и не считали его поиск настолько увлекательным. Поэтому, чтобы стимулировать участников к оптимизации "основных" параметров, выбрали дополнительные веса всем подзадачам: исходным - побольше (7-9), дополнительным - поменьше (1-3). По задумке, веса 1 и 2 означали возможность заработать баллы для тех, кто решит все остальное и заскучает.

Итоги турнира

Судя по обилию вопросов от участников в первые дни турнира, концепция оказалась не до конца понятной. Ведь в задачах на braingames либо нужно искать оптимальное решение, либо засчитывается любое подходящее (например, "Побег Мегамозга"). И совсем нет задач, которые будут засчитаны за решение одного пункта из нескольких. А в турнирных задачах все наоборот. Принимается любое верное решение, но и оптимизация является целью. Это не написано прямо в условии, но следует из правил оценки. Также не всем было понятно, что нахождение M и N - две независимые подзадачи, и любую из них можно не решать без ущерба для другой. Тем не менее, начальный результат можно было получить во всех подзадачах, лишь прочитав условие. Например, за 0 попыток свет точно не включить, а 101 слиток не унести, потому что их всего 100. Такие результаты тоже могли принести баллы за счет участников, которые не ответили или ошиблись. Но многие участники, в том числе лидеры рейтинга, этой возможностью просто не воспользовались.

Всего в турнире поучаствовало 49 игроков из 107 допущенных (примерно половина). Это неплохой результат, так как многие из прошедших могли просто решать отборочные задачи, не желая участвовать по разным причинам. Участники старались ответить на все три задачи. Большинство ответов были понятными и достаточно подробными. Трудностей в проверке практически не возникло.

В задаче "Форс-мажор" оптимальное N нашли примерно две трети участников, оптимальное M - примерно треть. Задача оказалась простой, но не слишком, что соответствовало ожиданиям организаторов.

В задаче "Бармен" дальше начального результата M = 3 продвинулись 11 участников. Из них 8 использовали эталонную идею. Еще один участник смог обобщить подход, но получил низкий результат для 100 бокалов. И еще двое не обобщили решение. Разнообразие результатов ниже ожидаемого: между M = 4 и M = 50 всего два уникальных значения. Серьезный подход к оценке N сделали три участника, но во всех обоснованиях найдены пробелы, поэтому полных баллов за N не получил никто.

В задаче "Мегазолото" оптимальное M нашли 6 участников. Не получилось достаточного разнообразия результатов, в основном за счет того, что многие участники остановились на M = 15 (это не начальный, но лежащий на поверхности результат). Подход к оценке N сделал всего один участник, но в его доказательстве были найдены ошибки.

За верные в целом, но недостаточно обоснованные ответы жюри снижало баллы либо на 10%, либо на 50%. Критерии были определены после проверки всех ответов. За красивые или лаконичные решения были начислены бонусные баллы. Поскольку основные баллы ни у каких двух участников не совпали, жюри приняло решение, что бонусы будут суммироваться отдельно. Подробности можно узнать в таблице результатов.

Мы обязательно учтем возникшие трудности при организации турниров в будущем.

Комментарии (6)


  1. FreeNickname
    27.11.2021 16:52
    +1

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

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


    1. mega-mozg Автор
      27.11.2021 17:02

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


    1. qark
      27.11.2021 18:00

      Может быть, просто неинтересно.


  1. Alexandroppolus
    27.11.2021 16:58

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

    Там старая давно опубликованная задача.

    Была забракована "развертка куба 2", она действительно с очень крутым ответом - до сих пор никто не решил, кроме того юзера)

    https://braingames.ru/?path=comments&puzzle=680&drafts=1


    1. mega-mozg Автор
      27.11.2021 17:15

      поправил, спасибо


  1. mega-mozg Автор
    27.11.2021 17:37

    да. конечно не удобно, когда карма ограничивает действия. голосовать не могу, комментировать могу только раз в 5 минут :( вроде не сделал ничего плохого, а дискриминацию словил. в моем лунопарке такого не будет :)