Наверняка все, кто интересовался поисками внеземного разума, слышали о парадоксе Ферми. Сформулировать его можно так: если разумная жизнь во Вселенной не является чем-то уникальным, то почему мы до сих пор не наблюдаем никаких её следов? Считать ли молчание космоса признаком нашего одиночества? Меня давно интересовала эта тема, и вот наконец я решил в ней разобраться, сделав симуляцию обмена сигналами в галактике.

Основная задача статьи — продемонстрировать, что даже если появление разумной жизни не является редким событием, её целенаправленный поиск может оставаться безрезультатным многие тысячелетия. Попутно обсудим, какие именно факторы больше всего мешают нам обнаружить братьев по разуму, и проанализируем вклад каждого из них.

Различные решения парадокса Ферми здесь рассматриваться не будут — им уже посвящено множество публикаций, в том числе мне попадалась подробная статья на Хабре. Я расскажу именно о моделировании: на что опирался при построении модели, как устроена симуляция и какие результаты можно с помощью неё получить, а также поделюсь кодом.

Поехали!

С чего начинать

Идея была такая: внутри круга (условной галактики) случайным образом генерируются точки, которые представляют собой пригодные для возникновения цивилизаций миры (планетные системы). На каждой из них в некоторый момент времени появляется технологически развитая цивилизация и начинает отправлять сигналы в космос. Но ничто не вечно: через некоторое время она исчезает, теряет свои технологии или по каким-то ещё причинам выпадает из глобального обмена сигналами. Излучение, порождённое ей, движется через галактику и может быть обнаружено другими разумными существами, если они возникнут в нужное время в нужном месте.

Условие обнаружения простое: сигнал должен проходить через планетную систему, цивилизация в которой сама ещё не перестала излучать, следовательно и располагает технологиями, способными принимать сигналы. Кроме того я решил дополнительно прикинуть, насколько вероятно не просто найти инопланетный разум, а вступить в контакт с ним. Для этого сразу после обнаружения цивилизации к ней отправляется корабль-разведчик. Контакт будет засчитан, если корабль успеет добраться до цели раньше, чем там закончится технологическая эпоха.

Обнаружение цивилизации и отправка космического корабля. Кстати, звездолёт вам ничего не напоминает?
Обнаружение цивилизации и отправка космического корабля. Кстати, звездолёт вам ничего не напоминает?

Здесь важно понимать, что на анимации выше красные кольца — это не границы сигналов, а сами сигналы. Их толщина равна произведению скорости света на длительность технологической эпохи. А тонкими они выглядят из-за того, что расстояние между звёздами значительно превышает путь, пройденный светом за всё время жизни цивилизации. Действительно, размеры галактик измеряются сотнями тысяч световых лет, а время жизни цивилизаций, которое будет установлено в модели, составляет тысячелетия (см. далее). При желании этот параметр можно поменять, и тогда толщина колец станет более заметной.

Таким образом, обнаружение происходит тогда, когда сигнал от верхней (исчезнувшей раньше) цивилизации, имеющий форму кольца, достигает нижней, пока её сигнал ещё имеет форму круга. Для нас это происходит очень быстро, после чего и нижний сигнал становится кольцеобразным, что означает конец технологической эпохи у этой цивилизации.

Определившись с общим видом симуляции, можно заняться продумыванием её логики и параметров.

Почему я проигнорировал уравнение Дрейка

Перво-наперво, нужно определиться с числом благоприятных систем. Казалось бы, для этого идеально подходит уравнение Дрейка, которое показывает, сколько цивилизаций в данный момент времени существуют и готовы к контакту. Именно с него обычно начинаются все вычисления, связанные с парадоксом Ферми. Записывается оно так:

Здесь N — количество разумных цивилизаций, готовых вступить в контакт; R — число звёзд, образующихся в галактике за год; fp — доля солнцеподобных звёзд, обладающих планетами; ne — среднее количество планет (и спутников) с подходящими условиями для зарождения цивилизации на звезду; fl — вероятность зарождения жизни на планете с подходящими условиями; fi — вероятность возникновения разумных форм жизни на планете, на которой есть жизнь; fc — отношение количества планет, разумные жители которых способны к контакту и ищут его, к количеству планет, на которых есть разумная жизнь; L — время, в течение которого разумная жизнь существует, может вступить в контакт и хочет этого.

