Open the complete UEMA explainer

UEMA architecture review • October 28, 2026

How UEMA connects perception, self and movement

MIMo is the simulated body. UEMA is the learning system that controls it. The aim is for UEMA to use its own experience to coordinate its body, eyes and fingers: lean toward a ball, reach, and grasp it.

UEMA's aim is broader than making the body move. Its design connects what the body senses, what may happen next, how that affects the body, and which movement follows. Through experience, these connections should build a continuing model of self: what belongs to this body, what it can control, what matters to it, and how reliable its predictions are.

The intended loop in the UEMA specification

A command is a set of numbers sent toward the body's motors. Wellness describes several aspects of the body's condition, such as sensing, available strength and prediction accuracy. UEMA keeps the following jobs distinct, so the movement can depend on predicted consequences for this body.

  1. 1. PerceiveRead the body's senses. Encoders turn those readings into compact sets of numbers called tokens.
  2. 2. PredictThe forward model uses recent tokens and candidate commands to predict what would follow.
  3. 3. Evaluate selfMeasure wellness from real experience. A learned evaluator predicts wellness for imagined outcomes.
  4. 4. Form intentionSelect a desired consequence. Change candidate command numbers and compare their predicted consequences.
  5. 5. ActSend the selected command. The motors change the body, and its senses provide the next readings.

The loop returns through experience: actual readings are compared with earlier predictions. Their differences teach the prediction networks. The next choice uses the new readings and the learned predictions.

Real experience and imagination stay separate. The spec calls real sensor readings the Grounded Register and encoded or predicted tokens the Predictive Register. Real outcomes teach the predicted wellness evaluator. An imagined safe landing must never be used as evidence that a safe landing occurred.

The spec calls the third job feel myself. Its computational role is to make the body's own condition matter to movement. The aim of conscious experience concerns this whole continuing loop; it is not assigned to one box merely because the box is named SelfState.

Which specification, and which implementation?

This review uses the complete September development UEMA v3.6. Its sections 1–2 describe the five jobs; sections 7–10 connect wellness and intention; sections 11 and 23 describe self. The community site's February release v3.5 is a different document line. A matching v3.6 HTML edition now preserves the development text.

The spec contains dated implementation notes beside its design. Some conflict with later passages: section 29 still says the body schema is missing, while sections 11.1–11.2 record its implementation. This guide uses the spec for intended roles and inspected source plus saved settings for implemented behavior. The detailed map below shows that implementation; this five-job diagram explains the design.

The learned self-perception component

Self perception, named SelfState in the code, learns a changing representation of bodily condition. It supplies one part of the wider self described above. The body schema tracks control, and the longer-term self mechanisms track relations with wellness.

The self-perception network receives skin readings, motor capacity and recent sensory history. Motor capacity means how much of its normal motor force is available. Sensory history includes what its senses, such as vision and touch, have recently reported. It keeps a learned internal state: numbers that carry what recent experience says about this body.

A command is a set of numbers sent toward the motors. A timed command sequence is a list of those commands and how long each lasts. A forecast network uses the self state and that sequence to predict changes in bodily function. These self forecasts concern sensing quality and motor capacity; the separate movement predictions describe where body parts will move.

Self perception learns from the difference between a prediction and a later measurement Body readings enter self perception. Its state and timed commands enter body forecasts. Later measurements are compared with forecasts. Learning updates the self networks, completing the loop. A separate report goes to the researcher. Body readings and historySkin, motor capacity and contextand previous internal state Self perceptionA learned state of this bodywith memory of recent changes Body forecastsPredict sensing quality, load,stimulation and motor capacity readings learned state timed commands Compare with later readingsAfter the command has run:how far was the forecast off? forecast actual readings Self learningUse the prediction errorto update these networks error update self weights update forecast weights Report for the researcherPredictions, errors andmeasured bodily function measurements

Read the loop: readings → self state → forecast → later measurement → learning → changed network weights. A weight is a stored number that learning changes. The report ends at the researcher; the learning arrow returns to the networks.

This is more than a checklist. The learned state combines inputs over time and relates them to earlier self states. The displayed condition fields are only some of its outputs. In the recorded grounded_residual setting, current function is anchored to measured function; the learned forecast predicts how it will change.

How self perception can affect movement

The forward model combines recent sensory information. Its prediction heads turn the combined information into predictions. The motor controller is a learned network that proposes commands. The planner compares command predictions before choosing a command.

Route A — change the information used for movement

Self state → learned adjustment to the forward model's output → motor controller, prediction heads and planner predictions.

self_state=perceive enables this route. learn teaches self perception without adding this adjustment.

Route B — compare predicted bodily consequences

Timed candidate commands → body forecasts → self-choice comparison → selected commands.

self_choice=on enables qualified command use. shadow runs the comparison but discards its commands. off builds no chooser. These settings are independent of Route A.

The exact inputs, outputs and learning operation

SelfState contains small encoders, a recurrent network that carries recent state, learned attention over prior self states, and current/future function decoders. Each skin site's current function has three fields: sensing resolution, mechanical load and stimulation. Motor groups contribute available capacity. The future predictor reads the initial state, commands and their actual durations; it also predicts uncertainty.

In grounded-residual prediction, predicted function equals initial measured function plus elapsed time times a learned rate of change, limited to the allowed range. Later observed function supplies the learning target. Self-state input copies are detached from the main model's learning graph. Its errors train the self networks; in learn mode their gradients are clipped separately from the main model's gradients.

Self learning is an optimizer operation, not another neural decision maker. During evaluation, weights stay fixed. The report is output data, not a model of conscious speech.

Code, saved settings and review scope

This explanation was checked against the repository on October 28. The reviewed explainer measurements are from B1K_skip13_492800, generated October 15. They are not a live training display. The later preserved TUNBL_u_496250_a2 branch also records self learning, self-choice off and latent-body shadow; it uses remembered hand goals.

For the reviewed October 15 run, its original args.json confirms latent_body_hierarchy=shadow, latent_planner=off, gaze_reflex=on, hierarchical_self=off, entity_self=dark, and a separate self-value reader weight of 0.1. Those omitted settings are shown from an explicitly named source; the saved measurement blocks are preserved.

  • lem/model/self_state.py; mimo_bridge/self_state_integration.py; mimo_bridge/lem_model.py: learned state, timed forecasts, separate self learning and conditional perception output.
  • mimo_bridge/self_intention.py; acting_snapshot.py; train_mimo.py: self-choice modes, evidence requirements and hand-goal incompatibility.
  • lem/model/intention_generator.py; motor_controller.py; wellness.py; loss_manager.py: command search, motor lessons, grounded and approximate wellness, alternative training objectives.
  • lem/model/body_schema.py; mimo_bridge/hierarchical_self.py; entity_self.py; entity_presence.py; self_value_reader.py: the three association mechanisms and conditional goal-value output.
  • lem/latent_body/model.py, hierarchy.py, losses.py; mimo_bridge/latent_body_shadow.py, latent_body_clone.py; gaze_reflex.py: movement hierarchy, copied-world command tests and direct eye response.
  • docs/experiment_review_2026-09-13/after_predictor_implementation_sequence.md: intended development, comparison and adoption order.

Review record: Saved/h84/explainer_connections_20261028/evidence/. This work changes explanation and diagrams. The stopped model work is not resumed.