Шрифт:
Интервал:
Закладка:
К полудню 19-го Sandstorm была готова к соревнованиям, за исключением необходимости поменять одну покрышку и масло в двигателе. В это время Highlander заканчивал последние круги последнего испытательного заезда. Во втором Humvee, полученном от AM General, за ним следовали Петерсон на пассажирском сиденье и инженер-программист Джейсон Зиглар – за рулем. Зиглар изо всех сил старался не отставать от Highlander, бешено вращая баранку и вдавив педаль газа до упора. Когда машина прошла 430 км, и ей оставался только последний круг, Петерсон позвонил Реду в Питтсбург, где тот улаживал последние организационные формальности. «Машина идет очень хорошо, – сказал ему Петерсон, – но мы насилуем ее». Вдруг что-нибудь случится? Петерсон посоветовал Реду отказаться от последнего круга. «Казалось, что мы уже узнали все, что можно», – вспоминает Петерсон.
Отступиться от цели прежде, чем команда достигнет ее, – не таков был Уиттакер. Он приказал выполнить программу испытаний полностью. Машины продолжили движение. Скоро Highlander скрылся в своем обычном облаке пыли. Петерсон не мог видеть робота с пассажирского сиденья машины сопровождения, но благодаря WiFi мог видеть на мониторе своего ноутбука то же самое, что и Highlander. Приближаясь к левому повороту, он сбросил скорость, как и предписывали его алгоритмы, а затем ускорился на выходе из дуги. Однако он чуть вильнул вправо, с дороги – и дисплей Петерсона внезапно заполнился красным цветом. Когда пыль рассеялась, Петерсон заметил по правую сторону дороги продолговатую насыпь, похожую на приспособление, которое используют каскадеры, чтобы поставить машину на два колеса. В данном случае каскадерский трюк состоял в том, что Highlander упал на бок, а затем завалился на крышу. Робот наехал на насыпь правыми колесами на скорости 50 км в час и взлетел в воздух.
Еще один переворот.
Поскольку в этот раз у команды уже был опыт, она сразу приступила к делу. Никто не расстроился – Спайкер подготовился как следует. Многие запчасти, нужные для ремонта Highlander, уже лежали в гараже Автомобильного испытательного центра. Доставку всего остального из Питтсбурга в Неваду Спайкер смог организовать.
А что же насчет недели каникул, которая должна была начаться у всех на следующий день? Отменена, канула без следа. Эта неделя стала периодом самой напряженной работы за всю историю группы.
После того как стэнфордская группа успешно провела заезд на 13,5 км, Трун сократил численность команды до четырех человек, оставив только незаменимых. Первыми двумя были сам Трун и Майк Монтемерло, пришедший с ним из Карнеги – Меллона. Среди участников своего семинара по робототехнике Трун нашел соотечественника-немца, специалиста в области компьютерного зрения и гениального программиста по имени Хенрик Далькамп. Четвертым был студент-старшекурсник Дэвид Стейвенс.
Группа в четыре человека идеально подходила для решения задачи, потому что как раз столько могло с комфортом разместиться в Touareg. Время от времени Трун и трое его коллег отправлялись на неделю в пустыню Мохаве и объезжали ее дороги. Вначале они ставили машину на дорогу, давали ей возможность двигаться самостоятельно до тех пор, пока она не встречала препятствие, с которым не понимала что делать. Тогда кто-то писал код, исправляющий ситуацию. По мере повторения процесса десятки, а со временем и сотни раз робот стал настолько совершенным, что приобрел способность обучаться самостоятельно. На этой стадии Трун садился за руль Stanley и вел машину через пустыню, сбрасывая скорость на бездорожье и крутых склонах. На ровных и прямых участках он, наоборот, ускорялся. Проведя так несколько дней, Трун отправлялся в университет, а у Stanley начиналась ночная смена, во время которой он пересматривал данные о поездках и учился на них. «Вот на таком участке, – думал Stanley, – Себастьян решал ехать тут, и я буду делать то же самое». «Таким образом, робот проводил ночь, разбирая данные и создавая порядок из хаоса», – говорил Трун.
Стейвенсу принадлежал алгоритм, обучавший робота регулировать скорость. На дорогах, по которым двигался Stanley в пустыне, встречались заполненные дождевой водой колеи, лужи и рытвины. Попытка преодолеть их на большой скорости привела бы к тому, что машина развалилась бы на части. Поэтому Стейвенс написал программу, определявшую скорость продвижения вперед исходя из данных о вибрации корпуса, поступавших с датчиков, а также из характера и ширины дороги. Как только программа была загружена в память робота, Майк Монтемерло сделал несколько заездов на Stanley, чтобы обеспечить программу данными для последующего анализа и выработки правил.
Трудность состояла в том, что Монтемерло – слишком осторожный водитель. Он внимателен к деталям до невероятной степени. Если выбирать необидную формулировку, можно было бы сказать, что он «стремится избегать риска». «Нам приходилось заклеивать его окно, – вспоминает Трун, – чтобы Майк не видел, как быстро мы едем». Монтемерло однажды заявил остальным членам группы, что он никогда не сядет в беспилотный автомобиль, если его скорость будет больше 8 км в час. Можно сказать, что за рулем Stanley Монтемерло ползал по пустыне, стараясь обхдить стороной не только холмы, но даже объезжать камни. Позже, в гараже алгоритм машинного обучения изучал стиль вождения Монтемерло и формулировал правила, чтобы автомобиль руководствовался ими в будущем. Привыкший к большим скоростям немецких автобанов Трун не одобрял черепашьего темпа, который Stanley перенял у Монтемерло. Поэтому, улучив неделю, когда Монтемерло был в отпуске, Трун перепрограммировал Stanley так, чтобы он шел на 20 % быстрее.
А потом настал тот знаменательный день 2005 года, когда к Труну в его офис в Стэнфорде явился неожиданный посетитель. Трун увидел фигуру в дверном проеме. Фигура сделала несколько шагов вперед и представилась: «Привет. Меня зовут Ларри Пейдж».
Разумеется, Трун знал, кто это такой. Удивительна была степень заинтересованности Пейджа в его проекте. «Ларри всегда был энтузиастом робототехники», – говорит Трун и добавляет, что, если бы Пейдж не основал Google, он мог бы защитить кандидатскую диссертацию по робототехнике. Проект Труна вызывал у него искренний интерес. У него был миллион вопросов. Он хотел понять, насколько реальна технология, сколько времени отделяет нас от беспилотного автомобиля. Столетие? Десятки лет? Пара лет? Что Трун думает на этот счет? На самом деле, Пейдж был настолько заинтересован, что посвятил Труна в свои планы присутствовать на гонках DARPA Grand Challenge. Благодаря общему интересу к беспилотным автомобилям Трун и Пейдж подружились. Со временем их дружба стала крепче, поскольку оба любили браться за задачи, от которых отказывались все остальные, считая их неразрешимыми. В тот момент Себастьян Трун еще не догадывался, что знакомство с Пейджем изменит всю его жизнь.
В 4:30 утра 8 октября 2005 года представители DARPA вручили Red Team USB-накопитель, содержащий файл с 2935 точками – трассу вторых состязаний Grand Challenge. Общая протяженность кольцевого маршрута, начинавшегося и заканчивавшегося в городе Примм, Невада, составляла 212 км.
То, что происходило дальше, очень напоминало первые соревнования. Один из членов группы побежал в ее командный пункт. Другой загрузил файл с точками на общий жесткий диск группы. Компьютерная программа проанализировала точки и добавила тысячи других, так что расстояние между ними, составлявшее в исходном файле примерно 80 м, сократилось до одного-двух. Затем трасса была поделена на участки между членами группы, которым предстояло их проверить. Группа предварительного планирования просматривала каждый участок, проверяя, что он проходим для Sandstorm и Highlander.