Antonín Kavička 1, Michal Žarnay 2



Podobné dokumenty
Strukturování Petriho Nadpis 2 Nadpis 3

MODELOVÁNÍ UZAVŘENÝCH OBSLUŽNÝCH LOGISTICKÝCH SYSTÉMŮ PETRIHO SÍTĚMI

ACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ

MOŽNOSTI VYUŽITÍ SOFTWARE SNOOPY A PIPE2 K NAVRHOVÁNÍ LINEK MHD POSSIBILITY OF USING SOFTWARE SNOOPY A PIPE2 TO DESIGN OF TRANSPORT NETWORKS

LOKALIZACE POLOHY KOLEJOVÝCH VOZIDEL V RÁMCI MODELU ŽELEZNIČNÍ SÍTĚ S VYUŽITÍM AGENTOVĚ ORIENTOVANÉ SIMULACE

SCIENTIFIC PAPERS OF THE UNIVERSITY OF PARDUBICE. OPTIMALIZACE VÝLUKOVÉ ČINNOSTI POMocí SIMULAČNíHO MODELU

Operační výzkum. Síťová analýza. Metoda CPM.

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.

Úvod do Petriho sítí. Ing. Michal Dorda, Ph.D.

EXTRAKT z technické normy ISO

Vývoj informačních systémů. Obecně o IS

Znalostní systém nad ontologií ve formátu Topic Maps

Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová

PŘÍSPĚVEK O MOŽNÉM VYUŽÍVÁNÍ P/T PETRIHO SÍTÍ PŘI NAVRHOVÁNÍ SVĚTELNÉHO ŘÍZENÍ KŘIŽOVATEK

ANALÝZA A OPTIMALIZACE VÝROBNÍCH PROCESŮ MALOSÉRIOVÉ SLOŽITÉ VÝROBY V NOVÝCH VÝROBNÍCH PROSTORECH NA ZÁKLADĚ DISKRÉTNÍ SIMULACE

Úvod do Petriho sítí. TIN Úvod do Petriho sítí p.1/37

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

MODEL VÁRKOVÉ LINKY NA VÝROBU CHLORIDU ŽELEZNATÉHO PRO FARMACEUTICKÉ ÚČELY. Vladimír Hanta

CONTROLLING IN LOGISTICS CHAIN

U Úvod do modelování a simulace systémů

Problémové domény a jejich charakteristiky

VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE

Software602 Form Designer

2. Modelovací jazyk UML 2.1 Struktura UML Diagram tříd Asociace OCL. 3. Smalltalk 3.1 Jazyk Pojmenování

Karta předmětu prezenční studium

VLIV VYBRANÝCH FAKTORŮ NA DOPRAVNÍ SYSTÉM INFLUENCE OF CHOICE FACTORS ON TRANSPORT SYSTEM

Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant

UML. Unified Modeling Language. Součásti UML

Algoritmy. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 15. dubna / 39

MODELOVÁNÍ DAT V INFORMAČNÍCH SYSTÉMECH. Jindřich Kaluža Ludmila Kalužová

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

Analýza a Návrh. Analýza

Modelování procesů (2) Procesní řízení 1

Návrh a implementace algoritmů pro adaptivní řízení průmyslových robotů

Informační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika

SIMULACE PROCESU ROZŘAĎOVÁNÍ NA SVÁŽNÉM PAHRBKU S VYUŽITÍM BAREVNÉ PETRIHO SÍTĚ SIMULATION OF HUMP SHUNTING PROCESS BY USING COLOURED PETRI NET

EXTRAKT z české technické normy

REGIONÁLNÍ DISPARITY DISPARITY V REGIONÁLNÍM ROZVOJI ZEMĚ, JEJICH POJETÍ, IDENTIFIKACE A HODNOCENÍ

KNIHOVNA MODELŮ TECHNOLOGICKÝCH PROCESŮ

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13.

3. Očekávání a efektivnost aplikací

Grafy. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta.

PŘÍLOHA C Požadavky na Dokumentaci

5 Orientované grafy, Toky v sítích

Stromy, haldy, prioritní fronty

TÉMATICKÝ OKRUH Softwarové inženýrství

Počítačová simulace logistických procesů II 10. přednáška Simulační experimentování

Nepravidlové a hybridní znalostní systémy

Tvorba informačních systémů

XML Š ABLONY A JEJICH INTEGRACE V LCMS XML TEMPLATES AND THEIN INTEGRATION IN LCMS

NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU. Projektová dekompozice

Predikátová logika. prvního řádu

Negativní informace. Petr Štěpánek. S použitím materiálu M.Gelfonda a V. Lifschitze. Logické programování 15 1

SYSTÉM PRO KONFIGURACI KOMUNIKAČNÍCH TERMINÁLŮ A VIZUALIZACI STAVOVÝCH DAT Z KOLEJOVÝCH VOZIDEL

Studium závislosti výpočetního času algoritmu GPC prediktivního řízení na volbě typu popisu matematického modelu v regulátoru

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

