Открытое соревнование по программированию искусственного интеллекта

Russian AI Cup — соревнование по программированию искусственного интеллекта

Проект

Песочница

Раунд 1

Раунд 2

Финал

Песочница на 24 декабря 2017 г.

Последние комментарии

15 июня 17:48: AlexKol написал комментарий в посте Закрытие Russian AI Cup 2017
15 июня 13:47: Mason написал комментарий в посте Закрытие Russian AI Cup 2017
2 июня 21:16: cheeser написал комментарий в посте Закрытие Russian AI Cup 2017
2 июня 18:45: AlexKol написал комментарий в посте Закрытие Russian AI Cup 2017
2 июня 14:47: M-Mad написал комментарий в посте Закрытие Russian AI Cup 2017
2 июня 13:43: cheeser написал комментарий в посте Закрытие Russian AI Cup 2017
1 июня 05:51: M-Mad написал комментарий в посте Закрытие Russian AI Cup 2017
22 мая 08:14: AlexKol написал комментарий в посте Закрытие Russian AI Cup 2017
16 мая 11:10: cheeser написал комментарий в посте Закрытие Russian AI Cup 2017
9 мая 17:01: AlexKol написал комментарий в посте Закрытие Russian AI Cup 2017

Группа ВКонтакте

Telegram-чат

Задача этого года — CodeWars

Напишите искусственный интеллект для управления большим количеством техники, соревнуйтесь с другими участниками в чемпионате!

Подробное описание задачи можно найти в разделах Чемпионат «CodeWars» и Правила.

Зарегистрироваться! Быстрый старт

Russian AI Cup — открытое соревнование по программированию искусственного интеллекта. Попробуйте свои силы в программировании игровой стратегии! Это просто, наглядно и весело!

Чемпионат шестого Russian AI Cup называется CodeWars. Вам предстоит программировать искусственный интеллект для управления большим количеством техники. Ваши стратегии будут соревноваться между собой в Песочнице и чемпионате. Вы можете использовать любой из языков программирования: С++, Java, C#, Python, Pascal или Ruby. Песочница уже открыта. Удачи!

К участию в соревновании приглашаются как начинающие программисты — студенты и школьники, так и профессионалы. Написать свою стратегию совсем просто: достаточно базовых навыков программирования.

Расписание чемпионата

  • Песочница: с 7 ноября до 24 декабря открыта для всех желающих; первая и четвертая недели будут проходить в режиме бета-тестирования, в эти периоды возможны нестабильная работа системы и существенные изменения в правилах.
  • Раунд 1: 25–26 ноября.
  • Раунд 2: 9-10 декабря.
  • Финал: 16-17 декабря.

Начните с Быстрого старта. Написать простейшую стратегию совсем несложно!

Призы и подарки

Информация о призах пока недоступна

Новости чемпионата

25
декабря
2017

Закрытие Russian AI Cup 2017

Песочница завершена, и теперь можно торжественно объявить о закрытии чемпионата Russian AI Cup 2017: CodeWars. В этот раз всё прошло без особой интриги: все стратегии в топе Песочницы прочно держали свои места на протяжении последнего дня.

Не будем же тянуть коня за хвост и сразу перейдём к поздравлению победителей. Все они получают WD My Passport Ultra 2TB за свои старания. Итак, встречайте:

  1. 1-6 место Александр Миланин - Milanin (США, Белвью, Microsoft).

  2. 1-6 место Михаил Балакирев - mixei4 (США, Кармайкл, КГУ).

  3. 1-6 место Андрей Морозов - morozec (Россия, Самара, ООО «СамараНИПИнефть»).

  4. 1-6 место Денис Уткин - ud1 (Россия, Химки).

  5. 1-6 место Андрей Рыбалка - lama (Украина, Одесса, Akademos Inc.).

  6. 1-6 место Александр Шумский - alex3d.

Разумеется, это ещё не все призы. Все участники Раунда 2 получат по сувенирной футболке с символикой чемпионата, а все участники Финала, в дополнение к этому, — по толстовке.

