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

Алгоритмы беспилотного автомобиля Uber, сбившего человека насмерть в марте 2018 года, не умели определять пешеходов, переходящих дорогу в неположенном месте. Из-за этого, а также других особенностей работы алгоритмов, определяющих опасность объектов на пути автомобиля, он начал тормозить лишь за 0,2 секунды до столкновения, хотя обнаружил человека за 5,6 секунд. Это следует из документов, которые Национальный совет по безопасности на транспорте США (NTSB) опубликовал перед заседанием 19 ноября, на котором будет определена причина инцидента.

Дорожно-транспортное происшествие, которое расследует NTSB, произошло 19 марта 2018 года в городе Темпе штата Аризона. Автомобиль с инженером-испытателем за рулем передвигался по дороге в темное время суток со скоростью около 70 километров в час. В это время на расстоянии 110 метров от ближайшего пешеходного перехода 49-летняя Элейн Херцберг (Elaine Herzberg) переходила дорогу в неположенном месте, толкая рядом с собой велосипед, груженный пакетами с вещами. Автомобиль сбил женщину, и через небольшое время она скончалась в больнице от полученных травм. Это стало первой смертью от автомобиля 3 уровня автономности.

В мае NTSB опубликовал предварительный отчет, из которого стало известно, что автомобиль обнаружил Херцберг за несколько секунд до столкновения, но это не помогло ему избежать происшествия из-за ошибочной классификации пешехода и отключенной системы аварийного торможения. Теперь NTSB опубликовал итоговый набор из 40 документов общей длиной более 400 страниц, собранный за время расследования. Он будет использован для вынесения итогового решения относительно причин случившегося на заседании 19 ноября. Некоторые из документов содержат новые подробности, в частности, один из них подробно описывает работу алгоритмов обнаружения и классификации объектов на дороге, а также предсказания их действий.

Как уже было известно ранее, инженеры Uber перенастроили штатную систему экстренного торможения Volvo XC90 таким образом, чтобы при езде в автономном режиме она полностью отключалась. Это было сделано из-за конфликта между радарами и алгоритмами от Volvo и Uber. Разработчики компании реализовали собственную систему экстренного торможения и внедрили в нее секундную задержку, во время которой алгоритм убеждается в опасности ситуации, а также рассчитывает путь объезда, если это возможно. Такую функцию инженеры добавили из-за множества ложных срабатываний. Если за эту секунду инженер за рулем не перехватил управление, а алгоритм не перестал определять объект на пути как опасный, система начинала торможение сама.

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

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

Во многом это и привело к тому, что автомобиль, увидевший человека за 5,6 секунды до столкновения, не смог заранее снизить свою скорость. Дело в том, что из-за того, что алгоритм не умел распознавать пешеходов, он много раз менял класс объекта по мере приближения к нему и тем самым сбрасывал историю показаний. Более того, в моменты, когда он определял Херцберг в качестве неопознанного объекта, он принимал ее за статичный объект и вообще не рассчитывал будущую траекторию.

Из-за этого алгоритм окончательно отнес Херцберг к классу «велосипед» и рассчитал, что он окажется на пути движения, только за 1,2 секунды до столкновения. В этот момент система запустила процедуру торможения, но фактически оно было отложено на секунду из-за настроек. За 0,2 секунды автомобиль начал тормозить и оповестил водителя, но тот смотрел в смартфон, и нажал на педаль тормоза через 0,7 секунды после удара.

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

Авария беспилотного автомобиля Uber повлияла на испытания многих разработчиков. К примеру, свои испытания вскоре после случившегося прекратила сама Uber, а также Toyota и NVIDIA. Кроме того, происшествие в целом повлияло на темпы программ разработки и испытаний беспилотников многих компаний в отрасли.

Григорий Копиев