Przewidywanie struktur RNA i białek

Przewidywanie de novo

  • Polega na predykcji struktury pełnoatomowej tylko na podstawie sekwencji
  • Wykorzystuje wiedzę z dziedziny biofizyki do modelowania procesów zwijania się białek/RNA
  • Jest to metoda bardzo czasochłonna, nadająca się tylko do niewielkich struktur
  • Przewidywanie de novo wciąż stanowi wielkie wyzwanie i generowane modele często odbiegają od znanych struktur referencyjnych
  1. Wykorzystaj PEP-FOLD w trybie "Demonstration mode" (należy wybrać z menu rozwijanego "Yes" w tym panelu i kliknąć "Run")
    • Kiedy serwer zakończy obliczenia, ściągnij modele w formacie PDB (ikonka dyskietki w sekcjach od Model 1 do Model 5)
  2. Aby przewidzieć strukturę RNA, wykorzystaj Rosetta RNA_Denovo dla następującej struktury:
    >strand_A
    GGGGUGGCUCCCCUAACAGCCG
    ((((.[[..))))......]].

Modelowanie homologiczne

  • Opiera się na założeniu, że nieznaną strukturę da się przewidzieć na podstawie: (1) jej sekwencji oraz (2) innej, znanej struktury - tzw. szablonu (template) - o której wiadomo, że jest podobna (najczęściej rozumiane jako podobieństwo sekwencji)
  • Jeśli modeluje się struktury nieodbiegające mocno od szablonu to metoda ta jest bardzo skuteczna i szybka
  1. Skopiuj sekwencję aminokwasów w formacie FASTA ze struktury 2ODH
  2. Wykorzystaj SWISS-MODEL do wygenerowania modeli dla tej sekwencji

Podejście hybrydowe

  1. Oprócz dwóch głównych metod opisanych powyżej istnieją też podejścia mieszane
  2. RNAComposer przewiduje strukturę RNA poprzez złożenie jej z odpowiednich bloków strukturalnych (ale bez jednego szablonu)
  3. Wymaga do działania znajomości sekwencji oraz struktury drugorzędowej - użytkownik posiadający tylko sekwencję może zlecić RNAComposerowi by w pierwszym kroku przewidział strukturę drugorzędową
  1. Przy użyciu RNAComposera wygeneruj model dla struktury:
    >strand_A
    GGAACCGGUGCGCAUAACCACCUCAGUGCGAGCAA
    ......(((.{[[....[[)))...].].}.]]..
  2. Ściągnij plik PDB i otwórz go w PyMOL-u
  3. Znajdź w prawym dolnym rogu, na pasku z przyciskami typu stop / play, przycisk S - jego naciśnięcie włącza widok sekwencji
  4. Na widoku sekwencji kliknij w nukleotydy, które łączy dowolna para nawiasów [ oraz ]
  5. Na liście struktur po prawej:
    1. dla all kliknij H (hide) i wybierz everything
    2. dla (sele) kliknij S (show) i wybierz lines
    3. dla (sele) kliknij A (action) i wybierz orient
  6. Powtórz to dla innych nukleotydów, które łączy para nawiasów { i }

Miary i algorytmy porównywania struktur trzeciorzędowych

RMSD

  • Root-mean-square deviation (RMSD) to miara odległości między dwiema strukturami
  • Bazuje na odległościach między odpowiadającymi sobie atomami w przestrzeni (po wcześniejszej superpozycji): {$$ \mathrm{RMSD} = \sqrt{\frac{1}{N} \sum_{i=1}^{N} \delta_i^2} $$}
  • RMSD jest bardzo powszechne przez swoją intuicyjność, natomiast nie jest pozbawione wad:
    • Liczba atomów biorących udział w porównaniu musi być identyczna w obu strukturach
    • Superpozycja (przesunięcie oraz obrót jednej struktury względem drugiej) to tak naprawdę odpowiednie operacje macierzowe na wszystkich współrzędnych atomów → jest to koszt obliczeniowy i wprowadza zawsze pewne zniekształcenie
    • RMSD jest zależne w pewnym stopniu od wielkości porównywanych struktur → ta sama wartość dla niewielkiego fragmentu oraz dla wielkich cząsteczek nie ma takiej samej interpretacji

