Время новостей
     N°74, 29 апреля 2009 Время новостей ИД "Время"   
Время новостей
  //  29.04.2009
Киберспорт высших достижений
Российские студенты с блеском выиграли чемпионат мира по программированию
Киберспортом принято называть турниры по компьютерным играм. Но есть куда более серьезные и подлинно важные для престижа страны компьютерные соревнования, на которых участники состязаются в умении программировать. Самое известное и престижное из таковых -- чемпионат мира среди студенческих команд ICPC (International Collegiate Programming Contest). Он проводится ежегодно при поддержке IBM Ассоциацией по вычислительной технике (ACM -- Association for Computing Machinery). В этом году финал чемпионата проходил в Стокгольме, и в нем участвовали команды, представляющие ведущие университеты мира. Наши студенты добились выдающегося успеха. Они завоевали три золотые медали из четырех и еще одно серебро.

Со стороны финал ICPC выглядит как нечто среднее между футбольным матчем и шахматами. С той существенной разницей, что действия спортсменов публике не видны: исходные тексты отлаживаемых участниками программ никто публике не демонстрирует, да и зачем? Зритель видит только зал с сотней компьютеров -- по одному на команду -- и тремя сотнями юношей и девушек, которые за этими компьютерами трудятся. За каждое верно исполненное («сданное», в терминологии самих спортсменов) задание полагается шарик определенного цвета -- его приносят и привязывают над рабочим местом команды. Побеждают в ICPC, заметим, не три, а 12 команд. Вручаются по четыре комплекта золотых, серебряных и бронзовых медалей. Иной раз, если разница в турнирных показателях команд невелика, жюри может выдать и пятый комплект наград, как это случилось в этом году с бронзовыми медалями.

Зритель только видит обновляемую в реальном времени таблицу, в которой команды расставлены в зависимости от числа правильно исполненных заданий, времени отладки, числа попыток и т.д. Таблицу выводят на мониторы вблизи игрового зала и транслируют на сайте ICPC. Участники соревнований также могут видеть ее на своих компьютерах.

За час до истечения отведенных на состязание пяти часов таблица «замораживается», и начинается самое... надо было бы написать «интересное», однако правильнее сказать «волнительное». Оценить положение -- да и то весьма приблизительно -- можно только в зале, где идет состязание. По числу шариков, принесенных командам.

Результаты фиксируются автоматически. Исходный текст составленной командой программы, посвященный решению каждой из одиннадцати конкурсных задач (problems, в терминологии организаторов; задач может быть от восьми до 12, в этом году их было 11), отсылается на компиляцию и исполнение. Если программа на тестовом наборе исходных данных за приемлемое время выдает правильный (читай: ожидаемый организаторами) результат, задание считается выполненным, и команде несут очередной шар.

Финал ACM-ICPC 2009 года проходил 21 апреля в Стокгольме в Королевском технологическом институте (KHL). В нем участвовали 100 команд, среди них восемь команд из восьми российских вузов: Алтайского государственного технического университета, МГУ, Новосибирского госуниверситета, Саратовского государственного университета, Южно-Уральского госуниверситета, Санкт-Петербургского государственного университета, Санкт-Петербургского государственного университета информационных технологий, механики и оптики, Уральского государственного университета.

Главное-спокойствие

Вечер 20 апреля. Команда Санкт-Петербургского государственного университета информационных технологий, механики и оптики (СПбГУ ИТМО) готовится к соревнованиям. Завтра они станут чемпионами, но сегодня стараются побороть предстартовое волнение. «Ребята они неплохие. Но нервные», -- поясняет профессор Владимир Парфенов, декан факультета информационных технологий и программирования СПбГУ ИТМО. На соревнованиях собранность и спокойствие важны не менее, чем техника программирования и навыки алгоритмизации. «Задача выиграть что-либо перед вами не стоит. Мы уже все, что можно, выиграли! Как выступите -- так оно и будет. И Станкевич (тренер команды. -- Ред.) мне говорит -- вы, Владимир Глебович, ни на что особенно не рассчитывайте», -- рассказывает профессор.

Декан виду не подает, что сам очень волнуется: «В 99-м мы впервые заняли третье место. Я потом несколько дней носил в кармане итоговую таблицу. Достану, раскрою, посмотрю -- ну, слава богу, это не сон, мы действительно «золото» выиграли!»

