CoolFace
Datasetpublic

AlexWortega/physics-scenarios-packed

physics-scenarios-packed Packed (tar.gz) version of a 2D rigid body physics dataset for training language models on next-frame prediction. 1,000,020 scenes × 200 frames simulated with Pymunk / Chipmunk2D. This repo is bandwidth-friendly: each scenario type ships as a single .tar.gz. For the unpacked JSONL files see physics-scenarios-raw. Scale Train: 900,000 scenes (24 seen scenario types × 37,500 each) Val: 100,020 scenes (30 scenario types × 3,334 each —… See the full description on the dataset page: https://huggingface.co/datasets/AlexWortega/physics-scenarios-packed.

sourceHugging Faceapache-2.0updated 5mo agoView on Hugging Face
0likes45downloads
Dataset Card

physics-scenarios-packed

Packed (tar.gz) version of a 2D rigid body physics dataset for training language models on next-frame prediction. 1,000,020 scenes × 200 frames simulated with Pymunk / Chipmunk2D.

This repo is bandwidth-friendly: each scenario type ships as a single .tar.gz. For the unpacked JSONL files see physics-scenarios-raw.

Scale

  • Train: 900,000 scenes (24 seen scenario types × 37,500 each)
  • Val: 100,020 scenes (30 scenario types × 3,334 each — includes 6 OOD types)
  • Frames per scene: 200
  • Format: JSONL inside tar.gz (1 header line + 200 frame lines per scene file)

Layout

manifest.json                    # full dataset spec
train/
  avalanche.tar.gz               # 24 seen-type archives
  basketball.tar.gz
  ...
val/
  avalanche.tar.gz               # 30 archives (24 seen + 6 OOD)
  pong.tar.gz                    # OOD types — never seen at train time
  bowling.tar.gz
  ...

Scenario types

Seen (24) — train + val: avalanche, basketball, billiards, breakout, bridge, chain, conveyor, dominos, explosion, funnel, headon, jenga, marblerun, orbit, pendulum, pinball, plinko, projectile, pyramid, seesaw, skijump, tower, wind, wreckingball

Unseen / OOD (6) — val only:

  • Simple: pong, bowling, ramp_roll
  • Complex: angrybirds, hourglass, newtonscradle

The 6 unseen types are held out to measure generalization to scenarios with new dynamics or interactions.

Schema (per scene file)

Line 1 — header:

json
{"scenario": "billiards", "difficulty": 3, "static_geometry": [...], "constraints": [...], "objects": [...]}

Lines 2–201 — frames:

json
{"frame": 0, "objects": [{"id": 0, "x": 1.234, "y": 5.678, "vx": ..., "vy": ..., "angle": ..., "omega": ...}, ...]}

Categories

The 30 scenario types span 6 categories:

  • Collision — head_on, billiards, breakout, bowling, pong
  • Stacking — jenga, tower, pyramid, dominos
  • Ramp — skijump, projectile, ramproll, marble_run
  • Constraint — pendulum, chain, bridge, newtons_cradle, hourglass
  • Minigame — pinball, plinko, basketball, angry_birds
  • Complex — avalanche, explosion, wind, wrecking_ball, conveyor, funnel, orbit, seesaw

Usage

python
from huggingface_hub import snapshot_download
import tarfile

snapshot_download("AlexWortega/physics-scenarios-packed", repo_type="dataset", local_dir="data")

with tarfile.open("data/train/billiards.tar.gz") as tar:
    tar.extractall("data/train_extracted")

Citation

ICML-2026 submission (in progress). Generation pipeline: src/physics/scenario_generator.py.