автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Методы и средства реконструкции сетевых моделей сложных биологических систем
Автореферат диссертации по теме "Методы и средства реконструкции сетевых моделей сложных биологических систем"
| 0034Э32 15
На правах рукописи
УДК 004.652.5; 004.655; 519.179
МИТИНСКИЙ Денис Сергеевич
МЕТОДЫ И СРЕДСТВА РЕКОНСТРУКЦИИ СЕТЕВЫХ МОДЕЛЕЙ СЛОЖНЫХ БИОЛОГИЧЕСКИХ СИСТЕМ
Специальность 05.13.11. - математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата физико-математических наук
Новосибирск 2009
003493215
Работа выполнена в Учреждении Российской академии наук Институте цитологам и генетики Сибирского отделения РАН
Научные руководители: Колчанов Николай Александрович
академик РАН, доктор биологических наук
Лаврентьев Михаил Михайлович доктор физико-математических наук
Официальные оппоненты: Витяев Евгений Евгеньевич
доктор физико-математических наук
Защита состоится 21 декабря 2009 г. в 16 ч. 00 мин. на заседании диссертационного совета ДМ003.032.01 при Институте систем информатики им. А.П. Ершова Сибирского отделения РАН по адресу. 630090, Новосибирск, пр. Акад. Лаврентьева, 6.
С диссертацией можно ознакомиться в читальном зале библиотеки ИСИ СО РАН (г. Новосибирск, пр. Акад. Лаврентьева, 6)
Автореферат разослан 20 ноября 2009 г.
Ученый секретарь диссертационного совета
Скопин Игорь Николаевич кандидат физико-математических наук
Ведущая организация:
Московский государственный технический университет имени Н.Э. Баумана
к.ф. - м.н.
Ф.А. Мурзин
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность проблемы
Под сетевыми моделями будем понимать ориентированные графы, отражающие структурные и функциональные характеристики моделируемой системы и представляющие их в терминах вершин и дуг графа. Вершины и дуги типизированы и могут характеризоваться определенными признаками, свойствами и величинами различной природы.
На сегодняшний день сетевое моделирование сложных систем различной природы является одним из наиболее эффективных, наглядных и универсальных способов изучения их структурно-функциональной организации. Этот подход успешно применяется во многих областях, таких как проектирование программного обеспечения, схемотехника, планирование и оптимизация бизнес-процессов и т.д.
Сетевое моделирование наиболее эффективно при условии использования средств компьютерной поддержки. В первую очередь это средства визуального моделирования, позволяющие наглядно представлять для пользователя, дополнять и модифицировать модель, а также различные средства анализа и симуляции. Разработка такого программного обеспечения стала возможна только в последние 10-15 лет вследствие развития информационных технологий и соответствующих аппаратных средств. Это в свою очередь явилось стимулом для развития самого подхода и его практических приложений.
Одна из областей применения сетевых моделей - это исследование биологических систем, по своей природе являющихся сложными. Сетевая модель биологической системы позволяет изучать ее в комплексе, учитывая непрямые и неочевидные влияния одних элементов на другие, выявлять значимые функциональные элементы и т.д. Например, применительно к молекулярно-генетическим системам, таким способом может исследоваться функционирование организмов на уровне молекулярных и суб-молекулярных элементов (генов, белков) в различных условиях in silico и без постановки дорогостоящих экспериментов in vitro, планироваться такие эксперименты, изучаться воздействие лекарственных препаратов, проектироваться трансгенные организмы с целевыми свойствами.
Наиболее трудоемкой стадией сетевого анализа биологических систем является реконструкция сетевой модели. Типичные размеры таких моделей для молекулярно-генетических систем - от сотен до десятков тысяч элементов. Трудоемкость обусловлена необходимостью извлечения информации из большого количества публикаций и баз данных, причем в большинстве случаев это ручная работа. Данные разнородны, не
з
полностью структурированы, представлены в различных форматах, имеют различную семантику. Часто в данных встречаются ошибки, пробелы противоречия между различными источниками. Вследствие чего их сбор и обработка требует значительных трудозатрат.
Таким образом, актуальна задача автоматизации процесса реконструкции сетевых моделей с помощью средств компьютерной поддержки. Такая автоматизация избавит исследователя от части рутинной работы и повысит эффективность исследований, в частности, при решении вышеперечисленных задач.
Цель работы
Целью работы является разработка методов и средств компьютерной поддержки, направленных на автоматизацию и повышение эффективности реконструкции сетевых моделей сложных биологических (молекулярно-генетических, экологических) систем.
Молекулярно-генетические системы рассматриваются, как основной объект исследования, на котором отрабатываются все принципы и методы и реконструкции. Далее методика обобщается и переносится на экологические системы.
Для достижения поставленной цели в работе решаются следующие задачи:
• анализ проблематики предметной области и потребностей пользователей с целью формулировки требований к программному обеспечению, предназначенному для поддержки реконструкции сетевых моделей;
• разработка методов универсального компьютерного представления и реконструкции сетевых моделей сложных биологических систем, обеспечивающих эффективный ввод, верификацию и хранение такого рода данных, а также настраиваемых на проблематику решаемых прикладных задач;
• разработка методов централизованного структурированного поиска данных об элементах молекулярно-генетических систем во внешних базах данных и других структурированных источниках, основанных на их семантической интеграции;
• разработка архитектуры программного обеспечения, основанного на созданных методах универсального представления биологических данных, их семантической интеграции, а также реконструкции сетевых моделей;
• реализация программного обеспечения, позволяющего осуществлять структурированный централизованный поиск данных по расширяемому набору внешних источников информации с целью повышения эффективности процесса сбора первичных данных для реконструкции сетевых моделей;
• реализация универсального программного обеспечения для визуальной реконструкции сетевых моделей биологических систем, настраиваемого на проблематику различных задач, связанных с моделированием молекулярно-генетических и экологических систем;
• настройка и адаптация разработанных программных средств для решения следующих прикладных задач:
о интеграция ряда баз данных по элементам молекулярно-
генетических систем и их сетевым моделям; о реконструкция сетевых моделей молекулярно-генетических систем;
о реконструкция сетевых моделей экосистем на примере иксодовых клещей.
Методы исследования
Для разработки методов представления и реконструкции сетевых моделей, а также проектирования программных средств применяется объектно-ориентированная методология, включая методы объектно-ориентированного анализа предметной области и архитектуры, проектирования и программирования. Для оптимизации производительности операций поиска и интеграции данных применяется реляционная алгебра, методы проектирования баз данных, в частности объектно-реляционного отображения. Также используется методы семантической интеграции структурированных данных (data warehousing) и методы представления онтологий.
Научная новизна
В работе получены следующие новые научные результаты.
1. Разработана и применена методика анализа требований к ПО для задач с нечетко определенной терминологической базой. В предложенной методике в первую очередь рассматриваются требования к представлению данных, включая требования к метамодели, отражающей семантику поддерживаемых онтологий. Далее, функциональные требования формулируются в терминах метамодели. Стандартная методика, напротив, рассматривает в первую очередь функциональные требования, которые выражаются в терминах рассматриваемой предметной области.
2. Разработаны и реализованы в виде программного приложения, методы, обеспечивающие визуальную реконструкцию сетевых моделей биологических систем на основе задаваемой пользователем онтологии. Обеспечивается адаптивность под различные виды биологических систем (молекулярно-генетические и экологические) и строгая типизация вершин. Строгая типизация необходима для дальнейшего применения методов компьютерного анализа к реконструированной сетевой модели, в том числе
проблемно-ориентированных, требующих биологической интерпретации входных данных. Наиболее распространенные аналоги (Cytoscape, CellDesigner, GeneNet) либо работают с фиксированной моделью предметной области, либо не обеспечивают необходимого уровня типизации данных.
3. Разработаны методы и основанные на них программные средства, обеспечивающие семантическую интеграцию слабоструктурированных биологических данных. В отличие от существующих аналогов (K2/Klesli, Biomediator) используется предварительная интеграция и индексация данных на основе онтологии, что обеспечивает:
• высокую производительность при выполнении запросов, не зависящую от качества канала связи с внешними источниками;
• идентификацию синонимичных объектов из различных источников, противоречий и пробелов в информации, а также возможность контроля релевантности источников.
4. Разработан язык запросов, обеспечивающих поиск данных, представленных в рамках разработанной метамодели. Принципиальным отличием от SQL-подобных языков является поддержка критериев запросов относительно многозначных (неатомарных) свойств.
Практическая значимость
Разработанное программное обеспечение внедрено:
• Для реконструкции сетевых моделей молекулярно-генетических систем. Используется в качестве клиентской части ранее эксплуатируемой системы.
• Для реконструкции сетевых моделей экосистем в ИЦиГ и Новосибирском госуниверситете (НГУ). Применяется для решения задач, связанных с построением универсальной базовой онтологии экосистем, а также задач моделирования ряда экосистем.
• Для поиска данных по элементам молекулярно-генетических систем во внешних базах данных в ИЦиГ. Обеспечивается интеграция 7-ми баз.
Апробация работы
Основные защищаемые положения были доложены на международных конференциях Bioinformatics of Genome Regulation and Structure BGRS'06 и BGRS'08.
Автором опубликовано 11 печатных работ по теме диссертации.
Структура и объем работы
Диссертационная работа состоит из введения, четырех глав, заключения и списка литературы. Объем диссертации - 148 стр. текста. Список литературы содержит 77 наименований. Работа включает 28 рисунков.
СОДЕРЖАНИЕ РАБОТЫ
В первой главе описывается проблематика реконструкции сетевых моделей биологических систем, приводится обзор существующих программных решений, а также рассматривается ряд методов и технологий, необходимых для дальнейшего изложения.
В начале главы приводится общий обзор применения сетевых моделей в различных областях, а также выделяются общие характеристики этой методики, необходимые для применения в данной работе. В разделах «Понятие и проблематика генных (экологических) сетей» приводится характеристика существующих понятий о молекулярно-генетических и экологических системах, описывается их специфика с точки зрения сетевого моделирования, а также в общем виде формулируются требования к программным средствам реконструкции сетевых моделей типов живых систем.
В разделе «Обзор программных средств реконструкции сетевых моделей» приводится сравнительный анализ и классификация существующих программных средств. В первую очередь рассматриваются средства для исследования живых систем, но также приводится несколько аналогов из других предметных областей. Отдельно и подробно рассматривается система Оепе№1, являющаяся функциональным прототипом пользовательского интерфейса в данной работе. По результатам анализа программных средств и предметной области формулируются следующие основные требования и ограничения для системы реконструкции:
• визуальное редактирование сетевых моделей;
• настраиваемость системы пользователем на предметную область включая типизацию вершин и связей сетевой модели, а также графическую нотацию;
• поддержка механизмов декомпозиции для работы со сложными сетевыми моделями;
• централизованное хранение данных и многопользовательский доступ к ним.
В заключении формулируется задача интеграции биологических данных, как одна из задач, связанных с реконструкцией сетевых моделей живых систем. Система интеграции данных должны обеспечивать следующую функциональность:
• семантическая интеграция данных из различных источников на основе заданной модели предметной области;
• контроль целостности, качества и происхождения данных;
• поддержка структурированных запросов по интегрируемым данным.
Также приводится описание и сравнительный анализ существующих методик и программных средств для интеграции биологических данных, в том числе семантической интеграции. Одной из методик является data federation, она основана на динамической трансляции запросов и делегировании их всем поддерживаемым базам. Альтернативой является методика data warehousing, обеспечивающая предварительную интеграцию данных и построение запросов к уже интегрированным данным. Другие методики не обеспечивают или существенно ограничивают анализ семантики данных, а частности не позволяют выполнять структурированный поиск.
Во второй главе проводится анализ требований к программному обеспечению. Приводится развернутая формулировка требований, включая основные варианты использования. Требования основаны на проведенном автором анализе проблематики предметной области, существующих методов реконструкции сетевых моделей и связанных с ними недостатков.
Терминологическая база для описания биологических систем, особенно экосистем, четко не определена. Это делает неприемлемым применение классических подходов к проектированию ПО, где терминологическая база предметной области используется в явном виде для описания требований и архитектуры. Решением, предложенным и реализованным в данной работе, является замена естественной модели предметной области на модель с более высоким уровнем абстракции (метамодель), которая обладает следующими характеристиками: (1) является абстракцией, достаточной для решения задач реконструкции сетевых моделей и их анализа; (2) обеспечивает представление модели произвольной предметной области в рамках поставленных задач (в форме онтологии).
В работе предлагается и используется специализированная методика анализа требований, так как традиционные методики, делающие акцент на функциональных требованиях, в данной работе неприменимы. Суть примененной методики состоит в рассмотрении в первую очередь требований к представлению данных и семантике метамодели. Далее функциональные требования формулируются в терминах метамодели, а не модели предметной области, как в традиционных методиках.
Применение метамодели с одной стороны усложняет программные средства, однако в данном случае это необходимо для решения задач интеграции данных, а также реконструкции моделей экосистем. Действительно, методы семантической интеграции данных подразумевают наличие онтологического описания интегрируемых данных, причем это описание может расширяться при включении в систему новых внешних информационных источников (баз данных). При реконструкции моделей экологических систем (в отличие от молекулярно-генетических) на
текущий момент невозможно создать достаточно универсальную модель предметной области, т.е. онтологию. В результате для каждой экосистемы такая онтология должна строиться пользователем, не имеющим возможности изменения программного кода.
В главе сформулированы и обоснованы требования к метамодели, операциям с ней, обеспечению целостности данных, представленных в рамках метамодели. Метамодель определяет семантику поддерживаемых онтологий и сетевых моделей. Основные требования следующие:
• онтология представляется в форме набора типов вершин и их свойств;
• связи в сетевой модели не типизируются, их семантика определяется вершинами;
• поддержка многозначной типизации ссылочных свойств;
• поддержка многозначных свойств, в том числе ссылочных (для реализации синонимии и отношений с мощностью «много-ко-многим»);
• контроль целостности данных посредством проверки правил и ограничений, определяемых онтологией;
• поддержка транзакционности для серий операций, локально нарушающих целостность данных;
• расширяемость относительно новых типов свойств и ограничений.
Требования к метамодели являются общими для задач реконструкции сетевых моделей и интеграции данных и учитывают описанную выше проблематику этих задач.
Далее приводятся требования, специфические для отдельных задач, поставленных в работе. Требования к интеграции данных основаны на проведенном анализе существующих баз, качества данных, типичных сценариев их использования, поддерживаемой функциональности (в первую очередь семантики запросов). Приведем основные требования:
• набор интегрируемых источников должен быть расширяемым без изменения программного кода системы;
• запросы должны выполняться на основе заранее интегрированных данных, представленных в рамках метамодели и заданной онтологии;
• запросы должны быть структурированы, т.е. критерии запросов должны быть выражены в терминах типов и свойств (включая каскадное использование ссылочных свойств), задаваемых онтологией;
• при интеграции должны идентифицироваться эквивалентные объекты, полученные из разных источников, и объединяться в автоматическом режиме либо с участием пользователя (должны поддерживаться оба режима), результаты такого объединения должны учитываться при выполнении запросов;
• должна сохраняться информация о происхождении всех данных в системе, вплоть до отдельных значений свойств (необходимо для контроля достоверности данных).
Далее приводятся формулировки требований, связанных с визуальной реконструкцией сетевых моделей. Требования основаны на анализе опыта использования редактора Оепе№1 и других альтернативных программных средств. Кроме того, учитывается опыт, накопленный в других областях (проектирование ПО, анализ бизнес-процессов и т.д.) и требования, сформулированные относительно метамодели. Основные требования следующие:
• возможность задания онтологии и графической нотации пользователем (посредством специализированного редактора);
• поддержка графической нотации, параметризуемой относительно выбираемых пользователем свойств, заданных в онтологии;
• поддержка повторного использования объектов в различных моделях, при этом объект может иметь как общие для всех моделей свойства (надсистемные), так и специфичные для конкретной модели (системные);
• визуальное редактирование сетевой модели и отдельных ее элементов с учетом заданной онтологии, включая поддержку управляемой пользователем транзакционности при создании и редактировании объекта;
• поддержка структурной декомпозиции сетевых моделей на основе компартментов.
В заключении приводится ряд требований, связанных с расширяемостью, адаптивностью и контролем доступа к данным.
Третья глава посвящена описанию архитектуры и реализации системы.
В начале главы проанализированы различные способы реализации требований, а также обоснован выбор технологической базы. Основные критерии выбора - это производительность и трудоемкость реализации. Для проведения такого анализа были разработаны ряд прототипов программных средств. На основе проведенного анализа и прототипирования были уточнены требования к семантике метамодели, контролю целостности данных, а также сделан вывод о том, критическим элементом с точки зрения производительности является реализация персистентности и поиска данных. Показано, что единственным приемлемым решением является статическое отображение метамодели на схему реляционной СУБД и использование оптимизированных с учетом функциональности и архитектуры системы механизмов объектно-реляционного отображения.
MetaBase servers
MetaModei
MetaBase driver
|H—-J GeneNet
p-^zp df1ver
GeneNet Studio (build)
Ontology editor
EcoNet Studio (build)
External components
> GraNET (network analysis)
> Tick ecosystem simulation
> MGSGenerator (mathematics modelling)
> Bacteria evolution simulation
Client Workstations
Рис 1. Общая архитектура системы
Далее описывается общая архитектура программных средств (рис. 1). Основными компонентами ее являются (1): метамодель (MetaModei), (2) сервер для хранения, поиска и интеграции данных MetaBase и (3) подсистема реконструкции сетевых моделей Araneus.
Метамодель является наиболее важным архитектурным элементом в разработанных методах и программных средствах. В работе описываются ее основные элементы, приводится сравнение с существующими аналогами (в первую очередь с метамоделью OWL), а также показывается, что она удовлетворяет всем предъявляемым к ней требованиям. Рассмотрим более подробно структуру базовой метамодели (рис. 2)
Для описания используется нотация UML, используются отношения генерализации (наследования), а также ассоциации и агрегации с указанием мощности отношений. Серым выделены ключевые классы.
Класс Ontology (онтология) в данной метамодели является организационной сущностью, характеризуется названием и набором типов, в нее входящих. Классы Type, Object, Property, Value представляют классическую объектную модель (Туре соответствует понятию класса). По умолчанию все свойства (если не наложены дополнительные ограничения) могут иметь множественное значение (что, в частности, является существенным отличием по отношению к реляционной модели данных). Свойства типизированы, что отражено деревьями наследования Property и Value. Ссылочные свойства представлены подклассом ObjectProperty, характеризуются набором типов, на экземпляры которых они могут ссылаться (в классической объектной модели такой тип может быть только I один, если не считать его подклассы).
Рис. 2. Базовая метамодель
Раздел (Partition) играет роль организационной сущности для данных. Раздел может в себе содержать несколько онтологий и наоборот, одной онтологии могут соответствовать несколько разделов. Эта сущность может быть использована для создания распределенных баз и реализации
некоторых других возможностей. Значения ссылочных свойств подразделяются на два типа, аналогичные жестким и символическим ссылкам в файловых системах. Внутренние (аналог жестких) ссылки не могут пересекать границы раздела, при этом могут бьпъ использованы в критериях запросов. Внешние ссылки могут ссылаться на объекты в других разделах, однако предназначены исключительно для навигации и целостность их не гарантируется системой.
Для обеспечения контроля происхождения и достоверности данных предназначен класс Source (источник). Каждое значение свойства должно быть подтверждено хотя бы одним источником. Подклассы Source соответствуют различным способам подтверждения информации. Это может быть литературный источник (ссылка на публикацию), web-ссылка, ссылка на внешнюю базу данных и т.д. Источники используются в первую очередь при интеграции внешних баз данных.
Кроме того, для представления сетевых моделей метамодель расширяется такими классам, как «схема» (сеть), «слой». Эти понятия необходимы в первую очередь для декомпозиции сложных моделей. Поддерживается структурная декомпозиция на основе компартментов (реализующих отношение вложенности) и функциональная на основе связанных слоев. Показано, что дополнительные элементы метамодели могут быть'сведены к ранее определенным в рамках базовой метамодели.
Компонента MetaBase реализует требования, связанные с интеграцией и поиском данных. В тексте описан алгоритм интеграции данных, обеспечивающий выявление эквивалентных объектов в различных базах, а также пробелов и противоречий в данных. Описан способ интеграции новых баз, при котором от пользователя требуется реализация драйвера, осуществляющего преобразование форматов данных и, при необходимости, расширение онтологии. Также описывается реализация требований, связанных с обеспечением целостности данных и контролем доступа к ним.
В связи с тем, что структура метамодели не соответствует реляционной, потребовалось создание нового языка запросов. Ключевыми особенностями языка являются:
• поддержка кванторов существования и общности в критериях запросов;
• поддержка предикатов над множествами: отношения эквивалентности множеств, вложенности, пресечения;
• поддержка запросов относительно иерархических множеств, образуемых многозначными объектными ссылками.
В главе приведено описание его семантики и реализованного варианта синтаксиса, близкого к SQL. Также приведены примеры запросов для поиска молекулярно-генетических данных.
В разделе «Реализация» приводится описание реализации интерфейса компоненты MetaBase, технических решений, использованных
при реализации, а также описание ряда периферийных компонент, взаимодействующих с ней: драйверов баз данных и пользовательского поискового интерфейса.
Компонента Araneus представляет собой библиотеку, которая обеспечивает всю необходимую функциональность для создания сетевых редакторов. Компонента спроектирована и реализована как набор подключаемых модулей, реализующих метамодель, а также различные функции визуализации и визуального моделирования. Это позволяет строить из них различные приложения, которые при необходимости могут использовать и внешние специализированные для решения определенных задач модули. В тексте приведена архитектура этой компоненты, которая обеспечивает основные функции для визуального редактирования сетевых моделей, а также три основных дистрибутива, собранных на основе этой компоненты: редакторы генных сетей, экосетей и онтологий. Описаны основные модули Araneus, их взаимосвязь и назначение, а также способы подключения дополнительных компонент.
В четвертой главе описано практическое применение разработанных программных средств.
Задача интеграции баз данных в области молекулярно-генетических систем решена для таких баз, как EntrezGene, UniProt, KEGG, DBSNP, части GeneBank, связанной с представлением информации об РНК, а также TRRD и базы системы GeneNet, разработанными в ИЦиГ СО РАН. Решение заключается в (1) разработке драйверов соответствующих баз, (2) разработке единой онтологии, (3) интеграции части данных из всех перечисленных баз (по отдельным наиболее актуальным с точки зрения исследований, проводимых в ИЦиГ видам организмов). Результатом является приложение с web-интерфейсом, обеспечивающее поиск по интегрированным данным из этих баз.
Для реконструкции сетевых моделей генных сетей было создано приложение GeneNet Studio (рис. 3) на основе компоненты Araneus. В данной главе кратко описан ряд дополнительных реализованных компонент в составе данного приложения, предназначенных для анализа сетей, импорта и экспорта данных.
Также на основе Araneus был создан пользовательский интерфейс для среды моделирования эволюции популяций одноклеточных организмов. Программная среда также включает реализацию алгоритма моделирования на основе методики «Эволюционный конструктор». В тексте приведено краткое описание задачи, а также описаны особенности реализации данного приложения, в частности дополнительные модули, не входящие в состав Araneus.
BEgiy'^'gMSi -,¡>W n . • • - . ' . . . ^ 0Щ
■ м ЙИЛ» CNWI - . - .i«—«-« J .......- "
Рис. 3. GeneNet Studio - приложение для реконструкции и анализа сетевых моделей молекулярно-генетических систем
Для приложения EcoNet Studio для визуальной реконструкции сетевых моделей экосистем проиллюстрировано практическое использование при решении задачи моделирования экосистемы иксодовых клещей (переносчиков клещевого энцефалита и боррелиоза). Приведено краткое описание предметной области и постановка задачи. Представлена реконструированная сетевая модель жизненного цикла клеща. Автором также была построена имитационная (дискретно-событийная) модель поведения клеща. Предложен способ автоматической генерации имитационных моделей экосистем на основе сетевых моделей. В тексте описаны принципы построения онтологии и сетевой модели для решения | такой задачи, а также предложено универсальное представление генерируемой имитационной модели, не привязанное к конкретной предметной области.
ЗАЩИЩАЕМЫЕ ПОЛОЖЕНИЯ
На защиту выносятся следующие положения: 1. Предложена и применена специализированная методика анализа требований к программному обеспечению для задач с нечетко определенной терминологической базой.
2. Впервые предложены методы универсального компьютерного представления сетевых моделей различных видов сложных биологических систем, основанные на метамодели и онтологическом описании. Методы включают в себя метамодель, правила представления онтологий и сетевых моделей, правила декомпозиции для оперирования сложными сетевыми моделями.
3. Впервые предложены методы семантической компьютерной интеграции слабоструктурированных биологических данных, обеспечивающие верификацию данных и структурированный поиск на основе онтологий.
4. На основе предложенных методов спроектировано и реализовано программное обеспечение для визуальной реконструкции сетевых моделей. В отличие от известных аналогов оно обеспечивает пользовательскую настройку на решаемую задачу путем задания онтологии и графической нотации.
5. На основе предложенных методов спроектировано и реализовано программное обеспечение для семантической интеграции биологических баз данных. Построена общая онтология и проведена интеграция для следующих баз: вепБапк, КБвв, ёЬБОТ, Епй'егОепе, ишРпЛ, ТШШ и ОепеШ.
6. Предложен и реализован язык запросов, обеспечивающий структурированный поиск по интегрированным данным с учетом заданной онтологии. В отличие от БС^Ь-подобных языков, предложенный язык оперирует критериями поиска, задаваемыми относительно многозначных свойств.
7. Разработанные методы и программное обеспечение применены для решения следующих биологических задач:
• реконструкция сетевых моделей сложных молекулярно-генетических систем;
• сетевое и имитационное моделирование экосистемы иксодовых клещей (переносчиков клещевого энцефалита).
ВКЛАД АВТОРА
Все основные результаты, включая постановки задач, методы, алгоритмы и основополагающие архитектурные решения получены автором, либо под его научным руководством и при непосредственном участии.
Автором лично проведен анализ проблематики предметной области, анализ требований, разработаны методы представления и семантической интеграции биологических данных, включая метамодель и семантику онтологий, а также математическую модель языка запросов. Также лично автором разработаны описанные в тексте диссертации прототипы программных средств.
В части связанной с практическим применением результатов работы (глава 4) лично автором была построена онтология для интеграции биологических баз данных, онтология и сетевая модель жизненного цикла клеща, разработана методика генерации имитационных моделей экосистем на основе их сетевого представления.
Проектирование и реализация компоненты Araneus и основанных на ней программных средств выполнены совместно с Тимоновым B.C. Проектирование и реализация компоненты MetaBase, а также разработка языка запросов выполнены совместно с Лабужским В.В. и Соколовым С.А.
Пользовательский интерфейс для построения запросов разработан Морозовым A.B.. Компоненты анализа сетевых моделей, а также пользовательский интерфейс для задачи моделирования эволюции популяций одноклеточных организмов разработаны Тимоновым В.А. Методика «Эволюционный конструктор» и ее программная реализация являются разработками Лашина С.А.
ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ
1. Д.С. Мигинский, В.В. Лабужский, М.М. Лаврентьев-мл., A.B. Морозов, С.А. Соколов Технология семантической интеграции баз данных в системной биологии // Вычислительные технологии. 2008. Т. 13, N 6, С. 103-119
2. Miginsky D.S., Suslov V.V., Tímonov V.S., Rasskazov D.A., Sournina N.Yu., Podkolodny N.L. Approaches to the Computer Reconstruction of the Biological Networks // Intelligent Data Analysis, Vol. 12, No. 5 (2008) P. 463-479.
3. E. A. Ananko, N. L. Podkolodny, I. L. Stepanenko, O. A. Podkolodnaya, D. A. Rasskazov, D. S. Miginsky, V. A. Likhoshvai, A. V. Ratushny, N. N. Podkolodnaya, and N. A. Kolchanov GeneNet in 2005 Nucl. Acids Res. 2005 33: D425-D427
4. Колчанов H.A., Мигинский Д.С., Подколодный Н.Л., Рассказов Д.А., Суслов В.В., Тимонов B.C., Сергеев М.Г. Сетевое описание биосистем: проблемы и подходы // Вычислительные технологии. 2007. Т. 12. Специальный выпуск 2: Информационные технологии для эколого-биологических исследований. Междисциплинарный интеграционный проект СО РАН. С. 107-122
5. Сергеев М.Г., Суслов В.В., Мигинский Д.С., Юрлова Н.И., Колчанов Н.А..Опыт создания моделей на основе онтологии экосистем. В кн. Биоразнообразие и динамика экосистем: информационные технологии и моделирование (ред. В.К. Шумный, Ю.И. Шокин, Н.А.Колчанов, А.М. Федотов), Новосибирск, 2006, стр.95-118.
6. Колчанов H.A., Подколодная O.A., Ананько Е.А., Игнатьева Е.В., Степаненко И.Л., Хлебодарова Т.М., Меркулова Т.И., Меркулов В.М., Мищенко Е.Л., Ибрагимова С.М., Смирнова О.Г., Подколодный Н.Л.,
Ромащенко А.Г., Ощепков Д.Ю., Мигинский Д.С.. Регуляторные последовательности ДНК: описание в базах данных. В кн. Системная компьютерная биология (ред. Н.А. Колчанов, С.С. Гончаров, В.А. Лихошвай, В.А. Иванисенко) Новосибирск, 2008, стр. 15-38.
7. Khlebodarova, О. Podkolodnaya, D. Oshchepkov, D. Miginsky, E. Ananko, E. Ignatieva Artsite Database: Comparison of in Vitro Selected and Natural Binding Sites of Eukaryotic Transcription Factors. In: Bioinformatics of Genome Regulation and Structure II. (Eds. N.Kolchanov and R. Hofestaedt) Springer Science+Business Media, Inc. 2006, pp. 55-65.
8. Miginsky D.S., Suslov V.V., Rasskazov D.A., Podkolodny N.L., Kolchanov N.A Architecture of Software Toolkit for Storing and Operating with Biosystems Models // Proceedings of the Fifth International Conference on Bioinformatics of Genome Regulation and Structure (BGRS'2006), v. 3 pp.292-295.
9. Miginsky D.S., Sokolov S.A., Labuzhsky V.V., Nikitin A.G., Tarancev I.G. Object-Oriented Approach to Bioinformatics Software Resources Integration // Proceedings Of The Fifth International Conference on Bioinformatics of Genome Regulation and Structure (BGRS'2006), v. 3 pp.288-291.
10.Podkolodny N.L., Podkolodnaya N.N., Miginsky D.S., Poplavsky A.S., Likhoshvai V.A., Compani В., Mjolsness E. An Integration of the Descriptions of Gene Networks and Their Models Presented in Sigmoid (Cellerator) and Genenet // Proceedings Of The Fifth International Conference on Bioinformatics of Genome Regulation and Structure (BGRS'2006), v. 3 pp.86-90.
11.Timonov V.S., Miginsky D.S. "PROMETHEUS" Toolkit for Agile Development of Biological Data Storing and Access Software // Proceedings of the Sixth International Conference on Bioinformatics of Genome Regulation and Structure (BGRS'2008), p. 237.
Подписано к печати 11.11.2009 г. Формат бумаги 60 х 90 1/16, печ. л. 1, уч. изд. л. 0,7 Тираж 100. Заказ № 108
Ротапринт Института цитологии и генетики СО РАН 630090, Новосибирск, пр. акад. Лаврентьева, 10.
Оглавление автор диссертации — кандидата физико-математических наук Мигинский, Денис Сергеевич
Содержание.
Введение.
Глава 1. Обзор предметной области, существующих подходов и программных средств.
1.1. Понятие сетевой модели.
1.2. Проблематика применения методов сетевого моделирования.
1.3. Области применения сетевых моделей.
1.4. Общая схема реконструкции и анализа сетевых моделей сложных систем.
1.5. Понятие и проблематика генных сетей.
1.6. Понятие и проблематика экологических сетей.
1.7. Обзор программных средств реконструкции сетевых моделей.
1.7.1. Общая характеристика существующих программных средств.
1.7.2. Обзор системы Оепе№1.
1.7.3. Анализ методов и средств интеграции биологических данных.
Глава 2. Анализ требований.
2.1. Краткая формулировка основных требований и ограничений.
2.2. Представление данных.
2.2.1. Семантика онтологий и метамодели.
2.2.2. Функциональность метамодели.
2.3. Интеграция внешних информационных ресурсов.
2.4. Представление сетевых моделей.
2.5. Визуальная реконструкция сетевых моделей.
2.6. Расширяемость и адаптивность.
2.7. Контроль доступа к данным.
Глава 3. Архитектура и реализация.
3.1. Анализ способов реализации требований.
3.1.1. Способы реализации метамодели.
3.1.2. Прототипная реализация метамодели.
3.1.3. Прототип подсистемы интеграции данных.
3.1.4. Оптимизация производительности подсистемы интеграции данных.
3.1.5. Выбор технологической базы для визуального редактирования сетевых моделей
3.2. Общая архитектура системы.
3.3. Метамодель.
3.3.1. Структура основной метамодели.
3.3.2. Метамодель для представления сетей.
3.4. Реализация требований.
3.4.1. Методика интеграции данных.
3.4.2. Транзакционные операции и удаленный программный интерфейс.
3.4.3. Контроль доступа к данным.
3.5. Язык запросов.
3.6. Программная реализация.
3.6.1. Подсистема MetaBase.
3.6.2. Подсистема Araneus.
3.6.3. Редактор онтологий.
Глава 4. Практическое использование.
4.1. Объединение баз данных в области молекулярно-генетических систем.
4.1.1. Постановка задачи.
4.1.2. Онтология.
Введение 2009 год, диссертация по информатике, вычислительной технике и управлению, Мигинский, Денис Сергеевич
Под сетевыми моделями будем понимать ориентированные графы, отражающие структурные и функциональные характеристики моделируемой системы и представляющие их в терминах вершин и дуг графа. Вершины и дуги типизированы и могут характеризоваться определенными признаками, свойствами и величинами различной природы.
На сегодняшний день сетевое моделирование сложных систем различной природы является одним из наиболее эффективных, наглядных и универсальных способов изучения их структурно-функциональной организации. Этот подход успешно применяется во многих областях, таких как проектирование программного обеспечения, схемотехника, планирование и оптимизация бизнес-процессов и т.д.
Сетевое моделирование наиболее эффективно при условии использования средств компьютерной поддержки. В первую очередь это средства визуального моделирования, позволяющие наглядно представлять для пользователя, дополнять и модифицировать модель, а также различные средства анализа и симуляции. Разработка такого программного обеспечения стала возможна только в последние 10-15 лет вследствие развития информационных технологий и соответствующих аппаратных средств. Это в свою очередь явилось стимулом для развития самого подхода и его практических приложений.
Одна из областей применения сетевых моделей — это исследование биологических систем, по своей природе являющихся сложными. Сетевая модель биологической системы позволяет изучать ее в комплексе, учитывая непрямые и неочевидные влияния одних элементов на другие, выявлять значимые функциональные элементы и т.д. Например, применительно к молекулярно-генетическим системам, таким способом может исследоваться функционирование организмов на уровне молекулярных и суб-молекулярных элементов (генов, белков) в различных условиях in silico и без постановки дорогостоящих экспериментов in vitro, планироваться такие эксперименты, изучаться воздействие лекарственных препаратов, проектироваться трансгенные организмы с целевыми свойствами.
Наиболее трудоемкой стадией сетевого анализа биологических систем является реконструкция сетевой модели. Типичные размеры таких моделей для молекулярно-генетических систем — от сотен до десятков тысяч элементов. Трудоемкость обусловлена необходимостью извлечения информации из большого количества публикаций и баз данных, причем в большинстве случаев это ручная работа. Данные разнородны, не полностью структурированы, представлены в различных форматах, имеют различную семантику. Часто в данных встречаются ошибки, пробелы противоречия между различными источниками. Вследствие чего их сбор и обработка требует значительных трудозатрат.
Таким образом, актуальна задача автоматизации процесса реконструкции сетевых моделей с помощью средств компьютерной поддержки. Такая автоматизация избавит исследователя от части рутинной работы и повысит эффективность исследований, в частности, при решении вышеперечисленных задач.
Цель работы
Целью работы является разработка методов и средств компьютерной поддержки, направленных на автоматизацию и повышение эффективности реконструкции сетевых моделей сложных биологических (молекулярно-генетических, экологических) систем.
Молекулярно-генетические системы рассматриваются, как основной объект исследования, на котором отрабатываются все принципы и методы и реконструкции. Далее методика обобщается и переносится на экологические системы.
Для достижения поставленной цели в работе решаются следующие задачи: • анализ проблематики предметной области и потребностей пользователей с целью формулировки требований к программному обеспечению, предназначенному для поддержки реконструкции сетевых моделей;
• разработка методов универсального компьютерного представления и реконструкции сетевых моделей сложных биологических систем, обеспечивающих эффективный ввод, верификацию и хранение такого рода данных, а также настраиваемых на проблематику решаемых прикладных задач;
• разработка методов централизованного структурированного поиска данных об элементах молекулярно-генетических систем во внешних базах данных и других структурированных источниках, основанных на их семантической интеграции;
• разработка архитектуры программного обеспечения, основанного на созданных методах универсального представления биологических данных, их семантической интеграции, а также реконструкции сетевых моделей;
• реализация программного обеспечения, позволяющего осуществлять структурированный централизованный поиск данных по расширяемому набору внешних источников информации с целью повышения эффективности процесса сбора первичных данных для реконструкции сетевых моделей;
• реализация универсального программного обеспечения для визуальной реконструкции сетевых моделей биологических систем, настраиваемого на проблематику различных задач, связанных с моделированием молекулярно-генетических и экологических систем;
• настройка и адаптация разработанных программных средств для решения следующих прикладных задач: о интеграция ряда баз данных по элементам молекулярногенетических систем и их сетевым моделям; о реконструкция сетевых моделей молекулярно-генетических систем; о реконструкция сетевых моделей экосистем на примере иксодовых клещей.
Методы исследования
Для разработки методов представления и реконструкции сетевых моделей, а также проектирования программных средств применяется объектно-ориентированная методология, включая методы объектно-ориентированного анализа предметной области и архитектуры, проектирования и программирования. Для оптимизации производительности операций поиска и интеграции данных применяется реляционная алгебра, методы проектирования баз данных, в частности объектно-реляционного отображения. Также используется методы семантической интеграции структурированных данных (data warehousing) и методы представления онтологий.
Научная новизна
В работе получены следующие новые научные результаты.
1. Разработана и применена методика анализа требований к ПО для задач с нечетко определенной терминологической базой. В предложенной методике в первую очередь рассматриваются требования к представлению данных, включая требования к метамодели, отражающей семантику поддерживаемых онтологий. Далее, функциональные требования формулируются в терминах метамодели. Стандартная методика, напротив, рассматривает в первую очередь функциональные требования, которые выражаются в терминах рассматриваемой предметной области.
2. Разработаны и реализованы в виде программного приложения, методы, обеспечивающие визуальную реконструкцию сетевых моделей биологических систем на основе задаваемой пользователем онтологии. Обеспечивается адаптивность под различные виды биологических систем (молекулярно-генетические и экологические) и строгая типизация вершин. Строгая типизация необходима для дальнейшего применения методов компьютерного анализа к реконструированной сетевой модели, в том числе проблемно-ориентированных, требующих биологической интерпретации входных данных. Наиболее распространенные аналоги (Cytoscape, CellDesigner, GeneNet) либо работают с фиксированной моделью предметной области, либо не обеспечивают необходимого уровня типизации данных.
3. Разработаны методы и основанные на них программные средства, обеспечивающие семантическую интеграцию слабоструктурированных биологических данных. В отличие от существующих аналогов (К2/К1езП, ВютесНа1:ог) используется предварительная интеграция и индексация данных на основе онтологии, что обеспечивает:
• высокую производительность при выполнении запросов, не зависящую от качества канала связи с внешними источниками;
• идентификацию синонимичных объектов из различных источников, противоречий и пробелов в информации, а также возможность контроля релевантности источников.
4. Разработан язык запросов, обеспечивающих поиск данных, представленных в рамках разработанной метамодели. Принципиальным отличием от БС^Ь-подобных языков является поддержка критериев запросов относительно многозначных (неатомарных) свойств.
Практическая значимость
Разработанное программное обеспечение для реконструкции сетевых моделей внедрено:
• Для реконструкции сетевых моделей молекулярно-генетических систем в Институте цитологии и генетики СО РАН (ИЦиГ). Используется в качестве клиентской части ранее эксплуатируемой системы.
• Для реконструкции сетевых моделей экосистем в ИЦиГ и Новосибирском госуниверситете (НГУ). Применяется для решения задач, связанных с построением универсальной базовой онтологии экосистем, а также задач моделирования ряда экосистем.
• Для поиска данных по элементам молекулярно-генетических систем во внешних базах данных в ИЦиГ. Обеспечивается интеграция 7-ми баз.
Структура диссертации
В главе 1 описывается проблематика реконструкции сетевых моделей биологических систем, приводится обзор существующих программных решений, а также рассматривается ряд методов и технологий, необходимых для дальнейшего изложения. Глава 2 посвящена анализу требований к разработанному программному обеспечению. В ней предлагается методика анализа требований, учитывающая специфику данной работы. Далее в соответствии с этой методикой приводятся обоснование и описание основных групп требований (поддержка онтологического описания, манипуляция данными, пользовательский интерфейс для визуальной реконструкции и др.). В главе 3 в соответствии с приведенными требованиями описывается архитектура и основанное на ней программное обеспечение. Обосновывается выбор архитектурных и технических решений, приводятся структура и функциональные особенности метамодели, метод семантической интеграции данных, описание разработанного языка запросов. В последней главе рассматривается практическое использование разработанных методов и программных средств на примерах решения ряда прикладных биологических задач.
Заключение диссертация на тему "Методы и средства реконструкции сетевых моделей сложных биологических систем"
Данные выводы были использованы при формировании окончательного варианта требований к системе- (приведенного в главе 2), а также в последующих прототипах и окончательном варианте реализации системы.
3.1.3.Прототип подсистемы интеграции данных
Прототип подсистемы интеграции был реализован для уточнения требований к метамодели, уточнения методики интеграции данных, а также исследования, производительности. Были учтены „ выводы, сделанные по результатам прототипирования метамодели.
Прототип был разработан на языке Java и СУБД Intersystems Caché [52]. Были реализованы требования к метамодели и интеграции данных, представленные главе 2, включая удаленный программный интерфейс на основе EJB3 [53], обеспечение целостности данных, поддержку транзакционности. Также были разработаны драйверы для- 7-ми баз, проведена тестовая интеграция; измерена производительность запросов.
По результатам реализации прототипа были сделаны следующие выводы:
• Реализованный в прототипе вариант метамодели удовлетворяет всем функциональным требованиям. Ключевыми отличиями по сравнению с Рис. 1.1 являются: (1) отсутствие уровня представления схем — он- не нужен для задачи интеграции данных; (2) представление информации о происхождении хранимых данных вплоть до отдельных значений свойств. Такая метамодель была использована в окончательном варианте реализации, описанном ниже в этой главе.
• СУБД Intersystems Caché не адекватна для решаемой задачи с точки зрения производительности. Было проведено стресс-тестирование, которое показало неудовлетворительность производительности при выполнении запросов, а также, в, первую очередь, интеграции данных. Одной из причин явились существенные ограничения по использованию оптимизационных механизмов в данной СУБД (в частности, некоторые виды индексов, кластеризации объектов 'и т.д.) Исследование этой проблемы, в том числе с привлечением технической поддержки компании Intesystems не позволило добиться желаемого результата.
Таким образом, прототипирование показало необходимость проведения дальнейших исследований для оптимизации производительности. Его результаты описаны в следующем пункте.
3.1.4.0птимизация производительности подсистемы интеграции данных
Наилучшей производительностью при выполнении запросов на сегодняшний день обладают реляционные СУБД. Таким образом, в первую очередь исследовалось применение комбинации реляционной СУБД и технологии объектно-реляционного отображения. Задачей исследования являлось достижения приемлемой производительности при выполнении запросов. Для пользовательских запросов это время порядка нескольких секунды.
Существует два принципиально разных способа отображения модели предметной области на схему базы данных. 1-ый способ заключается в том, что схема базы данных динамически модифицируется при изменении модели предметной области в приложении. Такая схема непосредственно отражает понятия предметной области, при этом каждому из них соответствует одна или несколько таблиц. Сама метамодель никак не представляется- в схеме базы данных. 2-ой способ состоит в том, что схема базы отражает непосредственно структуру метамодели, в то время как модель предметной области наряду с данными о конкретных объектах хранится в виде записей в базе. Сравним эти два способа.
Во 2-ом способе схема базьь данных статична, т.е. содержит фиксированный набор таблиц, который не меняется во время эксплуатации системы. Применительно к используемой в данной работе метамодели схема базы данных будет включать такие таблицы, как «Тип элементов», набор таблиц «Свойство» (для различных типов свойств), «Ограничение» и т.п. Это позволит хранить в базе модель предметной области. Для представления информации о конкретных объектах также понадобятся таблицы «Объект», «Значениесвойства». После разработки такой схемы размер модели предметной области (количество типов элементов, свойств) может быть произвольным, и ограничивается только требованиями производительности системы (или, в отдельных случаях, дискового пространства).
При конструировании запросов с применением такого способа вся необходимая информация о предметной области содержится в базе, что позволяет не хранить ее дополнительные описания в формате OWL или каком-либо другом. Сконструированный запрос на естественном языке для используемой СУБД, например SQL, будет сложнее, чем при использовании первого подхода. Это обусловлено тем, что вместо использования конкретных имен таблиц и их полей приходится вводить дополнительные критерии, их определяющие (в приведенном примере — обращение к таблицам «Типэлементов» и «Свойство»). Кроме того, выборка всегда будет проводиться из общей таблицы объектов, а не из отдельных таблиц, соответствующих искомым понятиям предметной области («Ген», «Белок» и т.д.). Все это отрицательным образом влияет на производительность системы. С другой стороны, свойство статичности схемы базы данных позволяет оптимизировать ее производительность вручную путем создания специализированных индексов, учитывающих специфику типичных запросов, а также используя другие оптимизационные механизмы, предусмотренные конкретными СУБД.
В 1-ом способе метамодель как таковая не представлена в базе данных. Однако программное окружение должно ее учитывать, в частности должен присутствовать программный модуль, ответственный за генерацию и модификацию схемы базы. Модуль должен обладать информацией обо всех правилах (типах данных, ограничениях, отношениях и т.д.) и соответствующим образом отображать их на реляционную схему. Размер схемы при этом может существенно варьироваться в зависимости от размера онтологии.
При построении запросов программное окружение должно иметь полную информацию об онтологии. При этом если принятая метамодель отличается от реляционной (в данном случае, семантика метамодели шире), извлечение этой информации из схемы базы данных затруднено. Для этого требуется взаимно однозначное соответствие между этими двумя метамоделями, однако применительно к объектно-реляционному отображению это требование не выполняется. Таким образом, модель предметной области должна быть представлена отдельно от базы, и программная система должна обеспечивать синхронизацию этого представления и схемы. Запросы должны также строиться на основе этого представления. Сложность запросов (и эффективность их исполнения) определяется двумя основными факторами: (1) эффективностью представления правил метамодели в реляционной схеме; (2) эффективностью сгенерированных индексов и автоматическим использованием других средств оптимизации запросов выбранной СУБД.
Для обоих способов были проведены тесты производительности. Была использована библиотека для объектно-реляционного • отображения Hibernate [55, 56] и СУБД PostgreSQL [57, 58]. Использовались результаты частичной интеграции 3-х баз (EntrezGene, UniProt, KEGG), составляющие приблизительно 5% от объема данных после полной интеграции всех запланированных баз (приблизительно 2*105 объектов, 2 Гб данных в XML-представлении).
Способ, основанный на статической схеме базы, показал лучший результат на выполнении запросов. Это обусловлено в первую очередь ручной настройкой^ индексов. При динамической генерации схемы, базы возможности генерации индексов ограничены. Библиотека Hibernate таких возможностей не предоставляет, в результате автоматически индексируются только внешние ключи. При сохранении объектов в базу оба способа показали сопоставимые по производительности результаты.
Для. дальнейшего применения был выбран способ 2, так как он помимо производительности, близкой к приемлемой, обеспечивает больше возможностей для дальнейшей оптимизации.
Далее разработанный прототип был перенесен с СУБД Intersystems Caché на PostgreSQL с использованием Hibernate для сохранения объектов. Производительность запросов существенно возросла после замены HQL (язык запросов Hibernate) на диалект SQL выбранной СУБД. Были достигнуты следующие результаты производительности: при запросах, обеспечивающих выборку большого количества (>1000) объектов -2-3 мс на объект, при «точных» запросах, выбирающих один объект —100 мс. Это лучше исходного прототипа, основанного на Intersystems Caché, приблизительно в 100 раз, и > реализации на основе HQL — в десять раз. При замене PostreSQL на Oracle были получены сопоставимые результаты по производительности.
По результатам исследования производительности были сделаны следующие выводы:
• Необходимо использовать статическую схему базы данных, являющуюся реляционным представлением метамодели.
• Производительность определяется в первую очередь реализацией объектно-реляционного отображения. Специализированная реализация, ориентированная на конкретную СУБД, дает на порядок лучшие результаты по сравнению с библиотеками общего назначения.
• Найдено решение, обеспечивающее приемлемую производительность системы при выполнении запросов. Это решение было использовано в окончательном варианте реализации системы.
3.1.5.Выбор технологической базы для визуального редактирования сетевых моделей
При разработке редактора сетевых моделей наиболее трудозатратной частью является визуализация сетевых моделей. С точки зрения реализации эта функциональность сводится к использованию интерактивной векторной графики для визуализации достаточно большого количества графических объектов. Это обусловлено, во-первых, сложностью самих сетевых моделей, во-вторых, тем, что для визуализации элемента сетевой модели используется несколько графических векторных примитивов, таким образом, общее число примитивов для отдельных сетей может достигать 104 и более. Были исследованы несколько программных библиотек, предоставляющую такую функциональность.
При реализации GeneNet был использована специализированная библиотека для визуализации векторной графики. Для сетей порядка 1000 элементов перерисовка сети при перемещении элемента занимала до нескольких секунд, что не удовлетворяло требованиям интерактивности. Были предприняты попытки использовать ее для разработки редактора сетевых моделей экосистемы (где оценочной количество элементов на порядок меньше), однако отсутствие документации, неочевидный программный интерфейс и ряд внутренних ошибок привели к необходимости от этой библиотеки отказаться. Ранее пришлось отказаться от повторного использования других компонент GeneNet ввиду жесткой архитекторы и сложности адаптации для реализации предъявленных требований. На основании этого было принято решение о разработке редактора сетевых моделей без использования технологической базы GeneNet.
В качестве основного языка разработки был выбран Java (версии 1.4 на тот момент, далее 1.5 и 1.6). Основные критерии выбора: простота кода (в сравнении с С++) и мультиплатформенность (в сравнении с языками .NET). Сравнительная простота языка уменьшает трудозатраты на разработку и отладку, что существенно в данной работе. Кроссплатформенность не входит в число базовых требований, однако повышает конкурентные характеристики продукта. Известно, например, что существенная часть потенциальных пользователей, в том числе и отечественных, используют ОС на базе Linux и вследствие этого не могут использовать платформу .NET.
В качестве инструментария для Java (помимо Java SDK) была выбрана система Eclipse [59]. Библиотека DRAW2D в составе Eclipse была протестирована на производительность и показала адекватные результаты. При 2000 вершин, представленных одиночными графическими примитивами и средней степени инцидентности 10 (итого 12000 примитивов) перерисовка, вызванная перемещением отдельных вершин, происходила без видимых задержек. Тестирование происходило на ЭВМ, которая по современным меркам является устаревшей для рабочей станции (Intel Р4 на базе 865 чипсета, 1 ГБ ОЗУ).
На основе исследования были приняты следующие решения, существенные для проектирования и реализации:
• использование языка Java;
• использования набора библиотек Eclipse для визуализации.
3.2. Общая архитектура системы
На основе требований, изложенных в главе 2, а также проведенных исследований была разработана архитектура системы [60]. На рисунке Рис. 3.2 У представлена ее общая компонентная модель. Синим цветом отмечены ключевые модули системы, включая программные интерфейсы.
MetaModel< (метамодель) — пакет системы, задающий стандарт семантики представления данных для системы и ее периферийных компонент. Собственной, реализации этот пакет не имеет, т.е. является набором программных интерфейсов, реализуемых в компонентах MetaBase и Araneus. Метамодель также может быть использована периферийными компонентами с помощью соответствующих программных интерфейсов двух вышеперечисленных компонент.
MetaBase является компонентой; предназначенной1 для хранения данных, манипуляции хранимыми данными, а также семантической интеграции внешних информационных ресурсов. Кроме того, она отвечает за разграничение доступа пользователей. Компонента предоставляет только программные интерфейсы, пользовательские интерфейсы, могут быть разработаны в форме1 внешних компонент. Интерфейсы Ь1 и L2 предоставляют функции по манипуляции данными в, рамках метамодели, поиску, а также интеграции данных. Семантически эти интерфейсы практически одинаковы, однако интерфейс L1 может быть использован только локально (т.е. только с того же узла, на котором развернута MetaBase), при этом обеспечивая лучшую производительность. Интерфейс L2 предназначен в первую очередь для взаимодействия с драйверами внешних баз данных, обеспечивающих поддержку процесса интеграции. Интерфейс L2 может быть использован удаленно (за счет того, что реализован на основе технологии Enterprise Java Beans), ввиду чего латентность запросов может быть значительной (за счет латентности сетевого соединения). Интерфейс предназначен для большинства периферийных компонент, таких как пользовательский поисковый интерфейс или компоненты для реконструкции сетевых моделей (по отношению к MetaBase они также рассматриваются как j периферийные).
-Storage
External DataBase Drivers
GeneNet > UniProt
TRRD > KEGG
EntrezGene > DBSNP
GeneBank
External Data Bases
Searching Web-interface
L2
Extension points
External components
GraNET (network analysis)
Tick ecosystem simulation
MGSGenerator (mathematics modelling)
Bacteria evolution simulation
Client Workstations
Рис. 3.2. Общая архитектура системы
Компонента Aranèus является инструментарием для создания средств реконструкции сетевых моделей. Эта компонента реализует метамодель с необходимыми расширениями (см. раздел «Метамодель»), обеспечивает персистентность этой модели в форме XML. Компонента также обеспечивает графической интерфейс пользователя для визуализации и редактирования сетевых моделей, основанный на Eclipse GEF [61] (Graphical Editing Framework, основан в свою очередь на DRAW2D). Компонента не может быть использована как полноценное пользовательское приложение и представляет собой программную библиотеку. Для задач реконструкции сетевых моделей генных и экологических сетей разработаны две сборки (GeneNet Studio, EcoNet Studio), включающие в себя помимо компонент Araneus еще ряд специализированных периферийных компонент, использующих ее точки расширения. Araneus является расширяемым инструментом и предоставляет ряд точек расширения для подключаемых модулей, основанных на технологии Eclipse RGP [59] (Rich Client Platform). В частности, внешние подключаемые модули (plug-ins) могут добавлять новые элементы пользовательского интерфейса или заменять уже существующие. Могут быть подключены различные модули анализа сетевой модели, универсальные или ориентированные на конкретную онтологию. Например, компонента GraNET [62], которая исходно разрабатывалась как самостоятельное приложение, была адаптирована для данной системы. Она включает в себя ряд алгоритмов анализа графов, в частности алгоритм декомпозиции графа на элементарные контуры. Эти алгоритмы не зависят от природы сетевой модели и могут быть потенциально применены к любым моделям. MGSGenerator [63] напротив разрабатывался исключительно для работы с онтологией генных сетей и предназначен для генерации на их основе математических моделей.
Заключение
Созданы программные средства, обеспечивающие компьютерную поддержку процесса реконструкции сетевых моделей сложных биологических систем включая этап сбора и систематизации первичных данных. Программные средства могут настраиваться на предметную область, что позволяет применять их к исследованию различных типов биологических систем. В работе показано применение разработанных средств для решения задач, связанных с молекулярно-генетическими и экологическими системами.
Исследованы современные подходы и программные решения для сетевого моделирования и интеграции данных в биологии и других областях знаний. В результате были разработаны методы представления и манипуляции сетевыми моделями и их элементами, контроля целостности и релевантности, а таюке семантической интеграции первичных данных. При проектировании программного обеспечения был применен адаптированный процесс разработки, учитывающий изменчивость рассматриваемой предметной области.
На защиту выносятся следующие положения:
1. Предложена и применена специализированная методика анализа требований к программному обеспечению для задач с нечетко определенной терминологической базой.
2. Впервые предложены методы универсального компьютерного представления сетевых моделей различных видов сложных биологических систем, основанные на метамодели и онтологическом описании. Методы включают в себя метамодель, правила представления онтологий и сетевых моделей, правила декомпозиции для оперирования сложными сетевыми моделями.
3. Впервые предложены методы семантической компьютерной интеграции слабоструктурированных биологических данных, обеспечивающие верификацию данных и структурированный поиск на основе онтологий.
4. На основе предложенных методов спроектировано и реализовано программное обеспечение для визуальной реконструкции сетевых моделей. В отличие от известных аналогов оно обеспечивает пользовательскую настройку на решаемую задачу путем задания онтологии и графической нотации.
5. На основе предложенных методов спроектировано и реализовано программное обеспечение для семантической интеграции биологических баз данных. Построена общая онтология и проведена интеграция для следующих баз: ОепВапк, КБвв, ёЬ8ЫР, Етгегвепе, ШОРнЛ, ТМШ и ОепеКе!.
6. Предложен и реализован язык запросов, обеспечивающий структурированный поиск по интегрированным данным с учетом заданной онтологии. В отличие от 8С>Ь-подобных языков, предложенный язык оперирует критериями поиска, задаваемыми относительно многозначных свойств.
7. Разработанные методы и программное обеспечение применены для решения следующих биологических задач:
• реконструкция сетевых моделей сложных молекулярно-генетических систем;
• сетевое и имитационное моделирование экосистемы иксодовых клещей (переносчиков клещевого энцефалита).
Библиография Мигинский, Денис Сергеевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
1. Unified Modeling Language. Object Management Group, http://www.uml.org/
2. Booch G. Object-Oriented Analysis and Design with Applications (2nd Edition). Addison-Wesley Professional. 1993.
3. Рамбо Дж., Якобсон А., Буч Г. Унифицированный процесс разработки программного обеспечения. СПб.: Питер, 2002.
4. Бек. К. Экстремальное программирование. СПб.: Питер, 2002.
5. Cockburn A. Crystal Clear: A Human-Powered Methodology for Small Teams. Addison-Wesley Professional, 2004.
6. IBM Rational Software Architect. International Business Machines Co., http://www-01.ibm.com/soflware/awdtools/architect/swarchitect/
7. JUDE Products. Change Vision, Inc., http://jude.change-vision.com/jude-web/product/index.html
8. W3C XML Schema. World Wide Web Consortium, http://www.w3 .org/XML/Schema
9. OWL Web Ontology Language Overview. World Wide Web Consortium, http://www.w3 .org/TR/owl-features/
10. Cadence OrCAD Solutions. Cadence Design Systems, Inc., http://www.cadence.com/products/orcad/pages/default.aspx
11. N1 Multisim. http://www.ni.com/multisim/
12. IDS Scheer AG Business Process Excellence: ARIS Platform. IDS Scheer AG, http ://www. ids-scheer. com/en/ ARIS/
13. Microsoft BizTalk Server. Microsoft Co. http://www.microsoft.com/biztalk/en/us/default.aspx
14. MSProject. Microsoft Co., http://www.ms-project.ru/
15. E. A. Ananko, N. L. Podkolodny, I. L. Stepanenko, O. A. Podkolodnaya, D. A. Rasskazov, D. S. Miginsky, V. A. Likhoshvai, A. V. Ratushny, N. N. Podkolodnaya, and N. A. Kolchanov GeneNet in 2005 // Nucleic Acids Research 2005, vol. 33, pp. D425-D427
16. J. Cheng, L. Scharenbroich, P. Baldi, and E. Mjolsness Sigmoid: Towards a Generative, Scalable, Software Infrastructure for Pathway Bioinformatics and Systems Biology //IEEE Intelligent Systems, 2005, vol. 20, no. 3, pp. 68-75
17. Networks /Pajek. http://vlado.fmf.uni-lj.si/pub/networks/pajek/
18. BioUML home page. Institute of Systems Biology, http://www.biouml.org/
19. The Protégé Ontology Editor and Knowledge Acquisition System. Stanford University http://protege.stanford.edu/
20. Resource Description Framework (RDF) / W3C Semantic Web Activity. World Wide Web Consortium, http://www.w3.org/RDF/
21. Shannon P., Markiel A., Ozier O., Baliga N.S., Wang J.T., Ramage D., Amin N., Schwikowski B., Ideker T. Cytoscape: a software environment for integrated models of biomolecular interaction networks //Genome Res. 2003, vol. 13(11), pp. 2498-2504
22. Cytoscape: Analyzing and Visualizing Network Data, http://www.cytoscape.org/
23. Systems Biology Workbench, http://sbw.sourceforge.net/
24. Lloyd C.M., Halstead M.D., Nielsen P.F. CellML: its future, present and past // Prog. Biophys. Mol. Biol., 2004, vol. 85(2-3), pp. 433-450
25. Physiolab Technology. http://www.entelos.com/physiolabModeler.php 28.Oracle 9i Database. Oracle Co,http://www.oracle.com/technology/products/oracle9i/index.html
26. Мигинский Д.С., Лабужский В.В., Лаврентьев-мл. М.М., Морозов A.B., Соколов С.А. Технология семантической интеграции баз данных в системной биологии //Вычислительные технологии. 2008. т. 13, № 6, с. 103-119
27. NCBI Home Page. National Center for Biotechnology Information, http://www.ncbi.nlm.nih.gov/
28. KEGG: Kyoto Encyclopedia of Genes and Genomes. http://www.genome.ad.jp/kegg
29. Kanehisa M., Goto S., Kawashima Sh., Nakaya A. The KEGG databases at GenomeNet. //Nucleic Acids Research, 2002, vol. 30(1), pp. 42-46, http://nar.oxfordjournals.Org/cgi/content/full/30/l/42
30. UniProt home page, http://www.ebi.uniprot.org/index.shtml
31. Davidson S. В., Crabtree J., Brunk B. P., Schug J., Tannen V., Overton G. C., Stoeckert Jr. C. J., K2/Kleisli and GUS: Experiments in integrated access to genomic data sources //IBM Systems Journal, 2001, vol. 40, no. 2, pp. 502-524
32. Wang K., Tarczy-Hornoch P., Shaker R., Mork P., Brinkley J. BioMediator Data Integration: Beyond Genomics to Neuroscience Data //AMIA Fall 2005 Symposium Proceedings, 2005, pp., 779-783
33. BioMediator Project Home Page, http://www.biomediator.org/
34. Object Data Management Group (ODMG). http://www.odbms.org/odmg/
35. Etzold T., Ulyanov A., Argos P. SRS: information retrieval system for molecular biology data banks //Methods Enzymol. 1996, vol. 266, pp. 114-28
36. SRS. Bio Wisdom Ltd., http://wvvw.biowisdom.com/navigation/srs/srs
37. Cockburn A. Writing Effective Use Cases. Addison-Wesley Professional, 2000
38. Martin R. C. Object Oriented Design Quality Metrics: An analysis of dependencies //ROAD 1995, vol. 2, no. 3http://www.objectmentor.com/resources/articles/oodmetrc.pdf
39. EntrezGene home page. National Center for Biotechnology Information, http://www.ncbi.nlm.nih.gov/sites/entrez?db=gene
40. Maglott D., Ostell J., Pruitt K. D., Tatusova T. Entrez Gene: gene-centered information at NCBI //Nucleic Acids Research 2005, vol. 33(Database issue) pp. D54-58, http://www.pubmedcentral.nih.gov/articlerender.fcgi?artid=539985
41. Liskov B., Wing J. A Behavioral Notion of Subtyping //ACM Transactions on Programming Languages and Systems 1994, vol. 16(6), pp. 1811-1841
42. CellDesigner. http://www.celldesigner.org/
43. Likhoshvai V., Ratushny A. Generalized Hill function method for modeling molecular processes //Bioinform. Comput. Biol., 2007, vol. 5(2b), pp. 521-531
44. Jastor. http://jastor.sourceforge.net/50.0WL API. http://owlapi.sourceforge.net/51 .Eclipse Modeling Framework Proj ect. Eclipse Foundation, http://www.eclipse.org/modeling/emf/
45. InterSystems Caché. InterSystems Co.,http://www.intersystems.ru/cache/index.html
46. Enterprise JavaBeans Technology. Sun Microsystems, http://java.sun.com/products/ejb/
47. Panda D., Rahman R., Lane D. EJB 3 in Action. Manning Publications, 2007
48. Hibernate: Relational Persistence for Java and .NET https://www.hibernate.org/
49. Bauer C., King G. Java Persistence with Hibernate. Manning Publications, 2006
50. PostgreSQL. http://www.postgresql.org/
51. Worsley J., Drake J. Practical PostgreSQL. O'Reilly Media, Inc. 2002
52. Eclipse Project. Eclipse Foundation, http://www.eclipse.org/proiects/proiectsummary.php?proiectid=::eclipse
53. Miginsky D.S., Suslov V.V., Timonov V.S., Rasskazov D.A., Sournina N.Yu., Podkolodny N.L. Approaches to the Computer Reconstruction of the Biological Networks // Intelligent Data Analysis 2008, vol. 12, no. 5, pp. 463-479
54. Eclipse Graphical Editing Framework (GEF). Eclipse Foundation, http://www.eclipse.org/gefy
55. Казанцев Ф.В., Акбердин И.Р., Безматерных К.Д., Лихошвай В.А. Система автоматизации генерации математических моделей генных сетей //Информационный вестник ВОГиС 2009, т. 13, № 1, с. 163-169
56. Object Constraint Language Specification. Object Management Group, http://www.omg.org/technology/documents/formal/ocl.htm
57. Galperin M.Y., Cochrane G.R. Nucleic Acids Research annual Database Issue and the NAR online Molecular Biology Database Collection in 2009 //Nucleic Acids Research, 2009, vol. 37 (Database issue), pp. Dl-4
58. XSL Transformations (XSLT). World Wide Web Consortium, http://www.w3 .org/TR/xslt
59. JBoss Application Server. JBoss Community, http://www.iboss.org/jbossas/
60. GenBank Overview. National Center for Biotechnology Information, http://www.ncbi.nlm.nih.gov/Genbank/
61. Wingender E., Chen X., Fricke E., Geffers R., Hehl R., Liebich I., et al. The TRANSFAC system on gene expression regulation //Nucleic Acids Research, 2001, vol. 29(1), pp. 281-283
62. Никитин А.Я., Антонова A.M. Учеты, прогнозирование и регуляция численности таежного клеща в рекреационной зоне г. Иркутска. Иркутский государственный ун-т, Иркутск. — 2005 г.
-
Похожие работы
- Программные технологии визуальной реконструкции и анализа сетевых моделей генетических, экологических и социальных систем
- Методики структурно-логического моделирования сложных систем с сетевой структурой
- Разработка методов анализа и управления в обобщенных сетевых моделях
- Разработка укрупненных организационно-технологических моделей реконструкции линий электропередачи
- Сетевая форма организации архитектурного проектирования
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность