• Nie Znaleziono Wyników

Metody symulacji komputerowej prba klasyfikacji logicznej

N/A
N/A
Protected

Academic year: 2021

Share "Metody symulacji komputerowej prba klasyfikacji logicznej"

Copied!
14
0
0

Pełen tekst

(1)

Streszczenie

W bogatej literaturze dotyczcej symulacji komputerowej mówi si o wielu jej metodach, jednak nie zawsze spełniaj one załoenia formułowane w definicjach symulacji komputerowej. Celem niniejszego artykułu jest próba sprecyzowania za-kresu pojciowego symulacji komputerowej oraz dokonania w jego kontekcie logicznej klasyfikacji rónych form symulacji komputerowej.

Słowa kluczowe: metody symulacji komputerowej 1. Wprowadzenie

Termin „symulacja” został zapoĪyczony dla potrzeb nauki z jĊzyka potocznego. Potocznie „symulowaü” (łac. simulo – udajĊ) znaczy przyjmowaü wygląd czegoĞ innego, a takĪe naĞladowaü, odtwarzaü coĞ innego1

. W przypadku symulacji komputerowej mamy do czynienia z imitowaniem działania całego systemu lub teĪ tylko naĞladowaniem pewnej sytuacji poprzez uĪycie programów komputerowych. Bardziej szczegółowo moĪna okreĞliü symulacjĊ komputerową, słowami T. Naylora, jako „metodĊ numeryczną słuĪącą do dokonywania eksperymentów na pewnych rodzajach modeli matematycznych, które opisują przy pomocy maszyny cyfrowej zachowanie siĊ złoĪonego systemu w ciągu długiego okresu czasu”2. J. Tyszer z kolei podaje, Īe symulacja kom-puterowa jest „algorytmiczną metodą prowadzenia (za pomocą komputera) eksperymentów na modelach dynamicznych istniejących lub projektowanych systemów”3

. Z powyĪszych definicji wynika, Īe:

- symulacja komputerowa to metoda polegająca na dokonywaniu eksperymentów na dyna-micznych modelach opisujących istniejące lub projektowane systemy,

- celem badawczym symulacji komputerowej jest uzyskanie wiedzy na temat zachowania siĊ badanego systemu w czasie,

- narzĊdziem jakim siĊ posługuje symulacja komputerowa w realizacji celu badawczego jest program komputerowy bĊdący formalną reprezentacją modelu badanego systemu.

Symulacja komputerowa jako metoda jest układem celowo dobranych czynnoĞci badawczych, czyli strukturą działaĔ etapowych zmierzających do osiągniĊcia celu badawczego. Są to nastĊpują-ce czynnoĞci4:

- sformułowanie problemu, 1

Słownik wyrazów obcych. Pr. zb. pod red. J. Tokarskiego. PWN, Warszawa 1980, s. 720. 2

Naylor T.H.: Modelowanie cyfrowe systemów ekonomicznych, PWN, Warszawa 1975, s. 21. 3

Tyszer J.: Symulacja cyfrowa, WNT, Warszawa 1990, s. 13. 4

(2)

- tworzenie modelu matematycznego, - sformułowanie programu dla komputera, - sprawdzenie poprawnoĞci modelu,

- zaplanowanie eksperymentów symulacyjnych,

- wykonanie przebiegów symulacyjnych i analiza wyników.

Pierwszy etap wydaje siĊ oczywisty, niemniej jednak jest bardzo waĪny. Nie moĪna przystĊ-powaü do Īadnego badania nie tylko symulacyjnego, bez jasno sformułowanego zakresu i celu badania. Na etap drugi, tworzenie modelu, składają siĊ dwa zadania: (1) ustalenie struktury mode-lu poprzez zadecydowanie, które cechy systemu są istotne dla zagadnienia (załoĪenia upraszczające) – inaczej wybór zmiennych; (2) zebranie danych potrzebnych do okreĞlenia odpo-wiednich parametrów modelu. Zaprogramowanie symulacji modelu na komputer (etap 3) w przypadku, gdy jest on dany w postaci matematycznej, jest juĪ zadaniem stosunkowo łatwym – pod warunkiem, Īe zna siĊ zasady programowania w danym jĊzyku symulacyjnym. Etap czwarty – sprawdzenie poprawnoĞci modelu, wymaga duĪej iloĞci ocen. W pewnym sensie jest on uzupeł-nieniem etapu formułowania modelu. Podczas testowania modelu nie tylko eliminuje siĊ błĊdy w programie, lecz takĪe sprawdza siĊ czy model zachowuje siĊ logicznie porównując wyniki przebiegów symulacyjnych z dostĊpna wiedzą o modelowanym systemie. Etap ten zmusza wielo-krotnie do zrewidowania wczeĞniejszych załoĪeĔ i powtórnej realizacji poprzednich etapów. Etap piąty polega na zaprojektowaniu szeregu eksperymentów realizujących cele badania. Wykorzystu-je siĊ tu miĊdzy innymi technikĊ scenariuszy. KoĔcowym etapem badania systemu Wykorzystu-jest wykonanie przebiegów symulacyjnych i interpretacja wyników, która przy dobrze zaplanowanym badaniu i jasno okreĞlonym zbiorze pytaĔ powinna udzieliü na nie odpowiedzi.

