LePlanner: Amortized Iterative Control in Frozen Latent World Models
This repository contains the trained controllers, frozen world models, latent caches, and evaluation results for LePlanner:
LePlanner: Amortized Iterative Control in Frozen Latent World Models [Authors], [Year]. [Paper link β arXiv / venue]
LePlanner is an amortized iterative controller that plans through a frozen JEPA world model (LeWM) over a small number of learned refinement steps, trained with an arrivalβhold objective. It matches or exceeds test-time search planners (CEM) while requiring an order-of-magnitude fewer predictor invocations and 8β15Γ lower wall-clock per decision.
Results
| Environment | Method | Success | Notes |
|---|---|---|---|
| PushT | LePlanner (rh=1) | 94β96% | arrival+hold checkpoint |
| PushT | LePlanner (rh=5) | 88β90% | |
| PushT | CEM (rh=5) | 90% | baseline search planner |
| Reacher | LePlanner (rh=1) | 100% | 50 episodes, seed 42 |
| TwoRooms | LePlanner (rh=1) | 100% | 50 episodes, seed 42 |
LePlanner uses ~16Γ fewer predictor rows per decision than CEM and 8β15Γ lower wall-clock per decision.
Quick Start
from huggingface_hub import hf_hub_download
# Load a controller checkpoint
ckpt_path = hf_hub_download(
"SaltedLemon/lejepa-control-pusht",
"checkpoints/environment_controllers/reacher/controller.pt",
repo_type="model",
)
# Load a frozen world model
wm_path = hf_hub_download(
"SaltedLemon/lejepa-control-pusht",
"checkpoints/base_world_models/reacher/weights.pt",
repo_type="model",
)
The training code is available at github.com/SaltedLemon/lejepa_control.
Repository Structure
checkpoints/
βββ environment_controllers/ # Trained LePlanner controllers (per-environment)
β βββ reacher/
β β βββ controller.pt # 100% success, rh=1
β β βββ density.pt # Behavior density model
β βββ tworooms/
β βββ controller.pt # 100% success, rh=1
β βββ density.pt
βββ controller/ # PushT iterative controller (phase-1)
βββ ablations/ # PushT training ablations
β βββ ah_hold0.5/
β βββ controller.pt # Headline PushT checkpoint (94-96%)
βββ base_world_models/ # Frozen LeWM world models
β βββ pusht/ # quentinll/lewm-pusht (MIT)
β βββ reacher/ # quentinll/lewm-reacher (MIT)
β βββ tworooms/ # quentinll/lewm-tworooms (MIT)
βββ planner_*/ # Recursive & cross-attention planners
βββ manifold_transfer/ # Latent transfer experiments
βββ density/ # PushT behavior density model
code/ # Training & evaluation scripts
βββ planner.py # LePlanner controller
βββ solver.py # Training/eval harness
βββ losses.py # Arrival-hold, action-Gaussian, support losses
βββ scripts/ # train_planner.py, eval_planner.py, ...
latents/ # Pre-computed latent caches
βββ reacher/ # Latents, actions, episode metadata
βββ tworoom_cls/
results/ # Raw evaluation logs
βββ eval/results.jsonl # PushT eval across planners
βββ eval_planner/results.jsonl
Key Checkpoints
| File | Description |
|---|---|
checkpoints/ablations/ah_hold0.5/controller.pt |
Headline PushT controller β 94β6% at rh=1 |
checkpoints/environment_controllers/reacher/controller.pt |
Reacher controller β 100% |
checkpoints/environment_controllers/tworooms/controller.pt |
TwoRooms controller β 100% |
checkpoints/base_world_models/pusht/weights.pt |
Frozen PushT world model (LeWM) |
checkpoints/base_world_models/reacher/weights.pt |
Frozen Reacher world model (LeWM) |
checkpoints/base_world_models/tworooms/weights.pt |
Frozen TwoRooms world model (LeWM) |
Training & Evaluation
The controller and planner checkpoints are trained in this project; the LeWM world model is always frozen while those planners are trained.
Training code: github.com/SaltedLemon/lejepa_control
Each controller checkpoint embeds its training arguments, action statistics, step, and validation profile.
Citation
If you use this code or these checkpoints, please cite:
@article{leplanner,
title = {LePlanner: Amortized Iterative Control in Frozen Latent World Models},
author = {[Authors]},
journal = {[Venue / arXiv]},
year = {[Year]},
url = {https://huggingface.co/SaltedLemon/lejepa-control-pusht}
}
License
- Controller/planner code and checkpoints: as specified in the linked
lejepa_controlrepository. - LeWM world model weights (
base_world_models/pusht,reacher,tworooms): MIT licensed upstream fromquentinll/lewm-*.