prototype-qrao icon indicating copy to clipboard operation
prototype-qrao copied to clipboard

Create 03_evaluating_performance.ipynb

Open areeq-hasan opened this issue 2 years ago • 3 comments

Summary

In this notebook, we evaluate the performance of QRAO by determining how closely it approximates the exact solution to MaxCut for 100 random 3-regular graphs. We also compare the performance of QRAO used with two different rounding schemes. In the process, we reproduce the main results of the paper (i.e. Fig. 1).

Details and comments

Running the magic rounding QRAO for a 40-node graph instance takes a while on my machine, so I've set the quantum instance that performs magic rounding to only do 1 shot. We can adjust this easily if necessary. Adding a section to the notebook that analyzes magic rounding QRAO performance (both approximation ratio and execution time) as a function of the number of shots of the rounding quantum instance could be also be interesting.

areeq-hasan avatar May 31 '22 12:05 areeq-hasan

Preview here

garrison avatar Jun 02 '22 20:06 garrison

This looks pretty good already.

After reviewing the Diátaxis framework's distinction between tutorials and how-to guides, I actually now think this should be placed in the how-tos directory. (I was unsure where it belonged before reading this.)

The other important thing to get a handle on is the performance, so that we can continue to regularly run all notebooks as integration tests (using treon). I'm beginning to investigate this.

garrison avatar Jun 07 '22 14:06 garrison

I mentioned in #21:

We will probably begin by parameterizing the various basis rotations, so that a single circuit can be sent to the primitives, along with various parameter sets.

One might reasonably hypothesize that repeatedly constructing the circuits takes more time than actually running them on the simulator. If so, then parametrizing the circuits might allow us to get many more shots than 1 (as this notebook uses currently) without much additional cost, as we would only have to generate the circuit once, regardless of number of shots. It would be interesting to evaluate whether my hypothesis is indeed correct (i.e., the relevant time spent generating the circuits vs. simulating them).

garrison avatar Jun 24 '22 20:06 garrison