Каменяр: Інформаційно-аналітичний часопис Львівського національного університету імені Івана Франка

Наші прикладники взяли “золото”

Команда зі спортивного програмування нашого Університету у складі Василя Білецького, Остапа Коркуни та Руслана Бабілі завоювала вперше в історії України одну з 4‑х золотих медалей студентського командного чемпіонату світу з програмування, що пройшов під егідою ACM (Association for Computing Machinery). 32-й фінал світових змагань відбувся 9 квітня 2008 р. в місті Банф (Альберта, Канада). У відбіркових турах чемпіонату 2008 року стартували 6 700 команд з 1821 університету 83 країн, до фіналу відібрано 100 команд.
Хлопці переконливо випередили університетські команди Прінстона, Гарварду та інших провідних університетів світу.
Наш кореспондент зустрівся із Василем Білецьким та Русланом Бабілею, щоб більше дізнатися про подію та про цей незвичний вид спорту. Сьогодні спортивне програмування як інтелектуальний вид спорту дедалі більше набуває популярності в Україні і, особливо, після перемоги наших хлопців у Канаді.

– Як сталося, що ви почали захоплюватися таким цікавим і незвичним видом спорту?
Василь:
– Про спортивне програмування ми дізналися завдяки Інтернету, зовсім недавно – чотири року тому. На той час в Україні воно було слабко розвинене. Тільки в Києві та в окремих містах, здебільшого на сході України, вже діяли центри АСМ (Association for Computing Machinery). А на теренах Західної України цим ніхто не займався. От ми самі й почали займатися. Спершу не дуже вдавалося. Ми їздили на фінал чемпіонату України і дивувалися, як хлопці можуть демонструвати такі високі результати, але з часом, тренуючись, досягли певного рівня.
– Василю, ти тоді був студентом?
Василь:
– Так. Це було у 2004 ро­ці, коли я вчився на четвертому курсі факультету прикладної математики. Усі, хто займається спортом, знають, що це вже дуже пізно. Якщо порівнювати, наприклад, із київськими командами, які (так історично складалося) мали б показувати кращі від нас результати, то там хлопці займаються з 6–7‑х класів. У киян порівняно добре організована підготовка. Спочатку беруть участь у шкільних олімпіадах всеукраїнського та міжнародного рівнів з програмування, далі продовжують займатися в Київському університеті.
Тож я значно відставав за рівнем досвіду від киян (сміється), бо тоді просто прочитав в Інтернеті інформацію про спортивне програмування, що мене й зацікавило.
– Сьогодні дуже багато молодих людей не обізнані з таким, скажімо, незвичним видом спортивної діяльності… Чи можна його порівнювати з традиційними спортивними видами, чи це все-таки різновид інтелектуальної діяльності, яку сформували сучасні реалії технологічного розвитку інформаційного суспільства. Як зростало ваше зацікавлення спортивним програмуванням?
Василь:
– Спочатку було зацікавлення, захоплення. Ми заради розваги їздили на змагання в Київ, по Україні. Уперше я, до речі, побував в Одесі, на морі, коли брав участь у Кубку України з програмування, де ми сенсаційно посіли третє місце (я тоді вже був п’ятикурсником).
А вже пізніше, коли почали серйозно займатися, наше захоплення переросло у спорт. Ми регулярно організовували тренування, тренінги.
Коли я навчався в аспірантурі, ми створили команду. Постійно тренувалися разом. Торік нам не вдалося пройти півфінал у Бухаресті (Румунія), і ми посіли на цих змаганнях шосте місце.
А вже цього року досягли хорошого рівня та мали відмінний результат – посіли перше місце в Україні, перше місце у Східній Європі і взяли золоту медаль на першості світу.
– Руслане, а як ти себе знайшов у цьому незвичному виді спорту?
Руслан:
– Спершу брав участь у шкільних олімпіадах з інформатики. На першості області посів призове місце. Зауважу, що загальні олімпіади, що їх проводять у школах, далекі від спортивного програмування, оскільки мають свої суб’єктивні аспекти.
Коли почав навчатися в Університеті, знав, що раз на рік проводять олімпіади з багатьох предметів. А вже на другому курсі від хлопців дізнався про деякі сайти ACM і почав цікавитися. Ми тоді виступали в різних командах. Захоплення переросло в спорт: змагання дають змогу покращувати результат. Інтернет дає можливість побачити, які результати в інших команд та учасників.
– Якими були твої перші результати?
Руслан:
– Навчаючись на другому курсі факультету прикладної математики, посів третє місце на змаганнях, які проводила комп’ютерна академія “ШАГ”.
На перший погляд, спортивне програмування виглядає такою собі катакомбною діяльністю: посвячені нечисельні групки людей займаються незрозумілою для широкого загалу діяльністю, збираються у визначених місцях, проводять закриті тренінги, а пізніше масово збираються під час змагань у різних містах України, різних ре­гіо­нах світу. Люди чимось одержимі, мають свої ціннісні критерії, високий загальносвітовий рівень…
Як цей вид спорту котирується в Україні? Чи можна його прирівнювати до наукової діяльності, чи до зацікавлень світових корпорацій, що спеціалізуються на технологіях інформаційного суспільства, чи це вже різновид сучасного спорту, який ще торує собі шлях у світі спорту? Можливо, у майбутньому побачимо його у програмі Олімпійських ігор.
Василь:
– Трохи історії розвитку цих змагань. Вони зародилися у Сполучених Штатах, коли між різними університетами організовували змагання. Пізніше було проведено міжнародну олімпіаду. Згодом долучилися університетські центри Канади, європейських країн та інших регіонів світу. А з 90‑х років у змаганнях беруть участь українські команди.
У 2000 році в Україні уперше відбувалася олімпіада з АСМ. На сьогодні олімпіади з АСМ підтримує МОН України і радше розглядаються як освітньо-наукова діяльність. Є наказ міністерства, за яким кожен Університет скеровує команду на олімпіаду. Немає масового захоплення спортивним програмуванням. Збоку це справді виглядає так, що когорта людей займається незрозумілою діяльністю: з чогось тішаться, щось розв’язують. І багато хто робить великі очі, коли йому говорять про АСМ. Але поступово воно переростає у спортивний вид, у шоу, де змагаються команди.
У мене залишилися яскраві враження від фіналу командного чемпіонату світу з програмування в Канаді, коли телекомпанії транслювали це дійство упродовж п’яти годин. Були глядачі, які вболівали за свої команди. На Заході, зокрема в США, розвинені мережі кібер-кав’ярень, де збираються фанати спортивного програмування. Отже, можна стверджувати, що це не просто освітньо-наукова діяльність, а сформований традицією різновид спорту, і досить важкий (5 годин біля комп’ютера в закритому просторі, високе психологічне напруження тощо), з набором класичних спортивних атрибутів (трибуни, глядачі, фанати, шоу-індустрія, медіа-кампанії тощо).
Щодо Олімпійських ігор, то розглянемо за приклад такий вид спорту, як кьорлінг. Він теж не потребує значної фізичної підготовки, у ньому акцентують на тренуваннях, наскільки точно відшліфовано рухи та відстані. Тут уже втрачається античний стереотип сприйняття спорту. Думаю, цілком реально, що спортивне програмування згодом увійде в програму Олімпійських ігор. Останнім часом більше людей ним цікавиться власне через ІТ-індустрію.
Фірми можуть узяти на роботу випускника технікуму чи університету, якщо він брав участь в олімпіадах навіть всеукраїнського рівня, і це багато про що свідчить.
Є багато інтернет-сайтів, на яких проводять індивідуальні он-лайн змагання, де кожен має особистий рейтинг. Наприклад, європейські фірми, запрошуючи на роботу, під час співбесіди це враховують. Якщо у вас хороший рейтинг, вам достатньо показати свою сторінку, і вони беруть на роботу без жодних інших додаткових рекомендацій. Це значить, що багато хто з нас може отримати роботу в Лондоні чи Нью-Йорку. Поки що в Україні такого немає. Але, думаю, це питання часу.
– Яка специфіка проведення світових змагань? Як вам вдалося вийти у фінал?
– У нас було завдання-мінімум – пройти до фіналу. Досить багато часу витратили на тренування. Я багато читав в Інтернеті про специфіку підготовки до змагань.
Коли ми перемогли у півфіналі, то вже виконали завдання-мінімум. Тоді я зрозумів, що можна спробувати здобути медалі у фіналі світових змагань. Готуючись, ми тренувалися майже щодня, робили вимушені перерви для відпочинку. Тож, перед самим фіналом ми були в хорошій формі. Тому я розраховував на медаль, хоча всяке могло бути.
Враження від фіналу – тільки найкращі.
– Якою була програма фіналу?
– Фінал тривав упродовж тижня, і тільки останнього дня відбувалися змагання, що традиційно тривають 5 годин. А перед тим була насичена культурна програма (екскурсії по Канаді) та тренування (щоб учасники могли адаптуватися до нового місця, звикнути до комп’ютерів, апробувати систему, призвичаїтися до умов тощо).
І це дуже добре, бо, приїхавши, можна спокійно акліматизуватися, звикнути до іншого клімату, країни та часового поясу.
До слова, ІВМ вклав в організацію олімпіади 2 млн. доларів. Якщо взяти до уваги, що є сто команд, кожна делегація команд нараховувала до десяти осіб разом із тренером. Ми – єдина команда, яка приїхала без тренера (сміється). Хлопці з Росії були із проректорами своїх університетів, а з командою із Петрозаводська приїхав колишній ректор їхнього університету.
Отже, наша команда із трьох осіб виглядала доволі скромно. Коли мене запитували, то я жартував, що ви ще тіштеся, що ми приїхали троє, а не двоє.
Організували змагання на високому рівні. Загалом до канадського міста Банф (Альберта) на чемпіонат світу прибуло 400–500 осіб. Проживали в найдорожчому і найгарнішому готелі Канади (The Fairmont Banff Springs, http://www.fairmont.com/banffsprings/).
ІВМ уже понад десять років є офіційним спонсором фіналів світових змагань із спортивного програмування. Щороку дедалі більше команд у фіналі. Торік – понад 80 команд, цьогоріч – сто. Тобто є тенденція до зростання чисельності і команди, і глядачів, з одного боку, а з іншого – також зростає зацікавлення з боку світових спонсорів та медіа.
– Яким чином вибирають місто, де проводитимуть фінал світової першості?
– Схема дещо схожа на ту, яка діє під час підготовки до Олімпійських ігор. Тільки тут її проводять впродовж коротшого терміну. Одразу на церемонії нагородження під час цьогорічного чемпіонату світу повідомили про вибір наступного міста проведення світових змагань – Стокгольм, Швеція. Власне, туди нас запросили вже як гостей. На кожній арені, де відбуваються світові змагання, є місце для запрошених гостей, з якого вони можуть спостерігати за цим видовищним шоу, яке створюють телеоператори та фотографи.
На змаганнях глядачі можуть спостерігати за п’ятигодинним перебігом змагань і завдяки електронним табло фіксувати результати.
– А хто є організатором цих змагань?
– АСМ (Association for Computing Machinery) є своєрідним організаційним комітетом, вона провела вже 32-й командний чемпіонат світу з програмування. Останні десять чемпіонатів світу відбуваються за спонсорської підтримки ІВМ.
– За яким принципом проводять відбіркові кола?
– Організатори ділять усю планету на так звані регіони. У кожному регіоні проводять свій півфінал. Кожен регіон має свою квоту – кількість команд, що візьмуть участь від регіону у фіналі світової першості. Ми належимо до південно-східноєвропейського регіону. Хоча українські команди виступають за останні роки набагато краще, його центром обрано місто Бухарест (Румунія).
– Чому так склалося?
– Тому що румуни мають представництво ІВМ у себе, а в нас, в Україні, його, на жаль, немає. Тому організаторам набагато легше проводити змагання в Бухаресті. Так уже традиційно склалося, що на базі бухарестської Політехніки чимало років поспіль проводять півфінали світу.
– !?
– З нашого регіонального півфіналу світу є тільки одна команда, яка може взяти участь у фіналі – тільки переможець півфіналу, і щороку дають додаткові місця. Зазвичай від нашого регіону на фінал чемпіонату світу їдуть дві команди, оскільки додаткове місце надають для команди, яка посіла друге місце у півфіналі.
Цього року з нами поїхала команда Вінницького національного університету, яка посіла друге місце у півфіналі в Бухаресті. Організовано все так цікаво, що на змаганнях у Бухаресті може будь-хто взяти участь.
Український фінал не вважають офіційним чвертьфіналом чи відбірковим туром. За результатами українських змагань, перші три команди отримують від міністерства фінансування на організацію поїздки на півфінал у Бухарест (квитки, візи тощо). Це стало можливим з 2001 року, коли МОН України почало підтримувати в такий спосіб офіційно змагання із спортивного програмування.
Нещодавно студенти із нашого Університету на загальноукраїнських змаганнях посіли дев’яте місце. Але це не вплине на їхню участь 15 – 19 жовтня цього року в півфіналі в Бухаресті. Можна загалом не брати участі в українських змаганнях і подати заявку в Бухаресті.
Кожен регіон світу має свої дати проведення півфіналів. Наприклад, коли ми під час минулого півфіналу в Бухаресті посіли перше місце, то ще мали змогу суто із тренувальних міркувань поїхати в Батумі. Це північноєвропейський регіон, що об’єднує Росію, Казахстан та країни Кавказу. У них півфінал проводять одночасно в декількох центрах, один із яких є в Батумі. Найсильнішими в тому регіоні виглядають росіяни, вірмени, грузини та казахи.
Цей регіон дуже сильний, тому що росіяни поставили ці змагання майже на державний рівень. Свідченням потужності цього регіону є те, що до фіналу проходять відразу десять команд. Якщо порівняти дві команди з нашого регіону і десять з їхнього, то різниця доволі відчутна. На півфіналі північноєвропейського регіону ми виступали поза конкурсом і увійшли до десятки перших команд. Тож ми одержали подвійну гарантію участі на чемпіонаті світу. Цікаво, що за історію змагань цього регіону жодного разу не їздили на чемпіонат світу, наприклад, грузинські та вірменські команди, була лише одного разу казахстанська команда. Щоразу від цього регіону до фіналу світу виходили перші десять російських команд (також вони мають додаткові місця).
У Росії існують сильні школи спортивного програмування. Росіяни традиційно проводять тренувальні збори, де збираються фактично найкращі російські, українські, білоруські спортивні програмісти. Титуловані привозять завдання й організовують збір для команд, які братимуть участь у фіналі світу. Минулого року ми до них поїхали і, скажу відверто, багато чого навчилися.
– Тобто було корисно поспілкуватися із росіянами…
– Коли спілкуватися із росіянами через Інтернет, то вони не дуже охоче діляться досвідом. А вже після того, як ми в них побували і потоваришували з ними, охоче діляться інформацією.
– А як їм вдалося вийти на такий високий рівень, створити власні школи, традицію?
– Вони також починали з нуля. Так було в Петрозаводську (Республіка Карелія), що під самою Фінляндією. Там один хлопчина запропонував проводити тренувальні збори зі спортивного програмування. Спершу туди з’їжджалися тільки команди із Москви та Петербурга, згодом коло учасників постійно розширювалося.
На останніх тренувальних зборах узяло участь приблизно тридцять команд із Росії, України, Білорусі, Казахстану та інших країн. Коли ми побували на цих зборах (уже після першого місця на півфіналі в Бухаресті), то зрозуміли, що не так усе просто. На півфіналі у Бухаресті нам давали 9 задач, які ми розв’язали за дві години замість п’яти і достроково знали, що перемогли. Тоді нам здавалося, що ми вже готові перемагати на фіналі чемпіонату світу. Поїхавши до росіян на тренувальні збори, зрозуміли, що може бути серйозна конкуренція, відчули на “власній шкурі” високий рівень підготовки російських команд.
Ці рейтингові тренувальні збори у Петрозаводську росіяни традиційно проводять двічі на рік. Я хотів ще раніше поїхати до них, але одержав відмову. Пояснили, що кількість охочих узяти участь у зборах значна, а місць – обмежена. Окрім того, обґрунтували відмову, що я ще не маю здобутків і, відповідно, маю занизький рівень і побажали успіхів у здобутках (сміється).
Коли ми перемогли у півфіналі у своєму регіоні, тоді нас уже запросили. А після перемоги на чемпіонаті світу росіяни нас автоматично запрошують на кожні свої тренувальні збори. Улітку запрошували на тренувальні збори, що відбувалися наприкінці серпня – на початку вересня. Я дуже хотів, щоб усі наші хлопці, котрі їдуть до Бухареста, побували на цих тренувальних зборах, але на поїздку потрібна відповідна сума (20 – 25 тис. грн), яку, на жаль, ми не знайшли. Може, у майбутньому знайдемо спонсорів на фінансування поїздок наших команд на такі тренувальні збори. Росіяни дуже грамотно й цікаво організовують збори, проводять інтенсивне тренування – щодня. Не кожен витримає щодня по п’ять годин біля комп’ютера. А вже після тренувань автор завдань пояснює тим, хто не зміг правильно знайти розв’язок, який передбачав автор. А потім команди ще мають змогу або відвідати спортзал чи басейн, або спробувати після аналізу вдруге розв’язати завдання, які не вдалися. І так дев’ять днів поспіль (через кожні три дні були перерви).
– Чи потрібно сплачувати внесок за участь у спортивних зборах у Петрозаводську?
– Так. Кожна команда платить оргвнесок. Ми платили 10 тисяч російських рублів. Цього літа ця сума вже становила 15 тисяч.
– Чи не виникала у тебе ідея започаткувати такі спортивні збори у Львові? Або оголосити якусь мальовничу місцину в Карпатах таким собі “Глобальним Українським Селом”, куди б, як ті бджілки у вулик, зліталися найкращі молоді програмісти з України та з інших країн…
– Коли я подавав заявку на спортивні збори у Петрозаводську, зі мною листувалася пані проректор того університету. Тобто в них це серйозно й офіційно налагоджено. На відкритті зборів виступав ректор їхнього університету. Щось подібне цього року спробували проводити у Харківському інституті радіоелектроніки. Звісно, туди приїхали тільки українські команди. Я туди віз три наші команди. На одних змаганнях подавали мої задачі. Були також росіяни зі своїми завданнями, але ніхто з них участі в змаганнях не брав. Вони просто приїжджали подивитися та привезли свої задачі. З’ясувалося, що в Україні наразі недостатньо сильних команд. У нас дуже велика фрагментація: є 4–5 сильних команд, а решта ще не дотягують до відповідного рівня. У Харкові росіяни подали, на їхню думку, нескладні завдання, але деякі українські команди зовсім їх не розв’язали.
Поки що ми до цього не готові, хоча Україна дуже прогресує порівняно з минулими роками. Можливо, таку ідею можна буде реалізувати в майбутньому, але це ще тільки в перспективі.
– Щоб дійти до такого рівня, як у росіян, потрібен час та ресурси, особливо фінансові. А якщо організувати такі тренувальні збори на українському рівні, тобто спершу на місцевому, як це відбувалося в росіян, аби сформувати власну школу та традицію стилю зі спортивного програмування і поступово напрацьовувати та досягати високого міжнародного рівня?
– Так, це можливо. У мене навіть була ідея цього літа зібратися тільки львівськими командами, яких традиційно багато. Хотілося організувати літній табір десь у горах. Адже достатньо мати із собою ноутбук із Інтернетом.
– Отже, все-таки ви всупереч, а не завдяки перемогли на чемпіонаті світу в Канаді. Зробили диво, яке оцінили і глядачі, і фахівці у всьому світі, хто спостерігав за змаганнями. Бо перемогли без усяких бюджетів та іншої підтримки (тренери, психологи, групи підтримки тощо), без могутніх грошовитих спонсорів, які дбають про популярність свого бренду на світових змаганнях. Ви випередили команди найпотужніших університетських центрів світу – і щодо передових технологій та престижу, і щодо традицій та наукових шкіл, а також фантастичних бюджетів. Чи можна розкрити таємницю цього дива? Чи це був свідомий ентузіазм, жага до перемоги, адже ваша діяльність не виглядала як хобі? Якою була ваша мотивація? Зрештою, для західного менталітету ви так і залишаєтеся нерозгаданою таємницею…
– Це професіоналізм. Коли більшість команд приблизно однакового рівня, то щоб стати кращими від них, потрібно більше працювати.
– А як ви досягнули цього рівня професіоналізму, це ж також непросто? Без бюджету, тренерів…
– Ще за рік до фінальних світових змагань ми з хлопцями зібралися в одній із львівських кав’ярень і поставили мету поїхати на фінал світової першості. Саме тоді ми й заснували команду, що взяла “золото”. Я сказав, що потрібно буде багато працювати, і всі погодилися. Чесно кажучи, тоді ніхто не думав про жодну підтримку. Я не знав наперед, чи отримаємо ми гроші, щоб купити собі квитки. Тренувалися в мене вдома чи в когось із хлопців. Витрачали на тренування дуже багато часу. Так розвивали свій професіоналізм. Справді, ми вже працювали як команда. Кожен знав, що має зробити в тій чи іншій ситуації. У результаті ми бачили, що виходить набагато краще, ніж ми очікували. Ми писали гарно, швидко і, фактично, не було такого, що ми не могли би зробити. Так мета участі у фіналі світових змагань трансформувалася у мету поборотися за медалі. Ми вже знали, що це наш перший і останній шанс побувати у фіналі студентського чемпіонату світу зі спортивного програмування, тому що хлопці вже навчалися на п’ятому курсі, а після закінчення університету участь у студентських змаганнях уже неможлива, тому ми посилено тренувалися, прагнучи поборотися за медалі чемпіонату світу. Поставили перед собою мету і чітко до неї йшли…
– А коли відчули момент входження, так би мовити, у вищу лігу?
– Регіон південно-східно­євро­пей­ський, до якого ми належимо, порівняно слабенький, бо проходить у фінал лише одна команда. Коли ми в Бухаресті посіли перше місце й одержали путівку на фінал світової першості, то були переконані, що справу зроблено, і фінал наш. Але, поїхавши до росіян, справжніх професіоналів, зрозуміли, що ще не дотягували до лідерства. Змагаючись із ними, посідали п’яте, восьме, а іноді й нижче десятого місця. Це спонукало нас замислитися. Приїхавши із Петрозаводська, мали трохи більше трьох місяців до фіналу. Тренувалися щодня. Брали завдання з попередніх фіналів та півфіналів і щоразу, розв’язуючи їх, дивилися, яке б ми місце посіли в тих чи інших змаганнях, якби брали в них участь. І ці результати поступово покращувалися. І вже наприкінці здобували найвищі рядки в кожному змаганні, задачі з якого розглядали. Залишалося тільки впоратися зі своїми нервами, щоб на фіналі ніхто не “зірвався”. Таке буває. Так трапилося з командою поляків, минулих чемпіонів світу. Вони були фаворитами змагань. Коли ми брали участь у тренувальних зборах у Петрозаводську, вони перемогли на змаганнях із дуже великим відривом. А на фіналі чемпіонату світу не впоралися з нервами і навіть не увійшли в першу десятку, посіли чотирнадцяте місце. Були дуже розчаровані.
Ми зуміли зібратися, і нам вдалося вийти на “золото”.
– Чи мали достатнє фінансове забезпечення поїздки на чемпіо­нат світу?
– ІВМ забезпечував перебування в Канаді, а дорогу фінансував Університет. Звісно, потребуємо спонсорів. Наприклад, коли летіли до Канади, то мусили вибирати такі рейси, щоб вкластися в суми (через обмеження у фінансах). А специфіка така, що, наприклад, авіарейси в Калгарі (Канада) є не щодня і довелося прибувати на день раніше та залишатися ще на два дні після змагань за свої кошти, щоб летіти тими авіарейсами, на які нам дозволяло фінансування. Звичайно, якби була краща фінансова підтримка, було б набагато простіше.
– Успіхів вам і нових досягнень у вашій діяльності та підтримки рідних стін у популяризації в Україні спортивного програмування!

Розмову вів
Олександр Лавринович

Категорія: №6, жовтень 2008 р.