Analiza wypukła i optymalizacja
Zbiory wypukłe i operacje, które wypukłość zachowują, funkcje wypukłe i wklęsłe wraz z charakteryzacją przez epigraf, kryteria pierwszego i drugiego rzędu, nierówność Jensena, quasi-wypukłość, a przede wszystkim twierdzenia czyniące optymalizację łatwą: minimum lokalne funkcji wypukłej jest globalne, a punkt stacjonarny jest minimum globalnym. Z zastosowaniami w programowaniu liniowym i metodzie najmniejszych kwadratów. Każde twierdzenie z dowodem i rysunkiem.
Wypukłość to najważniejsza struktura w optymalizacji. Dla funkcji wypukłej znika różnica między tym, co lokalne, a tym, co globalne: każde minimum lokalne jest globalne, a zwykłe zerowanie pochodnej wystarcza, by mieć pewność optimum. To dlatego metoda najmniejszych kwadratów ma jedno, jednoznaczne rozwiązanie, a estymacja największej wiarygodności w modelach wykładniczych jest „dobrze postawiona”. Ten rozdział buduje analizę wypukłą od zbiorów i funkcji, przez kryteria różniczkowe i nierówność Jensena, aż po twierdzenia, które czynią optymalizację wypukłą tak dogodną.
Zbiory wypukłe
Zbiór $C\subseteq\mathbb{R}^n$ jest wypukły, gdy wraz z każdymi dwoma punktami zawiera łączący je odcinek:
$$ \forall_{x,y\in C}\;\forall_{t\in[0,1]}\;\; tx+(1-t)y\in C. $$Punkt $tx+(1-t)y$ to kombinacja wypukła $x$ i $y$.
Funkcje wypukłe
Funkcja $f$ jest wypukła, gdy dla wszystkich $x,y$ i $t\in[0,1]$
$$ f\big(tx+(1-t)y\big)\le t f(x)+(1-t)f(y), $$czyli wykres leży pod każdą cięciwą. Funkcja jest wklęsła, gdy zachodzi nierówność odwrotna (wykres nad cięciwą) — równoważnie, gdy $-f$ jest wypukła.
Funkcja $f$ jest wypukła wtedy i tylko wtedy, gdy jej epigraf
$$ \operatorname{epi} f=\{(x,y) : y\ge f(x)\} $$jest zbiorem wypukłym. To most łączący wypukłość funkcji z wypukłością zbiorów.
Kryteria różniczkowe
Funkcja różniczkowalna $f$ jest wypukła wtedy i tylko wtedy, gdy jej wykres leży nad każdą styczną:
$$ f(y)\ge f(x)+f'(x)(y-x)\qquad\text{dla wszystkich }x,y. $$(W wielu wymiarach: $f(y)\ge f(x)+\nabla f(x)\cdot(y-x)$.)
- Z definicji wypukłości. Dla $t\in(0,1]$ punkt $x+t(y-x)$ jest kombinacją wypukłą $x$ i $y$, więc $$f\big(x+t(y-x)\big)\le (1-t)f(x)+t f(y).$$
- Przekształcenie. Odejmujemy $f(x)$ i dzielimy przez $t\gt 0$: $$\frac{f\big(x+t(y-x)\big)-f(x)}{t}\le f(y)-f(x).$$
- Granica $t\to 0^+$. Lewa strona to iloraz różnicowy w kierunku $y-x$ i dąży do $f'(x)(y-x)$. Stąd $$f'(x)(y-x)\le f(y)-f(x),$$ czyli $f(y)\ge f(x)+f'(x)(y-x)$. Implikację odwrotną dowodzi się, stosując nierówność stycznej w dwóch punktach kombinacji wypukłej. $\;$
Dla funkcji wypukłej $f$, wag $\lambda_i\ge 0$ z $\sum_i\lambda_i=1$ oraz punktów $x_i$:
$$ f\Big(\sum_i \lambda_i x_i\Big)\le \sum_i \lambda_i f(x_i). $$W języku probabilistycznym: $f\big(\mathbb{E}[X]\big)\le\mathbb{E}\big[f(X)\big]$ — fundament wielu nierówności w statystyce.
- Baza. Dla $n=2$ nierówność jest wprost definicją wypukłości.
- Krok indukcyjny. Załóżmy tezę dla $n-1$ punktów. Dla $n$ punktów i $\lambda_n\lt 1$ piszemy $\sum_{i=1}^n\lambda_i x_i=(1-\lambda_n)\,s+\lambda_n x_n$, gdzie $s=\sum_{i=1}^{n-1}\tfrac{\lambda_i}{1-\lambda_n}x_i$ jest kombinacją wypukłą $n-1$ punktów.
- Najpierw wypukłość dla dwóch. $$f\Big(\sum_i\lambda_i x_i\Big)\le (1-\lambda_n)f(s)+\lambda_n f(x_n).$$
- Potem hipoteza indukcyjna do $f(s)$. Stosujemy ją do $s$ z wagami $\tfrac{\lambda_i}{1-\lambda_n}$ (sumują się do $1$) i otrzymujemy $f(s)\le\sum_{i=1}^{n-1}\tfrac{\lambda_i}{1-\lambda_n}f(x_i)$. Po podstawieniu człony $(1-\lambda_n)$ się skracają i zostaje $f(\sum\lambda_i x_i)\le\sum\lambda_i f(x_i)$. $\;$
Quasi-wypukłość
Funkcja jest quasi-wypukła, gdy wszystkie jej zbiory poziomicowe $\{x : f(x)\le\alpha\}$ są wypukłe — równoważnie
$$ f\big(tx+(1-t)y\big)\le\max\big(f(x),f(y)\big). $$Każda funkcja wypukła jest quasi-wypukła, ale nie odwrotnie. To słabsze pojęcie wystarcza w wielu zadaniach mikroekonomii (quasi-wklęsłe funkcje użyteczności).
Optymalizacja funkcji wypukłych
Wypukłość sprowadza trudne pytania globalne do łatwych pytań lokalnych.
- Założenie przeciwne. Niech $x^*$ będzie minimum lokalnym, lecz nie globalnym: istnieje $z$ z $f(z)\lt f(x^*)$.
- Idziemy po odcinku. Dla $t\in(0,1)$ z wypukłości $$f\big(tz+(1-t)x^*\big)\le t f(z)+(1-t)f(x^*)\lt f(x^*),$$ bo $f(z)\lt f(x^*)$.
- Sprzeczność. Punkty $tz+(1-t)x^*$ dla małych $t$ leżą **dowolnie blisko** $x^*$, a mają wartość mniejszą niż $f(x^*)$. To przeczy temu, że $x^*$ jest minimum lokalnym.
- Jedyność przy ścisłej wypukłości. Gdyby były dwa różne minima globalne $a,b$, to środek odcinka miałby wartość ostro mniejszą — sprzeczność. $\;$
- Z kryterium pierwszego rzędu. Dla każdego $y$ wypukłość daje $$f(y)\ge f(x^*)+\nabla f(x^*)\cdot(y-x^*).$$
- Wstawiamy stacjonarność. Skoro $\nabla f(x^*)=\mathbf{0}$, drugi składnik znika i zostaje $f(y)\ge f(x^*)$ dla **każdego** $y$.
- Wniosek. Zatem $x^*$ jest minimum globalnym. To dlatego w zadaniach wypukłych wystarczy rozwiązać równanie $\nabla f=0$ — nie trzeba sprawdzać warunków drugiego rzędu ani porównywać minimów. $\;$
Podsumowanie
Wypukłość okazała się strukturą, która upraszcza optymalizację do granic możliwości. Zaczęliśmy od zbiorów wypukłych (zamkniętych na odcinki i na przekroje), przeszliśmy do funkcji wypukłych — scharakteryzowanych równoważnie przez cięciwę, epigraf, położenie nad styczną ($f'$ rosnące) oraz znak drugiej pochodnej — i wyprowadziliśmy nierówność Jensena, filar nierówności statystycznych. Quasi-wypukłość pokazała, że dla samej optymalizacji liczą się wypukłe poziomice. Kulminacją są dwa twierdzenia: dla funkcji wypukłej minimum lokalne jest globalne, a punkt stacjonarny jest minimum globalnym — dzięki czemu programowanie liniowe rozwiązujemy po wierzchołkach, a estymator MNK wyznaczamy z równań normalnych z pewnością globalności. W następnym rozdziale przejdziemy od różniczkowania do jego odwrotności — całki Riemanna.
- S. Boyd, L. Vandenberghe, Convex Optimization
- R. T. Rockafellar, Convex Analysis
- R. Sundaram, A First Course in Optimization Theory
- Python:
cvxpy— modelowanie i rozwiązywanie zadań wypukłych - Python:
numpy.linalg.eigvalsh(H)— sprawdzenie określoności hesjanu - R:
quadprog,CVXR— programowanie kwadratowe i wypukłe