Как стать автором
Обновить
519.79
Рейтинг
Яндекс
Как мы делаем Яндекс

Что нового у беспилотников: второй митап и советы по тестовой задаче

Блог компании Яндекс Алгоритмы *Машинное обучение *Конференции Будущее здесь
Привет! Меня зовут Кирилл Данилюк, я руковожу группой компьютерного зрения в проекте беспилотных автомобилей Яндекса. Снаружи может показаться, что беспилотные автомобили — закрытый проект, участники которого мало делятся с внешним миром своим прогрессом. Это в некотором смысле верно: когда есть шанс совершить прорыв, ты больше погружён в работу, больше стремишься к результату (который, кстати, очень прост — машина едет сама и вызывается через приложение, как обычное такси).


Рома, руководитель службы обработки дорожной ситуации, рассказывает про предсказание

Однако разработчикам, дата-инженерам, специалистам по машинному обучению, очевидно, интересно, что же происходит под капотом, а нам интересно рассказывать именно про технические подробности техническим специалистам. Так мы решили сделать большой митап от разработчиков для разработчиков. Но это было ещё летом 2019 года, самое время повторить. 25 сентября второй митап, а в эти выходные (до 23:59 воскресенья) последняя возможность решить задачу, которая служит входным билетом. Я расскажу о программе митапа и дам советы по задаче.

Придумывая концепцию первого митапа, я вдохновлялся форматом Yandex.Taxi Data Driven, в котором дважды участвовал сам. Не нужно ничего упрощать: аудитория релевантная, с ней можно говорить на одном языке. Формат подразумевает, что для регистрации надо решить одну или несколько задач и кейсов, без их решения попасть на встречу не получится. Тем самым состав участников выходит очень достойный, люди замотивированы, вовлечёны — и сами от этого выигрывают: им можно рассказать гораздо больше, чем произвольному человеку с улицы, со скуки пришедшему на встречу. Поэтому участники и услышат больше, а любой кулуарный разговор будет полезным и интересным.

Мы поступили так же: придумали тестовую задачу про RANSAC своими руками. Андрей, автор задачи, делал подробный разбор на Хабре, её по-прежнему можно пробовать решать в Яндекс.Контесте. Получилась продуктивная встреча со множеством активностей на целый день. Мы рассказали участникам про челленджи проекта, инфраструктурные задачи, вживую в инженерном центре (а попросту цехе) показали, из чего состоят embedded-системы беспилотника, как происходит сборка автомобилей и сенсор-бокса, группами покатали людей по городу на беспилотниках. Мы получили много позитивных отзывов, средний балл митапа по опросу — 8,98 из 10.

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

image
Руководитель проекта Дима Полищук рассказывает о наших челленджах

За два года со дня предыдущего митапа мы сильно продвинулись: помимо улучшения основной беспилотной технологии разработали свои сенсоры, камеры и лидары, запустили разработку роботов-доставщиков, стали намного активнее использовать симулированные проезды, значительно лучше «понимать» окружающий нас мир и намерения агентов внутри него. В начале я писал про достижение результата, создание продукта для людей. Это уже не за горами: например, на днях беспилотное такси заработало в тестовом режиме в Ясенево. Прогресс очень существенный, и нам есть что рассказать. Поэтому мы готовим второй беспилотный митап в прежнем формате. Он пройдёт 25 сентября на том же месте, в нашем цехе в Москве, где мы собираем и готовим машины.

Темы


Чтобы понять охват тем митапа, нужно сделать небольшое отступление и рассказать, как устроена вся технология беспилотного движения.

image

Для езды мы используем классический робототехнический пайплайн, который был ещё известен во времена, когда Себастьян Трун писал Probabilistic Robotics. Робот действует так:

  • Сначала определяет своё положение в мире и строит карту окружения. В нашем случае SLAM работает в облаках, а карта поставляется на беспилотники уже посчитанной — что не отменяет необходимости локализации и работы байесовских фильтров для объединения нескольких методов локализации.
  • Затем находит интересные объекты (автомобили, пешеходов и так далее), определяет и предсказывает их траектории и скорости.
  • После чего строит оптимальную траекторию и считает скорость своего движения.

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

