Skip to content
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

RL algorithm implementation #19

Merged
merged 16 commits into from
Oct 4, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
update docstring
  • Loading branch information
LegionAtol committed Aug 22, 2024
commit fadb42e52f9008e2f9846ced4686f77e29c44d04
8 changes: 5 additions & 3 deletions src/qutip_qoc/pulse_optim.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ def optimize_pulses(
integrator_kwargs=None,
):
"""
Run GOAT, JOPT, GRAPE or CRAB optimization.
Run GOAT, JOPT, GRAPE, CRAB or RL optimization.

Parameters
----------
Expand All @@ -37,6 +37,7 @@ def optimize_pulses(
Dictionary of options for the control pulse optimization.
The keys of this dict must be a unique string identifier for each control Hamiltonian / function.
For the GOAT and JOPT algorithms, the dict may optionally also contain the key "__time__".
For RL you don't need to specify the guess.
flowerthrower marked this conversation as resolved.
Show resolved Hide resolved
For each control function it must specify:

control_id : dict
Expand Down Expand Up @@ -71,14 +72,15 @@ def optimize_pulses(

- alg : str
Algorithm to use for the optimization.
Supported are: "GRAPE", "CRAB", "GOAT", "JOPT".
Supported are: "GRAPE", "CRAB", "GOAT", "JOPT" and "RL".

- fid_err_targ : float, optional
Fidelity error target for the optimization.

- max_iter : int, optional
Maximum number of iterations to perform.
Referes to local minimizer steps.
Referes to local minimizer steps or in the context of
`alg: "RL"` to the max. number of episodes.
Global steps default to 0 (no global optimization).
Can be overridden by specifying in minimizer_kwargs.

Expand Down