Boson-Sampling is a fancy sounding quantum optics experiment that may be thought of as a pachinko (or plinko for you Price is Right fans) parlor game for photons, as well as being a non-universal quantum computer (we'll get to this in a bit). One has a number of input modes m into which a number of photons n are inserted and then interact with (m*(m-1)/2) beam splitters, which in the pachinko analogy are the pins the marbles bounce off of and may go in one direction or another. In Boson-Sampling, we'd like to discover the probability distribution for where the n photons may wind up at the output modes.
The challenging feature of Boson-Sampling, as pointed out by creators Scott Aaranson and Alex Arkhipov [1], is that calculating the probability distributions of various outcomes of the experiment becomes classically intractable for large values of m and n. This is because the Hilbert space of the experiment grows due to photon path-entanglement as:
As well as the fact that Bosons have complex probability amplitudes in their interactions with beam splitters. It was shown by Scheel [2] that boson probability amplitudes are actually related to matrix permanents, a problem known to be #P-complete.
This is why Boson Sampling is interesting -- It is a relatively simple experiment where a quantum system can do something a classical system cannot (even if there is no currently known killer application for doing so).
The goal of this project is to explore the ways in which Deep Learning may or may not be useful for efficiently (and accurately!) exploring the properties of Boson-Sampling. In particular, we begin with using the Strawberry Fields library from Xanadu to create suitable machine learning training sets here. Our aim is to create a generalized format for quickly generating data from various boson sampling configurations which will then be used to train generative ML models with Tensorflow.
The first experiment is to train a relatively simple densely connected neural network to predict various Boson-Sampling configurations and their possible outcomes, and to do so faster than can be calculated with Strawberry Fields in a brute force appraoch.
We then turn to creating Autoencoder models to do the same.
Lastly, we create Boson-Sampling GANs that generate their own initial configurations and then determine what their probability distributions look like.
Note: This is very much a work in progress :)
[1] S. Aaronson and A. Arkhipov. The computational complexity of linear optics. Theory of Computing, 9 (4):143–252, 2013.
[2] Stefan Scheel. Permanents in linear optical networks. 2004. quant-ph/0508189.