Как мы в Яндексе учим автономные машины избегать аварий

Как мы в Яндексе учим автономные машины избегать аварий Представьте, что вы едете по дороге, и вдруг перед вами неожиданно выбегает ребёнок или резко останавливается машина. Такие ситуации случаются чаще, чем кажется: ежегодно на российских дорогах происходит более 150 тысяч ДТП, и большинство из них вызвано человеческими ошибками — невнимательностью, усталостью или медленной реакцией. По исследованиям Яков и Партнеры и Kept, большинство аварий случается именно из-за человеческого фактора. Но что если водитель — это искусственный интеллект? Как наши автономные автомобили учатся избегать аварий, и почему им можно доверять больше, чем человеку? Я Арслан Урташев, CTO автономного транспорта в Яндексе, расскажу вам о том, как много систем задействовано для безопасности автономных автомобилей.

Как мы в Яндексе учим автономные машины избегать аварий

Представьте, что вы едете по дороге, и вдруг перед вами неожиданно выбегает ребёнок или резко останавливается машина. Такие ситуации случаются чаще, чем кажется: ежегодно на российских дорогах происходит более 150 тысяч ДТП, и большинство из них вызвано человеческими ошибками — невнимательностью, усталостью или медленной реакцией. По исследованиям Яков и Партнеры и Kept, большинство аварий случается именно из-за человеческого фактора. Но что если водитель — это искусственный интеллект? Как наши автономные автомобили учатся избегать аварий, и почему им можно доверять больше, чем человеку? Я Арслан Урташев, CTO автономного транспорта в Яндексе, расскажу вам о том, как много систем задействовано для безопасности автономных автомобилей.

Как автономный транспорт «видит» дорогу

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

Лидары — это устройства, которые «ощупывают» окружающий мир с помощью невидимых лазерных лучей, чтобы точно определить расстояние до объектов. Автомобиль постоянно посылает вокруг многие тысячи лазерных импульсов, которые отражаются от машин, пешеходов, зданий и возвращаются обратно на датчик. Время, за которое луч вернётся, позволяет вычислить расстояние до объекта с точностью до миллиметра.

Яндекс

Машина оснащена лидарами так, чтобы сканировать окружающее пространство вокруг автомобиля десятки раз в секунду с обзором в 360 градусов, создавая трёхмерную картину окружающего мира и, в том числе, помогая машине определять собственное местоположение. В отличие от камеры, лидар не зависит от освещения — он одинаково хорошо «видит» как в яркий день, так и в полной темноте. Это особенно важно при движении ночью или в сложных погодных условиях.

Помимо лидаров, машина оснащена камерами и радарами. Вместе с лидаром они помогают отслеживать динамические объекты вокруг и их поведение, благодаря чему автомобиль принимает наиболее безопасные и точные решения о манёврах, не «угадывая», а точно зная положение каждого объекта в пространстве. Но об этом расскажу дальше.

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

Яндекс

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

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

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

Искусственный интеллект и обучение на симуляторе

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

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

Яндекс

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

В конечном счёте мы сделаем симуляцию полноценной платформой, на которой искусственный интеллект сможет безопасно адаптироваться к любым дорожным сценариям и достичь максимально возможного уровня безопасности. Мы стремимся использовать уникальный подход, основанный на «эффекте бабочки»: минимальные изменения поведения автомобиля в симуляторе будут приводить к возникновению множества новых и непредсказуемых сценариев. Например, минимальное изменение скорости автомобиля или небольшое смещение пешехода может вызвать принципиально новую дорожную ситуацию раз за разом. Мы уверены, что этот подход позволит создавать большое количество уникальных сценариев и значительно повысит качество и безопасность ИИ, обучая его справляться даже с самыми редкими и непредсказуемыми ситуациями. В индустрии этот подход называется fuzzy-тестированием.

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

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

Как ИИ принимает решения: алгоритмы и ML-модели

В основе нашей технологии автопилота лежат два важных компонента: Машинное обучение (ML-модели) — это нейронная сеть, которые отвечают за прогнозирование поведения других участников дорожного движения, а так же принимает решение о том, как необходимо действовать нам. ML-модель анализируют всю дорожную обстановку, чтобы предсказать, как поведёт себя другая машина или пешеход. Эта модель построена на архитектуре transformer, которая позволяет учитывать контекст ситуации на дороге и анализировать множество факторов одновременно. Аналогичная архитектура используется так же и в самых продвинутых системах в других областях, таких как генерация изображений или текста.

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

Архитектура transformer, которую мы применяем, работает по так называемому «механизму внимания» (attention). Он позволяет нейросети понимать, какие из объектов вокруг наиболее важны для принятия решения.

Например, автономная машина может видеть другой автомобиль, стоящий на парковке за забором, но при этом «механизм внимания» позволяет нейросети понять, что автомобиль на парковке менее важен для принятия решения, чем пешеход, переходящий дорогу. Этот механизм буквально позволяет нейросети учиться так, как учится человек, и позволяет не пропускать те вещи на дороге, которые наиболее критичны для корректного решения. В результате это дает автомобилю принимать более точные решения, кардинально снижая вероятность аварий. Алгоритмический контур безопасности — это строго заданные алгоритмы, правила и ограничения, которые следят за поведением нейросети. Это критически важный компонент системы, который позволяет отлавливать ошибки и галлюцинации нейронной сети. Например, если нейросеть решает держать слишком маленькую дистанцию до впереди едущего автомобиля, то контур безопасности отклонит такое решение нейросети. Это дает важное свойство — предсказуемость и строгость соблюдения автономным транспортом тех требований к безопасности, которые мы в него закладываем.

Особенности автономных грузовиков

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

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

Яндекс

Важный момент — управление сложными манёврами. Например, при перестроении на трассе грузовик с тяжёлым прицепом должен учитывать не только свою длину, но и возможность инерционного заноса. Если прицеп слегка смещается, он может «подтолкнуть» тягач, что создаёт риск заноса или раскачки.

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

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

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

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

Яндекс

Что дальше?

Будущее автономного транспорта выглядит захватывающе. Уже скоро мы увидим:

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

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

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

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

Заключение

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

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