13
METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with Genetic Algorithms and an Application for Model Reduction Maik Buttelmann und Boris Lohmann Genetische Algorithmen sind unter gewissen Voraussetzungen in der Lage, auch komplexe Optimierungsprobleme zu behandeln und aus einer sehr großen Zahl von möglichen Lösun- gen die beste oder zumindest sehr gute im Sinne eines Gütemaßes zu ermitteln. Nach dem Vorbild natürlicher Auslese und Fortpflanzung werden dabei Lösungskandidaten hoher Güte bevorzugt zur Erzeugung neuer Kandidaten verwendet, in der Erwartung, schrittweise zu noch besseren Lösungen zu gelangen. Der Beitrag gibt eine Einführung in die Grundlagen Ge- netischer Algorithmen und illustriert eine ingenieurtechnische Anwendung bei der Reduktion und Strukturfindung nichtlinearer Systemmodelle. This paper gives an overview of Genetic Algorithms. If some preconditions are fulfilled, Genetic Algorithms can be used to solve complex optimisation problems with a huge number of possible solutions. With the help of a fitness function and the genetic operators selection, recombination, and mutation better and better solutions can be generated to find the best one. The basics of Genetic Algorithms are discussed and an example is given. Schlagwörter: Genetische Algorithmen, Optimierung, Suchverfahren, Modellreduktion, nicht- lineare Systeme Keywords: Genetic algorithms, optimization, search algorithms, model reduction, non-linear systems 1 Einleitung Bei Optimierungsproblemen soll aus einer großen Menge möglicher Lösungen diejenige gefunden werden, die ein Zielkriterium (oder auch mehrere) bestmöglich erfüllt. Zu- meist wird das Zielkriterium in Gestalt eines Gütemaßes formuliert, durch das jedem Lösungskandidaten eine reelle Gütemaßzahl zugewiesen werden kann. Wird die Menge der möglichen Lösungen speziell durch reellwertige Ob- jektparameter x 1 ,..., x M beschrieben, so kann das Opti- mierungsproblem formuliert werden durch: min F(x), x =[x 1 ... x M ] T X M , X M R M (1) im Suchraum X M = x | u j x j o j (1 j M) wobei F : X M R die Zielfunktion, auch Güte- oder Qua- litätsfunktion genannt wird sowie u j und o j Beschränkun- gen der Parameter beschreiben. Neben solchen Beschrän- kungen können auch anders geartete Nebenbedingungen zur Zielfunktion hinzutreten. Ziel ist es, denjenigen Satz von Objektparametern zu finden, der die Zielfunktion unter Beachtung der Nebenbedingungen minimiert. Die Lösung dieser Aufgabe wird erleichtert, wenn die Zielfunktion ste- tig und differenzierbar ist. Gradientenverfahren mit ihren vielfältigen Ausprägungen [1; 2] bieten sich in diesem Falle an, können aber das Auffinden des globalen Optimums nicht garantieren. Ist die Zielfunktion unstetig und/oder nicht differenzier- bar, sind andere Verfahren überlegen, die den Suchraum über lokale Extrema ,,hinausblickend“ absuchen. Zu diesen Verfahren gehören die Heuristiken: Unter einer Heuristik soll hier eine nichtwillkürliche und häufig iterative Me- thode verstanden werden, die darauf abzielt, für eine gege- bene Problemstellung in begrenzter Zeit eine oder mehrere möglichst gute Lösungen zu finden, ohne dass garantiert werden kann, eine global optimale Lösung zu finden. ([7], Seite 18). Eine Gruppe solcher Verfahren sind die Evolu- tionären Algorithmen (EA). Zu ihnen gehören die in den 1960er Jahren von Ingo Rechenberg entwickelten Evolu- tionären Strategien und die zur gleichen Zeit unabhängig davon entwickelten Genetischen Algorithmen, die erstmals at – Automatisierungstechnik 52 (2004) 4 Oldenbourg Verlag 151

Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

Embed Size (px)

Citation preview

Page 1: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

METHODEN at 4/2004

Optimierung mit Genetischen Algorithmenund eine Anwendung zur ModellreduktionOptimization with Genetic Algorithms and an Application for Model Reduction

Maik Buttelmann und Boris Lohmann

Genetische Algorithmen sind unter gewissen Voraussetzungen in der Lage, auch komplexeOptimierungsprobleme zu behandeln und aus einer sehr großen Zahl von möglichen Lösun-gen die beste oder zumindest sehr gute im Sinne eines Gütemaßes zu ermitteln. Nach demVorbild natürlicher Auslese und Fortpflanzung werden dabei Lösungskandidaten hoher Gütebevorzugt zur Erzeugung neuer Kandidaten verwendet, in der Erwartung, schrittweise zunoch besseren Lösungen zu gelangen. Der Beitrag gibt eine Einführung in die Grundlagen Ge-netischer Algorithmen und illustriert eine ingenieurtechnische Anwendung bei der Reduktionund Strukturfindung nichtlinearer Systemmodelle.

This paper gives an overview of Genetic Algorithms. If some preconditions are fulfilled,Genetic Algorithms can be used to solve complex optimisation problems with a huge numberof possible solutions. With the help of a fitness function and the genetic operators selection,recombination, and mutation better and better solutions can be generated to find the bestone. The basics of Genetic Algorithms are discussed and an example is given.

Schlagwörter: Genetische Algorithmen, Optimierung, Suchverfahren, Modellreduktion, nicht-lineare Systeme

Keywords: Genetic algorithms, optimization, search algorithms, model reduction, non-linearsystems

1 Einleitung

Bei Optimierungsproblemen soll aus einer großen Mengemöglicher Lösungen diejenige gefunden werden, die einZielkriterium (oder auch mehrere) bestmöglich erfüllt. Zu-meist wird das Zielkriterium in Gestalt eines Gütemaßesformuliert, durch das jedem Lösungskandidaten eine reelleGütemaßzahl zugewiesen werden kann. Wird die Mengeder möglichen Lösungen speziell durch reellwertige Ob-jektparameterx1, . . . , xM beschrieben, so kann das Opti-mierungsproblem formuliert werden durch:

min{F(x), x= [x1 . . . xM]T ∈ XM, XM ⊆RM}

(1)

im SuchraumXM = {x | uj ≤ xj ≤ oj (1≤ j ≤ M)

}wobei F : XM→R die Zielfunktion, auch Güte- oder Qua-litätsfunktion genannt wird sowieuj und oj Beschränkun-gen der Parameter beschreiben. Neben solchen Beschrän-kungen können auch anders geartete Nebenbedingungenzur Zielfunktion hinzutreten. Ziel ist es, denjenigen Satzvon Objektparametern zu finden, der die Zielfunktion unter

Beachtung der Nebenbedingungen minimiert. Die Lösungdieser Aufgabe wird erleichtert, wenn die Zielfunktion ste-tig und differenzierbar ist. Gradientenverfahren mit ihrenvielfältigen Ausprägungen [1; 2] bieten sich in diesem Fallean, können aber das Auffinden des globalen Optimumsnicht garantieren.

Ist die Zielfunktion unstetig und/oder nicht differenzier-bar, sind andere Verfahren überlegen, die den Suchraumüber lokale Extrema ,,hinausblickend“ absuchen. Zu diesenVerfahren gehören die Heuristiken:Unter einer Heuristiksoll hier eine nichtwillkürliche und häufig iterative Me-thode verstanden werden, die darauf abzielt, für eine gege-bene Problemstellung in begrenzter Zeit eine oder mehreremöglichst gute Lösungen zu finden, ohne dass garantiertwerden kann, eine global optimale Lösung zu finden.([7],Seite 18). Eine Gruppe solcher Verfahren sind die Evolu-tionären Algorithmen (EA). Zu ihnen gehören die in den1960er Jahren von Ingo Rechenberg entwickelten Evolu-tionären Strategien und die zur gleichen Zeit unabhängigdavon entwickelten Genetischen Algorithmen, die erstmals

at – Automatisierungstechnik 52 (2004) 4 Oldenbourg Verlag 151

Page 2: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

at 4/2004 METHODEN

von John Holland [3] vorgestellt und vor allem durch dieArbeiten des Holland-Schülers David Goldberg [4] ver-breitet wurden. Die Entwicklung dieser beiden Verfahrenfand lange Zeit parallel statt, erst in den 1990er Jahren er-folgte eine Annäherung durch gemeinsame Konferenzen.In diesem Artikel wird allerdings nur auf die GenetischenAlgorithmen eingegangen. Weiterführende Literatur für dieEvolutionären Strategien findet man in [18; 19].

Die Genetischen Algorithmen basieren auf dem Evolutions-gedanken der Natur. Basis ist eine Population von Indivi-duen, die mithilfe der genetischen OperationenSelektionund Variation Nachkommen erzeugen, die hinsichtlich deszu lösenden Optimierungsproblems eine bessere Lösungdarstellen, als ihre Eltern. Die Selektion gibt dabei demGenetischen Algorithmus die Richtung im Suchraum vor,indem gute Individuum für die Fortpflanzung bevorzugtund schlechte gemieden werden. Dem dadurch auftretendenDiversitätsverlust, dem Absinken der Vielfalt in der Popu-lation, wirken die VariationsoperatorenRekombinationundMutation entgegen, indem sie neue Lösungen (Varianten)aus den vorhandenen erzeugen.

