Expand description
Observation specification and extraction for Murk simulations.
Defines the observation spec (ObsSpec) that describes how to
extract flat observation tensors from simulation state for
reinforcement learning agents, and the compiled ObsPlan that
executes the extraction against any SnapshotAccess
implementor.
§Architecture
ObsSpec ──compile()──► ObsPlan ──execute()──► &mut [f32] + ObsMetadata
↓ ↓
entries gather_ops (pre-computed field indices)
regions transforms (applied at gather time)The observation pipeline is decoupled from the arena (Decision N):
ObsPlan reads through &dyn SnapshotAccess, not ReadArena directly.
Re-exports§
pub use cache::ObsPlanCache;pub use metadata::ObsMetadata;pub use plan::ObsPlan;pub use plan::ObsPlanResult;pub use spec::ObsDtype;pub use spec::ObsEntry;pub use spec::ObsRegion;pub use spec::ObsSpec;pub use spec::ObsTransform;pub use spec::PoolConfig;pub use spec::PoolKernel;
Modules§
- cache
- Plan cache with space-topology-based invalidation.
- flatbuf
- Binary serialization for observation specs.
- geometry
- Grid geometry extraction for interior/boundary dispatch.
- metadata
- Observation metadata populated at execution time.
- plan
- Observation plan compilation and execution.
- pool
- Spatial pooling operations for observation extraction.
- spec
- Observation specification types.