Microsoft Cloudball Challenge — соревнование по футбольному AI

в 11:26, , рубрики: microsoft, Спортивное программирование, метки: ,

Помню оживленное обсуждение на хабре Google AI Challenge, а заметок по подобному соревнованию от Microsoft не нашел. И раз уж мне посчастливилось этот конкурс выиграть, наверное мне о нем и рассказывать.

Как и в случае с Google AI Challenge сама корпорация Microsoft непосредственного участия в организации не принимала, а разработкой занималась шведская фирма Giraff.

Cloudball — упрощенная версия футбола. Играют две команды по 6 игроков. Игроки могут «вести» мяч, бить его в любую сторону и делать подкаты. Мяч упруго отбивается от бортиков. У каждого игрока есть свое амплуа (вратарь, левый защитник, правый защитник и т.д.), но придерживаться их не обязательно.

Вот пример матча:

Разрабатывать команды можно только на C# (впрочем не вижу препятствий для других языков .NET, на сервер заливаются скомпилированные dll, но организаторы заявили только C#). Технически, ваша библиотека должна содержать класс, с интерфейсом ITeam, который реализует метод Action. Этот метод будет вызываться на каждом ходу игры. Каждому игроку нужно дать одно из заданий:

  • ActionGo(IPosition) — направить игрока в определенную точку поля
  • ActionShoot(IPosition, float) — удар в выбранном направлении с выбранной силой
  • ActionPickUpBall — взять мяч, если он ничейный
  • ActionDropBall — «уронить» мяч
  • ActionTackle(Player) — сделать подкат
  • ActionWait — ничего не делать на данном ходу

Игра представляет широкие возможности для фантазии в области тактики. И если я старался придерживаться комбинационной игры, с большим количеством пасов и выводом за счет этого форвардов на ударную позицию, то многие придумывали совсем экзотические варианты: от «автобуса» в своих воротах, до так называемого «blob'a», когда при атаке все игроки кучкуются вокруг мяча и идут на ворота соперника «свиньей». Несколько участников, в том числе канадец, занявший третье место, неплохо справлялись с дриблингом, обучив своих игроков выписывать кружева по полю и за счет инерционности соперников уходить от их подкатов. А занявший второе место американец явно исповедует тотальный футбол — у него все от вратаря до центрфорварда атакуют и защищаются.

Соревнование длилось с 18 апреля по 16 июня и наверное пост о нем был бы более логичен месяца два назад, но есть и хорошая новость: после фиксации результатов и объявления победителей, сервер вновь запущен, а upload команд разрешен. Возможно последуют некоторые изменения в правилах.

Историю создания своей команды я достаточно подробно описал от версии к версии: рус eng (PDF).
Новости от организаторов и основное обсуждение на страничке в Facebook.
Официальный сайт соревнований с турнирной таблицей.
Подробности правил в вики.
Несколько видео моих матчей.

Автор: Ice_Harley

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js