Symulacja komputerowa ma wiele zalet, które czynią ją atrakcyjnym narzĊdziem analizy5. Po pierwsze moĪe ona "skondensowaü" w takim stopniu czas, Īe istnieje moĪliwoĞü „wysymulowa-nia” kilku lat działalnoĞci systemu w ciągu minuty, lub w niektórych przypadkach w ciągu kilku sekund – zaleĪy to od stopnia skomplikowania problemu i moĪliwoĞci komputera. ZdolnoĞü ta pozwala badaczowi rozwaĪyü róĪnorodne plany, które chciałby zbadaü w bardzo krótkim czasie, podczas gdy przeprowadzenie próby na kaĪdym, realnym systemie (jeĞli w ogóle byłoby to moĪ-liwe) trwałoby bardzo długo. Symulacja komputerowa pozwala równieĪ na rozszerzenie czasu działania systemu, gdyĪ moĪna za jej pomocą zbadaü szczegółową strukturĊ zmian, których nie moĪna byłoby zaobserwowaü w czasie rzeczywistym. KaĪdy eksperyment komputerowy, w odróĪnieniu od eksperymentów laboratoryjnych, moĪna powtórzyü w tych samych warunkach. Wyniki eksperymentów moĪna bardzo łatwo przechowywaü i porównywaü. Wymienione wyĪej zalety symulacji komputerowej, jako metody badania powodują, Īe siĊga siĊ po nią przy rozpatry-waniu róĪnorodnych problemów. Symulacja komputerowa jest od dawna podstawową metodą badania róĪnych systemów złoĪonych: fizycznych, wojskowych, społecznych, energetycznych, politycznych a takĪe ekonomicznych Głównym celem symulacji jest dostarczenie informacji o badanym realnym systemie lub takim, który ma dopiero powstaü. Informacje te mogą byü wykorzystane w procesie podejmowania decyzji dotyczących danego systemu. Bardzo czĊsto stosuje siĊ symulacjĊ równieĪ w celach dydaktycznych.

Badacz wybierający symulacjĊ komputerową, powinien jednak wiedzieü, Īe opracowanie i uruchomienie programu symulacyjnego jest zajĊciem trudnym i nie istnieją gwarancje, Īe wysi-5

(3)

łek włoĪony w przygotowanie modelu zwróci siĊ w postaci wartoĞciowych wyników. Zawsze istnieje niebezpieczeĔstwo, iĪ model, jako uproszczony zapis rzeczywistoĞci, nie obejmie wszyst-kich istotnych z punktu widzenia celu badania, zaleĪnoĞci istniejących w realnym systemie.

W bogatej literaturze dotyczącej symulacji mówi siĊ o wielu jej metodach, jednak nie zawsze spełniają one załoĪenia formułowane w definicjach symulacji komputerowej. Celem niniejszego artykułu jest zatem próba sprecyzowania zakresu pojĊciowego symulacji komputerowej oraz dokonania w jego kontekĞcie logicznej klasyfikacji metod symulacji komputerowej, przy czym pod mianem klasyfikacji logicznej rozumie siĊ tu układ przynajmniej dwóch róĪnych podziałów logicznych tego samego pojĊcia6

.

2. Zakres pojciowy symulacji komputerowej

Symulacja komputerowa jest jedną z form symulacji systemów rozumianej za G. S. Fishma-nem jako „czynnoĞü przedstawiania systemu za pomocą modelu symbolicznego, którym moĪna łatwo operowaü i na podstawie którego otrzymujemy wyniki numeryczne”7. WyodrĊbnia on kilka typów symulacji systemów:

- symulacjĊ toĪsamoĞciową, która jest skrajnym przypadkiem, wystĊpujacym wówczas, gdy w dąĪeniu do poznania zachowania siĊ systemu, moĪe on sam byü traktowany jako model. Mamy wówczas do czynienia z raczej niepoĪądanymi, kosztownymi eksperymentami na Īywym organizmie systemu;

- symulacjĊ prawie toĪsamoĞciową, np. prowadzenie gier wojennych;

- symulacjĊ laboratoryjną, gdy mamy do czynienia z fizycznym odtwarzaniem pewnych aspektów prawdziwego systemu z jednoczesnym zastĊpowaniem innych aspektów forma-mi symbolicznyforma-mi (np. gry symulacyjne z udziałem ludzi, podczas których wykorzystywane są maszyny analogowe, cyfrowe lub innego rodzaju urządzenia);

- i wreszcie symulacjĊ komputerową, pojmowaną jako metoda, która pozwala na badanie systemu reprezentowanego za pomocą modelu w czasie przy uĪyciu maszyn cyfrowych. R.F. Barton przedstawia nieco inne ujĊcie rodzajów badaĔ symulacyjnych. Według niego mo-Īemy mówiü o nastĊpujących typach symulacji8

:

- symulacja typu człowiek – model, w której mamy tu do czynienia z eksperymentami, w jakich model jest czĊĞcią badanego systemu a człowiek – gracz, przedmiotem ekspery-mentu. Gracze oddziałują na siebie nawzajem i na model – stąd nazwa typu symulacji; - symulacja typu człowiek – maszyna, w której eksperymenty odbywają siĊ z uĪyciem

urzą-dzeĔ fizycznych do symulowania rzeczywistego systemu (np. symulatorów samolotów, lotów kosmicznych itp.). Podstawowym celem tego rodzaju ekperymentów jest szkolenie; - symulacja typu człowiek – maszyna cyfrowa, która róĪni siĊ tym od poprzedniego typu, Īe

modele systemu są realizowane przez komputer, a w trakcie eksperymentów człowiek

6

Szerzej na temat zasad klasyfikacji logicznej midzy innymi w: [1], [20],[24]. 7

Fishman G.S.: Symulacja komputerowa. Pojcia i metody. PWE, Warszawa 1981, s. 27. 8

(4)

współdziała z komputerem na zasadzie interaktywnoĞci. Symulacja tego typu równieĪ wy-korzystywana jest zwykle w celach szkoleniowych;

- symulacja maszynowa, w której kontrolĊ nad przebiegiem eksperymentu sprawuje siĊ za pomocą rozkazów programu, opisującego krok po kroku funkcjonowanie systemu bĊdące-go przedmiotem badaĔ. Eksperymentator nie ingeruje w eksperyment w trakcie jebĊdące-go wykonywania, ale moĪe powtarzaü eksperyment zmieniając albo elementy kontroli, albo symulowane funkcjonowanie systemu lub jedno i drugie jednoczeĞnie.

Widaü tu zbieĪnoĞü pojĊcia symulacji maszynowej z symulacją komputerową w rozumieniu podawanym przez G. S. Fishmana. Pozostałe typy symulacji przedstawiane przez R. F. Burtona odnoszą siĊ do symulacji laboratoryjnej.

Warto w tym miejscu podkresliü, Īe obydwaj autorzy podkreĞlają, Īe modele uĪywane w sy-mulacji (modele symulacyjne) są modelami dynamicznymi i „zawsze wiąĪą siĊ ze zmianami ich stanu w czasie”9. Jest to zgodne nie tylko z treĞcią definicji symulacji komputerowej przytacza-nych we wprowadzeniu, ale takĪe z poglądami G. Gordona, który wskazuje, Īe symulacja systemów to metoda „rozwiązywania problemów, polegająca na Ğledzeniu w czasie zmian zacho-dzących w dynamicznym modelu systemu”10

.

Akceptacja takiego ujĊcia powoduje, Īe powinno siĊ wykluczyü z dalszych rozwaĪaĔ tzw. symulacjĊ statyczną, tj. symulacjĊ polegającą na prowadzeniu eksperymentów na statycznych modelach, które z definicji pomijają czynnik czasu. Niemniej jednak, w wielu pozycjach literatury przedmiotu przedstawia siĊ podział symulacji komputerowej na symulacjĊ dynamiczną i statycz-ną11, przy czym jako podstawową metodĊ symulacji statystycznej uznaje siĊ symulacjĊ typu Monte Carlo. Nie wdając siĊ w głĊbszą dyskusjĊ nad zasadnoĞcią wyłączenia symulacji typu Monte Carlo z zakresu metod symulacji komputerowej, w niniejszym artykule przyjmuje siĊ za G. S. Fishma-nem, Īe termin symulacja komputerowa zarezerwowano dla okreĞlenia szerokich badaĔ nad systemami, natomiast metody Monte Carlo słuĪą głównie do dokonywania eksperymentów loso-wania i jako takie mogą byü uĪyte w trakcie badaĔ systemowych za pomocą symulacji komputerowej tylko do ułatwienia procesu manipulowania duĪymi zbiorami danych i generowania liczb losowych12.

Wracając do głównego nurtu rozwaĪaĔ podjĊtych w niniejszym punkcie warto przytoczyü jeszcze jedną typologiĊ symulacji systemów, szczególnie uĪyteczną w sytuacji, gdy symulacja jest wykorzystywana w celu nabycia pewnych umiejĊtnoĞci, czy wiedzy. Zaproponowali ją S.M. Alessi i S.R. Trollip13 a wydrĊbnia nastĊpujace typy symulacji:

- symulacja fizyczna, w której umiejĊtnoĞci są nabywane poprzez symulacjĊ obiektów fi-zycznych (np. symulatory samolotów);

- symulacja proceduralna, w której umiejĊtnoĞci są nabywane poprzez operowanie modela-mi symulacyjnymodela-mi urządzeĔ;

- symulacja sytuacyjna, w której umiejĊtnoĞci są nabywane poprzez odgrywanie okreslo-nych ról (np. gry symulacyjne);

9

Barton R.F.: Wprowadzenie do symulacji i gier. WNT, Warszawa 1974, s. 38. 10

Gordon G., Symulacja systemów, Wydawnictwa Naukowo-Techniczne, Warszawa 1974, s. 33. 11

Przykładowo: [21];[31]; [8]; [29]. 12

Fishman G.S.: Symulacja komputerowa. Pojcia i metody. PWE, Warszawa 1981, s. 33. 13

(5)

- symulacja procesowa, w której umiejĊtnoĞci są nabywane poprzez obserwacjĊ symulowanych stanów w czasie.

Symulacja komputerowa, w rozumieniu przedstawianym wyĪej, mieĞci siĊ pojĊciowo w sy-mulacji procesów.

WaĪnym aspektem symulacji komputerowej, jak juĪ wspomniano, jest czas. Biorąc pod uwa-gĊ związek zachodzący miĊdzy czasem symulowanym a czasem zegarowym podczas eksperymentu symulacyjnego, moĪna wyodrĊbniü14

:

- symulacjĊ w czasie rzeczywistym, w której postĊp czasu symulowanego jest ĞciĞle wyzna-czany przez upływ czasu zegarowego. Jest to wymagane głównie w Ğrodowiskach wirtualnej rzeczywistoĞci, działających w interakcji z człowiekiem, np. symulatorach tre-ningowych, grach wideo, emulatorach tam gdzie wystĊpuje interakcja z urządzeniami fizycznymi, np. elektronicznymi, kiedy czĊĞü układu istnieje fizycznie, a działanie pozo-stałej czĊĞci jest symulowane);

- symulacjĊ off-line, czyli symulacjĊ analityczną, w której nie ma interakcji z człowiekiem (albo z fizycznym urządzeniem). Tu upływ czasu symulowanego nie musi mieü nic wspólnego z czasem zegarowym.

Dalsze rozwaĪania bĊdą odnosiły siĊ do symulacji analitycznej, gdyĪ symulacja w czasie rze-czywistym dotyczy bardziej innych, przedstawionych wczeĞniej typów symulacji systemów, aniĪeli symulacji komputerowej zgodnej z definicją przyjĊtą w niniejszym opracowaniu.

3. Ujcia klasyfikacyjne metod symulacji komputerowej

W pracach poĞwiĊconych symulacji komputerowej i jej zastosowaniom moĪna znaleĨü wiele róĪnych klasyfikacji. Jasnym jest, Īe w rozwaĪaniach nad klasyfikowaniem podstawową kwestią jest przyjĊcie kryteriów, według których naleĪałoby tego dokonaü. Historycznie, metody symulacji komputerowej dzieli siĊ na te15, które pozwalają na odzwierciedlenie procesów dyskretnych16 (symulacja dyskretna) i te, które umoĪliwiają modelowanie procesów ciągłych17

(symulacja ciągła). JednakĪe, rozpatrując jednoczeĞnie charakter zmian stanu modelowanego systemu i upływ symulowanego czasu uzyskuje siĊ cztery typy modeli symulacyjnych, tj. modele, w których zmiana stanu zachodzi w sposób18:

- ciągły w kaĪdym punkcie czasu, czyli wartoĞci zmiennych zmieniają siĊ w sposób płynny, a nie skokowy (dyskretny) i są dostĊpne w kaĪdym punkcie czasu symulacji;

