You are on page 1of 12

1 Lösung nichtlinearer Gleichungen

1.1 Einführung
Bemerkung 1.1 1. Geschlossene Lösung
a) Lineare Gleichung mit einer Variablen lassen sich (falls eine Lösung existiert) immer
nach der Variablen auflösen, beispielsweise:

3(2x − 8) = 4 − (7 − 3x) ⇒ x=7

b) Nichtlineare Gleichungen können (falls eine Lösung existiert) immer dann nach der
Variablen aufgelöst werden, wenn diese Variable nur einmal vorkommt, z. B.:
√ ln 3
4x = 3 ⇒ x=
ln 2

c) Nichtlineare Gleichungen mit einer mehrfach auftretenden Variablen können nur in


Sonderfällen nach der Variablen aufgelöst werden, z. B.:
p
ln(6 + x) + ln(−x) = 2 ⇒ x1,2 = −3 ± 9 − e 2 .

d) Für diese Fälle gibt es in Mathcad den symbolischen Operator auflösen.


2. Im Allgemeinen sind nichtlineare Gleichungen nicht geschlossen lösbar (nach der gesuch-
ten Variablen auflösbar). Es sind daher Verfahren gesucht, mit denen diese Gleichungen
(wenigstens näherungsweise) gelöst werden können.
a) Eine Gleichung kann immer in die Formen
• x = ϕ(x) (Fixpunktaufgabe) oder
• f (x) = 0 (Nullstellenaufgabe)
überführt werden.
b) Das Lösungsprinzip heißt Iteration, dabei wird eine Folge {xk } (k = 0, 1, 2, . . .)
konstruiert, die gegen die gesuchte Lösung x? konvergiert.
c) Zur Bildung der Folge {xk } braucht man
• eine geeignete erste Näherung (Startwert) x0 und
• eine geeignete (rekursive) Bildungsvorschrift xk+1 = ϕ(xk ).
d) Es gibt verschiedene theoretische Ansätze zur Bildung der Iterationsfolge {xk }.
e) In Mathcad gibt es dafür z. B. die Funktion wurzel.
3. Die Bildung einer unendlichen Folge {xk } muss verhindert werden, man braucht bei Ite-
rationsverfahren also immer ein Abbruchkriterium, nach dem die Berechnung der Folgen-
glieder beendet wird.
Häufig wird für die Differenz zweier aufeinanderfolgender Näherungswerte eine obere
Schranke vorgegeben. So soll z. B.

|xk+1 − xk | < ε

sein, wobei ε eine kleine Zahl, z. B. 10−5 ist.


Wenn diese Schranke unterschritten wird, wird die Iteration abgebrochen und der letzte
Wert als Näherungslösung angesehen.
Mathcad nutzt für die Funktion wurzel die Systemvariable T OL als Abbruchschranke.
Dafür ist von Seiten des Programms der Wert 0.001 voreingestellt, der aber vom Anwender
verändert werden kann.
Eine andere oft benutzte Abbruchbedingung ist die Vorgabe der maximalen Anzahl der
Iterationsschritte.

1
1.2 Fixpunktiteration oder Allgemeines Iterationsverfahren
Bei der Fixpunktiteration oder dem Allgemeinen Iterationsverfahren wird die Gleichung in fol-
genden Schritten gelöst:
1. Die Gleichung wird in eine Fixpunktform x = ϕ(x) gebracht.
Im Allgemeinen kann man verschiedene Fixpunktformen finden, die sich unterschiedlich
gut zur Lösung des Problems eignen.
2. Man verschafft sich eine Startnäherung x0 für die Lösung der Gleichung. Dies kann auf
verschiedenen Wegen erfolgen:
• Grafisch durch ein Bild der Funktion aus der Nullstellenaufgabe in einen (technisch)
sinnvollen Intervall.
• Grafisch durch eine Zerlegung der Gleichung in zwei leicht skizzierbare Funktionen
f1 (x) = f2 (x). Die Schnittstellen beider Graphen sind die Lösungen des Problems.
• Anschaulich aus dem Wissen über das betrachtete (technische) Problem.
3. Mit der Iterationsvorschrift

xk+1 = ϕ(xk ) (k = 0, 1, 2, . . .)

wird eine Folge {xk } konstruiert, die (hoffentlich) gegen die gesuchte Lösung konvergiert.

