Seminar Ski Rad - Telekomunikacije

Embed Size (px)

Citation preview

UNIVERZITET U BIHAU Tehniki fakultet BIHA Odsjek: Elektrotehnika Smjer: Informatika

Seminarski radOSNOVI TELEKOMUNIKACIJAta je simulacija i zato se koristi, modeliranje i simulacija u telekomunikacijskim mreama, klasifikacija simulacija (statiki/dinamiki model, deterministiki/stohastiki model, simulacije u kontinualnom/diskretnom vremenu), simulacije sa diskretnim dogaajima, primjeri najee koritenih simulatora.

Mentor: prof. Dr. Aljo Muji Studenti: Almin Topi Edis ati Suad Hrnji

Sadraj:Popis slika: ............................................................................................................................................. 4 Popis tabela: ........................................................................................................................................... 5 Uvod ........................................................................................................................................................ 6 1. ta je simulacija ? .......................................................................................................................... 7 1.1. Osnovne crte simulacije ............................................................................................................... 8 1.2. Cilj simulacije............................................................................................................................. 10 1.3. Simulacija i analitike metode.................................................................................................... 11 1.4. Proces simulacije ........................................................................................................................ 13 1.5. Kompjuteri za simulaciju ........................................................................................................... 14 1.6. Analogni kompjuter .................................................................................................................... 15 1.7. Principi rada operacionog sklopa ............................................................................................... 17 1.8. Primjer simulacije uz pomo analognih kompjutera .................................................................. 19 1.9. Digitalni kompjuter: ................................................................................................................... 20 1.10. Historija simulacije: ................................................................................................................. 22 1.11. Sistemska simulacija: ............................................................................................................... 23 2. Modeliranje i simulacija u telekomunikacijskim mreama..................................................... 25 2.1. Metodologija simulacije i modeliranja: ...................................................................................... 25 3. Klasifikacija simulacija ............................................................................................................... 28 3.1. Statiki/dinamiki model ............................................................................................................ 28 3.2. Deterministiki/stohastiki model .............................................................................................. 29 3.3. Kontinuirani/diskretni simulacijski model ................................................................................. 33 4. Simulacije sa diskretnim dogaajima........................................................................................ 36 4.1. Struktura simulacija sa diskretnim dogaajima .......................................................................... 37 4.1.1. Entiteti ................................................................................................................................. 38 4.1.2. Aktivnosti i dogaaji ........................................................................................................... 38 4.1.3. Resursi ................................................................................................................................. 39 4.1.4. Globalne varijable ............................................................................................................... 39 4.1.5. Generator sluajnih brojeva ................................................................................................. 40 4.1.6. Kalendar .............................................................................................................................. 40 4.1.7. Varijable stanja sistema ....................................................................................................... 40 4.1.8. Statistiki sakupljai ............................................................................................................ 40 4.2. Razvoj simulacije diskretnih dogaaja ....................................................................................... 41 2

4.2.1. Mehanizam pomaka vremena .............................................................................................. 41 4.2.2. Generisanje dogaaja........................................................................................................... 42 4.2.3. Pristupi generisanju dogaaja .............................................................................................. 43 4.3. Strategije izvoenja simulacije ................................................................................................... 45 4.3.1. Rasporeivanje dogaaja ..................................................................................................... 45 4.3.2. Skeniranje aktivnosti ........................................................................................................... 46 4.3.3. Interakcija procesa ............................................................................................................... 47 5. Primjeri najee koritenih simulatora.................................................................................... 49

Zakljuak ............................................................................................................................................. 58

3

Popis slika:Slika 1.1: Dijagram bitnih stavki simulacije..............................................................................9 Slika 1.2: Simulacija i analitike metode.................................................................................12 Slika 1.3: Procedure provoenja simulacije............................................................................13 Slika 1.4: Osnovni elementi analognog kompjutera.................................................................17 Slika 1.5: Operaciono pojaalo................................................................................................17 Slika 1.6: Princip rada sabiraa..............................................................................................18 Slika 1.7: Princip rada integratora..........................................................................................18 Slika 1.8: Osnovni dijagram mnoioca etvrtina-kvadrat........................................................19 Slika 1.9: Dijagram spajanja za d2y dy + a1 a0 y f (t ) ..........................................................21 2 dt dt

Slika 2.1: Hierarhijska struktura komunikacionaog sistema...................................................26 Slika 3.1: Otpornik je statiki sistem, gdje je napon direktno proporcionalan struji, neovisno o vremenu, a kondenzator je dinamian sistem gdje napon ovisi o prethodnom trenutku.......29 Slika 3.2: Deterministiki model..............................................................................................30 Slika 3.3: Stohastiki model.....................................................................................................30 Slika 3.4: Probabilistiki simulator jednoposluiteljskog sistema...........................................31 Slika 3.5: Deterministiki simulator jednoposluiteljskog sistema..........................................32 Slika 3.6: Kontinualni simulacioni model................................................................................33 Slika 3.7: Diskretni simualcijski model....................................................................................34 Slika 3.8: Mjeoviti simulacioni model....................................................................................34 Slika 4.1: Mehanizam pomijeranja vremena u simulaciji diskretnih dogaaja , pomak vremena za konstantan prirast..................................................................................................41 Slika 4.2: Mehanizam pomijeranja vremena u simulaciji diskretnih dogaaja, pomak vremena za sljedei dogaaj.....................................................................................................42 Slika 4.3: Slog i lista dogaaja................................................................................................42 Slika 4.4: Definisanje dogaaja unaprijed...............................................................................43 Slika 4.5: Pristup zasnovan na narednom dogaaju................................................................43 Slika 4.6: Lista dogaaja..........................................................................................................44 Slika 4.7: Dijagram toka rasporeivanja dogaaja...................................................................45 Slika 4.8: Tabele aktivnosti......................................................................................................46 Slika 4.9: Algoritam rada procesora pri interakciji procesa...................................................484

Slika 5.1: Boson Netsim verzija 8 i suelje..............................................................................49 Slika 5.2: QualNet suelje........................................................................................................50 Slika 5.3: Packet Tracer suelje...............................................................................................51 Slika 5.4: Korisniki aspekt procesa simulacije.......................................................................55 Slika 5.5: IMUNES suelje.......................................................................................................56

Popis tabela:Tabela 1.1: Primjeri simulacija u razliitim oblastima...........................................................24

5

UvodKorisnici kompjuterskih sistema, administratori i dizajneri obino imaju za cilj visoke performanse, uz to manju cijenu. To se najbolje postie simuliranjem. U ovom seminarskom radu upoznaemo se sa pojmom simulacije i simulacijskim modeliranjem. Vri se klasifikacija simulacija, od kojih se svaka vrsta detaljno opisuje i pojanjava. Na samom kraju seminarskog rada opisuju se neki od najpoznatijih simulacijskih programskih jezika. Simulacijsko modeliranje i simulacija predstavljaju irok skup aktivnosti vezanih uz izgradnju modela nekog realnoga sistema i njegove simulacije. Simulacija nam je potrebna iskljuivo za simuliranje odreenih sistema. Prvo projektujemo traeni sistem u virtualnom svijetu, svijetu raunara. To se radi pomou simualcijskih jezika. Ukoliko se to pokae rentabilno, i uspjeno onda moemo pristupiti realizaciji sistema u stvarnom svijetu. Ovaj seminarski rad pisan je u poglavljima od kojih je svaka cjelina za sebe povezana sa prethodnim dijelovima. U tim poglavljima svi naslovi su oznaeni i numerisani. Seminarski rad je pisan fontom Times New Roman veliinom 12, dok su naslovi unutar nekih poglavlja pisani istim fontom samo su podebljani. Takoer za naslove poglavlja koriste se font 14 odnosno 16.

6

1. ta je simulacija ?Pod pojmom simulacije se podrazumijeva imitacija odreenih fenomena (vanjskog izgleda ili ponaanja) koristei neke druge ureaje. Sa ininjerske take gledita, poznavanje stvarnog ponaanja sistema pri stvaranju duplikata koji e imati iste karakteristike kao original, uz koritenje kompjutera ili modela naziva se simulacija. Simulaciju nekad definiemo kao eksperimentiranje uz pomo modela. U veini sluajeva model je konstruiran unutar raunara i numeriko eksperimentiranje je gotovo koritenjem modela. Ureaj koji izvrava simulaciju ili kombinaciju raunala i unutarnjeg softvera je poznat pod imenom simulator. Osnovni razlog zbog iroko rasprostranjenog koritenja simulacija je brz i napredan razvoj snage kompjutera. Sa zahtijevane take gledita, sveobuhvatno shvatanje i razvoj ovih sistema je postalo neophodno u mnogim podrujima jer sistemi koriteni od strane drutva i industrije nisu samo kompleksni, nego i opseni, to komplicira analitiku interpretaciju sistema kao cjelinu i njenu eksperimentaciju. Simulacija u kojoj je sistem objekt ili simulacija u sistemskom ininjerstvu je poznata kao sistemska simulacija. Bit sistemske simulacije nije samo u interpretiranju problema, nego u veini sluajeva da omogui njegovo opirnije svatanje u cilju pronalaenja rjeenja razliitih ulaza u model i vrijednosti parametara. Ukratko, simulacija je neophodna mjera za donoenje presuda ili postupaka i postala je neophodan alat u istraivanju i poslu. Simulacija nije samo cilj po sebi, nego i alat ili procedura za sticanje jednog. Problem se ne rjeava samo kroz rezultate simulacijskog izraunavanja. Kvalitet simulacijskih rezultata ne moe biti odreen iskljuivo simulacijom. Njegova potvrda mora biti temeljito procjenjena, sa obzirom na dodjeljene ciljeve i objekte. Ako se vratimo u prolost razvoja simulacija, one su ile u korak sa razvojem kompjutera. Sa pojavom analognih kompjutera, zamjenjuju veinu fenomena od strane elektro sistema i to simuliraju. 1960-tih godina digitalni kompjuteri su stavljeni u praktinu upotrebu to je dovelo do razvoja nekoliko iroko koritenih simulacijskih jezika. 1970-tih godina dolazi do znaajnog koritenja simulatora u raznolikim drutvenim i industrijskim poljima, te razvoj simulatora za iskljuivu upotrebu u raznim poljima traje i dan danas. 1980-tih godina, ekspanzija razvoja simulatora za iskljuivu upotrebu u raznim podrujima dolazi do poveanog iteresa za simulator ope namjene, poboljanje performansi raunala, i dolazak superkompjutera. Sa druge strane nekoliko radnih stanica i personalnih raunara se pojavljuje 1980-tih. Prelazak na ekran u boji i poboljanja u tehnologiji kompjuterske grafike. Korisniki prijateljski simulativni programi za poslovne stanice ili personalne kompjutere se javljaju na7

tritu itavog svijeta. Jedan od primjera su igrice koje koriste kompjuterske grafike i simulacije. 1990-tih godina neki ljudi su postali nezadovoljni sa postojeim kompjuterima ili simulacijama. Oekivanja od fiziara za doprinos simulacijama su bile ogromna. Raunanjem fiziari su smatrali da pretvaranje kompjutera u eksperimentalni alat, prirodna rije i fiziki fenomen moe biti nerjeiv; oni predviaju dolazak kompjutera ija e brzina raunanja biti 1 milijun puta vea od brzine postojeih kompjutera. Ideal eksperimentacija raunanja je i dalje samo san. Meutim, ukoliko se napredkom brzina raunanja moe poveavati, animacija u stvarnom vremenu se uz pomo nekih superkompjutera se vjerovatno moe realizovati. 1.1. Osnovne crte simulacije Kada govorimo o simulaciji, postoje neke bitne stavke kao, ta je cilj simulacije, koji su to koraci potrebni uz simuliranje kao mjera za postizanje ciljeva, koji entiteti simulacijskog jezika se koriste u simulacijskom modelu kao i simulacijske procedure, i tako dalje. Ovo je prikazano na slika 1.1 koja svakako ne prikazuje sve stavke ali bira one osnovne vezane za sistemsku simulaciju. Simulacija je neophodna u razliitim stadijima vremena, vrijeme planiranja, vrijeme dizajniranja, vrijeme operacije, vrijeme nakon zavretka, i tako dalje. Veinom se simulacija koristi za vrijeme planiranja i dizajniranja radi obavljanja preliminarne procjene razvoja sistema. Prva od svih kvalitativnih procijena razvoja subjekta i efekat razvoja je doneen koristei metode pristupa sistema poput pisanja scenarija, bombardovanje idejama ili K (Kawakita Jiro) metoda. Za neophodne dijelove tehnologije, performanse se individualno procjenjuju prema eksperimentiranju. U veini sluajeva simulacija moe biti koritena za numeriko eksperimentiranje kako kvalitetno provesti sveobuhvatnu procjenu sistema. Za realizaciju sistema, potrebno je obratiti panju na mnoge stavke sa slika 1.1. ovisno o tome da li se verijablama simulacije mora rukovati sa analognim, digitalnim ili hibridnim (kombinacija prva dva) kompjuterom. Odlueno je da se moe koristiti bilo koji od navedenih kompjutera.