14

Symulacja sieci komputerowych, Pr. zb. pod red. M. Nowaka. IITiS PAN, Gliwice 2009, http://www.iitis.gliwice.pl/~mateusz/ksiazka/SymulacjaSieci.pdf [dostp: 20.12.2010], s.9 i dalsze.

15

Pidd M.: Computer Simulation in Management Science. Fourth Edition. JOHN WILEY & SONS, Chichester - New York - Weinheim -•Brisbane•- Singapore - Toronto1998, s. 21.

16

Pod pojciem procesu lub systemu dyskretnego rozumie si taki proces, w którym zmiany stanu zachodz w sposób niecigły, w wyrónionych chwilach czasu. Na przykład stan zapasów w magazynie lub liczba pojazdów na skrzyowa-niu ulic zmieniaj si w wyranie wyrónionych chwilach czasu, w odrónieskrzyowa-niu od zmian napicia w kondensatorze lub prdkoci pojazdu, które mog zmienia si wyłcznie w sposób cigły [26].

17

Do klasy systemów cigłych zalicza si obiekty dynamiczne, których zachowanie mona opisa za pomoc równa róniczkowych liniowych lub nieliniowych. Procesy zachodzce w takich systemach, to znaczy zmiany ich stanu, wyraa-j si w postaci cigłych funkcji wyrónionych zmiennych niezalenych, a w szczególnoci czasu [26, s.11].

18

Pidd M.: Computer Simulation in Management Science. Fourth Edition. JOHN WILEY & SONS, Chichester - New York - Weinheim -•Brisbane•- Singapore - Toronto1998, s 27

(6)

- ciągły, ale tylko w dyskretnych chwilach czasu – w tym przypadku wartoĞci zmiennych zmieniają siĊ w sposób płynny, ale są dostĊpne tylko w okreĞlonych chwilach (punktach czasu) symulacji;

- skokowy w kaĪdym punkcie czasu, czyli wartoĞci zmiennych są dyskretne, ale zmiany - mogą wystąpiü w kaĪdym punkcie czasu;

- skokowy w dyskretnych chwilach czasu – w takim przypadku stany mogą zmieniaü siĊ tylko w okreĞlonych punktach czasu.

Analiza właĞciwoĞci przedstawionych typów modeli symulacyjnych pozwala na wyodrĊbnie-nie trzech podstawowych rodzajów metod symulacji komputerowej (rys. 1): symulacji ciągłej, dyskretnej i mieszanej (hybrydowej)19 przy czym przyjmuje siĊ, Īe sposób symulacji ciągły lub dyskretny jest wyrazem przyjĊcia załoĪeĔ filozoficznych o systemie rzeczywistym, np. o istocie stałoĞci i zmiany, o moĪliwoĞci poznania charakterystyk systemu. Zmiany "ciągłe" systemu moĪna bowiem interpretowaü jako szybkie zmiany "dyskretne", jak równieĪ zmiany "dyskretne" moĪna rozwaĪaü jako powolne zmiany "ciągłe"20.

Cechą charakterystyczną metod symulacji cigłej jest wykorzystywanie funkcji ciągłych w opisie formalnym charakterystyk zmiennych stanu systemu oraz funkcji ciągłych lub quasi-ciągłych w opisie zjawiska upływu czasu. W symulacji ciągłej stan systemu widziany jest zazwy-czaj układem równaĔ róĪniczkowych w funkcji czasu symulowanego. Typowe przykłady symulacji ciągłej to symulacja róĪnorodnych zjawisk fizycznych, np. zmian pogody czy przepływu gazów wokół bryły sztywnej takiej jak karoseria samochodu21. Wczesne symulacje tego typu były przeprowadzane za pomocą maszyn analogowych. RównieĪ w niektórych Ğrodowiskach wirtualnej rzeczywistoĞci stosowana jest symulacja ciągła. W badaniu systemów ekonomicznych dobrze siĊ sprawdza metoda dynamiki systemów (ang. System Dynamics)22, w której ciągłoĞü jest osiągana poprzez wyznaczanie wartoĞci zmiennych w wielu punktach symulowanego czasu za pomocą symulacji metodą stałych przyrostów czasowych (symulacja z najmniejszym moĪliwym krokiem czasowym).

19

Patrz [28], [30], [26]. 20

Pietro R.: Modelowanie symulacyjne. Politechnika Wrocławska, Wrocław 2006, http://www.ioz.pwr.wroc.pl/ pracow-nicy/pietron/dydaktyka.htm [dostp: 12.01.2011].

21

Symulacja sieci komputerowych, Pr. zb. pod red. M. Nowaka. IITiS PAN, Gliwice 2009, http://www.iitis.gliwice.pl/~mateusz/ksiazka/SymulacjaSieci.pdf [dostp: 20.12.2010].

22

Łatuszy ska M.: Symulacja komputerowa jako metoda badania systemów gospodarczych [w:] Multimedia w biznesie i edukacji. Pr. zb. pod red. L. Kiełtyki, Fundacja Współczesne Zarzdzanie, Białystok 2005, s. 221–227.

(7)

Upływ czasu f. cigła f.quasi-cigła f. dyskretna Zm ia n y s ta n u f. cigła SYMULACJA CIĄGŁA SYMULACJA MIESZANA (HY-BRYDOWA) Symulacja procesów (systemów) ciąglych f. dys-kretn a SYMULACJA MIESZANA (HYBRYDOWA) SYMULACJA DYSKRETNA Symulacja procesów (systemów) dyskretnych Symulacja z czasem ciągłym Symulacja z czasem dyskretnym AUTOMATY KOMÓRKOWE S. WIELO-AGENTOWA s. na maszy-nach analo-gowych s. z kro- czaso-kiem wym s. sterowana zdarzeniami UKŁAD RÓWNA RÓ NICZKO-WYCH METODA DYNAMIKI SYSTEMOWEJ m . p la n o w an ia z d arz eĔ m . p rz eg lą d an ia d zi ał aĔ m . in te ra k cj i p ro ce so w ej S. PROCESÓW BIZNESOWYCH SIECI PETRIEGO SIECI KOLEJKOWE SIECI EWALUACYJ-NE

Rysunek 1. Podstawowy schemat klasyfikacyjny metod symulacji komputerowej ħródło: Opracowanie własne.

W metodach symulacji dyskretnej wykorzystuje siĊ funkcje dyskretne zarówno w opisie formalnym charakterystyk zmiennych stanu systemu, jak i w opisie zjawiska upływu czasu. Tu zmiany stanu symulowanego systemu nastĊpują w okreĞlonych, tzw. dyskretnych momentach czasu. PomiĊdzy nimi stan systemu siĊ nie zmienia. System moĪe byü widziany jako „skaczący” od jednego stanu do nastĊpnego, podobnie jak zmieniają sie klatki filmu animowanego. Najpopu-larniejsze typy symulacji dyskretnej to23:

- symulacja z krokiem czasowym, nazywana tez krócej symulacją krokową (ang. time-stepped)

- symulacja sterowana zdarzeniami (ang. event-driven, rzadziej event-stepped).

23

Symulacja sieci komputerowych, Pr. zb. pod red. M. Nowaka. IITiS PAN, Gliwice 2009, http://www.iitis.gliwice.pl/ ~mateusz/ksiazka/SymulacjaSieci.pdf [dostp: 20.12.2010].

(8)

Te dwie kategorie symulacji róĪnią sie mechanizmami upływu czasu uĪywanymi do zmian wartoĞci zegara czasu symulowanego. Realizacja symulacji z czasem krokowym jest zilustrowana na rys. 2a. Czas symulowany podzielony jest na sekwencje kroków czasowych róĪnej długoĞci, a symulacja przesuwa sie po jednym kroku, za kaĪdym razem obliczając wartoĞci zmiennych stanu. W symulacji krokowej zdarzenia mające miejsce w tym samym kroku czasowym uwaĪa sie za równoczesne oraz nie mające wpływu na siebie nawzajem. CzĊsto w symulowanym modelu wartoĞci zmiennych stanu nie zmieniają siĊ w kaĪdym kroku czasowym. W takiej sytuacji mecha-nizm upływu czasu moĪe przesuwaü stan zegara czasu symulowanego nie o stały krok czasowy, ale od razu do momentu, w którym nastĊpuje zmiana wartoĞci zmiennej stanu (rys 2b). KaĪda zmiana stanu systemu nazywa siĊ zdarzeniem (ang. event), a symulacja wykorzystująca omawiany mechanizm – symulacją sterowaną zdarzeniami. Formami tego typu symulacji są: symulacja oparta na metodzie planowania zdarzeĔ, symulacja oparta na metodzie przeglądania działaĔ oraz symulacja oprata na metodzie interakcji procesów.

zm ie n n e st an u zm ie n n e st an u

czas symulowany czas symulowany

(a) (b)

Rysunek 2. Wykresy stan-czas dla symulacji krokowej (a) oraz sterowanej zdarzeniami (b) ħródło: [33].

W odniesieniu do symulacji dyskretnej bardzo czĊsto wymienia siĊ w literaturze symulatory przestrzeni komórkowych (tzw. automaty komórkowe, ang. cellular automata)24, symulacjĊ wieloagentową (ang. multi-agent simulation)25. Na mechanizmach symulacji procesów dyskret-nych sa równieĪ oparte metody modelowania i symulacji procesów biznesowych (ang. bussines process simulation)26. Bardzo komunikatywnym (stąd najczĊĞciej stosowanym) sposobem formal-nego opisu dyskretnych modeli symulacyjnych jest opis schematyczny w postaci sieci działaĔ. W literaturze opisuje siĊ kilka wariantów opisów sieciowych modeli symulacyjnych. NajczĊĞciej wymienia siĊ nastĊpujące typy sieci: sieci Petriego, sieci ewaluacyjne, sieci kolejkowe27

.

24

Np. [36], [4], [13].

25 Opis symulacji wieloagnetowej znajduje si w wielu publikacjach, midzy innymi w: [7]; [6]; [9]; [10]. 26

Jansen-Vullers M.H, Netjes M.: Business Process Simulation - A Tool Survey. CPN'06 Seventh Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools. University of Aarhus, Dania 2006, http://www.daimi.au.dk/CPnets/workshop06/cpn/papers/Paper05.pdf [dostp: 30.11.2010].

(9)

