Подход к улучшению алгоритмов расчета расстояний между цепочками ДНК (на примере алгоритма Нидлмана - Вунша)

УДК 004.021; 004.023; 51-76 DOI 10.21685/2072-3040-2018-1-4

Б. Ф. Мельников, М. А. Тренина, А. С. Кочергин

ПОДХОД К УЛУЧШЕНИЮ АЛГОРИТМОВ РАСЧЕТА

РАССТОЯНИЙ МЕЖДУ ЦЕПОЧКАМИ ДНК

Аннотация.

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

Материалы и методы. Для сравнения генетических цепочек, взятых из открытого банка данных NCBI, мы предлагаем эвристический алгоритм, разработанный на основе алгоритма Нидлмана - Вунша. После реализации исходного алгоритма к полученным значениям метрики дополнительно применяется специальная функция с тремя параметрами, определение которых производится методом градиентного спуска.

Результаты. Получена качественная оценка работы алгоритмов для расчета расстояния между цепочками ДНК и разработан один из подходов к улучшению таких алгоритмов.

Выводы. Было предложено улучшение алгоритма Нидлмана - Вунша сравнения строковых последовательностей, а также сформулирован подход к улучшению других алгоритмов построения метрик на длинных строках.

Ключевые слова: мера сходства последовательностей ДНК, эвристические алгоритмы, алгоритм Нидлмана - Вунша.

B. F. Mel'nikov, M. A. Trenina, A. S. Kochergin

AN APPROACH TO IMPROVING ALGORITHMS FOR COMPUTING DISTANCES BETWEEN DNA CHAINS

Abstract.

Background. In practice, it is often necessary to calculate the distance between sequences of a different nature. Similar algorithms are used in bioinformatics to compare sequenced genetic chains. Because of the large dimensionality of such chains, we have to use heuristic algorithms that give approximate results. Therefore, the problem arises of estimating the quality of the metrics (distances) used, which, according to its results, one can conclude that the algorithm is applicable to various studies. Purpose of the study - improving the quality of the distance between thee long strings.

Materials and methods. To compare the genetic chains taken from the open bank NCBI, we offer a heuristic algorithm developed on the basis of the Needleman -Wunsch algorithm. After implementing this algorithm, a special function with three

parameters to the obtained metric values is applied, which are determined by the method of gradient descent.

Results. A qualitative evaluation of the operation of algorithms for calculating the distance between DNA strings was obtained. An approach to the improvement of such algorithms was developed.

Conclusions. It was proposed to improve the Needleman - Wunsch algorithm for comparison of string sequences, and also formulate an approach to improving other algorithms for constructing metrics on long lines.

Key words: measure of the similarity of DNA sequences, heuristic algorithms, the Needleman - Wunsch algorithm.

Введение

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

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

ттт 8

[1], а для обычной ДНК может превышать 3 -10 символов.

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

1. Предварительные замечания

На сегодня широко известны следующие строковые метрики:

- расстояние Хэмминга [2];

- расстояние Левенштейна [3];

- расстояние Дамерау - Левенштейна [4];

- метрика Нидлмана - Вунша [5];

- метрика Смита - Вотермана [6].

Отметим, что все известные авторам алгоритмы, применяемые для решения задачи поиска расстояния между генетическими последовательностями, так или иначе основаны именно на этих метриках.

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

Расстояние Левенштейна между двумя строками - это минимальное количество операций вставки одного символа, удаления одного символа и заме-

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

Описание некоторых из соответствующих алгоритмов приводит к труд-норешаемым задачам [7-9], поэтому для решения подобных задач обычно используются эвристические алгоритмы. Последние предлагают псевдооптимальное решение за полиномиальное время. Примерами таких алгоритмов являются рассматриваемые нами ниже алгоритмы Нидлмана - Вунша и Смита - Ватермана.

Алгоритм Нидлмана - Вунша - это алгоритм для выполнения выравнивания двух последовательностей символов. Алгоритм Нидлмана - Вунша представляет собой пример динамического программирования и является, по-видимому, первым приложением динамического программирования [4, с. 299] к сравнению биологических последовательностей. Суть алгоритма в следующем. По матрице расстояний между аминокислотами (или, соответственно, между нуклеотидами) итеративным образом рассчитывается матрица всех

возможных маршрутов З/у :

где Sy - элемент /-й строки у-го столбца; Dij - расстояние между 1-й и у'-й

аминокислотами (или нуклеотидами); О - штраф на делецию (штраф за пропуск аминокислоты).

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

Приведем пример подобного выравнивания. Предположим, есть две последовательности: АШВМБУАОУБ и АМТБЬАЗЬАОМБ. Результат выравнивания можно представить следующим образом:

В примере выше знаком «-» обозначены разрывы в последовательностях. Таким образом, можно заметить совпадения 6 символов. Обычно метрики используют так называемые веса, обозначающие цену разрыва в последовательности.

Рассмотрим первые 20 символов последовательности мДНК человека (homo sapiens) и шимпанзе (pan troglodytes). Они записываются следующим образом для шимпанзе:

AHWSM--SVAGVS

A-WTDLASLAGWS

GTTTATGTAGCTTACCCCCT

и для человека:

GAATTCCCTGTGTTTGTGGT.

После применения алгоритма Нидлмана - Вунша, выполненного в точном соответствии с [4], мы получим следующее:

ОААТТСССТОТ-ОТТТОТОО--Т СТТТА---ТОТЛОСТТЛСССССТ.

Таким образом, после выравнивания мы получили две последовательности, каждая длиной в 23 символа. Из них совпадают 9 символов, т.е. эти последовательности похожи на 39,13 %.

Алгоритм Смита - Ватермана предназначен для получения локального выравнивания последовательностей, т.е. для выявления сходных участков двух нуклеотидных или белковых последовательностей. В отличие от алгоритма Нидлмана - Вунша, который осуществляет выравнивание последовательностей по всей длине, алгоритм Смита - Ватермана сравнивает отрезки всех возможных длин и оптимизирует меру сходства по всем отрезкам и всем выравниваниям этих отрезков [10].

Существует еще один подход к оценке меры сходства последовательностей £=<Х1 ...Х„> непустых объектов X] из конечного множество объектов I. Для описания этого подхода введем ряд общепринятых определений, имеющихся, например, в [11].

Размер последовательности, равный п обозначается через |£|.

Длиной последовательности называется общее число объектов, встре-

п

чающихся в последовательности I (£) = ^ | X^ |.

¿=1

Последовательность Т = <71 ... Ут> называется подпоследовательностью последовательности S = <Х ... Хп>, если существуют такие индексы 1 < ¿1 < ¿2 <  < ¿т < п, что У/ с . для всех/ = 1, ..., т, т < п. При этом последовательность £ называется надпоследовательностью последовательности Т. Множество всех подпоследовательностей последовательности £ обозначим записью ф(£), а ф(£)=| ф(£)|. Обозначим записью ф(£,Т) = ф(£)Пф(Т) множество всех общих подпоследовательностей двух последовательностей £ и Т, и аналогично ф(£,Т) =| ф(£,Т) |.

2. Меры сходства последовательностей

Введем еще ряд определений.

¡-префиксом последовательности £ называется последовательность из первых I элементов <Х1 ... Х>; /-й набор объектов последовательности £ обозначим как £[/].

Пусть £ = <Х ...Хп> - последовательность, а У - набор объектов. Конкатенацией набора объектов У с последовательностью £ называется последовательность <Х ...ХпУ>.

Примеры. Рассмотрим последовательности

£1 = <{а} {а, Ь} {е} {с, й} {Ь, с1}>, £2 = <{а} {а, Ь, й} {а, Ь, с} {Ь, с1}>.

Примером подпоследовательности последовательности £1 является <{а}{Ь}{с, й}>. Длина последовательности равна I(£1 ) = 8, а ее размер -

|51 = 5. 3-префиксом является ^ = <{а} {а, Ь} {е}>, а вторым набором объектов последовательности 51 является {а,Ь}.

Множеством всех подпоследовательностей является

