Китайские инженеры научили рой дронов передвигаться по лесу и продемонстрировали это на примере полета в зарослях бамбука. Беспилотники постоянно обмениваются информацией и летят как единый отряд, но при этом могут немного отклоняться от общей траектории, если на пути оказалось препятствие. Статья опубликована в Science Robotics.
Небольшие мультикоптеры ценны сами по себе, но если объединить их в рой, с помощью него можно быстро и эффективно решать разные задачи на большой территории. Особенно роями дронов интересуются военные, которые уже испытывают их для разведки. Часто отряды из нескольких дронов (или даже нескольких десятков) предлагают использовать в зданиях или в местах с множеством препятствий. Работа даже одного дрона в таких условиях не так проста и требует развитых алгоритмов для отслеживания объектов и перепланирования траектории «на лету», а в случае с роем к этим трудностям добавляется как вероятность столкновения дронов друг с другом, так и то, что они должны отклоняться от общей траектории, но при этом не выбиваться слишком далеко из группы.
Группа китайских инженеров, которую возглавили Чао Сюй (Chao Xu) и Фэй Гао (Fei Gao) из Чжэцзянского университета, разработала новый дрон и метод, позволяющий сразу нескольким таким аппаратам эффективно летать в качестве роя. Алгоритм получает от пользователя цель или последовательность целей и планирует траекторию так, чтобы перемещаться в сторону текущей цели. Помимо цели в виде местоположения у алгоритма есть другие цели, такие как наименьшие время полета и отклонения от заданных маршрута и формы роя, а также ограничения, такие как возникающие на пути препятствия. Разработанный авторами алгоритм рассматривает эти цели и ограничения как набор штрафов, и его задача заключается в построении такой траектории, чтобы минимизировать их. При этом вес каждого параметра может быть разным, например, у препятствий он максимальный, потому что столкновение с ними, скорее всего, приведет к концу полета.
Во время полета дроны используют визуально-инерциальную навигацию, то есть используют данные с камеры и блока с акселерометром и гироскопом. Кроме того, они в реальном времени строят 3D-карту местности. Поскольку рой состоит из сразу нескольких дронов, не использующих GPS, в их навигационных показаниях могут накапливаться ошибки, которые могут привести к столкновению. Чтобы избежать этого, а также поддерживать заданную форму роя, инженеры встроили в дрон UWB-приемопередатчики, дающие дронам относительно точные данные о взаимном расположении.
Примечательно, что авторы создали свой дрон. Он построен по конструкции квадрокоптера и оснащен мощной электроникой: компьютером NVIDIA Xavier NX, камерой глубины Intel RealSense D430 и полетный контроллер PX4 autopilot. Масса дрона составляет 300 грамм, а его аккумулятора хватает на 11 минут полета.
Инженеры показали несколько роликов, в которых 10 дронов без предварительной карты и GPS-сигналов перемещаются по лесу, огибая препятствия и при этом глобально сохраняя структуру роя. Также они продемонстрировали, как дроны могут справляться с подвижными препятствиями и следовать за человеком.
Рои дронов могут пригодиться в самых разных ситуациях. Например, мы рассказывали о том, как их использовали в качестве распределенного набора датчиков, который помог найти место утечки газа.
Григорий Копиев
Он показал лучшее время на трассе, обойдя соперников на полсекунды
Инженеры разработали автопилот для гоночного дрона, управляющий беспилотником на уровне лучших людей-пилотов. Алгоритм под названием Swift, полученный с помощью метода обучения с подкреплением, способен управлять гоночным квадрокоптером, полагаясь только на данные бортовых сенсоров. В реальных полетах на тестовой трассе для дрон-рейсинга Swift смог превзойти трех профессиональных пилотов-чемпионов, выиграв у них 15 гонок из 25 и пройдя трассу с минимальным временем, которое на полсекунды меньше лучшего результата пилота-человека. Статья опубликована в журнале Nature. При поддержке Angie — первого российского веб-сервера Дрон-рейсинг — вид спорта, в котором мультикоптеры на высокой скорости проходят трассу, состоящую из последовательности ворот, через которые нужно пролететь за минимально возможное время. При этом управление происходит от первого лица, с помощью камеры и видеоочков. Современные дроны обладают очень высокой маневренностью и подвижностью: они могут резко менять направление движения, ускоряться, замедляться и совершать перевороты, а во время гонки они разгоняются до скоростей свыше 100 километров в час и подвержены перегрузкам, превышающим их собственный вес в пять раз. Это делает их пилотирование непростой задачей и требует хорошей подготовки и высокой скорости реакции оператора. Инженеры давно работают над созданием автопилота, который мог бы управлять дроном на уровне профессиональных пилотов. Помимо участия в дрон-рейсинге такая способность может пригодиться и в обычной жизни — мультикоптеры обладают невысокой энергоэффективностью, поэтому способность быстро летать и успешно маневрировать в окружении большого числа препятствий напрямую связана с успешностью выполнения задач. Инженеры под руководством Давида Скарамузза (Davide Scaramuzza) из Цюрихского университета уже имеют опыт разработки эффективных алгоритмов управления для дронов. К примеру, ранее они создали автопилот, способный управлять квадрокоптером на скорости от 3 до 7 метров в секунду в лесу между деревьев, полагаясь только на данные с бортовых сенсоров. В своей новой работе инженеры представили алгоритм под названием Swift. Он способен эффективно управлять гоночным квадрокоптером на уровне профессионального пилота дрон-рейсинга. Swift состоит из двух основных модулей: системы восприятия, которая переводит изображение от бортовой камеры дрона и данные от инерционного измерительного блока IMU в низкоразмерное представление, а также системы управления, которая принимает на вход низкоразмерное представление, созданное системой восприятия, и генерирует управляющие команды для электромоторов дрона. В модуль системы восприятия также входит алгоритм, вычисляющий текущее положение дрона в пространстве на основе данных камеры и инерционно-измерительного блока. Эта информация через фильтр Калмана объединяется с данными об относительном положении гоночных ворот, обнаруженных предварительно обученным нейросетевым детектором объектов в видеопотоке, после чего передается на вход системы управления, которая состоит из двух скрытых слоев, по 128 нейронов в каждом. Система управления тренировалась в симуляции с использованием модельно-свободного глубокого обучения с подкреплением. Этот метод обучения использует метод проб и ошибок, чтобы максимизировать величину параметра вознаграждения. В данном случае вознаграждение было максимальным в случае, если дрон следовал в сторону центра ближайших ворот таким образом, чтобы следующие ворота оставались в поле зрения камеры. Чтобы учесть различия между симуляцией и реальной динамикой полета, в процессе обучения информацию симулятора дополнили данными из реального мира, записанными с помощью системы захвата движений. Оценку автопилота провели на трассе для дрон-рейсинга, состоящей из семи ворот, установленных на квадратной площадке с длиной стороны 30 метров. Длина маршрута через все ворота составляла 75 метров. Алгоритм соревновался с тремя профессиональными пилотами Алексом Вановером (Alex Vanover), Томасом Битматтой (Thomas Bitmatta) и Марвином Шэппером (Marvin Schaepper). Все участники использовали гоночные дроны с одинаковыми характеристиками. Перед испытательными соревнованиями у пилотов была неделя для знакомства с трассой. В соревнованиях каждый из пилотов стартовал одновременно с дроном под управлением автопилота. Победителем становился тот, кто быстрее пролетит через все ворота на трассе в правильном порядке три раза. По результатам Swift смог выиграть у своих соперников в совокупности 15 гонок из 25, а также установил рекорд трассы, пролетев ее быстрее на полсекунды, чем остальные участники. https://www.youtube.com/watch?v=fBiataDpGIo&t=1s Инженеры разрабатывают гоночные автопилоты и для автомобилей. Например, инженеры из подразделения искусственного интеллекта компании Sony создали алгоритм автопилота GT Sophy, который с помощью обучения с подкреплением научился проходить за минимальное время трассы в гоночном автосимуляторе Gran Turismo Sport. В настоящих киберспортивных соревнованиях GT Sophy не только показала лучшее время в одиночных заездах, но и смогла победить команду лучших игроков в совместных гонках, набрав больше всего очков.