# Switch Justdance Eval

> Evaluates whole-body motion tracking policies for humanoid robots by measuring how well they synchronize with reference choreography from the commercial game Just Dance. It probes tracking accuracy, stability over long-horizon motions, and movement smoothness compared to human baselines. Use when the user wants to benchmark on Just Dance Routines, or asks about evaluating this task. Reports Just Dance Score (JDS).

- Skill: `qhjqhj00/switch-justdance-eval` (Agent Skill)
- Install (CLI): `npx skillmds add qhjqhj00/switch-justdance-eval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qhjqhj00/switch-justdance-eval/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: qhjqhj00 (https://skillmd.com/u/qhjqhj00)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/qhjqhj00/switch-justdance-eval

---


# switch-justdance-eval

> Switch-JustDance: Benchmarking Whole Body Motion Tracking Policies Using a Commercial Console Game — Jeonghwan Kim et al. (arXiv:2511.17925, 2025)

## What this evaluates

Evaluates whole-body motion tracking policies for humanoid robots by measuring how well they synchronize with reference choreography from the commercial game Just Dance. It probes tracking accuracy, stability over long-horizon motions, and movement smoothness compared to human baselines.

## Datasets

- **Just Dance Routines** — total 5; splits: test (5)

## Metrics

- `Just Dance Score (JDS)` **(primary)** — range: [0, 13333]
  - In-game score computed from Joy-Con motion tracking, reflecting synchronization with reference choreography. Maximum score is 13,333 per song.
- `Mean Per Joint Position Error (MPJPE, mm)` — range: other
  - Average joint position error between the robot's state estimation and the retargeted reference trajectory in the robot's torso frame. Reported as Active (pre-fall) and All (entire sequence). Lower values indicate better tracking.
- `Success Rate (SR, %)` — range: percent
  - Percentage of trials where the controller completes the entire dance without falling or overheating. Higher values indicate better stability.
- `Smoothness` — range: other
  - Average joint jerk (rad/s^3) and acceleration (rad/s^2) computed using finite differences on joint angles. Lower values indicate smoother, more human-like motion.

## Input / output format

**Input**: Retargeted reference motion trajectories (either streaming smoothed or offline dynamic) and robot internal state estimation.

**Output**: Robot joint commands/trajectories to track the reference motion.

## Scoring recipe

```python
def compute_metrics(robot_joints, ref_joints, falls_at_frame=None, overheated=False):
    jds = get_in_game_score(robot_joints)  # Max 13333
    mpjpe_all = mean(np.linalg.norm(robot_joints - ref_joints, axis=1))
    mpjpe_active = mean(np.linalg.norm(robot_joints[:falls_at_frame] - ref_joints[:falls_at_frame], axis=1)) if falls_at_frame else mpjpe_all
    sr = 1.0 if not falls_at_frame and not overheated else 0.0
    jerk = mean(np.abs(np.diff(robot_joints, n=3)))
    acc = mean(np.abs(np.diff(robot_joints, n=2)))
    return {'JDS': jds, 'MPJPE_Active': mpjpe_active, 'MPJPE_All': mpjpe_all, 'SR': sr, 'Jerk': jerk, 'Acc': acc}
```

## Common pitfalls

- MPJPE must be reported separately for Active (pre-fall) and All frames depending on whether the robot falls mid-dance.
- Just Dance Score (JDS) is only applicable in real-world hardware setups; it cannot be computed in simulation due to the lack of a physical Joy-Con.
- Streaming smoothed (Smo) input introduces phase lag but suppresses high-frequency jitter, while offline dynamic (Dyn) preserves timing but challenges controller agility.

## Evidence (verbatim from paper)

> We use four complementary metrics to evaluate general humanoid motion-tracking controllers, each capturing a distinct aspect of performance:

- Just Dance Score (JDS): The in-game score from the Nintendo Switch serves as our primary performance indicator. Computed from Joy-Con motion tracking, it reflects how well the robot synchronizes with the reference choreography. The max score for every song in Just Dance is 13,333.

## Citation

```bibtex
@misc{kim2025switchjustdance,
  title={Switch-JustDance: Benchmarking Whole Body Motion Tracking Policies Using a Commercial Console Game},
  author={Jeonghwan Kim et al.},
  year={2025},
  note={arXiv:2511.17925}
}
```

- arXiv: 2511.17925

