Abstract

Digital computers store information in the form of bits that can take on one of two values 0 and 1, while quantum computers are based on qubits that are described by a complex wavefunction, whose squared magnitude gives the probability of measuring either 0 or 1. Here, we make the case for a probabilistic computer based on p-bits, which take on values 0 and 1 with controlled probabilities and can be implemented with specialized compact energy-efficient hardware. We propose a generic architecture for such p-computers and emulate systems with thousands of p-bits to show that they can significantly accelerate randomized algorithms used in a wide variety of applications including but not limited to Bayesian networks, optimization, Ising models, and quantum Monte Carlo.

Highlights

  • Feynman[1] famously remarked “Nature isn’t classical, dammit, and if you want to make a simulation of nature, you’d better make it quantum mechanical.” In the same spirit, we could say, “Many real life problems are not deterministic, and if you want to simulate them, you’d better make it probabilistic.” there is a difference

  • We propose a generic architecture for such p-computers and emulate systems with thousands of p-bits to show that they can significantly accelerate randomized algorithms used in a wide variety of applications including but not limited to Bayesian networks, optimization, Ising models, and quantum Monte Carlo

  • We argue that even with Np 1⁄4 1, this throughput is well in excess of what is achieved with standard implementations on either CPU or graphics processing unit (GPU) for a wide range of applications and algorithms including but not limited to those targeted by modern digital annealers or Ising solvers.[8,10,11,12,13,14,15,16,17]

Read more

Summary

INTRODUCTION

Feynman[1] famously remarked “Nature isn’t classical, dammit, and if you want to make a simulation of nature, you’d better make it quantum mechanical.” In the same spirit, we could say, “Many real life problems are not deterministic, and if you want to simulate them, you’d better make it probabilistic.” there is a difference. Probabilistic algorithms can be and are implemented on existing deterministic hardware using pseudo RNGs (random number generators). A key element in a Monte Carlo algorithm is the RNG, which requires thousands of transistors to implement with deterministic elements, encouraging the use of architectures that time share a few RNGs. Our work has shown the possibility of high quality true RNGs using just three transistors,[3] prompting us to explore a different architecture that makes use of large numbers of controlled-RNGs or p-bits. It can implement algorithms intended for quantum computers, though the effectiveness of quantum Monte Carlo depends strongly on the extent of the so-called sign problem specific to the algorithm and our ability to “tame” it.[19]

IMPLEMENTATION
Bayesian network
Knapsack problem
Ising model
Quantum Monte Carlo
Findings
CONCLUDING REMARKS
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call