Андрей Станкевич, тренер команды СПбГУ ИТМО, золотой медалист ICPC 2000 и 2001 годов, сетует на несыгранность подопечных: «Они меньше года вместе. Я заменил в этой команде двоих». Рассказывает о неудачном выступлении на предварительных соревнованиях. И добавляет: «На финале ICPC бывают неожиданности -- все может оказаться иначе, не так, как на предшествующих соревнованиях». Он тоже верит.

Здесь же Роман Елизаров, член жюри ICPC (тоже выпускник СПбГУ ИТМО, чемпион России 1996 года) и Михаил Мирзаянов, тренер команды Саратовского государственного университета. Завтра он вместе со своей командой выиграет четвертое место и с ним золотую медаль. Они выглядят спокойнее остальных.

Китайцы промахнулись

Утро следующего дня начинается с представления, которое профессор Бейлорского университета (США) Билл Паучер (без него финал ICPC едва ли представим) устраивает у входа в здание, где пройдет соревнование. Он с кубком входит в толпу участников: «Ты откуда, парень? Колумбия? Точно Колумбия, не из Китая? Смотри, вот кубок! Возьми его в руки, и пусть нас сфотографируют!»

В зале, где проходит финал ICPC 2009 года, не могут одновременно находиться более 350 человек -- требование противопожарной безопасности. 300 участников, десятки помощников судей, следящих за порядком... Для зрителей места практически нет.

Команды входят в зал.

Как потом выяснилось, журналистов во время начала соревнований в зале не должно было быть. Корреспондент iToday.ru, не имевший ни малейшего намерения доставлять неудобства организаторам, этого не знал и сделал несколько снимков. По счастью, удалось сфотографировать именно тех, кто через пять часов станет чемпионами мира.

Не прошло и 15 мин., как над залом повисли желтые шарики -- они полагались командам за первую, наименее сложную задачу. Наши команды с лидирующих позиций не уходили, но ICPC -- непредсказуемые состязания, тут все может измениться в одночасье.

Журналистов водили в зал поодиночке, на несколько минут, с сопровождающим и только к двум заранее выбранным командам. Корреспондент iToday.ru подошел к рабочим местам СПбГУ ИТМО и Саратовского госуниверситета.

К моменту, когда таблица за час до окончания соревнований была «заморожена», лидировал СПбГУ ИТМО с восемью решенными заданиями. На втором месте шли саратовцы с шестью заданиями.

Долгое время не было никакой информации, и вдруг стало известно: саратовцы сдали седьмое задание. Времени до окончания соревнования оставалось минут 20. Как выяснилось, в зал сумел заглянуть -- менее чем на минуту -- один из тренеров саратовской команды (по правилам они не могут подходить к командам). Над компьютером саратовцев висели по-прежнему только шесть шаров. Но по выражению лиц спортсменов, по тому, как они переворачивают листы с заданиями, педагог понял, что седьмой шар уже несут.

Это означало, что у нас отличные шансы на два первых места: главные соперники -- команда из университета Циньхуа с шестью сданными заданиями отставала.

Но еще через несколько минут выяснилось, что университет Циньхуа «на флажке» отправил на проверку четыре (!) задания. Судьба первого места стала зависеть от того, будут ли они приняты.

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

Команда из университета Циньхуа решила правильно только одну из четырех задач. Надо сказать что многие, и в частности Андрей Станкевич, считали китайцев фаворитами. В итоге у России абсолютное первенство -- три первых места и одно «серебро».

Абсолютным победителем чемпионата стала команда Санкт-Петербургского государственного университета информационных технологий, механики и оптики (она уже становилась чемпионом в 2008 году). Их наградили золотыми медалями и специальным кубком.

Золотые медали достались также следующим участникам: команде университета Циньхуа (она также решила девять задач, но с большим штрафным временем -- 1800 мин.), команде Санкт-Петербургского государственного университета (она решила восемь задач со штрафным временем 1176 мин.), команде Саратовского государственного университета им. Н.Г. Чернышевского.

Один из комплектов «серебра» выиграла команда Алтайского государственного технического университета им. И.И. Ползунова из Барнаула.

