ingo rechenberg
DESCRIPTION
Ingo Rechenberg. PowerPoint-Folien zur 8. Vorlesung „Evolutionsstrategie I“. Nichtlineare Theorie der (1, l ) - Evolutionsstrategie Fortschritt und Erfolg am Kugelmodell. D ARWIN s Denkschema in maximaler Abstraktion. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/1.jpg)
Ingo Rechenberg
PowerPoint-Folien zur 8. Vorlesung „Evolutionsstrategie I“
Nichtlineare Theorie der (1, ) - Evolutionsstrategie
Fortschritt und Erfolg am Kugelmodell
![Page 2: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/2.jpg)
DARWINs Denkschema in maximaler Abstraktion
ES)1( 1
Genauere Nachahmung der biologischen Evolution
ES),( 1
0)18235()57223()42489()92322( 243
22
21
24
23
22
21
24
23
221
224
232
21 xxxxxxxxxxxxxxxx
018235057223042489092322
4322
21
423
22
21
423
221
24
232
21
xxxxxxxxxxxxxxxx
![Page 3: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/3.jpg)
Basis-Algorithmus der (1, ) - Evolutionsstrategie
1E1N zxx gg
2E2N zxx gg
zxx ggEN
eiltnormalvert)1,0(,, /21 nzzz n
ggNBE
1 xx )(),(),()( NNNNB 21minmax/ gggg QQQQ xxxx
![Page 4: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/4.jpg)
,1,1 c zzzc z d)erf(1e2
2 11,1
2
mit
Ergebnis der linearen Theorie
Tabelle der Fortschrittsbeiwerte
1 0
2 0,5642
3 0,8463
4 1,0294
5 1,1630
6 1,2672
7 1,3522
8 1,4236
9 1,4850
10 1,5388
,1c
11 1,5864
12 1,6292
13 1,6680
14 1,7034
15 1,7359
16 1,7660
17 1,7939
18 1,8200
19 1,8445
20 1,8675
,1c
21 1,8892
22 1,9097
23 1,9292
24 1,9477
25 1,9653
26 1.9822
27 1,9983
28 2,0137
29 2,0285
30 2,0428
,1c
35 2,1066
40 2,1608
45 2,2077
50 2,2491
55 2,2860
60 2,3193
65 2,3496
70 2,3774
80 2,4268
90 2,4697
,1c
100 2,5076
200 2,7460
300 2,8778
400 2,9682
500 3,0367
600 3,0917
700 3,1375
800 3,1768
900 3,2111
1000 3,2414
,1c
Fortschrittsbeiwertn
Zur Erinnerung
![Page 5: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/5.jpg)
Von der linearen Theorie
zur nichtlinearen Theorie
lin
kug
Einfachste isotrope nichtlineare Funktion
![Page 6: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/6.jpg)
Zur ErinnerungBergsteigen der Evolution
Qua
lität
/ Fitn
ess
Fittness-Landschaft
![Page 7: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/7.jpg)
Kugelmodell
Er
.. .x x2 n
x1
q
N"'N
a
nnq 1
222 arqr
rarqa 2 2 für
2
a linKugel
rnc 2
2,1Kugel
a
"
Linien Fortschritt
N
Für q << r darf a auf x 1
projiziert werden
Mutation der Variablen x 2 bis x
n
Der bis auf x 1 mutierte
Nachkomme N‘ erleidet
den Rückschritt a
Eine geometrische Betrachtung für n >> 1
Projektion erlaubt wenn q << rWir drehen q um die x1-Achse so, dass q in der Bildschirmebene liegt
223
22 nxxxq
![Page 8: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/8.jpg)
Vergleich der theoretischen Ergebnisse am Kugelmodell
rn
rnr
n
882erf1
2
1) (18e
rnc 2
2,1) (1,
Die genauere Nachahmung der biologischen Evolution mit Nachkommen führt überraschend zu einer einfacheren Formel als die simple (1 + 1) -ES
![Page 9: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/9.jpg)
rnc 2
2,1Kugel
Bestimmung von
022dd
,1
rnc n
rc ,1opt
opt
Bestimmung von max
nrc 2
2,1max
Dimensionsloser Fortschritt
22,1
maxmax*
crn
nrc ,1opt
![Page 10: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/10.jpg)
Tabelle des maximalen Fortschritts 22,1
max*
c
2 0,15923 0,35814 0,52985 0,67626 0,8029
10 1,183920 1,743750 2,5292
100 3,14401000 5,2535
* max,1
parallel
![Page 11: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/11.jpg)
Tabelle des maximalen Fortschritts 22,1
max*
c
2 0,1592 0,07963 0,3581 0,11944 0,5298 0,13255 0,6762 0,13526 0,8029 0,1338
10 1,1839 0,118420 1,7437 0,087250 2,5292 0,0506
100 3,1440 0,03141000 5,2535 0,0053
* max,1 /* max,1
parallel seriell
0,1352 Maximum
![Page 12: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/12.jpg)
Optimale Erfolgswahrscheinlichkeit
8erf12
1 1,opt
cWe
2 0,1592 0,0796 0,3933 0,3581 0,1194 0,3414 0,5298 0,1325 0,3095 0,6762 0,1352 0,2866 0,8029 0,1338 0,269
10 1,1839 0,1184 0,22720 1,7437 0,0872 0,18150 2,5292 0,0506 0,135
100 3,1440 0,0314 0,1091000 5,2535 0,0053 0,053
* max,1 /* max,1 opt1,We
parallel seriell
0,1352
![Page 13: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/13.jpg)
(1 + 1) - ES versus (1, ) - ES
Vergleich der maximalen Fortschrittsgeschwindigkeiten am Kugelmodell bei seriellem Arbeiten
nr 202,0max)11( n
r 513,0seriellmax)5,1(
max)11(seriellmax)5,1( 67,0
![Page 14: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/14.jpg)
Das dimensionslose Fortschrittsgesetz
rnc 2
2,1Kugel
2,12 cr
n
2,1
2
22
,12,1 422
crn
crn
crn
mit
2
,12 crn
,12 crnund
folgt das zentrale Fortschrittsgesetz2
Dimensionslose Fortschrittsgeschwindigkeit
Dimensionslose Schrittweite
Text
![Page 15: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/15.jpg)
-5 -3 -1 310
0,2
0,1
0,3
1 01 01 01 010
2
Evolutions Fenster
Text
![Page 16: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/16.jpg)
Algorithmus der (1, ) – Evolutionsstrategie mit MSR
1g
1NE1N zxx gg
22NE2N zxx ggg
zxx gggNEN
eiltnormalvert)1,0(,, /21 nzzz n
ggNBE
1 xx )(),(),()( NN2N1NB minmax/ gggg QQQQ xxxx
ggNBE
1
1E1N gg
2E2N gg
ggEN
eiltnormalvert schlogarithmi
!
![Page 17: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/17.jpg)
1 2 31 2 1 3
w ( )
Logarithmische Normalverteilung
zew )(
z normalverteilt
Flächengleich
![Page 18: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/18.jpg)
Methoden zur Erzeugung der Variationen
eiltnormalvertze
Für gerade (z. B. = 10)
521 /11076
Für durch 3 teilbar (z. B. = 9)
321 1654 /1987
Für beliebig (im Programmiermodus)
IF RND <.5 THEN i = ELSE i = 1/
Det
erm
inis
ieru
ng
Text
![Page 19: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/19.jpg)
Determinisierte mutative Schrittweitenregelung am Kugelmodell
Computer-Demonstration
![Page 20: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/20.jpg)
MATLAB-Programm der (1 + 1) ES
v=100; d=1; xe=ones(v,1); qe=sum(xe.^2);
for g=1:1000 xn=xe+d*randn(v,1)/sqrt(v); qn=sum(xn.^2); if qn < qe qe=qn; xe=xn; d=d*1.3; else d=d/(1.3^0.25); end semilogy(g,qe,'b.') hold on; drawnow;end
Zur Erinnerung
![Page 21: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/21.jpg)
MATLAB-Programm der (1, ) ES
![Page 22: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/22.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
Variablenzahl, Nachkommenzahl,
Startschrittweite und
Variablen-werte des Start-
Elters
![Page 23: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/23.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000
end
Erzeugen der Generationenschleif
e
![Page 24: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/24.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20;
end
Initialisierung der Qualität im
Bestwert-Zwischenspeicher
auf nicht verschlechterbaren
Wert
![Page 25: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/25.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:kk
end
end
Generierung der Nachkommenschlei
fe
![Page 26: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/26.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:kk if rand < 0.5 dn=de*1.3; else dn=de/1.3; end
end
end
Deterministische Variation der
Mutationsschrittweite
![Page 27: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/27.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:kk if rand < 0.5 dn=de*1.3; else dn=de/1.3; end xn=xe+dn*randn(v,1)/sqrt(v);
end
end
Erzeugung eines mutierten Nachkommen
![Page 28: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/28.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:kk if rand < 0.5 dn=de*1.3; else dn=de/1.3; end xn=xe+dn*randn(v,1)/sqrt(v); qn=sum(xn.^2);
end
end
Bestimmung der Qualität
des mutierten Nachkommen
![Page 29: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/29.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:10 if rand < 0.5 dn=de*1.3; else dn=de/1.3; end xn=xe+dn*randn(v,1)/sqrt(v); qn=sum(xn.^2); if qn < qb qb=qn; db=dn; xb=xn; end end
end
Bei Q -Verbesserung Zwischen-
speicherung der Qualität,
Schritt-weite und Variablenwerte
![Page 30: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/30.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:kk if rand < 0.5 dn=de*1.3; else dn=de/1.3; end xn=xe+dn*randn(v,1)/sqrt(v); qn=sum(xn.^2); if qn < qb qb=qn; db=dn; xb=xn; end end qe=qb; de=db; xe=xb;
end
Nachkomme aus dem
Bestwert-Zwischenspeicher
wird zum Elter der nächsten
Generation
![Page 31: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/31.jpg)
MATLAB-Programm der (1, ) ES
v=100; kk=10; de=1; xe=ones(v,1);
for g=1:1000 qb=1e+20; for k=1:kk if rand < 0.5 dn=de*1.3; else dn=de/1.3; end xn=xe+dn*randn(v,1)/sqrt(v); qn=sum(xn.^2); if qn < qb qb=qn; db=dn; xb=xn; end end qe=qb; de=db; xe=xb; semilogy(kk*g,qe,'b.') hold on; drawnow;end
Darstellung der Qualität als
Funktion des seriellen
Aufwands Kinderzahl x
Generationen
![Page 32: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/32.jpg)
Erproben des Programms in MATLAB
Kopieren Sie das Programm der vorangegangenen Folie. Öffnen Sie MATLAB und klicken Sie in der Taskleiste auf „File/New/Script“. Fügen Sie das Programm ein und klicken Sie auf das Symbol „Save and Run“
Ändern Sie die Zahl der Kinder von 10 auf 5 [kk = 5] und die Zahl der Generationen von 1000 auf 2000 [g = 1 : 2000]. Ändern Sie die Kurvenfarbe von blau auf rot [semilogy(g,qe,′r.') ]. Sie werden mit der gleichen Zahl von Funktionsaufrufen g × kk = 10000 vielleicht etwas näher an das Optimum herankommen.
Wiederholen sie die Prozedur für:
[g = 1 : 3333], [kk = 3], [semilogy(g,qe,‚g.') ]
[g = 1 : 500], [kk = 20], [semilogy(g,qe,‚y.') ]
Das Ergebnis: Bei 5 Nachkommen [k = 1 : 5] sollten Sie bei der seriellen Arbeitsweise des Rechners dem Optimum (Nullpunkt) am nächsten kommen.
MATLAB R2010a
![Page 33: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/33.jpg)
Drei Fragen zu Beginn eines ES-Experiments
1. Frage nach dem Startpunkt ?
2. Frage nach der Startschrittweite ?
3. Frage nach der Versuchsdauer ?
?)1( Ex
?)1( E
? g
Abgeschlossener Variablenraum
![Page 34: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/34.jpg)
Abstand D zweier Zufallspunkte
im Quadrat im Hyperkubus
D sehr verschieden D nahezu konstant
Eine Zwischenbetrachtung
![Page 35: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/35.jpg)
Theorie: Abstand zweier Zufallspunkte X und Y im Hyperkubus
6dd1 2
0
2
1 02
2 lnxyyxl
Dl
ykkkk
n
k
l
x
l
l
l
D
X
Y
2222
211 )()()( nn yxyxyxD
![Page 36: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/36.jpg)
6/nlD
Simulation im 600-dimensionalen Hyperwürfel der Kantenlänge l = 20
D1=198,23 D2=201,2
5 D3=199,61 D4=209,6
2 D5=205,05
![Page 37: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/37.jpg)
Aus der Theorie „Abstand zweier Zufallspunkte und im Hyperkubus“ folgt
l
l
l
D
Wir wissen nicht wo das Ziel liegt, d. h. es kann an jeder Stelle mit gleicher Wahrscheinlichkeit liegen.
Start
Ziel
Wir nehmen eine isotrope Quadrik(= Kugelmodell) als Qualitätsfunktion im Suchraum des Hyperwürfels an
D = Start-Ziel -Entfernung
)((opt)Kugel Start Dr )()( (max)Kugel rr
Das Ziel kann dann als ein Zufallspunkt 1 aufgefasst werden.
Jeder Startpunkt ist gleich gut/schlecht. Wir starten deshalb auch an einem Zufallspunkt 2.
6/nl
![Page 38: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/38.jpg)
Kantenlänge des Hyperwürfels = l
Zufallsstart
6,1)1( lcE
61ln2
2,1
c
ng
Dr mit
nrc ,1opt
![Page 39: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/39.jpg)
Zur Ableitung der Generationsformel
gr
dd Es möge immer im Maximum laufen
nrcg
r2d
d 2,1 folgt
E
A
E
A
d121 2
,1g
g
r
r
gncrdr
)(2ln AEEA
2,1 ggn
crr
nllllr n 222
21 )()()(E
61ln2
2,1
c
ng
6/A nlr
Aus
Erlaubter relativer Fehler bezogen auf die Stelllänge
1)1()(
gg rr oder
Text
![Page 40: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/40.jpg)
Ende
www.bionik.tu-berlin.de
![Page 41: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/41.jpg)
In der Formel
ist die Fortschrittsgeschwindigkeit eine Funktion von der Variablenzahl n, dem Höhenlinien-Krümmungsradius r, der Mutationsstreuung und der Nachkommenzahl . Nur eine riesige Schar von Diagrammen könnte den Zusammenhang grafisch veranschaulichen.
In der dimensionslosen Form mit den universellen Parametern und ist der Zusammenhang in einem einzigen Diagramm darstellbar.
rnc 2
2,1Kugel
![Page 42: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/42.jpg)
Das Fortschrittsfenster der Evolutionsstrategie am Kugelmodell hat eine allge-meinen Erkenntniswert. Man könnte, wenn auch politisch verdreht, wie folgt argumentieren: Rechts vom Evolutionsfenster sitzen die Revolutionäre und links davon die Erzkonservativen. Bei den Revolutionären gibt es Rückschritt, bei den Konservativen kommt es zu Stagnation. Sich für die richtige Schrittweite zu entscheiden; das ist die Kunst, die für den Politiker, Manager und Ingenieur gleichermaßen wichtig ist.
![Page 43: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/43.jpg)
Die Verwendung von logarithmisch normalverteilten Zufallszahlen für die Schritt-weitenmutationen gewährleistet erstens, dass keine sinnlosen negativen Schritt-weiten entstehen können und dass zweitens multiplikative Symmetrie herrscht. Schrittweiten werden genauso häufig verdoppelt wie halbiert, genauso häufig verdreifacht wie gedrittelt usw.
Bei der Determinisierung der Schrittweitenmutationen wird diese multiplikative Symmetrie genau gleich auf die Nachkommen aufgeteilt.
![Page 44: Ingo Rechenberg](https://reader035.vdokument.com/reader035/viewer/2022070502/56814d70550346895dbac189/html5/thumbnails/44.jpg)
Wer mit dem Auto von Berlin Frohnau zum Kurfürstendamm in Berlins Innenstadt fahren möchte und ausrechnen möchte, wie lange die Fahrt dauert, mussa) wissen, wie viele Kilometer es bis zum Kudamm sind undb) wissen, wie schnell auf jedem Streckenabschnitt gefahren werden kann.
Genauso ist es auch bei der Vorausberechnung der Generationszahl für eine ES-Optimierung. Die Entfernung zum Ziel ist bekannt: Es ist die Distanz zweier Zufallspunkte in einem Hyper-würfel als Suchraum, wenn voraussetzungsgemäß der Startpunkt zufällig gewählt wird, und wenn das Ziel - weil unbekannt - als zweiter Zufallspunkt interpretiert wird.
Es werde angenommen, dass der Suchraum durch eine isotrope Quadrikfunktion (Kugelmodell) ausgefüllt wird. Funktioniert die mutative Schrittweitenregelung, dann ist die Fortschrittsge-schwindigkeit der ES an jeder Position während der Zielannäherung bekannt ( = max).
Daraus folgt: Es lässt sich eine Mindestgenerationszahl für die Lösung des Optimierungspro-blems ausrechnen.