Моделирование биологических систем с использованием BioUML Biosoft Лабоработория Биоинформатики КТИ ВТ СО РАН www.itcsoftware.com www.itcsoftware.com.

Презентация:



Advertisements
Похожие презентации
BioUML интегрированная расширяемая среда для моделирования биологических систем Biosoft.Ru Лабоработория Биоинформатики КТИ ВТ СО РАН
Advertisements

BioUML универсальный язык для визуального моделирования биологических систем Biosoft.Ru Лаборатория Биоинформатики КТИ.
Комплексный подход для формального описания, графического представления и моделирования широкого круга биологических и других сложных систем Biosoft.Ru.
Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 7.
1 Диаграммы реализации (implementation diagrams).
MS Access Основные элементы
Основные элементы системы управления базами данных Access.
Начать тест 11 класс, физико-математический профиль.
Объектно- ориентированная платформа Windows
Глушкин Александр Представляет. Графические и табличные информационные модели Презентация.
Microsoft Solutions Framework Технологии программирования. Курс на базе Microsoft Solutions Framework Семинар 2. Знакомство с построением диаграмм вариантов.
Разработка объектно- ориентированного ПО Итеративная модель разработки (развитие водопадной модели) анализ проектирование кодирование тестирование.
Системы управления базами данных СУБД является универсальным программным средством предназначенным для создания и ведения(обслуживания) баз данных на внешних.
2. UML – унифицированный язык моделирования систем.
Построение индексных структур для ключевых характеристик объектов.
Многометодные процедуры оптимального управления Архитектура и реализация программного комплекса Исследовательский Центр процессов управления Работа выполнена.
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ СТАВРОПОЛЬСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ.
Нейро-автоматное управление в машинном обучении Выполнил: Губин Ю.А. ст. гр Руководитель: Шалыто А.А. д.т.н, проф., зав. каф. ТП, СПбГУ ИТМО.
Model/View-архитектура CASE-пакета REAL-MV Тимофей Брыксин, гр. 545 Научный руководитель: А.Н.Терехов Рецензент: Д.В.Кознов.
Модули Информатика. Наличие модулей в Turbo-Pascal позволяет программировать и отлаживать программу по частям, создавать библиотеки программ и данных.
Транксрипт:

Моделирование биологических систем с использованием BioUML Biosoft Лабоработория Биоинформатики КТИ ВТ СО РАН

План доклада Актуальность задачи BioUML: используемые технологии, архитектура, обзор основных модулей системы Моделирование биологических систем –математические модели –использование MATLAB/Simulink (не подходит) –визуальный синтаксис для моделирования биологических систем и принципы автоматической генерации математических моделей –иерархические модели

Организм Органы Ткани Клетки Метаболические путиГенные сети Химически вещества (~10 000) Белки и их комплексы (~ ) Гены (~40 000) Базы данных (более 500 баз данных, общий объем сотни гигабайт)

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

BioUML BioUML - Biological Unified Modeling Language – это интегрированная расширяемая среда для визуального моделирования биологических систем.

