Siehe unten stehenden Code zur Bestimmung der Anzahl der besiedelten Schildkrötenhaufen (Rote und graue Schildkröten) aus einer Reihe von zufällig verteilten Sesshafte Schildkröten (schwarz), sowie die maximale, minimale und mittlere Clustergröße (radiale Ausdehnung) in einer Netlogowelt/Schnittstelle.Ermitteln der maximalen, minimalen und mittleren Schildkrötenhaufengröße sowie der Anzahl der Schildkrötenhaufen in Netlogo
globals[ cluster-size cluster-count cluster-size-growth cluster-count-growth ]
to setup
clear-all
ask patches [ set pcolor white ]
create-turtles 1000 [
set color black
set label-color blue
setxy random-xcor random-ycor
set cluster-size 1
]
ask n-of 5 turtles [
ask turtles in-radius one-of [1 2 3] [
set color one-of [red grey]
]
]
end
to cluster-collect
let base-settlers turtles with [ color = red ]
let consp-settlers turtles with [ color = grey ]
ask base-settlers [
set cluster-count count consp-settlers in-radius cluster-size
set cluster-size-growth cluster-size + 1
set cluster-count-growth count consp-settlers in-radius cluster-size-growth
if cluster-count >= 1 [
ifelse (cluster-count-growth - cluster-count != 0) [
set cluster-size cluster-size + 1
][
print count base-settlers with [ count turtles with [ color = grey ] >= 1 ]
]
]
]
print [ max cluster-size-growth ] of base-settlers
print [ max cluster-count-growth ] of base-settlers
print [ mean cluster-size-growth ] of base-settlers
print [ mean cluster-count-growth ] of base-settlers
print [ min cluster-size-growth ] of base-settlers
print [ min cluster-count-growth ] of base-settlers
print [ standard-deviation cluster-size-growth ] of base-settlers
print [ standard-deviation cluster-count-growth ] of base-settlers
print [ variance cluster-size-growth ] of base-settlers
print [ variance cluster-count-growth ] of base-settlers
end
Der Fehler, den ich bekommen ist folgende: MAX expected input to be a list but got the number 10 instead.
ich darauf wetten würde für die mittlere und min-Funktionen als auch das gleiche tun, weil es nicht basen Siedler erkennt als ein Mittel eingestellt. Irgendwelche Gedanken darüber, wie man diesen Code umwandeln kann, um die maximale, minimale und mittlere Clustergröße (radiales Ausmaß) und die Anzahl der gesetzten (roten und grauen) Schildkröten zu erhalten?
Ich mache die Cluster-Variablen global, aber es scheint Netlogo hat immer noch ein Problem mit der 'print max Cluster-Größe-Wachstum von Basis-Siedler 'auch außerhalb der' ask [] 'Befehl. Der Fehler, den ich bekomme, ist 'MAX erwarteter Eingang, um eine Liste zu sein, aber erhielt die Zahl 11 stattdessen. ' – nigus21
Das ist, weil Sie das' max' innerhalb des [] haben. Probieren Sie 'print max [cluster-size-growth] von Basis-Siedlern aus. Entschuldigung, ich habe in meinem ursprünglichen Kommentar keine korrekte Syntax verwendet. – JenB