Laden...

BIOEngine züchten statt rendern [Version 19.02]

Erstellt von userid11997 vor 14 Jahren Letzter Beitrag vor 14 Jahren 3.648 Views
U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 14 Jahren
BIOEngine züchten statt rendern [Version 19.02]

Moin,

hierbei handelt es sich um ein Spassprojekt , welches sich BIOEngine nennt. Das Prinzip ist ganz einfach, man Programmiert auf grundlage von Biologischen abläufen wie etwa Zellebene.

Wir haben vor dammit in späterer Ausbaustufe z.b. aus einem Zellhaufen Gegner für ein Spiel zu "züchten". Auch ließe sich das Prinzip des Organismus auf ein Programm übertragen , bei dem statt Zellen der Quellcode wächst und sich selbst Selektiert.

Anbei ein kleines Beispielprojekt , eine Wachstumsimulation. Diese Simulation beruht auf dem einfachsten biologischen Modell: der Zelle.

Die Zelle lebt solange genug Nahrung(Energie) vorhanden ist , teilt sich , wenn die Energie dazu ausreicht und Stirbt ab , falls sie Aufgebraucht oder ihr maximales Alter erreicht hat.

Wenn die Zelle allerdings zuviel Energie zur verfügung hat , Mutiert sie und stirbt in der Regel oder auch nicht , in diesem Fall wird die Zellreproduktion unkontrolliert und die neuen Zellen können ebenfalls von anfang an mutieren.

Wir werden demnächst sehr intensiv an diesem Thema forschen und unsere erkenntnisse in die BIOEngine einbringen.

Die engine ist erstmal zur freien Verfügung , später aber nur für Freeware-Projekte zu haben!

Neueste Version Siehe letzter Post

S
443 Beiträge seit 2008
vor 14 Jahren

verstehe ich nicht was das Teil machen soll
Was soll es machen? Aus dem Code war es auch nicht wirklich ersichtlich was es tut

mbg
Rossegger Robert
mehr fragen mehr wissen

Montag morgen ist die beste Zeit um eine erfolgreiche Woche zu beginnen

U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 14 Jahren

Wie bereits oben dargestellt , handelt es sich um eine Zellsimulation etwa von Schimmelpilzen oder Bakterien.

Man stellt einen Lebenszyklus und eine Vermehrungsrate für den Zellstamm ein und gibt der Kultur einen Nährboden. Anschließend wird die Vermehrung grafisch dargestellt.

Blau: Alles OK
Rot: Die Zelle stirbt im nächsten Zyklus (an Altersschwäche)
Grün: Es ist eine mutierte Zelle
Schwarz: Die Zelle ist tod

Es dient wie erwähnt als einfachste darstellung des Zellwachstums!!

U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 14 Jahren

Die aktuelle Version umfasst schon einige Einzellermodelle , im ganzen aber erstmal nur Protozoa.

Protozoa versorgt , sofern genügen Licht vorhanden ist , sich selbst durch Photosynthese.

Weiter Einzeller und bald auch Mehrzeller sind geplant , ausserdem implementieren wir auch eine Form der Genetik.

Dies wird wie bei der DNA/DNS eine Anweisungsfolge für den Organismus sein , etwa im Punkt Wachstum oder Reproduktion.

Dabei werden die "Programme" mit Kombinationen aus Basen aufgebaut. So könnte eine Programmstrucktur etwa so wie im Anhang aussehen. Es ist auch ein Testprojekt in Planung , bei dem ein Programm als Organismus ausschließlich über GCode (Genetic Code) programmiert wird.

U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 14 Jahren

Die aktuelle Version umfast schon eine implementierung von GCode. Diese ist allerdings längst noch nicht vollständig.

GCode wird aus jeweils 2 Basenpaaren pro befehl gebildet.
Auf Wunsch kann ich ein Tutorial in der Tutorial-Rubrik des Forums einstellen.

U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 14 Jahren

Die aktuelle Version der BIOEngine implementiert nun vollständig die Sprache GCode!

Die Programme sind aufgebaut wie Assembler , jedoch schn etwas fortschrittlicher.
Es gibt einen Stack , der für die Zelle sowie für sämtliche Helixeinheiten der DNA sichtbar ist. Der Stack stell Botenstoffe der Zellen dar.
Darüberhinaus gibt es Register , ebenfalls für die Zelle und Helix sichtbar sind. Die addressierung erfolgt dynamisch , d.h. je nach bedarf werden Register angelegt.

Die genetische Programmierung besitzt Sprungbefehle , umfangreiche opeerationen , um auf dem Stack oder Registern zu arbeiten , Verzweigungen , Rechenopperationen und ist in der lage aus diesem Befehslssatz einzelne Elemente , wie etwa eine Schleife zusammenzusetzen.

Ebenfalls gibt es die Möglichkeit aus dem Programm heraus auf eigene Methoden der Zelle zuzugreifen.

Die Register der Zelle werden in der nächsten Version der BIOEngine mit den informationen der Zelle vorbelegt sein. Hierbei werden das alle Informationen der Zelle (Lebensenergiebedarf,Alter ...) und deren momentane DNA sein.

Es gibt keine längenbeschränkung der DNA , lediglich eine beschränkung auf 15 Helixeinheiten. (Jede Helixeinheit ist eine DNA-Sequenz)

Im Anhang ein kleiens Beispiel

U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 14 Jahren

Für die , dies interessiert