Transcript
Page 1: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Выравнивание последовательностей

Продолжение

Page 2: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Аминокислоты

Page 3: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Консервативность

Замены аминокислот, сохраняющиефизико-химические свойства белков.

– Полярные на полярные

• аспартат и глутамат

– Неполярные на неполярные

• аланин и валин

– Прочие похожие

• лейцин и изолейцин

Page 4: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Матрицы весов

Для ДНК составим (4+1) x(4+1) матрицу весов δ.

Для белков размер матрицы (20*+1)x(20*+1).

Дополнительные строка и столбец нужны длявключения gap символа.

Это упростит алгоритм следующим образом:

si-1,j-1 + δ (vi, wj)

si,j = max s i-1,j + δ (vi, -)

s i,j-1 + δ (-, wj)

Page 5: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Пример матрицы весов

A

A

R

N

K

5

-

-

-

R

-2

7

-

-

N

-1

-1

7

-

K

-1

3

0

6

• Несмотря на то, что R и K разные

аминокислоты, их пара имеет

положительный вес.

• Обе являются положительно

заряженными полярными

аминокислотами

-1 -1 -2 +5 +7 +3 = 11

Page 6: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Создание матриц весов

• Матрицы создаются на основеэкспериментальных данных.

• Выравнивания – представления белков,различающихся мутациями.

• Некоторые из этих мутаций менее пагубновлияют на функцию белка, и,соответственно, штраф δ(vi , wj), будетменьше прочих.

Page 7: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Типы матриц весов

• Матрицы замен аминокислот

– PAM

– BLOSUM

• ДНК матрицы

Page 8: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

PAM

• Point Accepted Mutation (Dayhoff et al.)

• 1 PAM = PAM1 = 1% аминокислот мутировали.

– Однако, после 100 PAMов эволюции, не все остаткиизменятся

• Некоторые остатки мутируют несколько раз

• Некоторые остатки вернутся к начальномусостоянию

• Некоторые вообще не изменятся

Page 9: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

PAMX

• PAMx = PAM1

• PAM250 = PAM1

• PAM250 широко используемая матрица:

Ala

Arg

Asn

Asp

Cys

Gln

...

Trp

Tyr

Val

A

R

N

D

C

Q

Ala

A

13

3

4

5

2

3

Arg

R

6

17

4

4

1

5

Asn

N

9

4

6

8

1

5

Asp

D

9

3

7

11

1

6

Cys

C

5

2

2

1

52

1

Gln

Q

8

5

5

7

1

10

Glu

E

9

3

6

10

1

7

Gly

G

12

2

4

5

2

3

His

H

6

6

6

6

2

7

Ile

I

8

3

3

3

2

2

Leu

L

6

2

2

2

1

3

Lys ...

K ...

7 ...

9

5

5

1

5

W

Y

V

0

1

7

2

1

4

0

2

4

0

1

4

0

3

4

0

1

4

0

1

4

0

1

4

1

3

5

0

2

4

1

2

15

0

1

10

x

250

Page 10: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

BLOSUM

• Blocks Substitution Matrix

• Веса извлекаются из статистикивыравниваний родственных белков

– BLOSUM62 была создана на выборкепоследовательностей с min 62% identity

Page 11: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Матрица весов BLOSUM50

Page 12: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Выравнивание с матрицами весов

В задаче 2 вместо одинаковых весовсовпадения и несовпадения использоватьматрицу весов (достаточно матрицы(3+1)х(3+1)).

A R N K

A 5

-

-

-2

7

-

-1

-1

7

-1

3

0

Например: R

N

K - - - 6

Page 13: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Глобальное выравнивание

--T—-CC-C-AGT—-TATGT-CAGGGGACACG—A-GCATGCAGA-GAC| || | || | | | ||| || | | | | |||| |

AATTGCCGCC-GTCGT-T-TTCAG----CA-GTTATG—T-CAGAT--C

Локальное выравнивание

tccCAGTTATGTCAGgggacacgagcatgcagagac

||||||||||||

