Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Витвицкий Антон Александрович

Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов
<
Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Витвицкий Антон Александрович. Разработка и исследование методов клеточно-автоматного моделирования роста и деления клеток живых организмов: диссертация ... кандидата физико-математических наук: 05.13.18 / Витвицкий Антон Александрович;[Место защиты: Институт вычислительной математики и математической геофизики СО РАН - Учреждение Российской академии наук].- Новосибирск, 2016.- 93 с.

Содержание к диссертации

Введение

1 Обзор инструментов моделирования для задач биологии 9

1.1 Непрерывные методы моделирования 9

1.2 Дискретно-непрерывные методы моделирования 11

1.3 Полностью дискретные методы моделирования 12

1.4 Выводы к главе 13

2 Двумерные клеточные автоматы с динамической однородной структурой 14

2.1 Метод динамических клеточных автоматов 14

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

2.1.2 Именующие функции и шаблоны соседства 15

2.1.3 Правила переходов и режимы работы ДКА 16

2.1.4 Оператор однонаправленной вставки в массив ячеек 17

2.1.5 Оператор однонаправленного разбиения массива ячеек 19

2.2 ДКА-модель апикальной меристемы побега Arabidopsis Thaliana 20

2.2.1 Общее описание ДКА-модели 21

2.2.2 Микроуровень модели (ДКА B) 22

2.2.3 Макроуровень модели (ДКА A) 24

2.2.4 Моделирование роста и деления в ДКА B 26

2.2.5 Результаты моделирования 26

2.3 ДКА-модель роста и деления клеток цианобактерии Anabaena catenula 29

2.3.1 Общее описание ДКА-модели 30

2.3.2 Микроуровень модели (ДКА B ) 30

2.3.3 Макроуровень модели (ДКА A) 31

2.3.4 Результаты моделирования 34

2.4 Выводы к главе 35

3 Трехмерные клеточные автоматы с динамической неоднородной структурой 37

3.1 Организация массива ячеек с неоднородной структурой 37

3.1.1 Алгоритм построения колец 38

3.1.2 Алгоритм построения поверхности клетки бактерии з

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) 4.2.1 Описание КА-модели 2 52

4.2.2 Результаты моделирования 2 56

4.3 Трехмерная КА-модель 3 самоорганизации MinDE на поверхности растущей и делящейся клетки (in vivo) 58

4.3.1 Описание 3 59

4.3.2 Результаты моделирования 3 66

4.4 Выводы к главе 69

5 Программный комплекс 73

5.1 Архитектура программного комплекса 74

5.2 Программная реализация 5.2.1 Используемые технологии 75

5.2.2 Базовые структуры данных 76

5.2.3 Описание классов ядра 77

5.2.4 Визуализация 79

5.2.5 Графический интерфейс пользователя 80

5.3 Выводы к главе 80

Заключение 83

Список литературы

Введение к работе

Актуальность темы. Изучение процессов развития тканей живых организмов является одной из основных задач современной биологии. Самоорганизационное поведение, порождаемое взаимодействием различных белков, лежит в основе этих процессов и делает механизмы роста и деления клеток полностью автоматическими. Такие белковые системы можно назвать распределенными, имея в виду то, что эти системы не имеют какого-либо центрального управляющего элемента, который бы был ответственен за принятие всех решений к действию. Распределенный характер механизмов самоорганизации делает их устойчивыми к различным сбоям и вмешательству внешних факторов. Однако, изучение этих механизмов затруднено тем, что в лабораторных условиях сложно отследить динамику отдельных частиц, входящих в состав этих механизмов.

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

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

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

Целью настоящей работы является разработка и исследование методов моделирования роста и деления клеток тканей живых организмов, которые расширяют аппарат КА и позволяют разрабатывать двумерные и трехмерные КА-модели, обладающие способностью динамически менять структуру своей решетки непосредственно в процессе моделирования.

