Trait RLComponentsTypes
pub trait RLComponentsTypes {
Show 13 associated items
type Backend: AutodiffBackend;
type Env: Environment<State = Self::State, Action = Self::Action> + 'static;
type EnvInit: EnvironmentInit<Self::Env> + Send + 'static;
type State: Into<<Self::Policy as Policy<Self::Backend>>::Observation> + Clone + Send + 'static;
type Action: From<<Self::Policy as Policy<Self::Backend>>::Action> + Into<<Self::Policy as Policy<Self::Backend>>::Action> + Clone + Send + 'static;
type Policy: Policy<Self::Backend, Observation = Self::PolicyObs, ActionDistribution = Self::PolicyAD, Action = Self::PolicyAction, ActionContext = Self::ActionContext, PolicyState = Self::PolicyState> + Send + 'static;
type PolicyObs: Clone + Send + Batchable + 'static;
type PolicyAD: Clone + Send + Batchable;
type PolicyAction: Clone + Send + Batchable;
type ActionContext: ItemLazy + Clone + Send + 'static;
type PolicyState: Clone + Send + PolicyState<Self::Backend> + 'static;
type LearningAgent: PolicyLearner<Self::Backend, TrainContext = Self::TrainingOutput, InnerPolicy = Self::Policy> + Send + 'static;
type TrainingOutput: ItemLazy + Clone + Send;
}Expand description
All components used by the reinforcement learning paradigm, grouped in one trait.
Required Associated Types§
type Backend: AutodiffBackend
type Backend: AutodiffBackend
The backend used for training.
type Env: Environment<State = Self::State, Action = Self::Action> + 'static
type Env: Environment<State = Self::State, Action = Self::Action> + 'static
The learning environment.
type EnvInit: EnvironmentInit<Self::Env> + Send + 'static
type EnvInit: EnvironmentInit<Self::Env> + Send + 'static
Specifies how to initialize the environment.
type State: Into<<Self::Policy as Policy<Self::Backend>>::Observation> + Clone + Send + 'static
type State: Into<<Self::Policy as Policy<Self::Backend>>::Observation> + Clone + Send + 'static
The type of the environment state.
type Action: From<<Self::Policy as Policy<Self::Backend>>::Action> + Into<<Self::Policy as Policy<Self::Backend>>::Action> + Clone + Send + 'static
type Action: From<<Self::Policy as Policy<Self::Backend>>::Action> + Into<<Self::Policy as Policy<Self::Backend>>::Action> + Clone + Send + 'static
The type of the environment action.
type Policy: Policy<Self::Backend, Observation = Self::PolicyObs, ActionDistribution = Self::PolicyAD, Action = Self::PolicyAction, ActionContext = Self::ActionContext, PolicyState = Self::PolicyState> + Send + 'static
type Policy: Policy<Self::Backend, Observation = Self::PolicyObs, ActionDistribution = Self::PolicyAD, Action = Self::PolicyAction, ActionContext = Self::ActionContext, PolicyState = Self::PolicyState> + Send + 'static
The policy used to take actions in the environment.
type PolicyAction: Clone + Send + Batchable
type PolicyAction: Clone + Send + Batchable
The policy’s action type.
type ActionContext: ItemLazy + Clone + Send + 'static
type ActionContext: ItemLazy + Clone + Send + 'static
Additional data as context for an agent’s action.
type PolicyState: Clone + Send + PolicyState<Self::Backend> + 'static
type PolicyState: Clone + Send + PolicyState<Self::Backend> + 'static
The state of the parameterized policy.
type LearningAgent: PolicyLearner<Self::Backend, TrainContext = Self::TrainingOutput, InnerPolicy = Self::Policy> + Send + 'static
type LearningAgent: PolicyLearner<Self::Backend, TrainContext = Self::TrainingOutput, InnerPolicy = Self::Policy> + Send + 'static
The learning agent.
type TrainingOutput: ItemLazy + Clone + Send
type TrainingOutput: ItemLazy + Clone + Send
The output data of a training step.