3,142 research outputs found

    Tight Bounds for Active Self-Assembly Using an Insertion Primitive

    Full text link
    We prove two tight bounds on the behavior of a model of self-assembling particles introduced by Dabby and Chen (SODA 2013), called insertion systems, where monomers insert themselves into the middle of a growing linear polymer. First, we prove that the expressive power of these systems is equal to context-free grammars, answering a question posed by Dabby and Chen. Second, we prove that systems of kk monomer types can deterministically construct polymers of length n=2Θ(k3/2)n = 2^{\Theta(k^{3/2})} in O(log5/3(n))O(\log^{5/3}(n)) expected time, and that this is optimal in both the number of monomer types and expected time.Comment: To appear in Algorithmica. An abstract (12-page) version of this paper appeared in the proceedings of ESA 201

    Uniformity is weaker than semi-uniformity for some membrane systems

    Get PDF
    We investigate computing models that are presented as families of finite computing devices with a uniformity condition on the entire family. Examples of such models include Boolean circuits, membrane systems, DNA computers, chemical reaction networks and tile assembly systems, and there are many others. However, in such models there are actually two distinct kinds of uniformity condition. The first is the most common and well-understood, where each input length is mapped to a single computing device (e.g. a Boolean circuit) that computes on the finite set of inputs of that length. The second, called semi-uniformity, is where each input is mapped to a computing device for that input (e.g. a circuit with the input encoded as constants). The former notion is well-known and used in Boolean circuit complexity, while the latter notion is frequently found in literature on nature-inspired computation from the past 20 years or so. Are these two notions distinct? For many models it has been found that these notions are in fact the same, in the sense that the choice of uniformity or semi-uniformity leads to characterisations of the same complexity classes. In other related work, we showed that these notions are actually distinct for certain classes of Boolean circuits. Here, we give analogous results for membrane systems by showing that certain classes of uniform membrane systems are strictly weaker than the analogous semi-uniform classes. This solves a known open problem in the theory of membrane systems. We then go on to present results towards characterising the power of these semi-uniform and uniform membrane models in terms of NL and languages reducible to the unary languages in NL, respectively.Comment: 28 pages, 1 figur

    Turning Machines

    Get PDF
    Molecular robotics is challenging, so it seems best to keep it simple. We consider an abstract molecular robotics model based on simple folding instructions that execute asynchronously. Turning Machines are a simple 1D to 2D folding model, also easily generalisable to 2D to 3D folding. A Turning Machine starts out as a line of connected monomers in the discrete plane, each with an associated turning number. A monomer turns relative to its neighbours, executing a unit-distance translation that drags other monomers along with it, and through collective motion the initial set of monomers eventually folds into a programmed shape. We fully characterise the ability of Turning Machines to execute line rotations, and to do so efficiently: computing an almost-full line rotation of 5?/3 radians is possible, yet a full 2? rotation is impossible. We show that such line-rotations represent a fundamental primitive in the model, by using them to efficiently and asynchronously fold arbitrarily large zig-zag-rastered squares and y-monotone shapes

    Parallel Computation Using Active Self-assembly

    Get PDF
    We study the computational complexity of the recently proposed nubots model of molecular-scale self-assembly. The model generalizes asynchronous cellular automaton to have non-local movement where large assemblies of molecules can be moved around, analogous to millions of molecular motors in animal muscle effecting the rapid movement of large arms and legs. We show that nubots is capable of simulating Boolean circuits of polylogarithmic depth and polynomial size, in only polylogarithmic expected time. In computational complexity terms, any problem from the complexity class NC is solved in polylogarithmic expected time on nubots that use a polynomial amount of workspace. Along the way, we give fast parallel algorithms for a number of problems including line growth, sorting, Boolean matrix multiplication and space-bounded Turing machine simulation, all using a constant number of nubot states (monomer types). Circuit depth is a well-studied notion of parallel time, and our result implies that nubots is a highly parallel model of computation in a formal sense. Thus, adding a movement primitive to an asynchronous non-deterministic cellular automation, as in nubots, drastically increases its parallel processing abilities

    AMP-CAD: Automatic Assembly Motion Planning Using C AD Models of Parts

    Get PDF
    Assembly with robots involves two kinds of motions, those that are point-to-point and those that are force/torque guided, the former kind of motions being faster and more amenable to automatic planning and the latter kind being necessary for dealing with tight clearances. In this paper, we describe an assembly motion planning system that uses descriptions of assemblies and CAD models of parts to automatically figure out which motions should be point-to-point and which motions should be force/torque guided. Our planner uses graph search over a potential field representation of parts to calculate candidate assembly paths. Given the tolerances of the parts and other uncertainties, these paths are then analyzed for the likelihood of collisions. Those path segments that are prone to collisions are then marked for execution under force/torque control. The calculation of the various motions is facilitated by an object-oriented and feature-based assembly representation. A highlight of this representation is the manner in which tolerance information is taken into account: Representation of, say, a part contains a pointer to the boundary representation of the part in its most material condition form. As first defined by Requicha, the most material condition form of a geometric entity is obtained by expanding all the convexities and shrinking all the concavities by relevant tolerances. An integral part of the assembly motion planner is the execution unit. Residing in this unit is knowledge of the different types of automatic EDR (error detection and recovery) strategies. Therefore, during the execution of the force/torque guided motion, this unit invokes the EDR strategies appropriate to the geometric constraints relevant to the motion. This system, called AMP-CAD, has been experimentally verified using a Cincinnati Milacron T3-726 robot and a Puma 762 robot on a variety of assemblies

    CONFLLVM: A Compiler for Enforcing Data Confidentiality in Low-Level Code

    Full text link
    We present an instrumenting compiler for enforcing data confidentiality in low-level applications (e.g. those written in C) in the presence of an active adversary. In our approach, the programmer marks secret data by writing lightweight annotations on top-level definitions in the source code. The compiler then uses a static flow analysis coupled with efficient runtime instrumentation, a custom memory layout, and custom control-flow integrity checks to prevent data leaks even in the presence of low-level attacks. We have implemented our scheme as part of the LLVM compiler. We evaluate it on the SPEC micro-benchmarks for performance, and on larger, real-world applications (including OpenLDAP, which is around 300KLoC) for programmer overhead required to restructure the application when protecting the sensitive data such as passwords. We find that performance overheads introduced by our instrumentation are moderate (average 12% on SPEC), and the programmer effort to port OpenLDAP is only about 160 LoC.Comment: Technical report for CONFLLVM: A Compiler for Enforcing Data Confidentiality in Low-Level Code, appearing at EuroSys 201

    Knowledge representation into Ada parallel processing

    Get PDF
    The Knowledge Representation into Ada Parallel Processing project is a joint NASA and Air Force funded project to demonstrate the execution of intelligent systems in Ada on the Charles Stark Draper Laboratory fault-tolerant parallel processor (FTPP). Two applications were demonstrated - a portion of the adaptive tactical navigator and a real time controller. Both systems are implemented as Activation Framework Objects on the Activation Framework intelligent scheduling mechanism developed by Worcester Polytechnic Institute. The implementations, results of performance analyses showing speedup due to parallelism and initial efficiency improvements are detailed and further areas for performance improvements are suggested
    corecore