8

Slika 1.1: Dijagram bitnih stavki simulacije

Prilikom izgradnje modela postoji potreba da se zadani cilj simulacije ispravno razumije, a karakteristine osobine stvarnog svijeta koje ekstraktujemo uzimamo kao objekt. U rasponu modeliranja moemo: 1. Uzeti u obzir stvarni svijet podjeljen na objekte i emu kontrole koje se primjenjuju na taj objekt. 2. Imitacija samog objekta, iskljuujui emu kontrole ili ukljuujui je unutar modela. to se tie stupnja aproksimacije, manji je broj sluajeva koji koriste primarni model, koji odgovara osnovnoj jednadbi koja se odnosi na teoriju, ali veinom se koriste idejnovezani aproksimirani modeli (sekundarni model). Zapravo nastali fenomeni razvijaju se vremenom, a kada se u obzir uzme vrijeme varijacije ono postaje dinamiki model; kada ne uzimamo u obzir vremenske varijacije ono postaje statiki model. Dinamiki model djelimo ovisno o koncepciji vremena na: a. Kontinuirano - promjenljivi model b. Diskretno promjenljivi model

9

Postoje sluajevi kod kojih stupanj teine ili lakoe u numerikim proraunima varira zavisno od toga da li su osobine objekta ili modela linearni ili nelinearni. Naprijed usmjerena metoda koja obavlja simulaciju protoka vremena je opa metoda simulacije, ali ponekad simulacija suprotnog smjera je takoer napravljena da trai odreene varijable (odgovarajue za ulaz u normalnu simulaciju) za ostvarnje ciljeva kao odreene odluke. U oba smjera i naprijed i nazad, ponavljana simulacija se obino provodi metodom pokuaja i pogreaka dok mjenjaju uvjete. Takoer je mogue provesti simulaciju

optimizacije uz pomo dodavanja funkcije optimizacije, koja automatski zahtijeva optimalne uvjete. Ovisno o cilju simulacije, postoje sluajevi kod kojih vrijeme za prelazak na simulaciju mora biti jednako stvarnom vremenu. Na primjer, za obuku vonje zrakoplova ili vozila moramo pristupiti u stvarnom vremenu. Nasuprot toga, postoje sluajevi skraivanja ili produavanja stvarnog vremena. Veliki broj simulacija se provodi sa tako zvanim nestvarnim vremenom. Raznoliki specifini simulacijski jezici su razvijeni za pisanje simulacijskih programa na digitalnom kompjuteru za kontinuirane i diskretne sisteme. 1.2. Cilj simulacije Simulacije se koriste da bismo shvatili djelovanja, jer koritenje odreenih subjekata ne samo da je skupocjeno nego ukljuuje i odreen rizik. Pored toga, nesigurnost u pogledu vremena potrebnog za ostvarenje rezultata. Ciljevi simulacije ukljuuju sljedee: 1. Kvalitativno shvatanja fenomena koji su nastali u stvarnom svijetu ili ponaanje sistema, je prvi korak do sistemskog ininjerstva. Ako postoji model koji je sposoban da prikae stvarni mehanizam, tada novo znanje se stie od raznih ulaza u model ili parametara i moe ponavljati simulaciju. Koritenje simulacije omoguava: a. Razumjevanje izlaza sa obzirom na ulaz b. Analiza uvjeta mjeanja dva sistema, mehaniki i elekronski sistem c. Analiza osjetljivosti parametara ili ablona Model koji se koristi nemora znaiti da je uvijek u pravu. Postoji metoda u kojoj prema nekoliko hipotetikih modela je napravljeno eksperimentiranje sa simulacijom i ispravnost modela je prouena putem ve poznatih stavki. Ovaj metod je poznat pod nazivom identifikacija putem simulacije. Simulacija koja se koristi u istraivanjima fizike spada u ovu kategoriju. Postoje mnogobrojne metode za identifikaciju, kao to su:10

d. Identifikacija prostog predmeta e. Kaskadna konekcija identifikacijskog sistema f. Identifikacija kaskadnog procesa Ovakvi tipovi simulatora se veoma esto koriste za shvatanje i predvianje ne samo prirodnih fenomena, nego i postojea stanja drutvenih fenomena.

2. Sistem je razvijen nakon prolazka kroz procese kao to su analiza, planiranje, operacije. Meutim postoji potreba za kvalitativnom analizom, shvatanjem funkcije i mogunosti razvijenog sistema prije svakog od navedenih procesa. Kao primjer razvoja sistema posmatrajmo uspostavljanje kemijske tvornice. Balans prorauna u odnosu na ulazne i izlazne materijale ili balans topline je neophodan za odluku izgleda tvornice ili rasporeda opreme. Kada se montaa opreme planira po simulaciji koja koristi statiki model, kvaliteta kontrole operacijske strategije moe se ocjeniti operacijskom simulacijom koja se koristi dinamikim modelom. 3. Jo jedan od ciljeva simulacije nije samo ispitati stepen zadovoljavanja funkcija i mogunosti, nego ocjeniti utjecaj razvoja sistema prema ocjeni cjelokupnog plana sistema. Ovo je poznato kao procjena okoline ili ocjena negativnih utjecaja. 4. Takoer postoje primjeri unutar kojih su ljudska bia aktivni uesnici u simulaciji. U ovom sluaju sistem ili model se prvo ispita i potvruje, a nakon toga dolazi do ukljuenja ljudskog faktora u simulaciju. Cilj jeste shvatanje ljudskog ponaanja i trening za uenje. Ispitivanje upotrebne pogodnosti za rad odreene opreme koju koriste ljudi je primjer simulacije za utvrivanje ljudskog ponaanja ili psihikih reakcija. Simulator leta ili poslovnih igara su primjeri treninga uenja. Trening evakuacije u trenutku prevencije katastrofa predstavlja ne samo trening uenja, nego slui i za shvatanje ponaanja ljudi u kriznim situacijama. 1.3. Simulacija i analitike metode Postoje tri tipa simulacijskih metoda. Prvi tip naziva se usmjereno analogni, koristi stvarni sistem, a simulaciju provodi uz pomo modela. Drugi tip simulira verziju stvarnog svijeta uprotenog u neki model. Trei tip je situacija u kojoj je problem formuliran u oblik koji je analitiki rjeiv, i rjeen je numeriki, simulacijom. Veza ova tri tipa metoda i analitikih metoda prikazana je na slika 1.2.

11

Slika 1.2: Simulacija i analitike metode

Kao primjer prvog tipa, stvarni sistem se moe koristiti kao model. Fenomeni iz realnog svijeta se zamjenjuju replikom ili imitacijom za prouavanje karakteristika sistema. Na primjer, provoenje treninga prevencije katastrofa uz reprodukciju pojave katastrofa, je primjenljiva na ovom tipu metode. Kod ovog tipa, modeli se veinom koriste, poput eksperimentacije tunela vjetra za aerodrome, kod ispitivanja hidromehanikih karakteristika. Eksperimentacija vodenih cisterni za brodove, eksperimentacija za postavljanje opreme ili kanala unutar komore nuklearnog reaktora i tako dalje. Takoer, eksperimentacija sa ivotinjama u medicini takoer spada u usmjereno analogni tip metodu. Drugi tip simulacije, koritenje matematikog modela, zapoljava model sastvaljen od stvarnog svijeta, dok numerike vrijednosti su privrene tomu da prepoznaju stvarno. Ovaj tip simulacije nije iskljuivo vezan za sluajeve u ininjerstvu, koji se nose sa fizikalnim varijablama; koristi se takoer u poljima drutvenih nauka, menadmentu i drugima. U sistemima velikih razmjera ili u drutvenim naukama teko je vriti eksperimentaciju sa stvarnim sistemima i eksperimentacioni podatci su veinom generirani simulacijom. Drugim rijeima, stavljanjem razliitih vrijednosti u model i simuliranje, omoguuje jednostavno izvravanje numerikih eksperimenata kao odgovor na razliite uvjete. Trei tip simulacije, koritenje analitikog modela. Ovaj tip analitiki ne rjeava matematike formule ali dobiva numerike rezultate,

12

namjerno uz pomo simulacije. Ovo omoguuje simuliranje stohastikog modela uz pomo Monte Carlo simulacije; numeriko rjeavanje vjerovatnoe pojava u stvarom svijetu postaje mogue zamjenjujui ak i izvorni ne-vjerovatni tip parcijalnih diferencijalnih jednadbi ili integralne jednadbe, s stohastikim modelom. Meutim, kako ova metoda nije uvijek precizna niti rukovodljiva u odnosu na druge numerike metode analize, njegova upotrebljivost nije uvijek visoka. 1.4. Proces simulacije Proces simulacije se razlikuje ovisno o njegovom cilju i objektu, ali uveliko je slian onom to nam je prikazano na slici 1.3.

Slika 1.3: Procedure provoenja simulacije

13

Drugim rijeima, 1. Klasifikacija objekta. Otkad je simulacija potpun proces za potizanje ciljeva, ne samo da cilj mora biti jasan, nego istovremeno moramo znati koji dio objekta ili koje ponaanje moramo simulirati i do kojeg stepena tanosti da bi cilj bio zadovoljen. 2. Skupljanje i organiziranje podataka. Podaci vezani za problem se prouavaju, skupljaju i oraganiziraju za koritenje u pripremnom modelu i u odluivanju dometa sistema, broj varijabli, opseg varijacija, i ulazne informacije. 3. Izrada modela. Ovo je izrada konceptnog i apstraktnog modela. Model opisuje unutarnje stanje stvarnog sistema i vezu ulaz/izlaz u kojoj se koriste drugi apstraktni koncepti, poput numerikih jednadbi, logikih jednadbi, algoritama i drugih. Navedeni su vani za upotrebu. a. Uniformnost u konceptu modeliranja b. Potvrda dometa i strukturni elementi modela c. Selekcija varijabli i parametara d. Podjela interakcije izmeu strukturalnih elemenata i ovisnosti (dinamika i statika) 4. Eksperimentiranje simulacijom. Jednom kada je model odreen, mora biti implementiran u kompjuteru ili nekom stvarnom objektu. Za to je potrebno odrediti tip kompjutera ili neki specifini ureaj koji je usklaen sa ciljevima i zahtijevima, kao i potreba za upravljanjem u stvarnom vremenu, ovjek/maina, ekonomija, tanost i tako dalje. Nakon toga se bira odgovarajui kompjuterski programi i karakteristike ureaja. 5. Evolucija i analiza rezultata. Kriterij evolucije bi trebao biti unaprijed uspostavljen i simulacija uraena u vie navrata. U ovom procesu iz alternativnih prijedloga se bira najprimjerniji sistem i utvruje se vrijednost sistemskih operacija. 1.5. Kompjuteri za simulaciju Analogni, digitalni i hibridni kompjuteri se koriste za simulaciju; prema tome metode se nazivaju anlogna simulacija, digitalna i hibridna simulacija [5]. Bez obzira koju metodu izabrali, objekat mora biti modeliran i implementiran u kompjuteru. Za kontinualni model sistema, koji moe biti izraen sa jednostavnom diferencijalnom jednadbom, i za simulaciju dinamikih modela koriste se konvencionalne analogne ili14

hibridne simulacije. Osobine koje su svojstvene analognoj simulaciji su velika brzina raunanja u emu je raunanje mogue u realnom vremenu, ili brzina stotog dijela istog; promjene u rjeenjima s obzirom na promjenu parametara je jednostavno za shvatiti (mogua je takozvana senzitivna analiza); intuitivan i razumljiv program u odnosu na stvarni objekt; jednostavno rukovanje i tako dalje. Nedostatak je u davanju velikog broja podataka za obradu ili karakteristina nelinearnost, visoka tanost je nedostina protiv parcijalne diferencijalne jednadbe. Digitalna simulacija kao model koristi tako zvane jednadbe numerikog izraunavanja za pronalazak numerikih rjeenja. Koritena je u logikim proraunima, problemima ekanja u redu, statistikim problemima, diskretnoj simulaciji i ak u svim poljima kontinualne simulacije, kao to su nelinearni problemi, parcijalne diferencijalne jednadbe i tako dalje. Nedostatak je u tome da su digitalni kompjuteri u ranim fazama bila spori pri raunanju u odnosu na analogne kompjutere, i takoer, bilo je teko paralelno povezati sa stvarnim objektom. U posljednjih nekoliko godina, poveavanjem brzine raunara zajedno sa razvojem simulacijskih jezika pogodnih za simulaciju sistema, uveliko se proirila upotreba digitalnih simulacija. Hibridna simulacija kombinira upadljiv izgled analogne simulacije i digitalne simulacije i bazirana je na tehnikama hibridnog raunanja. Prema tome, uzima prednost analogne brzine, preciznost digitalnog, funkciju upravljanja podacima i simulativno koritenje stvarnog sistema (analogni) u digitalnoj simulaciji je postalo mogue. Ovisno o namjeni, hibridne simulacije se danas koriste za rjeavanje diferencijalnih parcijalnih jednadbi ili optimalnih vrijednosti problema.

1.6. Analogni kompjuter U analognom kompjuteru, jo od operacionih kola kao sabiraa, mnoitelja, upotpunjavaa mjenjaa znakova, program moe biti napravljen elektronskim spajanjem razliitih operacionih kola u skladu sa datim jednadbama pa ak i kada nema dubokog matematikog znanja diferencijalnih jednadbi, numerika rjeenja problema se mogu pronai. Posebnost simulacije uz pomo analognog kompjutera je ta da sva raznolika operaciona kola mogu provesti proraune istovremeno, operacija velike brzine je mogua i analitiki nerjeivi problemi mogu biti rjeeni. Osim toga, rad u stvarnom vremenu je mogue uz rjeavanje jednadbe i odgovor stvarnog vremena se moe ostvariti. Rad u realnom

15

vremenu je neophodan uvjet u sluaju da su kompjuterska i prava oprema sjedinjene ili za trening simulator. Analogni raunar fundamentalno obuhvata sljedea etiri dijela: 1. Operativni dio 2. Dio povezivanja 3. Kontrolni dio 4. Odjeljak za snimanje omoguuje prikazivanje rjeenja Veza meu njima i neki od osnovnih njihovih elemenata, prikazano je na slici 1.4.

Operativni dio. Ovaj dio predstavlja centar funkcija analognog kompjutera i sastoji se od analognih operacionih elemenata, logikih operacionih elemenata, elemenata povezivanja za analogiju i logiku i djelova za postavljanje koeficijenata po potenciometru i tipu funkcije. Operacioni elemenat ukljuije takve linearne operacione elemente kao to si integrator, sabira i tako dalje, koji migu biti formirani operacionim pojaaloom, kao i nelinearne elemente poput mnoitelja, generatora funkcija i tako dalje.

Dio povezivanja. Ovaj dio postavlja raznolike grupe operacionih elemenata i postavlja program prema jednaini raunanja; takoer je poznat kao patch board. Uglavnom koristi se naziv patch i moe se odvajati od opreme. Ovisno o zahtijevima, moe spremiti sadraj programa. Veze sa vanjskim krugovima, kao i zaslon rjeenja i odjeljak snimanja su takoer ukljueni ovdje. Kontrolni dio. Ovaj dio kontrolira operacione radnje i ita izlaz svakog operacionog elementa. Uostalom primarne radnje kao to su reset, raunanje i dranje, takoer postoje radnje za automatsko ponavljanje operacija, postavke potenciometra.

16

Slika 1.4: Osnovni elementi analognog kompjutera

1.7. Principi rada operacionog sklopa Ako su impedanse Zi i Zf povezane sa pojaalom visoke dobiti u negativne povratne informacije kao to je prikazano na slika 1.5. , tada ulazna terminalna taka pojaala SJ postaje gotovo jednaka kao i potencijal zemlje (jer ei = -e0/A za A>>1) u rasponu u kojem pojaala ne budu zasiena. Nadalje, nema protoka od take SJ do pojaala kako je ulazna impedansa izuzetno visoka. Kao rezultat trenutni protok zbog napona koji se dodjeljuje ei postaje i=ei/Zi , i taj trenutni protok dospijeva do izlaza putem SJ i Zf.

Slika 1.5: Operaciono pojaalo

17

Slijedi: 0 = Relacija izmeu ei i e0 postaje:0 =

=

Takvo pojaalo je poznato kao operaciono pojaalo. Ako je impedansa operacionog pojaala spojena kao na slika 1.6. formiran je sabira , dok se moe formirati i integrator uz povezivanje kao to je prikazano na slici 1.8. Postoje raznolike metode konstruisanja mnoilaca, ali veinom se koristi mnoilac etvrtina - kvadrat. Za dva signala x i y etvrtina njihovog zbira, i etvrtina njihove razlike e biti:

Slika 1.6: Princip rada sabiraa

Slika 1.7: Princip rada integratora

18

0 =

1

+ 0

(x + y)2 = x2 + y2 + 2xy (x - y)2 = x2 + y2 - 2xy

Kada se uzme razlika ove dvije jednaine, briu se x2 i y2, dok ostaju xy, kao u narednoj jednaini: (x +y)2 (x y)2 = 4xy

1.8. Primjer simulacije uz pomo analognih kompjutera Kada se modelira pokretna platforma za eljezniki vlak ili osobni automobil sa oscilacione take gledita. Ima oblik unutar kojeg vanjska sila se dodaje na tri elementa, masa, opruga, priguenje.

x

y

x+y

2

(x + y)2

2(x - y)2

1/4

xy

-1

x-y

-1

Slika 1.8: Osnovni dijagram mnoioca etvrtina-kvadrat

19

Odnosi ovih elemenata su formirani, postaju:

M gdje je:

d 2x dx + D + kx = F (t ) 2 dt dt

M D K F

masa, sila priguenja, konstanta opruge, vanjska sila

Osnove mehanikog sistema osciliranja moe biti modeliran gornjom jednainom. U nastavku modeliramo oscilator elektrinog sistema. Oscilacije se javljaju u elektrinom sistemu kada napon E(t) napaja krug sa zavojnicom L, otpornikom R i kon denzatorom C spojenih u seriju. Kada se uspostavi jednaina za odnos napona ukupnog sistema, mogu se uzeti u obzir jednaine u odnosu na integrirane koliine, nove koliine Q i trenutne I , kao konani rezultat bi mogli dobiti drugu linearnu jednainu. d 2x dq q + R + = E (t ) 2 dt dt C

L

Za simulaciju ove jednaine koriste se tri tipa elemenata, sabira, integrator i potenciometar, i bolje ih je spojiti linijama kako nam pokazuje slika 1.9.

1.9. Digitalni kompjuter: Prvi elektronski kompjuter ENIAC je prvo razvijen na univerzitetu u Pennsylvania 1946 godine.

20

IC1 = (

dy ) t =0 dt dy dt

IC2 = y (0)

a1f (t ) a1 dy a0 y dt

a0

Slika 1.9: Dijagram spajanja za

d2y dy + a1 a0 y f (t ) 2 dt dt

Digitalni kompjuteri do tad su bili mehanikog tipa ili relej tipa. Ovi ENIAC kompjuteri su sadravali oko 18000 vakumskih cijevi radi poveavanja brzine. Program sa ENIAC-om, je kao i kod analognih kompjutera implementiran koristei patch board, i imaju formu koja moe biti spremljena u patch board. Dananji raunari su prilagodili spremljene sistemske programe koje je osmislio John von Neumann, konsultant u razvoju ENIAC kompjutera. Nazivaju se von Neumannovi kompjuteri. U spremljenom sistemskom programu, program je spremljen u memoriji kao serije insrukcijskih kodova, koji se dohvataju redom jedan po jedan, dekodiraju i izvravaju. Spremljeni sistemski program je predstavljen 1945 kao EDIVAC zamjena za ENIAC. Meutim, EDSAC sa engleskog univerziteta Cambridge je bio prvi spremljeni programski sistem koji ima izraen uinak na istraivanja i razvoj buduih kompjutera. EDSAC kao prvi spremljeni program sistemskog kompjutera po prvi puta na svijetu vri raunanja u maju 1949 godine. Digitalni kompjuteri sa spremljenim programom sistema sastavljeni su na takav nain, drugim rijeima von Neummanov kompjuter je postao osnovni arhitektonski oblik dananjih kompjutera. Zahtjev za poveavanje operacione brzine rada kompjutera dovodi do promocije tehnologije poluvodia i napredak u tehnologiji arhitekture kompjutera. Zahvaljujui poluprovodnicima, godinu za godinom tranzistori si postajali sve manji, a time se poboljavala LSI operaciona brzina i stepen integracije. Napredak u tehnologiji arhitekture kompjutera poveava operacionu brzinu putem stvaranja efektivnih, paralelno sekvencijalnih

21

procesa

u

toku

izvravanja

svake

naredbe

kompjutera

preko

pipeline

obrade.

Superkompjuter je opskrbljen iscrpljujuom pipeline obradom i operacionim vektorima obrade funkcije. Superkompjuteri su postali jedni od najefikasnijih alata za simuliranje stvarnih i fizikalnih fenomena. Raunalo u razvoju kao alat za simulaciju stvarnih i fizikalnih fenomena sa veom tanoi i veom brzinom jeste paralelni kompjuter. Postoje dvoje vrste paralelnih kompjutera: oni kod kojih paralelna operacija obrade se vri putem unutarnje arhitekture kompjutera i oni kod kojih su mikrokompjuteri spojeni vertikalno i horizontalno i napravljeni su da rade paralelno. Kakav god sistem da se koristi, paralelni kompjuteri su sasvim sigurno postali najvei alat za podrku eksperimentalnim proraunima fiziara. Karakteristina osobina superkompjutera ili paralelnih kompjutera je da posebno ciljaju na paralelizam operacija te poboljati brzinu rada vektora u matrici ili distribucijskog sistema. Meutim, programi osmiljeni od strane ljudi su veinom serijski i konvertovanje serijski izraenih programa u programe koji su efektni u radu vektora ili paralelnih operacija predstavlja problem dok se koriste ovi kompjuteri. Popularnost osobnih kompjutera od 1980 je proirila upoterbu simulacija. Ne samo da obini korisnici osobnih kompjutera mogu napisati simulacione programe za vlastite potrebe, nego takoer mogu iskoristiti raznolike tipove trinih simulacionih programa po malim cijenama. Raznoliki gaming simulacioni programi su stavljeni na trite i oni koji to ele, mogu da osjete efekte simulacije. Stvaranje radnih stanica uinili su da se ranije simulacije izvravaju samo velikim kompjuterima, po mogunosti na jednom stolu. U daljem razvoju displeji visoke rezolucije su koriteni i kod osobnih kompjutera a i kod radnih stanica, i kao rezultat toga nije samo boja postala mogua nego i vizualizacija izraza sa kombinacijom trodimenzionalnog displeja, kompjuterske grafike, animacije i tako dalje.