Beispiel 1.1 Die Gleichung x2 − ln x − 2 = 0 ist zu lösen. Das Problem liegt bereits als Nullstellenaufgabe vor.
y Die Anzahl und Lage der Lösungen wird grafisch y
3 festgestellt. Da die Gleichung einen Logarithmus 2
enthält, ist nur x > 0 sinnvoll. Eine solche Ein-
schränkung kann sich auch aus technischer Sicht
2 ergeben. 1
Die nebenstehenden Grafiken veranschaulichen die ln x
Lösungen durch eine Skizze der Funktion der Null- x
1 stellenaufgabe und durch die Zerlegung
x?1 1 x?2 2
x2 − 2 = ln x .
x | {z } |{z}
f (x) f2 (x) −1 x2 − 2
1
x?1 1 x?2 2
Die Gleichung hat genau zwei Lösungen. Als Start-
−1 werte lassen sich ablesen x01 = 0.2 sowie x02 = −2
2
x − ln x − 2 1.6.
Für die Gleichung x2 − ln x − 2 = 0 kann man (mindestens) die folgenden Fixpunktformen finden:
2 √ ln x + 2
x = e x −2 x = ln x + 2 x= x = x2 + x − ln x − 2 x = 2 + x − x2 + ln x
| {z } | {z } x | {z } | {z }
ϕ1 (x) ϕ (x)
2
| {z } ϕ (x)
4 ϕ (x)
5
ϕ3 (x)

Die Näherung x0 = 0.2 für die kleinste Lösung der Gleichung soll mit Hilfe der Fixpunktiteration verbessert
werden. Die Tabelle enthält die Iterationsschritte unter Verwendung der angegebenen Fixpunktformeln.
x 2 −2
√ ln xk +2 2 2
xk+1 =e k xk+1 = ln xk +2 xk+1 = xk
xk+1 =xk +xk −ln xk −2 xk+1 =2+xk −xk +ln xk

0 0.200000 0.200000 0.200000 0.200000 0.200000


1 0.140858 0.624950 1.952810 -0.150562 0.550562
2 0.138047 1.236898 1.366886 undefiniert 1.650628
3 0.137939 1.487483 1.691827 1.427211
4 0.137935 1.548252 1.492947 1.746002
5 0.137935 1.561130 1.608062 1.254808
6 1.563781 1.539138 1.907247
7 1.564323 1.579600 0.915316
8 1.564434 1.555566 1.989027
9 1.564456 1.569744 0.720445
10 1.564461 1.561346 1.873518
11 1.564462 1.566308 0.991267
12 1.564462 1.563371 1.999885
.. ..
. .
104 1.997795
105 0.698654
106 1.851937
107 1.038499
108 1.997795

2
Die Tabelle zeigt einige interessante Erscheinungen:
2
−2
1. Die mit Hilfe der Fixpunktform x = e x gebildete Folge {xk } ist konvergent gegen den gesuchten Wert.
2. Die zweite und die dritte Fixpunktform liefern auch eine konvergente Folge. Der Grenzwert ist aber die
andere Lösung der Gleichung.
3. Die vierte Fixpunktform bricht wegen der Nichtberechenbarkeit von ln (−0.15056209) ab.
4. Die fünfte Fixpunktform führt in eine Endlosschleife, konvergiert also nicht.

Aus dem Beispiel ergeben sich wichtige Fragestellungen:


• Unter welchen Bedingungen ist die Folge {xk } konvergent?

• Konvergiert sie gegen den gesuchten Fixpunkt?


Zum Verständnis der Probleme sollen zwei Skizzen beitragen.
Fall 1. {xn } konvergiert gegen x? Fall 2. {xn } konvergiert nicht gegen x?
y y ϕ(x)
ϕ(x? ) ϕ(x)
?
ϕ(x )
ϕ(x2 )
ϕ(x1 ) ϕ(x0 )

ϕ(x0 ) ϕ(x1 )

x ϕ(x2 ) x
y=x x0 x1 x2 x3 x? y=x x2 x1 x0 x?
Besonderheit: |ϕ0 (x)| < 1 Besonderheit: |ϕ0 (x)| > 1
x? ist anziehender Fixpunkt x? ist abstoßender Fixpunkt