«К успехам российских команд общественность начинает привыкать, но каждый год российские молодые программисты достигают все лучших результатов. При этом отметим, что практически нет других видов человеческой деятельности, где у России были бы такие успехи. Необходимо учесть, что на стадии отборочных соревнований в чемпионате участвовало 7109 команд из 1838 университетов 88 стран мира, а в финале -- 100 команд», -- говорит один из преподавателей чемпионов мира профессор СПбГУ ИТМО Анатолий Шалыто.

Отметим также выдающийся успех -- бронзовые медали команды Тбилисского государственного университета.

Награды победителям вручали в стокгольмском Concert Hall -- там же, где вручают и Нобелевские премии.

Молодые люди с "высокой тактовой частотой"

ICPC -- это не индустрия программирования. Это спорт высших достижений. К решению кадровых проблем нашей софтверной индустрии победа на ICPC имеет такое же отношение, что и победа на ЧМ по хоккею к здоровью нации. Михаил Донской, самый известный из наших программистов, говорил об этом так: "В словосочетании "чемпионат мира по программированию" ключевое слово -- "чемпионат", а не "программирование".

Это верно. Но назвать наших чемпионов "программистами" -- значит сильно упростить дело. Они молодые люди с чрезвычайно высокой "тактовой частотой процессора" (это выражение тоже принадлежит Донскому). Они универсальны. Их талант -- это отнюдь не талант кодировщиков. Они «просто» умнее и сообразительнее других. Они способны к решению множества нетривиальных инженерных задач, не обязательно даже связанных с программированием.

Успех России на ICPC-2009 получился сколь выдающимся, столь и неожиданным. Фаворитами считались китайцы, и не потому, что в Стокгольме их было очень много (причем приезжали они не только из Китая -- в команде Стэнфорда, например, вместе с тренером было четверо этнических китайцев). В мире этого спорта люди друг друга хорошо знают, и команда университета Циньхуа считалась фаворитом. Но -- не заладилось. Слишком много времени китайцы потеряли на старте, на наше счастье.

Ежегодно в отборочных соревнованиях ICPC участвуют 15 тыс. китайских студентов. Это очень много. А главное, участие китайских университетов в ICPC поощряет и поддерживает государство. У нас же все держится на самих вузах, которые не то чтобы были предоставлены сами себе, нет, но готовят программистов-спортсменов вполне самостоятельно. Самостоятельно изыскивают возможность оплачивать работу тренеров и самостоятельно, подчас в конкуренции друг с другом, отбирают для обучения талантливых детей. Чиновники тут ни при чем.

Американских команд в Стокгольме оказалось, как уже было сказано, больше всех -- 20. Но среди призеров только два университета из США. Лучший результат у MIT (Массачусетский технологический институт) -- «серебро». Для США победа на ICPC не является задачей национальной важности, как, например, для Китая.

СПбГУ ИТМО для факультета информационных технологий и программирования, где обучают участников ICPC, ежегодно с трудом находит 40--50 абитуриентов, обладающих достаточным талантом, способных к решению нетривиальных задач. Из их числа и формируются команды для участия в ICPC.

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

Команды-победители

Санкт-Петербургский государственный университет информационных технологий, механики и оптики: Максим Буздалов, Евгений Капун, Владислав Исенбаев. Тренер -- Андрей Станкевич, руководитель команды -- Владимир Глебович Парфенов.

Санкт-Петербургский государственный университет: Олег Давыдов, Юрий Петров, Сергей Копелиович. Тренер и руководитель команды -- двукратный чемпион мира Андрей Лопатин.

Саратовский государственный университет им. Н.Г. Чернышевского: Станислав Пак, Наталья Бондаренко, Дмитрий Матов. Тренеры -- Михаил Мирзаянов и Виталий Гольдштейн. Руководитель команды -- Антонина Гавриловна Федорова.

Алтайский государственный технический университет им. И.И. Ползунова: Алексей Избышев, Максим Колосовский, Андрей Акиньшин. Тренер команды -- Елена Николаевна Крючкова. Руководитель -- Семен Аврамович Кантор.





Подготовлено совместно с iToday.ru

Андрей АННЕНКОВ, iToday.ru, -- специально для «Времени новостей», Стокгольм--Москва