В 2017 году в Лас-Вегасе был запущен беспилотный автобус. Но в первый же час после выхода на дороги общего пользования он столкнулся с грузовиком службы доставки. По счастью, пострадавших тогда не было, да и транспортные средства почти не были повреждены — столкновение произошло на минимальной скорости.
Тогда, в 2017 году, СМИ рассказывали о том, что виноват, по большей части, водитель грузовика. Как сообщалось, он не смотрел в зеркала заднего вида, поэтому не мог отреагировать на сближение с автобусом. Но истина оказалась где-то рядом — на днях ее огласили представители Национального совета по безопасности на транспорте (США).
«Во время сегодняшнего тестирования автономного автобуса в центре города его задел грузовик службы доставки. Автобус совершил предусмотренные действия: когда сенсоры зафиксировали грузовик, он остановился для предотвращения аварии. К сожалению, грузовик службы доставки не остановился и задел переднее крыло шаттла. Если бы на грузовике было установлено такое же оборудование с сенсорами, как на шаттле, то аварии удалось бы избежать. Испытания автобуса продолжатся в течение 12-месячной пилотной программы в городском районе Innovation District», — заявили тогда представители городской администрации.
Обычно это ведомство не занимается расследованием несложных и не очень значительных аварий — как эта. Но, поскольку она произошла с участием роботизированного транспортного средства, ведомство приняло решение тщательно расследовать инцидент.
Как установило расследование, беспилотный автобус заметил появившийся грузовик — препятствие — находясь в 45 метрах от него. За 30 метров до пересечения своей траектории движения с траекторией грузовика автобус начал тормозить. Остановиться от него он должен был примерно за 3 метра.
Как оказалось, водитель грузовика видел препятствие, но думал, что автобус остановится заранее, поэтому он действительно не смотрел в окна заднего вида, а следил за другой стороной движения, по которой двигались автомобили с водителями-людьми. К сожалению, основные события в это время проходили на другой стороне, поэтому транспортные средства и столкнулись.
Расследование регулятора показало, что у оператора автобуса была возможность предотвратить аварию. Например, можно было издать звуковой сигнал, чего не было сделано. Кром того, установлено, что у оператора робоавтобуса была возможность остановить свое транспортное средство при помощи специализированных средств управления. Обычных органов управления в автобусе не было.
Никто не предвидел ничего плохого, поскольку автобус должен был двигаться по траектории длиной немногим больше километра. Но случилось то, что случилось. Органы управления роботоавбусом, как оказалось, находились в некоем «закрытом пространстве». У оператора автобуса, в итоге, не было никакой возможности более оперативно отреагировать на происшествие.
После аварии разработчик микроавтобуса сделал контроллер, при помощи которого можно управлять транспортным средством, более доступным для оператора. По мнению регулятора, если бы у оператора автобуса была возможность взять управление на себя, проблемы бы не было.
Комментарии (30)
ks0
20.07.2019 07:06Как всегда беспилотник неувиновен, он же прав, и у него преимущество. Свое железо ему не жалко, времени на разбор тоже.
KEugene
20.07.2019 09:07+8"По мнению регулятора, если бы у оператора автобуса была возможность взять управление на себя, проблемы бы не было."
Гениально. А если в автобусе постоянно будет водитель, то вообще проблем не будет.Lissov
23.07.2019 00:59Мнение регулятора совершенно верное. Беспилотного автобуса на данный момент нет и быть не может, хотя бы потому что нет соответствующего закона и сертификации. Производитель обошёл это, посадив оператора с правами соответствующей категории и передав ему полную ответственность за управление. Регулятор правильно заметил, что при этом нельзя не выдать оператору само управление.
Он ведь ещё легко отделался — если бы автобус задавил пешехода на переходе, оператор бы сел за убийство.
Wesha
Всё было совсем не такГрубо перевожу с
марсианскогоанглийского:Фура сдавала задним ходом с поворотом (на фото видно, что передние колёса повёрнуты) в узкую боковую улочку (с поворотом — потому что основная улица не настолько широка, чтобы фура могла поперёк неё разместиться). Водитель увидел в зеркало заднего вида автобус, решил, что автобус его тоже видит и остановится на достаточном для его манёвров расстоянии, поэтому перестал смотреть на автобус, а сконцентрировался на идущих с другой стороны людях, чтобы их не задеть. Робоавтобус тоже увидел фуру и начал тормозить. Человеку-водителю было бы очевидно, что фура собирается поворачивать (задним ходом), а вот роботу это очевидно не было. Автобус остановился, в полном соответствии с программой, на расстоянии 3 метров от стоявшей под углом фуры. Водитель фуры продолжал сдавать назад, чтобы загнать полуприцеп в улочку, и легко задел бампер автобуса, потому что не смотрел в ту сторону и не ожидал, что автобус остановится всего в 3 метрах — любому мешку мяса было понятно, что фуре для такого поворота надо метров 5-8.
Короче, как всегда, программисты проморгали редкие граничные случаи.
Zmiy666
Хм… а почему в автобусе не предусмотрен звуковой сигнал, при критическом сближении с объектом, если сам автобус совершил незапланированную остановку? Казалось бы логично… Ну и еще можно было сдать назад, при наличии свободного места, если расстояние совсем уж маленькое стало… автобус то видит все вокруг.
Подавать звуковой сигнал если на тебя кот-то прет задом — весьма нужная функция…
Я например периодически им пользуюсь, чтоб будить
очередную курицунедалекого водителя, уткнувшегося в мобильник в пробке на мосту и начавшего откатываться назад.FiLunder7
Удивлен что у роботов не продумана такая простая вещь. Если на тебя что-то движется — подать сигнал, и начать сдавать назад, если нет помех сзади — вполне логичный сценарий для AI. и не такой уж сложный.
T_Sun
Это для человека не сложный — повернул голову назад и поехал. Для авто это означает дублирование всех датчиков направленных вперёд на заднюю часть кузова.
FiLunder7
А разве этого и так нет на современных беспилотных авто? У Яндекса 360 обзор например. Как иначе они перестраиваться и поворачивать будут?
Lissov
Конкретно данный автобус двусторонний: датчики там уже есть.
Wesha
Я же сказал — программисты пролюбили редкие граничные случаи. Если бы этот софт писал я — там было бы предусмотрено гораздо больше вариантов (включая севшеее посреди дороги НЛО).
Zmiy666
но это не редкий граничный случай… это весьма обычное действие, которое каждый водитель периодически использует… А НЛО эт фигня — набор событий сводиться к возникновению объекта препятствующего движению и реакции на него, такое там уже предусмотрено, абсолютно не имеет значения, какой объект вынудил робомобиль остановиться.
D01
НЛО, протечка воды из канализации и т.п. И самое главное — срок реализации лет 50, чтобы все предусмотреть)
sav1812
А почему так мало??
Вот любите вы программистам руки выкручивать… ;) :)))
Naves
Далеко не любому, мне иногда кажется, что 80% водителей специально останавливаются в метре, что бы никто не смог занять его драгоценные лишние 3 метра впереди. Такая же фигня в узких переулках, вместо того чтобы подождать в широком месте, где, например, есть дырка в парковке, водитель специально проезжает вперёд и останавливается, чтобы встречная машина начала высчитывать сантиметры между зеркалами.
А если сам останавливаешься с такой дистанцией, так ещё сзади начинают сигналить, и пофиг им, что светофор будет гореть красным ещё минуту, что иногда бывает пешеходный переход, или выезд из двора, из которого в этот момент кто-то выезжает задним ходом. Нет, нужно обязательно закрыть все зазоры, чтобы никто не проскочил.
rudinandrey
>>> Короче, как всегда, программисты проморгали редкие граничные случаи.
беспилотники учатся на данных, кожаным мешкам тоже не всегда все очевидно, большинство кожаных мешков учатся на своих ошибках, а не на чужих. в случае же с беспилотниками, это коллективный разум будет. чем больше беспилотников, тем больше данных, тем быстрее они научатся на пограничных случаях.
Я бы на месте того же Яндекса, поставил бы на все их машины сенсоры и начинки для сбора данных, и изучал бы поведение водителей в тех или иных случаях. Это реальное распаралелливание задачи было бы.
Igor_O
Что угодно, только не это!
Не надо учиться водить машину у не спавшего трое суток водителя, который купил права вместе с лицензией, и ездит на машине, в которой ни разу не менялось масло, а некоторые колеса оторваны… Я не говорю про мелочи, что про существование в автомобиле поворотников и об их назначении… некоторые таксисты и водители на каршеринге начинают смутно догадываться. Но пока коллективный разум таксистов не осилил разгадать корреляцию между поворотниками и маневрами и необходимость корреляции между маневрами и включением поворотников.
И да, яндекс-такси с вырванным с мясом задним рычагом, везущее пассажиров — я встречал.
Не надо у них ничему учиться! Особенно не надо у них учить ИИ!
Free_ze
Не обязательно копировать стиль, можно собирать данные о дорожной обстановке. Ведь с такими неадекватными соседями по потоку этим системам еще придется колесить.
Igor_O
А какие данные о дорожной обстановке там соберешь?
Что на дороге транспортные средства, люди, знаки, разметка и посторонние объекты? Этого кто-то не знает?
Единственный смысл сбора данных — смотреть и анализировать какие действия предпринял водитель в какой ситуации. А это-то смотреть и не надо — действия строго случайные и не коррелируют с дорожной обстановкой.
Вон элементарно — сегодня. Едет 70 км/ч в среднем ряду МКАДа. Перед ним — примерно полтора километра пустого ряда. Я его объезжаю слева, как положено. В моем ряду метрах в 100 впереди есть машина. Что делает это чудо? Правильно. Пытается перестроиться мне в бок. Зачем и почему он ехал на почти пустом МКАДе 70? Зачем он перестраивался из пустого ряда в занятый ряд? Этого не знает никто. В том числе и он сам. Что полезного при этом сможет «узнать» ИИ?
Free_ze
Объекты не всегда статичны и двигаться могут по-разному в различных ситуациях. Нейронка не знает. Больше данных — больше информации. Речь о том, что Яндекс может использовать свой огромный автопарк (такси, каршеринг) в целях сбора данных.
Что мешает смотреть с точки зрения остальных водителей на ситуации, создаваемые гипотетическим плохим водителем-носителем оборудования?
«Правило трех Д».
Lissov
Простите, вы часто паркуетесь паралельно задом (то есть проехал за место и задом въехал)? Мне вот тоже кажется, что «любому мешка мяса» понятно, что я хочу сделать и сколько мне надо места. И тем не менее в стране, где это стандартный приём ещё с экзамена, меня иногда подпирают. Весьма редко, но если бы я всегда «решал, что автобус тоже видит и остановится на достаточном для манёвров расстоянии, поэтому перестал смотреть», я бы уже в несколько ДТП попал.
Wesha
Описываемую ситцацию видел неоднократно, но обычно у неё другая подноготная: задний сам очень хочет на это парковочное место, типа "раз предыдущий водтель проехал мимо, то оно моё", и
потирая потные ручонкив эйфории не предусматривает, что тот сейчас остановится и сдавать назад начнёт.uvelichitel
Wesha
В данном случае никакого особого неадеквата не было — автобус и правда встал близковато — фуре надо было больше места для маневра. В следующей версии автопилота следует вписать что-то типа "if vehicle_detected = фура then stopping_distance = 8m else 3m".
Lissov
Автобус «встал близковато» только если предусмотреть, что фура так парковаться будет. А если нет — то при нормальном движении 3 метра это много, а 8 недопустимо — он пробки создавать будет. К тому же при многополосном движении надо ехать/стоять с боковым интервалом около метра, а для маневрирования при парковке этого мало даже для легковушек.
В общем решения два:
1. распознать манёвр и оставить место — с этим пока и живые водители не справляются.
2. при необычных манёврах смотреть внимательно или выставлять помощника — что водитель грузовика не сделал.
Wesha
Я именно так в этом комментарии написал, даже два раза — один раз на человеческом, другой на псевдокоде. Вы из какой галактики, коллега? :)
Lissov
Коллега, я из той галактики, где мысли читать не умеют :) В Вашем псевдокоде не хватает `and vehicle_predicted_maneuver = парковка_задом`. И «на человеческом» тоже. Я потому и подчеркнул, что вот это «предсказание манёвра» это и есть сложная задача, на пару порядков сложнее Вашего псевдокода. С этим и человек справляется из рук вон плохо.
Кстати, вот лично я был в такой ситуации — стали на парковке возле заправки на размеченном месте, вдруг одна фура завелась и поехала на нас задом. Может и «должны были» догадаться, какая из фур поедет задом, но не догадались (несколько водителей в машину), а фур там много было. На сигнал фура не реагировала, хорошо отец успел выскочить из машины и замахать руками. У автопилота такой опции нет.
Wesha
Да какая разница, какой там манёвр, от фуры лучше встать подальше, что бы она там ни делала — целее будешь :)
Lissov
Коллега, Вы машину водите?
Вы чуствуете разницу между «лучше держаться», и «надо держаться»? Лучше конечно, при возможности. Но выдерживать 8 метров от всех фур (включая в соседней полосе) это забавная нетривиальная игра. Я в таком режиме даже с трудом до работы доеду, разве что в объезд дворами :)
Wesha
Нет, только от тех, которые детектированы в стоящем перпендикулярно состоянии. И вообще, чего Вы так нервничаете? 8 метров — это примерно 3 корупуса, на скоростном шоссе Вы всё равно так такую дистанцию держать обязаны.