Barvené Petriho sítě. Barvené Petriho sítě p.1/34
|
|
- Ilona Libuše Matoušková
- před 5 lety
- Počet zobrazení:
Transkript
1 Barvené Petriho sítě Barvené Petriho sítě p.1/34
2 Úvod do CPN Barvené Petriho sítě (Coloured Petri Nets CPNs): Kurt Jensen, Aarhus Uviversity, Dánsko, Monografie: K. Jensen: Coloured Petri Nets. Monographs in Theoretical Computer Science, Springer-Verlag, Tří díly: základní koncepty, analýza a průmyslové případové studie. Řada úvodních článků, příkladů,... dostupná na. Eistují i alternativní koncepty CPN, všechny ale více méně v podobném duchu. Někdy se též hovoří o tzv. High-Level Petri Nets. CPN jsou motivovány snahou odstranit některé nevýhody klasických (P/T) Petriho sítí: Petriho sítě, poskytující primitiva pro popis synchronizace paralelních procesů, jsou rozšířeny o eplicitní popis datových typů a datových manipulací. Barvené Petriho sítě p.2/34
3 Nástroje: Design/CPN, CPN Tools (oba Aarhus University), dále např. ESpect,... (viz ). CPN byly aplikovány v řadě průmyslových případových studií: komunikační protokoly a sítě, software (části SW Nokia, bankovní transakce, distribuované algoritmy,...), hardware, řídící systémy, vojenské systémy,... Podobně jako u P/T Petriho sítí eistují různá rozšíření CPN o fyzický čas. CPN jsou základem pro další rozšíření: hierarchické CPN či různé objektově-orientované Petriho sítě (PNtalk, Renew,...). Barvené Petriho sítě p.3/34
4 Petriho sítě s individuálními značkami Individual Token Nets with Constant Arrow Labels: A B C D E A B C D E A B A+B C+D+E AAA 2 A+B BB 2 C+3 D +2 E D EE A+B C+D+E C D E A B 2 A+B 2 C+3 D +2 E CC DDDD EEEE Barvené Petriho sítě p.4/34
5 Další jednoduchý příklad změna ročních období: Spring Summer Spring Winter Spring Summer Autumn season Winter Autumn Barvené Petriho sítě p.5/34
6 Individual Token Nets with Variable Arrow Labels: AB BC C y y y = B y = C A C y y y B C C binding (navázání) A y (,y) C a ac B T b bc TYPEOF(A) = { a, b } TYPEOF(B) = { c, d } TYPEOF(C) = { a, b } {c, d } = { (a,c), (a,d), (b,c), (b,d) } c d ad bd colour sets colours Barvené Petriho sítě p.6/34
7 Neformální zavedení CPN, Uvažujme příklad popisu systému přidělování prostředků (zdrojů). Systém je tvořen: 2 třídami procesů procesy, resp., 3 typy zdrojů,,, stavy procesů,,...,,,...,, počátečním stavem. Vlastní činnost systému lze popsat P/T Petriho sítí takto: Barvené Petriho sítě p.7/34
8 V CPN můžeme sloučit popis chování podobných procesů který průchod alokačním cyklem daný proces provádí. a. Budeme registrovat, Model ve tvaru CPN zahrnuje dvě složky: 1. grafickou část graf Petriho sítě a 2. popisy inskripci. Inskripce, vyjádřená inskripčním jazykem, obsahuje: deklaraci množin barev (coloured sets), tj. datových typů, specifikaci množin barev míst, popis hran, strážní podmínky přechodů, počáteční značení, (jména míst a přechodů). Náš systém sdílení zdrojů pak můžeme modelovat např. tak, jak je ukázáno na následujícím slajdu... Barvené Petriho sítě p.8/34
9 Barvené Petriho sítě p.9/34
10 Každý hranový výraz se vyhodnotí na multimnožinu značek: konstruktor multimnožiny: n 1 c 1 + n 2 c n m c m, n 1,n 2,..., n m jsou konstanty, proměnné nebo funkce, které se vyhodnotí na kladná přirozená čísla, c 1,c 2,..., c m jsou konstanty, proměnné nebo funkce, které se vyhodnotí na barvy, příklady: varianta jednoduchého popisu změn ročních období: Spring suc() suc(spring)=summer suc(summer)=autumn suc(autumn)=winter suc(winter)=spring Po zavedení jiného systému barev a hranových výrazů můžeme náš systém sdílení zdrojů modelovat např. také tak, jak je ukázáno na následujícím slajdu... Barvené Petriho sítě p.10/34
11 Barvené Petriho sítě p.11/34
12 A konečně po zavedení ještě jiného systému barev a hranových výrazů můžeme náš systém sdílení zdrojů modelovat také takto: Výše uvedený příklad demonstruje mj. skutečnost, že při použití CPN máme volbu, které rysy systému popsat Petriho sítí a které výpočtem v použitém inskripčním jazyce. Barvené Petriho sítě p.12/34
13 Jiný příklad: databáze je distribuována do n míst (sites); každé místo obsahuje kopii všech dat, o kterou se stará systém správy databáze (DBM): DBM = {d 1,..., d n }, zprávy zasílané mezi DBM: MES = {(s, r) s, r DBM s r}, kde s sender, r receiver, Mes(s) = P r DBM\{s} 1 (s, r). SendMes Mes(s) Sent MES (s,r) RecMes DBM Waiting s E Active Update and Send Messages e e MES Unused MES Mes(s) Mes(s) e Passiv e E e e s Inactive r DBM DBM Receive a Message (s,r) Received (s,r) MES r Performing DBM val n = 4; color DBM = inde d with 1..n declare ms; color PR = product DBM * DBM declare mult; fun diff(,y) = (<>y); color MES = subset PR by diff declare ms; color E = with e; fun Mes(s) = mult PR(1 s,dbm--1 s); var s, r : DBM; s Receive all Acknowledgments s r Send an Acknowledgment r RecAck Mes(s) Acknowledged (s,r) SendAck MES Barvené Petriho sítě p.13/34
14 Formální definice multimnožiny Multimnožina m nad množinou S je funkce m : S N: m(s) značí počet výskytů prvku s v multimnožině m. Multimnožinu m obvykle reprezentujeme formální sumou P s S m(s) s. Symbolem S MS značíme množinu všech multimnožin nad S. Jestliže m(s) 0, pak říkáme, že s patří do m a píšeme s m. Pro multimnožiny je definována: operace sjednocení m 1 + m 2 = P s S (m 1(s) + m 2 (s)) s, skalární multiplikace, predikáty =,,, (např. m 1 m 2 s S : m 1 (s) m 2 (s)), kardinalita m = P s S m(s) a je-li m 1 m 2, pak také rozdíl m 2 m 1. Barvené Petriho sítě p.14/34
15 Formální definice syntae CPN Některé pomocné funkce a pojmy: Vycházíme z dané konečné množiny Σ konečných množin barev (Σ je tedy množina typů značek). Typ proměnné v budeme značit Type(v). Je-li V množina proměnných, pak Type(V ) = {Type(v) v V }. Typ výrazu epr budeme značit T ype(epr). Množinu proměnných výrazu epr budeme značit V ar(epr). Uzavřeným výrazem rozumíme výraz epr bez proměnných, tj. V ar(epr) =. Označme EXP R množinu všech výrazů přípustných ve zvoleném inskripčním jazyce. Označme CEXPR EXPR množinu všech uzavřených výrazů přípustných ve zvoleném inskripčním jazyce. Konečně označme B = {true, false}. Barvené Petriho sítě p.15/34
16 Nehierarchická barvená Petriho sít CPN je n-tice CPN = (Σ, P, T, A, N, C, G,E, I), kde: 1. Σ je konečná množina konečných, neprázdných typů nazývaných množinami barev. 2. P je konečná množina míst. 3. T je konečná množina přechodů taková, že P T =. 4. A je konečná množina hran taková, že A P = A T =. 5. N je uzlová funkce (node function) N : A P T T P. 6. C je funkce barev (colour function) C : P Σ. 7. G je funkce strážních podmínek (guard function) G : T EXPR taková, že t T : Type(G(t)) = B Type(V ar(g(t))) Σ. 8. E je funkce hranových výrazů (arc epression function) E : A EXP R taková, že a A : Type(E(a)) = C(p(a)) MS Type(V ar(e(a))) Σ, přičemž p(a) je místo v N(a). 9. I je inicializační funkce I : P CEXPR taková, že p P : Type(I(p)) = C(p) MS. Barvené Petriho sítě p.16/34
17 Naši první CPN verzi systému alokace sdílených zdrojů můžeme dle definice zapsat takto: Barvené Petriho sítě p.17/34
18 Formální definice sémantiky CPN Navázání množiny proměnných V přiřazuje každému v V prvek b(v) Type(v). Hodnotu získanou vyhodnocením epr při navázání b budeme značit epr b. Necht V ar(t) je množina všech proměnných vyskytujících se ve výrazech na hranách přilehlých k přechodu t, respektive ve stráži t. Navázání přechodu t je funkce b definovaná na V ar(t) tak, že: 1. v V ar(t) : b(v) Type(v). 2. G(t) b. B(t) pak značí množinu všech navázání přechodu t. Barvené Petriho sítě p.18/34
19 Element značení (token element) je dvojice (p, c), kde p P a c C(p). Množinu všech elementů značení značíme T E. Značení je pak multimnožina nad TE. Množinu všech značení značíme M. Počáteční značení M 0 je definováno vyhodnocením inicializační funkce: (p, c) TE : M 0 ((p, c)) = (I(p))(c). Element navázání (binding element) je dvojice (t,b), kde t T a b B(t). 1. Množinu všech elementů navázání značíme BE. 2. Krokem pak rozumíme neprázdnou a konečnou multimnožinu nad BE. 3. Množinu všech kroků značíme Y. Barvené Petriho sítě p.19/34
20 Krok Y Y je proveditelný (enabled) ve značení M M, jestliže platí následující: p P : X (t,b) Y E(p,t) b M(p) Je-li Y proveditelný, pak: Říkáme, že každý (t,b) Y je proveditelný, a také, že t je proveditelný (pro navázání b). Pro (t 1, b 1 ), (t 2, b 2 ) Y, (t 1,b 1 ) (t 2, b 2 ), říkáme, že (t 1, b 1 ), (t 2, b 2 ) jsou současně proveditelné (concurrently enabled). Je-li Y ((t,b)) 2, říkáme, že (t, b) je současně proveditelný sám se sebou. Podobně je-li Y (t) 2, říkáme, že t je současně proveditelný sám se sebou. Je-li Y Y proveditelný v M 1 M, může být proveden a změnit tak značení na M 2 M takové, že: p P : M 2 (p) = (M 1 (p) X E(p,t) b ) + X E(t,p) b ) (t,b) Y (t,b) Y Barvené Petriho sítě p.20/34
21 Hierarchické barvené Petriho sítě Barvené Petriho sítě p.21/34
22 Hierarchické strukturování v PN Proč strukturování? Modelování a návrh rozsáhlých systémů jsou nemyslitelné na úrovni jednoho, plochého modelu. Hierarchické strukturování v PN dle Huber, Jensen, Shapiro: substituce přechodů přechod staticky nahrazen podsítí (podobné rozvoji maker), substituce míst místo staticky nahrazeno podsítí, invokace přechodů přechod při provádění dynamicky nahrazen nově vytvořenou kopií příslušné podsítě, která eistuje, dokud se neobjeví značka ve zvlášt specifikovaném výstupním místě dané podsítě (analogie volání funkce), fúze míst několik míst je staticky spojeno do jednoho (nebo jedno místo je při návrhu rozděleno na několik, aby se předešlo přílišnému křížení hran). Barvené Petriho sítě p.22/34
23 Substituce přechodů T Net1 U Net2 Port Port Port P1 P2 P3 T A B C U A B C T1 T2 T1 T2 S Subst Net2 A->P1, B->P2, C->P3 D->P4, E->P5 P6 P6 D E T3 T3 V Port P4 Port P5 D E V Barvené Petriho sítě p.23/34
24 Substituce míst A B C Net1 A B C Port T1 Net2 Port T2 T U V W T U V W P1 P1 X S Subst Net2 T,U,V->T1, W->T2 X,Y->T3 Y P2 T4 P3 P2 T4 P3 D T3 Port X Y D Barvené Petriho sítě p.24/34
25 Invokace přechodů T Net1 U a fresh instance of Net2 Port Port Port P1 P2 P3 Net2 Port Port Port P1 P2 P3 A B C input tokens T1 T2 T1 T2 I Invoc Net2 A->P1, B->P2, C->P3 D->P4, E->P5 P6 P6 D E T3 T3 Eit V output tokens P4 P5 P4 P5 Port Port Port Port Barvené Petriho sítě p.25/34
26 Fúze míst T1 T1 T4 T4 A1 T2 B A2 A T2 B Fus A T3 T5 Fus A T3 T5 Při kombinaci fúze míst se substitucí přechodů či míst (či s invokací přechodů) je možné zavést různé typy fúze: lokální v rámci jedné instance sítě, napříč všemi instancemi dané sítě a napříč všemi instancemi všech sítí. Barvené Petriho sítě p.26/34
27 Příklad hierarchická CPN kruhové sítě Nejvyšší hierarchická úroveň model sítě, jejíž jednotlivé uzly jsou popsány dále podsítěmi: Barvené Petriho sítě p.27/34
28 Podsít modelující jeden uzel sítě (mezi instance sítě a u globální fúzi): a předpokládáme fúzi v rámci Barvené Petriho sítě p.28/34
29 Rozvinutím hierarchie dostaneme tuto CPN (fúze míst ještě není provedena): Barvené Petriho sítě p.29/34
30 Konečně po fúzi míst dostaneme tuto CPN: Barvené Petriho sítě p.30/34
31 Objektově orientované Petriho sítě Barvené Petriho sítě p.31/34
32 Eistují různé koncepty zavedení objektové orientace do Petriho sítí, které v zásadě staví na mechanismech podobných invokaci přechodů. OOPN/PNtalk vyvinutý na FIT ( pracuje s: třídami s dědičností, objektovými sítěmi v každé třídě popisují strukturu stavu jejích instancí a jejich případné aktivní chování, metodami mohou být vyvolány k asynchronní komunikaci s objekty, synchronními porty zvláštní forma přechodů aktivovaná voláním a umožňující synchronní komunikaci s objekty, objekty jako instancemi tříd a s běžícími instancemi metod, pozdní vazbou. ) Barvené Petriho sítě p.32/34
33 OOPN/PNtalk umíst uje výpočty do stráží a akcí přechodů (na rozdíl od dříve popsaného konceptu CPN) a používá inskripčním jazyk inspirovaný Smalltalkem (na rozdíl od SML), jak je vidět v níže uvedeném jednoduchém modelu systému s čítači: a class C1 is_a PN t2 t3 p2 p4 the message pattern the name of the class the superclass of the class o reset:. > 4. o (,y) o p1 o := C2 new o y := o resetwhen: 2, 3 (,#fail) 3 t4 p3 t1 a parameter the message selector C2 is_a PN resetwhen: < y tf #fail ts return a synchronous port a parameter place reset: p y #succ y < 5 an object net y := + 1 t a method net the return place Barvené Petriho sítě p.33/34
34 Ukázka dědičnosti v OOPN/PNtalk: an inhereted method net C3 is_a C2 resetwhen: tf ts < y #succ #fail return a redefined synchronous port 0 y t reset: ~= p y < 5 y := + c c 1 step setstep: s s a new method net s s t return an inhereted place a redefined transition a new place Barvené Petriho sítě p.34/34
Úvod do Petriho sítí. TIN Úvod do Petriho sítí p.1/37
Úvod do Petriho sítí TIN Úvod do Petriho sítí p.1/37 Petriho sítě Motivace: modely diskrétních systémů modely paralelních systémů modely distribuovaných systémů Využití: návrh syntéza analýza verifikace
VíceStrukturování Petriho Nadpis 2 Nadpis 3
Strukturování Petriho Nadpissítí 1 Nadpis 2 Nadpis 3 Vladimír JménoJanoušek Příjmení VysokéVysoké učení technické učení technické v Brně,vFakulta Brně, Fakulta informačních informačních technologií technologií
VíceÚvod do Petriho sítí. Ing. Michal Dorda, Ph.D.
Úvod do Petriho sítí Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky Petriho sítě (Petri Nets, PN) představují matematický nástroj pro modelování a simulaci diskrétních systémů (např. systémů hromadné obsluhy
VíceMODELOVÁNÍ UZAVŘENÝCH OBSLUŽNÝCH LOGISTICKÝCH SYSTÉMŮ PETRIHO SÍTĚMI
MODELOVÁNÍ UZAVŘENÝCH OBSLUŽNÝCH LOGISTICKÝCH SYSTÉMŮ PETRIHO SÍTĚMI MODELLING OF CLOSED LOGISTICS SERVICE SYSTEMS USING PETRI NETS Ing. Michal Dorda, Ph.D. Institut dopravy, Fakulta strojní, VŠB Technická
VíceFakulta elektrotechniky a informatiky
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta elektrotechniky a informatiky Modelování objektů Petriho sítěmi Disertační práce Autor: Ing Vladimír Janoušek Ústav informatiky a výpočetní techniky FEI VUT v Brně
VícePODPROGRAMY PROCEDURY A FUNKCE
PODPROGRAMY PROCEDURY A FUNKCE Programy bez podprogramů Příklady: a) Napište program, který na obrazovku nakreslí čáru složenou ze znaků pomlčka. program Cara; b) Napište program, který na obrazovku nakreslí
VíceInformační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.
3 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Business modelling, základní nástroje a metody business modelování.
VíceVyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky
Vyučovací hodina 1vyučovací hodina: Opakování z minulé hodiny Nová látka Procvičení nové látky Shrnutí 5 min 20 min 15 min 5 min 2vyučovací hodiny: Opakování z minulé hodiny Nová látka Procvičení nové
VíceProgramování II. Třídy a objekty (objektová orientovanost) 2018/19
Programování II Třídy a objekty (objektová orientovanost) 2018/19 Osnova přednášky Objektový přístup (proč potřebujeme objekty). Třídy, objekty,... Příklad. Proč potřebujeme objekty? Udržovatelnost softwaru
VíceObsah 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
Denotační sémantika programovacího jazyka doc. Dr. Ing. Miroslav Beneš katedra informatiky, A-1007 59 732 4213 Obsah přednášky Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup
Více1 Nejkratší cesta grafem
Bakalářské zkoušky (příklady otázek) podzim 2014 1 Nejkratší cesta grafem 1. Uvažujte graf s kladným ohodnocením hran (délka). Definujte formálně problém hledání nejkratší cesty mezi dvěma uzly tohoto
VíceKomunikace. Úrovová architektura protokol. Úrovová architektura protokol (2) Pednášky z distribuovaných systém
Komunikace Pednášky z distribuovaných systém Úrovová architektura protokol 2-1 Úrovn, rozhraní a protokoly OSI modelu. 6.12.2004 DS - Komunikace 2 Úrovová architektura protokol (2) 2-2 Typická zpráva penášená
VíceTabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář
Vazba (binding) Tabulka symbolů Miroslav Beneš Dušan Kolář vazba = spojení mezi entitou a vlastností okamžik vazby (binding time) při návrhu jazyka při implementaci jazyka během překladu/spojování/zavádění
VíceMaturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
VíceMATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE
VíceModely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.
Modely datové Existují různé úrovně pohledu na data. Nejvyšší úroveň je úroveň, která zachycuje pouze vztahy a struktury dat samotných. Konceptuální model - E-R model. Další úrovní je logická úroveň Databázové
VíceProgramovací jazyk Pascal
Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce
VíceAlgoritmizace diskrétních. Ing. Michal Dorda, Ph.D.
Algoritmizace diskrétních simulačních modelů Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky Při programování simulačních modelů lze hlavní dílčí problémy shrnout do následujících bodů: 1) Zachycení statických
VíceACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ
ACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ Ročník LIV 1 Číslo 3, 006 Předpoklady Petriho sítí k modelování logistických
VíceUnifikovaný modelovací jazyk UML
Unifikovaný modelovací jazyk UML Karel Richta katedra počíta tačů FEL ČVUT Praha richta@fel fel.cvut.czcz Motto: Komunikačním m prostředkem informační komunity se postupem času stala angličtina. Chcete-li
VíceAlgoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento
VíceSimulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) imní semestr 2/2 Jiří Douša, katedra číslicového návrhu (K83), České vysoké učení technické v Prae,
VíceModel Checking pro Timed Automata. Jiří Vyskočil 2011
Model Checking pro Timed Automata Jiří Vyskočil 2011 Časově kritické systémy korektnost fungování vestavěným a distribuovaných systémů závisí na: správném výsledku výpočtu správném načasování prováděných
VíceMichal Krátký. Úvod do programovacích jazyků (Java), 2006/2007
Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků
VíceAutomaty a gramatiky(bi-aag) Motivace. 1. Základní pojmy. 2 domácí úkoly po 6 bodech 3 testy za bodů celkem 40 bodů
BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 2/29 Hodnocení předmětu BI-AAG (2011/2012) J. Holub: 1. Základní pojmy p. 4/29 Automaty a gramatiky(bi-aag) 1. Základní pojmy Jan Holub Katedra teoretické
VíceParalelní programování
Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 11 Literatura Ben-Ari M.: Principles of concurrent and distributed programming.
Více1. Webové služby. K čemu slouží? 2. RPC Web Service. 3. SOA Web Service. 4. RESTful Web services
13. Webové služby. K čemu slouží? Popis a vyhledávání služeb. Co je a k čemu slouží orchestrace a choreografie služeb. Technologie pro implementaci služeb 1. Webové služby. K čemu slouží? Definice WS -
Vícedoplněk, zřetězení, Kleeneho operaci a reverzi. Ukážeme ještě další operace s jazyky, na které je
28 [181105-1236 ] 2.7 Další uzávěrové vlastnosti třídy regulárních jazyků Z předchozích přednášek víme, že třída regulárních jazyků je uzavřena na sjednocení, průnik, doplněk, zřetězení, Kleeneho operaci
VíceAlgoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Algoritmus Daniela Szturcová Tento
VíceÚvod do programovacích jazyků (Java)
Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích
VíceStřední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U
Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní
VíceSoftwarové komponenty a Internet
Softwarové komponenty a Internet Doc. Dr. Ing. Miroslav Beneš Katedra informatiky FEI VŠB-TU Ostrava Miroslav.Benes@vsb.cz Obsah přednášky Motivace Vývoj přístupů k tvorbě programů Definice komponenty
Více6 Objektově-orientovaný vývoj programového vybavení
6 Objektově-orientovaný vývoj programového vybavení 6.1 Co značí objektově-orientovaný - organizace SW jako kolekce diskrétních objektů, které zahrnují jak data tak chování objekt: OMG: Objekt je věc (thing).
VíceMetody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka
Metody tvorby ontologií a sémantický web Martin Malčík, Rostislav Miarka Obsah Reprezentace znalostí Ontologie a sémantický web Tvorba ontologií Hierarchie znalostí (D.R.Tobin) Data jakékoliv znakové řetězce
VíceProgram a životní cyklus programu
Program a životní cyklus programu Program algoritmus zapsaný formálně, srozumitelně pro počítač program se skládá z elementárních kroků Elementární kroky mohou být: instrukce operačního kódu počítače příkazy
VíceZpracování deklarací a přidělování paměti
Zpracování deklarací a přidělování paměti Účel deklarací -pojmenování objektů -umístění objektů v paměti Tabulka symbolů -uchovává informace o objektech -umožňuje kontextové kontroly -umožňuje operace
VíceÚvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.
Úvod do informatiky přednáška čtvrtá Miroslav Kolařík Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008. Obsah 1 Pojem relace 2 Vztahy a operace s (binárními) relacemi
VíceGRAFY A GRAFOVÉ ALGORITMY
KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO GRAFY A GRAFOVÉ ALGORITMY ARNOŠT VEČERKA VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM ČESKÉ
VíceManuál programu HPSim
Manuál programu HPSim Základní informace o programu HPSim Program si můžete zdarma stáhnou z domovské stránky tohoto programu na adrese: http://www.winpesim.de. Tento software je volně šiřitelný pro potřeby
VíceDynamicky vázané metody. Pozdní vazba, virtuální metody
Dynamicky vázané metody Pozdní vazba, virtuální metody Motivace... class TBod protected: float x,y; public: int vrat_pocet_bodu() return 1; ; od třídy TBod odvodíme: class TUsecka: public TBod protected:
VíceObjektové programování
Objektové programování - přináší nové možnosti a styl programování - vytváří nový datový typ, který umí vše co standardní datové typy + to co ho naučíme - překladač se k tomuto typu chová stejně jako k
VíceProfilová část maturitní zkoušky 2017/2018
Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2017/2018 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA
VíceIB111 Programování a algoritmizace. Objektově orientované programování (OOP)
IB111 Programování a algoritmizace Objektově orientované programování (OOP) OP a OOP Objekt Kombinuje data a funkce a poskytuje určité rozhraní. OP = objektové programování Vše musí být objekty Např. Smalltalk,
VíceKonzistentnost. Přednášky z distribuovaných systémů
Konzistentnost Přednášky z distribuovaných systémů Pro a proti replikaci 1. Zvýšení spolehlivosti. 2. Zvýšení výkonnosti. 3. Nutnost zachování škálovatelnosti systému co do počtu komponent i geografické
Více2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.
Informatika 10. 9. 2013 Jméno a příjmení Rodné číslo 1) Napište algoritmus pro rychlé třídění (quicksort). 2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus
VíceCAL (CAN Application Layer) a CANopen
CAL (CAN Application Layer) a CANopen J. Novák České vysoké učení technické v Praze Fakulta elektrotechnická Katedra měření Průmyslový distribuovaný systém na bázi sběrnice CAN Pressure sensor Stepper
VíceNAIVNÍ TEORIE MNOŽIN, okruh č. 5
NAIVNÍ TEORIE MNOŽIN, okruh č. 5 Definování množiny a jejích prvků Množina je souhrn nějakých věcí. Patří-li věc do množiny X, říkáme, že v ní leží, že je jejím prvkem nebo že množina X tuto věc obsahuje.
VíceProgramování v C++ 2, 4. cvičení
Programování v C++ 2, 4. cvičení statické atributy a metody, konstruktory 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled Přístupová práva
VíceStruktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
Více4.2 Syntaxe predikátové logiky
36 [070507-1501 ] 4.2 Syntaxe predikátové logiky V tomto oddíle zavedeme syntaxi predikátové logiky, tj. uvedeme pravidla, podle nichž se tvoří syntakticky správné formule predikátové logiky. Význam a
VíceVýroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2015/2016 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2015/2016 1 / 18 Základní syntax Jazyk Výroková logika je logikou
VíceUML. Unified Modeling Language. Součásti UML
UML Unified Modeling Language 1995 počátek 1997 verze 1.0 leden dnes verze 2.0 (vývoj stále nedokončen) Standardní notace OMG podpora velkých firem (Microsoft, IBM, Oracle, HP ) popisuje struktury popisuje
VíceModely Herbrandovské interpretace
Modely Herbrandovské interpretace Petr Štěpánek S využitím materialu Krysztofa R. Apta 2006 Logické programování 8 1 Uvedli jsme termové interpretace a termové modely pro logické programy a také nejmenší
VíceModelování procesů (1) Procesní řízení 1
Modelování procesů (1) Procesní řízení 1 Vizualizace procesů Znázornění procesu ve formě diagramatického modelu, vede k jeho zpřehlednění a snadnějšímu pochopení. Označuje se jako: procesní mapa, procesní
VíceJazyk C++ I. Šablony
Jazyk C++ I Šablony AR 2013/2014 Jazyk C++ I Úvod Zatím známe programovací styly: Strukturované programování, Objektově orientované programovaní. AR 2013/2014 Jazyk C++ I 2 Příklady void Print(const int&
VíceZákladní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě
Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické
VíceVýroková a predikátová logika - II
Výroková a predikátová logika - II Petr Gregor KTIML MFF UK ZS 2013/2014 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - II ZS 2013/2014 1 / 20 Základní syntax Jazyk Výroková logika je logikou
VíceVýroková a predikátová logika - III
Výroková a predikátová logika - III Petr Gregor KTIML MFF UK ZS 2017/2018 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - III ZS 2017/2018 1 / 16 2-SAT 2-SAT Výrok je v k-cnf, je-li v CNF a
VíceFAKULTA INFORMAČNÍCH TECHNOLOGIÍ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF INTELLIGENT SYSTEMS MODELOVÁNÍ
VíceDefinice uživatelského typu. Uživatelem definované typy. Součinové datové typy. Součtové datové typy. FLP - Uživatelem definované typy
Uživatelem definované typy Ing. Lumír Návrat katedra informatiky, A 1018 59 732 3252 Definice uživatelského typu data Color = Red Green Blue Color typový konstruktor Red / Green / Blue datové konstruktory
VíceRegulární výrazy. Definice Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto:
IB102 Automaty, gramatiky a složitost, 6. 10. 2014 1/29 Regulární výrazy Definice 2.58. Množina regulárních výrazů nad abecedou Σ, označovaná RE(Σ), je definována induktivně takto: 1 ε, a a pro každé a
Více2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování
1. Teoretické základy modelování na počítačích 1.1 Lambda-kalkul 1.1.1 Formální zápis, beta-redukce, alfa-konverze 1.1.2 Lambda-výraz jako data 1.1.3 Příklad alfa-konverze 1.1.4 Eta-redukce 1.2 Základy
VícePolymorfismus. Časová náročnost lekce: 3 hodiny Datum ukončení a splnění lekce: 30.března
Polymorfismus Cíle lekce Cílem lekce je vysvětlit význam pojmu polymorfismus jako základní vlastnosti objektově orientovaného programování. Lekce objasňuje vztah časné a pozdní vazby a jejich využití.
VíceMnožinu všech slov nad abecedou Σ značíme Σ * Množinu všech neprázdných slov Σ + Jazyk nad abecedou Σ je libovolná množina slov nad Σ
Abecedou se rozumí libovolná konečná množina Σ. Prvky abecedy nazýváme znaky (symboly) Slovo (řetězec) v nad abecedou Σ je libovolná konečná posloupnost znaků této abecedy. Prázdné posloupnosti znaků odpovídá
VícePascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7
Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí
VíceJazyk C++, některá rozšíření oproti C
Karel Müller, Josef Vogel (ČVUT FIT) Jazyk C++, některá rozšíření oproti C BI-PA2, 2011, Přednáška 1 1/22 Jazyk C++, některá rozšíření oproti C Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra
VíceZákladní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě
Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické
VíceSimulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické
VíceJazyk C++ I. Polymorfismus
Jazyk C++ I Polymorfismus AR 2013/2014 Jazyk C++ I Úvod Metody s časnou vazbou jsou překládány jako obyčejné céčkovské funkce. Této metodě je předán jako první implicitní parametr this. Rozdíl mezi obyčejnou
VíceSoftware602 Form Designer
Software602 Form Designer Javascriptový vyhodnocovací mechanismus výrazů Aktualizováno: 17. 3. 2017 Software602 a.s. Hornokrčská 15 140 00 Praha 4 tel: 222 011 602 web: www.602.cz e-mail: info@602.cz ID
VíceDatové typy a struktury
atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro
VíceIV113 Validace a verifikace. Převod LTL formule na Büchi automat. Jiří Barnat
IV113 Validace a verifikace Převod LTL formule na Büchi automat Jiří Barnat Připomenutí IV113 úvod do validace a verifikace: LTL BA str. 2/26 Problém Kripkeho struktura M LTL formule ϕ M = ϕ? Řešení pomocí
VíceNázev předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu:
Plán předmětu Název předmětu: Algoritmizace a programování (PAAPK) Školní rok: 2007/2008 Forma studia: Kombinovaná Studijní obory: DP, DI, PSDPI, OŽPD Ročník: I Semestr: II. (letní) Typ předmětu: povinný
Více3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti
Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti 3. přednáška nalezení největšího prvku, druhého nejvyššího prvku, algoritmus shozeného praporku. Algoritmizace
VíceDolování v objektových datech. Ivana Rudolfová
Dolování v objektových datech Ivana Rudolfová Relační databáze - nevýhody První normální forma neumožňuje vyjádřit vztahy A je podtypem B nebo vytvořit struktury typu pole nebo množiny SQL omezení omezený
VíceCvičení ze statistiky - 5. Filip Děchtěrenko
Cvičení ze statistiky - 5 Filip Děchtěrenko Minule bylo.. Začali jsme pravděpodobnost Klasická a statistická definice pravděpodobnosti Náhodný jev Doplněk, průnik, sjednocení Podmíněná pravděpodobnost
VíceLekce 04 Řídící struktury
Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů Lekce 04 Řídící struktury Tento projekt CZ.1.07/1.3.12/04.0006 je spolufinancován Evropským sociálním
VíceObsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15
Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové
VíceDiferenciální rovnice a jejich aplikace. (Brkos 2011) Diferenciální rovnice a jejich aplikace 1 / 36
Diferenciální rovnice a jejich aplikace Zdeněk Kadeřábek (Brkos 2011) Diferenciální rovnice a jejich aplikace 1 / 36 Obsah 1 Co to je derivace? 2 Diferenciální rovnice 3 Systémy diferenciálních rovnic
Více1. Dědičnost a polymorfismus
1. Dědičnost a polymorfismus Cíl látky Cílem této kapitoly je představit klíčové pojmy dědičnosti a polymorfismu. Předtím však je nutné se seznámit se základními pojmy zobecnění neboli generalizace. Komentář
VíceAlgoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Vývojové diagramy Daniela Szturcová
VíceDalší (neklasické) logiky. Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20
Predikátová logika Jiří Velebil: AD0B01LGR 2015 Predikátová logika 1/20 Jazyk predikátové logiky Má dvě sorty: 1 Termy: to jsou objekty, o jejichž vlastnostech chceme hovořit. Mohou být proměnné. 2 Formule:
Více11 Diagram tříd, asociace, dědičnost, abstraktní třídy
11 Diagram tříd, asociace, dědičnost, abstraktní třídy Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost diagramům tříd, asociaci,
VíceKonstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,
[161014-1204 ] 11 2.1.35 Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i, kde i = 0, 1,..., takto: p 0 q právě tehdy, když bud p, q F nebo p, q F. Dokud i+1 i konstruujeme p
VíceAlgoritmy. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 15. dubna / 39
Algoritmy Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 15. dubna 2018 1/ 39 Algoritmy Příklad: Popis algoritmu pomocí pseudokódu: Algoritmus 1: Algoritmus pro nalezení největšího prvku v poli 1 Find-Max(A,n):
VíceVývoj IS - strukturované paradigma II
Milan Mišovič (ČVUT FIT) Pokročilé informační systémy MI-PIS, 2011, Přednáška 05 1/18 Vývoj IS - strukturované paradigma II Prof. RNDr. Milan Mišovič, CSc. Katedra softwarového inženýrství Fakulta informačních
VíceKlasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W
Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W Osnova přednášky Co to je softwarové inženýrství Softwarový proces Metodika a metoda Evoluce softwarových
Vícetypová konverze typová inference
Seminář Java Programování v Javě II Radek Kočí Fakulta informačních technologií VUT Únor 2008 Radek Kočí Seminář Java Programování v Javě (2) 1/ 36 Téma přednášky Rozhraní: použití, dědičnost Hierarchie
VíceOperační výzkum. Síťová analýza. Metoda CPM.
Operační výzkum Síťová analýza. Metoda CPM. Operační program Vzdělávání pro konkurenceschopnost Název projektu: Inovace magisterského studijního programu Fakulty ekonomiky a managementu Registrační číslo
VíceLogické programování
30. října 2012 Osnova Principy logického programování 1 Principy logického programování 2 3 1 Principy logického programování 2 3 Paradigmata programování Strukturované programování Procedurální programování
VíceŘídicí struktury. alg3 1
Řídicí struktury Řídicí struktura je programová konstrukce, která se skládá z dílčích příkazů a předepisuje pro ně způsob provedení Tři druhy řídicích struktur: posloupnost, předepisující postupné provedení
VícePREPROCESOR POKRAČOVÁNÍ
PREPROCESOR POKRAČOVÁNÍ Chybová hlášení V C# podobně jako v C++ existuje direktiva #error, která způsobí vypsání chybového hlášení překladačem a zastavení překladu. jazyk C# navíc nabízí direktivu #warning,
VíceZákladní datové struktury III: Stromy, haldy
Základní datové struktury III: Stromy, haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní
VíceLabView jako programovací jazyk II
LabView jako programovací jazyk II - Popis jednotlivých funkcí palety Function I.část - Expresní funkce, struktury, Ing. Martin Bušek, Ph.D. Paleta Functions Základní prvky pro tvorbu programu blokového
VícePredikátová logika dokončení
Predikátová logika dokončení Jiří Velebil: X01DML 1. října 2010: Predikátová logika dokončení 1/18 Syntaktická analýza Jako ve výrokové logice (syntaktické stromy). Každý list úspěšného stromu je obsazen
VíceVýroková a predikátová logika - VII
Výroková a predikátová logika - VII Petr Gregor KTIML MFF UK ZS 2018/2019 Petr Gregor (KTIML MFF UK) Výroková a predikátová logika - VII ZS 2018/2019 1 / 15 Platnost (pravdivost) Platnost ve struktuře
VíceEKO-KOLONIE. Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě 24.
EKO-KOLONIE OBHAJOBA DISERTAČNÍ PRÁCE RNDr. Šárka Vavrečková Ústav informatiky, Filozoficko-přírodovědecká fakulta Slezské univerzity v Opavě sarka.vavreckova@fpf.slu.cz 24. dubna 2008 Obsah 1 Eko-kolonie
VíceDynamické datové struktury I.
Dynamické datové struktury I. Seznam. Fronta. Zásobník. Tomáš Bayer bayertom@natur.cuni.cz Katedra aplikované geoinformatiky a kartografie, Přírodovědecká fakulta UK. Tomáš Bayer bayertom@natur.cuni.cz
VíceAlgoritmizace a programování
Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu
VíceInformační systémy 2008/2009. Radim Farana. Obsah. UML - charakteristika
2 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk UML, základní modely, diagramy aktivit, diagramy entit.
Více