10  Differentialrechnung

Die Matrix- und Vektornotation erlaubt eine sehr kompakte und elegante Darstellung von Optimierungsproblemen von Funktionen mit mehreren Argumenten. Als Ausgangspunkt betrachten wir eine Funktion mit n Argumenten x1,,xn. Die Argumente fassen wir zu einem Vektor zusammen, f(x1,,xn)=f(x). Es handelt sich also um eine Funktion aus dem Rn nach R. Es ist auch möglich, dass die Funktion aus dem Rn in den Rm (mit m>1) abbildet, aber diesen Fall betrachten wir in diesem Kurs nicht weiter.

10.1 Gradient

Die Funktion f(x) hat n Argumente. Es gibt folglich n partielle erste Ableitungen von f. Diese Ableitungen werden in einem Vektor zusammengefasst. Er heißt Gradient von f und wird meistens mit einem auf der Spitze stehenden Dreieck (auch “Nabla” genannt) notiert, f(x)=[f(x)x1,,f(x)xn]. Der Gradient ist sozusagen die multivariate erste Ableitung. Er gibt an, in welche Richtung die Funktion am steilsten ansteigt. Will man das Minimum erreichen, bietet es sich also an, genau in die entgegengesetzte Richtung zu gehen.

In der ökonometrischen Literatur wird der Gradient manchmal auch als Df(x) oder f/x geschrieben.

Beispiel:

Als Beispiel untersuchen wir eine Funktion mit zwei Argumenten, da sie sich im Gegensatz zu Funktionen mit mehr als zwei Argumenten noch gut visualisieren lässt. Die Funktion lautet f(x)=x12x22 mit x=(x1,x2). Ein Plot der Funktion sieht so aus:

Der Gradient der Funktion ist der Spaltenvektor der beiden partiellen Ableitungen, f(x)=[fx1fx2]=[2x12x2]. Noch ein Beispiel:

Auch in diesem Beispiel hat die Funktion nur zwei Argumente. Sie lautet f(x)=2x12x22 mit x=(x1,x2). Ein Plot der Funktion sieht so aus:

Der Gradient der Funktion ist der Zeilenvektor der beiden partiellen Ableitungen, f(x)=[fx1fx2]=[2x12x2].

10.2 Lineare Approximation

In den Wirtschaftswissenschaften sind viele Zusammenhänge nicht linear. Beispielsweise ist es fast immer sinnvoll, von abnehmenden Grenzerträgen auszugehen. Eine lineare Produktionsfunktion ist daher nur in sehr wenigen Fällen plausibel. Obwohl Nichtlinearitäten weitverbreitet sind, ist es nützlich, mit linearen Gleichungssystemen zu arbeiten. Der Grund dafür ist einfach: Ein nichtlineares Gleichungssystem kann linearisiert werden. Das lineare Gleichungssystem ist dann eine lokale Approximation, die um so besser ist, je weniger man sich von dem Punkt entfernt, um den herum man approximiert.

Zur Auffrischung sehen wir uns kurz an, wie eine Funktion mit nur einem Argument linear approximiert wird, und zwar anhand eines Beispiels.

Beispiel:

Die Funktion f(x)=ex2/4 sieht folgendermaßen aus:

Der Verlauf der Funktion soll an der Stelle x=1 linear approximiert werden. Allgemein lautet die Formel für eine Taylor-Approximation erster Ordnung um eine Stelle x0 herum f(x)f(x0)+f(x0)(xx0). Die Beispielfunktion hat die Ableitung f(x)=12xex2/4. Die Taylorapproximation an der Stelle x0=1 ist folglich f(x)f(1)+f(1)(x1)=e1/412e1/4(x1)=e1/4(1.50.5x). Fügt man diese lineare Funktion in den Plot ein, so ergibt sich

Wie lässt sich das auf multivariate Funktionen übertragen? Unter Verwendung der Matrixnotation ist die Analogie deutlich, es gilt nämlich f(x)f(x0)+f(x0)(xx0) Beispiel:

Wir suchen eine lineare Approximation für die Funktion f(x)=2x12x22 an der (willkürlich ausgewählten) Stelle x0=(0.5,1). Der Funktionswert und der Gradient an der Approximationsstelle sind f(x0)=20.5212=0.75f(x0)=[20.521]=[12], so dass die Taylorapproximation erster Ordnung um (0.5,1) herum so aussieht: f(x)=0.75+[12][x10.5x21]=0.75(x10.5)2(x21)=3.25x12x2. Zeichnet man diese Ebene in den Funktionsplot mit hinein, so ergibt sich:

Selbstverständlich wäre die lineare Approximation eine andere, wenn die Ebene an einer anderen Stelle angepasst würde.

10.3 Hesse-Matrix

Der Gradient entspricht der ersten Ableitung einer univariaten Funktion. Leitet man die erste Ableitung erneut ab, so erhält man die zweite Ableitung. Damit stellt sich die Frage: Was ist das multivariate Gegenstück zur zweiten Ableitung?

Die Ableitung des Gradienten (bzw. genauer gesagt, aller Komponenten des Gradienten) nach x führt auf die Hesse-Matrix Hf(x)=[2f(x)x122f(x)x1x22f(x)x1xn2f(x)x2x12f(x)x222f(x)x2xn2f(x)xnx12f(x)xnx22f(x)xn2]. Es handelt sich bei der Hesse-Matrix also um die Matrix der zweiten Ableitungen. Da es gleichgültig ist, ob zuerst nach xi und anschließend nach xj oder anders herum abgeleitet wird, ist die Hesse-Matrix symmetrisch.

Beispiel:

Die Hesse-Matrix der Funktion f(x)=x12x22 ist Hf(x)=[2f(x)x122f(x)x1x22f(x)x2x12f(x)x22]=[2002].

10.4 Optimierung

Der Vektor x soll nun so gewählt werden, dass f(x) minimal wird. Da die Maximierung von f(x) der Minimierung von f(x) entspricht, braucht man das Maximierungsproblem nicht separat zu betrachten. Es ist quasi nur ein Spiegelbild der Minimierung.

Da in diesem Kurs der Schwerpunkt nicht auf der Optimierung von Funktionen liegt, betrachten wir nur den Spezialfall von überall differenzierbaren Funktionen, deren Minimum (oder Minima) nicht am Rand des Definitionsbereichs liegen. Auch Nebenbedingungen, die in der Ökonomik natürlich eine wichtige Rolle spielen, blenden wir aus.

Die Bedingung erster Ordnung für ein Minimum lautet f(x)=0. Alle partiellen Ableitungen müssen also im Minimum Null sein. Wäre es anders, könnte man den Funktionswert noch weiter verringern, indem man ein Argument, dessen partielle Ableitung nicht Null ist, ein wenig erhöht oder reduziert (je nach Vorzeichen der Ableitung).

Beispiel:

Die Funktion f(x1,x2)=4x1x2+x14+x24 sieht so aus (der Plot ist am oberen Ende abgeschnitten, eigentlich würde die Funktion noch deutlich weiter nach oben verlaufen):

An welchen Stellen erfüllt diese Funktion die Bedingung erster Ordnung? Dazu berechnen wir zuerst den Gradienten, f(x1,x2)=[4x2+4x134x1+4x23]. Damit beide partiellen Ableitungen Null sind, müssen die folgenden beiden Gleichungen erfüllt sein, x13=x2x23=x1 Die drei Lösungen lassen sich direkt erkennen. Sie lauten x1=x2=0,x1=x2=1,x1=x2=1. Offensichtlich weist die Funktion jedoch nicht an allen drei Stellen lokale Minima auf. Wie lässt sich formal prüfen, ob eine Stelle, an der der Gradient 0 ist, ein Minimum ist? Die Antwort ist analog zum univariaten Fall. Dort überprüft man die zweite Ableitung an der Stelle, an der die erste Ableitung 0 ist. Wenn die zweite Ableitung negativ ist, handelt es sich um ein Maximum, wenn sie positiv ist, liegt ein Minimum vor.

