Features
WareMax pairs a deterministic Rust discrete-event core with a Gymnasium RL benchmark, per-task attribution, and a reproducible experiment workflow. Everything below is shipped in-box.
Deterministic simulation core
A Rust discrete-event kernel built so reproducibility is a tested property.
Deterministic DES kernel
A single-threaded, event-queue discrete-event simulation core in Rust (waremax-core). Time advances only at typed events — no fixed timestep, no continuous integration.
Learn more →Byte-identical replay
Same seed and same action sequence produce a byte-identical trajectory. Enforced by a ChaCha8 RNG seeded from a u64 and canonical id-based tie-breaking everywhere. Tested, not asserted.
Learn more →Congestion-aware routing
Graph topology with shortest-path plus congestion-aware routing (waremax-map). Node and edge capacities, wait-at-node traffic policy, and a configurable congestion weight.
Learn more →Reinforcement-learning benchmark
A Gymnasium env, honest baselines, and reward modes designed for dispatching.
Gymnasium environment
A Gymnasium env (WaremaxAllocEnv) exposed via PyO3. Dict observation with an action mask, SMDP framing, and MaskablePPO-ready — plug it straight into an RL loop.
Learn more →Four RL reward modes
sparse, dense, attribution, and routed. The routed mode charges only the controllable cost (assignment wait plus travel to pickup); attribution uses the full per-task delay decomposition.
Learn more →Five heuristic baselines
nearest_robot, least_busy, round_robin, auction, and workload-balanced — shipped in-box and selectable by policy name. Honest baselines so you know when a policy actually helps.
Learn more →Analysis & attribution
Understand where cycle time actually goes, per task.
Causal delay attribution
Every completed task is decomposed into five buckets — assignment, travel, queue, congestion, service — that sum to cycle time. The same partition powers the attribution and routed rewards.
Learn more →Experiment workflow
Scenarios, sweeps, and A/B tests that make studies reproducible.
A/B testing & sweeps
CLI-driven parameter sweeps, A/B tests with Welch’s t, and benchmarking with regression detection. Multi-seed confidence intervals so a result is a result, not noise.
Learn more →YAML scenarios
Scenarios are YAML (or JSON) topology, station, order, traffic, and policy definitions parsed and schema-validated by waremax-config. No CAD, no DWG — a text file you can diff and version.
Learn more →The five heuristic baselines
Selectable by policy name in the scenario YAML.
nearest_robot Assign to the closest available robot.
least_busy Assign to the robot with the smallest workload.
round_robin Cycle assignments in id order — a strong state-blind baseline.
auction Robots bid on tasks; lowest cost wins.
workload-balanced Equalise workload across the fleet.