Глядя на такое количество параметров, часть из которых мы не можем даже примерно оценить, возникает мысль: «а не проще ли сделать N одним из начальных условий симуляции?» Так я и поступил, решив потом выяснить, как будет меняться вероятность обнаружения при разных N. Но об этом расскажу ближе к концу, а пока продолжим разбираться с устройством симуляции.

Сколько звёзд на одну цивилизацию и сколько цивилизаций на одну звезду

Хорошо, мы взяли N планетных систем, в которых следует ожидать появления цивилизаций. Момент этого появления можно выбирать случайно из некоторого диапазона, сопоставимого с временем появления нас в системе Солнца. Пусть этот интервал тоже задается пользователем. Теперь нужно решить, что будет с ними дальше, и это, пожалуй, самая дискуссионная часть работы.

В первую очередь возникает вопрос: останется ли цивилизация у своей звезды до конца технологической эпохи, или успеет добраться до других звёзд? Колонизация сильно поменяет модель, поэтому следует заранее решить, учитывать её или нет. В этот момент включается человеческий фактор: я не верю, что технологии способны доставить кого-то к другой звезде в целости и сохранности.

Причин, по которым у меня такое скептическое отношение к межзвёздным перелётам несколько. Одна из них уже сейчас мешает нам полететь на Марс: до него придётся добираться около года в условиях повышенной радиации, от которой на Земле защищает магнитосфера. Чтобы спасти экипаж от её воздействия, придется либо снабдить корабль толстыми стенками, либо навесить на него мощный магнит. И то, и другое сильно утяжелит конструкцию, что в свою очередь увеличит расход топлива, затруднит манёвры и не позволит поднять такой корабль с Земли.

Но можно же построить звездолёт на орбите, снабдить его модулями для высадки на планету, заправить чудовищными объёмами топлива и запустить прямиком к цели! Однако чем больше топлива, тем тяжелее корабль и тем сложнее его разогнать и затормозить по прибытии. А ведь разгон потребуется колоссальный: если мы хотим добраться до ближайших звёзд за сотни лет, нужна скорость порядка нескольких процентов от скорости света.

И раз уж заговорили о скорости, то следует вспомнить, к каким катастрофическим последствиям в таком случае могут привести столкновения даже с мельчайшими частицами. Например, в 2016 году пылинка диаметром в несколько тысячных миллиметра, летящая относительно МКС со скоростью не более нескольких тысячных процента от световой, повредила стекло иллюминатора станции.

Трещины в стекле МКС. Диаметр повреждённой части ~ 7мм
Трещины в стекле МКС. Диаметр повреждённой части ~ 7мм

Добавлю, что сама по себе техника, которая веками пашет и не ломается — это тоже своего рода фантастика)

Итак, если не мы, то по крайней мере зелёные человечки из симуляции оказываются заперты в системах своих звёзд. Но теперь напрашивается следующий вопрос: вот они достигли технологической эпохи, послали сигнал в космос и затихли. Если они не исчезли, а по какой-то причине потеряли свои технологии, могут ли они снова вернуть себе их? И может ли кто-то другой возникнуть там же после них? Иными словами, нужно определиться с тем, сколько цивилизаций может породить одна система.

В этом вопросе я снова ограничил обитателей своей симуляции, предоставив им только одну попытку для возникновения в каждой планетной системе. Причина в том, что просуществовав достаточно долго в технологической эпохе, население исчерпает все легкодоступные месторождения ресурсов и продолжение их добычи станет требовать всё более совершенных технологий. Утратив последние один раз, восстановить снова уже не получится — для этого нужны ресурсы, которые без продвинутой техники уже не добываются. Поэтому одна планета может надолго стать домом только для одной цивилизации с развитыми технологиями.

