AAGUCGGCCGAUUAGG UGACGCUGACGC Proteinstrukturvorhersage mit Hilfe von CP(FD) Seminar: Bioinformatik...

Post on 05-Apr-2015

103 views 0 download

Transcript of AAGUCGGCCGAUUAGG UGACGCUGACGC Proteinstrukturvorhersage mit Hilfe von CP(FD) Seminar: Bioinformatik...

AAGUCGGCCGAUUAGG

UGA

CGC

Proteinstrukturvorhersage mit Hilfe von CP(FD)

Seminar: BioinformatikWS 01/02

Martin Homik

AAGUCGGCCGAUUAGG

UGA

CGC

Vortrag

1. Motivation• Kriterien, Modelle, Bisherige Ansätze

2. Constraint Programmierung• Modellierung, Propagierung, Suche

3. CP Modell für HP(NX)• Naive, Fortgeschritten

4. Fazit, Ausblick und Literatur

AAGUCGGCCGAUUAGG

UGA

CGC

Motivation

Gegeben: Aminosäuresequenz Gesucht: Natürliche Struktur Ziele:

Funktion Medikamentenherstellung

NP vollständig (Berger, Leighton; Crescenzi 1998)

AAGUCGGCCGAUUAGG

UGA

CGC

Qualitätskriterien

Gittermodell Simplifikation Energiefunktion Algorithmus

AAGUCGGCCGAUUAGG

UGA

CGC

Gittermodell

Monomerplatzierung auf Gitterpositionen

Einheitliche Bindungsabständen

Monomere haben einheitliche Größe

AAGUCGGCCGAUUAGG

UGA

CGC

HP Modell

Dill, Lan (1989) teilen Monomere ein in: hydrophob hydrophil

Reduktion von 202

VAIAEQCGRQAGGKLCPNNLCCSQWGWCGSTDEYCSPDHNCQSNCK

HPHPPHPHPHPHHPHPPPPHPPHHPHPPHHPHPHPHPHHPPHHPPP

AAGUCGGCCGAUUAGG

UGA

CGC

Kontakt

Optimale Anordnung: Maximum von Kontakten zwischen H-Monomeren

HH-Kontakt

PH

AAGUCGGCCGAUUAGG

UGA

CGC

HP Modell: Energiefunktion

H = Hydrophob (wasserabweisend) P = Hydrophil (wasseranziehend)

H P

H -1 0

P 0 0

AAGUCGGCCGAUUAGG

UGA

CGC

HP Modell in 3D

H-Monomer

P-Monomer

AAGUCGGCCGAUUAGG

UGA

CGC

HP Modell: Nachteil

Hoher Degenerierungsgrad Viele Strukturen zu einer Sequenz mit min. Energie

Ungenaue Energiefunktion

Degenerierung

AAGUCGGCCGAUUAGG

UGA

CGC

HPNX Modell: Energiefunktion

Hydrophob H P N X

H -4 0 0 0

P 0 1 -1 0

N 0 -1 1 0

X 0 0 0 0

Positiv Negativ Neutral

Hydrophil:

Bornberg-Bauer (1997)

AAGUCGGCCGAUUAGG

UGA

CGC

HPNX Modell in 3D

H-MonomerP-MonomerN-MonomerX-Monomer

AAGUCGGCCGAUUAGG

UGA

CGC

Bisherige Ansätze

Es existiert kein effizienter Algorithmus! Beschränkung auf 3x3x3 Kubus (Sali,

1994) Nur kurze Sequenzen (Teilsequenzen) Maximum Compact State (MCS)

Annahme: MCS = optimale KonformationWiederlegt von You 1995

Monte Carlo (50 000 000 Schritte)

AAGUCGGCCGAUUAGG

UGA

CGC

Warum CP? (Backofen, Will)

Gittermodelle bleiben skalierbar Längere Sequenzen Keine MCS Einschränkung Modellierung mit Higher Order

Alphabeten CP Modell bleibt für andere Gitter

anwendbar Reduzierung von Degenerierungen

AAGUCGGCCGAUUAGG

UGA

CGC

Constraint Programmierung

Modellierung Propagierung Problemzerlegung Explorierung (Suche)

AAGUCGGCCGAUUAGG

UGA

CGC

Constraintspeicher

CP Modellierung

x{3,4,5} y {3,4,5}

Problemvariablen Finite Domains

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung

xy

y3

x{3,4,5} y {3,4,5}

Constraintspeicher Aufsetzen neuer Propagierer Propagierer filtern inkonsistente

Werte

Propagierer (Threads)

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung

Propagierer y>3 im Betrieb

xy

y3

x{3,4,5} y {3,4,5}

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung

Propagierer y>3 im Betrieb Einschränkung Constraintspeicher

xy

y3

x{3,4,5} y {4,5}

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung

Propagierer xy im Betrieb

xy

y3

x{3,4,5} y {4,5}

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung

Propagierer xy im Betrieb Einschränkung Constraintspeicher

xy

y3

x{4,5} y {4,5}

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung

Propagierer a) im Betrieb Einschränkung Constraintspeicher Fixpunkt erreicht

