50 лет потребовалось кибернетикам на разработку компьютерной программы, победившей чемпиона мира по шахматам. Следующий проект подобного плана, значительно более амбициозный, — создать команду киборгов
, которые в официальном футбольном матче по правилам ФИФА победят команду “белковых” футболистов — чемпионов мира. Хотя проблем здесь значительно больше (см. PC Week/RE, № 30/98, с. 37), различные направления искусственного интеллекта (ИИ) развиваются в мире столь активно, что, по оптимистическим прогнозам, некоторые из читающих этот номер могут собственными глазами увидеть сей исторический матч — примерно через те же 50 лет.
        А поводы для оптимизма есть. Конечно, задача достаточно сложна, тем не менее отметим, что вопреки сложившемуся мнению о слабой практической отдаче от теории ИИ и чуть ли не о наступившей ее “смерти” во всем мире ведется множество самых разных исследований в этой области, причем исследования эти становятся все более масштабными, средства выделяются все более солидные и результаты достигаются все более серьезные. Другое дело, что именно по этой причине большинство подобных работ постепенно скрываются под всевозможными грифами, однако и по открытым источникам сегодня можно с уверенностью судить о быстро растущих темпах развития ИИ.
        Правда, кибернетические футболисты пока делают только первые шаги на футбольных полях. Чемпионаты мира среди роботов (RoboCups) официально проводятся с 1997 г., но и они уже показали высокую квалификацию участников, проделанную ими весьма и весьма серьезную работу, а что самое главное — ежегодному очень высокому прогрессу роботов позавидует любая “белковая” команда.
        3-й Чемпионат мира по футболу среди роботов прошел с 27 июля по 9 августа 1999 г. в Стокгольме. В нем приняло участие 90 команд. Турниры проходили в нескольких лигах. В лиге F2000, где соревновались полностью автономные полуметровые роботы на поле размером 4,5x8 м, победила иранская (!) команда Sharif CE, выигравшая в финале у итальянской ART со счетом 3:1. В лиге F180 на поле 1,5x2,7 м соревновались роботы поменьше — размером до 15 см. В отличие от старших собратьев они были не полностью автономными — над полем размещалась видеокамера, и информацию с нее надо было распознавать и передавать роботам команды в реальном масштабе времени. В финале F180 победу одержала команда Корнуэльского университета Big Red, разгромившая FU Fighters из Берлинского университета со счетом 15:0.
        Соревнования проводились также и в симуляторной лиге — где выясняют, кто сильнее, не роботы, а программы, и матчи проходят на виртуальном футбольном поле. Каждая из двух команд представляет собой клиентское приложение, моделирующее работу 11 игроков и обменивающееся информацией с сервером (по протоколу UDP). Сервер выполняет роль судьи, администратора и комментатора. Во время матчей авторам программ остается только смотреть на экраны компьютеров и делать выводы, насколько успешно их подопечные усвоили данные ими уроки.
        В симуляторной лиге победу одержала программа CMUnited99, созданная в университете Карнеги—Меллона. В финале со счетом 4:0 она обыграла команду magmaFreiburg Фрейбургского университета из Германии.
        Таким образом, в трех лигах отрабатываются принципиально разные алгоритмы коллективного поведения. В каком направлении футбольно-компьютерные исследования идут наиболее активно? Это решение проблем быстро передвигающихся роботов в быстро меняющейся обстановке, согласование их действий в реальном масштабе времени и разумное автономное поведение, обучение, грамотное использование датчиков, трехмерная визуализация хода матча, создание программ, генерирующих автоматические комментарии к матчу. Научные успехи RoboCup столь очевидны, что планируется применять полученные достижения в проекте RoboCup-Rescue — использование роботов для спасения людей в сложной обстановке. Одновременно с турниром прошла третья международная конференция по футбольным играм роботов и 16-я международная конференция по ИИ.
        Впервые в RoboCup (в симуляторной лиге) приняли участие и две российские команды. Почему в симуляторной, понятно: никакого специального оборудования не требуется, можно обойтись одним ПК.
        Одна из них — Polytech 100 — создана в Санкт-Петербургском государственном политехническом университете группой студентов под управлением Льва Станкевича, вторая — PSI — разработана аспирантом Александром Кожушкиным из исследовательского центра по ИИ Института программных систем РАН (Переславль-Залесский) и Алексеем Лисицей, работающем в Кембридже.
        На создание PSI ушло около двух лет работы (не очень регулярной, проводимой в свободное время). По мнению ее авторов, чтобы сделать сильную программу, способную претендовать на призовые места, нужен год полноценной работы команды из 4—5 человек — программистов, проектировщиков и “настройщиков”, потому что балансировка параметров и отработка базовых навыков виртуальных футболистов требует особого внимания.
        Polytech 100 был готов в более сжатые сроки — за три месяца. Его разработчики получили немаловажный организационный опыт. Так, им стало ясно, что все сильнейшие команды поддерживают непрерывный контакт с игровым сервером, который имеет довольно плохое описание и содержит ошибки. Некоторым удается использовать различные нюансы его работы, что позволяет повысить силу игроков команды (хотя это не совсем спортивный прием). Отлаживать клиентское приложение надо под управлением Linux на хорошем компьютере (с мощностью процессора не менее 400 МГц) в условиях, приближенных к турнирным, поскольку быстродействие ПО качественным образом сказывается на силе игры.
        Команда Polytech 100 (ее участие в Стокгольмском турнире финансировал ЦНИИ робототехники и технической кибернетики) по неофициальному рейтингу занимает 11—13-е места из 37, что для первой попытки означает очень хороший результат. Как считает Лев Станкевич, его команда вполне конкурентоспособна и может делать интеллектуальные программы не хуже, чем специалисты лучших университетов мира. Для победы необходимо, во-первых, чтобы в программу были заложены лучшие научные идеи, во-вторых, играет роль cила программистов, и в-третьих, необходимо постоянно общаться с разработчиками сервера и другими командами, чтобы выполнять тонкую балансировку и доводку игры футбольной программы.
        В будущем году Polytech 100 приглашен на 1-й Европейский чемпионат роботов в Амстердаме. У создателей Polytech 100 имеются планы проведения такого турнира в России и организации российской ассоциации RoboCup. Не исключается участие в турнире реальных роботов, но для этого нужны спонсоры, так как один робот стоит около 5 тыс. долл., а требуется таких роботов не менее четырех.
        Административный орган федерации RoboCup Federation (www.robocup.org) расположен в Токио. На сайте в разделе “Resource&Reference” приведен список страниц, посвященных созданию виртуальных команд. Тут можно найти свободно распространяемые официальные версии серверных частей, необходимых для разработки собственной виртуальной футбольной команды, исходные тексты и библиотеки на Си++. Имеются версии сервера и клиентских программ для Windows 9х.
        Очередной RoboCup пройдет летом 2000 г. в Мельбурне. В 2001-м году японцы планируют проведение Олимпийских игр роботов, где среди других видов спорта будет и футбол. А как же киборги? Первый чемпионат мира среди двуногих роботов, формой и размерами напоминающих людей, состоится в 2002 г.
        Сможет ли наша страна достойно участвовать в этих турнирах? Pедакция готова оказать информационную поддержку российским командам, регулярно освещать ход их подготовки к соревнованиям, организовать и создать на своем сайте раздел, посвященный виртуальному футболу. Но командам необходима и материальная поддержка. Если в России найдутся организации, имеющие желание в любой форме помочь отечественным производителям футбольных команд роботов, пишите мне по адресу: sbo@pcweek.ru.