• Keine Ergebnisse gefunden

Die „Differential Evolution“ arbeitet mit multidimensionalen Funktionen re-eller Zahlen und kann daher gut geometrisch verstanden werden. Ein großer Vorteil der „Differential Evolution“ ist ihr Skalierungsverhalten bezüglich ihrer freien Parameter, welches besser als quadratisch verläuft. Für den Einsatz an einem Experiment, welches technischem Rauschen und Drift unterliegt, wurde die „Differential Evolution“ um den Aspekt der Lebensdauer der Individuen erweitert. Der schrittweise Ablauf der „Differential Evolution“ ist in folgender Abbildung (B.1) dargestellt und wird anschließend genauer erläutert.

Abbildung B.1.:Schematisch dargestellter Ablauf der „Differential Evolution“: Nach einer Initialisierung (1) beginnt die Messung (2) der initialisierten Populationen.

Die anschließende Selektion der angepasstesten Individuen (3) führt zu einer Elterngeneration, welche auf Abbruchbedingungen der Evolution getestet wird (4). Ist die Evolution noch nicht beendet, beginnt eine erneute Iteration, indem eine Mutation der Elterngeneration durchgeführt wird (5) und eine erneute Messung der mutierten Population den Kreis schließt. Sollten die Abbruchbedingungen erreicht worden sein, endet der Algorithmus und die aktuelle Elterngeneration besteht aus den angepasstesten Individuen, die das Problem bestmöglich lösen.

(1) Zu Beginn einer jeden Evolution werden zwei Populationen zufällig erzeugt, welche die nullte Elterngeneration E0 und die nullte Mutantengeneration M0 darstellen. Durch einen globalen Parameterδwird die AnzahlN =δ·dder Indi-viduen jeder Generation bestimmt, wobei jedes Individuum eind-dimensionaler Vektor ist und eine Realisierung des Experiments darstellt. Somit wird jeder Pa-rameter der experimentellen Realisierungδ-häufig variiert. Da das Experiment ein real gegebener Aufbau ist, fließen an dieser Stelle Beschränkungen für die d-vielen Einträge eines jeden Vektors in den Algorithmus. Jeder Eintrag muss innerhalb eines Intervalls [Un, On] mit n ∈ N < d liegen. Erfüllt ein Eintrag diese Bedingung nicht, so wird der Eintrag auf den Grenzwert des Intervalls gesetzt.

(2) Sukzessiv werden died-dimensionalen Vektorenyi der Mutanten-Population an das Experiment übertragen, welches daraufhin mit der Messung beginnt.

Über eine gegebene Fitnessfunktion wird aus den Messergebnissen ein Fitness-wertΞi bestimmt und jedem Vektoryi dieser Fitnesswert zugewiesen. Im Falle der nullten Generation werden in diesem Schritt ebenfalls die Fitnesswerte der nullten ElterngenerationE0 gemessen.

(3) In diesem Schritt wird die ElterngenerationEj mit der Mutantengeneration Mj verglichen. Dieser Vergleich geschieht auf Basis der Individuen, wobei das Individuum xi ∈ Ej mit dem Individuum yi ∈ Mj, mit i ∈ N < N verglichen wird. Aus diesen Vergleichen wird jeweils das Individuum in die neue Eltern-generationEj+1 übernommen, welches den besseren zugehörigen FitnesswertΞi

aufweist. Hierbei wird der WertΣi des Zählers des übernommenen Individuum inkrementiert.

B.1. Theoretische Behandlung der erweiterten „Differential Evolution“

(4) Die aus den Vergleichen ermittelte neue ElterngenerationEj+1 wird auf Ab-bruchbedingungen hin getestet und es wird entschieden, ob eine weitere Itera-tion initiiert oder die EvoluItera-tion beendet wird. Abbruchbedingungen können z.

B. eine maximale Anzahl an Iterationen oder eine unter eine festgelegte Grenze gefallene Standartabweichung der konvergierenden Fitnesswerte sein.

