The syllabus revisited

Slides:



Advertisements
Similar presentations
12-3 RNA and Protein Synthesis
Advertisements

Mathematical Preliminaries
Analysis of Algorithms
Writing Pseudocode And Making a Flow Chart A Number Guessing Game
Environmental Remote Sensing GEOG 2021
Turing Machines January 2003 Part 2:. 2 TM Recap We have seen how an abstract TM can be built to implement any computable algorithm TM has components:
1 The syllabus revisited Introduction Swarm Intelligence Neural networks Evolutionary computing Special Topics –2 or 3 lectures on other areas of bioinspired.
Reductions Complexity ©D.Moshkovitz.
Announcements Homework 6 is due on Thursday (Oct 18)
Chapter 11: Models of Computation
Data Structures Using C++
Chapter 1 Object Oriented Programming 1. OOP revolves around the concept of an objects. Objects are created using the class definition. Programming techniques.
Recombinant DNA Technology
Chapter 5 Plan-Space Planning.
Name Convolutional codes Tomashevich Victor. Name- 2 - Introduction Convolutional codes map information to code bits sequentially by convolving a sequence.
Scale Free Networks.
CS1022 Computer Programming & Principles
The Chemicals of Living Cells ©The Wellcome Trust.
1 Motion and Manipulation Configuration Space. Outline Motion Planning Configuration Space and Free Space Free Space Structure and Complexity.
Model and Relationships 6 M 1 M M M M M M M M M M M M M M M M
Analyzing Genes and Genomes
Lilian Blot CORE ELEMENTS SELECTION & FUNCTIONS Lecture 3 Autumn 2014 TPOP 1.
18-Dec-14 Pruning. 2 Exponential growth How many leaves are there in a complete binary tree of depth N? This is easy to demonstrate: Count “going left”
Interfacing to the Analog World
PSSA Preparation.
Essential Cell Biology
Introduction to molecular biology. Subjects overview Investigate how cells organize their DNA within the cell nucleus, and replicate it during cell division.
Ashish Gupta Ashish Gupta Unremarkable Problem, Remarkable Technique Operations in a DNA Computer DNA : A Unique Data Structure ! Pros.
DNA Computing COMP308 I believe things like DNA computing will eventually lead the way to a “molecular revolution,” which ultimately will have a very dramatic.
Transformation Principle In 1928 Fredrick Griffith heated the S bacteria and mixed with the harmless bacteria thinking that neither would make the mice.
Enrique Blanco - imim.es © 2006 Enrique Blanco (2006) A few ideas about DNA computing.
DNA Computing By Thierry Metais
DNA Computing Computation with the Code of Life Michael Ang Interactive Telecommunications Program New York University February 16,
Montek Singh COMP Nov 15,  Two different technologies ◦ TODAY: DNA as biochemical computer  DNA molecules encode data  enzymes, probes.
Presented By:- Anil Kumar MNW-882-2K11
Structure, Replication & Protein Synthesis. DNA  DNA (deoxyribonucleic acid) is the hereditary material for all living things.  contains the codes for.
Molecular Computing 3-41 Athabasca Hall Sept. 30, 2013.
Molecular Biology. I. History:Ground breaking discoveries T.H. Morgan Griffith, Avery and McCleod Hershey and Chase Watson and Crick (refer to your article.
DNA Deoxyribonucleic Acid Chapter 11 Page 287. What is DNA? The information that determines an organisms traits. DNA produces proteins which gives it.
Chapter 11: DNA and Genes.
Joost N. Kok Artificial Intelligence: from Computer Science to Molecular Informatics.
SEMINAR ON BIOMOLECULAR COMPUTING
CSE 6406: Bioinformatics Algorithms. Course Outline
Nucleic Acid Structure Many thanks to Dave Bevan for providing some of the material for this lecture.
Beyond Silicon: Tackling the Unsolvable with DNA.
1 Computing with DNA L. Adelman, Scientific American, pp (Aug 1998) Note: This ppt file is based on a student presentation given in October, 1999.
DNA Computing BY DIVYA TADESERA. Contents  Introduction  History and its origin  Relevancy of DNA computing in 1. Hamilton path problem(NP problem)
Algorithms and Running Time Algorithm: Well defined and finite sequence of steps to solve a well defined problem. Eg.,, Sequence of steps to multiply two.
BIO COMPUTERS. INTRODUCTION  Growing needs of mankind-Rapid Development.  Rapid advancement in computer technology will lose its momentum when silicon.
Fast parallel molecular solution to the Hitting-set problem Speaker Nung-Yue Shi.
What is DNA Computing? Shin, Soo-Yong Artificial Intelligence Lab.
DNA Computing Dr Manohar Chandwani IET-DAVV, Indore
Computing with DNA Many thanks to Dave Bevan for providing some of the material for this lecture.
DNA Deoxyribonucleic Acid. DNA Structure What is DNA? The information that determines an organisms traits. DNA produces proteins which gives it “The.
Nucleic Acids and Protein Synthesis 10 – 1 DNA 10 – 2 RNA 10 – 3 Protein Synthesis.
DNA computing on a chip Mitsunori Ogihara and Animesh Ray Nature, 2000 발표자 : 임예니.
1 Biological Computing – DNA solution Presented by Wooyoung Kim 4/8/09 CSc 8530 Parallel Algorithms, Spring 2009 Dr. Sushil K. Prasad.
Copyright © 2009 Pearson Education, Inc. Lectures by Gregory Ahearn University of North Florida Chapter 10 DNA: The Molecule of Heredity.
Molecular Genetic Technologies Gel Electrophoresis PCR Restriction & ligation Enzymes Recombinant plasmids and transformation DNA microarrays DNA profiling.
(Potentials and advancements) Submitted to - Presented by- Mrs. Neeta Nain Vikas Kumar Khichar Mrs. Namita Mittal 2008ucp149 1 VI Semester(CP-2)
13-2: Manipulating DNA Biology 2. Until very recently breeders could not change the DNA of the plants/animals they were breeding Scientists use DNA structure.
DNA Computing Guided by: Ms. Leena Patel Computer Engineering Prepared by: Devharsh Trivedi
A PRESENTATION ON DNA COMPUTING Presented By SOMYA JAIN.
Unit 2.1: BASIC PRINCIPLES OF HUMAN GENETICS
Chapter 13.2 Manipulating DNA.
DNA Deoxyribonucleic Acid
Unit 2.1: BASIC PRINCIPLES OF HUMAN GENETICS
Year 12 Biology Macromolecules Unit
By:- Manas Pandey Electrnics & Communication Roll No
Presentation transcript:

The syllabus revisited Introduction Swarm Intelligence Neural networks Evolutionary computing Special Topics: DNA computing

Bioinspired Computing Lecture 19-20 (PG) Self Replicating Automata DNA Computing

Are Humans Machines? Up to recently it was possible to avoid the question Descartes and others were the first to propose that organisms are complicated machines “But have you ever have seen a machine procreate?” Machines were/are quite simple compared to organisms, so it’s easy to weasle out of that question …

A car is simpler than a plant … Today there are machines that can produce other machines But the products seem simpler than the plant A car plant is a lot more complex than the plant Must a product always be simpler than its producer? Does the description of a factory need more bits of information than the description of the things it turns out? This would be somewhat reminiscent of the second law of thermodynamics

John von Neumann Father of modern computer architecture Did not believe in such law Thought experiment: ‘haunted warehouse’ Robot can walk through a warehouse with robot components

Robot building robot Do not accept trivial solutions What is a component? Some form of prefabrication is allowed But a robot switching on another robot is not an interesting solution Trivial self-production. Putting two robots halves together is also trivial self-production Components must be simpler than original robot in some sense

Copying of Information The essential problem is copying of information Not only must a new automaton be constructed Its program must also be copied If the program is already present in the new parts, we have trivial self-replication

Duality Von Neumann decided to create an automaton constructed from two parts: A construction unit – able to build components from smaller parts, given the right instructions An instruction unit - telling the machine how to create a copy of itself Duality Computer – program Cell - genome

Paradox? The instruction has to contain – one way or another – a full description of the automaton: construction unit and instruction Infinite regress: the instruction needs to contain a copy of the instruction, which needs to contain a copy of the instruction, etc.

Preformationism This problem was recognised in biology in Descartes time Preformationism vs epigenesis Preformationism holds that an embryo or miniature pre-exists in the egg or semen Embryos would develop in true adults, which are somehow encased to each other Individuals formed by God at creation Also here: infinite regress

Solving the Paradox The instruction does not need to contain itself! The construction unit creates a copy machine, which can copy the instruction Construction of a new robots: Create a copy of the instruction in the old robot in a copy machine provided by the construction unit Hand it over to the construction unit of the new robots

Duality The program is used in two different ways: Translated Copied In one role it’s in command, directing the construction, in the other role it is just data being passively copied Interpreted vs. uninterpreted

Correspondence in living cell The genome runs the cell Prescribes which proteins must be produced Message, code gets translated into sequences of aminoacids, resulting enzymes are machine tools of construction unit Some enzymes are replicases, corresponding to the copying unit A virus replicates itself, not by specifying the construction of its own copying unit, but by commandeering the unit built by another program Can show that there will never be a universal system to detect all computer viruses

DNA computers "the smallest biological computing device" (Guinness World Records) Biochemical "nanocomputers" already exist in nature; they are manifest in all living things. But they're largely uncontrollable by humans. We cannot, for example, program a tree to calculate the digits of pi! The idea of using DNA to store and process information started in 1994 when a California computer scientist, Leonard Adleman, used DNA in a test tube to solve a simple mathematical problem: (a variant of) the travelling salesman problem.

The problem: Directed Hamiltonian Path Given a graph with directed edges, find a Hamiltonian Path, i.e. a path which starts at one node, finishes at another, and goes through all other nodes exactly once. Variant of the travelling salesman problem where all roads are the same length: A salesman wants to travel over a fixed set of roads between N different towns without ever coming back to a town he has already visited. Find a sequence of fights which goes from Fresno to Boston landing at all other airports exactly once.

How hard is it? A P problem is one which can be solved in polynomial time, basically at a rate which is some fixed power of N, where N is the size of the problem. An NP hard problem is one for which no one knows an algorithm which does not take exponential time (2 or some other power of a number > 1). Methods taking exponential operations can work out whether or not such a route exists and report it if it does, but even for small problems they take too much time to be practical. Any NP problem can be transformed to another in P time – so solve one efficiently and can solve any NP problem efficiently!

So how did Adleman do it? he had 3x1013 copies of each of 20 or so molecules, so about six hundred million million molecules at his service. This was like having six hundred million million (albeit very rudimentary) computers working on the problem at the same time Parallel approach Like using lots of passengers to find Hamiltonian path in flight network ingenious set of steps, using recombinant DNA technology, to filter out all except the strands representing a Hamiltonian path. Adleman uses DNA molecules for their computational ability alone. As a part of DNA's replication mechanism, a strand can recognize complementary strands or parts of strands by bonding to them. This is the only computation these molecules can perform, but it turns out to be enough. Doesn’t replicate/use much of the way DNA works in living organisms (e.g. involving amino acids/proteins)

Bluffer’s guide to DNA DNA (Deoxyribonucleic acid) is the molecular basis of genetics. For our purposes, the following features are important. A DNA molecule is made of two intertwined, parallel strands (the “double helix'‘”. Each strand has the following structure: p p p p = phosphate .. \ / \ / \ / \ / ... s s s s s = sugar | | | b b b b b = base where each b can be any one of four bases: = adenine, = thymine, = cytosine, = guanine. Two consecutive s-p bonds must occur at distinct places on the s molecule: one at the 3' (``three-prime'') position and one at the 5', so each strand has a 3'-end and a 5'-end, and so strands can be systematically oriented. We will write when the strand is being read from the 3'-end to the 5'-end, and when the strand is being read the opposite way, that is, from the 5'-end to the 3'-end.

Bluffer’s guide contd. The two intertwined strands in a DNA molecule have opposite orientations, and complementary base sequences. This means that opposite every on one strand is a on the other, and opposite every is an . Likewise opposite every on one strand is a on the other, and opposite every is a . A typical stretch of the DNA molecule looks like: Usually abbreviated to

Encoding vertices and edges with DNA strands Adleman assigned to each vertex, and to each link, a single DNA strand 20 bases long. E.g. Vertex 2 TATCGGATCGGTATATCCGA Vertex 3 GCTATTCGAGCTTAAAGCTA Vertex 4 GGCTAGGTACCAGCATGCTT Link 2! 3 GTATATCCGAGCTATTCGAG - Note that Link 2 ! 3 is made of the last half of 2 plus the first half of 3. Link 3!4 CTTAAAGCTAGGCTAGGTAC He used a slightly different representation for start and finish nodes, which we will ignore here. We will use a simplified representation with just 8 bases in rest of these slides

The simplified representation Note: Chi->Dal would be a completely different string

Using complementarity to link connecting flights In the experiment, strands representing the flights are mixed in a test tube with the complements to the strands representing the airports. If Atlanta* represents the complementary strand, etc., this gives The test-tube then holds

Shake the test-tube: generate all possible routes complementary sections of strand will bond, yielding products of reaction like: DNA synthesizer with 1013 copies of each city* and flight to ensure all routes are generated. Still fits in a test-tube!

Using recombinant chemistry to extract the solution In Adleman's Hamiltonian path experiment (involving seven ``airports'' and fifteen ``flights'') the yield of the first mixing included molecules like But also like: in which an airport is visited more than once. Also the sequences shown here visit only three of the seven airports, and none of them start with Fresno or end with Boston.

DNA manipulations Transcription and translation Sequence of DNA is transcribed: nRNA Polymerase recognizes the region to be transcribed mRNA copy translated into protein

5’ G-G-A-T-A-G-C-T-G-G-T-A 3’ DNA manipulations Denaturing, annealing, ligation 5’ G-G-A-T-A-G-C-T-G-G-T-A 3’ | | | | | | | | | | | | 3’ C-C-T-A-T-C- G- A-C-C-A-T 5’

5’ G-G-A-T-A-G-C-T-G-G-T-A 3’ DNA manipulations 5’ G-G-A-T-A-G-C-T-G-G-T-A 3’ 3’ C-C-T-A-T-C- G- A-C-C-A-T 5’ | | | | | | | | | | | | 3’ C-C-T-A-T-C G- A-C-C-A-T 5’ Ligase repairs the discontinuity

DNA manipulations Addition of an oligo with a magnetic bead Removal of ‘strings’ containing specific ‘substrings’ GCTA CGAT N/S

DNA manipulations Gel electrophoresis Apply voltage over gel The longer the strand, the more difficult it moves Stain with fluorescent dye Market lanes

Using recombinant chemistry to extract the solution (contd) A sequence of steps (the chemical details are given in Adleman's article) uses recombinant DNA technology to eliminate All molecules which do not start with Fresno* and do not end with Boston*. Polymerase chain reaction All molecules which do not contain exactly 7 airports (i.e. all molecules which do not have a certain exact length). Gel Electrophoresis All molecules which contain a repeated airport. Affinity purification If there is anything left, it must be molecules encoding a path that goes from Fresno to Boston visiting each of the other airports exactly once: the graph has a Hamiltonian path. In our example there is exactly one such path, which can be read off by analysis of the yield of the complete experiment Graduated PCR It is interesting that even though this whole procedure is completely artificial, the ``technology'' which permits the various steps comes from the harnessing of the enzymes used by cells themselves to replicate, to transcribe and when necessary to destroy DNA.

Comments The initial calculation took approximately one second but Adleman’s extrapolation was performed over a period of a week. Method scales in time, but not space – needs exponential amount of DNA – for 200 cities DNA would weigh more than the earth! Stochastic, so possible problems of compounding errors There are many advantages of DNA Computing such as performing millions of operations simultaneously, generating a complete set of potential solutions, conducting large parallel searches, efficiently handling massive amounts of working memory. None of the researchers have been able to redo the experiment done by Adleman in the wet lab. The problem is because of the underlying assumption that the biological operations are error-free. Adleman talked of a week of work in lab, but tuning such an experiment could take one month work. Many researchers thought of implementing the idea on DNA Computing in actual computers but there are advantages and disadvantages and because of the technological issues DNA Computers are not in use yet. DNA Computers have amazing property of parallel computing, incredibly light weight, consumes low power and solves complex problems quickly. DNA Computers have a great disadvantage of time, they are occasionally slower and are not reliable.

Current status DNA computers can perform rudimentary functions. DNA computers are programmable, but not universal. Speed and size: DNA computers surpass conventional computers: The DNA molecule found in the nucleus of all cells can hold more information in a cubic centimeter than a trillion music CDs. A spoonful of DNA "computer soup" contains 15,000 trillion computers.

Current status (2) Parallelism: DNA strands produce billions of potential answers simultaneously. Energy efficiency: A biological system such as a cell can perform 2x1019 power operations using one joule of energy (the amount of energy needed to burn a 100-watt light bulb for a second), while a supercomputer only manages 1010 operations, making it 1010 less energy efficient!

Formalization: filtering models Adleman Separate(T,S). Given a set T and a subset S, create two new sets +(T,S), -(T,s) Merge (T1, T2, …, Tn), Given set T1, T2, .. Tn, create their union Detect(T). Given a set T, return true if T is nonempty, otherwise return false

Example: 3-vertex colouring problem Some graphs can be coloured using three colours, such that no adjacent vertices have the same colour:

Example: 3-vertex colouring problem Others can’t

‘Algorithm’ Input(T) for I = 1 to n do begin Tr <- +(T, ri) and Tbg <- -(T,ri) Tb <- +(T, ri) and Tg <- -(T,ri) for all j such that <i,j> ε E do begin Tr <- -(Tr, rj) Tg <- -(Tg, gj) Tb<- -(Tb, bj) end for T <- merge (Tr, Tg, Tb) Output(detect(T))

DNA solution of the maximal clique problem. The maximal clique problem has been solved by means of molecular biology techniques. A pool of DNA molecules corresponding to the total ensemble of six-vertex cliques was built, followed by a series of selection processes. The algorithm is highly parallel and has satisfactory fidelity. This work represents further evidence for the ability of DNA computing to solve NP-complete search problems. (Science 1997)

Solution of a 20-Variable 3-SAT Problem on a DNA Computer A 20-variable instance of the NP-complete three-satisfiability (3-SAT) problem was solved on a simple DNA computer. The unique answer was found after an exhaustive search of more than 1 million (220) possibilities. This computational problem may be the largest yet solved by nonelectronic means. Problems of this size appear to be beyond the normal range of unaided human computation. (Science 2002) 3SAT: given a set of triples of propositional variables, each representing a disjunction, find whether there is an assignment of T/F to the variables to make all the disjunctions true.

Satisfiability problems Φ = (~x1 or ~ x16 or x18 ) and (~x3 or ~ x7 or x12 ) …. For which combination of xi is Φ true? Since i = 1 , … , 20 and a combination of three variables is tested, this is called the 20 variable 3SAT problem

“The smallest biological computing device" (Guinness World Records 2003) “Think of DNA as software, and enzymes as hardware. Put them together in a test tube. The way in which these molecules undergo chemical reactions with each other allows simple operations to be performed as a byproduct of the reactions. The scientists tell the devices what to do by controlling the composition of the DNA software molecules. It's a completely different approach to pushing electrons around a dry circuit in a conventional computer.” (National Geographic) 330 trillion operations per second, the single DNA molecule that provides the computer with the input data also provides all the necessary fuel. programmable, but not universal can only answer yes or no E.g. can check whether a list of zeros and ones has an even number of ones. The computer cannot count how many ones are in a list

References http://arstechnica.com/reviews/2q00/dna/dna-1.html http://www.ams.org/featurecolumn/archive/dna-abc1.html http://www.sciencemag.org/cgi/reprint/296/5567/478.pdf