Skip to content

Episode history persistence via GymWrapper #804

@robotmem

Description

@robotmem

After repeated experiments with robosuite (Lift, PickPlace with Panda),
one thing that keeps coming up: restarting a training run means losing
all episode-level context from the previous run. Checkpoints save
weights, but things like "gripper force of 8N was too aggressive" or
"approach from the left was more reliable" — those insights get lost.

Since robosuite supports GymWrapper, I added a thin layer on top that
persists episode summaries to a local db:

import robosuite as suite
from robosuite.wrappers import GymWrapper
from robotmem.gymnasium import RobotMemWrapper

env = suite.make("Lift", robots="Panda", has_renderer=False)
env = GymWrapper(env)
env = RobotMemWrapper(env, collection="robosuite_lift")
# episode outcomes auto-logged, past tips available on reset

No changes to robosuite itself — it sits on top of GymWrapper. All
writes go to a local SQLite file.

Tested on FetchPush-v4 (Gymnasium) rather than robosuite-native tasks
so far, where it showed ~42% to ~67% improvement over 300 episodes.
Would need to validate on robosuite environments specifically.

Any thoughts on whether this kind of cross-run experience persistence
would be useful for the robosuite workflow?

https://github.com/robotmem/robotmem

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions