Jak trudne jest numeryczne całkowanie
Transkrypt
Jak trudne jest numeryczne całkowanie
Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Leszek Plaskota Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki [email protected] Horyzonty 2014 17-03-2014 Będlewo Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Zadania numeryczne - przykłady Rozwiązywanie układów równań liniowych: dla danych A ∈ Rn,n , detA 6= 0, ~b ∈ Rn , obliczyć A−1~b Interpolacja wielomianowa: dla danych wartości f (tj ) funkcji f : R → R, 0 ¬ j ¬ n, obliczyć współczynniki a0 , . . . , an rozwinięcia w bazie P p0 , . . . , pn wielomianu w = ni=0 aj pj , takiego że w (tj ) = f (tj ), 0¬j ¬n Całkowanie funkcji: dla danej funkcji f : D → R obliczyć (przybliżyć) całkę R D f (x) dx na podstawie wartości f (tj ), 1 ¬ j ¬ n ··· Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Zadania numeryczne - schemat ogólny Chcemy aproksymować wartości S(f ) odwzorowania S :F →G (zadanie) gdzie F przestrzeń liniowa (dane), G unormowana (wyniki) Schemat aproksymacji: f 7→ N(f ) 7→ ϕ N(f ) N : F →Y (informacja) ϕ : Y →G (algorytm) S ∼ ϕ◦N Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Błąd algorytmu (przypadek najgorszy) Błąd algorytmu ϕ korzystającego z informacji N, na klasie E ⊆ F : e wor (ϕ, N) := sup kS(f ) − ϕ(Nf ))kG f ∈E Algorytm ϕ∗ jest optymalny dla N gdy e wor (ϕ∗ , N) = inf e wor (ϕ, N) ϕ Twierdzenie (Promień informacji) sup rad S(E ∩ N −1 y ) r wor (N) := inf e wor (ϕ, N) = ϕ y ∈N(E ) gdzie rad(A) jest promieniem Czebyszewa zbioru A S(E ∩ N −1 y ) = {S(h) : h ∈ E , Nh = y } Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Optymalność algorytmów liniowych dla funkcjonałów Niech zadanie S : F → R będzie funkcjonałem liniowym, a N : F → Rn informacją liniową Twierdzenie (Smolak 1963) Jeśli klasa E ⊂ F jest wypukła i zbalansowana to dla informacji N istnieje algorytm liniowy ϕlin , który jest optymalny, e wor (ϕlin , N) = r wor (N) Wniosek: kwadratury numeryczne Qn (f ) = ni=1 ai f (ti ) korzystające z wartości funkcji są optymalne o ile klasa funkcji podcałkowych jest wypukła i zbalansowana P Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Dowód Tw. Smolaka Lemat r wor (N) = sup{|Sh| : h ∈ E ∩ kerN} = rad S(E ∩ kerN) Dowód (lematu). Dla dowolnego y ∈ N(E ) mamy 1 rad S(E ∩ N −1 y ) = diam S(E ∩ N −1 y ) 2 f − f f1 − f2 1 2 : f1 , f2 ∈ E , N =0 = sup S 2 2 ¬ sup{|Sh| : h ∈ E , Nh = 0} = rad(S(E ∩ kerN)) Z drugiej strony, r wor (N) rad(S(E ∩ kerN)). 2 Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Dowód Tw. Smolaka, c.d. Niech r := r wor (N) > 0, A = {(Nf , Sf ) : f ∈ E } ⊂ Rn+1 A jest wypukły i zbalansowany. Przy (upraszczających) założeniach, że jest też pochłaniający i ograniczony, funkcjonał Minkowskiego kuk := inf{t > 0 : u/t ∈ A} definiuje normę w Rn+1 . Zdefiniujmy na P = {(0, g ) : g ∈ R} funkcjonał ξ1 (0, g ) = g /r Ponieważ k(0, g )k = |g |/r to |ξ1 (0, g )| ¬ k(0, g )k. Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Dowód Tw. Smolaka, c.d. ξ1 można teraz rozszerzyć (Tw. Hahna-Banacha!) do funkcjonału ξ2 na Rn+1 z zachowaniem normy, tzn. (i) ξ2 (x) = ξ1 (x) dla x = (0, g ), g ∈ R (ii) |ξ2 (x)| ¬ 1 dla x ∈ Rn+1 Stąd g |ξ2 (y , g )| = |ξ2 (0, g ) + ξ2 (y , 0)| = + ξ2 (y , 0) ¬ 1 r Przyjmując y = Nf , g = Sf , ϕ(y ) = −r ξ2 (y , 0) dostajemy |Sf − ϕ(Nf )| ¬ r . 2 Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Adaptacja nie pomaga Informacja adaptacyjna y = N ada (f ) y1 = f (x1 ) y2 = f (x2 (y1 )) ··· yn = f (xn (y1 , y2 , . . . , yn−1 )) tzn. wybór xi zależy od wartości y1 , . . . , yi−1 z poprzednich kroków Dla N ada definiujemy informację nieadaptacyjną N non (f ) = [f (x1 ), f (x2 (0)), . . . , f (xn (0, . . . , 0))] | {z } n−1 Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Adaptacja nie pomaga, c.d. Twierdzenie (Bachwałow 1971) r wor (N non ) ¬ r wor (N ada ) Dowód. r wor (N ada ) = sup rad({Sf : f ∈ E , N ada (f ) = y }) y ∈N ada (E ) rad({Sh : h ∈ E , N ada (h) = 0}) = rad({Sh : h ∈ E , N non (h) = 0}) = r wor (N non ). Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) 2 Instytut Matematyki Stosowanej i Mechaniki Całkowanie funkcji lipschitzowskich Zadanie: Z Sd (f ) = f (x) dx, f ∈E [0,1]d E = {f : [0, 1]d → R : kf kF ¬ 1} kf kF = max sup |f (x)|, x∈[0,1]d sup x,y ∈[0,1]d |f (x) − f (y )| kx − y k∞ ! Informacja: Nn (f ) = [f (t1 ), f (t2 ), . . . , f (tn )], tj ∈ [0, 1]d ε-złożoność zadania: nwor (ε, d) = min{n : ∃Nn r wor (Nn ) ¬ ε} Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Całkowanie funkcji lipschitzowskich, c.d. Twierdzenie (Sucharew 1979) Jeśli ε = 1/((2 + 2/d)m) dla pewnej m to n wor 1 (ε, d) = (1 + 1/d)d 1 2ε d 1 + o(1) 1 = e 2ε d Optymalną kwadraturą jest złożona kwadratura trapezów oparta na siatce jednorodnej. Jeśli, np. ε = 0.05 ale d = 20 to nwor (ε, d) 1020 =⇒ przekleństwo wymiaru Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Podatność i przekleństwo wymiaru Sd : Fd → Gd , d = 1, 2, 3, . . . Definicja Zadanie Sd jest podatne wielomianowo gdy istnieją C , p, q, że nwor (ε, d) ¬ C d q ε−p ∀d ∀ε ∈ (0, 1) Definicja Zadanie Sd podlega przekleństwu wymiaru gdy istnieje α > 0, że nwor (ε, d) (1 + α)d dla prawie wszystkich d Wniosek: całkowanie funkcji lipschitzowskich podlega przekleństwu wymiaru Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Całkowanie funkcji r -gładkich ) ( F = Fd,r = α d f : [0, 1] → R : kf kd,r := max max |D f (x)| ¬ 1 |α|¬r x∈[0,1]d Twierdzenie (Bachwałow 1959) n wor d/r (ε, d) = cr ,d 1 ε Wniosek: Całkowanie funkcji r -gładkich nie jest podatne wielomianowo Czy występuje przekleństwo wymiaru? TAK! =⇒ Hinrichs, Novak, Ullrich, Woźniakowski (2013) Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Algorytmy randomizacyjne (Monte Carlo) Informacja i algorytm: (N, ϕ) = {(Nω , ϕω )} ω - zmienna losowa Błąd algorytmu randomizacyjnego: e rand (N, ϕ) = sup f ∈E q Eω |Sd (f ) − ϕω (Nω f )|2 Przykład: (klasyczne Monte Carlo) MCn (f ) = n 1 X f (tj ) n j=1 tj - niezależne zmienne losowe z rozkładu jednostajnego na [0, 1]d Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Algorytmy randomizacyjne (Monte Carlo), c.d. W klasie Fd,r mamy e rand (MCn ) = n−1/2 Rzeczywiście, oznaczając X = MCn (f ) mamy E(X ) = Sd (f ), (e rand (MCn ))2 = E(X − E(X ))2 = E(X 2 ) − E2 (X ) E n 1X f (ti ) n i=1 = X n X 1 2 E f (t ) + 2 f (t )f (t ) i i j n2 i=1 i<j = n−1 1 Sd (f 2 ) + (Sd (f ))2 n n 2 Sd (f 2 ) − (Sd (f ))2 1 E(X ) − E (X ) = ¬ n n 2 2 Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Z [0,1]d f 2 (t) dt ¬ 1 n Instytut Matematyki Stosowanej i Mechaniki Algorytmy randomizacyjne (Monte Carlo), c.d. Powyższe implikuje silną wielomianową podatność nrand (ε, d) ¬ ε−2 przy czym wykładnik 2 jest optymalny Twierdzenie (Bachwałow 1959) n rand 2/(1+2r /d) (ε, d) = cr ,d 1 ε Algorytm: g n (f ) = S (An f ) + MCn (f − An f ) MC d gdzie An f jest kawałkami wielomianową aproksymacją funkcji f Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Dyskrepancja i quasi-Monte Carlo Definicja (Dyskrepancja) n 1X disc(t1 , . . . , tn ) = sup Vol([0, x)) − 1[0,x) (ti ) n i=1 x∈[0,1]d Rozpatrujemy algorytmy postaci QMCn (f ) = n 1X f (tj ) n j=1 gdzie t1 , . . . , tn są wybrane deterministycznie, dla klasy E = {f : [0, 1]d → R : f (. . . , 1, . . .) = 0, kf kd,∗ ¬ 1 } ∂d f kf kd,∗ = sup (x) x∈[0,1]d ∂x1 . . . ∂xd Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Dyskrepancja i quasi-Monte Carlo, c.d. Twierdzenie (Zaremba-Koksma-Hlavka) e wor (QMCn ) = disc(t1 , . . . , tn ) Najlepsze konstrukcje punktów ti dają disc(t1 , . . . , tn ) ¬ cd lnd−1 n n Twierdzenie (Heinrich, Novak, Wasilkowski, Woźniakowski 2001) Istnieją punkty ti∗ , takie że disc(t1∗ , . . . , tn∗ ) ¬ C d 1/2 n−1/2 To daje podatność wielomianową Dowód jest niekonstruktywny(!) Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki Bibliografia (IBC) 1 2 3 4 5 A. Hinrichs, E. Novak, M. Ullrich, H. Woźniakowski, The curse of dimensionality for numerical integration of smooth functions, przyjęta do Math. Comp. 2013 E. Novak, H. Woźniakowski, Tractability of Multivariate Problems, Vol. I, II, III, EMS Tracts in Mathematics 6 2008, 12 2010, 18 2012 L. Plaskota, Noisy Information and Computational Complexity, Cambridge Univ. Press, Cambridge, 1996 K. Ritter, Average Case Analysis of Numerical Problems, Lecture Notes in Math. 1733, Springer-Verlag, Berlin, 2000 J.F. Traub, G.W. Wasilkowski, H. Woźniakowski, Information-Based Complexity, Academic Press, New York, 1988 Leszek Plaskota Jak trudne jest numeryczne całkowanie (O złożoności zadań ciągłych) Instytut Matematyki Stosowanej i Mechaniki