По всему миру люди становятся жертвами кровожадной, растущей день ото дня армии безмозглых зомби! Первая волна эпидемии вызвала всеобщую панику, и люди, сумевшие найти надежное укрытие, изо всех сил пытаются выжить. Интернет не работает, электричества нет. Телефонные сети — как стационарные, так и сотовые — мертвы. Помощи ждать неоткуда. Вы мэр городка Моддлтон с населением 1000 человек. В некотором смысле вам повезло: поселение занимает большой остров посредине очень широкой реки. Оба моста, что связывают его с берегами, вы заблокировали, однако, судя по поступающей информации, как минимум одному зомби все же удалось пробраться на остров. Сможете ли вы задействовать свои познания в области математического моделирования и, выработав правильную стратегию, спасти свой городок, его жителей и самого себя?
Человеческие популяции давно занимают ученых — экономистов, политологов, математиков, причем интерес вызывает поведение популяций даже в самые древние времена, когда после возникновения земледелия (то есть более 5000 лет назад) люди начали организовывать поселения. Математики перевели это поведение в системы уравнений, они же модели, и теперь, применяя их к самым разным данным, пробуют предсказать действия популяции в зависимости от ситуации.
Математические модели используются в различных областях: например, с их помощью можно объяснить циклы роста и сокращения популяций леммингов, прогнозировать урожай сельскохозяйственных культур или поведение избирателей во время выборов. Вас, однако, интересуют эпидемии и их последствия. За плечами у вас множество политических кампаний, и вы понимаете: чтобы спрогнозировать будущее жителей вашего городка, при моделировании зомби-апокалипсиса нужно обратиться к механизмам распространения и сдерживания инфекционных заболеваний. Еще вам известно, что в основе математических моделей лежат дифференциальные уравнения. Применительно к вашей ситуации это выглядит так: вместо того чтобы вычислять конкретное число — скажем, количество зомби в городке, — они будут описывать изменение этого числа, то есть определять, сколько ежедневно прибывает (или убывает) живых мертвецов.
Дифференциальные уравнения сложно решать аналитически — то есть находить точные ответы, прибегая к обычному способу решения уравнений. Обычно приходится прибегать к математическому анализу — а это вам не арифметика! Но если использовать численный метод, то есть последовательно подбирать числа, которые могут подойти к конкретному классу дифференциальных уравнений, параметры модели удастся оценить максимально точно.
Для применения модели требуется оценить ряд исходных числовых характеристик — параметров. В вашем случае важно, насколько быстро станет распространяться эпидемия зомби. До того, как отключился свет, СМИ успели передать, что за день живые мертвецы способны атаковать и «обратить» примерно двоих. Вот эта информация и есть необходимый параметр. Однако фактическая численность обращенных в зомби будет зависеть и от населения, доступного для заражения: чем меньше его количество, тем меньше людей встретится живым мертвецам. Зная все это, вы можете составить первое уравнение. Чтобы упростить задачу, сформулируем ее сначала словами:
Ежедневное изменение численности зомби = 2 × количество зомби × доля оставшейся человеческой популяции.
А теперь запишем иначе:
где Z и H — это количество зомби и людей соответственно. Поскольку изначально население составляло 1000 человек, доля оставшихся в живых людей выглядит как — изменение популяции зомби. Если убрать символы умножения, уравнение примет краткий вид:
Упрощаем дробь, для чего и числитель, и знаменатель делим на 2:
Поскольку это изменение количества живых мертвецов, есть смысл представить уменьшение человеческой популяции в виде аналогичной дроби, но со знаком минус. Ведь если количество зомби увеличивается на столько-то единиц, то численность людей убывает на столько же единиц. Получаем:
где Ḣ — изменение человеческой популяции. Итак, у вас есть два дифференциальных уравнения. Пришло время проверить, как работает модель. Просчитать ее для первого дня довольно легко. Согласно предположению, на острове находится всего один живой мертвец, который заразит двоих людей. Изменение популяции зомби (Ż) получится равным 2, убыль численности городского населения (Ḣ) составит –2. Это отличная возможность проверить работоспособность составленных уравнений:
перемножаем числа в числителе:
упрощаем до:
Ż = 2.
На второй день «обращение» людей в зомби немного осложнится, так как накануне человеческая популяция слегка сократилась. Итак, на второй день при H = 998 и Z = 3 имеем:
Используем калькулятор на солнечных батареях и подсчитываем:
Ż = 5,988.
Из-за незначительной убыли городского населения прироста в шесть живых мертвецов, который ожидается при наличии трех зомби, не получается. Вы можете возразить, что, если количество зомби не является целым числом, это выглядит как-то странно, но не забывайте: это просто модель. Согласно модели, к исходу второго дня зомби успеют «обратить» почти шестерых новичков, и они непременно завершат то, что начали. Следовательно, в городке появятся 8,988 живых мертвецов и останется 991,012 человек. Темп распространения кажется довольно низким, но уже через несколько дней ситуация резко обострится:
Если все умрут в течение недели, это станет катастрофой для вашей следующей избирательной кампании! Очевидно, причина столь высокой смертности — в том, что живые люди сидят сложа руки и позволяют зомби бесчинствовать. Тем не менее расчеты показывают, что через несколько дней ситуация станет критической, и потому вы отдаете приказ всем укрыться по домам и забаррикадироваться.
Как это повлияет на модель? Что ж, ежедневное пополнение армии живых мертвецов затормозится. Если люди попрятались, добраться до них сложнее, и у зомби нет возможности рекрутировать «новобранцев». Выражаясь языком математики, эффект будет заключаться в заметном уменьшении исходного множителя 2. Между тем каждому политику известно, что далеко не все станут выполнять приказы — кто из-за упрямства, кто из-за необходимости добывать пропитание или лекарства. Следовательно, снизить ежедневное количество «обращений» до нуля не получится. Поэтому, изменяя модель, вы закладываете скорость, равную 0,25, то есть подразумеваете, что каждый зомби будет «обращать» очередного человека в живого мертвеца не чаще чем раз в четыре дня. Производим вычисления и по результатам строим график на странице 44:
Итак, есть хорошая и плохая новости. Хорошая заключается в том, что зомби потребуется время, чтобы укрепить свои позиции и начать вредить всерьез. Плохая новость — через 50 дней население вашего городка все равно превратится в ходячих мертвецов. Однако вы понимаете, что такой подход позволит людям выиграть время, а единственный способ вытащить хоть кого-нибудь из этой передряги — переиграть зомби на их же поле. Тогда вы решаете закрыть Моддлтон на 20 дней и, призвав на помощь небольшой отряд городской полиции и несколько воинственно настроенных смельчаков, провести во время карантина кое-какие исследования и выработать победную стратегию.
Выясняется, что фильмы не врут: удар тупым предметом по черепу разрушает мозг зомби, и это лучший способ борьбы с ними. По счастью, Моддлтон славится крикетными, хоккейными и гольф-клубами, поэтому у горожан полным-полно бит и различных клюшек. Становится понятно, что живые мертвецы плохо видят в темноте, поэтому охотиться на них лучше ночью. Это опасно, да и вероятность «обращения» возрастает, но в борьбе за выживание не пристало привередничать. Вы занимаетесь исследованиями две-три недели, потом уточняете некоторые цифры и вносите в модель изменения.
Необходимо ввести третье уравнение, описывающее скорость уничтожения зомби. Вы подсчитываете, что с новой тактикой и импровизированным оружием, а также при численном превосходстве вам удастся ежедневно уничтожать 90% действующих зомби. Как и в прошлый раз, запишем уравнение сначала в словесной форме:
Ежедневное изменение численности убитых зомби = 90% × Z.
Представив изменение количества уничтоженных врагов в виде и вспомнив, что 90% — то же самое, что и 0,9, получим:
Во время непосредственного уничтожения живого мертвеца он по-прежнему может кого-нибудь заразить, причем коэффициент, согласно вашим оценкам, возрастает с 0,25 до 0,75. Еще придется учесть ежедневную убыль популяции ходячих трупов — на количество уничтоженных. Из-за двух новых параметров Ż-уравнение примет такой вид:
Несмотря на спешность вопроса, оставить уравнение с десятичной дробью в числителе мы не можем, поэтому упрощаем:
Ḣ-уравнение, описывающее ежедневное изменение человеческой популяции, остается неизменным: не учитывается — прежде, чем вы выйдете на ночную охоту, зомби будут нападать на людей целый день. Вот что у нас получается:
Начинаем оперировать цифрами. Согласно наиболее оптимистичному прогнозу, на 20-й день в городке 920 человек и 81 живой труп. Подставив в каждое из трех уравнений Z = 81 и H = 920, получаем:
Люди, в атаку! В первый день человеческого восстания ожидается уничтожение почти 73 зомби. Однако, вычисляя изменение городской популяции, вы видите, что тут без потерь тоже не обойдется. Используем в Ḣ-уравнении те же Z = 81 и H = 920:
Нажимаем кнопки на калькуляторе — том самом, на солнечных батареях, — и получаем:
Ой-ой-ой! В первую же ночь контратаки погибнет почти 56 человек. Чтобы понять, стоит ли оно того, следует взглянуть на последнее уравнение, определяющее изменение численности активных зомби:
Вновь подставим сюда Z = 81 и H = 920, а также вычисленное ранее
Можете называть меня SIR
Задействованная в этом сценарии реальная математическая модель известна как SIR, где S означает «восприимчивый» (susceptible), I — «инфицированный» (infected), R — «выздоровевший» (recovered). Эта модель, разработанная еще в 1920-х годах группой британских ученых — врачом Рональдом Россом, эпидемиологом Андерсоном Маккендриком, биохимиком Уильямом Кермаком, математиком Хильдой Хадсон и другими, — использовалась для моделирования пандемии COVID-19. Так же, как и в ситуации с зомби-апокалипсисом, нужно было найти способ ограничить скорость заражения и таким образом «сгладить кривую» — увеличить продолжительность пандемии, но снизить нагрузку на систему здравоохранения и другие жизненно важные службы. Возможно, если бы вирусы были видны невооруженным глазом и выглядели столь же устрашающе, как и блуждающие по улицам плотоядные зомби, люди соблюдали бы социальную дистанцию с куда большей охотой.
Да! Нам удается получить отрицательный прирост количества зомби. Несмотря на предполагаемые огромные потери среди людей в первую ночь контратаки, общая численность ходячих мертвецов сократится. Дни зомби-апокалипсиса в Моддлтоне, считайте, сочтены.
Обрабатываем остальные цифровые данные и выстраиваем вот такой график:
К 20-му дню, на который запланирована контратака, наблюдается резкое падение численности как горожан, так и зомби, но далее ситуация складывается явно в пользу человеческой популяции. Через 35 дней или, если хотите, спустя пять недель после того, как в Моддлтон проник первый ходячий труп, вы вместе с другими выжившими — их 731 — стоите на ступеньках ратуши и празднуете победу. Что там творится в мире? Кто знает! Но на местном уровне вы справились с беспрецедентным кризисом превосходно и наверняка сохраните за собой кресло мэра.