Each video is one deterministic episode of the same trained Decision Transformer (seed 0, trained on Minari mujoco/hopper/medium-v0),
differing only in the return-to-go it is told to achieve. The slider picks the target. These videos are pre-rendered; the live panel further down runs the actual model in your browser.
Target return: ( of the best episode in the dataset)
| target | achieved return | normalized score | steps | ended |
|---|
This is not a simulation: there is no physics in the page. It feeds the first 100 observations of one recorded episode (target = 1.0 x best dataset return, the same policy and env seed as the videos)
to hopper_dt.onnx through onnxruntime-web, with the return-to-go you choose, and shows the actions the model would output at each step.
Dashed grey = target 3909 (the recorded actions); solid = your target. If the lines overlap, the model ignores the target there.
Target return: mean |action difference| vs target 3909: (loading model...)
One episode per target, fixed env seed 12345, not selected. A single episode is an anecdote; the repository README has the 3-seed x 10-episode numbers.
Normalized score = 100 (return - random) / (expert - random) with the D4RL Hopper reference returns (-20.27, 3234.3); the Minari medium data already scores around 87 by this scale,
so values above 100 are possible. The model is also exported to hopper_dt.onnx (fixed context of 20 steps; export_onnx.py checks PyTorch against onnxruntime).