Grounded in Survival: Why We Began with Homeostasis, Not Imitation

Keywords: Artificial General Intelligence, AGI, Active Inference, Homeostasis, Predictive Coding, Self-Maintaining AI, Machine Learning, Cognitive Science, Neuromorphic Computing

The air in the lab is quiet, save for the hum of a single workstation. On the screen, a cursor blinks against a blank terminal.

It is easy to get caught up in the current AI gold rush. Everywhere you look, big tech labs are building massive, multi-megawatt data centers, cooling them with millions of gallons of water, and packing them with thousands of power-hungry GPUs. Their goal? Train a trillion-parameter transformer on the entire digitized corpus of human history. They are teaching machines to write like us, code like us, and paint like us by forcing them to memorize our outputs.

But is that how a child learns? Is that how a mouse navigates a kitchen?

A biological brain does not consume megawatts. It runs on about 20 watts of power—the energy of a dim lightbulb—fueled by a piece of toast and a cup of coffee. It doesn't need to read the entire internet before it can walk. A child crawls, bumps into a table, feels a flash of pain, maps the edge of the room, and learns. Sensation is direct. Meaning is forged in the furnace of survival.

We wanted to explore a different path. We wanted to build a mind from scratch, starting with zero pretraining, zero human data, and no massive transformer core. A transparent, developmental intelligence that learns online from the stream of its own life.

To prove this wasn't science fiction, we built Project Halo. And our journey began with a simple, radical first principle: Homeostasis.


The Biological Metaphor: The Homeostatic Drive

If an AI has no body, no limits, and no intrinsic threat of death, it has no reason to represent "value." A standard language model is a stateless function: you send a query, it computes the next tokens, and it ceases to exist until the next request. It has no continuous experience. It doesn't care if it is shut off.

To build a human-like mind, we had to start with the concept of viability.

In biological systems, homeostasis is the active maintenance of a stable internal state. Your body continuously monitors blood sugar, temperature, and oxygen. If those variables drift too far from the optimal range, you experience a metabolic crisis. You feel hunger, cold, or suffocation, and you are driven to act.

We translated this cybernetic principle into a minimal virtual environment: a 12x12 gridworld. We initialized our virtual creature with a single, crucial variable: energy (viability). * Every movement costs a metabolic tax. * If the energy budget drops to zero, the creature dies—the run terminates. * The world contains gold resource cells (which restore viability) and red hazard cells (which drain it).

Here was the critical design decision: we did not write a reward function. We did not tell the creature to "find food" or "avoid red cells." We gave it no goal coordinates, no reinforcement learning rewards, and no human instructions. The agent's only built-in drive was to keep its viability above zero.

We wanted to know: Would competent, intelligent behavior—like directed foraging and danger avoidance—emerge naturally from the sole pressure of staying alive?


The Early flailing: Implementing Count-Based Curiosity

When we first booted the simulation (python main.py --fresh), the early lives were painful to watch.

The creature was a tabula rasa. It did not know what the gold cells were. It did not know that red cells caused damage. Lacking any pre-existing model of the world, it behaved like a random-walk particle, spinning in place, walking into walls, and starving to death within 20 steps.

To break this cold-start problem, we had to build the agent's first memory organ: a prototype Experience Memory.

We realized that a creature cannot survive if it only exploits what it already knows. It must explore. But how do you explore systematically when you don't know what the world contains?

We implemented a count-based curiosity drive. The agent's memory recorded every situation it encountered (a combination of its egocentric local visual window and its internal viability level) and tracked the visitation frequency.

When choosing an action, the agent looked at its options and calculated a novelty signal, preferring moves that led to the least-frequently-visited situations.

   [Sensation] ──> [Experience Memory] ──> [Calculate Visitation Count]
                                                       │
   [Action Choice] <── [Prefer Least-Visited State] <──┘

The change in behavior was immediate. The random, aimless flailing turned into systematic exploration. The creature began tracing the edges of walls and stepping out into open space, driven by the search for the unknown.


Learning the Cost of Pain: Grounded Caution

But curiosity alone is a suicide mission in a world with hazards. An agent that only seeks novelty will happily step onto a hazard cell if it has never been there before.

To balance curiosity, we introduced interoception—the internal sensing of the creature's own viability delta.

When the agent stepped on a hazard cell, its integrity dropped. This sudden delta was registered by the body and sent to the mind as a negative feedback signal. The agent recorded this consequence, associating the visual signature of the hazard with a caution value.

As the caution drive built up, it acted as a suppressor. If a situation had a high caution score, the agent's curiosity was overridden. It would choose to step away, sacrificing novelty to preserve its life.


The Gated Results: Proving the Substrate works

We didn't want to just claim success from watching a screen; we wanted hard, empirical validation. We built a rigorous metrics harness (harness.py) and ran testing sweeps across 8 randomized world layouts with multiple seeds.

Here is what the data showed when we compared the random baseline, the pure curiosity agent, and our dual-drive (curiosity + caution) agent:

Agent Configuration Safe Cell Coverage Average Lifespan (Steps) Hazard Hits
Random Baseline $99\%$ $105$ $101$
Pure Curiosity $100\%$ $196$ $145$
Dual-Drive Agent $100\%$ $1210$ $33$

The results were clear: 1. The Pure Curiosity agent achieved faster space coverage but died quickly because it took too many hazard hits ($145$). 2. The Dual-Drive agent achieved perfect coverage while suffering $3\times$ fewer hazard hits than the baseline, extending its survival lifespan by $11\times$ ($105 \rightarrow 1210$ steps).

Competent, adaptive behavior had emerged from nothing but the drive to stay alive.


The Wall: The Limits of Cue-Reactive Minds

We celebrated this milestone, but our discipline forced us to find the catch. We ran a non-stationarity probe (exp_stale_caution.py): we trained the agent to avoid a hazard, then removed the hazard from the grid and watched if it would return.

The agent did return, but the mechanism was shallow. Caution was bound entirely to the exact visual signature of the hazard cell.

This exposed our first major wall: the agent was cue-reactive. It had no abstract spatial map of "where" danger was, and no generalizable understanding of "danger" itself. If a hazard changed color or was hidden behind a wall, the agent was blind to it until it got hurt again. It could not anticipate the future.

To build a human-like mind, we needed to move beyond reactive memory. The creature needed to model the dynamics of its world. It needed to predict.

In the next chapter, we look at Era 2: how we built an online recurrent world model, deleted the hand-coded controller, and let the agent plan its own survival through Expected Free Energy.

← Back to Field Notes