Skip to main content

Crate gmgn

Crate gmgn 

Source
Expand description

§gmgn — Rust Reinforcement Learning Gymnasium

A pure-Rust library for reinforcement learning environments, inspired by Gymnasium. Designed for zero-cost abstraction and idiomatic Rust ergonomics.

§Quick Start (static, generic)

use gmgn::prelude::*;
use gmgn::envs::classic_control::{CartPoleEnv, CartPoleConfig};

let mut env = CartPoleEnv::new(CartPoleConfig::default()).unwrap();
let reset = env.reset(Some(42)).unwrap();

for _ in 0..200 {
    let action = env.action_space().sample(&mut gmgn::rng::create_rng(None));
    let step = env.step(&action).unwrap();
    if step.terminated {
        break;
    }
}

§Quick Start (dynamic, registry)

use gmgn::registry::{self, DynValue};

registry::register_builtins();
let mut env = registry::make("CartPole-v1").unwrap();
env.reset_dyn(Some(42)).unwrap();
let step = env.step_dyn(&DynValue::Discrete(1)).unwrap();

Modules§

env
Core environment trait and associated types.
env_checker
Environment validation utilities.
envs
Built-in environment implementations.
error
Error types for the gmgn reinforcement learning library.
prelude
Convenience re-exports for common gmgn types.
registry
Global environment registry and factory functions.
render
2D rendering system for environment visualization.
rng
Random number generation for reproducible environments.
space
Observation and action space definitions.
vector
Vectorized environments for batched parallel execution.
wrappers
Environment wrappers for modular behavior transformation.