XVII-wieczne metody w optymalizacji XXI wieku cykl wykładów Okno na podwórze Maria Michalska 19 stycznia 2012
Zarys 1 Wstęp 2 SOS optymalizacja 3 Wielomiany ograniczone 4 XXI wiek - SDP 5 XVII wiek - Newton 6 Koniec
Jak zazębiają się idee Newtona ze współczesnymi problemami optymalizacji? przed 1676 metoda Newtona wyznaczania rozwiązań równań algebraicznych vs. od 1991 programowanie SDP (semidefinite programming) z użyciem macierzy dodatnio określonych
Optymalizacja z ograniczeniami Weźmy zbiór S oraz funkcję F : S R. Centralny problem optymalizacji to problem znalezienia wartości inf S F (znalezienie sup S F jest problemem równoważnym). Kres dolny można zapisać jako inf S F = sup{a R 0 F a na S}. Zbiór S to zbiór zadanych ograniczeń.
Przykład Na przykład, jeśli F to funkcja spokoju względem zachowania grupy 2 dzieci, to zbiór S to 2-wymiarowy zbiór zdolności poszczególnych dzieci do wyprowadzenia z równowagi (wraz z korelacjami, w jakie zdolności tychże dzieci mogą wchodzić). Warto wiedzieć jakie wartości graniczne może przyjąć F! Powiedzmy, że funkcja zdolności to (1 XY ) 2 + X 2, dzieci dziś są względnie grzeczne, zaś opiekuna denerwuje tylko dziecko X (jak widać z funkcji, dziecko X jest generalnie bardziej niegrzeczne). Zatem musimy policzyć maksymalną wartość funkcji F = X na zbiorze S = {(x, y) R 2 (1 xy) 2 + x 2 1}. Jak można policzyć wartość maksymalna X na S to 2.
Wielomiany dwóch zmiennych Ograniczymy się dziś do optymalizacji wielomianów na zbiorach zadanych przez nierówności wielomianowe, do tego tylko w przypadku zależności od dwóch parametrów.
Wielomiany dwóch zmiennych Ograniczymy się dziś do optymalizacji wielomianów na zbiorach zadanych przez nierówności wielomianowe, do tego tylko w przypadku zależności od dwóch parametrów. Wielomianem rzeczywistym dwóch zmiennych X i Y nazywamy funkcję postaci f = a ij X i Y j, gdzie a ij R oraz zbiór jest skończony. suppf = {(i, j) N 0 a ij 0}
Alternatywne rozwiazanie XVII problemu Hilberta Jeśli wielomian jest skończoną sumą kwadratów wielomianów mówimy, że wielomian jest sos (sum of squares). Przykład f = (1 XY ) 2 + X 2 jest sos. W 1991 roku K. Schmüdgen udowodnił, że dla zbiorów zwartych postaci S = {g 1 0,..., g s 0} każdy wielomian dodatni na S ma przedstawienie σ {0,1} s sos σ g σ, gdzie g σ to skrócony zapis iloczynu g σ 1 1 g σs s.
Przykład Wielomian f = X jest dodatni na kuli B = {(x 2) 2 + y 2 1}, więc istnieją sumy kwadratów takie, że f = sos + sos ((X 2) 2 + Y 2 ).
Przykład Wielomian f = X jest dodatni na kuli B = {(x 2) 2 + y 2 1}, więc istnieją sumy kwadratów takie, że f = sos + sos ((X 2) 2 + Y 2 ). Twierdzenie Schmüdgena to alternatywne rozwiazanie XVII problemu Hilberta. Skojarzenie go z programowaniem SDP otworzyło nowe perspektywy w optymalizacji wielomianów. (Nawiasem mówiąc jest ono wnioskiem z rozwiązania problemu K-momentów dla zwartych zbiorów semialgebraicznych domkniętych.)
Zaświadczenie o nieujemności Od tej pory rozważamy zbiory postaci S = {g 1 0,... g s 0}. Zamiast badać inf S F = sup{a R F a 0 na S} można zająć się prostszym (numeryczne) problemem znalezienia inf F = sup{a R F a = sos σ {0,1} s sos σ g σ }. Warunek f = σ {0,1} s sos σg σ jest przykładem zaświadczenia o nieujemności wielomianu f na zbiorze S.
Wielomiany dodatnie bez zaświadczeń Podstawowe pytanie: Czy równość inf sos F = inf S F zachodzi? Z twierdzenia Schmüdgena dostajemy, że dla S zwartych TAK. Jeśli S NIE jest ZWARTY, to tak być nie musi. Przykład (Wielomian Motzkina) Niech S = R 2 oraz F = 1 + X 2 Y 2 (X 2 + Y 2 3). Mamy inf R 2 F = 0, ale inf sos F =.
Wersja twierdzenia Schm dgena dla zbiorów niezwartych Interesujące jest JAK można stwierdzić czy wielomian ma zaświadczenie o nieujemności na zbiorze nieograniczonym!
Wersja twierdzenia Schm dgena dla zbiorów niezwartych Interesujące jest JAK można stwierdzić czy wielomian ma zaświadczenie o nieujemności na zbiorze nieograniczonym! Twierdzenie Przy pewnych założeniach dla zbioru S mamy, że jeśli 1 wielomiany g 1,..., g s opisujące S są ograniczone na S, 2 wielomian f jest ograniczony na S, to z dodatniości f wynika, że f = σ {0,1} s sos σg σ.
Wersja twierdzenia Schm dgena dla zbiorów niezwartych Interesujące jest JAK można stwierdzić czy wielomian ma zaświadczenie o nieujemności na zbiorze nieograniczonym! Twierdzenie Przy pewnych założeniach dla zbioru S mamy, że jeśli 1 wielomiany g 1,..., g s opisujące S są ograniczone na S, 2 wielomian f jest ograniczony na S, to z dodatniości f wynika, że f = σ {0,1} s sos σg σ. Zatem jeśli F jest ograniczony na S, to inf sos F = inf S F.
Przykład Niech S = {(x, y, z) R 3 x x 2 + y 2 + x 2 z 2 }. Dla dowolnego wielomianu F R[X, Y, XZ, YZ] mamy inf sos F = inf S F.
Wielomiany ograniczone Oznaczmy A(S) = {f R[X, Y ] f jest ograniczony na S}. Jest to algebra nad R. Podstawowe własności 1 jeśli M S, to A(S) A(M), 2 A(S M) = A(S) A(M) 3 A(S) = R[X, Y ] wtedy i tylko wtedy, gdy S jest ograniczony.
Wielomiany ograniczone Oznaczmy A(S) = {f R[X, Y ] f jest ograniczony na S}. Jest to algebra nad R. Podstawowe własności 1 jeśli M S, to A(S) A(M), 2 A(S M) = A(S) A(M) 3 A(S) = R[X, Y ] wtedy i tylko wtedy, gdy S jest ograniczony. Należy zwrócić uwagę, że jednomian wiodący nie ma nic wspólnego z ograniczonością wielomianu. Na przykład wielomian f = X 100 Y 100 + X jest nieograniczony na zbiorze S = {xy 1}, mimo że jego jednomian wiodący jest ograniczony na tym zbiorze.
Procedura sprawdzania czy wielomian jest ograniczony na S Jak sprawdzić czy f jest ograniczony na S?
Procedura sprawdzania czy wielomian jest ograniczony na S Jak sprawdzić czy f jest ograniczony na S? 1 Rozkładamy S na macki.
Procedura sprawdzania czy wielomian jest ograniczony na S Jak sprawdzić czy f jest ograniczony na S? 1 Rozkładamy S na macki. 2 Dla każdej macki M wyznaczamy zbiór skończony Z taki, że A(M) = R[X, Y ] R[Z].
Procedura sprawdzania czy wielomian jest ograniczony na S Jak sprawdzić czy f jest ograniczony na S? 1 Rozkładamy S na macki. 2 Dla każdej macki M wyznaczamy zbiór skończony Z taki, że A(M) = R[X, Y ] R[Z]. 3 Symbolicznie sprawdzamy czy f A(S).
Pierwszy krok procedury - macki Macka M to zbiór (z dokładnością do liniowej zamiany zmiennych) postaci M = {(x, y) R 2 β(y) x γ(y), y R} dla R > 0 i zbieżnych szeregów Puiseux w nieskończoności β i γ.
Pierwszy krok procedury - macki Macka M to zbiór (z dokładnością do liniowej zamiany zmiennych) postaci M = {(x, y) R 2 β(y) x γ(y), y R} dla R > 0 i zbieżnych szeregów Puiseux w nieskończoności β i γ. Szereg Puiseux w nieskończoności to dowolny szereg postaci ( ) 1 k/q a k, Y k=p gdzie a k R, q N oraz p Z.
Pierwszy krok procedury - macki Macka M to zbiór (z dokładnością do liniowej zamiany zmiennych) postaci M = {(x, y) R 2 β(y) x γ(y), y R} dla R > 0 i zbieżnych szeregów Puiseux w nieskończoności β i γ. Szereg Puiseux w nieskończoności to dowolny szereg postaci ( ) 1 k/q a k, Y k=p gdzie a k R, q N oraz p Z. Jeśli a p 0, to p/q jest rzędem szeregu w nieskończoności.
Pierwszy krok procedury - macki Każdy zbiór S ma rozkład na macki tj. S = K M 1 M l, gdzie M i to macki, zaś K jest zwarty. Wtedy A(S) = A(M i ).
Pierwszy krok procedury - macki Każdy zbiór S ma rozkład na macki tj. S = K M 1 M l, gdzie M i to macki, zaś K jest zwarty. Wtedy A(S) = A(M i ). Zauważmy, że brzegi macek są rozwiązaniami w nieskończoności równania wielomianowego gdzie g i opisują zbiór S. g 1 g s = 0,
Drugi krok procedury - zbiór generujący Dla macki M = {β(y) x γ(y), y R} takiej, że β γ liczymy rozwinięcia β oraz γ aż do wyrazu, na którym się różnią. Kładziemy θ równe wszystkim początkowym wyrazom wspólnym i α = ord (β γ). (Oczywiście, jeśli β i γ nie mają wyrazów wspólnych, to kładziemy θ = 0).
Drugi krok procedury - zbiór generujący Dla macki M = {β(y) x γ(y), y R} takiej, że β γ liczymy rozwinięcia β oraz γ aż do wyrazu, na którym się różnią. Kładziemy θ równe wszystkim początkowym wyrazom wspólnym i α = ord (β γ). (Oczywiście, jeśli β i γ nie mają wyrazów wspólnych, to kładziemy θ = 0). Wtedy Twierdzenie Dla macki M zachodzi 1 A(M) = R[X, Y ] R[ Y 1/q, (X θ(y ))i Y d d iα].
Trzeci krok procedury - symboliczna komputacja Weźmy dowolny wielomian f. Skoro θ ma skończone rozwinięcie, to poniższe symboliczne operacje są skończone f = a ij X i Y j = a ij (X θ(y ) + θ(y )) i Y j = = c ij (X θ(y )) i Y j/q, gdzie w ostatniej linii j mogą przyjmować wartości ujemne. Teraz sprawdzamy czy dla dowolnego c ij 0 mamy j iα. Jeśli tak, to f jest ograniczony na M i przechodzimy do badania kolejnej macki S. Jeśli nie, to f nie jest ograniczony na S.
Przykład Przykład Niech S = {(x, y) R 2 x 2 x 4 (1 + y 2 ) 2 0}. Mamy, że S to suma zbioru zwartego oraz zbioru { M = ( 1) k+1 1 } y 2k x ( 1) k 1 y 2k, y 2 4. k=1 k=1
Przykład Przykład (ciąg dalszy) Po zastosowaniu procedur dostajemy, że dla dowolnego wielomianu F R[X, XY, XY 2 ] zachodzi inf sos F = inf S F.
Optymalizacja za pomocą SDP Weźmy wielomian F i załóżmy, że jest stopnia d. Oznaczmy przez R d [X, Y ] wielomiany stopnia niewiększego niż d. Problemem dualnym do problemu znalezienia jest problem znalezienia inf F = sup{a F a jest sos} sos F = inf{l(f ) L Ξ d }, gdzie Ξ d to zbiór funkcji liniowych L : R[X, Y ] d R takich, że L(1) = 1 oraz L(sos) 0.
Optymalizacja za pomocą SDP Weźmy wielomian F i załóżmy, że jest stopnia d. Oznaczmy przez R d [X, Y ] wielomiany stopnia niewiększego niż d. Problemem dualnym do problemu znalezienia jest problem znalezienia inf F = sup{a F a jest sos} sos F = inf{l(f ) L Ξ d }, gdzie Ξ d to zbiór funkcji liniowych L : R[X, Y ] d R takich, że L(1) = 1 oraz L(sos) 0. Każdy L jest wyznaczony przez swoje momenty tj. ciąg s ij = L(X i Y j ). Macierz momentów [ si+k,j+l ] jest (pół)dodatnio określona. i+j,k+l d/2
Optymalizacja za pomocą SDP Przypomnę, że rzeczywista macierz A jest (pół)dodatnio określona, gdy jest symetryczna oraz spełnia jeden z równoważnych warunków 1 x T Ax 0 dla x R n 2 wszystkie wartości własne A są nieujemne 3 A jest kombinacją liniową z nieujemnymi współczynnikami macierzy postaci x T x.
Optymalizacja za pomocą SDP Przypomnę, że rzeczywista macierz A jest (pół)dodatnio określona, gdy jest symetryczna oraz spełnia jeden z równoważnych warunków 1 x T Ax 0 dla x R n 2 wszystkie wartości własne A są nieujemne 3 A jest kombinacją liniową z nieujemnymi współczynnikami macierzy postaci x T x. Aby obliczyć F należy zminimalizować i+j d c ijs ij pod warunkiem, że s 0 = 1 oraz [ s i+k,j+l jest dodatnio określona. ]i+j,k+l d/2 Problemy tej kategorii mają czas rozwiązania wielomianowy. Ponadto, F = inf sos F.
Diagram Newtona i twierdzenie Puiseux Poniższe twierdzenie to rozkład wielomianu dwóch zmiennych (środek w zerze). Metoda wyznaczania rozwiązań znana była Newtonowi przed 1676. Twierdzenie (Twierdzenie Puiseux) Weźmy wielomian f C[X, Y ]. Można go zapisać jako f = a 0 (Y ) + a 1 (Y )X + a d (Y )X d, gdzie a d 0. Wtedy można rozłożyć f na iloczyn gdzie β i są szeregami Puiseux. f = a d (Y )Π d i=1(x β i (Y )), Udowodnić to twierdzenie można przez skończoną konstrukcję kolejnych diagramów Newotna.
Twierdzenie Puiseux w nieskończoności Zwróćmy uwagę, że aby twierdzenie Puiseux zastosować w nieskończoności wystarczy 1 rozważać ujednorodniony f w przestrzeni rzutowej 2 zmienić układ współrzędnych na układ ośrodku w pewnym punkcie w nieskończoności 3 wyłączyć wszystkie ujemne potęgi przed nawias tj. f = Z ordf f 1 4 zastosować konstrukcję Newtona 5 wrócić do pierwotnej części afinicznej Powyższe zadania wykonuje program SINGULAR lub CoCoa.
Twierdzenie Puiseux w nieskończoności Zwróćmy uwagę, że aby twierdzenie Puiseux zastosować w nieskończoności wystarczy 1 rozważać ujednorodniony f w przestrzeni rzutowej 2 zmienić układ współrzędnych na układ ośrodku w pewnym punkcie w nieskończoności 3 wyłączyć wszystkie ujemne potęgi przed nawias tj. f = Z ordf f 1 4 zastosować konstrukcję Newtona 5 wrócić do pierwotnej części afinicznej Powyższe zadania wykonuje program SINGULAR lub CoCoa. Ponadto geometria semialgebraiczna daje sporo algorytmicznych, skończonych narzędzi np. do zliczania ilości rozwiązań rzeczywistych, liczby macek etc. (Twierdzenie Tarskiego, Sturma...)
Otwarte problemy Pozostają otwarte problemy 1 Znaleźć procedurę sprawdzania ograniczności dla jak najszerszej klasy zbiorów w wyższych wymiarach. 2 Rozszerzyć twierdzenia o inf sos F = inf S F na funkcje ograniczone na S przez potęgę normy. 3 Zautomatyzować wyznaczanie macek (wydaje się łatwe). i tym podobne...
Dziękuję za uwagę!
Wybrane pozycje Książki: S. Basu, R. Pollack, M.-F. Roy, Algorithms in Real Algebraic Geometry, Springer-Verlag, Berlin, 2008; M. Dumnicki, T. Winiarski, Bazy Gröbnera. Efektywne metody w układach równań wielomianowych, Wydawnictwo Naukowe Akademii Pedagogicznej, Kraków, 2007; M. Marshall, Positive Polynomials and Sums of Squares, American Mathematical Society, Providence, 2008; R. J. Walker, Algebraic curves, Springer-Verlag, Berlin, 1950; Artykuły: S. Basu, M.-F. Roy, Bounding the radii of balls meeting every connected component of semi-algebraic sets, J. Symbolic Comput. 45 (2010), no. 12, 1270 1279; S. Kuhlmann, M. Marshall, Positivity, sums of squares and the multi-dimentional moment problem, Trans. Amer. Math. Soc., vol. 354, no. 11, 4285-4301 (2002); J. B. Laserre, Global optimization with polynomials and the problem of moments, SIAM J. Optim. 11, (2001), no. 3, 796-817; K. Schmüdgen, The K-moment problem for semi-algebraic sets, Mathematische Annalen 289 (1991) 203-206; M. Schweighofer, Global optimization of polynomials using gradient tentacles and sums of squares, SIAM J. Optim. 17 (2006), no. 3, 920 942;