Porównaj dwie struktury t-RNA przy użyciu RMSD:

  1. Uruchom PyMOL (wersja binarna dla Windows)
  2. Wczytaj struktury o PDBid 1EHZ oraz 1EVV (komenda: fetch PDBid)
  3. Najpierw porównaj wizualnie struktury; na liście struktur kliknij w A i wybierz Zoom
  4. Do wykonania superpozycji oraz wyliczenia RMSD służy komenda pair_fit X, Y gdzie X oraz Y to nazwy obiektów w PyMOL-u. Spróbuj wyznaczyć RMSD dla wczytanych struktur
  5. Liczba atomów jest różna, można poradzić sobie z tym problemem na dwa sposoby:
    1. przez ograniczenie atomów do określonego typu:
      • fosfor (dla RNA): pair_fit X and name P, Y and name P
      • atomy łańcucha głównego (dla białek): pair_fit X and name C+CA+N, Y and name C+CA+N)
    2. przez wykonanie dopasowania (ang. alignmentu): align X, Y

MCQ

  • Struktury można przedstawić w postaci zbioru atomów w przestrzeni, ale także na inne sposoby np. przez zebranie wartości kątów między odpowiednimi atomami
  • Mean of circular quantities (MCQ) to miara odległości w oparciu o różnice w przestrzeni kątów torsyjnych: {$$ \mathrm{MCQ} = \arctan \left( \frac{1}{N} \sum_{i=1}^{N} \sin \angle_i, \frac{1}{N} \sum_{i=1}^{N} \cos \angle_i \right) $$}
  • Względem RMSD w szczególności zwalnia to z obowiązku wcześniejszej superpozycji struktur → wartości kątów nie zależą od wzajemnego ułożenia struktur w przestrzeni

Porównaj te same cząsteczki co w poprzednim zadaniu przy użyciu MCQ:

  1. Uruchom MCQ4Structures
  2. Wybierz z menu "File" opcję "View structure manager"
  3. Podaj 1EHZ jako PDB id i kliknij "Download from PDB"
  4. Tak samo ściągnij strukturę 1EVV
  5. Wybierz z menu "Distance measure" opcję "Local distances (pair)"
  6. W menu "Distance measure / Select structures to compare" wskaż w lewym panelu 1EHZ łańcuch A i w prawym panelu 1EVV łańcuch A.
  7. Pokaże się okienko z możliwością wyboru kątów torsyjnych zdefiniowanych dla RNA lub białek; na teraz odznacz przyciskiem "Clear" kąty zdefiniowane dla białek, a zostaw domyślnie zaznaczoną wartość MCQ dla RNA.
  8. Pojawi się tabela ze średnią różnicą kątową (MCQ) dla każdej z odpowiadających sobie reszt dla obu RNA
  9. Zobacz pozostałe zakładki z wizualizacjami wyników

