Presentation / Folien - Lehrstuhl für Effiziente Algorithmen

Transcription

Presentation / Folien - Lehrstuhl für Effiziente Algorithmen
Docken von Proteinen
Timo von Oertzen
St. Johann,
September 2002
Das Dock - Problem
Schlecht ...
... ganz schlecht ...
Gut !
Das Dock - Problem
Das Dock – Problem ist die Suche nach der
energetischen günstigsten Lage, in der zwei
Moleküle aneinander haften, und die Bestimmung
des Energiewertes im gedockten Zustand.
Der generische Algorithmus
1. Definition der möglichen Konstellationen der
Moleküle
2. Aufstellen einer Funktion von den
Konstellationen auf einen Energiewert
3. Finden der nach dieser Funktion energetisch
günstigsten Lage der Moleküle zueinander
Lenhof - Algorithmus
GeoFit(A,B) :=
ChemFit(A,B) :=
Fit(A,B) := wGeo · GeoFit(A,B) + wChem · ChemFit(A,B)
Fitness von Punkten
Für isolierte Punkte definieren wir den Kontaktwert
bezüglich des Moleküls A :
ConVal(p) :=
Vorverarbeitung für GeoFit
• Wir zerlegen die Umgebung von A in ein Gitter mit
Boxen der Größe 4 Å.
• Ist ConVal innerhalb der Box konstant, so
speichern wir diesen Wert mit der Box.
• Andernfalls zerlegen wir die Box feiner und
speichern ConVal an jeder Unterbox.
Vorverarbeitung für GeoFit
Vorverarbeitung für ChemFit
• Wir zerlegen die Umgebung von A wieder in
Boxen mit Kantenlänge 4 Å.
• Zu jeder Box speichern wir die Atome von A in
dieser Box.
Berechnung von Fit(A,B)
• Für jedes Atom b auf der Connoly-Oberfläche
von B wird festgestellt, in welcher Box das Atom
liegt.
• Der Wert aus der zugehörigen Unterbox werden
zur Summe von GeoFit addiert
• Die Atome dieser Box und der Nachbarboxen
werden zur Summe von ChemFit addiert.
Auswahl der Kandidaten
• Um jedes Atom von A werden auf einer Kugel
mit Radius 3,5 Å gleichverteilt Punkte gesetzt
• Zu jedem dieser Punkte mit Abstand mindestens 3,5 Å
zum nahesten Atom von A wird ConVal berechnet.
• Alle Punkte mit einer ConVal über einem
vorgegebenen Schwellenwert werden in einer Liste
gespeichert.
Auswahl der Kandidaten
Geometrisches Hashing
Ziel: Wir wollen in der Hauptverarbeitung bei
jedem Dreieck von Atomen aus B schnell ähnliche
Dreiecke von Dockingpositionen identifizieren.
Wir bauen eine dreidimensionale Hashtable für
Dreiecke, in der Dreieck mit ähnlicher
Kantenlänge im selben Feld gespeichert werden.
Darin speichern wir alle Dreiecke von Punkte aus P,
deren Kanten zwischen zwei Schranken lu und lo liegen.
Geometrisches Hashing
längste Seite
zweitlängste
Seite
Berechnung der Kandidaten
Zu jedem Dreieck von Atomen aus B werden alle
ähnlichen Dreiecke gesucht.
Molekül B wird so bewegt, dass die Schwerpunkte
der Dreiecke aufeinander liegen; für diese
Konfiguration wird GeoFit(A,B) berechnet.
Ist GeoFit(A,B) über einem Schwellenwert, dann
wird die Konfiguration als Kandidat genommen.
Vorteile dieses Algorithmus
• Betrachtet atomabhängige Van-Der-Waals Kräfte
• Gut parallelisierbar (durch verschiedene Areale
des Moleküls A)
• Ist relativ schnell, also geeignet fürs Scannen von
Datenbanken (Mit etwa 4 Prozessoren etwa bei 15
Minuten pro Molekülpaar)
Nachteile dieses Algorithmus
• Behandelt (soweit) nur starre Moleküle
• Beachtet nicht den Prozess des Dockens
• Beachtet nicht elektrostatische Kräfte
• Der Raum der Kandidaten-Konstellation ist
relativ klein
Docking-Algorithmus mit
vollständigem Kandidaten
Die Idee: Wir vereinfachen die Fitnessfunktion so
stark, dass wir sie sehr effizient auswerten können
→ Dann können wir alle möglichen Lagen des
Moleküls B relativ zum Molekül A
durchprobieren.
Die 2. Fitness – Funktion
Wir zerteilen den Raum in Boxen und definieren
für jedes Molekül eine Funktion, die beschreibt, ob
eine Box innerhalb des Moleküls, an seiner
Oberfläche oder außerhalb des Moleküls ist:
FA (x,y,z) =
1
(x,y,z) ∈ Rand(A)
cA
(x,y,z) ∈ A
0
(x,y,z) ∉ A ∪ Rand(A)
Die 2. Fitness – Funktion
Die 2. Fitness – Funktion
Die Fitness einer Position (α,β,γ) von Molekül B
relativ zu A ist dann:
Fit (α,β,γ) :=
N
N
N
Σ Σ Σ
x=1
y=1
z=1
FA(x,y,z) ⋅ FB(x+α,y+β,z+γ)
Die 2. Fitness – Funktion
Man wähle cA relativ klein und für cB eine relativ
große negative Zahl. Dann ergibt sich:
Für getrennt Moleküle
wird die F(A,B) = 0
Für überschneidende
Moleküle wird
F(A,B) < 0
Bei gutem Docking
hat F einen Peak
ins Positive
Diskrete Fouriertransformation
Die DFT F´ einer Funktion F sei :
N
F´ (a,b,c) :=
N
N
Σ Σ Σ
x=1
y=1
e
2πi (ax+by+cz)
N
F(x,y,z)
z=1
Wenden wir die DFT auf die Fitnessfunktion an, so
erhalten wir:
Fit´(a,b,c) = FA´ (a,b,c) · FB´ (a,b,c)
Berechnung der Konfigurationen
Die DFT und ihre Umkehrung können wir in
O(N3 log (N)) Schritten berechnen.
→ Bei allen möglichen Rotationen von B können wir
die Fitness aller Konfigurationen in O(N6 log(N))
berechnen.
Vorteile dieses Algorithmus
• Alle Konfigurationen des Modells werden
überprüft
• Angesichts dieser Aufgabe läuft der Algorithmus
mit einer Laufzeit von O(N6) ausgesprochen
schnell.
Nachteile dieses Algorithmus
• Die Energiefunktion ist sehr stark von der
Realität abstrahiert.
• Die Algorithmus ist mit einer Laufzeit von
größenordnungsmäßig 7-8 Stunden ist relativ zu
anderen Algorithmen sehr aufwendig.
Der generische Algorithmus
1. Definition der möglichen Konstellationen der
Moleküle
2. Aufstellen einer Funktion von den
Konstellationen auf einen Energiewert
3. Finden der nach dieser Funktion energetisch
günstigsten Lage der Moleküle zueinander
Beweglichkeit der Moleküle
• Die Moleküle sind starr
• Die Moleküle können unterschiedliche Formen
annehmen
• Die Moleküle sind in sich und zueinander
beweglich
Der Raum
• Diskrete Gitterpunkte, auf denen die Atome liegen
können (üblicherweise zwischen 0.7 und 1.2 Å)
• Atome liegen auf diskreten Punkten unterschiedlicher Dichte
• Atome können jeden Punkt annehmen
Die Energiefunktion
• Die Atome dürfen sich nicht (oder nicht zu sehr)
durchdringen
• Van-Der-Waals-Kräfte
• Elektrostatische Kräfte mit Fernwirkung
• Entropie-Effekte des Umgebungsmediums
Und weiter ..?
1. Fast Fourier Transformation statt Diskreter
Fourier Transformation
2. Simulation des Andockprozesses unter Beachtung
der wirkenden Kräfte
3. Kräftemodell mit einfachen Kräften, die gegen die
Fitnessfunktion von Lenhof konvergieren
4. Kräfte als Nachverarbeitung der Ergebnisse
diskreter Algorithmen
Vielen Dank !
Vollständige Optimierung
Die bisher besprochenen Algorithmen modellieren den
Raum diskret.
Letztlich ist die Fitness-Funktion aber auch
kontinuierlich nur eine von 6 Parametern abhängige
Funktion, und auch hier ist im wesentlichen ein
vierdimensionaler Unterraum interessant.
Idee für vollständige Optimierung: Man wähle eine
geeignete differenzierbare Energiefunktion und
berechne alle Minima.
Beachtung des Prozesses
Beide dargestellte Algorithmen suchen die energetisch
günstigste Dockingposition, ohne den Prozess des
Dockens einzubeziehen.
Z.B. können dabei Dockpositionen an Molekül A
zurückgegeben werden, die für Molekül B gar nicht
erreichbar sind.
Unter Umständen kann sich während des
Dockingprozesses auch ein Molekül zwischenzeitlich
so verändern, dass bestimmte Areale erst erreichbar
werden.
Physikalische Algorithmen
Idee: Beide Moleküle werden zufällig gedreht und
zentral aufeinander zu bewegt. Man berechnet die
wirkenden Kräfte und die dadurch entstehenden
Bewegungen, bis die beiden Moleküle aufeinander
liegen.
Problem: Die exakt wirkenden Kräfte
(elektrostatischen Kräfte, Entropiekräfte, ...) sind
schwer zu erfassen.
Quasiphysikalische Algorithmen
Idee: Man definiert eine Kraftfunktion auf den
Atomen, die einfacher ist und bei großer Nähe der
Moleküle gegen die richtige Funktion konvergiert.
Vorteil: Man hat einige Aspekte des Dockingprozesses beachtet (z.B. Erreichbarkeit) und landet
in einer energetisch günstigen Lage.
Nachteil: Der Algorithmus ist weder eine echte
Simulation des Dockingprozesses, noch liefert er
garantiert erreichte lokale Energieminima.
Alternative Ansätze als Zusatz
zu diskreten Algorithmen
Hat man mit einem diskreten Algorithmus relevante,
energetisch günstige Lagen gefunden, so kann man
in einem Nachprozess mit einem Kräftemodell das
Ergebnis noch ein wenig verbessern.
Auch eine kontinuierliche Optimierung als Zusatz
zu einem diskreten Algorithmus könnte einfacher
sein (da die Zahl der lokalen Minima in der Nähe
des Zielbereichs geringer sein könnten).