Schwarmintelligenz & Schwarmverhalten: Difference between revisions
Line 2: | Line 2: | ||
=== Was ist ein Schwarm? === | === Was ist ein Schwarm? === | ||
[[File:Large fish school.png|thumb|<nowiki>Fischschwarm | OpenStax College, CC BY-SA 3.0, via Wikimedia Commons</nowiki>]] | |||
Ein Schwarm ist eine Gruppe homogener Einzelwesen/Entitäten (in der Fachliteratur meist als „Agents“ bezeichnet), die ohne zentrale Steuerung oder eine Hierarchie lokal koordiniert und kooperativ miteinander interagieren und dabei komplexe Globale Verhaltensmuster zeigen. Natürliche Beispiele für Schwärme sind Ameisenkolonien, Fischschwärme, Vogelschwärme und Herden von Landtieren. | Ein Schwarm ist eine Gruppe homogener Einzelwesen/Entitäten (in der Fachliteratur meist als „Agents“ bezeichnet), die ohne zentrale Steuerung oder eine Hierarchie lokal koordiniert und kooperativ miteinander interagieren und dabei komplexe Globale Verhaltensmuster zeigen. Natürliche Beispiele für Schwärme sind Ameisenkolonien, Fischschwärme, Vogelschwärme und Herden von Landtieren. | ||
Line 22: | Line 23: | ||
Aber auch der Nestbau oder die Koordination der Nahrungssuche bei sozialen Insekten wie Bienen oder Termiten wird als Schwarmverhalten bezeichnet. | Aber auch der Nestbau oder die Koordination der Nahrungssuche bei sozialen Insekten wie Bienen oder Termiten wird als Schwarmverhalten bezeichnet. | ||
[[File:AntBridge Crossing 05.jpg|thumb|<nowiki>Ameisenbrücke | Igor Chuxlancev, CC BY 4.0, via Wikimedia Commons</nowiki>]] | |||
Bei Ameisen lassen sich besonders viele interessante Verhaltensweisen beobachten, wie z.B. das Bilden von temporären lebenden Brücken aus Ameisen, das gemeinsame Bewegen von schweren Gegenständen oder das Bilden von effizienten Futterstraßen. | Bei Ameisen lassen sich besonders viele interessante Verhaltensweisen beobachten, wie z.B. das Bilden von temporären lebenden Brücken aus Ameisen, das gemeinsame Bewegen von schweren Gegenständen oder das Bilden von effizienten Futterstraßen. | ||
Line 35: | Line 36: | ||
== „Flocking“ – Schwarmbildung bei Vögeln, Fischen, Herden und Insekten == | == „Flocking“ – Schwarmbildung bei Vögeln, Fischen, Herden und Insekten == | ||
[[File:Starling Murmuration - 'The face' (49014625696).jpg|thumb|<nowiki>Ein Schwarm Stare | caroline legg, CC BY 2.0, via Wikimedia Commons</nowiki>]] | |||
Das Schwarmverhalten von Vögeln, Fischen, Herden und Insekten wird im Englischen als „flocking” bezeichnet und ist wahrscheinlich das erste, woran man denkt, wenn man an einen Schwarm denkt. Solche Schwärme zeigen eine Reihe gemeinsamer Verhaltensweisen: Die Tiere bleiben dicht beieinander, kollidieren aber nicht. Sie ändern ihre Richtung fließend, als wären sie ein einziger Organismus, können aber auch enge Hindernisse passieren. | Das Schwarmverhalten von Vögeln, Fischen, Herden und Insekten wird im Englischen als „flocking” bezeichnet und ist wahrscheinlich das erste, woran man denkt, wenn man an einen Schwarm denkt. Solche Schwärme zeigen eine Reihe gemeinsamer Verhaltensweisen: Die Tiere bleiben dicht beieinander, kollidieren aber nicht. Sie ändern ihre Richtung fließend, als wären sie ein einziger Organismus, können aber auch enge Hindernisse passieren. | ||
Line 50: | Line 52: | ||
Die Erkenntnisse aus diesem Bereich der Schwarmintelligenz haben vielfältige Anwendungen. So werden sie, wie bereits erwähnt, von der Filmindustrie für Computeranimationen (es gibt z.B. auch Boids in Blender) oder zur Steuerung von Drohnen und Robotern verwendet. | Die Erkenntnisse aus diesem Bereich der Schwarmintelligenz haben vielfältige Anwendungen. So werden sie, wie bereits erwähnt, von der Filmindustrie für Computeranimationen (es gibt z.B. auch Boids in Blender) oder zur Steuerung von Drohnen und Robotern verwendet. | ||
Eine | Eine abgewandelte Variante in der Informatik ist der Particle Swarm Optimization Algorithmus, bei dem ein Schwarm von Entitäten in einem „search space“ nach den besten Lösungen für ein Problem sucht. Er wird unter anderem beim maschinellen Lernen zur Optimierung neuronaler Netze eingesetzt. | ||
== Wegfindung der Ameisen == | == Wegfindung der Ameisen == | ||
Die Ameisen finden kollektiv den besten Weg zu einer Futterstelle, indem sie in ihrer Umgebung Pheromone (chemische Signale) hinterlassen und indem sie zum Teil den Pheromonen folgen, die von anderen Ameisen hinterlassen wurden. | Die Ameisen finden kollektiv den besten Weg zu einer Futterstelle, indem sie in ihrer Umgebung Pheromone (chemische Signale) hinterlassen und indem sie zum Teil den Pheromonen folgen, die von anderen Ameisen hinterlassen wurden. | ||
[[File:00 2444 Australien Litchfield-Nationalpark.jpg|thumb|208x208px|<nowiki>Termitenbau | W. Bulach, CC BY-SA 4.0, via Wikimedia Commons</nowiki>]] | |||
Diese indirekte Kommunikation wird als Stigmerie bezeichnet. Durch die Stigmerie wird der Boden für die Ameise also zu einer Art Notizblatt, zu einer Struktur, die beschrieben und gelesen wird. Dies ist auch bei anderen Schwarmverhaltensweisen der Fall, z.B. beim Nestbau der Termiten, wo die bereits vorhandene Neststruktur selbst die Termitenarbeiter so stimuliert, dass diese korrekt an ihr weiterbauen | Diese indirekte Kommunikation wird als Stigmerie bezeichnet. Durch die Stigmerie wird der Boden für die Ameise also zu einer Art Notizblatt, zu einer Struktur, die beschrieben und gelesen wird. Dies ist auch bei anderen Schwarmverhaltensweisen der Fall, z.B. beim Nestbau der Termiten, wo die bereits vorhandene Neststruktur selbst die Termitenarbeiter so stimuliert, dass diese korrekt an ihr weiterbauen | ||
[[File:Aco branches.svg.png|thumb|<nowiki>Wegfindung der Ameisen dank Pheromonen | Johann Dréo (User:Nojhan), CC BY-SA 3.0, via Wikimedia Commons</nowiki>]] | |||
Die Nahrungssuche der Ameisen beginnt damit, dass die Ameisen vom Nest aus in zufällige Richtungen laufen. Wenn sie Futter finden, bringen sie es direkt zum Nest zurück. Beim Laufen hinterlassen die Ameisen flüchtige Pheromone. Wenn die Ameisen das Futter gefunden haben und auf dem gleichen Weg zum Nest zurückgekehrt sind, ist der Pheromonpfad so stark, dass neue Ameisen nun diesen Weg bevorzugen, um ebenfalls zur Futterquelle zu gelangen. Dabei hinterlassen sie wieder Pheromone und halten so die Pheromonmarkierung stark und frisch. So entsteht eine positive Rückkopplung. Da die Wege der Ameisen trotzdem bis zu einem gewissen Grad zufällig bleiben, wird der Weg weiter optimiert. Bei einigen Ameisenarten bildet sich sogar eine koordinierte, dichte, 3-spurige „Futterautobahn“. Auch hier kommen die Prinzipien der Schwarmbildung zum Tragen, um Kollisionen zu vermeiden. | Die Nahrungssuche der Ameisen beginnt damit, dass die Ameisen vom Nest aus in zufällige Richtungen laufen. Wenn sie Futter finden, bringen sie es direkt zum Nest zurück. Beim Laufen hinterlassen die Ameisen flüchtige Pheromone. Wenn die Ameisen das Futter gefunden haben und auf dem gleichen Weg zum Nest zurückgekehrt sind, ist der Pheromonpfad so stark, dass neue Ameisen nun diesen Weg bevorzugen, um ebenfalls zur Futterquelle zu gelangen. Dabei hinterlassen sie wieder Pheromone und halten so die Pheromonmarkierung stark und frisch. So entsteht eine positive Rückkopplung. Da die Wege der Ameisen trotzdem bis zu einem gewissen Grad zufällig bleiben, wird der Weg weiter optimiert. Bei einigen Ameisenarten bildet sich sogar eine koordinierte, dichte, 3-spurige „Futterautobahn“. Auch hier kommen die Prinzipien der Schwarmbildung zum Tragen, um Kollisionen zu vermeiden. | ||
Line 65: | Line 67: | ||
Bei diesem Problem geht es darum, den kürzesten Weg zwischen mehreren Punkten, z.B. Städten, zu finden, ohne einen Punkt zweimal zu besuchen. Ein klassischer einfacher Algorithmus würde alle möglichen Wege berechnen und vergleichen. Das Problem dabei ist, dass es bei einer großen Anzahl von Punkten extrem viele Möglichkeiten gibt, die für einen Computer nicht mehr handhabbar sind. Zum Beispiel gäbe es bei 20 Städten 6.082.250.204.416.000 mögliche Kombinationen, in welcher Reihenfolge man diese bereisen könnte. | Bei diesem Problem geht es darum, den kürzesten Weg zwischen mehreren Punkten, z.B. Städten, zu finden, ohne einen Punkt zweimal zu besuchen. Ein klassischer einfacher Algorithmus würde alle möglichen Wege berechnen und vergleichen. Das Problem dabei ist, dass es bei einer großen Anzahl von Punkten extrem viele Möglichkeiten gibt, die für einen Computer nicht mehr handhabbar sind. Zum Beispiel gäbe es bei 20 Städten 6.082.250.204.416.000 mögliche Kombinationen, in welcher Reihenfolge man diese bereisen könnte. | ||
[[File:Ant Colony Algorihm applied to the Travelling Salesman Problem.gif|thumb|<nowiki>Ant-Colony-Optimization | Rodrigo Castro Freibott, CC BY-SA 4.0, via Wikimedia Commons</nowiki>]] | |||
Beim Algorithmus Ant Colony Optimization werden künstliche Ameisen auf zufällig ausgewählte Routen geschickt. Je nachdem, wie kurz ihr gesamter Weg vom ersten bis zum letzten Punkt ist, werden die Teilstrecken zwischen den Punkten mit mehr oder weniger künstlichen Pheromonen markiert. Die nachkommenden Ameisen wählen dann ihren Weg teils zufällig, teils aufgrund der gelegten Pheromonspuren und finden vielleicht einen noch besseren Weg, den sie dann noch stärker mit Pheromonen markieren. So findet der Computer selbst bei 100 Punkten in weniger als einer Sekunde einen Weg, der vielleicht nicht der kürzeste ist, aber auf jeden Fall sehr, sehr kurz im Vergleich zu den meisten anderen Wegen. | Beim Algorithmus Ant Colony Optimization werden künstliche Ameisen auf zufällig ausgewählte Routen geschickt. Je nachdem, wie kurz ihr gesamter Weg vom ersten bis zum letzten Punkt ist, werden die Teilstrecken zwischen den Punkten mit mehr oder weniger künstlichen Pheromonen markiert. Die nachkommenden Ameisen wählen dann ihren Weg teils zufällig, teils aufgrund der gelegten Pheromonspuren und finden vielleicht einen noch besseren Weg, den sie dann noch stärker mit Pheromonen markieren. So findet der Computer selbst bei 100 Punkten in weniger als einer Sekunde einen Weg, der vielleicht nicht der kürzeste ist, aber auf jeden Fall sehr, sehr kurz im Vergleich zu den meisten anderen Wegen. | ||
Der Algorithmus wird daher unter Anderem vielseitig für die Optimisierung von Telekommunikationswegen, Netzwerken und Logistik eingesetzt. | Der Algorithmus wird daher unter Anderem vielseitig für die Optimisierung von Telekommunikationswegen, Netzwerken und Logistik eingesetzt. |
Revision as of 12:08, 7 February 2024
Allgemeines
Was ist ein Schwarm?
Ein Schwarm ist eine Gruppe homogener Einzelwesen/Entitäten (in der Fachliteratur meist als „Agents“ bezeichnet), die ohne zentrale Steuerung oder eine Hierarchie lokal koordiniert und kooperativ miteinander interagieren und dabei komplexe Globale Verhaltensmuster zeigen. Natürliche Beispiele für Schwärme sind Ameisenkolonien, Fischschwärme, Vogelschwärme und Herden von Landtieren.
Was ist Schwarmintellegenz und Schwarmverhalten?
Obwohl die einzelnen Mitglieder von Schwärmen nur über sehr begrenzte intellektuelle Fähigkeiten verfügen, bewältigen sie kollektiv komplexe Aufgaben, ohne dass eine zentrale Instanz alle Aktionen steuert (Selbstorganisation).
Mit anderen Worten, der Schwarm scheint in gewisser Weise intelligenter zu sein als die einzelnen Individuen, aus denen er sich zusammensetzt. Es ist ein einfaches lokales Verhalten, das zu einem intelligenten globalen Verhalten führt. Dabei agiert der Schwarm als Einheit, trifft also z.B. gemeinsam Entscheidungen, wohin er gehen/fliegen/schwimmen soll und wie er Räubern entkommen kann. Das daraus resultierende kollektive Verhalten wird als Schwarmverhalten bezeichnet.
In der Informatik und Robotik werden Schwarmkonzepte auch auf künstliche Systeme angewendet. Künstliche Schwärme können aus autonomen Robotern oder digitalen “Agents” bestehen, die nach den Prinzipien eines Schwarms bestimmte Aufgaben zu erfüllen.
Wie funktionieren Schwärme?
Schwärme funktionieren sehr unterschiedlich. Allerdings vereinen sie folgen Prinzipien:
- Es gibt keine zentrale Autorität oder Hierarchie, die die Handlungen der einzelnen Einzelwesen/Entitäten, im Folgenden „Agents“ genannt, steuert.
- Die Agents reagieren individuell nach einigen einfachen Regeln auf andere Agents oder auf direkte oder indirekte Signale.
- Die Agents reagieren individuell nach wenigen einfachen Regeln auf andere Agents oder auf direkte oder indirekte Signale.
Wo kommt Schwarmintellegenz in der Natur vor?
Schwarmverhalten ist in verschiedenen biologischen Systemen besonders ausgeprägt. Ein bekanntes Beispiel ist das Schwarmverhalten von Vögeln, z.B. Schwärme von Staren, die ohne zentrale Steuerung komplexe Flugmanöver durchführen. Ähnlich funktionieren Fischschwärme, Insektenschwärme und die Herden vieler Säugetiere.
Aber auch der Nestbau oder die Koordination der Nahrungssuche bei sozialen Insekten wie Bienen oder Termiten wird als Schwarmverhalten bezeichnet.
Bei Ameisen lassen sich besonders viele interessante Verhaltensweisen beobachten, wie z.B. das Bilden von temporären lebenden Brücken aus Ameisen, das gemeinsame Bewegen von schweren Gegenständen oder das Bilden von effizienten Futterstraßen.
Wo wird Schwarmintellegenz vom Menschen eingesetzt?
Schwarmverhalten wird in verschiedenen Disziplinen, vor allem aber in der Informatik, zur Lösung komplexer Probleme eingesetzt.
Schwarm-Algorithmen bieten schnelle und robuste Lösungen oder Optimierungsmöglichkeiten für komplexe Probleme. Ein gutes Beispiel ist Ant Colony Optimization, ein Algorithmus, der von der Futtersuche der Ameisen inspiriert ist und dabei hilft, sehr schnell eine effiziente Verbindung zwischen mehreren Punkten in einem Netzwerk zu finden. Mehr dazu im Abschnitt über Ameisen.
Schwarmintellegenz wird aber auch zur Steuerung komplexer Systeme eingesetzt, da dezentrale Steuerungsformen in vielen Kontexten effizienter, effektiver, skalierbarer und robuster sein können. Wenn z.B. ein Schwarm von Robotern mit Schwarmintellegenz in einer für ihn abgeschirmten gefährlichen Situation agiert, ist es für das Verhalten unerheblich, wenn die Verbindung zu einer zentralen Steuerung ausfällt oder wenn einige Roboter kaputt gehen.
Generell ist die Anwendung von Schwarmintelligenz sehr breit gefächert.
„Flocking“ – Schwarmbildung bei Vögeln, Fischen, Herden und Insekten
Das Schwarmverhalten von Vögeln, Fischen, Herden und Insekten wird im Englischen als „flocking” bezeichnet und ist wahrscheinlich das erste, woran man denkt, wenn man an einen Schwarm denkt. Solche Schwärme zeigen eine Reihe gemeinsamer Verhaltensweisen: Die Tiere bleiben dicht beieinander, kollidieren aber nicht. Sie ändern ihre Richtung fließend, als wären sie ein einziger Organismus, können aber auch enge Hindernisse passieren.
Lange Zeit war unklar, wie sich die Tiere koordiniert bewegen können, ohne zu kollidieren. Frühe wissenschaftliche Vermutungen gingen sogar von Telepathie aus.
So richtig in Schwung kam die Forschung erst mit dem Aufkommen des Computers und der Möglichkeit der Computersimulation.
Die ersten großen Durchbrüche gelangen Ichiro Aoki 1981 in der Biologie und Craig W. Reynolds 1986 in der Informatik und Computeranimation. Beide entwickelten fast parallel sehr ähnliche Erklärungen und Simulationen für das Schwarmverhalten, allerdings ohne voneinander zu wissen. In ihrer Erklärung reagiert jeder Agent individuell nach einem bestimmten Regelwerk auf seine eigene lokale Wahrnehmung. Die Agenten werden in diesem speziellen Bereich der Computersimulation auch „Boids“ (von „bird-oid“ - vogelartig) genannt. Das Regelwerk (auch „Reynolds Rules“ genannt) für Boids besteht aus 3 Regeln: Das Boid vermeidet Kollisionen mit anderen Boids in Abhängigkeit von der Distanz, passt seine Geschwindigkeit und Richtung an die der Nachbarboids an und sucht die Nähe zum Schwarm. Dies führt zu einer Art Selbstorganisation, die schließlich zum Schwarmverhalten und damit zu den uns bekannten Strukturen führt. Durch die ständige Anpassung aller Boids aneinander können einige wenige Boids, die z.B. einen Raubvogel erspähen, den ganzen Schwarm von ihm weglenken, ohne dass die anderen Boids dies überhaupt bemerken. Die Prinzipien von Reynolds wurden u.a. auch in Jurassic Park zur Simulation von Dinosaurierherden verwendet.
Dr. Iain Couzin schließlich entwickelte 2002 das Modell von Reynolds und Aoki weiter, indem er untersuchte, inwieweit der Abstand für Kollisionen und Anziehungen eines Boids zu anderen Boids unterschiedliche Strukturen wie Schwärme, Wirbel und Chaos erzeugt und welchen Einfluss das individuelle Sicht- und Wahrnehmungsfeld hat. Das Modell kann auf der Website Complexity Explorables ausprobiert werden: https://www.complexity-explorables.org/explorables/flockn-roll/. Weitere Untersuchungen haben gezeigt, dass Boids in der Natur eine maximale Anzahl von Nachbarboids haben, an denen sie sich orientieren können. Neben diesen Modellen gibt es noch viele weitere, z.B. wurde ein noch komplexeres Modell entwickelt, das sich am Magnetismus orientiert und auch dem in der Natur beobachteten Schwarmverhalten sehr nahe kommt.
Eine Variante dieses allgemeinen “Flockings” ist die bei Vögeln häufig zu beobachtende V-Anordnung. Diese hat den Vorteil, dass sich jeder Vogel auf einen anderen Vogel bezieht und somit jedes Mitglied des Schwarmes im Auge behalten werden kann. Außerdem können die Vögel durch die Verringerung des Luftwiderstands in der V-Form länger ohne Pause fliegen.
Anwendungen
Die Erkenntnisse aus diesem Bereich der Schwarmintelligenz haben vielfältige Anwendungen. So werden sie, wie bereits erwähnt, von der Filmindustrie für Computeranimationen (es gibt z.B. auch Boids in Blender) oder zur Steuerung von Drohnen und Robotern verwendet.
Eine abgewandelte Variante in der Informatik ist der Particle Swarm Optimization Algorithmus, bei dem ein Schwarm von Entitäten in einem „search space“ nach den besten Lösungen für ein Problem sucht. Er wird unter anderem beim maschinellen Lernen zur Optimierung neuronaler Netze eingesetzt.
Wegfindung der Ameisen
Die Ameisen finden kollektiv den besten Weg zu einer Futterstelle, indem sie in ihrer Umgebung Pheromone (chemische Signale) hinterlassen und indem sie zum Teil den Pheromonen folgen, die von anderen Ameisen hinterlassen wurden.
Diese indirekte Kommunikation wird als Stigmerie bezeichnet. Durch die Stigmerie wird der Boden für die Ameise also zu einer Art Notizblatt, zu einer Struktur, die beschrieben und gelesen wird. Dies ist auch bei anderen Schwarmverhaltensweisen der Fall, z.B. beim Nestbau der Termiten, wo die bereits vorhandene Neststruktur selbst die Termitenarbeiter so stimuliert, dass diese korrekt an ihr weiterbauen
Die Nahrungssuche der Ameisen beginnt damit, dass die Ameisen vom Nest aus in zufällige Richtungen laufen. Wenn sie Futter finden, bringen sie es direkt zum Nest zurück. Beim Laufen hinterlassen die Ameisen flüchtige Pheromone. Wenn die Ameisen das Futter gefunden haben und auf dem gleichen Weg zum Nest zurückgekehrt sind, ist der Pheromonpfad so stark, dass neue Ameisen nun diesen Weg bevorzugen, um ebenfalls zur Futterquelle zu gelangen. Dabei hinterlassen sie wieder Pheromone und halten so die Pheromonmarkierung stark und frisch. So entsteht eine positive Rückkopplung. Da die Wege der Ameisen trotzdem bis zu einem gewissen Grad zufällig bleiben, wird der Weg weiter optimiert. Bei einigen Ameisenarten bildet sich sogar eine koordinierte, dichte, 3-spurige „Futterautobahn“. Auch hier kommen die Prinzipien der Schwarmbildung zum Tragen, um Kollisionen zu vermeiden.
Anwendungen (Ant Colony Optimization)
Eine bekannte Anwendung dieser Art der Wegfindung ist der Ant Colony Optimization Algorithmus.
Dieser ist in der Lage, das Travelling-Salesman-Problem zu bewältigen, ein in der Informatik und Mathematik bekanntes kombinatorisches Optimierungsproblem:
Bei diesem Problem geht es darum, den kürzesten Weg zwischen mehreren Punkten, z.B. Städten, zu finden, ohne einen Punkt zweimal zu besuchen. Ein klassischer einfacher Algorithmus würde alle möglichen Wege berechnen und vergleichen. Das Problem dabei ist, dass es bei einer großen Anzahl von Punkten extrem viele Möglichkeiten gibt, die für einen Computer nicht mehr handhabbar sind. Zum Beispiel gäbe es bei 20 Städten 6.082.250.204.416.000 mögliche Kombinationen, in welcher Reihenfolge man diese bereisen könnte.
Beim Algorithmus Ant Colony Optimization werden künstliche Ameisen auf zufällig ausgewählte Routen geschickt. Je nachdem, wie kurz ihr gesamter Weg vom ersten bis zum letzten Punkt ist, werden die Teilstrecken zwischen den Punkten mit mehr oder weniger künstlichen Pheromonen markiert. Die nachkommenden Ameisen wählen dann ihren Weg teils zufällig, teils aufgrund der gelegten Pheromonspuren und finden vielleicht einen noch besseren Weg, den sie dann noch stärker mit Pheromonen markieren. So findet der Computer selbst bei 100 Punkten in weniger als einer Sekunde einen Weg, der vielleicht nicht der kürzeste ist, aber auf jeden Fall sehr, sehr kurz im Vergleich zu den meisten anderen Wegen.
Der Algorithmus wird daher unter Anderem vielseitig für die Optimisierung von Telekommunikationswegen, Netzwerken und Logistik eingesetzt.