der bauplan des menschen effiziente algorithmen zur berechnung von sequenz-alignments zentrum für...

35
Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik er Universität des Saarlande WS 2001/2002

Upload: hludowig-westerfeld

Post on 05-Apr-2015

106 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Der Bauplan des Menschen

Effiziente Algorithmenzur Berechnung

von Sequenz-Alignments

Zentrum für Bioinformatikder Universität des Saarlandes

WS 2001/2002

Page 2: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Sequenz-Alignments: Motivation

• Sequenz-Alignments ist eines der ältesten Forschungsgebiete der Bioinformatik.

„ ... the wholy grail of Bioinformatics... „ (Dan Gusfield)

• Sequenz-Alignments werden in vielen Bereichen der Bioinformatik verwendet:

5. Berechnung von „Evolutionary Trees“

3. Bestimmung der Funktion von Genen und Proteinen 4. Bestimmung der Struktur von Proteinen

1. Sequenzierung2. Suche nach Genen

6. Design von Proteinen

Page 3: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Sequenz-Alignments: Motivation: Protein-Design

• Mutiertes Gen „verursacht“ Krankheit.• Mögliche Behandlung: Gentherapie d.h. das Einschleusen einer „normalen“ Kopie des Gens in den Zellkern.

ZelleZellkern

mutiertes Gen

Kopien des GensNanopartikelLektine

Lektine docken an gewissen Zucker-molekülen (GlcNAG) auf der Zellober-fläche an.

Dieser Vorgang ermöglicht die Auf-nahme der Partikel in die Zelle.

Page 4: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Sequenz-Alignments: Motivation: Protein-Design

VAIAEQCGRQAGGKLCPNNLCCSQWGWCGSTDEYCSPDHNCQSNCK Sequenz

Struktur

TAHAQRCGEQGSNMECPNNLCCSQYGYCGMGGDYCGKGCQNGACYT ATNAQTCGKQNDGMICPHNLCCSQFGYCGLGRDYCGTGCQSGACCS LVSAQRCGSQGGGGTCPALWCCSIWGWCGDSEPYCGRTCENKCWS TAQAQRCGEQGSNMECPNNLCCSQYGYCGMGGDYCGKGCQNGACWTTAQAQRCGEQGSNMECPNNLCCSQYGYCGMGGDYCGKGCQNGACWTQRCGEQGSGMECPNNLCCSQYGYCGMGGDYCGKGCQNGACWTTVKSQNCGCAPNLCCSQFGYCGSTDAYCGTGCRSGPCRSSAEQCGRQAGDALCPGGLCCSSYGWCGTTVDYCGIGCQSQCDGPAAAQNCGCQPNFCCSKFGYCGTTDAYCGDGCQSGPCRSPAAAQNCGCQPNVCCSKFGYCGTTDEYCGDGCQSGPCRSSAEQCGQQAGDALCPGGLCCSSYGWCGTTADYCGDGCQSQCDGSAEQCGRQAGDALCPGGLCCSFYGWCGTTVDYCGDGCQSQCDGEQCGRQAGGKLCPNNLCCSQYGWCGSSDDYCSPSKNCQSNCK

Design von Lektinen mit optimalen Bindungseigenschaften für GlcNAG.

Hevein ist das kleinste Lektin (Ausgangssubstanz).

Datenbanksuche mit Hevein liefert eine Reihe weiterer Lektine.

Sequenz-Alignments der gefundenen Lektine zeigt Gemeinsamkeiten und Unterschiede der Sequenzen (in den Spalten des Alignments).

Funktion

Hevein

Page 5: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Sequenz-Alignments: Motivation: Protein-Design

Sequenz

Struktur

Design von Lektinen mit optimalen Bindungseigenschaften für GlcNAG.

Hevein ist das kleinste Lektin (Ausgangssubstanz).

Datenbanksuche mit Hevein liefert eine Reihe weiterer Lektine.

Sequenz-Alignments der gefundenen Lektine zeigt Gemeinsamkeiten und Unterschiede der Sequenzen (in den Spalten des Alignments).

Funktion

