Page tree
Skip to end of metadata
Go to start of metadata

Декомпозиция задач

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

Беспилотный автомобиль – это суперкомпьютер на колесах, осуществляющий обработку в реальном масштабе времени данных от десятков сенсоров: лазерных дальномеров, радаров, камер, инерциальных датчиков, спутниковых навигационных систем и т.д.

Именно поэтому победителями конкурсов в области создания беспилотных автомобилей за рубежом становились команды ВУЗов, занимающих лидирующие позиции в области компьютерных наук (Stanford University, Carnegie Mellon, MIT). 

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


Рисунок 1 – Пример декомпозиции задач


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

Внешняя (по отношению к бортовой системе управления автомобиля) инфраструктура:

  1. Создание геоинформационных баз данных для планирования маршрутного задания
  2. Создание человеко-машинных интерфейсов (ЧМИ), позволяющих формировать маршрутное задание с применением имеющейся геодезической и картографической информации

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

  1. Автоматическое формирование глобального маршрутного задания на основе запросов от ЧМИ и имеющейся геодезической и картографической информации
  2. Обработка и комплексирование данных от сенсоров бортовой системы технического зрения
  3. Обработка и комплексирование данных от бортовых навигационных систем
  4. Обнаружение и распознавание объектов дорожной инфраструктуры и участников дорожного движения
  5. Синтез локальной оперативной модели проходимости внешней среды
  6. Синтез локальной траектории движения на базе имеющейся локальной оперативной модели проходимости и глобального маршрутного задания
  7. Управление агрегатами автомобиля с целью отработки синтезированной локальной траектории движения
  8. Техническая диагностика и регистрация данных подсистем автомобиля

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

Ниже приводится краткий обзор задач в рамках предложенных условных групп.  

Создание геоинформационных баз данных для планирования маршрутного задания

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

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

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

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

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

Создание человеко-машинных интерфейсов для управления беспилотным автомобилем

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

В этой связи задача создания эффективных человеко-машинных интерфейсов (ЧМИ) является актуальной и для беспилотных автомобилей.

Технологии, применимые для создания ЧМИ управления конкретным беспилотным автомобилем, очевидно, зависят от области его применения. ЧМИ для беспилотных такси или личного беспилотного транспотрта может быть построен на основе голосовых интерфейсов ("OK, Google... "), систем дополненной реальности и прочих мультимедийных технологий. ЧМИ для управления беспилотными грузоперевозками должен включать в себя элементы экспертных систем и систем поддержки принятия решений, позволяющих оператору эффективно решать задачи логистики.   

Автоматическое формирование глобального маршрутного задания на основе запросов от ЧМИ и имеющейся геодезической и картографической информации  

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

Задача планирования глобального маршрута достаточно успешно решается в современных автомобильных навигаторах и зачастую сводится к задаче планирования оптимального (в терминах тех или иных критериев, например, длины маршрута) пути на графе дорожной сети. В настоящее время известно множество алгоритмов решения задачи поиска кратчайшего пути на графе. Некоторые из них, например алгоритм Дейкстры, наверняка встречались читателю в процессе обучения в ВУЗе.

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

Обработка и комплексирование данных от сенсоров бортовой системы технического зрения  

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

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

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

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

Рисунок 2 – Пример системы технического зрения современного беспилотного автомобиля

Каждый из перечисленных типов датчиков, аналогично датчикам изображения, имеет собственные достоинства и ограничения в контексте задач технического зрения беспилотного автомобиля:

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

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

Рисунок 3 – Пример работы алгоритма предобработки, позволяющего "вытаскивать" детали видеоизображения, снятого в неблагоприятных погодных условиях

Рисунок 4 – Пример работы алгоритма комплексирования дальнометрических данных от лидара и данных от камеры в задаче обнаружения препятствий [ссылка на ресурс]

Обработка и комплексирование данных от бортовых навигационных систем

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

  • инерциальная навигационная система (включают в себя комплект гироскопов и акселерометров, иногда магнетометр);
  • спутниковая навигационная система;  
  • датчики скорости вращения колес и выходного вала двигателя (одометрические датчики);
  • система визуальной одометрии.

Такое "обилие" навигационных датчиков также связано с присущими каждому из них ограничениями. Известно, что применение спутниковой навигации может быть ограничено в условиях отсутствия "прямой видимости" нужного количества спутников (например, в условиях плотной высотной городской застройки или в тоннеле). Измерение приращений пути по датчикам частоты вращения колес может иметь существенные ошибки в условиях пробуксовок и проскальзывания колес. Для инерциальных навигационных систем свойственна проблема накопления ошибки измерения углов ориентации объекта во времени, связанная с таким явлением, как дрейф и нестабильность нуля гироскопов. Метод визуальной одометрии базируется на обработке видеоизображения от камер, и в этой связи также имеет ряд ограничений: навигационная информация может быть рассчитана некорректно в случае перекрытия большей части кадра изображения движущимся объектом; точность получаемой навигационной информации падает на слабоконтрастных сценах (например, сплошная заснеженная равнина); получение навигационной информации может быть невозможно в условиях плохой видимости (густой туман, дым).

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