Внимание! Все участники Раунда 2 и Финала должны убедиться, что у них в профиле указан актуальный адрес и размер футболки.

Позднее мы можем опубликовать на сайте дополнительную информацию касательно получения призов и/или сделаем рассылку на электронную почту. Обратите также внимание, что все вопросы, связанные с получением призов, рекомендуется отправлять на адрес russianaicup@corp.mail.ru, а не в сообщения администрации.

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

С наилучшими пожеланиями, команды Mail.Ru Group и Саратовского ГУ.

18
декабря
2017

Завершение Финала

Итак! :) Финал Russian AI Cup 2017 завершён. В этот раз он прошёл без особой интриги. Победитель, а также состав остальных призёров, был известен почти с самого начала. Небольшие изменения произошли лишь в конкретных занятых местах. Несмотря на то, что некоторые участники приложили значительные усилия для улучшения стратегии в перерыве, ворваться в топ-6 им так и не удалось.

Итак, встречайте (“итак” много не бывает):

1) 1 место Евгений «GreenTea» Воронюк (Украина, Днепропетровск). Он становится победителем CodeWars 2017 и счастливым обладателем Apple Macbook Pro. Евгений участвовал во многих наших чемпионатах, но такого успеха добился впервые. 98% побед в Финале и значительный отрыв от ближайшего преследователя.

2) 2 место Впервые призёром нашего чемпионата становится девушка. Екатерина «oreshnik» Федотова (Россия, Москва) получает Apple Macbook Air за второе место.

3) 3 место Замыкает тройку лидеров Дмитрий «Leos» Обухов (Россия, Новосибирск). За свои старания он получает Apple iPad.

4) 4-6 место Иван «tyamgin» Тямгин (Россия, Симферополь) - Samsung Gear S3.

5) 4-6 место Иван «Adler» Кашин (Россия, Дзержинск) - WD My Cloud 6 TB.

6) 4-6 место Антон «TonyK» Козловский (Беларусь, Минск) - WD My Passport Ultra 4TB.

Мы вас всех поздравляем!

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

15
декабря
2017

Последний бой — он трудный самый

Вот-вот начнётся завершающий этап основной части чемпионата. Все участники с нетерпением наблюдают за его приближением и готовятся к ставшей уже традиционной заливке непроверенной версии стратегии перед полуночью. За процессом также наблюдает всевидящее око администрации соревнования. Один из пользователей был недопущен к участию в Финале за публикацию кода своей стратегии. Его место займёт следующая стратегия по результатам Раунда 2.

Напоминаем, что в каждой части Финала будут проводиться серии игр “каждый-с-каждым”.

2 балла стратегия получит за победу, по 1 баллу каждому участнику за ничью, а за поражение — кожура ;)

9
декабря
2017

Ещё немного хороших новостей ;)

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

В начале Раунда 2 были некоторые сбои в работе тестирующей системы. Мы их быстро исправили, однако процесс не сильно ускорился. Основные причины этого таковы:

  1. Усложнение правил игры, по сравнению с Раундом 1, и в частности добавление сооружений и возможности производить новых юнитов.
  2. Выборка стратегий. Топовые стратегии, разумеется, производят значительно большее количество вычислений и более эффективно утилизуруют предоставляемые им ресурсы ЦП. В Раунде 2 участвует значительное количество стратегий, работающих на пределе лимита по времени, а иногда и превышающих его.
  3. Небольшой размер одной волны.

Последние две причины усиливают друг друга. Часто получается, что игры с долго работающими стратегиями остаются на конец волны. В итоге, остальным приходится ждать, пока одна или две игры дотестируются.

Мы работаем над решением проблемы сразу в двух направлениях. Во-первых, количество тестирующих машин будет ещё увеличено (по сравнению с началом Раунда 2). Во-вторых, мы будем сразу создавать несколько волн игр. Это позволит значительно сократить время простоя системы. У этого решения есть минус: во время тестирования волны таблица с рейтингом участников может сильно отличаться от действительности. Однако мы считаем это меньшим злом, чем малое количество игр.