Bemerkung 1.2 1. Es gilt immer: Die Iterationsvorschrift xk+1 = ϕ(xk ) konvergiert, wenn
im gesamten von {xk } durchlaufenen Intervall |ϕ0 (x)| < 1 erfüllt ist.
2. Dieses Kriterium kann vor Beginn der Rechnung nicht geprüft werden, man kontrolliert
daher ersatzweise |ϕ0 (x0 )| < 1. Falls diese Ungleichung deutlich erfüllt ist, geht man
davon aus, dass die Vorschrift konvergiert und daher verwendet werden kann.
3. Besonderheiten der Fixpunktiteration:
• Vorteil: Oftmals kann man eine einfache Vorschrift x = ϕ(x) finden.
• Nachteil: Es sind oft viele Iterationsschritte nötig. Es liegt (lokal) lineare Konvergenz
vor:

|xk+1 − x? | ≤ c|xk − x? | mit 0 < c < 1

Lineare Konvergenz bedeutet, dass man durchschnittlich immer die gleiche Anzahl
von Iterationsschritten benötigt, um die nächste richtige Dezimalstelle der Lösung zu
erhalten, oder anders ausgedrückt, dass in jedem Iterationsschritt durchschnittlich
die gleiche Anzahl richtiger Dezimalstellen hinzukommt.
Lokale Konvergenz bedeutet, dass eine Umgebung der Lösung x? existiert, aus der
der Startwert zu wählen ist, damit das Verfahren gegen x? konvergiert. Bei globaler
Konvergenz konvergiert ein Verfahren von jedem beliebigen Startwert aus.
4. Im Fall |ϕ0 (x)| > 1 kann die Aufgabe durch Übergang zur Umkehrfunktion gelöst werden,
da sich Funktion und Umkehrfunktion auf der Geraden y = x schneiden.
Die Nullstellenaufgabe f (x) = x3 − 3x2 + 3 = 0 hat eine Lösung in der Nähe von x0 = 1.4.
Zur iterativen Verbesserung dieser Näherungen kann man die Fixpunktform
3
x = ϕ1 (x) = 3 −
x2

3
finden. Diese Form hat aber bei der gesuchten Lösung einen abstoßenden Fixpunkt. Die
Fixpunktform mit der Umkehrfunktion
r
−1 3
x = ϕ2 (x) = ϕ1 (x) =
3−x
hat dort aber einen anziehenden Fixpunkt und findet die Lösung x? = 1.347296.
5. Die Folge {xk } konvergiert umso schneller, je kleiner |ϕ0 (x)| ist.
6. Bei langsamer Konvergenz kann das Verfahren durch folgende Überlegungen beschleunigt
werden:
• Gegeben ist eine Iterationsvorschrift xn+1 = ϕ(xn ) mit dem Startwert x0 und der
Eigenschaft ϕ0 (x0 ) = c.
• Im Fall c 6= 1 erhält man durch die Umformungen
ϕ(x) − cx
ϕ(x) = x ⇒ x − cx = ϕ(x) − cx ⇒ x = ϕb (x) =
1−c
eine neue Iterationsvorschrift x = ϕb (x), die wegen
ϕ0 (x) − c ϕ0 (x0 ) − c c−c
ϕ0b (x) = ⇒ ϕ0b (x0 ) = = =0
1−c 1−c 1−c
meist deutlich besser konvergiert.
π 1
Beispiel 1.2 Die Gleichung in Fixpunktform x = ϕ(x) = 4
+ 2
sin(2x) hat eine Lösung in der Nähe von
x = 1.2. Bei der Iteration mit dieser Vorschrift ist wegen
ϕ0 (x) = cos(2x) ⇒ ϕ0 (x0 ) = ϕ0 (1.2) = cos(2.4) = −0.7373973155
nur eine langsame Konvergenz zu erwarten. Die mit c = ϕ0 (1.2) ≈ −0.7 verbesserte Vorschrift
π 1
4
+ 2
sin(2xk ) + 0.7xk
xk+1 = ϕb (xk ) =
1.7
konvergiert deutlich schneller.

1.3 Das Newtonsche Iterationsverfahren


Das Newtonsche Iterationsverfahren ist ein gut anwendbares Verfahren zur Lösung der Null-
stellenaufgabe differenzierbarer Funktionen.
Problem: Gesucht ist die Nullstelle x? einer y
differenzierbaren Funktion.
Grundgedanke: f (x ) f (x)
0
?
• Man wählt eine Startnäherung x0 für x .
• Es wird die Tangente an f in (x0 , f (x0 ))
bestimmt.

• Die Nullstelle x1 der Tangente ist neuer f (x1 )


