• Keine Ergebnisse gefunden

” Algorithmen der Bioinformatik I“

N/A
N/A
Protected

Academic year: 2022

Aktie "” Algorithmen der Bioinformatik I“"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Sommersemester 2004 Abgabe am 30.06.2004 Prof. Dr. Stefan Posch, Dipl.-Inf. B. M¨oller, Dr. J. Wensch

12. ¨ Ubung

” Algorithmen der Bioinformatik I“

1. Gegeben seien zwei StringsSundT. Definition:

Eine TeilsequenzXeines StringsSder L¨angemist definiert als ein StringX =Si1Si2· · ·Sik, wobei 1≤i1 < i2 <· · ·< ik ≤mgilt.

Definition:

Eine gemeinsame Teilsequenz zweier StringsS,|S|=m, undT,|T|=n, ist eine TeilsequenzX mit X =Si1Si2· · ·Sik =Tj1Tj2· · ·Tjk mit1≤i1 < i2 <· · ·< ik ≤m,1≤j1 < j2 <· · ·< jk≤n.

Definition:

Die l¨angste gemeinsame Teilsequenz zweier Strings ist die gemeinsame Teilsequenz mit maximaler L¨ange.

Wenn ein AlignmentA zweier StringsS undT gegeben ist, so erh¨alt man eine gemeinsame Teilse- quenz, indem alle Edit-Operationen im Edit-Transskript entfernt werden, die Einf¨ugungen, L¨oschungen oder Ersetzungen umfassen.

a) Gegeben sei nun andersherum eine gemeinsame TeilsequenzX. Aus welchen Alignments der beiden Strings l¨asst sichXableiten?

Von nun an sollen nur noch Alignments betrachtet werden, die keine Mismatches enthalten. Dies l¨asst sich durch geeignete Kosten erreichen, wenn jeder Mismatch ohne Mehraufwand durch Einf¨ugungen und L¨oschungen ersetzt werden kann. Eine solche Kostenfunktion bewertet beispielsweise Matches mit 0, L¨oschungen und Einf¨ugungen mit 1 und Ersetzungen mit Kosten≥2.

b) Gegeben sei also ein Alignment A der L¨ange a ohne Mismatches. Wie lang ist eine daraus ableitbare gemeinsame Teilsequenz X? Geben Sie einen Ausdruck f¨ur die L¨ange von X in Abh¨angigkeit der Anzahl von Einf¨ugungen und L¨oschungen, sowie der L¨angen m und n der beiden Strings an.

c) Zeigen Sie, dass eine l¨angste gemeinsame Teilsequenz aus einem Alignment mit minimaler Anzahl an Einf¨ugungen und L¨oschungen resultiert.

d) Nun soll ein globales optimales Alignment zweier Strings als Ausgangspunkt zur Bestimmung einer l¨angsten gemeinsamen Teilsequenz durch dynamische Programmierung ermittelt werden.

Wie ist der Algorithmus der dynamischen Programmierung zu modifizieren, um sicherzustellen, dass das globale Alignment keine Mismatches enth¨alt.

e) Zeigen Sie, dass die aus einem optimalen Alignment ohne Mismatches resultierende Teilse- quenz eine l¨angste gemeinsame Teilsequenz ist. Erl¨autern Sie weiterhin, wie aus dem optimalen Alignment die l¨angste Teilsequenz extrahiert werden kann.

(2)

2. a) Gegeben sei ein StringS ¨uber einem AlphabetΣ, wobei kein Buchstabe des Alphabets mehr als einmal hintereinander inS auftritt. Eine Teilsequenz von S wird als ”aufsteigend” bezeichnet, wenn die Buchstaben der Sequenz gem¨aß des Alphabets in lexikalischer Ordnung aufsteigend sortiert sind.

Auf Basis des deutschen Alphabets sei beispielsweise der StringT =”Seckendorff” gegeben.

Aufsteigende Teilsequenzen sind dann z.B. ”en” und ”dor”, aber auch ”cdff” und ”knr”.

Geben Sie einen Algorithmus an, der die l¨angste aufsteigende Teilsequenz eines StringsT findet.

b) Welche Modifikationen/Erweiterungen zum Finden der l¨angsten aufsteigenden Teilsequenz sind notwendig, wenn auch Strings zugelassen werden sollen, in denen einzelne Buchstaben mehr- mals hintereinander auftreten?

3. Implementieren Sie ein Verfahren zum globalen Alignment zweier Strings mittels der dynamischen Programmierung unter Ber¨ucksichtigung affiner Gapkosten. Testen Sie ihre Implementierung anhand mehrerer Beispiele und vergleichen Sie die Ergebnisse mit globalen Alignments, die aus der Verwen- dung einer konventionellen Kostenfunktion resultieren (Algorithmus aus Serie 9, Aufg. 3). Wo liegen die Unterschiede?

Referenzen

ÄHNLICHE DOKUMENTE

Beschreiben Sie eine Methode, mit der alle maximalen Paare eines Strings der L¨ange gefunden werden k¨onnen und diskutieren Sie ihre Korrektheit.. Finden Sie nun auch

aus dem Algorithmus zum Finden optimaler globaler Ali- gnments von zwei Strings enth¨alt auch ohne zus¨atzlich abzuspeichernde Links zu den minimie- renden Vorg¨angern

PAM steht f¨ur point accepted mutations oder percent accepted mutations in Anbetracht der Tatsa- che, dass die 1-PAM Matrix gerade die Menge an Evolution wiederspiegelt, die

Insbesondere sollen grundlegende Ein- und Ausgabeoperationen in der Programmiersprache Ihrer Wahl (Java oder C++) realisiert werden sowie ein String-Objekt zur Verf¨ugung

a) Implementieren Sie den Write Only Top Down Algorithmus zur Konstruktion eines Suffixbaums zu einem gegebenen Text T. Die Baumstruktur und der Inhalt des Baums sollen mit einer

Zeigen Sie dazu zuerst, dass f¨ur jedes am Anfang von Phase i + 1 vorhandene Blatt die Regel I in Phase i + 1 genau einmal angewendet wird und dass es keine weiteren Anwendungen

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

Der Suffixbaum liege dabei wie in der Vorlesung angegeben mit einem gemeinsamen Terminationssymbol f¨ur alle Strings sowie mit Listen f¨ur die Markierun- gen in den Bl¨attern vor..