RT Journal Article
SR Electronic
T1 Memcomputing *NP*-complete problems in polynomial time using polynomial resources and collective states
JF Science Advances
JO Sci Adv
FD American Association for the Advancement of Science
SP e1500031
DO 10.1126/sciadv.1500031
VO 1
IS 6
A1 Traversa, Fabio Lorenzo
A1 Ramella, Chiara
A1 Bonani, Fabrizio
A1 Di Ventra, Massimiliano
YR 2015
UL http://advances.sciencemag.org/content/1/6/e1500031.abstract
AB 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.