Первый маршрут Larry1K был позади. «Мы говорили о том, какое это большое достижение, – вспоминает Урмсон, – о том, какое это чувство: видеть, на что способна твоя технология… Мы испытывали скорее восторг, чем облегчение».
В тот день он, Долгов и Левандовски заночевали в Сан-Луис-Обиспо. Они отправились в ресторан отпраздновать успех. «Мы ставили себе эти цели, – вспоминает их ликование Долгов, – но понятия не имели, как их достичь. Внезапно мы осознали, что первая из них позади. Это дало нам огромный заряд энергии и добавило энтузиазма».
Пессимисты в группе не придали особого значения их достижению. Нечему радоваться, сказали они. Дорога простая. Достаточно было держаться в своей полосе и проехать три светофора. Реальное вождение в городе гораздо сложнее, особенно если принять во внимание пешеходов и домашних животных.
Поэтому для второй попытки Урмсон постарался выбрать более сложную трассу. Он остановился на маршруте Larry1K, почти все время проходившем по исторической Эль-Камино
[57], длина которой сотни километров; в испанский период она соединяла двадцать одну испанскую миссию, растянувшись от Нижней Калифорнии до северной оконечности Сан-Франциско. Маршрут Larry1K начинался от аэропорта Сан-Хосе. В Маунтин-Вью он сворачивал с Эль-Камино и петлял между зданиями в кампусе Google. В Пало-Альто он подобным же образом проходил через кампус Стэнфордского университета и центр города, а дальше к северу возвращался на Эль-Камино, по которой и следовал дальше, огибая Сан-Франциско с юга. На этом маршруте светофоров было больше двух сотен. Урмсона больше всего волновал центр Пало-Альто. Припаркованные под углом к тротуару машины, пытающиеся от него отъехать, погруженные в свои телефоны пешеходы, пролетающие на красный свет велосипедисты – каждое из этих событий трудно предсказать даже живому человеку за рулем. Автономному автомобилю это еще сложнее. «Я помню, как люди говорили мне: это пустая трата времени, зачем мы вообще этим занимаемся? – вспоминает Урмсон. – Но практика показала, что в данном случае просто взять и попытаться было едва ли не лучшим из принятых нами когда-либо решений».
В центре Пало-Альто Prius ошибся примерно пять или шесть раз. Машина не пропустила пешехода и выезжавший задним ходом с парковки автомобиль. Каждый раз Урмсону приходилось отключать автопилот и управлять самому, а Долгов и другие программисты потом работали над проблемой и исправляли код таким образом, чтобы в следующий раз машина уступила бы дорогу пешеходу, а увидев сдающий задним ходом автомобиль, остановилась. «Мы перешли от набора абстрактных задач к совершенно конкретным: вот четыре случая, когда машина ошиблась. Давайте прилагать силы именно к ним, – говорит Урмсон. – Есть вещи, которые мы можем взять и исправить. Мы не можем исправить все. Достаточно привести в порядок только эти конкретные пункты – и мы повторяем заезд».
Команда встречалась каждый понедельник в 11:30, чтобы выяснить, насколько они продвинулись вперед и на чем следует сконцентрировать усилия на следующей неделе, чтобы улучшить возможности машины. Одной из проблем, с которыми им пришлось столкнуться, была неспособность программы предсказывать поведение пешеходов. Например, если пешеход оказывался стоящим на перекрестке справа от машины, она могла продолжить движение, потому что не понимала, что он сейчас шагнет под нее. Кроме того, машина пыталась всегда держаться возле середины полосы, что приводило к определенным трудностям, если та по ширине вмещала два автомобиля. Когда автомобиль-робот ждал на перекрестке возможности повернуть, подъезжавшие сзади машины с людьми за рулем парковались в пространстве между ним и краем проезжей части, мешая ему. Поэтому понадобилось еще одно изменение в программном обеспечении, разрешающее роботу перемещаться внутри полосы в зависимости от обстановки. Действуя таким образом, преодолеть Эль-Камино из списка Larry1K удалось примерно за месяц.
Еще одну задачу Пейджа удалось решить относительно быстро – проехать все мосты в области залива Сан-Франциско. Сложность заключалась не в мостах – благодаря четкой разметке они оказались вполне преодолимыми, – а в очень узкой дороге в Бельведер-Коув, в северной части залива Сан-Франциско. Там есть улица Бич-роуд, начинающаяся от яхт-клуба Сан-Франциско, которая сначала поднимается в гору, а затем петляет вдоль побережья, скрытая навесом из крон деревьев, кустов рододендрона и другой растительности, – причем от воды ее отделяет только узкая полоска домов ценой во много миллионов долларов каждый. Несмотря на то что Бич-роуд была узкой, на ней парковались. Проехав по ней впервые, Долгов и Урмсон растерялись: эта улица, конечно, односторонняя? Из-за припаркованных автомобилей разъехаться на ней было совершенно невозможно. Однако после нескольких попыток они выяснили на собственном опыте, что движение разрешено в обоих направлениях. Чтобы робот мог преодолеть ее, даже когда навстречу ему движется другой автомобиль, программистам пришлось научить Prius приему, распространенному в Европе: съезжать в сторону, прижиматься к обочине на широком участке дороги и ждать, пока проедет встречный автомобиль. Позже, во время заезда, когда робот смог проехать по Бич-роуд, они наткнулись на другую проблему: пункты оплаты при въезде на мост. Размеченный ими маршрут для Prius говорил, что машина должна проехать через строго определенные ворота, которые оказались закрыты. К счастью, во время следующей попытки они были открыты, и еще один пункт задачи Larry1K был выполнен.
Одним из примечательных событий этого года стали импровизированные соревнования, устроенные проектной группой для приблизительно пятидесяти старших менеджеров Google. В качестве места была выбрана пустующая верхняя парковка возле арены Shoreline Amphiteatre, куда из кампуса Google можно было добраться за несколько минут на велосипеде. Сотрудники проекта Chauffeur проложили извилистый маршрут, огороженный конусами, и засекли время, понадобившееся беспилотному автомобилю для его прохождения. Затем они отключили автопилот и предложили менеджерам самим сесть за руль и улучшить результат робота. Это не удалось никому. В глазах участников проекта этот случай подчеркнул то, что они не просто создают автомобиль, способный водить сам себя не хуже человека – но лучше его. Быстрее, это само собой. Но еще, что очень важно, безопаснее – ведь для робота вероятность отвлечься или растеряться куда меньше.
В реальном мире встречались вещи, которые были исключены на гоночных трассах DARPA. Вещи, которые подчас вели себя отнюдь не разумно. Например, пешеходы, всегда готовые шагнуть на проезжую часть, не посмотрев по сторонам, потому что как раз в этот момент они пишут сообщение няне своего ребенка. Велосипедисты, всегда готовые без предупреждения повернуть налево, прямо в поток. Домашние животные, так любящие выбегать на дорогу.
Поэтому инженерам Chauffeur пришлось определить, какие предметы способны двигаться в окружающем мире, и научить беспилотный автомобиль распознавать их при помощи камер и лидара. Пешеход, как правило, бывает ростом от 60 до 200 сантиметров, с грудной клеткой толщиной около 30 сантиметров, и у него есть ноги, которые чаще всего находятся в движении. Получив сотни тысяч изображений пешеходов, искусственный интеллект обучился распознавать их с высокой степенью надежности, примерно так же, как программное обеспечение в вашем телефоне распознает ваше лицо и лица ваших друзей. Подобным же образом программное обеспечение автомобиля научилось распознавать десятки и даже сотни классов объектов, потенциально способных оказаться на его пути. Человек в инвалидной коляске. Маленькие дети. Дети постарше. Скейтбордисты. Собаки. Кошки. Футбольные мячи. Баскетбольные мячи. Продавцы мороженого с лотком, установленным на велосипед. Технология научилась распознавать их все.