stochastic simulation
Főnév
stochastic simulation (tsz. stochastic simulations)
- (informatika) A sztokasztikus szimuláció (angolul stochastic simulation) olyan számítási módszer, amely figyelembe veszi a véletlenszerűséget és a bizonytalanságot a rendszerek modellezése során. Ellentétben a determinisztikus modellekkel, ahol egy adott bemeneti érték mindig ugyanazt az eredményt adja, a sztokasztikus szimulációk valószínűségi eloszlásokon és véletlenszámokon alapulnak.
1. Mi az a sztokasztikus szimuláció?
A sztokasztikus szimuláció célja, hogy valósághűen modellezzen összetett, bizonytalan vagy zajjal terhelt rendszereket. Ezek gyakran olyan rendszerek, ahol a jövőbeli állapotokat valószínűségi törvények határozzák meg, nem pedig egyértelmű szabályok.
Példák:
- Pénzügyi piacok: az árfolyamok ingadoznak, modellezhetők véletlen folyamatokkal.
- Biológiai folyamatok: pl. sejtnövekedés, génexpresszió.
- Ügyfélszolgálati rendszerek: pl. sorban állás, kiszolgálás ideje véletlenszerű.
- Gyártási rendszerek: géphibák, anyagellátási késések.
- Fizikai rendszerek: részecskék mozgása (Brown-mozgás), kvantummechanika.
2. Alapfogalmak
a) Véletlen változó
Olyan változó, amely különböző értékeket vehet fel valószínűségi törvény alapján (pl. dobókocka kimenetele).
b) Valószínűségi eloszlás
Megadja, hogy egy véletlen változó adott értékeihez milyen valószínűség tartozik (pl. normáleloszlás, binomiális eloszlás, Poisson-eloszlás).
c) Monte Carlo szimuláció
A legismertebb sztokasztikus szimulációs módszer, amely ismételt véletlenszerű mintavételezéssel közelíti a valószínűségi eloszlások eredményeit.
3. Módszertan lépésről lépésre
- A rendszer modelljének megalkotása – Milyen változók vannak? – Mik a bizonytalanság forrásai?
- Valószínűségi eloszlások hozzárendelése – Mely bemeneti paraméterek véletlenek? – Milyen eloszlással viselkednek?
- Véletlenszámok generálása – A megadott eloszlásokból számítógép véletlenszámokat generál (pl. normal, uniform, exponenciális).
- Szimuláció futtatása – A modellt sokszor lefuttatjuk különböző véletlenszerű bemenetekkel (tipikusan több ezer vagy milliószor).
- Eredmények elemzése – Átlag, szórás, konfidencia-intervallum, kvantilisek stb.
4. Egyszerű példa – érmefeldobás
Modellezzük egy érmefeldobás sorozatát:
#include <iostream>
#include <random>
int main() {
int dobasszam = 10000;
int fej = 0;
std::random_device rd;
std::mt19937 gen(rd());
std::bernoulli_distribution dobas(0.5); // 50% esély fejre
for (int i = 0; i < dobasszam; ++i) {
if (dobas(gen))
fej++;
}
std::cout << "Fejek aránya: " << (double)fej / dobasszam << std::endl;
return 0;
}
Ez a program statisztikai becslést ad arra, hogy milyen arányban várható a „fej” – sztokasztikus szimuláció révén.
5. Összetettebb alkalmazás: Monte Carlo szimuláció pénzügyekben
Tegyük fel, hogy egy befektetés éves hozama normáleloszlást követ:
- átlag = 5%, szórás = 10%.
Cél:
1000 szimuláció alapján becsülni az 5 év múlva várható befektetési értéket.
#include <iostream>
#include <random>
#include <cmath>
int main() {
const int szimulacios_szam = 1000;
const int ev = 5;
const double kezdo_ertek = 1000.0;
const double atlag = 0.05;
const double szoras = 0.10;
std::random_device rd;
std::mt19937 gen(rd());
std::normal_distribution<> normal(atlag, szoras);
double osszeg = 0;
for (int i = 0; i < szimulacios_szam; ++i) {
double ertek = kezdo_ertek;
for (int j = 0; j < ev; ++j) {
double hozam = normal(gen);
ertek *= (1 + hozam);
}
osszeg += ertek;
}
std::cout << "Várható érték 5 év múlva: " << osszeg / szimulacios_szam << " egység." << std::endl;
return 0;
}
6. Előnyök és hátrányok
✅ Előnyök:
- Reálisabb modellezés (nem determinisztikus)
- Komplex rendszerekhez is alkalmazható
- Nincs szükség zárt matematikai megoldásra
- Bármilyen valószínűségi eloszlás alkalmazható
❌ Hátrányok:
- Nagy számítási igény (több ezer/százezer futás)
- Eredmény változik minden futásnál
- Pontosság nő, de lassan (pl. 10× több futás → 3× kisebb hiba)
7. Sztokasztikus folyamatok
A sztokasztikus szimuláció során gyakran modellezünk időben változó véletlen jelenségeket, amelyeket sztokasztikus folyamatnak nevezünk.
Példák:
- Markov-láncok: az állapotváltás csak az aktuális állapottól függ.
- Brown-mozgás (Wiener-folyamat): alapja a pénzügyi opcióárazásnak (Black–Scholes-modell).
- Poisson-folyamat: ritka események, pl. telefonhívások, géphibák modellezése.
8. Tipikus alkalmazások
- Pénzügy: árfolyam-szimulációk, portfóliókockázat, opcióárazás
- Biológia: populációk növekedése, epidemiológia
- Gyártás: hibák, várakozási idők
- Közlekedés: járműáramlás, forgalom modellezése
- Távközlés: csomagvesztés, hálózati torlódás
- Robotika, mesterséges intelligencia: zajmodellezés, valószínűségi mozgástervezés
9. Szimuláció értelmezése
Az egyes futások eredményeit statisztikai módszerekkel értékeljük:
- Átlag
- Szórás
- Konfidenciaintervallum
- Eltérés referenciaértékektől
- Minimum, maximum, medián, kvantilisek
10. Összefoglalás
A sztokasztikus szimuláció kulcsfontosságú eszköz, ha a világ bizonytalanságait figyelembe akarjuk venni. Segít:
- a döntéstámogatásban
- a kockázatbecslésben
- a rendszerek viselkedésének előrejelzésében
A véletlen tényezők tudatos bevonásával realistább modellek készíthetők, mint a determinisztikus módszerekkel.
- stochastic simulation - Szótár.net (en-hu)
- stochastic simulation - Sztaki (en-hu)
- stochastic simulation - Merriam–Webster
- stochastic simulation - Cambridge
- stochastic simulation - WordNet
- stochastic simulation - Яндекс (en-ru)
- stochastic simulation - Google (en-hu)
- stochastic simulation - Wikidata
- stochastic simulation - Wikipédia (angol)