Skip to content

Add interactive study note on World Models (Ha & Schmidhuber)#33

Merged
Alexdruso merged 4 commits into
masterfrom
claude/repo-production-readiness-a1v0q5
Jun 24, 2026
Merged

Add interactive study note on World Models (Ha & Schmidhuber)#33
Alexdruso merged 4 commits into
masterfrom
claude/repo-production-readiness-a1v0q5

Conversation

@Alexdruso

Copy link
Copy Markdown
Owner

What

A new interactive Study Note explaining the World Models paper (David Ha & Jürgen Schmidhuber, 2018) — a standalone layout: post HTML file at docs/_posts/2026-06-23-world-models.html, live at /world-models/.

It teaches the paper concept-first: the agent splits into a large world model trained unsupervised plus a tiny controller trained by evolution:

  • V (Vision) — a VAE compressing each 64×64×3 frame to a 32-dim latent z.
  • M (Memory) — an MDN-RNN modeling the next latent as a mixture of Gaussians, generative enough to be rolled forward into a "dream."
  • C (Controller) — a ~867-parameter linear policy on [z, h], trained with CMA-ES.
  • Training inside the dream, and the temperature knob behind the cheating / sweet-spot trade-off (the Doom agent that made dreamed monsters never fire a fireball).

Three interactive, theme-aware demos (vanilla JS)

  1. V→M→C pipeline + latent bottleneck — a slider shrinks the latent budget and the canvas reconstruction degrades.
  2. The dream — an MDN-RNN rollout whose futures collapse onto one path at low τ and fan into branching, multimodal futures at high τ.
  3. Dream-vs-real tradeoff — the paper's actual VizDoom Take Cover τ-sweep, with the shaded "cheating gap" and the 750-step solved line forming the inverted-U.

Conventions

  • Follows the study-note design system: --sn-* tokens only, the MutationObserver redraw pattern (including manual canvas re-theming), concept-first voice.
  • Cross-links the existing temperature/entropy and MDP notes.
  • Quantitative claims verified against the paper's primary source.

Verification

Built the site and screenshotted the note in light and dark plus the /study-notes/ index via the add-study-note driver. Confirmed: all demos render, dark mode is genuinely dark with the canvas re-themed, Demo B collapses/fans with τ, Demo C shows the inverted-U, and the note appears on the index with its excerpt.

🤖 Generated with Claude Code

https://claude.ai/code/session_019R3LLsWZr5fdbLwuumEov3


Generated by Claude Code

claude added 4 commits June 23, 2026 22:01
- README: rewrite Structure/CI sections to match the actual tree and
  workflow (removed references to nonexistent head/header/footer.html,
  about.md, blog.md; correct the CI trigger description).
- Gemfile: drop unused jekyll-seo-tag (meta is hand-rolled in
  _includes/meta.html); add html-proofer in a :test group for CI.
- Remove dead Disqus code (site.disqus was never configured, so it never
  rendered): delete _includes/disqus.html and its include in post.html.
- default.html: remove the IE<9 html5shiv block (dead http:// googlecode
  URL) and the leftover "Created with Jekyll Now" comment.
- Harden insecure/protocol-relative URLs to https:// (svg-icons
  StackOverflow link, GoatCounter analytics script).
- _config.yml: trim empty footer-links template fields; drop CNAME from
  exclude (the file no longer exists).
- Commit Gemfile.lock for reproducible builds (un-ignore it).
- CI: add a pull_request job that runs jekyll build + html-proofer
  (internal links/images, UTF-8 locale) so branches are verified before
  merge; gate the CV-build/deploy job to non-PR events.
- CLAUDE.md: generalize the stale hard-coded development-branch reference.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019R3LLsWZr5fdbLwuumEov3
html-proofer 5.2.1 pulls in async → console 1.36, which requires Ruby
>= 3.3. The workflow pinned Ruby 3.2, so `bundle install` failed to
resolve the locked gems. Bump both jobs to Ruby 3.3 to match the
committed Gemfile.lock, and update the matching note in CLAUDE.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019R3LLsWZr5fdbLwuumEov3
Adds a skill at .claude/skills/add-study-note/ that scaffolds, fact-checks,
and previews the site's interactive Study Note posts:

- driver.mjs: builds the Jekyll site and screenshots a note in light + dark
  with headless Chrome (puppeteer-core + chrome-headless-shell), plus the
  /study-notes/ index, so a new note can be verified visually before push.
- template.html: a conventions-correct scaffold (.study-note wrapper, --sn-*
  tokens, slider demo, adaptive SVG chart with the theme MutationObserver).
- SKILL.md: the authoring workflow — research/fact-check with /deep-research,
  write per docs/_posts/CLAUDE.md, then preview via the driver. Documents the
  rbenv jekyll-binstub workaround and the placeholder-date build gotcha.

node_modules/ and screenshots/ are gitignored (regenerated artifacts).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019R3LLsWZr5fdbLwuumEov3
A standalone study note explaining the World Models paper: the V/M/C
split (VAE vision, MDN-RNN memory, tiny CMA-ES controller), training the
controller inside the model's dreamed rollouts, and the temperature knob
behind the cheating/sweet-spot trade-off.

Three theme-aware vanilla-JS demos:
- V->M->C pipeline plus a latent-bottleneck canvas (compression trade-off)
- an MDN-RNN "dream" rollout whose futures collapse or fan out with tau
- the paper's actual VizDoom Take Cover dream-vs-real temperature sweep

Follows the study-note design system (--sn-* tokens, MutationObserver
redraw) and cross-links the temperature/entropy and MDP notes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019R3LLsWZr5fdbLwuumEov3
@Alexdruso Alexdruso merged commit fe76113 into master Jun 24, 2026
2 checks passed
@Alexdruso Alexdruso deleted the claude/repo-production-readiness-a1v0q5 branch June 24, 2026 06:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants