Genome Rearrangements

Werbung
Proseminar Algorithmen der Bioinformatik WS 2010/11
Genome Rearrangements
Valentina Klaus
17.01.2011
1. Biologischer Hintergrund
Sequenzvergleiche sind aus der heutigen Forschung kaum mehr wegzudenken. Sie bieten unter
anderem Aufschluss über Verwandtschaftsbeziehungen und auch über die Evolution der einzelnen
Arten. Möchte man nun beispielsweise einen Stammbaum nah verwandter Arten erstellen, ist es
möglich, dass die Unterschiede innerhalb der Sequenz, die die einzelnen Gene kodiert, zu gering
sind, um ein aufschlussreiches Ergebnis zu liefern. Andererseits könnte auch die Untersuchung der
Evolution von Herpesviren problematisch werden. Ihre Genome entwickeln sich so rapide weiter,
dass diese anhand ihrer genkodierenden Sequenzen fast nicht mehr als verwandt erkannt werden
können.
Betrachtet werden das Genom als Gesamtheit der Gene eines Organismus und die Gene als Teilfolge der DNA. Vergleicht man nicht die Gensequenz, sondern die Anordnung der Gene innerhalb
des Genoms zweier Arten, lässt sich durchaus die molekulare Evolution dieser beiden Arten nachweisen. Die Reihenfolge der Gene innerhalb des Genoms wird dabei durch Mutationen auf Genomebene beeinflusst, diese werden Genome Rearrangements genannt.
Genome Rearrangements werden in intrachromosomale und interchromosomale Transformationen untergliedert. Intrachromosomale Transformationen ändern die Anordnung der Gene innerhalb
eines Chromosoms. Hierbei unterscheidet man wiederum zwischen Reversals und Transpositionen. Im Falle einer Transposition, wird die ausgeschnittene Teilfolge von Genen bei gleicher Orientierung an einer anderen Stelle eingefügt. Bei Reversals, die auch als Inversionen bezeichnet werden, wird eine Teilfolge von Genen ausgeschnitten und in umgekehrter Orientierung wieder eingefügt. Interchromosomale Transformationen, wie reziproke Translokationen, vertauschen Teilfolgen zwischen zwei Chromosomen.
Um die Distanz zweier Genome zueinander herauszufinden, muss zuerst die Reihenfolge der Gene
des einen Genoms in die Anordnung der Gene des anderen Genoms durch Genome Rearrangements
umgewandelt werden. Als Distanz wird dann die minimale Anzahl ausgeführter Genome Rearrangements angesehen, da diese die wahrscheinlichste ist.
2. Darstellung als Permutation
Um das Problem zu vereinfachen, orientiert man sich an einem in der Natur vorkommenden Spezialfall. In Genomen von Chloroplasten und mitochondrialen Genomen kommen im Falle von
Genome Rearrangements hauptsächlich Reversals vor. Zudem geht man davon aus, dass in den
untersuchten Genomen jeweils nur ein Chromosom vorliegt und kein Gen doppelt vorkommt. Soll
nun die Abfolge der Gene eines Genoms in die des anderen Genoms umgeformt werden, entspricht
dies dem Problem des Sortierens einer Permutation durch Reversals, da die Zielpermutation die
identische Permutation ist. Ein Reversal einer Teilfolge von Genen ist somit ein Reversal von Permutationen, entspricht also dem Umdrehen einer Teilpermutation.
2
Valentina Klaus
Permutationen sind Veränderungen der Anordnung einer Menge durch Vertauschen ihrer
Elemente. Gerichtete Permutationen sind hierbei Permutationen, deren Elemente jeweils
eine von zwei Richtungen besitzen. Die identische Permutation ist die Permutation, deren
Elemente bereits sortiert sind.
Sei also π = ( π1, … , πn) eine Permutation der Ordnung n. Für 1 ≤ i < j ≤ n ist ein (i, j) Reversal eine Permutation ρ (i, j), sodass gilt:
π · ρ (i, j) = (π1, … , πi-1, πj, πj-1, … , πi+1, πi, πj+1, … , πn).
Dadurch ergeben sich zwei mögliche Problemstellungen, je nachdem ob die Leserichtung der
Gene bekannt ist oder nicht. 2.1 beschreibt die Problemstellung, die sich ergibt, falls die Leserichtung nicht bekannt ist, in 2.2 wird auf die zweite Option eingegangen.
2.1 Sortieren ungerichteter Permutationen
In diesem ersten Fall muss eine gewöhnliche Permutation durch Reversals sortiert werden.
Das Problem ist als MINSR-Problem bekannt.
MINSR-Problem
Gegeben ist eine Permutation π = ( π1, … , πn ) der Ordnung n. Alle Folgen ρ1, … , ρt von
Reversals der Ordnung n sind zulässige Lösungen, sodass die identische Permutation als die
Hintereinanderausführung der Permutationen π und ρ1 bis ρt beschrieben werden kann.Es gilt
also π ρ1 · · · ρt = ( 1, … , n).
Es ergeben sich für jede Lösung ρ1, … , ρt Kosten in Höhe der Anzahl t der Reversals. Da hier
nach der minimalen Anzahl an Reversals gesucht wird, soll t möglichst gering gehalten werden.
Die Suche nach einer effizienteren Lösung bleibt erfolglos. Das MINSR-Problem ist NP –
schwer, das heißt es ist vermutlich nicht möglich, dieses Problem in polynomieller Zeit exakt
zu lösen. Ein nicht ganz so exaktes dafür aber in polynomieller Zeit errechnetes Ergebnis
erhält man mit Hilfe eines Approximationsalgorithmus, der wenigstens eine Lösung findet,
die der optimalen möglichst nahe kommt.
2.1.1 Definitionen und Begriffe
Gegeben ist zum Beispiel eine Permutation π = (4, 3, 5, 1, 2) der Ordnung 5. Die erweiterte
Darstellung von π, genannt ext(π) = ( π0, π1, … , πn, πn+1) mit π0 = 0 und πn+1 = n+1, ist in diesem Fall ext(0, 4, 3, 5, 1, 2, 6). Die Breakpoints von π befinden sich hier zwischen der 3, der 5
und der 1. Ein Breakpoint von π ist definiert als ein Paar ( i, i+1) von Positionen, wobei der
Betrag der Differenz von πi und πi+1 nicht 1 ist. Strips von π sind Teilfolgen der Elemente einer
Permutation, die durch einen Breakpoint getrennt werden. Unterschieden werden dabei aufund absteigende Strips. Die beiden äußersten Strips der erweiterten Darstellung ext(π) und
Strips, deren Elemente aufsteigend sortiert sind, sind aufsteigende Strips. Absteigende Strips
sind Strips der Länge 1 ist und Strips, deren Elemente absteigend sortiert sind. In diesem Beispiel gehören die Strips (4,3) und (5) zu den absteigenden Strips, (1,2), (0) und (6) sind absteigende Strips.
3
Valentina Klaus
Die identische Permutation ist die einzige erweiterte Permutation ohne Breakpoints. Damit
entspricht das Umsortieren der Elemente dem Eliminieren der Breakpoints. Die Mindestanzahl der Reversals die zur Umsortierung nötig sind, wird mit brp(π)/ 2 berechnet. Dies liegt
daran, dass ein ( i, j) - Reversal maximal zwei Breakpoints eliminieren kann, da es nur auf die
Breakpoints an den Positionen ( i, i+1) und ( j, j+1) Einfluss nehmen kann.
2.1.2 Signifikanz absteigender Strips
Absteigende Strips sind in diesem Zusammenhang besonders wichtig, da bei ihrem Vorhandensein immer mindestens ein Reversal existiert, das mindestens einen Breakpoint eliminiert.
Dies wird deutlich, wenn man sich die möglichen Situationen vor Augen führt.
Ausgegangen wird von einer erweiterten Permutation π der Ordnung n. Man wählt ein Element k als kleinstes Element eines absteigenden Strips und ein zweites Element l als das
größte Element eines absteigenden Strips aus ext(π).
1. Liegt k in einem absteigenden Strip und k-1 in einem aufsteigenden Strip, sind k und
k-1 nun Teil eines Breakpoints, da sie beide das letzte Element ihres Strips sein müssen. K-1 muss in einem aufsteigenden Strip liegen, da es sonst bereits Teil des Strips
wäre, in dem k liegt. Das letzte Element ist jeweils das kleinste in einem absteigenden
Strip und das größte in einem aufsteigenden Strip. Liegt k in π links von k-1, enthält
das Reversal, das die beiden nebeneinander sortiert, den aufsteigenden Strip, in dem
k-1 liegt. Liegt k in π jedoch rechts von k-1, enthält das Reversal den absteigenden
Strip, der k enthält.
2. Liegt l in einem absteigenden und l+1 einem aufsteigenden Strip, sind l und l+1 Teil
eines Breakpoints, da auch sie jeweils das letzte Element ihres Strips sein müssen. L+1
muss in einem aufsteigenden Strip liegen, da es sonst bereits Teil des Strips wäre, in
dem l liegt. Auch hier ergeben sich, je nach Anordnung der Strips, zwei mögliche
Reversals. Liegt l in π links von l+1, enthält das Reversal, das die beiden nebeneinander sortiert, den absteigenden Strip, in dem l liegt. Liegt l in π rechts von l+1, enthält
das Reversal den aufsteigenden Strip, in dem l+1 liegt.
3. Die ersten beiden Fälle machen deutlich, dass es mindestens ein Reversal geben muss,
das einen Breakpoint eliminiert, sobald eine Permutation einen absteigenden Strip
besitzt. Sollte k = 1 gelten, also k-1 = 0 sein, gilt dies immer noch, da in der erweiterten Darstellung von π ext(π) der Strip s0 = 0, als einer der beiden äußersten Strips, als
aufsteigend definiert ist.
4. Für den Fall, dass es zwei Reversals gibt, die einander entsprechen und die, auf die
Permutation angewandt, eine Permutation ohne absteigende Strips erzeugen, werden
zwei Breakpoints auf einmal eliminiert. Um nur aufsteigende Strips zu erhalten, müssen die angewandten Reversals die absteigenden Strips enthalten. Damit liegt k in π
rechts von k-1 und l liegt in π links von l+1.
Um zwei Breakpoints auf einmal zu eliminieren, müssen nun die beiden Reversals
gleich sein. Dies bedeutet, dass k in dem Reversal enthalten sein muss, das den Breakpoint zwischen l und l+1 eliminiert. Gleichzeitig muss l in dem Reversal enthalten
sein, das wiederum den Breakpoint zwischen k und k-1 entfernt. Wäre dies nicht der
Fall, würden absteigende Strips erhalten bleiben.
4
Valentina Klaus
Diese beiden Reversals müssen einander entsprechen, da sonst ein Strip existieren
würde, der nur in einem der beiden Reversals enthalten ist. Dieser Strip wäre, egal ob
ab – oder aufsteigend in π, in der resultierenden Permutation absteigend.
5. Zuletzt betrachten wir den Fall, dass die Permutation π nur aufsteigende Strips enthält.
Sie ist nun entweder die identische Permutation, also fertig sortiert, dann liegen 0 und
n+1 in einem Strip. Oder es gibt ein Reversal, das eine Permutation mit einem absteigenden Strip erzeugt. In diesem Fall wird jedoch nicht unbedingt ein Breakpoint eliminiert, es wird jedoch auch kein neuer Breakpoint erzeugt, da die Permutation mindestens zwei Breakpoints enthält und das Reversal nur den Bereich zwischen diesen beiden Breakpoints umdreht.
Der im Folgenden vorgestellte Approximationsalgorithmus verwendet genau diese Eigenschaften zur Lösung des MINSR-Problems.
2.1.3 Algorithmus
Der Algorithmus ist ein 2-approximativer Algorithmus des MINSR-Problems, da jedes gefundene Reversal durchschnittlich einen Breakpoint eliminiert. Zuerst soll nun die Vorgehensweise des Algorithmus aufgezeigt und anschließend seine Approximationsgüte und Laufzeit
erörtert werden.
Vorgehensweise
Ermittelt werden alle Reversals einer gegebenen Permutation π der Ordnung n, die diese Permutation in die identische Permutation umformen.
Diese werden in eine Liste eingefügt.
Die Liste wird ausgegeben, sobald die Permutation der identischen Permutation entspricht.
Am Anfang sucht der Algorithmus nach absteigenden Strips in der Ausgangspermutation.
Ist keiner vorhanden, wird das Reversal durchgeführt, das den Strip zwischen den ersten beiden Breakpoints umdreht. Dadurch ändert sich die Anzahl der Breakpoints zwar nicht, die
Permutation besitzt nun jedoch einen absteigenden Strip.
Die weitere Vorgehensweise ist davon abhängig, ob die Permutation nach Ausführen eines
Reversals noch mindestens einen absteigenden Strip besitzt.
Ist dies der Fall, wird das kleinste Element k eines absteigenden Strips von π ermittelt. Zusätzlich wird dessen Position i in π und die Position i' des nächstkleineren Elements k-1 in π
bestimmt. Das Reversal, das nun zur Liste hinzugefügt wird, lautet ρ (i'+1, i) der erweiterten
Darstellung von π.
Existiert allerdings nach Durchführung des gefundenen Reversals kein absteigender Strip in
der Permutation, wird das größte Element l eines absteigenden Strips von π gesucht. Es werden die Positionen j und j' von l und l+1 in π bestimmt. Das gefundene Reversal, lautet nun ρ
(j, j'-1) der erweiterten Darstellung von π.
5
Valentina Klaus
Approximationsgüte
In dem Worst-Case-Szenario, in dem die Ausgangspermutation keinen absteigenden Strip enthält, wird als erstes ein Reversal ausgeführt, das einen absteigenden Strip erzeugt. Dieses
Reversal entfernt keinen Breakpoint, erzeugt aber auch keinen neuen. Dieser Fall kann entweder am Anfang einer Berechnung auftreten, oder nachdem zwei Breakpoints gleichzeitig entfernt wurden. Enthält die aus einem gefundenen Reversal resultierende Permutation einen
absteigenden Strip, eliminiert dieses einen Breakpoint. Enthält sie keinen absteigenden Strip,
bedeutet dies, dass durch das Reversal zwei Breakpoints entfernt werden. Die Reversals, die
jeweils keinen oder zwei Breakpoints aufheben, können am Ende miteinander verrechnet werden. Somit eliminiert jedes Reversal des Algorithmus mindestens einen Breakpoint. Der Algorithmus erhält deshalb die Approximationsgüte 2.
Zeitkomplexität
Dies spielt auch bei der Analyse der Laufzeit eine Rolle. Eine Permutation der Ordnung n
kann maximal n+1 Breakpoints haben, da hierfür die erweiterte Darstellung betrachtet wird.
Wie eben bewiesen eliminiert jedes Reversal durchschnittlich einen Breakpoint. Die äußere
While – Schleife des Algorithmus muss damit höchstens n+1-mal durchlaufen werden. Die
Entscheidung, welches Reversal am geeignetsten ist, ist in linearer Zeit möglich, da in höchstens zwei verschiedenen Permutationen die absteigenden Strips bestimmt werden müssen.
Daraus ergibt sich eine Laufzeit von O(n²) für das Sortieren einer Permutation der Ordnung n.
2.2 Sortieren gerichteter Permutationen
Gene sind gerichtete DNA-Fragmente. Ignoriert man nun deren Leserichtung nicht mehr, entspricht das Suchen der Mindestanzahl an Genome Arrangements dem Sortieren einer gerichteten Permutation.
2.2.1 Definitionen und Begriffe
Eine gerichtete Permutation der Ordnung n ist als n-Tupel π = (π1,, …, πn) definiert.
Aus jeder Menge { j , j } 1 ≤ j ≤ n kommt genau ein Element in π vor. Die Menge aller
gerichteter Permutationen der Ordnung n wird hier als 
Permn bezeichnet. In anderen
Quellen werden anstatt der Pfeile Vorzeichen zum Anzeigen der Richtung eines Elements verwendet.
In diesem Zusammenhang wird eine etwas genauere Definition des Reversals notwendig. Ein
Permn → 
Permn defi( i, j) - Reversal der Ordnung n wird nun als Abbildung ρ ( i, j) : 
niert. Somit gilt:
π · ρ ( i, j) = ( π1 , … , πi-1 , π j , π j−1 , … , π i1 , π i , πj+1 , … , πn ).
Dabei sei π k = x , falls πk = x und π k = x , falls πk = x für alle 1 ≤ k ≤ n. Das
bedeutet, dass jedes Reversal nicht nur die Reihenfolge der Elemente, sondern auch die Richtung eines Elements ändert.
6
Valentina Klaus
Das Problem, eine gerichtete Permutation in die identische Permutation umzuformen, wird als
MINOSR-Problem bezeichnet. Im Gegensatz zu dem MINSR-Problem ist es jedoch in polynomieller Zeit optimal lösbar. Auf die Vorstellung des Algorithmus von Hannenhalli und Pevzner, der dieses Problem löst, wird hier aufgrund der technischen Aufwendigkeit desselben verzichtet.
MINOSR-Problem
Das MINOSR-Problem hat zwei gerichtete Permutationen π und σ der Ordnung n als Eingabe.
Als Lösung zugelassen ist jede Folge ρ1, … , ρt von Reversals der Ordnung n, für die
π ρ1 · · · ρt = σ gilt. Die Kosten hierfür entsprechen wie auch bei dem MINSR-Problem der
Anzahl t der Reversals. Da auch hier nach der Mindestanzahl an Reversals gesucht wird,
sollte t auch in diesem Fall möglichst gering sein.
4. Zusammenfassung
Der Vergleich des gesamten Genoms kann in speziellen Fällen die einzige Möglichkeit sein,
die molekulare Evolution zweier Arten zurückzuverfolgen. Als Distanzmaß wird dabei die
minimale Anzahl so genannter Genome Rearrangements verwendet. Diese Mutationen verändern die Anordnung der Gene eines Genoms. Modelliert wird die Suche nach der Anzahl von
Genome Rearrangements als Sortieren von Permutationen durch Reversals. Ist die Leserichtung der Gene nicht bekannt, führt dies zum MINSR-Problem. Dieses kann nur mit Hilfe eines
Approximationsalgorithmus näherungsweise gelöst werden. Der Algorithmus eliminiert mit
jedem gefundenen Reversal durchschnittlich einen Breakpoint und hat eine Laufzeit von
O(n²). Eine besondere Rolle spielen hierbei absteigende Strips. Ist die Leserichtung bekannt,
muss eine gerichtete Permutation sortiert werden. Dieses so genannte MINOSR-Problem kann
ohne Approximationsalgorithmus in polynomieller Zeit gelöst werden.
5. Literatur
[1]
[2]
H.-J. Böckenhauer, D. Bongartz: Algorithmische Grundlagen der
Bioinformatik - Modelle, Methoden und Komplexität, B. G. Teubner Verlag,
2003, Abschnitt 10.1 und 10.2.
P. Pevzner: Computational Molecular Biology – An Algorthmic Approach,
MIT Press, 2000, Abschnitt 10.1.
Herunterladen