-
Notifications
You must be signed in to change notification settings - Fork 66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
added QUBO tutorial #406
added QUBO tutorial #406
Conversation
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"We can then plot the obtained cordinates in a Register using:" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
coordinates
tutorials/applications/QAOA and QAA to solve a QUBO problem.ipynb
Outdated
Show resolved
Hide resolved
"source": [ | ||
"This algorithm (see [Farhi, et al., 2014](https://arxiv.org/pdf/1411.4028.pdf)) has gained a lot of traction lately as a gate-based quantum algorithm. It has shown promising results in a number of applications and yields decent results for low-depth circuits.\n", | ||
"\n", | ||
"All atoms are initially in the groundstate $|00\\dots0\\rangle$ of the `ground-rydberg` basis. We then apply $p$ layers of alternating non-commutative Hamiltonians. The first one, called the mixing Hamiltonian $H_M$, is realized by taking $\\Omega = 1$ rad/µs, and $\\delta = 0$ rad/µs in the Hamiltonian equation. The second Hamiltonian $H_Q$ is realized with $\\Omega =0$ rad/µs and $\\delta = 1.$ rad/µs. $H_M$ and $H_Q$ are applied turn in turn with parameters $\\tau$ and $t$ respectively. A classical optimizer is then used to estimate the optimal parameters. \n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You may say a word about the impact of diagonal values all being equal to 10.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't forget to check this point too. ;)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I want to add a word about diagonal values; otherwise I would also have to give an explanation for the origin of all values (non-diagonal ones too). I prefer leaving it as "given the following qubo". If you have a sentence in mind we can think about it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Diagonal values all being identical is a special case I think, because it makes full sense to use a global pulse with the same Rabi frequency on all qubits, but that's up to you of course.
…to_qubo merge with upstream develop
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"We define `func` in order to do the minimization." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something a bit more comprehensive would most likely help the reader to understand the function and its arguments. For example:
‶To perform a minimization loop, we define the following function that will be called at each step by SciPy. *args
enables to pass the QUBO value, and params
contains the trial value to score, which changes at each step.″
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added the sentence
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you create a commit that you forgot to push? I cannot see any change on the PR. :)
"source": [ | ||
"This algorithm (see [Farhi, et al., 2014](https://arxiv.org/pdf/1411.4028.pdf)) has gained a lot of traction lately as a gate-based quantum algorithm. It has shown promising results in a number of applications and yields decent results for low-depth circuits.\n", | ||
"\n", | ||
"All atoms are initially in the groundstate $|00\\dots0\\rangle$ of the `ground-rydberg` basis. We then apply $p$ layers of alternating non-commutative Hamiltonians. The first one, called the mixing Hamiltonian $H_M$, is realized by taking $\\Omega = 1$ rad/µs, and $\\delta = 0$ rad/µs in the Hamiltonian equation. The second Hamiltonian $H_Q$ is realized with $\\Omega =0$ rad/µs and $\\delta = 1.$ rad/µs. $H_M$ and $H_Q$ are applied turn in turn with parameters $\\tau$ and $t$ respectively. A classical optimizer is then used to estimate the optimal parameters. \n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't forget to check this point too. ;)
…to_qubo get rid of swap file
…to_qubo merged with develop
Added the QUBO tutorial