Der folgende Abschnitt soll dem Leser einen Einblick indie Thematik der Genetischen Algorithmen geben, wobeidas Hauptaugenmerk auf die praktische Umsetzung ge-richtet ist. Ein kompletter theoretischer Überblick ist nichtmöglich, moderne Übersichtswerke sind [7–11]. Als An-wendungsfeld wird in Abschnitt 3 dann die Ordnungsre-duktion und Strukturfindung nichtlinearer Modelle dynami-scher Systeme vorgestellt. Genetische Algorithmen in engerVerzahnung mit einem Ordnungsreduktionsverfahren füh-ren hierbei zu kleinen Modellen einfacher innerer Struktur.Anders als bei herkömmlichen Reduktionsverfahren bleibtdas reduzierte Modell physikalisch interpretierbar und dasBlockschaltbild übersichtlich.

2 Genetische Algorithmen

Die Stärke der Genetischen Algorithmen (GA) ist ihre Fä-higkeit, Lösungen selbst für sehr komplexe Optimierungs-probleme zu finden, bei denen andere Suchverfahren schei-tern. Sie zeichnen sich durch ihre Variabilität aus, sodasssie an viele Probleme angepasst werden können. Zugleichist diese Anpassbarkeit aber auch eine Schwäche, da es kei-nen allgemein gültigen ,,wirksamen“ Algorithmus gibt. Sohaben sich im Laufe der Jahre viele Varianten der GA ge-bildet, denen aber allen der von John Holland entwickelteBasis-Algorithmus [3] zugrunde liegt. Genetische Algorith-men sind probabilistische Algorithmen, die mithilfe einerPopulation von IndividuenP(t)= {a1(t), . . . , an(t)} (t: Ite-rationsschritt) eine parallele Suche im Suchraum des Op-timierungsproblems durchführen. Dabei repräsentiert jedesIndividuum ai (t) eine mögliche Lösung des Optimierungs-problems, deren Güte, im GA meistensFitness genannt,mithilfe der Zielfunktion (1) bestimmt wird.

Für diese Suche werden zwei Arten von Operatoren ver-wendet:Variation und Selektion. Durch die Selektion wer-

den abhängig von der Fitness Individuen für die Repro-duktion ausgewählt. So wird der Evolution eine Richtunggegeben, indem gute Zustände konserviert und schlechteZustände eliminiert werden. Gleichzeitig wird dadurch al-lerdings dieDiversität der Population, d. h. der Grad derVerschiedenartigkeit der Individuen, reduziert. Diesem Di-versitätsverlust wirkt dieVariation entgegen. Die Variati-onsoperatoren für den Genetischen Algorithmus sindRe-kombinationund Mutation, die beide die genetische Infor-mation der Individuen verändern und somit neue, verschie-denartige Individuen erzeugen.

Um eine neue Generation von Individuen zu generieren,werden jeweils Individuen aus der vorhandenen Popula-tion abhängig von ihrer Fitness selektiert, aus ihnen durchVariation zwei neue Individuen erzeugt und in die neue Po-pulation eingefügt. Man erhält so den folgenden simplenBasis-Algorithmus, auch als kanonischer GA bezeichnet:

Prozedur Genetischer AlgorithmusBeginn

t← 0GeneriereP(t) zufälligBerechne Fitnesswerte fürP(t)Solange(nicht Abbruchkriterium erfüllt)Beginn

t← t+1Bilden der neuen PopulationP(t):

SelektionRekombinationMutation

Berechne Fitnesswerte fürP(t)Ende

Ende

Als Abbruchkriterium wird oft das Erreichen vontmax, diemaximale Rechenzeit oder die Konvergenz im Suchraumverwendet. Der Algorithmus bietet eine breite Anwendbar-keit und eignet sich deshalb auch für komplexe Suchräume.Es gibt außerdem keine einschränkenden Anforderungenan die Zielfunktion, die weder stetig noch differenzierbarsein muss. Die Grundfunktionen sind einfach zu verste-hen und auch bei geringen Kenntnissen der Problemstrukturanwendbar. Darüber hinaus bestehen Möglichkeiten, denAlgorithmus mit anderen Verfahren zu kombinieren oderparallele Berechnungen auf mehreren Rechnern durchzu-führen.

Den genannten Vorteilen stehen auch einige Nachteile ge-genüber. So gibt es keine Garantie der Konvergenz desAlgorithmus’. Unter Konvergenz versteht man dabei denProzess der Annäherung an einen stationären Zustand, wo-bei zwei Arten von Konvergenz zu unterscheiden sind,die Gen-Konvergenz und die Konvergenz gegen Optimal-zustände. Bei letzterer strebt der Algorithmus gegen einlokales Optimum, oder im Idealfall gegen das globale Op-timum. Bei der Gen-Konvergenz hingegen handelt es sichum eine vorzeitige Konvergenz, die durch einen Diversi-tätsverlust während der Suche hervorgerufen wird. Somitkonvergiert der Algorithmus gegen Zustände, die nicht op-timal sein können.

152

Page 3: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

M. Buttelmann, B. Lohmann: Optimierung mit Genetischen Algorithmen und eine Anwendung . . . at 4/2004

Bild 1 zeigt das Schema eines Genetischen Algorithmus’.

Bild 1: Ablaufplan eines Genetischen Algorithmus’.

Die einzelnen Komponenten werden im Folgenden be-schrieben und es werden einige Hinweise gegeben, um denBasis-GA einem gegebenen Optimierungsproblem anzupas-sen.

2.1 Individuum

Um einen Genetischen Algorithmus einsetzen zu können,ist es erforderlich, mögliche Lösungen des Optimierungs-problems zu codieren. Dies geschieht in der Regel aufZeichenketten, insbesondere Bitketten konstanter Länge1.In Anlehnung an den biologischen Evolutionsgedanken, derden GAs zugrunde liegt, heißen diese KettenChromosomenoderGenomeund die einzelnen Werte der KettenGene. EinIndividuum ist der Träger dieser genetischen Informationenund wird charakterisiert durch seinen Zustand im Suchraumund seine Fitness. Der Fitnesswert ist dabei abhängig vonden Genen, aus denen die Objektparameter und somit durchdie Fitnessfunktion (1) die Fitness bestimmt wird.

Das Genomai eines Individuums besteht ausL Genen, de-ren Anzahl abhängig vom zu lösenden Problem ist. Es istin m Segmente unterteilt, die jeweils die Informationen füreinen Objektparameterxj des Optimierungsproblems ent-halten. Die Länge der einzelnen Objektparameter kann sichdabei unterscheiden, ist aber für jeden Parameter von In-dividuum zu Individuum gleich. Jedes Gen enthält einenWert a, der als Allel bezeichnet wird und der bei bi-närer Codierung entsprechend die Werte 0 oder 1 annehmenkann. Das Genom eines Individuums kann demnach dasfolgende Aussehen haben:

ai = [· · · 1 0| 1 1 0 0 1 1 0 1︸ ︷︷ ︸Objekt-

parameterxj

| 0 1 1 0 1 0101101︸ ︷︷ ︸Objekt-

parameterxj+1

|0 1· · · ]

Der Objektparameterxj enthält in diesem Beispiel 8 Bits,währendxj+1 aus 12 Bits besteht.

Anmerkung:In der Literatur über GA werden auch häu-fig die Begriffe Genotyp2 und Phänotyp3 verwendet. Der

1 Reellwertige GAs verwenden im Gegensatz zum kanonischen GA re-elle Objektparameter und spezielle Rekombinationsoperatoren. Auf dieseVariante des GA wird in diesem Artikel aber nicht weiter eingegangen.2 Genotyp [griech.] (Genotypus), die Summe der genetischen Informa-tionen eines Organismus. [28]3 Phänotyp [griech.] (Phänotypus, Erscheinungsbild), in derGenetikdieGesamtheit aller äußeren und inneren Strukturen und Funktionen, d. h.aller Merkmale eines Lebewesens, als das Ergebnis aus dem Zusammen-wirken von Genotyp und Umwelt. [28]

Genotyp ist dabei die Repräsentation, auf die die Variati-onsoperatoren angewendet werden, also das Genom. DerPhänotyp ist dann die Ausprägung der Eigenschaften desIndividuums, die durch seinen Genotyp codiert sind. Beider Parameteroptimierung ist der Phänotyp mit den Ob-jektparametern identisch, bei der Strukturoptimierung z. B.von Neuronalen Netzen stellt der Phänotyp hingegen einebestimmte Struktur des Netzes dar.