Für multivariate Funktionen lautet die Bedingung zweiter Ordnung für ein Minimum: Die Hesse-Matrix muss positiv definit sein an der Stelle, an der der Gradient 0 ist. Ist die Hesse-Matrix dort negativ definit, handelt es sich um ein Maximum.

Beispiel:

Die Hesse-Matrix der Funktion f(x1,x2)=4x1x2+x14+x24 ist Hf(x)=[2f(x)x122f(x)x1x22f(x)x2x12f(x)x22]=[12x124412x22]. An den beiden Stellen x1=x2=1 und x1=x2=1 gilt Hf([11])=Hf([11])=[124412]. Die Eigenwerte dieser Matrix sind λ1=16 und λ2=8. Beide Eigenwerte sind positiv, d.h. die Hesse-Matrix ist positiv definit. Folglich handelt es sich bei den beiden Stellen um lokale Minima, was ein Blick auf den Plot der Funktion ja auch bestätigt.

An der Stelle x1=x2=0 ist die Hesse-Matrix Hf([00])=[0440]. Sie hat die beiden Eigenwerte λ1=4 und λ2=4. Diese Matrix ist also weder positiv, noch negativ definit. In diesem Fall zeigt ein Blick auf den Plot der Funktion, dass an dieser Stelle ein Sattelpunkt ist.

10.5 Ableitungen in Matrixnotation

Die Matrixnotation ist oft eine große Hilfe, wenn es darum geht, mit vielen Ableitungen zu arbeiten. Eine umfangreiche Darstellung der Ableitungsregeln für Funktionen von Vektoren oder Matrizen geben Magnus und Neudecker, 1999 (die Quelle ist im zu finden). An dieser Stelle soll ein Überblick über einige wichtige Spezialfälle ausreichen.

Zuerst untersuchen wir die Funktion f(x)=ax, wobei a ein Vektor von n reellen Zahlen ist. Wie lässt sich der Gradient f in Matrixnotation ausdrücken?

Ausgeschrieben gilt f(x1,,xn)=a1x1+a2x2++anxn. Die partielle Ableitung nach x1 ist offenbar a1, nach x2 ist es a2 usw. Fasst man alle partiellen Ableitungen zu einem Spaltenvektor zusammen, so ergibt sich der Gradient ax=a.

Als nächstes sehen wir uns eine quadratische Funktion an, nämlich die quadratische Form f(x)=xAx, wobei A eine (nicht unbedingt symmetrische) (n×n)-Matrix reeller Zahlen ist. Die partiellen Ableitungen lassen sich besser ermitteln, wenn man die quadratische Form ausschreibt. Es gilt f(x1,,xn)=i=1nj=1naijxixj. Für die partielle Ableitung nach x1 benötigt man nur die Summanden, in denen x1 vorkommt, alle anderen fallen weg. Übrig bleiben die Summanden mit i=1 und/oder j=1, d.h. j=1na1jx1xj+i=1nai1xix1=x1j=1na1jxj+x1j=1naj1xj. Dass der Laufindex der hinteren Summe von i auf j geändert wurde, ändert nichts an dem Ausdruck, vereinfacht aber im folgenden die Schreibweise. Die partielle Ableitung nach x1 ist also j=1na1jxj+j=1naj1xj. Entsprechend ist die partielle Ableitung nach einem beliebigen xi j=1naijxj+j=1najixj. In Matrixnotation ergibt sich der Gradient xAx=Ax+Ax=(A+A)x. Wenn die Matrix A symmetrisch ist, kommt die Analogie zu der univariaten Ableitung von f(x)=ax2, also f(x)=2ax, deutlich zum Ausdruck, denn dann gilt xAx=2Ax.