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

Инженеры из Швейцарии разработали автопилот для дронов, который способен управлять ими на высокой скорости при полетах в незнакомом окружении, выбирая безопасный маршрут для маневрирования между множеством препятствий. Для
этого они использовали методы машинного обучения, натренировав нейросетевой
агент находить оптимальные траектории для движения, используя только информацию о скорости,
положении в пространстве и изображения от бортовых 3D-камер дрона. Для
демонстрации возможностей алгоритма в реальных условиях, дрон испытали в различных окружениях. Например, автопилот продемонстрировал способность управлять
квадрокоптером со скоростью от 3 до 7 метров в секунду в лесу, избегая
столкновений с деревьями и их ветвями, а также пролетать через узкие проемы на
высокой скорости. При этом алгоритм не требует больших вычислительных ресурсов и ему
достаточно возможностей бортового компьютера дрона. Статья опубликована в журнале Science Robotics.

Современные квадрокоптеры обладают чрезвычайно высокой
маневренностью и подвижностью. Они способны быстро менять направление движения,
резко ускоряться и замедляться, совершать перевороты в воздухе и двигаться на
высокой скорости. Это делает их пилотирование, особенно в окружении большого
числа препятствий, непростой задачей и требует длительной подготовки
пилотов.

Инженеры давно работают над созданием автопилота, способного
управлять мультикоптерами на уровне профессиональных пилотов в условиях неизвестного окружения
с большим числом препятствий. Это позволило бы снизить степень человеческого
участия в управлении дронами и расширить спектр задач, выполняемых ими в полностью
автономном режиме.

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

Инженеры из Цюрихского университета под руководством
Давиде Скарамузза (Davide
Scaramuzza)
разработали алгоритм автопилота, который соответствует перечисленным
требованиям и способен управлять дроном на высокой скорости в незнакомом окружении,
содержащем большое количество препятствий сложной формы.

Расположение 3D камер и бортового компьютера на корпусе квадрокоптера

Для экспериментов инженеры построили квадрокоптер
весом 890 граммов с коэффициентом тяговооруженности 4,4. По характеристикам
получившаяся платформа сопоставима с гоночными дронами, которые используются
профессиональными пилотами в соревнованиях. В качестве главного бортового
компьютера используется NVIDIA
Jetson TX2, графический модуль которого
используется для нейросетевых расчетов, а центральный процессор осуществляет
управление дроном, посылая команды на полетный контроллер. Для получения
информации об окружающем мире используются две камеры глубины Intel RealSense, которые позволяют получать информацию о глубине изображения, а следовательно оценивать расстояния до объектов в поле зрения.

Вместо того чтобы разделять задачу поиска оптимальной
траектории полета на отдельные подзадачи распознавания и планирования маршрута,
разработчики применили сквозной подход. Нейросетевой сенсомоторный агент
напрямую переводит изображения со стереокамер размерностью 640 на 480 точек, а
также информацию о скорости и положении дрона в пространстве в оптимальные траектории
движения в выбранном направлении, которые затем преобразуются в команды для
полетного компьютера и сигналы для роторов дрона. Такой подход позволяет значительно снизить временные задержки
при вычислении маршрута.

Для обучения сенсомоторного агента разработчики
применили имитационное обучение, которое осуществляется с помощью эксперта —
алгоритма, обладающего полной информацией об окружении и состоянии дрона и
генерирующего наборы оптимальных траекторий, огибающих препятствия на выбранном
направлении движения с помощью алгоритма семплирования Метрополиса-Гастингса. Так
как в реальном мире невозможно получить весь объем информации о состоянии окружения, тренировки и последующее
тестирование производилось в симуляторе для квадрокоптеров Flightmare, а модели окружения
создавались из ассетов игрового движка Unity.

Эксперименты в различном тестовом окружении в симуляторе, слева графики зависимости процента успешных испытаний от скорости полета для нового алгоритма и двух других алгоритмов автоматического управления полетом для сравнения

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

В дальнейшем, обученный алгоритм перенесли без каких-либо
изменений и испытали на настоящем дроне в условиях реального леса и
индустриальных пейзажей. Дрон с новым автопилотом подтвердил возможность
перемещаться на высокой скорости от 3 до 10 метров в секунду через пространство
с множеством внезапно возникающих препятствий. Так, например, дрон под
управлением автопилота продемонстрировал способность уворачиваться в полете от
внезапно появляющихся на его пути ветвей деревьев. На скоростях до 5 метров в
секунду дрон прошел все испытания без единого столкновения, а с увеличением
скорости до 10 метров в секунду возрастало число ошибок, но количество успешных
испытаний, когда дрон без столкновений достигал заданной точки, превосходило
случаи, в которых происходили столкновения.

В одном из экспериментов тестовый дрон должен был вылететь
из ангара на максимальной скорости через узкую щель в дверях. Коммерческий квадрокоптер,
перемещающийся с максимальной скоростью 2,7 метров в секунду в двух испытаниях останавливался перед дверьми,
считая, что окно выхода слишком мало, а в третьем испытании столкнулся со стеной,
тогда как дрон с тестируемым автопилотом успешно пролетел через узкий выход во
всех шести испытаниях со скоростью от 3 до 5 метров в секунду.

В будущем разработчики планируют продолжить работу над
улучшением алгоритма автопилота для управления полетом на скоростях свыше 10 метров в
секунду.

Стереоизображения для автономного распознавания препятствий  на пути беспилотника в полете ранее также использовали американские инженеры из Массачусетского технологического института. Они разработали алгоритм, который по изображению с двух камер, установленных на крыльях дрона, позволяет вовремя распознавать опасность столкновения с препятствием и уходить от него на скорости до 50 километров в час

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

Андрей Фокин

Источник: nplus1.ru

0 0 голоса
Рейтинг статьи

Опубликовано: 15.10.2021 в 22:45

Автор:

Категории: Наука и технологии

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии