Machi - Roly Poly 1

So far, we have ideated on how we would grow from a single cell to something we will call digital being.
Single Cell --------------------------------------> Digital Being
Basic idea that we have developed so far:
Place a single cell in a constrained 2D texture WxHxC.
Then, have the single cell organism grow.
texture edges will contain sensors and motors.
inner textures usually contain a MINI brain of sort.
Artificial Being as a Shader Simulation Model
Initial texture ideation was basically 48x48 RGBA texture where we place the single EGG cell at the center, and have it grow out the limbs.
[HEAD]
^
[LEFT ARM] <- [SPINE] -> [RIGHT ARM]
|
[PELVIS]
/ \
[LEFT LEG] [RIGHT LEG]
This is pretty basic. We start out as a EGG cell which turns to SPINE cell. Then it will add more components like NECK, HEAD, and other limbs.
We had 2 versions of this design where we would model things in pixel dimensions (above) or to pack vectors inside texture map.
Vector design was considered a better approach for an organism that can move with skeletal movements.
Artificial Brain in Shader Model
The next ideation was to model human brain.
Instead of focusing on the LIMBs, this design doubles down on BRAIN. BRAIN covers 95% of the map, and sensory and motors are like OUTLETs.
The main problem with this design is that while laying out things this way gives a good insight into how human-like brain would be designed from ground up, there is no promise whatsoever about how we would make this layout work.
And this design focuses mostly on the INVISIBLE, which is a dangerous area to go into. We can't reasonable something we don't know too much.
Analysis
Artificial Brain idea is Phase 100 idea. At this time, we need a fast iteration loop that works and that can be steered. We do not need a cruise ship, we need a boat we can steer at ease.
Problem Statement
So, we define the problem in the following way:
Can we, using only local rules, generate a living entity from single cell?
Let's define "living entity" now.
can emerge from local rules
can run in parallel shader execution
does not require centralized control
is observable in simulation
Questions
Can it think on its own? At this time, the focus is not on the intelligence but rather we are focused on giving these AI agents a body. A body that is not just visual, but semantically make sense.
Why does starting from single cell matter? It gives us a constraint that forces us to use local rules and progressive growth. This allows us to not cut corners and just have a rigged character that can run animation sequence.
Motor planning? It sounds like, what you are building is essentially a robot. How would you make them do what you want them to do? For example, let's say an agent needs to run away from something, how would the agent plan this movement? We will have a ASCII representation of the world. LLM agent will be given this representation and decide on a next favorable state. The next favorable state. Then emit high-level motor tokens to accomplish that. Feedbacks from motor units will also come back allowing for steering.
Memory System? The first version won't have any sort of memory.
How would agent learn, for example, to walk? The idea is that if they can crawl, they can walk. And before they can crawl, they have to learn to roll over. The belief is that we can train a small specialized models for specific motor functions by simulating physical interactions in the Machi world.
Biggest Hurdle
The biggest hurdle is that we are trying to model human being in this early stage. I don't think we should do that. We can start with smaller organisms.
How about we model roly-poly?
When you think of Roly-Poly, they seem so simple. They are even cute despite looking like an insect. They also have very simple and interesting mechanics for survival. It also goes well with tree simulation because they can live in humid soils below it.
Segmented body with repeatable units
Instead of complex joints, it has many legs
In defense mode, it rolls into a ball and may really roll!
They move mostly at constant speed, easy to model.
They can interact with leaf litter, fungus, soil moisture, etc.
It does not even need vision.
Their body design is modular with each component having simplicity.
Devils Advocate
Why not ants or bees?
They are social super organisms. We are working on embodiment, and not yet ready to model anything around the colony simulation.
Roly-Poly is actually a very strategic choice because we can focus only on simulating a very simple body with limited motor movements.
There is a reason why we instinctively think of them to be cute.
Alternative?
Pixel suggests that we could model "worms" since it only has 302 neurons and even has completely mapped nervous system. But I think roly-poly wins the favorability contest hands down.
What's after Roly-Poly?
The real goal of this first organism is to prove four things:
Growth works
Segments can form
Locomotion emerges
Sensors -> motor loop works.
Once we prove this, we will be in much better position than where we are right now.
Anatomy of Roly-Poly
7 pair of legs (equal size and form)
2 pair of antennae (one is much longer than the other)
Vision is minimal
Feed on moist
Decaying plant matter that they chew with their small mouthparts
very useful in recycling nutrients by shredding dead plant material to decompose.
Eat at night. During the day, under cover.
tail like UROPODs (can drink water from it)
in some species, females can reproduce parthenogenetically.
two broods of eggs produced annually.
molts for within 24 hr.
Modelling Roly-Poly
From the look at feel standpoint, let's make it a tiny being.
Flat: XXXX
Rolled: XX
XX
In world of Machi, each pixel is around 4cm, so this will make this roly-poly 16cm. So yeah, quite big.
Alternatively, we can:
Flat: XX
Rolled: X
This small size may actually be better, but let's think about this further.
In my mind though, we would want to model it big enough to actually "see" the roly-ploy rolling itself up. In that sense, I think it may be better to make AI agents in machi a tiny beings compared to the surroundings.
Sprited Dev 🐛


![[WIP] Digital Being - Texture v1](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fuploads%2Fcovers%2F682665f051e3d254b7cd5062%2F0a0b4f8e-d369-4de0-8d46-ee0d7cc55db2.webp&w=3840&q=75)