1.10. Historija simulacije: Maina za raunanje analognog tipa se prva pojavila u historiji sistemskih simulacija. Klizna pravila, planimetar, integratori i drugi su ve dugo bili u upotrebi. Diferencijalni i harmonijski analizator su stvoreni krajem devetnaestoga stoljea. Intagracija je obavljena pomou proizvoda rotacijskog kuta uz pomo mehanikih krunih ploa. 1931 godine V. Bush je izmislio diferencijalni analizator na MIT-u. Jo se moe zvati mehaniki tip jednostavnog analognog kompjutera. Bush je rijeio nejviu diferencijalnu jednainu estoga reda. Nakon toga razvijen je ureaj koji automatski rjeava diferencijalne jednaine. Analogni22

kompjuteri sa vakumskim cijevima javljaju se krajem drugog svjetskog rata. Tko je ga je izumio nije u potpunosti jasno, ali veina ljudi smatra da ovaj ureaj za raunanje, istih principe kao i diferencijalni analizator, moe se postii kombinacijom kola vakumskih cijevi. 1950-tih godina, analogni kompjuteri su istraeni, prouavani i veinom koriteni. Sredinom 50-tih godina kada su se pojavili digitalni kompjuteri, ideja je bila staviti naprijed obavljanje simulacijskih tehnika koje se provode na analognom kompjuteru, na digitalni kompjuter kao takav. Softver koji utjelovljenjuje ove koncepte je razvijen na razliite naine zajedno sa uspostavljanjem osnovne upotrebe velikih kompjutera. CSMP i DDS su veinom koriteni kao jezici kontinualne sistemske simulacije. 1960-tih godina simulacijski jezici za diskretne sisteme su razvijeni i GPSS i SIMSCRIPT se koriste i dan danas. Poetkom 1970-tih uvode mogunost koritenja superkompjutera i simulacije prirodnih fenomena ili napredni fizikalnih fenomena. Popularizacijom osobnih kompjutera i radnih stanica u toku druge polovine 1980-tih godina, u razvoju nekoliko prilagoenih aplikativnih programa, simulativni programi, sa odlinim sueljem ovjek-maina.

1.11. Sistemska simulacija: Simulacija ulazi u iru upotrebu kako je upravljanje sistemom od strane drutva i industrije postalo vee i kompleksnije. U jednu ruku, da bi analitiki rijeili i eksperimentirali nekim sistemom kao cjelinom, je bilo teko, a u drugu ruku osjetila se potreba za njegovim shvatanjem i evolucijom. Kod velikih sistema teko je predvidjeti kako e odreena promjena jednog dogaaja uticati na drugi. Stoga sistem je modeliran i implementiran u kompjuteru. Osjetljiva analiza se radi uz razne vrijednosti ulaza modela i parametara radi boljeg shvatanja sistema i pri tome rjeavanje bilo kakvih problema. Drugim rijeima, simulacija je postala neophodan alat za donoenje znaajnih odluka i procjena. Tehnologija simulacija napreduje uz porast potranje za sistematizacijom i unapreenje kompjutera. Simulacija koja se bavi problemima sistema naziva se sistemska simulacija. Karakteristine osobine simulacije posljednjih godina su razvoj objekto-orijentiranih ili problem-orijentiranih simulatora i bitan napredak rukovanjem mogunostima, kao rezultat toga promoviranje sistemskih koncepata i bolje metode prezentiranja rezultata. Sistemska simulacija je danas iroko rasprostranjena, ak u poljima industrije i tehnologije brzo dosee visoke nivoe.1

23

Tabela 1.1: Primjeri simulacija u razliitim oblastima

Oblast 1. Elektrina energija 2. Nuklearna energija 3. Metal i elik 4. Upravljanje vodenim resursima 5. Tvornice 6. Prijenos

Cilj koritenja simulacije Plan rada elektro-energetskog sistema, plan rada sistema vodenog toka, analiza i sistemske karakteristike, trening rada. Dizajn sistema, dizajn jezgre reaktora, dizajn jezgre goriva reaktora, operaivna kontrola, fizikalni fenomeni (radijacija, plazma). Plan izgleda tvornice, plan rada, plan upravljanja, upravljanje zalihama. Procjena potreba, plan objekta, plan rada, modeliranje i prirodni fenomeni. Plan instalacija, plan rada, maketa, vizualizacija toka, vibracije, pouzdanost i sigurnost analiza. Plan gradskog saobraaja, plan eljeznikog sistema, kontrola operacija, plan protoka objekata u prostorijama, simulirani vizualni raspon. Plan mrenih konfiguracija, prijenos funkcije prekidanja, funkcija kontrole mree, funkcija upravljanja mreom. Plan konfiguracije, evolucija funkcija (logika), evolucija performansi. Dizajn krugova, dizajn ureaja, dizajn procesa Podrka za donoenje odluka, upravljanje proizvodnjom, upravljanje zalihama.

7. Komunikacije 8. Kompjuter 9. Proizvodnja poluvodia 10. Upravljanje

24

2. Modeliranje i simulacija u telekomunikacijskim mreamaSimulacija predstavlja imitaciju nekog objekta iz stvarnog svijeta, i njen osnovni cilj jeste predstavljanje karakteristika simuliranog objekta. Simulacija se koristi za modeliranje stvarnih sistema da dobijemo uvid o njihovom funkcionisanju. Postoji nekolicina problema pri obavaljnju simulacije, a one su:

1. Pribavljanje validnih izvornih informacija o sistemu 2. Odabir kljunih karakteristika ponaanja 3. Upotrebljavanje uprotenih aproksimacija i pretpostavki unutar simulacije 4. Vjernost i validnost rezultata simulacije

Simulacija u kojoj putem raunara pokuavamo modelirati neku situaciju iz stvarnosti, kako bismo prouili nain rada modeliranog sistema, naziva se raunarski bazirana simulacija. Primjer ove simulacije je simulacija mrenog saobraaja u telekomunikacijskim mreama. Eksperiment simulacije ima za cilj da putem raunara, odnosno putem adekvatnih softverskih alata predstavi kako se sistem ponaa. Kod tog softverskog modela vre se posmatranja i uoavaju se odreeni pokazatelji. U obzir se uzimaju samo oni mehanizmi koji su odgovorni za ponaanje modela. Simulacijski model telekomunikacijske mree opisuje funkcionisanje mree pomou pojava na pojedinim njenim elementima. U model se ugrauje zavisnost izmeu pojedinih elemenata tako da se moe uspostaviti dinamiko ponaanje mree. Nakon postavljanja modela, pokree se sluajnim generisanjem podataka (probabilistika simulacija) ili se pokree punjenjem nekim reprezentativnim ulaznim podacima (deterministika simulacija) i nakon toga se simulira dinamiko ponaanje sistema. 2.1. Metodologija simulacije i modeliranja: Osnovno metodoloko pitanje koje se namee prilikom provoenja simulacije jeste kako stvarni problem preslikati u problem koji je mogue rijeiti simulacijom, ako ne u potpunosti onda barem u odreenoj mjeri. Taj proces obuhvata dvije faze, a to su faza definisanja problema, i faza deskriptivne analize. Pri tome simulacija ne predstavlja kopiju stvarnog25

sistema, jer to bi dodatno uvealo kompleksnost postupka i potrebno vrijeme. Upravo zbog toga upotrebljavaju se razne tehnike koje daju prihvatljivu aproksimaciju sistema. Te tehnike se dijele na dva nivoa:

-

Nivo modeliranja cilj ovog nivoa je predstavljanje sistema ili specifinih funkcija ili procesa u sistemu

-

Evaluacija performansi procjena odgovarajue mjere performansi sistema

Tanost i vrijeme modeliranja su obrnuto proporcionalani, to je model taniji, njegov opis je detaljniji i potrebno je vie instrukcija za njegovo opisivanje. Sistem nije jednosznano definisan nego on predstavlja posmatrani entitet u bilo kojem trenutku. Ovaj entitet se prikazuje blok dijagramom meusobnog povezivanja skupa podsistema. Cjelokupan prikaz sistema se moe vizualizirati dijagramom stabla kao na slici.

Slika 2.1: Hierarhijska struktura komunikacionaog sistema

26

Cilj metodologije jeste smanjiti kompleksnost sistema odnosno predstaviti ga sa minimalnim brojem blokova. Prikazana hierarhijska struktura bi se mogla tumaiti na sljedei nain Nivo 0 predstavlja mreu, Nivo 1 linkove, Nivo 2 podsisteme svakog linka, itd. Tehnike evaluacije performansi predstavljaju skup analitikih alata i pretpostavki koje se primjenjuju unutar simulacijskog softverskog paketa u cilju efikasne procjene neke mjere performansi na sistemskom nivou. Tehnike evaluacije performansi mogu se dizajnirati za svaki pojedinani sluaj, a obuhvataju:

1. Pretpostavke osobina sistema 2. Pretpostavke o statistikim osobinama talasnih formi 3. Napredne statistike tehnike

Priprema verifikacije simulacijskog modela zahtijeva izvravanje validacije i kalibracije. Verifikacija je poreenje programskog koda sa modelom, da bismo bili sigurni kako model predstavlja ispravnu implementaciju modela. Cilj verifikacije jeste otklanjanje postojeih greaka u logici i implementaciji modela. Validacija takoer predstavlja poreenje izlaza modela sa oekivanim ponaanjem sistema. Validacija se bazira na tri pitanja:

a. Da li model predstavlja stvarni sistem na odgovarajui nain? b. Da li su podaci koje generie model karakteristike stvarnog sistema? c. Da li su rezultati modela ispravni?

Kalibracija predstavlja podeavanje postojeih parametara i obino ne ukljuuje uvoenje novih parametara, koji bi promijenili strukturu modela. U kontekstu optimizacije, kalibracija je procedura optimizacije koja je ukljuena u identifikaciju sistema ili se koristi tokom eksperimentalnog dizajna.2

27

3. Klasifikacija simulacija

Kompjuterski simulacijski modeli se mogu klasificirati na nekoliko naina: 1. Statiki/dinamiki model: Statiki modeli su oni modeli koji su u stanju mirovanja, oni se ne razvijaju vremenski. S druge strane, dinamiki modeli predstavljaju sisteme koji se razvijuju vremenski ( npr., modeli saobraajnih semafora). 2. Deterministiki/stohastiki model: Kod deterministikih modela veza izmeu matematikih i logikih varijabli (elemenata) je unaprijed fiksna i ne podlijee neizvjesnosti. Model sa najmanje jednom nasumice odabranom ulaznom varijablom se naziva stohastiki model. 3. Kontinuirani/diskretni simulacijski model: U diskretnom simulacijskom modelu varijabla stanja se trenutano mijenja u odreenim takama u vremenu, dok kod kontinuiranog modela varijabla sistema se mijenja konstantno s vremenom.3

3.1. Statiki/dinamiki model Svi sistemi, i prirodni i one koje je ovjek stvorio su dinamki u smislu da postoje u stvarnom svijetu i koji se razvijaju s vremenom. Matematiki modeli takvih sistema se, naravno, moe posmatrati kao dinamian u smislu da se razvija s vremenom i zato sadre vrijeme. Meutim, esto je korisno napraviti aproksimaciju ignoriranjem vremenske ovisnosti u sistemu. Takvi sistemi se nazivaju statiki modeli. Tako moemo definirati koncepte dinamikih i statikih modela: Dinamiki model ukljuuje vrijeme u modelu. Rije dinamian dolazi od grke rijei dynamis to znai snaga i mo, dinamikom kao (vremenski ovisan) interakcija izmeu sila. Vrijeme moe eksplicitno biti ukljueno kao varijabla u matematikoj formuli ili da bude posredno ukljuena, npr., derivacija varijable kroz vrijeme ili kao dogaaj koji se javlja u odreenim takama u vremenu. Statiki model moe se definirati kao model bez utjecaja vremena. Rije statian dolazi od grke rijei statikos to znai uravnoteen. Statiki modeli esto se koriste za opisivanje sistema u stacionarnom stanju ili u uravnoteenim situacijama, gdje se izlaz ne mijenja ako je ulaz uvijek isti. Meutim, statiki modeli mogu prikazati vrlo dinamino ponaanje kada se na njihov ulaz dovede dinamiki signal.28

Obino je sluaj da ponaanje dinamikog modela ovisi o svojoj historiji prethodnih simulacija. Na primjer, prisutnost derivacije po vremenu u matematikom modelu znai da je derivaciju treba integrirati za rijeavanje odgovarajue varijable kada je model simuliran, odnosno, operacija integriranja uzima istoriju prijanjeg vremena u raun. To je sluaj, npr. za modele kondenzatora, gdje je napon na kondenzatoru proporcionalan akumuliranom naboju u kondenzatoru, odnosno, integracija/akumulacija struje kroz kondenzator. Deriviranjem te relacije napon kondenzatora po vremenu postaje proporcionalan struji kroz kondenzator. Tako, moemo prouavati kako napon kondenzatora raste tijekom vremena prema odnosu proporcionalnosti struje, to je prikazano na slici.

Slika 3.1: Otpornik je statiki sistem, gdje je napon direktno proporcionalan struji, neovisno o vremenu, a kondenzator je dinamian sistem gdje napon ovisi o prethodnom trenutku

Otpornik je primjer statikog modela koji se moe formulirati bez upotrebe vremena. Napon otpornika je direktno proporcionalan struji kroz otpornik, kao to je prikazano na slici 4.1, bez ovisnosti o vremenu ili prethodnom vremenu.4

3.2. Deterministiki/stohastiki model Deterministiki modeli su oni ije se ponaanje moe predvidjeti, odnosno u kojima je novo stanje sistema u potpunosti odreeno prethodnim stanjem. Na Sl. 4.2 prikazan je deterministiki model u kojem se stanje sistema Sn mijenja pod uticajem aktivnosti A u stanje

29

Sn+1. Prikazana je takoer i aktivnost A sa deterministikim trajanjem od 45 sekundi, npr. trajanje pregleda jedne komponente odreenog proizvoda.

Slika 3.2: Deterministiki model

Stohastiki modeli su oni ije se ponaanje ne moe unaprijed predvidjeti, ali se mogu odrediti vjerovatnoe promjena stanja sistema. Dakle, za stohastike modele je karakteristino sluajno ponaanje, odnosno postojanje sluajnih promjenjivih u sistemu. Na Sl. 4.3 prikazan je stohastiki model u kome se stanje sistema Sn moe promijeniti u jedno od stanja,, ili pod uticajem aktivnosti A. Tako na primjer, nakon izvrenog pregleda, komponenta moe biti odbaena ili se moe ugraditi u finalni proizvod, pri emu svako od tih stanja ima odreenu vjerovatnou.

Slika 3.3: Stohastiki model

Drugi izvor sluajnosti, prikazan na istoj slici, je aktivnost sa sluajnim trajanjem, odnosno trajanjem koje se odreuje iz uniformne raspodjele vjerovatnoe. Primjer takve aktivnosti je toenje goriva na benzinskoj pumpi, gdje se mjerenjem odreenog uzorka toenja goriva

30

vozilima dobijaju podaci iz kojih se moe odrediti raspodjela vjerovatnoa trajanja te aktivnosti.5 Razlika izmeu stohastike i deterministike simulacije moe se prikazati na primjeru sistema posluivanja s jednim posluiteljem. Jednoposluiteljski sistem sastoji se od skupa korisnika koje treba posluiti i mehanizma koji ih posluuje. Za opis ovog sistema treba poznavati: mehanizam dolazaka korisnika u sistem i vrstu informacionih jedinica, mehanizam posluivanja (opis vremena posluivanja), disciplinu ekanja, odnosno posluivanja.

Vrijeme posluivanja obino je varijabilno i ta varijabilnost se opisuje funkcijom raspodjele vjerovatnosti vremena posluivanja. Pri tome se pretpostavlja da nema meuovisnosti vremena posluivanja i slijeda informacionih jedinica. Skup vremena posluivanja tsi se uzima kao skup nezavisnih uzoraka iz funkcije raspodjele vremena posluivanja: Hs(ts) = P{tsits} Ponekad je potrebno da se informacione jedinice svrstaju u nekoliko klasa, a klase se zasebno opisuju karakteristinim funkcijama, kako bi se bolje opisala stvarna situacija. Dolazno vrijeme informacionih jedinica obino ne formira regularan niz i zato meudolazno vrijeme tai varira na nepredvidiv nain. To se opisuje funkcijom raspodjele vjerovatnosti meudolaznih vremena: Fa(ta) = P{taita}. Kada su navedene funkcije raspodjele propisane, moe se napisati algoritam generisanja nizova meudolaznih vremena i vremena posluivanja, a zatim se moe pokrenuti simulator pomou generisanih sluajnih nizova. Takav simulator bi bio stohastikim simulatorom.

Slika 3.4: Probabilistiki simulator jednoposluiteljskog sistema

31

Dolazno vrijeme informacione jedinice u sistem moe se dobiti dodavanjem meudolaznog vremena na prethodnu vrijednost: ti = ti-1 + tai. Parametarski prikaz optereenja sistema pomou navedenih funkcija raspodjele se mora zasnivati na stvarnim podacima, a takoe se mora ispitati da li su sluajni nizovi stacionarni ili nestacionarni, te serijski ovisni ili neovisni. Ukoliko nemamo takve podatke, koristi se deterministika simulacija. Kod ove vrste simulacije model se pokree ulaznim nizovima dobivenim obradom mjernih podataka na stvarnom instaliranom sistemu (umjesto generatora sluajnih brojeva). Instalirani sistem na kojem se skupljaju mjerni podaci obino je referentni osnovni sistem koji omoguava praenje odvijanja svih procesa za vrijeme funkcionisanja sistema u zadanim uslovima. Ovako dobiveni mjerni podaci se nakon odgovarajue obrade koriste za pokretanje simulatora pojedinih procesa. Slika 4.5 prikazuje deterministiki simulator jednoposluiteljskog sistema.6

Slika 3.5: Deterministiki simulator jednoposluiteljskog sistema

32

3.3. Kontinuirani/diskretni simulacijski model

Simulacije mogu biti u kontinualnoj ili diskretnoj formi. Preduslov za kontinualnu simulaciju je da postoji kontinualan tok vremena tokom kojeg se simulacija pokree u odreenim vremenskim inkrementima (stanje sistema se reevaluira u kratkim vremenskim intervalima). Kontinualna simulacija se moe u potpunosti ostvariti samo analognim raunarom, dok se digitalnim raunarom samo aproksimira tako da formira dovoljno male vremenske korake da ne bi bilo tranzicija izmeu stanja sistema od jednog do drugog koraka tj., one se moraju aproksimirati skupom diskretnih vrijednosti. Nedostatak kontinualne simulacije je potreba da se podeava sat koji odreuje trajanje simulacije bez neke efektivne akcije sistem stalno uveava vrijeme i testira potrebne akcije (nita se ne deava izmeu susjednih dogaaja).6 Primjer kontinualne promjene je let aviona iji se poloaj i brzina mijenjaju kontinualno u vremenu.3

Slika 3.6: Kontinualni simulacioni model

Diskretna simulacija predstavlja modeliranje sistema u vremenu, pri emu se varijable stanja mijenjaju samo u prebrojivom skupu trenutaka vremena. U tim trenucima se deavaju dogaaji, pri emu dogaaj predstavlja trenutno pojavljivanje koje moe dovesti do promjene stanja sistema. Konvencionalne simulacije u paketski komutiranim mreama obino podrazumjevaju upotrebu simulatora sa diskretnim dogaajima, koji modeliraju prolazak svakog pojedinanog paketa kroz mreu (tzv. simulacija na nivou paketa). Svaki dolazak paketa na mreni element ili odlazak paketa sa elementa predstavlja dogaaj. Da bi se dobili povjerljivi rezultati potreban je veliki broj simuliranih paketa, odnosno dugo trajanje simulacije.6 Znai, u diskretnim modelima stanje sistema se mijenja samo u pojedinim takama u vremenu (nema kontinualne promjene stanja). Takve promjene se nazivaju33

dogaaji. Na primjer, u modelu samoposluge mogu postojati promjenljive koje opisuju broj kupaca u redovima pred kasama, a taj se broj moe mijenjati samo u trenutku dolaska kupaca u red i u trenutku poetka opsluivanja na kasi.

Slika 3.7: Diskretni simualcijski model

Mogui su i mjeoviti, kontinualno-diskretni modeli koji sadre i kontinualne i diskretne promjenljive. Promjena stanja takvog modela prikazana je na Slici 4.8.5Zavisna promjenjiva

vrijeme Mjeovito kontinualno-diskretni model

Slika 3.8: Mjeoviti simulacioni model

Gotovo sva poznata okruenja mrenih simulatora koriste metodu simulacije sa diskretnim dogaajima kako bi simulirali ponaanje mree. To znai da je od interesa samo stanje simulirane mree u diskretnim trenucima vremena, dok se stanje sistema tokom ostatka vremena moe zanemariti. Npr. moe se posmatrati modeliranje ponaanja rutera koji alje paket po nekom linku tipa taka-taka preko fizikog prenosnog medija ka drugom ruteru. U34

realnom sistemu ova naizgled jednostavna aktivnost je vrlo kompleksna, jer obuhvata kodiranje pojedinanih bita u elektrine i optike forme signala, detekciju i korekciju greaka u prenosu informacija, prenos valnog oblika signala preko stvarnog komunikacionog linka, detekciju signala na prijemnoj strani, verifikaciju ispravnosti primljenog signala i rekonstrukciju paketa na prijemnom ruteru. Meutim, u okruenju simulatora ukupna opisana aktivnost se moe modelirati biljeenjem samo dva dogaaja: predajni ruter alje paket u nekom trenutku T i prijemni ruter u potpunosti prima paket u trenutku T + T. U ovom sluaju T predstavlja vrijeme potrebno predajniku da poalje sve pojedinane bite paketa uveano za vrijeme propagacije signala do prijemnika. U bilo kojem trenutku tokom vremena T stanje sistema varira, ali se to sa stanovita simulatora zanemaruje. Koristei ovako pojednostavljeni pristup, stanje sistema treba promijeniti samo dva puta: jednom kada predajnik zavri sa slanjem paketa i drugi put kada prijemnik primi cijeli paket. Svaka promjena stanja u simulatoru sa diskretnim vremenom se oznaava kao dogaaj (event).6

35

4. Simulacije sa diskretnim dogaajimaSimulacija sa diskretnim dogaajima je veoma korisna kompjuterska tehnika koja omoguuje bolje razumjevanje ponaanja pojedinih sistema. Kada mislimo na sistem, to onda znai skup entiteta (npr. ljudi, maine) koji s vremenom vre neku interakciju. Prirodna posebnost kao i svojstva nekog sistema kojeg elimo da shvatimo mogu da budu veoma razliita. U sutini, da bi odredili da li sistem zadovoljava svoje posebnosti mi moramo pristupiti matematikom modelu tog sistema. Kod simulacije sa diskretnim dogaajem modeli su ogranieni na takozvani model diskretnog dogaaja. Pretpostavimo da imamo stanja nekog sistema iji je razvoj prikazan kao redosljed oblika:

< s0, (e0, t0), s1, (e1, t1), s2, ... >