Но как обстоит вопрос с другими планетами в системе? По-моему, так же. Если технологическая цивилизация просуществует несколько тысячелетий, как некоторые древние народы на Земле, то наверняка за это время её представители успеют освоить все пригодные для этого планеты в своих системах и также исчерпать там все наиболее доступные ресурсы. Напомню, что мы пока только около 130 лет подходим для того, чтобы считаться «технологически развитой цивилизацией, излучающей сигналы в космос», а по некоторым прогнозам многие ресурсы нашей планеты будут истощены во всех известных местах добычи уже в ближайшие десятки-сотни лет. Наверняка мы научимся искать и разрабатывать новые месторождения (возможно, даже за пределами Земли), но после этого появление новой технологической цивилизации на планете вряд ли будет возможно.

Пожалуй, на этом можно закончить предварительные рассуждения общего плана и перейти непосредственно к моделированию.

Конкретизируем модель

Итак, мы поместим в галактику радиуса R некоторое число N звёзд, для каждой из которой будут заданы свои случайные координаты, временные диапазоны существования и моменты появления цивилизаций. Для последних будут задаваться параметры сигнала (длительность испускания tsignal и время затухания tstop), а также скорость космических кораблей v. Число систем будет поддерживаться постоянным в течение всей симуляции.

Приведу полный набор параметров, определяющих «физическую» часть модели. Во-первых, это N, R, tsignal, tstop, v и координаты систем (xi, yi). Во-вторых — диапазон времен жизни звёзд tstar = [tstar_min, tstar_max] и временное окно для возникновения разума tintel = [tintel_min, tintel_max]. Кроме этого я решил отдельно задать диапазон возрастов звёзд, которые будут сгенерированы при инициализации модели t0 = [t0_min, t0_max]. Конечно, можно охватить все возможные возрасты от 0 до tstar_max и не вводить новую переменную, но мне захотелось оставить возможность сделать за счёт изменения t0 некий аналог неоднородного звездообразования со вспышкой в начале. Пока что я это сделал исключительно чтобы посмотреть, как оно будет выглядеть, а не для анализа. По умолчанию в программе выбрано t0 = [0, tstar_max]. Желающие могут его поменять и посмотреть, что получится.

Теперь можно обдумать «аналитическую» часть. Так как основной интерес представляет вероятность обнаружения инопланетян, надо следить за динамикой роста числа цивилизаций и количества детектирований со временем. Для этого через одинаковые промежутки времени Δt, начиная с момента tstart и заканчивая tend, будет производиться запись значений счётчиков времени, числа сигналов и числа обнаружений.

Чтобы связать полученные данные с обнаружениями, нужно построить зависимости числа испущенных и принятых сигналов от времени, аппроксимировать их линейными функциями вида y = kx (так как условия симуляции постоянны, прирост должен происходить именно линейно) и посчитать коэффициенты наклона графиков для обнаружения kdetected и числа цивилизаций kciv. После завершения каждой симуляции будут отображаться графики, а также выводиться основные результаты:

  • среднее время между обнаружениями T = 1 / kdetected,

  • число появившихся за это время цивилизаций ΔN = kciv / kdetected,

  • доля обнаружений на одну цивилизацию X = kdetected / kciv.

Если последняя величина много меньше единицы, то можно пренебречь вкладом в неё обнаружений цивилизацией не одной, а двух или трех других. В этом случае её можно считать вероятностью P того, что за всё время существования получится найти братьев по разуму. Это и есть главный численный результат моделирования.

В итоге симуляция должна выглядеть так:

Экран симуляции. tsignal = 3 000 лет
Экран симуляции. tsignal = 3 000 лет
А вот что будет при увеличении длительности сигнала до 50 000 лет
Экран симуляции. tsignal = 50 000 лет
Экран симуляции. tsignal = 50 000 лет

Но пока что она так выглядеть не будет! Причина тому — космические масштабы времени.

Ускоряем эволюцию

Дело в том, что в модели мы пытаемся одновременно рассматривать два несопоставимых по времени процесса. Даже если цивилизация сможет просуществовать очень долго, время её жизни вряд ли сравнится с масштабами планетарной эволюции.

