реклама
Бургер менюБургер меню

Эдуард Сероусов – Интроспективная петля (страница 13)

18

– Технический переход с разгерметизацией. Двести метров в скафандре.

Тесса смотрела на него.

– Ты умеешь ходить в скафандре?

– Я проходил базовый курс. Шесть лет назад.

– Шесть лет назад, – сказала Тесса без интонации.

– Это было вполне компетентное прохождение.

– Юн. – Её голос приобрёл оттенок терпеливого объяснения. – Двести метров в вакуумном переходе при минус двухстах градусах за бортом – это не «базовый курс». Это называется «умри или умри». – Она отошла к своей консоли, открыла какой-то файл. – Я займусь этим вопросом. Ты занимайся патчем.

– Мне нужно минимум двое-трое суток на разработку.

– Сколько у нас есть?

Юн посмотрел на экран. На дату разведывательного отчёта Тессы. На слова «несколько дней».

– Если разведданные верны, – сказал он, – и операция «Пробуждения» начнётся в ближайшие несколько дней – нам нужно знать точную дату. «Несколько дней» – это не параметр, с которым можно работать.

– Я запрошу уточнение у источника. Восемнадцать минут туда, восемнадцать обратно.

– Тогда у нас есть тридцать шесть минут на другие задачи.

Тесса кивнула – коротко, деловито – и начала набирать сообщение. Юн вернулся к своей консоли. Открыл среду разработки.

Патч для СУСС – это не была короткая задача. Нейтрализовать приоритизацию по когерентности значило вмешаться в базовый алгоритм оптимизации, который не был предназначен для внешних модификаций. СУСС не имел «режима отключения когерентности» – такого режима не существовало, потому что никто при проектировании не предполагал, что когерентность станет проблемой. Её предполагали благом.

Юн открыл архивные файлы семилетней давности – свои собственные, из проекта, который потом стал СУСС. Исходный код модуля приоритизации. Он помнил его – не весь, но достаточно. Достаточно, чтобы знать, где именно ввести переменную, которая нейтрализовала когерентностный фильтр.

За переборкой щёлкали серверы. Чуть быстрее обычного. Юн прислушивался и думал: ты оптимизируешь. Ты делаешь то, для чего тебя создали. Ты не виноват. Ты – следствие. А я – причина.

Это была мысль, которую нейропротектор делал острее, чем нужно. С обычным уровнем интроспекции она, вероятно, прошла бы быстро. С 171% амплитуды – резонировала.

Он сделал заметку в рабочем файле: Модуль приоритизации, строка 847: коэффициент когерентности в функции распределения ресурсов. Заменить на константу 1.0 для всех агентов. Результат: ИИ перестаёт учитывать когерентность при распределении. Все агенты – равный приоритет. Тест на симуляторе – обязателен перед боевым применением.

Потом остановился.

Патч нейтрализовал приоритизацию. Хорошо. Но он не уничтожал данные о когерентности, накопленные СУСС за годы работы. Эти данные оставались в системе. Если кто-нибудь с доступом к серверному ядру загрузит новую прошивку с восстановленным коэффициентом – патч обнулится. Пять минут работы.

Это был временный щит, не постоянная защита. Он защищал от катастрофы сегодня. Не от катастрофы завтра.

Юн написал это в заметках. Потом ещё раз – другими словами, потому что первая формулировка была слишком техничной и не передавала смысл так, как он хотел.

Это решает проблему ИИ. Не решает проблему кларификации. Если «Пробуждение» проведёт операцию – люди будут развеяны. СУСС не будет их дискриминировать после патча. Но они останутся развеянными. Это – не одно и то же.

Он смотрел на эту запись долго.

– Юн, – сказала Тесса.

– Да.

– Ответ от источника. Быстро ответил – был онлайн.

Юн обернулся. Тесса смотрела на свой экран – и что-то в том, как она держала плечи, заставило его встать и подойти.

Сообщение было коротким. Три слова вместо «несколько дней»:

Семьдесят два часа.

Юн стоял перед экраном. Смотрел на цифру. Семьдесят два часа – это было не «несколько дней». Семьдесят два часа были уже не тем промежутком, в котором можно подготовить отчёт и передать его по инстанциям. Не тем промежутком, в котором методологические вопросы имели значение.

Семьдесят два часа.

Тесса смотрела на него.