gdje su si stanja sistema, ei su dogaaji sistema i ti su nenegativni brojevi koji predstavljaju vremena deavanja dogaaja. Neformalno, ovaj redosljed znai da je sistem startao, recimo u vrijeme 0, u stanju s0; zatim dogaaj e0 se desio za vrijeme t0 dovodei sistem u stanje s1; zatim dogaaj e1 se desio za vrijeme t1 dovodei sistem u stanje s2; i tako dalje. Za svako deavanje dogaaja se pretpostavlja da uzima nulto vrijeme. Varijable ti su potrebne da budu neopadajueg karaktera, npr.; ti ti+1 za svako i.(Ne moemo insistirati na ti < ti+1 zbog toga to se, u sluaju modela diskretnog dogaaja, dva nevezana dogaaja mogu desiti u isto vrijeme.) Na osnovu datog razvoja sistema mi moemo odrediti njegova svojstva (da li dosee stanje mirovanja, da li je krunog karaktera, itd.) kao i procjeniti mjere izvedbe (npr., vrijednosti stanja mirovanja, kruni period, itd.)7 Simulacija sa diskretnim dogaajem je esto koriteni analitiki alat. Njegovi modeli mogu dosta priblino zamijeniti izvedbe stvarnog sistema i mogu pruiti uvid u ponaanje sistema kada se izmjeni ili kako se ponaa potpuno nov sistem. Da bi postigli vjernost izvedbe stvarnog sistema, modelu simulacije sa diskretnim dogaajima su potrebni precizni podaci o tome kako je sistem funkcionirao u prolosti ili precizne procjene nad izvedbenim36

karakteristikama izmjenjenog sistema. Modeli simulacija sa diskretnim dogaajem mogu predstavljati sistem u kompjuterskoj animaciji to prua onom koji odluuje odlian prikaz kako proces radi, gdje se nagomilavaju nezavreni poslovi ili redovi, i kako predloena poboljanja mogu izmjeniti izvedbe sistema. Takoer, pruaju, onom koji odluuje, sposobnost modeliranja i uporeivanja izvedbe sistema izvan granica mogunosti. Simulacije sa diskretnim dogaajem imaju sposobnosti koje vie odgovaraju detaljnoj analizi specifinog, dobro definisanog sistema ili linearnog procesa, kao to su linija proizvodnje ili pozivni centar. Ovi sistemi se mijenjaju u posebnim takama vremena:

nedostatak resursa, pauza operatora, smjena radnika, itd. Simulacije sa diskretnim dogaajima mogu pruiti statistiki validne procjene mjernih izvedbi koje su povezane sa gore navedenim sistemima, npr., broj entiteta koji ekaju u odreenom redu ili najdue vrijeme ekanja koje odreeni korisnik moe iskusiti.8 4.1. Struktura simulacija sa diskretnim dogaajima Iako postoje razliiti ukusi i uzori, u simulacijama sa diskretnim dogaajem se razvila osnovna struktura koja se koristi u veini simulacijskih paketa. Bez obzira koliko kompleksni ti simulaciski paketi bili, najvjerovatnije da e sadravati osnovne komponente koje emo opisati u nastavku. Strukturne komponente simulacija sa diskretnim dogaajima ine: entiteti aktivnosti i dogaaji resursi globalne varijable generator sluajnih brojeva kalendar varijable stanja sistema statistiki sakupljai

37

4.1.1. Entiteti Najbolji nain da se shvati funkcija entiteta je razumjevanje da entiteti uzrokuju promjene u stanju simulacije. Bez entiteta nita se ne bi desilo u simulaciji. Zapravo, jedno stanje zaustavljanja za simulacijski model predstavlja stanje u kojem nema aktivnih entiteta u sistemu. Entiteti posjeduju atribute. Atributi predstavljaju jedinstvene karakteristike datog entiteta. Oni su kljuni za razumijevanje izvedbe i funkcije entiteta u simulaciji. Primjer entiteta moe biti dio koji putuje kroz tvornicu.. Entiteti koji predstavljaju dijelove u tvornici mogu biti napravljeni sluajnim odabirom ili ak prema nekom rasporedu. Atribut bi, uobiajeno, bio vrijeme koje oznaava poetak pravljenja tog dijela u tvornici. Svaki dio ima jedinstveno vrijeme nastanka u tvornici. Isto tako, dio moe sadravati i druge atribute kao to su prioritet, vrsta dijela, ili troak proizvodnje dijela. U normalnoj simulaciji tvornice koja prati svaki dio posebno, ne bi bilo neobino imati istovremeno na hiljade aktivnih entiteta u simulaciji. Meutim, entiteti ne moraju biti dijelovi neke proizvodne linije, nego je i esta praksa da sa entitetima predstavljamo bilo kakav tok informacije. Ova informacija moe biti narudba kupca, obavijest o email-u, paket unutar kompjuterske mree, itd. Moe biti nefiziki bilo ta, to prouzrokuje promjenu u poloaju sistema. I ovi entiteti imaju atribute. Na primjer, entitet, koji predstavlja paket unutar kompjuterske mree, bi imao atribute kao to su veliina paketa, odredite paketa, vrijeme za koje paket treba stii na odredite, itd. 4.1.2. Aktivnosti i dogaaji Aktivnosti su procesi i logika u simulaciji, dok su dogaaji okolnosti koje se deavaju u odreenom trenutku vremena to uzrokuje promjenu u stanju sistema. Meusobno djelovanje entiteta sa aktivnostima stvara dogaaj. Postoje tri glavna tipa aktivnosti u simulaciji: odgaanja, redovi i logika. Aktivnost odgaanje je kada je entitet odgoen za neko odreeno vrijeme. Taj period vremena odgaanja moe biti nasumice odabran ili moe biti konstanta. U trenutku kada entitet poinje odgaanje desi se dogaaj, koji taj entitet rasporedi na kalendar (o kojem emo govoriti neto kasnije). Ako se odgaanje odnosi na vremenske jedinice d, onda je entitet rasporeen tako da zavri odgaanje vremenske jedinice d nakon trenutnog vremena simulacije.

38

Redovi su mjesta u simulaciji gdje entiteti ekaju na neodreen period vremena. Entiteti mogu ekati dok resursi ne budu slobodni ili mogu ekati na neki dogaaj vezan za stanje datog sistema. Redovi su najee koriteni za ekanje u redu na resurse ili za pohranjivanje materijala koji e biti uzet iz reda kada za to doe pravo vrijeme. Aktivnosti logika jednostavno dozvoljava entitetu da utjee na stanje sistema kroz manipulaciju varijabli stanja ili logike odluke. 4.1.3. Resursi U simulaciji, resursi predstavljaju sve ono to ima ogranien kapacitet. esti primjeri resursa ukljuuju radnike, maine, vor u komunikacijskim mreama, saobraajna raskrija, itd. U simulaciji se mogu koristiti i veoma kokpleksni resursi. U simulaciji proizvodnje, na primjer, prenosnici su veoma komplesksni resursi koje mnogi simulacijski paketi nude. Isto tako, opcije transporta kao to su trake nude se kao resursi. Dalje, sloeni resurs je i kontejner koji posjeduje stalni tok materijala(ulaze i izlaze). Ovisno o cilju simulacijskog paketa, mnogi kompleksni resursi su dostupni za upotrebu. 4.1.4. Globalne varijable Globalne varijable su varijable koje su u svakom trenutku dostupne kompletnom modelu. One mogu pratiti bil ta, to je u interesu cjelokupnog modela. Na primjer, ako imamo model restorana sa redovima za narudbu, mogli bi imati vie varijabli koje bi nam pomogle da postavimo problem kao i one koje bi nam pomogle da prikupimo informacije o prihodu. Varijable koje bi nam pomogle da postavimo problem bi bile duina reda koja je dozvoljena u restoranu. Prva takva varijabla bi bila DuinaRedaZaNarudbuHrane koja bi odreivala maksimalnu duinu reda za narudbu hrane. Druga varijabla bi mogla biti DuinaRedazaPodizanjeHrane koja daje maksimalnu duinu reda za podizanje hrane nakon njene narudbe. Mjenjanjem ove dvije varijable simulator moe analizirati efektivnost konfiguracija razliitih redova. Druge varijable koje bi nam pomogle da prikupimo informacije o prihodu su Prihod i IzgubljeniPrihod. Varijabla Prihod bi predstavljala konana suma prihoda prikupljenu u simulaciji, dok varijabla IzgubljeniPrihod bi bila konana suma izgubljenog prihoda zbog kojeg je dolo jer je potroa mislio da je red bio previe dug.

39

4.1.5. Generator sluajnih brojeva Svaki simulacijski paket posjeduje generator sluajnih brojeva. To je u stvari softwareska rutina koja generira sluajni broj izmeu 0 i 1 upotrebljavana u distribucijama sluajnih uzoraka. Na primjer, pretpostavimo da smo odluili da je kanjenje nekog procesa ravnomjerno distribuirano izmeu 10 i 20 minuta. Zatim, svaki put kada entitet prolazi kroz taj proces generator sluajnih brojeva e generirati broj izmeu 0 i 1 i procijeniti stalnu formulu distribucije koja ima minimum 10 i maksimum 20. Neka je broj koji je sluajno generiran broj 0.7312, onda e kanjenje biti 10+(0.7312)*(20-10)=17.312. Znai, entitet e kasniti 17.312 vremenskih jedinica u simulaciji. Sve to je sluajno u simulaciji koristi generator sluajnih brojeva kao ulaz da bi odredio vrijednosti. 4.1.6. Kalendar Kalendar simulacije predstavlja listu dogaaja koji su rasporeeni da djeluju u budunosti. U svakoj simulaciji postoji jedan kalendar buduih dogaaja i rasporeeni su ranijim rasporedima vremena. U svakoj taki vremena svaki dogaaj koji je ve bio rasporeen da se desi u budunosti je sadran u kalendaru. 4.1.7. Varijable stanja sistema Ovisno o simulacijskom paketu, moe postojati nekoliko varijabli stanja sistema ali jednu varijablu stanja sistema koju svaki simulacijski paket ima je sadanje vrijeme simulacije i mogli bi je zvati SadanjeVrijeme. Ova varijabla se obnavlja svaki put uzimajui entitet iz kalendara. 4.1.8. Statistiki sakupljai Statistiki sakupljai su dio simulacije i oni prikupljaju statistiku nekog odreenog stanja (npr., stanja resursa), ili vrijednost globalnih varijabli, ili statistiku nekih odreenih performansi baziranih na atributima datog entiteta. Postoje tri razliite statistike koje se sakupljaju: izbrojavanja koji jednostavno broje; vremenski postojana daju vrijednosti vremenskih teina razliitih varijabli u simulaciji; brojai prikupljanje posmatranja jedno po jedno bez obzira na koliinu vremena izmeu promatranja.940

4.2. Razvoj simulacije diskretnih dogaaja Kljuni elementi razvoja simulacionih programa u simulaciji sistema sa diskretnim dogaajima su: Mehanizam pomaka vremena Pristupi generisanju dogaaja Osnovne strategije simulacije

4.2.1. Mehanizam pomaka vremena U simulaciji sistema sa diskretnim dogaajima koriste se dva osnovna mehanizma pomaka vremena: Pomak vremena za konstantni prirataj i Pomak vremena na naredni dogaaj.

4.2.1.1. Pomak vremena za konstantni prirataj Vrijeme u simulacionom modelu se mijenja tako da se uvijek dodaje konstantni prirataj. Nakon svakog pomaka vremena ispituje se da li je u prethodnom intervalu vremena trebalo da doe do nastupanja nekih dogaaja. Ukoliko jeste, tada se ti dogaaji planiraju za kraj intervala. Nedostaci: Pomjeranjem dogaaja na kraj vremenskog intervala u kojem bi oni trebalo da nastupe, uvodi se greka u izvoenje simulacije. Osim toga, dogaaji koji u stvarnosti nisu istovremeni u ovom se pristupu prikazuju kao istovremeni, a zatim se odreuje redoslijed njihovog izvoenja. Smanjenjem vremenskog prirasta te se greke smanjuju, ali se zato poveava vrijeme koje se troi na izvoenje simulacije. Ovaj mehanizam pomaka vremena moe se uspjeno primjeniti u situacijama kada se dogaaji zaista niu jedan po jedan u konstantnim vremenskim intervalima. Pristup je prikazan na sljedeoj slici.

Slika 4.1: Mehanizam pomijeranja vremena u simulaciji diskretnih dogaaja , pomak vremena za konstantan prirast

41