HeveinVAIAEQCGRQAGGKLC-PNNLCCSQWGWCGSTDEYCSPDHNCQSN-CK-TAHAQRCGEQGSNMEC-PNNLCCSQYGYCGMGGDYCGKG--CQNGACYT ATNAQTCGKQNDGMIC-PHNLCCSQFGYCGLGRDYCGTG--CQSGACCS LVSAQRCGSQGGGGTC-PALWCCSIWGWCGDSEPYCGRT--CENK-CWS TAQAQRCGEQGSNMEC-PNNLCCSQYGYCGMGGDYCGKG--CQNGACWTTAQAQRCGEQGSNMEC-PNNLCCSQYGYCGMGGDYCGKG--CQNGACWT----QRCGEQGSGMEC-PNNLCCSQYGYCGMGGDYCGKG--CQNGACWTTVKSQNCG-------CAP-NLCCSQFGYCGSTDAYCGTG--CRSGPCRSSAE--QCGRQAGDALC-PGGLCCSSYGWCGTTVDYCGIG--CQSQ-CDGPAAAQNCG-------CQP-NFCCSKFGYCGTTDAYCGDG--CQSGPCRSPAAAQNCG-------CQP-NVCCSKFGYCGTTDEYCGDG--CQSGPCRSSAE--QCGQQAGDALC-PGGLCCSSYGWCGTTADYCGDG--CQSQ-CDGSAE--QCGRQAGDALC-PGGLCCSFYGWCGTTVDYCGDG--CQSQ-CDG----EQCGRQAGGKLC-PNNLCCSQYGWCGSSDDYCSPSKNCQSN-CK-

Beispiel: Die gelben Balken zeigen die acht Cysteine, die vier Schwefelbrücken bilden [ein essentielles Strukturelement aller hier gezeigten Lektine].

Page 6: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Sequenz-Alignments: Definition

‘={A,C,G,U,-}

AUGAACG--CAU-AUCGGCC

={A,C,G,U}

s1 AUGAACGCs2 AUAUCGGCC

Gegeben k Sequenzen S={ s1 , ... , sk } über einem Alphabet .Ein Sequenz-Alignment von S ist eine Menge von k Sequenzen AS = {as1 , ... , ask } über dem erweiterten Alphabet ‘ = {-} mit den folgenden Eigenschaften:

(1) Alle Sequenzen in AS besitzen die gleiche Länge.

(2) Entfernt man die Lückensymbole {-} aus asi, so erhält man die Sequenz si (für alle i).

Definition:

Page 7: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Sequenz-Alignments: Definition

‘={A,C,G,U,-}

AUGAACG--CAU-AUCGGCC

={A,C,G,U}

s1 AUGAACGCs2 AUAUCGGCC

Biologische Interpretation von Alignments:

Annahme: Die Ähnlichkeit von DNA-Sequenzen kann als ein Hinweis auf eine gemeinsame evolutionäre Herkunft (gemeinsamen Vorfahren) gedeutet werden. Im Laufe der Evolution kam es zu Mutationen, die die Unterschiede im Erbgut der verschiedenen Spezies hervorgerufen haben.

Deletion Insertion

Indels

Substitution

Fragen: Wieviele Mutationen sind erforderlich, um eine Sequenz in eine andere Sequenz zu überführen? Wie wahrscheinlich sind diese Mutationen? Wie oft kommen solche Mutationen (Transformationen) in einem be- stimmten Zeitraum im Durchschnitt vor?

Page 8: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Bewertung der Güte von Alignments

• Für die Bewertung von Alignments stehen viele unterschiedliche Funktionen zur Verfügung.

• Die meisten Bewertungsfunktionen kann man zwei Klassen zuordnen:

1. Abstandsfunktionen

2. Ähnlichkeitsfunktionen

• Die einfachen Bewertungsfunktionen bewerten jede Spalte eines Alignments.

• Die Summe der Spaltenwerte ergibt dann die Gesamtbewertung eines Alignments.

• Beispiel mit einer einfachen Abstandsfunktion:

A C G U -

A 0 1 1 1 1

C 1 0 1 1 1

G 1 1 0 1 1

U 1 1 1 0 1

- 1 1 1 1 0

S AUGAACGCP AUAUCGGCC

AS AUGAACG--CAP AU-AUCGGCC

0 0 1 0 1 0 0 1 1 0

= 4

),(),( jSpaltenj

j apasdAPASd

Page 9: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Bewertung der Güte von Alignments

A C G U -

A 0 1 1 1 1

C 1 0 1 1 1

G 1 1 0 1 1

U 1 1 1 0 1

- 1 1 1 1 0

S AUGAACGCP AUAUCGGCC

AS AUGAACG--CAP AU-AUCGGCC

0 0 1 0 1 0 0 1 1 0

= 4

),(min),(min],[ ],[],[ jSpaltenj

jAPASAPASopt apasdAPASdPSA

Gegeben zwei Sequenzen S und P über einem Alphabet und eine Bewertungsfunktion d.

Berechne ein bezüglich d optimales paarweises Alignment Aopt[S,P] von S und P.

Paarweises Sequenz-Alignment-Problem:

),(),()(

jSpaltenj

j apasdAPASd

• Beispiel mit einer einfachen Abstandsfunktion:

Page 10: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Bewertung der Güte von Alignments

A C G U -

A 1 -1 -1 -1 -1

C -1 1 -1 -1 -1

G -1 -1 1 -1 -1

U -1 -1 -1 1 -1

- -1 -1 -1 -1 1

S AUGAACGCP AUAUCGGCC

AS AUGAACG--CAP AU-AUCGGCC

1 1-1 1 -11 1 -1-11

= 6

),(max),(max],[ ],[],[ jSpaltenj

jAPASAPASopt apasdAPASdPSA

Gegeben zwei Sequenzen S und P über einem Alphabet und eine Bewertungsfunktion d.

Berechne ein bezüglich d optimales paarweises Alignment Aopt[S,P] von S und P.

Paarweises Sequenz-Alignment-Problem:

),(),( jSpaltenj

j apasdAPASd

• Beispiel mit einer einfachen Ähnlichkeitsfunktion:

Page 11: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Dynamische Programmierung

A C G U -

A 0 1 1 1 1

C 1 0 1 1 1

G 1 1 0 1 1

U 1 1 1 0 1

- 1 1 1 1 0

S AUGAACGCP AUAUCGGCC

Gegeben zwei Sequenzen S und P über einem Alphabet und eine Bewertungsfunktion d.

Berechne ein bezüglich d optimales paarweises Alignment Aopt[S,P] von S und P, wobei S die Länge n und P die Länge m hat..

• Beispiel für Distanzfunktion d

Si = Präfix der Länge i von S

Pj = Präfix der Länge j von Pd(Si ,Pj ) = Wert des opt. Alignments von Si und Pj

mit Wert d(Sn,Pm)

d(Si ,Pj ) = min

d(si,pj)

CC

d(Si-1 ,Pj-1 )

d(Si-1 ,Pj-1 ) +

d(Si-1 ,Pj )

d(si,-)d(Si-1 ,Pj ) +

C-

-C

d(Si ,Pj-1 )

d(-,pj)d(Si ,Pj-1 ) +

Idee: Betrachte die Möglichkeiten für die letzte Spalte und leite hieraus eine Rekursionformel ab.

i

j

Page 12: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Dynamische Programmierung

0

A C G U -

A 0 1 1 1 1

C 1 0 1 1 1

G 1 1 0 1 1

U 1 1 1 0 1

- 1 1 1 1 0

Gegeben zwei Sequenzen S und P über einem Alphabet und eine Bewertungsfunktion d.

Berechne ein bezüglich d optimales paarweises Alignment Aopt[S,P] von S und P, wobei S die Länge n und P die Länge m hat..

mit Wert d(Sn,Pm)

d(Si ,Pj ) = min

d(si,pj)d(Si-1 ,Pj-1 ) +

d(si,-)d(Si-1 ,Pj ) +

d(-,pj)d(Si ,Pj-1 ) +

Fülle Matrix Aji mit aji = d(Si ,Pj ) für alle i{0, ... ,n} für alle j{0, ... ,m}

d(Si ,P0 ) = i

d(S0 ,Pj ) = j

0 1 2 3 4 5 6 7 8

1 1 2 3 4 5 6 7

CC

-C

GG

AUGAAC-AU-AUCG

0

2 1 1 1 2 3 4 5

3 2 2 2 2 3 4 5

4 3 3 3 3 2 3 4

5 4 3 4 4 3 2 3 6 5 4 4 5 4 3 3

7 6 5 5 5 5 4 3

8 7 6 6 6 5 5 4

2

3

4

5

67

8

9

1 0 1 2 3 4 5 6

A U G A A C G C

S0 S1 S2 S3 S4 S5 S6 S7 S8

P0

P1 A

P2 U

P3 A

P4 U

P5 C

P6 G

P7 G

P8 C

P9 C

Page 13: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Dynamische Programmierung

CC

-C

GG

AUGAAC-AU-AUCG

0

A U G A A C G C

S0 S1 S2 S3 S4 S5 S6 S7 S8

P0

P1 A

P2 U

P3 A

P4 U

P5 C

P6 G

P7 G

P8 C

P9 C

2 1 1 1 2 3 4 5

3 2 2 2 2 3 4 5

4 3 3 3 3 2 3 4

5 4 3 4 4 3 2 3 6 5 4 4 5 4 3 3

7 6 5 5 5 5 4 3

8 7 6 6 6 5 5 4

1 2 3 4 5 6 701 0 1 2 3 4 5 6

0 1 2 3 4 5 6 7 8

1

2

3

4

5

67

8

9

Gegeben zwei Sequenzen S und P über einem Alphabet und eine Bewertungsfunktion d.

Berechne ein bezüglich d optimales paarweises Alignment Aopt[S,P] von S und P, wobei S die Länge n und P die Länge m hat..

mit Wert d(Sn,Pm)

Fülle Matrix Aji mit aji = d(Si ,Pj ) für alle i{0, ... ,n} für alle j{0, ... ,m}

(1) Intitialisierung (der Ränder der Matrix).

(2) Berechnung der Matrixeinträge mittels Rekursion.

(3) Backtracking: Berechne ein optimales Alignment.

d(Si ,Pj ) = min

d(si,pj)d(Si-1 ,Pj-1 ) +

d(si,-)d(Si-1 ,Pj ) +

d(-,pj)d(Si ,Pj-1 ) +

d(Si ,P0 ) = i

d(S0 ,Pj ) = j

Laufzeit: O(mn). Speicherplatzbedarf: O(mn)

Page 14: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Globales Alignment

Zunächst hat sich die Bioinformatik mit globalen Alignments beschäftigt,

d.h., man hat versucht, die Sequenzen vollständig miteinander zu vergleichen.

Dies macht nur dann Sinn, wenn

(a) die Sequenzen sehr ähnlich und

(b) fast gleich lang sind.

Sind die Sequenzen jedoch unterschiedlich lang, so sucht man nach lokalen Alignments.

(a) Falls zum Beispiel eine kleine Sequenz in einer großen Sequenz versteckt ist (eine ähnliche oder identische Teil- sequenz in der Großen versteckt ist).

Beispiel: Suche Verwandte eines Genes in einem langen, neu sequenzierten DNA-Molekül.

(b) Falls zwei Sequenzen nur an den Enden „überlappen“.

Beispiel: Fragmente (reads) bei der Sequenzierung.

(c) Falls eine Sequenz in Teilstücken in der anderen auftaucht. Beispiel: Suche mit EST oder Protein nach Exons in DNA.

Page 15: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Globales Alignment

Bei lokalen Alignments werden die überstehenden Endstücke und die leeren Mittelstückenicht bewertet:

d(Si ,P0 ) = 0

d(S0 ,Pj ) = 0

Als Bewertungsfunktionen werden in der Regel Ähnlichkeitsfunktionen verwendet.

d(Si ,Pj ) = max

d(si,pj)d(Si-1 ,Pj-1 ) +

d(si,-)d(Si-1 ,Pj ) +

d(-,pj)d(Si ,Pj-1 ) +

0

A C G U -

A 1 -1 -1 -1 -1

C -1 1 -1 -1 -1

G -1 -1 1 -1 -1

U -1 -1 -1 1 -1

- -1 -1 -1 -1 1

Page 16: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Globales Alignment

Bei lokalen Alignments werden die überstehenden Endstücke und die leeren Mittelstückenicht bewertet:

d(Si ,P0 ) = 0

d(S0 ,Pj ) = 0

Als Bewertungsfunktionen werden in der Regel Ähnlichkeitsfunktionen verwendet.

d(Si ,Pj ) = max

d(si,pj)d(Si-1 ,Pj-1 ) +

d(si,-)d(Si-1 ,Pj ) +

d(-,pj)d(Si ,Pj-1 ) +

0

A C G U -

A 1 -1 -1 -1 -1

C -1 1 -1 -1 -1

G -1 -1 1 -1 -1

U -1 -1 -1 1 -1

- -1 -1 -1 -1 1

A U G A A C C C

S0 S1 S2 S3 S4 S5 S6 S7 S8

P0 0 0 0 0 0 0 0 0 0

P1 G 0 0 0 1 0 0 0 0 0

P2 A 0 1 0 0 2 1 0 0 0

P3 C 0 0 0 0 1 1 2 1 0

P4 C 0 0 0 0 0 0 2 3 2Man beachte, dass bei der Berechnung von lokalen Alignments der beste Wert irgendwo in der Matrix erscheinen kann (modifiziertes Back-Tracing).

Page 17: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Lücken (Gaps) und Gap-Kostenfunktionen

Ein Lücke (Gap) ist eine maximale Aufeinanderfolge von (mindestens einem) Lückensymbolen (-):

ATACGCGGTTGATATA---GGT-GCT

Lücken

Die Bewertungsfunktionen können um einen additiven Term für Lücken erweitert werden.

S AUGAACGCP AUAUCGGCC

AS AUGAACG--CAP AU-AUCGGCC

||*),(),( gwwapasdAPASd vLückeng

sjSpaltenj

j

Affine Gap-Kostenfunktion:

Konvexe Gap-Kostenfunktion:

|)log(|*),(),( gwwapasdAPASd vLückeng

sjSpaltenj

j

Page 18: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Dynamische Prog. mit affinen Gap-Kosten

Falls die Bewertungsfunktion eine affine Gap-Kostenfunktion beinhaltet, benötigt man vier Matrizender Größe [n+1,m+1], um ein optimales paarweises Alignment von zwei Sequenzen S und P mit den Längen n und m zu berechnen.

||*),(),( gwwapasdAPASd vLückeng

sjSpaltenj

j

Affine Gap-Kostenfunktion:

d (Si , Pj ) = Wert eines (maximalen) optimalen Alignments der Präfixe Si und Pj

d (Si , Pj ) = max { E(Si , Pj ) , F (Si , Pj ) , H (Si , Pj ) } , wobei

E (Si , Pj ) = Wert des max. Alignments von Si und Pj, das mit der Spalte endet.si

pj

F (Si , Pj ) = Wert des max. Alignment von Si und Pj, das mit der Spalte endet._pj

H (Si , Pj ) = Wert des max. Alignment von Si und Pj, das mit der Spalte endet.si

_

Page 19: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Dynamische Prog. mit affinen Gap-Kosten

Falls die Bewertungsfunktion eine affine Gap-Kostenfunktion beinhaltet, benötigt man vier Matrizender Größe [n+1,m+1], um ein optimales paarweises Alignment von zwei Sequenzen S und P mit den Längen n und m zu berechnen.

||*),(),( gwwapasdAPASd vLückeng

sjSpaltenj

j

Affine Gap-Kostenfunktion:

d (Si , Pj ) = Wert eines (maximalen) optimalen Alignments der Präfixe Si und Pj

d (Si , Pj ) = max { E(Si , Pj ) , F (Si , Pj ) , H (Si , Pj ) } , wobei

E (Si , Pj ) = Wert des max. Alignments von Si und Pj, das mit der Spalte endet.si

pj

F (Si , Pj ) = Wert des max. Alignment von Si und Pj, das mit der Spalte endet._pj

H (Si , Pj ) = Wert des max. Alignment von Si und Pj, das mit der Spalte endet.si

_

d (Si-1 , Pj-1 ) + d(si , p j)

max{ d (Si , Pj-1 ) + ws + wv , F(Si , Pj-1) + wv }

max{ d (Si-1 , Pj ) + ws + wv , H(Si-1 , Pj) + wv }

Der folgende Algorithmus für affine Gap-Kosten hat Laufzeit und Speicherplatzbedarf O(nm).

Page 20: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

mandrill TTTTKGENFTETDVKMMERVVEQMCITQYEKESQAYYQ__RGSSMVLFSSpresbytis_francoisi TTTTKGENFTETDVKMMERVVEQMCITQYEKESQAYYQ--RGSSMVFFSS crab_eating_macaque TTTTKGENFTETDVKMMERVVEQMCITQYEKESQAYYQ--RGSSMVLFSS green_monkey TTTTKGENFTETDVKMMERVVEQMCITQYEKESQAYYQ--RGSSMVLFSSbr._capped_capuchin TTTTKGENFTETDVKMMERVVEQMCITQYERESQAYYQ--RGSSMVLFSS chimpanzee TTTTKGENFTETDVKMMERVVEQMCITQYERESQAYYQ--RGSSMVLFSS orangutan TTTTKGENFTETDVKMMERVVEQMCITQYERESQAYYQ--RGSSMVLFSS gorilla TTTTKGENFTETDVKMMERVVEQMCITQYERESQAYYQ--RGSSMVLFSS human TTTTKGENFTETDVKMMERVVEQMCITQYERESQAYYQ--RGSSMVLFSS bovine TTTTKGENFTETDIKMMERVVEQMCITQYQRESQAYYQ--RGASVILFSS sheep TTTTKGENFTETDIKIMERVVEQMCITQYQRESQAYYQ--RGASVILFSS mule_deer TTTTKGENFTETDIKMMERVVEQMCITQYQRESQAYYQ--RGASVILFSS rat TTTTKGENFTETDVKMMERVVEQMCVTQYQKESQAYYDG-RRSSAVLFSS golden_hamster TTTTKGENFTETDIKIMERVVEQMCTTQYQKESQAYYDG-RRSSAVLFSS mouse TTTTKGENFTETDVKMMERVVEQMCVTQYQKESQAYYDGRRSSSTVLFSS

Das obige multiple Alignment zeigt einen Abschnitt eines multiplen Alignments von PrionenProteinen verschiedener Spezies. Die Prionen gelten als Verursacher von BSE, Scrapie und der Jacob-Kreutzfeld-Erkrankung.

Page 21: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Wir betrachten der Einfachheit halber im folgenden nur den Fall k = 3,d.h., gegeben drei Sequenzen S, P, Q der Längen n, m , l.

Spaltenj

jjjjjjjjSpaltenj

j aqapdaqasdapasdaqapasdAQAPASd ),(),(),(),,(),,(

Multiples Sequenzalignment-Problem:

Gegeben k Sequenzen über einem Alphabet und eine Bewertungsfunktion d.Berechne ein optimales multiples Sequenz-Alignment der k Sequenzen.

Sum-of-Pairs-Problem (SP):

• Die Bewertungsfunktion d sei eine Distanz- oder Ähnlichkeitsfunktion.

A C G U -

A 0 1 1 1 1

C 1 0 1 1 1

G 1 1 0 1 1

U 1 1 1 0 1

- 1 1 1 1 0

• Die Bewertung einer Spalte eines multiplen Alignments [AS,AP,AQ] ist gleich der Summe der Abstände (Ähnlichkeiten) aller Paare von Buchstaben in dieser Spalte.• Die Summe der Spalten liefert die Gesamtbewertung (plus eventuell Gap-Kosten).

Page 22: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Sum-of-Pairs-Problem (SP):

Ein optimales SP-Alignment kann man mittels Dynamischer Programmierung (DP) berechnen.

Die Rekursionsgleichung leitet man aus einer Fallunterscheidung für die letzte Spalte ab (siehe Übung).

Falls alle k Sequenzen die Länge n haben, so ist die Laufzeit und der Speicherplatzbedarf

O(nk). DP funktioniert nur für sehr kleine k (< 10).

Für k > 4 und entsprechende Längen n findet man nur dann ein optimales Alignment, wenn manden Suchraum verkleinern kann (Branch-and-Bound).

Die Berechnung eines optimalen Alignments entspricht der Suche nach einem kürzesten (oderlängsten) Pfad in einem Alignment-Graphen (gerichteter Graph mit Quelle und Senke).

Die Kanten des Graphen entsprechenden möglichen Spalten des Alignments.

Das Gewicht einer Kante ist gleichder Bewertung der zugehörigen Spalte.

Suchraum verkleinern!

Nur den „interessanten“Teilgraphen durchmustern!

Branch-and-Bound!

Page 23: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Sum-of-Pairs-Problem (SP):

Betrachte ein optimales SP-Alignment Aopt[S,P,Q] von S, P und Q.

Sei d(Sn , Pm , Ql ) der Wert des optimalen SP-Alignments.

AATGCGTCTCAA-GCGTATCAA-GCGT-TG

AATGCGTCTCAA-GCGTATC

AA-GCGTATCAA-GCGT-TG

AATGCGTCTCAA-GCGT-TG

AATGCGTCTCAA-GCGTATC

AAGCGTATC AAGCGT-TG

AATGCGTCTCAA-GCGT-TG

Betrachte alle durch das optimale Alignment implizierten paarweisen Alignments.

Die implizierten paarweisen Alignments erhält man, indem man die Spalten ohneInformationen (Doppelminus => Bewertung 0) streicht.Es gilt (d Ähnlichkeitsfunktion):

d(Sn , Pm , Ql ) = d(I(Sn , Pm )) + d(I(Sn , Ql )) + d(I( Pm , Ql ))

d(Sn , Pm ) + d(Sn , Ql ) + d( Pm , Ql )

I(Sn , Pm)

I(Sn , Ql)

I(Pm , Ql)

Page 24: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Sum-of-Pairs-Problem (SP):

Sei d(Si , Pj , Qr ) der Wert des optimalen SP-Alignments für die Präfixe Si , Pj , Qr .

Es gilt (d Ähnlichkeitsfunktion) für beliebige Präfixe S i , Pj , Qr :

d(Si , Pj , Qr ) d(Si , Pj ) + d(Si , Qr ) + d( Pj , Qr)

Bezeichnung: Seien RSi der Suffix [si+1si+2....sn] von S RPj der Suffix [pj+1pj+2....pm] von P RQr der Suffix [qr+1qr+2....ql] von Q

Die Summe der optimalen paarweisen Alignments ist eine obere Schranke OS für den Wert desoptimalen SP-Alignments:

d(Sn , Pm , Ql ) OS = d(Sn , Pm ) + d(Sn , Ql ) + d( Pm , Ql )

Es gilt natürlich auch für alle Suffixe RSi , RPj , RQr :

d(RSi , RPj , RQr ) d(RSi , RPj ) + d(RSi , RQr ) + d( RPj , RQr)

Page 25: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Sei d(Si , Pj , Qr ) der Wert des optimalen SP-Alignments für die Präfixe Si , Pj , Qr .

d(Si , Pj , Qr ) + d(RSi , RPj , RQr ) US

Branch-and-Bound:

Dieser Wert wird im Alignment-Graphen (bzw. der Matrix) in dem zugehörigen Knoten gespeichert.

Wurde dieser Wert gerade berechnet, so kann man die Frage stellen, ob dieser Knoten überhaupt auf dem optimalen Pfad liegen kann, d.h., ob man die Kanten, die von diesem Knoten ausgehen,betrachten muss.

Nehmen wir einmal an, dass wir eine untere Schranke US für den Wert des optimalen SP-Alignments von S, P ,Q kennen.

so kann der (d(Si , Pj , Qr ) ) Knoten nicht auf einem optimalen Pfad liegen.

d(RSi , RPj , RQr ) d(RSi , RPj ) + d(RSi , RQr ) + d( RPj , RQr)Aus folgt:

d(Si , Pj , Qr ) + d(RSi , RPj ) + d(RSi , RQr ) + d( RPj , RQr) US

Ist

so kann der (d(Si , Pj , Qr ) ) Knoten nicht auf einem optimalen Pfad liegen.

Ist

Page 26: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Um die unten angegebene Bedingung zur Reduzierung des Suchraums einsetzen zu können,benötigt man

Branch-and-Bound:

d(Si , Pj , Qr ) + d(RSi , RPj ) + d(RSi , RQr ) + d( RPj , RQr) US

Ist

so kann der (d(Si , Pj , Qr ) ) Knoten nicht auf einem optimalen Pfad liegen.

(1) die Werte aller optimalen paarweisen Alignments d(RSi , RPj ), d(RSi , RQr ), d( RPj , RQr).

[Ordne die Buchstaben von hinten nach vorne und berechne die paarweisen Alignments.]

(2) eine „gute“ untere Schranke US für den Wert des optimalen SP-Alignments.

[Zur Berechnung der unteren Schranke benötigt man gute Heuristiken.]

Page 27: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Eine ganze Reihe von Heuristiken basieren auf der folgenden

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

Idee: Man kombiniere optimale paarweise Alignments zu multiplen Alignments.

Frage (1): Welche paarweisen Alignments lassen sich kombinieren (sind kompatibel)?

Frage (2): Wie kann man paarweise Alignments kombinieren ?

Satz [Feng & Doolitle (1987)]:

Gegeben ein Baum, in dem jeder Knoten eine Sequenz repräsentiert und jede Kante einoptimales paarweises Alignment der beiden Sequenzen repräsentiert, die in den Knotender Kante gespeichert sind. Dann gibt es ein multiples Alignment aller vom Baum reprä-sentierten Sequenzen, das zu den paarweisen Alignments der Kanten kompatibel ist.

Kompatibel bedeutet hier genauer: Für jedes Paar von Sequenzen, das im Baum durcheine Kante repräsentiert wird, ist das vom multiplen Alignment induzierte paarweiseAlignment gleich dem paarweisen Alignment, das durch die Baumkante repräsentiert wird.

Page 28: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

AGCT

AGT ACT

AGGT

AGGCT

AG-TAGCT

A-CTAGCT

AGCTAGGT

AGG-TAGGCT

AAA

-GG

C-C

TTT

AAGGGG

TT

-C

AAAAA

GGGG-

GGC-C

TTT =TT

-C---

AAAAA

GGGG-

GGC-C

TTTTT

-C---

Greedy-Ansatz:

• MA eine (zunächst leere) Alignment-Menge.

Solange E noch nicht leer ist,

• (Si , Sj) seien die Sequenzen der Kante e.

a. Wähle die beste Kante e=(Si , Sj) in E.

• E sei die Kantenmenge.

• ae sei das paarweise Alignment der Kante e.

b. Sind Si und Sj Teil von Alignments in MA,

• beste Kante = optimaler Alignment-Wert.

dann kombiniere mittels ae (ersetze die zweialten durch das neue kombinierte Alignment).

c. Ist Si oder Sj Teil eines Alignments in MA,dann kombiniere die andere Sequenz mit dementspr. Alignment in MA.

d. Ist weder Si noch Sj in MA vertreten, dann füge ae zu MA hinzu.e. Entferne e=(Si , Sj) aus E

AAGG

TT

-C

Page 29: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

AGCT

AGT ACT

AGGT

AGGCT

AG-TAGGT

A-CTAGGT

AGCTAGGT

AGG-TAGGCT

Sterne (Stars) sind eine besondere Form von Bäumenmit einem zentralen Knoten, dem Zentrum, und sonstnur Blätter.

Gegeben einen Stern G. Ein Alignment AG heißt Star-Alignment von G, falls das Alignment zu den

optimalen paarweisen Alignments der Kanten des Sternskompatibel ist.

Pevzner und Gusfield haben Approximationsverfahrenfür das Sum-of-Pairs-Problem mit einer Metrik d alsBewertungsfunktion (Distanzfunktion) entwickelt.

Für drei beliebige Sequenzen S, P, Q gilt:

d(S,Q) d(S,P) + d(P,Q) Dreiecksungleichung.

Wir nehmen o.B.d.A. an, dass dieMetrik d ein Maß für die Zahl derTransformationen (Mutationen) ist,um einen String S in einen String Pzu überführen.

Page 30: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

AGCT

AGT ACT

AGGT

AGGCT

AG-TAGGT

A-CTAGGT

AGCTAGGT

AGG-TAGGCT

Sei G=(E,V) ein ungerichteter Graph mit gewichteten Kanten.

Den kürzesten Pfad zwischen zwei Knoten v und w bezeichnen

wir mit sp(v,w).

Die Kommunikationskosten c(e) einer Kante e definieren wir als

die Zahl der kürzesten Pfade sp(v,w), die diese Kante benutzen.

In einem Stern mit k Knoten hat jede Kante e Kommunikations-kosten c(e) = k-1.

Unterscheiden wir noch zwischen dem kürzesten Pfad vonv nach w und von w nach v, so hat jede Kante e in einem Sternmit k Knoten (k-Star) Kommunikationskosten.

c(e) = 2(k-1).

Seien {v1, ... , vk} die Knoten von G. Sei C(G) = (cij) die k x k Matrix mit

• cij = c(e) falls e=(vi , vj ) eine Kante von G ist, und

• cij = 0 sonst.

Page 31: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

AGCT

AGT ACT

AGGT

AGGCT

AG-TAGGT

A-CTAGGT

AGCTAGGT

AGG-TAGGCT

Für ein vorgegebenes multiples Alignments A von k Sequenzen

definieren wir W(A) = (w(Aij)) als eine k x k Matrix mit den

Werten w(Aij), der vom Alignment A induzierten paarweisen

Alignments Aij.

Sei E = (ij) eine k x k Matrix mit 0 auf der Diagonale und 1 sonst.

Der Sum-of-Pairs-Wert eines Alignments A ist

)(*)(,

ijji

ij AwAW

Den Sum-of-Pairs-Wert SP(G) eines zu einen Baum G=(V,E) kompatiblen Alignments AG können wir wie folgt abschätzen:

))((*)()()(,

ijGji

ijG AwcAWGCGSP ?

Page 32: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

AGCT

AGT ACT

AGGT

AGGCT

AG-TAGGT

A-CTAGGT

AGCTAGGT

AGG-TAGGCT

Den Sum-of-Pairs-Wert SP(G) eines zu einen Baum G=(V,E) kompatiblen Alignments AG können wir wie folgt abschätzen:

))((*)()()(,

ijGji

ijG AwcAWGCGSP ?

AGG-TAGGCTAGC-TAG--TA-C-T

Für jedes Alignment AG , das zu einem Baum G kompatibel ist,und für jedes durch AG induzierte paarweise Alignment (AG)ij gilt:

),(),(),(),(

))(()())((jibajiba vvspvve

abGvvspvve

ijG AwedAw

AGG-TAGGCTAGC-TAG--TA-C-T

3212 Beispiel (siehe Abbildung auf der rechten Seite):

Betrachten wir alle paarweisen Alignments (AG)ij und summieren wir jeweils die Werte links und rechts in der obigen Ungleichung, so erhalten wir die unten ange-gebene Formel:

A C G U -

A 0 1 1 1 1

C 1 0 1 1 1

G 1 1 0 1 1

U 1 1 1 0 1

- 1 1 1 1 0

Page 33: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Heuristiken zur Berechnung von multiplen Sequenz-Alignments:

))((min||

))()((min AWK

rAWGC

AG

KG

Sei K eine Menge (Kollektion) von k-Stars in einem Graphen mit k Knoten.

K heißt balanciert, wenn es eine ganze Zahl r gibt, so dass

rGCKG

)(

Da C(G) nur für Kanten in G Einträge ungleich 0 hat und da ein zu G kompatibles Alignment AG

optimale paarweise Alignments für die Kanten von G induziert (garantiert), gilt für jedes beliebigeAlignment A:

Lemma: Ist K eine (mit Skalar) r-balancierte Menge von Stars, dann gilt

)()()()( AWGCAWGC G

Page 34: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

))((min||

))()((min AWK

rAWGC

AG

KG

Lemma: Ist K eine (mit Skalar) r balancierte Menge von Stars, dann gilt

Beweis:

))()((||

1))()((min G

KGG

KGAWGC

KAWGC

))()((||

1AWGC

K KG

für jedes Alignment A

))((||

AWK

r

Da diese Ungleichung für jedes beliebige Alignment gilt, gilt sie natürlich auch für das optimale Alignment

))((min AWA

Page 35: Der Bauplan des Menschen Effiziente Algorithmen zur Berechnung von Sequenz-Alignments Zentrum für Bioinformatik der Universität des Saarlandes WS 2001/2002

Multiple Sequenz-Alignments

Der Star-Alignment-Algorithmus:

• Konstruiere eine balancierte Menge K von k-Stars.

• Berechne für jeden k-Star GK ein Star-Alignment AG.

• Bestimme den k-Star GBestK mit minimalem Wert (C(G) o W(AG)).

• Gib AG zurück.Best

Satz (Gusfield [1993])

Gegeben eine r-balancierte Menge K von k-Stars. Der obige Algorithmus lieferteine Approximation des optimalen multiples Alignment mit einem garantiertenApproximationsfaktor von (2-(2/k)).

Beweis:

)1(

)1)(1(2||

kk

kkKr kK

r 22

||

Die obige Aussage folgt jetzt aus dem vorhergehenden Lemma.