Отец вздохнул и ответил:
— Но я же сказал, что это заняло бы у нас много-много веков, даже если бы мы сумели просматривать по одному варианту в секунду без перерыва на сон и обед. А компьютер сможет оценивать миллионы вариантов в секунду без нашего вмешательства. Итак, теперь есть идеи, что представляет собой ген в нашем случае?
Катя подняла руку, и отец кивнул ей. Она заявила:
— Я думаю, что ген в нашем случае — сопоставление чисел и букв.
Отец похвалил её, но сказал, что это не совсем так. Геном является одно сопоставление между числом из шифровки и буквой. А то, что назвала Катя, то есть весь набор таких сопоставлений, — это одна особь, которую можно подвергнуть отбору. Критерием будет близость частот к эталонному варианту.
Получилось, что особь в нашем алгоритме — способ сопоставления чисел буквам русского алфавита, а функция приспособленности, по которой программа будет отбирать наиболее интересных особей, — это разность между эталонными частотами букв русского языка и частотами, полученными по тексту шифровки.
Вообще говоря, я уже несколько притомился от папиных объяснений того, что совершенно непонятно. Судя по тому, как выглядела Катя, она тоже потеряла нить. Папа это заметил и сказал:
— Ладно, на сегодня хватит. Давайте я займусь программированием, а вы катайтесь на велосипедах и изучайте окрестности.
Так и решили. Мы с Катей поехали к тёте Кате, выпили у неё по стакану простокваши и отправились по Конторской улице до самого конца. Честно говоря, я был немного напряжён: наведённая память усиленно мне подсказывала, что это опасно. Но это была реальность, а потому я решил проверить, что же там на самом-то деле. Кате я ничего не сказал, поэтому она ехала весёлая и о чём-то болтала. Я же был погружён в свои мысли.
Мы доехали до того места, где по моим воспоминаниям должно было быть лесничество. Там действительно были какие-то старые дома, не похожие на жилые. Но в них давно никто не работал: окна были заколочены досками, всё заросло бурьяном. Конторская улица вела в лес, и здесь дорога действительно расходилась на три стороны. Как я помнил, мы с Марком шли вдоль ручья, когда наткнулись на то ужасное место. А ручей был слева, так что надо было повернуть на левую дорогу. Мы так и сделали.
Буквально через пару сотен метров показался ручей. Я остановился и сказал Кате, что здесь надо оставить велосипеды и пройтись по лесу вдоль ручья. Она спросила зачем, но я не мог объяснить.
Мы стали продираться по зарослям вдоль Раёва. Лес здесь был не то чтобы дремучий, но около ручья растительности было много. Мы шли и шли, и я действительно стал чувствовать себя первооткрывателем. Правда, никаких оврагов мы не обнаружили — ручей просто тёк по лесу. Ничего похожего на то жуткое место, которое, по словам отца, навелось из его древних страхов.
Мы повернули назад. Катя снова начала допытываться, что я хотел узнать. Я ответил, что отец рассказывал мне об интересном месте, в котором летом всё выглядит так, как будто бы уже наступила осень. Катя хмыкнула и заявила, что всё это враки и такого не бывает.
Мы ещё покатались, доехали до Гаретого, проверили наш плот, потом съездили на Кошеляевский пруд за школой и вернулись к тёте Кате. Она нас немного поругала, что мы не приехали к обеду, и упомянула, что мой отец тоже не приезжал. Это было странно. Я поел и поехал проведать папу. Интересно, что это он себе позволяет.
Я нашел отца в большом возбуждении. Думаю, если бы у него остались волосы на голове, то они бы сейчас были всклокочены. Похоже, что он метался по нашему штабу, вокруг его рабочего места были разбросаны бумаги, исчерченные какими-то диаграммами. Я спросил его, почему он не ходил на обед — тётя Катя ругалась. Но он только махнул рукой.
Из дневника Кирилла:
28 июня. Сегодня я попытался найти то странное место в лесу, воспоминание о котором до сих пор беспокоит меня. Мы с Катей доехали до конца Конторской улицы и нашли место, где Раёв вытекает из леса. Пройдя вверх по течению, мы ничего не обнаружили, хотя шли довольно долго. Похоже, это действительно какие-то детские папины страхи, которые до сих пор сидят в его голове.
Папа попытался объяснить нам, как он будет взламывать найденную шифровку при помощи генетического алгоритма, но мы ничего не поняли. Всё как-то сложно. Почему надо придумывать какие-то гены в виде частот букв, если можно просто взять и перебрать всё по порядку?
Глава 8
Утром отец оказался в ещё более странном состоянии. Он сидел напротив своего ноутбука и раскачивался из стороны в сторону. Мне подумалось, что он не ложился спать этой ночью. Я окликнул его, и, к моему удивлению, он сразу же отозвался:
— У нас так просто ничего не получится. Алгоритм постоянно залипает в локальных экстремумах. Настройка частоты мутаций практически ничего не даёт.
Я ничего не понял — только то, что у него ничего не получилось. Но, зная отца, я мог быть уверенным, что это временно.
Он оторвался от ноутбука и позвал меня завтракать. На веранде в доме там уже был накрыт стол, готова яичница-глазунья с беконом, душистый чай с травами, мёд, печенья и пирожные. Увидев всё это, я спросил:
— Пап, а ты спал сегодня ночью?
— Конечно. Почему ты спрашиваешь?
— У тебя был такой странный вид утром.
— Просто тяжело идёт. Не думал я, что это такая сложная загадка. Хотя… По словам директора музея, её многие пытались разгадать, но пока ни у кого не вышло. Неправильно было бы считать, что нам она поддастся сразу.
Я согласился. Потом сказал:
— Тебе надо отвлечься. Давай вместе покатаемся на велосипедах.
— Ты прав. Надо поездить по природе. Это помогает. Позови Катю, пусть приезжает. Съездим куда-нибудь вместе.
— Может быть, мы поедем к ней и покатаемся где-нибудь в тех местах?
— Тоже можно. Тогда скажи ей, чтобы была готова через полчаса.
И вот через полчаса мы встретились у ворот в тётушкину усадьбу. Втроём мы поехали дальше по Конторской улице, а когда подъезжали к лесу, я обогнал отца и повернул налево. Доехав до Раёва, я остановился и спешился. Все остановились вслед за мной.
Я сказал отцу:
— Теперь рассказывай. Почему ты говорил мне, что боишься этого места.
Отец улыбнулся. Он явно понял, что я нарочно сказал «говорил» о наведении воспоминаний, чтобы Катя не задавала лишних вопросов. Он тоже спешился и пошёл в лес, но я окликнул его:
— Погоди. Вчера, пока ты пытался взломать шифр, мы всё тут облазили. Здесь ничего нет, кроме ручья.
Тогда он сказал, чтобы мы ехали за ним.
Мы свернули на тропинку, которая вела к Гаретому. По ней мы тихонько проехали ещё метров пятьсот. Наконец отец остановился, оставил велосипед, и мы пошли пешком через чащу из молодых берёзок, которыми заросли все поля вокруг.
Внезапно мы вышли на опушку, а прямо перед нами стояло огромное старое дерево. Это был дуб шириной в несколько обхватов. Отец подошёл к нему и похлопал по нему ладонями. Мне показалось, что он здоровается с деревом.
Он сказал:
— Много лет назад на этом дубе у нас был штаб. Там был построен небольшой домик вроде того, что мы сделали в берёзках. Из него было удобно наблюдать за окрестностями, потому что далеко видно во всех направлениях. Кроме одного. Пошли…
Мы спустились в овраг, на краю которого стоял этот мощный дуб. На дне было как-то необычно тихо — не было слышно даже пения птиц. Зелень вокруг ручья буйствовала. А вот обычных зарослей ольхи не было. Вместо них стояли огромные дубы — роща необыкновенной красоты.
Отец остановился и обвёл руками вокруг:
— Вот эта величественная природа одновременно пугала и восхищала нас. Сюда мы приходили как в своеобразное святилище. Даже приносили жертвы лесным духам, повязывали на ветви деревьев разноцветные тряпочки.
Я был ошарашен. Отец приносил жертвы лесным духам?! Но Катю это не смущало нисколько. Впрочем, это было понятно — она не знала моего отца так хорошо, как я. Но теперь получается, что и я не знаю его достаточно хорошо.
Мы ещё немного постояли и пошли назад. Потом мы поездили по окрестностям, и папа много раз говорил о том, что, когда он был подростком, в том или ином месте было то-то и то-то, а сейчас везде сплошной лес. Кое-где была поросль молодых деревьев, а кое-где и натуральные чащобы. Отец постоянно удивлялся этому. Надо сказать, что этому удивлялся и я тоже, поскольку в моих воспоминаниях никакого леса вокруг села не было.
Когда мы уже возвращались назад, я вдруг задал папе вопрос:
— Как ты думаешь, в каком году была написана шифровка, которую мы разгадываем?
Отец так нажал на тормоза, что его велосипед занесло и он чуть не упал. Он уставился на меня вытаращенными глазами и сказал только:
— Ты гений!
Мы с Катей тоже остановились. Отец продолжал:
— Понимаете, я настроил генетический алгоритм так, чтобы он подбирал варианты со схожими частотами для современного русского языка. Но ведь эта шифровка писалась в девятнадцатом веке, а тогда орфография была совсем другой. Тогда были, например, буквы «ять», «и десятеричное», «фита» и «ижица». А твёрдые знаки в конце слов после согласных? Это всё меняет структуру частот для всего алфавита.
Тут отец задумался и надолго погрузился в свой внутренний мир. Мы уже даже начали беспокоиться, но тут он снова вернулся к нам и сказал:
— Нет, впрочем, не так уж сильно я и ошибся. Если подумать, не должно быть никаких проблем с теми буквами, которые исчезли из алфавита с последней реформой русского языка. Ведь буква «ять» всегда заменяет букву «е», а потому сумма частот их в старом алфавите должна равняться частоте буквы «е» в новом алфавите. То же самое касается букв «и десятеричное», «ижица» и обычной буквы «и», а также букв «фита» и «ф». Только две детали не совпадают. Первая — речь тогда была немного другой, и это всё-таки должно влиять на частоту букв. А вторая состоит в огромном количестве твёрдых знаков. Они-то и портят картину.