|
Ebben a fejezetben néhány nagyon hasznos programot adunk meg, melyek használatával a modellezés bizonyos értelemben automatizálódik. Sokszor a legnagyobb probléma az, hogy hogyan tudjuk megfogalmazni a feladatot anélkül, hogy megadnánk az egyensúlyi állapotegyenleteket. Ebben segítenek az ú.n. "tools"-ok, melyek valamilyen sajátos programnyelven lehetővé teszik, hogy leírjuk amit vizsgálni szeretnénk. Ez általában az SPN (Stochastic Petri Nets , Sztochasztikus Petri hálók), vagy különböző fajtái ú.n. színezett, általánosított, stb segítségével tehető meg. Manapság nagyon gyakran grafikus szerkesztő áll rendelkezésünkre.
Ezután a program generálja a leíró sztochasztikus-folyamatot, ez általában Markov-lánc. Ezt követően az ú.n SOLVER feladata, hogy megadja a rendszerjellemzőket. A különböző programoktól függ, hogy milyen módszert alkalmaznak. Ez történhet a lineáris egyenletrendszerek megoldására kifejlesztett eljárással, közelítéssel, szimulációval stb.
A MACOM (Markovian Analysis of COMmunication Systems) programcsomag a KLTE Matematikai es Informatikai Intézetében megtalálható, ezért részletes használati útmutatót adunk róla.
Megjegyzés:
Ha aprónak találja a fejezetben szereplő ábrákat, klikkeljen
a képre a részletek megtekintéséhez.
A MACOM egy telekommunikációs rendszerek modellezésére készült programcsomag. Elméleti alapjait a sorbanállási hálózatok képezik. Ebben az ismertetőben feltételezzük, hogy az olvasó ismeri a sorbanállási elmélet alapfogalmait (ld. pl. [2],[3],[4]), valamint rendelkezik általános számítógépkezelői (windows használati) ismeretekkel. Jelen segédletben a MACOM használatának bemutatása a célunk.
A standard sorbanállási fogalomrendszer a következőkkel bővül a MACOM-ban:
- korlátos kapacitású kiszolgálóegységek
- szimultán érkezés
- állapotfüggő elágazás
- nem exponenciális eloszlások
A telekommunikációs rendszer modellezése a következő lépésekből áll:
- Modell konstrukció (egy grafikus "modell editor" segítségével)
- Attribútum definíciók (paraméterek és konstansok megadása)
- A kiszámítandó rendszerjellemzők meghatározása
- Kísérlet (ill. kísérlet sorozatok) definíciója (értékadás a paramétereknek)
- Az analízis végrehajtása
- Eredmények értékelése
Mielőtt rátérnénk az egyes tevékenységek konkrét leírására, tekintsük át a program használatának általános szabályait.
2.1.2 Általános ismertető
A MACOM program SUN munkaállomásokon SunOS 4.1.3 operációs rendszer alatt használható. A program a macom paranccsal indítható Sunview vagy Openwindows rendszerben. Eredetileg Sunview ablakrendszerben készült, de Openwindows alatt is indítható, bár a program ekkor is a Sunview "szokásokkal" működik. Az egér bal gombja a "Select", a jobb gombja pedig a "Menü" funkciókat látja el.
A MACOM-ban egy rendszer három szinten kerül modellezésre: Az első szint a "Modell", ez jelenti a modell vázát. A következő a Számítás ("Evaluation"), ahol megadhatjuk, hogy a vizsgált modell mely jellemzőit kívánjuk meghatározni. Egy modellhez több Számítás is tartozhat. A harmadik szint a Kísérlet ("Experiment"), ahol a modell paraméterei, ill. a konkrét numerikus számítás módszere adható meg. Természetesen itt is fennáll, hogy egy Számításhoz több Kísérlet is tartozhat.
Általános érvényű szabály, hogy ha egy szinten törlünk, akkor a szint alatti valamennyi objektum törlődik. Ha egy szint egy objektumát módosítani akarjuk, akkor előtte az összes alatta lévő objektumot törölni kell.
Pl. Ha egy Modell szintű változtatás szükséges, akkor az adott modellhez tartozó valamennyi Számítást törölnünk kell.
Egyébként a szintek kezelése egységes, valamennyi szinten a következő
tevékenységek segítik a munkánkat (ld. 1. ábra):
Create | - Az adott szinten új objektum létrehozása (a megadott névvel). |
Edit | - A megnevezett objektum módosítása. |
Show | - A megnevezett objektum bemutatása. |
Delete | - A megnevezett objektum törlése. |
Egy már létező objektum az objektum nevére irányuló "Select" művelettel
választható ki.
Tekintsük át ezután egy új modell készítésének lépéseit.
A modell nevét begépelve a "Create" művelettel hozhatunk létre egy új (üres)
modellt, amely ezután az "Edit" művelettel módosítható.
Az "Edit" művelet egy új ablakot jelenít meg (ld. [2. ábra]). Ez az ablak egy
grafikus editor, mely lehetővé teszi a sorbanállási rendszer könnyű, gyors
definícióját.
A MACOM-ban - mint általában a sorbanállási modellekben - források által keltett igények haladnak, az igények a kiszolgáló egységeknél sorbanállhatnak, kiszolgálásuk után pedig vagy elhagyják a rendszert, vagy újra sorbaállnak valamely kiszolgálóegységnél.
A modell alapegysége a Lánc ("Chain"), amelynek kiindulópontja a Forrás ("Source"), a végpontja pedig vagy egy Végállomás ("Sink"), vagy egy Elvesztés ("Loss Exit"). A kezdő- és a végpont között az igények a Kiszolgálóegységeken ("Service Station") haladnak keresztül. Egy igény a rendszerben egy láncon halad végig. A lánc vonalvezetése lehet nemdeterminisztikus is a Feltételes elágazások ("Conex") segítségével. Az objektumok közötti átjárás a Linkeken keresztül történik. Fontos megjegyeznünk, hogy egy Linken csak egy Forrástól származó igények haladhatnak, de az objektumok között tetszőleges számú Link alakítható ki.
Mivel egy Lánchoz egy Forrás tartozik, így a Forrás neve lesz a Lánc neve is.
A grafikus editoron az előbbi objektumokat a következő ábrák jelzik:
A modell konstrukciója a grafikus editor segítségével egyszerű "Select" egérműveletekre redukálódik. A grafikus editorban a középső egérgombbal mozgathatjuk az objektumokat.
Ha a modell konstrukciójával készen vagyunk, akkor a következő lépés a modell objektumaihoz tartozó attribútumok megadása. Ez ugyancsak a modell editor ablakban tehető meg oly módon, hogy az egérrel az objektumra pozícionálunk, s a "Menü" egérgombbal lehívjuk az objektumhoz tartozó menüt. A menüben a "Delete" opcióval törölhetjük az objektumot, a "Check" opcióval pedig ellenőrizhetjük a felvitt attribútumok helyességét. A teljes modell a szerkesztő részen kívül található Check feliratú nyomógombbal ellenőrizhető. Az elkészült modell a Store nyomógombbal tárolható le.
Fontos! A kiszámítandó rendszerjellemzőket itt még nem kell megadnunk, azt elegendő a Számítás szinten meghatároznunk.
Tekintsük át az egyes objektumokhoz tartozó attribútumok jelentését.
A "val" jelű attribútumok konstansok (általában numerikus konstansok) lehetnek. Ha a "val" szóra kattintunk az egérrel, akkor az "par" jellé változik, s ekkor ez a jellemző egy paraméter, amit később a kísérleteknél adhatunk meg. Ezáltal a paraméter hatása gyorsabban, könnyebben megfigyelhető.
Az attribútumok esetén általában az "Accept" nyomógomb a definíciók véglegesítését (elfogadását), az "End" pedig az attribútumdefiníciók befejezését jelenti.
A forrás attribútumok írják le a rendszerbe érkező igényeket.
Az ábrán látható forrás attribútumok jelentése:
A kiszolgálóegység attribútumainak jelentése:
A "Chain description" attribútumok jelentése:
A link definiálja, hogy egy objektumtól az igény mely objektumhoz továbbítódik. Az attribútumok jelentése:
A Conex - Feltételes elágazás - objektumok teszik lehetővé, hogy egy forrástól származó igény útja a rendszerben lehet előre nem meghatározott.
A Conex egy bemeneti linkkel, s két (esetleg több) kimeneti linkkel rendelkezik. Az, hogy egy igény melyik kimeneten távozik definiálható távozási valószínűséggel, illetve az aktuális rendszerállapottól függően is leírható.
Az előzőekben a Modell szintű tevékenységeket tekintettük át. Ha a modell definíciója kész, akkor definiálhatunk a modellhez "Számításokat", azaz megadhatjuk, hogy mely rendszerjellemzőket kérjük kiszámítani. Ez ugyancsak a 2. ábrán látható "Modell Editor" ablakban történik az egyes objektumok attribútum ablakaiban az "Evaluate" mezők kitöltésével.
A 7. ábrán látható ablakban definiálhatjuk az adott modell adott
számításához tartozó paramétereket.
A MACOM főképernyőjén (ld. 1. ábra) a Reset nyomógombbal állíthatjuk alaphelyzetbe az analízist. Maga az analízis a Start nyomógombbal indítható, a Status nyomógomb szolgál a futó analízis státuszának lekérdezésére. Ha az analízis befejeződött, akkor az eredmények a Result nyomógombbal kérhetők le (egy Kísérletre ill. egy Számításra vonatkozóan).
Fontos! Ha a Result nyomógomb hatására az eredmények nem jelennek meg, akkor a modellezés sikertelen volt. Ennek oka lehet pl. az, hogy a modellezett rendszer állapotainak száma túllépi a Kísérletnél megadott "maximum state number" értéket.
Ebben a részben szeretnénk bemutatni az eszköz használatát a következő rendszer esetében.
Az egymás mellé helyezett ábrákból látható, hogy a bal oldali a teljes rendszerre vonatkozik, míg a jobb oldali a Source azonosítójú igényekre. A kipipált négyzetekkel adjuk meg mely rendszerjellemzőket akarjuk meghatározni.
MODEL Exp.mod USED METHOD GRASSMANN Measure : Source1_at_station_Server ----------------------------------- +-----------+-----------+ | Estimator | Popul. | +-----------+-----------+ | Mean | 1.400e+01 | | Var. | 1.993e+00 | | Stdev. | 1.412e+00 | | CV | 1.008e-01 | +-----------+-----------+ +-----------+----------------------------------+ | Estimator | Range | Probability | +-----------+----------------------------------+ | Frequency | 0 1 9.53710e-06 | | | 1 2 2.62270e-05 | | | 2 3 5.78187e-05 | | | 3 4 1.19661e-04 | | | 4 5 2.42339e-04 | | | 5 6 4.86942e-04 | | | 6 7 9.75581e-04 | | | 7 8 1.95243e-03 | | | 8 9 3.90582e-03 | | | 9 10 7.81236e-03 | | | 10 11 1.56253e-02 | | | 11 12 3.12509e-02 | | | 12 13 6.25022e-02 | | | 13 14 1.25005e-01 | | | 14 15 2.50009e-01 | | | 15 16 5.00019e-01 | +-----------+----------------------------------+ Measure : Source1_at_station_Server ----------------------------------- +-----------+-----------+ | Estimator | Util. | +-----------+-----------+ | Mean | 1.000e+00 | | Var. | 3.815e-05 | | Stdev. | 6.176e-03 | | CV | 6.177e-03 | +-----------+-----------+ Measure : Source_at_station_Server ---------------------------------- +-----------+-----------+ | Estimator | Popul. | +-----------+-----------+ | Mean | 1.000e+01 | | Var. | 2.960e-05 | | Stdev. | 5.440e-03 | | CV | 5.440e-04 | +-----------+-----------+ +-----------+----------------------------------+ | Estimator | Range | Probability | +-----------+----------------------------------+ | Frequency | 0 1 7.29631e-12 | | | 1 2 3.56280e-11 | | | 2 3 1.68489e-10 | | | 3 4 7.94234e-10 | | | 4 5 3.74271e-09 | | | 5 6 1.76365e-08 | | | 6 7 8.31068e-08 | | | 7 8 3.91617e-07 | | | 8 9 1.84538e-06 | | | 9 10 1.67317e-05 | | | 10 11 9.99981e-01 | +-----------+----------------------------------+ Measure : Source_at_station_Server ---------------------------------- +-----------+-----------+ | Estimator | Util. | +-----------+-----------+ | Mean | 3.815e-05 | | Var. | 3.815e-05 | | Stdev. | 6.176e-03 | | CV | 1.619e+02 | +-----------+-----------+ Measure : Server ---------------- +-----------+-----------+-----------+ | Estimator | Popul. | Util. | +-----------+-----------+-----------+ | Mean | 2.400e+01 | 1.000e+00 | | Var. | 1.994e+00 | 1.995e-12 | | Stdev. | 1.412e+00 | 1.412e-06 | | CV | 5.883e-02 | 1.412e-06 | +-----------+-----------+-----------+ +-----------+----------------------------------+ | Estimator | Range | Probability | +-----------+----------------------------------+ | Frequency | 0 1 1.99398e-12 | | | 1 2 9.07871e-12 | | | 2 3 4.25437e-11 | | | 3 4 2.00292e-10 | | | 4 5 9.43676e-10 | | | 5 6 4.44669e-09 | | | 6 7 2.09537e-08 | | | 7 8 9.87380e-08 | | | 8 9 4.65274e-07 | | | 9 10 2.19247e-06 | | | 10 11 1.01111e-05 | | | 11 12 2.60549e-05 | | | 12 13 5.73605e-05 | | | 13 14 1.19143e-04 | | | 14 15 2.41861e-04 | | | 15 16 4.86539e-04 | | | 16 17 9.75259e-04 | | | 17 18 1.95218e-03 | | | 18 19 3.90563e-03 | | | 19 20 7.81222e-03 | | | 20 21 1.56252e-02 | | | 21 22 3.12509e-02 | | | 22 23 6.25021e-02 | | | 23 24 1.25005e-01 | | | 24 25 2.50009e-01 | | | 25 26 5.00019e-01 | +-----------+----------------------------------+
Az alábbiakban megadunk néhány hasznos programnevet és címet, amelyeket érdemes meglátogatni és esetleg kipróbálni.
- A dortmundi egyetemen kifejlesztett programok:
HIT, MACOM, HiQPN,DSPNexpress
http://ls4-www.informatik.uni-dortmund.de/tools.html
- Az aacheni egyetemen programja:
SPN2MGM
http://www-ls.informatik.rwth-aachen.de/tools/spn2mgm.html
- Az erlangeni egyetemen kifejlesztett programok:
PEPSY, MOSEL
http://www4.informatik.uni-erlangen.de/Project/PEPSY/
- A Duke egyetem CACC-Duke kutatóközpontjában elkészített programok:
SHARPE, SPNP, iSPN, RAFT
http://www.ee.duke.edu/~kst/tools.html
Kedvcsinálás végett nézzünk meg néhány oldalt.
( A képre kattintva eljuthat az oldalra. )
|