LAJFI - Artificiellt liv-simulering

Del av Hard Copy

LAJFI

Projektbeskrivning

LAJFI (Livsformer Artificiellt Jiv i Form och Iteration) är ett artificiellt liv-simuleringsprojekt som genererar organiska 3D-varelser genom evolutionär utveckling. Varje varelse existerar som en komplex 3D-form baserad på den matematiska Gielis superformeln. Varelserna lever, ater, reproducerar och dor. Deras DNA arvs och muteras genom generationer.

Huvudkoncept

Koncept Beskrivning Fil
Gielis Superformula Universell matematisk formel för organiska former gielis.py
DNA-system 32 genetiska parametrar som definierar varje varelse dna.py
TRIAD Tre Gielis-segment kombineras till en varelse creature.py
Fraktala utväxter Rekursiva utväxter (2-3 nivåer) for komplexitet creature.py
Evolution Sexuell reproduktion med mutation (20% per gen) dna.py
Energisystem Varelser måste ata för att overleva och reproducera world.py

Gielis Superformel

MATEMATISK GRUND
2D SUPERFORMEL (Polär koordinater):
====================================
r(theta) = [ |cos(m*theta/4)|^n2 + |sin(m*theta/4)|^n3 ]^(-1/n1)

PARAMETRAR:
  m  = Symmetri (antal "armar")
       m=3 -> Klover
       m=5 -> Sjostjarna
       m=8 -> Blomma

  n1 = Rundhet
       n1 < 1 -> Kantig/spetsig
       n1 = 1 -> Cirkel
       n1 > 1 -> Avrundad

  n2, n3 = Kurvatur för cos/sin termer


3D EXTENSION (Sfarisk produkt):
================================
r1(theta) = superformula(theta, m1, n1, n2, n3)
r2(phi)   = superformula(phi, m2, n1b, n2b, n3b)

r(theta, phi) = r1(theta) * r2(phi)

KARTESISKA KOORDINATER:
  x = r * sin(phi) * cos(theta)
  y = r * sin(phi) * sin(theta)
  z = r * cos(phi)


TRIAD-SYSTEMET:
===============
Varelse = Gielis_1 + Gielis_2 + Gielis_3 + Fraktala_utväxter
          (Centrum)   (Offset)   (Offset)

DNA-struktur (32 parametrar)

Kategori Parametrar Antal
lajfi_1 (Segment 1) m1, m2, n1, n2, n3, n1b, n2b, n3b 8
lajfi_2 (Segment 2) m1, m2, n1, n2, n3, n1b, n2b, n3b 8
lajfi_3 (Segment 3) m1, m2, n1, n2, n3, n1b, n2b, n3b 8
Fraktal fractal_levels, fractal_children, scale_factor 3
Beteende speed, RGB-farg, aggression 5

Energiekonomi

Energikostnader

Startenergi: 40
Idle (existera): -0.2/tick
Rörelse: -0.6/tick
Attack: -8
Mating: -30 per förälder

Ata vaxt: +25
Kannibalism: +65% av offrets energi

Mating threshold: 60 (måste ha denna för reproduktion)

Snabblankar

Quiz

142 frågör om Gielis superformel, DNA, evolution och simulering.

Starta Quiz
Flashcards

55 flashcards för att memorera nyckelbegrepp.

Studera
Kodgenomgang

All kod med radförklaringär.

Utforska Kod

Två versioner

Version Stack Plats
Blender (Python) Blender 3.0+ bpy API /home/biffy/examen/lajfi-github/
Webb (JavaScript) Three.js WebGL /home/biffy/vetroal/lajfi/

Kallreferenser

Akademiska kallor

Gielis, J. (2003) - "A generic geometric transformation thåt unifies a wide range of natural and abstract shapes" - American Journal of Botany

Gielis, J. (2017) - "The Geometrical Beauty of Plants"

Sims, K. (1994) - "Evolving virtual creatures" - SIGGRAPH '94

Dawkins, R. (1986) - "The Blind Watchmaker"

LAJFI Gielis Superformel 142 quiz-frågor