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