Verschiedene Szenarien mit Simulationen zum Schwarmverhalten
neu - März 2024: Entstehen und Vergehen von Nachbarschaftsgruppen
Video
Auf dieser Seite wird das Schwarmverhalten mit unterschiedlichen
Individuentypen (sogenannten Boids) in einer zweidimensionalen Simulation gezeigt.
Dabei agieren die Individuen nach einigen Schwarmregeln wie Kohäsion,
Separation und Alignment sowie weiteren Regeln. Die Individuen besitzen
je nach Video unterschiedliche Eigenschaften, z.B. eingeschränkter
Sehwinkel oder Rundumsicht. Eine genaue Beschreibung zu den
Einstellungen, Regeln, der Geometrie und der hier verwendeten Software
ist in
folgender Dokumentation enthalten
Der Start eines jeden Videos basiert auf einer Zufallsverteilung.
Die virtuellen Lebewesen müssen folgende Regeln einhalten, die auf den von Craig Reynolds aufgestellten Schwarmregeln ( Separation, Köhäsion und Alignment ) basieren. Die weiteren hier eingeführten Regeln wie Stillstandsregel, Begrenzungsregel oder Geschwindigkeitsregel, aber auch die Vorgabe der Extrapolation der Bewegung benachbarter Schwarmindividuen bei Auswahl einer vorausschauenden Gradientenbewegung dieser Individuen stellen eine Ergänzung der urspünglichen Regeln von Craig Reynolds dar:
Eine genaue Beschreibung zur Symbolik siehe unter DokumentationStillstandsregel : Stillstand ist nicht erlaubt.
Begrenzungsregel : meide Begrenzungen
Separation : Vermeide Kollisionen - (eine Kollision wird im Bild durch eine kleine grüne Marke angezeigt)
Nachbarschaftsregel: Nehme Nachbarschaftsgruppe im Blickfeld wahr
Kohäsion und Alignment :
- folge dem arithmetischen Schwerpunkt der Nachbarschaftsgruppe
oder alternativ
- folge der Bewegungsrichtung der Nachbarschaftsgruppe (bei Einstellung der Option Gradient)
Gradientenregel: bei der Auswahl der Option Gradient wird als fest eingestelltes Entfernungsmaß 50 Rasterlinien in Richtung des Gradienten vorgegeben, was ca. ¼ der vordefinierten Sichtweite der virtuellen Lebewesen entspricht
Beharrungsregel : Falls keine der obigen Regeln greift, gehe geradeaus in Blickrichtung weiter und verharre bei dieser Bewegung
Sofern „Speed“ aktiviert ist, ergeben sich folgende Zusatzregeln für die Individuen, wobei die Erhöhung der Geschwindigkeit pro Step verdoppelt wird.
Geschwindigkeitsregeln :
- Erhöhung der Geschwindigkeit bei Kollisionsgefahr
- Erhöhung der Geschwindigkeit bei freier Sicht
- Erhöhung der Geschwindigkeit, falls Nachbarschaftsgruppe sich schnell bewegt
Die hier wiedergegebene Reihenfolge der Regeln gibt auch gleichzeitig die Stärke der Regeln wieder. Die oberen Regeln sind stärker als untere.
Die Separationsregel wird in einem Algorithmus umgesetzt, bei dem in einem Rasterfeld von 10 x 10 Rastern (Pixeln) um das Individuum herum geprüft wird, ob sich ein oder mehrere andere Individuen innerhalb dieses Feldes befinden. Gegenüber dem Nachbarindividuum mit der dichtesten Annäherung wird dann eine Richtung eingeschlagen, die am weitesten von diesem wegführt. Dabei wird auch die Bewegungsrichtung des Nachbarindividuums berücksichtigt. Bei Entscheidungsvarianten, die mehr als 1 gleichwertige Bewegungsrichtung zulassen, erfolgt eine Zufallsentscheidung für die neu einzuschlagende Richtung. Sofern die Option Speed aktiviert ist, wird bei einem Pixelabstand von weniger als 3 Rasterelementen die Geschwindigkeit des Individuum erhöht, d.h. es wird in einem 2. Step erneut versucht, einen größeren Abstand vom Nachbarindividuum zu erzielen. Wenn als beste Lösung nur noch ein Rasterabstand von <= 1 ermittelt wird, kommt das einem Stillstand gleich, d.h. dann wird die Stillstandsregel verletzt. Verletzungen der Stillstandsregel werden durch eine grüne Marke im Bild symbolisiert.
Bei der Simulation von Bewegungen von Menschengruppen wurde ein anderes Regelsystem verwendet, das nicht die Bewegungen und Bewegungsrichtungen anderer Boids berücksichtigt, sondern die Fixierung auf ein Ziel (am oberen Bildrand) vorsieht. Folgende Schwarmregeln wurden bei den Experimenten für jeden Boid angewandt:
1. Prüfe, ob die eingeschlagene Bewegungsrichtung zum Zielkorridor weist. Falls nicht, optimiere die Zielrichtung (Markierung weiß).
2. Wenn keine Behinderung vorliegt, dann bewege Dich auf Deinen Zielkorridor zu (Markierung weiß).
3. Bei Kontakt mit einem anderen Boid (weiße Markierung wird grau), bewege Dich in eine alternative Richtung, sofern diese neue Richtung nicht zu einer Richtungsumkehr bezogen auf den Zielpunkt weist.
4. Anderenfalls warte eine zufällig gewählte Zeitspanne (Markierung des Boid wird schwarz, Richtungsanzeiger wird weiß), um einen anderen Boid passieren zu lassen und passe bei Bedarf die Zielrichtung erneut an (d.h., Regeln 1, 2 und 3 werden erneut durchgeführt).
5. Wenn die Richtung auf den Zielkorridor hin versperrt ist (immer noch graue oder schwarze Markierung des Boid), dann suche eine freie Position in folgenden Richtungen gemäß folgender Reihenfolge:
a) zuerst schräg rechts (im Uhrzeigersinn)
b) schräg links
c) 90 Grad rechts
d) 90 Grad links
e) Rückwärtsbewegungen sind nicht erlaubt
alternative Regel e) als andere Simulationsvariante: Rückwärtsbewegungen sind zugelassen
Wenn eine Richtung frei ist, setze den Weg wieder fort (Markierung des Boid wird wieder weiß) und beginne anschließend wieder mit Regel 1.
6. Wenn keine Richtung frei ist, dann warte eine kurze selbst gewählte Zeitspanne, um andere Boids passieren zu lassen (Markierung wird schwarz, Richtungsanzeiger wird weiß). Die Richtungssuche wird vorübergehend eingestellt, d.h. der nun weiße Richtungsanzeiger bewegt sich nicht mehr. Anschließend wende Regel 5 erneut an.
Bei einigen Versuchen wurden bei Stauungen für die Regel 5e Rückwärtsbewegungen zugelassen, um den Boids zu ermöglichen,
ein Hindernis mit wenigen Schritten zu umgehen, wodurch sich Stauungen reduzieren oder teilweise sogar auflösen lassen.
Wenn Rückwärtsbewegungen zugelassen werden, dann erinnert das Schwarmverhalten an die Fortbewegungen von Ameisen auf einer
belebten Ameisenstraße, da Blockaden dann als Folge der stärkeren Ausweichbewegungen viel seltener vorkommen. Bei Menschen
ist ein derartiges Verhalten allerdings wohl nur selten zu erwarten.
Eine weitergehende Beschreibung zum Schwarmverhalten und den Versuchen zur Simulation des Schwarmverhaltens
bei Menschengruppen siehe unter Dokumentation
Video 1-11 (2017): Schwarmverhalten in Tiergruppen
Video 12 (2022): Schwarmmanipulation
Video N1-N2 (2024): Dynamik von Nachbarschaftsgruppen
Video M1-M4 (2021): Schwarmverhalten bei Menschengruppen
500 boids
konstante Geschwindigkeit
Direkte Verbindung mit bis zu 7 Nachbarn
Sichtfeld 90 Grad
mit Randbegrenzung
Pfade werden nur kurz angezeigt
wie bei Video 1
aber Sichtfeld 360 Grad
500 boids
variable Geschwindigkeit
Verbindung mit bis zu 7 Nachbarn über Gradienten
Sichtfeld 360 Grad
ohne Randbegrenzung
Pfade werden nur kurz angezeigt
100 boids
variable Geschwindigkeit
direkte Verbindung mit bis zu 3 Nachbarn
Sichtfeld 90 Grad
mit Randbegrenzung
Darstellung der Blickkontakte und der Anzahl von Verbindungen zwischen
Nachbarn (rot: ohne Blickkontakt)
100 boids
variable Geschwindigkeit
Verbindung mit bis zu 7 Nachbarn über Gradienten
Sichtfeld 90 Grad
ohne Randbegrenzung
Darstellung der Blickkontakte und der Anzahl von Verbindungen zwischen
Nachbarn (rot: ohne Blickkontakt)
2000 boids
variable Geschwindigkeit
direkte Verbindung mit bis zu 30 Nachbarn
Sichtfeld 90 Grad
ohne Randbegrenzung
Darstellung der Pfade
wie Video 6
aber direkte Verbindung mit nur 2 Nachbarn
2000 boids
variable Geschwindigkeit
Verbindung mit bis zu 7 Nachbarn über Gradienten
Sichtfeld 360 Grad
ohne Randbegrenzung
Darstellung der Pfade
wie Video 8
aber Verbindung mit bis zu 30 Nachbarn über Gradienten
250 boids
konstante Geschwindigkeit
Verbindung mit bis zu 7 Nachbarn über Gradienten
Sichtfeld 90 Grad
mit Randbegrenzung
Hervorhebung der Bewegungsrichtung
100 boids
variable Geschwindigkeit
20 sec. direkte Verbindung mit bis zu 5 Nachbarn
anschließend mit Gradienten
Sichtfeld 90 Grad
mit Randbegrenzung
Hervorhebung eines einzelnen Pfads
Die Manipulation beginnt nach 30 Sekunden Laufzeit
blaue Linien: Pfad der Manipulatoren
weiße/blaue Punkte: Position der Manipulatoren
Anzahl Boids: 250
Manipulatoren: 25%
Sichtfeld eines Boid: 360 Grad
Blickweite eines Boid: 200 Pixel
Laufgeschwindigkeit eines Boid: variabel
Richtungsentscheidung eines Boid: Gradientenregel
Größe einer Nachbarschaftsgruppe: 30 Boids
neu - März 2024
Eine Nachbarschaftsgruppe wird durch einen gemeinsamen Schwerpunkt von Nachbarn gebildet
Nachbarschaftsgruppen zeigen die Struktur und die Bewegung des Schwarms an
Anzahl Boids: 250
Sichtfeld eines Boid: 90 Grad
Blickweite eines Boid: 200 Pixel
Laufgeschwindigkeit eines Boid: konstant
Richtungsentscheidung eines Boid: Nachbarschaftsregel
Größe einer Nachbarschaftsgruppe: 6 Boids
Farben:
blaues Quadrat: vollständige Nachbarschaftsgruppe
graues Quadrat: unvollständige Nachbarschaftsgruppe
rot : Boid
Anzahl Boids: 1500
Sichtfeld eines Boid: 90 Grad
Blickweite eines Boid: 200 Pixel
Laufgeschwindigkeit eines Boid: konstant
Richtungsentscheidung eines Boid: Gradientenregel
Größe einer Nachbarschaftsgruppe: 15 Boids
Farben/Symbolik:
blau: vollständige Nachbarschaftsgruppe
grau: unvollständige Nachbarschaftsgruppe
grün: Kollision
rot : Boid
blaue oder graue Quadrate: Schwerpunkt der Nachbarschaftsgruppe
blaue oder graue Linie: Zielrichtung (Gradient) der Gruppe
Nadelspitze: Zielposition der Nachbarschaftsgruppe
In dieser Simulation wandern zunächst bis zu 2000 Boids (rote Färbung) weitgehend gleichförmig
auf einen Zielkorridor zu, ohne dass größere Störungen und Behinderungen auftreten. In der Folge
werden in 3 weiteren Phasen zusätzliche Gruppen (grün, orange und cyan) mit ebenfalls jeweils bis zu
2000 Boids vom gesamten unteren Rand mit gleichem Zielkorridor gestartet. Durch die erhöhte Dichte
und den Fluss zu einem gemeinsamen Zielkorridor kommt es dann zu zahlreichen Begegnungen (graue Markierung)
und Stauungen (schwarze Markierung).
Hier sollen bis zu 2000 Boids durch einen engen Zielkorridor wandern, der zusätzlich noch gesperrt ist.
Bereits im Vorfeld der Wanderung kommt es zu zahlreichen Stauungen, die sich auch wellenförmig entgegensetzt
zur Zielrichtung fortpflanzen. Als Folge der Blockade am Zielkorridor entsteht ein umfangreicher Stau, der
zunehmend mehr Boids umfasst. Nach 1:50 Minuten wird die Blockade am Zielkorridor aufgehoben, wodurch sich
zunächst die Boids am Zielkorridor wieder in Bewegung setzen können.
Für 2 Gruppen mit insgesamt bis zu 4000 Boids (rot und grün) werden verschieden positionierte
Eingangsbereiche und Zielkorridore diagonal gegenüber gesetzt, so dass eine Kreuzungssituation
für den Weg der Boids entsteht. Im Kreuzungsbereich und weit davor entstehen sehr schnell stark
zunehmende Stauungen. Ein Abfluss in die Zielkorridore erfolgt nur langsam. Stauungen am
Zielkorridor von Gruppe 2 (grün) sind durch die Regel 5a bedingt, die im Zielbereich eigentlich
deaktiviert und durch eine alternative Schwarmregel ersetzt werden müsste.
Bei diesem Szenario werden bis zu 2000 Boids zu einem verengten Zielkorridor geführt,
so dass zunehmend Stauungen auftreten. Nach 1 Minute Laufzeit erhalten die Boids die
Möglichkeit bei der Regel 5e auch die alternative Regel für rückläufige Bewegungen auszuführen.
Hierdurch ändert sich das Bewegungsverhalten der Boids massiv, indem sie bei einer Blockade
jetzt versuchen Stauungen durch eine kurze Rückwärtsbewegung zu umgehen. In der Folge löst
sich der Stau langsam auf. Diese Form der Bewegungen, findet man auch bei Ameisen vor,
wobei dort allerdings nicht zwingend ein Stau vorliegt, sondern vielmehr ist das
Bewegungsverhalten von Ameisen eher variierend und nicht gleichförmig, so dass Stauungen dort eher vermieden werden.