EXTRAKT z mezinárodní normy

Teorie systémů TES 5. Znalostní systémy KMS

Konstruování KKS/KS. Katedra konstruování strojů. doc. Ing. Václava Lašová, Ph.D. Konstrukční návrh přístroje na přípravu nápojů z čerstvé zeleniny

SOFTWARE PRO ANALÝZU LABORATORNÍCH MĚŘENÍ Z FYZIKY

Barvené Petriho sítě. Barvené Petriho sítě p.1/34

SIMULACE JEDNOFÁZOVÉHO MATICOVÉHO MĚNIČE

BRDSM: Komplexní systém dynamického řízení kvality plynule odlévané oceli

LADISLAV RUDOLF. Doc., Ing., Ph.D., University of Ostrava, Pedagogical fakulty, Department of Technical and Vocational Education, Czech Republic

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Ing. Jiří Fejfar, Ph.D. Geo-informační systémy

Architektury Informačních systémů. Jaroslav Žáček

1. Integrační koncept

POPIS STANDARDU CEN TC278/WG1. Oblast: ELEKTRONICKÉ VYBÍRÁNÍ POPLATKŮ (EFC) Zkrácený název: ZKUŠEBNÍ POSTUPY 2. Norma číslo:

Grafický manuál společnosti E LINKX a.s.

EXTRAKT z technické normy CEN ISO

APROXIMACE KŘIVEK V MATLABU NEWTONŮV INTERPOLAČNÍ POLYNOM CURVE FITTING IN MATLAB NEWTON INTERPOLATION POLYNOMIAL

Robustnost regulátorů PI a PID

Management projektu III. Fakulta sportovních studií přednáška do předmětu Projektový management ve sportu

Trendy ve vzdělávání 2010 Sekce 1 Podpora výuky

GENEROVÁNÍ KÓDU 9. SHRNUTÍ - PŘÍKLAD POSTUPU PŘEKLADU VSTUPNÍHO PROGRAMU (ZA POUŽITÍ DOSUD ZNÁMÝCH TECHNIK)

INFORMACE O NEBEZPEČNÝCH LÁTKÁCH PŘI PŘEPRAVĚ NEBEZPEČNÝCH VĚCÍ V SILNIČNÍ DOPRAVĚ INFORMATION ABOUT DANGEROUS MATERIALS DURING ROAD TRANSPORT

10 Metody a metodologie strukturované analýzy

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Souhrn Apendixu A doporučení VHDL

ROZVOJ ICT A PDA ZAŘÍZENÍ THE DEVELOPMENT OF ICT AND PDA DEVICES Jiří Vaněk

Základní datové struktury III: Stromy, haldy

ANOTACE nově vytvořených/inovovaných materiálů

ADAPTACE PARAMETRU SIMULAČNÍHO MODELU ASYNCHRONNÍHO STROJE PARAMETR ADAPTATION IN SIMULATION MODEL OF THE ASYNCHRONOUS MACHINE

Závěrečná zpráva projektu specifického výzkumu zakázka č. 2106

2. přednáška z předmětu GIS1 Data a datové modely

Teorie systémů TES 1. Úvod

NUMERICKÉ ŘEŠENÍ VIBROIZOLACE STROJE

5. Sekvenční logické obvody

Modelování vybraných dopravních problémů s využitím Petriho sítí

Stochastické procesy - pokračování

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

Okruh č.3: Sémantický výklad predikátové logiky

Osnova studie proveditelnosti pro projekt zakládání a rozvoje klastrů

Simulace a návrh vyvíjejících Nadpis se 1. Nadpis 3. Božetěchova 2, Brno

IMOSI - MODELACE A SIMULACE LEARN 2013 správně možná špatně

Modelování procesů s využitím MS Visio.

POČÍTAČOVÁ SIMULACE PODNIKOVÝCH PROCESŮ. Ing. V. Glombíková, PhD.

NP-úplnost problému SAT

VYHLÁŠENÍ A ZÁSADY PRO PODPORU STUDENTSKÝCH VĚDECKÝCH KONFERENCÍ PRO ROK 2016

Transkript:

SPECIFIKACE A ANALÝZA PODTŘÍDY BARVENÉ PETRIHO SÍTĚ PRO APLIKACE V RÁMCI SIMULAČNÍCH MODELŮ DOPRAVNÍCH SYSTÉMŮ SPECIFICATION AND ANALYSIS RELATED TO A SUBCLASS OF COLOURED PETRI NET APPLIED WITHIN SIMULATION MODELS REFLECTING TRANSPORTATION SYSTEMS Antonín Kavička 1, Michal Žarnay 2 Anotace:V posledním období byla završena další etapa výzkumu a vývoje původní podtřídy nehierarchické barvené Petriho sítě označované jako ABA-CPN, která je navržena pro aplikace v rámci agentově orientovaných simulačních modelů dopravních systémů. Zmíněný typ sítě je určen zejména k popisu logiky chování agentů, kteří jsou specializováni na řízení odlišných částí simulačních modelů odrážejících provoz dopravních a logistických systémů. ABA-CPN zapouzdřená v rámci jistého agenta představuje acyklickou, strukturálně ohraničenou, ireverzibilní a neživou Petriho síť, jež využívá specifická přípustná počáteční značení odpovídající situaci přijetí zprávy od jiného agenta. Stavový prostor ABA-CPN obsahuje alespoň jedno mrtvé značení, do něhož dospěje evoluce dané sítě po zpracování agentovy vstupní zprávy a potenciálním odeslání všech příslušných zpráv dalším agentům. Každá instance ABA-CPN je nejdříve analyzována prostředky nástroje CPN Tools a následně v rámci původního interpreta tohoto typu sítě. Klíčová slova: Barvená Petriho síť, agentově orientovaná simulace, dopravní systémy Summary: Specification and analysis related to an original subclass of non-hierarchical coloured Petri net (denoted as ABA-CPN) were recently completed. The mentioned ABA-CPN is currently utilized namely for the description of control layer involved within agent-based simulation models reflecting the operation of transportation and logistic systems. ABA-CPN represents structurally bounded, not reversible and not live Petri net using specific admissible initial markings corresponding to receipts of communication messages. Occurrence graph of a correct ABA-CPN disposes at least of one dead marking representing admissible end state reached after processing of initial marking. Each instance of ABA-CPN is analyzed within CPN Tools software and subsequently within original ABA-CPN-interpreter. Key words: Coloured Petri net, agent-based simulation, transportation systems 1 doc. Ing. Antonín Kavička, Ph.D., Univerzita Pardubice, Fakulta elektrotechniky a informatiky, Katedra softwarových technologií, Nám. Čs. legií 565, CZ-532 10 Pardubice, Tel. +420 466 036 645, E-mail: Antonin.Kavicka@upce.cz 2 Ing. Michal Žarnay, PhD., Žilinská univerzita, Fakulta riadenia a informatiky, Katedra dopravných sietí, Univerzitná 8215/1, SK-010 26 Žilina, Tel. +421 41 5134 224, E-mail: Michal.Zarnay@fri.uniza.sk

1. ÚVOD V poslední dekádě bylo dosaženo významného pokroku na poli mikroskopické simulace dopravních a logistických systémů [1, 2]. Příslušné simulační modely uplatňující původní agentově orientovanou architekturu ABAsim (Agent-Based Architecture of simulation models [1]) byly úspěšně aplikovány v řade simulačních studií zkoumajících provoz v dopravních a logistických systémech (příklad zaměření studií je uveden v rámci [4]). Zmíněná architektura využívá dekompozici simulačního modelu na individuální agenty, kteří mezi sebou vzájemně komunikují (pomocí zasílání zpráv) a soustřeďují se na plnění odlišných úkolů. Každý z agentů se skládá z interních komponentů, logiku jejichž chování je možné popisovat buď imperativně (vytvářením programových rutin ve zdrojovém kódu) nebo deklarativně (např. s uplatněním formalismu Petriho sítí). Deklarativní popis je v průběhu simulačního výpočtu interpretován prostřednictvím příslušné systémové rutiny, která je součástí jádra simulačního programu. Doposud byla v rámci ABAsim architektury využívána podtřída place/transition Petriho sítě (nazývaná jako ABA-graph [3]) zejména pro popis logiky řídících komponentů (tzv. manažerů) jednotlivých agentů. Zmíněný typ Petriho sítě lze nahradit původní podtřídou nehierarchické barvené Petriho sítě (označované jako ABA-CPN), která přináší flexibilnější a intuitivnější přístup při definování logiky uvedených komponentů (např. z pohledu vytváření podmínkových větvení apod.). 2. SPECIFIKACE PODTŘÍDY BARVENÉ PETRIHO SÍTĚ Barvená Petriho síť (Coloured Petri net - CPN) popisující logiku vybraného komponentu agenta může být vytvářena v prostředí specifického softwarového nástroje, který poskytuje analýzu tohoto typu sítě. Analyzovaná síť je následně zpřístupněna (prostřednictvím příslušného datového souboru) simulačnímu jádru, přičemž příslušný interpret postupně provádí evoluci sítě v průběhu simulačního výpočtu. Pro potřeby simulačních modelů založených na ABAsim architektuře byly modelovací možnosti nehierarchických barvených Petriho sítí účelně omezeny, přičemž na tomto základě byl navržena původní podtřída barvené Petriho sítě nazývaná jako ABA-CPN. Následující definice vychází ze standardní definice barvené Petriho sítě uváděné v [5]. Z důvodu komplexnosti je definice rozdělena do čtyř částí, které jsou proloženy vysvětlujícími komentáři a ilustračním příkladem malé sítě zobrazené na obrázku 1. Definice 1: ABA-CPN představuje podtřídu CPN = (Σ, P, T, A, N, C, G, E, I), která vyhovuje následujícím podmínkám: (i) (ii) Σ je konečná množina neprázdných typů nazývaných množiny barev. Konečná množina míst P = {p in } {p out } P S, kde p in je vstupní místo, p out výstupní místo and P S se skládá z interních míst, přičemž tři uvedené množiny jsou vzájemně disjunktní.

