NetLogo: Wie kann sichergestellt werden, dass eine Variable in einem definierten Bereich bleibt?

Ich habe ein paar Variablen, die durch eine Variation von + 0.1 und -0.1 oder ohne Änderungen an untergeordnete Agenten vererbt werden können, oder wieder zufällig. Was ich getan habe, ist wie folgt: (Der Code ist nur ein Beispiel)

to reproduce
  ask turtle 1
  [
  let X-Of-Mother X

  hatch 1
  [

    set X one-of (list (X-Of-Mother) (X-Of-Mother + 0.1) (X-Of-Mother - 0.1) (random-float 1))

    ]

  ]

end

Momentan muss ich überprüfen, ob X der Kinderschildkröte immer in Reichweite ist:

if X > 1 [set X X - 0.2]
if X < 0 [set X X + 0.2]

Was könnte ein besserer Weg sein, dies zu tun?

Was ist, wenn ich Random-Normal 0.5 0.1 verwenden muss, wie kann ich das auf Werte zwischen 0 und 1 beschränken? Ich habe viele Wiederholungen der Erzeugung solcher Zufallszahlen durchgeführt. Ich denke, die Qualität von Random-Normal ist gut und es gibt nicht so viele Mal, dass ich überprüfen muss, ob es außerhalb des Bereichs ist.

zum Beispiel :

  to test 
    Let c 0
    let b 0 
    repeat 100000000
    [Set b random-normal 0.5 0.1
      if b > 1 [set C C + 1]
      If b < 0 [set C C + 1]

      ]
    print c  

  end

AUSGABE ist *67 Zeiten außerhalb von 100000000 Zeit* 67 ist die größte, die ich bekommen habe, ich habe 58, 51, ...

Antworten auf die Frage(3)

Ihre Antwort auf die Frage