Тестовый игровой контест: Крестики-Нолики

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

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

UPD: добавлено условие задачи и простенькая смотрелка логов партий.

view.exe принимает лог партии (доступный из системы) на стандартный ввод и выводит последовательность получаемых полей на стандартный вывод.

UPD2: Немного изменены правила оценивания. Для уменьшения фактора случайности, между каждыми двумя игроками будет играться по 10 партий. Очки за все партии будут, естественно, суммироваться. Обратите внимание, что на основном туре правила могут быть изменены (другое количество партий или даже принципиально другая система оценивания).

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

  • Заменить файлы player1.exe и player2.exe соответственно исполнимыми файлами первого и второго игроков.
  • Запустить game_run.exe.
  • В папке появится файл game.log - протокол партии.

Также можно настроить параметры запуска игроков, отредактировав файл game_run.cfg. В нем можно изменить следующие параметры:

  • IdlenessLimit - максимальное количество времени, которое game_run будет ожидать ввода/вывода вашей программы (в миллисекундах)
  • TimeLimit - ограничение на использование процессорного времени (в миллисекундах)
  • MovesToDoInTL - количество ходов, которое требуется выполнить за время равное TimeLimit
  • MemoryLimit - ограничение на используемую память (в байтах)
  • Player1 - имя исполнимого файла первого игрока
  • Player2 - имя исполнимого файла второго игрока
  • Checker - имя программы, проверяющей ходы и определяющей победителей
  • Player1CommandLine, Player2CommandLine, CheckerCommandLine - строки запуска соответствующих программ

 Условие задачи (также доступно из системы) (*.pdf, 35 Kb)

 Простейший просмотрщик протоколов партий (*.exe, 3766 Kb)

 Исходный код view.exe (*.cpp, 1 Kb)

 Утилита для запуска партии на локальном компьютере (*.zip, 3661 Kb)

Оставить комментарий

Комментарии:

 

vkukushkin | 2011-09-21 19:18:26

В какие сроки нужно написать программу?
(в системе время окончания не указано)
Ответить.

     

    ftc | 2011-09-21 21:13:59

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

     

 

ftc | 2011-10-20 10:25:32

Как показывает практика, народ еще не совсем освоился. Напоминаю, что если в комментариях чекера написано "Player X idleness limit exceeded", значит соответствующая программа висит и ничего не делает (с точки зрения чекера). Это может происходить из-за отсутствия fflush(stdout); , которое нужно делать ПОСЛЕ вывода координат хода.
И да, если вы не выводите пустую строку, вы тоже можете получить idleness limit.

Немного пофиксил процесс тестирования, вроде стало пошустрее.
Ответить.

 





Версия для печати