(5) Im Falle einer erneuten Iteration wird aus der aktuellen Elterngeneration Ej+1 eine neue Mutantengeneration Mj+1 erzeugt. Hierzu wird in einem ers-ten Schritt der globale Parameter Lebensdauer, σ ∈N< N, eingeführt. Dieser stellt sicher, dass bei der Messung aufgetretene Fehler, die zu einem überschätz-ten Fitnesswert Ξi geführt haben, im Laufe der Evolution aussortiert werden.

Sollte der Zähler Σi eines Individuums xi den Wert von σ erreichen, so wird das Individuum direkt in die Mutantengeneration übernommen und sowohl der Fitnesswert Ξi, als auch der Zähler Σi des Elternindividuums xi auf Null zu-rückgesetzt. Handelte es sich bei dem Fitnesswert Ξi um einen Messfehler, so wird das Individuum bei der erneuten Messung einen geringeren Fitnesswert aufweisen und aussortiert.

In einem zweiten Schritt wird ein zur Evolution komplementärer Vorgang ein-geführt. Zum einen wird ein Index c∈N< N zufällig bestimmt. Durch diesen Index wird das c-te Individuumyc der MutantengenerationMj+1 direkt durch das c-te Individuumxc aus der Elterngeneration Ej+1 gebildet. Hierdurch wird gewährleistet, dass mindestens ein Individuum direkt übernommen wird. Wei-terhin wird ein globaler Parameter ζ ∈ (0,1) eingeführt, der eine zusätzliche Beimischung direkt übernommener Individuen steuert. Für jedes Individuum yk wird eine Zufallszahlzk ∈(0,1)bestimmt. Sollte für diese Zufallszahlzk< ζ gelten, so wird auch das k-te Individuum yk direkt durch xk gebildet.

Im finalen, dritten Schritt wird ein globaler Elitefaktor ε ∈ (0,1] eingeführt, welcher aus der Elterngeneration Ej+1 den Bruchteil ε der besten Individuen auswählt. Aus diesem Bruchteil werden über eine Linearkombination N-viele mutierte Individuenmi erzeugt via:

mi =xk+η×(xlxm), k, l, m∈N< ε·N.

Hierbei ist η ∈ (0,1] ein frei wählbarer globaler Skalierungsparameter, welcher hauptsächlich für die Konvergenz der Evolution verantwortlich ist. Weiterhin werden k, l und m so gewählt, dass sie nicht denselben Wert aufweisen.

Zusammenfassend werden die Einträge der neuen Mutantengeneration folgen-dermaßen bestimmt:

yi =

xi, wenn Σi =σ

xi, wenn i=c, oder zi < ζ mi, sonst.

Diese Individuenyi der neuen MutantengenerationMj+1 werden nun dem Ex-periment zum Messen übertragen (2) und der Zyklus schließt sich.

(6) Sollten in (4) die Abbruchbedingungen erfüllt worden sein, endet die Evolu-tion und anhand der letzten ElterngeneraEvolu-tion kann die bestmögliche Lösung des Problems ermittelt werden. Hierzu bietet sich das Individuum mit der besten Fitnessfunktion oder eine Mittelung über einige der Individuen in der letzten Elterngeneration an. Weiterhin kann durch eine Auswertung aller ermittelten Generationen der Verlauf der Evolution und deren Effizienz ermittelt werden.

Somit kann je nach Problemstellung ein optimaler Satz an globalen Parametern ermittelt und die Effizienz der erweiterten „Differential Evolution“ gesteigert werden. Folgende Tabelle B.1 fasst die fünf globalen Parameter der erweiterten

„Differential Evolution“ zusammen:

Parameter Funktion

δ Häufigkeit der Variation jedes Parameters des Experiments

σ Maximal erlaubte Lebensdauer der Individuen ζ Beimischung der direkt von der

Elterngenerati-on übernommenen Individuen

ε Bruchteil der zur Mutation herangezogenen In-dividuen der Elterngeneration

η Verkürzung der Schrittweiten zur Konvergenz der Evolution

Tabelle B.1.:Auflistung der globalen Parameter zur Steuerung der „Differential Evolution“.

B.2. Implementierung im