I. Definition of the Subject and Its Importance Mechanical devices for computation appear to be l... more I. Definition of the Subject and Its Importance Mechanical devices for computation appear to be largely displaced by the widespread use of microprocessor-based that are pervading almost all aspects of our lives. Nevertheless, mechanical devices for computation are of interest for at least three reasons: (a) Historical: The use of mechanical devices for computation is of central importance in the historical study of technologies, with a history dating to thousands of years and with surprising applications even in relatively recent times. (b) Technical & Practical: The use of mechanical devices for computation persists and has not yet been completely displaced by widespread use of microprocessor-based computers. Mechanical computers have found applications in various emerging technologies at the micro-scale that combine mechanical functions with computational and control functions not feasible by purely electronic processing. Mechanical computers also have been demonstrated at the molecular scale, and may also provide unique capabilities at that scale. The physical designs for these modern micro and molecularscale mechanical computers may be based on the prior designs of the large-scale mechanical computers constructed in the past. (c) Impact of Physical Assumptions on Complexity of Motion Planning, Design, and Simulation The study of computation done by mechanical devices is also of central importance in providing lower bounds on the computational resources such as time and/or space required to simulate a mechanical system observing given physical laws. In particular, the problem of simulating the mechanical system can be shown to be computationally hard if a hard computational problem can be simulated by the mechanical system. A similar approach can be used to provide lower bounds on the computational resources required to solve various motion planning tasks that arise in the field of robotics. Typically, a robotic motion planning task is specified by a geometric description of the robot (or collection of robots) to be moved, its initial and final positions, the obstacles it is to avoid, as well as a model for the type of feasible motion and physical laws for the movement. The problem of planning such as robotic motion planning task can be shown to be computationally hard if a hard computational problem can be simulated by the robotic motion-planning task. II. Introduction to Computational Complexity Abstract Computing Machine Models. To gauge the computational power of a family of mechanical computers, we will use a widely known abstract computational model known as the Turing Machine, defined in this section. The Turing Machine. The Turing machine model formulated by Alan Turing [1] was the first complete mathematical model of an abstract computing machine that possessed universal computing power. The machine model has (i) a finite state transition control for
A Very Large Scale Robotic (VLSR) system may consist of from hundreds to perhaps tens of thousand... more A Very Large Scale Robotic (VLSR) system may consist of from hundreds to perhaps tens of thousands or more autonomous robots. The costs of robots are going down, and the robots are getting more compact, more capable, and more flexible. Hence, in the near future, we expect to see many industrial and military applications ofVLSR systems in tasks such as assembling, transporting, hazardous inspection, patrolling, uarding and attacking. In this paper, we propose anew approach for distributed autonomous control of VLSR systems. We define simple artificial force laws between pairs of robots or robot groups. The force laws are inverse-power force laws, incorporating both attraction and repulsion. The force laws can be distinct and to some degree they reflect he 'social relations ' among robots. Therefore we call our method social potential fields. An individual robot's motion is controlled by the resultant artificial force imposed by other obots and other components of the s...
llowing neighboring tiles in an assembly to associate by sticky ends on each side, one could incr... more llowing neighboring tiles in an assembly to associate by sticky ends on each side, one could increase the computational complexity of languages generated by linear self-assemblies. Surprisingly sophisticated calculations can be performed with singlelayer linear assemblies when contiguous strings of DNA trace through individual tiles and the entire assembly multiple times. In essence, a "string tile" is the collapse of a multilayer assembly into a simpler superstructure by allowing individual tiles to carry multiple segments of the reporter strands, thereby allowing an entire row of a truth table to be encoded within each individual tile. "String tile" arithmetic implementations have a number of advantageous properties. (i) Input and output strings assemble simultaneously. (ii) Each row in the truth table for the function being calculated is represented as a single tile type, where all input and output bits are encoded on that tile. Each pairwise operation is dire...
Given a univariate complex polynomial f(x) of degree n with rational coe cients expressed as a ra... more Given a univariate complex polynomial f(x) of degree n with rational coe cients expressed as a ratio of two integers < 2, the root problem is to nd all the roots of f(x) up to speci ed precision 2 . In this paper we assume the arithmetic model for computation. We give an improved algorithm for nding a well-isolated splitting interval and for fast root proximity veri cation. Using these results, we give an algorithm for the real root problem: where all the roots of the polynomial are real. Our real root algorithm has time cost of O(n log n(logn+ log b)); where b = m + . Our arithmetic time cost is thus O(n log n) even in the case of high precision b n. This is within a small polylog factor of optimality, thus (perhaps surprisingly) upper bounding the arithmetic complexity of the real root problem to nearly the same as basic arithmetic operations on polynomials. The symmetric tridiagonal problem is: given an n n symmetric tridiagonal matrix, with 3n nonzero rational entries each ex...
We were engaged in research in various areas of robotic movement planning. The movement planning ... more We were engaged in research in various areas of robotic movement planning. The movement planning problems investigated were static movement problems (where the obstacles do not move), minimum distance path planning, compliant motion control (which involves planning without complete knowledge of the position of the robot) and related frictional movement problems, motion planning with independently moving obstacles, and kinodynamic movement planning (where the dynamics are taken into account including driving forces and torque), motion planning within potential elds such as gravitational force potential elds and magnetic elds and pursuit movement games (which involve movement control planning with an adversary). Most of our e orts were involved in the latter problems which have been investigated less. This paper will present some of our lates results on these various problems. Also this paper will include some improved algorithms we developed for the fundamental algebraic and combinat...
This chapter overviews the current state of the emerging discipline of DNA nanorobotics that make... more This chapter overviews the current state of the emerging discipline of DNA nanorobotics that make use of synthetic DNA to self-assemble operational molecular-scale devices. Recently there have been a series of quite astonishing experimental results—which have taken the technology from a state of intriguing possibilities into demonstrated capabilities of quickly increasing scale and complexity. We first state the challenges in molecular robotics and discuss why DNA as a nanoconstruction material is ideally suited to overcome these. We then review the design and demonstration of a wide range of molecular-scale devices; from DNA nanomachines that change conformation in response to their environment to DNA walkers that can be programmed to walk along predefined paths on nanostructures while carrying cargo or performing computations, to tweezers that can repeatedly switch states. We conclude by listing major challenges in the field along with some possible future directions.
DNA computing 1 potentially provides a degree of parallelism far beyond that of conventional sili... more DNA computing 1 potentially provides a degree of parallelism far beyond that of conventional silicon-based computers. A number of researchers 2 have experimentally demonstrated DNA computing in solving instances of the satisfiability problems. Self-assembly of DNA nanostructures is theoretically an efficient method of executing parallel computation where information is encoded in DNA tiles and a large number of tiles can be self-assembled via sticky-end associations. Winfree et al. 3 have shown that representations of formal languages can be generated by self-assembly of branched DNA nanostructures and that 2-dimensional DNA selfassembly is Turing-universal (i.e. capable of universal computation). Mao et al. 4 experimentally implemented the first algorithmic DNA self-assembly which performed a logical computation (cumulative XOR), however that study only executed two computations on fixed inputs. To further explore the power of computing using DNA self-assembly, experimental demonst...
Developing a computer science agenda for high-performance computing
W e i d e n tify the following key problems faced by HPC software: (1) the large gap between HPC ... more W e i d e n tify the following key problems faced by HPC software: (1) the large gap between HPC design and implementation models in application development, (2) achieving high performance for a single application on di erent HPC platforms, and (3) accommodating constant c hanges in both problem speci cation and target architecture as computational methods and architectures evolve. To attack these problems, we suggest an applicationdevelopmentmethodology in which high-level architecture-independent speci cations are elaborated, through an iterative re nement process which i n troduces architectural detail, into a form which can be translated to e cient l o w-level architecture-speci c programming notations. A tree-structured development process permits multiple architectures to be targeted with implementation strategies appropriate to each architecture, and also provides a systematic means to accommodate changes in speci cation and target architecture. We describe the Proteus system, an application development system based on a wide-spectrum programming notation coupled with a notion of program re nement. This system supports the above d e v elopmentmethodologyvia: (1) the constructionof the speci cationand the successive designs in a uniform notation, which can be interpreted to provide early feedback on functionality and performance, (2) migration of the design towards speci c architectures using formal methods of program re nement, (3) techniques for performance assessment i n w h i c h the computational model varies with the level of re nement, and (4) the automatic translation of suitably re ned programs to low-level parallel virtual machine codes for e cient execution.
Molecular computing is computation done at the molecular scale. DNA computing is a class of molec... more Molecular computing is computation done at the molecular scale. DNA computing is a class of molecular computing that does computation by the use of reactions involving DNA molecules. DNA computing has been far the most successful (in scale and complexity of the computations and molecular assemblies done) of all known approaches to molecular computing, perhaps due in part to the very well established biotechnology and biochemistry on which its experimental demonstration relies, as well as the frequent teaming of scientists in the field with multiple essential disciplines including chemistry, biochemistry, physics, material science, and computer science. This chapter surveys the field of DNA computing. It begins with a discussion of underlying principles, including motivation for molecular and DNA computations, brief overviews of DNA structures, chemical reaction systems, DNA reactions, and classes of protocols and computations. Then, the chapter discusses potential applications of DN...
Quantum Computation (QC) is a type of computation where unitary and measurement operations are ex... more Quantum Computation (QC) is a type of computation where unitary and measurement operations are executed on linear superpositions of basis states. This paper provides a brief introduction to QC. We begin with a discussion of basic models for QC such as quantum TMs, quantum gates and circuits and related complexity results. We then discuss a number of topics in quantum information theory, including bounds for quantum communication and I/O complexity, methods for quantum data compression. and quantum error correction (that is, techniques for decreasing decoherence errors in QC), Furthermore, we enumerate a number of methodologies and technologies for doing QC. Finally, we discuss resource bounds for QC including bonds for processing time, energy and volume, particularly emphasizing challenges in determining volume bounds for observation apperatus. Reversible Computations are computations where each state transformation is a reversible function, so that any computation can be reversed w...
In this paper we present an approximation algorithm for solving the following optimal motion plan... more In this paper we present an approximation algorithm for solving the following optimal motion planning problem: Given a planar space composed of polygonal regions, each of which is associated with a positive unit weight, and two points s and t, nd a path from s to t with the minimum weight, where the weight of a path is de ned to be the weighted sum of the lengths of the sub-paths within each region. Some of the previous works on this problem involve constructing a discretization of the planar space and then computing the approximate paths in the discretized space. Discretizations used by these works include uniform and non-uniform discretizations. Our algorithm adopts discretizations proposed by previous work and presents improvement in computing optimal paths in the discretized space by using a \\discretized wavefront" method. Compared to the previous work, our algorithm has the following three advantages: (a) can compute exact solutions for a discrete case of this problem; (b)...
Self-assembly is the spontaneous self-ordering of substructures into superstructures driven by th... more Self-assembly is the spontaneous self-ordering of substructures into superstructures driven by the selective affinity of the substructures. DNA provides a molecular scale material for programmable self-assembly, using the selective affinity of pairs of DNA strands to form DNA nanostructures. DNA self-assembly is the most advanced and versatile system that has been experimentally demonstrated for programmable construction of patterned systems on the molecular scale. The methodology of DNA self-assembly begins with the synthesis of single-strand DNA molecules that self-assemble into macromolecular building blocks called DNA tiles. These tiles have sticky ends that match the sticky ends of other DNA tiles, facilitating further assembly into larger structures known as DNA tiling lattices. In principle, DNA tiling assemblies can form any computable two or three-dimensional pattern, however complex, with the appropriate choice of the tiles’ component DNA. Two-dimensional DNA tiling lattic...
In this paper, we describe a new approximation algorithm for the n-body problem. The algorithm is... more In this paper, we describe a new approximation algorithm for the n-body problem. The algorithm is a non-trivial modi cation of the fast multipole method that works in both two and three dimensions. Due to the equivalence between the two-dimensional n-body problem and Trummer's problem, our algorithm also gives the fastest known approximation algorithm for Trummer's problem. Let A be the sum of the absolute values of the particle charges in the n-body problem under consideration (or the sum of the masses if the simulation is gravitational). To approximate the particle potentials with error bound , we let p = dlog(A= )e and give complexity bounds in terms of p. Note that, under reasonable assumptions on the particle charges, if we desire the output to be accurate to b bits, then p = (b). In two dimensions, our algorithm runs in time O(n log p), which is a substantial improvement over the previous best algorithm which requires (np logp) time. We also apply our new algorithm to ...
Given an ensemble of n bodies in space whose interaction is governed by a potential function, the... more Given an ensemble of n bodies in space whose interaction is governed by a potential function, the N-body problem is to calculate the force on each body in the ensemble that results from its interaction with all other bodies. An efficient algorithm for this problem is critical in the simulation of molecular dynamics, turbulent fluid flow, intergalactic matter and other problems. The fast multipole algorithm (FMA) developed by Greengard approximates the solution with bounded error in time O(n ). For non-uniform distributions of bodies, an adaptive variation of the algorithm is required to maintain this time complexity. The parallel execution of the FMA poses complex implementation issues in the decomposition of the problem over processors to reduce communication. As a result the 3D Adaptive FMA has, to our knowledge, never been implemented on a scalable parallel computer. This paper describes several variations on the parallel adaptive 3D FMA algorithm that are expressed using the dat...
This paper provides a description of the recent evolution in the US of an emerging technology kno... more This paper provides a description of the recent evolution in the US of an emerging technology known as DNA Computation or more generally as Biomolecular Computation from its early stages to its development and extension into other areas such as nanotechnology, emerging as a viable sub-discipline of science and engineering. x
The regulation of cellular and molecular processes typically involves complex biochemical network... more The regulation of cellular and molecular processes typically involves complex biochemical networks. Synthetic nucleic acid reaction networks (both enzyme-based and enzyme-free) can be systematically designed to approximate sophisticated biochemical processes. However, most of the prior experimental protocols for reaction networks relied on either strand-displacement hybridization or restriction and exonuclease enzymatic reactions. These resulting synthetic systems usually suffer from either slow rates or leaky reactions. In this work, we propose an alternative architecture to implement arbitrary reaction networks, that is based entirely on strand-displacing polymerase reactions with non-overlapping I/O sequences. We first design a simple protocol that approximates arbitrary unimolecular and bimolecular reactions using polymerase strand displacement reactions. Then we use these fundamental reaction systems as modules to show three large-scale applications of our architecture, includi...
Theoretical models of localized DNA reactions on platforms indicate potential benefits to convent... more Theoretical models of localized DNA reactions on platforms indicate potential benefits to conventional DNA hybridization reactions. Recently locality has been proposed as a novel approach to speed up DNA hybridization reactions as well as to minimize incorrect binding among DNA sequences. Here we experimentally report evidence for a 169-fold speedup of localized DNA hybridization chain reactions in the system consisting of six DNA hairpin gates bound to a DNA track. Introduction DNA hybridization reactions have been wellstudied in the past decade and widely used to perform complex state changes and computation in DNA-based molecular computing.1–6 In most systems where DNA hybridization reactions are used for molecular computing, the reactants need to exist in low concentration (in the nano molar range) to avoid unwanted spurious bimolecular interactions. Hence diffusion of certain low concentration reactants generally plays an important factor in determination of the overall time fo...
The field of DNA computing has had many major breakthroughs since the early results of Adleman. R... more The field of DNA computing has had many major breakthroughs since the early results of Adleman. Recent DNA computing works have focused primarily on enzyme-free computing architectures i.e. DNA-only circuits and devices. The rationale behind engineering such systems is to have biologically simpler machines. This offers several benefits such as no dependency on temperature control systems. However, recently [36, 38] the use of the enzyme-based system is gaining momentum yet again. These systems also compute using strand displacement, similar to enzyme-free architectures. However, the strand displacement is facilitated with a polymerase enzyme. Such enzymatic use provides an alternative method for the design and development of such systems. In this work, we discuss two computing avenues, namely, DNA circuits and chemical reaction networks along with a section on methods and protocols describing how polymerase-based systems operate. We end this chapter with a brief discussion and futur...
Peng Yin, Hao Yan*, Xiaoju G. Daniell, Andrew J. Turberfield*, John H. Reif* [*] Prof H. Yan, Dep... more Peng Yin, Hao Yan*, Xiaoju G. Daniell, Andrew J. Turberfield*, John H. Reif* [*] Prof H. Yan, Department of Computer Science, Duke University Durham, NC 27708, USA Email: [email protected] [*] Prof A. J. Turberfield, University of Oxford, Department of Physics, Clarendon Laboratory Parks Road, Oxford OX1 3PU, UK Email: [email protected] [*] Prof J. H. Reif, Department of Computer Science, Duke University Durham, NC 27708, USA Email: [email protected] P. Yin, X. G. Daniell, Department of Computer Science, Duke University
Self-reconfigurable modular robots have an intriguingly flexible design, composing a single robot... more Self-reconfigurable modular robots have an intriguingly flexible design, composing a single robot with many small modules that can autonomously move to transform the robot’s shape and structure. Each module may only have limited processing and memory resources. This makes scaling to a large number of modules quite challenging. This paper introduces a novel distributed locomotion algorithm for lattice-style self-reconfigurable robots which uses constant memory per module with constant computation and constant communication for each attempted module movement. Our major contributions in this paper is motion planning for self-reconfigurable modular robotics that is (1) scalable, (2) speedy, and most importantly, (3) stable. Our algorithm guarantees physical stability in the presence of gravity. By utilizing some robot modules to create a static support structure, other modules are able to move freely through the interior of this structure with minimal path planning and without causing i...
I. Definition of the Subject and Its Importance Mechanical devices for computation appear to be l... more I. Definition of the Subject and Its Importance Mechanical devices for computation appear to be largely displaced by the widespread use of microprocessor-based that are pervading almost all aspects of our lives. Nevertheless, mechanical devices for computation are of interest for at least three reasons: (a) Historical: The use of mechanical devices for computation is of central importance in the historical study of technologies, with a history dating to thousands of years and with surprising applications even in relatively recent times. (b) Technical & Practical: The use of mechanical devices for computation persists and has not yet been completely displaced by widespread use of microprocessor-based computers. Mechanical computers have found applications in various emerging technologies at the micro-scale that combine mechanical functions with computational and control functions not feasible by purely electronic processing. Mechanical computers also have been demonstrated at the molecular scale, and may also provide unique capabilities at that scale. The physical designs for these modern micro and molecularscale mechanical computers may be based on the prior designs of the large-scale mechanical computers constructed in the past. (c) Impact of Physical Assumptions on Complexity of Motion Planning, Design, and Simulation The study of computation done by mechanical devices is also of central importance in providing lower bounds on the computational resources such as time and/or space required to simulate a mechanical system observing given physical laws. In particular, the problem of simulating the mechanical system can be shown to be computationally hard if a hard computational problem can be simulated by the mechanical system. A similar approach can be used to provide lower bounds on the computational resources required to solve various motion planning tasks that arise in the field of robotics. Typically, a robotic motion planning task is specified by a geometric description of the robot (or collection of robots) to be moved, its initial and final positions, the obstacles it is to avoid, as well as a model for the type of feasible motion and physical laws for the movement. The problem of planning such as robotic motion planning task can be shown to be computationally hard if a hard computational problem can be simulated by the robotic motion-planning task. II. Introduction to Computational Complexity Abstract Computing Machine Models. To gauge the computational power of a family of mechanical computers, we will use a widely known abstract computational model known as the Turing Machine, defined in this section. The Turing Machine. The Turing machine model formulated by Alan Turing [1] was the first complete mathematical model of an abstract computing machine that possessed universal computing power. The machine model has (i) a finite state transition control for
A Very Large Scale Robotic (VLSR) system may consist of from hundreds to perhaps tens of thousand... more A Very Large Scale Robotic (VLSR) system may consist of from hundreds to perhaps tens of thousands or more autonomous robots. The costs of robots are going down, and the robots are getting more compact, more capable, and more flexible. Hence, in the near future, we expect to see many industrial and military applications ofVLSR systems in tasks such as assembling, transporting, hazardous inspection, patrolling, uarding and attacking. In this paper, we propose anew approach for distributed autonomous control of VLSR systems. We define simple artificial force laws between pairs of robots or robot groups. The force laws are inverse-power force laws, incorporating both attraction and repulsion. The force laws can be distinct and to some degree they reflect he 'social relations ' among robots. Therefore we call our method social potential fields. An individual robot's motion is controlled by the resultant artificial force imposed by other obots and other components of the s...
llowing neighboring tiles in an assembly to associate by sticky ends on each side, one could incr... more llowing neighboring tiles in an assembly to associate by sticky ends on each side, one could increase the computational complexity of languages generated by linear self-assemblies. Surprisingly sophisticated calculations can be performed with singlelayer linear assemblies when contiguous strings of DNA trace through individual tiles and the entire assembly multiple times. In essence, a "string tile" is the collapse of a multilayer assembly into a simpler superstructure by allowing individual tiles to carry multiple segments of the reporter strands, thereby allowing an entire row of a truth table to be encoded within each individual tile. "String tile" arithmetic implementations have a number of advantageous properties. (i) Input and output strings assemble simultaneously. (ii) Each row in the truth table for the function being calculated is represented as a single tile type, where all input and output bits are encoded on that tile. Each pairwise operation is dire...
Given a univariate complex polynomial f(x) of degree n with rational coe cients expressed as a ra... more Given a univariate complex polynomial f(x) of degree n with rational coe cients expressed as a ratio of two integers < 2, the root problem is to nd all the roots of f(x) up to speci ed precision 2 . In this paper we assume the arithmetic model for computation. We give an improved algorithm for nding a well-isolated splitting interval and for fast root proximity veri cation. Using these results, we give an algorithm for the real root problem: where all the roots of the polynomial are real. Our real root algorithm has time cost of O(n log n(logn+ log b)); where b = m + . Our arithmetic time cost is thus O(n log n) even in the case of high precision b n. This is within a small polylog factor of optimality, thus (perhaps surprisingly) upper bounding the arithmetic complexity of the real root problem to nearly the same as basic arithmetic operations on polynomials. The symmetric tridiagonal problem is: given an n n symmetric tridiagonal matrix, with 3n nonzero rational entries each ex...
We were engaged in research in various areas of robotic movement planning. The movement planning ... more We were engaged in research in various areas of robotic movement planning. The movement planning problems investigated were static movement problems (where the obstacles do not move), minimum distance path planning, compliant motion control (which involves planning without complete knowledge of the position of the robot) and related frictional movement problems, motion planning with independently moving obstacles, and kinodynamic movement planning (where the dynamics are taken into account including driving forces and torque), motion planning within potential elds such as gravitational force potential elds and magnetic elds and pursuit movement games (which involve movement control planning with an adversary). Most of our e orts were involved in the latter problems which have been investigated less. This paper will present some of our lates results on these various problems. Also this paper will include some improved algorithms we developed for the fundamental algebraic and combinat...
This chapter overviews the current state of the emerging discipline of DNA nanorobotics that make... more This chapter overviews the current state of the emerging discipline of DNA nanorobotics that make use of synthetic DNA to self-assemble operational molecular-scale devices. Recently there have been a series of quite astonishing experimental results—which have taken the technology from a state of intriguing possibilities into demonstrated capabilities of quickly increasing scale and complexity. We first state the challenges in molecular robotics and discuss why DNA as a nanoconstruction material is ideally suited to overcome these. We then review the design and demonstration of a wide range of molecular-scale devices; from DNA nanomachines that change conformation in response to their environment to DNA walkers that can be programmed to walk along predefined paths on nanostructures while carrying cargo or performing computations, to tweezers that can repeatedly switch states. We conclude by listing major challenges in the field along with some possible future directions.
DNA computing 1 potentially provides a degree of parallelism far beyond that of conventional sili... more DNA computing 1 potentially provides a degree of parallelism far beyond that of conventional silicon-based computers. A number of researchers 2 have experimentally demonstrated DNA computing in solving instances of the satisfiability problems. Self-assembly of DNA nanostructures is theoretically an efficient method of executing parallel computation where information is encoded in DNA tiles and a large number of tiles can be self-assembled via sticky-end associations. Winfree et al. 3 have shown that representations of formal languages can be generated by self-assembly of branched DNA nanostructures and that 2-dimensional DNA selfassembly is Turing-universal (i.e. capable of universal computation). Mao et al. 4 experimentally implemented the first algorithmic DNA self-assembly which performed a logical computation (cumulative XOR), however that study only executed two computations on fixed inputs. To further explore the power of computing using DNA self-assembly, experimental demonst...
Developing a computer science agenda for high-performance computing
W e i d e n tify the following key problems faced by HPC software: (1) the large gap between HPC ... more W e i d e n tify the following key problems faced by HPC software: (1) the large gap between HPC design and implementation models in application development, (2) achieving high performance for a single application on di erent HPC platforms, and (3) accommodating constant c hanges in both problem speci cation and target architecture as computational methods and architectures evolve. To attack these problems, we suggest an applicationdevelopmentmethodology in which high-level architecture-independent speci cations are elaborated, through an iterative re nement process which i n troduces architectural detail, into a form which can be translated to e cient l o w-level architecture-speci c programming notations. A tree-structured development process permits multiple architectures to be targeted with implementation strategies appropriate to each architecture, and also provides a systematic means to accommodate changes in speci cation and target architecture. We describe the Proteus system, an application development system based on a wide-spectrum programming notation coupled with a notion of program re nement. This system supports the above d e v elopmentmethodologyvia: (1) the constructionof the speci cationand the successive designs in a uniform notation, which can be interpreted to provide early feedback on functionality and performance, (2) migration of the design towards speci c architectures using formal methods of program re nement, (3) techniques for performance assessment i n w h i c h the computational model varies with the level of re nement, and (4) the automatic translation of suitably re ned programs to low-level parallel virtual machine codes for e cient execution.
Molecular computing is computation done at the molecular scale. DNA computing is a class of molec... more Molecular computing is computation done at the molecular scale. DNA computing is a class of molecular computing that does computation by the use of reactions involving DNA molecules. DNA computing has been far the most successful (in scale and complexity of the computations and molecular assemblies done) of all known approaches to molecular computing, perhaps due in part to the very well established biotechnology and biochemistry on which its experimental demonstration relies, as well as the frequent teaming of scientists in the field with multiple essential disciplines including chemistry, biochemistry, physics, material science, and computer science. This chapter surveys the field of DNA computing. It begins with a discussion of underlying principles, including motivation for molecular and DNA computations, brief overviews of DNA structures, chemical reaction systems, DNA reactions, and classes of protocols and computations. Then, the chapter discusses potential applications of DN...
Quantum Computation (QC) is a type of computation where unitary and measurement operations are ex... more Quantum Computation (QC) is a type of computation where unitary and measurement operations are executed on linear superpositions of basis states. This paper provides a brief introduction to QC. We begin with a discussion of basic models for QC such as quantum TMs, quantum gates and circuits and related complexity results. We then discuss a number of topics in quantum information theory, including bounds for quantum communication and I/O complexity, methods for quantum data compression. and quantum error correction (that is, techniques for decreasing decoherence errors in QC), Furthermore, we enumerate a number of methodologies and technologies for doing QC. Finally, we discuss resource bounds for QC including bonds for processing time, energy and volume, particularly emphasizing challenges in determining volume bounds for observation apperatus. Reversible Computations are computations where each state transformation is a reversible function, so that any computation can be reversed w...
In this paper we present an approximation algorithm for solving the following optimal motion plan... more In this paper we present an approximation algorithm for solving the following optimal motion planning problem: Given a planar space composed of polygonal regions, each of which is associated with a positive unit weight, and two points s and t, nd a path from s to t with the minimum weight, where the weight of a path is de ned to be the weighted sum of the lengths of the sub-paths within each region. Some of the previous works on this problem involve constructing a discretization of the planar space and then computing the approximate paths in the discretized space. Discretizations used by these works include uniform and non-uniform discretizations. Our algorithm adopts discretizations proposed by previous work and presents improvement in computing optimal paths in the discretized space by using a \\discretized wavefront" method. Compared to the previous work, our algorithm has the following three advantages: (a) can compute exact solutions for a discrete case of this problem; (b)...
Self-assembly is the spontaneous self-ordering of substructures into superstructures driven by th... more Self-assembly is the spontaneous self-ordering of substructures into superstructures driven by the selective affinity of the substructures. DNA provides a molecular scale material for programmable self-assembly, using the selective affinity of pairs of DNA strands to form DNA nanostructures. DNA self-assembly is the most advanced and versatile system that has been experimentally demonstrated for programmable construction of patterned systems on the molecular scale. The methodology of DNA self-assembly begins with the synthesis of single-strand DNA molecules that self-assemble into macromolecular building blocks called DNA tiles. These tiles have sticky ends that match the sticky ends of other DNA tiles, facilitating further assembly into larger structures known as DNA tiling lattices. In principle, DNA tiling assemblies can form any computable two or three-dimensional pattern, however complex, with the appropriate choice of the tiles’ component DNA. Two-dimensional DNA tiling lattic...
In this paper, we describe a new approximation algorithm for the n-body problem. The algorithm is... more In this paper, we describe a new approximation algorithm for the n-body problem. The algorithm is a non-trivial modi cation of the fast multipole method that works in both two and three dimensions. Due to the equivalence between the two-dimensional n-body problem and Trummer's problem, our algorithm also gives the fastest known approximation algorithm for Trummer's problem. Let A be the sum of the absolute values of the particle charges in the n-body problem under consideration (or the sum of the masses if the simulation is gravitational). To approximate the particle potentials with error bound , we let p = dlog(A= )e and give complexity bounds in terms of p. Note that, under reasonable assumptions on the particle charges, if we desire the output to be accurate to b bits, then p = (b). In two dimensions, our algorithm runs in time O(n log p), which is a substantial improvement over the previous best algorithm which requires (np logp) time. We also apply our new algorithm to ...
Given an ensemble of n bodies in space whose interaction is governed by a potential function, the... more Given an ensemble of n bodies in space whose interaction is governed by a potential function, the N-body problem is to calculate the force on each body in the ensemble that results from its interaction with all other bodies. An efficient algorithm for this problem is critical in the simulation of molecular dynamics, turbulent fluid flow, intergalactic matter and other problems. The fast multipole algorithm (FMA) developed by Greengard approximates the solution with bounded error in time O(n ). For non-uniform distributions of bodies, an adaptive variation of the algorithm is required to maintain this time complexity. The parallel execution of the FMA poses complex implementation issues in the decomposition of the problem over processors to reduce communication. As a result the 3D Adaptive FMA has, to our knowledge, never been implemented on a scalable parallel computer. This paper describes several variations on the parallel adaptive 3D FMA algorithm that are expressed using the dat...
This paper provides a description of the recent evolution in the US of an emerging technology kno... more This paper provides a description of the recent evolution in the US of an emerging technology known as DNA Computation or more generally as Biomolecular Computation from its early stages to its development and extension into other areas such as nanotechnology, emerging as a viable sub-discipline of science and engineering. x
The regulation of cellular and molecular processes typically involves complex biochemical network... more The regulation of cellular and molecular processes typically involves complex biochemical networks. Synthetic nucleic acid reaction networks (both enzyme-based and enzyme-free) can be systematically designed to approximate sophisticated biochemical processes. However, most of the prior experimental protocols for reaction networks relied on either strand-displacement hybridization or restriction and exonuclease enzymatic reactions. These resulting synthetic systems usually suffer from either slow rates or leaky reactions. In this work, we propose an alternative architecture to implement arbitrary reaction networks, that is based entirely on strand-displacing polymerase reactions with non-overlapping I/O sequences. We first design a simple protocol that approximates arbitrary unimolecular and bimolecular reactions using polymerase strand displacement reactions. Then we use these fundamental reaction systems as modules to show three large-scale applications of our architecture, includi...
Theoretical models of localized DNA reactions on platforms indicate potential benefits to convent... more Theoretical models of localized DNA reactions on platforms indicate potential benefits to conventional DNA hybridization reactions. Recently locality has been proposed as a novel approach to speed up DNA hybridization reactions as well as to minimize incorrect binding among DNA sequences. Here we experimentally report evidence for a 169-fold speedup of localized DNA hybridization chain reactions in the system consisting of six DNA hairpin gates bound to a DNA track. Introduction DNA hybridization reactions have been wellstudied in the past decade and widely used to perform complex state changes and computation in DNA-based molecular computing.1–6 In most systems where DNA hybridization reactions are used for molecular computing, the reactants need to exist in low concentration (in the nano molar range) to avoid unwanted spurious bimolecular interactions. Hence diffusion of certain low concentration reactants generally plays an important factor in determination of the overall time fo...
The field of DNA computing has had many major breakthroughs since the early results of Adleman. R... more The field of DNA computing has had many major breakthroughs since the early results of Adleman. Recent DNA computing works have focused primarily on enzyme-free computing architectures i.e. DNA-only circuits and devices. The rationale behind engineering such systems is to have biologically simpler machines. This offers several benefits such as no dependency on temperature control systems. However, recently [36, 38] the use of the enzyme-based system is gaining momentum yet again. These systems also compute using strand displacement, similar to enzyme-free architectures. However, the strand displacement is facilitated with a polymerase enzyme. Such enzymatic use provides an alternative method for the design and development of such systems. In this work, we discuss two computing avenues, namely, DNA circuits and chemical reaction networks along with a section on methods and protocols describing how polymerase-based systems operate. We end this chapter with a brief discussion and futur...
Peng Yin, Hao Yan*, Xiaoju G. Daniell, Andrew J. Turberfield*, John H. Reif* [*] Prof H. Yan, Dep... more Peng Yin, Hao Yan*, Xiaoju G. Daniell, Andrew J. Turberfield*, John H. Reif* [*] Prof H. Yan, Department of Computer Science, Duke University Durham, NC 27708, USA Email: [email protected] [*] Prof A. J. Turberfield, University of Oxford, Department of Physics, Clarendon Laboratory Parks Road, Oxford OX1 3PU, UK Email: [email protected] [*] Prof J. H. Reif, Department of Computer Science, Duke University Durham, NC 27708, USA Email: [email protected] P. Yin, X. G. Daniell, Department of Computer Science, Duke University
Self-reconfigurable modular robots have an intriguingly flexible design, composing a single robot... more Self-reconfigurable modular robots have an intriguingly flexible design, composing a single robot with many small modules that can autonomously move to transform the robot’s shape and structure. Each module may only have limited processing and memory resources. This makes scaling to a large number of modules quite challenging. This paper introduces a novel distributed locomotion algorithm for lattice-style self-reconfigurable robots which uses constant memory per module with constant computation and constant communication for each attempted module movement. Our major contributions in this paper is motion planning for self-reconfigurable modular robotics that is (1) scalable, (2) speedy, and most importantly, (3) stable. Our algorithm guarantees physical stability in the presence of gravity. By utilizing some robot modules to create a static support structure, other modules are able to move freely through the interior of this structure with minimal path planning and without causing i...
Uploads
Papers by John Reif