next up previous contents
Next: Esercizio 1 Up: Allineamento di sequenze Previous: Distanza tra due sequenze   Indice

Allineamento tra due sequenze

Date due sequenze biologiche $s$ e $t$, e una funzione che ci calcola la loro distanza (compreso il costo del gap), i problemi che vogliamo risolvere sono

Da un punto di vista biologico, durante l'evoluzione possono essere intervenuti vari processi che hanno fatto divergere le due sequenze. Di tutte le possibilità noi terremo in considerazione solo quelle puntiformi (per casi più generali, come repeats, o genome re-arangments, vedere [5],[4], [7], [9] e [11]). In particolare le seguenti:

A questi eventi noi associamo le operazioni corrispondenti

Queste operazioni si possono anche vedere come operazioni che servono per trasformare la prima sequenza nella seconda. Ovviamente vogliamo che la cosa sia simmetrica, e che si possa trasformare la seconda sequenza nella prima utilizzando le operazioni inverse. Siccome queste operazioni agiscono sulla sequenza, sono anche chiamate operazioni di editing. Come esempio consideriamo la Tabella [*], dove si mostra un modo possibile in cui applicando le operazioni di editing M, D, M, M, I, M, M, e M, si possa trasformare ls sequenza $s$ in $t$. Come si può notare applicando le operazioni inverse ( $I \leftarrow D$, $D \leftarrow I$ e $M(a,b) \leftarrow M(b,a)$) si può trasformare la sequenza $t$ in $s$. Per cui possiamo definire:


Tabella: Esempio delle operazioni di "editing"
\begin{table}\begin{verbatim}s : AGCA-GTA
t : A-CACCTA
Edit operation : MDM...
...00-100
Gap cost = 1 : -1--1---
Total cost : 1 11 = 3\end{verbatim}\end{table}


Si può notare che esistono un numero elevatissimo di modi in cui si può trasformare una sequenza in un'altra, utilizzando le operazioni di editing. Possiamo per esempio applicare l'operatore di cancellazione $D$, e cancellare l'intera sequenza $s$, poi applicare l'operatore di inserimento $I$, fino a creare la sequanza $t$, come

       Edit operation : DDDDDDDIIIIIII
                    s : AGCAGTA-------
                    t : -------ACACCTA
       Gap cost = 1   : 11111111111111 = 14 = (len(s)+len(t))
Come si può notare, ad ogni insieme di operazioni corrisponde un costo ed un allineamento corrispondente. Si può inoltre dimostrare che il numero di possibili allineamenti tra due sequenze $s$ e $t$ le cui lunghezze sono circa uguali ad $n$ è maggiore di $e^n$. Per cui dato il numero elevato di possibili allineamenti, il problema che si vuole risolvere è quello di trovare un allineamento ottimo, dove definiamo



Subsections
next up previous contents
Next: Esercizio 1 Up: Allineamento di sequenze Previous: Distanza tra due sequenze   Indice
2004-11-02