(besserer?) Näherungswert für x? .
(Das Verfahren beginnt erneut.) f (x2 )
Das Verfahren wird abgebrochen, wenn eine f (x3 ) x
ausreichende Genauigkeit (|xn+1 − xn | < ) er- x0 x1 x2 x3 ?
x
reicht ist.
Die Formel zur Berechnung der Folgenelemente x1 , x2 , x3 , . . . wird am Beispiel des ersten Ver-
fahrensschrittes dargestellt. Aus dem Anstiegsdreieck der ersten Tangente erhält man:
∆f f (x0 )
f 0 (x0 ) = = .
∆x x0 − x1
Die Umstellung nach x1 liefert die Vorschrift zur Berechnung des ersten Näherungswertes:
f (x0 ) f (xn )
x1 = x0 − , allgemein gilt xn+1 = xn − .
f 0 (x0 ) f 0 (xn )

4
Beispiel 1.3 Gesucht sind die Nullstellen der Funktion f (x) = x2 − 2 − cos x, wobei nur Lösungen x? > 0
technisch sinnvoll sein sollen.
1. Bestimmung des Startwertes x0 2. Verbesserung der Startwertes x?1
Aus x2 − 2 − cos x = 0 erhält man für die grafische Als Näherung für x?1 erhält man aus der Grafik x0 = 1.4.
Lösung mit Die Newtonsche Iterationsvorschrift lautet

x2 = 2 + cos x f (xn )
xn+1 = xn −
f 0 (xn )
|{z} | {z }
f1 (x) f2 (x) x2n − 2 − cos xn
= xn −
zwei leicht skizzierbare Funktionen. 2xn + sin xn
y
Damit kann man die Iterationsfolge
3
x2
x0 = 1.4
2 1.42 − 2 − cos 1.4
x1 = 1.4 −
2.8 + sin 1.4
= 1.4554669
1 2 + cos(x) x2 = 1.4546191
x3 = 1.4546189 = x4
x
bestimmen. Die Näherung x4 unterscheidet sich nicht
−2 x?0 −1 1 x?1 2
mehr von x3 , die geforderte Genauigkeit ist erreicht.
Als Näherungswerte der Lösungen sind x?0 = −1.4
und x?1 = 1.4 möglich. Technisch sinnvoll ist nur
eine Lösung: x?1 = 1.4

Bemerkung 1.3 1. Die Formel xk+1 = xk − ff0(x k)


(xk ) ist eine Fixpunktformel x = ϕ(x). Damit
kann man ein Konvergenzkriterium für das Newton-Verfahren angeben. Wegen
f (x)
ϕ(x) = x− 0 und
f (x)
(f 0 (x))2 − f (x)f 00 (x) f (x)f 00 (x)

|ϕ0 (x)| = 1 −

(f 0 (x))2 (f 0 (x))2 < 1
=

folgt als Konvergenzkriterium


f (x)f 00 (x)

(f 0 (x))2 < 1
oder |f (x)f 00 (x)| < (f 0 (x))2 .

2. Falls f 0 (x? ) 6= 0 ist, konvergiert das Verfahren (lokal) quadratisch:


|xk+1 − x? | ≤ c|xk − x? |2 mit 0 < c < 1
Quadratische Konvergenz bedeutet, dass sich durchschnittlich in jedem Iterationsschritt
die Anzahl der richtigen Dezimalstellen verdoppelt.

1.4 Weitere Iterationsverfahren


Es soll in allen Fällen eine Nullstellenaufgabe gelöst werden.

1.4.1 Bisektionsverfahren (Intervallhalbierung)


