Memcomputing NP-complete problems in polynomial time using polynomial resources and collective states

Demonstration of computing with memory points to a new route for solving hard problems faster. Memcomputing is a novel non-Turing paradigm of computation that uses interacting memory cells (memprocessors for short) to store and process information on the same physical platform. It was recently proven mathematically that memcomputing machines have the same computational power of nondeterministic Turing machines. Therefore, they can solve NP-complete problems in polynomial time and, using the appropriate architecture, with resources that only grow polynomially with the input size. The reason for this computational power stems from properties inspired by the brain and shared by any universal memcomputing machine, in particular intrinsic parallelism and information overhead, namely, the capability of compressing information in the collective state of the memprocessor network. We show an experimental demonstration of an actual memcomputing architecture that solves the NP-complete version of the subset sum problem in only one step and is composed of a number of memprocessors that scales linearly with the size of the problem. We have fabricated this architecture using standard microelectronic technology so that it can be easily realized in any laboratory setting. Although the particular machine presented here is eventually limited by noise—and will thus require error-correcting codes to scale to an arbitrary number of memprocessors—it represents the first proof of concept of a machine capable of working with the collective state of interacting memory cells, unlike the present-day single-state machines built using the von Neumann architecture.

[1]  J. Webster,et al.  Wiley Encyclopedia of Electrical and Electronics Engineering , 2010 .

[2]  D. M. Hutton,et al.  The Essential Turing , 2007 .

[3]  Byung-Gyu Chae,et al.  Memory Metamaterials , 2009, Science.

[4]  Sanjeev Arora,et al.  Computational Complexity: A Modern Approach , 2009 .

[5]  Fabrizio Bonani,et al.  Harmonic Balance Simulation and Analysis , 2014 .

[6]  Thomas J. Naughton,et al.  Photonic neural networks , 2012, Nature Physics.

[7]  G. Goertzel An Algorithm for the Evaluation of Finite Trigonometric Series , 1958 .

[8]  Massimiliano Di Ventra,et al.  The parallel approach , 2013 .

[9]  Fabrizio Bonani,et al.  Dynamic computing random access memory , 2013, Nanotechnology.

[10]  R. Waser,et al.  Nanoionics-based resistive switching memories. , 2007, Nature materials.

[11]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[12]  D. Stewart,et al.  The missing memristor found , 2008, Nature.

[13]  Richard M. Karp,et al.  Reducibility Among Combinatorial Problems , 1972, 50 Years of Integer Programming.

[14]  J. Grollier,et al.  A ferroelectric memristor. , 2012, Nature materials.

[15]  Mihai Oltean,et al.  Solving the Hamiltonian path problem with a light-based computer , 2007, Natural Computing.

[16]  L M Adleman,et al.  Molecular computation of solutions to combinatorial problems. , 1994, Science.

[17]  Z. Ezziane DNA computing: applications and challenges , 2006 .

[18]  Peter W. Shor,et al.  Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer , 1995, SIAM Rev..

[19]  Tien D. Kieu,et al.  Quantum Algorithm for Hilbert's Tenth Problem , 2001, ArXiv.

[20]  Dean Kelley Joint review of algorithms by Richard Johnsonbaugh and Marcus Schaefer (Pearson/Prentice-Hall, 004) and algorithms by Sanjoy Dasgupta, Christos Papadimitriou and Umesh Vazirani (McGraw-Hill, 008) , 2009, SIGA.

[21]  A. M. Turing,et al.  The Essential Turing: Seminal Writings in Computing, Logic, Philosophy, Artificial Intelligence, and Artificial Life plus The Secrets of Enigma , 2004 .

[22]  P. Gács,et al.  Algorithms , 1992 .

[23]  Klaudia Frankfurter Computers And Intractability A Guide To The Theory Of Np Completeness , 2016 .

[24]  David A. Patterson,et al.  Computer Architecture, Fifth Edition: A Quantitative Approach , 2011 .

[25]  P. Mc Crory,et al.  Collaborative development , 2011, BDJ.

[26]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[27]  Jain-Shing Wu,et al.  RFID Applications and Challenges , 2013 .

[28]  W. D. Hershberger,et al.  Principles of communication systems , 1955 .

[29]  Nikolay I. Zheludev,et al.  An optical fiber network oracle for NP-complete problems , 2014, Light: Science & Applications.

[30]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[31]  Fabio L. Traversa,et al.  Universal Memcomputing Machines , 2014, IEEE Transactions on Neural Networks and Learning Systems.

[32]  A. Church Review: A. M. Turing, On Computable Numbers, with an Application to the Entscheidungsproblem , 1937 .

[33]  C. E. SHANNON,et al.  A mathematical theory of communication , 1948, MOCO.

[34]  Bing J. Sheu,et al.  Photonic Neural Networks , 1995 .

[35]  Thierry Paul,et al.  Quantum computation and quantum information , 2007, Mathematical Structures in Computer Science.