Hero background image
Эффективная разработка сред симуляции для обучения автономных машин

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

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

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

Что заставляет автономные машины думать?

Как и людям, автономным машинам нужен «мозг»: это и есть автономная система, которая включает в себя четыре основных сегмента:

Контроль: Управление. Эта часть отвечает за действия, которые нужно выполнять машине, например, торможение, ускорение и повороты.

Планирование: Планирование. Эта часть отвечает за навигацию машины, обгоны и уклонение от препятствий.

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

  • компьютерное зрение, если используются камеры;
  • лидары (световые дальномеры);
  • радары.

И затем посредством процесса под названием «слияние датчиков», собранная информация сводится в формат, который машина сможет понять.

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

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

Как собрать все необходимые данные? Машинное обучение лежит в основе автономных автомобилей, и эта система очень требовательна к данным. Для обучения автономного автомобиля необходимы огромные объемы данных. Как сделать это экономически эффективно и точно?

Как машина поймет, что это за данные? Недостаточно просто собрать данные, нужно убедиться, что автомобиль понимает, что это за данные - он не может просто увидеть объект, он должен понять, является ли этот объект деревом, дорогой, человеком и так далее.

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

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

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

Диаграмма, показывающая среду моделирования
Что такое среда симуляции?

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

Динамика автомобиля. Как машина ведет себя физически, например, как воспроизводится сцепление с асфальтом.

Окружающая среда: Эта часть включает в себя три подкатегории:

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

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

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

Диаграмма развития среды
Unity: идеальный выбор для разработки сред симуляции

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

Unity - это ведущая мировая платформа для 3D-рендеринга в реальном времени, предназначенная для разработки игр и другого интерактивного контента. Это проверенная, полнофункциональная платформа, на которой работают миллионы мультиплатформенных игр и приложений. Кроме того, он обладает уникальными преимуществами магазина Asset Store (подробнее см. ниже) и огромного сообщества межотраслевых разработчиков и создателей.

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

Гибкость сценариев: Команды могут адаптировать Unity к своим рабочим процессам с помощью мощной системы сценариев на C# и всеобъемлющего API. Для любителей собственных решений предоставляется доступ к исходному коду C++.

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

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

Высококачественная графика: Scriptable Render Pipeline, или SRP, позволяет кодировать ядро цикла рендеринга на C#, что дает гораздо больше возможностей для настройки отрисовки сцены в соответствии с ее содержимым.

Существует два SRP: High-Definition Render Pipeline (HDRP) обеспечивает визуальное качество мирового уровня на высокопроизводительном оборудовании, а Universal Render Pipeline (URP) поддерживает отзывчивую производительность при масштабировании для мобильных устройств.

ПоддержкаVR и AR (плюс развертывание на 25 других платформах). Благодаря расширенной поддержке платформ Unity используется разработчиками ААА-игр, лучшими креативными агентствами, кинокомпаниями и исследовательскими группами в автомобилестроении, космической и иных отраслях для создания иммерсивных приложений.

Продвинутые инструменты художника и дизайнера: Unity включает в себя инструменты для проектирования 3D-сцен, создания сюжетов и кинематографа, освещения и спецэффектов, аудиосистему, а также мощную систему анимации допинга.

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

The Asset Store:Магазин активов предоставляет вам доступ к крупнейшему рынку готовых активов и инструментов производительности, включая огромный выбор для создания окружений, что позволяет сэкономить время разработки.

Автономное путешествие BMW
Путешествие BMW в автономное вождение

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

Почти 95 % всех тестовых километров автономного вождения BMW пройдены виртуальными автомобилями в виртуальных мирах.

Прочитайте серию наших блогов, чтобы узнать больше.

Unity для автомобильной промышленности
Unity для автомобильной промышленности

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