E1-07Fo4 - Bionik TU

Werbung
Ingo Rechenberg
PowerPoint-Folien zur 4. Vorlesung „Evolutionsstrategie I“
Auf dem Weg zu einer nichtlinearen Theorie
Korridormodell, Kugelmodell und die 1/5 - Erfolgsregel
Weiterverwendung nur unter
Angabe der Quelle gestattet
Suchstrategie: Konstruktion einer additiven Einbahnstraße zum Optimum
10 klassische Optimierungsstrategien
1. Gauß-Seidel-Strategie
2. Strategie von Hooke und Jeeves
3.
4.
5.
6.
Rosenbrock-Strategie
Strategie von Davis, Swann und Campey (DSC)
Simplex-Strategie von Nelder/Mead
Complex-Strategie von Box
7. Powell-Strategie
8. Newton-Strategie
9. Strategie von Steward
10. Strategie von Davidon, Fletcher und Powell (DFP)
Aktuell: SQP-Verfahren
(Sequential Quadradic Approximation)
x3
x2
x1
… Nach dem Arbeitschritt
wird durch Testmessungen
erneut die Richtung des
steilsten Anstiegs ermittelt.
In diese Richtung wird wiederum mit der Arbeitsschrittweite vorangegangen.
Elementare Gradientenstrategie
x3
x2
x1
Nachdem die Richtung steilsten Anstiegs ermittelt wurde
wird solange mit der Arbeitsschrittweite in diese Richtung
vorangeschritten, bis die
Qualität sich verschlechtert.
Dort wird erneut die Richtung
des steilsten Anstiegs durch
Testsmessungen ermittelt.
Extrapolierende Gradientenstrategie
x3
x2
x1
Es wird in die 1. Koordinatenrichtung solange mit der
Arbeitsschrittweite fortgeschritten, bis sich die Qualität verschlechtert. Dann
wird die Prozedur in der 2.
Koordinatenrichtung fortgesetzt usw.
Gauß-Seidel- oder Koordinatenstrategie
x3
3
6
4
7
2
1
5
x2
x1
Konstruktion eines gleichseitigen Tetraeders im
Variablenraum. Der Punkt
niedrigster Qualität wird
gestrichen. An der verbleibenden Grundfläche wird
die Spitze eines neuen
Tetraeders gespiegelt.
Simplex-Strategie von Nelder/Mead
Vernünftige Strategien folgen
Wegen zum Optimum
Folgen eines zum Gipfel ausgerollten Ariadnefadens
Text
Lotterielose
Gewinn
100 Lose auf den Feldern
der Ebene ausgelegt
9
0
9
0
Es gibt keinen Weg zum Gewinn, dem man folgen kann !!!
j
j=
zurückgelegter Weg
Zahl der Mutationen
Algorithmus der (1+1)-ES
x Ng = xEg   z g
xEg 1 =
x Ng für Q( x Ng )  Q( xEg )
xEg sonst
(n)
jevo =
  1
2
n
Wo ist das Optimum ???
evo
Ende der Linearität
Globale stochastische Suche
Suche nach dem maximalen Fortschritt
Kreiskuppe
Nichtlineare Modelle
Nahe am Optimum
Einkreisen des Optimums
Parabelgrat
Weitab vom Optimum
Voranschreiten zum Optimum
Modellfunktion Rechteckgrat (Korridormodell)
Q steigt longitudinal monoton an
2-dimensional
3-dimensional
Modellfunktion Kreiskuppe (Kugelmodell)
Q steigt radial monoton an
2-dimensional
3-dimensional
P
P
P
P
P′
P
P
Ursprung der
z-Koordinaten
P
P
Gauss- oder Normalverteilung
 = Maß für die Länge der Mutationsschritte
Zur Trefferwahrscheinlichkeitsdichte
 1
wt ( P  P ) = 
 2 
3

 e


1 ( z 2  z 2  z 2 )
1
2
3
2 2
Text
1
w ( zi ) =
e
2
w

1
2
2
z
i
2
Wendepunkt der Kurve
2
0
+
zi
Normalverteilte Zufallszahlen zi für die Mutation der Variablen xi
R
y2,...n
y1
+
R
P'
P
j = 
6
Lokaler Fortschritt der (1+1)-ES am Korridormodell
Text
j = 
6
j  =  … ( y1  y1 ) wt ( P  P ) dy1  dyn
R
Lange elementare
Zwischenrechnung
1   b  y2 
 b  y2  1   b  yn 
 b  yn  

j=
  erf 
  erf 
  erf 
 
 erf 
2  2   2  
 2   2   2  
 2   
Text
1   b  y2 
 b  y2  1   b  yn 
 b  yn  

j=
  erf 
  erf 
  erf 
 
 erf 
2  2   2  
 2   2   2  
 2   
Der örtliche Fortschritt im Korridor ist von der Lage des Punktes P′ abhängig. Im
Zentrum ist der Fortschritt groß, in den Ecken dagegen sehr klein. Wir müssen
den Fortschritt über den Korridorquerschnitt mitteln:
b
b
  j  dy2  dyn

y =  b y =  b
j=
2
2
Die lineare Mittelung ist erlaubt, weil - während des evolutiven Fortschreitens im
Korridor - jede Position im Korridorquerschnitt (in der Mitte, am Rand und in der
Ecke) die gleiche Aufenthaltshäufigkeit besitzt (Simulation oder lange Rechnung).
y2,...n
2b
j
y1
j

2 2 


2
b
/ 
1


1  e
erf ( 2 b ) 
j = jKorr =


2 b 
2 



n1

2 2 


2
b
/ 
1


b
1  e
erf ( 2 ) 
j = jKorr =


2 b 
2 


Mit
u2
erf (u)  1  1 e
 u
für u>>1
folgt



1

j Korr =
1 

2 
2 b 
n1
n1

Dies gilt für n >> 1,
wie sich später
zeigen wird



1

j Korr =
1 

2 
n
2 b 
für n >> 1
Wir suchen das Maximum von j
durch Nullsetzen der 1. Ableitung:
 opt = b 2n
e
jmax = b n
!
dj
== 0
d
Wir erinnern uns:
j=
zurückgelegter Weg
Zahl der Mutationen
Wir konstruieren ein zweites Konvergenzmaß
We =
erfolgreiche Mutationen
Gesamtzahl der Mutationen
We nennen wir die Erfolgswahrscheinlichkeit
Es galt:
j  = … ( y1  y1 ) wt ( P  P ) dy1  dyn
R
Wir setzen die Fortschrittsbewertung = 1
We =
 
…
R
1  wt ( P  P ) dy1  dyn
Lange elementare
Zwischenrechnung
Bekannter
Grenzwert
1

1

We = 1 

2 b 
2
n 1

 opt 
1
1

Weopt = 1 
2
2 b 
We opt  1
2e
für  /b << 1
n1
( = 1 : 5,4 )
 1
