EcoSimulation — 01. Основные понятия

Д.А. Шабанов
Конспект курса
"
Имитационное моделирование сложных биосистем
(с использованием Microsoft Excel)
"

Главная страница сайта Основные понятия Предназначение и структура модели
Пособия Имитационное моделирование биосистем-01 Имитационное моделирование биосистем-02

 

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

Автор благодарит коллег, а также прошедших через курс студентов за соучастие в разработке курса.

 

Основные понятия

Система — организованное целое; совокупность подсистем с характерной структурой связей и общей целью (функцией оптимизации).

Модель — представление о системе; система, существенные свойства которой соответствуют системе-оригиналу.

Свойства систем можно разделить на две группы: аддитивные и эмергентные (подробнее — в учебнике экологии). Эмергентные свойства возникают в результате взаимодействия подсистем. Часто, даже знающий набор и характер связей подсистем в системе квалифицированный наблюдатель оказывается в положении, когда он не может заранее предсказать, какими эмергентными свойствами будет обладать система (т.е. эмергентные свойства систем оказываются труднопредсказуемыми и даже часто контринтуитивными, т.е. не такими, какими их интуитивно ожидает исследователь). Почему так получается? В какой-то степени, это — следствие характерного для нас способа мышления. Наше мышление хорошо приспособлено для отслеживания цепочек из причин и следствий (см. "Цепочка следов антилопы") и плохо — для прогнозирования результата взаимодействия многих идущих одновременно и влияющих друг на друга процессов. Действительность организована иначе. Для нашей логики, которая раскладывает узел взаимовлияний на парные процессы, подсчет той конформации, которую примет белковая молекула определенного состава в результате взаимодействия ее разных участков друг с другом — сложнейшая задача. В то же время синтезированная молекула белка без всяких размышлений и подсчетов переходит в то состояние, которое ей соответствует. Вычисляя движение трех взаимодействующих тел (например, траекторию спутника в поле притяжения Земли и Луны), мы вынуждены применять многочисленные итерации (повторы однотипных вычислительных процедур), а любой камень без всяких вычислений уверенно выбирает свою траекторию.

Моделирование — мощный метод исследования систем, который имеет смысл применять в тех случаях, когда нас интересует взаимодействие нескольких одновременно идущих процессов. Моделирование основано на явлении, значение которого впервые осознано в общей теории систем Людвига фон Берталанфи: системы, которые имеют сходный характер связи подсистем, имеют и сходные эмергентные свойства.

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

Модели по своей природе могут быть разделены на следующие группы:

  • физические (материальные);
  • символьные (идеальные):
    • концептуальные:
      • вербальные;
      • графические;
    • математические (численные):
      • аналитические;
      • имитационные.

Кроме того, математические модели можно характеризовать еще по нескольким существенным признакам: дискретные — непрерывные; детерминированные — вероятностные (стохастические); статические — динамические.

 

Сравнение аналитических и имитационных моделей

Математические модели могут быть представлены в виде преобразования входных параметров (обозначим их совокупность X) в выходные (Y). В таком случае работу системы преобразований, составляющей алгоритм модели (обозначим ее как W) можно описать так: W(X)=Y

В чем разница между аналитическими моделями (англ. analytical models) и имитационными моделями (англ. simulation models)? В случае аналитического моделирования — это формула или система уравнений, в случае имитационного моделирования — пошаговый алгоритм преобразований входных параметров, логика которого соответствует процессам, которые происходят в системе-оригинале. 

Аналитическое моделирование — мощный метод для решения относительно простых задач, которые могут быть представлены в обобщенной форме. К примеру, мы изучаем динамику тела, на которое действует определенная сила. Получив серию оценок его состояния, мы можем установить, что масса тела (m), действующая на него сила (F) и вызванное ей ускорение (a) связаны зависимостью F=m×a — эта закономерность называется вторым законом Ньютона. Это — замечательная аналитическая модель. Легко представить себе условия, в которых динамика тела будет очень точно описываться этим уравнением.

«Аналитическое представление подходит лишь для очень простых и сильно идеализированных задач и объектов, которые, как правило, имеют мало общего с реальной (сложной) действительностью, но обладают высокой общностью. Данный тип моделей обычно применяют для описания фундаментальных свойств объектов, так как фундамент прост по своей сути. Сложные объекты редко удаётся описать аналитически». (О.И.Бабина)

Аналитические модели используют и в экологии. К примеру, мы можем предположить, что прирост популяции соответствует экспоненциальной модели, то есть пропорционален ее численности, т.е. dn/dt=r×N (где N — численности популяции, а r — биотический потенциал, мера "размножаемости" особей). Это дифференциальное уравнение можно решить: Nt=N0ert. Однако в этом случае ситуация несколько иная, чем в физике. Получить ряды наблюдений, точно соответствующих этой модели, практически невозможно. Слишком много разных факторов влияет на динамику численности практически любой реальной популяции... Для действия многих из этих связей сложно найти их математически простые описания. Что же делать? 