Есть один замечательный приём, с помощью которого можно наглядно показать, насколько велик этот разрыв. Переведём хронологию Земли в масштаб одного часа. Тогда окажется, что после своего появления наша планета оставалась безжизненной около 6.5 минут, далее 31 минуту её населяли лишь одноклеточные организмы. После этого, спустя где-то 22.5 минуты появились Homo sapiens. И вот мы благополучно существуем на планете уже четверть секунды, а в последние 0.0001 секунды смогли освоить радиосвязь и начали отправлять сигналы в космос!

Очевидно, что в планетарной шкале времени даже тысячелетия — это крайне незначительный интервал времени. Если настроить модель под него, то дожидаться накопления приемлемой статистики по цивилизациям и обнаружениям придется невероятно долго даже в том случае, если из сотен миллиардов звёзд в галактике на тысячах сложатся благоприятные для разума условия. В нашей модели шаг временной сетки будет равен тысяче лет, чтобы дать зелёным человечкам просуществовать в эпохе технологий хотя бы столько же, сколько жили древние цивилизации на Земле. Что касается числа одновременно существующих систем, которые станут домом для разумной жизни, то модель будет ориентирована на сотни, максимум — чуть больше тысячи. В такой постановке условий даже одного сигнала придется дожидаться долго, не говоря уже об обнаружениях.

Решение, которое я предлагаю, следующее: добавим в нашу физику ещё один параметр (A), который не имеет никакого отношения к реальности, но позволяет получить результаты модели за разумное время, сохранив её наглядность. Он будет ускорять эволюцию планетных систем, чтобы в них быстрее зародился разум (сжимать диапазоны времени tstar, t0 и tintel в A раз). При этом сама технологическая эпоха ускорена не будет. Таким образом, это увеличит частоту появления разума в космосе, но завысит оценку вероятности засечь чужой сигнал. Однако с этим уже легко справиться. Оценка вероятности без ускорения соответствует A = 1. Напрямую измерять её будет крайне долго, но вместо этого можно посчитать вероятность для ускорений 1000, 900, 800, 700 и так далее, пока это занимает приемлемое время, а затем продолжить получившуюся зависимость вплоть до ускорения, равного единице. К слову, этот же трюк можно практиковать для других параметров модели, например для числа подходящих систем.

Что ж, теперь всё спланировано, код написа�� и перед его запуском остаётся один завершающий шаг — подобрать все параметры.

Настройка перед запуском

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

Графический интерфейс программы
Графический интерфейс программы

Здесь основные величины, которые будут обсуждаться далее — это количество систем, радиус галактики, время генерации сигнала (длительность технологической эпохи) и ускорение эволюции. Наша задача — узнать, как от каждого из них зависит вероятность обнаружения. В следующем разделе расскажу, что получилось, а пока пройдусь по остальным параметрам.

Временные диапазоны для звёзд соответствуют спектральным классам F, G, K и M. Именно в их системах астрономы сейчас пытаются найти внеземную жизнь. Однако из самых горячих и короткоживущих F-звёзд взяты только те, чей возраст превысит 6 миллиардов лет, чтобы цивилизации там гарантированно успели появиться. Также я урезал диапазон возрастов красных карликов (M-звёзд) до 100 миллиардов лет, отбросив самые холодные и нестабильные.

Дело в том, что в последнее время возникает всё больше сомнений в жизнепригодности таких звезд. Во-первых, это связано с частыми вспышками, облучающими планеты чудовищными дозами ультрафиолета. Во-вторых, зона обитаемости красных карликов находится гораздо ближе к ним, чем у более горячих звёзд, что усиливает эффект от вспышек, а вдобавок может привести к приливному захвату планет и тем самым лишить их суточного цикла (они будет постоянно повёрнуты к звезде только одной стороной). А ещё есть одна менее очевидная, но более серьезная проблема. Перед началом горения водорода звёзды разогреваются и излучают за счёт собственного сжатия. Для M-карликов получается так, что светимость при сжатии может сильно превышать светимость на этапе термоядерного синтеза. При этом планеты у M-звёзд формируются задолго до начала ядерных реакций. Выходит так, что планеты, которые будут находиться в зоне обитаемости в течение большей части жизни звезды, в первые сотни миллионов лет своего существования окажутся в условиях похуже тех, в которые попала современная Венера. Это грозит неконтролируемым ростом парникового эффекта, испарением океанов и потерей большей части воды вследствие разложения её молекул в верхних слоях атмосферы и сноса атомов водорода в космос звёздным ветром. Про этот эффект есть отдельная статья.

