Selektion (evolutionärer Algorithmus)

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Bei evolutionären Algorithmen (EA) ist Selektion ein Mechanismus, mit dem Individuen aus einer Population ausgewählt werden. Im weiteren Sinne wird Selektion oft zu den genetischen Operatoren gezählt, obwohl Selektion bei EA nicht auf Gen-, sondern auf Individuenebene operiert. Evolutionäre Algorithmen suchen eine Lösung für ein Optimierungsproblem mit Prinzipien der natürlichen Evolution. Selektion wird benutzt, um Lösungskandidaten (Individuen) für Rekombination auszuwählen (Elternselektion) und um die nächste Generation festzulegen (Umweltselektion), dazu wird die Qualität der Lösungskandidaten herangezogen, die ihnen durch eine Fitnessfunktion zugewiesen wird. Das biologische Vorbild ist die natürliche Selektion. Die aufgeführten Verfahren unterscheiden sich vor allem im Selektionsdruck[1][2], der bei der Rangselektion sogar durch einen Strategieparameter eingestellt werden kann. Je höher der Selektionsdruck ist, desto schneller konvergiert eine Population gegen eine bestimmte Lösung und der Suchraum wird möglicherweise nicht ausreichend erkundet. Dem Phänomen der vorzeitigen Konvergenz kann durch eine geeignete Strukturierung der Population entgegengewirkt werden. Zwischen dem verwendeten Populationsmodell und einem geeigneten Selektionsdruck herrscht ein enger Zusammenhang. Bei zu niedrigem Druck konvergiert die Population auch nach langer Rechenzeit nicht.

Jedes Verfahren kann prinzipiell sowohl für Eltern- als auch Umweltselektion eingesetzt werden, es haben sich für die konkreten Typen evolutionärer Algorithmen jeweils spezielle Konzepte etabliert. Bei den memetischen Algorithmen, einer Erweiterung der EAs, findet eine Selektion auch bei der Auswahl derjenigen Nachkommen statt, die mit Hilfe eines Mems (z. B. einer Heuristik) verbessert werden sollen.

Häufige Methoden

[Bearbeiten | Quelltext bearbeiten]

Bestenselektion

[Bearbeiten | Quelltext bearbeiten]

Die einfachste Methode, Individuen aus einer Population von Lösungskandidaten auszuwählen, ist die Population nach der Fitness zu sortieren und die ersten Individuen zu übernehmen. Im Falle der Umweltselektion wird unterschieden zwischen der Berücksichtigung von ausschließlich Nachfahren (Kommaselektion: ) oder Eltern und Nachfahren (Plusselektion: ), um die Individuen der Nachfolgegeneration zu bestimmen. Notation und Vorgehensweise gehen auf die Evolutionstrategie zurück.[3][4]

Fitness-proportionale Selektion entspricht dem Werfen von Roulettekugeln in einen Kessel mit unterschiedlich großen Kammern.
Auswahlpunkte mit gleichen Abständen beim stochastischen universellen Sampling

Fitnessproportionale Selektion

[Bearbeiten | Quelltext bearbeiten]

Die ursprünglich von John H. Holland für genetischen Algorithmen vorgeschlagene Methode der Umweltselektion, ist die Fitnessproportionale Selektion[5]. Die Selektion von Individuen entspricht dabei dem -maligen Wurf einer Kugel beim Roulette, wobei jedem Individuum ein Anteil des Roulettekessels zugewiesen wird, der seiner Fitness entspricht. Zwar haben auch schlechtere Lösungskandidaten auf diese Weise eine Chance, selektiert zu werden, jedoch dominieren am Anfang der Optimierung oft wenige Kandidaten mit höherer Qualität den gesamten Auswahlprozess[6], da deutlich überdurchschnittliche Individuen von der Tatsache profitieren, dass jede Auswahl einzeln getroffen wird und bei jeder Auswahl eine hohe Wahrscheinlichkeit besteht, dass sie ausgewählt werden. Dahingehend stellt das stochastische universelle Sampling eine Verbesserung da. Hier werden äquidistante Kugeln auf einmal geworfen. Zwar können Individuen auch hier mehrfach ausgewählt werden, jedoch wirkt stochastisches universelles Sampling im Vergleich zur fitnessproportionale Selektion diversitätserhaltend[7].

Turnierselektion

[Bearbeiten | Quelltext bearbeiten]

Bei der Turnierselektion werden wiederholt Individuen aus der Population ausgewählt. Ihre Fitnesswerte werden verglichen und das beste Individuum gewinnt (das Turnier). Der Prozess wird -mal ausgeführt. Vorteile sind die leichte Umsetzbarkeit, die geringe Komplexität und die Tatsache, dass nicht Fitnesswerte zu jedem Individuum vorliegen müssen, sondern nur zu den, die an den Turnieren teilnehmen. Problematisch ist, dass die besten Individuen nicht unbedingt selektiert werden müssen[8].

Im Fall der Rangselektion (englisch ranking) hängt die Auswahlwahrscheinlichkeit nicht direkt von der Fitness, sondern vom Fitnessrang eines Individuums innerhalb der Population ab. Dadurch relativieren sich große Fitnessunterschiede, außerdem müssen nicht die genauen Fitnesswerte selbst vorliegen, sondern nur eine Sortierung der Individuen nach Qualität.

Am häufigsten wird das auf Baker zurückgehende lineare Ranking[9][10] verwendet.[11][12][13][14] Es erlaubt die Einstellung des Selektionsdrucks durch den Parameter (selective pressure), der Werte zwischen 1,0 (kein Selektionsdruck) und 2,0 (hoher Selektionsdruck) annehmen kann. Die Wahrscheinlichkeit für Rangpositionen ergibt sich nach folgender Formel:

