Robocode
Robocode - игра, созданная для программистов и предназначенная для изучения языка Java и некоторых других языков программирования. Начало традиции положил Мэтью Нельсон.
Цель игры
Каждый из программистов пишет Java код, который является проекцией мини- танка. На экране происходит баталия, цель которой - уничтожить все вражеские танки. При этом используется хитроумная стратегия и тактика. Побеждает тот из участников, чей танк максимально "прокачан", то есть код Java бота прописан сложнее и грамотнее. Используя всю мощь языка Java, программисты соревнуются друг с другом, поднимая свой профессиональный уровень. В игре нет единой стратегии. Каждый пишет код, на который способен. Некоторые коды занимают всего 10 строк, другие - несколько страниц. Простой робот-танк можно записать за 10 минут, сложные создаются годами. Есть и такие программы, которые являются темами курсовых и дипломных работ. Программисты прибегают даже к таким методам, как статистический анализ и нейронное программирование.
Изучение игры
Весьма серьёзно к игре Robocode отнесся Научно-исследовательской институт ИТМО, который предложил оригинальные разработки в научных трудах, самые известные из которых раскрыты в работах "Система управления танком для игры Robocode. Объектно-ориентированное программирование с явным выделением состояний. Программная документация"[1] и "Применение двухэтапного генетического программирования для построения модели танка в игре «ROBOCODE»[2]. Создатели танка в институте предложили использовать SWITCH-технологию, которую подробно расписали в документации.
Лиги чемпионов
Среди участников игры проводятся так называемые "лиги", которые порой доходят до международного уровня.Любой программист, чей бот "прокачан" до хорошего уровня может принять участие в соревновании. Лиги проводятся в разных городах мира, например, в 2011 году фестиваль игр проходил в Ирландии. Существует несколько уровней лиг Robocode:
- Малая лига, еженедельный конкурс ботов
- Турнир "двойная дуэль"[3], работает по четвергам. Двойная дуэль - "ближний бой" двух участников.
- Международная лига, проводится в разных странах, ведущими являются Ирландия и Бельгия.
Примечания
- ↑ Система управления танком для игры Robocode. Объектно-ориентированное программирование с явным выделением состояний. Программная документация Архивная копия от 15 февраля 2015 на Wayback Machine. - НИУ ИТМО. - Кафедра "Технологии программирования"
- ↑ Применение двухэтапного генетического программирования для построения модели танка в игре «ROBOCODE» Архивная копия от 15 февраля 2015 на Wayback Machine. - Статья. - журнал НИУ ИТМО.- март-апрель 2011
- ↑ "Twin Duel". RoboWiki. Retrieved 2012-10-18