Вернёмся к подбору параметров. Временное окно для технологической эпохи, как было сказано ранее, взято близко к времени нашего появления на Земле. Однако, так как возрасты у звёзд распределены равномерно в доступном интервале, на вероятность обнаружения этот параметр не должен влиять. Но если рассматривать вспышку звездообразования, то он окажется существенным.

Также на искомую вероятность может повлиять выбор времени существования испущенного цивилизациями излучения, если последнее будет затухать до своего выхода из галактики. Но я ввёл это ограничение для того, чтобы не обсчитывать лишний раз сигнал, который вышел за границы дисплея. Основные результаты, о которых речь пойдёт здесь, получены в упрощённой модели без затухания внутри галактики, так как мы всё равно не знаем, на каком расстоянии станет принципиально невозможно засечь чужой сигнал. К слову, даже сам тип сигнала нам неизвестен. Он может представлять собой радиоизлучение, поток нейтрино и любую другую экзотику, до которой способен додуматься технологически развитый вид.

Подбор остальных величин — задача исключительно творческая. На вероятность обнаружения они никак не влияют, поэтому их обсуждение опустим.

Перед тем как перейти к результатам, обращу внимание ещё на одну деталь. В меню по умолчанию стоит радиус галактики 400 тысяч световых лет, хотя для Млечного Пути он составляет около 50 тысяч. Почему я выбрал его таким? На самом деле просто потому, что окно симуляции, подобранное под такой масштаб, выглядело лучше всего, а её результаты в пределах погрешности практически не зависели от радиуса во всем реалистичном диапазоне размеров галактик (см. четвёртый график в результатах). К слову, 400 тысяч световых лет — это радиус одной из крупнейших известных спиральных галактик, UGC 2885.

Галактика UGC 2885 / ©NASA, ESA, Benne Holwerda / Автор: Ptolemocratia Acerronius
Галактика UGC 2885 / ©NASA, ESA, Benne Holwerda / Автор: Ptolemocratia Acerronius

Перейдём к результатам

Итак, пришло время оценить вероятность того, что цивилизация, живущая 3 тысячи лет в галактике размером с UGC 2885, а также обладающая идеальными приёмниками и передатчиками сигналов, сможет обнаружить кого-то ещё, если в этой галактике постоянно существует 500 звёзд, в системах которых должен появиться разум. Как было сказано в разделе про ускорение эволюции, для этого нужно построить зависимость средней доли обнаружений от ускорения. Чтобы получить статистику, каждая точка на графике будет соответствовать десяти запускам симуляции.

Как видим, доля обнаружений при А = 1 (в данном случае это коэффициент наклона прямой) составляет порядка 10-5. Так как число много меньше 1, то вклад от парных, тройных и т.д. обнаружений оказывается пренебрежимо мал и мы можем считать результат оценкой вероятности найти другую цивилизацию. Маловато, но… наблюдениям не противоречит.

Теперь нужно узнать, насколько результат зависит от других основных параметров: числа систем, длительности технологической эпохи и радиуса галактики. Будем оставлять всем величинам, кроме интересующей нас, значения по умолчанию, а её менять и смотреть, как это отразится на вероятности.

Начнём с числа систем. Его я также менял от 100 до 1500 с шагом 100. Диапазон случайно совпал с интервалом значений для ускорения. После N = 1500 программа уже работала медленно, так что на этом я решил остановиться. В результате получил ещё одно совпадение: этот график тоже похож на линейную зависимость, причём с примерно таким же наклоном, как и предыдущий! Однако на нем прослеживается нечто похожее на слабые колебания относительно общего тренда.

Теперь у нас есть основание ожидать, что с ростом N вероятность в целом растёт достаточно медленно. Даже если мы увеличим плотность подходящих для разумной жизни звёзд в галактике, расстояния между ними по-прежнему будут огромными, гораздо больше толщины колец сигналов от цивилизаций. Так что отношение площади покрытой сигналами области галактики к площади свободной от них части всё ещё будет оставаться малым. Соответственно, то же самое будет и с вероятностью того, что какая-то цивилизация возникнет внутри чужого сигнала.