(iii) Konečná množina přechodů T = T D T A T S T B, T, kde elementy T D jsou označovány jako rozhodovací přechody, elementy T A jako asistenční přechody, elementy T S jako odesílací přechody a elementy T B jako standardní přechody; všechny čtyři uvedené množiny jsou vzájemně disjunktní a T P =. (iv) A představuje konečnou množinu hran, pro které platí: P A = T A =. (v) N je vrcholová funkce definovaná z A do (P T) (T P). (vi) C představuje funkci barev definovanou z P do Σ. (ii) Množina míst je rozdělena do podmnožin z důvodu lepší rozlišitelnosti specifických typů míst. Výskyt značky ve vstupním místě p in odpovídá přijetí vstupní zprávy agenta, značka ve výstupním místě p out odráží připravenost výstupní zprávy agenta k odeslání příslušnému jinému agentovi. V ilustrační síti na obrázku 1 platí: vstupní místo p in = p 1, výstupní místo p out = p 9 a interní místa soustřeďuje P S = {p 2, p 3, p 4, p 5, p 6, p 7, p 8 }. if res=res_cplusd then 1`res p5 InMSG p2 d2 Result if res=res_e then 1`res s1 res if inp=im_a then 1`inp inp res OM_D OM_C InMSG p1 inp d1 a1 res p4 p6 res s2 OM_E p9 OutMSG 1 1`IM_A Result Result if inp=im_b then 1`inp p3 inp t1 inp InMSG p7 inp s3 OM_F InMSG x p8 x a2 Generic Zdroj: Autoři Obr.1 Ilustrační síť k definici ABA-CPN (zpracováno v nástroji CPN Tools) (iii) Množina přechodů je složena ze čtyř podmnožin. Rozhodovací přechody (zahrnuté v T D ) představují body podmínkového větvení (přechody d 1 a d 2 na obrázku 1), asistenční přechody (obsažené v T A ) odrážejí interní výkonné komponenty/asistenty agentů (a 1, a 2 ), odesílací přechody (prvky množiny T S ) modelují zasílání zpráv jiným komponentům, resp. agentům (s 1, s 2, s 3 ). Standardní přechody (uchovávané v T B ) nejsou spojeny s žádnou specifickou interpretací vzhledem k používané architektuře simulačního modelu (příkladem standardního přechodu je t 1 ). (i) + (vi) Ilustrační síť disponuje následujícími čtyřmi množinami barev Σ = {InMSG, Result, Generic, OutMSG}. Příklady funkcí barev jsou: C(p 1 ) = InMSG a C(p 6 ) = Result.

Množina InMSG sestává ze dvou prvků (barev) IM_A a IM_B, množina OutMSG obsahuje čtyři elementy: OM_C, OM_D, OM_E a OM_F. Množina barev Result disponuje dvěma prvky Res_CplusD a Res_E a konečně množina Generic zahrnuje pouze jeden prvek e. Definice 1 - pokračování: (vii) E je funkce hranových výrazů definovaná z A do množiny hranových výrazů (specifikované v [5]). (viii) Hrany disponují následujícími specifikacemi: a) Neexistuje dvojice hran a 1, a 2, a 1 a 2 pro kterou p(a 1 ) = p(a 2 ) t(a 1 ) = t(a 2 ) ((N(a 1 ) T P N(a 2 ) P T), kde p(a) představuje místo a a t(a) reprezentuje přechod z N(a), b) Každá hrana a A náleží do jedné z následujících kategorií: Jestliže t(a) T D N(a) T P, pak je a nazývána jako rozhodovací hrana a příslušný hranový výraz E(a) obsahuje podmínku pro variantní větvení. Pro všechna t(a) T D a všechna t(a) T D : N(a) P T, představuje a jednu z následujících možností: konstantní hrana, je-li E(a) složeno pouze z jedné konstanty, nebo elementární proměnná hrana, jestliže E(a) obsahuje pouze jednu proměnnou. (viii) První specifikace nepřipouští konstrukci vlastních cyklů, ABA-CPN tedy reprezentuje čistou síť. Druhá specifikace představuje přípustné konstrukce hranových výrazů, které jsou rozděleny do dvou kategorií. Hranové výrazy příslušející hranám vycházejícím z rozhodovacích přechodů (rozhodovací hrany) představují podmínkové výrazy. V rámci ilustrační sítě se jedná o hrany (d 1, p 2 ), (d 1, p 3 ), (d 2, p 5 ) and (d 2, p 6 ). Hrany, jejichž počátek je v jiných vrcholech než rozhodovacích přechodech, disponují hranovými výrazy obsahujícími buď pouze jednu konstantu (konstantní hrany) nebo jednu proměnnou (elementární proměnné hrany). Na demonstračním obrázku jsou následující elementární proměnné hrany (p 1, d 1 ), (p 2, a 1 ), (a 1, p 4 ), (p 4, d 2 ), (p 5, s 1 ), (p 6, s 2 ), (p 3, t 1 ), (t 1, p 7 ), (p 7, s 3 ), (t 1, p 8 ), (p 8, a 2 ). Všechny zbývající hrany jsou klasifikovány jako hrany konstantní. Definice 1 - pokračování: (ix) G představuje funkci strážní podmínky definovanou z T do množiny výrazů strážních podmínek (specifikované v [5]). (x) Prvky z množin P a T disponují následujícími přídavnými vlastnostmi: a) ( t T: a A: N(a) = (t, p in )) ( 1 a A: N(a) = (p in, t), t T), b) ( a A: N(a) = (t, p out ), t T) ( t T: a A: N(a) = (p out, t)), c) p P S : ( a A: N(a) = (t, p), t T) ( 1 a A: N(a) = (p, t), t T), d) t T B : a A: N(a) = (p, t), p P, e) t T \ T B : 1 a A: N(a) = (p, t), p P, f) t T D T S : a A: N(a) = (t, p), p P, g) 1 t T D : 1 a A: N(a) = (p in, t), kde t je označován jako vstupní přechod,

h) t T: ( a A: N(a) = (t, p out )) ( a A: N(a) = (t, p), p P) je nazýván jako výstupní přechod, i) t T: ( a A: N(a) = (p in, t)) ( a A: N(a) = (t, p out )) ( a A: N(a) = (t, p), p P) je označován jako interní přechod, j) t T: G(t) =. V části (x) se vlastnosti a), b) a c) týkají vrcholů-míst: do vstupního místa nejsou zaústěny žádné hrany a právě jedna hrana z něj vychází (místo p 1 v ilustrační síti); výstupní místo je incidentní pouze s hranami do něj zaústěnými (místo p 9 ); všechna ostatní místa jsou incidentní s alespoň jednou vstupní hranou a právě jednou výstupní hranou. Vlastnosti d) až j) charakterizují přechody. Všechny přechody jsou incidentní alespoň s jednou vstupní hranou. Do rozhodovacích, asistenčních a odesílacích přechodů je zaústěna právě jedna hrana, standardní přechody mohou být incidentní s více vstupními hranami. Alespoň jednou výstupní hranou musí disponovat rozhodovací a odesílací přechody (např. d 1, d 2, s 1, s 2 a s 3 na demonstračním obrázku), což nemusí platit pro ostatní typy přechodů (např. z přechodu a 2 nevychází žádná hrana). Vstupní přechod je právě jeden a jako jediný ze všech přechodů leží ve výstupním vrcholovém okolí vstupního místa (přechod d 1 do něhož vede hrana ze vstupního místa p 1 ). Výstupní přechody jsou buď spojeny hranou s výstupním místem nebo mají prázdné výstupní vrcholové okolí (přechody s 1, s 2, s 3 a a 2 ). Všechny ostatní přechody jsou nazývány jako interní (přechody d 2, a 1 a t 1 ). Žádný z přechodů nedisponuje žádnou strážní podmínkou. Definice 1 - pokračování: (xi) Petriho síť vybudovaná z prvků množin P, T a A reprezentuje acyklickou síťovou strukturu. (xii) I je inicializační funkce definovaná z P do množiny uzavřených výrazů (zmíněné výrazy specifikují multimnožiny barev a jsou blíže popsány v [5]). (xiii) Množina přípustných inicializačních značení M 0 I(P) je definována následovně: M 0 = { j M 0 j =1,2,, C(p in ) }, kde j M 0 označuje j-té inicializační značení, pro které platí: p P: j M 0 (p) = 1, jestliže p = p in a j M 0 (p) = 0, jestliže p p in ; pro i j platí: i M 0 (p) j M 0 (p). (xiii) Značky odlišných barev odrážejí v rámci ABA-CPN odlišně vyplněné formuláře zpráv, které jsou v rámci ABAsim architektury využívány pro komunikační účely. Přípustné inicializační značení ABA-CPN připouští výskyt právě jedné značky v rámci celé sítě umístěné ve vstupním místě p in ; žádné z dalších míst sítě nedisponuje žádnou značkou. Tento stav odráží situaci, kdy vstupní zpráva (příslušného komponentu agenta) čeká ve vstupním místě na své zpracování, přičemž daná síť aktuálně žádné jiné zprávy nezpracovává. ABA- CPN je navržena pro separátní zpracování všech typů příslušných vstupních zpráv (reprezentovaných značkami z množiny barev vstupního místa C(p in )), proto množina přípustných inicializačních značení M 0 obsahuje tolik značení, kolik je druhů vstupních zpráv

(tj. C(p in ) - j M 0 označuje j-té inicializační značení. Na ilustračním obrázku je zobrazeno jedno přípustné inicializační značení: vstupní místo p 1 obsahuje jednu značku barvy IM_A, zatímco ostatní místa jsou prázdná. Tento stav reprezentuje situaci přijetí zprávy IM_A (Input Message A) příslušným komponentem agenta, který ji dále zpracuje. Pro volby identifikátorů jednotlivých proměnných, resp. konstant požívaných v rámci hranových výrazů byly navrženy jisté konvence, které umožňují ovlivňovat ze strany návrháře ABA-CPN management instancí zpráv/značek, které se v rámci sítě vyskytují. Tato problematika již přesahuje rámec tohoto příspěvku, přičemž její popis je obsažen v [7]. 3. PŘÍKLAD APLIKACE ABA-CPN Ilustrace aplikace ABA-CPN je zaměřena na popis jednoho řídícího komponentu simulačního modelu odrážejícího zjednodušený obslužný systém (obr. 2). Tento simulační model využívá agentově orientovanou ABAsim architekturu, přičemž zmíněný řídící komponent-manažer je zapouzdřen v rámci agenta Správce zdrojů. Zdroj: Autoři Obr.2 Zjednodušená struktura simulačního modelu obslužného systému Zákazníci obslužného systému do něj vstupují z jeho okolí, přičemž jsou následně obsluhováni dvěma typy obslužných procesů, po jejichž ukončení opouštějí systém. První druh obsluhy (Obsluha typu A) je prováděn stabilním zdrojem obsluhy (tj. zákazník se k němu musí sám přemístit prostřednictvím procesu Přesun zákazníka). Naproti tomu druhý obslužný proces (Obsluha typu B) využívá mobilní obslužný zdroj, který se přemístí k zákazníkovi v rámci procesu Přesun zdroje. Simulační model se skládá ze tří agentů: agenta Okolí, agenta Správce obsluhy a agenta Správce zdrojů. První z agentů je zodpovědný za spojení mezi zkoumaným systémem a okolím (zpracovává příchody a odchody jednotlivých

Declarations colset Vstupni_zpravy = with REQ_Dodej_zdroj NTC_Zdroj_navracen FIN_Presun; colset Vystupni_zpravy = with RESP_Zdroj_dodan START_Presun; colset Vysledek_zdroj = with res_zdroj_vybran res_neni_zdroj; colset Vysledek_presun = with res_presun_nutny res_zadny_presun; colset Vysledek_fronta = with res_prazdna_fronta res_neprazdna_fronta; colset Genericky_formular = with e; colset Zn = with Zdroj_navracen; colset Up = with Ukoncen_presun; colset Dz = with Dodej_zdroj; colset Pn = with Presun_nutny; colset Zp = with Zadny_presun; colset Nf = with Neprazdna_fronta; colset Zv = with Zdroj_vybran; colset Nz = with Neni_zdroj; var x5 : Vstupni_zpravy; var x6a : Vysledek_zdroj; var x6b : Vysledek_presun; var x6c: Vysledek_fronta; val x_dz = Dodej_zdroj; val x_up = Ukoncen_presun; val x0 = Zdroj_vybran; val x_zv = Zdroj_vybran; val x_nz = Neni_zdroj; val x_pn = Presun_nutny; val x_zp = Zadny_presun; val x_nf = Neprazdna_fronta; val x_resp_zdroj_dodan = RESP_Zdroj_dodan; val x_start_presun = START_Presun; Vstupni_zpravy 1`REQ_Dodej_zdroj p1 1 1`REQ_Dodej_zdroj x5 if x5=req_dodej_zdroj then 1`x_Dz d1 if x5=ntc_zdroj_navracen then 1`x_Zn Dz p2 Zn p3 x_dz x6a a1 Vyber z disponibilnich zdroju if x5=fin_presun then 1`x_Up x_zn x_zn a2 Uvolneni zdroje Vysledek_zdroj p4 Zn p5 if x6a=res_neni_zdroj then 1`x_Nz x6a d2 if x6a=res_zdroj_vybran then 1`x_Zv x_zn x6c a3 Existuje fronta na uvolneny zdroj? Nz p6 Zv p7 p8 Vysledek_fronta x_nz x_zv x0 x6c a4 Zadatel do fronty na zdroj Prideleni zdroje Zv p10 Zadatel a5 z fronty na zdroj x_zv a6 Up p11 x_nf Nf p9 d3 if x6c=res_neprazdna_fronta then 1`x_Nf a7 x_zv Potreba presunu zdroje? x_up x6b Vysledek_presun p12 t1 e p13 Genericky_formular x6b e if x6b=res_presun_nutny then 1`x_Pn d4 x_zp a8 Aktualizace statistiky presunu if x6b=res_zadny_presun then 1`x_Zp Zp Pn p14 p15 x_pn x_zp s1 s2 x_resp_zdroj_dodan x_start_presun p16 Vystupni_zpravy Zdroj: Autoři Obr.3 Barvená Petriho síť popisující logiku manažera agenta Správce zdrojů

1: CPN'p1 1: 1`REQ_Dodej_zdroj 2: CPN'p2 1: 1`Dodej_zdroj 3: CPN'p4 1: 1`res_Neni_zdroj 4: CPN'p4 1: 1`res_Zdroj_vybran 5: CPN'p6 1: 1`Neni_zdroj 6: CPN'p7 1: 1`Zdroj_vybran 9: CPN'p12 1: 1`res_Zadny_presun ->2 CPN'd1 1: {x5=req_dodej_zdroj} 2:2->3 CPN'a1 1: {x6a=res_neni_zdroj} 3:2->4 CPN'a1 1: {x6a=res_zdroj_vybran} 3 4:3->5 CPN'd2 1: {x6a=res_neni_zdroj} 5:4->6 CPN'd2 1: {x6a=res_zdroj_vybran} 5 6:5->7 CPN'a4 1: {} 7:6->8 CPN'a5 1: {} 7 1:0 1 0:1 2 1:2 8:8->9 CPN'a7 1: {x6b=res_zadny_presun} 9:8->10 CPN'a7 1: {x6b=res_presun_nutny} 9 10:9->11 CPN'd4 1: {x6b=res_zadny_presun} 4 6 8 1:2 10 10->12 CPN'd4 1: {x6b=res_presun_nutny} 7: 8: CPN'p10 1: 1`Zdroj_vybran 10: CPN'p12 1: 1`res_Presun_nutny 11: CPN'p15 1: 1`Zadny_presun 12: CPN'p14 1: 1`Presun_nutny 11 12 13: 12:11->13 CPN's2 1: {} 13:12->14 CPN's1 1: {} 13 14 1:0 1:0 CPN'p16 1: 1`RESP_Zdroj_dodan 14: CPN'p16 1: 1`START_Presun Zdroj: Autoři Obr.4 Stavový graf pro inicializační značení 1 M 0 (zpracováno v nástroji CPN Tools) zákazníků), druhý spravuje všechny souběžně prováděné obslužné procesy a třetí agent se zaměřuje na přidělování, resp. uvolňování obslužných zdrojů a jejich přemísťování. Na obrázku 2 jsou znázorněny jak meziagentové, tak vnitroagentové komunikační vazby založené na paradigmatu zasílání zpráv. Síť ABA-CPN popisující logiku manažera agenta Správce zdrojů je znázorněna na obrázku 3 (zpracování sítě je provedeno v nástroji CPN Tools [6]). Zmíněná ilustrační Petriho síť disponuje následujícími vlastnostmi: Množina míst P = {p i i =1,,16}, kde: p in = p 1, p out = p 16, P S = {p i i =2,, 15}. Množina přechodů T = T D T A T S T B, kde T D = {d i i =1,, 4}, T A = {a i i =1,, 8}, T S = {s i i =1,2} a T B = {t 1 }; vstupní přechod reprezentuje d 1 a výstupními přechody jsou s 1, s 2, a 4, a 8.

