{
  "version": 1,
  "language": "en",
  "title": "Joint WAM prediction targets",
  "description": "Observation and task context are inputs to a shared world-action model. Future-world trajectories and action trajectories are different output branches. This diagram has no mandatory runtime edge from future world to action.",
  "caption": "A joint WAM learns future-world trajectories and action trajectories from observation and task context. The joint training distribution does not specify a universal inference path. Some systems use imagined futures, but others deploy a faster action path shaped by prediction supervision. Author-created explanatory diagram. Playback time is illustrative and is not measured runtime.",
  "alt": "Joint WAM flow: observation and task train world/action branches, without a mandatory world-to-action path during execution.",
  "sources": [
    {
      "path": "content/blog/2026-06-09_world-models-for-embodied-ai/post.md",
      "description": "Article mechanism and retained citations"
    },
    "https://arxiv.org/abs/2605.12090",
    "https://arxiv.org/abs/2603.16666",
    "https://arxiv.org/abs/2607.00836"
  ],
  "limitations": [
    "This playback is an example. Playback duration is not measured runtime.",
    "The two output branches are examples. They do not show the exact head implementation of each architecture.",
    "The diagram adds no future-world-to-action inference dependency or gradient implementation."
  ],
  "targets": {
    "context": {
      "id": "mechanism-context",
      "kind": "node",
      "label": "Observation + task"
    },
    "model": {
      "id": "mechanism-model",
      "kind": "node",
      "label": "Joint WAM"
    },
    "world": {
      "id": "mechanism-world",
      "kind": "node",
      "label": "Future world"
    },
    "action": {
      "id": "mechanism-action",
      "kind": "node",
      "label": "Future actions"
    },
    "condition": {
      "id": "mechanism-condition",
      "kind": "edge",
      "label": "condition predictions"
    },
    "worldHead": {
      "id": "mechanism-worldHead",
      "kind": "edge",
      "label": "predict world"
    },
    "actionHead": {
      "id": "mechanism-actionHead",
      "kind": "edge",
      "label": "predict actions"
    }
  },
  "stateLabels": {
    "stage": "Stage",
    "artifact": "Artifact"
  },
  "scenarios": [
    {
      "id": "process",
      "title": "Two joint prediction targets",
      "description": "This trace shows two prediction targets. It does not add a mandatory future-world-to-action runtime edge.",
      "initial": {
        "stage": "Ready",
        "artifact": "Inputs available"
      },
      "unselected": [],
      "steps": [
        {
          "title": "Observation and task inputs",
          "description": "The joint model reads observation and task context.",
          "duration": 3000,
          "active": [
            "context"
          ],
          "paths": [],
          "state": {
            "stage": "Observation and task inputs",
            "artifact": "Observation and task context"
          }
        },
        {
          "title": "Shared representation",
          "description": "The joint model makes a shared world/action representation.",
          "duration": 3000,
          "active": [
            "model"
          ],
          "paths": [
            "condition"
          ],
          "state": {
            "stage": "Shared representation",
            "artifact": "Shared world/action representation"
          }
        },
        {
          "title": "Two predicted trajectories",
          "description": "The model gives future-world and future-action trajectories as two output branches.",
          "duration": 3000,
          "active": [
            "world",
            "action"
          ],
          "paths": [
            "worldHead",
            "actionHead"
          ],
          "state": {
            "stage": "Two predicted trajectories",
            "artifact": "Future-world and future-action trajectories"
          }
        }
      ]
    }
  ]
}