Ausgangspunkt: Für die Nullstellenaufgabe f (x) = 0 einer stetigen Funktion f (x) muss man
ein Intervall [a0 , b0 ] mit f (a0 )f (b0 ) < 0 kennen. Dann gibt es eine Lösung x? ∈]a0 , b0 [.
y
f (b0 )

x
a0 x2 x1 x0 b0

f (a0 )

5
Vorgehen während eines Iterationsschrittes:
a0 + b0
• Startnäherung: x0 = (Intervallmitte)
2
• Berechne f (x0 ),

◦ falls f (b0 )f (x0 ) < 0 dann setze a1 := x0 und b1 := b0


◦ falls f (a0 )f (x0 ) < 0 dann setze a1 := a0 und b1 := x0
a1 + b1
• Berechne eine neue Näherung mit x1 = (Intervallmitte)
2
• Die Rechnung wird fortgesetzt, bis das die gesuchte Lösung x? einschließende Intervall
[an , bn ] hinreichend klein ist.

Bemerkung 1.4 Für eine stetige Funktion f (x) ist die Konvergenz gesichert.

1.4.2 Regula-falsi
Ausgangspunkt: Für die Nullstellenaufgabe f (x) = 0 einer stetigen Funktion f (x) sind auch
hier zwei Werte x0 und x1 in der Nähe von x? bekannt, für die f (x0 ) · f (x1 ) < 0 gilt. Dann
muss die gesuchte Lösung x? auch hier zwischen x0 und x1 liegen.
Das Vorgehen entspricht weitgehend dem Bisektionsverfahren, es wird lediglich die Intervallmit-
te als neuer Wert durch die Nullstelle der Sekante durch die Endpunkte der Funktion ersetzt.
y
f (x1 )

x
x0 x4 x3 x2 x1

f (x0 )

Die Gleichung der Sekante lautet (mit Hilfe der Zwei-Punkte-Gleichung)

f (x1 ) − f (x0 )
s(x) = f (x0 ) + (x − x0 ) .
x1 − x0
Daraus ergibt sich für x2 als Nullstelle der Sekante:

f (x1 ) − f (x0 ) x1 − x0
0 = f (x0 ) + (x2 − x0 ) ⇒ x2 = x0 − f (x0 ) .
x1 − x0 f (x1 ) − f (x0 )

Oft wird auch eine etwas abgewandelte Formel für x2 verwendet:


x1 − x0 x0 f (x1 ) − x0 f (x0 ) − x1 f (x0 ) + x0 f (x0 )
x2 = x0 − f (x0 ) =
f (x1 ) − f (x0 ) f (x1 ) − f (x0 )
x0 f (x1 ) − x1 f (x0 )
=
f (x1 ) − f (x0 )
Der Funktionswert f (x2 ) wird im Allgemeinen verschieden von Null sein, ist also noch nicht die
gesuchte Lösung x? . Die Randpunkte des die Lösung einschließenden neuen Intervalls werden
wie beim Bisektionsverfahren festgelegt.

Bemerkung 1.5 Regula falsi“ ist Lateinisch und heißt Regel des Falschen“.
” ”

6
1.4.3 Das Sekantenverfahren
Grundgedanke: Im Newton-Verfahren wird die Ableitung f 0 (x) durch den Differenzenquo-
tienten der letzten beiden Näherungen ersetzt:
f (xk ) − f (xk − h) f (xk ) − f (xk−1 )
f 0 (xk ) = lim ≈
h→0 h xk − xk−1
f (xk )
Damit erhält man aus dem Newton-Algorithmus xk+1 = xk − f 0 (xk ) die Iterationsvorschrift
(xk − xk−1 )f (xk ) xk−1 f (xk ) − xk f (xk−1 )
xk+1 = xk − =
f (xk ) − f (xk−1 ) f (xk ) − f (xk−1 )
Bemerkung 1.6
1. Es werden auch hier zwei Startnäherungen x0 und x1 benötigt.
2. Im Fall f (x0 )f (x1 ) < 0 liegt das Regula-falsi-Verfahren vor. Beim Sekantenverfahren gilt
diese Einschränkung jedoch nicht.

1.5 Ausblick: Lösung nichtlinearer Gleichungssysteme


1.5.1 Das Newton-Verfahren für nichtlineare Gleichungssysteme
Gegeben ist ein nichtlineares Gleichungssystem mit n Gleichungen und n Variablen. Das Glei-
chungssystem soll als Nullstellenaufgabe vorliegen.
F1 (x1 , x2 , . . . , xn ) = 0
F2 (x1 , x2 , . . . , xn ) = 0
..
.
Fn (x1 , x2 , . . . , xn ) = 0
x?1
 
 x?2 
Gesucht ist der Lösungsvektor x? =   dieses Gleichungssystems. Das Problem kann als
 
..
 . 
x?n
Nullstellenbestimmung einer vektorwertigen Funktion F (x) betrachtet werden. Es wird ein Ite-
rationsverfahren in Analogie zum Newton-Verfahren für nichtlineare Gleichungen entwickelt.
• nichtlineares Gleichungssystem: Fk (x1 , x2 , . . . , xn ) = 0 (k = 1, 2, . . . , n)
• Ableitungsmatrix oder Jacobi-Matrix:
∂F1 ∂F1 ∂F1
 
···
 ∂x1 ∂x2 ∂x n 
 . .. ..
F0 = 

 .
. . .


 ∂F ∂Fn ∂Fn 
n
···
∂x1 ∂x2 ∂xn

• Tangentialhyperebene in einem Startpunkt x(0) :


    
FT (x) = F x(0) + F 0 x(0) x − x(0)

• Lineares Gleichungssystem
    
0 = F x(0) + F 0 x(0) x(1) − x(0)

oder mit d(0) = x(1) − x(0)


   
F 0 x(0) d(0) = −F x(0) ⇒ x(1) = x(0) + d(0)

• Allgemein:
   
F 0 x(m) d(m) = −F x(m) ⇒ x(m+1) = x(m) + d(m)

7
1.5.2 Verallgemeinerung der Fixpunktiteration
Es ist wieder die Lösung eines nichtlinearen Gleichungssystems mit n Gleichungen und n Varia-
blen gesucht. Es wird angenommen, dass das Gleichungssystem als Nullstellenaufgabe vorliegt.
Die m. Gleichung des Systems wird nach der Variablen xm (m = 1, 2, . . . , n) aufgelöst:

F1 (x1 , x2 , . . . , xn ) = 0 x1 = ϕ1 (x1 , x2 , . . . , xn )
F2 (x1 , x2 , . . . , xn ) = 0 x2 = ϕ2 (x1 , x2 , . . . , xn )
.. ⇒ ..
. .
Fn (x1 , x2 , . . . , xn ) = 0 xn = ϕn (x1 , x2 , . . . , xn )

Das neue Gleichungssystem kann wieder als Fixpunktaufgabe angesehen werden.


(0) (0) (0)
Man braucht wieder eine Startnäherung x1 , x2 , . . . , xn , die man auch als Startvektor be-
trachten kann. Daraus lässt sich in Analogie zur Fixpunktiteration ein neuer Näherungsvektor
gewinnen:
 
(1) (0) (0) (0)
x1 = ϕ1 x1 , x2 , . . . , xn
 
(1) (0) (0) (0)
x2 = ϕ2 x1 , x2 , . . . , xn
..
.  
(1) (0) (0) (0)
xn = ϕn x1 , x2 , . . . , xn

Allgemein kann man für den (j − 1). Schritt schreiben:


 
(j+1) (j) (j) (j)
x1 = ϕ1 x1 , x2 , . . . , xn
 
(j+1) (j) (j) (j)
x2 = ϕ2 x1 , x2 , . . . , xn
..
.  
(j+1) (j) (j) (j)
xn = ϕn x1 , x2 , . . . , xn

Dieses Vorgehen nennt man Gesamtschrittverfahren, da in einem Schritt alle neuen Näherungen
berechnet werden.
Wenn man davon ausgeht, dass die neuen Näherungen durch die Bearbeitung der Gleichungen
dieses Systems von oben nach unten berechnet werden, dann hat man vor der Berechnung der
(j+1) (j+1)
Näherung x2 mit der zweiten Gleichung bereits die neue Näherung x1 aus der ersten
Gleichung erhalten. Es liegt nahe, diese neue (bessere) Näherung auch zu nutzen! Durch die
wiederholte Anwendung dieses Gedankens kommt man zu folgendem Verfahren:
 
(j+1) (j) (j) (j)
x1 = ϕ1 x1 , x2 , . . . , xn
 
(j+1) (j+1) (j) (j)
x2 = ϕ2 x1 , x2 , . . . , xn
..
.  
(j+1) (j+1) (j+1) (j)
xn = ϕn x1 , x2 , . . . , xn

Dieses Vorgehen nennt man Einzelschrittverfahren.

1.5.3 Schätzen der Parameter der Weibull-Verteilung mit der Maximum-Likeli-


hood-Methode
Ausgangspunkt
Beachte:
1. Die Dichtefunktion der (zweiparametrigen) Weibull-Verteilung lautet:
 k
Ak(Ax)k−1 e−(Ax) für x ≥ 0
fX (x) =
0 für x < 0

8
Diese Verteilung beschreibt beispielsweise die Häufigkeit des Auftretens bestimmter Wind-
geschwindigkeiten an einem Ort und ist daher wichtig für Wirtschaftlichkeitsuntersuchun-
gen geplanter Windenergiestandorte.
Die unbekannten Parameter A und k sind aus Stichproben zu berechnen (zu schätzen).
2. Ein Hilfsmittel zur Schätzung von Verteilungsparametern ist die Likelihood-Funktion. Die
Weibull-Verteilung ist eine Verteilung für stetige Zufallsgrößen. Die Likelihood-Funktion
wird daher als Produkt der Funktionswerte der Dichtefunktion an den gemessenen Stich-
probendaten gebildet:
n n
Y Y k
L(A, k) = fX (xj ; A, k) = Ak(Axj )k−1 e−(Axj )
j=1 j=1

3. Zur Schätzung der Parameter A und k ist die Extremwertaufgabe


L(A, k) −→ max!
in Abhängigkeit von den Stichprobendaten x1 , x2 , . . . , xn zu lösen. Die Schätzwerte sind
also durch das (nichtlineare) Gleichungssystem
∂L(A, k)
= 0
∂A
∂L(A, k)
= 0
∂k
bestimmt.
4. Die partiellen Ableitungen der Likelihood-Funktion sind durch die Produkt- und Ketten-
regel ziemlich kompliziert und das Gleichungssystem schwer lösbar.
5. Zur Vereinfachnung wird daher die oben angegebene Extremwertaufgabe durch die Ex-
tremwertaufgabe
ln L(A, k) −→ max!
ersetzt. Diese Ersetzung ändert die Extremstelle nicht, da die Logarithmusfunktion mo-
noton ist.

Die Extremwertaufgabe für die logarithmierte Likelihood-Funktion


Durch Logarithmieren der Likelihood-Funktion erhält man:
 
n n  
Y k X k
−(Ax
ln L(A, k) = ln  Ak(Axj ) k−1
e j )  = ln Ak(Axj )k−1 e−(Axj )
j=1 j=1
n
X
ln(Ak) + (k − 1)(ln A + ln xj ) − (Axj )k

=
j=1
Xn n
X n
X
= ln(Ak) + (k − 1)(ln A + ln xj ) − (Axj )k
j=1 j=1 j=1
n
X n
X n
X n
X
= ln(Ak) + (k − 1) ln A + (k − 1) ln xj − Ak xkj
j=1 j=1 j=1 j=1
Xn n
X
= n ln A + n ln k + n(k − 1) ln A + (k − 1) ln xj − Ak xkj
j=1 j=1

Die partiellen Ableitungen dieser Funktion lauten:


n n
∂L(A, k) n n(k − 1) X nk X
= + − kAk−1 xkj = − kAk−1 xkj
∂A A A j=1
A j=1
n n
∂L(A, k) n X X
= + n ln A + ln xj − (Axj )k ln(Axj )
∂k k j=1 j=1

9
Das nichtlineare Gleichungssystem zur Berechnung der Parameter A und k ist dann:
n
∂L(A, k) nk k−1
X
= − kA xkj = 0
∂A A j=1
n n
∂L(A, k) n X X
= + n ln A + ln xj − (Axj )k ln(Axj ) = 0
∂k k j=1 j=1

Zur Gewinnung einer Fixpunktform wird die erste Gleichung nach A und die zweite Gleichung
nach k aufgelöst. Aus der ersten Gleichung folgt:
n n n
n X X 1 1X k 1
= Ak−1 xkj ⇒ n = Ak xkj ⇒ = x ⇒ A= 
A j=1 j=1
A k n j=1 j n
 k1
1 X
 xk 
n j=1 j

Aus der zweiten Gleichung folgt:


n n
n X X
0 = + n ln A + ln xj − (Axj )k ln(Axj )
k j=1 j=1
n n
n X
k
X
= (Axj ) ln(Axj ) − ln xj − n ln A
k j=1 j=1
n 
n X 
= (Axj )k ln(Axj ) − ln xj − n ln A
k j=1
n
k = n  
X
(Axj )k ln(Axj ) − ln xj − n ln A
j=1

Aus diesen beiden Formeln kann man ein Einzelschritt-Verfahren zur iterativen Lösung des
Gleichungssystems gewinnen:
 1
− (j)
n k
1 X (j)
A(j+1) =  xk 
n j=1 j
n
k (j+1) = n  
X (j)
(A(j+1) xj )k ln(A(j+1) xj ) − ln xj − n ln A(j+1)
j=1

Die Maximum-Likelihood-Schätzung für klassifizierte Daten


Es ist die Maximum-Likelihood-Schätzung der Parameter der Weibull-Verteilung gesucht,
wobei die n Daten der Stichprobe in m Klassen eingeteilt sind. Die i. Klasse hat die Klassenmitte
xi und enthält ni Stichprobenwerte, das heißt:
m
X
ni = n
i=1

In der Likelihood-Schätzung werden die ni Werte der i. Klasse jeweils durch den Klassen-
mittelwert xi repräsentiert. In der Likelihood-Funktion ist der zugehörige Faktor also ni -mal
enthalten. Die Likelihood-Funktion lautet daher
n m  ni
Y Y k
L(A, k) = fX (xj ; A, k) = Ak(Axi )k−1 e−(Axi )
j=1 i=1

10
Die logarithmierte Likelihood-Funktion lautet dann:
m 
! m
 ni  k ni

k−1 −(Axi )k
Y X
ln L(A, k) = ln Ak(Axi ) e = ln Ak(Axi )k−1 e−(Axi )
i=1 i=1
m  
X k
= ni ln Ak(Axi )k−1 e−(Axi )
i=1
m
X
ni ln A + ln k + (k − 1)(ln A + ln xi ) − (Axi )k

=
i=1
m
X m
X m
X m
X
= (ln A + ln k) ni + (k − 1) ln A ni + (k − 1) ni ln xi − ni (Axi )k
i=1 i=1 i=1 i=1
m
X m
X
= n ln A + n ln k + n(k − 1) ln A + (k − 1) ni ln xi − ni Ak xki
i=1 i=1
m
X m
X
= n ln k + nk ln A + (k − 1) ni ln xi − Ak ni xki
i=1 i=1

Die partiellen Ableitungen der logarithmierten Likelihood-Funktion lauten:


m
∂ ln L(A, k) nk X
= − kAk−1 ni xki
∂A A i=1
m m
∂ ln L(A, k) n X X
= + n ln A + ni ln xi − ni (Axi )k ln(Axi )
∂k k i=1 i=1

Damit erhält man das folgende nichtlineare Gleichungssystem zur Bestimmung der Parameter
A und k:
m
∂ ln L(A, k) nk X
= − kAk−1 ni xki = 0
∂A A i=1
m m
∂ ln L(A, k) n X X
= + n ln A + ni ln xi − ni (Axi )k ln(Axi ) = 0
∂k k i=1 i=1

Aus der ersten Gleichung folgt:


m m m
n X X 1 1X 1
= Ak−1 ni xki ⇒ n = Ak ni xki ⇒ k
= ni xki ⇒ A = ! k1
A A n m
i=1 i=1 i=1 1X
ni xki
n i=1

Die zweite Gleichung führt zu:


m m
n X X
0 = + n ln A + ni ln xi − ni (Axi )k ln(Axi )
k i=1 i=1
m m
n X X
= ni (Axi )k ln(Axi ) − n ln A − ni ln xi
k i=1 i=1
m
n X  
= ni (Axi )k ln(Axi ) − ln xi − n ln A
k i=1
n
k = m  
X
ni (Axi )k ln(Axi ) − ln xi − n ln A
i=1

11
Daraus kann man das folgende Einzelschritt-Verfahren zur iterativen Lösung des Gleichungs-
systems gewinnen:
1
!− (j)
m k
1 X (j)
A(j+1) = ni xki
n i=1
n
k (j+1) = m  
X (j)
ni (A(j+1) xi )k ln(A(j+1) xi ) − ln xi − n ln A(j+1)
i=1

Beispieldaten zur Berechnung der Parameter der Weibull-Verteilung


Die Daten dieses Beispiels stammen von Prof. V. Weise (M).
An einem Standort wurde über einen Zeitraum von 7823 Stunden die Windgeschwindigkeit
gemessen. Dabei erhielt man:
m
Nr. mittl. Windg. in s Anzahl (Dauer) in h
1 0.5 1107
2 1.5 2432
2 2.5 1886
3 3.5 1058
4 4.5 667
5 5.5 337
6 6.5 166
7 7.5 102
8 8.5 47
9 9.5 16
10 10.5 4
11 11.5 1

Die Klasse 1 mit der mittleren Geschwindigkeit vom 0.5 m s steht für das Auftreten von Wind-
geschwindigkeiten zwischen 0 m s und 1 m
s . Solche Geschwindigkeiten traten insgesamt für die
Dauer von 1107 h auf.
Als Startnäherungen eignen sich:
0.9 0.9
A0 = = = 0.35339
x̄ 2.54678
1 1
k0 = = = 1.70205
A0 s 0.35339 · 1.66256
Das oben angegebene Gesamtschrittverfahren für klassifizierte Daten führt dann zu:
A = 0.350558
k = 1.611172
Die Windgeschwindigkeiten an diesem Standort folgen also der Weibull-Verteilung
 1.611172
0.350558 · 1.611172(0.350558v)1.611172−1 e−(0.350558v) für v ≥ 0
fX (v) =
0 für v < 0

12