pub struct MetaObservationSpace<OS, AS, FSI> {
pub inner_observation: OptionSpace<OS>,
pub prev_step: OptionSpace<InnerStepObsSpace<AS, FSI>>,
pub episode_done: BooleanSpace,
}
Expand description
MetaEnv
observation space for element MetaObservation
.
§Note
The generic feedback space type FSI
is the inner feedback space E::FeedbackSpace::InnerSpace
for MetaEnv<E>
.
Fields§
§inner_observation: OptionSpace<OS>
§prev_step: OptionSpace<InnerStepObsSpace<AS, FSI>>
§episode_done: BooleanSpace
Trait Implementations§
Source§impl<TC, OS, AS, FS> BuildAgent<MetaObservationSpace<OS, AS, FS>, AS, FS> for ResettingMetaAgentConfig<TC>where
TC: BuildAgent<OS, AS, FS> + Clone,
TC::Agent: BatchUpdate<OS::Element, AS::Element, Feedback = FS::Element>,
OS: Space + Clone,
AS: NonEmptySpace + Clone,
FS: Space + Clone,
impl<TC, OS, AS, FS> BuildAgent<MetaObservationSpace<OS, AS, FS>, AS, FS> for ResettingMetaAgentConfig<TC>where
TC: BuildAgent<OS, AS, FS> + Clone,
TC::Agent: BatchUpdate<OS::Element, AS::Element, Feedback = FS::Element>,
OS: Space + Clone,
AS: NonEmptySpace + Clone,
FS: Space + Clone,
Source§type Agent = Arc<ResettingMetaAgent<TC, OS, AS, FS>>
type Agent = Arc<ResettingMetaAgent<TC, OS, AS, FS>>
Type of agent to build
Source§fn build_agent(
&self,
env: &dyn EnvStructure<ObservationSpace = MetaObservationSpace<OS, AS, FS>, ActionSpace = AS, FeedbackSpace = FS>,
_: &mut Prng,
) -> Result<Self::Agent, BuildAgentError>
fn build_agent( &self, env: &dyn EnvStructure<ObservationSpace = MetaObservationSpace<OS, AS, FS>, ActionSpace = AS, FeedbackSpace = FS>, _: &mut Prng, ) -> Result<Self::Agent, BuildAgentError>
Build an agent for the given environment structure (
EnvStructure
). Read moreSource§impl<OS: Clone, AS: Clone, FSI: Clone> Clone for MetaObservationSpace<OS, AS, FSI>
impl<OS: Clone, AS: Clone, FSI: Clone> Clone for MetaObservationSpace<OS, AS, FSI>
Source§fn clone(&self) -> MetaObservationSpace<OS, AS, FSI>
fn clone(&self) -> MetaObservationSpace<OS, AS, FSI>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<OS: Space + Distribution<<OS as Space>::Element>, AS: Space + Distribution<<AS as Space>::Element>, FSI: Space + Distribution<<FSI as Space>::Element>> Distribution<<MetaObservationSpace<OS, AS, FSI> as Space>::Element> for MetaObservationSpace<OS, AS, FSI>
impl<OS: Space + Distribution<<OS as Space>::Element>, AS: Space + Distribution<<AS as Space>::Element>, FSI: Space + Distribution<<FSI as Space>::Element>> Distribution<<MetaObservationSpace<OS, AS, FSI> as Space>::Element> for MetaObservationSpace<OS, AS, FSI>
Source§fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> <Self as Space>::Element
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> <Self as Space>::Element
Generate a random value of
T
, using rng
as the source of randomness.Source§fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>
Create an iterator that generates random values of
T
, using rng
as
the source of randomness. Read moreSource§impl<OS: FeatureSpace, AS: FeatureSpace, FSI: FeatureSpace> FeatureSpace for MetaObservationSpace<OS, AS, FSI>
impl<OS: FeatureSpace, AS: FeatureSpace, FSI: FeatureSpace> FeatureSpace for MetaObservationSpace<OS, AS, FSI>
Source§fn num_features(&self) -> usize
fn num_features(&self) -> usize
Length of the encoded feature vectors.
Source§fn features_out<'a, F: Float>(
&self,
element: &Self::Element,
out: &'a mut [F],
zeroed: bool,
) -> &'a mut [F]
fn features_out<'a, F: Float>( &self, element: &Self::Element, out: &'a mut [F], zeroed: bool, ) -> &'a mut [F]
Encode the feature vector of an element into a mutable slice. Read more
Source§fn features<T>(&self, element: &Self::Element) -> T
fn features<T>(&self, element: &Self::Element) -> T
Encode the feature vector of an element into an array.
Source§fn batch_features_out<'a, I, A>(
&self,
elements: I,
out: &mut ArrayBase<A, Ix2>,
zeroed: bool,
)
fn batch_features_out<'a, I, A>( &self, elements: I, out: &mut ArrayBase<A, Ix2>, zeroed: bool, )
Encode the feature vectors of multiple elements into rows of a two-dimensional array. Read more
Source§fn batch_features<'a, I, T>(&self, elements: I) -> Twhere
I: IntoIterator<Item = &'a Self::Element>,
I::IntoIter: ExactSizeIterator,
Self::Element: 'a,
T: BuildFromArray2D,
<T::Array as NumArray2D>::Elem: Float,
fn batch_features<'a, I, T>(&self, elements: I) -> Twhere
I: IntoIterator<Item = &'a Self::Element>,
I::IntoIter: ExactSizeIterator,
Self::Element: 'a,
T: BuildFromArray2D,
<T::Array as NumArray2D>::Elem: Float,
Encode the feature vectors of multiple elements as rows of a two-dimensional array.
Source§impl<OS: LogElementSpace, AS: LogElementSpace, FSI: LogElementSpace> LogElementSpace for MetaObservationSpace<OS, AS, FSI>
impl<OS: LogElementSpace, AS: LogElementSpace, FSI: LogElementSpace> LogElementSpace for MetaObservationSpace<OS, AS, FSI>
Source§impl<OS: NonEmptySpace, AS: NonEmptySpace, FSI: NonEmptySpace> NonEmptySpace for MetaObservationSpace<OS, AS, FSI>
impl<OS: NonEmptySpace, AS: NonEmptySpace, FSI: NonEmptySpace> NonEmptySpace for MetaObservationSpace<OS, AS, FSI>
Source§fn some_element(&self) -> <Self as Space>::Element
fn some_element(&self) -> <Self as Space>::Element
An arbitrary deterministic element from the space.
Source§impl<OS: PartialEq, AS: PartialEq, FSI: PartialEq> PartialEq for MetaObservationSpace<OS, AS, FSI>
impl<OS: PartialEq, AS: PartialEq, FSI: PartialEq> PartialEq for MetaObservationSpace<OS, AS, FSI>
Source§fn eq(&self, other: &MetaObservationSpace<OS, AS, FSI>) -> bool
fn eq(&self, other: &MetaObservationSpace<OS, AS, FSI>) -> bool
Tests for
self
and other
values to be equal, and is used by ==
.Source§impl<OS: SubsetOrd, AS: SubsetOrd, FSI: SubsetOrd> SubsetOrd for MetaObservationSpace<OS, AS, FSI>
impl<OS: SubsetOrd, AS: SubsetOrd, FSI: SubsetOrd> SubsetOrd for MetaObservationSpace<OS, AS, FSI>
Source§fn subset_cmp(&self, other: &Self) -> Option<Ordering>
fn subset_cmp(&self, other: &Self) -> Option<Ordering>
Compare using the subset relationship. This is a partial order.
Source§fn strict_subset_of(&self, other: &Self) -> bool
fn strict_subset_of(&self, other: &Self) -> bool
Check if this is a strict subset of
other
.Source§fn subset_of(&self, other: &Self) -> bool
fn subset_of(&self, other: &Self) -> bool
Check if this is a subset (strict or equal) of
other
.Source§fn strict_superset_of(&self, other: &Self) -> bool
fn strict_superset_of(&self, other: &Self) -> bool
Check if this is a strict superset of
other
.Source§fn superset_of(&self, other: &Self) -> bool
fn superset_of(&self, other: &Self) -> bool
Check if this is a superset (strict or equal) of
other
.impl<OS: Copy, AS: Copy, FSI: Copy> Copy for MetaObservationSpace<OS, AS, FSI>
impl<OS, AS, FSI> StructuralPartialEq for MetaObservationSpace<OS, AS, FSI>
Auto Trait Implementations§
impl<OS, AS, FSI> Freeze for MetaObservationSpace<OS, AS, FSI>
impl<OS, AS, FSI> RefUnwindSafe for MetaObservationSpace<OS, AS, FSI>
impl<OS, AS, FSI> Send for MetaObservationSpace<OS, AS, FSI>
impl<OS, AS, FSI> Sync for MetaObservationSpace<OS, AS, FSI>
impl<OS, AS, FSI> Unpin for MetaObservationSpace<OS, AS, FSI>
impl<OS, AS, FSI> UnwindSafe for MetaObservationSpace<OS, AS, FSI>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more