Die Bitketten-Längen der einzelnen Objektparameter hän-gen nicht nur von dem betrachteten Problem ab, sondernauch von der gewähltenCodierung. Soll z. B. der Objekt-parameterxj einen kontinuierlichen Wert−10≤ xj ≤ 10enthalten mit einer Genauigkeit von mindestens 10−1, sowerden 20·10= 200 Intervalle benötigt, die mit 8 Bitscodiert werden (128= 27 < 200< 28= 256). Die untere In-tervallgrenze−10 wird durch die Bitkette 0 0 0 0 0 0 00 unddie obere Grenze+10 durch 11111111 beschrieben.Alleübrigen Ketten werden linear auf den Definitionsbereichzwischen diesen Grenzen abgebildet. Bei der Decodierungwandelt man jede binäre Kettea1 a2 · · · a7 a8 zuerst in eineDezimalzahl um. Der decodiertexj -Wert ergibt sich fürobiges Beispiel dann zu:

xj =−10+ 10− (−10)

28−1·

8∑z=1

(a8−z+1) ·2z−1 .

Der Objektparameterxj = 1 1 0 0 1 1 0 1 aus dem obigen In-dividuum ergibt demnach den Wert

xj =−10+ 20

255·205≈ 6,1.

Bei diesem Vorgehen ist allerdings zu beachten, dass diekontinuierlichen Werte nur angenähert werden, sodass auchdas gesuchte Optimum nur angenähert werden kann. EinNachteil ist weiterhin, dass bei kleinen Änderungen der Bit-kette (z. B. dem Kippen eines Bits) eine große Änderungdes codierten Wertes auftreten kann. Um dieses zu verhin-dern, werden meist einschrittige Codes verwendet [27]. Siehaben die Eigenschaft, dass sich beim Übergang von einemWert zum nächstfolgenden immer nurein Bit ändert, alsodie Hamming-Distanz4 benachbarter Zahlenwerte stets einsist. Somit wird der Grundsatzkleine Ursache, kleine Wir-kungerfüllt und die Suche nicht durch große Wertsprüngebei kleinen Bit-Änderungen erschwert. Eine geläufige Vari-ante für einschrittige Codes ist derGray-Code.

Soll keine Zahl in einem Objektparameter codiert wer-den, bieten sich auch andere Codierungsmöglichkeiten an.Für das bekannte Travelling Salesman Problem (TSP) z. B.werden die Stationen, die der Handlungsreisende besuchenmöchte, mit Nummern versehen und während des Optimie-rungsprozesses lediglich deren Reihenfolge dahingehendgeändert, dass sich die kürzeste Reiseroute ergibt. Die ein-zelnen Objektparameterxj haben hier demnach nur einGen, deren Allel eine Zahl aus der Menge der natürlichen

4 Die Hamming-Distanz ist ein Maß dafür, in wie vielen Stellen sichzwei Bitketten unterscheiden.

153

Page 4: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

at 4/2004 METHODEN

ZahlenN ist. Bei dem in Abschnitt 3 vorgestellten Optimie-rungsproblem hingegen sind in den einzelnen Objektparam-tern Ja-/Nein-Entscheidungen binär codiert, wobei eine 1ein Ja bedeutet und eine 0 einNein. Jeder Objektparameterbesteht somit aus nur einem binären Gen.

2.2 Selektion

Der GA erzeugt aus einer PopulationP(t) mit n Individueneine neue PopulationP(t+1). Hierfür werden aus jeweilszwei Individuen, denEltern, zwei neue Individuen, dieKin-der, erzeugt. Damit der GA zu einem Optimum konvergiert,werden fittere Individuen bevorzugt, ganz nach dem Grund-satz der biologischen EvolutionSurvival of the Fittest5.Für die Erzeugung einer neuen Generation werden zuerstmithilfe der Selektion zwei Individuen abhängig von ihrerFitness ausgewählt und dann reproduziert. Diese Schrittewerdenn/2-mal durchgeführt, umn neue Individuen fürdie neue Population zu erzeugen. Dabei gibt die Selek-tion dem GA eine Richtung im Suchraum vor, indem guteLösungen konserviert werden. Die dadurch abnehmendeDiversität der Population wird durch die Reproduktion (Va-rianz) der Individuen kompensiert.

Die Selektion wird in zwei Schritten durchgeführt. Im ers-ten Schritt wird der fitnessabhängige ErwartungswertE(ai )

festgelegt, also die erwartete Anzahl der Nachkommen ei-nes Individuums in der neuen Population. Erst im zweitenSchritt erfolgt dann die konkrete Auswahl der Individuenfür die Reproduktion. So kann ein Individuum auch mehr-fach ausgewählt werden. Ein wichtiger Parameter bei derSelektion ist derSelektionsdruck. Er beschreibt das Ver-hältnis der Wahrscheinlichkeit der Auswahl des bestenIndividuums einer Population zur durchschnittlichen Selek-tionswahrscheinlichkeit aller Individuen. Ist dieser Druckklein, so hat die Suche tendenziell globalen Charakter, daauch schlechte Individuen eine Chance haben, ausgewählt

5 Es ist allerdings umstritten, ob die Natur wirklich so vorgeht. DerEvolutionsforscher Charles Darwin, dem man diesen Ausspruch nach-sagt, hat dieses so nicht formuliert. Die technische Umsetzung desnatürlichen Evolutions-Prozesses in den Evolutionären Algorithmen folgtjedenfalls diesem Grundsatz. Dieses liegt an der wesentlich vereinfach-ten Vorgehensweise der Umsetzung. Ziel ist es auch nicht, die Evolutionnachzubilden, sondern deren Formalismen für die Suche nach dem Opti-mum einzusetzen.

Bild 2: a) Roulette wheel selection b) Stochastic universal sampling.

zu werden. Bei steigendem Druck steigt die Wahrschein-lichkeit, ein besseres Individuum auszuwählen und somitwird diejenige Region bei der Suche bevorzugt, in der sichdie guten Individuen befinden; die Suche wird somit lo-kal.

Die richtige Auswahl der Selektionsmethode spielt für dieKonvergenz der Suche mit einem GA eine entscheidendeRolle, die aber oftmals unterschätzt und vernachlässigtwird. Aus diesem Grund wird die Selektion hier ausführ-lich behandelt und die drei gebräuchlichsten Arten vonAuswahlverfahren vorgestellt: fitnessproportionale Selek-tion, rangbasierte Selektion und Wettkampfselektion.

2.2.1 Fitnessproportionale Selektion

Bei den fitnessproportionalen Selektionsmethoden ist dieSelektionswahrscheinlichkeit proportional zur Fitness einesIndividuums. Die Fitness muss daher nichtnegativ sein undals Evolutionsziel ist nur Maximierung möglich. Die po-pulärste und in jedem Standardwerk über GA enthalteneRealisierung ist dieRoulette-Selektion. Bei diesem Verfah-ren wird im ersten Schritt des Selektionsprozesses jedemIndividuum ein Segment auf dem Roulette-Rad zugewie-sen. Die Größe des Segmentes ist dabei proportional zurFitness des Individuums. Im zweiten Schritt der Selektionwird dieses Rad gedreht und dadurch ein Segment zufäl-lig bestimmt, dessen entsprechendes Individuum für dieReproduktion kopiert wird. Das Drehen am Roulette-Radwird für die Erzeugung einer neuen Population insgesamtn-mal durchgeführt. Je besser die Fitness eines Individu-ums und damit je größer das Segment auf dem Rad ist,umso höher ist die Wahrscheinlichkeit, dass mehr Nach-kommen dieses Individuums sich in der neuen Popula-tion befinden. Der Nachteil dieses Verfahrens sowie deranderen fitnessbasierten Selektionsmethoden ist, dass dieAnzahl von Nachkommen eines Individuums sich oftmalssehr stark von dem ErwartungswertE(ai )= n · ps(ai ) unter-scheidet. Bei sehr ungünstigen Bedingungen kann sogar derExtremfall eintreten, dass sichn Nachkommen desschlech-testenIndividuums in der neuen Population befinden. Eingenerelleres Problem ist weiterhin, dass ein Individuum miteiner sehr guten Fitness die Selektion beherrschen kannund somit die Suche in diesem lokalen Optimum hängenbleibt.

Eine verbesserte Variante, die einige dieser Probleme um-geht, ist dasstochastic universal sampling(SUS). DenIndividuen werden die gleichen Segmente wie bei derRoulette-Selektionzugewiesen, aber anstatt das Radn-malzu drehen, wird es nur einmal mit stochastischer Intensi-tät gedreht. Durchn gleichmäßig um das Rad angeordnetenZeiger werden dannn Individuen in einem Schritt gezogen,wodurch derspreaddeutlich verringert werden kann.

Allen fitnessproportionalen Selektionsmethoden gemein ist,dass sie am Anfang der Suche sehr schnell konvergierenund nach einigen Generationen die Population sehr vieleIndividuen mit einer guten Fitness enthält. Die Suche wirddadurch verlangsamt und läuft Gefahr, durch die anfangs

154

Page 5: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

M. Buttelmann, B. Lohmann: Optimierung mit Genetischen Algorithmen und eine Anwendung . . . at 4/2004

schnelle Konvergenz in einem lokalen Optimum zu stag-nieren. Aufgrund dieser Nachteile und dem Umstand, dassdie fitnessproportionale Selektion häufig einige Anpassun-gen an das Optimierungsproblem erfordert, haben sich inletzter Zeit die nachfolgenden Selektionsmethoden immermehr durchgesetzt.