Используемые технологии Java – язык реализации системы BioUML ru.biosoft.access - библиотека для доступа и объектно-ориентированного представления информации из гетерогенных баз данных BeanExplorer ( компонетная технология (расширения JavaBeans) для автоматической генерации пользовательских интерфейсов и публикации данных в различном виде. MATLAB – используется для численного решения систем ОДУ и графического представления результатов.

Архитектура

Мета модель Мета модель определяет уровень абстракции для описания моделей биологических систем. Это описание состоит из 2 частей: 1. Логической структура системы, представляемая в виде кластеризованного графа. 2. Математическая модель системы, где с каждым элементом графа ассоциирована некоторая роль: вершины графа выступают в качестве переменных, а ребра графов – в качестве уравнений. DiagramElement kernel:DataElement title:String view:View role:Role Node location:Point image:Image Edge in:Node out:Node Compartment nodes:Node[] edges:Edge[] Diagram type:DiagramType Role diagramElement Constant value:double Variable initilaValue:double Equation variable:Variable equation:String ExecutableModel variables:Variable[] constants:Constant[] MatlabODEModel generateModel():File[] Meta model Dynamics model n n n n

Концепция модуля Чтобы обеспечить интеграцию различных баз данных в среду BioUML, мы вводим концепцию модуля. Если воспользоваться метафорой, то BioUML можно представить как операционную систему, а модули тогда будут являться отдельными программами. Как правило, модуль создается для отдельной базы данных и определяет способ представления информации из этой базы данных в виде объектов языка Java. Модуль также может содержать специфичные для этой базы данных типы диаграмм, представляемые в виде подклассов класса DiagramType и способы их графического отображения, задаваемые как расширения DiagramViewBuilder.

Модули баз данных На данный момент созданы модули для следующих баз данных: GeneNet ( база данных по генным сетям (ИЦиГ, Новосибирск); KEGG/Ligand ( Kyoto Encyclopedia of Genes and Genomes, база данных метаболических путей (Kyoto University, Japan); TRANSPATH ( база данных по путям передачи сигнала в клетке (Biobase GmbH, Germany).

BioUML viewer

BioUML editor

Универсальная система поиска информации по базам данных

Система поиска взаимодействующих друг с другом компонентов биологических систем

BioUML modeler система для визуального моделирования биологических систем

Пример: двухкамерная фармокинетическая модель В первую камеру (кровь) одномоментно были введены 100 единиц некоторого лекарственного вещества А. Из крови вещество А лекарство может переноситься во вторую камеру (печень), где происходит его расщепление некоторым ферментом Е с образованием продукта метаболизма B.

Пример: двухкамерную фармокинетическую модель Предположим, что скорость переноса лекарственного вещества А из крови в печень пропорциональна его количеству в крови с константой k1, а скорость переноса из печени в кровь пропорциональна количеству A в печени с константой k2. Концентрация фермента E в печени неизменна и равна E0, а динамика ферментативной реакции описывается уравнением Михаэлиса-Ментен с константой Km.

Математическая модель для описания динамики двухкамерной фармокинетической модели.

%constants declaration global k_1 k_2 k_3 k_E0 k_Km v_blood v_liver k_1 = 0.1 k_2 = 0.05 k_3 = 0.01 k_E0 = 1.0 k_Km = 0.1 v_blood = v_liver = %Model variables and their initial values y = [] y(1) = % y(1) - $blood.A y(2) = 0.0 % y(2) - $liver.A y(3) = 0.0 % y(3) - $liver.B y(4) = 1.0 % y(4) - $liver.E %numeric equation solving [t,y] = ode23('pharmo_simple_dy',[0 200],y) %plot the solver output plot(t, y(:,1),'-',t, y(:,2),'-',t, y(:,3),'-',t, y(:,4),'-') title ('Solving pharmo_simple problem') ylabel ('y(t)') xlabel ('x(t)') legend('$blood.A','$liver.A','$liver.B','$liver.E'); function dy = pharmo_simple_dy(t, y) % Calculates dy/dt for 'pharmo_simple' model. %constants declaration global k_1 k_2 k_3 k_E0 k_Km v_blood v_liver % calculates dy/dt for 'pharmo_simple' model dy = [ -k_1*y(1)+k_2*y(2) -k_3*k_E0*y(2)/(k_Km+y(2)/v_liver)-k_2*y(2)+k_1*y(1) k_3*k_E0*y(2)/(k_Km+y(2)/v_liver) 0]

Визуальная модель фармокинетической модели, построенная с использованием MATLAB/Simulink

Визуальный синтаксис для моделирования биологических систем на молекулярно- клеточном уровне A B eq1 eq2 R1 C eq3 eq4 R2 Соответствующая ему математическая модель Пример описания двух последовательных химических реакций

В первую камеру (кровь) одномоментно были введены 100 единиц некоторого лекарственного вещества А. Из крови вещество А лекарство может переноситься во вторую камеру (печень) В печени происходит его расщепление ферментом Е с образованием продукта метаболизма B

скорость переноса лекарственного вещества А из крови в печень пропорциональна его количеству в крови с константой k1 скорость переноса из печени в кровь пропорциональна количеству A в печени с константой k2 Концентрация фермента E в печени неизменна Динамика ферментативной реакции описывается уравнением Михаэлиса- Ментен с константой Km

BioUML modeler Автоматически генерируемый текст функции для вычисления dy/dt для фармокинетической модели. function dy = pharmo_simple_dy(t, y) % Calculates dy/dt for 'pharmo_simple' model. %constants declaration global k_1 k_2 k_3 k_E0 k_Km v_blood v_liver % calculates dy/dt for 'pharmo_simple' model dy = [ -k_1*y(1)+k_2*y(2) -k_3*k_E0*y(2)/(k_Km+y(2)/v_liver)-k_2*y(2)+k_1*y(1) k_3*k_E0*y(2)/(k_Km+y(2)/v_liver) 0]

BioUML modeler %constants declaration global k_1 k_2 k_3 k_E0 k_Km v_blood v_liver k_1 = 0.1 k_2 = 0.05 k_3 = 0.01 k_E0 = 1.0 k_Km = 0.1 v_blood = v_liver = %Model variables and their initial values y = [] y(1) = % y(1) - $blood.A y(2) = 0.0 % y(2) - $liver.A y(3) = 0.0 % y(3) - $liver.B y(4) = 1.0 % y(4) - $liver.E %numeric equation solving [t,y] = ode23('pharmo_simple_dy',[0 200],y) %plot the solver output plot(t, y(:,1),'-',t, y(:,2),'-',t, y(:,3),'-',t, y(:,4),'-') title ('Solving pharmo_simple problem') ylabel ('y(t)') xlabel ('x(t)') legend('$blood.A','$liver.A','$liver.B','$liver.E'); Автоматически генерируемый файл для численного расчета и графического представления результатов расчета.

Результаты численного расчета фармокинетической модели

Добавление стандартных типов реакций A B eq1 eq2 R1 мономолекулярная реакция k = 0.05 C eq3 eq4 R2 мономолекулярная реакция k = При использовании стандартных типов реакций пользователь должен указать: - тип (механизм) реакции; - роли компонентов (реагент, продукт реакции, катализатор и т.д.); - значения констант реакции. Исходя из этой информации соответствующие уравнения будут построены автоматически компонентом реакция

Подмодель: Иерархические модели A B eq1 eq2 R1 мономолекулярная реакция k = 0.05 C eq3 eq4 R2 мономолекулярная реакция k = Модель: A 5050 C 5050 A С подмодель A, C При использовании подмоделей пользователь должен указать соответствие между переменными модели и подмодели.

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

Система BioUML свободно доступна по адресу: