B: Mapowanie restrykcyjne

Transkrypt

B: Mapowanie restrykcyjne
10/26/2016
B:
PROBLEM: MAPOWANIE RESTRYKCYJNE DNA
METODA: ALGORYTM WYCZERPUJĄCY Z
OGRANICZENIAMI
Algorytmika dla bioinformatyki
Prowadzący: Prof. Danuta Makowiec
[email protected]
IFTiA, pok. 353, tel.: 58 523 2466
Enzymy restrykcyjne
Werner Arber
D. Makowiec: B: mapowanie
restrykcyjne DNA
36
Daniel Nathans Hamilton Smith : NOBEL z fizjologii w1978:
„for the discovery of restriction enzymes
and their application to problems of
molecular genetics".
HinD II – pierwszy odkryty enzym restrykcyjny
(1970)
Rozpoznaje i tnie DNA przy napotkaniu
Werner Arber – odkrył enzym restrykcyjny
Daniel Nathans – pionier w zastosowaniu cięcia DNA
do konstrukcji mapy
genetycznej DNA
specyficznej sekwencji nukleotydów:
GTGCAC or
GTTAAC
Hamilton Smith - pokazał , że enzym restrykcyjny tnie
DNA dokładnie w połowie specyficznej
sekwencji
1
10/26/2016
Elektroforeza: pomiar długości DNA
D. Makowiec: B: mapowanie
restrykcyjne DNA
37
D. Makowiec: B: mapowanie
restrykcyjne DNA
38
DNA jest silnie elektroujemne.
Umieszczone w polu elektrycznym
przesuwa się zgodnie z kierunkiem pola.
Jeśli fragment DNA jest dodatkowo
umieszczony w żelu agarowym, to
prędkość przesuwania się tego
fragmentu jest stała i liniowo zależna od
masy czyli długości danego fragmentu.
Trawienie zupełne i częściowe
Słabo objaśnia mapę DNA bo
daje zbyt wiele rozwiązań
Daje kilka rozwiązań
2
10/26/2016
Problem częściowego trawienia
2
39
X  {x1 , x2 ,...., xn }
Niech X to zbiór punktów na prostej :
przy czym
x  x  ....  x
1
D. Makowiec: B: mapowanie
restrykcyjne DNA
n
DX – MULTIZBIOREM zbioru X nazywamy zestaw wszystkich możliwych odległości
pomiędzy dowolnymi punktami zbioru X, czyli :
DX  {| xi  x j |:
xi , x j  X }
Macierz odległości to metoda wyznaczania multizbioru DX dla danego zbioru X
Przykład:
X={0,2,4,7,10}
0
2
4
7
10
0
2
4
7
10
-
2
4
7
10
-
2
3
8
-
3
6
-
3
-
wynik
ΔX={2,2,3,3,3,4, 6,7,8,10}
Zauważ,
• największa wartość na liście wyznacza długość trawionego DNA
• ilość elementów na liście zbudowanej dla zbioru n-elementowego to n(n-1)/2
Problem częściowego trawienia
D. Makowiec: B: mapowanie
restrykcyjne DNA
40
Uwaga:
rozwiązania problemu częściowego trawienia nie są unikalne,
bowiem dwa różne zbiory X i Y mogą dawać identyczne multizbiory : ΔX = ΔY.
Zbiory X i Y nazywamy wówczas homometrycznymi.
Przykład:
X={0,1,3,4,5,7,12,13,15}
Y={0,1,3,8,9,11,12,13,15}
3
10/26/2016
Rozwiązanie „mięśniaka”
D. Makowiec: B: mapowanie
restrykcyjne DNA
41
O( M n )
Jest sens iterować
jedynie po
liczbach z listy L!
O(n 2 n 4 )
Rozwiązanie efektywne problemu częściowego trawienia
Pomysł Stevena Skiena
(1990):
Każdy x* ewentualny
nowy punkt zbioru X
zawsze wyznacza 2 nowe
wartości: x* i M-x*
x*
0
D. Makowiec: B: mapowanie
restrykcyjne DNA
M
M-x*
x*
42
x*
Idea :
konstrukcja X ( powiększanie X ) w oparciu o dany L
L jest aktualizowane ( zmiejszanie L ) w oparciu o dany X
1. Rozpocznij z X={0}
2. Przenieś największy element z L do X
3. Sprawdź czy ten element pasuje z lewej lub z prawej strony
mapowanego odcinka
4. Jeśli pasuje , to usuń z L wszystkie długości, które on tworzy.
5. Powtarzaj od kroku 2 dopóki zbiór L nie jest pusty.
4
10/26/2016
Pomocniczy zbiór Δ (y, X)
D. Makowiec: B: mapowanie
restrykcyjne DNA
43
Dla dowolnego punktu y i zbioru punktów X ={x1, x2, …xn} przez zbiór Δ (y, X)
oznaczamy multizbiór wszystkich odległości pomiędzy punktem y i punktami
zbioru X:
Δ (y, X) ={ |y-x1|, |y-x2|,…, |y-xn|}
Przykład:
Δ (8, { 0, 5,14,19 }) = { 8,3,6,11}
Przeszukiwanie z ograniczeniami
D. Makowiec: B: mapowanie
restrykcyjne DNA
44
Powrót do
wcześniejszej
zawartości listy
5
10/26/2016
Wydajność praktycznego algorytmu częściowego trawienia
D. Makowiec: B: mapowanie
restrykcyjne DNA
45
Przypadek:
Jedna z dwóch alternatyw jest
prawdziwa:
T(n)=T(n-1) + O(n) =O(n2)
Złożoność tego algorytmu
jest pseudowielomianowa:
dla większości zestawów
danych wielomianowa,
ale są takie zestawy danych,
że złożoność staje się
wykładnicza
Przypadek najgorszy:
alternatywy (5) i (9) są zawsze prawdziwe: T(n)=2T(n-1)+O(n) = O(2n)
Przykład:
46
Rozwiązać problem częściowego trawienia metoda praktyczną dla poniższego zbioru odległości
L={ 2,3,4,6,7,8,9,11,13,15}
Rozwiązanie:
root
L
R
R
L
sto
p
L
L
R
L
sto
p
R
sto
p
(0,2,8,11,15}
{0,4,7,13,15}
R
sto
p
opis
root
L
LL
LR
LRL
LRR
X
0, 15
0, 13 , 15
0, 11, 13, 15
0, 4, 13, 15
0, 4, 8, 13, 15
0, 4, 7, 13, 15
R
RL
RLL
0, 2, 15
0, 2,11,15
0, 2, 8, 11,15
RLR
RR
0, 2, 7, 11, 15
0, 2, 4, 15
L
2,3,4,6,7,8,9,11,13
3,4,6,7,8,9,11
konflikt bo 2, 11 nie ma w L
3,6,7,8
konflikt bo 8,4 nie ma w L
OK .
-> X={0,4,7,13,15}
3,4,6,7, 8,9,11
3,6,7,8
OK.
-> X={0,2,8,11,15}
konflikt bo 7,2 nie ma w L
konflikt bo 4,2 nie ma w L
6
10/26/2016
Praca domowa
D. Makowiec: B: mapowanie restrykcyjne
DNA
47
Rozwiązać problem częściowego trawienia PartialDigest(L)
korzystając z praktycznego algorytmu Place(L,X) dla poniższego
zbioru odległości
L={ 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 9, 9, 10, 11, 12, 15}
7