Ingo Rechenberg PowerPoint-Folien zur 5. Vorlesung Bionik II (Biosensorik /Bioinformatik) Das molekulare Schlüssel-Schloss-Prinzip Die universelle Technologie des Lebens Schlüssel/Schloss in der Technik Komplex aus 44 Aminosäuren Verdauungsenzym Schlüssel Schloss pH < >5! Magensäure pH = 2 Pepsin Pepsinogen aktiv inaktiv ! aufgeschlossen zugeschlossen Schlüssel/Schloss in der Biologie Self-X Wie stellt die Natur ihre Werkstücke (Schlüssel-Schloss-Moleküle) her ? Konstruktionszeichnung – Gestern Realisation – Gestern 0100011011110010110 010111100101011... Autocad Konstruktionszeichnung – Heute Vielleicht auch über Autocad konstruiert Realisation – Heute Desoxyribonukleinsäure (DNA-Doppelhelix) Protein (Aminosäurekette) Konstruktionszeichnung – Realisation In der Biologie Nukleotidbasen Aminosäuren Bausteine für die „Konstruktionszeichnung“ Bausteine für die Realisierung Adenin A Thymin T Guanin G Cytosin C Phenylalanin Leucin Isoleucin Methionin Valin Serin Prolin Threonin Alanin Tyrosin Histidin Glutamin Asparagin Lysin Asparaginsäure Glutaminsäure Cystein Tryptophan Arginin Glycin Statt der 2 Symbole 0 und 1 in Autocad Phe Leu Ile Met Val Ser Pro Thr Ala Tyr His Gln Asn Lys Asp Glu Cys Try Arg Gly TTT TTC CTT CTC ATT ATC ATA . . . Schlüssel-Schloss-Prinzip – Basenpaarung Der Genetische DNA-Code A=Adenin T=Thymin G=Guanin C=Cytosin 1. Nukleotidbase T C A G TAT TTT TCT Tyr TGT Cys T Phe TTC TCC Ser TAC TGC C T TAA Stopp TGA Stopp A TTA Leu TCA TAG TTG TCG TGG Trp G T CTT CGT CCT CAT His CTC CGC Arg C Leu CCC Pro CAC C A CTA CGA CCA CAA Gln G CTG CGG CCG CAG T ATT ACT AAT AGT Asn Ser C ATC Ile ACC Thr AAC AGC A ATA ACA AAA AGA Arg A Lys Met ACG G ATG start AAG AGG T GGT GCT GAT GTT Asp GGC Gly C GCC Ala GAC GTC Val G A GCA GAA Glu GGA GTA G GGG GCG GAG GTG 3. Nukleotidbase 2. Nukleotidbase DNA Ablesewerkzeug TCA t RNA Ser m RNA Thr Leu Ala Aminoacyl t-RNA Synthetase His Gly Val Arg TCA Ser Leu Thr Ribosom Bei der RNA ist Thymin durch Uracyl ersetzt Ser Leu Thr Montageplattform Realisierung der genetischen Information Akzeptor für Aminosäure A A G Phenylalanin t-RNA Va l Aminosäure und ATP docken an Val Aminosäure P P P P A P A Aminoacyl t-RNA Synthetase ATP Enzym kehrt in den Originalzustand zurück P P A Val P ATP gibt zwei Phosphatgruppen ab und verbindet sich mit der Aminosäure P Va l P A Val t-RNA dockt an AMP wird frei Beladene t-RNA wird freigegeben unbeladene t-RNA Die Form und damit die Funktion der Aminoacyl t-RNA Synthetase entsteht durch die Aneinanderreihung der „richtigen“ Aminosäuren Die Form und damit die Funktion eines jeden Enzyms ! entsteht durch die Aneinanderreihung der „richtigen“ Aminosäuren Durch die Aneinanderreihung der „richtigen“ Längen und Winkel eines Polygonzuges entsteht ein Zahnrad. Technisches Formgebungsproblem „Zahnrad“ Man stelle sich die 20 Aminosäuren als 20 verschiedene Winkelstücke vor, die zu einer Gelenkkette aneinandergekoppelt werden können. A20 A19 A8-A11-A17-A19-A19-A8-A18-A7-A15-A18-A7-A14-A16-A10-A20-A17-A9-A5-A8-A2 Signalmolekül A19 A19 A20 Wozu der lange Rest ? Zur Feineinstellung ! Aufbau einer Gelenkkette mit Rechteckaussparung Zahnradfertigung Proteinfaltung Technisches Formgebungsproblem und biologisches Formgebungsproblem Mit DNA Rechnen Der HAMILTON-Weg Vom Start zum Ziel darf jeder Knotendes Graphen nur einmal durchlaufen werden. William Rowan Hamilton (1805 - 1865) Start Ziel ADLEMANs Experiment mit seinem TT-100 100 Mikroliter TestTube Lenonard M. Adleman 3 4 2 1 5 Start Ziel 7 6 Die Lösung Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine (große) Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Biochemische Grundoperationen für „DNA - Computing“ Allgemein 1. Kettenverlängerung 2. Kettenverkürzung 3. Kettenverbindung 4. Kettenauftrennung 5. Kettenreplikation 6. Basen-Substitution Speziell 1. Polymerase-Kettenreaktion 2. Gel-Elektrophorese 3. Affinitäts-Separation Aalen Celle Trier Start Basismoleküle Verbindungsmoleküle Gotha Städte-Code Ziel Trier Gotha Gotha Aalen Enzym Die Basis-DNA-Sequenzen kommen in das Reaktionsgefäß Kettenbildungen 1 2 3 4 ! 5 Zur Strategie DNA-Vermehrung durch ein flankierendes Oligonukleotid (Primer) Enzym Polymerase Erhitzen auf knapp 100° C Polymerase-Ketten-Reaktion Polymerase Chain Reaction (PCR) Zur Strategie DNA-Vermehrung durch zwei flankierende Oligonukleotide (Primer) Erhitzen auf knapp 100° C Polymerase-Ketten-Reaktion Polymerase Chain Reaction (PCR) DNA-Vermehrung durch zwei flankierende Oligonukleotide (Primer) Aalen Polymerase-Ketten-Reaktion Polymerase Chain Reaction (PCR) Zur Strategie DNA-Probe Gel-Elektrophorese Langes Fragment Kurzer Weg Gel Kathode Anode Kurzes Fragment Langer Weg Zur Strategie 4 5 Affinitätsselektion Zur Strategie Eisen 4 5 Affinitätssektion Zur Strategie ADLEMANs Experiment hat 7 Tage gedauert Zur Strategie Programmiersprache für DNA-Computing • Input input(tube t) Input definiert eine Eingabe, mit der im Folgenden gearbeitet werden kann. • Detect detect(tube t) Detect testet, ob in einer Lösung noch DNA-Moleküe vorhanden sind und liefert True bzw. False zurück. Damit entspricht Detect der kombinierten Anwendung von PCR und Elektrophorese. • Amplify amplify(tube t) to (tube t1) and (tube t2) Die Amplify Operation erzeugt zwei Kopien einer Lösung und entspricht damit reiner Anwendung der PCR. • Merge merge(tube t1, tube t2) Merge liefert die Vereinigung zweier Mengen zurück, entspricht damit dem Vermischen zweier Lösungen. • Seperate +(tube t, word w) Die normale Plus-Seperate Operation liefert all die Wörter aus der Menge t zurück, die den Teilstring w enthalten. Es entspricht dem Filtern einer Lösung mittels magnetischer Partikel. −(tube t, word w) Das Minus-Seperate arbeitet analog und liefert all die Wörter, die nicht den Teilstring w enthalten. L(tube t, int n) L-Seperate liefert alle Wörter zurück, die kürzer als der Parameter n sind. Das entspricht der Auftrennung nach Länge mittels Gelelektrophorese. B(tube t, word w) Das B liefert alle Wörter zurück, die mit w beginnen. E(tube t, word w) Analog liefert E alle Wörter zurück, die auf w enden. Beiden entspricht PCR mit den jeweiligen Primern. Quelle: Ralf Eggeling DNA computing www.marinero.de/bioinformatics/dnacomputing.pdf Programm-Beispiele Beispiel 1: (1) input(N) (2) N = +(N0,A0) (3) N = +(N0,G0) (4) detect(N) Beispiel 2: (1) input(N) (2) amplify(N) to N1 and N2 (3) NA = +(N01,A0) (4) NG = +(N02,G0) (5) N0A = −(NA,0 G0) (6) N0G = −(NG,0 A0) (7) N = merge(N0A ,N0G) Beispiel 3: (1) input(N) (2) N = B(N, s0) (3) N = E(N, s6) (4) N = L(N, 140) (5) for(i = 1; i < 6; i++) { N = +(N, si) } (6) detect(N) Das einfache Beispiel 1 liefert all die Wörter aus der Eingabemenge zurück, die sowohl A als auch G enthalten. Der Algorithmus in Beispiel 2 realisiert ein ausschließendes Oder. Er liefert alle Wörter zurück, die entweder ein A oder aber ein G enthalten, aber nicht beides . Beispiel 3 ist eine formale Schreibweise von Adlemans Experiment. Quelle: Ralf Eggeling DNA computing x y z 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 extrahiere x=0 Beispiel für eine „tube separation“ extrahiere z=1 1 0 1 1 1 1 SAT-Problem Erfüllbarkeitsproblem kombiniere x=0 z=1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 1 1 1 (Satisfiability Problem) extrahiere x=1 0 0 0 0 0 1 0 1 0 0 1 1 extrahiere y=0 1 0 1 0 0 0 1 1 1 0 0 1 kombiniere x=1 y=0 Für welche Werte x, y, z ist die Aussage wahr ? 1 2 3 2 1 0 1 1 1 1 0 0 0 0 0 1 extrahiere y=1 1 0 1 0 0 0 0 0 1 1 1 1 Lösung extrahiere z=0 0 kombiniere y=1 z=0 1 1 1 0 0 0 3 0 0 Logische Funktion b 0 1 0 1 „oder“ avb 0 1 1 1 a 0 0 1 1 b 0 1 0 1 „und“ a v a 0 0 1 1 0 0 0 1 b a 0 1 ¬a 1 0 „nicht“ Für welche Werte x, y, z ist die Aussage wahr (=1) ? Erfüllbarkeitsproblem x y z 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 extrahiere x=0 Beispiel für eine „tube separation“ extrahiere z=1 1 0 1 1 1 1 SAT-Problem Erfüllbarkeitsproblem kombiniere x=0 z=1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 1 1 1 (Satisfiability Problem) extrahiere x=1 0 0 0 0 0 1 0 1 0 0 1 1 extrahiere y=0 1 0 1 0 0 0 1 1 1 0 0 1 kombiniere x=1 y=0 Für welche Werte x, y, z ist die Aussage wahr ? 1 2 3 2 1 0 1 1 1 1 0 0 0 0 0 1 extrahiere y=1 1 0 1 0 0 0 0 0 1 1 1 1 Lösung extrahiere z=0 0 kombiniere y=1 z=0 1 1 1 0 0 0 3 0 0 Elektrische Impulse Informationsverarbeitung Elektrische Impulse Elektronische Informationsverarbeitung MolekülStrukturen Informationsverarbeitung MolekülStrukturen Molekulare Informationsverarbeitung Warum DNA-Computing ? Geschwindigkeit 9 PC (1GHz): 10 Operationen/sec Super-PC: 1012 Operationen/sec DNA: 10 Effizienz 7 10 10 20 Operationen/sec Die Organisation und Komplexität aller Lebewesen basiert auf einer Codierung mit vier verschiedenen Basen im DNA-Molekül. Dadurch stellt die DNA ein Medium dar, welches für die Datenverarbeitung perfekt geeignet ist. Nach verschiedenen Berechnungen würde ein DNA-Computer mit einer Flüssigkeitsmenge von einem Liter und darin enthaltenen sechs Gramm DNA eine theoretische Speicherkapazität von 3072 Exabyte ergeben. Auch die theoretisch erreichbare Geschwindigkeit wegen der massiven Parallelität der Berechnungen wäre enorm. Pro Sekunde ergeben sich etwa 1 Million Tera-Operationen, während die leistungsfähigsten Computer heute gerade mal eine Tera-Operation pro Sekunde erreichen. Kilobyte (kB) 103 Byte = 1.000 Byte Megabyte (MB) 106 Byte = 1.000.000 Byte Gigabyte (GB) 109 Byte = 1.000.000.000 Byte Terabyte (TB) 1012 Byte = 1.000.000.000.000 Byte Petabyte (PB) 1015 Byte = 1.000.000.000.000.000 Byte Exabyte (EB) 1018 Byte = 1.000.000.000.000.000.000 Byte Zettabyte (ZB) 1021 Byte = 1.000.000.000.000.000.000.000 Byte Yottabyte (YB) 1024 Byte = 1.000.000.000.000.000.000.000.000 Byte 1 Byte (Oktett) = 8 bit Prinzip „Biochip“ Schlüssel-Schloss-Array Markierte Positiv-Moleküle Bis zu 100 000 verschiedene Gruppen von Negativ-Molekülen auf Unterlage fixiert. Je 10 Mill. Moleküle Der DNA Chip 1 Glas-Objektträger mit Mikroarray: Messpunkte (Spots) mit individuellen einzelsträngigen DNA-Stücken bekannter Sequenz DNA-Chip auf Oligonukleotid-Basis 2 Fluoreszenzmarkierung Hybridisierung: Unbekannte DNA-Probe Kontroll-DNA DNA-Chip auf Oligonukleotid-Basis 3 Waschen: Falsch gepaarte DNA-Stränge werden herausgewaschen DNA-Chip auf Oligonukleotid-Basis 4 Laserkamera: Orange Mischfarbe, wenn Kontroll- und Probe-DNA identisch, sonst rote oder grüne Spots DNA-Chip auf Oligonukleotid-Basis 5 Auswertung: Auswertung der Spotfarben mit Hilfe eines Computers DNA-Chip auf Oligonukleotid-Basis Auslesen eines DNA-Chips Die einzelnen Felder des Microarray sind mit einzelsträngigen DNA-Stücken beschichtet. Durch Zugabe der mit einem roten und grünen Fluoreszenzfarbstoff markierten Untersuchungsproben binden diese bei komplementärer Basenabfolge an die DNA im Chip. Die Position, Intensität und Wellenlänge der entstehenden Mischfarbe werden mit einer hochauflösenden Laserkamera detektiert und liefern Informationen über Unterschiede in der Expression der Gene zwischen den beiden Proben, z. B. in verschiedenen Organbereichen. Ende www.bionik.tu-berlin.de Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt ! Strategie zur Konstruktion eines HAMILTONschen Weges Gegeben sei ein Graph mit n Knoten: 1. Erzeuge eine Menge zufällig bestimmter Wege durch den Graphen. 2. Für alle Wege in dieser Menge: a) Überprüfe, ob der Weg mit dem Startknoten beginnt und mit dem Zielknoten endet. Falls nicht, entferne den Weg aus der Menge. b) Überprüfe, ob der Weg genau n Knoten enthält. Falls nicht, entferne den Weg aus der Menge. c) Überprüfe, ob außer Start- und Zielknoten auch jeder andere Knoten des Graphen im Weg enthalten ist. Falls nicht, entferne den Weg aus der Menge. 3. Wenn die Menge nicht leer ist melde, dass ein HAMILTON-Weg existiert; wenn sie leer ist melde, dass es keinen gibt !