Обнаружение и распознавание объектов дорожной инфраструктуры и участников дорожного движения 

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

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

Перечисленные задачи в известной степени решаются системами активной и пассивной безопасности современных автомобилей, также известными как системы помощи водителю (Advanced Driver-Assistance system, ADAS). Технические требования, а также методики испытаний для некоторых функций подобных систем регламинтируются международными стандартами (см., например, ISO 17361:2017).

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

Синтез локальной оперативной модели проходимости внешней среды

Моделью проходимости внешней среды в контексте рассматриваемой задачи будем называть двухмерную дискретную карту, каждому элементу которой ставится в соответствие вектор признаков, определяющих свойства проходимости участка среды, соответствующего данному участку карты. Вектор признаков в общем случае может включать в себя как бинарные признакаки (проходимый/непроходимый), так и количественные признаки (оценка "трудности" преодаления участка, координаты вектора нормали и т.п.). Говоря о локальной оперативной модели проходимости, будем иметь ввиду тот факт, что данная модель строится на основе информации, получаемой от бортовых сенсоров технического зрения в реальном масштабе времени. В отличие от априорной глобальной геопространственной модели, содержащей картографическую информацию, результаты дистанционного зондирования поверхности Земли и т.п., локальная оперативная модель проходимости содержит информацию не только о статических, но и о подвижных объектах (участники дорожного движения, пешеходы), а также объектах, отсутствующих в глобальной модели ввиду значительно меньшего масштаба и низкого темпа обновления данных. Пример синтезированной локальной оперативной модели проходимости показан на рисунке 5.

Рисунок 5 – Пример локальной оперативной модели внешней среды (зеленым цветом показаны проходимые участки, красным – непроходимые) 

Синтез локальной траектории движения на базе имеющейся локальной оперативной модели проходимости и глобального маршрутного задания

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

При планировании локальной траектории такой объект управления как автомобиль уже не может рассматриваться как материальная точка (в отличие от уровня глобального планирования), ввиду присущих ему кинематических ограничений (автомобиль не может выполнить разворот на месте , не может двигаться вдоль своей поперечной оси) и динамических характеристик. В этой связи современные подходы к решению задачи планирования локальной траектории движения беспилотных автомобилей связывают с алгоритмами поиска пути в пространстве состояний, базирующихся на таком подходе, как случайный семплинг. Наиболее распространенным представителем данного класса алгоритмов является алгоритм RRT (англ. Rapidly-exploring random tree) и его модификации. Для учета кинематических ограничений, присущих автомобилю с Аккермановским принципом рулевого управления, в алгоритмах типа RRT планирование траектории осуществляется в пространстве кривых с ограниченным снизу постоянным радиусом кривизны (кривые Дьюбинса, Рида-Шеппа).

Рисунок 6 - Пример работы алгоритма планирования локальных траекторий в задаче упрвления беспилотным автомобилем  [ссылка на источник]

Управление агрегатами автомобиля с целью отработки синтезированной локальной траектории движения

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

  • система рулевого управления (воздействие на рулевое колесо);
  • тормозная система (воздействие на педаль тормоза);
  • система управления акселератором (воздействие на педаль подачи топлива);
  • селектор коробки переключения передач (переключение рукоятки P-R-N-D).

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


 

Рисунок 7 – Пример комплекта актуаторов для воздействия на органы управления автомобиля (рулевое колесо, педали)

Современные автомобили оснащаются активными системами безопасности и помощи водителю, непосредственно влияющими на процесс управления автомобилем (в качестве примера можно привести функции адаптивного круиз-контроля, удержания в полосе движения, электронного парковщика и т.п.). Для обеспечения работы таких систем в современных автомобилях в той или иной степени реализуются функции электронного управления агрегатами (в англоязычной литературе данный класс технологий носит название drive-by-wire). В этой связи превращение современного коммерческого автомобиля в беспилотное транспортное средство – значительно более простая задача:

  • задача автоматизации рулевого управления решается разработкой и установкой имитатора сигнала датчика усилия, прикладываемого водителем к рулевому колесу, с использованием обратной связи от датчика положения руля; поворот рулевого колеса осуществляется электро-механическим усилителем рулевого управления (ЭМУР);
  • задача автоматизации управления акселератором решается разработкой и установкой имитатора сигнала датчика нажатия педали акселератора (в современных автомобилях реализована функция "электронной педали" акселератора).

Наиболее сложной является задача управления тормозной системой. В этой связи наиболее часто беспилотные автомобили создаются на базе гибридных серийных моделей, в которых тормозное усилие задается гидравлическим блоком с электронным управлением.

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

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

Помимо управления перечисленными агрегатами автомобиля, актуальной является задача управления дополнительным оборудованием: светотехникой, подачей звукового сигнала, системой очистки лобового стекла. Хорошая новость состоит в том, что в современных автомобилях реализовано цифровое управление данными устройствами посредством шины CAN. Плохая новость – протоколы управления известны далеко не всегда.

Техническая диагностика и регистрация данных подсистем автомобиля

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

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

       


 

 

  • No labels