Цецен Балакаев
Режим Десятой симфонии

Глава 1. Сборочный цех

В сборочном цеху АО «ЗАСЛОН» пахло припоем и озоном. Третья смена доделывала партию умных взрывателей для неуправляемых авиационных ракет С-8КЛ. Столы завалены платами, осциллографы моргают зелёными сетками, в углу греется промышленный МИП – модуль источника вторичного питания, единственный, кто не возражал против работы в выходной.

Инженер Андрей Воробьёв по прозвищу Воробей крутил в пальцах КОР-чип, рассматривая его под лупой.

– Сорок седьмая строка, – сказал он в пустоту. – Кто её писал? Стажёр?

Никто не ответил. Молодой техник Лёня сосредоточенно лудил контакт. Старший оператор Настя сверяла партию по накладной.

– Воробышек, – сказала Настя, не поднимая головы, – ты бы поменьше философствовал. Там Чайковский придёт – опять будет «Письмо Татьяны» цитировать.

– А что Чайковский? – хмыкнул Воробьёв. – Чайковский – фамилия хорошая. Он ею при случае козыряет. «А что скажет Чайковский?» Скажет: «Это не танец маленьких лебедей! Мне нужно техническое решение!»

Лёня засмеялся. Настя только глаза закатила.

– Между прочим, – Воробьёв откинулся на стуле, – знаете анекдот про Бетховена?

– Который оглох? – уточнил Лёня, не отрывая паяльника.

– Он самый. Написал девять симфоний, гениальных. А Десятую – не дописал. По официальной версии – здоровье не позволило. А по неофициальной… – Воробьёв сделал загадочную паузу. – Он просто не слышал, что пишет. Представьте: дирижирует оркестром, а в голове – тишина. Как нам с вами, если вырубить мониторы. Ну и бросил.

– Грустно, – сказала Настя без интонации. – Воробышек, ты чип-то проверил?

– А я ему говорю: Людвиг, давай мы тебе ЧИП в ухо! – Воробьёв не слушал. – Самый простой, КОР-чип в режиме фильтрации. Вставили – и порядок. Сидит, записывает, слышит каждую ноту. Десятая симфония готова через две недели. Мировая премьера – в Вене. Все во фраках. Бетховен кланяется.

Лёня хмыкнул.

– А в реальности чип не вставишь – ухо не тот форм-фактор.

– В том и анекдот, – кивнул Воробьёв. – Что реальность всегда против нас. Бетховен умер глухим. Десятая – не дописана. А мы тут с вами перебираем 47-ю строку, у которой допуск по времени 0,3 секунды, и делаем вид, что это и есть судьба человечества.

Он взял следующий взрыватель, вставил в диагностический стенд. Стенд пискнул, выдал зелёный огонь.

– Порядок. Двадцать третий готов.

Воробьёв развернул экран к Лёне.

– Смотри. Вот осциллограмма реального отказа. Сигнал от цели – чистая синусоида до точки detach. А здесь – после 0,87 падает до 0,83. Потеря 0,04. Всего четыре сотых. Но чип видит это как «недостоверно» и не даёт команду.

– Четыре сотых – это же шум, – сказал Лёня.

– Шум – это когда случайно. А здесь – закономерно. Каждый раз за 0,3 секунды до детонации. Кто-то учит рой маскироваться под шум.

– Нейросеть противника? – спросила Настя, подойдя ближе.

– Либо нейросеть, – кивнул Воробьёв, – либо физический эффект, которого мы не знаем. В любом случае – наш порог 0,87 стал уязвимостью. Рой просто ныряет под него, как подводная лодка под сонар.

– А если сделать порог 0,8? – предложил Лёня.

– Тогда ложных срабатываний будет 40 процентов. Мы расстреляем все ракеты по облакам. Чайковский не поймёт. И Бетховен не поймёт. А Чайковский – это страшнее.

Настя усмехнулась.

– Воробышек, ты идиот. Но идиот гениальный. Что предлагаешь?

– Адаптивный порог. Взрыватель вычисляет тренд доверия за последние 10 миллисекунд. Если сигнал падает – но падает плавно – значит, цель реальна. Если скачет хаотично – ложная.

– Сколько времени на реализацию? – спросил Лёня.

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

– Тогда давай кофе, – сказала Настя. – И не спорь.

Воробьёв разложил на столе плату. КОР-чип – чёрный квадрат три на три миллиметра, на нём – шесть миллионов транзисторов. Чип-сет рядом – четыре чипа в одной связке. МИП – модуль питания – гудел едва слышно, выдавая стабильные 5 вольт и 3 ампера по шине.

– Красота, – сказал Воробьёв. – Железо идеальное. Проблема в софте.

Он подключил отладчик, загрузил прошивку. На экране побежали строки. Сорок седьмая строка – вот она:

if (target.distance < threshold && signal.confidence > 0.87) detonate();

– Если бы не этот «0.87», – сказал он, – мы бы уже пили чай и слушали Бетховена. Но Бетховен, к сожалению, оглох. А мы с вами нет.

Он стёр строку. Начал писать новую. Вместо фиксированного порога – функция, вычисляющая динамическую границу. Три строчки кода превратились в двадцать три. Потом в сорок. Потом в сто.

– Растёт, – заметил Лёня.

– Симфония, – буркнул Воробьёв, – не пишется быстро.

Из-за поворота конвейера вышел он. Начальник группы – Чайковский. Короткий, плотный, с неизменным планшетом под мышкой. Воробьёв внутренне подобрался.