INF

  • RMSDs capture the general 3D shape of an RNA, but give little information about its base-pairing and base-stacking patterns, local deviations of the structure, intradomain deformation, or interdomain deviations. Most importantly, RMSDs spread errors over the whole molecule to obtain the best global superimposition so that it is very difficult to localize the origins of the modeling defects
  • Interaction network fidelity (INF) to miara spójności sieci interakcji wewnątrzcząsteczkowych
  • Przez interakcję rozumiane jest: kanoniczne parowanie Watsona-Cricka, przestrzenne oddziaływania (pseudowęzły), oraz stacking
  • Jak zmierzyć tę spójność?
    • Zakładamy, że jedną ze struktur możemy wskazać za wzorcową, referencyjną - oznaczmy ją jako {$ r $}. Druga struktura to model, czyli {$ m $}
    • Niech {$ S_r $} oznacza zbiór interakcji cząsteczki {$ r $} (analogicznie dla {$ m $})
    • Interakcje występujące w obu zbiorach to True Positives: {$$ TP = S_r \cap S_m $$}
    • Te występujące tylko w modelu to False Positives: {$$ FP = S_m \setminus S_r $$}
    • Te występujące tylko w str. referencyjnej to False Negatives: {$$ FN = S_r \setminus S_m $$}
    • Miara INF zdefiniowana jest wówczas następująco: {$$ \begin{eqnarray} PPV & = & \frac{|TP|}{|TP| + |FP|} \\ STY & = & \frac{|TP|}{|TP| + |FN|} \\ INF & = & \sqrt{PPV \cdot STY} \end{eqnarray} $$}
  • Miara INF przyjmuje wartość z przedziału od 0 (brak jakiekogolwiek podobieństwa) do 1 (wszystkie interakcje wewnątrzcząsteczkowe są identyczne)

Przykład policzenia miary INF

  • Plik wejściowy 1: Attach:target.txt
  • Plik wejściowy 2: Attach:model.txt
  • {$ S_r = $} {7-22, 8-21, 9-20, 11-30, 12-33, 13-32, 14-31, 18-28, 19-26}
  • {$ S_m = $} {6-23, 7-22, 8-21, 9-20, 11-30, 12-33, 13-32, 18-28, 19-26}
  • {$ TP = S_r \cap S_m $} = {7-22, 8-21, 9-20, 11-30, 12-33, 13-32, 18-28, 19-26}
  • {$ FP = S_m \setminus S_r = $} {6-23}
  • {$ FN = S_r \setminus S_m = $} {14-31}

{$$ \begin{eqnarray} PPV & = & \frac{|TP|}{|TP| + |FP|} = \frac{8}{9} \approx 0.89 \\ STY & = & \frac{|TP|}{|TP| + |FN|} = \frac{8}{9} \approx 0.89 \\ INF & = & \sqrt{PPV \cdot STY} \approx 0.89 \end{eqnarray} $$}

Napisz program wyznaczający wartość miary INF. Aby zbudować zbiory {$ S_r $} oraz {$ S_m $} wykorzystaj dane w formacie BPSEQ generowane przez serwer RNApdbee. Powstały program powinien otrzymać dwa argumenty w linii poleceń: ścieżkę do pliku BPSEQ dla struktury referencyjnej oraz ścieżkę do pliku BPSEQ dla modelu. Program ma za zadanie wypisać jedną linię z wartością INF.

Weryfikacja Dla przykładowych danych powyżej zapisanych jako target.bpseq (struktura referencyjna) i model.bpseq (model):

$ ./program target.bpseq model.bpseq
0.8888888888888888

Uwagi:

  • wystarczy, żeby dokładność wyniku była do części setnych (tzn. 0.92),
  • parę zdefiniujmy samymi indeksami z pliku BPSEQ (tzn. 1 G 27 ... 27 C 1 to po prostu para 1-27 niezależnie czy to G-C czy A-U.

Proszę o przygotowanie raportu z następujących zadań:

  1. Wykorzystaj swoją implementację INF, a także miary RMSD i MCQ (wykres) żeby porównać:
    • Model z RNAComposer oraz 1DDY (tylko łańcuch A, w PyMOL-u komenda: align 1DDY and chain A, strand_A przy założeniu, że model z RNAComposera zapisany jest w pliku strand_A.pdb)
    • Model z RNA_Denovo oraz 2G1W
  2. Dokonaj analizy porównawczej z wykorzystaniem narzędzia MCQ4Structures (Global MCQ oraz Global RMSD):
    • Modeli z PEP-FOLD oraz 1JBL
    • Modeli ze SWISS-MODEL oraz 2ODH
Czy modele są bardziej podobne do siebie wzajemnie czy do struktury referencyjnej? Czy odpowiedź na to pytanie zależy od metody przewidywania? A może od metody porównywania?