pub trait AgentEnvLoop<BT: Backend, RLC: RLComponentsTypes> {
// Required methods
fn run_steps(
&mut self,
num_steps: usize,
processor: &mut RLEventProcessorType<RLC>,
interrupter: &Interrupter,
progress: &mut Progress,
) -> Vec<TimeStep<BT, <RLC as RLComponentsTypes>::State, <RLC as RLComponentsTypes>::Action, <RLC as RLComponentsTypes>::ActionContext>>;
fn run_episodes(
&mut self,
num_episodes: usize,
processor: &mut RLEventProcessorType<RLC>,
interrupter: &Interrupter,
progress: &mut Progress,
) -> Vec<Trajectory<BT, <RLC as RLComponentsTypes>::State, <RLC as RLComponentsTypes>::Action, <RLC as RLComponentsTypes>::ActionContext>>;
fn update_policy(&mut self, update: RLC::PolicyState);
fn policy(&self) -> RLC::PolicyState;
}Available on crate feature
rl only.Expand description
Trait for a structure that implements an agent/environement interface.
Required Methods§
Sourcefn run_steps(
&mut self,
num_steps: usize,
processor: &mut RLEventProcessorType<RLC>,
interrupter: &Interrupter,
progress: &mut Progress,
) -> Vec<TimeStep<BT, <RLC as RLComponentsTypes>::State, <RLC as RLComponentsTypes>::Action, <RLC as RLComponentsTypes>::ActionContext>>
fn run_steps( &mut self, num_steps: usize, processor: &mut RLEventProcessorType<RLC>, interrupter: &Interrupter, progress: &mut Progress, ) -> Vec<TimeStep<BT, <RLC as RLComponentsTypes>::State, <RLC as RLComponentsTypes>::Action, <RLC as RLComponentsTypes>::ActionContext>>
Run a certain number of timesteps.
§Arguments
num_steps- The number of time_steps to run.processor- An crate::EventProcessorTraining.interrupter- An crate::Interrupter.num_steps- The number of time_steps to run.progress- A mutable reference to the learning progress.
§Returns
A list of ordered timesteps.
Sourcefn run_episodes(
&mut self,
num_episodes: usize,
processor: &mut RLEventProcessorType<RLC>,
interrupter: &Interrupter,
progress: &mut Progress,
) -> Vec<Trajectory<BT, <RLC as RLComponentsTypes>::State, <RLC as RLComponentsTypes>::Action, <RLC as RLComponentsTypes>::ActionContext>>
fn run_episodes( &mut self, num_episodes: usize, processor: &mut RLEventProcessorType<RLC>, interrupter: &Interrupter, progress: &mut Progress, ) -> Vec<Trajectory<BT, <RLC as RLComponentsTypes>::State, <RLC as RLComponentsTypes>::Action, <RLC as RLComponentsTypes>::ActionContext>>
Run a certain number of episodes.
§Arguments
num_episodes- The number of episodes to run.processor- An crate::EventProcessorTraining.interrupter- An crate::Interrupter.progress- A mutable reference to the learning progress.
§Returns
A list of ordered timesteps.
Sourcefn update_policy(&mut self, update: RLC::PolicyState)
fn update_policy(&mut self, update: RLC::PolicyState)
Update the runner’s agent.
Sourcefn policy(&self) -> RLC::PolicyState
fn policy(&self) -> RLC::PolicyState
Get the state of the runner’s agent.