wobei gilt:

Beispiel für lineares Ranking von fünf Individuen und drei Werten des Selektionsdruckparameters sp.

Ein Beispiel für die rangbasierte Selektion von fünf Individuen mag die Wirkung von verdeutlichen. Nebenstehendes Bild zeigt die Wahrscheinlichkeiten der Rangpositionen für die beiden Grenzwerte und einen mittleren Wert von . Bei einem Wert von 1,0 besteht kein Selektionsdruck mehr (blaue Linie), bei 1,4 ein moderater (grün) und bei 2,0 der maximal mit linearem Ranking einstellbare (rot). Man beachte aber, dass die Auswahlwahrscheinlichkeit für das beste Individuum bei fitnessproportionaler Selektion und hinreichend großen Fitnessunterschieden größer sein kann als bei rangbasierter. Damit dämpft die rangbasierte Selektion den Selektionsdruck bei größeren Fitnessunterschieden auch noch bei einem Wert von 2.0 für gegenüber der fitnessproportionalen.

Ein Vorteil der rangbasierten Selektion kann neben dem einstellbaren Selektionsdruck auch darin gesehen werden, dass sie auch schlechteren Individuen eine Chance zur Vermehrung und damit zur Verbesserung gibt. Dies kann insbesondere bei Anwendungen mit Restriktionen hilfreich sein, da es die Überwindung einer Restriktion in mehreren Zwischenschritten erleichtert, also über eine Abfolge von mehreren auf Grund von Restriktionsverletzungen schlecht bewerteten Individuen.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Thomas Bäck: Selective Pressure in Evolutionary Algorithms: a Characterization of Selection Mechanisms. In: Proceedings of the First IEEE Conference on Evolutionary Computation (CEC). IEEE, Orlando, FL, USA 1994, ISBN 978-0-7803-1899-1, S. 57–62, doi:10.1109/ICEC.1994.350042.
  2. David E. Goldberg, Kalyanmoy Deb: A Comparative Analysis of Selection Schemes Used in Genetic Algorithms. In: Foundations of Genetic Algorithms. Band 1. Elsevier, 1991, ISBN 978-0-08-050684-5, S. 69–93, doi:10.1016/b978-0-08-050684-5.50008-2.
  3. Hans-Paul Schwefel: Evolution and Optimum Seeking. John Wiley & Sons, New York 1995, ISBN 0-471-57148-2 (researchgate.net).
  4. Ingo Rechenberg: Evolutionsstrategie; Optimierung technischer Systeme nach Prinzipien der biologischen Evolution. Dissertation. Frommann-Holzboog, Stuttgart-Bad Cannstatt 1973, ISBN 3-7728-0373-3.
  5. John H. Holland: Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence. PhD thesis. University of Michigan Press, Ann Arbor 1975, ISBN 0-472-08460-7.
  6. Robert Ghanea-Hercock: Applied Evolutionary Algorithms in Java. Springer New York, New York, NY 2003, ISBN 978-1-4684-9526-3, S. 37, doi:10.1007/978-0-387-21615-7.
  7. Hüseyin Bostanci: Clusterbasierte Datenanalyse auf Grundlage genetischer Algorithmen in SAP-BI: Ein Verfahren zur selbständigen Ermittlung der optimalen Anzahl Cluster. Diplomica Verlag, Hamburg 2011, ISBN 978-3-8428-0426-5, S. 26.
  8. Xinjie Yu, Mitsuo Gen: Introduction to Evolutionary Algorithms. Springer, London 2010, ISBN 978-1-84996-128-8, S. 74, doi:10.1007/978-1-84996-129-5.
  9. James E. Baker: Adaptive Selection Methods for Genetic Algorithms. In: John J. Grefenstette (Hrsg.): Conf. Proc. of the 1st Int. Conf. on Genetic Algorithms and Their Applications (ICGA). L. Erlbaum Associates, Hillsdale, NJ 1985, ISBN 0-8058-0426-9, S. 101–111.
  10. James E. Baker: Reducing Bias and Inefficiency in the Selection Algorithm. In: John J. Grefenstette (Hrsg.): Conf. Proc. of the 2nd Int. Conf. on Genetic Algorithms and Their Applications (ICGA). L. Erlbaum Associates, Hillsdale, New. Jersey 1987, ISBN 0-8058-0158-8, S. 14–21.
  11. Darrell Whitley: The GENITOR Algorithm and Selective Pressure: Why Rank-Based Allocation of Reproductive Trials is Best. In: J. David Schaffer (Hrsg.): Conf. Proc. of the 3rd Int. Conf. on Genetic Algorithms and Their Applications (ICGA). Morgan Kaufmann Publishers, San Francisco, CA 1989, ISBN 1-55860-066-3, S. 116–121.
  12. Martina Gorges-Schleuter: Genetic Algorithms and Population Structures - A Massively Parallel Algorithm. Dissertation. Universität Dortmund, Fakultät für Informatik, 1990.
  13. Christian Blume, Wilfried Jakob: GLEAM - General Learning Evolutionary Algorithm and Method: ein Evolutionärer Algorithmus und seine Anwendungen. In: Schriftenreihe des Instituts für Angewandte Informatik – Automatisierungstechnik. Nr. 32. KIT Scientific Publishing, Karlsruhe 2009, ISBN 978-3-86644-436-2, doi:10.5445/ksp/1000013553.
  14. Hartmut Pohlheim: Evolutionäre Algorithmen: Verfahren, Operatoren und Hinweise für die Praxis. Springer, Berlin 1999, ISBN 978-3-540-66413-0.