Формальное описание и визуальное моделирование биологических систем
На правах рукописи
КОЛПАКОВ Федор Анатольевич ФОРМАЛЬНОЕ ОПИСАНИЕ И ВИЗУАЛЬНОЕ МОДЕЛИРОВАНИЕ БИОЛОГИЧЕСКИХ СИСТЕМ 03.01.09 - Математическая биология, биоинформатика
АВТОРЕФЕРАТ
диссертации на соискание ученой степени кандидата биологических наук
Москва 2011
Работа выполнена в Учреждении Российской академии наук Конструкторско-технологическом институте вычислительной техники СО РАН, г. Новосибирск.
Научный консультант: доктор биологических наук, профессор Поройков Владимир Васильевич
Официальные оппоненты: доктор биологических наук Лисица Андрей Валерьевич, доктор физико-математических наук Ройтберг Михаил Абрамович Ведущее учреждение: Учреждение Российской академии наук Институт молекулярной биологии им. В.А. Энгельгардта РАН, г. Москва
Защита состоится 7 апреля 2011 г. в 11 часов в конференц-зале на заседании диссертационного совета Д 001.010.01 при Учреждении Российской академии медицинских наук Научно-исследовательском институте биомедицинской химии имени В.Н.Ореховича РАМН по адресу: 119121, г. Москва, ул. Погодинская, 10.
С диссертацией можно ознакомиться в библиотеке Учреждения Российской академии медицинских наук Научно-исследовательский институт биомедицинской химии имени В.Н.Ореховича РАМН по адресу:119121, г. Москва, ул. Погодинская, 10.
Автореферат разослан 5 марта 2011 г.
Ученый секретарь Диссертационного совета, кандидат химических наук Е.А. Карпова
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность проблемы. Успехи в развитии высокопроизводи тельных автоматизированных технологий для сбора численных данных транскриптомика, протеомика, метаболомика, (геномика, интерактомика и другие омикс-технологии) создали необходимые предпосылки для изучения и моделирования биологических систем на молекулярно-клеточном уровне. В начале XXI столетия возникло новое научное направление – системная биология, которая является междисциплинарной наукой о жизни, исследующей сложные взаимодействия в живых системах (Kitano H., 2001, 2002).
Системная биология предполагает определенный цикл исследо ваний: теория – аналитическое или компьютерное моделирование для формулировки гипотез о поведении системы – экспериментальная проверка результатов моделирования и, затем, использование полученных данных для описания клетки или клеточных процессов для улучшения компьютерной модели или теории (Covert et al., 2004;
Kholodenko et al., 2005).
Ключевым компонентом, необходимым для успешного развития данного направления, является формальное описание, последующее моделирование и анализ исследуемых биологических систем (Hucka et al., 2004;
Le Novere et al., 2009). Данная задача может быть существенно упрощена с точки зрения исследователя-биолога путем использования компьютерных программ, поддерживающих визуальное моделирование - графическое представление биологических систем и процессов в виде диаграмм. Ключевым компонентом визуального моделирования является разработка графического языка, позволяющего формально и полно описать структуру модели и ее поведение (Lee, 2001).
Данный подход был с успехом применен для моделирования сложных физических, электротехнических и программных систем (Бенькович и др. 2002;
Lee, 2001;
и другие). Однако создание графического языка и компьютерных программ, поддерживающих визуальное моделирование с учетом специфики биологических систем до сих пор является крайне актуальной задачей (Le Novre N. et al., 2009). Таким образом, "разработка практичных и гибких языков для формального описания биологических систем — это только вопрос времени, и в недалком будущем эти языки будут преподаваться студентам, изучающим биологию, так же, как формальные подходы преподаются сейчас инженерам — как необходимая основа изучения их специальности" (Лазебник Ю., 2003).
Цели и задачи работы. Цель данной работы – разработка методов и их реализация в виде компьютерной программы для формального описания и визуального моделирования сложных биологических систем на различных иерархических уровнях и с разным уровнем детализации происходящих в них процессов. Для достижения этой цели были поставлены и решены следующие задачи:
1. Разработать универсальный подход для формального описания структуры и функционирования широкого круга биологических систем на разных иерархических уровнях и с различным уровнем детализации происходящих в них процессов.
2. Для поддержки парадигмы визуального моделирования разработать методы автоматической генерации программного кода для численного моделирования динамики биологических систем на основе их формального описания в виде диаграмм.
3. Разработать компьютерную программу, обеспечивающую основные этапы формального описания и визуального моделирования сложных биологических систем, начиная с поиска информации в существующих биологических базах данных и заканчивая построением математических моделей биологических систем и численным моделированием их динамики.
4. Показать применимость разработанных подходов для формального описания и визуального моделирования различных типов биологических систем.
Научная новизна. С использованием современных методов и технологий (модульная архитектура, мета-модель и объектно ориентированный подход для представления биологических данных, JavaBeans, BeanExplorer, Apache Lucene и др.) разработана оригинальная компьютерная программа которая предоставляет BioUML, пользователю-биологу максимальные возможности для формального описания и визуального моделирования по сравнению с доступными в мире аналогами.
Формализовано определение графической нотации и впервые разработан набор типов диаграмм для последовательной реконструкции сложных биологических систем, начиная с неформального представления данных в виде семантических сетей и заканчивая построением строгих математических моделей.
Практическая значимость. Разработанная программа BioUML была использована и используется в настоящее время в качестве информационной платформы в ряде международных и российских проектов для формального описания и построения моделей ряда сложных биологических систем: проект Net2Drug – From gene regulatory networks to drug prediction (Шестая рамочная программа ЕС);
проект LipidomicNet – Lipid droplets as dynamic organelles of fat deposition and release: translational research towards human disease (Седьмая рамочная программа ЕС);
грант РФФИ № 04-04- «Изучение и формализованное описание процессов, происходящих под влиянием избыточного поступления в организме человека тяжелых металлов, создание концептуальных моделей патогенеза хронических неинфекционных заболеваний легких и оптимизация их лечения»;
интеграционный проект СО РАН № 46 «Исследование и моделирование физиологических, молекулярно-генетических и биофизических механизмов формирования артериальной гипертонии с целью создания оптимальных программ ранней диагностики, прогнозирования осложнений и их профилактики»;
интеграционный проект СО РАН № 91 «Функция почки как интегральный механизм регуляции артериального давления при артериальной гипертонии:
экспериментальное исследование, математическое и компьютерное моделирование;
проект «Комплексное исследование неспецифической реакции организма на развитие злокачественных образований:
экспериментальное и теоретическое моделирование» в рамках ведомственной целевой программы «Развитие научного потенциала высшей школы (в 2009-2010) годы.
Программа BioUML может быть использована как поисково справочная система за счет эффективной интеграции с базами данных, наличия полнотекстового поиска и возможности представления результатов в графическом виде. Пользователями программы BioUML являются научные работники, аспиранты и студенты, занимающихся моделированием биологических систем и работающие в смежных областях: молекулярная биология и генетика, вирусология, генная инженерия, медицина.
Программа BioUML (дистрибутив, исходный код, документация для пользователя и разработчика) свободно доступны с веб-сайта по адресу:
http://www.biouml.org.
Апробация работы. Результаты работы были представлены на следующих российских и международных конференциях: International Conference on Systems Biology – ICSB-2002 (Стокгольм, Швеция), ICSB-2004 (Гайдельберг, Германия), ICSB-2006 (Йокохама, Япония), ICSB-2007 (Лонг Бич, США), ICSB-2008 (Гетеборг, Швеция), ICSB- (Эдинбург, Великобритания);
"Биоинформатика регуляции и структуры генома (BGRS)", Новосибирск, в BGRS-1998, BGRS-2000, BGRS-2002, BGRS-2004, BGRS-2006, BGRS-2008, BGRS/SB-2010, Новосибирск;
Московская международная конференция Биотехнологии и медицина, Москва, 2006;
«Молекулярная онкология», Всероссийская конференция с международным участием, Новосибирск, 2008;
Международная Московская конференция по компьютерной молекулярной биологии (MCCMB'05), Москва 2005;
German Conference on Bioinformatics, GCB’2003, Нойхерберг, Германия, 2003.
Публикации. Материалы диссертационной работы отражены в публикациях, из них 9 статей в рецензируемых журналах, входящих в список ВАК, 2 главы в монографиях, 10 публикаций в рецензируемых трудах конференций. Получено 3 свидетельства на регистрацию программ и баз данных для ЭВМ.
Структура и объем диссертации. Диссертационная работа состоит из введения, 6 глав, заключения и списка литературы содержащего 147 ссылок. Работа изложена на 150 страницах, содержит 57 рисунков и 12 таблиц.
СОДЕРЖАНИЕ РАБОТЫ
Глава 1. Обзор литературы В обзоре литературы рассмотрены основные методы и подходы, используемые в системной биологии для реконструкции, формального описания, графического представления и моделирования сложных биологических систем, а также компьютерные программы, разработанные автором в 1994–2010 г.г. и послужившие заделом для разработки программы BioUML. Работа была начата в 1994 г. с разработки программы MGL для формального описания и графического представления геномных регуляторных последовательностей (Колпаков Ф.А. и Бабенко В.Н., 1996). В 1996-1997 г. основные классы были переведены с языка C++ на язык Java и были созданы MGL сервер и клиент (апплет TRRD Viewer) для визуализации регуляторных районов генов из базы данных TRRD (Heinemeyer et al., 1997, Kolchanov N.A. et al., 1999). В 1997 г. были разработаны новые принципы формального описания и графического представления генных сетей, реализованные в системе GeneNet (Kolpakov F.A. et al., 1998, Kolpakov F.A. and Ananko E.A., 1999). На основе предыдущего опыта и анализа литературы сформулированы требования к разрабатываемой компьютерной программе.
Глава 2. Используемые технологии В данном разделе рассматриваются основные методы и технологии, использованные для формального описания и визуального моделирования биологических систем, а также для разработки программы BioUML.
2.1. Технология JavaBeans разработана компанией Sun Microsystems Inc., согласно спецификации JavaBean – это многократно используемый программный компонент, которым можно манипулировать визуально. Технология JavaBeans обеспечивает следующие возможности: интроспекция – возможность получить список свойств объекта;
настраиваемость – возможность читать и устанавливать значения этих свойств;
поддержка "событий" для связи объекта JavaBean с программой и другими объектами;
cохраняемость – возможность сохранить в поток вывода данных и восстановить значение всех свойств объекта из потока ввода данных.
2.2. Технология разработанная компанией BeanExplorer, является расширением технологии DevelopmentOnTheEdge.com JavaBeans и состоит из трех частей:
1) динамические типизированные свойства (Fauler M., 1997), позволяющие добавлять к объекту JavaBean свойства во время исполнения программы;
2) внутренняя модель представления объектов JavaBean и динамических свойств в виде дерева;
3) набор инспекторов свойств, которые позволяют просматривать и редактировать информацию об объекте в различном виде:
– для Java приложения – в виде редактора свойств, диалога, таблицы;
– для веб приложения – в виде HTML формы, таблицы, или форматированного текста.
В данной работе технология BeanExplorer используется для просмотра и редактирования биологических данных, представленных в виде объектов Java классов. Для этого при помощи механизма интроспекции, встроенного в язык Java, для любого экземпляра Java класса, следующего соглашениям JavaBeans и/или использующего набор динамических свойств, создается внутренняя модель свойств объекта.
Затем на основе этой модели в момент выполнения программы создается элемент пользовательского интерфейса, позволяющий просматривать и редактировать все свойства соответствующего объекта.
2.3. Доступ и поиск информации в биологических базах данных. Для этого используется разработанная компанией ООО «Биософт.Ру» (подразделение компании ООО «Институт системной биологии») библиотека Java классов (пакет ru.biosoft.access) для однообразной работы с гетерогенными биологическими базами данных.
На данный момент эта библиотека (включая дополнительные модули из программы BioUML) обеспечивает работу с основными молекулярно биологическими базами данных: Ensembl, UniProt, KEGG, Reactome, EHMN, TRANSPATH, IntAct, Biomodels;
всего более 50 баз данных.
Объектно-ориентированное представление информации из баз данных в виде объектов JavaBeans позволило создать универсальную полнотекстовую поисковую систему на основе технологии Apache Lucene (lucene.apache.org). Для этого свойства объектов отображаются в поля документа Lucene и индексируются. Предопределенные типы данных и их свойства позволяют единообразным образом строить запросы к различным информационным источникам.
2.4. Библиотека графических объектов, разработанная компанией ООО «Биософт.Ру» (пакет ru.biosoft.graphics), обеспечивает графические примитивы, функции и компоненты для визуального представления биологических данных: 1) графические примитивы для рисования двумерных графических примитивов, таких как линии, прямоугольники, овалы, текст и т.д.;
2) механизм создания комплексных графических объектов, т.е. объектов, частями которого являются другие графические объекты;
3) поддержка механизма управления элементами комплексных объектов;
4) обработка событий, генерируемых устройствами ввода (клавиатура, манипулятор мышь).
2.5. Модульная архитектура. Платформа Eclipse, изначально разработанная компанией IBM (http://www.eclipse.org), используется для построения программы BioUML по модульному типу. Приложение состоит из модулей (plug-ins), которые взаимодействуют друг с другом через определенные соглашения/интерфейсы. Например, один модуль может объявить точку расширения (extension point) для экспорта диаграмм, а другие модули обеспечат экспорт диаграмм в разных форматах (extensions). Как правило, каждый модуль состоит из:
- jar файлов, содержащих выполняемый Java код;
- вспомогательные файлы – тексты лицензий, документация и т.п.;
- plugin.xml – XML файл, который описывает модуль: зависимости от других модулей;
входящие в состав модуля библиотеки (jar файлы) и их доступность для других модулей;
extensions и extensions points, предоставляемые модулем.
Глава 3. Формальное описание биологических систем В данной главе рассматриваются разработанные автором мета модель, используемая для формального представления структуры биологических систем, и библиотека Java классов для объектно ориентированного представления информации об основных свойствах компонентов молекулярно-биологических систем.
3.1. Мета-модель обеспечивает формализм для комплексного описания, графического представления и численного моделирования широкого круга биологических систем. Она состоит из трех взаимосвязанных уровней описания сложной системы (рис. 1):
1) граф - структура системы описывается как компартментализованный (кластеризованный) граф;
2) база данных - каждый элемент графа может содержать ссылку на некоторый объект в базе данных;
3) математическая модель - переменные, формулы, уравнения, события, состояния и переходы. Например, вершины графа могут быть переменными или состояниями системы, а ребра графа могут быть уравнениями, описывающими изменения этих переменных или условными переходами между состояниями.
Информация из широко используемых баз данных по биологическим путям и моделям (KEGG, TRANSPATH, Reactome, BioModels и другие), а также данные в форматах SBML и BioPAX могут быть полностью скорости реакций:
система из 2-х последовательных rate_R1 =k1[A] химических реакций rate_R2 =k2[B] A B C Система дифференциальных уравнений:
R1 R 100 0 0 [A]’ = - rate_R [B]’ = rate_R1 - rate_R [C]’ = rate_R мета-модель ID R1 ID B ID R2 ID C ID A уровень A-B CC.. B-C CC..
CC..
описание компонентов............
...
системы в базе данных // // // // // уровень описание структуры R1 R C A B системы в виде графа уровень переменные: B C математическая A модель системы алгебраические: rate_R1=k1*A rate_R2=k2*B уравнения дифференциальные: B’ = rate_R1 B’ = -rate_R2 C’ = rate_R A’ = -rate_R Рис. 1. Пример отображения простой системы, состоящей из двух последова тельных химических реакций и ее представление по уровням мета-модели.
представлены в терминах разработанной мета-модели. Для хранения данных в терминах мета-модели разработан специальный XML формат.
3.2. Объектно-ориентированное представление биологических данных. В данном разделе рассматривается представление основных молекулярно-биологических объектов (ген, РНК, белок, химическая реакция, компартмент, биологический процесс и т.п.) и их основных свойств в объектно-ориентированном виде – в виде иерархии классов и набора их свойств (пакет biouml.standard.type).
Информация о каждом биологическом объекте представляется в виде объекта Java, следуя соглашениям технологии JavaBeans.
Соответствующий Java класс определяет основные свойства биологического объекта, а дополнительная информация о биологичес ком объекте представляется в виде набора динамических свойств, связанных с конкретным экземпляром соответствующего Java класса.
Глава 4. Визуальное моделирование В данной главе описывается, разработанный автором подход для визуального моделирования биологических систем. Вначале формально определяется понятие графической нотации в виде интерфейса на языке Java, используя которое в программе BioUML автором созданы 5 типов диаграмм для графического представления биологических систем с различным уровнем формальности и детализации их структуры и функционирования. Далее описано, как на основе представления модели биологической системы в виде диаграммы можно автоматически сгенерировать исполняемый код и провести численное моделирование ее динамики.
4.1. Графическая нотация: определение. Графическая нотация (визуальный синтаксис, графический язык) является необходимой составной визуального моделирования (Lee, 2001) и позволяет формально и полно представить модель биологической системы в виде диаграммы. В программе BioUML тип диаграммы задан как Java интерфейс и определяет:
1) типы вершин и ребер - какие типы биологических (и математических) объектов и их взаимодействий могут быть показаны на диаграмме;
2) правила графического представления объектов – как биологические объекты и их свойства должны быть представлены на диаграмме, используя условные обозначения;
3) семантические правила и ограничения – используются для обеспечения семантической целостности диаграммы в процессе ее создания и редактирования. Например, если пользователь удаляет на диаграмме вершину графа, соответствующую некоторому химическому веществу, то все реакции, протекающие с участием этого вещества, также будут удалены.
4.2. Графическая нотация: типы диаграмм. Программа BioUML содержит 5 типов диаграмм:
1. Семантическая сеть – описывает концепции (признаки, процессы или состояния биологических систем), отношения между ними, а также их связь с другими компонентами биологических систем (например, демонстрирует, что определенный ген связан с определенным признаком).
2. Метаболический путь – описывает биологические пути, задейство ванные в метаболических процессах. Основными компонентами таких диаграмм являются вещества, белки, реакции и компартменты.
3. Генные сети - данный тип диаграмм, близок к графической нотации, используемой в системе GeneNet (Kolpakov et al, 1998). Основные компоненты: гены, белки, вещества, реакции, регуляторные события и компартменты.
4. Генная сеть + семантическая сеть – это гибридный тип диаграмм, когда для описания отдельных звеньев генной сети не достаточно экспериментальных данных, то они могут быть описаны только на семантическом уровне (например, когда указано, что какие-то процессы связаны с определенным геном, но механизм их реализации не известен).
5. Математическая модель – расширение графической нотации генной сети, где с элементами графа ассоциированы переменные и уравнения. Также добавляются специальные обозначения для вершин графа, соответствующих уравнениям, функциям и событиям (что позволяет описать дискретное поведение системы, например, смены фаз клеточного цикла).
Таблица Графическая нотация программы BioUML Тип Java класс* Изображение Комментарий диаграмм 1 Биологические понятия и объекты биологическое понятие Concept (концепция, состояние, процесс + + и функция) лиганд или метаболит Substance + + +++ небелковой природы Gene ген + + +++ RNA РНК + + +++ функциональное состояние Protein отображается цветом:
- розовый: активная форма - зеленый - неактивная форма.
модификации – отображаются + + +++ в виде красного круга и буквы, показывающей модификацию:
- P – фосфоририлирование - U – убиквитинирование, и т.п.
структура – отображается формой белка или комплекса компартмент клетки или Compartment + + +++ организма Cell клетка или клеточная культура + + Связи между биологическими объектами Semantic семантическая связь Relation - опосредованная + - активация/усиление - подавление/ослабление Reaction реакция + Specie роль модификатора отражается Reference цветом:
- катализатор (розовый) + - ингибитор (синий) - включение (красный) - выключение (черный) Математические объекты Equation дифференциальное уравнение + алгебраическое уравнение, присваивание Function функция + (определения лямбда функции) Event событие + State состояние + Transition переход:
- по условию + - по времени Stub.Block блок – группа уравнений + Вспомогательные объекты Stub.Note примечание, пунктирная линия + ++++ соединяет примечание с + ++++ объектом на диаграмме Stub.NoteLink * Java класс, используемый для объектно-ориентированного представления соответствующих биологических данных.
Архитектура для визуального моделирования, 4.3.
реализованная в программе BioUML, представлена на рис. 2. Ее основным компонентом является класс SimulationEngine, который на основе информации, представленной в терминах разработанной мета модели, автоматически генерирует код для численного моделирования динамики соответствующей биологической системы. В BioUML реализовано 2 подкласса:
- MatlabSimulationEngine – генерирует MATLAB код и при помощи библиотеки JMatLink (Mller S., 1999) запускает MATLAB для численного моделирования динамики;
- JavaSimulationEngine – генерирует Java код, далее этот код компилируется и динамически подгружается в систему BioUML для численного моделирования, используя решатели уравнений, встроенные в BioUML. По ходу решения текущие результаты могут выводиться на графики и сохраняться в файл или базу данных.
4.4. Автоматическая генерация кода. На основе формального описания биологической системы в терминах разработанной мета модели автоматически генерируется Java или MATLAB код, представляющий модель соответствующей биологической системы в виде набора алгебро-дифференциальных уравнений, уравнений с задержкой переменной по времени, кусочно-непрерывных функций, событий, состояний и переходов.
Одним из ключевых этапов генерации кода является разбор математических выражений, представленных в виде текста (для этого определена соответствующая грамматика) или в формате MathML (поддерживается подмножество, определенное в стандартах CellML и SBML level 2) и последующая генерация соответствующего кода на языках Java или Matlab. Для этого нами разработан следующий подход:
вызывает Matlab MATLAB SimulationResult код SQLTransformer получает вызывает результат редактор SimulationResult JMatLink диаграмм форматы TextTransformer генерирует данных использует результат DML Matlab SimulationResult simulation engine мета SBML модель Result Java Listener CellML SimulationEngine вызывает формирует генерирует запускает ResultWriter Java интерфейсы, вызывает Java ODE определяющие методы решатели ResultPlotPane код Solver для генерируемого ОДУ Java кода Euler OdeModel AeModel DormandPrince Обозначения:
Model основные компоненты Imex1S основные Java классы ImexSD наследование взаимодействия между компонентами Рис. 2. Основные компоненты архитектуры для визуального моделирования.
- абстрактное синтаксическое дерево (AST) – является внутренним и основным представлением математических выражений;
- Parser – осуществляет синтаксический разбор и семантический анализ математических выражений, результатом разбора является AST. Для разбора текстовых математических выражений определена соответствующая грамматика и при помощи технологии JavaCC сгенерирован соответствующий парсер. Для разбора выражений MathML написан парсер, который отображает DOM дерево, построенное на основе XML файла в соответствующее AST.
- ParserContext – содержит список переменных и функций, заданных в мета-модели. Эта информация необходима для семантической проверки выражений. Например, при разборе уравнения, задающего скорость реакции, проверяется, что переменные, соответствующие компонентам реакции, определены в модели (диаграмме), а необъявленные константы заносятся в общий список переменных.
- Formatter – генерирует по заданному AST выражению текстовую строку на заданном языке программирования (Java, Matlab), текстовое математическое выражение или фрагмент CellML.
4.5. Численное моделирование. Для численного моделирования динамики систем реализованы решатели, поддерживающие:
- системы обычных дифференциальных уравнений;
- системы алгебраических уравнений;
- обычные дифференциальные и алгебраические уравнения с задержкой по времени;
- дискретные события, состояния и переходы между состояниями.
Для численного решения систем ОДУ используются метод Эйлера и явные и неявные методы Рунге-Кутта. Для решения алгебраических уравнений используется метод Ньютона. Для учета задержки по времени автоматически определяется список необходимых переменных и для них хранится история на глубину максимальной задержки.
Значения в требуемой временной точке получаются методом линейной интерполяции и экстраполяции.
4.6. Тестирование. Для проверки численного моделирования использовался SBML test suite (версия 2.0) из 927 тестов, покрывающих все конструкции для представления моделей в формате SBML (версии 1-3). Работа по тестированию и отладке генерации кодов, а также методов численного моделирования для корректного прохождения всех тестов была проделана магистрантом Шадриным А.А. под руководством автора. Подробная информация о результатах тестирования доступна на сайте BioUML: http://www.biouml.org/sbml_tests/overview.html Глава 5. Компьютерная программа BioUML В данной главе представлены, разработанные автором, архитектура и интерфейс пользователя программы BioUML версии 0.9.2.
5.1. Архитектура. Программа BioUML является компьютерной реа лизацией описанных выше методов и подходов: модульная архитектура Рис. 3. Интерфейс программы BioUML: верхняя левая панель –подключенные базы данных;
верхняя правая панель –диаграмма (фрагмент модели регуляции артериального давления, Karaaslan F. et al., 2005);
левая нижняя панель – просмотр и редактирование выбранного на диаграмме элемента;
правая нижняя панель – набор вкладок, связанных с моделью – описание, параметры, переменные, запуск численного моделирования.
на основе Eclipse runtime, мета-модель, объектно-ориентированное представление данных, доступ к гетерогенным биологическим базам данных, графическая нотация, автоматическая генерация Java кода.
5.2. Интерфейс пользователя. С точки зрения пользователя BioUML - это интегрированная, расширяемая, свободно доступная программа для формального описания, графического представления, анализа и моделирования сложных биологических систем (рис. 3).
Глава 6. Примеры использования программы BioUML 6.1. Демонстрационные примеры. На ряде наглядных примеров автором продемонстрировано, как предложенные методы и подходы могут быть использованы для формального описания и визуального моделирования различных типов биологических систем:
метаболические пути, генные сети, рост и деление клетки, фармокинетические модели, экологические модели.
6.2. Разработка баз данных по биологическим путям и моделям.
Программа BioUML была использована в ряде международных и российских проектов для формального описания и построения моделей ряда сложных биологических систем. Полученные результаты представлены в виде диаграмм и моделей в созданных при помощи BioUML специализированных базах данных (автор разработал архитектуру этих баз данных и участвовал в их заполнении):
- BMOND/Biopath (http://bmond.bioluml.org) – Biological MOdels aNd Diagrams – база данных диаграмм и математических моделей, которая содержит более 500 диаграмм для формального описания и математического моделирования различных биологических процессов;
- Cyclonet (http://cyclonet.biouml.org) – интегрированная база данных по клеточному циклу и канцерогенезу (Kolpakov et. al., 2007);
- Ubiquitomix (http://ubiquitomix.biouml.org/index.html) – база данных по процессам убиквитинирования.
База данных BMOND содержит иерархический классификатор, который позволяет сгруппировать модели и диаграммы на основе описываемой биологической функции или подсистемы (таблица 2).
Таблица Основные разделы базы данных BMOND/Biopath Раздел Количество диаграмм Апоптоз Артериальная гипертония (связанные с ней биологические пути и молекулярные механизмы, включая регуляцию водно-солевого баланса) Канцерогенез (механизмы, связанные пути, мишени и механизмы действия лекарств) Клеточный цикл Лекарства и их мишени Метаболизм железа (включая механизмы и модели транспорта в клетку, роль в заболеваниях) NF-B (путь передачи сигнала, связанные пути) Нуклеосомы и их роль в регуляции транскрипции Оксислительный стресс (оксиданты, антиоксиданты, метаболические пути, роль в заболеваниях) Прочее 6.3. Механизмы регуляции артериального давления и водно солевого баланса. Используя программу BioUML с участием автора были формально описаны в виде диаграмм механизмы регуляции артериального давления и водно-солевого баланса, а также была построена интегрированная модель, которая позволяет качественно и количественно исследовать влияние различных физиологических параметров (сердечный выброс, сопротивление артерий, объем крови, поступление воды и натрия в организм, относительная активность почечного симпатического нерва, сопротивление афферентной артериолы, эффект хемо- и барорецепторов, коэффициент фильтрации и другие) на регуляцию артериального давления и их роль в формировании эссенциальной гипертонии (Колпаков и др., 2009).
Апробация данной модели показала, что ее результаты хорошо согласуются с известными экспериментальными данными.
Соответствующие диаграммы и модели представлены в базе данных BMOND в виде отдельного раздела (таблица 2).
Кроме того на данном примере мы рассмотрим, как, используя различные типы диаграмм BioUML, можно описать биологическую Рис. 4. Схема регуляции водно-солевого баланса в организме человека (семантическая сеть, DGR0324;
см. легенду в таблице 1).
подсистему на разных иерархических уровнях и с различным уровнем детализации происходящих в них процессов (рис. 3-5):
семантическая сеть - схема регуляции водно-солевого баланса в организме человека (рис. 4);
метаболический путь - классическая схема ренин-ангиотензионовой системы (рис. 5);
математическая модель – фрагмент математической модели (рис. 3) регуляции артериального давления (Karaaslan F. et al., 2005). На основе такой диаграммы автоматически генерируется Java код для численного моделирования и анализа модели.
Рис. 5. Классическая схема ренин-ангиотензионовой системы (метаболический путь, DGR0252;
см. легенду в таблице 1).
Заключение На ряде практически важных примеров мы показали, что разработанный подход, использующий представление биологических систем в виде компартментализованного графа, позволяет пользователю формально описать и осуществить моделирование широкого круга биологических систем, включая: метаболические пути, генные сети, рост и деление клетки, физиологические процессы, фармакокинетику, и динамику популяций.
Тем не менее, область применимости данного подхода имеет ограничения, поскольку не все биологические системы могут быть представлены в виде графа. В первую очередь это относится к системам, где важна пространственная структура объекта и/или для моделирования динамики которых используются дифференциальные уравнения в частных производных. Примерами таких систем являются биомеханические системы и системы с пространственной диффузией вещества.
Разработанные методы и подходы, реализованные в компьютер ной программе BioUML, обеспечивают процесс реконструкции и моделирования биологических систем на молекулярно-клеточном уровне и приближены к естественной работе пользователя-биолога, который начинает работу с полуформального представления исследуемой биологической системы в виде семантической сети, и заканчивает – математической моделью системы, которая может воспроизвести качественно и/или количественно требуемые экспериментальные наблюдения (рис. 6). Данный подход позволил в краткие сроки создать три базы данных (BMOND, Cyclonet, Ubiquitomix), которые в общей сложности содержат более диаграмм.
слабо Уровень формализованные 1. Семантическая сеть формализации данные и детализации 2. Биологический процесс (семантическая сеть + генная сеть или метаболический путь) детальные формализованные данные 3. Метаболический путь 4. Генная сеть (реакции и их компоненты) данные о кинетике реакций (уравнения скоростей, 5. Математическая модель константы, начальные значения) Рис. 6. Использование различных типов диаграмм для реконструкции, формального описания и моделирования биологических систем.
Предложенная мета-модель для формального представления структуры сложных биологических систем легко понятна исследователям различных специальностей и позволяет им эффективно взаимодействовать в едином коллективе для написания новых модулей для программы BioUML, включая: новые методы для численного решения систем алгебро-дифференциальных уравнений;
моделирование динамики систем, используя стохастический подход;
мультиагентное моделирование (agent based modelling);
оптимизация параметров и начальных значений модели на основе экспериментальных данных;
методы анализа динамики систем – параметрическая устойчивость, нахождение стационарных состояний и точек бифуркации;
методы упрощения моделей (model reduction) - нахождение динамической размерности модели, разделение по шкале времени с выделением быстрых и медленных реакций, выделение законов сохранения вещества и т.п.;
интеграция с пакетом R для анализа статистических данных;
геномный браузер;
методы анализа микрочиповых экспериментов;
редактор сценариев анализа данных.
ВЫВОДЫ 1. Разработан универсальный подход для формального описания и визуального моделирования широкого круга биологических систем на основе их представления в виде компартментализованного графа.
2. Для поддержки парадигмы визуального моделирования реализованы методы автоматической генерации Java кода для численного моделирования динамики биологических систем на основе их графического представления в виде диаграмм.
3. На основе предложенных методов разработана компьютерная программа BioUML, которая обеспечивает основные этапы процесса формального описания и визуального моделирования сложных биологических систем, начиная с поиска информации в существующих биологических базах данных и заканчивая построением математических моделей биологических систем и численным моделированием их динамики.
4. На ряде практически значимых примеров продемонстрирована применимость разработанных методов и подходов для формального описания и визуального моделирования различных типов биологических систем.
СВИДЕТЕЛЬСТВА НА РЕГИСТРАЦИЮ ПРОГРАММ ДЛЯ ЭВМ 1. Колпаков Ф.А., Ананько Е.А., Колчанов Н.А., Колесов Г.Б., Подколодная О.А., Игнатьева Е.В. База данных GeneNet. РОСПАТЕНТ, св-во № от 15.02.1999 г.
2. Колпаков Ф.А. BioUML workbench (BioUML). Свидетельство о государственной регистрации программы для ЭВМ № 2008611606 от 27.03.2008.
3. Колпаков Ф.А. BioUML Enterprise Edition. Свидетельство о государственной регистрации программы для ЭВМ № 2008612975 от 19.06.2008.
ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ 1. Kolpakov F, Poroikov V, Sharipov R, Kondrakhin Y, Zakharov A, Lagunin A, Milanesi L, Kel A. CYCLONET - an integrated database on cell cycle regulation and carcinogenesis // Nucleic Acids Research. – 2007. - № 35 - D550-D556.
2. Колпаков Ф.А., Подколодный Н.Л., Лаврюшев С.В., Григорович Д.А., Пономаренко М.П., Колчанов Н.А. Методы интеграции неоднородных молекулярно-биологических информационных ресурсов в электронной библиотеке GeneExpress // Программирование. – 2000. – №.3. – 72-80.
3. Колчанов Н.А., Ананько Е.А., Колпаков Ф.А., Подколодная О.А., Игнатьева Е.В., Горячковская Т.Н., Степаненко И.Л. Генные сети // Молекулярная биология. – 2000. - № 34(4) – 533-544.
4. Kolpakov F.A., Ananko E.A. Interactive data input into the GeneNet database // Bioinformatics. – 1999. – №15(7-8) – 713-714.
5. Kolpakov F.A., Ananko E.A., Kolesov G.B., Kolchanov N.A. GeneNet: a gene network database and its automated visualization // Bioinformatics. – 1998. – №14(6) – 529-37.
6. Колпаков Ф.А., Бабенко В.Н. Компьютерная система MGL – инструмент для составления выборок, графического представления и анализа регуляторных геномных последовательностей // Молекуляр. биология. – 1997. – №31(4) – 647-655.
7. Ананько Е.А., Колпаков Ф.А., Колесов Г.Б., Колчанов Н.А.
Автоматическая генерация схем генных сетей на основе их формализованного описания в базе данных GeneNet // Биофизика. – 1999. – №44(4) – 628-631.
8. Kolchanov N.A., Ananko E.A., Podkolodnaya O.A., Ignatieva E.V., Stepanenko I.L., Kel-Margoulis O.V., Kel A.E., Merkulova T.I., Goryachkovskaya T.N., Busygina T.V., Kolpakov F.A., Podkolodny N.L., Naumochkin A.N., Romashchenko A.G. Transcription Regulatory Regions Database (TRRD):its status in 1999 // Nucleic Acids Research. – 1999. – №27(1) – 303-306.
9. Heinemeyer T., Wingender E., Reuter I., Hermjakob H., Kel A.E., Kel O.V., Ignatieva E.V., Ananko E.A., Podkolodnaya O.A., Kolpakov F.A., Podkolodny N.L., Kolchanov N.A. Databases on transcriptional regulation: TRANSFAC, TRRD and COMPEL // Nucleic Acids Research. – 1998. – №26(1) – 362-367.
10. Колпаков Ф.А., Шарипов Р.Н., Евшин И.С., Леонова Т.И., Семисалов Б.В.
Компьютерное моделирование системы кровообращения / Система кровообращения и артериальная гипертония: биофизические и генетико физиологические механизмы, математическое и компьютерное моделирование. Ред. Иванова Л.Н., Блохин А.М., Маркель А.Л.
Новоисибирск: Изд-во СО РАН, 2008. – 135-204.
11. Колпаков Ф.А., Ширипов Р.Н., Колпакова А.Ф. Формализованное описание влияния загрязнения тяжелыми металлами на систему органов дыхания / Загрязнение окружающей среды и заболевания нижних дыхательных путей. А.Ф. Колпакова, Симкин Ю.А., Колпаков Ф.А.
Красноярск: СибГТУ 2008. 160-173.
12. Kolpakov F., Puzanov M., Koshukov A. BioUML: visual modeling, automated code generation and simulation of biological systems // Proceedings of the 5th International Conference on Bioinformatics of Genome Regulation and Structure (BGRS’2006), July 16-22, 2006, Novosibirsk, v.3, рр. 281-284.
13. Kolpakov F., Sharipov R., Cheremushkina E., Kalashnikova E. Biopath – a new approach to formalized description and simulation of biological systems // Proceedings of the 5th International Conference on Bioinformatics of Genome Regulation and Structure (BGRS’2006), July 16-22, 2006, Novosibirsk, v.3, pp.
96-100.
14. Kolpakov F., Poroikov V., Sharipov R., Milanesi L., Kel A. Cyclonet – an integrated database on cell cycle regulation and carcinogenesis // Proceedings of the 5th International Conference on Bioinformatics of Genome Regulation and Structure (BGRS’2006), July 16-22, 2006, Novosibirsk, v.2, pp. 132-136.
15. Kolpakov F.A. BioUML – open source extensible workbench for systems biology // Proceedings of the 4th International Conference on Bioinformatics of Genome Regulation and Structure (BGRS’2004), July 25-30, 2004, Novosibirsk, v.2 p.77-80.
16. Kolpakov F.A., Deineko I., Zhatchenko S.A., Kel A.E. Cyclonet – a database on cell cycle regulation // Digital libraries: advanced methods and technologies, digital collections (RCDL’2004). Proc. Sixth National Russian Research conference, 2004, Pushchino, p. 4-9.
17. Kolpakov F.A. Comprehensive model for formalized description, visualization and simulation of biological systems // German Conference on Bioinformatics.
October 12-14, 2003 Neuherberg/Garching, Germany, Proceedings, - Volume II, p. 155-157.
18. Kolpakov F.A. BioUML – framework for visual modeling and simulation of biological systems // Proc. Int. Conf. Bioinf. of Genome Regulation and Structure (BGRS'2002). – Novosibirsk, 2002. – V.2. P.128-131.
19. Ananko E.A., Kolpakov F.A., Kolchanov N.A. GeneNet database: a technology for a formalized description of gene networks // Proc. of the Second International Conference on Bioinformatics of Genome Regulation and Structure. BGRS'2000. Novosibirsk, Russia, August 7-11, 2000. P. 174-177.
20. Kolpakov F.A., Babenko V.N. MGL - object-oriented computer system for molecular genetics data management, analysis and visualization // Proc. I Intern.
Conference on Bioinformatics of Genome Regulation and Structure, Novosibirsk, Russia, 1998, p. 434- 21. Ananko E.A., Kolpakov F.A., Kolesov G.B. and Kolchanov N.A. Gene networks: a database and its automated visualization through the internet in the GeneNet computing system // Proc. I Intern. Conference on Bioinformatics of Genome Regulation and Structure, Novosibirsk, Russia, 1998, p. 82-85.