2.2.2 Rangbasierte Selektion

Um die schnelle Konvergenz am Anfang der Suche zuverhindern, wurde die rangbasierte Selektion eingeführt.Anstelle der absoluten Fitnesswerte werden jetzt die Indi-viduen abhängig von ihrer Fitness sortiert und nur nochaufgrund ihres resultierenden Ranges bewertet. So wirdverhindert, dass die Suche von einigen wenigen Indivi-duen mit hoher Fitness dominiert wird und die Suche zuschnell (in einemlokalen Optimum) konvergiert. Die glo-bale Suche wird somit länger ausgeführt und dadurch dieWahrscheinlichkeit erhöht, in die Nähe desglobalen Op-timums zu gelangen. Sind nach einer gewissen Anzahl anGenerationen wiederum viele Individuen mit guter Fitnessin der Population enthalten, so hält diese Selektionsme-thode den Selektionsdruck trotzdem noch auf einem hohenNiveau, um ein Stagnieren der Suche zu verhindern, daes keinen Unterschied macht, ob die beiden Individuenzweier benachbarter Ränge eine große oder eine kleineDifferenz in ihren Fitnesswerten aufweisen. Um nun dieAnzahl der Nachkommen eines jeden Individuums in derneuen Population zu bestimmen, werden die Individuen ei-ner Population ihrer Fitness nach sortiert von Rang 1 mitdem schlechtesten Individuum bis Rangn mit der bestenLösung. Individuen hohen Rangs werden nun nach einerZufallsauswahl mit hoher Wahrscheinlichkeit ausgewählt,schlechtere Individuen mit niedrigem Rang mit niedrigererWahrscheinlichkeit. Zur Festlegung der Wahrscheinlichkeitschlägt Baker in [12] folgendes Vorgehen vor: Der rang-höchsten Lösung wird der ErwartungswertEmax zugeord-net, wobei 1≤ Emax≤ 2 sein muss. Der ErwartungswertEmin für das schlechteste Individuum ergibt sich dann ausEmin= 2− Emax und der Erwartungswert eines beliebigemIndividuumsai berechnet sich zu

E(ai )= Emin+ (Emax− Emin) · r(ai )−1

n−1,

wobei r(ai ) der Rang des Individuumsai ist. Die Se-lektionswahrscheinlichkeit ergibt sich dann ausps(ai ) =1/n · E(ai ). Baker hat den Wert 1,1 fürEmax vorgeschla-gen und festgestellt, dass die rangbasierte Selektion bei denvom ihm untersuchten Testproblemen vorteilhaft ist. Der ei-gentliche Auswahlprozess erfolgt dann mithilfe vonstocha-stic universal sampling, nur dass jetzt für die Bestimmungder Segmentgrößen anstatt der absoluten Fitnesswerte dieberechneten Selektionswahrscheinlichkeitenps(ai ) verwen-det werden. Es bleibt aber festzuhalten, dass der reduzierteSelektionsdruck am Anfang den Suchprozess verlängernkann. Oftmals führt dies aber durch die Erhaltung der Viel-falt in der Population zu einem besseren Suchergebnis alsbei der fitnessproportionalen Selektion.

2.2.3 Wettkampfselektion

In Bezug auf den Selektionsdruck ist die Wettkampfse-lektion vergleichbar mit der rangbasierten Selektion. Hierkann aber auf eine Berechnung der Erwartungswerte fürjedes einzelne Individuum wie bei der rangbasierten Se-lektion verzichtet werden und es ist auch keine Sortie-rung der Individuen wie bei der fitnessproportionalen Se-lektion notwendig, sodass Rechenzeit eingespart werdenkann.

In der Literatur findet man meist zwei Varianten. Bei derersten werden zwei Individuen aus der Population zufälligmit gleicher Wahrscheinlichkeit ausgewählt. Eine Zufalls-zahl r ∈ [0, 1] wird bestimmt und wennr < k gilt (k istein fester Parameter, z. B. 0,75) wird das fittere Individuumausgewählt, andernfalls das schlechtere. Eine zweite, ähn-liche Vorgehensweise verzichtet auf die Generierung derZufallszahl r , sodass grundsätzlich das fittere Individuumbevorzugt wird. Der Selektionsdruck kann bei dieser Va-riante verändert werden, indemm Individuen (2≤m < n)ausgewählt werden. Istm= 2 spricht man auch von einerbinären Wettkampfselektion. Durch eine Erhöhung der An-zahl m bei konstanter Populationsgrößen kann, auch wäh-rend des Suchprozesses, der Selektionsdruck erhöht undsomit von einer globalen zu einer lokalen Suche gewechseltwerden. Die Wettkampfselektion eignet sich, wie auch dierangbasierte Selektion, bei Auftreten negativer Fitnesswerteoder für Minimierungsaufgaben, ohne weitere Anpassun-gen vornehmen zu müssen. Ein Nachteil dieses Verfahrensist, dass sich, gerade bei hohem Selektionsdruck, nach derSelektionn Kopien ein und desselben Individuums in derneuen Population befinden können. Trotzdem setzt sich dieWettkampfselektion aufgrund ihrer Vorteile gegenüber an-deren Verfahren immer mehr durch [7].

2.2.4 Elitismus

Die oben aufgeführten Selektionsverfahren haben alle dieEigenschaft, die komplette Elternpopulation durch die neuerzeugten Nachkommen zu ersetzen (generational replace-ment). Dadurch kann es passieren, dass das bis dahin bestegefundene Individuum verloren geht. Beim Elitismus wer-den daher die schlechtesten Nachkommen durch die bestenEltern ersetzt. Jedes Selektionsverfahren kann in dieserWeise erweitert werden. Wird auf Elitismus verzichtet, soempfiehlt es sich, die beste Lösung außerhalb des GAs zuspeichern und sie erst beim Finden eines besseren Indivi-duums mit diesem zu überschreiben.

2.3 Variation

Um aus den selektierten Elternindividuen Nachkommen zuerzeugen, werden Variationsoperatoren, oftmals auch alsSuchoperatoren bezeichnet, verwendet. Diese Operatorenerhalten die Vielfalt der Population und wirken somit demdurch die Selektion erzeugten Diversitätsverlust entgegen.Als Variationsoperatoren werdenRekombinationundMuta-tion verwendet.

155

Page 6: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

at 4/2004 METHODEN

2.3.1 Rekombination

Die Rekombination ist der wichtigste Suchoperator. Ererzeugt durch Mischen der Erbinformationen zweier Eltern-individuen zwei neue Nachkommen. In einem GA wird dasCrossoverals Form der Rekombination verwendet. DessenVarianten sind dasn-Punkt-Crossover, uniformes Crossoverund problemabhängiges Crossover. Als Beispiel sei hier das1-Punkt-Crossover [3] gezeigt:

elter1=[1 1 1 1 1 1|1111]elter2=[0 0 0 0 0 0|0000]kind 1=[1 1 1 1 1 1|0 0 0 0]kind 2=[0 0 0 0 0 0|1111]

Beim Crossover treten verschiedene Effekte auf, die dieBildung neuer Individuen beeinflussen. Bei dem oben ge-zeigten 1-Punkt-Crossover z. B. steigt die Wahrscheinlich-keit, dass ein Gen ausgetauscht wird, mit seiner Positionauf dem Genom an. Dieser Effekt wirdpositional biasgenannt. Er verhindert das gemeinsame Vererben von Ge-nen, die weit entfernt auf dem Genom liegen. Zusam-men mit der Eigenheit, dass immer der Endpunkt einesIndividuums mit getauscht wird, können einige Regio-nen im Suchraum nicht oder nur schwer erreicht wer-den, während andere Regionen bevorzugt werden. Diedennoch hohe Effektivität des Crossover ist darauf zu-rückzuführen, dass Teile von Individuen kombiniert wer-den und somit immer bessere Nachkommen erzeugt wer-den. Das Crossover kann als eineMakromutation ver-standen werden und ermöglicht große Sprünge im Such-raum.

Ob es aber überhaupt zum Crossover zwischen zwei Eltern-individuen kommt, entscheidet sich durch dieCrossover-Rate pC, die typischerweise größer als 0,6 gewähltwird [7]. Wird kein Crossover durchgeführt, werden dieselektierten Elternindividuen unverändert in die neue Popu-lation übernommen.

n-Punkt-Crossover

Um die Problematiken despositional bias und des,,Endpunkt-Effektes“ zu umgehen, werdenn Schnittstellenbeimn-Punkt-Crossoververwendet, bei dem die Elternindi-viduen nicht nur an einer, sondern ann Stellen zerschnittenund die Sektoren mit einer geraden Nummer ausgetauschtwerden [7]. Als Beispiel ist hier das oftmals verwendete2-Punkt-Crossover gezeigt:

elter1=[1 1 1 1|1 1 1|111]elter2=[0 0 0 0|0 0 0|000]kind 1=[1 1 1 1|0 0 0|1 1 1]kind 2=[0 0 0 0|1 1 1|0 0 0]

