An-ego altruist society


“An ego-altruist society” is an artificial life simulation, created as a reflection on the duality of our personalities — between individualism and selflessness, between egotism and altruism. The simulation shows how a society of agents can flourish with symbiotic interactions between the egoistic and altruist extremes. Individual agents group into larger organisms that seek, mold, stretch, and split in order to absorb energy. These emerged organisms adapt in shape, size and behavior to the energy available in the environment. The energy manifests as lines of text from Howard Roark’s courtroom speech in Ayn Rand’s novel “The Fountainhead.” The simulation is a counterpoint to the utopian individualism presented through Howard Roark’s character. The form of Howard’s speech exists as a premise that fuels the critique embodied in the artwork while fueling the system that is the artwork itself. Human personalities are caricatured in this piece, standing on the extremes of the egotist-altruist spectrum, but with the message that a system can survive in the co-existence of such antagonistic roles.


The system was implemented in Processing/Java. Below are three simulations: “77”, “39”, and “19". Each video is a three-hour simulation of the system, shown at 1080p and 5 times the speed. The audio is procedural and reflects the rhythm of energy generation and how often new agents are born.


White lines, rendered as text, deposit energy in the environment. The agents can absorb energy when they overlap with these lines. There are two types of agents: the egotists in red, and the altruists in orange. All agents have the following properties: an amount of energy; an energy storage capacity; an energy absorption rate (inversely proportional to the amount of energy the agent already has); an energy dissipation rate (the agent inherently loses energy during its lifetime); and a radius of vision. An agent ceases to exist when its energy reaches zero. The agents collide with each other, and when these collisions persist, a bond between two agents may be formed. These bonds are simulated as fixed-distance joints, meaning that connected agents may revolve around each other. Each bond is univocal and indestructible, except when one of the agents dies. When two agents are connected, they can share energy with each other, but this behavior depends on the agent’s personality. In order to provide groups of agents with spatial agility, a bond can only be created if an agent has zero or one connection. A bond can never occur between two egotist agents, and an egotist only connects with an altruist if it benefits the egotist, i.e., if it has energy over its capacity and thus is willing to share.

    Bonded agents can share energy with each other according with the following: energy ceded from an agent to another is taken at the receiver’s absorption rate; no portion of energy will be ceded if it implies a zero energy balance for the giver; between two altruist agents, energy is ceded by the one with more energy; between an altruist and an egotist, the egotist cedes energy only if it is over capacity; finally, also between an egotist and an altruist, the altruist cedes energy if the egotist is below its capacity. 

    Only egotist agents can absorb energy directly from the lines. Their principal behavior is to look for energy in the system and absorb it. Nonetheless, there is a caveat to this behavior as a way to imagine greediness in those agents: when the absorbed energy reaches the double of an egotist’s storage capacity, the agent dies.

    Altruist agents do not look for energy directly, but instead look for other agents. The only way that an altruist can absorb energy is through a bond with another agent. If the energy ac-cumulated by an altruist doubles its capacity, it splits in two agents. These newborn agents are rendered in pink, and they remain inactive in the simulation for a short period until they start displaying either an egotist or altruist behavior.

This set of rules and behaviors enable the individual agents to form more complex entities that adapt to the energy in the environment. The egotists act as the sole entry points of energy into the organism, while the altruists have mostly the role of distributing it evenly throughout the body while also renew-ing parts of the organism when reproducing. It is often possible to observe areas of the organism that are less healthy, as they fade into the background with the decrease of the energy levels. In low energy conditions, the altruist agents are the first to die. The egotists follow, dying due to energy overflow as they do not have other connected agents to share their energy with.