«Альтернативой аналитическим моделям являются имитационные модели <...>. Основное отличие имитационных моделей от аналитических состоит в том, что вместо аналитического описания взаимосвязей между входами и выходами исследуемой системы строят алгоритм, отображающий последовательность развития процессов внутри исследуемого объекта, а затем «проигрывают» поведение объекта на компьютере. К имитационным моделям прибегают тогда, когда объект моделирования настолько сложен, что адекватно описать его поведение математическими уравнениями невозможно или затруднительно. Имитационное моделирование позволяет разлагать большую модель на части (объекты, «кусочки»), которыми можно оперировать по отдельности, создавая другие, более простые или, наоборот, более сложные модели. Таким образом, основным преимуществом имитационного моделирования по сравнению с аналитическим является возможность решения более сложных задач, так как имитационную модель можно постепенно усложнять, при этом результативность модели не падает». (О.И.Бабина)

В последующих пунктах этого пособия показан постепенный переход от воплощения аналитической модели ко все более сложным имитационным моделям. К примеру, от относительно простых формул можно перейти к описанию популяции как совокупности особей, для каждой из которых учитывать ее возраст, пол, вероятность размножения с каждым из потенциальных партнеров, вероятность выживания и ее динамику, потенциальную плодовитость и ее динамику, а также иные характеристики, которые могут повлиять на популяционную динамику. Хотя в такой модели и используются многочисленные формулы (например, для описания изменений во времени различных характеристик особи), такая модель превращается в систему пошаговых преобразований, соответствующих протекающим в объекте-оригинале процессам — т.е. в имитационную модель. К примеру, на рис. 1.1 показано, как работает модель, описывающая преобразования гемиклональных популяционных систем (ГПС) гибридогенного комплекса зеленых лягушек (источник).

Рис. 1.1. Логика работы модели, описывающей трансформации гемиклональных популяционных систем зеленых лягушек (Шабанов, 2015)

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

 

Моделирование в биологии

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

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

 

Excel как среда для моделирования

Электронные таблицы Microsoft Excel (часть пакета Microsoft Office) представляют замечательные возможности для непрофессионального имитационного моделирования. Они задают неограниченное поле, в ячейках которого можно размещать любые величины, связывать их необходимыми зависимостями, а также отражать полученные ряды величин в графической форме.

MS Excel — проприетарная программа, то есть ее исходный код является собственностью ее производителя. Кроме того, это — коммерческий продукт, который его производитель продает пользователям. У MS Office есть ряд аналогов, относящихся к свободному и бесплатному ПО. В состав этих пакетов также входят электронные таблицы. Поскольку MS Excel задает некий стандарт функциональности электронных таблиц, модели, сделанные в MS Excel, обычно работают и в свободных аналогах этой программы. Впрочем, несмотря на то, что с точки зрения функциональности, Excel не является какой-то уникальной программой, она все-таки стала неким стандартом электронных таблиц. В какой-то степени, это результат протекционистской политики Microsoft, фирмы-производителя этого продукта. Так или иначе, компьютеры, на которых проходят занятия в компьютерном классе, оснащены пакетом Microsoft Office. Именно поэтому изложение в этом конспекте привязано именно к Microsoft Excel; вероятно, при использовании других пакетов в данный конспект следовало бы вносить определенные коррективы.

 

Структура курса

Курс имитационного моделирования можно разделить на три этапа (не имеющие четких границ, но отличающихся по основному характеру деятельности студентов и преподавателя).

Этап I  выполнение пошаговых инструкций. Студенты знакомятся с основными инструментами, используемыми для моделирования в среде Excel. Вероятно, их будет ожидать удивление: очень небольшой список команд и приемов позволяет создавать очень разные имитационные модели. В ходе этого этапа студенты должны пошагово повторить инструкции, подробно прописанные в данном конспекте. По мере роста профессионализма студентов детальность инструкций снижается.

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

Этап III — свободный полет: создание собственных моделей. Количество проблем, для решения которых можно использовать имитационное моделирование, поистине неограниченно. На этом этапе преподаватель знакомит студентов с некоторыми проблемами, которые кажутся интересными для него. Студенты могут сами предлагать проблемы, которые интересуют их самих. На этом этапе следует в ходе самостоятельной работы с обсуждением проблем, приемов и результатов моделирования решать интересные для участников процесса задачи. Некоторые из полученных в ходе этого этапа моделей, с согласия всех заинтересованных сторон, могут быть использованы как учебные модели для II этапа курса. 

 

Литература

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

Медоуз Д.Х. Азбука системного мышления. М.: БИНОМ. Лаборатория знаний, 2011. - 343 с.

Медоуз Д., Рандерс Й., Медоуз Д. Пределы роста. 30 лет спустя. М.: ИКЦ "Академкнига", 2007. - 342 с.

Коросов А. В. Имитационное моделирование в среде MS Excel (на примерах из экологии). ПетрГУ. Петрозаводск, 2002. 212 с