Expand description
Vectorized environment pool for parallel execution
This module provides high-performance parallel environment execution using Rayon. Inspired by EnvPool (https://arxiv.org/abs/2206.10558), it achieves significant speedups by executing multiple environments in parallel.
§Example
use thrust_rl::env::{cartpole::CartPole, pool::EnvPool};
// Create pool with 4 parallel environments
let mut pool = EnvPool::new(|| CartPole::new(), 4);
// Reset all environments in parallel
let observations = pool.reset();
// Step all environments in parallel
let actions = vec![0, 1, 0, 1]; // One action per environment
let results = pool.step(&actions);Structs§
- EnvPool
- A pool of environments for parallel execution
- Pool
Step Result - Result of stepping an environment pool