1
= 1  
2 n
n1
für n >> 1
n
lim
(1  1n )
n 
=e
Algorithmus der (1+1)–ES mit Erfolgsregel
x Ng = xEg   z g
xEg 1 =
{
x Ng für Q( x Ng )  Q( xEg )
xEg sonst
 vergrößern für We > 1 / 2e
 verkleinern für We < 1 / 2e
!
Korridormodell und optimale
Mutationsschrittweite
Modellfunktion Kreiskuppe (Kugelmodell)
Q steigt monoton an
2-dimensional
3-dimensional
y2,...n
Fortschrittsbewertung
am Kugelmodell
P
+
R
y1
P
P
P’
j Kugel =
zurückgelegter Weg als Radiendifferenz
Zahl der Mutationen
j Kugel =
zurückgelegter Weg als Radiendifferenz
Zahl der Mutationen
 =  …(r  y12  y22    yn2 ) wt ( P  P ) dy1  dyn
jKugel
R
   n  2


 n   
  8 r

n

 
j Kugel =
 
1  erf 
e

2 
8r 
8
r

 




 n  
n

1

für r  1
We Kugel = 1  erf 

2
 8 r 

Korridor
Kugel
opt
2 b
n
1,224 r
jmax
b
en
0,202 r
We opt
1
2e
n
n
0,270
Ergebnisse der nichtlinearen Theorie
1/6 1/5 1/4
0,4
*
Korridormodell
0,3
Kugelmodell
0,2
0,1
0
0
0,1
0,2
0,3
0,4
0,5
We
(1 + 1) - Evolutionsstrategie: 1 / 5- Erfolgsregel
Algorithmus der (1+1)–ES mit 1/5-Erfolgsregel
x Ng = xEg   z g
xEg 1 =
{
z g auf die Länge 1 normiert
x Ng für Q (x Ng )  Q ( xEg )
xEg sonst
 vergrößern für We > 1 / 5
 verkleinern für We < 1 / 5
Zur 1/5-Erfolgsregel
Der Futurologe Stanislaw Lem schrieb in
einem Essay im Spiegel:
Die Menschheit hat bis jetzt 10 hoch 15 Bits an Information gespeichert.
Bis zum Jahr 2000 wird sich die Menge etwa verdoppeln. Dabei gilt für
die Infosintflut Folgendes: Etwa drei Fünftel sind Unsinn und vermischter
Unsinn; den ich „Trübkunde“ nenne; ein Fünftel ist zwar sinnvoll, aber
vergängliche Info, und kaum ein Fünftel besteht aus ernsten Denkfrüchten. Sogar die Forschungsanstalten werden in der Flut versinken,
weil sie nicht Information, sondern Selektion benötigen, um weiter
agieren zu können.
Ende
www.bionik.tu-berlin.de
Der Minotaurus, ein mischgestaltiges Wesen (halb Mensch, halb
Stier) haust in einem Labyrinth, das Dädalus im Auftrag des
kretischen Königs Minos in Knossos erbaut hat. Sieben Jungen
und sieben Mädchen mussten jährlich dem Minotaurus geopfert
werden. Da beschließt der athenische Held Theseus, dem
Minotaurus ein Ende zu bereiten. In Knossos auf Kreta angekommen verliebt er sich in Ariadne, der Tochter des Königs Minos.
Bevor Theseus in das Labyrinth eindringt gib Ariadne ihm auf
Anraten von Dädalus ein Garnknäuel. Theseus bindet ein Ende
des Fadens an das bronzene Gitter des Eingangstores. Nach
langem Umherirren im Labyrinth - das Garnknäuel hinter sich
abwickelnd - stößt Theseus auf den Minotaurus und erschlägt ihn
in einem fürchterlichen Kampf. Mit Hilfe des ausgerollten roten
Fadens der Ariadne findet Theseus problemlos den Weg in die
Freiheit zurück.
Auf diesen „Ariadnefaden“ geht unser Wort „Leitfaden“ zurück.
Zur Wahrscheinlichkeitsrechnung
Diskrete Wahrscheinlichkeit:
Die Wahrscheinlichkeit eine 4 zu würfeln ist gleich 1/6.
Die Wahrscheinlichkeit eine 4 oder eine 5 zu würfeln ist gleich 1/6 1/6 = 2/6.
Die Wahrscheinlichkeit eine 3 und nochmals eine 3 zu würfeln ist gleich 1/6 1/6 = 1/36.
Kontinuierliche Wahrscheinlichkeit:
Mit dem Befehl ran in Basic wird eine Zufallszahl zwischen 0 und 1 aufgerufen. Die Wahrscheinlichkeit genau 0,60000… (mit unendlich vielen Nullen) aufzurufen ist = 0. Sinnvoll ist
nur die Frage nach der Wahrscheinlichkeit, einen Wert zwischen 0,59000… und 0,61000…
zu erwürfeln.
Der Wert (hier 0,02) dividiert durch das gesamte Intervall (hier gerade = 1) ergibt die
Wahrscheinlichleitsdichte.
Die Wahrscheinlichkeitsdichte w ist also ein abstrakter Zahlenwert, der mit dem Linien-,
Flächen- oder Volumenelement multipliziert die reale Wahrscheinlichkeit angibt, diesen
Linien-, Flächen- oder Volumenbereich zu treffen.
Wir gehen alle Punkte (hier der Ebene) durch, multiplizieren den Fortschrittspfeil (falls vorhanden) mit der Trefferwahrscheinlichkeitsdichte und addieren alle positiven Pfeillängen
zusammen. Da wir mit der Wahrscheinlichkeitsdichte operieren, erübrigt sich die Division
durch die Zahl der aufgesuchten Punkte, die ja Unendlich wäre.
Die Summation der unendlich vielen differentiellen Punktmultiplikationen führt zu einem Integral, das im Fall von n Dimensionen ein n-dimensionales Raumintegral ist. Da positive Pfeile
nur im Erfolgsgebiet R+ auftreten, erstrecken wir das Raumintegral nur über den R+-Bereich.
Die Funktion erf(x) heißt Fehlerfunktion (error function). Erf(x) ist nicht anders
zu behandeln als ein Sinus, Cosinus oder Tangenshyperbolikus. Will sagen,
dass der Wert für ein gegebenes Argument x aus einer Tabelle abgelesen
werden muss.
Erf(x) ist definiert als das Integral
x
2
z 2
erf ( x ) =
e dz
0

und hat den grafischen Verlauf
erf(x)
1
-2
-1
0
-1
1
2
x
Herunterladen