Эта удивительная история произошла в далеком уже 1999 году, на рубеже второго и третьего тысячелетий. Незадолго до торжественного юбилея года господня (Anno Domini Nostri Iesu Christi) команда молодых и талантливых программистов — бывших сотрудников НИИ ВЦ МГУ имени М.В. Ломоносова: Антон Шлыков, Александр Андреев и Геннадий Галыгин, — приступила к тестированию созданного ими программно-аппаратного комплекса для решения литературных творческих задач любой сложности в различных операционных средах и со многими наборами данных. Что-то они придумали сами, что-то позаимствовали у других разработчиков игровых и эвристических программ, не поставив их об этом в известность. Но наибольший вклад в общее дело внес СУП — университетский суперкомпьютер (мэйнфрейм), производительностью 100 млн. оп/сек. Эта мощная машина (аналог американской суперЭВМ Gray-1) появилась на свет в 1987 г. на Пензенском заводе ЭВМ Минрадиопрома СССР. В конце 1989 г. после почти двухлетней наладки, ее, наконец, ввели в эксплуатацию. Хотя элементная база СУПа (как и у большинства советских компьютеров) была отвратительной, его архитектура даже по нынешним меркам была безупречной. Устройство ассоциативной памяти позволяло автоматически сохранять наиболее часто используемые операнды, и тем самым сокращать число обращений к оперативной памяти; «расслоение» оперативной памяти, в свою очередь, обеспечивало ускоренный пакетно-конвейерный режим обработки информации. Прежде считалось, что творческие процессы неалгоритмизируемы, и моделирование их на вычислительной машине невозможно, однако наши друзья с помощью СУПа доказали, что машинное мышление продуктивно и способно создавать креативную информацию, в том числе вербальную. В 2003 г. они запатентовали свое изобретение, существующее отчасти в виде hardware (аппаратное устройство, электронный мозг, «тело») и отчасти — software (программное обеспечение, интеллект, «душа»), под торговой маркой «Доктор ШЛАГ» («Doctor Shlag»), — по начальным буквам своих фамилий. Команде разработчиков, в том числе, Ф.М. Кришнаевскому, который сменил Геннадия Галыгина, можно многим гордиться. Некоторые идеи, например, организация ввода/вывода информации, независимая от аппаратных устройств, и управление внешними библиотеками стали техническими новинками, ныне широко используемыми. (Заблаговременно извиняясь перед уважаемым читателем, хотелось бы сразу поставить его в известность о том, что под библиотеками в программировании подразумеваются не стеллажи из книг, а наборы функций, имеющих расширение lib) Сейчас, по мнению специалистов, базовый набор команд и инструкций надежен, достаточно производителен и весьма гибок. Однако проект нельзя назвать вполне успешным. Ошибки проектирования и реализации файловой системы и машинного кода «Доктор ШЛАГ» особенно заметны в образцах произведений, написанных в жанре mainstream. В них пока недостает полноты выражения жизни, реалистичности и поэтичности образов человека и природы. Большая часть допущенных просчетов относится к периоду 1996–1998 гг. и может быть отнесена на счет тяжелых условий жизни российских программистов: устаревшее аппаратное и программное обеспечение, мизерные зарплаты, глубокое падение престижа отечественной науки и т. д. Созданная ими виртуальная словесная машина на начальном этапе когнитивного «творчества» работала нестабильно, например, отказывалась выполнять некоторые императивные команды. Возможно, что для адекватного реагирования на входящую информацию ей недоставало некоторых ключевых компонентов транзисторной или диодно-транзисторной логики. Как сейчас представляется, это могло произойти из-за заводского дефекта одной или нескольких токопроводящих цепей задействованной микропроцессорной аппаратуры.
К сожалению, не обошлось без мистики, криминальных разборок и прочих сопутствующих радостей. Ни в каких научных планах «Доктор ШЛАГ» никогда не значился. Он стал побочным результатом масштабного и высокобюджетного проекта, над которым трудилась секретная лаборатория «А» механико-математического факультета МГУ имени М.В. Ломоносова. В 1993 году, когда сумма «откатов» превысила объем финансирования, проект был закрыт. Спустя много лет, приоткрывая завесу тайны, можно очень осторожно намекнуть на то, что лаборатория «А» совместно с десятками научных центров в Москве, Ленинграде, Новосибирске, Минске и Пензе занималась проблемой искусственного интеллекта (ИИ) в рамках программы освоения дальнего космоса и установления контакта с внеземным разумом. Наши друзья: Шлыков, Андреев и Галыгин, — по штатному расписанию лаборатории «А» проходили как научные сотрудники сектора математического и программного обеспечения. Между прочим, с них были взяты подписки о неразглашении на длительный срок (практически пожизненные — 75 лет). В самой первой работоспособной версии «Доктор ШЛАГ» был заточен на написание литературных произведений в жанре детектива и любовного романа. Соответствующее аппаратно-программное устройство имело несколько рабочих названий: «Фабер», «Фигул», «Понург», и, наконец, «ЭП-Мастер». В 1991–1993 гг. наши друзья разработали для него систему команд на языке Ассемблер (от англ. assembler — сборщик) и придумали удобный и понятный пользовательский интерфейс, состоящий из двух десятков разделов (полей). Каждое из них соответствовало определенному коду ввода исходных данных о месте и времени действия литературного произведения, главных действующих лицах, персонажах второго плана и т. д. Ядро программного комплекса под названием «ЧТИВО» состояло из алгоритмов порядка двадцати наиболее известных произведений классиков детектива и любовного романа. Виртуальной машине предоставлялась возможность их не повторять, а в соответствии с теорией вероятности генерировать новые художественные образы в соответствии с новыми обстоятельствами места и времени. Эти обстоятельства можно было варьировать, в зависимости от того, в какой стране проживали литературные герои, кем они по профессии являлись и какими недугами: физическими и психическими — страдали.
При построении сюжета (фабулы) программа даже учитывала особенности положения элементов их (литературных героев) натальных гороскопов. Если Вы, дорогой читатель, знакомы с языком С или С++, то Вы, конечно, представляете себе широко применяемый в них механизм препроцессорной обработки информации. Он является некоторым аналогом механизма, заложенного в работу искусственного речевого макроассемблера. Для тех, кто ничего раньше не слышал о таких вещах, поясним их суть. Основная идея — разрешение подстановок, которые замещают определенным образом организованную символьную последовательность другой символьной последовательностью.
Создаваемая таким образом последовательность словосочетаний и предложений может быть как последовательностью, конкретизирующей исходные данные, так и последовательностью, формирующей литературные знаки и коды. Главное здесь то, что на входе речевого макроассемблера может быть алгоритмическая композиция, весьма далекая по виду от языка Assembler, а на выходе обязательно будет какой-нибудь «The Da Vinci Code», отображающий символические аналоги команд используемого «электронным писателем» Центрального процессора (CPU). Разработка алгоритмов глубинной структуры художественных образов была, наверное, самой сложной задачей, на разрешение которой у команды разработчиков ушло три года. Неизвестно, смогли ли бы они написать приемлемые схематические модели и шаблоны восприятия, если бы не подсказки университетских преподавателей и друзей-коллег из корпорации IBS. Стажер из Индии г-н Винод Кумар Ратури здорово помог им в создании SQL-редактора и достаточно емкого хранилища данных.
Это позволило обрабатывать все отношения каждой лексической единицы в соответствии с решаемой творческой задачей. Первые любовные и детективные романы, написанные «электронным писателем», были подражательными и, честно говоря, довольно скучными. Особенно блекло выглядели постельные сцены и описания кровавых бандитских разборок. В них явно не хватало того, что принято называть «страстью». Основательно поработав, наши друзья окружили ядро программы модулями нагляднообразной памяти, и довели скорость обработки информации о фактических свойствах предметов до 60 бит в секунду. (Между прочим, как утверждают ученые-нейрофизиологи, именно с такой производительностью работает среднестатистический человеческий мозг, не отягощенный думами о роковых вопросах жизни) После того, как «ЭП-Мастер» научился анализировать и синтезировать непривычные сочетания предметов и их свойств, его уже не так было трудно подвести к стихосложению и музыкальному творчеству. Дальше — больше. Для того чтобы литературные герои не скучали и не выглядели полными идиотами, а могли здраво рассуждать по поводу явлений природы и последних достижений научно-технического прогресса, наши друзья разработали специальный образовательный модуль. После этого интерфейс «ЭП-Мастера» пополнился полями, содержащими код ввода информации об уровне образования литературных героев: «никакой», «поверхностный», «продвинутый» и «академический». И, вот, однажды, «электронный писатель» их приятно удивил пренебрежением к плагиату и способностью сочинять оригинальные повести и романы, которые еще не могли заинтересовать серьезные издательства, но вполне катили для телевидения, хотя бы в качестве литературной основы будущих телесериалов. Выход готовой продукции зависел от мощности компьютера, на котором «крутилась» виртуальная машина. Например, СУП, мог «выплевывать» продукцию масскульта со скоростью одно произведение в час, но даже обычный персональный компьютер IBM с процессором Pentium мог думать 5–6, а иногда 8 часов, но тоже кое-что выдавал, что можно было в дальнейшем использовать в качестве идеи. В середине 90-х российский книжный рынок, благодаря пиратским изданиям отечественных и зарубежных авторов, был переполнен, в том числе, детективами и любовными романами разного толка и уровня.
Популярная прежде экономическая и историческая публицистика, проповедующая либеральные ценности, потеряла актуальность. Та же участь постигла эзотерическую литературу. Мадам Блаватская и Елена Рерих вышли из моды. Из последних сил держались Кандыба и Мулдашев.
Твердая научная фантастика переживала еще более глубокий кризис.
Читатели разлюбили науку, и писатели поспешили укрыться с головой в волшебные миры эльфов и драконов, вампиров и оборотней. Все фантазийные сюжеты обыграны, наверное, по тысяче раз, поэтому наши друзья решили переключиться на другие жанры. Их «электронный писатель» научился сочинять исторические романы. Обоснование времени и места их действия требовало более скрупулезного ввода данных, ибо, даже не самому продвинутому учащемуся современного частного колледжа понятно, что в условиях неолита и даже бронзового века нелепо производить прицельные выстрелы из аркебузы, а также пытаться рассуждать об устройстве Солнечной системы. Первый исторический роман под названием «Опричник» оказался слишком натуралистичным. Эпизоды с описаниями пыток, массовых казней и гомосексуальных оргий вызывали у читателя непроизвольную рвоту. Зато второй исторический роман под названием «Три возраста Нефертити», действие которого происходит в древнем Египте во времена 18-й династии фараонов, получился очень хорошо сбитый, трогательный и романтичный. Критика восприняла произведение вполне благосклонно, правда, специалисты-египтологии нашли в нем ряд фактических ошибок, в частности, указав на то, что царицы по имени Уарат не существовало. Ими также были высказаны сомнения насчет места, где могло произрастать священное дерево египтян под названием «Слезы богов». Однако наших друзей критические стрелы совершенно не задевали, и они искренне надеялись на то, что в перспективе «ЭП-Мастер» сможет сочинять не хуже Александра Дюма. Где-то в середине июля 1997 г., СУП неожиданно выдал сигнал о наличии в ядре программного комплекса критической ошибки. При повторе команды Create совершенно случайно прекратилась подача воды, охлаждавшей отечественные зеленоградские процессоры, и СУП отключился. На восстановление его работоспособности лучшие умы сообщества программистов России потратили целые две рабочие недели.
За это время наших друзей из НИИ ВЦ МГУ имени М.В. Ломоносова, где они верой и правдой проработали пять лет, уволили, посчитав, что они нерационально использовали драгоценное машинное время. Без работы наши друзья остались недолго. Квалифицированные программисты нужны везде, особенно в финансовых структурах. Им удалось продвинуться по службе. Они стали неплохо зарабатывать, улучшили свои жилищные условия и приобрели в кредит престижные иномарки. Но и о программе своей они не забывали. Вносили в нее косметические доработки, надеясь на лучшие времена. И опять неудача!
17 августа 1998 года грянул дефолт, финансово-экономический и политический кризис, и наши друзья снова пополнили ряды «беловоротничковых» безработных. По счастью ненадолго. Известный банкир Александр Смоленский, финансовая империя которого переживала трудные дни, активно искал новые возможности для приложения капитала и учредил венчурный фонд Yozma (в переводе с иврита, означает «инициатива») для развития отечественных нанотехнологий. В структуре фонда существовало IT-подразделение, которому по штатному расписанию требовался системный администратор и еще пара специалистов «на подхвате». И наши друзья, отчасти — по протекции, отчасти — по результатам собеседования, эти открытые вакансии заняли и снова объединились в один творческий коллектив. На момент описываемых событий самому старшему из них — Геннадию Галыгину — исполнилось 40 лет, младшему — Александру Андрееву — перевалило за 30, а их непосредственный начальник Антон Шлыков приблизился к опасной для мужчин черте 37-летнего возраста. За плечами у каждого из них уже был определенный жизненный опыт и профессиональные достижения, позволявшие рассчитывать на карьерный рост и приличную зарплату. Все трое были женаты, и у всех троих были дети, причем у Антона Шлыкова двое: мальчик и еще один мальчик. Текущая работа, которую они выполняли, для них была смешной, с ней они без особого напряжения справлялись, но, что самое примечательное, они получили во временное пользование многострадальный бизнес-компьютер AS/400 фирмы IBM. Многострадальным же он был потому, что его дважды арестовывали: один раз судебные приставы (по иску «обманутых вкладчиков») и один раз представители НКО ОАО «Агентство по реструктуризации кредитных организаций» (АРКО). Всего в Вычислительном центре банковского холдинга было семь 12-процессорных компьютеров такого класса, и они использовались в качестве серверов, исполняющих разнообразные прикладные банковские программы, входящие в стандартный пакет ПО Midas-Kapiti. После того, как компьютер побывал в АРКО, руководство Вычисли-тельного центра перевело его в резерв. Машину изолировали от «эстафетного кольца» и в работу запускали нечасто, — главным образом, для тестирования нового оборудования и программного обеспечения. За пять месяцев, в течение которых наши друзья эту машину использовали, они ее даже ни разу не видели: — она находилась этажом выше их кабинета в категорированном помещении и была соединена с их персональными компьютерами посредством оптико-волоконной связи. На этом компьютере накануне 2000 года они полностью инсталлировали и запустили программный комплекс «ЭП-Мастер», постепенно «разгоняя» его до решения самых сложных творческих задач. Критическую ошибку, которую обнаружил СУП, AS/400 пропустил и подтвердил готовность к сочинению произведений любого жанра и объема. И это имеет приемлемое объяснение. AS/400 — компьютер необыкновенный. Его особенность состоит в том, что команды, представляемые машинному интерфейсу, вначале подвергаются трансляции, и только потом передаются аппаратным средствам. Эту трансляцию осуществляет так называемый лицензионный внутренний код (Licensed Internal Code, LIC). Другими словами, когда софтверная программа выдает машинному интерфейсу команды для выполнения, AS/400 «думает», что этот интерфейс и есть само системное оборудование. Геннадий Галыгин, который обожал творчество М.А. Булгакова, предложил повторить задание, с которым «ЭП-Мастер» в последний раз не справился. Программа не смогла написать рассказ под названием «Еще один странный случай на Патриарших прудах» на тему о любви, которая повторяется только один раз в тысячу лет. Возможно, что именно это задание привело к поломке СУПа, но это еще следовало доказать. По замыслу Галыгина, действие экспериментального рассказа — небольшого художественного произведения, посвященного отдельному знаменательному событию в жизни отдельного человека — имело место быть (состоялось) в конце 1970-х годов в Москве. Прототипом Персонажа (заглавного литературного героя) при вводе в программу конкретных биографических (и астрологических) данных стал некто Дмитрий Васильевич Павлов (сосед Галыгина по лестничной площадке): — с виду простолюдин, местами имбицил, но при этом дерзок и харизматичен. В официальной его биографии наблюдались кое-какие нестыковочки: геолог по образованию и в то же время бывший сотрудник Главлита, простой советский заключенный, отбывший 10-летний срок на ударных комсомольско-молодежных стройках Сибири, а в 90-е годы — не очень богатый, но целеустремлённый бизнесмен: владелец сети антикварных магазинов и салонов в Москве и Санкт-Петербурге. Прототипом Маргариты Галыгин «назначил» жену соседа — Елену Сергеевну Павлову, к которой, честно говоря, был весьма неравнодушен. Эта скромная, общительная, обаятельная и привлекательная 35-летняя дама, между прочим, являлась признанной поэтессой, публиковавшей прекрасные лирические стихи под своей девичьей фамилией. Вначале Галыгин хотел списать человеческий образ Персонажа со всеми его достоинствами и недостатками с себя, любимого, но застеснялся, чтобы не выглядеть смешным в глазах друзей-коллег. Со своим мужем Елена Сергеевна жила вроде бы в согласии, но иногда ему доводилось видеть ее заплаканной, а один раз даже с бланшем под глазом. Дмитрий Васильевич, будучи сильно выпивши, что в последнее время происходило с ним довольно часто, становился совершенно невыносимым. И тогда она, забрав 12-летнюю дочь Аню, уходила к соседям. Несколько раз, таким образом, она оказывалась в гостях у Галыгиных. Образы героев второго плана «электронный писатель» должен был генерировать сам — по ассоциации с персонажами-типажами произведений советских писателей-диссидентов 1970-х годов: Синявского-Терца, Максимова, Некрасова, Горенштейна, Кузнецова, Ерофеева и Аксенова. Для придания рассказу большей правдоподобности наши друзья написали и «залили» в один из CISC-процессоров компьютера AS/400 довольно замысловатый микрокод, который они назвали Genius loci, а по-русски — Гений места. Вышеупомянутый логический объект, собранный на основе уравнений квантовой хронодинамики, должен был создавать в работе виртуальной машины «глюки», то есть непредвиденные ошибки, которые ей же самой предстояло исправлять. Без неточностей и откровенных ляпов, уж извините, не обходится ни одно художественное творение. Немного поработав, «ЭП-Мастер» запросил о главном герое дополнительную информацию, включая данные последней кардиограммы, и попросил уточнить положение Венеры и Юпитера в его натальном гороскопе. Еще не поздно задание было отменить, принимая во внимание метафизическую неоднозначность творчества Булгакова и потрясающую достоверность созданных им художественных образов.
Однако наши друзья отнеслись к постановке творческой задачи слишком легкомысленно, и это в дальнейшем привело к непредвиденным, неприятным и даже огорчительным последствиям.