4.2.1.2. Pomak vremena na naredni dogaaj Kod ovog pristupa simulacioni sat se pomjera na vrijeme u kojem e nastupiti prvi naredni dogaaj. U tom trenutku se dogaaj izvede i napravi se odgovarajua promjena stanja sistema; zatim se ponovo ispituje koji e dogaaj sljedei nastupiti, itd. Simulacija se zavrava kada nema vie dogaaja ili kada je zadovoljen neki unaprijed definisani uslov zavretka simulacije. Ovaj pristup je prikazan na sljedeoj slici.D1 D2 D3 D4 D5 D6

Vrijeme

0

t1

t2

t3

t4

t5

t6

Slika 4.2: Mehanizam pomijeranja vremena u simulaciji diskretnih dogaaja, pomak vremena za sljedei dogaaj

4.2.2. Generisanje dogaaja U raunarskoj implementaciji simulacionog procesa, dogaaj se opisuje sa vie atributa, koji formiraju Slog dogaaja. S obzirom na promjenjiv broj dogaaja u vremenu, slogovi dogaaja se memoriu u Listama dogaaja. Slog i lista dogaaja prikazani su na sljedeoj slici:Lista dogaaja

Slog dogaaja 1 Slog dogaaja Slog dogaaja 2 Kod dogaaja Vrijeme dogaaja Par 1 Par 2 ... Par K

Slog dogaaja 3 Slog dogaaja N

Slika 4.3: Slog i lista dogaaja

42

4.2.3. Pristupi generisanju dogaaja Postoje dva pristupa generiranju dogaaja i to: Definiranje dogaaja unaprijed (fixed event strategy ). Pristup zasnovan na narednom dogaaju (next event strategy ). Definiranje dogaaja unaprijed: Kod ovog pristupa svi dogaaji su unaprijed poznati i definisani, a lista dogaaja sadri slogove svih dogaaja.

Slika 4.4: Definisanje dogaaja unaprijed

Pristup zasnovan na narednom dogaaju Kod ovog pristupa poznat je jedino prvi naredni dogaaj, a lista dogaaja sadri samo jedan slog, slog poznatog dogaaja. Pri izvravanju dogaaja planira se i ubacuje u listu njegov nasljednik.

Slika 4.5: Pristup zasnovan na narednom dogaaju

43

Dogaaje moemo svrstati u dvije osnovne kategorije u odnosu na mjesto nastanka (generisanja): Eksterni dogaaji su ni dogaaji koji ne zavise od modela. Oni predstavljaju uticaj okoline na sistem. U tu vrstu dogaaja ubrajamo dolazak npr. pojavu telefonskog poziva. Interni dogaaji zavise od modela i u njemu se generiu. Primjer internih dogaaja je prekidanje veze po zavretku razgovora. Lista dogaaja u trenutku t = t1, prije generisanja internih dogaaja i2 , i4 i i6, i lista dogaaja u trenutku t=t2 nakon genrisanja internih dogaaja:e2

i1

i1

e2

i3

i5

i3

i5

t1

t

e2

i3

i5 i2 e2 i3 i4 i5 i6 i2

i4

i6 t2 t

Slika 4.6: Lista dogaaja

44

4.3. Strategije izvoenja simulacije Koncepti kao to su dogaaj, aktivnost i proces ine polaznu osnovu za definisanje strategija izvoenja simulacije sistema sa diskretnim dogaajima. Te strategije su: Rasporeivanje dogaaja Skeniranje aktivnosti Interakcija procesa

4.3.1. Rasporeivanje dogaaja Mehanizam rasporeivanja dogaaja podrazumjeva da se dogaaji unaprijed dre u listi buduih dogaaja. Procedura planiranja dogaaja je da se generie slog dogaaja, a zatim se dodijele vrijednosti njegovih atributa i dogaaj se stavlja u listu buduih dogaaja. Funkcionisanje simulatora se odvija tako da se sa liste buduih dogaaja uzima prvi dogaaj. Tada se obnavlja simulacioni sat na vrijema njegovog nastupanja. Na osnovu tipa izabranog dogaaja, poziva se odgovarajua procedura koja izvrava sva auriranja u modelu i simulatoru, povezana sa nastupanjem izabranog dogaaja. Kada se izvre svi dogaaji koji imaju isto vrijeme nastupanja, simulacioni sat se aurira na vrijeme sljedeeg dogaaja, iz liste buduih dogaaja.

Slika 4.7: Dijagram toka rasporeivanja dogaaja

45

4.3.2. Skeniranje aktivnosti Aktivnost je definisana kao skup operacija koje transformiu stanja entiteta. Da bi se izvrila simulacija sistema sa diskretnim dogaajima, potrebno je realizovati raunarski program koji skenira i rasporeuje aktivnosti modela. Skeniranje aktivnosti podrazumjeva da se dogaaji implicitno rasporeuju tako da se promjena stanja izvrava preko funkcija koje se nazivaju aktivnosti. Svaka aktivnost ima Uslov i Akciju. Za svaki vremenski korak, aktivnosti se skeniraju i trai se prva aktivnost koja ima zadovoljen uslov. Tada se izvrava odgovarajui programski segment koji specificira akciju za zadatu aktivnost. Proces skaniranja nastavlja se sve dotle dok sve aktivnosti ne budu blokirane. Onda i samo onda se simulacioni sat aurira na sljedei vremenski korak. Za izvrenje aktivnosti u realnom sistemu potrebno je izvjesno vrijeme, dok pri simulaciji nije potrebno pratiti kretanje aktivnosti od poetka do zavretka. Samo se prelazi sa jedne aktivnosti na drugu definiu eksplicitno.

Slika 4.8: Tabele aktivnosti

46

4.3.3. Interakcija procesa

Interakcija procesa predstavlja tehniku simulacije koja je nastala kombinacijom rasporeivanja dogaaja i skeniranja aktivnosti. Proces moemo posmatrati kao skup uzajamno iskljuivih aktivnosti, povezanih tako da terminiranje jedne aktivnosti dozvoljava inicijalizaciju neke druge aktivnosti iz skupa aktivnosti procesa. S obzirom na to da model sistema predstavlja skup paralelnih procesa od kojih neki mogu biti uzajamno iskljuivi, glavni problem je sinhronizacija procesa. U ovom prilazu, mogui konflikt koji proistie iz preklapanja procesa, rijeava se uvoenjem dvije naredbe koje se upotrijebljavaju pri specifikaciji dogaaja. To su: WAIT i DELAY ,

i to u oba konteksta, uslovnom i bezuslovnom. WAI naredba u uslovnom kontekstu ima oblik: WI UNTIL Ukoliko je uslov zadovoljen, proces koji eka na taj uslov, nastavie svoj tok. U suprotnom, bie blokiran. U tom sluaju ispituje se koji od ostalih procesa moe da se aktivira i on se izvrava. Naredbom DELAY s u bezuslovnom kontekstu u literaturi oznaava i sa: ADVANCE nastavak procesa odlae se za specificiran broj vremenskih jedinica. U tom sluaju, ispituje se koji od ostalih procesa moe da ostvari svoj tok. Na taj nain se u ovu metodologiju prenose dobre osobine metodologije rasporeivanja dogaaja. U okviru procesora, odravaju se dvije liste dogaaja: Lista tekuih dogaaja: sadri uslovne dogaaje; soritrana je po prioritetu.. Lista buduih dogaaja: sadri rasporeene dogaaje koji tek treba da nastupe; sortirana je po vremenu nastupanja. Planiranje dogaaja procesor vri po strategiji narednog dogaaja. Pri svakom premijetanju dogaaja, iz liste buduih dogaaja u listu tekuih dogaaja, planira se njegov nasljednik koji se stavlja u listu buduih dogaaja, da tamo eka svoje vrijeme nastupanja.

47

Prije poetka simulacije, za svaki proces generie se prvi dogaaj i stavlja se u listu buduih dogaaja. Zatim se vrijeme simulacije obnavlja na vijeme dogaaja sa vrha liste buduih dogaaja. Rad procesora odvija se u dvije faze: Faza obnavljanja vremena simulacije: simulacioni sat se postavlja na vrijednost vremena nastupanja prvog dogaaja iz liste buduih dogaaja, a zatim se prebace svi dogaaji sa tim vremenom nastupanja u listu tekuih dogaaja. Pri tome se za svaki premjeten dogaaj planiar nasljednik i stavlja se u listu buduih dogaaja. Faza skeniranja liste tekuih dogaaja: skenira se lista tekuih dogaaja i ukoliko ima neblokiranih dogaaja oni se izvravaju. Kada nema dogaaja u listi tekuih dogaaja, ili su svi dogaaji blokirani, tada se prenosi prvi dogaaj iz liste buduih dogaaja i obnavlja se sat simulacije na njegovo vrijeme. Simulacija se odvija sve dok se ne zadovolji kriterij za zavretak simulacije. Tada se vri zavrna obrada rezultata simulacije i procesor zavrava rad.10

Slika 4.9: Algoritam rada procesora pri interakciji procesa

48

5. Primjeri najee koritenih simulatoraDanas postoji vei broj simulacijskih alata, vie ili manje specijaliziranih, od kojih su neki komercijalizirani, a drugi vezani za neku radnu grupu ili univerzitet. Veina simulatora je vezana za specifinu mrenu platformu, dok samo manji broj tei generaliziranom pristupu. U nastavku je prikazano nekoliko alata koji imaju iroku korisniku bazu i kvalitetnu dokumentacionu podrku.11

Boson NetSim je jedan od komercijalnih programa za simulaciju raunarskih mrea. U okviru NetSima-a postoji i alat Network Designer koji omoguava da se dizajnira i planira mrea i da se kasnije odreena topologija uita u simulator. Osnovne kompomemte ovog programa su: 1. Lab Navigator 2. Network Designer 3. Network simulator 4. Lab Grader Lab Navigator omoguava da se vidi, odabere i uita u simulator odabrana vjeba ugraena u simulator. Network Designer je alat koji omoguava da se dizajnira kako jednostavna tako i sloena mrena topologija. Predvien je da omogui praktino kreiranje i administriranje Cisco mrea. Network simulator je alat koji zapravo simulira mreu i putanje virtuelnih paketa i u njemu se vri podeavanje mrene opreme. Ovaj alat omoguava da se kontroliu brojni ureaji i da se konfiguriu kada je to potrebno. Lab Grader je alat koji analizira zavrenu konfiguraciju i provjerava da li je uraena ispravno.12

Slika 5.1: Boson Netsim verzija 8 i suelje

49

QualNet Developer je ultra visoko-pouzdan evaluacijski mreni softver koji simulira beine, iane, mree razliitih platformi i svojstva mrenih ureaja. Dizajniran da iskoristi svu prednost multi-threading mogunosti multi-core 64-bitnih procesora, QualNet podrava simulaciju hiljade mrenih vorova. QualNet prua neusporedivu platformu prenosivosti i fleksibilnosti suelja. QualNet radi na sekvencijalnim i paralelnim Unix, Windows Mac OS X i Linux operativnim sistemima, i takoer je dizajniran da se moe s lakoom povezati sa modeliranim/simulacijskim aplikacijama i ivi mreama.13

Slika 5.2: QualNet suelje

QualNet je komercijalni alat proizveden iz GloMoSim-a koji je prvi put predstavljen 2000. god. od strane Scalable Network Technologies (SNT). Danas, glavne razlike izmeu QualNet-a i GloMoSim-a su: QualNet se temelji na C++; GloMoSim na Parsec-u QualNet je komercijalni proizvod; GloMoSim je distribuiran pod licencom kao akademski open source QualNet se odrava od strane SNT-a; GloMoSim od strane UCLA Parallel Computing Lab.14

Packet Tracer je Cisco ruter emulator koji moe biti koriten u treniranju i edukaciji, ali takoer u istraivanjima za jednostavne simulacije raunalnih mrea. Alat je razvijen od50

strane Cisco System-a i opremljen je za besplatbu distribuciju fakultetima, studentima, i onima koji su ili uestvuju u programima Cisco akademije.15

