At Quantum Zeitgeist we enjoy looking under the hood of start-up’s and companies doing very innovate things in the quantum space. We talk to the founders of MemComputing which offers a new paradigm of computing which moves away from von Neumann architecture. We talk about their technology, solving hard problems, what they are working on and what the future brings.
MemComputing is often referred to as MemCPU for brevity and is also the name of their key product.
QZ: Please tell us your genesis story. How you began, and why? Tell us a little about the team and their background.
MemCPU: First of all, thank you for the opportunity to share our story and information on MemComputing. The story begins at UC San Diego, where Ph.D. Physicists Fabio Traversa and Massimilano Di Ventra joined forces in 2012 to explore unconventional computing methods. Their motivation was to overcome the von Neumann Bottleneck. They explored the concept of computational memory, first developing Dynamic Computing RAM (DC-RAM). DC-RAM is useful in streamlining things like image processing. While powerful, DC-RAM wasn’t everything they wanted. They continued their pursuit and came up with MemComputing. MemComputing is an entirely new computer architecture for real-time computing. Ultimately we will build ASIC’s however, the architecture is so efficient that emulated in software, it is already orders of magnitude faster than the conventional state of the art methods.
I [John Beane] joined UC San Diego as an Entrepreneur in Residence in 2016. I met with Max and Fabio, where they walked me through the technology. It gave me chills when I thought about the capabilities and import that this represented. We continued to meet and discuss the technology and decided to found MemComputing, Inc. together and commercialize the technology.
“MemComputing overcomes the von Neumann bottleneck”
MemComputing in a Oneliner
QZ: What is your mission?
MemCPU: Our mission is to commercialize the technology. Our approach is to crawl, walk, run, and then fly. We began crawling in 2019 when we released our Virtual MemComputing Machine (VMM) as a cloud-based Software as a Service model. We’ll walk next year when we release the VMM as a library that can be integrated into virtually any system and run on-premises or at the edge. Running is when we release our first MemCPU™ Integrated Circuit, which should be in 2022. We plan to release a series of ASICs after that point, and that will be flying.
We have a nice whiteboard video that talks about how we are applying our technology that may be helpful here
QZ: You state that this is the only ”The first and only non-quantum solution proven to deliver the performance of quantum computing today,” which is an amazing statement as we see companies like IBM, Google etc. put vast resources into QC. Can you give some examples of processes that have been sped up with your technology?
MemCPU: Sure. When we first got started, we engaged the San Diego Supercomputer Center to analyze a prototype¸ and keep in mind the prototype was emulated entirely in software. The related paper documents the results, showing that MemComputing overcame the exponential nature of many NP-hard problems. One particular problem was estimated to require beyond the age of the universe, and our prototype solved it in an hour and a half.
In 2019, we applied to the Airbus Quantum Computing Challenge and used MemComputing to solve their problem associated with the optimal loading of cargo on an aircraft. We solved the problem at scale. We submitted our paper to the challenge, but they rejected it because it did not use Quantum Computing. We thought that Airbus might be interested in the technology just the same, but unfortunately, we haven’t heard back.
Separate from that, the industries where we are finding the earliest adopters are Transportation Logistics and Oil & Gas. Another example, captured in a case study available on our website, describes an NP-Hard problem presented to us by the Port of Singapore. In production, at full scale, the compute time using current methods is estimated to take thirteen billion years. Our Virtual MemComputing Machine solves this problem in less than one minute. It seems hard to believe, but it is true. The results aren’t always as dramatic for all the problems that we face, but in virtually every case, we reduce the compute time from by orders of magnitude.
QZ: Can you explain what happens “under the hood”? In terms of algorithms, processes, and tools. The non-von Neumann architecture that you use is a real break from tradition. Can you explain a bit more in simple terms how your architecture works? I.e., Computational Memory.
MemCPU: I’ll certainly try. First, understand, there are no algorithms, processes, or tools. Under the hood, MemComputing is an electronic circuit. When you dive down to the logic circuit level, we replace standard logic gates with what we call Self-Organizing Logic Gates or SOLGs. The gates are designed with internal processing and logic and allow I/O through any terminal. MemComputing gates are bi-directional compared to standard gates, which only work in one direction. The SOLGs work asynchronously to solve a problem and essentially negotiate with each other by sending signals to adjust voltages to satisfy the logic functions of the gate. These asynchronous, bi-directional signals live at the edge of chaos but stay under control due to Kirchoff’s circuit laws. The SOLGs feel the changes in the circuit regardless of the distance between/among the circuits, which, of course, is the physics of spatial non-locality.
QZ: Who can typically get performance enhancements? How easy is it to implement into most workflows?
MemCPU: We released our cloud accessible VMM in 2019. It focuses on solving optimization problems formulated as Integer Linear Programming (ILP) problems. ILP is among the most widely used methodologies for solving optimization problems in industry. The VMM is free to use for evaluation; simply register on our website.
Once logged in, you create a “job” and upload your ILP problem. We also have an API that makes it easy to integrate/automate. But it is simple to test by hand.
The types of problems most commonly addressed by our clients are routing, scheduling, and analytics. However, we have had some perform computational chemistry problems and even protein folding.
QZ: There is growing interest in Quantum Computing, can MemComputing provide some of the purported benefits that quantum isn’t able to address right now?
MemCPU: We see Quantum Computing applied to many optimization problems, which is our focus area today, as I mentioned. MemComputing, through our VMM, deals with these problems at scale.
Note that we have a professional services team that will work with clients. We can help them formulate their problems in ILP or provide the formulations for them. We also support QUBO problems natively. That functionality hasn’t been released on our VMM yet. However, there are methods to convert QUBO to ILP, and again we can help with that.
QZ: How do you see the future of Quantum Computing? I appreciate you are quantum inspired and not directly quantum. Are there any direct parallels you can exploit between the developments in QC and what MemComputing does?
MemCPU: Certainly, there are some parallels. Both methodologies exploit the collective state of the system to perform computations. Universal quantum computers exploit this through fully entangled qubits. For MemComputing, the collective state of the interconnected SOLGs performs the computation.
Another opportunity would be developing a hybrid model that takes advantage of both MemComputing and Quantum Computing. For instance, I don’t think I can mention who, but we were contacted by a well-regarded QC software company that is creating a hybrid model between classical computing and QC. They have an account on our VMM, and we’ve offered to support their efforts, so perhaps we will see some hybrid options in the future.
QZ: Is there any cross over with neural networks or deep learning? How should people think about MemComputing? Any simple analogies?
MemCPU: Actually, the neural networks that Hopfield and Chua developed in the 1980s have some resemblance to MemComputing. At the time, they were using analog computation and neuroscience concepts in a bottom-up approach. The idea was to create some artificial neurons and use them for computation.
Today’s neural networks are a different concept altogether. They are very powerful nonlinear approximators of complex multi-dimensional functions whose behavior is determined utilizing a broad set of “learning” parameters evaluated through training methods. This approach is still bottom-up.
MemComputing, on the other hand, is a top-down approach. We start by encoding the mathematics of the problem to solve and design digital circuits representing the mathematics exactly. The dynamics of our circuits through non-locality and the collective state plays a fundamental role, as discussed previously.
QZ: The usefulness debate of Quantum Computing rages on, and it appears that there are certain specialized problems that can be more efficiently solved, such as Shor’s, HHL, and Grover, for example, but most classical computations often have no quantum equivalent that would mean they offer any advantage. For our more technical readers, can you say something about the type of problems that can be solved more efficiently with MemComputing?
MemCPU: We’ve talked a lot about our VMM. Our MemCPU chips will focus on efficiently solving linear systems, which, of course, relates directly to HHL. Solving a linear system will require a single MemCPU cycle (microseconds), regardless of the matrix size. Our first Chip is likely to address matrix inversion specifically.
QZ: Delving into the guts of the problems and the MemComputing stack, which seems to be at heart an NTM (Non-Deterministic Turing Machine), which has been compared to Quantum Computers. Could NTM’s and thus MemComputing offer advantages to solving some problems that cannot be solved with Quantum Computing?
MemCPU: In ideal terms, NTMs solve NP-complete problems in P-time. An ideal or Universal MemComputing Machine (UMM) is equivalent to an NTM, and therefore, in principle, a UMM can solve NP-complete problems efficiently.
Today we offer a Virtual MemComputing Machine. A VMM is an approximation of a UMM. A VMM emulates a system (a UMM) that lives at the edge of chaos and exploits long-range correlations to perform computation. The VMM lives on top of a Turing Machine, and it is hard to say if the Turing Machine that is emulating the UMM is doing a “good job.” However, in practice, our VMM is an exceptional tool to solve combinatorial optimization problems providing unprecedented performance and able to solve previously intractable computational problems. There are specific characteristics related to the formulation of NP-Hard problems where our VMM performs exceptionally well. If a client finds that their particular formulation is not converging quickly, we can work with them to reformulate the problem to take full advantage of the VMM.
QZ: New computing paradigms have attracted criticisms. And whilst QC is a growing field, is there a danger that MemComputing is a lone voice? What do you say to naysayers?
MemCPU: Like any groundbreaking technology, we experience our fair share of naysayers. However, that is why we have made our Virtual MemComputing Machine available on the cloud as a Software as a Service solution that is free to use for evaluation purposes. We welcome companies and institutions to test their benchmarks against our technology and form their own opinion.
QZ: What is the future of MemComputing? What is on the radar? Any sectors or use cases you want to push into?
MemCPU: We continue to push forward and build awareness. For instance, last year, we won a spot in the USAF Space Catalyst Accelerator program. Since then, we completed an SBIR Phase I with the Air Force and have just applied for a Phase II award. If awarded, we will develop a prototype solution related to the Automated Tracking of Moving Targets from space. Our VMM is a software emulation; thus, it is technically possible to upload it to satellites already in space, significantly improving their compute performance. Talk about edge computing!
QZ: At the moment, I understand it is fully software, but in the future, hardware will be coming. How can people try out the service?
MemCPU: As mentioned, our VMM is free to use for evaluation. The registration link is on our website. If you just want to learn more about MemComputing, go to the website and check out all of the scientific papers, white papers, and case studies on there. If you have questions, please feel free to reach out to us at info@memcpu.com
Thank you John Beane for being the conduit for the interview! We really enjoyed learning about MemComputing.