Доклады


Про локализацию


Как развидеть очевидное: повышение надёжности локализации. Без понимания с точностью до сантиметра, где на карте беспилотный автомобиль находится в каждый момент времени, вся остальная задача движения лишена смысла. На прошлом митапе ребята из команды локализации уже рассказывали о подходе к решению этой задачи. На этот раз Миша сфокусируется на теме надёжности и обновления локализации: это тяжёлый по памяти и вычислениям процесс, который, тем не менее, должен работать безошибочно. Любые неточности начнут сдвигать карту, делая её бесполезной.

В предыдущих сериях: можно посмотреть, как руководитель группы AI–сервисов для картографии Виктор Юрченко рассказывает о задаче локализации:

Про детекцию


Как беспилотный автомобиль распознаёт и отслеживает объекты в окружающем его мире: рассказ от Андрея и Миши из команды персепшена. Мы создаём технологию распознавания дорожных объектов: автомобилей, пешеходов, светофоров, дорожных знаков и конусов и так далее. Андрей и Миша поговорят про детекцию динамических объектов (в первую очередь, машин всех форм и размеров, а также пешеходов) с использованием нейросетевых моделей.

Ребята расскажут, как мы решаем проблему объединения нескольких сенсорных модальностей (лидаров и камер) внутри одной большой модели multi-task learning — чтобы получить единые, более точные предсказания типа, размера, координат и других свойств объектов в 3D-мире. Также поговорим о задаче улучшения точности трекинга объектов и наших подходах к трекингу.

В предыдущих сериях: есть общий, но уже немного не актуальный доклад про распознавание объектов от команды персепшена.

Про предсказание


Как и зачем беспилотные автомобили предсказывают будущее: доклад от Бори hr0nix, пришедшего в проект из команды Алисы и создавшего технологию нейросетевого предсказания поведения агентов. Предсказание движения — одна из сложных и пока не до конца решённых задач беспилотных технологий. В ней используются рекуррентные модели, а также архитектуры, пришедшие из обработки естественного языка. Команда Бори успешно решает задачу предсказания. Одна из их разработок, PRANK: motion Prediction based on RANKing, была опубликована на одной из топовых конференций по машинному обучению — NeurIPS 2020.

В предыдущих сериях: Антон рассказывает о сенсорах, о том, как с их помощью беспилотник видит мир, а также о задаче предсказания действий других агентов на дороге:

Про симулятор


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

Глеб и Артур из команды инфраструктуры объяснят, почему проезды в симуляторе, а не только в реальном мире, становятся всё более важными с ростом качества технологии и как мы продвинулись в разработке реалистичных ботов: автомобильных и пешеходных.

image
Паша, руководитель продукта, рассказывает о симуляторе на первом митапе два года назад

Задача — входной билет на митап


Найдите пару часов на сабмит решения: нам важно проверить технический уровень участников. Нужно написать алгоритм планирования движения одного или нескольких роботов–доставщиков. Наше коридорное тестирование показало, что для первого успешного сабмита требуется один-два часа. Поделюсь несколькими советами по решению:

  • Прочитав условие, можно подумать, что задача сложная. На самом деле базовое работающее решение можно получить очень быстро, используя классические алгоритмы. Попробуйте ровно так и сделать — мы не ждём, что вы под эту задачу придумаете новый алгоритм планирования движения.
  • Чем больше тест-кейсов решение пройдёт, тем лучше, но прохождение всех тест-кейсов не является обязательным: пройдите хотя бы один тест с базовым решением на классических алгоритмах. Не ставьте себе целью решить задачу сразу и целиком.
  • Попробуйте начать с планирования движения только одного робота, и если чувствуете в себе силы, можете увеличивать их число.

Зарегистрироваться на митап можно здесь. Пишите вопросы по задаче в комментариях, я и команда постараемся на них ответить. Удачи!
Теги:
Хабы:
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 1.9K
Комментарии Комментарии 1

Информация

Дата основания
Местоположение
Россия
Сайт
www.yandex.ru
Численность
свыше 10 000 человек
Дата регистрации