background image

 

Modele symulacyjne i symulacja komputerowa 

(Opracowane  na  podstawie:  Nowak,  M.,  Symulacja  komputerowa  w  problemach 
decyzyjnych, Katowice 2007) 
 
Symulacja  komputerowa  polega  na  skonstruowaniu  modelu  analizowanego  obiektu  lub 
procesu    (zjawiska) i przeprowadzaniu na nim eksperymentów z wykorzystaniem programu 
symulacyjnego 

Definiując  symulację  komputerową,  skorzystaliśmy  z  terminu  „model".  Pojęciem  to 

odnosi  się  do  pewnego  uproszczonego  obrazu  interesującego  nas  wycinka  rzeczywistości 
opisującego elementy, które uznajemy za interesujące, a pomijającego kwestie mniej istotne. 
Modelowanie jest szeroko stosowaną metodą analizy różnego rodzaju zjawisk i problemów. 
W  przypadku  symulacji  komputerowej  interesować  nas  będą  modele  matematyczne,  czyli 
takie,  które  zapisywane  są  w  postaci  zbioru  symboli,  relacji  matematycznych  oraz  zasad 
operowania nimi. 

Do rozwiązania problemu opisanego za pomocą modelu matematycznego wykorzystać 

można  zarówno  metody  analityczne  (algorytmy),  jak  i  numeryczne.  Pierwsze  z  nich  są 
procedurami,  które  stosowane  krok  po  kroku  prowadzą  do  uzyskania  rozwiązania 
analizowanego problemu. Przykładem tego typu metody jest algorytm simpleks pozwalający 
na  rozwiązanie  problemu,  którego  model  zapisany  jest  w  postaci  zadania  programowania 
liniowego.  Stosowanie  technik  analitycznych  wymaga  przyjęcia  założeo,  które  w  wielu 
wypadkach mogą być uznane za zbyt restrykcyjne. Ponadto wiele praktycznych problemów 
decyzyjnych  ma  strukturę  na  tyle  złożoną,  że  ich  rozwiązanie  metodami  analitycznymi  jest, 
przy obecnym stanie wiedzy, bardzo trudne lub wręcz niemożliwe. W takiej sytuacji jesteśmy 
zmuszeni do skorzystania z metod numerycznych, do których należą między innymi metody 
symulacyjne. 

Modele  symulacyjne  mają  charakter  modeli  opisowych,  czyli  takich,  które  opisują 

relacje zachodzące między poszczególnymi elementami analizowanego zjawiska i dostarczają 
informacji pozwalających na ocenę rozpatrywanych rozwiązao. Schemat modelu przedstawia 
rys.  1.  Na  wejście  modelu  składają  się  zmienne  decyzyjne  oraz  zmienne  stanu.  Pierwsze  z 
nich  to  wielkości,  których  wartości  określa  decydent.  Zmienne  stanu  opisują  natomiast 
parametry pozostające poza jego kontrolą. Dla określonych wartości zmiennych wejściowych 
model,  korzystając  ze  zdefiniowanych  przez  użytkownika  relacji,  wyznacza  wartości 
zmiennych wyjściowych pozwalających na ocenę jakości analizowanego rozwiązania. 

WEJ

ŚCIE 

WYJ

ŚCIE 

 

Rys. 1. Schemat modelu symulacyjnego 

Modele  matematyczne  mogą  mieć  charakter  statyczny  lub  dynamiczny.  Podczas  gdy 

pierwsze  nie  uwzględniają  zjawiska  upływu  czasu  lub  opisują  stan  systemu  w  określonym 
momencie  czasu,  w  przypadku  drugich  czas  odgrywa  rolę  zasadniczą.  Modele  dynamiczne 
opisują  powiązania  między  wartościami  zmiennych  w  różnych  momentach  czasu.  Część 
badaczy  ogranicza  zakres  pojęcia  „symulacja  komputerowa"  do  metod,  których  zadaniem 
jest  analiza  procesów,  a  więc  sekwencji  zdarzeo  pojawiających  się  w  określonym  odcinku 

background image

 

czasu.  W  niniejszej  pracy  termin  ten  rozumieć  będziemy  jednak  szerzej.  Symulację 
komputerową  wykorzystywać  zatem  będziemy  do  przeprowadzenia  eksperymentów 
zarówno na modelach statycznych, jak i dynamicznych. 

Charakter  zjawisk  opisywanych  modelem  oraz  potrzeby,  dla  których  model  jest 