Раз уж речь зашла о толщине покрытых излучением областей, то она напрямую зависит от длительности технологической эпохи. Посмотрим, как последняя влияет на вероятность.

Результаты показывают, что в симуляции с ускорением A = 500, разумные расы, которые существуют 100 000 лет и более, практически наверняка смогут обнаружить соседей по галактике. Скорее всего и в наших реалиях длительность эпохи технологий будет наиболее значимым фактором, влияющим на возможности по поиску внеземного разума.

А теперь перейдем к самому необычному графику, связанному с изменением радиуса галактики. Другими цветами я выделил точки, не соответствующие размерам известных галактик со спиральной структурой.

График начинается с вероятности одновременного (с точностью до дискретизации модели) существования нескольких разных сигналов в галактике. А дальше появляются колебания непонятной для меня природы вокруг какой-то медленно убывающей функции.

Возможно, они возникают из-за того, что при увеличении радиуса диска с одной стороны падает плотность звёзд, с другой — растёт время, в течение которого сигнал задерживается в галактике. Эти факторы противоположно влияют на вероятность обнаружения, так что такая необычная форма графиков может быть связана с разным соотношением их ролей на разных масштабах.

Стоит отметить, что значения вероятности при R = 50, соответствующем нашей галактике, и при выбранном по умолчанию R = 400 практически совпадают (P50 ≈ X50 = 0.023, P400 ≈ X400 = 0.022).

Бонус: затухание сигнала

Несмотря на то, что в статье обсуждается упрощённая модель обмена сигналами, посмотреть, что будет при добавлении в неё затухания, лишним не будет.

Здесь дистанция затухания r — это произведение скорости света на tstop. На рисунке она указана в долях от радиуса галактики. Для построения графика значения всех основных параметров установлены по умолчанию, а диапазон tstop меняется от нуля до тех пор, пока затухание может влиять на вероятность обнаружения. При r ≥ 2R любой сигнал беспрепятственно проходит через всю галактику и исчезает где-то за ее пределами, поэтому зависимость выходит на константу.

А ещё, так как в начале статьи я упомянул контакты, стоит сказать и про них, хотя говорить тут особо не о чем. Из всех запусков программы, которые я делал для построения графиков, они случались только в вырожденном случае при R = 0. Если взять параметры по умолчанию и специально увеличивать время существования цивилизаций до тех пор, пока в симуляции не начнут происходить контакты, то выясняется, что для этого подходят условия, когда галактика уже практически целиком покрыта сигналами. Таким образом, помимо получения основного результата — вероятности обнаружения — мы выяснили, что пересечься с найденной цивилизацией вживую практически нереально, если конечно у нас нет телепортов или гипердвигателей.

Заключение

Пришло время сделать выводы из того, что мы увидели в симуляции. На первый взгляд ситуация кажется удручающей: полученная вероятность обнаружения инопланетного разума оказалась на 3 порядка меньше процента! Но здесь стоит вспомнить, что наша упрощённая модель содержит несколько непроверяемых предположений. Она исключает возможность колонизации других планетных систем, не позволяет разуму несколько раз возникать у одной и той же звезды, а также оперирует параметрами, которые приходится брать с потолка (такими как число благоприятных звёзд и длительность эпохи технологий). Позволяет ли это вообще основываться на её результатах?

На самом деле да! Симуляция показывает, насколько «невидимыми» могут оказаться разумные существа в космосе. Даже если они существуют тысячи лет с идеальными технологиями передачи и приёма сигналов, космические масштабы пространства и времени легко могут помешать им узнать о присутствии в галактике других очагов разума.

Это и есть ответ на вопрос, заданный в начале статьи. Наблюдаемое молчание космоса — не признак нашего одиночества. За время существования галактики в ней может возникнуть множество разумных рас, существующих тысячелетия и далеко обогнавших человечество в научно-техническом плане. А вот насколько вероятно их найти — вопрос до сих пор открытый.

P.S. Код, исполняемый файл для Windows и описание программы доступны на GitHub.