Планирование траектории как задача генерации изображений с помощью нейросетевых моделейPathPlanningasImageGeneration

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Компания НИУ ВШЭ
Учебный семестр Осень 2018
Учебный курс  ?-й курс
Максимальное количество студентов, выбравших проект: ?



Что это за проект?


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


Обычно такая задача решается с помощью методов эвристического поиска – карта представляется в виде графа, и поиск на нём осуществляется алгоритмами семейства A* (один из классических алгоритмов ИИ). Результат проиллюстрирован на картинке ниже.


В этом проекте мы попробуем посмотреть на задачу планирования траектории, как на задачу генерации изображений. То есть мы не будем строить граф и искать на нём путь, а будем «подсвечивать» нужные пиксели (те, которые входят в путь) на картинке, изображающей карту местности.

Чему научатся студенты? Что самое интересное в проекте?


Самое интересное в проекте те, что задачу в такой постановке пока никто успешно не решил, и, если у студентов получится представить качественное решение (превосходящее аналоги по различным метрикам), то это будет новый научный результат. Его можно будет оформить в виде статьи, представить на конференции по машинному обучению.
Соответственно, студенты приобретут навыки решения challenging задач и представления результатов их решения.
Организация работы (Как студенты будут работать в команде?)

У проекта будет студенческий куратор (4й курс ПМИ ФКН), который сам недавно проходил через проектную работу и понимает, как правильно и эффективно её организовать. Предполагается, что команда будет компактная (не более 3-4 человек) и каждый будет делать свою часть, не дублируя работу других участников.

Компоненты (Из каких частей состоит проект?)

У проекта 3 основные компоненты: научно-исследовательская, программно-инженерная и командно-проектная.

  • Научно-исследовательская компонента подразумевает изучение литературы по проблеме (статьи по классическим методам планирования, статьи по нейросетевым моделям, которые могут быть нам полезными), декомпозицию исходной задачи на ряд подзадач (скорее всего нужно научиться сначала решать небольшие фрагменты), разработку/адаптацию архитектур моделей под выделенные подзадачи.
  • Программно-инженерная компонента подразумевает создание ПО для проведения экспериментальных исследований (реализация архитектур, генерация данных и прочее).
  • Командно-проектная компонента подразумевает, что у нас всё-таки _командный_ проект и планы отдельного участника должны быть согласованы с общим видением проекта.

Какие будут использоваться технологии?

  • Разработка: Python/С++, библиотеки ML (по согласованию: tensorflow, torch/pytorch, caffe и пр.)
  • Среда разработки: по согласованию
  • Система контроля версий: Git (предполагается, что проект будет открытым и размещён на GitHub)

Какие начальные требования?

  • Интерес к задаче
  • Знание основ deep learning
  • Знание основ CNN
  • Умение программировать на C++/Python
  • Знакомство с ML библиотеками и фреймворками (tensorflow, torch/pyTorch, caffe и пр.)
  • Готовность работать в команде


Темы вводных занятий

О задаче планирования траектории, о классических методах её решения.

Критерии оценки

TBA

Контакты

Яковлев Константин kyakovlev@hse.ru