2
декабря
2017

Немного хороших новостей

Немного хороших новостей за последнюю неделю.

Была улучшена производительность клиентов на Ruby, а также Python 2 и 3. В то время, как Ruby и Python 2 получили совсем незначительный прирост скорости, изменения в Python 3 более заменты. В свою очередь, любители Python 2 получили возможность при отправке стратегии выбирать альтернативный способ запуска, а именно PyPy 2 версии 5.8.0+. Это может улучшить скорость работы некоторых стратегий, однако библиотеки NumPy и SciPy в данный момент отсутствуют и пока не планируется их добавление. Выбирайте с умом. К сожалению, PyPy 3 не имеет официальной поддержки в Windows за исключением старой медленной версии, добавление которой не является целесообразным.

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

Обновлено:

  • премия стратегии с меньшим количеством юнитов заменена расходами на содержание техники.
  • 3 декабря: немного уменьшены расходы на содержание техники, также был исправлен баг, связанный с производством техники.
28
ноября
2017

Обновление

Сегодня была выпущена серия небольших обновлений игрового движка и правил игры, а именно:

  • скорость захвата сооружений уменьшена в 2 раза;
  • увеличено время производства воздушных типов техники;
  • исправлен баг с многочисленным начислением баллов при захвате сооружения, теперь баллы начисляются только при смене владельца;
  • немного улучшен технический рендерер
  • ряд других мелких правок.
27
ноября
2017

Раунд 1 завершён

Раунд 1 завершён. Суммарно за 2 части каждая стратегия сыграла 42 раза. При этом среди всех участников нашлось 3 стратегии, одержавших победу во всех своих дуэлях. Участники kislas, blashyrkh888 и mixei4 разделили первые три места, отличаясь только временем отправки последней версии стратегии. Надеемся, что после такого успеха они не станут расслабляться и продолжат улучшать свои стратегии ;)

Напоминаем, что лучшие 300 участников уже проходят в Раунд 2. Если вы не попали в их число, не стоит расстраиваться. У вас ещё есть шанс получить заветную футболку. Для этого на момент начала Раунда 2 необходимо находиться в топ-60 Песочницы за исключением упомянутых 300 человек. В течение нескольких дней мы добавим специальную таблицу, где каждый сможет отслеживать свои успехи.

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

24
ноября
2017

Зима Раунд 1 близко

Товарищи! Раунд 1 почти начался!

Так получилось, что мы не смогли набрать запланированные 1080 участников. Очевидно, что основной причиной этого стала сложность задачи и связанный с этим высокий порог входа. Мы прекрасно вас понимаем, ведь организаторам тоже пришлось приложить значительные усилия для оптимизации работы системы тестирования и визуализатора игры. Но у всего есть и свои плюсы. В этом году впервые в Раунде 1 примут участие все или почти все стратегии. (Система устроена таким образом, что количество участников в этапе турнира должно быть кратно количеству участников одной игры.)

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

Мы желаем всем удачи. Но если вам всё же не удалось попасть в заветные топ-300, всегда можно пройти в Раунд 2 и даже Финал по дополнительному набору из Песочницы.

23
ноября
2017

Чёрная пятница

Внимание, внимание! Только сегодня, только сейчас… 20 секунд по цене 10… кхм, кхм…

В связи с медленным стартом стратегий на некоторых языках, мы решили увеличить лимит времени на исполнение стратегии. Проблема была особенно актуальна на коротких проверочных играх. Поэтому ограничение по времени было увеличено на 10 секунд — константу, не зависящую от длительности игры. Ограничение по времени на один тик осталось без изменений.

20
ноября
2017

Итоги недели

Прошла очередная неделя AI Cup, и мы готовы отчитаться о проделанной работе. А сделано было немало.

Мы приложили значительные усилия для повышения производительности и стабильности системы. Это может быть не видно участникам напрямую, но так всегда: сбои в работе порождают недовольство, а нормальное функционирование воспринимается как должное.

