Laufzeitanalyse Seminar Evolutionäre Algorithmen

Werbung
Laufzeitanalyse
Seminar Evolutionäre Algorithmen
Prof. Dr. H. Kleine Büning
Oliver Kramer
Chuan-Kang Ting
WS 04/05
Ausarbeitung
von
Axel Hollmann
Inhaltsverzeichnis
1 Einleitung
2
2 Laufzeitanalyse für Evolutionäre Algorithmen
3
3 Fitnessbasierte Partitionen
3.1 Laufzeitanalyse von OneMax . . . . . . . . . . . . . . . . . . . .
3.2 Laufzeitanalyse von Jumpk . . . . . . . . . . . . . . . . . . . . .
4
6
7
4 Sortieren mit Evolutionären Algorithmen
4.1 Mutation im (1+1) EA . . . . . . . . .
4.2 Vorsortierung einer Folge . . . . . . . .
4.3 Eine untere Schranke . . . . . . . . . .
4.4 Eine obere Schranke . . . . . . . . . . .
4.5 Weitere Ergebnisse . . . . . . . . . . . .
Literaturverzeichnis
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
10
11
12
13
14
15
1
1
Einleitung
Diese Seminararbeit beschäftigt sich mit der Laufzeitanalyse für Evolutionäre Algorithmen. Sie ist wie folgt gegliedert:
In Kapitel 2 erfolgt eine entsprechende Einführung. Anschließend wird in Kapitel
3 die Methode der fitnessbasierten Partitionen vorgestellt. Beispielhaft werden
anschließend in den Abschnitten 3.1 und 3.2 die Laufzeiten für die zwei Fitnessfunktionen OneMax und Jumpk untersucht. Kapitel 4 widmet sich der Laufzeitanalyse für das Sortieren von Zahlen mit Hilfe von Evolutionären Algorithmen.
Diese Seminararbeit basiert im Wesentlichen auf einem Vorlesungsskript der Universität Dortmund [1] und einer Veröffentlichung von Jens Scharnow, Karsten
Tinnefeld und Ingo Wegener [2].
2
2
Laufzeitanalyse für Evolutionäre Algorithmen
Die Laufzeitanalysen, die in dieser Seminararbeit vorgenommen werden, beschränken
sich auf den einfachen (1+1) EA mit Mutationswahrscheinlichkeit pm = n1 . Nachfolgend ist er im Pseudocode aufgeführt:
1. Wähle x ∈ Bn gleichverteilt zufällig
2. Erzeuge y ∈ Bn durch Standardbitmutation auf x
3. falls f (y) > f (x), ersetze x durch y
4. weiter bei Schritt 2
Es wird nicht nur dieser vergleichsweise einfache Algorithmus betrachtet, sondern
auch mit vergleichweise einfachen Zielfunktionen gearbeitet. Im Allgemeinen ist
es außerdem üblich, dass bei der Laufzeitanalyse Evolutionärer Algorithmen nur
die Anzahl der Aufrufe der Fitnessfunktion gezählt werden.
Bei der Laufzeitanalyse eines Evolutionären Algorithms A (hier: (1+1) EA) mit
Fitnessfunktion f wird die Anzahl T der Funktionsauswertungen, bis ein x ∈ Bn
mit f (x) = max{f (y)|y ∈ Bn } gefunden wurde, analysiert. Dies führt zum Begriff der erwarteten Optimierzeit E(TA,f ).
3
3
Fitnessbasierte Partitionen
Die Laufzeitanalysen in diesem und dem folgenden Kapitel erfolgen im Wesentlichen mit Hilfe der Methode der fitnessbasierten Partitionen. Diese Methode wird
dazu benutzt, obere Schranken für die erwartete Optimierzeit E(TA,f ) für den
(1+1) EA zu berechnen.
Die grundsätzliche Idee der fitnessbasierten Partitionen ist die Aufteilung aller
Individuen x ∈ Bn bzw. des Suchraums in disjunkte Mengen L0 , ..., Lk . Zuordnungskriterium für die Zugehörigkeit eines Individuums x ist seine Fitness f(x).
Es sei f : Bn 7→ R eine Fitnessfunktion. Die Mengen L0 , ..., Lk ⊆ Bn seien
k
S
Li = Bn . Die Mengen L0 , ..., Lk werden fitnessbasierte Partition
disjunkt mit
i=0
genannt, wenn
1. ∀i, j ∈ {0, ..., k}∀x ∈ Li , y ∈ Lj : (i < j ⇒ f (x) < f (y)) und
2. Lk = {x ∈ Bn |f (x) = max{f (y)|y ∈ Bn }} gilt.
Die erste Bedingung fordert, dass jeweils für zwei Individuen x ∈ Li und y ∈ Lj
gilt, dass das Individuum mit dem höheren Index eine bessere Fitness besitzt, d.h.
wenn j > i ist, so gilt f (y) > f (x). Es wird jedoch nicht gefordert, dass Elemente innerhalb einer Menge die gleiche Fitness besitzen. Die zweite Bedingung
besagt, dass sich in der Menge Lk alle Individuen mit der maximalen Fitness
befinden.
Bei der Mutation im (1+1) EA wird Plus-Selektion verwendet. Daraus folgt, dass
die Population sich nur aufwärts zu Partitionen mit höherem Index bzw. höherer Fitness bewegen kann. Es wird nun untersucht, wie lange es dauert, bis die
Population die Menge Lk erreicht. Im ungünstigten Fall führt die Initialisierung
der Population, die im (1+1) EA nur aus einem einzigen Individuum x besteht,
dazu, dass x in L0 liegt und durch die Mengen L0 , L1 , ..., Lk−1 , Lk läuft, ohne
dabei Mengen zu überspringen.
Es stellt sich die Frage, wieviele Mutationen im Durchschnitt benötigt werden,
bis ein Individuum x ∈ Li die Menge Li verlässt. Eine obere Schranke stellt dann
nämlich die Summation über die erwartete Anzahl aller Mutationsschritte für die
4
Mengen L0 , ..., Lk dar. Diese Überlegungen werden nun im Folgenden präzisiert:
Die Wahrscheinlichkeit sx,y um von einem x ∈ Bn zu einem y ∈ Bn in genau
einem Mutationsschritt zu kommen ist definiert durch:
sx,y := (pm )H(x,y) (1 − pm )n−H(x,y) = ( n1 )H(x,y) (1 − n1 )n−H(x,y)
Der Hamming-Abstand H(x, y) :=
n
P
|xi − yi | zählt alle Bits von 2 Individuen
i=1
x und y, in denen sie sich unterscheiden. Um also von x zu y in einem Schritt
zu mutieren, müssen die H(x,y) Bits, in denen sich x und y unterscheiden mutieren (Wahrscheinlichkeit (pm )H(x,y) ) und die restlichen n-H(x,y) Bits, die schon
identisch sind, dürfen sich nicht ändern (Wahrscheinlichkeit (1 − pm )H(x,y) ). Als
nächstes stellt sich die Frage, wie hoch die Wahrscheinlichkeit für ein x ∈ Li ist,
in einem Schritt zu einem y ∈ Lj mit j > i zu mutieren. Dieses führt zum Begriff
der Verlasswahrscheinlichkeit si für eine Menge Li mit i ∈ {0, , 1, 2, ..., k − 1}:
si := min
k
P
P
x∈Li j=i+1 y∈L
j
(pm )H(x,y) (1 − pm )n−H(x,y)
Das Produkt (pm )H(x,y) (1−pm )n−H(x,y) wurde bereits erklärt. Die Doppelsumme
hat folgenden Zweck: Für ein festes x ∈ Li werden alle möglichen Mutationen
betrachtet, die in die Mengen Li+1 , ..., Lk führen. Es gibt somit für x maximal
|Li+1 | + ... + |Lk | Möglichkeiten zu einem y mit höherer Fitness zu mutieren.
Aus der Menge Li wird nun das Element ausgewählt, dessen summierte Wahrscheinlichkeit am kleinsten ist. Somit stellt die Verlasswahrscheinlichkeit si eine
untere Schranke dar, die Menge Li mit einer Mutation zu verlassen. Die erwartete Anzahl der Mutationen bis Erfolg eintritt beträgt somit s1i .
Die Summation über s1i für alle i ∈ {0, .., k − 1} stellt nun eine obere Schranke
für die erwartete Optimierzeit für den (1+1) EA mit Fitnessfunktion f dar:
E(T(1+1)EA,f ) ≤
k−1
P
i=0
s−1
i
Eine Maximierung in der Definition der Verlasswahrscheinlichkeit statt Minimierung würde zu einer unteren Schranke führen, die aber in der Regel nur zu schwa-
5
chen Ergebnissen führt.
Im Folgenden wird nun untersucht, wie schnell der (1+1) EA die Fitnessfunktionen OneMax und Jumpk optimiert.
3.1
Laufzeitanalyse von OneMax
Als erstes wird die einfache Fitnessfunktion OneMax untersucht. Sie ist definiert
durch:
OneMax(x) :=
n
P
xi
i=1
Es werden also die 1-Bits im Individuum x gezählt. Das Optimum ist natürlich
1n . Die Abschätzung der Laufzeit nach oben erfolgt mit Hilfe der fitnessbasierten
Partitionen. Die Partition Li ist dabei wie folgt definiert:
Li := {x ∈ Bn |OneM ax(x) = i} (∀i ∈ {0, .., n} )
In der Partition Li befinden sich also alle Individuen, die die gleiche Anzahl von
1-Bits haben, d.h. i 1-Bits und n-i 0-Bits. Insgesamt gibt es n+1 viele Partitionen.
Um die Fitness eines Indiviuums x ∈ Li zu erhöhen, ist es notwendig, dass 0Bits zu 1-Bits mutieren. Für eine exakte Analyse der Verlasswahrscheinlichkeiten
n−i
n−i
0-Bits
,
...,
,
müssten in einer Partition Li die Mutationen von n−i
n−i
2
1
untersucht werden. Damit würde sich für jede Partition eine unterschiedliche
Verlasswahrscheinlichkeit ergeben.
Für die Partitionen L0 , ..., Ln−1 gilt, dass es mindestens ein 0-Bit gibt. Für einen
Wechsel von x ∈ Li zu y ∈ Lj mit j > i genügt daher, wenn genau ein 0-Bit zu
einem 1-Bit mutiert wird. Es ergibt sich für alle Partitionen L0 , ..., Ln−1 folgende
1
(1 − n1 )n−1
Verlasswahrscheinlichkeit: si = n−i
1 n
n
P
1
.
Die
Harmonische
Reihe
Mit (1 − n1 )n < 1e < (1 − n1 )n−1 folgt si ≥ n−i
en
i
i=1
lässt sich mit (ln(n) + 1) abschätzen. Für die erwartete Optimierzeit gilt also:
6
E(T(1+1)EA,OneM ax ) ≤
n−1
P
en
n−i
i=0
n−1
P
1
n−i
=
en
1
i
<
en(ln(n) + 1) = O(n log n)
=
en
i=0
n
P
i=1
3.2
Laufzeitanalyse von Jumpk
Im Folgenden soll untersucht werden, wie schnell die Fitnessfunktion Jumpk (x)
optimiert werden kann. Sie ist wie folgt definiert:

n
P

xi
 n−
i=1
Jumpk (x) :=
n
P

 k+
xi
f alls n − k <
n
P
xi < n
i=1
sonst
i=1
In Abbildung 1 ist der Graph der Funktion zu sehen.
n
P
xi ≤ n − k ist bzw. n entpricht, so verhält sich Jumpk (x) im WesentFalls
i=1
lichen wie die Funktion OneMax - es wird lediglich die Konstante k ∈ {1, ..., n}
addiert. Das einzige globale Optimum ist auch hier 1n . Für k = 0 sind die beiden
Funktionen sogar identisch.
n
n
P
P
xi im Interval (n − k, n) liegt, so ist der Funktionswert n − xi .
Falls jedoch
i=1
i=1
Der Parameter k dient dazu, die Größe dieses Problembereichs einzustellen. Die
lokalen Hinweise führen in diesem Interval vom globalen Optimum fort, da der
Funktionswert steigt, wenn 1-Bits in 0-Bits mutiert werden.
Eine Laufzeitanalyse der Funktion Jumpk ist daher besonders interessant, um zu
sehen, wie gut der (1+1) EA mit der Optimierung der Funktion in Abhängigkeit
vom Parameter k klar kommt.
Die Analyse erfolgt auch hier wieder mit der Methode der fitnessbasierten Partitionen. Die Partitionierung sieht wie folgt aus:
• Li := {x ∈ Bn |Jumpk (x) = i} (∀i ∈ {1, .., n} )
• Ln+1 := {1n }
7
Jump k (x)
n+k
n
k
n−k
n
xi
Abbildung 1: Graph der Funktion Jumpk
Jede Partition enthält also alle Individuen, die die gleiche Fitness besitzen.
Zur Analyse der Verlasswahrscheinlichkeiten werden im Folgenden 3 Fälle unterschieden. Die Variable i entspricht dabei dem Funktionswert von Jumpk .
Fall 1: 1 ≤ i < k
P
Für alle Individuen x ∈ Li gilt: n − k <
xi < n. Die Fitness wird verbessert,
indem 1-Bits zu 0-Bits mutiert werden. Zur Vereinfachung wird nun angenommen, dass nur genau ein 1-Bit zu einem 0-Bit mutiert wird. In jeder Partition
viele 1-Bits. Die Wahrscheinlichkeit genau ein Bit zu
L1 , ..., Lk−1 gibt es n−i
1
1 n−1 1
mutieren, ist (1 − n ) ( n ). Für die Verlasswahrscheinlichkeit ergibt sich somit:
si = (n − i)(1 − n1 )n−1 ( n1 )1
Der Term (1 − n1 )n−1 kann wieder mit 1e abgeschätzt werden:
en
, s−1
si ≥ n−i
i ≤ n−i
en
8
Fall 2: k ≤ i < n
P
Hier gilt für alle Individuen x ∈ Li : k ≤
xi < n − k. Indem 0-Bits zu 1-Bits
mutiert werden, wird die Fitness verbessert. Auch hier wird vereinfachend angenommen, dass nur genau eines der (n+k-i) vielen 0-Bits zu einem 1-Bit mutiert.
Es ergibt sich folgende Verlasswahrscheinlichkeit:
si = (n + k − i)(1 − n1 )n−1 ( n1 )1
Mit der Abschätzung 1e für (1 − n1 )n−1 ergibt sich:
en
si ≥ n+k−i
, s−1
i ≤ n+k−i
en
Fall 3: i = n
P
Für die Elemente in der Partition Ln gilt:
xi = n − k.
Um von Ln zu Ln+1 = {1n } zu kommen, müssen k 0-Bits zu 1-Bits mutieren.
Es ergibt sich also folgende Verlasswahrscheinlichkeit:
k
sn = (1 − n1 )n−k ( n1 )k ≥ en1k und s−1
n ≤ en
Die erwartete Optimierzeit für die 3 verschiedenen Verlasswahrscheinlichkeiten
ergibt:
E(T(1+1)EA,Jumpk ) ≤
=
=
k−1
P
en
n−i
i=1
k−1
P
en
en
1
n−i
i=1
n−1
P
i=n−k+1
=
=
+
+
1
i
+
n−1
P
en
n+k−i
i=k
n−1
P 1
en
n+k−i
i=k
n
P
1
en
i
i=k+1
O(n log n)
+ O(n log n)
k
O(n + n log n)
+ enk
+ enk
+ enk
+ O(nk )
Auch hier wurde die Harmonische Reihe mit ln(n) + 1 nach oben abgeschätzt
bzw. in der O-Notation durch log n ersetzt, da Logarithmen zu verschiedenen
Basen nur um eine Konstante voneinander entfernt sind.
Am Ergebnis ist gut zu sehen, dass der Parameter k schon ab einem Wert von 2
die Gesamtlaufzeit dominiert.
9
4
Sortieren mit Evolutionären Algorithmen
Innerhalb der Informatik gehört das Sortieren zu den Gebieten, die besonders gut
erforscht sind. Trotzdem stellt sich die Frage, wie gut bzw. wie schnell mit Hilfe
von Evolutionären Algorithmen sortiert werden kann. Besonders der Vergleich
zu spezialisierten Sortieralgorithmen wie dem Quicksort-Algorithmus dürfte interessant sein. Es ist aber kaum zu erwarten, dass ein Black-Box-Algorithmus
im Allgemeinen bzw. ein Evolutionärer Algorithmus entsprechende Laufzeiten erreicht.
Wie schon im vorhergegangenen Kapitel wird die Laufzeit nur mit der Anzahl der
Aufrufe der Fitnessfunktionen bemessen. Der verwendete Suchraum ist:
Sn = {π|π ist Permutation über {1, ..., n}}
Zur Vereinfachung der Notation wird also angenommen, dass die Zahlen 1,...,n
zu sortieren sind. Dieses spezielle Wissen darf aber nicht beim Sortieren ausgenutzt werden. Für die verwendeten Fitnessfunktion gilt: f : Sn 7→ N0
Auch in diesem Kapitel wird der (1+1) EA benutzt. Wegens des geänderten
Suchraums wird allerdings ein anderer Mutationsoperator benötigt. Die benutzten Mutationsoperatoren Austausch und Sprung werden daher im folgenden Abschnitt näher erläutert.
4.1
Mutation im (1+1) EA
In dem verwendeten (1+1) EA zum Sortieren werden folgende Mutationsoperatoren verwendet:
Austausch:
• Wähle i, j ∈ {1, ..., n} mit i 6= j zufällig und gleichverteilt
• Vertausche das i-te und das j-te Element im Individuum
2
5
4
i
1
6
3
2
j
10
5
3
1
6
4
Sprung:
• Wähle i, j ∈ {1, ..., n} mit i 6= j zufällig und gleichverteilt
• Setze das i-te Element auf Position j und verschiebe entsprechend
2
5
4
i
1
6
3
2
5
1
6
3
4
j
Die Kombination der Mutationsoperatoren Austausch und Sprung erfolgt nach
folgendem Schema:
• Wähle ein k ∈ N0 , Poisson-verteilt mit E(X) = λ = 1
• Führe k + 1 Austäusche/Sprünge mit jeweils Wahrscheinlichkeit
1
2
durch
Um zu vemeiden, dass k = 0 Mutationen ausgeführt werden, werden k + 1 viele
k
λ=1
1
ausgeführt. Es gilt: P (X = k) = λk! e−λ ⇒ P (X = k) = k!e
Es ergeben sich beispielhaft für k ∈ {0, 1, 2, 3} folgende Wahrscheinlichkeiten:
k Wahrscheinlichkeit
1
≈ 0.368
0
e
1
≈ 0.368
1
e
1
2
≈ 0.18
2e
1
3
≈ 0.06
6e
4.2
# Mutationen
1
2
3
4
Vorsortierung einer Folge
Die Bewertung der Fitness eines Individuums erfolgt über die Messung seiner
Vorsortierung. Dazu sind nachfolgend drei verschiedene Fitnessfunktionen aufgeführt:
• INV(π): Anzahl der Paare, so dass π(i) > π(j) mit i < j gilt
• HAM(π): Anzahl der Elemente, die am falschen Platz stehen, d.h. π(i) 6= i
• LAS(π): Grösse der längsten sortierten Teilfolge
11
Die folgende Tabelle gibt an, wie lange das Erstellen bzw. Aktualisieren mit geeigneten Datenstrukturen für die einzelnen Fitnessfunktionen dauert, in welchem
Intervall die möglichen Funktionswerte liegen und ob die entsprechende Fitnessfunktion zu minimieren bzw. maximieren ist.
Erstellen
INV
O(n2 )
HAM O(n)
LAS O(n log n)
4.3
Update
O(|i − j|)
O(1)
O(n log n)
Intervall
0 ≤ IN V ≤ n2
0 ≤ HAM ≤ n
1 ≤ LAS ≤ n
Min/Max
min
min
max
Eine untere Schranke
Im folgenden wird eine untere Schranke für die drei Fitnessfunktionen INV, HAM
und LAS gezeigt. Dazu wird lediglich der letzte Schritt betrachtet, bevor das Optimum erreicht wird: Es gibt nur noch ein Paar von Zahlen in der Permutation
π, das zu drehen ist, damit die Folge sortiert ist:
Austausch(i,j) = Austausch(j,i):
1
1
+ n(n−1)
=
Wahrscheinlichkeit: n(n−1)
Sprung(i, i+1) = Sprung(i+1,i):
Wahrscheinlichkeit: 1 (n−1)
( 1 +
n(n−1) n(n−1)
2
2
n(n−1)
1
)
n(n−1)
=
4
n2 (n−1)
Der Faktor 1 (n−1)
hat folgenden Sinn: Es gibt 12 n(n − 1) viele Folgen mit
n(n−1)
2
IN V (π) = 1, d.h. bei denen nur noch ein Zahlenpaar verdreht ist. Aber nur bei
(n-1) vielen dieser Permutationen sind die Zahlen benachbart, so dass ein Aufruf
der Funktion Sprung die Folge in die sortierte Folge verwandelt.
Insgesamt ergibt sich die Wahrscheinlichkeit:
2
2
1
2 n(n−1)
(n−1)
Es folgt: E(T(1+1)EA,f ) = Ω( n n+2
) = Ω(n2 )
12
+
1
4
2 n2 (n−1)
=
n+2
n2 (n−1)
4.4
Eine obere Schranke
In diesem Abschnitt wird mit Hilfe der Methode der fitnessbasierten Partitionen
eine obere Schranke für die Fitnessfunktion INV hergeleitet. Die Partition Li sei
wie folgt definiert:
Li := {π|IN V (π) = i} (∀i ∈ {0, ..,
n
2
})
Anzumerken ist, dass diesmal die Partition L0 das Individuum mit der besten
Fitness enthält - die sortierte Folge.
Es sei π die aktuelle Permutation und 1 ≤ i < j ≤ n und π(i) > π(j) (s.a.
Abbildung 2).
1111111111
0000000000
0000000000
1111111111
1
i
i+1
j−1
j
n
Abbildung 2: Permutation π
Es soll zunächst betrachtet werden, wie sich ein Mutationschritt auf die Fitness auswirkt. Dazu werden die Elemente respektive die Anzahl der Elemente im
Intervall [i+1,j-1] betrachtet:
• a := |{k|k < π(j), k ∈ {1, ..., n}}|
• b := |{k|π(j) < k < π(i), k ∈ {1, ..., n}}|
• c := |{k|k > π(i), k ∈ {1, ..., n}}|
Es sind a, b, c ∈ N0 und es gilt a + b + c = j − i − 1. Klar ist, dass die Elemente
im Intervall [1, i) und (j, n] nicht zu einer Änderung der Fitness beitragen.
Die Mutationen Austausch(i,j) und Austausch(j,i) ändern die Fitness um 2b+1,
d.h. also mindestens um 1. Die Wahrscheinlichkeit errechnet sich wie folgt:
1
1
+ n(n−1)
)
( n(n−1)
Der Mutationsoperator Sprung(i,j) ändert die Fitness um a+b-c+1. Sprung(j,i)
hingegen führt zu -a+b+c+1, d.h. dass zumindest einer der Sprünge die Fitness
1
verbessert. Die Wahrscheinlichkeit beträgt n(n−1)
.
13
Es ergibt sich die folgende Verlasswahrscheinlichkeit für die Partition Li :
2
si = IN V (π) 1e ( 21 n(n−1)
+
1
1
)
2 n(n−1)
3
= IN V (π) 1e 21 n(n−1)
2 n(n−1)
⇒ s−1
i = 3 e IN V (π)
Innerhalb der Verlasswahrscheinlichkeit si sind die Wahrscheinlichkeiten für die
Mutationsoperatoren Sprung und Austausch mit 21 gewichtet. Wenn genau ein
Mutationsschritt durchgeführt wird, ergibt sich der Faktor bzw. die Wahrscheinlichkeit 1e . Zudem gibt es IN V (π) viele mögliche Mutationen, die die Fitness
verbessern können. Die erwartete Optimierzeit berechnet sich wie folgt:
E(T(1+1)EA,IN V ) ≤
n
(P
2)
2
i=1
=
=
3
e(n2 − n) 1i
2
e(n2
3
− n)
n
(P
2)
1
i=1
i
O(n2 log n)
Die Harmonische Reihe lässt sich auch hier wieder mit ln(n2 ) = 2 ln(n) bzw.
O(log n) nach oben abschätzen.
4.5
Weitere Ergebnisse
Abschließend folgen noch einige Ergebnisse für die Fitnessfunktionen HAM und
LAS. Beweise dazu finden sich in der verwendeten Literatur.
• E(T(1+1)EA,HAM ) = O(n2 log n)
• E(T(1+1)EA,LAS ) = O(n2 log n)
• E(T(1+1)EA,LAS ) = Ω(n2 log n) ⇒ E(T(1+1)EA,LAS ) = Θ(n2 log n)
• falls nur Vertauschungen, aber keine Sprünge durchgeführt werden:
E(T(1+1)EA,HAM ) = Θ(n2 log n)
14
Literatur
[1] Thomas Jansen, Spezialvorlesung Evolutionäre Algorithmen, Universität
Dortmund, Wintersemester 2004/2005.
[2] Jens Scharnow, Karsten Tinnefeld, Ingo Wegener, The Analysis of Evolutionary Algorithms on Sorting and Shortest Paths Problems, Journal of
Mathematical Modelling and Algorithms, 3(4), S. 349-366, 2004
15
Herunterladen