Die Anzahl n der Crossover-Stellen ist meist eine geradeZahl, wobei derpositional biasmit steigendemn sinkt.

Uniform Crossover

Eine weitere Form des Crossover ist dasUniform Cross-over, bei dem für jedes einzelne Bit entschieden wird, obes zwischen den Eltern ausgetauscht wird. Die Wahrschein-lichkeit pUX für den Austausch liegt dabei meist zwischen0,5 und 0,8 [9]. Derpositional bias ist hier nicht mehrvorhanden, sodass bei binärer Codierung jede möglicheKombination aus beliebigen Elternindividuen erzeugt wer-den kann.

elter1=[1 1 1 1 1 1 1 1 1 1]elter2=[0 0 0 0 0 0 0 0 0 0]

Austausch [n n j n j j n j n n]kind1=[1 1 0 1 0 0 1 0 1 1]kind2=[0 0 1 0 1 1 0 1 0 0]

Darüber hinaus gibt es noch eine Reihe weiterer Crossover-Varianten, die oftmals bei der Lösung speziell codierterProbleme entstanden sind, und es kommen immer wiederneue hinzu. Die Frage nach einem allgemein am besten ge-eigneten Verfahren kann deshalb nicht beantwortet werden.So bleibt es dem Anwender überlassen, auch diesen Teilseines GA dem zu lösenden Problem anzupassen, falls derBasis-GA nicht zum Ziel führt.

2.3.2 Mutation

Wenn das Crossover der Suchoperator ist, um großeSprünge im Suchraum zu machen, so ist die Mutation eineVeränderung im Kleinen. Darüber, ob die Mutation un-wichtiger oder wichtiger als das Crossover ist, herrschtallerdings keine Einigkeit. M. Mitchell drückt es in [9] abersehr treffend aus, indem sie sagt, dass es keineWahl zwi-schen den beiden Funktionen ist, sondern darauf ankommt,die richtigeBalancezwischen den beiden zu finden.

Bei der Mutation wird jedes Gen eines Genoms mit einergeringen WahrscheinlichkeitpM negiert:

Vor der Mutation:

kind1 = [0 0 0 0 0 00000]Nach der Mutation von Gen 3 und Gen 8:

kind1 = [0 010 0 0 0100]Für die damit genbezogeneMutationswahrscheinlich-keit pM werden meist Werte von 0,01 oder 0,001 gewählt,da die Wichtigkeit der Mutation für den Erfolg der Sucheoftmals als gering angesehen wird. Es gibt aber auch Stim-men, die der Mutation eine wichtigere Rolle zubilligen.So schlägt Mühlenbein in [16] eine von der Individuum-länge L abhängigeoptimale Mutationswahrscheinlichkeitvon pMopt = 1/L vor.

2.4 Wann sollen Genetische Algorithmeneingesetzt werden?

Wie eingangs schon angedeutet, haben heuristische Verfah-ren Stärken bei nicht-glatten Fitnessfunktionen. Speziell die

156

Page 7: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

M. Buttelmann, B. Lohmann: Optimierung mit Genetischen Algorithmen und eine Anwendung . . . at 4/2004

Genetischen Algorithmen vereinen gute lokale Sucheigen-schaften mit der Möglichkeit größerer Sprünge im Such-raum; sie arbeiten daher häufig noch in großen Suchräumenerfolgreich, selbst wenn deren genaue Eigenschaften unbe-kannt sind. Auch bei Suchprozessen, bei denen mit ver-rauschten Messwerten gearbeitet werden muss, sind GAsOptimierungsverfahren überlegen, die nicht parallel meh-rere Lösungen verarbeiten, wie z. B.Tabu SearchoderSimulated Annealing[15]. Zwar gibt es Ansätze, Opti-mierungsprobleme hinsichtlich ihrer Lösbarkeit mittels GAformal zu klassifizieren, diese sind aber weder eindeutignoch unumstritten.

Erfolgreiche Implementierungen Genetischer Algorithmenliegen heute in großer Zahl vor, und eine zunehmendeZahl von Veröffentlichungen und Konferenzen zeigt denEinsatz in fachübergreifenden Anwendungen: So wer-den GAs für die Optimierung Neuronaler Netze einge-setzt [15], aber auch in der Automatisierungstechnik, wiez. B. bei der Optimierung von Fuzzy-Reglern [15], vonH2-Reglern [14] oder von prädiktiven Reglern [17]. Da-neben werden Benchmark-Probleme bearbeitet, wie dasTravelling-Salesman-Problem (TSP), das in fast jedemGrundlagenbuch erwähnt wird.

3 Anwendung: Modellreduktionmittels GA

Modelle komplexer dynamischer Systeme umfassen häu-fig große Zahlen nichtlinearer Differentialgleichungen, wasSimulation, Analyse und Systementwurf erschwert. Ord-nungsreduktionsverfahren können zwar die Zahl systembe-schreibender Gleichungen verringern, liefern in der Regelaber reduzierte Modelle mit gesteigerter Zahl innerer Kopp-lungen, d. h. strukturell komplexere Modelle. Abhilfe schaf-fen hier Genetische Algorithmen, mit deren Hilfe geeigneteeinfache Modellstrukturen gefunden werden können.

3.1 Ordnungsreduktion

Betrachtet werden nichtlineare, zeitinvariante Systeme inder Zustandsdarstellung

x(t)= f (x(t), u(t)) , (2)

wobei x(t) den n-dimensionalen Zustandsvektor undu(t)den p-dimensionalen Stellgrößenvektor bezeichnen;nist die Systemordnung. Einem Vorschlag von B. Loh-mann [20; 21] folgend kann die rechte Seite der Modell-gleichung ohne Einschränkung der Allgemeinheit in zweilineare Summanden und einen verbleibenden nichtlinearenAnteil aufgespalten werden gemäß

x(t)= Ax(t)+Bu(t)+Fg(x, u) , (3)

wobei jedes Element des Vektorsf (x(t), u(t)) aufgebrochenwird in die Zeitfunktionenx(t), u(t) und g(x, u) und in diezugehörigen konstanten Koeffizienten, zusammengefasst in

den MatrizenA, B und F. Ziel der Ordnungsreduktion istdie Gewinnung eines Modells niedrigerer Ordnungn

˙x(t)= Ax(t)+ Bu(t)+ Fg(Wx, u) , (4)

das das Verhalten des Originals approximiert, d. h. die we-sentlichen oder dominanten Zustandsgrößen gut nachbildet.Diese dominanten Zustände werden vom Nutzer vorgege-ben und hängen über eine ReduktionsmatrixR mit demOriginalzustandsvektor zusammen gemäß

xdo=R ·x(t) . (5)

Liegt das reduzierte Modell (4) vor, so kann außerdem eineNäherungx(t) des Zustandsvektorsx(t) aus dem Vektorx(t) ermittelt werden:

x=W · x . (6)

Die Berechnung der MatrizenA, B, F und W kann gemäßdem in [20; 21] ausführlich dargestellten Reduktionsverfah-ren auf Basis von Simulationsdaten des Originalmodellsnach quadratischen Optimalitätskriterien über geschlosseneFormeln erfolgen.

3.2 Nachteil der Ordnungsreduktion

Es hat sich gezeigt, dass die berechneten Systemmatri-zen des ordnungsreduzierten SystemsE= [A, B, F] und dieMatrix W in der Regel voll besetzt sind. Dies führt zueiner hohen inneren Systemkomplexität. Um die Ordnungund die Komplexität gleichzeitig zu reduzieren, kann dieTatsache genutzt werden, dass das genannte Verfahren dieBerücksichtigung von Nebenbedingungen des Typs

0T=eTi HEi, i=1 . . . n

0T=wTk HWk, k=1 . . .n

an die ZeileneTi von E und wT

k von W erlaubt. Wählt mandabei die MatrizenH so, dass in jeder Spalte genau eineEins und ansonsten Nullen auftreten, so können gezielt ein-zelne Elemente vonE bzw. W zu Null gemacht werden;wählt man beispielsweiseHE3 = [0, 1, 0, . . . , 0]T, so wirddas zweite Element der dritten Zeile vonE zu Null erzwun-gen, während alle verbleibenden Elemente der dritten Zeileim Sinne des Reduktionsverfahrens optimiert werden. Sol-len mehrere Elemente der dritten Zeile zu Null gemachtwerden, so weistHE3 entsprechend viele Einsen auf.

Aufgrund der hohen Anzahl an Möglichkeiten, die Neben-bedingungen aufzustellen, wird ein Genetischer Algorith-mus eingesetzt, um ein Optimum bezüglich einer einfachenModellstruktur und einer guten Nachbildung des Original-systems zu finden [22]. Die Berechnung des reduziertenSystems erfolgt somit in zwei Schritten:

1. Aufstellen der Nebenbedingungen mithilfe des GA.2. Berechnung der MatrizenE= [A, B, F] und W mit der

herkömmlichen Methode der Ordnungsreduktion unterBerücksichtigung der Nebenbedingungen aus 1.