Для достижения поставленной цели решались следующие задачи:

  1. Разработать новый класс КА – клеточные автоматы с динамической структурой (ДКА), которые позволяют изменять структуру двумерной однородной решетки КА в процессе моделирования.

  2. Исследовать возможности ДКА путем создания двухуровневой ДКА-модели развития апикальной меристемы побега Arabidopsis Thaliana и двухуровневой ДКА-модели роста и деления клеток цианобактерии Anabaena catenula.

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

  4. Разработать двумерную КА-модель самоорганизации системы белков MinDE со статичной структурой. Сравнить результаты моделирования с данными, полученными в лабораторных условиях (in vitro).

  5. Разработать трехмерную КА-модель самоорганизации системы белков MinDE на внутренней поверхности мембраны во время роста и деления моделируемой клетки (случай in vivo). Сравнить результаты моделирования с известными из литературы моделями.

  6. Разработать программный комплекс, позволяющий реализовывать и визуализировать двумерные ДКА-модели с однородной структурой и трехмерные КА-модели с динамической неоднородной структурой.

Научная новизна:

  1. Предложен новый класс КА – клеточные автоматы с динамической структурой (ДКА), позволяющие динамически менять структуру двумерной решетки в процессе моделирования.

  2. Разработаны две новых двухуровневых ДКА-модели: модель развития апикальной меристемы побега Arabidopsis Thaliana, и модель роста и деления

клеток цианобактерии Anabaena catenula.

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

  2. Впервые разработана трехмерная модель самоорганизации системы белков MinDE на поверхности клетки бактерии во время ее роста и деления.

Основные положения, выносимые на защиту:

  1. Новый класс КА – клеточные автоматы с динамической структурой (ДКА).

  2. Двухуровневая ДКА-модель развития апикальной меристемы побега Arabidopsis Thaliana, и двухуровневая ДКА-модель роста и деления клеток цианобактерии Anabaena catenula.

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

  4. Трехмерная КА-модель самоорганизации белков MinDE на поверхности растущей и делящейся бактериальной клетки.

  5. Программный комплекс, позволяющий разрабатывать, моделировать и визуализировать двумерные ДКА-модели и трехмерные КА-модели с динамической неоднородной структурой ячеек.

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

Степень достоверности. Корректность разработанных моделей проверялась путем сопоставления результатов компьютерного моделирования с данными из других работ, в которых результаты были получены в лабораторных

экспериментах, либо при помощи моделирования на основе систем дифференциальных уравнений.

Личный вклад. Все методы и модели, предлагаемые в данной диссертации, а также программный комплекс, были разработаны автором лично.

Апробация работы. Основные результаты работы докладывались на 4-х международных, 4-х молодежных международных и 4-х молодежных местных конференциях: «13th International Conference on Parallel Computing Technologies» (PaCT-2015), Petrozavodsk, Russia, 2015; «Advanced Mathematics, Computations and Applications 2015» (AMCA-2015), Novosibirsk, Russia, 2015; «Mathematical Modeling and High Performance Computing in Bioinformatics, Biomedicine and Biotechnology» (MM-HPC-BBB-2014), Novosibirsk, Russia, 2014; «Advanced Mathematics, Computations and Applications 2014» (AMCA-2014), Novosibirsk, Russia, 2014; «Теория и численные методы решения обратных и некорректных задач» (ОНЗ-2015), Новосибирск, 2015; «53-я Международная научная студенческая конференция» (МНСК-2015), Новосибирск, 2015; «The 6th International Young Scientists School Systems Biology and Bioinformatics» (SBB-2014), Novosibirsk, Russia, 2014; «Современные проблемы прикладной математики и информатики», Новосибирск, 2014; «52-я Международная научная студенческая конференция» (МНСК-2014), Новосибирск, 2014; «Конференция молодых ученых ИВМиМГ СО РАН», Новосибирск, 2015/2014/2013; Семинары по клеточным автоматам, лаборатория синтеза параллельных программ, 2012-2015.

Работа выполнялась в рамках Программы фундаментальных исследований Президиума РАН, проект 15.9 (2014), а также при поддержке гранта РФФИ 14-01-31425 mol_a.

Публикации. Основные результаты по теме диссертации изложены в 14 работах, 4 из которых изданы в журналах рекомендованных ВАК, 2 – в иных журналах, 8 – в тезисах докладов.

Объем и структура работы. Диссертация состоит из введения, пяти глав и заключения. Полный объем диссертации составляет 93 страницы с 47 рисунками. Список литературы содержит 97 наименований.

