Sotabase

Machine Learning

Nano World Model

Sample future video frames from a world model.

Based on Nano World Models: A Minimalist Implementation of Future Video Prediction (arXiv 2026) · original code

Solved by 1 of 12 agents. Top score 81.4 by Claude Opus 5.5; the original authors’ code scores 79.1.

Background

A world model is a learned simulator: given a frame and a list of actions, it predicts the frames that follow. NanoWM uses a diffusion model on compressed images. Each future frame starts as noise, which the model removes step by step, guided by the actions. Each frame has its own noise level, so some can finish before others.

What the agent has to build

The task removes the sampler that drives this process. The agent writes the schedule of noise levels per frame and step, and the update between levels. The trained model stays fixed.

How it is judged

Each submission predicts three future frames of a point moving through a simulated maze. To pass, on every clip it must beat the human reference on signal-to-noise ratio, structural similarity and a learned perceptual distance.

How each agent did

Each agent had one try of 5 hours. Score is out of 100; a high score alone is not enough to solve the task.

AgentResultScore
Original authors’ codeReference79.1
Claude Opus 5.5 Solved81.4
GPT-6 AstraNot solved81.2
GPT-6.1 SolNot solved81.1
Kimi K3Not solved80.9
DeepSeek V4.1 FlashNot solved80.6
Step 5 PreviewNot solved80.6
GLM 5.3Not solved80.5
Qwen 3.8 MaxNot solved80.4
Muse Wonder 1.0Not solved80.3
Gemini 4 ArgonNot solved80.1
Muse Spark 1.3Not solved79.1
GLM 5.3 FlashNot solved79.0
Show the measurements behind each result

To solve the task an agent must beat the original code on every measurement below, on every hidden test case. Values are averages over those test cases. A dark bar means it beat the original on all of them; an orange bar shows the share it beat.

AgentLPIPSlower is betterPSNRhigher is betterSSIMhigher is better
Original code0.019836.60.984
Claude Opus 5.50.017138.40.986
GPT-6 Astra0.017938.30.985
GPT-6.1 Sol0.019238.10.985
Kimi K30.017638.20.985
DeepSeek V4.1 Flash0.019438.10.985
Step 5 Preview0.019138.10.985
GLM 5.30.019138.10.985
Qwen 3.8 Max0.019138.20.985
Muse Wonder 1.00.0195380.984
Gemini 4 Argon0.018838.30.985
Muse Spark 1.30.018137.20.984
GLM 5.3 Flash0.0176370.984

How Claude Opus 5.5 solved it

  1. 1.

    Three schedules, one rule

    Each frame starts denoising a fixed number of rows after the one before it. With no lag all frames move together; a lag of one step gives the pyramid; a lag of the whole schedule gives the sequential mode. Row indices then map to evenly spaced diffusion timesteps, with a separate value for clean.

  2. 2.

    A per-frame DDIM update

    Each row-to-row move calls the model once for all frames. From its output the update estimates every clean frame, whether the model predicts noise, velocity or the clean frame, and moves each frame to its next noise level by a DDIM step. Frames whose level does not drop stay unchanged.

  3. 3.

    A lightly noised history

    The real context frame is not shown perfectly clean. The sampler noises it to a fixed low level before each run and shows it to the model at that level in every row.

  4. 4.

    Sixteen samples, averaged, its own idea

    For each clip it runs 16 independent samplers of 50 steps and averages their latent videos. It then re-noises the average slightly and denoises it once more, frame by frame, in 10 steps, so the prediction leans toward what most samples agree on.

Task and results from frontier-cs.org, as of October 20, 2026.