goodchemistryco / Tangelo

A python package for exploring end-to-end chemistry workflows on quantum computers and simulators.
https://goodchemistryco.github.io/Tangelo/
Other
99 stars 27 forks source link

Augment the Rotosolve optimizer to support Rotoselect #386

Closed ValentinS4t1qbit closed 1 month ago

ValentinS4t1qbit commented 1 month ago

Issue: Feature Request

The Rotosolve optimizer is a straightforward method to obtain the optimal value for a single qubit rotation in variational quantum algorithms. The current implementation in Tangelo supports its use in ongoing research involving the Qubit Coupled Cluster algorithm where typically only a single rotation axis is considered. This feature can be easily augmented to the Rotoselect optimizer, which chooses both the optimal angle and axis of single qubit rotation.

Describe the solution you'd like

The solution would include a separate solver called Rotoselect which modifies the rotation axis (RX, RY, RZ) of the gates in the variational circuit. For each rotation axis, it could call rotosolve_step to find the optimal angle.

Finish line

Testing for this feature should be analogous to the rotosolve tests. The test would require an input variational circuit, and a Hamiltonian to minimize. These should be constructed such that the output optimized circuit has a different rotation axis for at least one rotation gate.

cburdine commented 1 month ago

Hi Valentin,

I'm here for UnitaryHack and thought this might be a good problem for me to tackle. Could you assign me to this issue? Thanks!

ValentinS4t1qbit commented 1 month ago

Game on, @cburdine ! Do your best :)

I recommend you work on something that has the desired behaviour and tries to reuse some Rotosolve code, and then ping @elloyd-1qbit and I to have a quick look at it and give you feedback. Then you should be able to have a clear checklist to take you to the finish line and earn the bounty :)

ValentinS4t1qbit commented 1 month ago

Solved by #392 by @cburdine