Skip to content

Latest commit

 

History

History
83 lines (54 loc) · 1.93 KB

File metadata and controls

83 lines (54 loc) · 1.93 KB

Constrained Observation Lab (Flatland Slice Inference)

Small Vite + TypeScript demos showing how constrained measurements (“slices”) can drive prediction, drift detection, and correction.

2D Model

  • z(t) = z0 + v * t
  • r(t) = sqrt(max(0, R^2 - z(t)^2))

The 2D world only observes the circle radius r(t). The depth z(t) is hidden.

The left canvas renders the current slice. The right canvas renders a rolling plot of r(t) over the last 15 simulated seconds. The Science Bench area shows prediction/error and run logs.

Run (2D)

  npm install
  npm run dev

Build for production:

  npm run build

3D Demo

A companion Three.js demo lives in constrained_observation_3d/.

Run it:

  cd constrained_observation_3d
  npm install
  npm run dev

Build:

  cd constrained_observation_3d
  npm run build

Controls (2D)

  • Play / Pause animation
  • Reset back to t = 0
  • Speed slider (timeScale)
  • Sliders for R, z0, and v
  • Integer seed input (reserved for future noise models)
  • Copy Link button for a permalink with current parameters
  • Export controls for JSON traces (including Paper Mode bundle if enabled)

Permalinks

The 2D app reads R, z0, v, timeScale, and seed from query params on load. Copy Link writes those same values into a shareable URL.

Artifacts

Exported JSON traces used for Paper 1 backing live in artifacts/. See artifacts/README.md for metric definitions and how to interpret the files.

License

This repository is licensed under CC BY-NC 4.0 (Attribution-NonCommercial 4.0 International). See LICENSE.

Contact

  • Stephen A. Putman
  • Email: putmanmodel@pm.me
  • GitHub: @putmanmodel
  • For bugs/requests: open an Issue in this repo

Paper