• Keine Ergebnisse gefunden

10. ¨Ubung ”Algorithmen der Bioinformatik I“

N/A
N/A
Protected

Academic year: 2022

Aktie "10. ¨Ubung ”Algorithmen der Bioinformatik I“"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Sommersemester 2005 Abgabe am 17.6.2005 Prof. Dr. Stefan Posch, Dipl.-Inf. B. M¨oller

10. ¨Ubung ”Algorithmen der Bioinformatik I“

1. In der Vorlesung wurde zwei M¨oglichkeiten zur Konstruktion eines generalisierten Suffixbaums f¨ur eine Menge von StringsS1, S2, ..., Sm diskutiert. Im ersten Fall werden alle Strings, getrennt durch unterschiedliche Trennzeichen, aneinandergeh¨angt. F¨ur diesen langen String wird der Suffixbaum aufgebaut, der dann noch leicht nachbearbeitet werden muss. Alternativ kann man die Strings auch sequentiell mit dem Ukkonen-Algorithmus in einen Suffixbaum integrieren. Dazu wird zuerst f¨ur den StringS1, versehen mit einem Endezeichen, der Suffixbaum konstruiert. Zur Integration vonS2, versehen mit dem gleichen Endezeichen, wird nun wiederum der Ukkonen-Algorithmus benutzt. Der Algorithmus wird aber sofort mit Phasei+ 1gestartet, wobeiidie L¨ange des l¨angsten Pr¨afixes von S2 ist, der, von der Wurzel des Suffixbaums ausgehend, im Suffixbaum vonS1 enthalten ist. F¨ur die StringsS3, ..., Sm erfolgt die Integration analog. Zeigen Sie auf, dass das Vorgehen korrekt ist.

2. Diese Aufgabe besch¨aftigt sich mit dem Sequenzenalignment und Edit-Transkripten f¨ur zwei Strings S1undS2. Zeigen Sie, dass jedes Alignment vonS1 undS2 durch genau ein Edit-Transkript erzeugt werden kann.

3. Implementieren Sie einen Algorithmus zum Bestimmen der Edit-Distanz zweier StringsS1, S2 bei vorgegebenen Kosten von 1 f¨ur die Operationen Replace, Delete und Insert nach folgender naiver Methode:

• Anstelle von Inserts und Deletes in einem String werden in beiden Strings Deletes, aber keine Inserts zugelassen.

• F¨ur den StringSi (i= 1,2) wird die MengeMi der durch Deletes ableitbaren Strings generiert.

Genauer:

Mi ={S :S[j] =Si[kj]f¨ur1≤j ≤lmit1≤k1 < k2 <· · ·< kl ≤ |Si|}

• F¨ur jedes Paar (P1, P2) ∈ M1 ×M2 mit|P1| = |P2|werden die Kosten f¨ur die ¨Uberf¨uhrung vonP1inP2durch Replace bestimmt. Die Kosten ergeben sich dann daraus durch Addition der Kosten f¨ur die Deletes.

• Das (bzw. ein) Paar mit minimalen Kosten wird bestimmt und ausgegeben.

Testen Sie Ihre Implementation an Strings verschiedener L¨ange. Bis zu welchen Gr¨oßen der Strings sind die Laufzeiten im Sekundenbereich? Wie ist das asymptotische Laufzeitverhalten des Algorith- mus?

Referenzen

ÄHNLICHE DOKUMENTE

Ziel dieses ¨ Ubungsblattes soll es sein, eine funktionst¨uchtige Programmierumgebung zur Verf¨ugung zu haben, die als Ausgangspunkt zur L¨osung der Programmieraufgaben auf sp¨ateren

Der Suffixbaum liege dabei wie in der Vorlesung angegeben mit einem gemeinsamen Termina- tionssymbol f¨ur alle Strings sowie mit Listen f¨ur die Markierungen in den Bl¨attern

Geben Sie einen effizienten Algorithmus an, der alle optimalen globalen Alignments der beiden Strings ausgibt, dabei nicht auf eventuell zus¨atzlich gespeicherte Links zur¨uckgreift

Erweitern Sie Ihre Implementierung des naiven Exact-Matching Algorithmus aus der ersten ¨ Ubung um die bad character rule kombiniert mit Rechts-Links-Vergleichen. Uberpr¨ufen Sie

Im Folgenden sollen die Laufzeiten des naiven Algorithmus ( ¨ Ubung 1), des Z- Algorithmus ( ¨ Ubung 2), des naiven Algorithmus mit bad character rule ( ¨ Ubung 3) und

Tragen Sie die bei der Konstruktion des Suffixbaumes angewandten Regeln (I, IIa, IIb oder III) in eine Tabelle ein, wobei die Zeilen den Pha- sen i + 1 = 1, 2,.. Tragen Sie dabei

Die Kostenmatrix D(i, j) aus dem Algorithmus zum Finden optimaler globaler Align- ments von zwei Strings enth¨alt auch ohne zus¨atzlich abzuspeichernde Links zu den mi-

b) (Zusatzaufgabe) Welche Folgen h¨atte es, wenn man statt der maximalen ¨ Ahnlichkeit minimale Kosten f¨ur das optimale approximative maximale Pair verlangen w¨urde3.