42 std::vector<std::vector<Real>> & old_observations)
const;
50 std::vector<std::vector<Real>> & old_observations)
const;
65 const std::vector<std::vector<Real>> & old_observations)
const;
77 unsigned int time_index)
const;
Shared observation history stacking and factor-expansion logic for libtorch-based controls and traine...
unsigned int inputTimesteps() const
Return the number of timesteps stacked into each flattened input.
void initializeHistory(const std::vector< Real > &observation, std::vector< std::vector< Real > > &old_observations) const
Fill the history buffer with copies of the current observation.
std::vector< Real > expandObservationFactors(const std::vector< Real > &observation_factors) const
Repeat per-observation-entry factors across all stacked timesteps.
void advanceHistory(const std::vector< Real > &observation, std::vector< std::vector< Real > > &old_observations) const
Advance the history buffer by inserting the latest observation.
const unsigned int _input_timesteps
Number of timesteps stacked into each flattened observation.
std::vector< Real > stackCurrentObservation(const std::vector< Real > &observation, const std::vector< std::vector< Real > > &old_observations) const
Flatten the current observation together with its stored history.
std::vector< Real > stackTrajectoryObservation(const std::vector< std::vector< Real > > &component_trajectories, unsigned int time_index) const
Flatten one time slice of observation-component trajectories with causal history.
void validateTrajectoryShape(const std::vector< std::vector< Real > > &component_trajectories) const
Check that all observation-component trajectories have a consistent shape.