This notebook explains and demonstrates the reverse-anneal feature.
Reverse annealing is a technique that makes it possible to refine known good local solutions, thereby increasing performance for certain applications. It comprises (1) annealing backward from a known classical state to a mid-anneal state of quantum superposition, (2) searching for optimum solutions at this mid-anneal point while in the presence of an increased transverse field (quantum state), and then (3) proceeding forward to a new classical state at the end of the anneal.
The notebook has the following sections:
- The Reverse Anneal Feature explains the feature and its parameters.
- Using the Reverse Anneal Feature demonstrates the use of the feature on a random example problem.
- Analysis on a 16-Bit Problem uses reverse annealing on a known problem and compares the results with other anneal methods.
- Modulating the Reverse-Annealing Parameters provides code that lets you sweep through various anneal schedules to explore the effect on results.
You can run this example without installation in cloud-based IDEs that support the Development Containers specification (aka "devcontainers").
For development environments that do not support devcontainers
, install
requirements:
pip install -r requirements.txt
If you are cloning the repo to your local system, working in a virtual environment is recommended.
Your development environment should be configured to access Leap’s Solvers. You can see information about supported IDEs and authorizing access to your Leap account here.
The notebook can be opened by clicking on the
01-reverse-annealing.ipynb
file in VS Code-based IDEs.
To run a locally installed notebook:
jupyter notebook
See LICENSE file.