Slika 5.3: Packet Tracer suelje

Packer Tracer je simulacijski softver koji omoguava lako i jednostavno uenje mrenih tehnologija. Nije zamiljen kao zamjena za mrenu opremu u laboratoriju, on je dodatak opremi. Packet Tracer je realiziran kao mrena aplikacija (peer to peer) koja omoguava koritenje preko mree (TCP protokol). Packet Tracer aplikacija koja radi na jednom raunaru na mrei moe komunicirati istovremeno sa Packet Tracer aplikacijama na jednom ili vie raunara na mrei. Ova osobina istovremenog rada na Packet Tracer-u vie korisnika na mrei omoguava podrku za grupni rad, kolaboraciju, natjecanje i na kraju udaljenu instruktorstudent interakciju. Protokoli koje podrava Packet Tracer: HTTP, TFTP, Telnet, DNS, DHCP, TCP, UDP, IPv4, IPv6, ICMP, ARP, STP, RSTP, i mnogi drugi.16

SSF (Scalable Simulation Framework) simulator je otvoreni alat za simuliranje kompleksnih sistema. Razvijen je zajedniki od strane Rutgers University i Dartmouth University, napisan u Java jeziku, a takoe postoji i C++ varijanta. U okviru ovog alata razvijen je SSFNet, koji predstavlja skup Open-source Java modela za razliite protokole (IP, TCP, UDP), mrene elemente, te odgovarajuu objektno-orjentisanu podrku za simulaciju multiprotokolnih i multidomenskih okruenja. Razvoj simulatora je prilagoen radu na multiprocesorskim sistemima, a mogue je i paralelno izvravanje na razliitim operativnim sistemima. Postavljanje i upravljanje simulacijom vri se koritenjem DML (Domain Modeling Language) jezika, odnosno tekstualno baziranog jezika XML-tipa, koji omoguava

51

kreiranje topologija sa do 100.000 hostova i rutera. Distribucija ovog simulatora sadri i izvorni kod sa dvije verzije: SSF.OS koji je specijalizovan za modeliranje komponenti operativnog sistema hosta (posebno protokola) i SSF.Net za modeliranje topologije mree, kreiranje vorova i konfiguraciju linkova. Ova distribucija takoe sadri i kod za upravljanje saobraajem, gotove modele protokola i hostova sa razliitim generisanim saobraajem, kao i modul za prikupljanje i obradu rezultata simulacije (CERN Colt). Ovaj simulator je pogodan prije svega za simulaciju velikih i kompleksnih sistema, kao to je Internet, te za praenje rada mrea u duim vremenskim intervalima, zbog svoje mogunosti obrade velike koliine podataka.

GTNetS (Georgia Tech Network Simulator) je razvijen na Georgia Tech Department of Electrical and Computer Engineering, kao objektno-orjentisani alat napisan u potpunosti u C++ programskom jeziku. Dizajn ovog simulatora veoma blisko odgovara dizajnu stvarnog skupa mrenih protokola i mrenih elemenata. Alat je dizajniran tako da radi u distribuiranom okruenju, to dovodi do vee skalabilnosti. Da bi kreirao simulaciju koritenjem GTNetS, korisnik treba da kreira C++ glavni program, koji kreira potrebne objekte za opis i izvrenje simulacije. Program se kompajlira standardnim C++ kompajlerom i linkuje sa bibliotekama koje sadre simulacijske modele. Da bi se pokrenula simulacija izvrava se rezultirajua binarna datoteka.

NEST simulator je razvijen na Columbia University, a slui za simulaciju distribuiranih algoritama i sistema. Dosta se koristi za simuliranje protokola rutiranja. Alat je razvijen kao klijent-server arhitektura: server simulatora je odgovoran za izvrenje simulacija, dok su klijenti nezavisni programi koji se koriste za kreiranje i konfigurisanje simulacije. Koritenjem grafikog interfejsa mogue je dinamiko podeavanje simulacije, odnosno konfiguracije mree. Podjela simulacije na vie resursa omoguava utedu u CPU resursima, jer je dovoljno da server ima bolju konfiguraciju, to nije neophodno za klijentske raunare. Ovaj princip rada omoguava i istovremenu komunikaciju vie korisnika sa serverom. NEST je implementiran kao biblioteka funkcija koje su meusobno povezane korisnikim kodom i napisan je u C jeziku. NEST nije simulator zasnovan na praenju diskretnih dogaaja. Simulacija se obavlja preko tzv. sinhronizacijskih pojasa, tako da svaki vor dobije jednak udio procesorskog vremena. Kad doe na red, proces na jednom voru se obavlja u vremenskom intervalu jednakom irini sinhronizacijskog pojasa.

52

REAL je mreni simulator razvijen na Cornell University i baziran je na modificiranoj verziji NEST simulatora. Koristi se za prouavanje dinamikog ponaanja tokova saobraaja u TCP/IP mreama, kao i za simuliranje strategija kontrole zaguenja. REAL implementira oko trideset modula napisanih u C jeziku, koji emuliraju protokole, i nekoliko disciplina posluivanja (FIFO, FQ, RR, itd.). Grafiki interfejs je napisan u Java jeziku. REAL je, kao i NEST, klijent-server program. Ulaz u simulator je scenario gdje se nalaze opisi topologije mree, protokola, optereenja i kontrolnih parametara. Izlaz simulacije su statistiki podaci kao to je broj emitovanih paketa po svakom izvoru, duina vremena ekanja na svakom baferu, broj isputenih paketa, broj reemitovanih paketa i sl. Kod simulatora je dostupan i za modifikaciju. Instalira se na nekom od BSD operativnih sistema, a moe se implementirati i na Linux platformama.

OPNET je komercijalni alat razvijen od strane Opnet Technologies, koji je u primjeni ve dvadesetak godina. Obzirom na karakter alata, nisu dostupni podaci o njegovoj unutranjoj strukturi. Uz potrebne procesorske i vremenske resurse, OPNET se moe koristiti za simuliranje mrea sa nekoliko stotina ili nekoliko hiljada vorova. Paket se sastoji od nekoliko modula: OPNET Modeler, OPNET Planner, Model Library, IT Guru, itd. Za simulaciju mrea najinteresantniji je OPNET Modeler, koji se koristi za modeliranje, simuliranje i analizu performansi velikih telekomunikacionih mrea ili aplikacija. Njegova metodologija modeliranja je organizovana u hijerarhijsku strukturu. Na najniem nivou, Process Editor slui za obradu procesnih modela, a stanja i promjene stanja se specificiraju grafiki koritenjem dijagrama promjene stanja, dok su opisi stanja programirani u Csrodnom jeziku, Proto-C. Ovi procesi, kao i ugraeni moduli u OPNET-u (izvori i prijemnici, generatori saobraaja, redovi ekanja itd.) su organizovani u menije kojim se upravlja pomou Node Editor-a. Pomou grafikog Network Editor-a vorovi i linkovi se organizuju u topologiju mree. Alat za analiziranje Analysis Tool prua grafiko okruenje za uvid i manipulaciju podacima prikupljenim tokom trajanja simulacije. OPNET Planner je aplikacija koja omoguava administratorima evaluaciju performansi komunikacionih mrea

distribuiranih sistema, bez programiranja i kompajliranja. Korisnik bira preddefinisane mrene elemente na fizikom nivou i uvezuje ih preko grafikog interfejsa, te podeava atribute. Korisnik nema mogunost da definie nove modele i komponente. Biblioteke modela (Model Libraries) su ukljuene u OPNET Modeler i OPNET Planner i sadre protokole, te simulaciona okruenja, kao to su TCP/IP, ATM, Frame Relay, Ethernet; zatim modele linkova kao to su point-to-point ili sabirnica, discipline ekanja (FIFO, LIFO, RR, FQ),53

interfejse izmeu razliitih protokola itd. OPNET se moe koristiti na Windows i Unix platformama. Koristi se u akademske i industrijske svrhe, a osnovni nedostaci su cijena alata, te nemogunost prilagoavanja specifinim korisnikim zahtjevima. Kao demo verzija ovog alata dostupan je IT Guru, koji sadri neke osnovne funkcionalnosti OPNET Modelera.

OMNeT++ je objektno-orjentisani simulator koji se koristi za modeliranje komunikacionih protokola, raunarskih mrea i multiprocesorskih distribuiranih sistema. Napisan je u C++ jeziku, a izvorni kod je dostupan s besplatnom akademskom licencom. Komponente se grupiu u mrenu arhitekturu koritenjem jezika visokog nivoa NED. OMNET++ sadri manji broj ugraenih modula od drugih slinih simulatora, ali je softverski veoma dobro organizovan i fleksibilniji za upotrebu od drugih simulatora. To je sistem hijerarhijski ugnijeenih modula. Dubina gnijeenja modula nije ograniena, ime se omoguava korisniku da prenosi stvarnu logiku strukturu mree na simulator. Moduli predstavljaju najnii nivo hijerarhije i meusobno komuniciraju preko poruka. Tokom izvoenja simulacije neki moduli se paralelno izvravaju, poto su implementirani kao mali pseudoprocesi. Za pisanje modula potrebno je C++ programiranje. Instalacijom OMNeT++ alata dobije se i set preddefinisanih klasa (redovi ekanja, histogrami, nizovi). Komponente OMNeT++ alata su: kernel biblioteka, kompajler za NED jezik, grafiki editor za topologiju mree (GNED) i pratea dokumentacija. Simulator radi na Unix i Windows baziranim platformama. Alat ima razvijen grafiki interfejs i otvoren modularan kernel.

NS (Network Simulator) je prvobitno razvijen u okviru Lawrence Berkeley National Laboratory 1989.godine (NS-1.0) , a dalji razvoj je nastavljen u okviru VINT projekta (NS-2 simulator). Danas NS-2 predstavlja najraireniji alat za projekte simulacije

telekomunikacionih mrea. Primarno se koristi za simulaciju IP mrea, kako lokalnih, tako i WAN mrea. NS-2 je multiprotokolski simulator koji implementira razliite aplikacione protokole (Telnet, FTP, HTTP), transportne protokole (UDP, razne verzije TCP, RTP, RTCP), unicast i multicast protokole usmjeravanja, MAC protokole, mehanizme za upravljanje redovima ekanja (Drop Tail, RED, CBQ), itd. U simulatoru su implementirani mehanizmi za implementaciju kvaliteta servisa, kao to su razni algoritmi za posluivanje paketa, diferencirani servisi, MPLS i dr. NS-2 je pisan u programskom jeziku C++, sa korisnikim interpreterom OTcl, sa C++ i OTcl hijerarhijskom strukturom klasa. C++ je pogodniji za detaljnije implementacije protokola, jer bre izvrava programe, ali je u tom jeziku sporije izvriti promjene. S druge strane, OTcl se sporije izvrava, ali se u ovom jeziku54

bre implementiraju promjene. Zbog toga je OTcl pogodniji za konfigurisanje i podeavanje same simulacije. Ukoliko postojee klase ili objekti u C++ hijerarhiji nisu dovoljni za ostvarivanje ciljeva simulacije, potrebno je koristiti C++ komponentu NS2 simulatora. Na slici 1-4 prikazan je korisniki aspekt procesa simulacije pomou NS-2 simulatora. NS-2 je objektno-orjentisani interpretator skripti, koji ima rasporeiva dogaaja simulacije, biblioteke objekata mrenih komponenti i biblioteke modula za konfigurisanje mree. Dogaaj u NS-2 je jedinstveni ID paketa sa predvienim vremenom i pokazivaem na objekat koji upravlja dogaajem. Rasporeiva dogaaja prati simulacijsko vrijeme i aktivira sve dogaaje u redu ekanja, pozivajui odgovarajue mrene komponente (obino one koje su generisale neki dogaaj) i putajui ih da obave odgovarajue akcije sa paketima na koje pokazuje dogaaj.

Slika 5.4: Korisniki aspekt procesa simulacije

IMUNES

(Integrated

Multiprotocol

Network

Emulator/Simulator)