xy

y3

x{4,5} y {4,5}

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierung: Summe

x{3,4,5} y {3,4,5} z={1,...,100}

x+y=z

3+3=6 5+5=10

x{3,4,5} y {3,4,5} z={6,...,10}

Analog für

AAGUCGGCCGAUUAGG

UGA

CGC

CP Problemzerlegung

Propagierung reicht nicht! Zusätzliche Constraints

xy y3

x{4} y {4}

xy y3

x{5} y {5}

xy y3

x{4,5} y {4,5}

x=4 x4

AAGUCGGCCGAUUAGG

UGA

CGC

CP Heuristik

Kriterien Welche Variable wählen? Welchen Wert zuweisen?

Wissenseinwirkung Beispiele:

Naive: Wähle erstbeste nicht determinierte Variable und weise kleinsmöglichen Wert zu

First Fail: Wähle nicht determinierte Variable mit kleinstem Bereich und weise kleinsten Wert zu

AAGUCGGCCGAUUAGG

UGA

CGC

CP Explorierung

Iteration: Propagierung Zerlegung

Suchbaum:

Lösung

Fail Kriterium:

Anzahl der Zerlegungsknoten

AAGUCGGCCGAUUAGG

UGA

CGC

CP Branch & Bound

Sei f Zielfunktion Sei s eine Lösung Dann:

Vergleichswert: f(s) Nächste Lösung s

´: f(s´) < f(s)

s

f(s´) < f(s)

AAGUCGGCCGAUUAGG

UGA

CGC

CP Branch & Bound

Sei f Zielfunktion Sei s eine Lösung Dann:

Vergleichswert: f(s) Nächste Lösung s

´: f(s´) < f(s)

s

f(s´) < f(s)

AAGUCGGCCGAUUAGG

UGA

CGC

CP Modellierungstechniken

Symmetrien vermeiden Vermeidung gleicher Lösungen Ordnung

Redundante Constraints Gleiche Constraints Aber anderer Filteralgorithmus

Reifizierte Constraints rc(x1, ..., xn) b, b {0,1}

AAGUCGGCCGAUUAGG

UGA

CGC

CP Modell: HP

Sei s=(s1,..,sn) eine HP(NX)-Sequenz

Strukturfunktion (Konformation): c:{1,...,n} Z3

Koordinaten: Xi, Yi, Zi {1,...,2*n}, 1i n

AAGUCGGCCGAUUAGG

UGA

CGC

CP Modell: Propagierer

