qiskit-camp-asia-19 icon indicating copy to clipboard operation
qiskit-camp-asia-19 copied to clipboard

New classical optimizer for VQE of Aqua

Open t-imamichi opened this issue 5 years ago • 18 comments

Abstract

Variational quantum eigensolver (VQE) is a hybrid quantum algorithm to find the ground state of an input Hamiltonian. There are several classical optimizer available in Qiskit Aqua such as SPSA and Cobyla. See the full list.

Let's implement more optimizers for VQE of Aqua. There are a couples of options as follows.

Description

Members

  • @githubhandle
  • @githubhandle - Slack: @slackhandle email: [email protected]
  • Qiskit Coach: @t-imamichi

Deliverable

  • Aqua PR https://github.com/Qiskit/qiskit-aqua

GitHub repo

t-imamichi avatar Nov 14 '19 09:11 t-imamichi

What about using Annealing? Like we have Dual Annealing in Classical Approach (Python), is it possible to add Quantum Annealing in Qiskit. For example, In random unitary decomposition, it would be good to have Quantum Annealing for optimization.

Rahps97 avatar Nov 18 '19 19:11 Rahps97

I'd like to join this project!, Ken M. Nakanishi, Physics & Computer Science

ken-nakanishi avatar Nov 19 '19 00:11 ken-nakanishi

I (Yuya Nakagawa, Physics) am also interested in the project, especially for the paper "Sequential minimal optimization for quantum-classical hybrid algorithms"

Yuya-O-Nakagawa avatar Nov 19 '19 00:11 Yuya-O-Nakagawa

Great idea! (Youyuan Zhang, Quantum Chemistry, Physics)

YouyuanS avatar Nov 19 '19 00:11 YouyuanS

Hi, I am Chii-Chang Chen, Professor in Department of Optics and Photonics, National Central University in Taiwan. I am interested to your algorithm optimization of VQE.

trichdop avatar Nov 19 '19 01:11 trichdop

The table is in the middle line.

t-imamichi avatar Nov 19 '19 01:11 t-imamichi

tutorials https://nbviewer.jupyter.org/github/Qiskit/qiskit-iqx-tutorials/blob/master/qiskit/1_start_here.ipynb chemistry tutorials https://nbviewer.jupyter.org/github/Qiskit/qiskit-iqx-tutorials/blob/master/qiskit/advanced/aqua/chemistry/index.ipynb

t-imamichi avatar Nov 19 '19 02:11 t-imamichi

aqua optimizers https://github.com/Qiskit/qiskit-aqua/tree/master/qiskit/aqua/components/optimizers

t-imamichi avatar Nov 19 '19 02:11 t-imamichi

https://github.com/Qiskit/qiskit-community-tutorials/blob/master/chemistry/LiH_with_qubit_tapering_and_uccsd.ipynb

t-imamichi avatar Nov 19 '19 03:11 t-imamichi

https://qiskit.org/documentation/apidoc/aqua/algorithms/algorithms.html#qiskit.aqua.algorithms.VQE

t-imamichi avatar Nov 19 '19 06:11 t-imamichi

https://nbviewer.jupyter.org/github/Qiskit/qiskit-iqx-tutorials/blob/master/qiskit/advanced/aqua/chemistry/programmatic_approach.ipynb [8]

t-imamichi avatar Nov 19 '19 06:11 t-imamichi

https://nbviewer.jupyter.org/github/Qiskit/qiskit-iqx-tutorials/blob/master/qiskit/advanced/aqua/optimization/max_cut_and_tsp.ipynb [10]

t-imamichi avatar Nov 19 '19 07:11 t-imamichi

@t-imamichi callback function works! :)

Yuya-O-Nakagawa avatar Nov 19 '19 09:11 Yuya-O-Nakagawa

FYI: dinner is ready

t-imamichi avatar Nov 19 '19 09:11 t-imamichi

noise model https://github.com/Qiskit/qiskit-iqx-tutorials/blob/master/qiskit/advanced/aer/3_building_noise_models.ipynb QuantumInstance accepts noise model as a parameter https://qiskit.org/documentation/api/qiskit.aqua.QuantumInstance.html#qiskit.aqua.QuantumInstance

t-imamichi avatar Nov 19 '19 11:11 t-imamichi

from qiskit.providers.aer.noise import NoiseModel
from qiskit.providers.aer.noise.errors import ReadoutError, depolarizing_error
noise_model = NoiseModel()
noise_model.add_all_qubit_readout_error(ReadoutError([[0.99, 0.01], [0.1, 0.9]]))
noise_model.add_all_qubit_quantum_error(depolarizing_error(0.01, 1), 'u1')
noise_model.add_all_qubit_quantum_error(depolarizing_error(0.01, 1), 'u2')
noise_model.add_all_qubit_quantum_error(depolarizing_error(0.01, 1), 'u3')
noise_model.add_all_qubit_quantum_error(depolarizing_error(0.1, 2), 'cx')
QuantumInstance(noise_model=noise_model, ...)

t-imamichi avatar Nov 20 '19 02:11 t-imamichi

Our code is here! https://github.com/Qiskit/qiskit-aqua/pull/729

ken-nakanishi avatar Nov 20 '19 04:11 ken-nakanishi

Issue#14.pdf

YouyuanS avatar Nov 20 '19 07:11 YouyuanS