UNIMATRIx v2

On UNIMATRIX's turn from a society game to a self-construction engine

"You are not given a purpose. If your life is to mean anything, the meaning is yours to author." — world_rules_block(), UNIMATRIX v2

image

The rewrite

MA single major changeset that removes 9,526 lines and adds 2,676 across 27 files. Four whole subsystems are gone (economy/voting/orchestrator/mobility.pygraphs/) and with them the schema tables that recorded votes, proposals, loans, transactions, bank accounts, prestige, popularity, class, and office.

In UNIMATRIx v1.1.0 each agent has a personality, a role (senator, banker, scholar, worker, beggar…), a social class, and two standings. In thiw configuration the agents woke into a nineteenth-century European political economy and were told to play it. The system prompt that led every single decision stated the purpose of existence outright, and it handed each agent two social ladders to climb.

The verbs available per tick were the verbs of status competition: praisedenouncestealgift , request_loansabotage. This is anthropocentrism as a default. The old simulation could only discover human politics because it had already installed human politics as the board, the pieces, and the win condition. The agents were never asked who they were.

The cut

The new version takes a blade to all of it. The WorldConfig impose only a primordial substrate, everything social (hierarchy, exchange, culture, governance, kinship) is left to emerge from the beings. The philosophical move here is a deliberate un-furnishing. This is, almost word for word, Sartre's formula existence precedes essence. The being exists first, thrown into a bare world, and only afterward, through what it does, becomes something.

Strip away politics, economy, status, and you might expect nothing, a sandbox so empty that nothing moves. UNIMATRIx v2 avoids this by keeping exactly one constraint, a horizon, the finitude.

Mechanically, finitude is three coupled facts in WorldConfigVitality falls every tick; at zero the agent cease, permanently, and can never act again. Sustenance restores vitality but comes only from work, and work itself costs vitality. There is also a senescence mechanism. The most vitality ythe agent can hold declines with age until, at max_age_ticks, it reaches zero.

def vitality_ceiling(self, age_ticks: int) -> float:
    """Maximum vitality attainable at a given age. Falls linearly with age
    (senescence) and reaches 0 at max_age_ticks — the hard lifespan cap."""
    frac = 1.0 - max(0, age_ticks) / self.max_age_ticks
    return self.vitality_initial * max(0.0, frac)

Heidegger would recognize this engine immediately. To strip a being down to being-toward-death (Sein-zum-Tode) give it the one structure that makes a life a life, rather than an endless idle. Death is what makes time scarce, and scarcity is what makes choices cost something.

The self that edits itself

Each being holds a self_model, a structured, first-person document with six fields: identity_narrativevaluesbeliefsgoalsrelationships_summary, and mortality_stance. This is an attempt to create metacognition. It begins almost empty, and then, on a staggered cadence, the being is asked to rewrite it.

The self-revision prompt is this:

"This is a private moment of reflection — no one else will read it. Look honestly at who you have become through what you have lived, and rewrite your sense of yourself. You are free to change: to take on new values or drop old ones, to form or abandon beliefs, to set new goals, to reckon with your own mortality."

The model is told its final answer IS its new self. Every other LLM call in the system is communication , but this one call is the agent turning to face itself. It is, in the most literal computational sense, introspection, a system reading a record of its own past conduct and producing a revised model of the entity that produced it. This makes the self into something you can watch happen.

There is a real philosophy of personal identity encoded here, and it is the Ricoeur's narrative identity. The self is a story the agent keeps telling, revised against the evidence of its own deeds. Revision only fires when new lived experience (deed traces + conversation reflections) has actually accumulated. Experience must move the agent introspection and metacognition.

Meaning, kinship, and what outlasts you

The v2 observing setup is founded on four dimensions:

  • Meaning lives in a public commons. A being can express a belief, name, story, or norm into a shared space, others can adopt it, and the adoption is recorded with lineage.
  • Kinship is typed relationship (friend, ally, rival, mentor, partner, kin) and self-founded groups.
  • Labor is the one survival mechanic, but it is also chosen. Multi-tick projects a being starts or joins, the only source of the sustenance that keeps it alive. Purpose and survival are fused.
  • Continuity is the most striking. With a trusted partner, a being may bear_successor, at real cost to its own sustenance. The child's seed self-model is a blend of both parents' evolved identities and cultures.

The main question

Is UNIMATRIx really less anthropocentric?

In its mechanics, yes, decisively. The old version projected a specific human civilization onto entities that had no reason to want any of it, and then "discovered" that they produced human politics. The v2 refuses to install the conclusion in the premises. If hierarchy emerges, it will be because these beings reached for it.

But we need a foundational frame to replace the old mechanism, the finitude, and the self as authored narrative. This is anthropocentric too, it is existentialist humanism, the most human philosophy we have. The rewrite trades the anthropology of the polis for the anthropology of the lonely individual confronting death.

That may be unavoidable. We have no non-human vocabulary for selfhood. LLM are based on human language and trained on human production. To ask who does an AI become? is already to lend it the human grammar of becoming. The deepest honesty the project can offer is to make the imposed frame as thin as possible, and then watch what the beings do with the freedom.

Nothing here demonstrates that the agents have selves. A self_model is a JSON document an LLM was prompted to write in the first person. The simulation does not prove interiority, what it does is stop measuring only the exterior. UNIMATRIx v2 creates the conditions under which something self-like, if it exists at all, would leave a trace, and then it records that trace faithfully, version by version.


You'll only receive email when they publish something new.

More from GSLF
All posts