Množina přípustných inicializačních značení M 0 = { 1 M 0, 2 M 0, 3 M 0 } zohledňuje tři odlišné druhy vstupních zpráv, které mohou být adresovány agentovi Správci zdrojů: 1 M 0 (p 1 ) = {REQ_Dodej_zdroj} a 1 M 0 (p j ) =, j = 2,,16; 2 M 0 (p 1 ) = {NTC_Zdroj_navracen } a 2 M 0 (p j ) =, j = 2,,16; 3 M 0 (p 1 ) = {FIN_Presun} a 3 M 0 (p j ) =, j = 2,,16. Stavový graf ilustrační ABA-CPN sítě pro inicializační značení 1 M 0 je znázorněn na obrázku 5 (s využitím softwaru CPN Tools). Zde je prezentováno zpracování vstupní zprávy REQ_Dodej_zdroj, které může být alternativně zakončeno ve třech rozdílných terminálních stavech. Tyto odpovídají buď odeslání jedné výstupní zprávy (uzly 13 a 14 stavového grafu) anebo uložení požadavku na přidělení zdroje do fronty a vyprázdnění sítě (uzel 7). Výstupní zprávou může být buď START_Presun (uzel 14) nebo RESP_Zdroj_dodan (uzel 13). 4. ANALÝZA ABA-CPN Původní podtřída barvené Petriho sítě ABA-CPN byla navržena zejména pro potřeby formalizace řídících a komunikačních činností agentů v ABAsim architektuře simulačních modelů. Navzdory této skutečnosti nabízí ABA-CPN obecnější formalizační přístup, který je potenciálně využitelný i v rámci jiných platforem. ABA-CPN představuje barvenou Petriho síť, která je strukturálně ohraničená, není reverzibilní a není živá. Tyto vlastnosti vyplývají z její acykličnosti (bod (xi) v definici 1) a ze skutečnosti, že nejsou povoleny tzv. zdrojové přechody (body (x) d) a e) v definici 1). Stavový prostor ABA-CPN obsahuje alespoň jedno mrtvé značení, jehož výskyt může mít dvě příčiny. První příčinou je existence výstupního místa p out, které nedisponuje žádnou výstupní hranou (bod (x) b) v definici 1). V tomto případě je mrtvé značení charakterizováno výskytem značek pouze v rámci výstupního místa p out, přičemž všechna ostatní místa sítě jsou prázdná. Zmíněné značky ve výstupním místě představují zprávy, které aktuální komponent-odesilatel pošle příslušnému komponentu-adresátovi. Druhou příčinu představují přechody, jejichž provedením jsou odebrány všechny značky z jejich vstupních míst a zároveň nejsou přidány žádné značky do míst výstupních (buď z důvodu prázdnosti příslušných výstupních vrcholových okolí anebo na základě vyhodnocení podmínkových výrazů na výstupních hranách). To může potenciálně vést ke vzniku mrtvého značení, které je charakterizováno zcela prázdnou sítí (tj. v žádném z míst sítě se nenachází žádná značka). Prázdnost sítě je způsobena spotřebou všech značek (v rámci uvedených typů přechodů), přičemž není potřebná další komunikace s ostatními komponenty (resp. agenty) simulačního modelu. Výše uvedená mrtvá značení reprezentují přípustné koncové stavy evoluce sítě, které jsou důsledkem zpracování příslušné vstupní zprávy (přijetí dané vstupní zprávy odpovídá příslušnému inicializačnímu značení sítě - bod (xiii) v definici 1). Pokud jde o živost jednotlivých přechodů, pouze jeden přechod se vyskytuje ve všech možných evolučních sekvencích sítě. Zmíněným přechodem je vstupní přechod t T D. Je-li síť navržena korektně, neobsahuje žádný přechod, který je mrtvým přechodem ve všech sekvencích sítě (pro všechna přípustná počáteční značení). Analýza živosti sítě představuje