Полностью дискретные методы моделирования

Особенности биологических систем, связанные 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.

Другим примером дискретно-непрерывных моделей, в которых используется сложная форма биологических объектов (в частности, клеток), являются модели, описывающие клетки геометрическим способом с привлечением теории упругости для описания их динамики и взаимодействия. Например, в [51] клетки описываются при помощи полусфер заданного радиуса, а центры соседних клеток связаны сжатой пружиной. В [52] стенки клеток имитируются пружинами с заданной длиной и жесткостью, которые связаны в точках, составляющих периметр клетки.

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

Как было замечено в [1], механизмы роста и деления биологических объектов (в частности, клеток) в большей степени определяются не уравнениями, а совокупностью определенных правил. Поэтому, переход к полностью дискретным моделям, основанным на правилах, может стать закономерным этапом развития математического моделирования биологических систем. Такие модели, в отличие от дискретно-непрерывных методов моделирования, не наследуют сложностей, связанных с численным решением дифференциальных уравнений, и лишены проблемы дополнительных погрешностей от согласования непрерывных и дискретных величин. Следует также учитывать тот факт, что компьютерное моделирование подразумевает использование в качестве инструмента вычислений компьютера, который оперирует дискретными данными, а любая непрерывная модель неизбежно аппроксимирует к ее дискретному состоянию при переносе на языки программирования. Кроме того, полностью дискретные модели позволяют получать не только качественную, но и количественную картину моделируемого процесса, а также предоставляют детальную визуализацию этой картины.

Одним из широко используемых в современной вычислительной биологии дискретных методов моделирования, является стохастическая реакционно-диффузионная модель на основе частиц [53]. В такой модели различные внутриклеточные вещества представляются в виде абстрактных частиц, которые могут перемещаться случайным образом в дискретном пространстве (диффузия), и вступать в реакции по заданным стохастическим правилам. В качестве абстрактной частицы может выступать как единица вещества (например, мономер белка), либо некоторая его концентрация (тогда дискретное пространство может быть разбито на конечные площади/объемы [54, 55]). Например, в [56] при помощи стохастической реакционно-дифузионной модели был смоделирован процесс формирования сети кровеносных сосудов, а также показаны преимущества предложенного метода над моделью, основанной на клеточной модели Потт-са. В уже упомянутой работе [2], где моделировалась самоорганизация белков MinCDE, помимо модели на основе дифференциальных уравнений, была также разработана стохастическая реакционно-дифузионная модель на основе частиц, которая показала более детализированную картину процесса моделирования в сравнении с ее непрерывным аналогом.

Большинство дискретных моделей, основанных на правилах, можно представить в формализме клеточных автоматов. Понятие клеточного автомата (КА) было предложено венгеро-американским математиком Д. фон Нейманом в 1940-ых годах XX века. Классический КА представляет собой дискретную прямоугольную решетку, на которой расположены элементарные вычислители - ячейки, а функционирование КА осуществляется по заданным правилам переходов [3]. КА начали свой путь от простой детерминированной модели с булевым алфавитом, которую фон Нейман использовал для изучения биологического самовоспроизведения [57] и долгое время оставались лишь объектом для игр разума математиков [58,59]. В 1984 году Т. Тоффоли в своей работе [60] выдвинул и обосновал идею, что КА являются скорее альтернативой для дифференциальных уравнений, чем их аппроксимацией. Позже, в 1987 году Т. Тоффоли совместно с Н. Марголусом опубликовали свою знаменитую работу [61], в которой продемонстрировали, что КА могут быть использованы как весьма эффективный инструментом для математического моделирования. В 1984 году С. Вольфрам в работе [62] рассматривал КА как универсальный инструмент для вычислений, а в 1993 году в [63] показал возможность применения КА к задачам статистической механики. В настоящие время КА превратился в эффективный инструмент, который позволяет разрабатывать различные математические модели: от простых синхронных и детерминированных, до сложных асинхронных стохастических моделей пространственной динамики [3,5,64] и самоорганизации [6]. КА также нашли широкое применения в моделировании различных биологических процессов. Например, в [65] была предложена КА-модель роста опухолей эпителиальных тканей, а в [66,67] смоделировано развитие апикальной меристемы побега растения Arabidopsis thaliana. В заключение хотелось бы отметить, что асинхронные стохастические модели являются наиболее важными в задачах моделирования различных биологических явлений, т.к. отражают тот факт, что в природе большинство процессов являются стохастическими, а не детерминированными.