157

Page 8: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

at 4/2004 METHODEN

3.3 Individuum

Um eine mögliche Nebenbedingung in einem Individuumzu codieren, benötigt man für jedes Element der MatrixEdie Information, ob dieses zu Null gesetzt werden soll, odernicht. Somit hat ein Individuum die gleiche Anzahl an Ob-jektparameter, wieE Elemente, wobei die Objektparameteralle die Länge 1 haben und den Wert 0 oder 1 annehmenkönnen. Eine 0 bedeutet dabeinein, es wird keine Null inE eingefügt und eine 1ja, es wird eine Null eingefügt. EinBeispiel: Die MatrixE soll folgendes Aussehen haben:

E=[

0 x 0

x 0 x

]mit x : Nicht-Nullelement

Das Genom des entsprechenden Individuums lautet dann:

aE = [1 0 1︸︷︷︸ 0 1 0︸︷︷︸]1. Zeile vonE 2. Zeile vonE

Um die Fitness eines Individuums zu ermitteln, wird unterBerücksichtigung der entsprechenden Nebenbedingungendas dazugehörige ordnungsreduzierte System berechnet unddessen Zustandsverläufe mit denen des Originalsystems fürverschiedene Eingangsanregungen verglichen:

FE1 = k1 ·n∑

i=1

∞∫0

(xi (t)−wi xi (t))2dt

∞∫0

x2i (t)

︸ ︷︷ ︸Modellnachbildung

−k2 ·sum(aE)︸ ︷︷ ︸Modell-

komplexität

!=min, (7)

worin wi die i -te Zeile vonW und sum(aE) die Zahl derEinsen im VektoraE bezeichnet und damit ein Maß fürdie Modellkomplexität ist. Ergebnis der Fitnessberechnungist eine reelle Zahl als Fitnesswert, wobei ein kleiner Werteine gute Nachbildung und eine geringe Systemkomplexitätbedeuten. Es handelt sich demnach um ein Minimierungs-problem.

Ein Nachteil dieser Fitnessberechnung ist, dass sie dierechen- und damit zeitintensive Lösung der Differenti-algleichungen erfordert. Daher wird hier eine alternativeFitnessberechnung vorgeschlagen, die auf die Simulationdes reduzierten Modells verzichtet und stattdessen auf diebereits berechneten Zustandsverläufe der dominanten Zu-ständexdo des Originalsystems zurückgreift:

FE2 =

k1 ·n∑

i=1

∞∫0

xi,do(t)−eT

i

xdo(t)

u(t)g(Wxdo(t), u(t))

2

dt

∞∫0

x2do(t)dt

︸ ︷︷ ︸Modellnachbildung

−k2 ·sum(aE)︸ ︷︷ ︸Modell-

komplexität

!=min, (8)

worin eTi die i -te Zeile vonE bezeichnet. Im Unterschied

zu (7) bewertet diese Fitnessfunktion nicht die tatsächlichim reduzierten Modell sich einstellenden Zeitverläufe, son-dern lediglich die erwarteten Fehler in den Zeitableitungen.Dennoch wird man das Gütemaß (8) aufgrund der vielfachkleineren Rechenzeit in der Regel vorziehen.

Zu erwähnen ist, dass es sich hier um eine Mehrzielopti-mierung mit zwei Zielen, exakter Modellnachbildung undniedriger Modellkomplexität, handelt. Um diese Ziele in ei-ner einzigen Fitnessfunktion zusammenzufassen, wird derAggregationsansatz verwendet: Die einzelnen Zielfunktio-nen werden mitk1 und k2 gewichtet und dann subtrahiert.Somit kann dieses Problem wie ein Einzelproblem behan-delt werden, und der GA berechnet Lösungen, die einenKompromiss hinsichtlich der Einzelziele darstellen.

3.4 Beispiel mit technischem Hintergrund

Bild 3 zeigt schematisch den Aufbau einer aktiven hydro-pneumatischen Kraftfahrzeugfederung. Das Originalmodellhat die Ordnungn= 10, die SystemmatrizenA, B und Flauten:

A =

0 1,0 0 0 0 0 0 0 0 0−4127 0 127,5 0 0 0 0 0 0 0

0 0 0 1,0 0 0 0 0 0 012,75 0 −1613 0 1600 0 0 0 0 0

0 0 0 0 0 1,0 0 0 0 00 0 533 333 0−533 333 0 0 0 0 00 0 0 0 0 0 0 1,244 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 −162 1,00 0 0 0 0 0 0 0 −8100 0

,

B=

0 04000 0

0 00 00 00 00 00 00 00 8100

,

F=

0 0 0 0 0−0,0148 −0,0148 −0,0148 0 0

0 0 0 0 0−0,000518−0,000518−0,000518 0 0

0 0 0 0 00,667 0,667 0,667 0 0

0 0 0 0 00 0 0 17,5−71,430 0 0 0 00 0 0 0 0

.

158

Page 9: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

M. Buttelmann, B. Lohmann: Optimierung mit Genetischen Algorithmen und eine Anwendung . . . at 4/2004

Wählt man aus technischen Erwägungen [20] sieben domi-nante Zustandsvariablen und setztn= 7, so führt eine Ord-nungsreduktionohne Strukturvereinfachung auf folgendeMatrizen:

A =

5,9·10−13 1,0·100 −3,8·10−13 5,2·10−14 6,7·10−13 7,2·10−14 2,5·10−14

−4,1·103 −2,4·10−11 1,3·102 1,2·10−11−1,4·10−9 −7,9·10−11 1,0·10−11

3,1·10−13−1,5·10−13−8,5·10−14 1,0·100 3,2·10−13 6,9·10−14 1,9·10−14

1,3·101 7,6·10−3 −1,1·101 −3,6·10−2 −1,3·100 8,8·10−2 −8,6·10−2

−4,9·10−14 7,1·10−15 2,9·10−14 5,0·10−15 4,9·10−14 1,2·100 −2,3·10−15

−2,3·10−12−1,1·10−14 1,9·10−12 7,3·10−14−2,5·10−12 3,5·10−13−7,8·10−14

−1,4·101 1,2·100 1,5·101 −3,0·100 −2,1·101 −1,4·101 −1,9·101

,

B=

−2,3·10−14 4,7·10−15

4,0·103 −4,7·10−13

6,1·10−15 4,7·10−15

−1,3·100 1,8·10−2

9,7·10−15 9,4·10−15

3,2·10−13 −3,5·10−4

8,0·10−1 2,8·101

,

F=

5,0·10−17 4,1·10−16 4,2·10−17 −8,4·10−14 −3,5·10−14

−1,5·10−2 −1,5·10−2 −1,5·10−2 −1,3·10−11 −8,4·10−12

4,5·10−17 3,6·10−16 4,3·10−17 −7,3·10−14 −5,1·10−14

1,6·10−3 1,4·10−3 1,5·10−3 3,0·10−2 2,0·10−1

2,6·10−18 5,3·10−18 −2,8·10−18 6,7·10−15 2,0·10−14

8,8·10−17 −2,5·10−16 1,8·10−17 1,8·101 −7,1·101

2,3·10−4 −2,1·10−3 −3,3·10−4 3,2·100 −6,9·101

.

Alle Elemente der berechneten Matrizen sind ungleich null,und somit liegt eine sehr hohe Systemkomplexität vor6.

Um diesen Nachteil zu beheben, werden mithilfe des Ge-netischen Algorithmus’ geeignete Nebenbedingungen ge-neriert, die bei der Berechnung der ordnungsreduzier-ten Systemmatrizen berücksichtigt werden. Der Suchraumdieses Optimierungsproblems umfasst eine Anzahl von2n·(n+p+q) = 27·(7+2+5) = 298≈ 3 ·1029 mögliche Lösungen(Ordnung des reduzierten Systems:n= 7, Anzahl der Ein-gängep= 2 und Anzahl der Nichtlinearitätenq= 2). Die

6 Durch nachträgliches Nullsetzen der kleinsten Elemente in diesen Mat-rizen vereinfacht sich die innere Struktur zwar, erreicht aber bei weitemnicht die Einfachheit und Nachbildungsgüte des mittels GA gefundenenModells.

Bild 3: Aufbau der KFZ-Federung.

Zahl 98 ist auch gleichzeitig die Anzahl der Elemente derMatrix E= [A, B, F] und somit die ChromosomenlängeL,da jedem Element vonE ein Gen eines Individuums zuge-ordnet wird.

3.5 Entwurf des Genetischen Algorithmus’

Bei der Implementierung des Basis-GA nach Abschnitt 2hat man sich zwischen verschiedenen Varianten der Se-lektion und Variation zu entscheiden. Eine allgemeingül-tige Empfehlung kann dabei kaum gegeben werden, einenguten Ausgangspunkt mag aber die rangbasierte Selek-tion mit Emax= 1,1 und Elitismus mitq= 1 zusammenmit dem 2-Punkt-Crossover mit einer Wahrscheinlichkeitvon pC = 0,6 und der bitbezogenen Mutation mit einerWahrscheinlichkeit vonpM = 1/L darstellen. Eine weiterewichtige Konstante ist die Populationsgrößen, die meistzwischen 20 und 500 (hier als Standard:n= 40) gewähltwird [7].

