waremax

How WareMax works

WareMax is a Cargo workspace with a deterministic Rust simulation core and a Python Gymnasium bridge on top. Here is how a scenario becomes a byte-identical trajectory.

scenario.yaml waremax-config Rust DES core (single-threaded, ChaCha8 RNG) waremax-core waremax-map policies analysis canonical id-based tie-breaking (determinism) CLI: waremax waremax-gym (PyO3) trajectory + metrics byte-identical

The pipeline

A scenario YAML is parsed and schema-validated by waremax-config, then handed to the Rust DES core. The core advances a single event queue on one thread; time moves only at typed discrete events. Routing on the graph topology is handled by waremax-map, and the selected dispatching policy decides task allocation. Every completed task is decomposed by waremax-analysis into the five delay buckets.

The core can be driven two ways: the waremax CLI for simulations, sweeps, A/B tests, and benchmarks; or the waremax-gym PyO3 bridge, which exposes WaremaxAllocEnv as a Gymnasium environment for reinforcement learning.

Why it is deterministic

Reproducibility is enforced, not asserted. The core seeds a ChaCha8 RNG from a u64, runs single-threaded per scenario, and applies canonical id-based tie-breaking everywhere two choices are otherwise equal. The RL control loop adds a crossbeam ping-pong handshake so the property survives a worker thread. The result: the same seed and action sequence produce a byte-identical trajectory.

The workspace

waremax-core

DES kernel, event queue, IDs, SimTime, ChaCha8-seeded RNG

waremax-map

Graph topology, shortest-path + congestion-aware routing, traffic

waremax-storage

Racks, bins, SKUs, inventory replicas

waremax-entities

Robot, Order, Task, Station, ChargingStation

waremax-policies

Allocation, station assignment, batching, priority, traffic policies

waremax-config

YAML / JSON scenario parsing and schema validation

waremax-metrics

Event log, time-series, CSV/JSON export, HTML/PDF reports

waremax-analysis

Delay attribution, critical-path analysis, bottlenecks, root-cause

waremax-rl

RL control seam, Gym-style env, attribution & routed reward modes

waremax-gym

PyO3 bindings, Python wrapper, training scripts

Ready to run it? Start with the quickstart, then write your own scenario YAML. WareMax is built by Skelf Research.