Найти в Дзене
Осенило

Моделируй что угодно: Простая формула для сложного мира

Помимо того, что я по работе занимаюсь автоматизацией бизнес-процессов и сбором и обработкой данных, мне нередко приходится создавать разные математические модели. Не так давно довелось делать модель для онлайн игры. Нужно было сделать механику роста уровня сложности по мере прохождения, динамику наград и прочее. И когда я обсуждал модель с гейм-дизайнером, он сказал, что модель полностью понятна и логична, работа была проделана колоссальная, и далеко не каждый гейм-дизайнер сможет такое сделать. Но правда была иной. Саму модель я делал, может, день. А затем ещё за пару созвонов с “заказчиком” мы устаканили некоторые тонкие моменты и рассчитали нужные для планирования работ и бюджетов значения. И дело тут не в моей гениальности, а в том, что моделирование - это на самом деле простой процесс. Но с нюансами.

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

Как вы можете знать, недавно я сформулировал принцип фундаментального постоянства (ПФП), в рамках которого сделал модель, определяющую этот принцип математически. Это может показаться невозможным (поначалу), ведь принцип подразумевает количественное сравнение буквально майского жука и камня, роя муравьёв и мегаполиса, человеческой цивилизации и биосферы Земли. Даже оценку победителя в потенциальном противостоянии, к примеру, Индии и Южной Кореи можно с помощью этого принципа сделать относительно просто. Вопрос нюансов учёта. И если мы подходим к задаче именно с этого конца, то, действительно, задачка непростая. Непонятно, откуда начать. И это первый нюанс моделирования. Сначала нужно определиться с понятиями и задачей.

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

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

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

Не так давно Илон Маск в интервью упоминал цивилизации Кардашёва. Они определяются уровнем потребляемой энергии. И если человечество потребляет 0.19% от всей доступной на Земле энергии, то человечество достигло 0.19% от цивилизации первого уровня по Кардашёву. Есть ещё расширение этой концепции от Карла Сагана, который вводит гладкую логарифмическую аппроксимацию этих уровней. Фактически Кардашёв и Саган определяют развитость цивилизаций в ваттах, т.е. в единицах мощности. Хорошая отправная точка.

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

Нужно сформулировать ведущие факторы, влияющие на описываемый процесс. Для ПФП заявлено, что критически важно постоянство законов. Значит, отрицательный вклад будет вносить изменчивость этих законов. Изменчивость можно ввести по-разному. Но мы воспользуемся самой бесхитростной в математическом смысле схемой. У нас есть некоторый набор параметров p_i, изменение которых и является разрушающим фактором. А изменение обычно записывается, как dp/dt. Ничего нового изобретать не будем. При этом нам не важно, в какую сторону изменяется параметр. Потому нужно избавиться от знака dp/dt. Поскольку для математической формулы важна возможность аналитического исследования, чтобы строить сложные теории (а мы замахиваемся именно на такое), то нам лучше не брать модуль этой величины (есть проблемы с дифференцируемостью в нуле), а взять квадрат этой величины. Поскольку у каждого параметра будут свои единицы измерения, нам нужно от них избавиться домножением на некоторый коэффициент r для каждого параметра. Это важно для целостности математического закона. Выражение для конкретной характеристики должно быть согласовано с точки зрения единиц измерения. Это крайне важно, чтобы отслеживать нарушение логики. Если единицы измерения где-то “поплыли”, это тревожный звонок. Коэффициент r помимо согласования размерностей может отвечать и за степень влияния изменчивости конкретного параметра. Ведь для технологической сферы человечества важна, например, стабильность передачи сигнала. В данном случае постоянство скорости света - залог исправной работы компьютеров и прочей техники.

-2

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

Σ_i(r_i*dp_i/dt)^2

Аналогичное деструктивное влияние будет порождаться разнообразными случайными процессами. Всегда может залететь ненужный метеорит. Либо произойдёт какая-то сильная вспышка на недалёкой звезде. Все такие события мы просто “засунем” в ещё один член и назовём его γ.

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

(1-C/K), где C - это текущая структурная мощность системы, K - доступная мощность. При подходе потребления энергии к K у нас не будет никаких ресурсов для развития. Потому рост прекратится или даже сменится на деградацию.

Итоговая формула получается следующей:

dC/dt=C*[α(1-C/K) - βΣ_i(r_i*dp_i/dt)^2-γ]

А сам показатель структурной мощности можно ввести, как:

C=kP, где P - это потребляемая мощность, а k - коэффициент эффективности использования этой мощности.

Итого мы получили ясную математическую формулу.

Коэффициенты α, β и γ должны отражать способность к развитию с помощью имеющихся ресурсов, чувствительность к изменениям условий и степень разрушительности случайных воздействий на систему соответственно. Единицы их измерения тоже должны быть согласованы.

Эта не очень сложная формула позволяет сделать следующее:

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

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

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

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

А вы всё ещё думаете, что математическое моделирование - это очень сложная дисциплина?