Fitnessfunktion


Eine Fitnessfunktion in Evolutionären Algorithmen ist eine Funktion, die Individuen eine Fitness zuordnet, also einen Wert, wie gut ein jedes Individuum mit seiner Umwelt zurechtkommt und damit, wie erfolgreich es sein soll, sein Genom weiterzugeben. Die "Eignung" des Individuums wird also durch einen Zahlenwert beschrieben, der leicht mit den Werten anderer Individuen vergleichbar ist.

Der Fitnesswert kann dabei absolut beschrieben sein (z. B. "je kleiner desto besser"), relativ zu einer Zielgröße ("Ziel wurde um xx % über-/unterschritten") oder relativ zwischen den Individuen beschrieben sein (Rangordnung). I. A. wird schlussendlich eine Rangordnung hergestellt.

Zur Aufstellung der Fitnessfunktion werden zunächst die maßgeblichen (und messbaren) Eigenschaften festgelegt, sowie welcher Zielwert in der jew. Eigenschaft erreicht werden soll (bzw. "je größer desto besser"). Sofern es mehrere Eigenschaften sind, die sich nicht sinnvoll auf 1 Zahlenwert zusammenfassen lassen (z. B. über Gewichtung und Addition), kann die Fitnessfunktion auch statt eines einzelnen Zahlenwerts ein Ergebnis-Tupel ergeben (Pareto-Optimierung).

Die "Umwelt" wird dabei über die maßgeblichen Eigenschaften beschrieben, bei einer Optimierung sind dies die zu optimierende Größen, und die Fitness bildet die Qualität des Individuums bezüglich dieses Optimierungsproblems ab.