konstruowany,  powodują,  że  model  może  mieć  charakter  deterministyczny,  stochastyczny 
lub  rozmyty.  W  pierwszym  wypadku  zakładamy,  że  wszystkie  parametry  modelu  zostały 
oszacowane w sposób precyzyjny, a powiązania między elementami modelu mają charakter 
jednoznacznych  relacji  matematycznych  i  logicznych.  Brakuje  zatem  miejsca  na  jakąkolwiek 
niepewność czy ryzyko. Przyjmujemy, że analizując określone rozwiązanie, jesteśmy w stanie 
określić w sposób ścisły efekt, do którego ono prowadzi. W wielu wypadkach założenie takie 
musi  być  uznane  za  zbyt  daleko  idące.  Otaczająca  nas  rzeczywistość  jest  bowiem  na  tyle 
bogata, że uwzględnienie wszystkich elementów wpływających na analizowane zjawisko nie 
jest  zwykle  możliwe.  W  takiej  sytuacji  skorzystać  możemy  z  modeli  stochastycznych,  czyli 
takich,  w  których  przynajmniej  część  powiązao  ma  charakter  losowy.  Innym  rozwiązaniem 
może  być  podjęcie  próby  konstrukcji  modelu  na  podstawie  teorii  zbiorów  rozmytych. 
Symulacja  komputerowa  wykorzystywana  jest  głównie  jako  narzędzie  analizy  modeli 
stochastycznych,  aczkolwiek  w  pewnych  szczególnych  sytuacjach  może  być  również 
stosowana  do  rozwiązywania  problemów  opisanych  modelami  deterministycznymi  lub 
rozmytymi.  W  niniejszej  pracy  ograniczamy  się  do  przedstawienia  symulacji  jako  metody 
wykorzystywanej do analizy zjawisk o charakterze losowym. Konstruowane przez nas modele 
będą miały zatem charakter stochastyczny. 

Zmienne  wykorzystywane  w  modelu  mogą  mieć  charakter  dyskretny  lub  ciągły. 

Rozróżnienie  to  ma  szczególne  znaczenie  w  modelach  dynamicznych,  zwłaszcza  w 
odniesieniu  do  zmiennej  opisującej  zjawisko  upływu  czasu.  Modele  dynamiczne  mogą  być 
więc  modelami  dyskretnymi  lub  ciągłymi.  W  pierwszym  wypadku  stan  analizowanego 
zjawiska  badany  jest  w  wyróżnionych  momentach  czasu,  w  drugim  wartości  zmiennych 
określane są w każdym momencie czasu. Wybór typu modelu zależy od rodzaju problemu, z 
jakim mamy do czynienia. 

Symulacja Monte Carlo 

Definiując  pojęcie  symulacji,  stwierdziliśmy,  że  polega  ona  na  przeprowadzaniu 

eksperymentów na modelu. W symulacji stochastycznej polega ono na wylosowaniu wartości 
tych  elementów  modelu,  które  stanowią  źródła  niepewności,  a  następnie  wyznaczeniu 
wartości zmiennych wyjściowych. Wyniki uzyskane w efekcie przeprowadzenia pojedynczego 
eksperymentu  nazywane  są  replikacją.  Powtarzając  operacje  losowania  n-krotnie, 
uzyskujemy próbę składającą się z n replikacji. 

W zależności od zjawiska, które opisywane jest przez model, będziemy mówili o dwóch 

podstawowych  rodzajach  symulacji:  symulacji  Monte  Carlo  oraz  symulacji  dynamicznej 
(nazywanej  również  symulacją  systemów).  Pierwszy  z  tych  terminów  zarezerwujemy  dla 
zadao,  w  których za  pomocą  eksperymentów  losowania  określamy  rozkład  jednej  lub  kilku 
zmiennych wyjściowych uzależnionych od jednej lub kilku losowych zmiennych wejściowych. 
Termin  „symulacja  Monte  Carlo"  użyty  był  po  raz  pierwszy  jako  kryptonim  badao 
realizowanych  w  ramach  projektu  Manhattan  związanych  z  konstrukcją  pierwszej  bomby 
atomowej.  W  literaturze  pojawia  się  również  określenie  „metoda Monte Carlo",  przez  którą 
rozumie 

się 

technikę 

wyboru 

wielkości 

losowych 

określonego 

rozkładu 

prawdopodobieostwa.  Tak  rozumiany  sposób  losowania  wykorzystywany  jest  zarówno  w 
eksperymentach  określonych  przez  nas  jako  symulacja  Monte  Carlo,  jak  i  w  symulacji 

background image

 

dynamicznej. 

Schemat  postępowania  w  przypadku  symulacji  Monte  Carlo  przedstawia  rys.  2.  W 

pierwszej  kolejności  ustalane  są  wartości  zmiennych  decyzyjnych  oraz  określana  jest  liczba 
eksperymentów. Ta ostatnia zależy z jednej strony od specyfiki analizowanego zagadnienia, z 
drugiej  zaś  od  dokładności  wyników,  którą  chcemy  uzyskać  .  W  każdym  z  kolejnych 
eksperymentów  losowane  są  wartości  tych  zmiennych  stanu,  które  opisane  są  rozkładami 
prawdopodobieostwa, a następnie, na podstawie relacji opisanych modelem, wyznaczane są 
wartości zmiennych wyjściowych. 

 

Rys. 2. Schemat symulacji Monte Carlo