Моральная стойкость и умение не поддаваться панике. Что помогло команде из Подмосковья пробиться на мировой этап WRO?
На прошлой неделе отобраны участники сборной России, которая поедет на мировой этап WRO. Федеральные учебно-тренировочные сборы по олимпиадной робототехнике проводились в Университете Иннополис.
Десятиклассники из Подмосковья Андрей Пономарев и Александр Михненко набрали наибольшее количество очков за шесть дней серьезных испытаний: 30 баллов из 38 возможных, с большим отрывом от других прошедших тур команд. «Занимательная робототехника» узнала, как им удалось достичь такого результата.
Юные робототехники — ученики Московской школы программистов, которая занимается обучением по разным IT-профилям: 82 курса по языкам программирования (Go, C++, Python, Java, C#, Kotlin), финтеху, блокчейну, машинному обучению, интернету вещей.
Андрей Пономарев рассказывает, что на подготовку времени тратили много: по половине дня ежедневно в течение примерно двух месяцев. Он четвертый год занимается робототехникой, в составе команды — третий.
— В робототехнике мне очень нравится то, что написанная мною программа может не просто выполняться в памяти вычислительной машины, а по настоящему взаимодействовать с окружающим миром (перемещаться в пространстве, смотреть и осязать датчиками и даже брать что-нибудь в ручки). Основная особенность нашего робота в том, что он реально работает, именно поэтому мы в сборной. Хотя, конечно, многое еще предстоит улучшить. Одна из сильных сторон нашего робота — плавные и аккуратные движения. Заметная его слабость — медленное выполнение задания.
Тренер команды Московской школы программистов Максим Шепелев поясняет, что робот будет переделан буквально с нуля. Нужно уменьшить время процентов на 20-30%, а с текущей конструкцией, по его мнению, это вряд ли уже возможно.
— Идеи, как переделать робота, у ребят уже есть — ему нужно полностью изменить механизм захвата, — рассказывает Максим. — Пока это самый медленный процесс, нужно добиться более высокой скорости забора и выгрузки объектов. Ребята участвуют в основной старшей категории WRO, тема этого года — «Умные города», а задача называется «Умная сеть». Нужно продемонстрировать с помощью робота развертывание в умном городе сети нового поколения 5G. Конечно, это только легенда, на деле LEGO-робот перевозит LEGO-кубики. Звучит, может быть, просто, однако для образовательной робототехники в строгих рамках LEGO Mindstorms именно эта задача является очень сложной.
Сборы участникам команды понравились и запомнились.
— На сборах, в основном, давали решать дополнительные задания, — говорит второй участник команды Александр Михненко. — Было 2 дня, когда команды обменивались опытом, и еще 1, когда каждой команде помогал тренер категории. Самым сложным был последний день. В тот день полностью поменяли задание. На сборах все команды были высокого уровня, и каждая могла бы представлять Россию на мировом этапе WRO. За время сборов в нашей категории сложилась очень теплая атмосфера, за которую их хочется поблагодарить.
Тренер поясняет, что Александр и Андрей были ко многому готовы:
— Ни одно задание не смогло их полностью застать врасплох — даже когда роботу нужно было манипулировать обычно статичными объектами, или когда один из объектов вообще пришлось выкинуть через край поля. Хорошо организованный код был их главным оружием. Сила нашей команды в моральной стойкости, умении не поддаваться панике и сосредоточено работать. Главное — это трудолюбие. Очень много работать, не покладая рук. В последние недели перед российским этапом олимпиады и ФУТС (федеральными учебно-тренеровочными сборами) у нас были ежедневные 6-8 часовые занятия.
Он отмечает, что все команды России очень сильные, на международном этапе они традиционно бывают в лидерах, на уровне с Таиландом и Малайзией, которых действительно стоит опасаться.
Максим рассказывает, что робот, которого готовила команда, точно езди по линии и без, плавно разгоняется и тормозит, точно определяет цвета, сложно с механической и программной точки зрения манипулирование объектами.
— Касательно последнего — робот должен взять небольшой объект в одной части полигона и отвезти в другую, где ему необходимо установить его правильной стороной в рамку буквально на полсантиметра большую, чем сам объект. Самое сложное — не просто выполнить эту задачу, а добиться 100% повторяемости 100% выполнения задачи, что очень важно, если вы хотите поехать на мировой этап. При этом программный код должен быть организован так, чтобы за очень короткое время можно было преобразовать его в соответствии с дополнительным заданием, которое может вообще полностью изменить условия основной задачи.