Номера

2016

2015

2014

2013

2012

2011

2010

2009

2008

2007

2006

О журнале

Сотрудничество

Рекламодателю

Подписка

Главная / №3 (21) Май-Июнь 2008 / Событие

«Битва интеллектов»

В списке последних побед России на спортивных и музыкальных площадках мира есть и еще одна — победа интеллектов. Победителями очередного, 32-го ежегодного чемпионата мира по программированию среди сборных команд высших учебных заведений (Association of Computer Machinery International Collegiate Programming Contest (ACM ICPC) стали российские студенты из Санкт-Петербургского государственного университета информационных технологий, механики и оптики.

Финальная часть этого соревнования, известного также под названием «Битва интеллектов» (Battle of the Brains), в этом году проводилась в канадском городе Банфф. Участники должны были за пять часов справиться с задачами по программированию, на решение которых обычно уходит целый учебный семестр. Эти задачи, отличавшиеся высокой степенью сложности, моделировали реальные проблемы современного бизнеса. Члены команды, завоевавшей первое место, удостоились призов от IBM, специальных стипендий и почетного права называться лучшими молодыми программистами в мире.

В региональных отборочных турнирах чемпионата ACM-ICPC 2008, которые проводились осенью прошлого года, приняло участие 6700 команд из 1821 университета, представлявших 83 страны. Причем Северо-Восточный европейский регион, куда входят страны бывшего СССР (кроме Украины), — самый крупный по числу участников среди всех 36 регионов мира (в региональном четвертьфинале в этом году приняли участие 699 команд, из которых 196 вышли в полуфинал, в рамках которого проходит также студенческий командный чемпионат России).

Хронология событий

Столь большое число участников привело организаторов ACM ICPC к необходимости пригласить на финал 12 команд — победителей полуфинальных соревнований от нашего региона (не более чем по одной команде от университета), из которых 11 представляют Россию: Санкт-Петербургский государственный университет информационных технологий, механики и оптики (СПбГУ ИТМО) — чемпион России 2007/2008 учебного года, Ижевский государственный технический университет (ИжГТУ), Ставропольский государственный университет, Петрозаводский государственный университет (ПетрГУ), Санкт-Петербургский государственный университет (СПбГУ), Московский государственный университет (МГУ), Орловский государственный технический университет, Уральский государственный университет, Московский физико-технический институт (государственный университет), Новосибирский государственный университет, Алтайский государственный университет.

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

Распределение результатов показало, что сильнейшие команды мира находятся в России, Белоруссии, Украине и США. Безоговорочная победа российской школы программирования налицо. Отметим, что все (!) одиннадцать команд из России заняли места среди 30 лучших из 100 участников финала. Начиная с 2000 года ситуация на соревнованиях ACM ICPC изменилась: американские команды побеждают все реже, а впереди располагаются команды русских, китайцев и поляков.

Для СПбГУ ИТМО это уже восьмая медаль на соревнованиях ACM ICPC: на счету вуза теперь семь золотых и одна серебряная награда, завоеванные в 1999-2001, 2003-2005, 2007 и 2008 годах, причем в 2004 году эта команда стала также чемпионом Европы и мира. А поскольку по правилам соревнований один и тот же участник может участвовать в финале не более двух раз, за прошедшее время сменилось несколько поколений призеров чемпионатов мира. На сегодняшний день СПбГУ ИТМО имеет наивысший рейтинг среди всех участников Северо-Восточного европейского региона.

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

Представляем участников команды-победителя. Но сначала несколько слов о ее тренере — Андрее Станкевиче. Старший преподаватель кафедры компьютерных технологий СПбГУ ИТМО, в свое время он сам был участником команд-победителей 2000 и 2001 годов (будучи студентом ИТМО, дважды удостоен стипендии Президента России — в 2000 и 2001 гг.), а начиная с 2003 года — тренер четырех команд-победителей. В 2003 году ему в составе авторского коллектива была присуждена премия Президента РФ в области образования, а в 2004-м он удостоился награды от ACM за наибольший вклад в развитие ACM ICPC в Европе. Принимает участие в организации студенческих и школьных олимпиад, а также интернет-олимпиад по информатике и программированию; заместитель директора соревнований Северо-Восточного европейского региона; председатель жюри командного чемпионата школьников Санкт-Петербурга по программированию, школьной олимпиады Санкт-Петербурга по информатике, Всероссийской командной олимпиады школьников по программированию; тренер сборной России на международной олимпиаде школьников по информатике. Участник личных соревнований по программированию TopCoder; неоднократный призер в финалах международных студенческих соревнований. В настоящее время занимает восьмое место в общем мировом рейтинге, в который входит 7238 человек.

Теперь о самой команде. Когда победные страсти утихли, в конце мая, автор этих строк встретился с капитаном, студентом 5-го курса Федором Царевым. Договорились о встрече в ИТМО, так сказать, на родной земле. В ожидании пытался нарисовать себе портрет одного из лучших молодых программистов мира, но не успел. Федор оказался человеком пунктуальным. После приветствия решили пройти в его рабочий кабинет — учебная деятельность совмещается с преподавательской. Миновав вахту с охраной (только по предъявлении документа), оказались на территории университета. В это время чемпион мира кому-то звонил, приглашая своего собеседника присоединиться. Через десять минут за столом нас сидело трое — подошел еще один участник команды, студент 5-го курса ИТМО Дмитрий Паращенко. Я попросил ребят начать с фотографии, на которой шесть человек, тогда как в команде только три участника.

 — Крайний справа представитель оргкомитета, — объясняет Ф. Царев, — первый слева — Владимир Глебович Парфенов, доктор технических наук, профессор, декан факультета информационных технологий и программирования СПбГУ ИТМО. Кроме того, он является директором полуфинальных региональных соревнований и руководителем нашей команды. Он стоял у истоков студенческого программирования в России. Рядом с ним участники команды, два Дмитрия — Паращенко и Абдрашитов — пятикурсник ИТМО. С кубком в руках наш тренер Андрей Станкевич. Следующий я. 

— При решении задач у каждого своя работа или вы все работаете вместе?

— В начале соревнований обычно работаем индивидуально, потому что есть легкие задачи, не требующие общего обсуждения — объясняет Д. Паращенко. — Ближе к завершению идет совместная работа во избежание ошибок.

До финала ребятам пришлось пройти ряд отборочных соревнований. На мой вопрос о том, где борьба была более упорной, чемпионы не задумываясь заявили, что на полуфинальных соревнованиях в России. Там, кроме них, от ИТМО участвовало еще три команды. События полуфинала разворачивались следующим образом. За час до окончания соревновательного времени в активе их команды было пять решенных задач. У кого-то из соперников шесть. То есть, чтобы бороться за лидерство, надо было решить минимум две задачи. Решили три. На последнюю, восьмую, от судей не пришло подтверждение о правильности ее решения. Складывалась такая ситуация: или десятое место с семью задачами (проигрывали с учетом штрафного времени), или первое, потому что восемь не решил никто. Такая неясность длилась несколько часов вплоть до объявления победителей. Оказалось, что последнее задание было выполнено правильно.

В финале все повторилось с той лишь разницей, что семь решенных заданий уже гарантировали им первое место. Восьмая «пришла» к награждению. Этот успех не был неожиданным. «Тяжело в учении, легко в бою». Основная работа идет на тренировках и сборах. Тренировочный процесс моделирует реальные соревнования: те же пять часов, те же задачи. На тренировочные сборы команды ИТМО выезжают в Петрозаводск. В течение десяти дней лекции, задания и разборы полетов. База в Петрозаводске уже много лет два раза в году предоставлена программистам.

К сожалению, на высшем уровне ребята больше выступать не будут. По международным правилам в финальной части турнира можно участвовать не более трех раз. Они исчерпали этот лимит, став чемпионами. Но они живут будущим. Впереди поездка в Сан-Франциско на церемонию награждения премиями ACM — ACM Awards, военные сборы и преподавание в летней компьютерной школе.

Заканчивая эту статью, вспомнился еще один момент нашей беседы. Федор рассказал, что в начале сезона каждый пишет тренеру о своих целях и вершинах, которых хочет достичь. Так вот, Дмитрий Абдрашитов написал, что хорошо бы выйти в финал. Второй Дмитрий, Паращенко, видел себя с золотой медалью (1-4 места). Федор Царев, как и подобает капитану, поставил своей целью стать абсолютным чемпионом мира. Вот так. А перед собой нужно ставить наивысшие цели — для того, чтобы их достигать!

Тимур ЖЕМЛИХАНОВ,
Павел МАВРИН,
магистрант кафедры
компьютерных технологий
СПбГУ ИТМО,
чемпион мира ACM ICPC 2004,
золотой медалист ACM ICPC 2005 
Анатолий ШАЛЫТО,
д. т. н., профессор, заведующий
кафедрой технологий
программирования ИТМО.