Ф(5|) = {<>, <{а}>, <{Ь}>, <{ё}>, <{а,Ь}>, <{а, ё}>, <{Ь,ё}>,<{а, Ь, ё}>, <{а} {а}>, <{а} {Ь}>, <{а} {ё}>, <{а} {а, Ь}>, <{а} {а, ё}>, <{а} {Ь, ё}}>, <{а} {а, Ь, ё}>}.

Тогда ф(5|) = 15.

Примером конкатенации последовательности 5^ с набором последова-

2

тельности {а, Ь, с} 52 ° {а, Ь, с} является <{а} {а, Ь, ё} {а, Ь, с}>. Меры сходства последовательностей.

1. Мера «все общие подпоследовательности» вычисляется как число общих подпоследовательностей, деленное на максимальное число подпоследовательностей 5 и Т:

.Г ) =

{ф(Х). ф(Т)}'

тах

Мера сходства удовлетворяет следующим условиям:

1) ц(5,Т )> 0.

2) ц(5 ,Т )_ 1, если 5 = Т.

3) ц(5,Т )_ц(Т, 5).

Пример. Пусть 51 = <{а} {а, Ь} {е} {с, ё} {Ь, ё}>, 52 = <{а} {Ь, с, {а, ё}>. Множество всех общих подпоследовательностей 54 и 5| равно

ф((,5| ) = {<>,<{а} >,<{Ь} >,<{с} >,<{с,ё} >,<{а}{а} >,<{а}{Ь} >,

<{а}{с} >,<{а}{ё} >,<{а}{с,ё} >,<{Ь}{ё} >,<{а}{Ь}{ё} >}. Тогда сходство последовательностей равно

ф(5 ,Т) _ 13 _ 13

Т ) =

тах

{ф(5). ф(Т)} max {56.61} 61'

2. Мера «самая длинная общая подпоследовательность» здесь рассматривается только самая длинная из подпоследовательностей. Существует два способа ее измерения - использовать размер или длину последовательности:

- используя размер:

Ц^ (5,Т)_ тах{| 51,| Т |} ;

используя длину:

l

Мlength (S T )_

max{l (S), l (T)}

Пример. Пусть £ = <{а, Ь}{а, с}{а, /}>, Т = <{а, Ь}{с}>. Способы измерения:

- используя размер:

Мsize

l(LCS(S,T)) _ 3

Mlength (S T)_

max{l (S), l (T)} 6 2

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

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

3. Расчет расстояния между цепочками ДНК

Приведем результаты выполненного нами расчета расстояний между цепочками мДНК различных животных. Для этого мы взяли из банка данных NCBI [12] секвенированные цепочки мДНК для одного представителя каждого из 28 отрядов млекопитающих; МДНК у разных из этих 28 видов меняются только за счет мутации из-за того, что не подвержены рекомбинации и наследуются только по материнской линии.

Для поиска расстояния между различными цепочками мДНК использовался метод, предложенный Паже сом. Этот язык создавался для работы с большими данными и имеет библиотеки [13] для работы с последовательностями строк.

Метод работает следующим образом: на вход подаются две строки Si, каждая длиной n символов c^, где i € {1, 2}, j G {1, ..., nt}. Далее эти строки преобразуются в S;- по формулам

Si _ g(i,a, )c(ia) - g(i,b1)c(ib)g(i,b1+1),

где ah bj G {1, ..., n} ai < b , gj _ 0 или больше разрывов на позиции j для строки i.

Длина( S'j) = длина( S'k ), i Ф k . Для описанного здесь преобразования используется алгоритм Нидлмана - Вунша, подробное рассмотрение и улуч-

шение которого является предметом настоящей публикации. Для оценки расстояния берется количество совпадений после выравнивания за вычетом штрафа за разрывы. При выполнении данных вычислений штраф за открытие разрыва предлагается считать равным 10 единиц, а за продолжение разрыва -4 единицы за символ. Для получения результата производятся следующие вычисления: количество совпавших позиций делится на общее количество символов и умножается на 100. Таким образом, результатом является число, лежащее в диапазоне от 0 до 100, где 0 - полное несовпадение строк, 100 -полное совпадение. Часть результатов сравнения цепочек мДНК различных представителей млекопитающих представлены в таблице (рис. 1). Полная версия таблицы доступна по ссылке [14].

|[Д] [,2] ш [Д1 1,5] [,6] n\ 1-8] [,9] [Д0] mi [,"] [,13] [Д4) Щ] [Д6] [,17]

[1J юо.оо 70,08 74,15 73,05 68,51 67,59 71,50 70,53 49.66 67,27 73,18 72,93 69.77 70,66 69,50 71,67 73,79

[2,J 70,1)3 100,00 63,09 70,21 76,01 79.11 69.86 77,80 49,50 67,33 69.66 69.84 67.87 69.26 77.14 70,40 70,31

[3,] 74,15 63,09 100,00 70,79 65,68 66,10 64,20 62,83 41,63 60,24 64.19 72,85 62,38 62,66 62.18 68.91 65,57

[4,] 73,05 70,21 70,79 100,00 70,64 65,18 70,76 70,16 49.98 69.38 72,69 72,07 71,65 72,15 70,25 72,93 72,51

[S,] 68,51 76,01 65,68 70,64 100,00 78,32 68,23 76,41 49,36 68,39 68,19 69,03 68,53 68.78 75,04 68,79 69,71

[6, J 67,59 [7,] 71,50 79.11 69.86 66,10 64,20 65,18 78,32 70,76 68,23 100,00 65.89 65,89 100,00 80,24 48.96 69,59 49,29 64.16 68,20 64.87 70,76 66,35 63,27 70,98 69,12 64,31 70,77 73,30 68,80 66,54 65,40 72,48 71,24

[8,J 70,53 77,80 62,83 70,16 76,41 80,24 69,59 100,00 49.47 67,75 68,57 70,32 67,63 68,37 77,85 69.94 70,35

[9,] 49,66 45,50 41,63 49,98 49,36 43.96 49,29 49,47 100,00 48.90 49,82 49,54 49,38 49.82 49,86 49,83 49,43

[10, J 67.27 67,33 60,24 69.38 68,39 64.16 68,20 67,75 48,90 100,00 67.38 67.78 69,82 68.88 66.99 68.94 68,95

[11,J 73,IS 69.66 64.19 72,69 68.19 64.87 70,76 68,57 49.82 67.38 100,00 71,77 70,51 71,30 69.21 71,93 71.61

[12,J 72,93 69.84 72,85 72,07 69,03 66,35 70,98 70,32 49,54 67,78 71,77 100,00 70,64 69.72 69,42 71,49 71,68

[13,J 69.77 [14,] 70,66 67.87 69.26 62,38 62,66 71,65 68,53 72,15 68,78 63,27 64,31 69.12 70,77 67,63 49.38 68,37 49,82 69,82 68.88 70,51 71,30 70,64 100,00 69,72 70,00 70,00 100,00 68,22 68,86 70,37 70,27 72,31 70,64

[15,J 69,50 77.14 62.18 70,25 75,04 73,30 68.80 77,85 49.86 66.99 69.21 69,42 68,22 68.86 100,00 69.93 69,53

[16,J 71,67 70,40 68,91 72,93 68,79 66,54 72,48 69,94 49,83 68.94 71,93 71,49 70,37 72,31 69,93 100,00 71,52

[17,] 73,79 70,31 65,57 72,51 69,71 65,40 71,24 70,35 49.43 68,95 71.61 71.68 70,27 70,64 69,53 71,52 100,00

[18,] 73,94 71,26 70,12 74,75 69.29 66,75 72,05 70,57 49.71 68.17 72,67 72,61 70,14 71,53 70,27 73,30 72,78

[19,] 69.75 73,48 65,93 67,35 71,04 74.84 67.96 73,90 49,60 63,64 67,01 67,72 64,42 66,51 73,58 67.90 67,40

[20,] 68.24 70,14 61.38 69,05 69,63 68,00 68,31 69.91 48.98 67,10 67.44 68,52 67,95 67,70 69.94 68.48 68,80

[21,] 73,35 70,77 65,65 74,29 70,33 66,30 73,02 70,54 49,88 69,60 73,29 72,58 71,95 73,58 69,90 74,46 72,71

[22,] 72,75 [23,] 67,21 68,37 73,07 64,37 59,95 71,06 66,53 68,60 72,78 64,57 77,60 68.98 66,63 68.09 49,56 73,15 49,18 65,71 67,09 72,46 66,77 71,04 68,69 66,47 67,90 68.74 67,21 68.66 73,44 70,57 70,59 67,29 67,25

[24,] 73,35 70,16 65,27 72.98 68.86 65,42 72,09 69,59 49.99 68,00 72,80 70,98 70,31 73,58 70,04 74,38 72,21

[25,] 75, 82 71.19 72,67 73.99 69.12 66,39 72,01 70,19 49.95 69.92 73,30 72,27 71,22 72,55 70,50 73,74 74,28

[26,] 73,21 70,39 76,21 68.94 68,43 64.49 71,54 66.86 49,63 64,52 68.80 72,85 69.96 70,41 69.74 68.77 70,28

[27,] 72,59 70,10 69.64 73,63 68.84 64,95 72,44 68.96 49.68 68,93 73,19 70,99 71,33 75,71 70,08 74,02 71,43

[28,] 73,59 70,93 70,48 74,15 69,83 66,63 70,91 70,53 49,52 68,85 73,72 72,41 72,01 71,53 70,13 73,06 72,84

Рис. 1. Часть результатов сравнения цепочек мДНК различных представителей млекопитающих

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

4. Оценка полученных результатов

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

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

щаяся в разработке метода сравнительной оценки алгоритмов восстановлений, а также сравнительной оценки различных вариантов восстановлений матрицы расстояний.

С целью проведения этого сравнительного анализа мы предлагаем для полученной в результате реализации алгоритма восстановлений матрицы расстояний между геномами рассматривать все возможные треугольники, потому что в идеале они должны быть остроугольными равнобедренными. Предположение о том, что треугольники должны быть остроугольными равнобедренными, возникает на основе примерно таких рассуждений. Согласно данным биологов шимпанзе (Ш) и бонобо (Б) разошлись (имели общего предка), по разным оценкам, около 2-2,5 млн лет назад (недаром альтернативное название Б - «карликовый Ш», [15]), а человек (Ч) с ними обоими разошелся 5,5-7 млн лет назад. В связи с этим возникает вопрос: почему Ч должен быть ближе к Б, чем к Ш? Или наоборот - почему он должен быть ближе к Ш, чем к Б? Очевидно, что ответ на оба этих вопроса отрицательный, т.е., иными словами, объяснения большей близости существовать не может [16].

Для осуществления сравнения восстановленных матриц используется характеристика «отхода» ("badness") полученных треугольников от «вытянутых равнобедренных» треугольников. При расчете "badness" всей матрицы для каждого варианта восстановления можно либо суммировать соответствующие "badness" по всем возможным треугольникам рассматриваемых матриц, либо взять максимальную "badness" по этим треугольникам; мы используем максимальное значение.

n

Для каждой матрицы образуется к = —---- треугольников,

6

и для характеристики "badness" треугольника мы будем применять формулу

а-р

8 = -

а

где а, в и у - углы треугольника, причем а > в > у [16].

Максимальное значение "badness" для некоторого треугольника, согласно определению этих функций, может быть равно 1, при этом в самом плохом случае работы алгоритма, т.е. когда возникает нарушение неравенства треугольника, мы полагаем это значение равным от 1 до 2 (также в зависимости от количественных характеристик этого нарушения).

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

Рассмотрим множество P восстановленных матриц различными способами и введем на этом множестве функцию для любых A, B 6 P:

к

d (Л в ) = £

г=1

8A -8B

Проверим, удовлетворяет ли функция (1) аксиомам метрики:

1) р(х,у) = о тогда и только тогда, когда х = у ;

2) р(х, у ) = р(у, х);

3) р(х, у )<р(х, г ) + р(г, у). Очевидно, что ё(А,А) = 0 ,

к

ё (А, В ) = 0 ^ ^

г=1

Si4 -8?

= 0

8A = 8? для всех i = 1,..., к.

Это означает равенство характеристик "badness" для всех треугольников этих двух матриц, что говорит о подобии этих треугольников. Таким образом, матрицы совпадают с точки зрения их характеристик, но элементы матриц могут отличаться друг от друга. Следовательно, первая аксиома не выполняется, т. е. различные точки пространства могут находиться на нулевом расстоянии друг от друга.

Вторая аксиома очевидно выполняется.

Выполнение третьей аксиомы вытекает из свойства модуля:

к к

^ C ) = Z

Si4 -8C

к

<Z

i=1

Si4 -8C

= Z

8A-8? + 8C-8?

i =1

<

i=1

к

+Z

8C -8?

i =1

= d (A, В ) + d (?, C).

Таким образом, функция (1), удовлетворяющая второй и третьей аксиомам и не удовлетворяющая первой аксиоме, является псевдометрикой [17] на Р.

Проанализируем, какими свойствами обладает псевдометрика ё и метрическое пространство (Р, ё). Для этого будем использовать определения: ограниченного множества, предела последовательности, фундаментальной последовательности и полного пространства согласно [17].

Возьмем любую последовательность матриц {Ат} данного метрического пространства, она будет ограниченной. Действительно, выберем в качестве центра шара О матрицу, у которой характеристика всех матриц равна нулю, т.е. матрицу, все треугольники которой являются остроугольными равнобед-

ренными. Тогда в силу того, что для любого треугольника 5 =

а-Р

а

< 1, вы-

полняется неравенство

• (A, 0)= Z\8A-8?

i=1

к

=Z

i=1

8A

< к.

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

Пусть последовательность матриц {Ат} фундаментальная, т.е. она удовлетворяет условию Коши [17]: для любого е > 0 найдется номер Ке, начиная с которого для любых номеров п и т выполняется неравенство

d (An, Am ) = Z i=1

8An -8Am

<e.

При этом любая последовательность в этом метрическом пространстве ограничена, а из любой ограниченной последовательности можно выделить

сходящуюся подпоследовательность {Лтк |.

Если некоторая подпоследовательность фундаментальной последовательности сходится, то ее предел и является пределом всей последовательности. Действительно, пусть последовательность {Лт} фундаментальная и

- ее сходящаяся подпоследовательность, т.е.

{Am}

lim A - А.

mk ^^

Тогда для любого £ /2 > 0 найдется номер К£ , начиная с которого для любых номеров р и т выполняется неравенство

d (Аи, Am ) -

J A -U A

' 'n ' 'n

<e/2.

Выберем теперь такой номер Ко, чтобы при всех к > Ко имело место неравенство тк > К£ . Тогда при всех т > N и к > Ко справедливо неравенство

7 Am -V А

а<£, 2 '

поэтому

lim Am - А .

m^ra

Переходя к пределу при к ^^ и используя (2) получим, что для всех т > N выполняется неравенство

k

^ cAm о A . £

г=1

значит,

sAm -sA

< — < £ . 2

lim Am - А .

m^ra

В силу того, что любая последовательность пространства (Р, С) ограничена, из нее можно выделить сходящуюся подпоследовательность. Исходя из теоремы о том, что метрическое пространство компактно тогда и только тогда, когда из любой последовательности точек можно выделить сходящуюся подпоследовательность [17], получаем, что пространство (Р, С) компактно.

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

6. Улучшение полученных результатов

На полученной матрице расстояний [14] мы вычислили значение "badness", оно получилось равным 0,9993. Таким образом, это близкое к единице значение, по-видимому, говорит о существовании во множестве треугольников таких, которые имеют максимальное отклонение от «вытянутых равнобедренных» треугольников и неоптимальности полученных метрик.

С целью уменьшения значения "badness" и оптимизации меры сходства последовательностей к матрице расстояний мы применили функцию с тремя параметрами:

а - характеризует смещение значений на а единиц;

а (альфа) - характеризует выпуклость кривой для всех значений, больших a;

ß - характеризует вогнутость кривой для всех значений, меньших а. Значения параметров были получены в результате применения метода

градиентного спуска к целевой функции, исследуемой на минимум.

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

Заключение

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

Библиографический список

1. Айала, Ф. Современная генетика : пер. с англ. : в 3 т. / Ф. Айала, Дж. Кайгер. -М. : Мир, 1987. - Т. 1. - 295 с.

2. Hamming, R. W. Error detecting and error correcting codes / R. W. Hamming // The Bell System Technical Journal. - 1950. - Vol. 29 (2). - Р. 147-160.

3. Левенштейн, В. И. Двоичные коды с исправлением выпадений, вставок и замещений символов / В. И. Левейштейн // Доклады Академии наук СССР. -1965. - Vol. 163.4. - Р. 845-848.

4. Кормен, Т. Алгоритмы. Построение и анализ / Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн. - М. : Вильямс, 2005. - 1296 с.

5. Needleman, S. A general method applicable to the search for simi-larities in the amino acid sequence of two proteins / S. Needleman, C. Wunsch // Journal of Molecular Biology. - 1970. - Vol. 48(3). - P. 443-453.

6. Smith, T. F. Identification of Common Molecular Subsequences / Temple F. Smith and Michael S. Waterman // Journal of Molecular Biology. - 1981. - Vol. 147. -P. 195-197.

7. Hromkovic, J. Algorithmics for Hard Problems. Introduction to Combinatorial Optimization, Randomization, Approximation, and Heuristics / J. Hromkovic. - Germany : Springer, 2003. - 538 p.

8. Мельников, Б. Еще раз об эвристиках для задачи коммивояжера / Б. Мельников, Н. Романов // Теоретические проблемы информатики и ее приложений. - 2001. - Т. 4. - С. 81-87.

9. Melnikov, B. Some specific heuristics for situation clustering problems / B. Melni-kov, A. Radionov, A. Moseev, E. Melnikova // ICSOFT, Technologies, Proceedings 1st International Conference on Software and Data Technologies. - Germany : Springer, 2007. - P. 272-279.

10. Мельников, Б. Ф. Параллельная реализация мультиэвристического подхода в задаче сравнения генетических последовательностей / Б. Ф. Мельников, А. Г. Панин // Вектор науки Тольяттинского государственного университета. - 2012. -№ 4 (22). - С. 83-86.

11. Ахо, А. Теория синтаксического анализа, перевода и компиляции. Синтаксический анализ / А. Ахо, Дж. Ульман. - М. : Книга по Требованию, 2012 - Т. 1. -613 с.

12. Home - Nucleotide - NCBI. - URL: https://www.ncbi.nlm.nih.gov/nuccore

13. Biostrings: String Objects Representing Biological Sequences and Matching Algorithms / H. Pages, P. Aboyoun, R. Gentleman, S. DebRaoy // Bioconductor - URL: https://bioc.ism.ac.jp/packages/2.6/bioc/html/Biostrings.html

14. Pairwise_Alignment_Mammals. - URL: https://yadi.sk/d/Oa-DTAC83SCzRq

15. Frans, B. M. Bonobo: The Forgotten Ape / B. M. Frans. - University of California Press, 1998. - 224 р.

16. Melnikov, B. F. Comparative analysis of algorithms calculating distances of DNA sequences and some related problems / B. F. Melnikov, S. V. Pivneva, M. A. Trifonov // Информационные технологии и нанотехнологии (ИТНТ-2017) : сб. тр. III Между -нар. конф. и молодежной школы / Самарский национальный исследовательский университет имени академика С. П. Королева. - Самар, 2017. - С. 1640-1645.

17. Колмогоров, А. Н. Элементы теории функций и функционального анализа / А. Н. Колмогоров, С. В. Фомин ; МГУ им. М. В. Ломоносова. - Изд. 7-е. - М. : Физматлит, 2004. - 570 с.

References

1. Ayala F., Kayger Dzh. Sovremennaya genetika: per. s angl.: v 3 t. [Modern genetics: translation from English: in 3 volumes]. Moscow: Mir, 1987, vol. 1, 295 p.

2. Hamming R. W. The Bell System Technical Journal. 1950, vol. 29 (2), pp. 147-160.

3. Levenshteyn V. I. Doklady Akademii nauk SSSR [Reports of the USSR Academy of Sciences]. 1965, vol. 163.4, pp. 845-848.

4. Kormen T. Leyzerson Ch., Rivest R., Shtayn K. Algoritmy. Postroenie i analiz [Algorithms. Building and analysis]. Moscow: Vil'yams, 2005, 1296 p.

5. Needleman S., Wunsch C. Journal of Molecular Biology. 1970, vol. 48 (3), pp. 443453.

6. Smith T. F., Waterman M. S. Journal of Molecular Biology. 1981, vol. 147, pp. 195197.

7. Hromkovic J. Algorithmics for Hard Problems. Introduction to Combinatorial Optimization, Randomization, Approximation, and Heuristics. Germany: Springer, 2003, 538 p.

8. Mel'nikov B., Romanov N. Teoreticheskie problemy informatiki i ee prilozheniy [Theoretical problems of informatics and its applications]. 2001, vol. 4, pp. 81-87.

9. Melnikov B., Radionov A., Moseev A., Melnikova E. ICSOFT, Technologies, Proceedings 1st International Conference on Software and Data Technologies. Germany: Springer, 2007, pp. 272-279.

10. Mel'nikov B. F., Panin A. G. Vektor nauki Tol'yattinskogo gosudarstvennogo universi-teta [The scientific vector of Togliatti State University]. 2012, no. 4 (22), pp. 83-86.

11. Akho A., Ul'man Dzh. Teoriya sintaksicheskogo analiza, perevoda i kompilyatsii. Sin-taksicheskiy analiz [The theory of syntactical analysis, translation and compilation]. Moscow: Kniga po Trebovaniyu, 2012, vol. 1, 613 p.

12. Home - Nucleotide - NCBI. Available at: https://www.ncbi.nlm.nih.gov/nuccore

13. Pages H., Aboyoun P., Gentleman R., DebRaoy S. Biostrings: String Objects Representing Biological Sequences and Matching Algorithms. Bioconductor. Available at: https://bioc.ism.ac.jp/packages/2.6/bioc/html/Biostrings.html

14. Pairwise_Alignment_Mammals. Available at: https://yadi.sk/d/Oa-DTAC83SCzRq

15. Frans B. M. Bonobo: The Forgotten Ape. University of California Press, 1998, 224 p.

16. Melnikov B. F., Pivneva S. V., Trifonov M. A. Informatsionnye tekhnologii i nano-tekhnologii (ITNT-2017): sb. tr. III Mezhdunar. konf. i molodezhnoy shkoly [Information technologies and nanotechnologies (ITNT-2017): proceedings of III International conference and youth school]. Samarskiy natsional'nyy issledovatel'skiy universi-tet imeni akademika S. P. Koroleva. Samara, 2017, pp. 1640-1645.

17. Kolmogorov A. N., Fomin S. V. Elementy teorii funktsiy i funktsional'nogo analiza [Elements of the theory of fuctions and functional analysis]. MGU im. M. V. Lomonosova. Ed. 7th. Moscow: Fizmatlit, 2004, 570 p.

Мельников Борис Феликсович

доктор физико-математических наук, профессор, кафедра информационных систем и сетей, Российский государственный социальный университет

E-mail: bf-melnikov@yandex.ru

Mel'nikov Boris Feliksovich Doctor of physical and mathematical sciences, professor, sub-department of information systems and networks, Russian State Social University

Тренина Марина Анатольевна старший преподаватель, кафедра прикладной математики и информатики, Институт математики, физики и информационных технологий, Тольяттинский государственный университет

E-mail: trenina.m.a@yandex.ru

Trenina Marina Anatol'evna Senior lecturer, sub-department of applied mathematics and informatics, Institute of mathematics, physics and information technologies, Togliatti State University

Кочергин Александр Сергеевич аспирант, Российский государственный социальный университет

E-mail: kocherginalexandr@gmail.com

Kochergin Aleksandr Sergeevich Postgraduate student, Russian State Social University

УДК 004.021; 004.023; 51-76 Мельников, Б. Ф.

Подход к улучшению алгоритмов расчета расстояний между цепочками ДНК (на примере алгоритма Нидлмана - Вунша) / Б. Ф. Мельников, М. А. Тренина, А. С. Кочергин // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. - 2018. - № 1 (45). -С. 46-59. - БОТ 10.21685/2072-3040-2018-1-4.