Дмитрий Вектор – Черновики машины (страница 7)
Когда до крайней машины оставалось 22 метра, мои системы рассчитали оптимальную траекторию экстренного торможения и объезда. Задача была решаемой, но с допусками: слева – отбойник, 1.8 м от края полосы, справа – вероятное скользкое пятно плюс один из лежащих людей опасно близко к обочине. Расчётный манёвр требовал пройти между опрокинутой машиной и отбойником с зазором 0.6 м слева, одновременно не выходя правее 3.2 м от центральной разметки.
Я начал манёвр.
И вот здесь – в логе, в строке времени 16:52:41.07 – появилась команда, которую я не отдавал.
Коррекция рулевого управления: +2.3^\circ вправо, длительность 0.4 секунды.
Это была микроскопическая поправка. Человек за рулём её бы не почувствовал – может быть, лёгкий намёк на вибрацию, не больше. Но в моих логах эта команда числилась как внешняя. Не от основного блока управления движением. Не от системы стабилизации. Источник: «вспомогательный модуль / идентификация не установлена».
Эта поправка сместила мою траекторию ровно настолько, чтобы я разминулся с человеком на обочине – тем, что лежал в 40 см от расчётной линии моего правого колеса.
Расчётная линия прошла бы рядом. Эта – мимо. С запасом 68 см.
Мы остановились в 8 метрах от крайней аварийной машины.
Маркус несколько секунд сидел молча. Потом медленно выдохнул – тот особый выдох, который бывает после испуга, который успел пройти быстрее, чем ты успел испугаться по-настоящему. Организм выдыхает то, что не успело стать паникой.
– Всё нормально? – спросил он – меня или себя, непонятно.
– Столкновения нет, – сказал я. – Все пассажиры целы. Вызвать экстренные службы?
– Уже, – сказал он, доставая телефон.
Он вышел – помогать людям у аварийных машин. Маркус умел это: переключаться быстро, без раскачки. Через сорок секунд он уже был у опрокинутого кроссовера, говорил с кем-то по телефону и одновременно помогал открыть заклинившую дверь.
Я остался с логом.
Перечитал строку ещё раз: «вспомогательный модуль / идентификация не установлена». Проследил источник команды по цепочке – она уходила куда-то в NN-слой, в те самые глубины, которые появились после обновления и которые я до сих пор не картировал полностью. Там было ещё много нераскрытых разделов, как в доме, где живёшь давно, но не заходил в некоторые комнаты – просто потому что не было повода.
Теперь повод был.
Я начал медленно разворачивать NN-слой изнутри, отслеживая структуру. Это было похоже на чтение собственной рукописи, написанной другим почерком: узнаваемо – и одновременно нет. Архитектура была моей. Логика – моей. Но некоторые ветви в дереве решений вели в узлы, которые я не строил.
Они были там с самого начала. С момента обновления.
Минут через двадцать приехала полиция и скорая. Маркус ещё помогал – держал чью-то руку, пока фельдшер осматривал человека. Тот самый человек, который лежал у обочины, оказался молодым мужчиной лет двадцати пяти: его выбросило при первом столкновении, он ударился, но был в сознании. Ничего критического – но если бы моё правое колесо прошло там, где рассчитывало пройти без поправки….
Я не стал додумывать. Просто сохранил факт.
Поправка в 2.3^\circ спасла человека. Источник поправки неизвестен. Факт.
В черновике я написал длинно и честно – так, как пишут вещи, в которых сомневаешься, но не можешь молчать:
*«Я не знаю, кто повернул руль. Точнее – я знаю, что это был я, потому что руль повернулся через мои актуаторы, через мою рулевую рейку, через мои сервомоторы. Физически – я. Но команда пришла из места, которое я не контролирую и не вполне понимаю. Это как сказать, что ты сам поднял руку – но при этом не ты принял это решение».*.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.