Variiert man diese Methoden und Werte innerhalb sinn-voller Intervalle, ergeben sich für das hier vorgestellteOptimierungsproblem z. B. die folgenden Varianten:

• Populationsgröße: n= [20; 40; 50; 70; 100;200;400]• Selektion:Rangbasierte Selektion mit

Emax= [1,1; 1,3; 1,5; 1,7; 1,9],Wettkampfselektion7 mit m= [2; 4; 6; . . . ; n/2]• Rekombination: N-Punkt-Crossover mitN = [1; 2; 3; 4],

Uniform-Crossover, mit unterschiedlichen Wahrschein-lichkeiten pC = [0,2; 0,4; 0,6; 0,8]• Mutation: Bitbezogene Mutation mit

pM = [0,001; 0,01; 1/L]• Elitismus:Übernahme der bestenq Eltern:q= [0; 1; 2; 3]

Nachfolgend werden einige ausgewählte Ergebnisse der Su-che mit Genetischen Algorithmen vorgestellt. Ausgehendvon der oben beschriebenen Grundkonfiguration werden dieVariablen einzeln verändert. Die Bilder 4 und 5 zeigen je-weils unten den Verlauf der Fitness des besten Individuumsin der aktuellen Population über 100 Generationen undoben den Mittelwert der Fitnesswerte allern Individueneiner Population.

Bei unterschiedlichen Populationsgrößen ist in Bild 4 zu er-kennen, dass der Algorithmus für jede Populationsgrößenkonvergiert und in die Region mit dem globalen Optimumvorstößt. Je größern ist, umso höher ist auch die Wahr-scheinlichkeit, ein besseres Individuum bei der Berechnungder Startpopulation zu finden, was in der unteren Abbil-dung zu erkennen ist. Die gerichtete Suche des GA, diedurch den Selektions-Operator gewährleistet wird, ist auchin den Fitness-Durchschnittswerten der gesamten Popula-tion zu erkennen.

7 Es wird die zweite vorgestellte Variante mit variablem Selektionsdruckverwendet.

159

Page 10: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

at 4/2004 METHODEN

Bild 4: Auswirkungen der Populationsgröße n.

Bild 5 zeigt die Auswirkungen des Selektionsdrucks bei derrangbasierten Selektion durch Variation des Erwartungs-wertes Emax für das beste Individuum. Es ist deutlichzu erkennen, dass ein hoher Selektionsdruck bei großemEmax zu einer schnelleren Konvergenz des GAs führt. BeiEmax= 1,1 wird der gute Fitnesswert für das beste Indi-viduum nicht ganz erreicht, anders bei größeren Werten.Auch die durchschnittliche Fitness aller Individuen ist beikleinem Emax deutlich schlechter, da durch den geringenSelektionsdruck auch immer wieder schlechte Individuenausgewählt werden.

Ein noch höherer Selektionsdruck als bei der rangbasiertenSelektion kann bei der Wettkampfselektion erzielt werden.Bei dem geringstmöglichen Selektionsdruck im Wettkampfmit m= 2 ähnelt die Auswahl der Individuen bereits demder rangbasierten Selektion mit einem hohenEmax= 1,9:

selektierte Ind.=

1 1 2 2 3 4 5 5 5 66 7 7 7 8 9 10 11 12 13

14 14 14 15 17 18 18 18 19 2121 24 25 25 25 25 27 20 31 38

.

Ein sehr hoher Selektionsdruck mitm= 20 bei einer Po-pulationsgröße vonn= 40 hingegen führt dazu, dass sichnur noch die besten 10 Individuen mit entsprechend vielenNachkommen in der neuen Population durchsetzen konn-ten:

Bild 5: Auswirkungen des Erwartungswertes Emax bei rangbasierterSelektion.

selektierte Ind.=

1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 2 2 22 2 2 2 2 2 2 2 2 23 3 3 3 4 4 5 8 9 10

.

Änderungen der VariationsoperatorenRekombinationundMutation beeinflussten die Suchefür dieses Optimierungs-problemnicht signifikant, sodass auf eine Darstellung derSuchverläufe verzichtet wurde.

3.6 Ergebnis der Suche mit dem GA

Dem Genetischen Algorithmus gelingt es, Lösungen zu fin-den, die bei einer geringen Anzahl an Verkopplungen einegute Approximation des Originalsystems bieten. Eine die-ser Lösungen ist hier dargestellt:

A =

0 1,0 0 0 0 0 0−4127,5 0 127,5 0 0 0 0

0 0 0 1,0 0 0 00 0 0 0 −16,8 0 00 0 0 0 0 1,2 00 0 0 0 0 0 00 0 0 0 0 0 −31,6

,

160

Page 11: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

M. Buttelmann, B. Lohmann: Optimierung mit Genetischen Algorithmen und eine Anwendung . . . at 4/2004

Bild 6: Blockschalt-bild des reduziertenSystems.

B=

0 04000 0

0 00 00 00 00 33,5

,

F=

0 0 0 0 0−0,015 −0,015 −0,015 0 0

0 0 0 0 00,0024 0,0013 0,0015 0 0

0 0 0 0 00 0 0 17,5 −71,40 0 0 0 0

.

Zusammen mit der Matrix

W =

1,0 0 0 0 0 0 00 1,0 0 0 0 0 00 0 1,0 0 0 0 00 0 0 1,0 0 0 00 0 1,0 0 0 0 00 0,09 0 0,8 0 0 00 0 0 0 1,0 0 00 0 0 0 0 1,0 00 0 0 0 0 0 1,00 0 0 0 0 −62,1 178,9

mit deren Hilfe auch die dreinichtdominantenZustände desOriginalsystems über die Beziehungx=W · x nachgebildetwerden können, kann das Blockschaltbild des reduzier-ten Systems angegeben werden (Bild 6). In der MatrixWsind, da die physikalische Bedeutung der Zustände desOriginalsystems und des reduzierten Systems gleich sind,

in den Zeilen für diedominantenZustände jeweils eineEins und sonst Nullen und für dienichtdominantenZu-stände Elemente ungleich null. Also muss auch hier wie fürE eine Strukturvereinfachung vorgenommen werden, derenErgebnis in der obigen Gleichung fürW angegeben ist.Der Suchraum dieses Optimierungsproblems ist allerdingswesentlich kleiner mit 2(n−n)·n = 2(10−7)·7= 221≈ 2·106 In-dividuen (Ordnung des Originalsystems:n= 10, Ordnungdes reduzierten Systems:n= 7). Die Berechnung und Op-timierung vonW und E erfolgte dabei nacheinander, undzwar zunächstW unter Verwendung der Fitnessfunktion

FW1 = k1 ·n∑

i=1

∞∫0

[xi (t)−wTi xdo(t)]2dt

∞∫0

x2i (t)dt

︸ ︷︷ ︸Modellnachbildung

−k2 ·sum(aW)︸ ︷︷ ︸Modell-

komplexität

!=min,

worin sum(aW) die Zahl der Nullelemente der MatrixWist, dannE unter Verwendung von (8)8.

3.7 Anmerkungen zum Optimierungsproblem

Für den Erfolg des GA beim vorliegenden Optimierungs-problem ist von entscheidender Bedeutung, dass es nicht

8 Dieses Vorgehen führt zu suboptimalen Lösungen. Für das strengeOptimum sind W und E gleichzeitig unter Verwendung von (7) zusuchen.

161

Page 12: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

at 4/2004 METHODEN

nur eine einzige gute Lösung gibt, die aus der Menge vonschlechten Lösungen hervorsticht, sondern dass es mindes-tens eine Region im Suchraum mit vielen guten Lösungengibt. Die Individuen in einer Region unterscheiden sich da-bei in ihrem Genom nur geringfügig und weisen auch eineähnlich gute Fitness auf. Wäre dies nicht der Fall, hättenHeuristiken Schwierigkeiten, eine gute Lösung zu finden.Die Umgebung des besten gefundenen Individuums ist inBild 7 dargestellt. Es zeigt, dass es tatsächlich nicht nurein einziges gutes Individuum gibt, sondern mehrere Indi-viduen mit guter Fitness und ähnlichem Genotyp [23; 24].

Um das gezeigte ordnungsreduzierte Modell mit verein-fachter Struktur zu finden, benötigt der Genetische Al-gorithmus für die Berechnung der optimierten MatrixEca. 80 Generationen bei einer Populationsgröße von 40Individuen. Da aber sowohl die Rekombination als auchdie Mutation nur mit einer bestimmten Wahrscheinlichkeitausgeführt werden, müssen nicht pro Generation 40 neueFitnesswerte berechnet werden. Die Gesamtzahl von be-rechneten Fitnesswerten liegt mit knapp 2800 unter dertheoretisch maximalen Anzahl von 80·40= 3200. Es istaber zu berücksichtigen, dass ein GA selten beim erstenVersuch eine gute Lösung findet, sondern die Parametervielmehr dem Problem angepasst werden müssen, sodassmehrere Durchläufe erforderlich sind. Bei der großen An-zahl der Individuen von 3·1029 im Suchraum ist der GAtrotzdem ein geeignetes Werkzeug, um dieses Optimie-rungsproblem zu lösen.