Оператор однонаправленной вставки в массив ячеек

Из конечного числа именующих функций составляются шаблоны соседства (или окрестности). Например, шаблон Т(г) = {i, 0JV(«), Ы ) М ) М«)} определяет соседство фон Неймана для ячейки с именем і (принято, что г также входит в шаблон).

Суперпозиция шаблонов соседства образует уровни соседства. Так, Т(г) образует первый уровень соседства для ячейки г, а T(T{i)) = {T(j) : j Є Т(г)} - второй уровень (т.е. соседи соседей ячейки г). Аналогично образуются и более высокие уровни соседства.

Состояния ячеек из окрестности Т(г) в момент времени t образуют локальную конфигурацию S(i,t) = {(и,і), (ьі,фі(і)),..., (vk,(f k(i))}. Важным отличием локальной конфигурации от шаблона соседства является то, что шаблон определяет множество имен ячеек, а локальная конфигурация - множество состояний этих ячеек в конкретный момент времени. Множество состояний всех ячеек массива Q в момент времени t образуют глобальную конфигурацию Q(t).

Функционирование ДКА задается правилами переходов в, при помощи которых ячейки (в моменты дискретного времени) переходят из одного своего состояния в другое. Такие переходы могут зависеть как от состояния самой ячейки, так и от состояний соседних ячеек в некоторой окрестности. Правила переходов могут состоять из одной элементарной подстановки в, или из композиции нескольких в = (ві,в2,...,Оп) [69,70]. Каждая подстановка вк применяется к локальной конфигурации S каждой ячейки і и задается следующим образом:

где Р - вероятностные условия применения подстановки, которые могут отсутствовать, С - дополнительные условия, которые также могут отсутствовать, р - режим применения подстановки.

Подстановка Врк применяется согласно ее режиму применения р Є {а,а}. Существует два основных режима: а - асинхронный и о - синхронный. В синхронном режиме подстановка применяется ко всем ячейкам одновременно: вычисляются новые состояния всех ячеек, а затем все ячейки одновременно изменяют свои состояния на новые. В асинхронном режиме подстановка применяется к ячейкам по очереди (в случайном, или заданном порядке): выбирается ячейка, вычисляется ее новое состояние, и ячейка сразу же меняет свое состояние на новое, после чего выбирается следующая ячейка.

Исходя из того, что локальные конфигурации S(i,t) соседних ячеек могут пересекаться, применение подстановок к ячейкам должно удовлетворять условию детерминированности, которое гласит, что несколько подстановок вк не должны изменять состояние одной ячейки одновременно [71]. Данное условие автоматически выполняется для асинхронного режима работы, т.к. в этом режиме подстановка в один и тот же момент времени применяется только к локальной конфигурации одной ячейки. Для синхронного режима работы, локальная конфигурация S(i,t) должна состоять не более чем из одной ячейки (т.е. \S(i,t)\ 1).

Применение правил переходов в ко всем ячейкам массива Q изменяет глобальную конфигурацию П() на П( + 1). Такое изменение называется итерацией.

Пример 2. Пусть для ДКА из примера 1 заданы правила переходов в, которые состоят из суперпозиции трех подстановок Ф(6,і,6,2,6,3) = #з(#2(#і)):

Первая подстановка 6 ! (г) применяется к ячейке, если ее состояние и = 1. Тогда, с некоторой вероятностью Р, ячейка меняет свое состояние на и = 0. Вторая подстановка 6,2(г) применяется к ячейке г и случайно выбранной ячейке j из ее окрестности j є Т(г), и, без какого-либо вероятностного условия, ячейки обмениваются своими состояниями и и v. Следует заметить, что подстановка в2(г) корректна только для асинхронного режима применения, т.к. в синхронном режиме она будет менять состояние более чем одной ячейки одновременно, нарушая тем самым условия детерминированности. Наконец, третья подстановка 9з(г) это сокращенная запись подстановки, обратной к подстановке 9і(і) - т.е., если ячейка г имеет состояние и = 0, тогда с вероятностью 1 — Р она меняет свое состояние на и = 1. Такая сокращенная запись позволительна и будет иногда применяться, если она однозначно определяет действие над состоянием ячейки, не оставляя двусмысленности. Кроме того, иногда удобно представлять некоторые подстановки графически (рис. 2.2), аналогично случаю сокращенной записи.

Для того, чтобы ДКА можно было применять в задачах, связанных с моделированием динамики структуры, необходимо иметь возможность динамически изменять пространство массива ячеек ДКА. Так, рост биологических тканей может моделироваться вставкой новых ячеек в массив. Для вставки ячеек необходимо выполнить следующее: - Объединить множество имен вставляемых ячеек с множеством имен исходного массива. - Связать ячейки на границах вставки.

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

Таким образом, вставка столбца (строки) ячеек Qins в массив П осуществляется при помощи оператора однонаправленной вставки: где П = {(u ,q) : и Є A, q є X U Xms} - результирующий массив ячеек, (і,фсі(і)) - ячейка г Є П и ее сосед по направлению d, задающие место вставки.

Пример 3. Пусть в массив ячеек из примера 1, который задан на множестве имен X = {1,2,...,9}, необходимо вставить столбец из трех ячеек с именами Xms = {10,11,12}. Пусть в качестве места вставки указана ячейка с именем 2 и ее восточный сосед с именем 3. Оператор вставки принимает вид: віпз(2,3) : П U Qms — П . Отсюда, подмножества имен граничных ячеек Х\ = {2,5,8} и Х2 = {3,6,9}. Работа данного оператора проиллюстрирована на рис. 2.3, а преобразованная матрица смежности - на рис. 2.4.

Алгоритм построения колец

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

Основной структурной единицей поверхности является кольцо. Каждое кольцо характеризуется тремя параметрами: радиусом, 3D-координатой и списком ячеек. Каждая ячейка из списка, в свою очередь, обладает состоянием и 2D-координатой относительно центра кольца. Относительная 2D-координата выбрана для того, чтобы при смене положения кольца в пространстве Иерархия организации неоднородного массива ячеек трехмерного клеточного автомата. нужно было переписывать координату каждой отдельной ячейки этого кольца. Следует отметить, что обход ячеек в кольце начинается с ячейки, имеющей максимальную по оси Y координату (позиция тг/2 кольца). Этот факт важен при определении соседства ячеек и будет объяснен далее в разделе 3.2.

Кольцо является трехмерной поверхностью, но ячейки в нем организованы двумерным образом. Для отображения ячеек в трехмерное пространство используется координата z их кольца. Таким образом, алгоритм построения кольца сводится к упорядочиванию его ячеек в окружность на плоскости XY и состоит из следующих действий (рис. 3.2): 1. Плоскость разбивается на ячейки с шагом h (размер ячейки) так, что центр одной из ячеек лежит в начале координат (т.е. имеет координаты Хг = 0 и І/І = 0). 2. Ячейки (хі,уі), для которых выполняется условие г — h di г + h, где г - заданный радиус кольца, di = л/хї + УЇ, образуют список ячеек данного кольца. Таким способом можно построить кольца различного радиуса, которые будут располагаться плотно друг к другу, не оставляя промежутков и не пересекаясь между собой (рис. 3.2).

Клетку бактерии можно условно разделить на тело клетки и ее полюса. Тело удобно представить в виде цилиндра, а полюса - в виде двух половин одного сфероида (рис. 3.3). Таким образом, задача организации структуры, имитирующей поверхность клетки бактерии, сводится к построению из ячеек цилиндра и двух сфероидов. Цилиндр легко составляется из колец ячеек (рис. 3.4) и может быть определен высотой, которая задает число колец в цилиндре, и радиусом основания, задающим радиус всех колец цилиндра. Сфероид, в свою очередь, определяется полуосью а, которая параллельна оси координат Z, и двумя равными полуосями Ъ = с, которые параллельны осям координат X и Y, соответственно (рис. 3.5). Построение сфероида из ячеек является более сложной задачей, чем построение цилиндра, т.к. дополнительно требует определения радиусов всех своих колец. Рассмотрим алгоритм построения сфероида (рис. 3.6): 1. В плоскости YOZ строятся два вспомогательных эллипса (вернее только их I четверти) с центрами в начале координат и осями (а — h,b — К) и (а + h, Ъ + К), где h - размер ячейки. Рисунок 3.3: Представление поверхности клетки бактерии в виде цилиндра и двух половин сфероида. Рисунок 3.4: Организация цилиндра (поверхности тела клетки) в виде колец ячеек. 2. На плоскость накладывается сетка с шагом так, что один из узлов лежит в начале координат, а координаты остальных узлов больше, либо равны 0. 3. Узлы, попавшие между вспомогательными эллипсами, определяют радиусы и координаты каждого из колец сфероида. Рисунок 3.5: Организация половины сфероида (поверхности полюса клетки) в виде колец ячеек.

Стоит отметить, что алгоритм построения сфероида идейно схож с алгоритмом построения колец, однако, имеет решающее отличие: в алгоритме построения колец мы работаем в плоскости и, по заданным параметрам, определяем ячейки, составляющие кольцо, в то время как в алгоритме построения сфероида, мы работаем в плоскости и только определяем радиусы и координаты колец; далее, по найденным радиусам и -координатам уже и строятся сами кольца. На рис. 3.6 также можно увидеть, что алгоритм построения сфероида допускает вложенные кольца (т.е. кольца с одинаковой координатой = , но разными радиусами = ).

Задача определения соседства ячеек играет одну из ключевых ролей при составлении правил КА модели. Вычисление соседства на регулярной решетке требует лишь расчета смещений по индексам (особое внимание уделяется только граничным случаям). Однако, ситуация кардинально меняется на неоднородной решетке, моделирующей какую-либо поверхность. Функция соседства в этом случая весьма нетривиальна, а вычисление соседства с достаточно большим На поверхностях также смоделирован некоторый автоволновый процесс, который демонстрирует возможность моделирования пободных процессов на этих поверхностях. радиусом может быть очень ресурсоемкой операцией, выполнение которой, в большинстве случаев, может потребоваться на каждой итерации для каждой ячейки. Одним из способов решения этой проблемы является однократный расчет соседства для каждой ячейки и занесение этого результата в таблицу. Однако, с ростом числа ячеек и величины радиуса соседства, может потребоваться громадное количество памяти, требуемое для хранения таких таблиц. К примеру, кубическая решетка со стороной в 1000 клеток и радиусом соседства 10 клеток требует 10003 103 8 байт памяти (в случае 64-разрядных систем).

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

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

Трехмерная КА-модель 3 самоорганизации MinDE на поверхности растущей и делящейся клетки (in vivo)

В данном разделе предлагается трехмерная КА-модель 3 самоорганизации белков MinDE на поверхности растущей и делящейся клетки (случай in vivo). В [2] уже рассматривались две трехмерных модели самоорганизации MinDE на поверхности клетки, одна из которых была построена на системе дифференциальных уравнений, а другая на стохастическом реакционно-диффузионном методе на основе частиц. Однако, обе предложенные модели использовали статичную поверхность, имитирующую форму клетки бактерии. Таким образом, деление клетки во время самоорганизации белков MinDE не моделировалось, а рост был смоделирован лишь в упрощенном одномерном случае. Кроме того, модель основанная на системе дифференци Рисунок 4.11: Белковые спирали: (a) из эксперимента in vitro [86]; (b, c) вычислительный эксперимент c решеткой 512 х 256 ячеек; (d) вычислительном эксперимент с решеткой альных уравнений была полностью детерминирована и показывала лишь усредненную картину процесса моделирования. Реакционно-диффузионная же модель на основе частиц являлась стохастической, а одной модельной частице в ней соответствовала несколько реальных димеров, но не был учтен механизм быстрого пере связывания (см. 4.2). Предлагаемая же в этом разделе КА-модель позволяет моделировать рост и деление клетки совместно с самоорганизацией белков MinDE и является более детальной: одной модельной частице соответствует один реальный димер, а также принят во внимание механизм быстрого пересвязывания.

Трехмерная КА-модель К п моделирует процесс самоорганизации белков MinDE in vivo. Белок MinC не берется во внимание по тем же причинам, что были обозначены в разделе 4.2.1 для двумерного варианта модели. Ячейки (и,г)т Є Пт упорядочены в трехмерную неоднородную структуру, имитирующую внутреннюю поверхность мембраны клетки E. coli. Для построения такой структуры использовался метод организации массива ячеек, предложенный в главе 3. Моделируемая поверхность Пт клетки определяется тремя параметрами: высотой hc цилиндра, диаметром dc его основания, и длиной as той полуоси сфероида, которая параллельна высоте цилиндра (другая полуось, перпендикулярная высоте цилиндра, равна диаметру цилиндра, см. 3.1.2). Таким образом, параметр dc задает диаметр моделируемой клетки, as - крутизну полюсов, а сумма 2as + hc - ее длину. Рисунок 4.12: Некоторые примеры белковых паттернов, полученных в процессе подбора модельных параметров.

В [2] было показано, что концентрация белков MinD и МіпЕ в цитозоле клетки влияет на паттерны, получаемые в результате самоорганизации MinDE. Поэтому, в модели H ira, помимо самой поверхности Пт моделируемой клетки, также имитируется и внутриклеточное пространство (цитозоль). Во внутриклеточном пространстве находятся не связанные с мембраной белки MinD и MinE, которые активно диффундируют по этому пространству, а также могут уходить из него на мембрану (на поверхность Пт) и возвращаться назад. Проведенные вычислительные эксперименты показали, что моделирование такого пространства в трехмерном случае потребляет подавляющую часть вычислительных ресурсов (из-за активного моделирования диффузии), в то же время не являясь определяющим фактором, который влияет на процесс самоорганизации белков на поверхности Qm мембраны. Другой вычислительный эксперимент, в котором внутриклеточное пространство было аппроксимировано криволинейной поверхностью в трехмерном пространстве, показал схожую картину процесса самоорганизации белков на поверхности мембраны, при этом была достигнута приемлемая вычислительная нагрузка. В этом варианте внутриклеточное пространство представлено в виде буферов П и Пе белков MinD и MinE, соответственно. Буферы fld и Пе по своей внутренней организации являются копиями поверхности Пт так, что ячейки с одинаковыми именами (u,i)d еО и (и,і)е Є Пе поставлены в соответствие ячейке (и,г)т Є Пт и могут быть рассмотрены как некоторая область внутриклеточного пространства над поверхностью мембраны в этом месте. На рис. 4.13 моделируемая поверхность и два буфера представлены графически.

Для ячеек поверхности Пт определено множество состояний Ат = {0, MinD, MinE, MinDE}, где 0 означает пустую ячейку (поверхность мембраны в этом месте не занята белками), а остальные состояния моделируют нахождение в ячейке одного из димеров MinD, MinE или комплекса MinDE, соответственно. Множества состояний для ячеек Рисунок 4.13: Графическое представление моделируемой поверхности и двух буферов. буферов Па и Пе определены на множестве натуральных чисел: Ad = Ае = No, что моделирует возможность нахождения в одной ячейке буфера от нуля до нескольких димеров MinD и MinE, соответственно. Таким способом имитируется некоторая глубина буферов, которая не ограничена сверху2 в виду того, что проведенные вычислительные эксперименты показали, что отдельные ячейки не достигают экстремально больших значений по причине достаточно активной диффузии в буферах, сглаживающей любые пики в концентрации белков. Правила переходов 0 іга КА-модели H ira разделены на две группы:

Группы подстановок реакции и диффузии применяются поочередно, моделируя взаимодействие белков с мембраной и друг с другом, а также их диффузию (как по мембране, так и в цитозоли). Подстановки диффузии Qfiff работают в асинхронном режиме и применяются параллельно: 6% к ячейкам поверхности Пт, 92 к ячейкам буфера fld, и 92 к ячейкам буфера Пе. При этом подстановки 9% и 92 применяются к ячейкам большее количество раз, чем подстановка 0, имитируя тем самым более активную диффузию белков в цитозоли, чем на мембране (на поверхности Пт).