aattgccgccgtcgttttcagCAGTTATGTCAGatc

Page 14: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Локальное выравнивание

• Задача глобального выравнивания – найтинаиболее весомый путь между вершинами (0,0) и(n,m) графа.

• Задача локального выравнивания – найтинаиболее весомый путь среди всех путей междувершинами (i,j) и (i’, j’).

Page 15: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Решение – free ride

Yeah, a free ride!

Вершина

(0,0)

Page 16: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Алгоритм локальноговыравнивания (Смита-Ватермана)

Наибольшее значение si,j – лучший вес

локального выравнивания.

Рекурсия:0

si,j = max si-1,j-1 + δ (vi, wj)

s i-1,j + δ (vi, -)s i,j-1 + δ (-, wj)

Лишь одно отличие

от глобального

выравнивания.

Page 17: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Локальное выравнивание

В задаче 2 найти оптимальное выравнивание средивыравниваний всех возможных подслов двухпоследовательностей – локальное выравнивание.

Page 18: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Взвешивание делеций/вставок: простойподход.

• Фиксированный штраф σ за каждуюделецию/вставку:

– -σ за одну делецию,

– -2σ за две делеции подряд,

– -3σ за три делеции подряд, и т.д.

Page 19: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Афинный штраф за gap

• В природе, серии последовательных kделеций происходят чаще, чем kодиночных событий:

Более

предпочтительно

Обычное взвешивание

оценит эти два Менеевыравния одинаково предпочтительно

Page 20: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Афинный штраф за гэпы

– -ρ-σ за одну делецию 1 indel

– -ρ-2σ за две делеции 2 indels

– -ρ-3σ за три делеции 3 indels, etc.

Page 21: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Добавление ребер афинных штрафов.

Время работывозрастает до O(n3)

Page 22: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

The 3-leveled Manhattan Grid

Page 23: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

3-leveled Manhattan

ρδ

δ σ

δ

ρ

σ

δ

δ

Page 24: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Переключение между уровнями

• Уровни:

– Основной уровень для диагональных ребер

– Нижний уровень для горизонтальных ребер

– Верхний уровень для вертикальных ребер

• Штраф за переход с основного уровня на

верхний или нижний (с шагом) (-r- s)

• Штраф за проход по верхнему или нижнему

уровню (-s)

Page 25: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Алгоритм 3-х уровнего подхода

si,j =

max

si,j =

max

si,j =

max

s i-1,j - σ

s i-1,j –(ρ+σ)

s i,j-1 - σ

s i,j-1 –(ρ+σ)

si-1,j-1 + δ (vi, wj)

s i,j

s i,j

Продолжит гэп в w (делеция)

Начать гэп в w (делеция): с

середины

Продолжить гэп в v (вставка)

Начать гэп в v (вставка): с середины

Совпадение или несовпадение

Закончить делецию: сверху

Закончить вставку: снизу

Page 26: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Афинные гэпы

В выравнивании вместо штрафа за гэп -d использоватьштраф -p-ld (p и d задаются вами) для гэпа длины l.

Page 27: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

начало

w1,1

w2,1

w1,2

wi,j

wi,j+1

wi+1,j

wi+1,j+1

wn-1,m

Время работы – O(n∙m)wn,m-1 wn,m

конецПамять – O(n∙m)

Page 28: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Можно ограничить область

Page 29: Алгоритмы в биоинформатике, осень 2016: Выравнивание последовательностей. Продолжение

Алгоритм Миллера-Маерс

0. Идем построчно, запоминаем тольковеса.

1. Проходим таблицу вверх и вниз досредней строчки вычисляямаксимальные веса для ячеек Sdown(xij)и Sup(xij).

2. Находим MAX(Sdown(xij) + Sup(xij)) повсем j – т.е. точку, через которуюпроходит максимальный путь.

3. Разбиваем таблицу на 2 подтаблицы,повторяем процедуру.

i

j

4. Время работы алгоритма

T=C*n2+C*n2/2+C*n2/4+…=C*n2(1+1/2+1/4+1/8+…)=2C*n2


Recommended