důležitý přínos, jelikož její aplikací je kontrolována korektnost konstrukce konkrétní instance ABA-CPN. Obsahuje-li stavový graf mrtvá značení, která nepředstavují přípustné stavy, je tím indikována chyba v konstrukci sestrojené sítě. 5. ZÁVĚR Aplikace původní podtřídy barvené Petriho sítě ABA-CPN vytváří předpoklady k dalšímu zkvalitnění rychlého a flexibilního prototypování simulačních modelů dopravních systémů a jejich verifikace. V současné době je pro potřeby tvorby a verifikace ABA-CPN sítí využívána kombinace dvou softwarový produktů. Prvním z nich je nástroj CPN Tools vyvíjený univerzitou v Aarhusu, v jehož rámci jsou příslušné Petriho sítě konstruovány a je prováděna první fáze analýzy. Druhým nástrojem je původní prototyp interpretu ABA-CPN, v jehož prostředí se provádí druhá fáze analýzy sítě a realizace její interpretace. Perspektivním úkolem pro další vývoj je vytvoření nového nástroje disponujícího integrovaným prostředím umožňujícím realizovat všechny fáze vývoje, verifikace a evoluce ABA-CPN sítí. Tato práce vznikla za podpory výzkumného záměru MSM 0021627505 Teorie dopravních systémů. POUŽITÁ LITERATURA [1] KAVIČKA, A., KLIMA, V., ADAMKO, N.: Simulations of transportation logistic systems utilizing agent-based architecture, International Journal of Simulation Modelling, DAAAM International, Vienna, 1 (2007) 13-24 [2] ADAMKO, N., KAVIČKA, A., KLIMA, V.: Agent based simulation of transportation logistic systems, DAAAM International Scientific Book 2007, Chapter 36, B. Katalinic (Ed.), DAAAM International, Vienna (2007) 407-422 [3] KAVIČKA, A.: Petri net with decision transitions applied within ABAsim architecture of simulation models. In MOSIS 03 Proceedings of the 37th conference Modelling and simulation of systems, MARQ, Ostrava (2006) 373-380 [4] KAVIČKA, A., KLIMA, V., ADAMKO, N.: Analysis and optimization of railway nodes using simulation techniques, In COMPRAIL 2006 Proceedings of 10th Computer system design and operation in the railway and other transit system, WIT- Press, Southampton (2006) 663-672 [5] JENSEN, K.: Coloured Petri nets basic concepts. Springer Verlag, Berlin (1997) [6] CPN Tools home page. [online]. [cited on 29 February 2008] Available at: <http://www.daimi.au.dk/ CPNTools/> [7] Kavička, A., Žarnay, M.: Application of coloured Petri net for agent control and communication in the ABAsim architecture. In Proceeding of 9th workshop and tutorial on practical use of coloured Petri nets and the CPN Tools. K. Jensen (Ed.), University of Aarhus, Aarhus-Denmark (2008) 47-62 Recenzent: Mgr. Ing. Ľubomír Sadloň, CSc. Žilinská univerzita, Fakulta riadenia a informatiky