Changelog
Version 0.0.2 (Oct 04, 2024)
This is an update to the beta release of qutip-qoc.
It mainly introduces the new reinforcement learning algorithm qutip_qoc._rl.
Non-public facing functions have been renamed to start with an underscore.
As with other QuTiP functions,
optimize_pulsesnow takes atlistargument instead of_TimeInterval.The structure for the control guess and bounds has changed and now takes in an optional
__time__keyword.The
resultdoes no longer returnoptimized_objectivesbut insteadoptimized_H.
Features
New reinforcement learning algorithm, developed during GSOC24 (#19, #18, by LegionAtol)
Automatic transfromation of initial and target operator to superoperator (#23, by flowerthrower)
Bug Fixes
Prevent loss of __time__ keyword in optimize_pulses (#22, by flowerthrower)
Version 0.0.1 (May xx, 2024)
This is the beta release of qutip-qoc, the extended quantum control package in QuTiP.
It has undergone major refactoring and restructuring of the codebase.
Non-public facing functions have been renamed to start with an underscore.
As with other QuTiP functions,
optimize_pulsesnow takes atlistargument instead of_TimeInterval.The structure for the control guess and bounds has changed and now takes in an optional
__time__keyword.The
resultdoes no longer returnoptimized_objectivesbut insteadoptimized_H.
Bug Fixes
basinhopping result does not contain minimizer message
boundary issues with CRAB
Version 0.0.0 (December 26, 2023)
This is the alpha version of qutip-qoc, the extended quantum control package in QuTiP.
The qutip-qoc package builds up on the qutip-qtrl package.
It enhances it by providing two additional algorithms to optimize analytically defined control functions.
The package also aims for a more general way of defining control problems with QuTiP and makes switching between the four control algorithms very easy.
Features
qutip_qoc.GOATis an extension to the Gradient Optimization of Analytic conTrols (GOAT) [1] algorithm.It encoporates an additional time parameterization to allow for optimization over the total evolution time.
qutip_qoc.JOPTis an JAX automatic differentiation Optimization of Analytic conTrols (JOPT) algorithm.- Both algorithms can be addressed by the
qutip_qoc.optimize_pulsesfunction, which consists of a two-layer approach to find global optimal values for parameterized analytical control functions. The global optimization layer provides
scipy.optimize.dual_annealingandscipy.optimize.basinhopping, while the local minimization layer supports all gradient drivenscipy.optimize.minimizemethods.
- Both algorithms can be addressed by the
Bug Fixes
None