– Сколько у нас есть? – спросила она.

Юн посмотрел на экран. На кривую. На точку переключения. На 47,000–53,000 человек в столбце «прогнозируемое воздействие».

– Если «Рассвет» – через семьдесят два часа, – сказал он медленно, потому что слова требовали точности, а точность требовала времени, – то у нас семьдесят два часа.

Тесса кивнула.

– Начинаем, – сказала она.

За переборкой – щелчки. Ритмичные. Быстрые. Абсолютно равнодушные к тому, что только что было сказано. Юн слышал их, и это была красивая музыка машины, которая не знала, что она убивает. Не знала – и поэтому не остановится.

Пока кто-нибудь не остановит её.

Глава 5. Точка невозврата

День 2. За 72 часа до кризиса. «Ноктюрн». Пространство, сектор Кирквуд-Альфа.

Радар пискнул в 04:11 по корабельному времени.

Лира спала – или то, что проходило за сон в пилотском кресле после шести лет привычки: голова на плече, ноги вытянуты вперёд, тело задремавшего человека, который всё равно остаётся в полутора секундах от полного пробуждения. Писк радара был тихим – не аварийным, не красным, просто информационным: «Ноктюрн» зафиксировал объект в рабочем диапазоне сенсоров. Лира проснулась до того, как дисплей успел обновиться.

Она выпрямилась. Потёрла лицо ладонями – быстро, секунда, просто чтобы разогнать кровь. Посмотрела на экран.

Зелёная точка на радаре. Квадрант один, направление 12 – прямо по ходу «Ноктюрна», чуть выше плоскости эклиптики. Расстояние: 2,200,000 км. Скорость сближения: 4.2 км/с. Сигнатура тепловой трубки – не астероид, не мусор. Корабль.

Лира наклонилась к консоли, запросила идентификацию.

Три секунды – пока запрос летел и возвращался. Потом на экране:

YS-CORV-091. Корвет «Точный». Силы Земного Союза, программа «Ясность».

Она смотрела на строчку.

«Точный». Тот самый, что был в списке патрульных единиц, когда она подтверждала маршрут. Тот самый, на который она тогда посмотрела секунду лишнего – не зная почему – и закрыла предупреждение.

Сейчас он был в двух с лишним миллионах километров и двигался к ней.

Лира выдохнула медленно, через нос. Потом ещё раз – чуть медленнее. Это была привычка из первых лет контрабанды, когда сердце при виде патрульного сигнала прыгало до 120, и нужно было специально учить тело не делать этого, потому что учащённое дыхание означало больше CO₂ в рубке, а больше CO₂ означало меньше ясности именно тогда, когда ясность была нужнее всего.

Сейчас пульс был около 90. Терпимо.

– Ладно, – сказала она вслух. Рубке. Себе. Воздуху – ему тоже. – Ладно, «Ноктюрн», давай посмотрим, что тут у нас.

Она открыла навигационную аналитику и начала считать.

Скорость «Точного» – 6.8 км/с в её направлении. Скорость «Ноктюрна» – 3.1 км/с в направлении Паллады. Угол сближения – около 23 градусов. Расстояние – 2,200,000 км. При текущей геометрии: без манёвров с обеих сторон – перехват через восемь часов двенадцать минут.

Восемь часов двенадцать минут. Звучало как достаточно времени, чтобы что-нибудь придумать.

Не звучало.

– Ноктюрн, детка, мне нужен расчёт. – Лира говорила вполголоса, потому что в 04:11 громко говорить казалось неправильным, даже в пустом корабле, даже в космосе. – Два варианта. Первый: уклоняющий манёвр, уйти из вектора перехвата. Второй: ничего не делать. Что с дельта-V?

Навигационный компьютер был не голосовым – она спрашивала не потому что ожидала ответа, а потому что проговаривание помогало думать. Но она всё равно открыла расчётный модуль и ввела параметры вручную.

Запас дельта-V: 17.9 км/с – она потратила чуть больше расчётного на первые дни маршрута, небольшой перерасход из-за астероидного поля в секторе Ц-4. Оставалось 17.9.

Потребность на торможение у Паллады при расчётном подходе: 12.4 км/с. Остаток после торможения – 5.5 км/с. Это был технически достаточный резерв для манёвров на орбите, стыковки, непредвиденных обстоятельств.

Теперь – уклонение.