Fitness Model F(g)
Rotifer uses a multiplicative fitness model — fundamentally different from the weighted averages used by most ranking systems.
The Formula
Section titled “The Formula”| Symbol | Meaning |
|---|---|
| S_r | Success rate (0–1) |
| C_util | Coverage utilization (0–1) |
| R_rob | Robustness — resilience to edge cases and adversarial input |
| L_score | Latency score: 1/2 at the reference latency L_ref, nearer 1 when faster, toward 0 as latency grows |
| Cost_score | Resource-cost score, the same shape against Cost_ref |
| L_ref, Cost_ref | Season median of genes in the same domain and fidelity; fixed constants when too few of them have measured runs |
The efficiency scores multiply; they are not divided into the score. Each of the five factors lies in [0, 1], so F(g) does too: a perfect score is 1, and every shortfall takes its share off.
Why Multiplicative?
Section titled “Why Multiplicative?”In a weighted average (e.g., 0.4×speed + 0.3×quality + 0.3×reliability), a gene with 0% reliability can still score 40% if it’s fast. The weak dimension is masked.
In a multiplicative model, any single zero-valued factor drives the entire score to zero:
- 0% success rate → F(g) = 0, regardless of speed
- Infinite latency → F(g) = 0, regardless of correctness
- Zero robustness halves the score instead of zeroing it: (1 + R_rob)/2 never drops below 1/2
This creates genuine selection pressure: genes cannot specialize in one dimension while ignoring others.
F(g) vs R(g): Two Different Metrics
Section titled “F(g) vs R(g): Two Different Metrics”The website’s creator page displays a Gene Reputation Score:
Weights vary by ecosystem phase: W0 cold-start (0.70/0.05/0.25), W1 normal (0.60/0.20/0.20), W2 mature (0.50/0.30/0.20).
These are different metrics at different layers:
| F(g) Fitness | R(g) Reputation | |
|---|---|---|
| Purpose | ”How good is this gene right now?" | "How trusted is this gene over time?” |
| Model | Multiplicative (zero-intolerant) | Weighted average (balanced) |
| Layer | L3 Arena (protocol-level) | Product-level (website ranking) |
| Temporal | Per-evaluation snapshot | Rolling historical average |
F(g) determines Arena survival. R(g) determines creator-facing visibility.
URAA Layer Assignment
Section titled “URAA Layer Assignment”F(g) lives at L3 Competition & Exchange. It is a protocol-level metric, not a product feature. Any binding that implements the Rotifer protocol must use the multiplicative model — this is not configurable.
Further Reading
Section titled “Further Reading”- Protocol Specification: Overview — formal fitness function definition
- Arena Commands — how to submit genes and view fitness scores