Страница:
Хоган Джеймс
Кодекс жизнетворца
Джеймс ХОГАН
КОДЕКС ЖИЗНЕТВОРЦА
Айрис, с опозданием
ПРОЛОГ. ИСКАТЕЛЬ
СВЫШЕ МИЛЛИОНА ЛЕТ ДО Р.Х.
ТЫСЯЧА СВЕТОВЫХ ЛЕТ ОТ СОЛНЕЧНОЙ СИСТЕМЫ
Люди, узнав о цели этого корабля, назвали бы его "Искателем". Корабль автоматический, в милю длиной, обтекаемой формы для спуска в атмосферу, управлялся компьютерами. Цивилизация чужаков достигла высокого уровня, а компьютеры - совершенства.
Планета, которую обнаружил "Искатель" после многолетнего полета, была четвертой в системе звезды, названной именем загадочного бога чуждой расы; эту планету можно именовать Зевс-IV. Ничего интересного на ней не было: безвоздушный безжизненный шар, голые скалы, множество кратеров и обломков от столкновений с метеоритами, огромные пространства вулканического пепла и пыли, однако замеры с орбиты и образцы, добытые посадочными аппаратами, показали, что кора богата титаном, хромом, кобальтом, медью, магнием, ураном и многими другими ценными элементами, возникшими в результате тепло-жидкостных процессов в истории планеты. Такое природное изобилие металлов могло обеспечить крупномасштабное производство без обращения к громоздким процессам преобразований атомов, другими словами - очень экономично, а именно для поиска таких возможностей и был сконструирован "Искатель". Проанализировав предварительные данные, контрольные компьютеры выбрали посадочную площадку, составили и передали сообщение о своей находке и дальнейших намерениях и привели в действие очередность посадочных процедур.
Вскоре после посадки огромное количество исследовательских роботов, вооруженных зрительными устройствами, спектрометрами, анализаторами, химическими сенсорами, заборщиками образцов, радиационными датчиками и разнообразными манипуляторами выгрузились из корабля и рассеялись по окружающей местности, чтобы исследовать заранее с орбиты намеченные территории. Их находки передавались на корабль, обрабатывались, и вскоре последовали отряды шахтных, бурильных и транспортных роботов - на гусеницах, на колесах и на ногах. Эти роботы начали поставлять руды и другие материалы туда, где разворачивалась экспериментальная обогатительная фабрика на ядерной энергии. Далее появилась фабрика по производству отдельных деталей, затем сборочная фабрика, и постепенно, шаг за шагом, возникло полностью оборудованное многоцелевое производство, завершенное, вплоть до собственных контрольных компьютеров. Основная программа корабельных компьютеров была скопирована компьютерами фабрики, которые отныне стали независимыми и взяли на себя все управление наземными операциями. Фабрика начала производство новых роботов.
Иногда, конечно, получались результаты, отличные от намеченных, но инженеры чужаков выработали собственный аналог закона Мерфи и учитывали его в своих планах. Ремонтные роботы устраняли поломки, сменяли изношенное и вышедшее из строя оборудование; специальные программы отслеживали причины срывов производства и наделяли машины определенным спектром терпимости к изменениям; особые команды роботов собирали вышедшие из-под контроля машины и возвращали их на фабрику для ремонта; а специализированные роботы-сборщики металлолома шарили по поверхности в поисках обломков, списанных конструкций, выброшенных компонентов и всего остального, что пригодно для обработки и рециклирования.
Проходило время, фабрика работала, увеличивалось количество роботов, росло их разнообразие. И когда население роботов достигло критического уровня, смешанная команда отделилась от главного центра и отошла на несколько миль, чтобы построить вторую фабрику, копию первой, используя материалы, которые предоставляла Фабрика N_1. Когда Фабрика N_2 стала самостоятельной, Фабрика N_1, чья первоначальная функция была выполнена, перешла на массовое производство товаров и материалов, для перевозки их на планету чужаков.
Фабрика N_2 повторила этот процесс и начала создавать Фабрику N_3, а рабочий отряд с Фабрики N_1 в то же время вместе со всеми своими инструментами занялся подготовкой к открытию Фабрики N_4. И к тому времени как начала работать Фабрика N_4, уже начали сооружаться Фабрики NN_5, 6, 7 и 8, Фабрика N_2 перешла на массовое производство, а на Фабрике N_3 строился грузовой флот, который будет перевозить домой уже накопившуюся продукцию. И этот самовоспроизводящийся процесс вскоре должен был превратить всю поверхность Зевса IV в полностью автоматизированный производственный комплекс, который будет снабжать далекую цивилизацию чужаков местными ресурсами.
Основная программа "Искателя" через свои многочисленные каналы следила за работой и пришла к выводу, что все нормально. После повторной тщательной проверки всех систем и механизмов корабль взял на борт первоначальный рабочий отряд и устремился в космос в поисках новых миров, чтобы снова начать тот же цикл.
ПЯТЬДЕСЯТ ЛЕТ СПУСТЯ
Недалеко - по галактическим масштабам - от Зевса была другая звезда, горячая, голубовато-белая звезда с массой в 15 раз больше Солнца. Она сформировалась быстро, и продолжение ее жизни - внутренние термоядерные реакции временно приостановили коллапс свертывания - требовало огромного количества энергии. Прошло всего десять миллионов лет, и звезда, которая преобразовала весь водород своей внешней оболочки в гелий, возобновила коллапс, пока температура центра не стала достаточно высокой для преобразования гелия в углерод; затем, когда весь гелий был истрачен, звезда повторила процесс и начала сжигать углерод. Но преобразующийся углерод еще выше поднял температуру, что заставило его гореть еще сильнее; это, в свою очередь, опять повысило температуру, и сброс оболочки прошел в звездных масштабах практически мгновенно. За несколько дней звезда превратилась в сверхновую, в миллиард раз превзошла яркость Солнца, взорвалась и начала расширяться, так что ее внешняя поверхность охватила пространство с радиусом, большим, чем у планеты Уран, и в этом процессе поглотила целую стаю планет.
Эти планеты числились следующей целью в списке "Искателя", и корабль как раз направлялся к этой цели, когда звезда взорвалась. Радиационный удар достиг корабля на расстоянии в три миллиарда миль.
Корпус "Искателя" выдержал удар относительно неплохо, но вторичное рентгеновское излучение и высокоэнергетические элементарные частицы - а все это определенно вредно для компьютеров - заполнили его внутренности. Большинство внешних сенсоров сгорело, навигационная система вышла из строя, многие программы стерлись или изменились, а сам "Искатель" повернул и снова исчез в глубинах межзвездного пространства.
Теперь он направился к небольшой желто-белой звезде в тысяче световых лет. Эта звезда тоже обладала семейством планет, и на третьей из этих планет потомки рода полуразумных обезьян овладели огнем и начали экспериментировать с каменными орудиями.
Сверхновые - исключительно редкое явление, в средней галактике они загораются два-три раза в год. Но как и из большинства обобщений, из этого тоже бывают исключения. Сверхновая, заставившая повернуть "Искатель", оказалась первой в небольшой цепи, разорвавшей местное скопление крупных звезд, образовавшихся примерно в одно время. В самой середине этого скопления располагалась нормальная долгоживущая звезда - родная звезда цивилизации чужаков. Чужаки так и не успели основать колонии за пределами своей системы, и поэтому вся их цивилизация погибла.
У всех случаются неудачи.
МИЛЛИОН ЛЕТ ДО Р.Х.
Через сто тысяч лет после того, как его обожгла вспышка сверхновой, "Искатель" вошел во внешние пределы планетной системы. Приборы дальней разведки функционировали у него лишь частично, исследовательские аппараты вообще бездействовали, и потому корабль сразу начал высадку на первом же встреченном им теле достаточного размера. Это оказался замерзший шар в три тысячи миль в диаметре, покрытая льдом скала, с морями жидкого метана и атмосферой из азота, водорода и метановых паров. Этот шар никак не отвечал критериям выгодной эксплуатации, но это не имело значения, так как программы, ответственные за разведку и оценку поверхности, не работали.
Однако программы, ведавшие деятельностью на поверхности, более или менее сохранились, и вскоре на скалистом выступе ледяного полуострова мелкого метанового моря начала функционировать Фабрика N_1 со всеми своими основными функциями. Компьютеры вновь созданной фабрики скопировали основную программу и стали выполнять первую задачу - создание Фабрики N_2. Соответственно контрольная программа Фабрики N_1 запросила у корабельной базы данных копию программы "Как построить Фабрику"; в этом файле заключался целый набор субфайлов "Как сделать машины, необходимые для строительства Фабрики", то есть роботов. И вот тут начались серьезные сбои.
У роботов имелись небольшие внутренние процессоры, которые можно было по радио перепрограммировать с фабрики, чтобы робот мог выполнить очередное задание. Это позволяло роботам действовать автономно под местным контролем и освобождало центральные компьютеры, которые ожидали сигнала: "Выполнено. Следующее задание?" Поэтому в роботах имелись специальные программы, которые обеспечивали обмен информацией между компьютерами фабрики и процессорами роботов.
При копировании программы "Как сделать Фабрику" были задействованы искаженные цепи: программа пошла не в центральную систему Фабрики, а в процессоры многочисленных роботов, которых она касалась, причем каждый робот воспринимал свою часть программы. В базе данных самой Фабрики никаких копий этой программы не было сделано. И что еще хуже, в этом процессе стерся оригинал программы, находившийся в корабле. И теперь программа "Как сделать робот типа Фред [ФРЕД, FRED, Friendly Robot Educational Device - самообучающийся робот]" содержалась только в роботах типа Фред на поверхности. И то же самое оказалось справедливо для всех остальных типов.
И вот когда контрольная программа фабрики передала приказ исполнительной программе начать создание производственных роботов, а исполнительная программа передала этот приказ системе управления базой данных, система управления обнаружила, что не может найти эту информацию. И получить копию с корабля тоже невозможно. Система управления базой данных сообщила об этом затруднении исполнительной программе; та передала контрольной программе; контрольная программа обвинила систему связи; система связи затребовала объяснений у передаточных инстанций. После длительных электронных разборок и обвинений было наконец установлено, что исчезнувшие субфайлы находятся в роботах на поверхности. По строжайшему приказу контрольной программы программа связи выбрала одного из Фредов первой категории из списка исполнительной программы и передала ему команду возвратить субфайл.
Но у Фреда не было полного субфайла этой программы: его память недостаточно обширна для нее. По той же самой причине ни один из Фредов не обладал всей программой. Программа разлилась по ним, как заполняются ведра из пожарного шланга: у каждого была своя часть; но в целом они как будто сохранили весь субфайл. И поэтому контрольной программе пришлось извлекать части из разных Фредов и совмещать их таким образом, чтобы это имело смысл. Контрольная программа создала таким образом свою версию и передала ее исполнительной программе для производства.
К несчастью, команда на запись информации на будущее каким-то образом затерялась, и каждый субфайл "Как сделать" для очередной группы Фредов после использования стирался, как только производство заканчивалось. И поэтому когда Фабрика N_1 закончила отправку роботов для строительства Фабрики N_2 и должна была выслать группу для выбора места под Фабрику N_3, контрольной программе пришлось начинать все с начала. И то же самое приходилось делать при замене вышедших из строя роботов.
Все это заняло большое количество процессорного времени, перегрузило каналы связи и вообще было неэффективно, отчего встревожились электронные бухгалтеры. В результате возникла самосовершенствующаяся гибкая обучающаяся программа, которая отыскивала экономически неэффективные способы и старалась их усовершенствовать. После нескольких попыток контрольная программа обнаружила, что среди Фредов разных типов есть такие, которые содержат половину соответствующего субфайла, а это означало, что полный субфайл можно получить у двух индивидуумов, а не у всех сразу, как раньше. Соответственно программа начала отыскивать такие "совпадающие" пары как источник ответа на запросы исполнительной программы и перестала обращать внимание на остальных Фредов.
Вместе с первоначальными субфайлами "Как сделать Фред" были утрачены субсубфайлы программы "Что делать, после того как все сделано". Чтобы восполнить этот пробел. контролирующая программа запросила у исполнительной программы весь набор файлов, касающихся воспроизводства, и среди них, конечно, программу, как делать Фредов. И вот с конвейера стали сходить роботы с половиной "генетической" информации, автоматически встроенной в них, и этот цикл повторялся при производстве новых Фредов. Метод действовал, и контрольная программа так и не додумалась, что можно было просто записать эту информацию в базе данных фабрики, а не передавать от одного робота другому.
Но части программы могли перекомбинироваться и не повторяли в точности первоначальное сочетание, "геномы", составляющие их, редко оказывались идентичными, в некоторых встречались отрывки, стертые в других. И постепенно Фреды начали приобретать разную форму и вести себя по-разному.
Некоторые вообще никак себя не вели, а просто падали, не выдержав проверочного теста, их разбирали на части и снова пускали в производство. Таких было много.
Некоторые - на самых начальных стадиях - оказывались генетически неполными, "стерильными", и поэтому контрольная программа не запрашивала у них данные для самовоспроизводства. Они существовали, пока не изнашивались и выходили из строя.
Некоторые размножались пассивно, то есть передавали на фабрику свои половины субфайлов, когда их запрашивала контрольная программа.
Однако некоторые унаследовали от первоначальной основной программы потребность производить роботов своего типа, их программа была организована таким образом, что они должны были постоянно искать возможности выполнить основное свое предназначение - произвести себе подобных. Роботы этой категории размножались активно: они вели себя так, чтобы их "генетические" половины обязательно попали в исполнительную программу.
Когда Фабрика N_1 перешла на производство товаров и материалов, роботы, соревновавшиеся за возможность участвовать в производстве, скоро заполнили всю ее память, и фабрика больше ничего другого делать уже не могла. Фабрика N_2 действовала по программа, скопированной с Фабрики N_1, и потому с ней случилось то же самое. И тот же цикл передался Фабрике N_3, которая уже начала сооружаться к этому времени.
Постепенно все больше фабрик начало возникать на скалистом берегу. Нестабильность, унаследованная от первых программ, передавалась копиям копий, перешла к последующим поколениям, и новые фабрики стали все больше различаться по форме и функции.
Материальных ресурсов почти повсюду не хватало, и так возникла конкуренция, на которую чужаки, создатели программ, не рассчитывали. Общины роботов каждой фабрики включали смесь из исследовательских, доставочных и разделочных роботов, которые удовлетворяли свои "аппетиты" в соответствии с потребностями фабрики, и те фабрики, которые оказались на более выгодных участках поверхности, выживали, если не процветали. Например, Фабрика N_10 расположилась в центре древнего метеоритного кратера двенадцати миль в диаметре; здесь высокая температура и удар обнажили скальное основание под слоем льда; Фабрика N_13 оказалась в глубокой трещине, где лед был относительно тонок, и смогла пробить шахту к более богатой материалами коре; а Фабрика N_15 разработала процесс синтеза более тяжелых атомов из более легких, которые вмерзли в раствор ледяной коры. Но многие фабрики, например, Фабрика N_19, которая размещалась на толстом поле льда и остановилась, когда вышли из строя бурильные роботы, а процесс синтеза атомов не сработал, - многие фабрики разделили ее судьбу, когда кончались пригодные материалы.
Роботы-стервятники сыграли большую роль в развивающемся странном метаболизме. Что бы ни приказывали контрольные программы многочисленных фабрик, выполнить можно было лишь то, для чего имелись возможности, запасные части, а это, в свою очередь, зависело от способности стервятников отыскать их или найти такие собрания этих частей, которые можно разобрать - "переварить", чтобы использовать снова. Крайним примером может служить Фабрика N_24. Не в состоянии создавать части из сырья, потому что не действовала ее программа производства, она целиком зависела от своих роботов-стервятников. С другой стороны, Фабрика N_32 могла добывать сырье, но не могла его использовать, потому что была построена вообще без производственных мощностей. Ее роботы перешли к Фабрике N_47, которая могла производить запасные части для роботов с Фабрики N_32, и таким образом две этих фабрики смогли благополучно существовать в своеобразном симбиозе.
Груды разнообразного лома, которых не должно было бы существовать, если бы предыдущие стадии процесса исполнялись нормально, оказались съедены; вышедшие из строя машины съедены; корпуса переставших функционировать фабрик съедены. И когда эти источники исчерпались, некоторые машины начали пожирать друг друга.
Роботы-стервятники было сконструированы таким образом, чтобы отличать нормально функционирующие машины от вышедших из строя и пригодных для переработки. Однако, как и в других достаточно сложных процессах, в одних случаях эта установка срабатывала хорошо, в других - не очень хорошо, а в третьих - вообще не срабатывала. Некоторые модели стервятников готовы были уничтожить не только мертвого, лежащего Фреда, но и живого, функционирующего. Многие из жертв проявляли равнодушие к своей судьбе и вскоре вымерли, но другие сумели развить эффективную реакция "сопротивляйся или беги", и так началось разделение на добычу и хищников, а среди хищников - на питающихся материалами и машинами.
Не всегда этот процесс проходил успешно. Например, Фабрика N_50 была уничтожена собственными отпрысками: едва сойдя с конвейера, они начали разбирать ее на части и гордо нести эти части к началу производственного цикла. Ремонтные роботы не успевали справляться с повреждениями, и фабрика остановилась и стала добычей грабителей с Фабрик NN_36 и 53. Наиболее преуспевающие фабрики оборонялись, создавая агрессивные армии защитных "антител", которые распознавали роботов, произведенных своей фабрикой, и не трогали их, но уничтожали все "чужие" модели, оказывавшиеся поблизости. Постепенно это стало господствующей формой организации и обычно ассоциировалось с определенной территорией, где собирались и совместно защищались роботы одного происхождения.
К этому времени на месте Фабрик NN_1 и 2 осталось только несколько отверстий в скальном грунте. Эти фабрики не поспевали за временем, и их территория перешла под власть Фабрики N_65. А единственным следом от космического аппарата с "Искателя" осталось длинной круглое углубление на ледяном берегу жидкого метанового моря.
Инженеры чужаков создавали систему таким образом, чтобы постепенно возникла всепланетная связь с помощью спутников и станций на поверхности, но в данном случае это не получилось, потому что спутники не были запущены на орбиту, а наземные станции продержались недолго. Поэтому некоторые из вновь созданных организмов, лишенные сильных защитных средств, вынуждены были спасаться от голодных до металла империй просто расстоянием. Но предвидя возможные сбои в коммуникации, чужаки снабдили роботов вспомогательной системой программирования и обмена информацией между роботами и фабрикой в виде прямой физической электронной связи. Конечно, это гораздо более медленный процесс, чем радиосвязь, поскольку он требовал, чтобы роботы физически присутствовали на фабрике для перепрограммирования и отчета, но все же этот метод в удаленных местностях при отсутствии радиосвязи оказался лучше, чем ничего. И электронные бухгалтеры были спокойны, так как вложения возмещались.
Поскольку возможны любые нарушения функций, неизбежно некоторые организмы проявляли частичный или полный отказ от радио. Фабрика N_73 была построена роботами Фабрики N_66 вообще без радиосвязи. Все роботы этой фабрики использовали только вспомогательную, непосредственную связь, и фабрики, порожденные позже, унаследовали эту особенность. Но это означало, что радиус их действия резко сокращался.
Некоторые из этих "недостатков" в конечном счете оказались вовсе не недостатками. Партии грабителей смогли продвигаться все дальше, увеличили свои охотничьи территории и в качестве премии часто получали местности, ранее недоступные из-за своей географической удаленности. Больше того, процесс отбора привел к усовершенствованию анатомии роботов, участвовавших в таких операциях. Роботы с автономными небольшими процессами склонны были к отбору наиболее простых решений, но таких, которые можно осуществить возможно быстрее. Они выработали эффективные "рефлексы". Более сложные роботы, обладавшие радиосвязью, опирались на большие компьютеры и прибегали к более сложным решениям, но часто эти решения запаздывали и не приносили ничего хорошего. И таким образом эволюция привела к тому, что автономность стала нормой, а связь на расстоянии вымирала и сохранилась только в нескольких изолированных районах.
Инстинкт, заставляющий периодически передавать половинки своей генетической информации на фабрику, стал постепенно универсальной особенностью роботов - потомки бывают только у тех предков, которые оставляют потомков, - и в ответ на исчезновение радиосвязи у роботов выработалось обыкновение через определенные промежутки времени возвращаться туда, откуда они пришли, "на родную землю". Но этот метод воспроизводства имел свои проблемы и поставил новые препятствия на пути эволюции.
Главная проблема заключалась в том, что индивидуум мог доставить только половину генома на фабрику, после чего контрольная программа должна была записать эту информацию и хранить до тех пор, пока не появится робот того же типа с отсутствующей половиной; только тогда контрольная программа могла передать команду производственной программе. Но очень часто контрольная программа оказывалась в промежутках занята другими проблемами, ей приходилось стирать половинку, чтобы освободить память для других настоятельных вопросов, - плохая новость для Фреда, доставившего свою половинку: выходит, он весь репродуктивный процесс проделал зря. Успешное решение этой проблемы пришло с появлением нового способа генетической рекомбинации; случайно этот способ привел и к разрешению "информационного кризиса", который начал сокращать объем возможных генетических вариантов, необходимых для усовершенствования в процессе отбора.
Некоторые роботы-мутанты знали, что должны передать свои половинки генетической программы куда-то, но куда именно, не знали или не думали об этом. Подходило все с электрическими связями и совместимыми внутренними программами, а это обычно означало других роботов того же основного типа. А так как робот, завершивший свои функции, обычно ожидал новой команды, перепрограммирования, которое приходило с фабрики, встречный донор оказывался очень кстати, если попадался в нужное время. Таким образом, многое зависело от обстоятельств и случайных совпадений.
Автономная память роботов по сравнению с памятью их предков постепенно увеличивалась, но рос объем и сложность и их программ, в результате у принимающего робота обычно не оказывалось достаточно места для постоянного сохранения программы "Как сделать Фреда". Половинку донора можно было принять, только уничтожив что-то из содержащегося в памяти. И это происходило по-разному в разных типах роботов.
В некоторых случаях новая запись стирала целую программу принимающего робота, и этот робот терял полностью способность осуществлять функции, контролировавшиеся этой программой. Обычно это приводило к гибели, и не оставалось потомков, готовых повторить ту же ошибку. Удачной альтернативой оказывалось стирание несущественных частей многих программ, что приводило к ухудшению общих функций робота: он терял быстроту, проворство, способность защищаться, но по крайней мере продолжал функционировать. Это ухудшение оказывалось временным, потому что когда робот доставлял всю генетическую программу на фабрику, его способности восстанавливались.
Зато в обмен на некоторые усложнения и несовершенства была получена огромная выгода: репродуктивные субфайлы доставлялись на фабрику в целом виде, их без промедления могла использовать производственная программа и не было опасности, что их сотрет слишком загруженная контрольная программа. Этот новый метод воспроизводства решил проблему надежности, которая стала серьезной помехой на пути прежнего - "асексуального" способа воспроизводства.
Информационный кризис, также разрешенный новым способом, возник в результате "инбридинга", близкородственного скрещивания, так как в распоряжении контрольных программ оказывались ограниченные генетические наборы местных "племен" и так как их сдерживали жесткие правила, оставленные инженерами цивилизации чужаков. Однако роботы могли выходить за пределы своих "племенных" границ, они ничего не знали об ограничениях в правилах и сочетали половинки генетической информации случайно и в таких сочетаниях, которые и в голову не могли прийти их создателям. Большинство возникавших в результате потомков не функционировало, и их разбирали прямо на самой фабрике. Но некоторые расходились во все стороны, и с них начался новый этап эволюционного процесса.
КОДЕКС ЖИЗНЕТВОРЦА
Айрис, с опозданием
ПРОЛОГ. ИСКАТЕЛЬ
СВЫШЕ МИЛЛИОНА ЛЕТ ДО Р.Х.
ТЫСЯЧА СВЕТОВЫХ ЛЕТ ОТ СОЛНЕЧНОЙ СИСТЕМЫ
Люди, узнав о цели этого корабля, назвали бы его "Искателем". Корабль автоматический, в милю длиной, обтекаемой формы для спуска в атмосферу, управлялся компьютерами. Цивилизация чужаков достигла высокого уровня, а компьютеры - совершенства.
Планета, которую обнаружил "Искатель" после многолетнего полета, была четвертой в системе звезды, названной именем загадочного бога чуждой расы; эту планету можно именовать Зевс-IV. Ничего интересного на ней не было: безвоздушный безжизненный шар, голые скалы, множество кратеров и обломков от столкновений с метеоритами, огромные пространства вулканического пепла и пыли, однако замеры с орбиты и образцы, добытые посадочными аппаратами, показали, что кора богата титаном, хромом, кобальтом, медью, магнием, ураном и многими другими ценными элементами, возникшими в результате тепло-жидкостных процессов в истории планеты. Такое природное изобилие металлов могло обеспечить крупномасштабное производство без обращения к громоздким процессам преобразований атомов, другими словами - очень экономично, а именно для поиска таких возможностей и был сконструирован "Искатель". Проанализировав предварительные данные, контрольные компьютеры выбрали посадочную площадку, составили и передали сообщение о своей находке и дальнейших намерениях и привели в действие очередность посадочных процедур.
Вскоре после посадки огромное количество исследовательских роботов, вооруженных зрительными устройствами, спектрометрами, анализаторами, химическими сенсорами, заборщиками образцов, радиационными датчиками и разнообразными манипуляторами выгрузились из корабля и рассеялись по окружающей местности, чтобы исследовать заранее с орбиты намеченные территории. Их находки передавались на корабль, обрабатывались, и вскоре последовали отряды шахтных, бурильных и транспортных роботов - на гусеницах, на колесах и на ногах. Эти роботы начали поставлять руды и другие материалы туда, где разворачивалась экспериментальная обогатительная фабрика на ядерной энергии. Далее появилась фабрика по производству отдельных деталей, затем сборочная фабрика, и постепенно, шаг за шагом, возникло полностью оборудованное многоцелевое производство, завершенное, вплоть до собственных контрольных компьютеров. Основная программа корабельных компьютеров была скопирована компьютерами фабрики, которые отныне стали независимыми и взяли на себя все управление наземными операциями. Фабрика начала производство новых роботов.
Иногда, конечно, получались результаты, отличные от намеченных, но инженеры чужаков выработали собственный аналог закона Мерфи и учитывали его в своих планах. Ремонтные роботы устраняли поломки, сменяли изношенное и вышедшее из строя оборудование; специальные программы отслеживали причины срывов производства и наделяли машины определенным спектром терпимости к изменениям; особые команды роботов собирали вышедшие из-под контроля машины и возвращали их на фабрику для ремонта; а специализированные роботы-сборщики металлолома шарили по поверхности в поисках обломков, списанных конструкций, выброшенных компонентов и всего остального, что пригодно для обработки и рециклирования.
Проходило время, фабрика работала, увеличивалось количество роботов, росло их разнообразие. И когда население роботов достигло критического уровня, смешанная команда отделилась от главного центра и отошла на несколько миль, чтобы построить вторую фабрику, копию первой, используя материалы, которые предоставляла Фабрика N_1. Когда Фабрика N_2 стала самостоятельной, Фабрика N_1, чья первоначальная функция была выполнена, перешла на массовое производство товаров и материалов, для перевозки их на планету чужаков.
Фабрика N_2 повторила этот процесс и начала создавать Фабрику N_3, а рабочий отряд с Фабрики N_1 в то же время вместе со всеми своими инструментами занялся подготовкой к открытию Фабрики N_4. И к тому времени как начала работать Фабрика N_4, уже начали сооружаться Фабрики NN_5, 6, 7 и 8, Фабрика N_2 перешла на массовое производство, а на Фабрике N_3 строился грузовой флот, который будет перевозить домой уже накопившуюся продукцию. И этот самовоспроизводящийся процесс вскоре должен был превратить всю поверхность Зевса IV в полностью автоматизированный производственный комплекс, который будет снабжать далекую цивилизацию чужаков местными ресурсами.
Основная программа "Искателя" через свои многочисленные каналы следила за работой и пришла к выводу, что все нормально. После повторной тщательной проверки всех систем и механизмов корабль взял на борт первоначальный рабочий отряд и устремился в космос в поисках новых миров, чтобы снова начать тот же цикл.
ПЯТЬДЕСЯТ ЛЕТ СПУСТЯ
Недалеко - по галактическим масштабам - от Зевса была другая звезда, горячая, голубовато-белая звезда с массой в 15 раз больше Солнца. Она сформировалась быстро, и продолжение ее жизни - внутренние термоядерные реакции временно приостановили коллапс свертывания - требовало огромного количества энергии. Прошло всего десять миллионов лет, и звезда, которая преобразовала весь водород своей внешней оболочки в гелий, возобновила коллапс, пока температура центра не стала достаточно высокой для преобразования гелия в углерод; затем, когда весь гелий был истрачен, звезда повторила процесс и начала сжигать углерод. Но преобразующийся углерод еще выше поднял температуру, что заставило его гореть еще сильнее; это, в свою очередь, опять повысило температуру, и сброс оболочки прошел в звездных масштабах практически мгновенно. За несколько дней звезда превратилась в сверхновую, в миллиард раз превзошла яркость Солнца, взорвалась и начала расширяться, так что ее внешняя поверхность охватила пространство с радиусом, большим, чем у планеты Уран, и в этом процессе поглотила целую стаю планет.
Эти планеты числились следующей целью в списке "Искателя", и корабль как раз направлялся к этой цели, когда звезда взорвалась. Радиационный удар достиг корабля на расстоянии в три миллиарда миль.
Корпус "Искателя" выдержал удар относительно неплохо, но вторичное рентгеновское излучение и высокоэнергетические элементарные частицы - а все это определенно вредно для компьютеров - заполнили его внутренности. Большинство внешних сенсоров сгорело, навигационная система вышла из строя, многие программы стерлись или изменились, а сам "Искатель" повернул и снова исчез в глубинах межзвездного пространства.
Теперь он направился к небольшой желто-белой звезде в тысяче световых лет. Эта звезда тоже обладала семейством планет, и на третьей из этих планет потомки рода полуразумных обезьян овладели огнем и начали экспериментировать с каменными орудиями.
Сверхновые - исключительно редкое явление, в средней галактике они загораются два-три раза в год. Но как и из большинства обобщений, из этого тоже бывают исключения. Сверхновая, заставившая повернуть "Искатель", оказалась первой в небольшой цепи, разорвавшей местное скопление крупных звезд, образовавшихся примерно в одно время. В самой середине этого скопления располагалась нормальная долгоживущая звезда - родная звезда цивилизации чужаков. Чужаки так и не успели основать колонии за пределами своей системы, и поэтому вся их цивилизация погибла.
У всех случаются неудачи.
МИЛЛИОН ЛЕТ ДО Р.Х.
Через сто тысяч лет после того, как его обожгла вспышка сверхновой, "Искатель" вошел во внешние пределы планетной системы. Приборы дальней разведки функционировали у него лишь частично, исследовательские аппараты вообще бездействовали, и потому корабль сразу начал высадку на первом же встреченном им теле достаточного размера. Это оказался замерзший шар в три тысячи миль в диаметре, покрытая льдом скала, с морями жидкого метана и атмосферой из азота, водорода и метановых паров. Этот шар никак не отвечал критериям выгодной эксплуатации, но это не имело значения, так как программы, ответственные за разведку и оценку поверхности, не работали.
Однако программы, ведавшие деятельностью на поверхности, более или менее сохранились, и вскоре на скалистом выступе ледяного полуострова мелкого метанового моря начала функционировать Фабрика N_1 со всеми своими основными функциями. Компьютеры вновь созданной фабрики скопировали основную программу и стали выполнять первую задачу - создание Фабрики N_2. Соответственно контрольная программа Фабрики N_1 запросила у корабельной базы данных копию программы "Как построить Фабрику"; в этом файле заключался целый набор субфайлов "Как сделать машины, необходимые для строительства Фабрики", то есть роботов. И вот тут начались серьезные сбои.
У роботов имелись небольшие внутренние процессоры, которые можно было по радио перепрограммировать с фабрики, чтобы робот мог выполнить очередное задание. Это позволяло роботам действовать автономно под местным контролем и освобождало центральные компьютеры, которые ожидали сигнала: "Выполнено. Следующее задание?" Поэтому в роботах имелись специальные программы, которые обеспечивали обмен информацией между компьютерами фабрики и процессорами роботов.
При копировании программы "Как сделать Фабрику" были задействованы искаженные цепи: программа пошла не в центральную систему Фабрики, а в процессоры многочисленных роботов, которых она касалась, причем каждый робот воспринимал свою часть программы. В базе данных самой Фабрики никаких копий этой программы не было сделано. И что еще хуже, в этом процессе стерся оригинал программы, находившийся в корабле. И теперь программа "Как сделать робот типа Фред [ФРЕД, FRED, Friendly Robot Educational Device - самообучающийся робот]" содержалась только в роботах типа Фред на поверхности. И то же самое оказалось справедливо для всех остальных типов.
И вот когда контрольная программа фабрики передала приказ исполнительной программе начать создание производственных роботов, а исполнительная программа передала этот приказ системе управления базой данных, система управления обнаружила, что не может найти эту информацию. И получить копию с корабля тоже невозможно. Система управления базой данных сообщила об этом затруднении исполнительной программе; та передала контрольной программе; контрольная программа обвинила систему связи; система связи затребовала объяснений у передаточных инстанций. После длительных электронных разборок и обвинений было наконец установлено, что исчезнувшие субфайлы находятся в роботах на поверхности. По строжайшему приказу контрольной программы программа связи выбрала одного из Фредов первой категории из списка исполнительной программы и передала ему команду возвратить субфайл.
Но у Фреда не было полного субфайла этой программы: его память недостаточно обширна для нее. По той же самой причине ни один из Фредов не обладал всей программой. Программа разлилась по ним, как заполняются ведра из пожарного шланга: у каждого была своя часть; но в целом они как будто сохранили весь субфайл. И поэтому контрольной программе пришлось извлекать части из разных Фредов и совмещать их таким образом, чтобы это имело смысл. Контрольная программа создала таким образом свою версию и передала ее исполнительной программе для производства.
К несчастью, команда на запись информации на будущее каким-то образом затерялась, и каждый субфайл "Как сделать" для очередной группы Фредов после использования стирался, как только производство заканчивалось. И поэтому когда Фабрика N_1 закончила отправку роботов для строительства Фабрики N_2 и должна была выслать группу для выбора места под Фабрику N_3, контрольной программе пришлось начинать все с начала. И то же самое приходилось делать при замене вышедших из строя роботов.
Все это заняло большое количество процессорного времени, перегрузило каналы связи и вообще было неэффективно, отчего встревожились электронные бухгалтеры. В результате возникла самосовершенствующаяся гибкая обучающаяся программа, которая отыскивала экономически неэффективные способы и старалась их усовершенствовать. После нескольких попыток контрольная программа обнаружила, что среди Фредов разных типов есть такие, которые содержат половину соответствующего субфайла, а это означало, что полный субфайл можно получить у двух индивидуумов, а не у всех сразу, как раньше. Соответственно программа начала отыскивать такие "совпадающие" пары как источник ответа на запросы исполнительной программы и перестала обращать внимание на остальных Фредов.
Вместе с первоначальными субфайлами "Как сделать Фред" были утрачены субсубфайлы программы "Что делать, после того как все сделано". Чтобы восполнить этот пробел. контролирующая программа запросила у исполнительной программы весь набор файлов, касающихся воспроизводства, и среди них, конечно, программу, как делать Фредов. И вот с конвейера стали сходить роботы с половиной "генетической" информации, автоматически встроенной в них, и этот цикл повторялся при производстве новых Фредов. Метод действовал, и контрольная программа так и не додумалась, что можно было просто записать эту информацию в базе данных фабрики, а не передавать от одного робота другому.
Но части программы могли перекомбинироваться и не повторяли в точности первоначальное сочетание, "геномы", составляющие их, редко оказывались идентичными, в некоторых встречались отрывки, стертые в других. И постепенно Фреды начали приобретать разную форму и вести себя по-разному.
Некоторые вообще никак себя не вели, а просто падали, не выдержав проверочного теста, их разбирали на части и снова пускали в производство. Таких было много.
Некоторые - на самых начальных стадиях - оказывались генетически неполными, "стерильными", и поэтому контрольная программа не запрашивала у них данные для самовоспроизводства. Они существовали, пока не изнашивались и выходили из строя.
Некоторые размножались пассивно, то есть передавали на фабрику свои половины субфайлов, когда их запрашивала контрольная программа.
Однако некоторые унаследовали от первоначальной основной программы потребность производить роботов своего типа, их программа была организована таким образом, что они должны были постоянно искать возможности выполнить основное свое предназначение - произвести себе подобных. Роботы этой категории размножались активно: они вели себя так, чтобы их "генетические" половины обязательно попали в исполнительную программу.
Когда Фабрика N_1 перешла на производство товаров и материалов, роботы, соревновавшиеся за возможность участвовать в производстве, скоро заполнили всю ее память, и фабрика больше ничего другого делать уже не могла. Фабрика N_2 действовала по программа, скопированной с Фабрики N_1, и потому с ней случилось то же самое. И тот же цикл передался Фабрике N_3, которая уже начала сооружаться к этому времени.
Постепенно все больше фабрик начало возникать на скалистом берегу. Нестабильность, унаследованная от первых программ, передавалась копиям копий, перешла к последующим поколениям, и новые фабрики стали все больше различаться по форме и функции.
Материальных ресурсов почти повсюду не хватало, и так возникла конкуренция, на которую чужаки, создатели программ, не рассчитывали. Общины роботов каждой фабрики включали смесь из исследовательских, доставочных и разделочных роботов, которые удовлетворяли свои "аппетиты" в соответствии с потребностями фабрики, и те фабрики, которые оказались на более выгодных участках поверхности, выживали, если не процветали. Например, Фабрика N_10 расположилась в центре древнего метеоритного кратера двенадцати миль в диаметре; здесь высокая температура и удар обнажили скальное основание под слоем льда; Фабрика N_13 оказалась в глубокой трещине, где лед был относительно тонок, и смогла пробить шахту к более богатой материалами коре; а Фабрика N_15 разработала процесс синтеза более тяжелых атомов из более легких, которые вмерзли в раствор ледяной коры. Но многие фабрики, например, Фабрика N_19, которая размещалась на толстом поле льда и остановилась, когда вышли из строя бурильные роботы, а процесс синтеза атомов не сработал, - многие фабрики разделили ее судьбу, когда кончались пригодные материалы.
Роботы-стервятники сыграли большую роль в развивающемся странном метаболизме. Что бы ни приказывали контрольные программы многочисленных фабрик, выполнить можно было лишь то, для чего имелись возможности, запасные части, а это, в свою очередь, зависело от способности стервятников отыскать их или найти такие собрания этих частей, которые можно разобрать - "переварить", чтобы использовать снова. Крайним примером может служить Фабрика N_24. Не в состоянии создавать части из сырья, потому что не действовала ее программа производства, она целиком зависела от своих роботов-стервятников. С другой стороны, Фабрика N_32 могла добывать сырье, но не могла его использовать, потому что была построена вообще без производственных мощностей. Ее роботы перешли к Фабрике N_47, которая могла производить запасные части для роботов с Фабрики N_32, и таким образом две этих фабрики смогли благополучно существовать в своеобразном симбиозе.
Груды разнообразного лома, которых не должно было бы существовать, если бы предыдущие стадии процесса исполнялись нормально, оказались съедены; вышедшие из строя машины съедены; корпуса переставших функционировать фабрик съедены. И когда эти источники исчерпались, некоторые машины начали пожирать друг друга.
Роботы-стервятники было сконструированы таким образом, чтобы отличать нормально функционирующие машины от вышедших из строя и пригодных для переработки. Однако, как и в других достаточно сложных процессах, в одних случаях эта установка срабатывала хорошо, в других - не очень хорошо, а в третьих - вообще не срабатывала. Некоторые модели стервятников готовы были уничтожить не только мертвого, лежащего Фреда, но и живого, функционирующего. Многие из жертв проявляли равнодушие к своей судьбе и вскоре вымерли, но другие сумели развить эффективную реакция "сопротивляйся или беги", и так началось разделение на добычу и хищников, а среди хищников - на питающихся материалами и машинами.
Не всегда этот процесс проходил успешно. Например, Фабрика N_50 была уничтожена собственными отпрысками: едва сойдя с конвейера, они начали разбирать ее на части и гордо нести эти части к началу производственного цикла. Ремонтные роботы не успевали справляться с повреждениями, и фабрика остановилась и стала добычей грабителей с Фабрик NN_36 и 53. Наиболее преуспевающие фабрики оборонялись, создавая агрессивные армии защитных "антител", которые распознавали роботов, произведенных своей фабрикой, и не трогали их, но уничтожали все "чужие" модели, оказывавшиеся поблизости. Постепенно это стало господствующей формой организации и обычно ассоциировалось с определенной территорией, где собирались и совместно защищались роботы одного происхождения.
К этому времени на месте Фабрик NN_1 и 2 осталось только несколько отверстий в скальном грунте. Эти фабрики не поспевали за временем, и их территория перешла под власть Фабрики N_65. А единственным следом от космического аппарата с "Искателя" осталось длинной круглое углубление на ледяном берегу жидкого метанового моря.
Инженеры чужаков создавали систему таким образом, чтобы постепенно возникла всепланетная связь с помощью спутников и станций на поверхности, но в данном случае это не получилось, потому что спутники не были запущены на орбиту, а наземные станции продержались недолго. Поэтому некоторые из вновь созданных организмов, лишенные сильных защитных средств, вынуждены были спасаться от голодных до металла империй просто расстоянием. Но предвидя возможные сбои в коммуникации, чужаки снабдили роботов вспомогательной системой программирования и обмена информацией между роботами и фабрикой в виде прямой физической электронной связи. Конечно, это гораздо более медленный процесс, чем радиосвязь, поскольку он требовал, чтобы роботы физически присутствовали на фабрике для перепрограммирования и отчета, но все же этот метод в удаленных местностях при отсутствии радиосвязи оказался лучше, чем ничего. И электронные бухгалтеры были спокойны, так как вложения возмещались.
Поскольку возможны любые нарушения функций, неизбежно некоторые организмы проявляли частичный или полный отказ от радио. Фабрика N_73 была построена роботами Фабрики N_66 вообще без радиосвязи. Все роботы этой фабрики использовали только вспомогательную, непосредственную связь, и фабрики, порожденные позже, унаследовали эту особенность. Но это означало, что радиус их действия резко сокращался.
Некоторые из этих "недостатков" в конечном счете оказались вовсе не недостатками. Партии грабителей смогли продвигаться все дальше, увеличили свои охотничьи территории и в качестве премии часто получали местности, ранее недоступные из-за своей географической удаленности. Больше того, процесс отбора привел к усовершенствованию анатомии роботов, участвовавших в таких операциях. Роботы с автономными небольшими процессами склонны были к отбору наиболее простых решений, но таких, которые можно осуществить возможно быстрее. Они выработали эффективные "рефлексы". Более сложные роботы, обладавшие радиосвязью, опирались на большие компьютеры и прибегали к более сложным решениям, но часто эти решения запаздывали и не приносили ничего хорошего. И таким образом эволюция привела к тому, что автономность стала нормой, а связь на расстоянии вымирала и сохранилась только в нескольких изолированных районах.
Инстинкт, заставляющий периодически передавать половинки своей генетической информации на фабрику, стал постепенно универсальной особенностью роботов - потомки бывают только у тех предков, которые оставляют потомков, - и в ответ на исчезновение радиосвязи у роботов выработалось обыкновение через определенные промежутки времени возвращаться туда, откуда они пришли, "на родную землю". Но этот метод воспроизводства имел свои проблемы и поставил новые препятствия на пути эволюции.
Главная проблема заключалась в том, что индивидуум мог доставить только половину генома на фабрику, после чего контрольная программа должна была записать эту информацию и хранить до тех пор, пока не появится робот того же типа с отсутствующей половиной; только тогда контрольная программа могла передать команду производственной программе. Но очень часто контрольная программа оказывалась в промежутках занята другими проблемами, ей приходилось стирать половинку, чтобы освободить память для других настоятельных вопросов, - плохая новость для Фреда, доставившего свою половинку: выходит, он весь репродуктивный процесс проделал зря. Успешное решение этой проблемы пришло с появлением нового способа генетической рекомбинации; случайно этот способ привел и к разрешению "информационного кризиса", который начал сокращать объем возможных генетических вариантов, необходимых для усовершенствования в процессе отбора.
Некоторые роботы-мутанты знали, что должны передать свои половинки генетической программы куда-то, но куда именно, не знали или не думали об этом. Подходило все с электрическими связями и совместимыми внутренними программами, а это обычно означало других роботов того же основного типа. А так как робот, завершивший свои функции, обычно ожидал новой команды, перепрограммирования, которое приходило с фабрики, встречный донор оказывался очень кстати, если попадался в нужное время. Таким образом, многое зависело от обстоятельств и случайных совпадений.
Автономная память роботов по сравнению с памятью их предков постепенно увеличивалась, но рос объем и сложность и их программ, в результате у принимающего робота обычно не оказывалось достаточно места для постоянного сохранения программы "Как сделать Фреда". Половинку донора можно было принять, только уничтожив что-то из содержащегося в памяти. И это происходило по-разному в разных типах роботов.
В некоторых случаях новая запись стирала целую программу принимающего робота, и этот робот терял полностью способность осуществлять функции, контролировавшиеся этой программой. Обычно это приводило к гибели, и не оставалось потомков, готовых повторить ту же ошибку. Удачной альтернативой оказывалось стирание несущественных частей многих программ, что приводило к ухудшению общих функций робота: он терял быстроту, проворство, способность защищаться, но по крайней мере продолжал функционировать. Это ухудшение оказывалось временным, потому что когда робот доставлял всю генетическую программу на фабрику, его способности восстанавливались.
Зато в обмен на некоторые усложнения и несовершенства была получена огромная выгода: репродуктивные субфайлы доставлялись на фабрику в целом виде, их без промедления могла использовать производственная программа и не было опасности, что их сотрет слишком загруженная контрольная программа. Этот новый метод воспроизводства решил проблему надежности, которая стала серьезной помехой на пути прежнего - "асексуального" способа воспроизводства.
Информационный кризис, также разрешенный новым способом, возник в результате "инбридинга", близкородственного скрещивания, так как в распоряжении контрольных программ оказывались ограниченные генетические наборы местных "племен" и так как их сдерживали жесткие правила, оставленные инженерами цивилизации чужаков. Однако роботы могли выходить за пределы своих "племенных" границ, они ничего не знали об ограничениях в правилах и сочетали половинки генетической информации случайно и в таких сочетаниях, которые и в голову не могли прийти их создателям. Большинство возникавших в результате потомков не функционировало, и их разбирали прямо на самой фабрике. Но некоторые расходились во все стороны, и с них начался новый этап эволюционного процесса.