
Proces Wienera (ruch Browna) – proces stochastyczny z czasem ciągłym nazwany dla uhonorowania osiągnięć Norberta Wienera. Jest też często nazywany ruchem Browna, gdyż jest modelem matematycznym procesu fizycznego o tej nazwie, który po raz pierwszy zaobserwował botanik Robert Brown. Proces Wienera jest najbardziej znanym przykładem procesu gaussowskiego, a ponadto jest szczególnym przypadkiem ogólniejszego procesu Lévy’ego. Proces Wienera nierzadko opisuje zjawiska występujące w ekonomii, finansach czy fizyce.
W matematyce, badania nad procesem Wienera zapoczątkowały rozwój teorii martyngałów z czasem ciągłym. Proces odgrywa kluczową rolę w badaniach bardziej skomplikowanych procesów, np. procesów będących rozwiązaniami stochastycznych równań różniczkowych jak procesy dyfuzji. W matematyce stosowanej procesu Wienera używa się m.in. do wyznaczenia całki stochastycznej z tzw. białego szumu oraz do modelowania innych szumów (zob. szum czerwony).
W fizyce proces Wienera służy do modelowania ruchów cząsteczek w zawiesistej cieczy oraz różnych procesów dyfuzyjnych (zob. równanie Fokkera-Plancka oraz równanie Langevina). Rozwiązanie równania Schrödingera wyraża się poprzez proces Wienera (zob. wzór Feynmana-Kaca). W finansach, procesu Wienera używa się do wyznaczenia modelu Blacka-Scholesa wyceny opcji europejskich.
Proces stochastyczny na przestrzeni probabilistycznej nazywa się standardowym procesem Wienera, jeżeli spełnione są następujące warunki:
1. Warunek początkowy
2. Niezależne przyrosty
Dla dowolnych chwil przyrosty
są niezależnymi zmiennymi losowymi.
3. Stacjonarne przyrosty normalne
Przyrosty procesu Wienera określone dla dwóch dowolnych chwil , mają rozkład normalny o średniej i wariancji równej odległości czasowej rozważanych chwil , tj.
4. Ciągłość trajektorii
Trajektorie procesu są ciągłe prawie na pewno, tzn. istnieje taki zbiór że oraz dla każdego funkcja jest ciągła.
Uwagi:
(1) Niektórzy autorzy zakładają, że oraz że wszystkie trajektorie procesu Wienera są ciągłe.
(2) Funkcję nazywamy trajektorią procesu. Jest ona wyznaczona przez element
przestrzeni zdarzeń elementarnych .
(3) Zdefiniowany powyżej proces Wienera nazywa się standardowym. Rozważa się modyfikacje standardowego procesu Wienera poprzez zmianę punktu początkowego na inny niż zerowy oraz zmianę wariancji przyrostów , gdzie - dowolna stała dodatnia. Jeżeli np. proces Wienera opisuje proces dyfuzji, to zwiększenie wariancji będzie odpowiadać większej stałej dyfuzji opisywanego procesu.
Tw. 1 Proces Wienera jest procesem gaussowskim, tj. dla dowolnych chwil wektor losowy
ma (wielowymiarowy) rozkład normalny.
Nie wszystkie procesy gaussowskie są procesami Wienera. Warunki konieczne do tego określa poniższe twierdzenie.
Tw. 2 Proces gaussowski jest procesem Wienera wtedy i tylko wtedy, gdy
By udowodnić, że proces gaussowski spełniający warunki a.-c. jest procesem Wienera należy zauważyć, że tj. p.n., co dowodzi warunku 1. Następnie, dla zmienna losowa ma rozkład normalny ze średnią 0 i wariancją
co dowodzi warunku 3. By wykazać warunek 2., z gaussowskości rozkładu wynika, że dla wszelkich zmienne
są niezależne wtedy i tylko wtedy, gdy są nieskorelowane (tj. kowariancja każdej ich pary wynosi 0). Mamy jednak dla
oraz
co kończy dowód.
Tw. 3 Proces Wienera spełnia powyższe warunki a.-c.
Rzeczywiście, jeżeli jest procesem Wienera, to.
z uwagi na to, że p.n. (warunek 1.) oraz zmienna ma rozkład normalny (warunek 3.). Z niezależności rozkładów, tj. warunku 2., wynika, że dla zachodzi
Proces Wienera można scharakteryzować poprzez stacjonarność przyrostów i skończoność czwartych momentów, o czym mówi poniższe twierdzenie.
Tw. 4 Proces stochastyczny jest procesem Wienera wtedy i tylko wtedy, gdy spełnia warunki 1., 2. i 4. podane w definicji procesu Wienera oraz
Proces Wienera jest jednym z najlepiej zbadanych procesów stochastycznych. Oto niektóre z jego własności:
Niech będzie procesem Wienera. Wówczas każdy ze zdefiniowanych niżej procesów jest również procesem Wienera