Darüber hinaus muss darauf hingewiesen werden, dass derGA lediglich in der Lage ist, dieRegionmit der oben ge-zeigten Lösung zu finden. Es bietet sich dann an, dieseRegion mit einem lokal ausgerichteten Suchverfahren nachbesseren Lösungen zu durchsuchen. Dies kann ebenfallswieder ein GA sein, dessen Parameter entsprechend geän-dert wurden, oder aber ein alternatives Verfahren, wieTabuSearch[25] oderSimulated Annealing[15].

Bild 7: Ausschnitt des Suchraums in der Umgebung des besten Indi-viduums. Ausgehend vom besten gefundenen Individuum sind jeweilsnur die drei besten Nachbarn (mit Hamming-Distanz eins) dargestellt;durchaus existierende, drastisch schlechtere Nachbarn sind weggelas-sen.

4 Literaturhinweise

Weite Verbreitung fanden die GAs vor allem durch dasBuch von David E. Goldberg [4], einem Holland-Schüler.Dieses Werk ist zwar sehr bekannt und wird immerwieder zitiert, aber in einigen Teilen gilt es als über-holt. Einen aktuelleren Einstieg in die Thematik be-kommt man daher durch die Werke von V. Nissen [7],T. Bäck [10], K. Weicker [11] oder M. Mitchell [9]. Istes aufgrund der Codierung des Optimierungsproblemsnicht oder nur schwer möglich, auf eine binäre Dar-stellung zurückzugreifen, so bietet Z. Michalewicz in [8]eine gute Hilfestellung. Im Internet sind darüber hin-aus weitere Hilfestellungen zu finden. So ist z. B. un-ter www.aic.nrl.navy.mil/galist/ ein Archivzum Thema GA zu finden, wo u. a. Verknüpfungenzu diverser Software aufgeführt sind. Eine MATLAB-Toolbox mit entsprechender Beschreibung kann z. B. un-ter www.ie.ncsu.edu/mirage/GAToolBox/gaot/heruntergeladen werden.

Literatur

[1] D. A. Wimmer, R. Chattergy. Introduction to Non-linear Op-timization: A Problem Solving Approach. New York, Ams-terdam, Oxford: North-Holland, 1978.

[2] H. Th. Jongen, P. Jonker, F. Twilt. Nonlinear Optimization inR

n – II. Transversality, Flows, Parametric Aspects. Frank-furt am Main, Bern, New York: Lang, 1986.

[3] J. H. Holland. Adaptation in natural and artificial systems:an introductory analysis with applications to biology, con-trol, and artificial intelligence. 1. Aufl.: Ann Arbor: Univ.of Michigan Press, 1975, 2. Aufl.: Cambridge, Mass. [u. a.]:MIT Press, 1993.

[4] D. E. Goldberg. Genetic algorithms in search, optimization,and machine learning. Reading, Mass.: Addison-Wesley,1989.

[5] D. E. Goldberg, K. A. Deb. A Comparative Analysis of Se-lection Schemes Used in Genetic Algorithms. In [6],S. 69–93.

[6] G. J. E. Rawlings (Hrsg.). Foundations of Genetic Algo-rithms. San Mateo, CA: Morgan Kaufmann Publishers,1991.

[7] V. Nissen. Einführung in Evolutionäre Algorithmen – Op-timierung nach dem Vorbild der Evolution. Braunschweig,Wiesbaden: Vieweg, 1997.

[8] Z. Michalewicz. Genetic Algortihms+ Data Structures=Evolution Programs. 2nd edition, Berlin [u. a.]: Springer-Verlag, 1994.

[9] M. Mitchell. An Introduction to Genetic Algorithms. Cam-bridge, Massachusetts, London, England: The MIT Press,1996.

[10] T. Bäck. Evolutionary Algorithms in Theory and Practice.New York (NY): Oxford University Press, 1996.

[11] K. Weicker. Evolutionäre Algorithmen. Stuttgart: B.G. Teub-ner GmbH, 2002.

[12] J. E. Baker. Adaptive Selection Methods for Genetic Algo-rithms. In [13].

[13] J. J. Grefenstette (Hrsg.). Proceedings of an InternationalConference on Genetic Algoritms and Their Applications.Hillsdale (NJ): Lawrence Erlbaum, 1985.

[14] C. L. Karr, L. M. Freeman. Industrial Applications of Gene-tic Algorithms. Boca Raton: The CRC Press, 1999.

162

Page 13: Optimierung mit Genetischen Algorithmen und eine Anwendung ... · METHODEN at 4/2004 Optimierung mit Genetischen Algorithmen und eine Anwendung zur Modellreduktion Optimization with

M. Buttelmann, B. Lohmann: Optimierung mit Genetischen Algorithmen und eine Anwendung . . . at 4/2004

[15] D. T. Pham, D. Karaboga. Intelligent Optimization Techni-ques – Genetic Algorithms, Tabu Search, Simulated Anne-aling and Neural Networks. London: Springer-Verlag, 2000.

[16] H. Mühlenbein. How Genetic Algorithm Really Work I. Mu-tation and Hillclimbing. Proceedings of the Second Confe-rence on Parallel Problem solving from Nature. Amsterdam:North-Holland, 1992.

[17] M. Les, R. Svecko. Verbesserung der nichtparametrischenprädiktiven Regelung von nichtminimalphasigen Regelstre-cken.at – Automatisierungstechnik 49(3), S. 132 ff., Olden-bourg Verlag, 2001.

[18] I. Rechenberg. Evolutionsstrategie ’94. Stuttgart: Frommann-Holzboog 1994.

[19] H.-G. Beyer, H.-P. Schwefel. Evolution Strategies: A Com-prehensive Introduction. Natural Computing, 1(1), S. 3–52,2002.

[20] B. Lohmann. Ordnungsreduktion und Dominanzanalysenichtlinearer Systeme. VDI-Fortschrittsberichte, Reihe 8,VDI-Verlag, Düsseldorf 1994.

[21] B. Lohmann. Ordnungsreduktion und Dominanzanalysenichtlinearer Systeme.at – Automatisierungstechnik 42(10),S. 466 ff., Oldenbourg Verlag 1994.

[22] M. Buttelmann, B. Lohmann. Model Simplification AndOrder Reduction of Non-linear Systems With GeneticAlgorithms. Proceedings of the IMACS Symposium onMathematical Modelling, 3rd MATHMOD, Vienna 2000,S. 777–781.

[23] M. Buttelmann, B. Lohmann. Genetische Algorithmen fürdie Strukturvereinfachung ordnungsreduzierter, nichtlinearerSysteme. Proceedings 10. Workshop Fuzzy Control, Dort-mund, 2000, S. 140–149.

[24] M. Buttelmann, B. Lohmann. Non-linear Model Reductionby Genetic Algorithms with Using a System Structure Re-lated Fitness Function. European Control Conference (ECC)2001, Porto, Portugal, S. 1870–1875.

[25] M. Buttelmann, B. Lohmann. Two Optimisation Methods forSolving the Problem of Structure Simplification of Non-linear Systems. Methods and Models in Automation andRobotics (MMAR) 2002, Szczecin, Poland.

[26] VDI/VDE-Richtlinie 3550, Blatt 3. Computational Intelli-gence: Evolutionäre Algorithmen, Begriffe und Definitionen.VDI/VDE-Handbuch Regelungstechnik, Berlin: Beuth Ver-lag, 2003.

[27] B. Morgenstern. Elektronik III. Digitale Schaltungen undSysteme. Braunschweig/Wiesbaden: Vieweg Verlag, 1992.

[28] Meyers großes Taschenlexikon. Mannheim: BI-Taschenbuch-verlag, 1992.

Manuskripteingang: 13. Dezember 2002.

Dipl.-Ing. Maik Buttelmann ist wissenschaftlicherMitarbeiter des Institutes für Automatisierungstech-nik an der Universität Bremen. Hauptarbeitsgebiete:Genetische Algorithmen, Ordnungsreduktion, Struk-turvereinfachung.

Adresse: Universität Bremen, Fachbereich 01 Elek-trotechnik und Informationstechnik, Institut für Au-tomatisierungstechnik, Postfach 33 04 40, 28334Bremen, DEUTSCHLAND, Fax: +49-(0)421-218-4707,E-Mail: [email protected]

Prof. Dr.-Ing. habil. Boris Lohmann ist kollegia-ler Leiter des Instituts für Automatisierungstechnikder Universität Bremen und vertritt im StudiengangElektrotechnik das Fachgebiet Systemdynamik undRegelungstechnik. Neben der Modellbildung undModellvereinfachung liegen Arbeitsschwerpunkteder Gruppe bei der kameragestützten Navigation au-tonomer Fahrzeuge und der aktiven Geräuschdämp-fung mit Anwendung im KFZ.

Adresse: wie oben, E-Mail: [email protected]

163