Очевидно, что объём данных в задаче этого года, бросил вызов не только системе тестирования, но и стратегиям участников, неотъемлемой частью которых является специальный клиент, взаимодействующий с симулятором игры. Эти клиенты были написаны в незапамятные времена, ещё в эпоху легендарных первых «танчиков». В течение длительного времени их работа полностью устраивала и нас, и участников. Но в этом году они начали давать сбои. Слабыми звеньями оказались клиенты на Python 2, Python 3, Ruby и… конечно же, C++. Не без помощи сообщества, над этими клиентами проведена объёмная работа. Их производительность заметно возросла, оставляя больше времени на работу основной логики стратегии. Также был сделан ряд минорных улучшений пользовательских пакетов на других языках.

Набор доступных языков за прошедшую неделю был значительно расширен. Теперь, помимо стандартного набора, вы можете разрабатывать свою стратегию на Scala, Kotlin, Go, Swift и Rust. Огромное спасибо всем участникам, внёсшим свою лепту в разработку и поддержку этих пакетов.

Правила игры с момента окончания бета-теста принципиально не изменились, однако был исправлен ряд опечаток, некоторые спорные моменты были описаны более подробно. Если у вас остались ещё какие-то непонятные моменты, скачивайте последнюю версию и вперёд «ботать»! До Раунда 1 осталось всего 4 дня.

Обновлено:

  • добавлен язык Nim.
12
ноября
2017

Завершение бета-теста

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

Помимо прочего, в игру было добавлено два новых действия:

  • SCALE для сжатия и расширения формации юнитов;
  • TACTICAL_NUCLEAR_STRIKE для нанесения тактического ядерного удара.

Пожалуйста, заново скачайте последние версии языкового пакета и различных утилит. Обратите внимание, что правила игры, пакеты и утилита Local runner также опубликованы на Github. Там вы оперативно сможете отслеживать происходящие изменения, а также видеть список вносимых правок.

До окончания Раунда 1 и начала второй недели бета-теста в правила не будут вноситься изменения, способные повлиять на поведение стратегии в игре. Тем не менее, мы будем продолжать исправлять обнаруженные баги и оставляем за собой право изменять механики игры, выходящие за рамки правил, если сочтём эти изменения необходимыми.

Рейтинг в Песочнице был сброшен. Все участники начинают с чистого листа.

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

Тем не менее, вы уже можете разрабатывать и отправлять вашу стратегию на замечательном языке D. Спасибо Gassa за это. Пакет опубликован на Github.

6
ноября
2017

Открытый бета-тест

Мы рады приветствовать всех участников открытого бета-тестирования Russian AI Cup: CodeWars 2017!

Бета-тест продлится до 23:59 12 ноября. Обращаем ваше внимание на то, что в этот период нами могут вноситься существенные изменения в правила, систему оценки и любые другие аспекты чемпионата. За эту неделю мы постараемся исправить возможные ошибки, оптимизировать производительность, внести какие-либо другие необходимые улучшения. После этой недели беты рейтинги участников будут сброшены.

Некоторые ссылки на сайте не являются рабочими, в том числе ссылки на Github. Мы исправим это в течение нескольких дней.

Осталось пожелать всем приятно провести время и, конечно же, удачи. Поехали!

Последние игры лидеров
Участники  
Смотреть
Детали
Смотреть
Детали
Финал
Имя Рейтинг
1 GreenTea GreenTea 1272
2 oreshnik oreshnik 1200
3 Leos Leos 1192
4 tyamgin tyamgin 1186
5 Adler Adler 1180
6 TonyK TonyK 1148
7 Milanin Milanin 1082
8 mixei4 mixei4 1052
9 ud1 ud1 1050
10 stem stem 1006
Песочница
Имя Рейтинг
1 Milanin Milanin 3983
2 GreenTea GreenTea 3982
3 tyamgin tyamgin 3959
4 Adler Adler 3836
5 TonyK TonyK 3814
6 oreshnik oreshnik 3789
7 mixei4 mixei4 3785
8 Leos Leos 3759
9 morozec morozec 3706
10 alex3d alex3d 3668