Nie jest rzeczą oczywistą, że istnieje proces spełniający warunki podane w definicji. Istnieje kilka dowodów tego faktu. Przedstawiony poniżej szkic dowodu najbardziej odpowiada intuicyjnemu rozumieniu procesu jako modelu ruchu Browna. Niech dana będzie cząstka poruszającą się w jednym wymiarze. W każdej jednostce czasu cząstka przemieszcza się o jednostkę odległości albo w lewo albo w prawo z prawdopodobieństwem 1/2. Kierunek poruszania nie zależy od poprzedniego przebiegu ruchu. Odpowiada to sytuacji patrzenia na cząsteczkę w wielkim zbliżeniu i przy zwolnionym czasie. Zakładając, że skoki zachodzą co coraz krótsze skoki czasu i zmniejszając odpowiednio wielkość skoku przestrzennego uzyskujemy obraz cząstki wykonującej ruch coraz bardziej chaotyczny i coraz bardziej gęsty na zadanym odcinku czasu T. Proces Wienera jest „procesem granicznym” dla błądzenia losowego, przy zmniejszaniu skali czasowej i przestrzennej do zera. W sposób ścisły powyższe rozumowanie ujmuje twierdzenie Donskera, które dowodzi, że ruch graniczny ma skończoną wariancję (tzn. jest zbieżny).
W symulacjach numerycznych proces Wienera można aproksymować za pomocą dyskretnych przyrostów o rozkładzie normalnym, zgodnie z definicją tego procesu. Czas symulacji dzieli się na równych kroków o długościach .
W języku Python (z użyciem biblioteki NumPy) konstrukcja pojedynczej trajektorii może wyglądać następująco:
T = 1.0
n = 50000
dt = T / n
# przyrosty N(0, dt)
dW = np.random.normal(0, np.sqrt(dt), size=n)
# proces Wienera
W = np.concatenate(([0], np.cumsum(dW)))
W 5 linii kodu definiuje się przyrosty procesu jako zmienne losowe o rozkładzie normalnym
gdzie oznacza odchylenie standardowe rozkładu normalnego, co odpowiada własnościom procesu Wienera, iż wariancja na przedziale długości wynosi . Instrukcja ta tworzy wektor .
W 8 linii kodu tworzy się trajektorię procesu poprzez sumowanie kolejnych przyrostów (przesunięć losowych) , tj. (a) oblicza się wektor jako sumę skumulowaną z wektora przyrostów za pomocą instrukcji np.cumsum(dW) (b) dodaje się na początek tego wektora wektor położenia początkowego za pomocą instrukcji np.concatenate. Odpowiada to obliczeniom:
Wektor stanowi pojedynczą, dyskretną trajektorię ruchu Browna w przedziale czasu , złożoną z losowych położeń cząstki w chwilach czasu . Trajektoria ta stanowi aproksymację trajektorii Wienera , określonej dla ciągłego czasu
Np. jeżeli dW = np.array([0.12, -0.08, 0.25, ...])
to
np.cumsum(dW) → [0.12, 0.04, 0.29, ...]
np.concatenate(([0], ...)) dodaje wartość początkową W0 = 0→ [0, 0.12, 0.04, 0.29, ...]
Proces Wienera jak każdy proces stochastyczny, wyznacza miarę na przestrzeni z σ-ciałem zbiorów cylindrycznych poprzez warunek
W przypadku, gdy wszystkie trajektorie procesu Wienera są ciągłe (co zawsze można osiągnąć dokonując modyfikacji procesu) miarę można wyznaczyć ze wzoru
gdzie jest dowolnym borelowskim podzbiorem przestrzeni funkcji ciągłych na z topologią zbieżności niemal jednostajnej (tj. zbieżności jednostajnej na zbiorach zwartych). Stąd o procesie Wienera można myśleć jako o pewnym rozkładzie probabilistycznym na przestrzeni .
Standardowy proces Wienera opisany powyżej opisuje błądzenie cząstki, której ruch ograniczony jest do prostej. Proces -wymiarowy definiuje się jako proces
gdzie to niezależne od siebie jednowymiarowe procesy Wienera. W przypadku jednowymiarowym prawie każda trajektoria przechodzi przez każdy punkt prostej. Dla procesu dwuwymiarowego prawie każda trajektoria jest gęsta na płaszczyźnie, natomiast dla procesów w przestrzeniach o większej liczbie wymiarów, każda trajektoria jest zbiorem nigdziegęstym.