Distanz: 11)c(i-c(i) :ni1

Self-Avoiding:c(j)c(i) :ji

Kontaktstellen (i, j):

sonst0

1c(j)-c(i) 1Contact ji,

j1i wobei

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierer: HP

Energiefunktion:

HHCEnergy

ContactHHCHs(j)Hs(i)j1i

ji,

H P

H -1 0

P 0 0

AAGUCGGCCGAUUAGG

UGA

CGC

CP Suche: HP

Heuristik Wähle Variable aus {Xi, Yi, Zi | 1 i n

} Heuristik: First Fail

Branch & Bound Sei Ec der aktuell beste Energiewert Neuer Constraint: Energy < Ec

AAGUCGGCCGAUUAGG

UGA

CGC

CP Suche: HPNX

Energiefunktion:

NNCPPC

PNCHHC*4Energy

Strategie: Erst alle HP Lösungen suchen Dann: Beste HPNX Lösung filtern

H P N X

H -4 0 0 0

P 0 1 -1 0

N 0 -1 1 0

X 0 0 0 0

AAGUCGGCCGAUUAGG

UGA

CGC

CP Suche: HP (Besser)

Redundante Constraints Zielgerichtete Heuristik:

Fühzeitige Enumierung von Strukturen mit geringer Energie

AAGUCGGCCGAUUAGG

UGA

CGC

Redundante Constraints

Ebenen Constraints Position Constraints Typ Constraints

AAGUCGGCCGAUUAGG

UGA

CGC

Ebenen Constraints

X

Y

Z

1Elem cx,i

Ist Monomer i in X-Ebene c dann gilt:

AAGUCGGCCGAUUAGG

UGA

CGC

Ebenen Constraints

21icy,3i

cy,i YY1)Elem1(Elem i

1)(Elem1)Elem1(Elem cy,1i

cy,2i

cy,i

AAGUCGGCCGAUUAGG

UGA

CGC

Ebenen Constraints

Anzahl H-Monomere in der X- Ebene

Hs gerade i

cxicx

i

Elem.sehE

Hs ungerade i

cxicx

i

Elem.sohE

1.sohE

1.sehE

3x

3x

AAGUCGGCCGAUUAGG

UGA

CGC

Position Constraints

Eine beliebige Position sei: )p,p,(pp zyx

1)(Opi

Monomer i besetzt Positionp

1)Elem1Elem1(Elem zyx pz,i

py,i

px,i

AAGUCGGCCGAUUAGG

UGA

CGC

Position Constraints

Besetze jede Position höchstens einmal

1Oni1

pi

1OO

1OO

pn Nachbar voist p

p1i

pi

pn Nachbar voist p

p1i

pi

'

'

'

Nachbarpositionen

AAGUCGGCCGAUUAGG

UGA

CGC

Typ Constraints

Ein H-Monomer besetzt Position p

1O1)(HtypeHsni1

pip

i

p

pH Htype(s)n

Anzahl H-Monomere

Analog für P-,N- und X-Monomere

AAGUCGGCCGAUUAGG

UGA

CGC

Surface

Sei HSurfs(c) die Anzahl von Paaren benachbarter Positionen, wobei die erste Position durch ein H-Monomer besetzt ist und die zweite nicht

HSurfs(c)=10

AAGUCGGCCGAUUAGG

UGA

CGC

Neue Schranke (You, Dill)

Jedes Monomer hat 2*d Nachbarn in Zd

Anzahl von H-Monomeren in s:

(c)HSurf)HHBonds(s)(HHC*2nd*2 ssH

Maximierung von HHC

Minimierung von HSurfs(c)

sHn

AAGUCGGCCGAUUAGG

UGA

CGC

Surface Constraints

Definiere für alle Nachbarpositionen

sonst0

0HType 1HType1HSurf

''ppp

p

Und somit:

Nachbarn p,p

pps

'

'

HSurf)(HSurf

c

AAGUCGGCCGAUUAGG

UGA

CGC

Heuristik

.sohE.seh,E jjSchranken für Anzahl von H-Monomeren in Ebene j

cx,iElem Konkrete Ebene an

H-Monomere zuweisen

piO

Konkrete Position an H(P)-Monomere zuweisen

iii Z,Y,X Konkrete Position an N,X-Monomere zuweisen

AAGUCGGCCGAUUAGG

UGA

CGC

Sequenz Suchschritte Beste HPNX

Suchschritte Alle opt.HP

HPNX Degen.

HP Degen.

S1 (27) 14402 167662 61 37244

S2 (27) 733 2998 4 297

S3 (27) 411 155693 195 25554

S4 (31) 46 11036 1023 1114

S5 (36) 1629 55086 16 3528

Ergebnisse

Starke Reduzierung von Degenerierungen

Higher Order AlphabeteReduzeiren Suchraum

Max. Länge: 40 (Zeit?)

AAGUCGGCCGAUUAGG

UGA

CGC

Ergebnisse (2)

Effizienz nicht vergleichbar: You&Dill: Alg. für HP nicht frei

zugänglich Max. Länge 88 (Zeit?)

Keine weiteren Ansätze für HPNX bekannt

Monte Carlo (3x3x3) 50 000 000 Schritte

AAGUCGGCCGAUUAGG

UGA

CGC

Fazit

CP(FD) ist eine aussichtsreiche Technik

Skalierbare Gittermodelle Keine Beschränkung der

Sequenzlänge Differenzierte Gittermodelle Higher Order Alphabete Reduzierung von Degenerierungen

AAGUCGGCCGAUUAGG

UGA

CGC

Ausblick (Aktuell)

Weitere Gitternetze Face-centered cubic lattice (FCC) Sequenzlänge 160

Zeit: 5-15 Minuten

AAGUCGGCCGAUUAGG

UGA

CGC

Literatur

Backofen, Will, Bornberg-Bauer: Application of constraint programming

techniques for structure prediction of lattice proteins with extended alphabets

Backofen: The Protein Structure Prediction

Problem: A Constraint Optimization Approach using a New Lower Bound

AAGUCGGCCGAUUAGG

UGA

CGC

Literatur

Backofen, Will: A Brounch-and-Bound Constraint

Optimization. Approach to the HPNX Structure Prediction Problem

Mozart/Oz www.mozart-oz.org

AAGUCGGCCGAUUAGG

UGA

CGC

Aminosäure

C-Atom

Aminogruppe

Carboxylgruppe

H

HH

C COH

O

R

N

Organischer Rest

Beispiel: Alanin

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierer: HP

Distanz benachbarter Monomere ist 1 Xdiffi = |Xi –Xi+1| Ydiffi = |Yi –Yi+1| Zdiffi = |Zi –Zi+1| Xdiffi + Ydiffi + Zdiffi = 1

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierer: HP

Self-avoiding 1 i,j n mit i j

Xdiffi,j = |Xi –Xj| Ydiffi,j = |Yi –Yj| Zdiffi,j = |Zi –Zj|

ri,j,{x,y,z} {0,1}

(Xdiffi,j = 0) (ri,j,x = 0)

(Ydiffi,j = 0) (ri,j,y = 0)

(Zdiffi,j = 0) (ri,j,z = 0)

ri,j,x + ri,j,y + ri,j,z > 0

AAGUCGGCCGAUUAGG

UGA

CGC

CP Propagierer: HP

Kontaktstellen: Xdiffi,j = |Xi – Xj| Ydiffi,j = |Yi – Yj| Zdiffi,j = |Zi – Zj| Contacti,j {0,1}

(Contacti,j = 1) Xdiffi,j+Ydiffi,j+Zdiffi,j = 1