Ich versuche ein archäologisches Modell zu erstellen, in dem Jäger Bilder in Schutzräumen machen, abhängig von ihrer Qualität.Variablen in verschiedenen Rassen
breed [shelters shelter]
breed [hunters hunter]
shelters-own [quality paintings]
Der Wert jeder Schlupf Qualität wird in der Einrichtung (mit einem Schieberegler für die tatsächliche Anzahl von Unterstell) eingestellt.
create-shelters number-shelters [set quality random 100]
Die Wirkung der Malerei-oder-nicht durch zufällige definiert wird dann gegen die Qualität der einzelnen Unterschlupf:
to make-painting
ask shelters [
if any? hunters-on patch-here [
if random 100 < quality [set paintings paintings + 1]
]
]
end
Nun würde Ich mag es complexify ein bisschen mehr: die Qualität wouldn‘ Nicht durch den Unterschlupf selbst definiert (und somit für jeden Jäger derselbe), sondern von den Jägern: jeder von ihnen würde für jeden Unterschlupf eine andere Qualität angeben. Die Aktion von Malen oder Nicht wäre immer noch ein Test gegen Zufall, aber mit dieser neuen Variable, definiert durch jeden einzelnen Jäger ...
Aber ich kann keinen Weg finden, es richtig zu kodieren.
Hat jemand einen Vorschlag?
Bewegen sich Jäger in verschiedene Unterstände? Willst du, dass ein bestimmter Jäger einem bestimmten Tierheim immer die gleiche Qualität zuweist? Wenn Sie möchten, dass die Bewertung beibehalten wird, müssen Sie sie speichern, wenn sie eine zufällige Komponente enthält. (Leider können Tabellen Patches nicht als Schlüssel verwenden, aber Sie können den Patch-Ort als Liste von ganzen Zahlen eingeben.) – Alan
Jäger bewegen sich zufällig und besuchen verschiedene Unterstände (ich habe das Modell gemacht, um zu stoppen, wenn ein Unterstand 100 Gemälde bekommt). In der Tat ist die Idee, dass, wenn es zum Beispiel 10 Unterstände gibt, jeder Jäger eine andere Variable von 10 Qualitätswerten haben würde, die vom Aufbau persistent sind. Wie speichern und rufen Sie diese Werte aus Patches ab? – gvanhavre
Warum sollte man dann nicht jedem Jäger ein "Shelter" -Attribut geben, das eine Liste der Länge 10 (oder wie viele Unterstände man auch immer hat) und die Qualität jedes Tierheims in der Liste speichert. Um die Buchhaltung zu vereinfachen, könnten Sie jedem Unterstand einen Unterschlupfindex (z. B. 0 bis 9) zuweisen und diesen zum Indexieren der Liste verwenden. – Alan