Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder...

60
Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung „Evolutionsstrategie II“ Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten ES Weiterverwendung nur unter Angabe der Quelle gestattet

Transcript of Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder...

Page 1: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Ingo Rechenberg

PowerPoint-Folien zur 3. Vorlesung „Evolutionsstrategie II“

Anwendungsfelder geschachtelter Evolutionsstrategien -

Programmierung einer geschachtelten ES

Weiterverwendung nur unter Angabe der Quelle gestattet

Page 2: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

( ) - ES +,

Auf dem Weg zu einer evolutionsstrategischen Algebra

Beispiel: = 2, = 6, ´ = 4, = 8

= (2, 6)8 + (2, 6)8

+ (2, 6)8 + (2, 6)84 (2, 6)8

2 ,

Beste Population

Zweitbeste Population

Selektion der besten Populationen

,[ ]

, ´ = 2

+

Page 3: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

21,1

1,1

Zwei unterschiedliche Strategien

Beispiel für eine algebraische Operation in einer geschachtelten ES

Page 4: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES-]),/(,/[

Die Geschachtelte Evolutionsstrategie

Höchste Nachahmungsstufe der biologischen Evolution

' = Zahl der Eltern-Populationen

' = Zahl der Nachkommen-Populationen

= Zahl der Eltern-Individuen

= Zahl der Nachkommen-Individuen = Generationen der Isolation

'= Zahl der Populations-Generationen

' = Mischungszahl Populationen

= Mischungszahl Individuen

Page 5: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Biologische Entsprechung der Strategie-Schachtelung

| Familie Gattung { Art [ Varietät ( Individuum ) ] } |

Page 6: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),/(,/[

Strategievariablen Objektvariablen

Sprungvariablen Gleitvariablen

Qualität Q1 Qualität Q 2

Springen Klettern

Vergangenheit Gegenwart

Strategie-Evolution

Gemischt ganzzahlige Optimierung

Zwei-Ziele-Optimierung

Globale Optimierung

Ortho-Evolution

Anwendungsfelder für geschachtelte Evolutionsstrategien

Page 7: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),/(,/[

Strategievariablen Objektvariablen Strategie-Evolution

Anwendungsfelder für geschachtelte Evolutionsstrategien

Page 8: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

N

Angsthase

Hitzkopf

Kolumbus

Amundsen

Vier Kletterstrategien im Wettbewerb

ES-)10,(4,[ 2011

Page 9: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Algorithmus der (1, ) – Evolutionstrategie mit MSR

11NE1Ng zxx gg

22NE2N zxx ggg

zxx gg gNEN

eiltnormalvert)1,0(,, /21 nzzz n

ggNBE

1 xx )(),(),()( N2NNNB 1minmax/ gggg QQQQ xxxx

ggNBE

1

1E1N gg

2E2N gg

ggEN

5,1/1

5,1 :6für z.B.

654

321

Es ist problematisch anzunehmen, dass sich schon nach einer Generation die beste Fortschrittsgeschwindigkeit selektieren lässt.

Page 10: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Korrekte mutative Schrittweitenanpassung mit

einer geschachtelten Evolutionsstrategie

= 1,1 … 1,5

Notation auf linker Klammerseite bedeutet : Schrittweite wird von der äußeren Klammer in die innere Klammer übertragen

Page 11: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),(,[

12154

Neue Gründerpopulationen

Die geschachtelte Evolutionsstrategie

Page 12: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),/(,/[

Strategievariablen Objektvariablen

Sprungvariablen Gleitvariablen

Strategie-Evolution

Gemischt ganzzahlige Optimierung

Anwendungsfelder für geschachtelte Evolutionsstrategien

Page 13: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Gewicht Minimum

Gleitvariable !Sprungvariable !

y

x

Page 14: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),/(,/[

Strategievariablen Objektvariablen

Sprungvariablen Gleitvariablen

Qualität Q1 Qualität Q 2

Strategie-Evolution

Gemischt ganzzahlige Optimierung

Zwei-Ziele-Optimierung

Anwendungsfelder für geschachtelte Evolutionsstrategien

Page 15: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Der -Denker-klein

Eine 2-Ziele-Optimierung

Mintan AW

Der W-klein-A-groß-Denker

A

W

AW

)/1log()log()log(tan AW

MinStZa 3

2

AW

)/1log(3)log(2)StZalog( AW

Page 16: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),/(,/[

Strategievariablen Objektvariablen

Sprungvariablen Gleitvariablen

Qualität Q1 Qualität Q 2

Springen Klettern

Strategie-Evolution

Gemischt ganzzahlige Optimierung

Zwei-Ziele-Optimierung

Globale Optimierung

Anwendungsfelder für geschachtelte Evolutionsstrategien

Page 17: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

[1, 3 ( , ) ]-ES

Gipfelspringen und mit der geschachtelten Evolutionsstrategie

Gipfelklettern

Page 18: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

[1, 3 ( , ) ]-ES

Gipfelspringen und mit der geschachtelten Evolutionsstrategie

Gipfelklettern

Gründer

Populationen

Page 19: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

[1, 3 ( , ) ]-ES

Gipfelspringen und mit der geschachtelten Evolutionsstrategie

Gipfelklettern

Page 20: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

[1, 3 ( , ) ]-ES

Gipfelspringen und mit der geschachtelten Evolutionsstrategie

Gipfelklettern

Page 21: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

[1, 3 ( , ) ]-ES

Gipfelspringen und mit der geschachtelten Evolutionsstrategie

Gipfelklettern

Page 22: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

9

9

34

56

78

9

3 4 5 6 7 8

3 4 56

78

34 5 6 7

8

34

56

73

45

67

34

56 3

4 56

7

3 4 5 6 7 8

Für n >> 1 sind die weißen Einzugsgebiete der

Berge vernachlässigbar klein gegenüber dem

schwarzen Gebiet dazwischen !

Wir sind hier

Page 23: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Lückenwert L

L =ZwischenraumKugelraum

112

2)(

)()( nnn L

2732,0)2( L

69)100(1035,5 L„weiß“: Einzugsgebiete der Berge

„schwarz“: Zwischenräume

Page 24: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Evolutionsstrategische Optimierung eines

Freiträgers mit minimalem Gewicht

Page 25: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

ES]),/(,/[

Strategievariablen Objektvariablen

Sprungvariablen Gleitvariablen

Qualität Q1 Qualität Q 2

Springen Klettern

Vergangenheit Gegenwart

Strategie-Evolution

Gemischt ganzzahlige Optimierung

Zwei-Ziele-Optimierung

Globale Optimierung

Ortho-Evolution

Anwendungsfelder für geschachtelte Evolutionsstrategien

Page 26: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

( ) - ES +,

Geschachtelte Evolutionsstrategie

+,[ ]

Aktuelle PositionGründerposition

Ortho-Evolution !

Page 27: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

n

kkk dd

hbkhhRQ

1

21streu Min))(1()1(

2][

n

kkdnhQ

1vol Min 0 allefür ddk

Minvolstreuges QwQQ

bbh

1)( ( )d d2 1

h

h

hR

d0

d1

d2

q2

F

Strahl 2

k

= Brechungsindex

w = Gewichtsfaktor

Zwei-Ziele-Optimierung

Page 28: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

KomplexaugenKameraaugen

Einfache Lichtwahrnehmung

Vorstufen derKomplexaugen

Augen mitengem Loch

Becheraugen mit Pigment

Becheraugen mitreflektierendem Pigment

Super-positions-augen

Augen mitengem Loch

Pfeilschwanz-krebs

Zwischenformen

Appositions-augenNeurale

Superposition

Augen mitGlaskörper

Augen mitSpiegeln

Fitnesslandschaft der Augen-Evolution (nach M. Land)

Nautilus

Linsenaugeder Kopffüßer

FischaugenSpinnen

Tapetum-Bergrücken

RuderfußkrebseDetritus

mit Hornhaut ausgestatteteAugen der Landwirbeltiere

Page 29: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Das Wunder der

Koordinatentransformation

Page 30: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

D‘ARCY THOMSONs Transformationen

Polyprion

Scorpaena sp.Antigonia capros

Pseudopriacanthus altus

Page 31: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Koordinatentransformation nach Albrecht Dürer

Page 32: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Bauanweisung für Protein „Dunkle“ DNA

Rätsel der

sogenannten

Schrott-DNA

(junk DNA)

Für Koordinaten- Transformation ?

über 95%

Page 33: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

5554543532521515

5454443432421414

5354343332321313

5254243232221212

5154143132121111

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

Lineare Transformation: Polygenie und Polyphänie

n = 5 !

Pleiotropie

Ein Gen (x) steuert viele Merkmale (y)

Ein Merkmal (y) wird von vielen Genen (x) gesteuert

Page 34: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Schiefwinklige lineare Koordinaten-Transformationen

Page 35: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

5554543532521515

5454443432421414

5354343332321313

5254243232221212

5154143132121111

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

Zu viele Koeffizienten für Transformation eines orthogonalen Systems

Statt benötigen wir nur Koeffizienten2

1)( nn2n

2n

Koeffizienten

Page 36: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

5554543532521515

5454443432421414

5354343332321313

5254243232221212

5154143132121111

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

xaxaxaxaxay

Orthogonalisierungsverfahren

Matrizenrechnung

CMA-Methode

ES-Hybridverfahren

Covarianz-Matrix-Adaptation

Page 37: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmierung einer

geschachtelten Evolutionsstrategie

Page 38: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

[1, (1, ) ]-ES

Algorithmus:

zgNk

gE

gNk

gE

gNk

xx

gNb

gE

gNb

gE

xx

1

1

gNb

gE

gNb

gE

xx

1

1

k

zgNk

gE

gNk

gE

gNk

xx

k = 1, ... k = 1, ...

bgE

gNb )( xx

b

gE

gNb )(

gNkk

gE xx )(g

NkkgE )(

Farbe anstelle eines Index !

Page 39: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

Page 40: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

Variablenzahl, Generationszahl,

Nachkommenzahl und

Startwerte für Variablenwerte

und Schritt-weite des Start-

Elters

Page 41: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg

end

Erzeugen der Generationenschleif

e

Page 42: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20;

end

Initialisierung der Qualität im

Bestwert-Zwischenspeicher

auf nicht verschlechterbaren

Wert

Page 43: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk

end

end

Generierung der

Nachkommenschlei

fe

MATLAB-Programm der (1, ) ES

Page 44: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1);

end

end

Deterministische

Variation der Mutationsschrittweite

Page 45: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); xn=xe+dn*randn(v,1)/sqrt(v);

end

end

Erzeugung eines

mutierten Nachkommen

Page 46: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); xn=xe+dn*randn(v,1)/sqrt(v); qn=sum(xn.^2);

end

end

Bestimmung der Qualität

des mutierten Nachkommen

Page 47: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); 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 48: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); 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 49: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

MATLAB-Programm der (1, ) ES

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); 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(g,qe,'b.') hold on; drawnow;end

Darstellung der Qualität als

Funktion der Generationszahl

Page 50: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmverdopplung

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); 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(g,qe,'b.') hold on; drawnow;end

v=100;gg=1000; kk=10; xe=ones(v,1); de=1; aa=1.5;

for g=1:gg qb=1e+20; for k=1:kk dn=de*aa^(2*round(rand)-1); 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(g,qe,'b.') hold on; drawnow;end

Von der einfachen zur geschachtelten ES

Page 51: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmdifferenzierung

v=100;gg1=1000; kk1=10; xe1=ones(v,1); de1=1; aa1=1.5;

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+dn1*randn(v,1)/sqrt(v); qn1=sum(xn1.^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end qe1=qb1; de1=db1; xe1=xb1; semilogy(g1,qe1,'b.') hold on; drawnow;end

v=100;gg0=1000; kk0=10; xe0=ones(v,1); de0=1; aa0=1.5;

for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v); qn0=sum(xn0.^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0; semilogy(g0,qe0,'b.') hold on; drawnow;end

Page 52: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmschachtelung

for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v); qn0=sum(xn0.^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0; semilogy(g0,qe0,'b.') hold on; drawnow;end

v=100;

v=100;gg1=1000; kk1=10; xe1=ones(v,1); de1=1; aa1=1.5;

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+dn1*randn(v,1)/sqrt(v); qn1=sum(xn1.^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end qe1=qb1; de1=db1; xe1=xb1; semilogy(g1,qe1,'b.') hold on; drawnow;end

gg0=1000; kk0=10; xe0=ones(v,1); de0=1; aa0=1.5;

Page 53: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmschachtelung

for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v); qn0=sum(xn0.^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0; semilogy(g0,qe0,'b.') hold on; drawnow;end

v=100;gg1=1000; kk1=10; xe1=ones(v,1); de1=1; aa1=1.5;

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+dn1*randn(v,1)/sqrt(v);

qn1=sum(xn1.^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end qe1=qb1; de1=db1; xe1=xb1; semilogy(g1,qe1,'b.') hold on; drawnow;end

gg0=1000; kk0=10; xe0=ones(v,1); de0=1; aa0=1.5;

de0=dn1; xe0=xn1;

dn1=de0; xn1=xe0;

1.00

50 2

Page 54: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmschachtelung

for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v); qn0=sum(xn0.^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0;

end

v=100;gg1=1000; kk1=2; xe1=ones(v,1); de1=1; aa1=1.5;

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+0*randn(v,1)/sqrt(v);

qn1=sum(xn1.^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end qe1=qb1; de1=db1; xe1=xb1; semilogy(g1,qe1,'b.') hold on; drawnow;end

gg0=50; kk0=10; xe0=ones(v,1); de0=1; aa0=1.0;

de0=dn1; xe0=xn1;

dn1=de0; xn1=xe0;

MATLAB-Programm einer

geschachtelten ES

Page 55: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmschachtelung

for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v) qn0=sum(xn0.^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0; semilogy(g0,qe0,'b.') hold on; drawnow;end

v=100;gg1=1000; kk1=2; xe1=ones(v,1); de1=1; aa1=1.5;

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+0*randn(v,1)/sqrt(v);

qn1=sum(xn1.^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end qe1=qb1; de1=db1; semilogy(g1,qe1,'b.') hold on; drawnow;end

gg0=50; kk0=10; xe0=ones(v,1); de0=1; aa0=1.0;

de0=dn1; xe0=xn1;

dn1=de0; xn1=xe0;

MATLAB-Programm einer

geschachtelten Ortho-ESxe1=xb1;

oo=xb1-xe1;

+oo*randn/sqrt(v);

;

MATLAB-Programm einer

geschachtelten ES

oo=ones(v,1)

Page 56: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Programmschachtelung

for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v) qn0=sum(xn0.^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0; semilogy(g0,qe0,'b.') hold on; drawnow;end

v=100;gg1=1000; kk1=2; xe1=ones(v,1); de1=1; aa1=1.5;

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+0*randn(v,1)/sqrt(v);

qn1=sum(xn1.^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end qe1=qb1; de1=db1; semilogy(g1,qe1,'b.') hold on; drawnow;end

gg0=50; kk0=10; xe0=ones(v,1); de0=1; aa0=1.0;

de0=dn1; xe0=xn1;

dn1=de0; xn1=xe0;

MATLAB-Programm einer

geschachtelten Ortho-ESxe1=xb1;

oo=xb1-xe1;

+oo*randn/sqrt(v);

;

oo=ones(v,1);

Page 57: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Zum Kopieren (Qualitätsfunktion = „Zigarre“ )

v=100;gg1=1000; kk1=2; xe1=ones(v,1); de1=1; aa1=1.5;gg0=50; kk0=10; xe0=ones(v,1); de0=1; aa0=1.0; oo=ones(v,1);

for g1=1:gg1 qb1=1e+20; for k1=1:kk1 dn1=de1*aa1^(2*round(rand)-1); xn1=xe1+0*randn(v,1)/sqrt(v); de0=dn1; xe0=xn1; for g0=1:gg0 qb0=1e+20; for k0=1:kk0 dn0=de0*aa0^(2*round(rand)-1); xn0=xe0+dn0*randn(v,1)/sqrt(v)+oo*randn/sqrt(v); qn0=xn0(1)^2+1000*sum(xn0(2:v).^2); if qn0 < qb0 qb0=qn0; db0=dn0; xb0=xn0; end end qe0=qb0; de0=db0; xe0=xb0; end dn1=de0; xn1=xe0; qn1=xn1(1)^2+1000*sum(xn1(2:v).^2); if qn1 < qb1 qb1=qn1; db1=dn1; xb1=xn1; end end

qe1=qb1; de1=db1; oo=xb1-xe1; xe1=xb1; semilogy(g1,qe1,'b.') hold on; drawnow;end

MATLAB-Programm einer

geschachtelten Ortho-ES

Page 58: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

zgNk

gE

gNk

gE

gNk

gE

gNk

xx

zgNk

gE

gNk

xx

gNb

gE

gNb

gE

gNb

gE

xx

1

1

1

gNb

gE xx 1

gNkk

gE xx )(

bgE

gNb )(

xx

k

,1k,1k

Modifizierter Algorithmus

einer geschachtelten ES

Schrittweite für das Setzen von Gründerpopulationen

Schrittweite für das lokale Bergklettern zum Optimum

Page 59: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Mathematische Formulierung einer (1, ) - Ortho-ES

in ungeschachtelter Form

gE

gNk

zxx gNk

gE

gNk

zmgE

gE )( xx

Variation k = 1, 2, … Nachkommen

Selektion ( B = Bester Nachkomme)gNB

gE 1

gNB

gE xx 1

Page 60: Ingo Rechenberg PowerPoint-Folien zur 3. Vorlesung Evolutionsstrategie II Anwendungsfelder geschachtelter Evolutionsstrategien - Programmierung einer geschachtelten.

Ende

www.bionik.tu-berlin.de