Ostatni podstawowy rodzaj symulacji komputerowej to symulacja mieszana (hybrydowa). Cechą charakterystyczną metod symulacji mieszanej jest wykorzystanie funkcji dyskretnych i ciągłych w opisie formalnym charakterystyk zmiennych stanu systemu oraz wykorzystanie funkcji dyskretnych, ciągłych i quasi-ciągłych w opisie zjawiska upływu czasu. Aktualnie wiele z oferowanych na rynku pakietów symulacyjnych pozwala na przeprowadzanie zarówno symula-cji ciągłej, jak i dyskretnej czy mieszanej (hybrydowej), np. Extendsim (http://www.extendsim.com) czy AnyLogic (http://www.xjtek.com).

Oprócz przedstawionego podstawowego ujĊcia klasyfikacyjnego, biorącego pod uwagĊ spo-sób zmian stanu w modelowanym systemie i odwzorowania symulowanego czasu, symulacja komputerowa jest dzielona według róĪnych innych kryteriów. NajczĊĞciej wymieniane w literatu-rze inne kryteria to: (1) uwzglĊdnianie niepewnoĞci (przewidywalnoĞü zdarzeĔ), (2) poziom agregacji modelowanych elementów systemu, (3) liczba uĪytych komputerów/procesorów, (4) czas objĊty symulacją, (5) cel modelowania i symulacji.

Pierwsze z wymienionych kryteriów pozwala na wyodrĊbnienie symulacji deterministycznej, w której powiązania miĊdzy modelowanymi elementami systemu są jednoznacznie okreĞlone oraz symulacjĊ stochastyczna, w której do odwzorowania losowego charakteru i siły powiązaĔ miĊdzy modelowanymi elementami uĪywa siĊ generatorów liczb pseudolosowych lub losowych (szcze-gólnie popularna jest tu Metoda Monte Carlo)28;

Biorąc pod uwagĊ poziom agregacji modelowanych elementów systemu moĪna wydzieliü makrosymulacjĊ, dotyczącą perspektywy całego systemu (np. metoda dynamiki systemowej) i mikrosymulacjĊ, bĊdącą symulacją jednostek z okreĞlonym stanem i zachowaniem (np. symula-cja wieloagentowa, automaty komórkowe)29.

Według liczby uĪytych komputerów/procesorów symulacja komputerowa dzieli siĊ na lokalną i rozproszoną. W lokalnej przetwarzanie odbywa siĊ na pojedynczym komputerze (z wykorzysta-niem pojedynczego procesora), w rozproszonej natomiast na wielu komputerach połączonych w sieci lokalnej (LAN) lub zewnĊtrznej, np. Internet30.

Biorąc pod uwagĊ czas objĊty symulacją moĪna mówiü o symulacji post i symulacji ex-ante31. Symulacja ex-post dotyczy przeszłoĞci, dla której znane są wartoĞci zmiennych wystĊpują-cych w modelu. Symulacja tego typu moĪe byü przeprowadzona w odniesieniu do okresu, na podstawie którego estymowano parametry modelu i wówczas nazywana jest historyczną. MoĪe teĪ wykraczaü poza próbĊ statystyczną i mieü charakter prognozy ex post. Taką symulacjĊ nazywa siĊ kontrfaktyczną – "wbrew faktom" (ang. counterfactual simulation). Przyjmuje siĊ tu wartoĞci zmiennych egzogenicznych róĪniące siĊ od de facto zaobserwowanych w przeszłoĞci. Symulacji ex-ante natomiast dokonuje siĊ na okres, dla którego nie istnieją informacje statystyczne, dotyczą-ce zmiennych wystĊpujących w modelu. ZałoĪenia odnoszące siĊ do zmiennych egzogenicznych 28 O takim kryterium midzy innymi w: [27]; [21]; [17].

29

Klügl F.: Lehrstuhl für Künstliche Intelligenz und Angewandte Informatik. Universität Würzburg. http://ki.informatik.uni-wuerzburg.de/~kluegl/teach/EASSS2004%20Multi%20Agent%20Simulation.pdf [dostp: 10.11.2011].

30 W literaturze stosuje si take nazw „symulacja szeregowa lub symulacja sekwencyjna” na okrelenie symulacji realizowanej na pojedynczym procesorze (rdzeniu procesora), nie wykonujcej adnych operacji w sposób równoległy oraz nazw „symulacja równoległa albo symulacja rozproszona” na okrelenie symulacji, której czci realizowane sa równoczenie na rónych jednostkach obliczeniowych (komputerach i/lub procesorach [33].

31 Taki podział został przytoczony midzy innymi w opisie hasła „symulacja” w słowniku Webster's Online Dictionary [35].

(10)

pochodzą wówczas z innych badaĔ lub opierają siĊ na doĞwiadczeniu przeprowadzającego symu-lacjĊ. SYMULACJA KOMPUTEROWA wg upływu symulowanego czasu symulacja z czasem ciągłym symulacja z czasem dyskretnym wg celu modelowania i symulacji symulacja

objaĞniająca predykcyjnasymulacja

wg

uwzglĊdniania

niepewnoĞci symulacja

deterministyczna stochastycznasymulacja

wg poziomu agregacji symulowanych elementów systemu mikrosymulacja makrosymulacja wg liczby uĪytych komputerów /procesorów symulacja lokalna (sekwencyjna) symulacja rozroszona (równoległa) wg czasu jakiego dotyczy symulacja ex-post symulacja ex-ante symulacja historyczna symulacja kontrfaktyczna symulacja krokowa symulacja sterowana zdarzeniami symulacja oparta na planowaniu zdarzeĔ symulacja oparta na przeglądaniu działaĔ symulacja oparta na interakcji procesowej 1 2 symulacja pierwszego rodzaju symulacja drugiego rodzaju symulacja trzeciego rodzaju

Rysunek 3. Rozszerzony schemat klasyfikacji logicznej metod symulacji komputerowej ħródło: Opracowanie własne.

(11)

Ostatnie wymienione kryterium, dotyczące celu modelowania i symulacji, pozwala na wy-róĪnienie symulacji predykcyjnej, generującej informacje na temat przyszłych stanów systemu na podstawie wartoĞci wejĞciowych oraz objaĞniającej, umoĪliwiającej zrozumienie reakcji systemu na róĪne sygnały wejĞciowe32

. Według tego samego kryterium moĪna podzieliü symulacjĊ równieĪ na33: symulacjĊ pierwszego rodzaju (przeprowadzaną w celu okreĞlenia w przyszłoĞci efektów okreĞlonych decyzji), symulacjĊ drugiego rodzaju (umoĪliwiającą analizĊ „wraĪliwoĞci” uzyska-nych wyników na zmiany dauzyska-nych wejĞciowych) oraz symulacjĊ trzeciego rodzaju (pozwalającą na analizĊ doboru struktury i postaci modelu do parametrów wyjĞciowych oraz poĪądanych stanów wejĞciowych).

4. Podsumowanie

W literaturze moĪna znaleĨü róĪne klasyfikacje metod symulacji komputerowej. Podstawowy podział, biorący pod uwagĊ sposób zmian stanu w modelowanym systemie i odwzorowania symulowanego czasu wyodrĊbnia metody symulacji ciągłej, dyskretnej i mieszanej. Istnieje jednak szereg innych kryteriów klasyfikacji symulacji logicznej. Rys. 3 stanowi próbĊ schematycznej syntezy omawianych w niniejszym opracowaniu podziałów symulacji komputerowej. Warto zauwaĪyü, Īe symulacja czĊsto okreĞlana jest przymiotnikami przejĊtymi od rodzaju budowanego modelu. Mówi siĊ przykładowo o symulacji ciągłej lub dyskretnej, deterministycznej lub stocha-stycznej, objaĞniającej lub predykcyjnej. OczywiĞcie symulacja moĪe byü jednoczeĞnie np. ciągła i stochastyczna lub dynamiczna, stochastyczna i dyskretna, bądĨ ciągła i deterministyczna oraz objaĞniająca itd., czego nie uwzglĊdnia rys. 3.

Bez wzglĊdu na typ, rodzaj czy formĊ symulacja komputerowa stanowi bardzo przydatną me-todĊ badania w sytuacjach kiedy inne metody zawodzą, szczególnie w odniesieniu do systemów szczególnie złoĪonych. Niektórzy autorzy twierdzą wrĊcz, Īe symulacja komputerowa jest jedy-nym efektywjedy-nym sposobem badania systemów szczególnie złoĪonych. Przykładowo. J.W. Forrester, mówi, Īe "efektywne odzwierciedlanie zachowania siĊ systemów złoĪonych leĪy poza granicami tradycyjnych metod matematycznych”34. Podobne stanowisko prezentuje C. Cempel oĞwiadczając, iĪ w poznawaniu systemów szczególnie złoĪonych „symulacja przez swą zdolnoĞü manipulacji czasoprzestrzenią jest jedynym narzĊdziem pozwalającym ująü i zrozumieü przyczynowo-skutkowe powiązania odległe w czasie i w przestrzeni, i powiązane wieloma sprzĊ-Īeniami zwrotnymi”35

.

32

Klügl F.: Lehrstuhl für Künstliche Intelligenz und Angewandte Informatik. Universität Würzburg. http://ki.informatik.uni-wuerzburg.de/~kluegl/teach/EASSS2004%20Multi%20Agent%20Simulation.pdf

[dostp: 10.11.2011]. 33 Zob. [18]. Podane za [19]. 34

Forrester J.W.: Planung unter dem Einfluss komplexer Sozialer Systeme. [w:] Politische Planung in Theorie und Praxis, Piper Verlag, München, 1971, s. 88.

35

Cempel C.: Nowoczesne Zagadnienia Metodologii i Filozofii Bada . Politechnika Pozna ska, Pozna 2002-2003, http://neur.am.put.poznan.pl [dostp: 10.01.2011].

(12)

%LEOLRJUDILD

[1] Ajdukiewicz K.: Logika pragmatyczna. PWN, Warszawa 1962.

[2] Alessi S. M.; Trollip S. R.: Computer based instruction, methods and development. Prentice-Hall, Englewood Cliffs, NY 1985.

[3] Barton R.F.: Wprowadzenie do symulacji i gier. WNT, Warszawa 1974.

[4] Białynicki-Birula I., Białynicka-Birula I.: Modelowanie rzeczywistoci – jak w komputerze przeglda si wiat. WNT, Warszawa 2007.

[5] Cempel C.: Nowoczesne Zagadnienia Metodologii i Filozofii Bada . Politechnika PoznaĔska, PoznaĔ 2002–2003, http://neur.am.put.poznan.pl [dostĊp: 10.01.2011].

[6] Dávila J., Tucci K., Towards a logic-based, multi-agent simulation theory [w:] International Conference on Modeling, Simulation and Neural Networks MSNN’2000, IEEE, ches.ing.ula.ve/investigacion/articulos/jacinto/msnn-JDKT00.pdf [dostĊp: 30.11.2010].

[7] Dávila J., Uzcátegui M., Tucci K.: A Multi-agent theory for simulation [w:] G. Tonella (ed.), Proceedings of the Fifth International Conference on Modelling, Simulation and Optimization (MSO2005), The International Association of Science and Technology for Development (IASTED), Anaheim 2005, s. 285–290, www.geog.unt.edu/biocomplexity/ d/davila-etal.pdf [dostĊp: 30.11.2010].

[8] Evans J.R., Olsen D.L., Introduction to simulation and risk analysis, Prentice Hall, 2002. [9] Federici M.L., Redaelli S., Vizzari G., Models, abstractions and phases in multi-agent

based simulation, [w:] F. De Paoli i in. (eds.), Proceedings of the 7th WOA 2006 Workshop from Objects to Agents, Catania 2006, ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-204/P15.pdf [dostĊp: 30.11.2010].

[10] Ferber J., Multi-Agent Systems. An Introduction to Distributed Artificial Intelligence, Addison-Wesley 1999. Porównanie symulacji agentowej z innymi typami symulacji w: Macal Ch.M., North M.J., Tutorial on agent-based modeling and simulation, Part 2. How to model with agent, [w:] L. F. Perrone i in. (eds.), Proceedings of the 2006 Winter Simulation Conference, WSC’2006, Monterey, California 2006, s. 73–83, www.informs-sim.org/wsc06papers/008.pdf [dostĊp: 30.11.2010].

[11] Fishman G.S.: Symulacja komputerowa. Pojcia i metody. PWE, Warszawa 1981.

[12] Forrester J.W.: Planung unter dem Einfluss komplexer Sozialer Systeme. [w:] Politische Planung in Theorie und Praxis, Piper Verlag, München, 1971, s. 88.

[13] Gilbert N., Troitzsch K. G.: Simulation for the Social Scientist. Second Edition. Open University Press 2005.

[14] Gordon G., Symulacja systemów, Wydawnictwa Naukowo-Techniczne, Warszawa 1974. [15] Issaravit P.: Guided entity relationship modelling within a simulation of a real world

context. Ph.D. Thesis. University of Northumbria, Newcastle 2006, s. 18. DostĊpny w Internecie: http://northumbria.openrepository.com/northumbria/handle/10145/98952 [dostĊp: 3.01.2011].

[16] Jansen-Vullers M.H, Netjes M.: Business Process Simulation – A Tool Survey. CPN'06 Seventh Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools. University of Aarhus, Dania 2006, http://www.daimi.au.dk/CPnets/workshop06/ cpn/papers/Paper05.pdf [dostĊp: 30.11.2010].

(13)

[17] Klügl F.: Lehrstuhl für Künstliche Intelligenz und Angewandte Informatik. Universität Würzburg. http://ki.informatik.uni-wuerzburg.de/~kluegl/teach/EASSS2004%20 Multi%20Agent%20Simulation.pdf [dostĊp: 10.11.2011].

[18] KorzeĔ Z.: Logistyczne systemy transportu bliskiego i magazynowania. Wyd. Instytutu Logistyki i Magazynowania, PoznaĔ 1998.

[19] Kostrzewski M.: Porównanie metod projektowania magazynu-projektowanie według procedury analitycznej oraz przy uyciu narzdzia symulacyjnego. Prace Naukowe Politechniki Warszawskiej, z. 70, serie Transport, Warszawa 2009, http://www.it.pw.edu.pl/prace-naukowe/z70/kostrzewski.pdf [dostĊp: 12.12.2010].

[20] KotarbiĔski T.: Elementy teorii poznania, logiki formalnej i metodologii nauk. Zakład Narodowy Imienia OssoliĔskich, Wrocław – Warszawa – Kraków 1961.

[21] Law A.M., Kelton W.D.: Simulation modeling and analysis. McGraw-Hill, Inc. 2000. [22] ŁatuszyĔska M.: Symulacja dyskretna [w:] Wybrane metody analizy i oceny obiektów

społeczno-gospodarczych. Pr. zb. pod red. M. Borawskiego i K. Nermenda. ZAPOL, Szczecin 2009, s. 39–70.

[23] ŁatuszyĔska M.: Symulacja komputerowa jako metoda badania systemów gospodarczych [w:] Multimedia w biznesie i edukacji. Pr. zb. pod red. L. Kiełtyki, Fundacja Współczesne Zarządzanie, Białystok 2005, s. 221–227.

[24] Mała encyklopedia logiki. Pr. zb. pod red. W. Marciszewskiego, Zakład Narodowy Imienia OssoliĔskich, Wrocław – Warszawa – Kraków, GdaĔsk – ŁódĨ 1988.

[25] Naylor T.H.: Modelowanie cyfrowe systemów ekonomicznych, PWN, Warszawa 1975. [26] Perkowski P.: Technika symulacji cyfrowej. WNT, warszawa 1980.

[27] Pidd M.: Computer Simulation in Management Science. Fourth Edition. JOHN WILEY & SONS, Chichester – New York – Weinheim –·Brisbane·– Singapore – Toronto1998. [28] PietroĔ R.: Modelowanie symulacyjne. Politechnika Wrocławska, Wrocław 2006,

http://www.ioz.pwr.wroc.pl/pracownicy/pietron/dydaktyka.htm [dostĊp: 12.01.2011]. [29] Render B., Stair R.M., Hanna M., Quantitative Analysis for Management, Pearson

Education, Inc., Upper Saddle River, New Jersey 2003.

[30] Rybicki J.: Przegld powszechnie modelowanych zagadnie technicznych. Wprowadzenie. Politechnika GdaĔska 2008, http://www.mif.pg.gda.pl/homepages/jaca/studium_ MES/wyklad.pdf [dostĊp: 12.01.2011].

[31] Seila A.F., Ceric V., Tadikamalla P.: Applied simulation modeling. Thomson Brooks/Cole, 2003.

[32] Słownik wyrazów obcych. Pr. zb. pod red. J. Tokarskiego. PWN, Warszawa 1980.

[33] Symulacja sieci komputerowych, Pr. zb. pod red. M. Nowaka. IITiS PAN, Gliwice 2009, http://www.iitis.gliwice.pl/~mateusz/ksiazka/SymulacjaSieci.pdf [dostĊp: 20.12.2010]. [34] Tyszer J.: Symulacja cyfrowa, WNT, Warszawa 1990.

[35] Webster's Online Dictionary, http://www.websters-online-dictionary.org/definitions/ simulation [dostĊp: 12.01.2011].

(14)

COMPUTER SIMULATION METHODS AN ATTEMPT OF LOGICAL CLASSICIFATION

Summary

In the rich bibliography of computer simulation, different methods connected with this field of science are described. Hovewer, these methods do not always fulfill the assumptions which are formulated in the definitions of computer simulation. The objective of the article is to give the precise definition range of computer simulation and to make a logical classification of different computer simulation's form on its basis.

Keywords: Computer Simulation

Małgorzata ŁatuszyĔska

Wydział Nauk Ekonomicznych i Zarządzania Uniwersytet SzczeciĔski

ul. Mickiewicza 64, Szczecin e-mail: mlat@wneiz.pl

Cytaty

Powiązane dokumenty

W pierwszej części warsz- tatów przedstawiono przebieg niezakłóconej, wzorcowej roz- prawy przed OSL, w drugiej w scenariusz celowo wprowa- dzono mnóstwo błędów proceduralnych,

Wąs Jarosław, Gudowski Bartłomiej, Matuszyk Paweł Social Distances Model of Pedestrian Dynamics!. Cellular Automata Vol 4173

wliczone (wymagane dowolne) 0,0075% wartości nieruchomości (Bank akceptuje ubezpieczenia z zewnątrz lecz nie obniża to wówczas marży) Pierwsza rata składki ubezpieczeniowej

Błędy systematyczne mają cztery składowe: stałą, składnik zależny od temperatury, składnik zmienny od włączenia do włączenia (ang. run to run) oraz składnik zmienny

karta kredytowa w momencie podpisania umowy kredytu ubezpieczenie nieruchomości oferowane przez Bank zgoda w zakresie danych osobowych oraz marketingu bezpośredniego.. w przypadku

wliczone (wymagane dowolne) 0,0075% wartości nieruchomości (Bank akceptuje ubezpieczenia z zewnątrz lecz nie obniża to wówczas marży) Pierwsza rata składki ubezpieczeniowej

wliczone (wymagane z banku) 0,2% doliczane do marży Koszt ub.: + 0.2 p.p. do marży do czasu spłaty kwoty kredytu odpowiadającej kwocie. kredytowanego wkładu finansowego. do marży

nieruchomości wliczone (wymagane dowolne) 0,0075% wartości nieruchomości (Bank akceptuje ubezpieczenia z zewnątrz lecz nie obniża to wówczas marży) Pierwsza rata