pest
2011-11-19, 10:04:26
Hallo,
vielleicht kann mir ja ein Informatiker bei folgendem Problem weiterhelfen.
Ich modelliere Populationen mit zellulären Automaten, was in seiner simpelsten Form wie folgt aussieht.
Es existieren 2 Populationen fixer Größe.
Einmal eine Gitterstruktur (realisiert als 2D-Array): die lokale Population
Eine "unsichtbare" Metapopulation als 1D-Array.
Jede der Zellen besitzt einen Integer-Wert der die Art des Individuums festlegt.
Jeder Art ist auch eine Farbe zugeordnet, wieder realisiert über direkte Adressierung also Color[Art]
Jetzt zur Dynamik und meinem eigentlichen Problem.
In jedem Automatenschritt stirbt ein Individuum in jeder Population und wird durch ein anderes Individuum ersetzt.
Dabei können auch Arten von der Metapopulation in die Lokale wandern.
Jetzt existiert eine Wahrscheinlichkeit dafür das in der Metapulation eine neue Art geboren wird. Und hier ist mein Problem, wie ich das abbilde.
Ich habe jetzt ein globales Artenarray realisiert als C++ vector an das ich gegebenfalls neue Arten (mit neuer Farbe) anhänge.
Da ich aber nicht weiß wieviele Neuentstehungen im Simulationslauf vorkommen wird vorher geschaut ob nicht eine Art schon ausgestorben ist.
Die neue Art erbt dann die Farbe und den Wert der alten Art.
Das funktioniert auch alles wunderbar. Aber ich frage mich ob das eleganter geht.
Zur Analyse benötige ich nämlich die Artenstrukturen der einzelnen Subpopulation die ich jetzt umständlich aus der globalen Struktur errechnen muss.
Welche Farbe und welchen Wert eine Art hat ist irrelevant, wichtig ist nur die Anzahl.
vielleicht kann mir ja ein Informatiker bei folgendem Problem weiterhelfen.
Ich modelliere Populationen mit zellulären Automaten, was in seiner simpelsten Form wie folgt aussieht.
Es existieren 2 Populationen fixer Größe.
Einmal eine Gitterstruktur (realisiert als 2D-Array): die lokale Population
Eine "unsichtbare" Metapopulation als 1D-Array.
Jede der Zellen besitzt einen Integer-Wert der die Art des Individuums festlegt.
Jeder Art ist auch eine Farbe zugeordnet, wieder realisiert über direkte Adressierung also Color[Art]
Jetzt zur Dynamik und meinem eigentlichen Problem.
In jedem Automatenschritt stirbt ein Individuum in jeder Population und wird durch ein anderes Individuum ersetzt.
Dabei können auch Arten von der Metapopulation in die Lokale wandern.
Jetzt existiert eine Wahrscheinlichkeit dafür das in der Metapulation eine neue Art geboren wird. Und hier ist mein Problem, wie ich das abbilde.
Ich habe jetzt ein globales Artenarray realisiert als C++ vector an das ich gegebenfalls neue Arten (mit neuer Farbe) anhänge.
Da ich aber nicht weiß wieviele Neuentstehungen im Simulationslauf vorkommen wird vorher geschaut ob nicht eine Art schon ausgestorben ist.
Die neue Art erbt dann die Farbe und den Wert der alten Art.
Das funktioniert auch alles wunderbar. Aber ich frage mich ob das eleganter geht.
Zur Analyse benötige ich nämlich die Artenstrukturen der einzelnen Subpopulation die ich jetzt umständlich aus der globalen Struktur errechnen muss.
Welche Farbe und welchen Wert eine Art hat ist irrelevant, wichtig ist nur die Anzahl.