Experiment
Experiment
    A class to run an experiment with a given agent and environment.
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
| name | str | The name of the experiment. | required | 
| agent | Agent | The agent to use in the experiment. | required | 
| env | Environment | The environment to use in the experiment. | required | 
| env_id | str | The ID of the environment. | '' | 
| seeds | Tuple[int, ...] | The seeds to use in the experiment. | (0,) | 
| group | str | The group to use in the experiment. | '' | 
Attributes:
| Name | Type | Description | 
|---|---|---|
| name | str | The name of the experiment. | 
| agent | Agent | The agent to use in the experiment. | 
| env | Environment | The environment to use in the experiment. | 
| env_id | str | The ID of the environment. | 
| seeds | Tuple[int, ...] | The seeds to use in the experiment. | 
| group | str | The group to use in the experiment. | 
run(do_log=True)
    Default function to run the experiment. This function compiles the training function, trains the agent, and logs the results.
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
| do_log | bool | Whether to log the results to wandb. | True | 
Warning
Logging to wandb is usually much slower than training the agent itself.
The time is linear in the number of seeds.
Returns:
| Name | Type | Description | 
|---|---|---|
| Tuple | A tuple containing the final training state and the logs. | 
run_hparam_search(hparams_distr, pop_size)
    Function to run a hyperparameter search for the experiment. This function samples hyperparameters from the given distributions, trains the agent, and logs the results.
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
| hparams_distr | Dict[str, Distribution] | A dictionary of             hyperparameter distributions. The keys are the hyperparameter names, which             must exist in  | required | 
| pop_size | int | The number of hyperparameter sets to sample. | required | 
Returns:
| Name | Type | Description | 
|---|---|---|
| Tuple | A tuple containing the final training states and the logs, batched over the hyperparameter sets. |