Хабрахабр

Окружи, откуси, распили: новое соревнование Mini AI Cup #4

Привет! Большинство из нас, специалистов в IT сфере, любит играть в игры — карточные, настольные, компьютерные и другие. Зачастую бывает, что игры пользы никакой не приносят, а хотелось бы всё и сразу — удовольствие, фан и знания. Специально для вас мы стараемся изобретать «игры для программистов», которые сочетают в себе всё вышеперечисленное. Предлагаем вам познакомиться с ними и приглашаем принять участие в соревновании по искусственному интеллекту Mini AI Cup #4!

История соревнований Mini AI Cups

В 2017 году нами была запущена площадка для проведения чемпионатов по искусственному интеллекту AI Cups, ставшую ответом на множество запросов IT-сообщества, которому хотелось попробовать себя в задачах, похожих на те, что встречаются в знаменитом чемпионате Russian AI Cup.

Коротко про Russian AI Cup?

Соревнование проводится с 2012 года, зарегистрировалось более 20 000 пользователей, которые прислали нам более 150 000 различных решений.
Russian AI Cup (RAIC) — ежегодный чемпионат по написанию искусственного интеллекта и ботов, которые ожесточенно сражаются в виртуальном мире вместо своих владельцев.

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

Остальные пользователи продолжают готовиться в песочнице (тренировочных контестах) к следующему чемпионату. За два года на портале зарегистрировалось 3000 человек, 600 из которых приняли участие в трёх мини-соревнованиях и отправили свои варианты стратегий.

Прошедшие соревнования

Mini AI Cup #1 / Lifts

Участвовало 217 человек. Первый тестовый чемпионат Mini AI Cup был проведен в сентябре 2017 года. Победителями стали Антон Козловский, Денис Уткин, Даниил Николенко. Суть задачи – стратегия развоза пассажиров в лифте, с учетом факторов, влияющих на алгоритм развоза.

Mini AI Cup #2 / AgarIO

Задача состояла в том, чтобы запрограммировать бота для игры, похожей на Agar.io. Второй Mini AI cup начался в феврале 2018 года. Победителями стали Алексей Дичковский, Андрей Токарев, Антон Козловский. Было зарегистрировано около 1200 участников, активных игроков более превысило 300 человек.

Mini AI Cup #3 / MadCars

Каждому игроку давалась машина с кнопкой. Чемпионат начался 30 августа 2018 года и был разработан по мотивам игры Drive Ahead. У каждого игрока 5 жизней. Задача состояла в том чтобы написать бота, управляющего машиной, цель которого — нажать на кнопку врага быстрее, чем это сделает он.

Победители: Алексей Дичковский, Антон Козловский, Александр Киселев

Новое соревнование Mini AI Cup #4 / PaperIO

Механика достаточно простая, физики нет. На этот раз решили реализовать аналог Paper.io, специализированный для написания ботов. Есть только игровое поле, игроки, правила и бонусы.

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

Поддерживаемые ЯП

Здесь всё стандартно — решения можно прислать на любом языке программирования из списка поддерживаемых: C++11, C++14, C++17, C#, Java 1.8, Kotlin, Haskell, Go, Python 2.7, Python 3.6, PHP7, Node JS, Elixir, Rust, Scala.

Для удобства участников, а также для снижения пиковых нагрузок на систему запуска, мы подготовили программу для локального запуска и отладки — Local Runner.

6 с использованием визуализатора Pyglet и поставляется в виде исходных кодов. Утилита написана на Python 3. Детальные инструкции по настройке и использованию вы найдёте в правилах.

Архитектура решения

Самое простое решение на языке программирования Python 3 будет состоять из одного файла main.py. Программа-клиент инициирует сессию и запускает этот скрипт в начале работы. Клиент скрывает внутри себя работу с сетью и обработку ошибок, является посредником между игровой механикой и решением участника. Он передает JSON от мира в стандартный поток ввода (stdin) и забирает ответ из стандартного потока вывода (stdout) (для Python это sys.stdin и sys.stdout).

Для корректной работы решение должно запускаться с параметрами для ввода/вывода без буфера (для Python это флаг -u при запуске интерпретатора).

Обрабатывать остановку не обязательно, в конце игры dockerd завершит работу всех контейнеров. Решение стартует один раз и далее работает в бесконечном цикле. Внутри цикла заключается обработка ввода/вывода, происходит обработка JSON и вызов главного обработчика.

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

Расписание и подарки

Итак, стартуем 18 июля в 19:00, заканчиваем 18 августа. В эти промежутки будут проведены три раунда, а именно:

  1. Бета-тестирование (не влияет на результаты) для исправления возможных багов — 1 неделя.
  2. Рейтинговые игры (2 недели).
  3. Финальные игры (1 неделя).

Из рейтинговых игр в финал пройдут 25 % участников. Все участники, прошедшие в финал, получат традиционные футболки.

Кроме того, лучшие участники получат ценные подарки:

  • первое место — Apple MacBook Air;
  • второе и третье место — Apple iPad;
  • четвертое, пятое, шестое места — Samsung Gear S3.

Сообщество

Чтобы было интереснее и веселее, присоединяйтесь к сообществу участников в телеграме (@aicups). Нас уже более 900 человек!

Желаем удачи!

Полезное

  1. Немного о физике в почти Agar IO на aicups.ru
  2. «Создание бота на рекуррентной нейронной сети для участия в Mini AI Cups»
  3. Создание бота для участия в AI mini cup 2018 на основе рекуррентной нейронной сети
  4. Создание бота для участия в AI mini cup 2018 на основе рекуррентной нейронной сети (часть 2)
  5. Создание бота для участия в AI mini cup. Опыт применения GPU
  6. Создание бота для участия в AI mini cup 2018 на основе рекуррентной нейронной сети (часть 3)
  7. Mini ai cup 2 или почти AgarIO — что можно было сделать для победы
  8. Запускаем Mini AI Cup #3 Битва машин в тесных закрытых пространствах
  9. Mini AI Cup #3 Пишем топового бота
Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть