Диссертация - Институт вычислительной математики и

реклама
Федеральное государственное бюджетное учреждение науки
Институт вычислительной математики и математической геофизики
Сибирского отделения Российской академии наук
На правах рукописи
Витвицкий Антон Александрович
РАЗРАБОТКА И ИССЛЕДОВАНИЕ МЕТОДОВ
КЛЕТОЧНО-АВТОМАТНОГО МОДЕЛИРОВАНИЯ РОСТА И ДЕЛЕНИЯ
КЛЕТОК ЖИВЫХ ОРГАНИЗМОВ
Специальность 05.13.18 —
«Математическое моделирование, численные методы и комплексы программ»
Диссертация на соискание ученой степени
кандидата физико-математических наук
Научный руководитель:
д.т.н., проф.
Бандман Ольга Леонидовна
Новосибирск — 2015
2
Оглавление
Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1 Обзор инструментов моделирования для задач биологии . . . . . . . . . . . . . . . .
9
1.1
Непрерывные методы моделирования . . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.2
Дискретно-непрерывные методы моделирования . . . . . . . . . . . . . . . . . . . .
11
1.3
Полностью дискретные методы моделирования . . . . . . . . . . . . . . . . . . . . 12
1.4
Выводы к главе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Двумерные клеточные автоматы с динамической однородной структурой . . . . . . 14
2.1
2.2
2.3
2.4
Метод динамических клеточных автоматов . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.1
Основные понятия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.1.2
Именующие функции и шаблоны соседства . . . . . . . . . . . . . . . . . . 15
2.1.3
Правила переходов и режимы работы ДКА . . . . . . . . . . . . . . . . . . . 16
2.1.4
Оператор однонаправленной вставки в массив ячеек . . . . . . . . . . . . . 17
2.1.5
Оператор однонаправленного разбиения массива ячеек . . . . . . . . . . . . 19
ДКА-модель ℵ𝑚 апикальной меристемы побега Arabidopsis Thaliana . . . . . . . . 20
2.2.1
Общее описание ДКА-модели ℵ𝑚 . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.2
Микроуровень модели (ДКА ℵB
𝑚 ) . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.3
Макроуровень модели (ДКА ℵA𝑚 ) . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.4
Моделирование роста и деления в ДКА ℵB
𝑚
2.2.5
Результаты моделирования ℵ𝑚 . . . . . . . . . . . . . . . . . . . . . . . . . . 26
. . . . . . . . . . . . . . . . . . 26
ДКА-модель ℵ𝑎 роста и деления клеток цианобактерии Anabaena catenula . . . . . 29
2.3.1
Общее описание ДКА-модели ℵ𝑎 . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.2
Микроуровень модели (ДКА ℵB
𝑎 ) . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.3
Макроуровень модели (ДКА ℵA𝑎 ) . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.3.4
Результаты моделирования ℵ𝑎 . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Выводы к главе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3 Трехмерные клеточные автоматы с динамической неоднородной структурой . . . . 37
3.1
Организация массива ячеек с неоднородной структурой . . . . . . . . . . . . . . . 37
3.1.1
Алгоритм построения колец . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.1.2
Алгоритм построения поверхности клетки бактерии . . . . . . . . . . . . . 39
3
3.1.3
Примеры различных вариантов поверхностей . . . . . . . . . . . . . . . . . 41
3.2
Быстрый алгоритм определения соседства ячеек . . . . . . . . . . . . . . . . . . . . 41
3.3
Моделирование роста и деления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.4
Выводы к главе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4 КА-моделирование самоорганизации бактериальной системы белков MinCDE . . . 48
4.1
Система белков MinCDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2
Двумерная КА-модель ℵ2𝑑
𝑚𝑖𝑛 самоорганизации MinCDE (in vitro) . . . . . . . . . . . 51
4.3
4.2.1
Описание КА-модели ℵ2𝑑
𝑚𝑖𝑛 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.2.2
Результаты моделирования ℵ2𝑑
𝑚𝑖𝑛 . . . . . . . . . . . . . . . . . . . . . . . . . 56
Трехмерная КА-модель ℵ3𝑑
𝑚𝑖𝑛 самоорганизации MinDE на поверхности растущей
и делящейся клетки (in vivo) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.4
4.3.1
Описание ℵ3𝑑
𝑚𝑖𝑛 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.2
Результаты моделирования ℵ3𝑑
𝑚𝑖𝑛 . . . . . . . . . . . . . . . . . . . . . . . . . 66
Выводы к главе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5 Программный комплекс . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.1
Архитектура программного комплекса . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.2
Программная реализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.3
5.2.1
Используемые технологии . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.2
Базовые структуры данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.2.3
Описание классов ядра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.2.4
Визуализация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.2.5
Графический интерфейс пользователя . . . . . . . . . . . . . . . . . . . . . . 80
Выводы к главе . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4
Введение
Изучение процессов развития тканей живых организмов является одной из основных задач современной биологии [1]. Самоорганизационное поведение, порождаемое взаимодействием
различных белков, лежит в основе этих процессов и делает механизмы роста и деления клеток
полностью автоматическими. Такие белковые системы также можно назвать распределенными,
имея в виду то, что в отличие от подавляющего числа современной вычислительной техники, разработанной человеком, эти системы не имеют какого-либо центрального управляющего
элемента, который бы был ответственен за принятие всех решений к действию. Распределенный характер механизмов самоорганизации делает их особо устойчивыми к различным сбоям
и вмешательству внешних факторов, т.к. не имея уязвимого управляющего звена, не так просто
получить повреждения, которые бы приводило к краху всей системы самоорганизации в целом.
Однако, эти механизмы, управляющие развитием тканей живых организмов, до сих пор мало
изучены [1]. Это изучение затруднено тем, что в лабораторных условиях весьма сложно отследить динамику отдельных частиц, входящих в состав этих механизмов. Одним из стремительно
развивающихся разделов вычислительной биологии является биологическая кибернетика (или
биомоделирование), задачи которой состоят в разработке математических моделей, помогающих
в изучении различных биологических процессов. Компьютерное моделирование помогает исследователям на практике проверить различные выдвигаемые ими гипотезы и теоретические
предположения, а также обнаружить новые явления в поведении изучаемых систем.
Математическое моделирование в задачах, изучающих с развитие тканей живых организмов,
особенно сложно, т.к. требует связать различные модели самоорганизационных механизмов с динамикой моделируемого пространства, которая неизбежно возникает во время роста и деления
клеток тканей. Проблема состоит в том, что многие классические инструменты моделирования,
хорошо зарекомендовавшие себя в моделях самоорганизации, обладают слабой эффективностью
в задачах, связанных с динамикой моделируемого пространства, которая может возникать в процессе самоорганизации биологической системы. Поэтому, большинство существующих моделей,
которые применяются для изучения самоорганизационных механизмов, приводящих к развитию
тканей живых систем, отображают процессы, происходящие в статичных структурах, имитирующих, например, форму поверхности клетки, не изменяемую во времени [2]. Последнее исключает прямое изучение обратной связи между этими самоорганизационными механизмами, и,
непосредственно, самими процессами роста и деления.
5
Клеточные автоматы (КА) показали свою эффективность в задачах моделирования многих
процессов [3–8], что, совместно с такими преимуществами КА, как вычислительная устойчивость, отсутствие ошибок округления, естественный мелкозернистый параллелизм [9, 10] и простота моделирования, делает их весьма перспективным инструментом для задач, связанных с
изучением развития живых систем. Отдельно стоит остановится на простоте составления правил создаваемой модели, которая присуща КА, т.к. это является крайне важной способностью.
В 2002 году С. Вольфрам в своей работе [11] продемонстрировал, что сложное поведение, присущие различным природным явлениями, может быть следствием взаимодействия простых механизмов. Кроме того, асинхронные стохастические КА-модели являются наиболее важными
применительно к задачам моделирования биологических систем, т.к. отражают факт того, что
в природе большинство процессов являются не детерминированными, а стохастическими. Однако, в классическом КА массив ячеек представлен в виде статичной регулярной решетки, что
затрудняет моделирование структур, изменяемых во времени (например, моделирование процессов роста и деления клеток, которые присущи всем живым системам [1]). Поэтому, понятие
КА нуждаются в некотором расширении, которое позволит эффективно применять КА-подход к
задачам, связанным с динамикой структуры моделируемого пространства.
Более ясное понимание механизмов, управляющих развитием тканей биологических систем,
будет способствовать созданию новых эффективных вакцин в борьбе с бактериальными инфекциями и другими болезнями, улучшит продуктивность при использовании растений и микроорганизмов в сфере деятельности человека (например, в пищевой и текстильной промышленности), и, что крайне важно, может дать множество интересных идей и архитектурных решений
в кибернетике и робототехнике. Поэтому, создание инструмента моделирования, который может быть эффективно применен к задачам изучения развития тканей биологических систем и
будет совмещать в себе эффективность моделирования самоорганизационных механизмов с возможностью динамики структуры моделируемого пространства, представляет собой актуальную
задачу.
Целью настоящей работы является разработка и исследование методов, которые расширяют аппарат КА на задачи моделирования роста и деления клеток тканей живых организмов,
и позволяют разрабатывать на их основе двумерные и трехмерные КА-модели, обладающие
способностью динамически менять структуру своей решетки непосредственно в процессе моделирования.
Для достижения поставленной цели необходимо было решить следующие задачи:
1. Разработать новый класс КА – клеточные автоматы с динамической структурой (ДКА),
которые позволяют изменять структуру двумерной однородной решетки КА в процессе
моделирования.
2. Исследовать возможности ДКА путем разработки двухуровневой ДКА-модели развития
апикальной меристемы побега Arabidopsis Thaliana и двухуровневой ДКА-модели роста и
деления клеток цианобактерии Anabaena catenula.
6
3. Разработать метод организации массива ячеек с неоднородной структурой, позволяющий
эффективно конструировать трехмерные поверхности клеток некоторых форм (которые
могут быть образованы поверхностью вращения), моделировать динамику поверхности
(рост и деление клеток) и быстро вычислять трехмерное соседство ячеек.
4. Разработать двумерную КА-модель самоорганизации системы белков MinDE со статичной
структурой. Исследовать поведение моделируемых белков в двумерном статичном случае
(случай in vitro).
5. Разработать трехмерную КА-модель самоорганизации системы белков MinDE на поверхности клетки. Исследовать поведение белков MinDE во время роста и деления моделируемой
клетки (случай in vivo).
6. Разработать программный комплекс, позволяющий реализовывать и визуализировать двумерные ДКА-модели с однородной структурой и трехмерные КА-модели с динамической
неоднородной структурой.
Научная новизна:
1. Предложен новый класс КА – клеточные автоматы с динамической структурой (ДКА), позволяющие динамически менять структуру двумерной решетки в процессе моделирования.
2. Разработаны две новых двухуровневых ДКА-модели: модель развития апикальной меристемы побега Arabidopsis Thaliana, и модель роста и деления клеток цианобактерии
Anabaena catenula.
3. Предложен метод организации трехмерного массива ячеек с неоднородной структурой,
позволяющий эффективно конструировать трехмерные поверхности клеток некоторых
форм, быстро вычислять трехмерное соседство клеток на этих поверхностях, а также изменять их структуру в процессе моделирования.
4. Впервые разработана трехмерная модель самоорганизации системы белков MinDE на поверхности клетки бактерии во время ее роста и деления.
Основные положения, выносимые на защиту:
1. Новый класс КА – клеточные автоматы с динамической структурой (ДКА), позволяющие
эффективно применять аппарат КА к двумерным задачам роста и деления биологических
объектов.
2. Двухуровневая ДКА-модель развития апикальной меристемы побега Arabidopsis Thaliana,
и двухуровневая ДКА-модель роста и деления клеток цианобактерии Anabaena catenula.
3. Метод организации трехмерного массива ячеек с неоднородной структурой, позволяющий
конструировать трехмерные поверхности клеток некоторых форм, моделировать динамику
этих поверхностей и быстро вычислять на них трехмерное соседство ячеек.
7
4. Трехмерная КА-модель самоорганизации белков MinDE на поверхности растущей и делящейся бактериальной клетки.
5. Программный комплекс, позволяющий разрабатывать, моделировать и визуализировать
двумерные ДКА-модели и трехмерные КА-модели с динамической неоднородной структурой ячеек.
Научная и практическая значимость. Предложенные в работе методы позволяют эффективно применять аппарат КА к задачам биологии, связанным с динамикой моделируемого пространства. Разработанные математические модели, на основе этих методов, показывают результаты, не уступающие, а порой и превосходящие по эффективности классические инструменты
моделирования, которые применяются в настоящее время в задачах биологии, связанных с процессами самоорганизации и последующей динамикой структуры моделируемого пространства.
Таким образом, предложенные методы открывают путь для разработки новых математических
моделей биологических систем, которые совмещают эффективность моделирования процессов
самоорганизации с возможностью динамически изменять структуры пространства в процессе
моделирования. Кроме того, разработанные на основе предложенных методов модели позволяют
использовать всю эффективность аппарата КА, а именно: мелкозернистый параллелизм, вычислительную устойчивость, отсутствие ошибок округления, простоту задания модельных правил и
простоту визуализации процесса моделирования. Разработанный программный комплекс позволяет программировать новые двумерные и трехмерные КА-модели с динамикой структуры моделируемого пространства, производить вычислительные эксперименты, визуализировать процесс
моделирования и различные статистические данные этого процесса. Архитектура программного
комплекса является модульной, а основные структуры данных и алгоритмы реализованы в виде
библиотеки на языке С++ с открытым кодом, что позволяет изменять и дополнять программный
комплекс любому пользователю.
Степень достоверности. Предложенные в данной работе методы расширения аппарата классических КА на задачи, связанные с динамикой моделируемого пространства, были опробованы
и исследованы путем разработки соответствующих математических моделей процессов, происходящих в биологических объектах и непосредственно связанных с последующим ростом и делением этих объектов. Корректность разработанных моделей проверялась путем сопоставления
результатов компьютерного моделирования с данными из других работ, в которых результаты
были получены в лабораторных экспериментах in vitro, а также с помощью моделирования на
основе систем дифференциальных уравнений.
Личный вклад. Все методы и модели, предлагаемые в данной диссертации, а также программный комплекс, были исследованы и разработаны автором лично.
Апробация работы. Основные результаты работы докладывались на 4 международных, 4
молодежных международных и 4 молодежных местных конференциях:
1. «13th
International
Conference
Petrozavodsk, Russia, 2015.
on
Parallel
Computing
Technologies»
(PaCT-2015),
8
2. «Advanced Mathematics, Computations and Applications 2015» (AMCA-2015), Novosibirsk,
Russia, 2015.
3. «Mathematical Modeling and High Performance Computing in Bioinformatics, Biomedicine and
Biotechnology» (MM-HPC-BBB-2014), Novosibirsk, Russia, 2014.
4. «Advanced Mathematics, Computations and Applications 2014» (AMCA-2014), Novosibirsk,
Russia, 2014.
5. «Теория и численные методы решения обратных и некорректных задач» (ОНЗ-2015), Новосибирск, 2015.
6. «53-я Международная научная студенческая конференция» (МНСК-2015), Новосибирск,
2015.
7. «The 6th International Young Scientists School Systems Biology and Bioinformatics» (SBB2014), Novosibirsk, Russia, 2014.
8. «Современные проблемы прикладной математики и информатики», Новосибирск, 2014.
9. «52-я Международная научная студенческая конференция» (МНСК-2014), Новосибирск,
2014.
10. «Конференция молодых ученых ИВМиМГ СО РАН», Новосибирск, 2015.
11. «Конференция молодых ученых ИВМиМГ СО РАН», Новосибирск, 2014.
12. «Конференция молодых ученых ИВМиМГ СО РАН», Новосибирск, 2013.
13. Семинары по клеточным автоматам ИВМиМГ, лаборатория синтеза параллельных программ, 2012-2015.
Работа выполнялась в рамках Программы фундаментальных исследований Президиума РАН,
проект 15.9 (2014), а также при поддержке гранта РФФИ 14-01-31425 mol_a.
Публикации. Основные результаты по теме диссертации изложены в 14 работах, 4 из которых изданы в журналах рекомендованных ВАК [12–15], 2 – в иных журналах [16, 17], 8 – в
тезисах докладов [18–25].
Объем и структура работы. Диссертация состоит из введения, пяти глав и заключения. Полный объем диссертации составляет 93 страницы с 47 рисунками. Список литературы содержит
97 наименований.
Автор выражает огромную благодарность своему научному руководителю д.т.н., профессору Бандман Ольге Леонидовне за помощь и поддержку, оказанную при работе над диссертацией.
9
Глава 1
Обзор инструментов моделирования для
задач биологии
1.1
Непрерывные методы моделирования
Под биологическими системами понимаются объекты, такие как клетки, ткани, органы и организмы в целом, структура которых состоит из нескольких функциональных уровней [26]. Как
правило, такие системы являются диссипативными, а их динамика тесно связана с различными
самоорганизационными процессами, протекающими в них. Первой математической моделью,
описывающей самоорганизацию, может считаться модель Фишера-Колмогорова-ПетровскогоПискунова, которую независимо исследовали английский математик Р. Фишер в 1930 году [27],
и группа русских математиков под руководством А. Колмогорова в 1937 году [28].
Моделью, при помощи которой предпринимались первые попытки описать биологическую
систему математически, является модель типа реакция-диффузия, берущая свое начало из работы [29] А. Тьюринга, сделанную в 1952 году. Модель типа реакция-диффузия представляет
собой систему дифференциальных уравнений в частных производных, описывающую распределение концентрации некоторых веществ в биологической системе. На распределение веществ
воздействуют два процесса: локальные химические реакции, трансформирующие одно вещество
в другое, и диффузия, которая перемещает эти вещества по моделируемому пространству. Предложенные Тьюрингом уравнения стали основой для многих математических моделей различных
биологических систем. Например, в [30–32] при помощи системы типа реакция-диффузия была
смоделирована самоорганизация микротрубочек эукариотической клетки в различные структуры, где микротрубочки описывались точками в двумерном пространстве и подвергались диффузии и реакции. В [33] был смоделирован рост аваскулярной кисты, где диффундировали и
вступали в реакцию различные питательные вещества (кислород, аминокислоты, глюкоза, ионы
металлов и др.), потребляемые клетками.
Как правило, в непрерывных моделях поверхность объекта (клетки, ткани, органа) рассматривается как однородная непрерывная среда, либо как как ансамбль клеток (в случае ткани, или
10
органа), в котором каждой клетке соответствует своя группа уравнений, а вся система уравнений
принимает векторную форму [1]. Например, в [34,35] была исследована одномерная модель регуляции возобновительной зоны апикальной меристемы побега, где ткань имитировалась группой
клеток, перенос веществ между клетками осуществлялся диффузией, а модель в целом была
сформулирована как задача Коши для автономной системы уравнений векторного типа.
Переход к более подробным непрерывным моделям, которые берут во внимание индивидуальную форму моделируемого объекта и его способность к изменению этой формы (рост, деление, воздействие со стороны других объектов), требует ввода в разрабатываемые модели дополнительных функциональных зависимостей по пространству. Однако, поиск таких зависимостей,
которые в большинстве случаев являются нелинейными, сам по себе является нетривиальной
задачей. В дополнение к этому, если геометрия пространства меняется в течении процесса моделирования, то это налагает дополнительную вычислительную нагрузку, т.к. требует дополнительного перерасчета функциональных зависимостей после каждого такого изменения. Кроме
того, в некоторых задачах, после изменения структуры моделируемого пространства, возникает
необходимость в изменении системы дифференциальных уравнений, описывающей процессы,
происходящие внутри измененного объекта, или между соседними объектами. При этом, если
уравнения были решены аналитически, изменения такой системы может быть достаточно трудоемкой задачей, требующей усложнения модели и дополнительной вычислительной нагрузки.
Вышеупомянутые сложности обусловливаются тем, что модель типа реакция-диффузия в
первую очередь была введена для исследования и анализа различных самоорганизационных
процессов в диссипативных структурах. Поэтому, такие модели, хорошо зарекомендовавшие себя в задачах самоорганизации в биологических системах со статичной структурой пространства
(имитирующей форму клетки, ткани, органа), не так эффективны в задачах, связанных с динамикой моделируемого пространства (например, рост и деление клетки, ткани, органа). К примеру,
в [2] была разработана модель процесса самоорганизации белков MinCDE, при помощи которых
предотвращается неправильное позиционирование места деления клетки в бактериях E.coli. В
качестве инструмента моделирования там использовалась система дифференциальных уравнений типа реакция-диффузия, которая решалась при помощи метода конечных элементов. Моделирование производилось на статичной трехмерной сетке, имитирующей поверхность клетки
E.coli, и показало хорошие результаты, близкие к наблюдениям in vivo. Однако, для исследования
поведения белков MinCDE непосредственно во время роста и деления клетки, возникла потребность в вводе динамики пространства в модель, что было выполнено лишь в одномерном случае.
Рост клетки в модели с большим числом измерений, а также ее деление, не были выполнены
по причине достаточной сложности. Данное обстоятельство и объясняется тем, что выбранный
инструмент моделирования, прекрасно подходящий для задач самоорганизации в биологических
системах, не так эффективен в задачах, требующих динамики моделируемого пространства.
11
1.2
Дискретно-непрерывные методы моделирования
Особенности биологических систем, связанные c резким изменением свойств от объекта к
объекту, не поддающиеся описанию при помощи непрерывных параметров [1], закономерно
потребовали дальнейшего перехода к моделям, непрерывным по времени, но дискретным по
пространству. Модели с дискретным пространством позволяет более просто задавать сложную
индивидуальную геометрию отдельных биологических объектов и их динамику, а также эффективно использовать в моделях свойства, не присущие непрерывным средам, такие как возраст
объекта, его генотип, скорость и направление деления.
Одной из первых математических моделей, работающих на дискретном пространстве, может считаться модель Поттса, разработанная австралийским математиком Р. Поттсом в 1951
году [36]. Модель Поттса представляет собой набор элементарных объектов - спинов, расположенных на прямоугольной решетке в двумерном евклидовом пространстве. Функционирование
модели Поттса сводится к поиску такой конфигурации, которая будет минимизировать энергию
всей системы. Несколько позже, в 1992 году, модель Поттса была расширена в [37] и получила
название - клеточная модель Поттса. На основе этой расширенной модели была разработана
система CompuCell3D [38], предназначающаяся для моделирования биологических систем различной сложности. В CompuCell3D пространство является дискретным и разбивается на одинаковые ячейки, которые могут иметь квадратную или гексагональную форму. Таким образом,
форма моделируемых объектов (клеток, тканей, или органов в целом) задается при помощи набора таких ячеек, а процессы, происходящие в этих объектах, моделируются при помощи дифференциальных уравнений. При помощи CompuCell3D были смоделированы такие процессы
как рост опухолевых клеток [39–42], рост бактериальных колоний [43], развитие кровеносных
сосудов [44] и др.
Еще одним способом задания дискретного пространства, широко применяемым для описания структуры биологических объектов, являются L-системы, предложенные венгерским математиком А. Линденмайером в 1968 году [45]. L-системы представляют собой формальную
грамматику, состоящую из алфавита, начального состояния и правил переходов. Функционирование L-системы заключается в итеративном изменении строки символом алфавита, описывающих модель. Особенность L-систем заключается в том, что они создают фрактальную структуру
пространства и эффективно используются для моделирования роста растений, не принимая во
внимание внутриклеточные процессы [46,47]. Использование L-систем для описания дискретного пространства, и систем дифференциальных уравнений для моделирования внутриклеточных
процессов, породило целый ряд дискретно-непрерывных моделей. Например, в [48–50] таким
способом был смоделированы рост нитчатой водоросли Anabaena catenula, а также развитие
апикальной меристемы побега Arabidopsis thaliana.
Другим примером дискретно-непрерывных моделей, в которых используется сложная форма
биологических объектов (в частности, клеток), являются модели, описывающие клетки геометрическим способом с привлечением теории упругости для описания их динамики и взаимодей-
12
ствия. Например, в [51] клетки описываются при помощи полусфер заданного радиуса, а центры
соседних клеток связаны сжатой пружиной. В [52] стенки клеток имитируются пружинами с заданной длиной и жесткостью, которые связаны в точках, составляющих периметр клетки.
Дискретно-непрерывные модели, как правило, являются дискретными только по пространству, тогда как моделируемые процессы, происходящие на этом пространстве, остаются непрерывными и описываются при помощи систем дифференциальных уравнений. Таким образом,
дискретно-непрерывные модели наследуют все проблемы численных методов решения дифференциальных уравнений, такие как накопление ошибок округления, сложность описания и решения в многомерных случаях, учет краевых условий, проблемы устойчивости и множественности
решений, а также дополняются вычислительными погрешностями, связанными с переходом от
непрерывных величин к дискретным, и обратно.
1.3
Полностью дискретные методы моделирования
Как было замечено в [1], механизмы роста и деления биологических объектов (в частности,
клеток) в большей степени определяются не уравнениями, а совокупностью определенных правил. Поэтому, переход к полностью дискретным моделям, основанным на правилах, может стать
закономерным этапом развития математического моделирования биологических систем. Такие
модели, в отличие от дискретно-непрерывных методов моделирования, не наследуют сложностей, связанных с численным решением дифференциальных уравнений, и лишены проблемы
дополнительных погрешностей от согласования непрерывных и дискретных величин. Следует также учитывать тот факт, что компьютерное моделирование подразумевает использование
в качестве инструмента вычислений компьютера, который оперирует дискретными данными, а
любая непрерывная модель неизбежно аппроксимирует к ее дискретному состоянию при переносе на языки программирования. Кроме того, полностью дискретные модели позволяют получать
не только качественную, но и количественную картину моделируемого процесса, а также предоставляют детальную визуализацию этой картины.
Одним из широко используемых в современной вычислительной биологии дискретных методов моделирования, является стохастическая реакционно-диффузионная модель на основе частиц [53]. В такой модели различные внутриклеточные вещества представляются в виде абстрактных частиц, которые могут перемещаться случайным образом в дискретном пространстве
(диффузия), и вступать в реакции по заданным стохастическим правилам. В качестве абстрактной частицы может выступать как единица вещества (например, мономер белка), либо некоторая его концентрация (тогда дискретное пространство может быть разбито на конечные площади/объемы [54, 55]). Например, в [56] при помощи стохастической реакционно-дифузионной
модели был смоделирован процесс формирования сети кровеносных сосудов, а также показаны преимущества предложенного метода над моделью, основанной на клеточной модели Поттса. В уже упомянутой работе [2], где моделировалась самоорганизация белков MinCDE, помимо модели на основе дифференциальных уравнений, была также разработана стохастическая
13
реакционно-дифузионная модель на основе частиц, которая показала более детализированную
картину процесса моделирования в сравнении с ее непрерывным аналогом.
Большинство дискретных моделей, основанных на правилах, можно представить в формализме клеточных автоматов. Понятие клеточного автомата (КА) было предложено венгероамериканским математиком Д. фон Нейманом в 1940-ых годах XX века. Классический КА представляет собой дискретную прямоугольную решетку, на которой расположены элементарные
вычислители - ячейки, а функционирование КА осуществляется по заданным правилам переходов [3]. КА начали свой путь от простой детерминированной модели с булевым алфавитом, которую фон Нейман использовал для изучения биологического самовоспроизведения [57] и долгое
время оставались лишь объектом для игр разума математиков [58, 59]. В 1984 году Т. Тоффоли в
своей работе [60] выдвинул и обосновал идею, что КА являются скорее альтернативой для дифференциальных уравнений, чем их аппроксимацией. Позже, в 1987 году Т. Тоффоли совместно
с Н. Марголусом опубликовали свою знаменитую работу [61], в которой продемонстрировали,
что КА могут быть использованы как весьма эффективный инструментом для математического
моделирования. В 1984 году С. Вольфрам в работе [62] рассматривал КА как универсальный
инструмент для вычислений, а в 1993 году в [63] показал возможность применения КА к задачам статистической механики. В настоящие время КА превратился в эффективный инструмент,
который позволяет разрабатывать различные математические модели: от простых синхронных и
детерминированных, до сложных асинхронных стохастических моделей пространственной динамики [3,5,64] и самоорганизации [6]. КА также нашли широкое применения в моделировании
различных биологических процессов. Например, в [65] была предложена КА-модель роста опухолей эпителиальных тканей, а в [66,67] смоделировано развитие апикальной меристемы побега
растения Arabidopsis thaliana. В заключение хотелось бы отметить, что асинхронные стохастические модели являются наиболее важными в задачах моделирования различных биологических
явлений, т.к. отражают тот факт, что в природе большинство процессов являются стохастическими, а не детерминированными.
1.4
Выводы к главе
В Главе 1 были получены следующие результаты:
1. Рассмотрены непрерывные, дискретно-непрерывные и полностью дискретные методы моделирования, применяемые в задачах вычислительной биологии. Кратко рассмотрена история становления этих методов.
2. Описаны преимущества и недостатки рассмотренных методов моделирования по отношению к задачам, связанным с динамикой структуру моделируемого пространства (моделирование роста и деление клеток тканей живых организмов).
14
Глава 2
Двумерные клеточные автоматы с
динамической однородной структурой
В данной главе дано понятие динамических клеточных автоматов (ДКА) с двумерной однородной структурой ячеек, которое позволяет эффективно применять аппарат клеточных автоматов к двумерным задачам роста и деления клеток тканей живых организмов. Для проверки
предложенного метода разработаны две ДКА-модели: модель развития апикальной меристемы
побега Arabidopsis Thaliana и модель роста и деления клеток цианобактерии Anabaena catenula.
Проведенные вычислительные эксперименты позволяют сравнить предложенные ДКА-модели с
существующими моделями, основанными на других методах.
2.1
2.1.1
Метод динамических клеточных автоматов
Основные понятия
Клеточный автомат (КА) это дискретная математическая модель, которая представляет собой множество одинаковых конечных автоматов (или вычислителей) [3]. Каждый такой вычислитель называется ячейкой1 , которая задается парой вида (𝑢,𝑖), где 𝑢 – состояние ячейки из
конечного множества состояний 𝐴, а 𝑖 – имя ячейки из конечного множества имен 𝑋. Состояние
ячейки может быть простым, или составным. В первом случае 𝑢 ∈ {𝑎 : 𝑎 ∈ 𝐴𝑎 }, а во втором
- 𝑢¯ ∈ {(𝑎,𝑏,...,𝑧) : 𝑎 ∈ 𝐴𝑎 ,𝑏 ∈ 𝐴𝑏 ,...,𝑧 ∈ 𝐴𝑧 }, где множество состояний 𝐴 = {𝐴𝑎 ∪ 𝐴𝑏 ∪ ... ∪ 𝐴𝑧 },
а множество имен 𝑋 = {𝑖 : 𝑖 = (𝑖𝑎 ,𝑖𝑏 ,...,𝑖𝑧 )}. Отдельные компоненты составного состояния обозначаются как (𝑎,𝑖𝑎 ),(𝑏,𝑖𝑏 ),...,(𝑧,𝑖𝑧 ), а состояние в целом - (𝑢,𝑖). Множество ячеек
Ω = {(𝑢,𝑖) : 𝑢 ∈ 𝐴, 𝑖 ∈ 𝑋} образует массив ячеек. Каждая ячейка КА связана с другой ячейкой из
некоторой окрестности, называемой соседством. Все связи ячеек однозначно определяют структуру пространства ячеек КА. Функционирование КА заключается в смене состояний ячеек по
некоторым заданным правилам, называемым правилами переходов [68].
1
В русскоязычной литературе традиционно применяется термин клетка. Однако, чтобы не вносить путаницу
между клетками КА и клетками живых систем, здесь и далее мы будем называть элементы КА - ячейками
15
В классических КА ячейки располагаются на некоторой регулярной решетке (например, прямоугольной, или гексагональной), которая явно определяет структуру пространства ячеек. Такая структура всегда статична, а соседство ячеек в ней задается при помощи шаблонов соседства [68]. В КА с динамической структурой (ДКА) структура пространства ячеек может быть
произвольной и изменяемой во времени, поэтому соседство задается явно при помощи матрицы
смежности 𝑀 = {𝑚𝑖𝑗 : 𝑚𝑖𝑗 ∈ 𝐷, ∀𝑖,𝑗 ∈ 𝑋}. Элемент 𝑚𝑖𝑗 определяет для ячейки с именем 𝑖 ее
соседские отношения с ячейкой 𝑗. Множество 𝐷 называется множеством направлений соседства и задает типы возможных соседских связей между ячейками. Например, запись 𝑚𝑖𝑗 = 𝐸,
где 𝐸 ∈ 𝐷 означает, что для ячейки 𝑖 ячейка 𝑗 является ее восточным соседом. В общем случае 𝑚𝑖𝑗 ̸= 𝑚𝑗𝑖 (т.е., если для ячейки 𝑖 сосед 𝑗 является восточным, тогда для 𝑗 сосед 𝑖 будет
западным). Если ячейки 𝑖 и 𝑗 не связаны соседством, тогда 𝑚𝑖𝑗 = 𝑚𝑗𝑖 = 0.
Таким образом, геометрия пространства в ДКА полностью определена матрицей смежности
𝑀 и множеством направлений соседства 𝐷, а имена ячеек не несут какой-либо информации о
положении ячейки на решетке и служат лишь уникальным индексом, характеризующим ячейку.
Пример 1. Рассмотрим описание массива ДКА, состоящего из девяти ячеек (𝑢,𝑖), которые
могут находиться в одном из двух состояний – 1 или 0. Ячейки связаны между собой соседством
фон Неймана [57] с непериодическими граничными условиями, что означает, что каждая ячейка
может иметь до четырех соседей: северного (𝑁 ), восточного (𝐸), южного (𝑆) и западного (𝑊 ).
Таким образом, мы имеем множество имен 𝑋 = {1,2,...,9}, множество состояний 𝐴 = {0,1},
множество направлений соседства 𝐷 = {𝑁,𝐸,𝑆,𝑊 }, и матрицу смежности 𝑀 (рис. 2.1).
Рисунок 2.1: Структура массива ячеек из примера 1 (слева - графическое представление, справа
– матрица смежности).
2.1.2
Именующие функции и шаблоны соседства
Именующая функция 𝜑𝑑 (𝑖) для ячейки с именем 𝑖 ∈ 𝑋 указывает ее соседа 𝑗 ∈ 𝑋 по направлению 𝑑 ∈ 𝐷 (если он существует):
𝜑𝑑 (𝑖) =
⎧
⎨ 𝑗,
𝑖𝑓
⎩ ∅,
𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒.
𝑚𝑖𝑗 = 𝑑,
(2.1)
16
Из конечного числа именующих функций составляются шаблоны соседства (или окрестности). Например, шаблон 𝑇 (𝑖) = {𝑖, 𝜑𝑁 (𝑖), 𝜑𝐸 (𝑖), 𝜑𝑆 (𝑖), 𝜑𝑊 (𝑖)} определяет соседство фон Неймана для ячейки с именем 𝑖 (принято, что 𝑖 также входит в шаблон).
Суперпозиция шаблонов соседства образует уровни соседства. Так, 𝑇 (𝑖) образует первый
уровень соседства для ячейки 𝑖, а 𝑇 (𝑇 (𝑖)) = {𝑇 (𝑗) : 𝑗 ∈ 𝑇 (𝑖)} - второй уровень (т.е. соседи
соседей ячейки 𝑖). Аналогично образуются и более высокие уровни соседства.
Состояния ячеек из окрестности 𝑇 (𝑖) в момент времени 𝑡 образуют локальную конфигурацию
𝑆(𝑖,𝑡) = {(𝑢,𝑖), (𝑣1 ,𝜑1 (𝑖)), ..., (𝑣𝑘 ,𝜑𝑘 (𝑖))}. Важным отличием локальной конфигурации от шаблона
соседства является то, что шаблон определяет множество имен ячеек, а локальная конфигурация
- множество состояний этих ячеек в конкретный момент времени. Множество состояний всех
ячеек массива Ω в момент времени 𝑡 образуют глобальную конфигурацию Ω(𝑡).
2.1.3
Правила переходов и режимы работы ДКА
Функционирование ДКА задается правилами переходов Θ, при помощи которых ячейки (в
моменты дискретного времени) переходят из одного своего состояния в другое. Такие переходы
могут зависеть как от состояния самой ячейки, так и от состояний соседних ячеек в некоторой окрестности. Правила переходов могут состоять из одной элементарной подстановки 𝜃,
или из композиции нескольких Θ = (𝜃1 ,𝜃2 ,...,𝜃𝑛 ) [69, 70]. Каждая подстановка 𝜃𝑘 применяется к
локальной конфигурации 𝑆 каждой ячейки 𝑖 и задается следующим образом:
[𝑃 ]
𝜃𝑘𝜌 (𝑖) : 𝑆(𝑖,𝑡) −−−−−→ 𝑆(𝑖,𝑡 + 1),
(2.2)
[𝐶]
где 𝑃 – вероятностные условия применения подстановки, которые могут отсутствовать,
𝐶 – дополнительные условия, которые также могут отсутствовать,
𝜌 – режим применения подстановки.
Подстановка 𝜃𝑘𝜌 применяется согласно ее режиму применения 𝜌 ∈ {𝛼,𝜎}. Существует два
основных режима: 𝛼 - асинхронный и 𝜎 - синхронный. В синхронном режиме подстановка применяется ко всем ячейкам одновременно: вычисляются новые состояния всех ячеек, а затем все
ячейки одновременно изменяют свои состояния на новые. В асинхронном режиме подстановка
применяется к ячейкам по очереди (в случайном, или заданном порядке): выбирается ячейка,
вычисляется ее новое состояние, и ячейка сразу же меняет свое состояние на новое, после чего
выбирается следующая ячейка.
Исходя из того, что локальные конфигурации 𝑆(𝑖,𝑡) соседних ячеек могут пересекаться, применение подстановок к ячейкам должно удовлетворять условию детерминированности, которое
гласит, что несколько подстановок 𝜃𝑘 не должны изменять состояние одной ячейки одновременно [71]. Данное условие автоматически выполняется для асинхронного режима работы, т.к.
в этом режиме подстановка в один и тот же момент времени применяется только к локальной
17
конфигурации одной ячейки. Для синхронного режима работы, локальная конфигурация 𝑆(𝑖,𝑡)
должна состоять не более чем из одной ячейки (т.е. |𝑆(𝑖,𝑡)| ≤ 1).
Применение правил переходов Θ ко всем ячейкам массива Ω изменяет глобальную конфигурацию Ω(𝑡) на Ω(𝑡 + 1). Такое изменение называется итерацией.
Пример 2. Пусть для ДКА из примера 1 заданы правила переходов Θ, которые состоят из
суперпозиции трех подстановок Φ(𝜃1 ,𝜃2 ,𝜃3 ) = 𝜃3 (𝜃2 (𝜃1 )):
𝑃
𝜃1 (𝑖) :
(1,𝑖) −−−−→ (0,𝑖),
𝜃2 (𝑖) :
(𝑢,𝑖),(𝑣,𝑗) −−−−−−−→ (𝑣,𝑖),(𝑢,𝑗),
𝜃3 (𝑖) :
𝑗=𝑟𝑎𝑛𝑑(𝑇 (𝑖))
1−𝑃
0 −−−−−−→ 1.
Первая подстановка 𝜃1 (𝑖) применяется к ячейке, если ее состояние 𝑢 = 1. Тогда, с некоторой
вероятностью 𝑃 , ячейка меняет свое состояние на 𝑢 = 0. Вторая подстановка 𝜃2 (𝑖) применяется
к ячейке 𝑖 и случайно выбранной ячейке 𝑗 из ее окрестности 𝑗 ∈ 𝑇 (𝑖), и, без какого-либо вероятностного условия, ячейки обмениваются своими состояниями 𝑢 и 𝑣. Следует заметить, что
подстановка 𝜃2 (𝑖) корректна только для асинхронного режима применения, т.к. в синхронном
режиме она будет менять состояние более чем одной ячейки одновременно, нарушая тем самым условия детерминированности. Наконец, третья подстановка 𝜃3 (𝑖) это сокращенная запись
подстановки, обратной к подстановке 𝜃1 (𝑖) - т.е., если ячейка 𝑖 имеет состояние 𝑢 = 0, тогда с вероятностью 1 − 𝑃 она меняет свое состояние на 𝑢 = 1. Такая сокращенная запись позволительна
и будет иногда применяться, если она однозначно определяет действие над состоянием ячейки,
не оставляя двусмысленности. Кроме того, иногда удобно представлять некоторые подстановки
графически (рис. 2.2), аналогично случаю сокращенной записи.
Рисунок 2.2: Графическое представление подстановки 𝜃3 из примера 2.
Таким образом, говоря более формально, ДКА определяется четверкой вида ℵ = ⟨𝐴,𝑋,𝑀,Θ⟩.
Добавление к этой четверке начальной глобальной конфигурации, т.е. состояния всего массива
ячеек в момент времени 𝑡 = 0, образует ДКА-модель ⟨ℵ,Ω(0)⟩.
2.1.4
Оператор однонаправленной вставки в массив ячеек
Для того, чтобы ДКА можно было применять в задачах, связанных с моделированием динамики структуры, необходимо иметь возможность динамически изменять пространство массива
ячеек ДКА. Так, рост биологических тканей может моделироваться вставкой новых ячеек в массив. Для вставки ячеек необходимо выполнить следующее:
– Объединить множество имен вставляемых ячеек с множеством имен исходного массива.
18
– Связать ячейки на границах вставки.
Последнее действие, в общем случае, является сложной задачей, т.к. вставка ячеек произвольной структуры требует определенных сдвигов в исходном массиве ячеек и влечет за собой
нетривиальные изменения большого количества связей в матрице смежности. Исключением из
этого является вставка столбца, или строки ячеек, для которых требуется лишь «раздвинуть»
массив ячеек и связать ячейки на границах вставки. Назовем такую вставку – однонаправленной
вставкой, в противоположность произвольной вставке - вставке ячеек произвольной структуры.
В данной главе мы ограничимся только однонаправленной вставкой ячеек в массив.
Таким образом, вставка столбца (строки) ячеек Ω𝑖𝑛𝑠 в массив Ω осуществляется при помощи
оператора однонаправленной вставки:
𝜃𝑖𝑛𝑠 (𝑖,𝜑𝑑 (𝑖)) :
Ω ∪ Ω𝑖𝑛𝑠 −→ Ω′ ,
(2.3)
где Ω′ = {(𝑢′ ,𝑞) : 𝑢′ ∈ 𝐴, 𝑞 ∈ 𝑋 ∪ 𝑋 𝑖𝑛𝑠 } – результирующий массив ячеек,
(𝑖,𝜑𝑑 (𝑖)) – ячейка 𝑖 ∈ Ω и ее сосед по направлению 𝑑, задающие место вставки.
Пример 3. Пусть в массив ячеек из примера 1, который задан на множестве имен
𝑋 = {1,2,...,9}, необходимо вставить столбец из трех ячеек с именами 𝑋 𝑖𝑛𝑠 = {10,11,12}. Пусть
в качестве места вставки указана ячейка с именем 2 и ее восточный сосед с именем 3. Оператор вставки принимает вид: 𝜃𝑖𝑛𝑠 (2,3) : Ω ∪ Ω𝑖𝑛𝑠 −→ Ω′ . Отсюда, подмножества имен граничных
ячеек 𝑋1 = {2,5,8} и 𝑋2 = {3,6,9}. Работа данного оператора проиллюстрирована на рис. 2.3, а
преобразованная матрица смежности – на рис. 2.4.
Рисунок 2.3: Графическое представление применения оператора однонаправленной вставки из
примера 3 (светлым отмечены ячейки, указывающие место вставки).
Для оценки сложности алгоритма, реализующего оператор однонаправленной вставки, введем следующие обозначения:
– 𝑊 – ширина массива ячеек.
– 𝐻 – высота массива ячеек.
– 𝑁 = 𝑊 × 𝐻 – общее число ячеек в массиве.
Однонаправленная вставка в обычном КА требует изменения всех координат сдвинутых ячеек,
поэтому в худшем случае требуется 𝑊 × 𝐻 изменений, что определяет сложность алгоритма
19
Рисунок 2.4: Матрица смежности после выполнения оператора вставки из примера 3
(темно-серым отмечены ячейки, отличающие полученную матрицу от исходной из примера 1).
𝑂(𝑊 × 𝐻). Однонаправленная вставка в ДКА требует изменения матрицы смежности только
на границе вставки, что соответствует 3𝑊 или 3𝐻 изменениям в матрице в зависимости от
направления вставки. Множитель 3 можно опустить, поэтому:
Утверждение 1. Оператор однонаправленной вставки в ДКА имеет сложность 𝑂(𝑊 ) или
𝑂(𝐻) в зависимости от направления вставки.
2.1.5
Оператор однонаправленного разбиения массива ячеек
Для задач, связанных с динамикой структуры, помимо вставки новых элементов в массив
ячеек, необходимо также ввести возможность разбиения этого массива (например, для моделирования деления клеток живых систем). Чтобы выполнить разбиение, необходимо разделить
исходное множество имен ячеек и их матрицу смежности. Таким образом, разбиение массива
ячеек ДКА осуществляется при помощи оператора однонаправленного разбиения:
𝜃𝑝𝑎𝑟𝑡 (𝑖,𝜑𝑑 (𝑖)) :
Ω −→ Ω′ ∪ Ω′′ .
(2.4)
Оператор 𝜃𝑝𝑎𝑟𝑡 разбивает исходный массив Ω на два непересекающихся подмножества ячеек
Ω′ и Ω′′ . Также, как и в случае с оператором вставки, запись (𝑖,𝜑𝑑 (𝑖)) указывает ячейку и ее соседа, которые задают границу разбиения. Пример работы оператора однонаправленного разбиения
представлен графически на рис. 2.5.
Рисунок 2.5: Графическое представление применения оператора разбиения (светлым отмечены
ячейки, указывающие границу разбиения).
20
2.2
ДКА-модель ℵ𝑚 апикальной меристемы побега Arabidopsis
Thaliana
Большинство клеток взрослого организма являются дифференцированными [35]. Такие клетки служат для выполнения определенных специализированных функций в организме и теряют
способность к делению. Развитие же организма поддерживается при помощи стволовых клеток,
которые продолжают делится в течении всей жизни организма. При помощи стволовых клеток
ткани животных постоянно обновляются, а растения продолжают свой рост.
Апикальная меристема побега (АМП) расположена в верхушке побега растения и представляет собой пример образовательной ткани, чьи клетки постоянно делятся и сохраняют физиологическую активность [34, 35, 66, 67]. На рис. 2.6 изображен продольный срез АМП, на котором
различают следующие зоны: центральную зону (ЦЗ), периферическую зону (ПЗ), и ниже ЦЗ –
организационный центр (ОЦ). Клетки, располагающиеся ниже ОЦ являются дифференцированными клетками сосудистой системы растения.
Рисунок 2.6: Продольный срез апикальной меристемы побега. Цифрами отмечены зоны: 1 –
центральная, 2 – периферическая, 3 – организационный центр. Рисунок адаптирован из [35].
Клетки ОЦ постоянно делятся и являются источником новых клеток для всего побега. Рост
АМП приводит к постоянному перемещению клеток из зоны в зону: клетки ЦЗ перемещаются в ОЦ, там они делятся и сдвигаются далее вниз в сосудистую систему, где и происходит
окончательная дифференцировка клеток [34,35]. Каждая зона клеток АМП характеризуется синтезом определенных белков, которые можно рассматривать как маркер данной зоны. Считается,
что при помощи этого синтеза зоны клеток оказывают друг на друга регулирующие воздействия,
благодаря чему и сохраняется определенная пространственная структура АМП во время ее роста
и постоянной смены клеток [35].
За основу разрабатываемой ДКА-модели была взята одномерная модель регуляции размеров
возобновительной зоны АМП растения Arabidopsis Thaliana из [34, 35], в которой рассматривается столбец клеток вдоль оси 𝑥 (рис. 2.6):
– В клетках присутствуют три вещества: 𝑊 , 𝑌 , 𝐶.
– Все вещества распадаются с определенной скоростью.
21
– Вещества 𝑌 и 𝑊 могут диффундировать в соседние клетки.
– Вещество 𝑌 синтезируется только в самой верхней клетке.
– Вещества 𝑊 и 𝐶 могут синтезироваться во всех клетках.
– Скорость синтеза каждого вещества в клетке зависит от наличия в этой клетке других
веществ: 𝑊 является активатором для 𝑌 , 𝑌 – активатором для 𝐶 и 𝑊 , а 𝐶 – ингибитором
для 𝑊 (рис. 2.7 (a)).
На рис. 2.7 (b) изображен пример распределения вещества 𝑌 в клетках АМП и пороги активации веществ 𝐶 и 𝑊 (порог активации 𝑊 ниже, чем порог активации 𝐶), которые рассматривались в модели [34, 35]. С учетом того, что 𝐶 подавляет экспрессию 𝑊 (т.е. включение в
клетках соответствующих генов и синтез вещества), реальный синтез 𝑊 находится в небольшой
зоне, которая соответствует клеткам ОЦ. Модель из [35] была взята за основу по причине того,
чтобы иметь возможность сравнить результаты моделирования полученные там, с результатами
предлагаемой ДКА-модели.
(𝑎)
(𝑏)
Рисунок 2.7: a) Взаимная регуляция синтеза веществ 𝑌 , 𝐶, 𝑊 (пунктирные стрелки –
активация, сплошная линия - ингибирование); b) Распределение вещества 𝑌 в зависимости от
расстояния до верхушки АМП (ось 𝑥), и пороговые значения, при которых активируется
экспрессия 𝐶 и 𝑊 . Рисунок адаптирован из [35].
2.2.1
Общее описание ДКА-модели ℵ𝑚
ДКА-модель АМП ℵ𝑚 представлена параллельной композицией двух ДКА: ℵA𝑚 и ℵB
𝑚 . Под параллельной композицией подразумевается, что ДКА работают параллельно друг другу, обмениваясь некоторой информацией в промежутках между итерациями [3, 72]. Как и в модели из [35],
здесь моделируется столбец клеток АМП вдоль оси 𝑥 (рис. 2.6). ДКА ℵA𝑚 является одномерным,
а его массив ячеек можно интерпретировать как столбец клеток АМП, представляющий макроуровень модели (т.е. одна ячейка ДКА ℵA𝑚 соответствует одной моделируемой клетке АМП). В
свою очередь, ДКА ℵB
𝑚 является двумерным и представляет микроуровень модели (т.е. некий
22
взгляд "внутрь клеток"). Каждой ячейке ДКА ℵA𝑚 поставлено в соответствие некоторое подмноB
жество ячеек из ДКА ℵB
𝑚 . ДКА ℵ𝑚 моделирует взаиморегуляцию веществ в клетках АМП, а
также их рост и деление. ДКА ℵA𝑚 является управляющим для ℵB
𝑚 , получая от него информацию о концентрации веществ в клетках и отвечая сигналами к росту и делению клеток. Связь
между двумя уровнями ДКА-модели проиллюстрирована на рис. 2.8 (рисунок представляет собой моделируемый столбец клеток АМП, повернутый на 90 градусов для удобства восприятия).
Следует заметить, что представленная ДКА-модель является квазидвумерной по той причине,
что ДКА ℵA𝑚 является одномерным, а ДКА ℵB
𝑚 хоть и является двумерным, но рост и деление
клеток моделируется лишь в направлении высоты АМП.
Рисунок 2.8: Связь между уровнями ДКА-модели: верхний рисунок - макроуровень ℵA , нижний
- микроуровень ℵB .
2.2.2
Микроуровень модели (ДКА ℵB
𝑚)
ДКА ℵB
𝑚 моделирует синтез, распад, диффузию веществ 𝑌 , 𝐶, 𝑊 в клетках АМП, а также их
рост и деление вдоль высоты столбца. Массив ячеек ΩB этого ДКА разбивается на подмножества
ΩB = Ω1B ∪ ... ∪ Ω𝑘B ∪ ... ∪ Ω𝐾
B , где 𝐾 - количество клеток в моделируемом столбце АМП. Каждое
из подмножеств Ω𝑘B соответствует клетке (и, соответственно, ячейке из вышестоящего ДКА A),
а ячейки (¯
𝑢,𝑖) ∈ Ω𝑘B характеризуют пространство этой клетки. В каждой ячейке (¯
𝑢,𝑖) ∈ ΩB могут
находиться или отсутствовать три вещества: 𝑌 , 𝐶, 𝑊 . Таким образом, состояние ячейки (¯
𝑢,𝑖)
представлено составным состоянием 𝑢¯ из множества 𝐴B = {(𝑌,𝐶,𝑊,𝑏)}, где 𝑌,𝐶,𝑊 ∈ {1,0} наличие или отсутствие в клетке веществ 𝑌 , 𝐶, 𝑊 , соответственно; 𝑏 ∈ {1,0} - признак того, что
клетка расположена на границе подмножеств Ω𝑘B (этот признак используется для правильного
поведения веществ на границах соседних клеток, разделенных клеточной мембраной).
Количество ячеек в каждом подмножестве |Ω𝑘B | = 𝑤𝑖𝑑𝑡ℎ × ℎ𝑒𝑖𝑔ℎ𝑡𝑘 (см. рис 2.8), где 𝑤𝑖𝑑𝑡ℎ количество ячеек по ширине столбца (ширина клетки), одинаковое для всех Ω𝑘B ⊂ ΩB , а ℎ𝑒𝑖𝑔ℎ𝑡𝑘
- количество ячеек по высоте Ω𝑘B (высота клетки), которое изменяется в процессе роста и деления клеток АМП. Общее количество ячеек в столбце клеток АМП 𝐿 = |ΩB | = 𝑤𝑖𝑑𝑡ℎ × ℎ𝑒𝑖𝑔ℎ𝑡,
23
где ℎ𝑒𝑖𝑔ℎ𝑡 =
𝐾
∑︀
ℎ𝑒𝑖𝑔ℎ𝑡𝑘 - общее количество ячеек по всей высоте массива ΩB . Ячейки на грани-
𝑘=1
цах между соседними по столбцу подмножествами Ω𝑘B и Ω𝑘+1
(соседними клетками) являются
B
граничными и имеют состояние-признак 𝑏 = 1, а ячейки на краях по ширине массива - связаны
периодическими граничными условиями (т.е. замкнуты в полый цилиндр).
Таким образом, ДКА-модель ℵB
𝑚 представляется пятеркой
ℵB
𝑚 = ⟨𝐴B ,𝑋B ,𝑀B ,ΘB ,ΩB (0)⟩.
(2.5)
Функционирование ДКА ℵB
𝑚 определяется правилами переходов ΘB , которые представля𝛼
𝛼
𝛼
𝜎
𝜎
𝛼
𝛼
𝛼
𝛼
ет собой суперпозицию подстановок Φ(𝜃𝑑𝑒𝑐
,𝜃𝑑𝑖𝑓
,𝜃𝑠𝑦𝑛
,𝜃𝑔𝑟𝑜𝑤
,𝜃𝑑𝑖𝑣
), где 𝜃𝑑𝑒𝑐
= Φ(𝜃𝑑𝑒𝑐𝑌
,𝜃𝑑𝑒𝑐𝐶
,𝜃𝑑𝑒𝑐𝑊
)
- суперпозиция подстановок, моделирующих распад веществ 𝑌 , 𝐶, 𝑊 , соответственно;
𝛼
𝛼
𝛼
𝜃𝑑𝑖𝑓
= Φ(𝜃𝑑𝑖𝑓
𝑌 ,𝜃𝑑𝑖𝑓 𝑊 ) - диффузия веществ 𝑌 и 𝑊 , соответственно (вещество 𝐶 не диффундиру𝛼
𝛼
𝛼
𝜎
𝛼
- рост клеток;
= Φ(𝜃𝑠𝑦𝑛𝑌
,𝜃𝑠𝑦𝑛𝐶
,𝜃𝑠𝑦𝑛𝑊
) - синтез веществ 𝑌 , 𝐶, 𝑊 , соответственно; 𝜃𝑔𝑟𝑜𝑤
ет); 𝜃𝑠𝑦𝑛
𝜎
- деление клеток.
𝜃𝑑𝑖𝑣
1. Распад веществ. Рассмотрим подстановку:
𝛼
𝜃𝑑𝑒𝑐𝑌
(𝑖) :
𝑃
𝑑𝑒𝑐𝑌
(1,𝑖𝑌 ) −−−−
−−−→ (0,𝑖𝑌 ).
(2.6)
Здесь, если в ячейке с именем 𝑖 присутствует вещество 𝑌 (т.е. компонента 𝑖𝑌 составного
состояния ячейки равна 1), то с вероятностью 𝑃𝑑𝑒𝑐𝑌 вещество распадается (𝑌 = 0). Под𝛼
𝛼
становки 𝜃𝑑𝑒𝑐𝐶
и 𝜃𝑑𝑒𝑐𝑊
определяются аналогичным образом с вероятностями 𝑃𝑑𝑒𝑐𝐶 и 𝑃𝑑𝑒𝑐𝑊 ,
соответственно.
2. Диффузия веществ. Диффузия веществ моделируется при помощи наивной диффузии [8],
принцип работы которой заключается в том, что случайно выбирается ячейка и один из ее
соседей, после чего, с некоторой вероятностью, ячейки обмениваются своими состояниями; далее выбирается следующая ячейка и процесс повторяется. Рассмотрим подстановку:
𝛼
𝜃𝑑𝑖𝑓
𝑌 (𝑖) :
𝑃𝑑𝑖𝑓 𝑌
(𝑌,𝑖𝑌 ),(𝑌 ′ ,𝜑𝑑 (𝑖𝑌 )) −−−−−−−→ (𝑌 ′ ,𝑖𝑌 ),(𝑌,𝜑𝑑 (𝑖𝑌 )).
(2.7)
Здесь 𝑑 = 𝑟𝑎𝑛𝑑({𝑁,𝐸,𝑆,𝑊 }) – случайный выбор ячейки-соседа в окрестности фон Неймана, 𝑃𝑑𝑖𝑓 𝑌 – вероятность того, что вещество 𝑌 продиффундирует. Для неграничных ячеек
(ячейки с признаком 𝑏 = 0) 𝑃𝑑𝑖𝑓 𝑌 = 1, а для граничных (𝑏 = 1) 𝑃𝑑𝑖𝑓 𝑌 ≤ 1 (что имитирует
𝛼
межклеточную диффузию через мембрану). Подстановка 𝜃𝑑𝑖𝑓
𝑊 определяется аналогичным
образом. Вещество 𝐶 не диффундирует [35].
3. Синтез веществ. Скорость синтеза некоторого вещества в ячейке зависит от наличия в ней
и в некоторой ее окрестности других веществ, которые могут являться ингибиторами, или
активаторами для данного вещества. Эта зависимость отображается при помощи коэффициента чувствительности регуляции 𝐸𝐼𝐽 ∈ [−1; 1], который положителен, если вещество
24
𝐽 стимулирует синтез вещества 𝐼, и отрицателен — если угнетает [34,35]. Скорость синтеза
моделируется вероятностью появления вещества в ячейке. Вероятность синтеза вещества
𝑌 вычисляется по формуле:
𝑃𝑌 (𝑖) = 𝐻𝑌 +
𝐸𝑌 𝑊
×
24
∑︁
(𝑊 ′ ,𝑗
𝑊 ′,
(2.8)
𝑤 )∈𝑇 (𝑖)
Здесь сумма вычисляется по окрестности 𝑇 (𝑖) = 𝜑(𝜑(𝑖)) – соседство Мура второго уровня
(8 клеток первого уровня соседства и 16 - второго; отсюда число 24 в делителе второго
слагаемого), 𝐻𝑌 ∈ [−1; 1] – величина сдвига порога экспрессии вещества 𝑌 [34, 35]. Если
вероятность 𝑃𝑌 выходит из интервала [0;1], то ее значение устанавливается в 0 или 1
соответственно.
Синтез вещества 𝑌 моделируется подстановкой:
𝛼
(𝑖) :
𝜃𝑠𝑦𝑛𝑌
𝑃𝑌 (𝑖)
(0,𝑖𝑌 ) −−−−−−
→ (1,𝑖𝑌 ).
1
(2.9)
(𝑢,𝑖)∈ΩB
Следует заметить, что синтез вещества 𝑌 осуществляется только в ячейках подмножества
Ω1B (клетка на верхушке АМП). Синтез веществ 𝐶 и 𝑊 осуществляет во всех клетках ΩB
𝛼
𝛼
и моделируется при помощи подстановок 𝜃𝑠𝑦𝑛𝐶
и 𝜃𝑠𝑦𝑛𝑊
, соответственно, которые записы𝛼
, но с другими коэффициентами чувствительности
ваются аналогично подстановке 𝜃𝑠𝑦𝑛𝑌
регуляции. Кроме того, при вычислении вероятности синтеза вещества 𝑊 используются
два коэффициента регуляции - 𝐸𝑊 𝑌 и 𝐸𝑊 𝐶 , которые соответствуют активатору 𝑌 и ингибитору 𝐶 для синтеза 𝑊 , соответственно.
𝛼
𝛼
𝛼
Таким образом, подстановки 𝜃𝑑𝑒𝑐
,𝜃𝑑𝑖𝑓
,𝜃𝑠𝑦𝑛
работают в асинхронном режиме (𝛼) и моделируют
взаиморегуляцию веществ в клетках АМП в соответствии с математической моделью [34, 35].
𝜎
𝜎
Рост и деление клеток осуществляется при помощи подстановок 𝜃𝑔𝑟𝑜𝑤
и 𝜃𝑑𝑖𝑣
, соответственно,
работающих в синхронном режиме (𝜎). Эти подстановки используют сигналы с макроуровня
модели (ДКА ℵA𝑚 ) и будут рассмотрены далее в 2.2.4.
2.2.3
Макроуровень модели (ДКА ℵA𝑚 )
ДКА ℵA𝑚 контролирует динамику структуры АМП (т.е. рост и деление клеток), или, говоря
более формально, инициирует вставку ячеек в массив ΩB и его разбиение. Каждая ячейка ДКА
ℵA𝑚 анализирует информацию о концентрации веществ из соответствующего ей подмножества
ячеек из ДКА ℵB
𝑚 и, на основе этой информации, принимает решение о том, растет ли соответствующая этой ячейке моделируемая клетка, делится или продолжает оставаться в состоянии
покоя в данный момент времени. После этого ДКА ℵA𝑚 посылает управляющий сигнал для ДКА
ℵB
𝑚 , который выполняет указанную операцию на своем массиве ячеек.
Состояние каждой ячейки ДКА ℵA𝑚 выражается составным состоянием из множества 𝐴A =
{(𝐿𝑤 ,𝐿ℎ ,𝑡𝑦𝑝𝑒,𝑠𝑡𝑎𝑡𝑒,𝑡𝑖𝑚𝑒𝑟) где 𝐿𝑤 ,𝐿ℎ ∈ N – длина и ширина моделируемой клетки (соответствует
25
линейным размерам соответствующего подмножества Ω𝑖B ); 𝑡𝑦𝑝𝑒 ∈ {𝑟𝑧,𝑣𝑧} – тип моделируемой
клетки (𝑟𝑧 - клетка возобновительной зоны, 𝑣𝑠 – клетка сосудистой зоны); 𝑠𝑡𝑎𝑡𝑒 ∈ {𝑛𝑠,𝑔𝑠,𝑑𝑠}
– текущее состояние моделируемой клетки (𝑛𝑠 – состояние покоя, 𝑔𝑠 – состояние роста, 𝑑𝑠 –
состояние деления). Компонента 𝑠𝑡𝑎𝑡𝑒 также используется в качестве управляющего сигнала к
росту, или делению для ДКА ΩB .
Таким образом, ДКА-модель ℵA𝑚 представляется пятеркой
ℵA𝑚 = ⟨𝐴A ,𝑋A ,𝑁A ,ΘA ,ΩA (0)⟩.
Правила
переходов
данного
ДКА
являются
(2.10)
суперпозицией
подстановок
𝜎
𝜎
𝜎
𝜎
𝜎
ΘA = Φ(𝜃𝑔𝑟𝑜𝑤
,𝜃𝑑𝑖𝑣
,𝜃𝑟𝑒𝑠
), которые работают в синхронном режиме. Подстановки 𝜃𝑔𝑟𝑜𝑤
и 𝜃𝑑𝑖𝑣
𝜎
моделируют рост и деление, соответственно, а подстановка 𝜃𝑟𝑒𝑠
осуществляет установку ячейки
в состояние покоя (моделируемая клетка не растет и не делится в данный момент времени).
Соседство ячеек и граничные условия отсутствуют. Рассмотрим правила переходов подробнее.
1. Сброс ячеек в состояние покоя. В начале каждой итерации ячейки возвращаются в состояние покоя (𝑠𝑡𝑎𝑡𝑒 = 𝑛𝑠), т.е. если моделируемая клетка на предыдущей итерации была в
процессе роста или деления, то считается, что этот процесс завершается к началу новой
итерации:
𝜎
𝜃𝑟𝑒𝑠
(𝑖) :
(𝑠𝑡𝑎𝑡𝑒,𝑖𝑠𝑡𝑎𝑡𝑒 ) −→ (𝑛𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 ).
(2.11)
2. Клеточный рост. Если длина ячейки (компонента 𝐿ℎ ее состояния) меньше некоторого заданного порога 𝐿𝑚𝑎𝑥 , то с вероятностью 𝑃𝑔𝑟𝑜𝑤 ячейка инициирует рост. Рост моделируется
переходом ячейки в состояние роста (𝑠𝑡𝑎𝑡𝑒 = 𝑔𝑤) и увеличением ее длины на 1:
𝜎
𝜃𝑔𝑟𝑜𝑤
(𝑖) :
(𝐿ℎ ,𝑖𝐿ℎ ),(𝑠𝑡𝑎𝑡𝑒,𝑖𝑠𝑡𝑎𝑡𝑒 )
𝑃𝑔𝑟𝑜𝑤
−−−−−→
𝐿ℎ <𝐿𝑚𝑎𝑥
(𝐿ℎ + 1,𝑖𝐿ℎ ),(𝑔𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 ).
(2.12)
3. Деление клеток. Ячейка инициирует деление, если она моделирует клетку возобновительной зоны АМП (𝑡𝑦𝑝𝑒 = 𝑟𝑧), находится в состоянии покоя (𝑠𝑡𝑎𝑡𝑒 = 𝑛𝑠), а ее длина 𝐿ℎ достигла некоторого порога 𝐿𝑚𝑎𝑥 . Помимо этого, для деления также необходимо выполнение
еще двух условий: концентрация ⟨𝐶⟩ вещества 𝐶 в моделируемой клетке должна быть
больше заданного порога 𝐶𝑜𝑛𝐶𝑚𝑖𝑛 , а скорость синтеза 𝑆𝑦𝑛𝑊 вещества 𝑊 - больше либо равна порогу 𝑆𝑦𝑛𝑊𝑚𝑖𝑛 . Концентрация вещества 𝐶 вычисляется на соответствующем
данной ячейке подмножестве Ω𝑖B ячеек из ДКА ℵB
𝑚:
⟨𝐶⟩ =
1
·
|Ω𝑖B |
∑︁
𝐶.
(2.13)
(𝐶,𝑖𝑐 )∈Ω𝑖B
Скорость синтеза вещества 𝑊 вычисляется как разность концентраций этого вещества на
текущей и предыдущей итерациях: 𝑆𝑦𝑛𝑊 = ⟨𝑊 (𝑡)⟩ − ⟨𝑊 (𝑡 − 1)⟩. Таким образом, если все
26
вышеперечисленные условия выполняются, то ячейка с вероятностью 𝑃𝑑𝑖𝑣 разбивается на
две дочерних (моделируемая клетка делится):
[︃
𝜎
𝜃𝑑𝑖𝑣
(𝑖)
где
:
]︃
𝑃𝑑𝑖𝑣
(𝐿′ℎ ,𝑖′𝐿ℎ ),(𝑟𝑧,𝑖′𝑡𝑦𝑝𝑒 ),(𝑑𝑠,𝑖′𝑠𝑡𝑎𝑡𝑒 )
𝑐𝑜𝑛𝑑
(𝐿′′ℎ ,𝑖′′𝐿ℎ ),(𝑟𝑧,𝑖′′𝑡𝑦𝑝𝑒 ),(𝑑𝑠,𝑖′′𝑠𝑡𝑎𝑡𝑒 ))
(𝐿ℎ ,𝑖𝐿ℎ ),(𝑟𝑧,𝑖𝑡𝑦𝑝𝑒 ),(𝑛𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 ) −−−→
𝑐𝑜𝑛𝑑 = 𝐿ℎ ≥ 𝐿𝑚𝑎𝑥 & 𝑆𝑦𝑛𝑊 ≥ 𝑆𝑦𝑛𝑊𝑚𝑖𝑛 & ⟨𝐶⟩ > 𝐶𝑜𝑛𝐶𝑚𝑖𝑛
–
условия
,
(2.14)
деления,
𝐿′ℎ = 𝑟𝑑𝑖𝑣 · 𝐿ℎ – размер дочерней ячейки 𝑖′ , 𝐿′′ℎ = (1 − 𝑟𝑑𝑖𝑣 ) · 𝐿ℎ – размер дочерней ячейки
𝑖′′ , 𝑟𝑑𝑖𝑣 – коэффициент отношения размеров дочерних ячеек (моделируемых дочерних
клеток, получившихся в результате деления).
Моделирование роста и деления в ДКА ℵB
𝑚
2.2.4
1. Моделирование роста клетки. Если ячейка (¯
𝑣 ,𝑖) ∈ ΩA макроуровня модели находится в
процессе роста (𝑠𝑡𝑎𝑡𝑒 = 𝑔𝑠), то ДКА ℵB
𝑚 считывает это состояние и инициирует вставку
столбца новых ячеек в свое подмножество Ω𝑖B , соответствующее ячейке (¯
𝑣 ,𝑖) ∈ ΩA . Вставка
ячеек производится при помощи оператора однонаправленной вставки:
𝜃𝑖𝑛𝑠 (𝑗,𝜑𝑁 (𝑗)) :
Ω𝑖B ∪ Ω𝑖𝑛𝑠
−−−−−→
(𝑔𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 )
′
Ω𝑖B .
(2.15)
2. Моделирование деления клетки. Если ячейка (¯
𝑣 ,𝑖) ∈ ΩA макроуровня модели находится в
процессе деления (𝑠𝑡𝑎𝑡𝑒 = 𝑑𝑠), то ДКА ℵB
𝑚 инициирует разбиение своего подмножества
ячеек Ω𝑖B , соответствующего ячейке (¯
𝑣 ,𝑖) ∈ ΩA . Разбиение производится при помощи оператора однонаправленного разбиения:
𝜃𝑝𝑎𝑟𝑡 (𝑗,𝜑𝑁 (𝑗)) :
Ω𝑖B
−−−−−→
(𝑑𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 )
′
′′
Ω𝑖B ∪ Ω𝑖B .
(2.16)
Результаты моделирования ℵ𝑚
2.2.5
Предлагаемая ДКА-модель была реализована на компьютере при помощи программного комплекса, описанного в главе 5. Путем многочисленных вычислительных экспериментов, были подобраны параметры модели (вероятности и коэффициенты) таким образом, чтобы график концентрации веществ 𝑌,𝐶,𝑊 , полученный в результате моделирования, соответствовал графику
из [34].
Параметры для ДКА ℵB
𝑚:
– Ширина клетки 𝑤𝑖𝑑𝑡ℎ = 20 (в ячейках), максимальная высота ℎ𝑒𝑖𝑔ℎ𝑡𝑚𝑎𝑥
= 20.
𝑘
– Вероятности
применения подстановок:
𝑃𝑑𝑖𝑓 𝑌 = 0,99, 𝑃𝑑𝑖𝑓 𝑊 = 0,99.
𝑃𝑑𝑒𝑐𝑌 = 0,035,
𝑃𝑑𝑒𝑐𝑊 = 0,15,
𝑃𝑑𝑒𝑐𝐶 = 0,035,
27
– Коэффициент КА-диффузии2 для 𝑊 равен 50, для 𝑌 равен 80.
– Коэффициенты регуляции: 𝐸𝐶𝑌 = 0,03, 𝐸𝑊 𝑌 = 0,07, 𝐸𝑊 𝐶 = −0,5, 𝐸𝑌 𝑊 = 0,5, 𝐻𝐶 = −0,5,
𝐻𝑊 = −0,5, 𝐻𝑌 = −0,2.
Параметры для ДКА ℵA𝑚 :
– Вероятности применения подстановок: 𝑃𝑔𝑟𝑜𝑤 = 0,5, 𝑃𝑑𝑖𝑣 = 0,5.
– Пороги: 𝐿𝑚𝑎𝑥 = 20, 𝑆𝑦𝑛𝑊𝑚𝑖𝑛 = 0,2, 𝐶𝑜𝑛𝐶𝑚𝑖𝑛 = 0,001.
– Коэффициент отношения размеров дочерних клеток: 𝑟𝑑𝑖𝑣 = 0,5 со стандартным отклонением 0,1.
В качестве начальных условий был выбран столбец из 20 клеток (20 ячеек ДКА ℵA𝑚 ). Концентрация веществ 𝑌 ,𝐶,𝑊 во всех моделируемых клетках на начало моделирования была равна
нулю (начальная глобальная конфигурация ДКА), кроме самой первой клетки, соответствующей
верхушке АМП. На рис. 2.9 результаты моделирования представлены графически путем визуализации ячеек ДКА ℵB
𝑚 и веществ 𝑌 ,𝐶,𝑊 в них. Следует отметить, что основным местом деления
ячеек (моделируемых клеток) оказались четвертая и пятая ячейки столбца, что соответствует
организационному центру АМП (место образованиях новых клеток побега).
Рисунок 2.9: Результаты компьютерного моделирования роста и деления столбца клеток АМП.
Сверху вниз изображены снимки пяти различных итераций; цветными точками обозначены
вещества 𝑌 ,𝐶,𝑊 . Рисунок повернут на 90∘ , слева указаны номера итераций моделирования.
На рис. 2.10 представлено сравнение графика стационарного распределения веществ в клетках (без деления и роста), полученного в результате вычислительного эксперимента, с аналогичным графиком из [34]. Пик концентрации вещества 𝑊 на графиках также соответствует
организационному центру (четвертая и пятая клетки).
На рис. 2.11 представлена серия графиков, которые были получены сразу после очередного
деления моделируемых клеток АМП (20, 21, 22 и 23 клетки, соответственно). Как можно видеть
на этих графиках, даже после возмущений в АМП, получаемых в результате деления клеток,
организационный центр сохраняется в районе четвертой и пятой клетки.
2
Количество итераций диффузии на одну итерацию остальных правил КА
28
Рисунок 2.10: Сравнение графиков стационарного распределения веществ в клетках (слева результат ДКА-моделирования, справа - результат из [34]). Вертикальная ось – концентрация
вещества, горизонтальная – номер клетки, где клетка 1 соответствует верхушке АМП.
Рисунок 2.11: Распределение веществ в клетках АМП после деления (результат
ДКА-моделирования).
На рис. 2.12 также приведен график концентрации веществ в клетках АМП со сдвинутым организационным центром. Такого поведения модели можно добиться путем различных изменений
параметров моделирования.
Таким образом, приведенные результаты показывают, что ДКА-модель позволяет наблюдать
динамику веществ на уровне отдельных частиц, а не в виде их концентраций в некоторых точках. К преимуществам также можно отнести возможность имитационного моделирования роста
клеток АМП в сравнении с моделью из [34].
29
Рисунок 2.12: Распределение веществ в клетках АМП со сдвинутым организационным центром
(результат ДКА-моделирования).
2.3
ДКА-модель ℵ𝑎 роста и деления клеток цианобактерии
Anabaena catenula
Anabaena catenula – нитчатая циаонабктерия (рис. 2.13), известная своими азотфиксирующими способностями. Клетки Anabaena специализированы и образуют линейные филаменты:
в вегетативных клетках происходит фотосинтез, а в клетках гетероцистах фиксируется азот.
Продукты, вырабатываемые в различных клетках, распределяются между собой путем диффузии. Anabaena растёт за счёт деления вегетативных клеток, сохраняя при этом определенную
структуру филаментов: гетероцисты остаются разделенными между собой примерно десятью
вегетативными клетками [48]. В то время, как гетероцисты отодвигаются друг от друга из-за
деления и роста вегетативных клеток, новые гетероцисты образуются из вегетативных клеток
так, что расстояние между гетероцистами остаётся фиксированным на протяжении всей жизни
цианобактерии Anabaena catenula.
Рисунок 2.13: Клетки цианобактерии Anabaena под микроскопом [73].
30
2.3.1
Общее описание ДКА-модели ℵ𝑎
ДКА-модель ℵ𝑎 роста и деления клеток цианобактерии Anabaena catenula является двухуровневой и по структуре аналогична предыдущей модели из раздела 2.2, т.е. представляет собой
параллельную композицию двух ДКА - ℵA𝑎 и ℵB
𝑎 , работающих параллельно и обменивающихся
некоторой информацией в промежутках между итерациями.
ДКА ℵA𝑎 является одномерным, а его массив ячеек представляет собой вектор, в котором каждая ячейка соответствует клетке моделируемой цианобактерии (макроуровень модели). В свою
очередь, ДКА ℵB
𝑎 является двумерным и представляет собой взгляд «внутрь клеток» цианобактерии (микроуровень модели). Каждой ячейке ДКА ℵA𝑎 соответствует некоторое двумерное подB
множество ячеек из ДКА ℵB
𝑎 (т.е. модель клетки на макро- и микроуровне). ДКА ℵ𝑎 моделирует
внутриклеточные процессы, такие как фиксация в гетероцистах азотосодержащих веществ, абсорбция (поглощение) этих веществ в вегетативных клетках и их диффузия (как внутриклеточная, так и межклеточная). ДКА ℵA𝑎 является управляющим для ДКА ℵB
𝑎 и контролирует процессы
роста, деления и трансформации моделируемых клеток (из ветегативных в гетероцисты). Связь
между этими ДКА аналогична предыдущей модели из раздела 2.2 и изображена графические на
рис. 2.8). ДКА-модель ℵ𝑎 также является квазидвумерной.
2.3.2
Микроуровень модели (ДКА ℵB
𝑎 )
Массив
ячеек
ΩB
данного
ДКА
ℵB
𝑎
разбивается
на
подмножества
ΩB = Ω1B ∪ ... ∪ Ω𝑘B ∪ ... ∪ Ω𝐾
B , где 𝐾 - количество клеток в моделируемой цианобактерии.
Каждое из подмножеств Ω𝑘B соответствует клетке (и, соответственно, ячейке из управляющего
ДКА A), а ячейки (𝑢,𝑖) ∈ Ω𝑘B характеризуют нахождение азотосодержащих веществ в пространстве клеток. В каждой ячейке (𝑢,𝑖) ∈ ΩB может находиться или отсутствовать одна единица
азотосодержащего вещества, поэтому множество состояний ячеек является простым c булевым
алфавитом: 𝐴B = {1,0}. Ячейки связаны соседством фон Неймана (имеют до четырех соседей)
и на краях массива связаны периодическими граничными условиями (т.е. замкнуты в полый
цилиндр, где высота цилиндра направлена вдоль филамента клеток цианобактерии).
Функционирование ℵB
𝑎 задается правилами переходов ΘB , состоящими из суперпозиции трех
𝛼
𝛼
подстановок Φ(𝜃𝑓𝛼𝑖𝑥 ,𝜃𝑎𝑏𝑠
,𝜃𝑑𝑖𝑓
}, каждая из которых работает в асинхронном режиме. Рассмотрим
данные подстановки подробнее:
1. Фиксация азотосодержащих веществ в клетках. Происходит только в гетероцистах (т.е.
только на подмножествах Ω𝑖B , которые соответствуют клеткам-гетероцистам (тип клетки
задается в соответствующих ячейках ДКА ℵA𝑎 ):
𝜃𝑓𝛼𝑖𝑥 (𝑖) :
𝑃𝑓 𝑖𝑥
(0,𝑖) −−−−−−→ (1,𝑖).
(2.17)
Здесь, если ячейка с именем 𝑖 пуста (состояние установлено в 0), то с вероятностью 𝑃𝑓 𝑖𝑥 в
ячейке образуется азотосодержащее вещество (состояние переходит в 1).
31
2. Абсорбция азотосодержащих веществ в клетках. Представляет процесс, обратный предыдущему, но происходит только в вегетативных клетках.
𝛼
𝜃𝑎𝑏𝑠
(𝑖) :
𝑃
𝑎𝑏𝑠
(1,𝑖) −−−−
−−→ (0,𝑖).
(2.18)
Здесь, если в ячейке с именем 𝑖 присутствует азотосодержащее вещество (состояние установлено в 1), то с вероятностью 𝑃𝑎𝑏𝑠 вещество поглощается клеткой (состояние переходит
в 0).
3. Диффузия азотосодержащих веществ в клетках. Азотосодержащее вещество, вырабатываемое только в клетках-гетероцистах, разносится по всем остальным клеткам цианобактерии посредством диффузии. Диффузия моделируется при помощи наивной диффузии (см.
2.2.2) и задается подстановкой:
𝛼
𝜃𝑑𝑖𝑓
(𝑖) :
𝑃𝑑𝑖𝑓
(𝑢,𝑖),(𝑣,𝜑𝑑 (𝑖)) −−−−−−→ (𝑣,𝑖),(𝑢,𝜑𝑑 (𝑖)).
(2.19)
Здесь 𝑑 = 𝑟𝑎𝑛𝑑({𝑁,𝐸,𝑆,𝑊 }) – случайный выбор ячейки-соседа в окрестности фон Неймана, 𝑃𝑑𝑖𝑓 – вероятность того, что азотосодержащее вещество продиффундирует. Значение
вероятности 𝑃𝑑𝑖𝑓 отличается для неграничных и граничных ячеек (т.е. тех ячеек, которые
находятся на границе двух соседних клеток цианобактерии), что отражает разницу между
внутриклеточной и межклеточной диффузии.
2.3.3
Макроуровень модели (ДКА ℵA𝑎 )
ДКА ℵA𝑎 является управляющим для ДКА ℵB
𝑎 и контролирует рост, деление и трансформацию моделируемых клеток. Ячейки ДКА ℵA𝑎 представляются вектором и связаны одномерным
соседством 𝐷A = {0,𝐿,𝑅} (т.е. у ячейки может быть только левый 𝐿 и правый 𝑅 соседи). Говоря о размере моделируемой клетки, будем подразумевать линейный размер соответствующего
ей подмножества ячеек ДКА ℵB
𝑎 (к примеру, размер клетки 5 на 7 означает, что соответствующее подмножество Ω𝑘B имеет размер 5 на 7 ячеек). Также следует напомнить, что ДКА-модель
ℵ𝑎 является квазидвумерной, поэтому размеры подмножеств ячеек (и, соответственно, моделируемых клеток) в процессе моделирования роста и деления могут изменяться только в одном
направлении.
Множество состояний 𝐴A является составным и состоит из следующих элементарных состояний:
– 𝐿 ∈ {𝑙 : 𝑙 = 1,...,𝐿𝑚𝑎𝑥 } – длина моделируемой клетки,
– 𝑡𝑦𝑝𝑒 ∈ {𝑣𝑐,ℎ𝑐} – тип клетки (вегетативная или гетероциста, соответственно),
– 𝑜𝑟𝑖𝑒𝑛 ∈ {𝑙𝑑,𝑟𝑑} – ориентация клетки при делении (влево или вправо, соответственно),
32
– 𝑠𝑡𝑎𝑡𝑒 ∈ {𝑛𝑠,𝑡𝑟,𝑔𝑤,𝑑𝑣} – текущее состояние моделируемой клетки (𝑛𝑠 – клетка в состоянии
покоя, 𝑡𝑟 – клетка в процессе трансформации, 𝑔𝑤 – клетка в процессе роста, 𝑑𝑣 – клетка в
процессе деления). Состояния 𝑔𝑤 и 𝑑𝑣 используется также в качестве сигналов для ДКА
ℵB
𝑎 (вызов оператора вставки и оператора разбиения, соответственно).
Функционирование ДКА ℵA𝑎 задается правилами переходов, состоящими из композиции трех
𝜎
𝜎
𝜎
подстановок ΘB = (𝜃𝑔𝑟𝑜𝑤
,𝜃𝑡𝑟𝑎𝑛𝑠
,𝜃𝑑𝑖𝑣
), работающих в синхронном режиме. Рассмотрим данные
подстановки подробнее:
1. Клеточный рост. Происходит в вегетативных клетках и гетероцистах. Клетка может расти,
если выполняются условия: концентрация азотосодержащего вещества ⟨𝐶⟩ ≥ 𝐶𝑚𝑖𝑛 , длина
клетки 𝐿 ≤ 𝐿𝑚𝑎𝑥 , клетка на этой итерации не делилась и не была трансформирована из
другой клетки (состояние 𝑠𝑡𝑎𝑡𝑒 = 𝑛𝑠). Концентрация ⟨𝐶⟩ вычисляется как среднее на подмножестве ячеек ⟨Ω𝑖B ⟩ ∈ ℵB
𝑎 , которое соответствует моделируемой клетке (ячейке с именем
𝑖 из ДКА ℵA𝑎 ):
𝜎
𝜃𝑔𝑟𝑜𝑤
(𝑖) :
(𝐿,𝑖𝐿 ),(𝑛𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 )
𝑃𝑔𝑟𝑜𝑤
−−−−−−−−−−−−→
𝐿≤𝐿𝑚𝑎𝑥 ,⟨Ω𝑘B ⟩≥𝐶𝑚𝑖𝑛
(𝐿 + 1,𝑖𝐿 ),(𝑔𝑤,𝑖𝑠𝑡𝑎𝑡𝑒 ).
(2.20)
Если условия применения подстановки выполняются, то с вероятностью 𝑃𝑔𝑟𝑜𝑤 клетка растет. Рост моделируется увеличением длины ячейки на единицу (состояние 𝐿 = 𝐿 + 1), и
переходом ячейки в состояние роста (𝑠𝑡𝑎𝑡𝑒 = 𝑔𝑤). Последнее состояние служит сигналом
для ДКА ℵB
𝑎 , который после этого инициирует вставку ячеек в соответствующее подмножество Ω𝑖B своих ячеек. Вставка ячеек в массив осуществляется подстановкой, проиллюстрированной на рис. 2.14 (место вставки в Ω𝑖B выбирается случайно с равной вероятностью).
2. Трансформация вегетативной клетки в гетероцисту. Происходит, если моделируемая
клетка является вегетативной (состояние 𝑡𝑦𝑝𝑒 = 𝑣𝑐), концентрация азотосодержащего вещества в ней ⟨Ω𝑘B ⟩ < 𝐶𝑚𝑖𝑛 , и она не делилась и не росла на этой итерации (состояние
𝑠𝑡𝑎𝑡𝑒 = 𝑛𝑠). Рассмотрим подстановку:
𝜎
𝜃𝑡𝑟𝑎𝑛𝑠
(𝑖) :
(𝑣𝑡,𝑖𝑡𝑦𝑝𝑒 ),(𝑛𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 )
−−−−−−−→
(ℎ𝑐,𝑖𝑡𝑦𝑝𝑒 ),(𝑡𝑟,𝑖𝑠𝑡𝑎𝑡𝑒 ).
⟨Ω𝑘B ⟩<𝐶𝑚𝑖𝑛
(2.21)
Данная подстановка не требует каких-либо дополнительных действий со стороны ДКА ℵB
𝑎.
3. Деление вегетативной клетки. Происходит, если концентрация азотосодержащего вещества ⟨Ω𝑖B ⟩ ≥ 𝐶𝑚𝑖𝑛 , длина 𝐿 ≥ 𝐿𝑚𝑎𝑥 , и клетка не росла и не трансформировалась в эту
итерацию (состояние 𝑠𝑡𝑎𝑡𝑒 = 𝑛𝑠):
[︃
𝜎
𝜃𝑑𝑖𝑣
(𝑖) :
]︃
𝑃𝑑𝑖𝑣
(𝐿′ ,𝑖′𝐿 ),(𝑣𝑐,𝑖′𝑡𝑦𝑝𝑒 ),(𝑑𝑣,𝑖′𝑠𝑡𝑎𝑡𝑒 )
⟨ΩB ⟩≥𝐶𝑚𝑖𝑛 ,𝐿≥𝐿𝑚𝑎𝑥
(𝐿′′ ,𝑖′′𝐿 ),(𝑣𝑐,𝑖′′𝑡𝑦𝑝𝑒 ),(𝑑𝑣,𝑖′′𝑠𝑡𝑎𝑡𝑒 ))
(𝐿,𝑖𝐿 ),(𝑣𝑐,𝑖𝑡𝑦𝑝𝑒 ),(𝑛𝑠,𝑖𝑠𝑡𝑎𝑡𝑒 ) −−−
−−−−−−−−−→
𝑖
,
(2.22)
33
Здесь, 𝑃𝑑𝑖𝑣 - вероятность применения подстановки (т.е. вероятность деления). В результате
деления, вместо ячейки (𝑢,𝑖) образуется две дочерних (𝑢′ ,𝑖′ ) и (𝑢′′ ,𝑖′′ ) с ориентациями
деления 𝑙𝑑 и 𝑟𝑑, соответственно, и размерами, зависящими от ориентации родительской
ячейки (𝑢,𝑖):
⎧
⎨ 𝐿′ = 𝐿 − 𝑟𝑑𝑖𝑣 · 𝐿𝑚𝑎𝑥
& 𝐿′′ = 𝑢𝑙 − (1 − 𝑟𝑑𝑖𝑣 ) · 𝐿𝑚𝑎𝑥 ,
⎩ 𝐿′ = 𝐿 − (1 − 𝑟 ) · 𝐿
𝑑𝑖𝑣
𝑚𝑎𝑥
& 𝐿′′ = 𝑢𝑙 − 𝑟𝑑𝑖𝑣 · 𝐿𝑚𝑎𝑥 ,
𝑖𝑓
𝑜𝑟𝑖𝑒𝑛 = 𝑙𝑑,
(2.23)
𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒,
где 𝑟𝑑𝑖𝑣 ∈ (0; 1) – параметр, задающий отношение размеров дочерних клеток.
𝜎
Если подстановка 𝜃𝑑𝑖𝑣
(𝑖) выполняется, тогда для ДКА ℵB
𝑎 передается сигнал к делению
(состояние 𝑠𝑡𝑎𝑡𝑒 = 𝑑𝑣), который инициирует разбиение соответствующего подмножества
Ω𝑖B своих ячеек на два дочерних. Разбиение осуществляется подстановкой, проиллюстрированной на рис. 2.15 (место деления в Ω𝑖B выбирается случайно с равной вероятностью).
Рисунок 2.14: Графическое представления подстановки, моделирующей рост клеток
цианобактерии.
Рисунок 2.15: Графическое представления подстановки, моделирующей деление клеток
цианобактерии.
На начало каждой итерации во всех ячейках макроуровня модели происходит сброс состояния 𝑠𝑡𝑎𝑡𝑒 = 𝑛𝑠 (моделируемая клетка переходит в нейтральное состояние).
34
2.3.4
Результаты моделирования ℵ𝑎
Параметры модели (вероятности и коэффициенты) были подобраны путем вычислительных
экспериментов таким образом, чтобы соответствовать наблюдаемым закономерностям в распределении гетероцист в процессе развития цианобактерии Anabaena catenula в естественных условиях, а именно: гетероцисты появляется периодично (через 8-10 вегетативных клеток), что подтверждается экспериментальными наблюдениями [48].
На рис. 2.16 изображены результаты компьютерного моделирования со следующими подобранными параметрами:
– Поперечный размер моделируемой клетки: 20 ячеек; максимальный продольный размер
клетки: 𝐿𝑚𝑎𝑥 = 20.
– Вероятность фиксации азота в клетке: 𝑃𝑓 𝑖𝑥 = 0,95.
– Вероятность абсорбции азотосодержащего вещества в клетке: 𝑃𝑓 𝑖𝑥 = 0,01.
– Вероятность внутриклеточной диффузии: 𝑃𝑑𝑖𝑓 = 0,99; вероятность межклеточной диффузии: 𝑃𝑑𝑖𝑓 = 0,4; коэффициент КА-диффузии: 15 (в обоих случаях).
– Пороговая концентрация азотосодержащего вещества в вегетативной клетке: 𝐶𝑚𝑖𝑛 = 0,01.
– Вероятность роста: 𝑃𝑔𝑟𝑜𝑤 = 0,98.
– Вероятность деления: 𝑃𝑑𝑖𝑣 = 0,92; коэффициент отношения деления: 𝑟𝑑𝑖𝑣 = 0,5.
– Моделирование было начато с трех вегетативных клеток с концентрацией азотосодержащих веществ 0,45 в них.
Рисунок 2.16: Результаты компьютерного моделирования роста и деления клеток
цианобактерии. Сверху вниз изображены кадры шести итераций (номер итерации указан
слева). Зеленой рамкой обозначены вегетативные клетки, а красной – гетероцисты. Черным
представлено азотосодержащее вещество в клетках (гетероцисты почти полностью закрашена
черным, т.к. концентрация данного вещества в них составляет более 0,9).
Также были проведены вычислительные эксперименты с другими модельными параметрами, в ходе которых был обнаружен артефакт, являющийся следствием дискретности модели: две
35
соседние вегетативные клетки могли быть одновременно трансформированы в гетероцисты, что
не естественно для реально наблюдаемых данных. Эта проблема проявлялась, если параметры,
характеризующие максимальные размеры моделируемой клетки (как продольные, так и поперечные), были заданы достаточно малыми (менее 10 ячеек в каждом направлении). Это объясняется
тем, что малые размеры подмножеств Ω𝑖B дают весьма ограниченный диапазон возможных значений вычисляемой концентрации азтотосодержащего вещества, что, в свою очередь, ведет к
уменьшению стохастичности процесса моделирования и более грубому заданию пороговых значений. Данная проблема решается увеличением максимальных размеров моделируемых клеток
(более 20 ячеек в каждом направлении).
Также было выявлено, что коэффициент КА-диффузии значительно влияет на частоту появления гетероцист в модели и должен увеличиваться при увеличении максимальных размеров
моделируемых клеток (т.е. чем больше ячеек, тем больше итераций диффузии нужно выполнить,
чтобы распределить азотосодержащее вещество по вегетативным клеткам).
Деление клеток Anabaena catenula также моделировалось в [48] при помощи L-систем (системы Линденмайера [45–47]) в связке с дифференциальными уравнениями. Однако, построенная
там модель была полностью одномерной, отражала только макроуровень модели, и учитывала
рост клеток лишь условно (рост был задан переменной-счетчиком и никак не влиял на моделируемое клеточное пространство).
2.4
Выводы к главе
В Главе 2 были получены следующие результаты:
1. Предложено понятие клеточного автомата с динамической однородной структурой (ДКА),
которое расширяет возможности двумерных клеточных автоматов (КА) и позволяет эффективно применять клеточно-автоматный подход к двумерным задачам, связанным с динамикой структуры моделируемого пространства (задачи развития тканей живых систем).
Кроме того, ДКА-модели обладают всеми преимуществами классических КА, а именно:
вычислительной устойчивость, отсутствием ошибок округления, простотой составления
модельных правил и простотой визуализации.
2. Разработана двухуровневая ДКА-модель ℵ𝑚 апикальной меристемы побега Arabidopsis
Thaliana, состоящая из параллельно композиции двух ДКА. Результаты компьютерного моделирования показали, что поведение предложенной модели соответствует модели из [35],
где для моделирования использовалась композиция системы дифференциальных уравнений и L-систем Линденмайера. ДКА-модель позволяет наблюдать динамику веществ на
уровне отдельных частиц, а не в виде их концентраций в некоторых точках. К преимуществам также можно отнести возможность имитационного моделирования роста клеток
АМП.
36
3. Разработана двухуровневая ДКА-модель ℵ𝑎 роста и деления клеток цианобактерии
Anabaena catenula. Проведенные вычислительные эксперименты показали, что поведение
построенной модели соответствует экспериментальным наблюдениям. Также был выявлено, что коэффициент диффузии азотосодержащего вещества влияет на частоту появления
гетероцист. В сравнении с одноуровневыми одномерными моделями [48], данная ДКАмодель обладает возможностью имитационного моделирования роста клеток цианобактерии, а двухуровневость модели позволяет более детально изучать динамику азотосодержащих веществ в клетках и ее воздействие на рост, деление и трансформацию клеток.
37
Глава 3
Трехмерные клеточные автоматы с
динамической неоднородной структурой
В главе 2 было введено понятие двумерного КА с однородной динамической структурой
(ДКА), расширяющее аппарат КА на двумерные задачи, связанные с однонаправленной динамикой структуры моделируемой поверхности. В настоящей главе будет представлен метод организации неоднородного массива ячеек для трехмерных КА, который позволяет:
1. Имитировать различные трехмерные поверхности бактериальных клеток.
2. Изменять структуру поверхности во времени (т.е. моделировать процессы роста и деления
бактериальных клеток).
3. КА, использующий такой массив ячеек, может моделировать дополнительные процессы,
происходящие во время роста и деления бактериальной клетки.
3.1
Организация массива ячеек с неоднородной структурой
Предлагаемую организацию неоднородного массива ячеек можно представить в виде иерархии структур (рис. 3.1). На верхнем уровне располагается моделируемая поверхность (в данном
примере, поверхность клетки бактерии). Далее, поверхность разбивается на кольца (слои), которые, в свою очередь, состоят из ячеек. Такая организация в виде колец удобна в задачах с
динамикой моделируемой поверхности, т.к. позволяет изменять структуру поверхности не перестраивая при этом всю поверхность целиком. Таким образом, осуществляется редукция измерений: из трехмерного пространства поверхности (𝑋𝑌 𝑍, где ось 𝑍 направлена вдоль поверхности)
к двумерной плоскости кольца (𝑋𝑌 ) и далее к одномерному вектору ячеек (𝑋).
Основной структурной единицей поверхности является кольцо. Каждое кольцо характеризуется тремя параметрами: радиусом, 3D-координатой и списком ячеек. Каждая ячейка из списка,
в свою очередь, обладает состоянием и 2D-координатой относительно центра кольца. Относительная 2D-координата выбрана для того, чтобы при смене положения кольца в пространстве не
38
Рисунок 3.1: Иерархия организации неоднородного массива ячеек трехмерного клеточного
автомата.
нужно было переписывать координату каждой отдельной ячейки этого кольца. Следует отметить,
что обход ячеек в кольце начинается с ячейки, имеющей максимальную по оси 𝑌 координату
(позиция 𝜋/2 кольца). Этот факт важен при определении соседства ячеек и будет объяснен далее
в разделе 3.2.
3.1.1
Алгоритм построения колец
Кольцо является трехмерной поверхностью, но ячейки в нем организованы двумерным образом. Для отображения ячеек в трехмерное пространство используется координата 𝑧 их кольца.
Таким образом, алгоритм построения кольца сводится к упорядочиванию его ячеек в окружность
на плоскости 𝑋𝑌 и состоит из следующих действий (рис. 3.2):
1. Плоскость разбивается на ячейки с шагом ℎ (размер ячейки) так, что центр одной из ячеек
лежит в начале координат (т.е. имеет координаты 𝑥𝑖 = 0 и 𝑦𝑖 = 0).
2. Ячейки (𝑥𝑖 ,𝑦𝑖 ), для которых выполняется условие 𝑟 − ℎ 6 𝑑𝑖 < 𝑟 + ℎ, где 𝑟 - заданный
√︀
радиус кольца, 𝑑𝑖 = 𝑥2𝑖 + 𝑦𝑖2 , образуют список ячеек данного кольца.
Таким способом можно построить кольца различного радиуса, которые будут располагаться
плотно друг к другу, не оставляя промежутков и не пересекаясь между собой (рис. 3.2).
Утверждение 2. Плоскость может быть плотно и без пересечений заполнена кольцами
ячеек, если выполняются условия:
1. 𝑟𝑖 = 𝑎𝑖 · ℎ, где 𝑟𝑖 - радиус i-го кольца, 𝑎𝑖 ∈ N, ℎ > 0 - размер ячейки.
39
Рисунок 3.2: Графическое представление алгоритма построения колца ячеек (слева) и,
сгенерированные таким способом, кольца разных радиусов (справа; соседние кольца
представлены чередующимися цветами).
2. ∀𝑎𝑖 ∃𝑎𝑗 : |𝑎𝑖 − 𝑎𝑗 | = 1, т.е. для каждого кольца существует по крайней мере одно соседнее
кольцо с радиусом, отличным на величину ℎ, что гарантирует плотность заполнения.
3. ¬∃(𝑎𝑖 ,𝑎𝑗 ) : 𝑎𝑖 = 𝑎𝑗 , т.е. не существует колец с одинаковыми радиусами, что гарантирует
отсутствие пересечений.
Утверждение 3. Пространство может быть плотно и без пересечений заполнено кольцами
ячеек, если для колец с одинаковой координатой 𝑧𝑖 выполняется утверждение 1, и условия этого
утверждения распространяются на координату 𝑧𝑖 так, что 𝑧𝑖 = 𝑏𝑖 · ℎ, где 𝑏𝑖 ∈ R.
3.1.2
Алгоритм построения поверхности клетки бактерии
Клетку бактерии можно условно разделить на тело клетки и ее полюса. Тело удобно представить в виде цилиндра, а полюса - в виде двух половин одного сфероида (рис. 3.3). Таким
образом, задача организации структуры, имитирующей поверхность клетки бактерии, сводится
к построению из ячеек цилиндра и двух сфероидов. Цилиндр легко составляется из колец ячеек
(рис. 3.4) и может быть определен высотой, которая задает число колец в цилиндре, и радиусом основания, задающим радиус всех колец цилиндра. Сфероид, в свою очередь, определяется
полуосью 𝑎, которая параллельна оси координат 𝑍, и двумя равными полуосями 𝑏 = 𝑐, которые параллельны осям координат 𝑋 и 𝑌 , соответственно (рис. 3.5). Построение сфероида из
ячеек является более сложной задачей, чем построение цилиндра, т.к. дополнительно требует
определения радиусов всех своих колец.
Рассмотрим алгоритм построения сфероида (рис. 3.6):
1. В плоскости 𝑌 𝑂𝑍 строятся два вспомогательных эллипса (вернее только их I четверти) с
центрами в начале координат и осями (𝑎 − ℎ, 𝑏 − ℎ) и (𝑎 + ℎ, 𝑏 + ℎ), где ℎ - размер ячейки.
40
Рисунок 3.3: Представление поверхности клетки бактерии в виде цилиндра и двух половин
сфероида.
2. На плоскость 𝑌 𝑂𝑍 накладывается сетка с шагом ℎ так, что один из узлов лежит в начале
координат, а координаты остальных узлов больше, либо равны 0.
3. Узлы, попавшие между вспомогательными эллипсами, определяют радиусы 𝑟𝑖 и координаты 𝑧𝑖 каждого из колец сфероида.
Рисунок 3.4: Организация цилиндра (поверхности тела клетки) в виде колец ячеек.
Рисунок 3.5: Организация половины сфероида (поверхности полюса клетки) в виде колец ячеек.
Стоит отметить, что алгоритм построения сфероида идейно схож с алгоритмом построения
колец, однако, имеет решающее отличие: в алгоритме построения колец мы работаем в плоскости 𝑋𝑌 и, по заданным параметрам, определяем ячейки, составляющие кольцо, в то время как
41
в алгоритме построения сфероида, мы работаем в плоскости 𝑌 𝑍 и только определяем радиусы 𝑟𝑖 и координаты 𝑧𝑖 колец; далее, по найденным радиусам и 𝑧-координатам уже и строятся
сами кольца. На рис. 3.6 также можно увидеть, что алгоритм построения сфероида допускает
вложенные кольца (т.е. кольца с одинаковой координатой 𝑧𝑖 = 𝑧𝑗 , но разными радиусами 𝑟𝑖 ̸= 𝑟𝑗 ).
Рисунок 3.6: Графическое представление алгоритма определения параметров колец сфероида.
3.1.3
Примеры различных вариантов поверхностей
На рис. 3.7 представлены четыре поверхности, которые имитирую различные формы бактериальных клеток. Эти поверхности получены в результате варьирования параметров при построении цилиндра и сфероида. Обозначим 𝑡𝑜𝑡𝑎𝑙 – общее число ячеек, ℎ𝑐 – высоту цилиндра, 𝑟𝑐 –
радиус основания цилиндра, 𝑎𝑠 – ось 𝑎 сфероида, а единицей измерения примем размер ячейки.
Таким образом, поверхности на рис. 3.7 заданы следующими параметрами:
Поверхность a:
ℎ𝑐 = 300, 𝑟𝑐 = 75, 𝑎𝑠 = 75, 𝑡𝑜𝑡𝑎𝑙 = 205402 ячеек.
Поверхность b:
ℎ𝑐 = 300, 𝑟𝑐 = 75, 𝑎𝑠 = 180, 𝑡𝑜𝑡𝑎𝑙 = 273306 ячеек.
Поверхность c:
ℎ𝑐 = 1, 𝑟𝑐 = 200, 𝑎𝑠 = 200, 𝑡𝑜𝑡𝑎𝑙 = 492822 ячеек.
Поверхность d:
ℎ𝑐 = 1, 𝑟𝑐 = 150, 𝑎𝑠 = 225, 𝑡𝑜𝑡𝑎𝑙 = 383482 ячеек.
На рис. 3.8 одна из поверхностей изображена в увеличенном масштабе, благодаря чему можно видеть, что поверхность состоит из отдельных ячеек.
3.2
Быстрый алгоритм определения соседства ячеек
Задача определения соседства ячеек играет одну из ключевых ролей при составлении правил КА модели. Вычисление соседства на регулярной решетке требует лишь расчета смещений
по индексам (особое внимание уделяется только граничным случаям). Однако, ситуация кардинально меняется на неоднородной решетке, моделирующей какую-либо поверхность. Функция
соседства в этом случая весьма нетривиальна, а вычисление соседства с достаточно большим
42
Рисунок 3.7: Примеры поверхностей, имитирующих различные формы бактериальных клеток.
На поверхностях также смоделирован некоторый автоволновый процесс, который
демонстрирует возможность моделирования пободных процессов на этих поверхностях.
радиусом может быть очень ресурсоемкой операцией, выполнение которой, в большинстве случаев, может потребоваться на каждой итерации для каждой ячейки. Одним из способов решения
этой проблемы является однократный расчет соседства для каждой ячейки и занесение этого
результата в таблицу. Однако, с ростом числа ячеек и величины радиуса соседства, может потребоваться громадное количество памяти, требуемое для хранения таких таблиц. К примеру, кубическая решетка со стороной в 1000 клеток и радиусом соседства 10 клеток требует 10003 · 103 · 8
байт памяти (в случае 64-разрядных систем).
Кроме того, в задачах с динамикой структуры может потребоваться производить перерасчет
этих таблиц после каждого изменения структуры пространства. Поэтому, одним из основных
критериев, который был принят при выборе метода организации неоднородного массива ячеек
в этой работе, является возможность реализовать на таком массиве простой и эффективный
алгоритм определения соседства.
Самый очевидный способ вычислить на трехмерной поверхности соседство для конкретной
ячейки, заключается в поиске пересечения этой поверхности со сферой заданного радиуса соседства и с центром в заданной ячейке. Все ячейки поверхности, которые попали в сферу, и
составляют соседство для этой ячейки. Используя факт того, что поверхность состоит из колец
ячеек, задача поиска пересечения поверхности со сферой сводится к нахождению пересечения
сферы с кольцами, которые являются соседними для кольца заданной ячейки (рис. 3.9). Кроме
того, кольцо является симметричной фигурой, а центры всех колец, составляющих поверхность,
лежат на оси 𝑍. Поэтому, все сферы, чьи центры расположены в ячейках исходного кольца, в
результате пересечения с одним и тем же кольцом-соседом образуют сегменты равной длины.
Таким образом, достаточно вычислить пересечения лишь одной такой сферы с кольцом-соседом,
43
Рисунок 3.8: Поверхность моделируемой клетки в приближении (сверху) и вид поверхности
изнутри (снизу).
найти число ячеек, попадающих в соседство, и, при помощи смещений, вычислить соседство для
каждой ячейки исходного кольца.
Каждое кольцо может быть рассмотрено как множество центров ячеек лежащих на окружности (с координатой 𝑧𝑟𝑐 центра своего кольца). Поэтому, точки пересечения кольца-соседа и сферы
могут быть найдены при помощи системы уравнений:
⎧
⎨(𝑥 − 𝑥𝑠 )2 + (𝑦 − 𝑦𝑠 )2 + (𝑧 − 𝑧𝑠 )2 = 𝑟2 ,
𝑠
⎩(𝑥 − 𝑥 )2 + (𝑦 − 𝑦 )2 + 𝑧 𝑐 = 𝑟2 ,
𝑟
𝑟
𝑟
(3.1)
𝑟
где первое уравнение – уравнение сферы в прямоугольной системе координат,
второе уравнение – уравнение окружности (кольца) в пространстве,
(𝑥𝑠 ,𝑦𝑠 ,𝑧𝑠 ) и 𝑟𝑠 – координаты сферы и ее радиус,
(𝑥𝑟 ,𝑦𝑟 ,𝑧𝑟𝑐 ) и 𝑟𝑟 – координаты кольца-соседа (𝑧𝑟𝑐 - константа) и его радиус,
(𝑥,𝑦,𝑧) – искомые точки пересечения (или единственная точка, в случая касания).
Чтобы упростить эту систему уравнений, начало системы координат сдвигается в центр
кольца-соседа, что приводит к занулению координат 𝑥𝑟 = 𝑦𝑟 = 𝑧𝑟𝑐 = 0. Координаты 𝑧 точек
пересечения сферы и кольца-соседа (если они существуют) имеют ту же координату 𝑧, что и
кольцо-сосед. Отсюда, третье слагаемое первого уравнения принимает вид (𝑧 − 𝑧𝑠 )2 = 𝑧𝑠2 . Если
в качестве ячейки, для которой вычисляется ее соседство, взять ячейку, находящуюся на позиции 𝜋/2 кольца, тогда координата 𝑥𝑠 = 0, т.к. центр сферы лежит в центре этой ячейки. Таким
образом, решение уравнения 3.1 принимает вид:
44
Рисунок 3.9: Пересечение сферы заданного радиуса соседства и кольца-соседа (зеленое кольцо).
⎧
⎨𝑦 = (𝑦 2 + 𝑧 2 + 𝑟2 − 𝑟2 )/2𝑦𝑠 ,
𝑠
𝑠
𝑟
𝑠
√︀
⎩𝑥 = 𝑟 2 − 𝑦 2 .
(3.2)
𝑟
Решение системы уравнений 3.2 может привести к следующим результатам:
1. Точки пересечения отсутствуют: либо сфера и кольцо-сосед не пересекаются (т.е. в кольце отсутствуют соседи для заданной ячейки), либо кольцо вписано в сферу (тогда все
ячейки входят в соседство).
2. Одна точка пересечения: соседом заданной ячейки является ячейка, находящаяся в кольцесоседе ближе других к точке пересечения.
3. Две точки пересечения: все ячейки, лежащие выше точек пересечения (по координате 𝑦),
являются соседями заданной ячейки.
Обобщая все вышесказанное, алгоритм определения соседства для ячеек кольца 𝑖 в кольце 𝑗
выглядит следующим образом:
1. Решить уравнение 3.2 для ячейки, лежащей на позиции 𝜋/2 исходного кольца 𝑖; найти
длину сегмента 𝑙 = 2𝑎𝑟𝑐𝑐𝑜𝑠( 𝑟𝑦𝑟 )𝑟𝑟 , полученного в результате пересечения.
2. При помощи полученной длины 𝑙 вычислить количество 𝑛 ячеек, попадающих в соседство:
𝑛 = 𝑙/𝐿𝑗 * 𝑁𝑗 , где 𝐿𝑗 - длина кольца 𝑗, 𝑁𝑗 - число ячеек в кольце 𝑗.
3. Для ячейки с индексом 𝑘 исходного кольца 𝑖 соседями будут являться 𝑛 последовательно
расположенных ячеек кольца 𝑗, начиная с индекса 𝑖𝑛𝑑𝑒𝑥 = (𝑘 − 1) · 𝑁𝑗 /𝑁𝑖 − 𝑛/2, где 𝑁𝑖 –
число ячеек в кольце 𝑖.
45
Последний пункт алгоритма объясняется тем, что ячейки в кольце располагаются упорядоченным образом, начиная с индекса 1 (на позиции 𝜋/2 кольца) и далее по часовой стрелке. Следует отметить, что при вычислении индексов, может быть получен 𝑖𝑛𝑑𝑒𝑥 < 1, либо
𝑖𝑛𝑑𝑒𝑥 + 𝑛 > 𝑁𝑗 . В этом случае, необходимо сделать нормализацию индексов с учетом того, что
индексы замкнуты в круг, т.е. после максимального индекса 𝑁 идут индексы 1,2,..., и наоборот
- перед 1 идут 𝑁, 𝑁 − 1,... и т.д.
Предложенный алгоритм обладает большой скоростью выполнения и не требует значительных затрат памяти, но допускает некоторую аппроксимацию при вычислении соседств маленького радиуса (𝑟 < 3). Однако, с увеличением радиуса эта погрешность становится незначительной
для большинства задач КА-моделирования (например, при вычислении концентрации вещества
в некоторой точке, могут быть использованы состояния сотни смежных ячеек, где ошибка из-за
попадания в соседство лишних ячеек, расположенных на краю соседства, будет минимальна).
Для оценки сложности алгоритма определения соседства ячеек введем следующие обозначения:
– 𝑁 – общее число ячеек в массиве.
– 𝑑 – диаметр соседства (измеряется в ячейках).
Определение соседства в обычном трехмерном КА имеет сложность алгоритма 𝑂(𝑁 𝑑3 ), т.к.
требует проверки соседства для каждой клетки в трех направлениях. Быстрый алгоритм определения соседства ячеек, предлагаемый здесь, требует только получения смещений от соседних
колец для каждой ячейки, поэтому:
Утверждение 4. Быстрый алгоритм определения соседства ячеек имеет сложность 𝑂(𝑁 𝑑).
3.3
Моделирование роста и деления
Моделирование роста бактериальной клетки осуществляется вставкой новых колец в цилиндр. При этом, состояния ячеек нового кольца устанавливаются в зависимости от решаемой
задачи. Например, состояния могут быть установлены случайным образом с вероятностью, которая зависит от осредненной концентрации некоторого вещества в соседних кольцах; или, после
вставки нового кольца, может быть произведена дополнительная операция диффузии, которая
сгладит концентрацию вещества в этой области. На рис. 3.10 (слева) изображено три последовательных кадра, которые отображают процесс роста моделируемой бактерии E. coli во время
самоорганизации белков MinDE. В этом примере, после каждой вставки нового кольца в цилиндр, сразу выполнялось несколько операций диффузии.
При делении происходит сужение центральной части клетки. Сужение имитируется последовательным уменьшением радиуса колец, находящихся в центральной части цилиндра. Как и
в случае со вставкой нового кольца, необходимо решить каким способом установить состояния
ячеек кольца с новым радиусом, т.к., в большинстве случаев, после операции сужения количество ячеек в кольце уменьшается. Какие именно кольца сужать и в какой последовательности,
46
Рисунок 3.10: Моделирование клеточного роста (слева) и деления (справа).
определяется некоторой заранее заданной функцией с условием, что после всех последовательных операций сужения, центральная часть поверхности моделируемой клетки примет отраженный вид ее полюсов (т.е. форму половин сфероида, обращенных друг к другу). На рис. 3.10
(справа) приведен пример процесса деления моделируемой клетки E. coli.
Для оценки сложности алгоритма вставки колец введем следующие обозначения:
– 𝑁 – общее число ячеек в массиве.
– 𝑀 – число ячеек в кольце.
– 𝑑 – диаметр соседства (измеряется в ячейках).
Вставка в обычном трехмерном КА требует изменения всех координат сдвинутых ячеек, поэтому
в худшем случае требуется 𝑁 таких изменений, что определяет сложность алгоритма 𝑂(𝑁 ).
Вставка кольца ячеек требует только перерасчета соседства для тех ячеек, которые принадлежат
кольцам, попадающим в соседство вставляемого кольца. Поэтому:
Утверждение 5. Вставка кольца ячеек имеет сложность 𝑂(𝑀 𝑑), где 𝑀 – число ячеек в
кольце.
3.4
Выводы к главе
В Главе 3 были получены следующие результаты:
1. Предложен метод организации неоднородного массива ячеек трехмерного клеточного автомата в виде иерархии: поверхность → кольца → списки ячеек. Показано, что данный
метод позволяет генерировать поверхности бактериальных клеток различных форм.
47
2. Разработан алгоритм определения соседства ячеек, который позволяет эффективно вычислять соседство на трехмерном неоднородном массиве ячеек и не требует значительных
затрат вычислительных ресурсов (что является критически важным в задачах компьютерного моделирования).
3. Предложен способ моделирования динамики поверхности, организованной в виде неоднородного массива ячеек, который позволяет моделировать рост и деление клеток живых
организмов. Основным преимуществом такого подхода является то, что массив, организованный таким способом, позволяет частично изменять структуру моделируемой поверхности, не перестраивая при этом всю поверхность целиком (благодаря возможности изменять
только отдельные кольца, составляющие данную поверхность).
48
Глава 4
КА-моделирование самоорганизации
бактериальной системы белков MinCDE
Ярким примером самоорганизации в биологии является система белков MinCDE, присутствующая в бактериях вида E. coli и в некоторых других [74]. Процесс деления бактериальной
клетки начинается с образования на клеточной мембране кольцеобразной структуры – Z-кольца,
состоящей из полимеров белка FtsZ. Z-кольцо собирается в геометрической середине клетки
(рис. 4.1) и является «строительным каркасом» для нижестоящих белков, которые и производят
окончательное деление клетки [75]. Образованию Z-кольца предшествуют самоорганизационные
механизмы, помогающие позиционировать сборку Z-кольца в середине клетки. Одним из таких
механизмов и является система белков MinCDE.
Рисунок 4.1: Z-кольцо собирается в середине клетки, где концентрация негативных регуляторов
сборки достаточно мала. Рисунок адаптирован из [75].
4.1
Система белков MinCDE
В систему MinCDE входят три белка: MinD, MinE и MinC [75]. Белок MinD обладает способностью связываться с мембраной в присутствии нуклеотидов АТФ1 . Белок MinC является
ингибитором сборки FtsZ полимеров и, соответственно, предотвращает сборку Z-кольца в своем
присутствии [76]. Способность самостоятельно связываться с мембраной у MinC отсутствует,
однако MinC может связываться с мембраносвязанным MinD. Белок MinE конкурирует с MinC
за связь с мембраносвязанным MinD и вытесняет MinC. Главной особенностью MinE является
то, что после связывания с MinD, MinE стимулирует у последнего гидролиз АТФ, в результате
1
АТФ - универсальный источник энергии для всех биохимических процессов, протекающих в живых системах.
49
чего MinD покидает мембрану. Способность же MinE самостоятельно связываться с мембраной
остается неопределенной, однако в [77] было предположено, что после того, как в комплексе
MinDE происходит гидролиз АТФ, MinD покидает мембрану, а MinE продолжает оставаться
на ней еще некоторое время. В [78, 79] также было обнаружено, что функциональной формой
каждого из белков MinCDE является димер.
В клетках бактерий система MinCDE образует осцилляционный процесс, который проявляется в том, что белки MinCDE периодически появляются на мембране клетки ближе к ее полюсам.
Таким образом, в середине клетки удерживается слабая концентрация ингибитора MinC сборки
FtsZ-полимеров, что и позволяет в этом месте собираться Z-кольцу и предотвращает его сборку
на полюсах. На рис. 4.2 приведена последовательная серия кадров, отражающая процесс осцилляции белков MinCDE в E. coli. Как было установлено в [80], осцилляция возникает в результате
взаимодействия белков MinD и MinE, в то время как MinC не оказывает существенного влияния на этот процесс, являясь лишь «пассажиром». В [81, 82] было замечено, что один цикл
осцилляции в E. coli примерно равен 40–60 секундам.
Рисунок 4.2: Осцилляция от полюса к полюса белков MinD, помеченных GFP в E. coli.
Изображения получены при помощи покадровой микроскопии в [83].
Чтобы лучше понять механизмы самоорганизации белков MinCDE, был проведен ряд экспериментов [77, 84–86], в которых был реконструирован процесс образования белковых волн
MinCDE в искусственной среде. Белки MinCDE, извлеченные из клеток E. coli, были помещены
в раствор, насыщенный нуклеотидами АТФ, с липидным бислоем, имитирующим мембрану. Таким образом, было установлено, что in vitro система MinCDE образует белковые волны (рис. 4.3),
спирали и некоторые другие пространственно-временные паттерны [84]. В [85] было показано,
что белки MinD обладают способностью к коллективному связыванию (cooperative binding), т.е.,
связываясь с мембраной (вернее, с липидным бислоем), они начинают привлекать из раствора другие димеры MinD. В свою очередь, с мембраносвязанными MinD начинают связываться
MinE, образуя комплекс MinDE. Белки MinE стимулируют у MinD гидролиз АТФ, что приводит к откреплению MinD от мембраны. В [77] также было предположено, что MinE обладает
способностью быстрого пересвязывания (rapid rebinding), которое проявляется в том, что после
стимуляции гидролиза АТФ и открепления MinD, MinE некоторое время продолжает оставаться
на мембране и может связываться с соседними мембраносвязанными MinD. Со временем это
приводит к накоплению MinE на мембране и, соответственно, ускоряет процесс открепления
мембраносвязанных MinD в этом месте.
50
Рисунок 4.3: Белковые волны, образованные MinDE in vitro (MinD помечен зеленым, MinE –
красным, числами указано время в секундах, стрелками показано направление распространения
волны). Рисунок адаптирован из [84].
Как видно из рис. 4.4, на котором изображен график белковой волны MinCDE, с ростом концентрации MinD линейно растет и концентрация MinE от фронта волны до ее тыла. В тылу
же концентрация MinD начинает падать, тогда как концентрация MinE продолжает расти. Последнее обуславливается тем, что, после гидролиза АТФ, MinD покидает мембрану, а MinE еще
некоторое время остается на ней и может пересвязываться с соседними мембраносвязанными
MinD. Дальнейший резкий спад концентрации MinE объясняется тем, что для димеров MinE,
оставшихся на мембране после очередного гидролиза АТФ, больше не остается доступных мембраносвязанных MinD поблизости, и белки MinE также покидают мембрану.
Рисунок 4.4: Пример белковой волны, образованной белками MinCDE in vitro. Различные
сегменты волны обозначены в разных градациях серого. Рисунок адаптирован из [77].
Таким образом, в соответствии с [77], процесс самоорганизации белков MinDE in vitro можно
описать следующими этапами (рис. 4.5):
1. В начале осцилляционного цикла в случайном месте несколько белков MinD связываются с мембраной рядом друг с другом и, благодаря механизму коллективного связывания,
начинают привлекать другие димеры MinD из раствора (рис. 4.5 (a,b)). Подобные белковые «пятна» могут одновременно образовываться в нескольких местах на мембране. Белки
51
MinE также начинают связываться с мембраносвязанными MinD (рис. 4.5 (b)). Димеры
MinD и тетрамеры MinDE способны медленно диффундировать по мембране.
2. Далее, скопления белков MinD продолжают привлекать на мембрану из раствора другие
димеры MinD. Из-за того, что количество мембраносвязанных MinD увеличивается, увеличивается и концентрация MinE на мембране. Белки MinE, в свою очередь, стимулируют
гидролиз АТФ у MinD, и последние покидают мембрану. После этого, MinE могут связываться с другими свободными MinD поблизости и, таким образом, происходит накопление
MinE на мембране в этом месте (рис. 4.5 (c,d)).
3. Накопление MinD и MinE на мембране продолжается. Все больше димеров MinD покидают мембрану в результате гидролиза АТФ, стимулируемого MinE. Некоторые MinE также
начинают покидать мембрану, т.к. поблизости остается все меньше свободных MinD, с которыми можно заново связаться. Другие же димеры MinE перемещаются по направлению
движения волны, т.к. там находится еще достаточное количество свободных MinD (рис. 4.5
(e)). Таким образом, во фронте волны происходит постепенное накапливание белков, а в ее
тылу их быстрое открепление, что и приводит к движению белковой волны по мембране.
Рисунок 4.5: Этапы формирования белковой волны MinDE. На (e) красной рамкой выделен
участок, качественно соответствующий графику волны на рис. 4.4. Рисунок адаптирован
из [77].
4.2
Двумерная КА-модель ℵ2𝑑
𝑚𝑖𝑛 самоорганизации MinCDE (in
vitro)
В данном разделе предлагается КА-модель ℵ2𝑑
𝑚𝑖𝑛 процесса самоорганизации белков MinDE в
волны, спирали и некоторые другие паттерны, которые проявляются в экспериментах in vitro.
52
Выбор такой модели (in vitro) обусловлен тем, что результаты компьютерного моделирования можно сопоставить с данными, полученными из экспериментов в лабораторных условиях [77, 84–86]. КА-модель ℵ2𝑑
𝑚𝑖𝑛 основывается на предположении [77] о механизмах самоорганизации в MinCDE, которое гласит, что самоорганизация в системе MinCDE возникает в результате двух противоположных механизмов: коллективное привлечение белков MinD на мембрану,
и их открепление от мембраны в результате гидролиза АТФ, ускоряющееся за счет механизма
быстрого пересвязывания белков MinE со свободными MinD. Таким образом, результаты моделирования, представляемые в этом разделе, могут быть интерпретированы как аргументы в пользу
этого предположения.
Попытка моделирования самоорганизации белков MinDE была также предпринята в [77, 86,
87], где для этого использовалась система динамических уравнений. Однако представленная
там модель является полностью детерминированной и не учитывает явно механизм быстрого
пересвязывания белков MinE.
4.2.1
Описание КА-модели ℵ2𝑑
𝑚𝑖𝑛
КА-модель ℵ2𝑑
𝑚𝑖𝑛 моделирует процесс самоорганизации белков MinDE in vitro. В этой модели
не будет рассматриваться белок MinC, т.к., как было сказано выше, он не оказывает значительного влияния на осцилляцию, являясь лишь ее «пассажиром». Ячейки (𝑢,𝑖) ∈ Ω располагаются
на двумерной прямоугольной решетке размером 𝑊 ×𝐻. Множество имен 𝑋 = {𝑖 : 𝑖 = (𝑥,𝑦), 𝑥 =
1,...,𝑊, 𝑦 = 1,...,𝐻}, множество состояний 𝐴 = {⊘, 𝑀 𝑖𝑛𝐷, 𝑀 𝑖𝑛𝐸, 𝑀 𝑖𝑛𝐷𝐸}, где ⊘ означает, что
ячейка «пуста», а остальные состояния имитируют нахождение в данной ячейке одного из димеров 𝑀 𝑖𝑛𝐷, 𝑀 𝑖𝑛𝐸 или тетрамера 𝑀 𝑖𝑛𝐷𝐸, соответственно. В начальный момент времени все
ячейки (𝑢,𝑖) ∈ Ω имеют состояние ⊘ (что имитирует пустую мембрану). Предполагается, что
количество белков в растворе не ограничено.
𝛼 𝛼 𝛼 𝛼 𝛼
Правила переходов задаются композицией подстановок Θ2𝑑
𝑚𝑖𝑛 = 𝐶(𝜃1 ,𝜃2 ,𝜃3 ,𝜃4 ,𝜃5 ), которые
работают в асинхронном режиме. Символ 𝐶 в композиции означает режим выбора подстановки
для применения по состоянию, который определяет следующий порядок действий: равновероятно выбирается ячейка из массива Ω и для нее выбирается та подстановка, которая может быть
применена к ячейке согласно ее состоянию, после чего выбирается следующая ячейка и т.д. Если несколько подстановок могут быть применены к выбранной ячейке, то из них выбирается
𝑛
∑︀
одна согласно вероятности 𝑃𝑖 /
𝑃𝑗 , где 𝑛 – общее количество подходящих подстановок, 𝑃𝑗 𝑗=1
вероятность применения 𝑗-ой подстановки. Правила переходов Θ2𝑑
𝑚𝑖𝑛 используют три шаблона
– 𝑇1 , 𝑇2 , 𝑇3 , которые образуют три уровня соседства и представлены графически на рис. 4.6.
Рассмотрим подстановки подробнее.
1. Связывание 𝑀 𝑖𝑛𝐷 из раствора с мембраной. Если ячейка «пуста» (состояние ⊘), то с
вероятностью 𝑃1 она изменяет свое состояние на 𝑀 𝑖𝑛𝐷:
53
Рисунок 4.6: Графическое представление окрестностей КА-модели ℵ2𝑑
𝑚𝑖𝑛 .
𝜃1𝛼 (𝑖) :
𝑃
1
(⊘,𝑖) −−−−
−→ (𝑀 𝑖𝑛𝐷,𝑖).
(4.1)
2. Связывание 𝑀 𝑖𝑛𝐸 из раствора с мембраносвязанным 𝑀 𝑖𝑛𝐷. С мембраносвязанным
𝑀 𝑖𝑛𝐷 с некоторой вероятностью 𝑃2 может связаться 𝑀 𝑖𝑛𝐸 из раствора, образуя комплекс
𝑀 𝑖𝑛𝐷𝐸. Данное действие моделируется подстановкой:
𝜃2𝛼 (𝑖) :
𝑃
2
(𝑀 𝑖𝑛𝐷,𝑖) −−−−
−→ (𝑀 𝑖𝑛𝐷𝐸,𝑖).
(4.2)
3. Диффузия 𝑀 𝑖𝑛𝐷 на мембране. Диффузия моделируется при помощи наивной диффузии
(см. раздел 2.2.2). Димер 𝑀 𝑖𝑛𝐷 может продиффундировать только в пустую ячейку с состоянием ⊘, причем выполнение этого действия зависит от вероятности 𝑃3 :
𝜃3𝛼 (𝑖) :
𝑃
3
(𝑀 𝑖𝑛𝐷,𝑖),(⊘,𝑗) −−−−
−→ (⊘,𝑖),(𝑀 𝑖𝑛𝐷,𝑗).
(4.3)
где (⊘,𝑗) – пустая ячейка, выбранная из соседства 𝑇1 (𝑖); если в соседстве находятся
несколько пустых ячеек, то с равной вероятностью выбирается одна из них; если подобные
ячейки в соседстве 𝑇1 (𝑖) отсутствуют, то подстановка не применяется.
4. Диффузия 𝑀 𝑖𝑛𝐷𝐸 на мембране. Аналогично как и предыдущая подстановка, но выполняется для тетрамера 𝑀 𝑖𝑛𝐷𝐸 с вероятностью 𝑃4 :
𝜃4𝛼 (𝑖) :
𝑃
4
(𝑀 𝑖𝑛𝐷𝐸,𝑖),(⊘,𝑗) −−−−
−→ (⊘,𝑖),(𝑀 𝑖𝑛𝐷𝐸,𝑗).
(4.4)
5. Спонтанное открепление 𝑀 𝑖𝑛𝐷 от мембраны. С небольшой вероятностью 𝑃5 димер
𝑀 𝑖𝑛𝐷 может открепиться от мембраны обратно в раствор [87]:
𝜃5𝛼 (𝑖) :
𝑃
5
(𝑀 𝑖𝑛𝐷,𝑖) −−−−
−→ (⊘,𝑖).
(4.5)
54
6. Гидролиз АТФ в комплексе 𝑀 𝑖𝑛𝐷𝐸. После гидролиза АТФ, стимулированного 𝑀 𝑖𝑛𝐸, комплекс 𝑀 𝑖𝑛𝐷𝐸 распадается, димер 𝑀 𝑖𝑛𝐷 уходит в раствор, т.к. не может связываться с
мембраной без присутствия нуклеотида АТФ. 𝑀 𝑖𝑛𝐸, в свою очередь, может продолжать
оставаться на мембране некоторое время [87]. Это действие выполняется подстановкой:
𝜃6𝛼 (𝑖) :
𝑃
6
(𝑀 𝑖𝑛𝐷𝐸,𝑖) −−−−
−→ (𝑀 𝑖𝑛𝐸,𝑖).
(4.6)
7. "Пересвязывание" 𝑀 𝑖𝑛𝐸 с доступным 𝑀 𝑖𝑛𝐷. 𝑀 𝑖𝑛𝐸, оставшийся на мембране после распада комплекса 𝑀 𝑖𝑛𝐷𝐸, может связаться с другим мембраносвязанным 𝑀 𝑖𝑛𝐷 в некоторой
окрестности (механизм быстрого пересвязывания [77]), что моделируется подстановкой:
𝜃7𝛼 (𝑖) :
𝑃
7
(𝑀 𝑖𝑛𝐸,𝑖),(𝑀 𝑖𝑛𝐷,𝑗) −−−−
−→ (⊘,𝑖),(𝑀 𝑖𝑛𝐷𝐸,𝑗).
(4.7)
где (𝑀 𝑖𝑛𝐷,𝑗) – ячейка с состоянием 𝑀 𝑖𝑛𝐷, выбранная из объединенного соседства 𝑇1 (𝑖)∪
𝑇2 (𝑖) ∪ 𝑇3 (𝑖); если в этом объединении находятся несколько ячеек с состоянием 𝑀 𝑖𝑛𝐷,
то с равной вероятностью выбирается одна из них; если подобные ячейки в соседстве
отсутствуют, то подстановка не применяется (рис. 4.7).
8. Открепление 𝑀 𝑖𝑛𝐸 от мембраны. Если димеру 𝑀 𝑖𝑛𝐸 на мембране не удалось связаться
со свободным 𝑀 𝑖𝑛𝐷, то с вероятностью 𝑃8 он уходит обратно в раствор:
𝜃8𝛼 (𝑖) :
𝑃
8
(𝑀 𝑖𝑛𝐸,𝑖) −−−−
−→ (⊘,𝑖).
(4.8)
Рисунок 4.7: Графическое представление подстановки, моделирующей "пересвязывание"
димера 𝑀 𝑖𝑛𝐸 с мембраносвязанным 𝑀 𝑖𝑛𝐷 в окрестности 𝑇1 (𝑖) ∪ 𝑇2 (𝑖) ∪ 𝑇3 (𝑖).
Вероятности применения подстановок (4.1-4.8) вычисляются следующим образом:
𝑃1 = 𝑃𝑎𝑡𝑡𝑎𝑐ℎ + 𝑘𝑎𝑡𝑡𝑟 · 𝑁𝑇𝑀1𝑖𝑛𝐷 + 0.5 · 𝑘𝑎𝑡𝑡𝑟 · 𝑁𝑇𝑀2𝑖𝑛𝐷 ,
(4.9)
где 𝑃𝑎𝑡𝑡𝑎𝑐ℎ – вероятность связывания 𝑀 𝑖𝑛𝐷 из раствора с мембраной, 𝑘𝑎𝑡𝑡𝑟 – безразмерный коэффициент, отражающий силу коллективного привлечения 𝑀 𝑖𝑛𝐷 из раствора на мембрану, где уже
55
находятся другие мембраносвязанные 𝑀 𝑖𝑛𝐷, 𝑁𝑇𝑀1𝑖𝑛𝐷 – количество ячеек с состоянием 𝑀 𝑖𝑛𝐷 в
соседстве 𝑇1 , 𝑁𝑇𝑀2𝑖𝑛𝐷 – количество ячеек с состоянием 𝑀 𝑖𝑛𝐷 в соседстве 𝑇2 .
𝑃2 = 𝑃𝑏𝑖𝑛𝑑 ,
(4.10)
где 𝑃𝑏𝑖𝑛𝑑 – вероятность связывание MinE из раствора с мембраносвязанным MinD.
𝑀 𝑖𝑛𝐷
𝑃3 = 𝑃𝑑𝑖𝑓
− 𝑘𝑎𝑑ℎ · (𝑁𝑇𝑀1𝑖𝑛𝐷 + 𝑁𝑇𝑀1𝑖𝑛𝐷𝐸 ),
(4.11)
𝑀 𝑖𝑛𝐷
где 𝑃𝑑𝑖𝑓
– вероятность того, что димер 𝑀 𝑖𝑛𝐷 продиффундирует (коэффициент КА-диффузии
[88]), 𝑘𝑎𝑑ℎ – безразмерный коэффициент, отражающий силы сцепления соседних 𝑀 𝑖𝑛𝐷 между
собой, что препятствует диффузии; как было установлено в [77], при повышении концентрации
димеров 𝑀 𝑖𝑛𝐷 на мембране, их диффузия замедляется, 𝑁𝑇𝑀1𝑖𝑛𝐷 – количество ячеек с состоянием
𝑀 𝑖𝑛𝐷 в соседстве 𝑇1 , 𝑁𝑇𝑀1𝑖𝑛𝐷𝐸 - количество ячеек с состоянием 𝑀 𝑖𝑛𝐷𝐸 в соседстве 𝑇1 .
𝑀 𝑖𝑛𝐷𝐸
𝑃4 = 𝑃𝑑𝑖𝑓
− 𝑘𝑎𝑑ℎ · (𝑁𝑇𝑀1𝑖𝑛𝐷 + 𝑁𝑇𝑀1𝑖𝑛𝐷𝐸 ),
(4.12)
𝑀 𝑖𝑛𝐷𝐸
где 𝑃𝑑𝑖𝑓
– вероятность того, что тетрамер 𝑀 𝑖𝑛𝐷𝐸 продиффундирует.
𝑀 𝑖𝑛𝐷
𝑃5 = 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
− 𝑘𝑎𝑑ℎ · (𝑁𝑇𝑀1𝑖𝑛𝐷 + 𝑁𝑇𝑀1𝑖𝑛𝐷𝐸 ),
(4.13)
𝑀 𝑖𝑛𝐷
где 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
– вероятность спонтанного открепления 𝑀 𝑖𝑛𝐷 от мембраны; в [77] также было уста-
новлено, что при повышении концентрации димеров 𝑀 𝑖𝑛𝐷 на мембране, время их пребывания
на этой мембране также увеличивается, что и отражается безразмерным коэффициентом 𝑘𝑎𝑑ℎ .
𝑃6 = 𝑃ℎ𝑦𝑑𝑟𝑜𝑙 ,
(4.14)
где 𝑃ℎ𝑦𝑑𝑟𝑜𝑙 – вероятность гидролиза АТФ в комплексе 𝑀 𝑖𝑛𝐷𝐸.
𝑃7 = 𝑃𝑟𝑒𝑏𝑖𝑛𝑑 ,
(4.15)
где 𝑃𝑟𝑒𝑏𝑖𝑛𝑑 – вероятность пересвязывания 𝑀 𝑖𝑛𝐸, пребывающего на мембране, со свободным
𝑀 𝑖𝑛𝐷.
𝑀 𝑖𝑛𝐸
𝑃8 = 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
,
(4.16)
𝑀 𝑖𝑛𝐸
где 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
– вероятность ухода 𝑀 𝑖𝑛𝐸 обратно в раствор, если поблизости отсутствует свобод-
ный 𝑀 𝑖𝑛𝐷.
Следует заметить, что при расчете вышеперечисленных вероятностей, значения выходящие
из диапазон [0; 1] автоматически устанавливаются в 0 и 1, соответственно. Также отметим, что
одной ячейке, в зависимости от заданной комбинации модельных параметров, может соответствовать как один димер или тетрамер, так и некоторое их количество. Такая условность используется для получения качественной картины процесса. В связи с этим, модельные пара-
56
метры в этой работе являются безразмерными величинами. Соответствие реальным масштабам
осуществляется путем сопоставления данных (таких, как общая визуальная картина процесса, и
характер концентрации белков в движущейся волне), полученных в результате моделирования,
с данными из экспериментов in vitro в [77, 84–86].
4.2.2
Результаты моделирования ℵ2𝑑
𝑚𝑖𝑛
Параметры КА-модели ℵ2𝑑
𝑚𝑖𝑛 для вычислительного эксперимента были подобраны эмпирическим путем так, чтобы график концентрации белков 𝑀 𝑖𝑛𝐷 и 𝑀 𝑖𝑛𝐸 в движущейся волне,
полученный в результате моделирования, соответствовал графику из эксперимента in vitro в [77]
(рис. 4.8, для измерения концентрации, на мембране (или в массиве ячеек, в случае моделирования) бралась небольшая прямоугольная область на пути следования волны, в этой области в каждый момент времени ∆𝑡 замерялась концентрация белков). Следует отметить, что в
данном сравнении более важным являлось качественное соответствие графиков, что является
распространенной практикой в КА-моделировании для первоначального подбора приблизительных значений параметров [4]. Небольшой пик перед спадом концентрации 𝑀 𝑖𝑛𝐸 на рис. 4.8 (a)
обуславливается конформационными изменениями на мембране [77], что не было отражено в
разработанной модели.
Таким образом, были подобраны следующие параметры:
𝑀 𝑖𝑛𝐷
𝑀 𝑖𝑛𝐷𝐸
𝑀 𝑖𝑛𝐷
– Вероятности: 𝑃𝑎𝑡𝑎𝑐ℎ = 10−5 , 𝑃𝑏𝑖𝑛𝑑 = 10−2 , 𝑃𝑑𝑖𝑓
= 0,2, 𝑃𝑑𝑖𝑓
= 0,2, 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
= 10−3 ,
𝑀 𝑖𝑛𝐸
= 0,05, 𝑃ℎ𝑦𝑑𝑟𝑜𝑙 = 0,9, 𝑃𝑟𝑒𝑏𝑖𝑛𝑑 = 1,0.
𝑃𝑑𝑒𝑡𝑎𝑐ℎ
– Коэффициенты: 𝑘𝑎𝑡𝑡𝑟 = 2,6, 𝑘𝑎𝑑ℎ = 1,1.
– В начальный момент времени все ячейки были установлены в состояние ⊘ (мембрана
пуста).
(𝑎)
(𝑏)
Рисунок 4.8: Концентрация белков 𝑀 𝑖𝑛𝐷 и 𝑀 𝑖𝑛𝐸 в движущейся волне: a) эксперимент in
vitro [77]; b) вычислительный эксперимент.
57
На рис. 4.9 представлено сравнение последовательностей кадров, отражающих процесс
столкновения белковых волн в эксперименте in vitro [84] и в проведенном вычислительном эксперименте. В обоих случаях волны образовывались из небольших белковых пятен в местах,
которые впоследствии стали центрами окружностей, образованных расходящимися в разные
стороны белковыми волнами. Отметим, что волна на кадрах из вычислительного эксперимента
имеет не совсем гладкую форму в связи с дискретностью пространства и недостаточно мелким
шагом.
Рисунок 4.9: Столкновение белковых волн. Верхняя строка: кадры из эксперимента in vitro [84];
Нижняя: кадры из вычислительного эксперимента (решетка 300 × 300 ячеек). В обоих случаях
𝑀 𝑖𝑛𝐷 обозначен зеленым цветом, 𝑀 𝑖𝑛𝐷𝐸 – желтым, 𝑀 𝑖𝑛𝐸 – оранжевым.
На рис. 4.10 представлено сравнение белковых волн, полученных в эксперименте in vitro [77]
и в проведенном вычислительном эксперименте.
Еще одним часто встречающимся паттерном являются белковые спирали. На рис. 4.11 представлено сравнение белковых спиралей, полученных в вычислительном эксперименте и в эксперименте in vitro из [86]. Отметим, что центры спиралей не являются стационарными и сдвигаются со временем. Такие перемещения часто приводят к столкновениям центров разных спиралей,
в результате чего возникают хаотические колебания, из которых, однако, через некоторое время
вновь могут образоваться новые спирали.
Процесс подбора модельных параметров представляет собой весьма трудную задачу. Дополнительную сложность также вносит тот факт, что даже результаты реальных экспериментов in
vitro в разных работах отличаются между собой (например, длинами белковых волн, их скорость). Данное обстоятельство объясняется тем, что существует большое количество внешних
факторов, влияющих на результаты экспериментов (например, температура, неровности на подложке, имитирующей мембрану, метод маркировки белков для визуализации и т.п.). Таким образом, в данной работе было принято решение не ставить в соответствие модельные и физические
параметры, а ограничиться только качественной картиной процесса. На рис. 4.12 также представлены некоторые белковые паттерны, полученные в процессе подбора модельных парамет-
58
Рисунок 4.10: Белковые волны: (a) из эксперимента in vitro [77]; (b-d) вычислительный
эксперимент c решеткой 1200 × 1200 ячеек. Шкала масштаба соответствует 50 мкм в обоих
случаях.
ров. Отметим, что похожие паттерны также встречаются и в экспериментах in vitro (например,
в [84]).
4.3
Трехмерная КА-модель ℵ3𝑑
𝑚𝑖𝑛 самоорганизации MinDE на
поверхности растущей и делящейся клетки (in vivo)
В данном разделе предлагается трехмерная КА-модель ℵ3𝑑
𝑚𝑖𝑛 самоорганизации белков MinDE
на поверхности растущей и делящейся клетки (случай in vivo). В [2] уже рассматривались две
трехмерных модели самоорганизации MinDE на поверхности клетки, одна из которых была
построена на системе дифференциальных уравнений, а другая на стохастическом реакционнодиффузионном методе на основе частиц. Однако, обе предложенные модели использовали статичную поверхность, имитирующую форму клетки бактерии. Таким образом, деление клетки
во время самоорганизации белков MinDE не моделировалось, а рост был смоделирован лишь
в упрощенном одномерном случае. Кроме того, модель основанная на системе дифференци-
59
Рисунок 4.11: Белковые спирали: (a) из эксперимента in vitro [86]; (b, c) вычислительный
эксперимент c решеткой 512 × 256 ячеек; (d) вычислительном эксперимент с решеткой
768 × 384 ячеек.
альных уравнений была полностью детерминирована и показывала лишь усредненную картину
процесса моделирования. Реакционно-диффузионная же модель на основе частиц являлась стохастической, а одной модельной частице в ней соответствовала несколько реальных димеров,
но не был учтен механизм быстрого пересвязывания (см. 4.2). Предлагаемая же в этом разделе
КА-модель позволяет моделировать рост и деление клетки совместно с самоорганизацией белков MinDE и является более детальной: одной модельной частице соответствует один реальный
димер, а также принят во внимание механизм быстрого пересвязывания.
4.3.1
Описание ℵ3𝑑
𝑚𝑖𝑛
Трехмерная КА-модель ℵ3𝑑
𝑚𝑖𝑛 моделирует процесс самоорганизации белков MinDE in vivo. Белок MinC не берется во внимание по тем же причинам, что были обозначены в разделе 4.2.1 для
двумерного варианта модели. Ячейки (𝑢,𝑖)𝑚 ∈ Ω𝑚 упорядочены в трехмерную неоднородную
структуру, имитирующую внутреннюю поверхность мембраны клетки E. coli. Для построения
такой структуры использовался метод организации массива ячеек, предложенный в главе 3. Моделируемая поверхность Ω𝑚 клетки определяется тремя параметрами: высотой ℎ𝑐 цилиндра,
диаметром 𝑑𝑐 его основания, и длиной 𝑎𝑠 той полуоси сфероида, которая параллельна высоте
цилиндра (другая полуось, перпендикулярная высоте цилиндра, равна диаметру цилиндра, см.
3.1.2). Таким образом, параметр 𝑑𝑐 задает диаметр моделируемой клетки, 𝑎𝑠 - крутизну полюсов,
а сумма 2𝑎𝑠 + ℎ𝑐 - ее длину.
60
Рисунок 4.12: Некоторые примеры белковых паттернов, полученных в процессе подбора
модельных параметров.
В [2] было показано, что концентрация белков 𝑀 𝑖𝑛𝐷 и 𝑀 𝑖𝑛𝐸 в цитозоле клетки влияет на
паттерны, получаемые в результате самоорганизации MinDE. Поэтому, в модели ℵ3𝑑
𝑚𝑖𝑛 , помимо
самой поверхности Ω𝑚 моделируемой клетки, также имитируется и внутриклеточное пространство (цитозоль). Во внутриклеточном пространстве находятся не связанные с мембраной белки
MinD и MinE, которые активно диффундируют по этому пространству, а также могут уходить
из него на мембрану (на поверхность Ω𝑚 ) и возвращаться назад. Проведенные вычислительные
эксперименты показали, что моделирование такого пространства в трехмерном случае потребляет подавляющую часть вычислительных ресурсов (из-за активного моделирования диффузии), в
то же время не являясь определяющим фактором, который влияет на процесс самоорганизации
белков на поверхности Ω𝑚 мембраны. Другой вычислительный эксперимент, в котором внутриклеточное пространство было аппроксимировано криволинейной поверхностью в трехмерном пространстве, показал схожую картину процесса самоорганизации белков на поверхности
мембраны, при этом была достигнута приемлемая вычислительная нагрузка. В этом варианте
внутриклеточное пространство представлено в виде буферов Ω𝑑 и Ω𝑒 белков MinD и MinE, соответственно. Буферы Ω𝑑 и Ω𝑒 по своей внутренней организации являются копиями поверхности
Ω𝑚 так, что ячейки с одинаковыми именами (𝑢,𝑖)𝑑 ∈ Ω𝑑 и (𝑢,𝑖)𝑒 ∈ Ω𝑒 поставлены в соответствие
ячейке (𝑢,𝑖)𝑚 ∈ Ω𝑚 и могут быть рассмотрены как некоторая область внутриклеточного пространства над поверхностью мембраны в этом месте. На рис. 4.13 моделируемая поверхность и
два буфера представлены графически.
Для
ячеек
поверхности
Ω𝑚
определено
множество
состояний
𝐴𝑚
=
{⊘, 𝑀 𝑖𝑛𝐷, 𝑀 𝑖𝑛𝐸, 𝑀 𝑖𝑛𝐷𝐸}, где ⊘ означает пустую ячейку (поверхность мембраны в
этом месте не занята белками), а остальные состояния моделируют нахождение в ячейке одного
из димеров MinD, MinE или комплекса MinDE, соответственно. Множества состояний для ячеек
61
Рисунок 4.13: Графическое представление моделируемой поверхности и двух буферов.
буферов Ω𝑑 и Ω𝑒 определены на множестве натуральных чисел: 𝐴𝑑 = 𝐴𝑒 = N0 , что моделирует
возможность нахождения в одной ячейке буфера от нуля до нескольких димеров MinD и
MinE, соответственно. Таким способом имитируется некоторая глубина буферов, которая не
ограничена сверху2 в виду того, что проведенные вычислительные эксперименты показали,
что отдельные ячейки не достигают экстремально больших значений по причине достаточно
активной диффузии в буферах, сглаживающей любые пики в концентрации белков.
3𝑑
Правила переходов Θ3𝑑
𝑚𝑖𝑛 КА-модели ℵ𝑚𝑖𝑛 разделены на две группы:
𝛼 𝛼 𝛼 𝛼 𝛼 𝛼
Θ3𝑑
𝑟𝑒𝑎𝑐𝑡 = 𝐶(𝜃1 ,𝜃2 ,𝜃3 ,𝜃4 ,𝜃5 ,𝜃6 ) – подстановки реакции,
𝛼 𝛼 𝛼
Θ3𝑑
𝑑𝑖𝑓 𝑓 = 𝑃 (𝜃𝑚 ,𝜃𝑑 ,𝜃𝑒 ) – подстановки диффузии.
Группы подстановок реакции и диффузии применяются поочередно, моделируя взаимодействие белков с мембраной и друг с другом, а также их диффузию (как по мембране, так и в
цитозоли). Подстановки диффузии Θ3𝑑
𝑑𝑖𝑓 𝑓 работают в асинхронном режиме и применяются па𝛼
раллельно: 𝜃𝑚
к ячейкам поверхности Ω𝑚 , 𝜃𝑑𝛼 к ячейкам буфера Ω𝑑 , и 𝜃𝑒𝛼 к ячейкам буфера Ω𝑒 .
При этом подстановки 𝜃𝑑𝛼 и 𝜃𝑒𝛼 применяются к ячейкам большее количество раз, чем подстанов𝛼
ка 𝜃𝑚
, имитируя тем самым более активную диффузию белков в цитозоли, чем на мембране (на
поверхности Ω𝑚 ).
Рассмотрим подстановки группы диффузии Θ3𝑑
𝑑𝑖𝑓 𝑓 подробно:
1. Диффузия димеров 𝑀 𝑖𝑛𝐷 и тетрамеров 𝑀 𝑖𝑛𝐷𝐸 на мембране. Выполняется для ячеек
поверхности Ω𝑚 и моделируется при помощи трехмерной наивной диффузии, принцип
действия которой аналогичен двумерному варианту (см. 2.2.2): радиус соседства 𝑟𝑚 определяет сферу вокруг заданной ячейки (𝑢,𝑖)𝑚 ; те ячейки, чьи центры попадают в сферу,
составляют соседство 𝑇 ((𝑢,𝑖)𝑚 )𝑟 ; из этого соседства с равной вероятностью выбирается ячейка (𝑣,𝑗)𝑚 и заданная ячейка (𝑢,𝑖)𝑚 с вероятностью 𝑃𝑚 обменивается с ней своим
2
Кроме технического ограничения unsigned short переменной
62
𝛼
состоянием (абстрактная частица диффундирует). В подстановке 𝜃𝑚
димер 𝑀 𝑖𝑛𝐷 или тет-
рамер 𝑀 𝑖𝑛𝐷𝐸 могут продиффундировать только в пустую ячейку (с состоянием ⊘):
𝛼
(𝑖) :
𝜃𝑚
𝑃
𝑚
−→ (⊘,𝑖)𝑚 ,(𝑀 𝑖𝑛𝐷/𝑀 𝑖𝑛𝐷𝐸,𝑗)𝑚 .
(𝑀 𝑖𝑛𝐷/𝑀 𝑖𝑛𝐷𝐸,𝑖)𝑚 ,(⊘,𝑗)𝑚 −−−−
(4.17)
где (𝑀 𝑖𝑛𝐷/𝑀 𝑖𝑛𝐷𝐸,𝑖) – ячейка с состоянием MinD или MinDE, (⊘,𝑗) – пустая ячейка, выбранная из соседства 𝑇 ((𝑢,𝑖)𝑚 )𝑟 заданного радиуса 𝑟𝑚 ; если в соседстве находятся
несколько пустых ячеек, то равновероятно выбирается любая из них; если пустые ячейки
в заданном соседстве отсутствуют, то подстановка не применяется.
2. Диффузия димеров 𝑀 𝑖𝑛𝐷 в цитозоле. Выполняется в буфере Ω𝑑 и моделируется при помощи целочисленной трехмерной диффузии [89]. Как и в случае с наивной диффузией, для
заданной ячейки (𝑢,𝑖) случайным образом из ее соседства выбирается ячейка (𝑣,𝑗); далее,
ячейки обмениваются своими целочисленными состояниями согласно формуле:
⎧
⎨𝑢(𝑡 + 1) = 0,4 · 𝑢(𝑡) + 0,6 · 𝑣(𝑡),
(4.18)
⎩𝑣(𝑡 + 1) = 0,4 · 𝑣(𝑡) + 0,6 · 𝑢(𝑡).
Из-за уже упомянутой высокой активности диффузии белков в цитозоле, был проведен
ряд вычислительных экспериментов, в которых была поставлена задача исследовать дальнейшее уменьшение вычислительной нагрузки при моделировании диффузии в буферах
Ω𝑑 и Ω𝑒 . Увеличение радиуса 𝑟𝑑 для определения соседства показало, что в этом случае
диффузия происходит гораздо активней, т.к. позволяет ячейкам обмениваться состояниям
на больших дистанциях (т.е. абстрактная частица за один переход может преодолеть более длинное расстояние) и сокращает количество итераций, необходимых для выполнения
одной фазы диффузии. Однако, увеличение радиуса соседства также ведет к увеличению
затрат при расчете соседства (алгоритм расчета соседства описан в 3.2), что нивелирует
снижение вычислительной нагрузки от уменьшения количества необходимых итераций.
Чтобы сохранить вычислительные преимущества от уменьшения количества итераций при
увеличении радиуса соседства, но избежать затрат на расчет соседства большого радиуса, было решено ввести минимальный 𝑟𝑑𝑚𝑖𝑛 и максимальный 𝑟𝑑𝑚𝑎𝑥 радиусы соседства, что
позволило не рассчитывать соседство непосредственно вблизи заданной ячейки. Таким образом, подстановка, моделирующая диффузию димеров 𝑀 𝑖𝑛𝐷 в цитозоле, выглядит следующим образом:
𝜃𝑑𝛼 (𝑖) :
𝑃
𝑑
(𝑢(𝑡),𝑖)𝑑 ,(𝑣(𝑡),𝑗)𝑑 −−−−
−→ (𝑢(𝑡 + 1),𝑖)𝑑 ,(𝑣(𝑡 + 1),𝑗)𝑑 .
где (𝑣,𝑗)𝑑 – ячейка, выбранная из соседства, ограниченного радиусами 𝑟𝑑𝑚𝑖𝑛 и 𝑟𝑑𝑚𝑎𝑥 ,
𝑃𝑑 – вероятность применения подстановки.
(4.19)
63
3. Диффузия димеров 𝑀 𝑖𝑛𝐸 в цитозоле. Аналогично предыдущей подстановке, но выполняется в буфере Ω𝑒 , радиусами соседства 𝑟𝑒𝑚𝑖𝑛 и 𝑟𝑒𝑚𝑎𝑥 , и вероятностью 𝑃𝑒 :
𝜃𝑒𝛼 (𝑖) :
𝑃
𝑒
−→ (𝑢(𝑡 + 1),𝑖)𝑒 ,(𝑣(𝑡 + 1),𝑗)𝑒 .
(𝑢(𝑡),𝑖)𝑒 ,(𝑣(𝑡),𝑗)𝑒 −−−−
(4.20)
Правила группы реакции Θ3𝑑
𝑟𝑒𝑎𝑐𝑡 применяются в асинхронном режиме с выбором подстановки
по состоянию (см. 4.2.1). Определяющими ячейками для данной группы подстановок являются
ячейки поверхности Ω𝑚 , что означает следующее: подстановка применяется непосредственно
к случайно выбранной ячейке (𝑢,𝑖)𝑚 ∈ Ω𝑚 , при этом результат применения этой подстановки
может воздействовать на ячейку (или ее соседство) с тем же именем из буфера, т.е. на (𝑢,𝑖)𝑑 ∈ Ω𝑑
или (𝑢,𝑖)𝑒 ∈ Ω𝑒 . Рассмотрим подстановки Θ3𝑑
𝑟𝑒𝑎𝑐𝑡 подробно:
1. Связывание димера 𝑀 𝑖𝑛𝐷 из цитозоли с мембраной. В пустую ячейку (⊘,𝑖)𝑚 ∈ Ω𝑚 с вероятностью 𝑃1 может перейти димер 𝑀 𝑖𝑛𝐷 из буфера Ω𝑑 . Ячейка (𝑛,𝑗)𝑑 с состоянием 𝑛 > 0,
из который переходит димер, выбирается случайно в буфере Ω𝑑 из некоторого соседства
ячейки (𝑣,𝑖)𝑑 ∈ Ω𝑑 (ячейка буфера, соответствующая заданной ячейке (⊘,𝑖)𝑚 поверхности Ω𝑚 ). При этом, целочисленное состояние выбранной ячейки (𝑛,𝑗)𝑑 уменьшается на 1
(абстрактная частица переходит из цитозоли на мембрану):
𝜃1𝛼 (𝑖) :
𝑃
1
(⊘,𝑖)𝑚 ,(𝑛,𝑗)𝑑 −−−−
−→ (𝑀 𝑖𝑛𝐷,𝑖)𝑚 , (𝑛 − 1,𝑗)𝑑 .
(4.21)
где (𝑛,𝑗)𝑑 ∈ 𝑇 ((𝑣,𝑖)𝑑 )𝑟 – ячейка буфера Ω𝑑 с состоянием 𝑛 > 0, выбранная случайным
образом из соседства 𝑇 ((𝑣,𝑖)𝑑 )𝑟 ,
𝑇 ((𝑣,𝑖)𝑑 )𝑟 – соседство радиуса 𝑟 ячейки (𝑣,𝑖)𝑑 ∈ Ω𝑑 .
2. Связывание димера 𝑀 𝑖𝑛𝐸 из цитозоли с мембраносвязанным 𝑀 𝑖𝑛𝐷. В ячейке
(𝑀 𝑖𝑛𝐷,𝑖)𝑚 ∈ Ω𝑚 , которая содержит абстрактный мембраносвязанный димер 𝑀 𝑖𝑛𝐷, может образоваться комплекс 𝑀 𝑖𝑛𝐷𝐸 с некоторой вероятностью 𝑃2 . Для этого, аналогично
предыдущей подстановке 𝜃1𝛼 , в некотором соседстве ячейки (𝑣,𝑖)𝑒 буфера Ω𝑒 равновероятно
выбирается ячейка (𝑛,𝑗)𝑒 с состоянием 𝑛 > 0. Данное действие моделируется подстановкой:
𝜃2𝛼 (𝑖) :
𝑃
2
(𝑀 𝑖𝑛𝐷,𝑖)𝑚 ,(𝑛,𝑗)𝑒 −−−−
−→ (𝑀 𝑖𝑛𝐷𝐸,𝑖)𝑚 , (𝑛 − 1,𝑗)𝑒 .
(4.22)
где (𝑛,𝑗)𝑒 ∈ 𝑇 ((𝑣,𝑖)𝑒 )𝑟 – ячейка буфера Ω𝑒 с состоянием 𝑛 > 0, выбранная равновероятно
из соседства 𝑇 ((𝑣,𝑖)𝑒 )𝑟 ,
𝑇 ((𝑣,𝑖)𝑒 )𝑟 – соседство радиуса 𝑟 ячейки (𝑣,𝑖)𝑒 ∈ Ω𝑒 .
3. Спонтанное открепление димера 𝑀 𝑖𝑛𝐷 от мембраны назад в цитозоль. Если подстановка
𝜃2𝛼 не была применена, то с небольшой вероятностью 𝑃3 димер 𝑀 𝑖𝑛𝐷 может открепиться
от мембраны и уйти обратно в цитозоль. В этом случае, ячейка (𝑀 𝑖𝑛𝐷,𝑖)𝑚 ∈ Ω𝑚 меняет
свое состояние на ⊘, а в соответствующей ячейке (𝑛,𝑖)𝑑 буфера Ω𝑒 происходит инкремент
64
𝑛 + 1 ее целочисленного состояния (димер 𝑀 𝑖𝑛𝐷 переходит назад в буфер Ω𝑑 ). Следует заметить, что в этом случае димер переходит непосредственно в ячейку (𝑛,𝑖)𝑑 , а не в случайно выбранную ячейку ее соседства. Это сделано для уменьшения нагрузки от вычисления
соседства, и, в отличие от предыдущих подстановок, слабо влияет на стохастичность процесса моделирования (из-за последующей далее достаточно активной диффузии). Данное
действие моделируется подстановкой:
𝜃3𝛼 (𝑖) :
𝑃
3
(𝑀 𝑖𝑛𝐷,𝑖)𝑚 ,(𝑛,𝑖)𝑑 −−−−
−→ (⊘,𝑖)𝑚 ,(𝑛 + 1,𝑖)𝑑 .
(4.23)
4. Распад комплекса 𝑀 𝑖𝑛𝐷𝐸 в результате гидролиза АТФ. Данное действие происходит с
вероятностью 𝑃4 , после чего димер 𝑀 𝑖𝑛𝐷 уходит с поверхности Ω𝑚 назад в буфер Ω𝑑 ,
т.к. не может быть связан с мембраной без присутствия нуклеотида АТФ. Как и в предыдущей подстановке 𝜃3𝛼 , димер 𝑀 𝑖𝑛𝐷 переходит непосредственно в ячейку (𝑛,𝑖)𝑑 буфера
Ω𝑑 . В свою очередь, димер 𝑀 𝑖𝑛𝐸 остается на мембране и может связаться с другим мембраносвязанным 𝑀 𝑖𝑛𝐷. Подстановка, выполняющая распад комплекса 𝑀 𝑖𝑛𝐷𝐸, выглядит
следующим образом:
𝜃4𝛼 (𝑖) :
𝑃
4
(𝑀 𝑖𝑛𝐷𝐸,𝑖)𝑚 ,(𝑛,𝑖)𝑑 −−−−
−→ (𝑀 𝑖𝑛𝐸,𝑖)𝑚 ,(𝑛 + 1,𝑖)𝑑 .
(4.24)
5. "Пересвязывание" димера 𝑀 𝑖𝑛𝐸 с доступным мембраносвязанным 𝑀 𝑖𝑛𝐷. После распада
комплекса 𝑀 𝑖𝑛𝐷𝐸, оставшийся на мембране димер 𝑀 𝑖𝑛𝐸 с вероятностью 𝑃5 связывается
с доступным мембраносвязанным 𝑀 𝑖𝑛𝐷 в некотором своем соседстве (механизм быстрого
пересвязывания [77]). Данное действие моделируется подстановкой:
𝜃5𝛼 (𝑖) :
𝑃
5
(𝑀 𝑖𝑛𝐸,𝑖)𝑚 ,(𝑀 𝑖𝑛𝐷,𝑗)𝑚 −−−−
−→ (⊘,𝑖)𝑚 ,(𝑀 𝑖𝑛𝐷𝐸,𝑗)𝑚 .
(4.25)
где (𝑀 𝑖𝑛𝐷,𝑗)𝑚 ∈ 𝑇 ((𝑢,𝑖)𝑚 )𝑟 – ячейка с состоянием 𝑀 𝑖𝑛𝐷, выбранная равновероятно из
соседства 𝑇 ((𝑢,𝑖)𝑚 )𝑟 ; если ячейки с состоянием 𝑀 𝑖𝑛𝐷 отсутствуют в соседстве, то подстановка не применяется,
𝑇 ((𝑢,𝑖)𝑚 )𝑟 – соседство радиуса 𝑟 ячейки (𝑢,𝑖)𝑚 ∈ Ω𝑚 .
6. Открепление димера 𝑀 𝑖𝑛𝐸 от мембраны назад в цитозоль. Если предыдущая подстановка 𝜃5𝛼 (𝑖) не применяется, то оставшийся на мембране димер 𝑀 𝑖𝑛𝐸 с вероятностью 𝑃5
уходит обратно в буфер Ω𝑒 . Подстановка, моделирующая это действие, выглядит следующим образом:
𝜃6𝛼 (𝑖) :
𝑃
5
(𝑀 𝑖𝑛𝐸,𝑖)𝑚 ,(𝑛,𝑖)𝑒 −−−−
−→ (⊘,𝑖)𝑚 ,(𝑛 + 1,𝑖)𝑒 .
(4.26)
Подстановки 4.21-4.26 группы реакции Θ3𝑑
𝑟𝑒𝑎𝑐𝑡 схожи с подстановками 4.1-4.8, которые были
рассмотрены для двумерной модели ℵ2𝑑
𝑚𝑖𝑛 , однако отличаются дополнительным взаимодействием
65
с буферами и способом вычисления вероятностей. В формулах расчета некоторых вероятностей
также могут использоваться переменные, выражающие концентрацию некоторых белков в соседстве заданного радиуса. Каждая такая концентрация рассчитывается по формуле:
𝐶𝑟𝑎 =
𝑁𝑟𝑎
,
|𝑇𝑟 |
(4.27)
где 𝐶𝑟𝑎 – концентрация белка 𝑎 в соседстве радиуса 𝑟 (подмножество ячеек, чьи центры попали
в сферу радиуса 𝑟, см. 3.2),
𝑁𝑟𝑎 – количество ячеек с состоянием 𝑎 в соседстве радиуса 𝑟,
|𝑇𝑟 | – мощность соседства (общее количество ячеек в соседстве 𝑇𝑟 ).
Здесь, как и в предыдущей модели ℵ2𝑑
𝑚𝑖𝑛 , если при вычислении вероятности ее значение выходит из диапазона [0; 1], то это значение автоматически устанавливаются в 0 и 1, соответственно.
Теперь рассмотрим вероятности подстановок группы реакции Θ3𝑑
𝑟𝑒𝑎𝑐𝑡 подробно:
𝑃1 = 𝐶𝑟𝑑,𝐷 · (𝑃𝑎𝑡𝑡𝑎𝑐ℎ + 𝑘𝑎𝑡𝑡𝑟 · 𝐶𝑟𝑚,𝐷 ),
(4.28)
где 𝑃𝑎𝑡𝑡𝑎𝑐ℎ – вероятность связывания 𝑀 𝑖𝑛𝐷 с мембраной,
𝑘𝑎𝑡𝑡𝑟 – безразмерный коэффициент, отражающий силу коллективного привлечения 𝑀 𝑖𝑛𝐷 на мембрану, где уже находятся другие мембраносвязанные 𝑀 𝑖𝑛𝐷,
𝐶𝑟𝑑,𝐷 – концентрация белка 𝑀 𝑖𝑛𝐷 в соседстве радиуса 𝑟 в циотозоле (в буфере Ω𝑑 ),
𝐶𝑟𝑚,𝐷 – концентрация белка 𝑀 𝑖𝑛𝐷 в соседстве радиуса 𝑟 на мембране (на поверхности Ω𝑚 ).
𝑃2 = 𝑃𝑏𝑖𝑛𝑑 · 𝐶𝑟𝑒,𝐸 ,
(4.29)
где 𝑃𝑏𝑖𝑛𝑑 – вероятность связывание 𝑀 𝑖𝑛𝐸 из цитозоли с мембраносвязанным 𝑀 𝑖𝑛𝐷,
𝐶𝑟𝑒,𝐸 – концентрация белка 𝑀 𝑖𝑛𝐸 в соседстве радиуса 𝑟 в циотозоле (в буфере Ω𝑒 ).
𝑀 𝑖𝑛𝐷
𝑃3 = 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
,
(4.30)
𝑀 𝑖𝑛𝐷
где 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
– вероятность спонтанного открепления 𝑀 𝑖𝑛𝐷 от мембраны.
𝑃4 = 𝑃ℎ𝑦𝑑𝑟𝑜𝑙 ,
(4.31)
где 𝑃ℎ𝑦𝑑𝑟𝑜𝑙 – вероятность гидролиза АТФ в комплексе 𝑀 𝑖𝑛𝐷𝐸.
𝑃5 = 𝑃𝑟𝑒𝑏𝑖𝑛𝑑 ,
(4.32)
где 𝑃𝑟𝑒𝑏𝑖𝑛𝑑 – вероятность повторного связывания 𝑀 𝑖𝑛𝐸, оставшегося на мембране после распада
комплекса 𝑀 𝑖𝑛𝐷𝐸, с другим мембраносвязанным 𝑀 𝑖𝑛𝐷.
𝑀 𝑖𝑛𝐸
𝑃6 = 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
,
(4.33)
66
𝑀 𝑖𝑛𝐸
где 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
– вероятность открепления 𝑀 𝑖𝑛𝐸 от мембраны, если поблизости отсутствует свобод-
ный мембраносвязанные 𝑀 𝑖𝑛𝐷.
4.3.2
Результаты моделирования ℵ3𝑑
𝑚𝑖𝑛
Для проверки разработанной КА-модели ℵ3𝑑
𝑚𝑖𝑛 был проведен ряд вычислительных экспериментов, в которых ставилась задача воспроизвести различное поведение белков MinDE во время
их самоорганизации в клетке бактерии. Основным критерием, по которому осуществлялся подбор модельных параметров, являлась визуальная схожесть процесса моделирования с результатами наблюдений in vivo [80, 81, 83], а также с результатами моделирования на основе систем
дифференциальных уравнений [2].
Вычислительный эксперимент 1. Целью данного эксперимента было получение белковых
волн MinD на поверхности мембраны, которые периодически появляются на разных полюсах
клетки E. coli, оставляя слабую концентрацию белка MinD (а значит и концентрацию MinC –
ингибитора сборки FtsZ полимеров) в геометрической середине клетки (рис. 4.2). В [2] также
утверждается, что такие белковые волны являются стоячими. Желаемое поведение модельных
белков было получено со следующими параметрами:
– Геометрия поверхности (в ячейках): 𝑑𝑐 = 80, ℎ𝑐 = 240, 𝑎𝑠 = 40.
– Размеры моделируемой клетки3 : длина ≈ 2560 нм, диаметр ≈ 640 нм.
– Концентрация белков в буферах4 : 𝑀 𝑖𝑛𝐷 = 0,5, 𝑀 𝑖𝑛𝐸 = 0,2.
– Параметры подстановок диффузии: 𝑃𝑚 = 0,9, 𝑃𝑑 = 1,0, 𝑃𝑒 = 1,0, 𝑟𝑚 = 1, 𝑟𝑑𝑚𝑖𝑛 = 80,
𝑟𝑑𝑚𝑎𝑥 = 120, 𝑟𝑒𝑚𝑖𝑛 = 80, 𝑟𝑒𝑚𝑎𝑥 = 120.
𝑀 𝑖𝑛𝐷
– Параметры подстановок реакции: 𝑃𝑎𝑡𝑡𝑎𝑐ℎ = 0,01, 𝑘𝑎𝑡𝑡𝑟 = 5,1, 𝑃𝑏𝑖𝑛𝑑 = 0,1, 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
= 0,0001,
𝑀 𝑖𝑛𝐸
𝑃ℎ𝑦𝑑𝑟𝑜𝑙 = 1.0, 𝑃𝑟𝑒𝑏𝑖𝑛𝑑 = 0,99, 𝑃𝑑𝑒𝑡𝑎𝑐ℎ
= 0,5, 𝑟 = 8 (радиус соседства для всех подстановок
реакции).
– В начальный момент времени все ячейки Ω𝑚 установлены в состояние ⊘ (мембрана пуста).
Результаты вычислительного эксперимента 1 представлены на рис. 4.14, на котором можно
видеть стоячие белковые волны, осциллирующие от одного полюса клетки к другому.
Вычислительный эксперимент 2. Цель следующего эксперимента заключалась в получении
стоячих волн с двумя центрами, которые появляются в аномально длинных мутантных клетках
E. coli (такое случается, если по каким-то причинам у клетки отсутствует фаза деления) [2]. Параметры эксперимента 2 соответствуют параметрам из эксперимента 1 за исключением размеров
моделируемой клетки:
3
Приблизительно, если принять за ширину ячейки 8 нм; такое значение было вычислено косвенно из максимальной концентрации димеров MinD на 1 мкм2 поверхности
4
Сумма целочисленных состояний всех ячеек в буфере деленная на количество ячеек
67
Рисунок 4.14: Результаты вычислительного эксперимента 1: стоячие белковые волны.
– Геометрия поверхности (в ячейках): 𝑑𝑐 = 80, ℎ𝑐 = 440, 𝑎𝑠 = 40.
– Размеры моделируемой клетки: длина ≈ 4160 нм, диаметр ≈ 640 нм.
Результаты эксперимента 2 представлены на рис. 4.15, на котором видно стоячие белковые
волны с двумя центрами, периодически меняющими свою позицию. Схожее поведение было
получено также в [2], где модель была описаны при помощи системы дифференциальных уравнений.
Вычислительный эксперимент 3. Цель данного эксперимента заключалась в том, чтобы проследить как изменяется поведение белков MinDE во время роста и последующего деления моделируемой клетки E. coli. Следует понимать, что этот процесс моделировался весьма условно,
без вовлечения других важных механизмов, участвующих в нем. Рост и деление моделируются
в соответствии с подходом, описанном в разделе 3.3. Скорость моделирования роста и деления
были подобраны исходя из того, что среднее время деления клетки E. coli занимает ≈ 18 − 20
минут, а один осцилляционный цикл MinDE примерно равен ≈ 40 − 60 секундам [81, 82]. Таким
образом, за один цикл деления клетки белковая волна MinDE должна осциллировать примерно
≈ 25 раз. Параметры модели (самоорганизации) идентичны параметрам из эксперимента 1, за
исключением начальных размеров клетки:
– Начальная геометрия поверхности (в ячейках): 𝑑𝑐 = 80, ℎ𝑐 = 180, 𝑎𝑠 = 40.
68
Рисунок 4.15: Результаты вычислительного эксперимента 2: стоячие белковые волны с двумя
центрами.
– Начальные размеры родительской клетки: длина ≈ 2080 нм , диаметр ≈ 640 нм.
На конец моделирования было получено две дочерних клетки со следующими размерами:
– Длина первой дочерней клетки: ≈ 1456 нм, 182 ячейки общей длины (от полюса да полюса).
– Длина второй дочерней клетки: ≈ 1440 нм, 180 ячейки общей длины.
Таким образом, за весь процесс моделирования в поверхность было вставлено более 103
колец (103 явно видимым кольца, повлекших изменение длины изначальной поверхности, и
несколько десятков вложенных колец, участвующих в формирование полюсов дочерних клеток).
Результаты эксперимента 3 представлены графически на рис. 4.16. На последних двух кадрах
дочерние клетки уже окончательно отделены друг от друга мембраной и видно, как в каждой из
них начинают формироваться новые стоячие волны.
Еще два дополнительных эксперимента были проведены, чтобы получить поведение, иногда
встречаемое у некоторых мутантных клеток. В вычислительном эксперименте 4, чьи результаты представлены на рис. 4.17, были получены движущиеся белковые волны, которые могут
69
возникать у реальных клеток E. coli с повышенной экспрессией белков MinDE. Параметры эксперимента 4 соответствуют параметрам из эксперимента 1 за исключением значений начальной
концентрации в буферах:
– Концентрация белков в буферах: 𝑀 𝑖𝑛𝐷 = 1,0, 𝑀 𝑖𝑛𝐸 = 1,0.
В вычислительном эксперименте 5 моделировалась клетка в форме шара. Полученный в этом
случае паттерн самоорганизации MinDE можно классифицировать как белковую спираль (рис.
4.18). Параметры эксперимента 5 соответствуют параметрам из эксперимента 1 за исключением
геометрии клетки и коэффициентам диффузии в буферах:
– Геометрия поверхности (в ячейках): 𝑑𝑐 = 140, ℎ𝑐 = 2, 𝑎𝑠 = 70.
– Размеры моделируемой клетки: длина ≈ 1136 нм, диаметр ≈ 1120 нм.
– Параметры подстановок диффузии:𝑟𝑑𝑚𝑖𝑛 = 50, 𝑟𝑑𝑚𝑎𝑥 = 55, 𝑟𝑒𝑚𝑖𝑛 = 50, 𝑟𝑒𝑚𝑎𝑥 = 55.
4.4
Выводы к главе
В Главе 4 были получены следующие результаты:
1. Разработана двумерная КА-модель ℵ2𝑑
𝑚𝑖𝑛 процесса самоорганизации белков MinDE в случае
in vitro. В результате вычислительных экспериментов были получены белковые волны, спирали и некоторые другие паттерны, которые проявляются в лабораторных экспериментах
in vitro. Модель обладает статичной структурой пространства и может быть рассмотрена
как промежуточный шаг на пути к трехмерной КА-модели (случай in vivo), служащий для
побора и отработки необходимых КА-правил.
2. Разработана трехмерная КА-модель ℵ3𝑑
𝑚𝑖𝑛 процесса самоорганизации белков MinDE на поверхности клетки E. coli (случай in vivo). Модель основана на методе предложенном в
главе 3, что позволило организовать массив ячеек КА в виде трехмерной поверхности,
имитирующей форму клетки E. coli. В результате моделирования были получены стоячие
белковые волны MinDE на поверхности клетки, что соответствует наблюдениям в лабораторных условиях [80, 81, 83]. Также были получены и другие белковые паттерны MinDE,
встречаемые у мутантных клеток E. coli: стоячие волны с двумя центрами в аномально
длинных клетках, бегущие волны в клетках с повышенной экспрессией белков MinDE и
белковые спирали в клетках формы шара.
3. При помощи трехмерной КА-модели ℵ3𝑑
𝑚𝑖𝑛 также был смоделирован процесс роста и деления клетки E. coli во время самоорганизации белков MinDE. В проведенном вычислительном эксперименте наблюдался процесс развития клетки E. coli, в результате которого из
одной родительской клетки было получено две дочерние независимые клетки. Кроме того,
70
во время всего процесса роста и деления белки MinDE самоорганизовывались в стоячие
белковые волны, осциллирующие от одного полюса клетки к другом, сначала в родительской клетке, а после деление – независимо в каждой дочерней клетке.
71
Рисунок 4.16: Результаты вычислительного эксперимента 3: рост и деление клетки E. coli во
время самоорганизации белков MinDE. Кадры не являются последовательными, а представляют
собой выборку некоторых промежуточных результатов. На двух нижних кадрах две дочерние
клетки уже разделены мембраной и могут рассматриваться как отдельные клетки.
72
Рисунок 4.17: Результаты вычислительного эксперимента 4: движущиеся белковые волны.
Рисунок 4.18: Результаты вычислительного эксперимента 5: белковая спираль в клетке формы
шара.
73
Глава 5
Программный комплекс
Для программной реализации разработанных КА-моделей и проведения вычислительных
экспериментов, был разработан программный комплекс, к которому, на этапе проектирования,
были выдвинуты следующие требования:
– Полная реализация всех особенностей разработанных КА-моделей.
– Возможность поитерационного выполнения процесса моделирования.
– Возможность прерывать, делать паузу и возобновлять процесс моделирования.
– Возможность задавать начальные условия моделирования без перекомпиляции программы.
– Возможность изменять модельные параметры в процессе выполнения программы.
– Возможность сбора статистических данных о процессе моделирования.
– Поитерационная визуализация процесса моделирования (в режиме реального времени).
– Возможность визуализации статистических данных в виде графиков и диаграмм (в режиме
реального времени).
– Программный комплекс должен иметь графический интерфейс для ввода модельных параметров и задания начальных условий.
– Применяемые для разработки языки, технологии и библиотеки должны обеспечивать максимальную производительность исполняемого кода.
– Программный код должен быть кроссплатформенным.
– Применяемые в коде сторонние библиотеки должны быть также кроссплатформенны и
открыты (open source).
– Ядро программного комплекса должно быть реализовано в виде библиотеки, с возможностью его дальнейшего расширения на другие КА-модели.
74
5.1
Архитектура программного комплекса
Архитектура программного комплекса изображена графически на рис. 5.1 и представляет
собой пять взаимосвязанных модулей:
Рисунок 5.1: Схематическое представление архитектуры программного комплекса.
– Ядро. Содержит классы, которые определяют базовые структуры данных для представления КА-моделей и основные алгоритмы их функционирования. Также содержит низкоуровневые функции рендеринга сцены (как для визуализации процесса моделирования, так и
для отображения статистических данных в виде графиков).
– Модель. Описывает конкретную реализацию КА-модели и ее правил переходов. Модель
строится из базовых конструкций и алгоритмов, предоставляемых ядром.
– Контроллер. Отвечает за ввод и вывод данных, а также предоставляет пользователю управление над процессом моделирования.
– Визуализатор. Отвечает за визуализацию процесса моделирования и статистических данных. Позволяет пользователю (через контроллер) настраивать параметры визуализации
(цветовые схемы, масштаб, детализацию картины и др.). Взаимодействует с модулем ядра
для доступа к низкоуровневым функциям рендеринга.
– Модуль статистики. Отвечает за сбор и обработку необходимых статистических данных.
Передает обработанные данные в визуализатор для дальнейшего построения графиков.
Позволяет пользователю (через контроллер) включать и отключать сбор интересующей
его информации, а также управлять параметрами ее визуализации.
75
5.2
5.2.1
Программная реализация
Используемые технологии
В качестве языка разработки был выбран язык С++. Такой выбор обусловлен низкоуровневыми возможностями C++ по работе с памятью, что позволяет значительно оптимизировать
скорость выполнения программы с учетом специфики ее архитектуры. Язык С++ также обладает богатой функциональностью и гибкостью, является кроссплатформенным и предоставляет
максимальную производительность среди компилируемых высокоуровневых языков программирования [90], что является критически важным при разработке программ для моделирования.
Кроме того, механизм шаблонов, предоставляемый языком С++, позволяет создавать параметризованные классы и функции и, тем самым, дает возможность эффективно реализовывать библиотеки обобщенных алгоритмов.
Для разработки «движка» рендеринга, позволяющего визуализировать процесс моделирования с использованием средств графического ускорителя (GPU), была использована библиотека
компьютерной графики OpenGL [91]. Преимуществами OpenGL над аналогичной проприетарной библиотекой DirectX, являются ее открытость и кроссплатформенность. Также, в отличие от
более высокоуровневых средств рендеринга, таких как «движок» Unity, API OpenGL предоставляет низкоуровневые возможности по работе с графикой, что позволяет максимально оптимизировать рендеринг, учитывая специфику архитектуры разрабатываемого программного комплекса.
Рендеринг с использованием графического ускорителя является крайне важным фактором, т.к.
позволяет визуализировать процесс моделирования в режиме реального времени, не создавая
конкуренции за вычислительные ресурсы центрального процессора ЭВМ.
Для написания графического интерфейса пользователя (GUI) была выбрана библиотека Qt
версии 5.4, которая также является открытой и позволяет быстро и эффективно реализовывать
кроссплатформенные графические интерфейсы [92]. Кроме того, библиотека Qt предоставляет
классы для работы с потоками, которые также являются кроссплатформенными, и позволяют
распараллелить процесс моделирования на системах с общей памятью, не заботясь об типе
используемой операционной системы и архитектуре центрального процессора.
В качестве среды разработки был использован Qt Creator версии 3.4.1 [93], базирующийся
на библиотеке Qt 5.4. Данный выбор обусловлен кроссплатформенностью и открытостью среды
разработки Qt Creator, а также возможностью быстро и эффективно разрабатывать приложения
на языке С++.
Использование библиотеки Qt и среды Qt Creator осуществляются под лицензией GNU GPL,
что подразумевает открытость исходных кодов разработанного программного комплекса. Исходный код доступен по адресу https://github.com/darkAlert/cell_growth_and_
division_simulator.
76
5.2.2
Базовые структуры данных
Для двумерных КА-моделей с динамической структурой (модели 2.2 и 2.3) ячейки макроуровня модели (моделирующие одномерный столбец клеток) представлены в виде двусвязного
списка 𝐿𝑚𝑎𝑐𝑟𝑜 , в котором каждому элементу поставлена в соответствие одна из клеток. Каждый
элемент списка 𝐿𝑚𝑎𝑐𝑟𝑜 имеет указатель на два соседних элемента (предыдущая и следующая
клетки в столбце), а также обладает переменной-состоянием (используемой, например, для указания клеточного типа, или возраста клетки). Ячейки микроуровня модели, которые имитирует
более детальное представление моделируемого столбца клеток, представлены четырехсвязным
списком 𝐿𝑚𝑖𝑐𝑟𝑜 , где каждый элемент списка отображает точку в двумерном пространстве соответствующей клетки. Элементы списка 𝐿𝑚𝑖𝑐𝑟𝑜 обладают переменной-состоянием (отражающей,
например, нахождение, или отсутствие в данной точке клетки некоторого вещества), а также
имеют четыре указателя на соседние элементы (северный, восточный, южный и западный соседи). Переменные-координаты у элементов списка 𝐿𝑚𝑖𝑐𝑟𝑜 отсутствуют, а топология двумерного
пространства клетки сохраняется при помощи указателей на соседние элементы, тем самым
избавляя от необходимости переписывать переменные-координаты каждого элемента после очередного изменения структуры клетки (после роста, или деления клетки). Каждый элемент списка
𝐿𝑚𝑎𝑐𝑟𝑜 также содержит указатель на некоторую область в списке 𝐿𝑚𝑖𝑐𝑟𝑜 , при помощи чего сохраняется связь между макро и микроуровнями модели. Таким образом, рост клеток осуществляется вставкой новых элементов в список 𝐿𝑚𝑖𝑐𝑟𝑜 с изменением указателей на соседей у элементов
списка в области вставки, а клеточное деление - вставкой нового элемента в список 𝐿𝑚𝑎𝑐𝑟𝑜 с
присвоением ему (его указателю) некоторой области в списке 𝐿𝑚𝑖𝑐𝑟𝑜 .
Для двумерных КА-моделей со статичной структурой (модель 4.2) ячейки КА представлены
в виде двумерного массива элементов. Соседи каждой ячейки не заданы явно в виде указателей,
а вычисляются во время выполнения программы при помощи смещений индексов по заданной
таблице соседства. Такой способ вычисления соседства требует большей вычислительной нагрузки, однако позволяет значительно экономить память, требования к которой, в случае явного
хранения указателей на соседние ячейки, становятся критическими при достаточно больших
размерах решетки (10000 × 10000 и более).
Для трехмерных КА-моделей с динамической неоднородной структурой (модель 4.3) ячейки
организованы согласно методу, предложенному в главе 3. Таким образом, используется три базовых структуры: поверхность (𝑆𝑢𝑟𝑓 𝑎𝑐𝑒), кольцо (𝑅𝑖𝑛𝑔) и ячейка (𝐶𝑒𝑙𝑙). Ячейка является нижним уровнем в организации и представлена в виде структуры, которая обладает переменнойсостоянием, указателем на родительское кольцо, к которому она принадлежит, а также двумя
переменными-координатами (𝑥 и 𝑦) относительно центра своего кольца. Каждое кольцо, в свою
очередь, обладает переменной-радиусом, тремя переменными-координатами (𝑥,𝑦,𝑧), а ячейки,
принадлежащие кольцу, представлены в виде списка элементов 𝐶𝑒𝑙𝑙 (связь элементов в этом
списке является только технической, и не отражает какой-либо моделируемой связи между этими элементами). Верхним уровень организации является поверхность 𝑆𝑢𝑟𝑓 𝑎𝑐𝑒, которая пред-
77
ставлена двусвязным списком элементов 𝑅𝑖𝑛𝑔. Таким образом, динамика пространства моделируется вставкой новых элементов 𝑅𝑖𝑛𝑔 в двусвязный список структуры 𝑆𝑢𝑟𝑓 𝑎𝑐𝑒 (рост клетки),
а также разбиением этого списка на два новых (деление клетки). Сужение кольца, во время
моделирования деления клетки (см. 3.3), имитируется изменением количества элементов 𝐶𝑒𝑙𝑙
в соответствующем списке структуры 𝑅𝑖𝑛𝑔. Соседство между ячейками КА (элементами 𝐶𝑒𝑙𝑙)
не задается явно при помощи указателей, а вычисляется во время выполнения программы по
алгоритму, предложенному в 3.2.
5.2.3
Описание классов ядра
– namespace static2. Пространство имен, содержит классы, реализующие двумерные КАмодели со статичной структурой.
– namespace dynamic2. Пространство имен, содержит классы, реализующие двумерные КАмодели с динамической структурой.
– namespace dynamic3. Пространство имен, содержит классы, реализующие трехмерные КАмодели с динамической неоднородной структурой.
– class static2::Lattice. Класс, находящийся в пространстве имен static2, является базовой
структурой для двумерных КА со статичной структурой и представляет собой двумерную
статичную решетку ячеек. Состояния ячеек хранятся в виде непрерывной последовательности в одномерном массиве типа char с построчным размещением элементов в памяти.
Количество байт 𝑁 , необходимых для представления состояния одной ячейки, задается
на этапе инициализации объекта класса. Таким образом, дальнейший доступ к состоянию
конкретной ячейки осуществляется по смещению 𝑁 · 𝑀 , где 𝑀 = 𝑖𝑊 + 𝑗 – индекс ячейки
в одномерном массиве, 𝑊 – ширина решетки, 𝑖,𝑗 – двумерные индексы ячейки.
– class static2::Neighborhood. Класс, находящийся в пространстве имен static2, служит для
представления таблицы соседства ячеек, расположенных на двумерной статичной решетке
(класс static2::Lattice). Топология соседства задается при помощи двумерного массива типа
bool, который представляет собой двумерный шаблон, накладываемый своим центральным
элементом на ячейку (для которой вычисляется соседство): если элемент шаблона принимает значение true, то это указывает, что по такому смещению индексов сосед существует,
в противном случае (значение false) соседа по данному смещению нет. Таким образом, размеры шаблона, задающего топологию соседства, должны принимать нечетные значения.
– class static2::DomainSet. Класс, находящийся в пространстве имен static2, представляет
собой разбиение двумерной статичной решетки (класс static2::Lattice) на непересекающиеся домены. Используется для параллельной реализации блочно-синхронного алгоритма [9, 94–96] в двумерном статичном случае.
78
– class dynamic2::MicroCell. Класс, находящийся в пространстве имен dynamic2, служит
для представления ячеек микроуровня КА-модели с двумерной динамической структурой.
Один объект данного класса представляет собой одну ячейку микроуровня модели.
– class dynamic2::MacroCell. Класс, находящийся в пространстве имен dynamic2, служит
для представления ячеек макроуровня КА-модели с двумерной динамической структурой.
Один объект данного класса представляет собой одну ячейку макроуровня модели и содержит список std::list объектов класса dynamic2::LatticeMicro, связывающий макро и микроуровни КА-модели. Использование списка, вместо вектора std::vector обусловливается тем,
что число ячеек в списке может изменяться при моделировании роста и деления.
– class dynamic2::Lattice. Класс, находящийся в пространстве имен dynamic2, служит для
представления КА-модели с двумерной динамической структурой и задает столбец моделируемых клеток. Объект данного класса содержит список std::list объектов класса
dynamic2::MacroCell. Использование списка, вместо вектора std::vector обусловливается
тем, что число ячеек в списке может изменяться при моделировании деления клетки.
– class dynamic3::Cell. Класс, находящийся в пространстве имен dynamic3, служит для представления ячеек трехмерного КА с динамической неоднородной структурой. Один объект
данного класса представляет собой одну ячейку в трехмерном пространстве. Связь ячейки
с родительским кольцом, которому она принадлежит, задается при помощи указателя на
объект класса dynamic3::Ring.
– class dynamic3::Ring. Класс, находящийся в пространстве имен dynamic3, служит для представления кольца ячеек трехмерного КА с динамической неоднородной структурой. Один
объект данного класса представляет собой одно кольцо. Ячейки, принадлежащие кольцу,
задаются при помощи списка std::list объектов класса dynamic3::Cell. Использование списка, вместо вектора std::vector обусловливается тем, что число ячеек в кольце может изменяться из-за операции сужения кольца (во время моделирования деления клетки). Каждый
объект данного класса также содержит указатель на объект типа dynamic3::Surface, представляющий поверхность, которой принадлежит кольцо.
– class dynamic3::Surface. Класс, находящийся в пространстве имен dynamic3, служит для
представления поверхности моделируемой клетки в трехмерной КА-модели с динамической неоднородной структурой. Кольца ячеек, принадлежащие поверхности, задаются в
виде списка std::list объектов класса dynamic3::Ring.
– namespace algorithm2. Пространство имен, содержит классы, реализующие различные
вспомогательные алгоритмы для двумерных КА-моделей.
– namespace algorithm3. Пространство имен, содержит классы, реализующие различные
вспомогательные алгоритмы для трехмерных КА-моделей.
79
– class algorithm2::GrowthAndDivision. Абстрактный класс, находящийся в пространстве
имен algorithm2, содержит в себе методы, реализующие алгоритмы роста и деления столбца клеток в двумерном пространстве (реализация операторов вставки 2.1.3 и разбиения
2.1.4).
– class algorithm3::GrowthAndDivision. Абстрактный класс, находящийся в пространстве
имен algorithm3, содержит в себе методы, реализующие алгоритмы роста и деления клетки
в трехмерном пространстве с неоднородной структурой поверхности (см. 3.3).
– class algorithm3::SurfaceGenerator. Абстрактный класс, находящийся в пространстве имен
algorithm3, содержит в себе функции генерации различных трехмерных поверхностей
с неоднородной структурой (см. 3.1.2). Реализует генерацию следующих поверхностей: цилиндр (метод generateCylinder), сфероид (метод generateSpheroid), кольцо (метод
generateCircle).
– class algorithm3::Neighborhood. Абстрактный класс, находящийся в пространстве имен
algorithm3, содержит в себе методы, реализующие алгоритм вычисления соседства ячеек в
трехмерном КА с динамической неоднородной структурой (реализация алгоритма 3.2).
– namespace visual. Пространство имен, содержит классы, позволяющие визуализировать
процесс моделирования и строить графики и гистограммы из статистических данных. Также содержит некоторые вспомогательные шейдерные программы (пиксельные и вершинные).
– class visual::Painter2d. Класс, находящийся в пространстве имен visual, служит для визуализации двумерных КА.
– class visual::Painter3d. Класс, находящийся в пространстве имен visual, служит для визуализации трехмерных КА.
– class visual::Plot. Класс, находящийся в пространстве имен visual, служит для построения
двумерных графиков и гистограмм из статистических данных в режиме реального времени.
5.2.4
Визуализация
Классы предоставляющие основные функции рендеринга сцены были перечислены в предыдущем разделе. Здесь будет дано краткое описание способов, использованных для отображения
массива ячеек КА в пиксели сцены.
Для двумерных КА-моделей массив ячеек прямо отображается на пиксели сцены так, что
каждой ячейке соответствует свой пиксель (или фрагмент пикселей). Состояние ячейки отображается цветом пикселя. Цвета задаются при помощи цветовой карты, которая ставит в соответствие множеству состояний КА некоторое заданное множество цветов пикселей. Также
допускается масштабирование и сдвиг сцены по осям 𝑋 и 𝑌 при помощи умножения матрицы
80
вида на матрицу трансформаций. В случае изменения структуры моделирумого пространства
(рост и деление клеток) новым ячейкам КА ставятся в соответствии новые пиксели сцены. Если размеры массива ячеек превышает разрешающая способность сцены (т.е. для отображения
всех ячеек КА не хватает пикселей), то ячейки, вышедшие за границу сцены, отбрасываются
(выполнив операцию сдвига сцены отброшенные ячейки можно вернуть в кадр).
В случае визуализации трехмерных КА-моделей для каждой ячейке КА строится куб (ставится в соответствие множество вершин, задающих этот куб), а грани куба окрашиваются в цвет,
который соответствует состоянию ячейки. Аналогично двумерному случаю, цвета задаются при
помощи цветовой карты. Также допускается масштабирование, сдвиг и произвольное вращение
трехмерной сцены вокруг заданной точки. В случае изменения структуры моделируемого пространства (в случае роста и деления клетки), вершинный и другие буферы переопределяется с
учетом новой геометрии. Допускается также отображение нескольких поверхностей на одной
сцене. В случае коллизий, вызванных пересечением поверхностей, поведение визуализатора не
определено.
Визуализация статистических данных происходит путем построения кривых (в случае графиков) и закрашенных прямоугольников (в случае гистограмм) в кадре сцены. Графики и гистограммы допускают различные цветовые схемы, определяемые пользователем. Пользователь
также может задать размер шага сетки, название осей, типы величин, отображаемых на оси, а
также максимальные и минимальные значения этих величин.
5.2.5
Графический интерфейс пользователя
Графически интерфейс пользователя (GUI) для каждой из разработанных в этой работе КАмоделей был создан при помощи редактора форм в среде Qt Creator версии 3.4.1 и библиотеки
Qt 5.4. Файлы окон интерфейса имеют формат .ui, а обработчики событий элементов интерфейса
описаны в файлах mainwindow.h/.cpp при помощи технологии сигналов и слотов [97], которую
реализует библиотека Qt. Все файлы, которые относятся к графическом интерфейсу пользователя, также выложены в открытый доступ по указанной выше ссылке.
На рис. 5.2 представлен скриншот графического интерфейса программы, реализующей двумерную КА-модель из 4.2, а на рис. 5.3 – программы, реализующей трехмерную КА-модель из
4.3. Графические интерфейсы для программ других КА-моделей могут быть разработаны пользователем самостоятельно при помощи библиотеки Qt и среды Qt Creator.
5.3
Выводы к главе
В Главе 5 были получены следующие результаты:
1. Разработан программный комплекс, позволяющий пользователю программировать двумерные статичные КА-модели, двумерные ДКА-модели с однородной структурой и трехмерные КА-модели с динамической неоднородной структурой ячеек.
81
Рисунок 5.2: Графический интерфейс программы, реализующей двумерную КА-модель из 4.2.
2. Визуализатор, входящий в состав программного комплекса, разработан при помощи библиотеки OpenGL и позволяет визуализировать процесс моделирования в режиме реального
времени с использованием графического ускорителя (GPU), а также строить двумерные
графики и гистограммы из статистических данных, получаемых в процессе моделирования.
3. Графический интерфейс пользователя (GUI) разработан при помощи библиотеки Qt и среды Qt Creator и позволяет пользователю управлять процессом моделирования и задавать
модельные параметры, большинство из которых могут быть изменены непосредственно в
процессе моделирования.
4. Ядро программного комплекса оформлено в виде библиотеки классов и алгоритмов с открытым кодом по лицензии GNU GPL, что позволяет любому пользователю добавлять и
модифицировать код библиотеки по своему усмотрению.
82
Рисунок 5.3: Графический интерфейс программы, реализующей трехмерную КА-модель из 4.3.
83
Заключение
Основные результаты работы заключаются в следующем:
1. Рассмотрены непрерывные, дискретно-непрерывные и полностью дискретные методы моделирования, применяемые в задачах вычислительной биологии. Кратко рассмотрена история становления этих методов. Описаны преимущества и недостатки рассмотренных
методов моделирования по отношению к задачам, связанным с динамикой структуру моделируемого пространства (моделирование роста и деление клеток).
2. Предложено понятие двумерного клеточного автомата с динамической однородной структурой (ДКА), которое расширяет возможности двумерных КА и позволяет применять
клеточно-автоматный подход к задачам, связанным с динамикой структуры моделируемого
пространства в двумерном случае (например, задачи развития тканей живых систем). Кроме того было показано, что ДКА-модели обладают всеми преимуществами классических
КА.
3. Разработана двухуровневая ДКА-модель ℵ𝑚 апикальной меристемы побега Arabidopsis
Thaliana, состоящая из параллельно композиции двух ДКА. Результаты компьютерного моделирования показали, что поведение предложенной модели соответствует модели из [35],
где для моделирования использовалась композиция системы дифференциальных уравнений и L-систем Линденмайера. ДКА-модель позволяет наблюдать динамику веществ на
уровне отдельных частиц, а не в виде их концентраций в некоторых точках. К преимуществам также можно отнести возможность имитационного моделирования роста клеток
АМП. Разработана двухуровневая ДКА-модель ℵ𝑎 роста и деления клеток цианобактерии
Anabaena catenula. Проведенные вычислительные эксперименты показали, что поведение
построенной модели соответствует экспериментальным наблюдениям. Также был выявлено, что коэффициент диффузии азотосодержащего вещества влияет на частоту появления
гетероцист. В сравнении с одноуровневыми одномерными моделями, данная ДКА-модель
обладает возможностью имитационного моделирования роста клеток цианобактерии, а
двухуровневость модели позволяет более детально наблюдать динамику азотосодержащих
веществ в клетках и ее воздействие на рост, деление и трансформацию клеток.
4. Предложен метод организации неоднородного массива ячеек трехмерного клеточного автомата в виде иерархии: поверхность → кольца → списки ячеек. Показано, что данный
84
метод позволяет генерировать поверхности бактериальных клеток различных форм. Разработан алгоритм определения соседства ячеек, который позволяет эффективно вычислять
соседство на трехмерном неоднородном массиве ячеек и не требует значительных затрат
вычислительных ресурсов. Предложен способ, позволяющий моделировать динамику поверхности (рост и деление клеток), организованной в виде неоднородного массива ячеек.
Основным преимуществом такого подхода является то, что массив, организованный таким
способом, позволяет частично изменять структуру моделируемой поверхности, не перестраивая при этом всю поверхность целиком.
5. Разработана двумерная КА-модель ℵ2𝑑
𝑚𝑖𝑛 процесса самоорганизации белков MinDE в случае
in vitro. В результате вычислительных экспериментов были получены белковые волны, спирали и некоторые другие паттерны, которые проявляются в лабораторных экспериментах
in vitro. Модель обладает статичной структурой пространства и может быть рассмотрена
как промежуточный шаг на пути к трехмерной КА-модели (случай in vivo), служащий для
побора и отработки необходимых КА-правил.
6. Разработана трехмерная КА-модель ℵ3𝑑
𝑚𝑖𝑛 процесса самоорганизации белков MinDE на поверхности клетки E. coli (случай in vivo). Массив ячеек КА организован в виде неоднородной трехмерной поверхности, имитирующей форму клетки E. coli. В результате моделирования были получены стоячие белковые волны MinDE на поверхности клетки, что
соответствует наблюдениям в лабораторных условиях [80, 81, 83]. Также были получены и
другие белковые паттерны MinDE, встречаемые у мутантных клеток E. coli: стоячие волны
с двумя центрами в аномально длинных клетках, бегущие волны в клетках с повышенной
экспрессией белков MinDE и белковые спирали в клетках формы шара. При помощи трехмерной КА-модели ℵ3𝑑
𝑚𝑖𝑛 смоделирован процесс роста и деления клетки E. coli во время
самоорганизации белков MinDE. В проведенном вычислительном эксперименте наблюдался процесс развития клетки E. coli, в результате которого из одной родительской клетки
было получено две дочерние независимые клетки. Кроме того, во время всего процесса
роста и деления белки MinDE самоорганизовывались в стоячие белковые волны, осциллирующие от одного полюса клетки к другом, сначала в родительской клетке, а после деление
– независимо в каждой дочерней клетке.
7. Разработан программный комплекс, позволяющий пользователю программировать двумерные статичные КА-модели, двумерные ДКА-модели с однородной структурой и трехмерные КА-модели с динамической неоднородной структурой ячеек. Визуализатор, входящий
в состав программного комплекса, разработан при помощи библиотеки OpenGL и позволяет визуализировать процесс моделирования в режиме реального времени с использованием
графического ускорителя (GPU), а также строить двумерные графики и гистограммы из
статистических данных, получаемых в процессе моделирования. Графический интерфейс
пользователя (GUI) разработан при помощи библиотеки Qt и среды Qt Creator и позволя-
85
ет пользователю управлять процессом моделирования и задавать модельные параметры,
большинство из которых могут быть изменены непосредственно в процессе моделирования. Ядро программного комплекса оформлено в виде библиотеки классов и алгоритмов с
открытым кодом по лицензии GNU GPL, что позволяет любому пользователю добавлять и
модифицировать код библиотеки по своему усмотрению.
86
Список литературы
1. Николаев, С. В. Математическое моделирование морфогенеза растений / С. В. Николаев,
Н. А. Колчанов, И. В. Шваб, Г. Г. Лазарева, В. В. Миронова, Н. А. Омельянчук, В. А. Вшивков, Д. Н. Горпинченко // Сиб. журн. вычисл. математики. — 2008. — Т. 11, № 2. —
С. 151–166.
2. Loose, M. Membrane Binding of MinE Allows for a Comprehensive Description of Min-Protein
Pattern Formation / M. Loose, M. Bonny, E. Fischer-Friedrich // PLOS Computational Biology. —
2013. — Vol. 9, no. 12. — 12 pp.
3. Бандман, О.Л. Клеточно-автоматные модели пространственной динамики / О.Л. Бандман //
Системная информатика: сб. научн. тр. — 2006. — Т. 10. — С. 59–111.
4. Simulating Complex Systems by Cellular Automata. Understanding complex Systems / Ed. by
A. Hoekstra, J. Kroc, P.M.A. Sloot. — Berlin: Springer, 2010.
5. Медведев, Ю.Г. Трехмерная клеточно-автоматная модель потока вязкой жидкости / Ю.Г. Медведев // Автометрия. — 2003. — № 3. — С. 43–50.
6. Киреева, А. Е. Клеточно-автоматное моделирование самоорганизующихся реакционнодиффузионных процессов: дис. ... канд. физ.-мат. наук: 05.13.18 / А. Е. Киреева. — Новосибирск, 2013. — 112 с.
7. Малинецкий, Г.Г. Моделирование диффузионных процессов клеточными автоматами /
Г.Г. Малинецкий, М.Е. Степанцов // Журн. вычисл. матем. и мат. физики. — 1998. — № 6.
— С. 1017–1021.
8. Афанасьев, И.В. Клеточно-автоматная модель динамики популяций трех видов организмов
озера Байкал / И.В. Афанасьев // Сиб. журн. вычисл. математики. — 2014. — Т. 17, № 3. —
С. 217–227.
9. Bandman, O. Parallel simulation of asynchronous cellular automata evolution / O. Bandman //
Proc. ACRI-2006. Lect. Notes Comput. Sci. — 2006. — Vol. 4173. — Pp. 41–47.
10. Бандман, О.Л. Мелкозернисый параллелизм в вычислительной математике / О.Л. Бандман //
Программирование. — 2001. — № 4. — 18 с.
87
11. Wolfram, S. A New Kind of Science / S. Wolfram. — United States: Wolfram Media, 2002.
12. Витвицкий, А.А. Компьютерное моделирование процесса самоорганизации бактериальной
системы белков MinCDE / А.А. Витвицкий // Математическая биология и биоинформатика.
— 2014. — Т. 9, № 2. — С. 453–463. — URL: http://www.matbio.org/2014/Vitvitsky_9_453.pdf.
13. Витвицкий, А.А. Клеточные автоматы с динамической структурой для моделирования роста
биологических тканей / А.А. Витвицкий // СибЖВМ. — 2014. — Т. 17, № 4. — С. 315–328.
14. Vitvitsky, A. CA - Model of Autowaves Formation in the Bacterial MinCDE System / A. Vitvitsky //
Lecture Notes in Computer Science. — 2015. — no. 9251. — Pp. 246–250.
15. Витвицкий, А.А. Построение неоднородного массива ячеек для задач клеточно-автоматного
моделирования роста и деления клеток бактерий / А.А. Витвицкий // Прикладная дискретная
математика. — 2015. — № 3(29). — С. 110–120.
16. Vitvitsky, A. Cellular automata simulation of self-organization in the bacterial MinCDE system /
A. Vitvitsky // Bull. Nov. Comp. Center, Comp. Science. — 2014. — Vol. 36. — Pp. 103–113.
17. Витвицкий, А.А. Клеточные автоматы с динамической структурой на примере роста и деления клеток цианобактерии / А.А. Витвицкий // Труды конференции молодых ученых ИВМиМГ
СО РАН. — 2014. — С. 46–57.
18. Vitvitsky, A. Computer simulation of self-organization in the bacterial MinCDE system by cellular
automata / A. Vitvitsky // Advanced Mathematics, Computations & Applications - 2014, Abstracts.
— 2014. — P. 113.
19. Витвицкий, А.А. Построение неоднородного массива ячеек для задач клеточно-автоматного
моделирования роста и деления клеток бактерий / А.А. Витвицкий // Актуальные проблемы
вычислительной и прикладной математики - 2015, Тезисы. — 2015. — С. 124.
20. Витвицкий, А.А. Компьютерное моделирование процесса самоорганизации белков MinDE во
время роста и деления клетки / А.А. Витвицкий // Актуальные проблемы вычислительной и
прикладной математики - 2015, Тезисы. — 2015. — С. 172.
21. Витвицкий, А.А. Клеточно-автоматное моделирование роста и развития биологических тканей / А.А. Витвицкий // Современные проблемы прикладной математики и информатики,
Тезисы. — 2014. — С. 42.
22. Витвицкий, А.А. Компьютерное моделирование процесса самоорганизации бактериального
комплекса белков MinCDE / А.А. Витвицкий // Материалы 52-й международной научной
студенческой конференции, Биология. — 2014. — С. 204.
88
23. Витвицкий, А.А. Разработка модели и компьютерная симуляция процесса самоорганизации
системы белков MinCDE в растущей и делящейся бактериальной клетке / А.А. Витвицкий //
Материалы 53-й международной научной студенческой конференции, Математика. — 2015.
— С. 180.
24. Vitvitsky, A. Computer simulation of self-organization in the bacterial MinCDE system / A. Vitvitsky // SBB-2014, Abstracts. — 2014. — P. 38.
25. Vitvitsky, A. Computer simulation of self-organization in the bacterial MinCDE system / A. Vitvitsky // MM-HPC-BBB-2014, Abstracts. — 2014. — P. 83.
26. Биологический энциклопедический словарь / Под. ред. М. С. Гиляров. — 3-е, перераб. и доп.
изд. — М.: Сов. Энциклопедия, 1986. — 231 с.
27. Fisher, R. A. The genetical theory of natural selection / R. A. Fisher // Oxford: Univ. Press. —
1930.
28. Kolmogorov, A. Study of the diffusion equation coupled to an increase in mass and its application
to a problem in biology / A. Kolmogorov, I. Petrovsky, N. Piskunov // Bull Uni Moskou Ser Int
A1. — 1937. — no. 6. — 26 pp.
29. Turing, A.M. The Chemical Basis of Morphogenesis / A.M. Turing // Philosophi-cal Transactions
of the Royal Society of London. Series B. Biological Sciences. — 1952. — Vol. 237, no. 641. —
Pp. 37–72.
30. Glade, N. Microtubule self-organisation by reaction-diffusion processes causes collective transport
and organisation of cellular particles / N. Glade, J. Demongeot, J. Tabony // BMC Cell Biology. —
2004. — no. 5. — 10 pp.
31. Glade, N. Comparison of reaction-diffusion simulations with experiment in self-organised microtubule solutions / N. Glade, J. Demongeot, J. Tabony // C R Biologies. — 2002. — no. 325. —
Pp. 283–294.
32. Glade, N. Numerical simulations of microtubule self-organisation by reaction and diffusion /
N. Glade, J. Demongeot, J. Tabony // Bull Uni Moskou Ser Int A1. — 2002. — December. —
Vol. 50, no. 4. — Pp. 239–268.
33. Ferreira Junior, S. C. A reaction-diffusion model for the growth of avascular tumor / S. C. Ferreira Junior, M. J. Vilela, M. L. Martins // Physical Review E. — 2002. — Vol. 65, no. 2. —
12 pp.
34. Николаев, С. В. Исследование одномерной модели регуляции размеров возобновительной
зоны в биологической ткани / С. В. Николаев, Н. А. Колчанов, С. И. Фадеев, В. В. Когай,
Э. Мйолснесс // Вычислительные технологии. — 2006. — Т. 11, № 2. — С. 67–81.
89
35. Николаев, С. В. Исследование одномерной модели регуляции размеров возобновительной
зоны в биологической ткани с учетом деления клеток / С. В. Николаев, Н. А. Колчанов,
У. С. Зубаирова, С. И. Фадеев, Э. Мйолснесс // Сибирский журнал индустриальной математики. — 2010. — Октябрь-декабрь. — Т. 13, № 4(44). — С. 70–82.
36. Potts, R. B. Some Generalized Order-Disorder Transformations / R. B. Potts // Mathematical
Proceedings. — 1952. — Vol. 48, no. 1. — Pp. 106–109.
37. Graner, F. Simulation of Biological Cell Sorting Using a Two-Dimensional Extended Potts Model /
F. Graner, J. A. Glazier // Phys. Rev. Lett. — 1992. — Vol. 69, no. 13. — Pp. 2013–2016.
38. Swat, M. H. CompuCell3D Reference Manual [Электронный ресурс] / M. H. Swat, J. B. Belmonte, R. W. Heiland, B. L. Zaitlen, J. A. Glazier, A. Shirinifard. —
Режим доступа:
http://www.compucell3d.org/Manual/.
39. Li, J. F. The effects of cell compressibility, motility and contact inhibition on the growth of tumor
cell clusters using the Cellular Potts Model / J. F. Li, J. Lowengruba // Journal of Theoretical
Biology. — 2014. — Vol. 343. — Pp. 79–91.
40. Scianna, M. New Challenges for Cancer Systems Biomedicine. Hybrid cellular Potts model for
solid tumor growth / M. Scianna, L. Preziosi, L. Preziosi; Ed. by M. Chaplain, J. Batzel, M. Bachar.
— Springer, 2012. — Pp. 205–224.
41. Andasari, V. Integrating Intracellular Dynamics Using CompuCell3D and Bionetsolver: Applications to Multiscale Modelling of Cancer Cell Growth and Invasion / V. Andasari, R. T. Roper,
M. H. Swat, M. A. Chaplain // PLoS ONE. — 2012. — Vol. 7, no. 3.
42. Gao, X. A Multiscale Model for Hypoxia-induced Avascular Tumor Growth / X. Gao, M. Tangney,
Tabircam S. // Proceedings of 2011 International Conference on Bioscience, Biochemistry and
Bioinformatics. — 2011. — Vol. 5. — Pp. 53–58.
43. Poplawski, N. J. Simulation of single-species bacterial-biofilm growth using the Glazier-GranerHogeweg model and the CompuCell3D modeling environment / N. J. Poplawski, A. Shirinifard,
Swat M., J. A. Glazier // Math Biosci Eng. — 2008. — Vol. 5, no. 2. — Pp. 355–388.
44. Kleinstreuer, N. A Computational Model Predicting Disruption of Blood Vessel Development /
N. Kleinstreuer, D. Dix, Rountree M., N. Baker, N. Sipes, D. Reif, R. Spencer, T. Knudsen // PLoS
Comput Biol. — 2013. — Vol. 9, no. 4. — 20 pp.
45. Lindenmayer, A. Mathematical models for cellular interaction in development / A. Lindenmayer //
J. Theoret. Biology. — 1968. — Vol. 18. — Pp. 280–315.
46. Lindenmayer, A. The Algorithmic Beauty of Plants / A. Lindenmayer, P. Prusinkiewicz. — New
York, London: Springer-Verlag, 1990.
90
47. Lindenmayer, A. Locally Generated Colourings of Hexagonal Cell Division Patterns: Application
to Retinal Cell Differentiation. In Lindenmayer systems: Impacts on theoretical computer science,
computer graphics, and developmental biology / A. Lindenmayer, Z. Tuza; Ed. by G. Rozenberg,
A. Salomaa. — Berlin: Springer-Verlag, 1992. — Pp. 333–350.
48. Зубаирова, У. С. Моделирование роста и развития растительных тканей в формализме Lсистем / У. С. Зубаирова, А. В. Пененко, С. В. Николаев // Вавиловский журнал генетики и
селекции. — 2012. — Т. 16, № 4/1. — С. 816–824.
49. Зубаирова, У. С. L-система для моделирования плоских одномерно растущих растительных
тканей / У. С. Зубаирова, С.К. Голушко, А. В. Пененко, С. В. Николаев // Вавиловский журнал
генетики и селекции. — 2014. — Т. 18, № 4/2. — С. 945–952.
50. Зубаирова, У. С. Одномерная модель регуляции структуры возобновительной зоны в биологической ткани с учетом роста деления клеток: магистерская диссертация / У. С. Зубаирова.
— Новосибирск, 2008. — 26 с.
51. Jonsson, H. An auxin-driven polarized transport model for phyllotaxis / H. Jonsson, M.G. Heisler,
B.E. Shapiro, E.M. Meyerowitz, E. Mjolsness // Proc. Natl. Acad. Sci. USA. — 2006. — Vol. 103,
no. 5. — Pp. 1633–1638.
52. Rudge, T. A computational model of cellular morphogenesis in plants / T. Rudge, J. Haseloff //
ECAL. — 2005. — Vol. 3630. — Pp. 78–87.
53. Tolle, D. P. Particle-Based Stochastic Simulation in Systems Biology / D. P. Tolle, N. Le Nover //
Current Bioinformatics. — 2006. — Vol. 1, no. 3. — 6 pp.
54. Elf, J. Spontaneous separation of bi-stable biochemical systems into spatial domains of opposite
phases / J. Elf, M. Ehrenberg // Systems Biology, IEE Proceedi. — 2004. — Vol. 1, no. 2. —
Pp. 230–236.
55. Elf, J. Mesoscopic reaction-diffusion in intracellular signaling / J. Elf, A. Doncic, M. Ehrenberg //
Proceedings of the SPIE. — 2003. — Vol. 5110. — Pp. 114–124.
56. Palachanis, D. Particle-based simulation of ellipse-shaped particle aggregation as a model for
vascular network formation / D. Palachanis, A. Szabo, R. M. H. Merks // Computational Particle
Mechanics, special issue. — 2015. — 27 pp.
57. Фон Нейман, Д. Теория самовоспроизводящихся автоматов / Д. Фон Нейман. — М.: Мир,
1971.
58. Gardner, M. The fantastic combinations of John Conway’s new solitaire game «life» / M. Gardner //
Scientific American. — 1970. — Vol. 223. — Pp. 120–123.
59. Game of Life Cellular Automata / Ed. by A. Adamatzky. — Springer, 2010.
91
60. Toffoli, T. Cellular automata as an alternative to (rather than approximation of) differential equations in modeling physics / T. Toffoli // Physica D. — 1984. — Vol. 10. — Pp. 117–127.
61. Toffoli, T. Cellular Automata Machines: A new Environment for Modeling / T. Toffoli, N. Margolus. — The MIT Press, 1987.
62. Wolfram, S. Universality and complexity in cellular automata / S. Wolfram // Physica D. — 1984.
— Vol. 1. — Pp. 91–125.
63. Wolfram, S. Statistical mechanics of cellular automata / S. Wolfram // Review of Modern Physics.
— 1993. — Vol. 55. — Pp. 607–640.
64. Бандман, О.Л. Стохастическое клеточно-автоматное моделирование колебаний и автоволн
в реакционно-диффузионных системах / О.Л. Бандман, А.Е. Киреева // Сиб. журн. вычисл.
математики. — 2015. — Т. 18, № 3. — С. 251–269.
65. Калиничева, М. М. Моделирование роста опухоли эпителиальных тканей с использованием алгоритмов клеточных автоматов / М. М. Калиничева, В. В. Котин, Е. М. Писаренко //
Альманах клинической медицины. — 2008. — Т. 17, № 1. — С. 179–182.
66. Akberdin, I. R. Bioinformatics of Genome Regulation and Structure II. A cellular automaton
to model the development of shoot apical meristem of Arabidopsis thaliana / I. R. Akberdin,
E. A. Ozonov, V. V. Mironova, A. V. Komarov, N. A. Omelyanchuk, V. A. Likhoshvai // Bioinformatics of Genome Regulation and Structure II. — 2006. — Vol. 2. — Pp. 185–189.
67. Akberdin, I. R. A Cellular Automaton Model of Morphogenesis in Arabidopsis thaliana / I. R. Akberdin, E. A. Ozonov, V. V. Mironova, D. N. Gorpinchenko, N. A. Omelyanchuk, V. A. Likhoshvai,
N. A. Kolchanov // Biophysics (Russian). — 2006. — Vol. 51, no. 7. — Pp. 91–94.
68. Achasova, S. Parallel Substitution Algorithm / S. Achasova, O. Bandman, V. Markova, S. Piskunov.
— Singapore: World Scientific, 1994.
69. Bandman, O. Simulation of complex phenomena by cellular automata composition / O. Bandman //
Bull.Nov.Comp.Center. — 2004. — Vol. 21. — Pp. 9–21.
70. Bandman, O. Algebraic Properties of Cellular Automata: the basis for Composition Technique /
O. Bandman // Proceedings of the Int.Conf. ACRI-2004. Lecture Notes in Computer Science. —
2004. — Vol. 3305. — Pp. 688–697.
71. Ачасова, С.М. Корректность параллельных вычислительных процессов / С.М. Ачасова,
О.Л. Бандман. — Новосибирск: Наука, 1998.
72. Bandman, O. Simulating Complex Systems by Cellular Automata. Cellular automata composition techniques for spatial dynamics simulation / O. Bandman; Ed. by A. Hoekstra, J. Kroc,
P.M.A. Sloot. — Berlin: Springer, 2010. — Pp. 81–115.
92
73. Изображение найдено в сети Интернет [Электронный ресурс]. —
Режим доступа:
http://www.pontdelpetroli.org/imagenes/mareesroges/Anabaena_sp.jpg.
74. Loose, M. Protein self-organization: lessons from the min system / M. Loose, K. Kruse,
P. Schwille // Annu Rev Biophys. — 2011. — Vol. 40. — Pp. 315–336.
75. Lutkenhaus, J. Assembly dynamics of the bacterial MinCDE system and spatial regulation of the
Z ring / J. Lutkenhaus // Annu. Rev. Biochem. — 2007. — Vol. 76. — Pp. 539–562.
76. Fange, D. Noise-induced Min phenotypes in E. coli / D. Fange, J. Elf // PLoS Comput. Biol. —
2006. — Vol. 2, no. 6. — Pp. 637–648.
77. Loose, M. Min protein patterns emerge from rapid rebinding and membrane interaction of MinE /
M. Loose, E. Fischer-Friedrich, C. Herold, K. Kruse, P. Schwille // Nat. Struct. Mol. Biol. — 2011.
— Vol. 18. — Pp. 577–583.
78. Lutkenhaus, J. MinD and role of the deviant Walker A motif, dimerization and membrane binding
in oscillation / J. Lutkenhaus, M. Sundaramoorthy // Mol. Microbiol. — 2003. — Vol. 48. —
Pp. 295–303.
79. Leonard, T. Bacterial chromosome segregation: Structure and DNA binding of the Soj dimer – a
conserved biological switch / T. Leonard, P.J. Butler, J. Lowe // EMBO. — 2005. — Vol. 24. —
Pp. 270–282.
80. Raskin, D. Rapid pole-to-pole oscillation of a protein required for directing division to the middle
of Escherichia coli / D. Raskin, P. de Boer // Proc. Natl. Acad. Sci. USA. — 1999. — Vol. 96. —
Pp. 4971–4976.
81. Hu, Z. Topological regulation of cell division in Escherichia coli involves rapid pole to pole oscillation of the division inhibitor MinC under the control of MinD and MinE / Z. Hu, J. Lutkenhaus //
Mol. Microbiol. — 1999. — Vol. 34. — Pp. 82–90.
82. Fu, X. The MinE ring required for proper placement of the division site is a mobile structure
that changes its cellular location during the Escherichia coli division cycle / X. Fu, Y. L. Shih,
Y. Zhang, L. I. Rotheld // Proc. Natl. Acad. Sci. USA. — 2001. — Vol. 98. — Pp. 980–985.
83. Hale, C. A. Dynamic localization cycle of the cell division regulator MinE in Escherichia coli /
C. A. Hale, H. Meinhardt, P. de Boer // EMBO. — 2001. — Vol. 20. — Pp. 1563–1572.
84. Ivanov, V. Multiple modes of interconverting dynamic pattern formation by bacterial cell division
proteins / V. Ivanov, K. Mizuuchi // Proc. Natl. Acad. Sci. USA. — 2010. — Vol. 107. — Pp. 8071–
8078.
93
85. Lackner, L. ATP-dependent interactions between Escherichia coli Min proteins and the phospholipid membrane in vitro / L. Lackner, D. Raskin, P. Boer // J. Bacteriol. — 2003. — Vol. 185. —
Pp. 735–749.
86. Loose, M. Spatial Regulators for Bacterial Cell Division Self-Organize into Surface Waves in
Vitro / M. Loose // Science. — 2008. — Vol. 320. — Pp. 789–792.
87. Schweizer, J. Geometry sensing by self-organized protein patterns / J. Schweizer, M. Loose,
M. Bonny, K. Kruse, I. Monch, P. Schwille // PNAS. — 2012. — Vol. 109, no. 38. — 6 pp.
88. Бандман, О.Л. Инварианты клеточно-автоматных моделей реакционно-диффузионных процессов / О.Л. Бандман // ПДМ. — 2012. — № 3. — С. 108–120.
89. Medvedev, Yu. G. Multiparticle Cellular Automata for Diffusion Simulation / Yu. G. Medvedev //
LNCS. — 2011. — no. 6083. — Pp. 204–211.
90. Hundt, R. Loop Recognition in C++/Java/Go/Scala / R. Hundt // Google. —
2011. —
rhundt@google.com.
91. OpenGL - The Industry’s Foundation for High Performance Graphics [Электронный ресурс]. —
Режим доступа: https://www.opengl.org/.
92. Qt [Электронный ресурс]. — Режим доступа: http://www.qt.io.
93. The IDE Qt Creator [Электронный ресурс]. — Режим доступа: http://www.qt.io/ide/.
94. Киреева, А. Е. Параллельная реализация каталитической реакции (CO + O2 -> CO2) с помощью асинхронного клеточного автомата / А. Е. Киреева // Вестник ЮУр-ГУ. — 2012. — №
(47)306. — С. 112–126.
95. Калгин, К.В. Параллельная реализация асинхронных клеточных автоматов на 32-ядерной
вычислительной системе / К.В. Калгин // Сиб. журн. вычисл. математики. — 2012. — Т. 15,
№ 1. — С. 55–65.
96. Бандман, О.Л. Параллельная реализация клеточно-автоматных алгоритмов моделирования
пространственной динамики / О.Л. Бандман // Сиб. журн. вычисл. математики. — 2007. —
Т. 10, № 4. — С. 335–348.
97. Qt Documentation: Signals & Slots [Электронный ресурс]. — Режим доступа: http://doc.qt.io/qt4.8/signalsandslots.html.
Скачать