Помню, как несколько лет назад сидел на последнем ряду аудитории и слушал лекцию по теории эволюции. Тогда мне это было особенно интересно: каждый вечер я штудировал доклады Дробышевского, Соколова, Панчина, Гельфанда и других причастных к Антропогенезу. И в один день преподаватель сердито посмотрела в окно и спросила меня, как долго должны ходить по газону люди, чтобы образовалась тропа.
На этот странный вопрос я ответить не смог, но он меня неожиданно натолкнул на идею для любопытного эксперимента. Зачем изучать тропообразовательный потенциал людей, когда можно построить симуляцию и проверить теологическую теорию о самом происхождении человечества. Мне стало интересно, может ли человечество развиться до 11 млрд со времен Адама и Евы к концу XXI века. О том, что из этого получилось, рассказываю под катом.
Ниже — фановая попытка решить интересную задачу, которая не претендует на научную точность. Я не демограф, не историк и не теолог. Сама тема достаточно объемная, с большим количеством переменных и условий. Если у вас есть свои предложения, замечания или вопросы — пишите в комментариях.
Библейская справка и проблемы с данными
Задача особенно интересна как с исторической, так и с теологической точки зрения: есть много условностей, которые важно учитывать. Попробую выделить основные из них.
- Проблема летоисчисления. Из-за разных способов датировок и других факторов нельзя точно сказать, как давно жили Адам и Ева. Самые популярные числа — 6000 и 7500 лет. Мы возьмем последнее и допустим, что история человека берет начало с 54 века до нашей эры.
- Отсутствие значений прогностических характеристик. Нельзя точно определить, какие были уровни смертности и рождаемости. Также важно учесть, что за историю был ряд эпидемий, великий голод, войны и прочие периоды повышенной смертности.
- Отсчет нужно проводить с потопа. По сути, за начало популяции можно взять отсчет после Всемирного потопа — с 34 века до нашей эры (рождение Адама от Всемирного потопа отделяют 2000 лет). После него спаслись только Ной, его жена, три сына — Сим, Иафет и Хам — и их жены. В общей сложности — восемь человек, животным повезло больше. Зато в мире появилась радуга!
Кроме того, нужно учитывать и данные о продолжительности жизни первых поколений по линии Ноя. Для примера рассмотрим генеалогию Сима.
Первое поколения — дети. Считается, что первое поколение после потопа — это последние полубоги, а продолжительность жизни Сима и его братьев составляет около 600 лет. Согласно Библии, у Сима было пять детей и X дочерей.
Второе поколение — внуки. Это уже не полубоги, но средняя продолжительность жизни составляла 350-450 лет. Деторождение приходилось на возраст от 30 лет.
Третье поколение — правнуки. Согласно Библии, это поколение стало основанием для множества современных народов. Правнуки Ноя расселились по берегам Средиземноморья, Черного и Каспийского морей, Африки и вдоль Тигра, Евфрата, Инда и Нила. Теоретически, это могло повлиять на рост населения: он должен был снизиться из-за меньшего генетического разнообразия и вырождения части семей из-за инцеста.
Такое расселение концептуально напоминает ранние миграции представителей Homo Sapiens. За исключением одного небольшого но: они были 70 000 — 100 000 лет назад.
Прочие поколения. Продолжительность жизни постепенно упала: начиная с пятого поколения люди жили от 80 до 250 лет, а детей рожали в 30 лет (в первом поколении деторождение приходилось на промежуток 60-600 лет).
Поколение | Продолжительность жизни |
18 поколение | до 150 лет |
35 поколение | до 100 лет |
51 поколение (Иисус Христос) | до 80 лет |
Для сравнения, средняя продолжительность жизни в разные эпохи, независимо от теологической теории:
Века, годы | Возраст |
Каменный век | 19 лет |
Бронзовый век | 21.5 лет |
Европейская античность | 20-30 лет |
XVI в. | 27.5 лет |
XVII в. | 29 лет |
XVIII в. | 28.5 лет |
1801-1880 гг. | 35.6 лет |
1891-1900 гг. | 40.6 лет |
1901-1910 гг. | 44.8 года |
1924-1926 гг. | 56 лет |
1932-1936 гг. | 59.8 лет |
1946-1947 гг. | 57.7 лет |
1970-1980 гг. | 73 года |
Придумываем данные, или reverse engineering на минималках
Если нет данных об уровнях смертности и рождаемости, откуда их взять? Для этой проблемы я придумал довольно спорное решение.
Немного полазив по сети, я наткнулся на экспоненциальный график, который показывает, как росла популяция в течение нашей эры — вплоть до XXI века. Тогда я подумал, что можно взять эти данные и подобрать такие значения смертности и рождаемости «ноевых поколений», чтобы к «нулевому году» достичь отметки в районе 200-250 млн человек. Но перед этим значения нужно было сформировать.
Рост населения Земли. Источник.
Какие значения смертности и рождаемости бывают?
Что считать низким, средним или высоким значением? Чтобы ответить на этот вопрос, я несколько раз прогнал популяционную модель только «вдоль» нашей эры. Получилась матрица, в которой каждому столетию соответствуют два фактора — значения самих уровней.
Столетие | Уровень смертности | Уровень рождаемости |
1 | 2 | 2 |
2 | 2 | 2 |
3 | 2 | 2 |
4 | 2 | 2 |
5 | 2 | 2 |
6 | 2 | 2 |
7 | 2 | 2 |
8 | 2 | 2 |
9 | 2 | 3 |
10 | 2 | 2 |
11 | 2 | 2 |
12 | 2 | 2 |
13 | 2 | 2 |
14 | 2 | 2 |
15 | 2 | 2 |
16 | 2 | 2 |
17 | 2 | 3 |
18 | 2 | 3 |
19 | 2 | 4 |
20 | 2 | 6 |
21 | 0 | 7 |
Уровни смертности и рождаемости прямо пропорциональны соответствующим значениям. И подобраны так, чтобы максимально повторить рост графика выше.
Также обратите внимание на «масштаб»: это приближенные значения, поскольку в течение столетия сменяется не одно поколение и темп роста населения может меняться от десятилетия к десятилетию. Например, с шестидесятых годов XX века реальная динамика населения стала сильно отходить от гиперболической кривой, а в настоящее время темпы резко упали.
Темпы роста населения Земли. Источник.
Как посчитать естественный прирост?
Хорошо, для каждого столетия определены уровни смертности и рождаемости, но как их перевести в какие-то конкретные числа, проценты, чтобы посчитать естественный прирост? Ответ прост: никак.
Низкий, средний, высокий уровни — это простая абстракция, которая обобщает какой-то промежуток чисел. Кроме того, таких промежутков может быть довольно много: уровень рождаемости может быть очень низким, а может и вовсе отсутствовать. Чтобы учесть это при расчетах, для каждого уровня я задал интервалы с «процентами».
Программа смотрит на уровень смертности/рождаемости, обращается к коллекции __gen_arr_items и выбирает случайное значение из соответствующего интервала.
Несложно догадаться, что для расчета естественного прироста высшая математика не нужна. В каждой новой итерации программа просто смотрит численность населения в предыдущем столетии и суммирует с приростом.
Значения уровней до нашей эры
В результате я подобрал несколько комбинаций с разными значениями для уровней смертности и рождаемости. Даже с учетом того, что представители первых ноевых поколений жили сотни лет, сложно сказать, какой был уровень смертности. Нельзя же отрицать, что кто-то мог, например, упасть со скалы — вопросов много, ответов мало.
Так как после потопа были проблемы с генетическим разнообразием, продолжительность жизни была велика, можно усреднить значения уровней. И допустить, что люди могли погибать в тех же схватках с живностью, вышедшей из ковчега. Объективно? Нет, но я старался.
Столетие | Уровень смертности | Уровень рождаемости |
-34 | 4 | 4 |
-33 | 4 | 4 |
-32 | 4 | 4 |
-31 | 4 | 4 |
… | … | … |
-5 | 3 | 4 |
-4 | 3 | 4 |
-3 | 3 | 4 |
-2 | 3 | 4 |
Теперь давайте посмотрим, что же показывает симуляция с такими входными значениями.
Возможно, эти тексты тоже вас заинтересуют:
→ Решаем задачу по взаимодействию микросервисов на Python тремя способами
→ Альфа-тестирование MidJourney V5: научилась ли нейросеть рисовать руки и неоновых котиков
→ 5 полезных и просто занимательных проектов на Raspberry Pi начала весны 2023 года
Результаты расчетов
Супер — данные есть, но как все это прогнать через популяционную модель? Вот отсюда, наверное, начинается самая «железная» часть моего импровизированного исследования.
Код проекта доступен в репозитории на GitHub — делайте форк, экспериментируйте с параметрами и предлагайте свои улучшения.
Чтобы учесть как можно больше вариантов развития человечества после потопа, различные комбинации значений смертности и рождаемости, я заварил чай и пошел спать. За пару часов симуляция прогнала 10 млн испытаний и зафиксировала самый высокий показатель популяции — 84 130 685 человек. Это примерно 0.0076 от 11 млрд, которые прогнозируют ООН к концу XXI века.
Результаты и характеристики эксперимента ↕
Максимальное значение популяции: 84 130 685 человек
Минимальное значение популяции: 25 237 139 человек
Продолжительность эксперимента: 8163 секунды
Процессор: IntelCore i5-8400
Оперативная память: DDR4 8 ГБ 2400 МГц
Результаты дискуссионны: есть много вариаций входных параметров, с помощью которых можно достичь похожих цифр. Еще больше тех, которые могут побить даже самые оптимистические прогнозы ООН. Особенно если для первых несколько столетий установить нулевую смертность. Вопрос в том, насколько это реалистично и как определить объективность параметров. Что насчет этого думаете вы? Поделитесь мнением и результатами своих экспериментов в комментариях.