Modelowanie procesów współbieżnych

Wielkość: px
Rozpocząć pokaz od strony:

Download "Modelowanie procesów współbieżnych"

Transkrypt

1 Modelowanie procesów współbieżnych dr inż. Maciej Piotrowicz Katedra Mikroelektroniki i Technik Informatycznych PŁ piotrowi@dmcs.p.lodz.pl -> Modelowanie...

2 Literatura M. Ben-Ari, Podstawy programowania współbieżnego, WNT 1989 lub M. Ben-Ari, Podstawy programowania współbieżnego i rozproszonego, WNT, 1996 K. Jensen, Coloured Petri Nets, Basic Concepts, Analysis Methods and Practical Use, Vol. 1-3, Springer 1996 Dodatkowo: A. Jaszkiewicz, Inżynieria oprogramowania, Wydawnictwo Helion, Warszawa, S. Szejko (red.), Metody wytwarzania oprogramowania, Mikom, 2002 J. Górski (red.), Inżynieria oprogramowania w projekcie informatycznym, Mikom, 1999

3 Program przedmiotu Podstawy modelowania formalnego Sieci miejsc i przejść Kolorowane sieci Petriego Metody analizy formalnej współbieżnych systemów informatycznych Idea i abstrakcja programowania współbieżnego Problem wzajemnego wykluczania Pojęcia semafora i monitora Laboratorium: Wykorzystanie kolorowanych sieci Petriego do modelowania współbieżnych systemów informatycznych

4 Projekt informatyczny Specyfikacja Analiza wymagań - powinna definiować model logiczny i być sporządzona w oderwaniu od platformy, na której dokonuje się implementacji Projekt - powinien zawierać odniesienia do implementacji (definicje klas, relacje pomiędzy klasami) Model formalny ma pokazać zasadę działania obejmującą fragment funkcjonalności. wczesna identyfikacja stanów systemu identyfikacja akcji wykonywanych w systemie symulacja działania Implementacja Kod źródłowy, plik wynikowy, działająca aplikacja

5 Model formalny Model pośredni w procesie tworzenia oprogramowania lub systemu hardware/software. Konstruowany przy użyciu języka formalnego przejście w obszar wirtualny (wyższy poziom abstrakcji). Opis funkcjonalny projektowanego systemu Niezależny od planowanej implementacji Pozwala na przeprowadzenie symulacji Matematyczny aparat analizy formalizmu umożliwia skuteczną weryfikację modelu

6 Popularne metody formalne Automat skończony FSM Grafy przepływu DFG, CFG i CDFG Automat z reprezentacją danych FSMD Maszyna stanowo-programowa PSM Model CFSM stosowany w pakiecie POLIS Automat hierarchiczny z równoległością HCFSM Formuły logiki temporalnej (raczej wymagania) Sieci miejsc i przejść, sieci kolorowane

7 Analiza formalna Sprawdzenie zgodności zachowania modelu ze specyfikacją wejściową, Badanie abstrakcyjnych własności systemu, niezmiennych dla różnych sygnałów wejściowych, Wykonywana po każdym etapie projektowania pozwala wcześnie wychwycić błędy, które mogą nie wystąpić w symulacji

8 Ogólna postać modelu Formalnie, proces sekwencyjny Pi może być opisany (modelowany) przez uporządkowaną czwórkę: P i = <S i, S i0, e i, F > gdzie S i jest zbiorem stanów s i procesu P i S i 0 jest zbiorem stanów początkowych, S i 0 zawiera się w S i e i jest zbiorem zdarzeń procesu P i F jest funkcja tranzycji, taką że: F S i e S i jeżeli zajście zdarzenia E w stanie S jest możliwe i prowadzi do zmiany stanu na S i

9 Stany i zdarzenia Stan S i (t) procesu w chwili t czasu lokalnego jest w ogólności zbiorem wartości wszystkich zmiennych lokalnych skojarzonych z procesem w chwili t oraz ciągów wiadomości wysłanych (wpisanych) do incydentnych kanałów wyjściowych i ciągów wiadomości odebranych z incydentnych kanałów wejściowych do chwili t. Wartości stanów początkowych są zadawane wstępnie, bądź są wynikiem zajścia wyróżnionego zdarzenia inicjującego e i0. Zdarzenie e i odpowiada unikalnemu wykonaniu operacji atomowej, zmieniającemu stan Si procesu i ewentualnie stan incydentnych z procesem kanałów. Jeżeli operacja odpowiadająca zdarzeniu została wykonana, to powiemy, że zdarzenie zaszło. Funkcja tranzycji dopuszcza możliwość zajścia zdarzenia e tylko w tych stanach S, dla których <S, E, S 2 > należy do F. Powiemy że zdarzenie jest dopuszczalne (ang. allowed) w stanie S.

10 Sieci miejsc i przejść (Petriego) Sieci Petriego (1962) są grafami Graf jest uporządkowaną parą G:=(V,E), gdzie V to zbiór węzłów, a E to zbiór par rożnych węzłów - krawędzi Jeśli E jest zbiorem par nieuporządkowanych węzłow, graf jest niezorientowany Jeśli E jest zbiorem par uporządkowanych węzłow, graf jest zorientowany (digraf) Jeżeli dwa węzły może łączyć więcej niż jedna krawędź, graf nazywamy multigrafem.

11 Grafy Graf niezorientowany Graf zorientowany (digraf) multigraf

12 Sieć Petriego jako graf dwudzielny W grafie dwudzielnym zbiór węzłów V może być podzielony na dwa rozłączne podzbiory V1 i V2 takie, że krawędź zawsze łączy węzły z rożnych podzbiorów. W sieciach Petriego węzły pierwszego podzbioru są nazywane miejscami, drugiego - przejściami Symbolem miejsca jest okrąg bądź elipsa Symbolem przejścia jest belka (prostokąt) Krawędzie nazywane są łukami

13 Sieć Petriego - definicja formalna Siecią Petriego nazywamy piątkę, PM = (P, T, A, W, s 0 ), gdzie: P - zbiór (skończony) miejsc; T - zbiór (skończony) przejść; A P T T P- zbiór łuków; W: A N - funkcja wag przypisująca etykiety (liczby naturalne) do każdego łuku; s 0 : P *N- funkcja opisująca oznakowanie początkowe (initial marking), gdzie *N oznacza zbiór liczb całkowitych nieujemnych, tj. N*=N {0}. Zakłada się ponadto, że dla każdej sieci specyfikowanej jak wyżej spełniony jest warunek: P T = & P T.

14 Znaczniki w sieci Petriego Aby opisać dynamikę sieci Petriego (i moc je wykonywać ) wprowadza się pojęcie znacznika tokenu. Znaczniki są reprezentowane przez kółka/kropki i umieszczane w symbolu miejsca Oznaczają obecność (lub brak) np. zasobu Miejsca mogą przyjąć dowolną liczbę znaczników bądź też ich ograniczoną liczbę

15 Znaczniki a przejścia Znaczniki są stosowane do oznaczenia aktywacji przejścia Jeśli łuk łączy miejsce z przejściem, oznacza to że znacznik w miejscu jest potrzebny do aktywacji przejścia Jeśli jest wiele łuków (multigraf!), ich liczba określa liczbę wymaganych znaczników Przejście jest aktywne wtedy i tylko wtedy gdy dla wszystkich łuków dochodzących do przejścia spełniony jest warunek liczby znaczników

16 Zbiory wejściowe i wyjściowe Aby uprościć opis definiuje się zbiory wejściowe i wyjściowe Zbiór wejściowy (preset) przejścia t, oznaczany t, to zbiór wszystkich miejsc dla których istnieją łuki od tych miejsc do przejścia t Zbiór wyjściowy (postset) przejścia t, oznaczany t, to zbiór wszystkich miejsc dla których istnieją łuki od przejścia t do tych miejsc Podobne definicje dotyczą zbiorów wejściowych i wyjściowych miejsca p, oznaczanych odpowiednio p i p

17 Oznakowanie sieci Oznakowanie sieci Petriego to rozkład znaczników w sieci Jest to mapowanie P {0, 1, 2,...} opisujące liczbę znaczników w każdym miejscu Oznakowanie sieci na początku analizy zwane jest oznakowaniem początkowym

18 Wykonanie przejścia Jeśli przejście jest aktywne, może zostać wykonane (ang. fired odpalone) Jeśli przejście jest wykonywane, ze wszystkich miejsc wejściowych usuwana jest odpowiednia liczba znaczników (uwzględniając łuki wielokrotne) Następnie właściwa liczba znaczników jest wstawiana w miejsca wyjściowe - również uwzględniając łuki wielokrotne Liczba znaczników usuniętych i dodanych może być różna!

19 Wykonanie przejścia przykład

20 Wykonanie przejścia przykład

21 Wykonanie przejścia przykład

22 Przydatność sieci Petriego Modelowanie przepływu sterowania dla złożonych procesów Możliwość prowadzenia symulacji (wykonywania modelu) ilustracja działania testowanie zachowania określenie prędkości itp. Analiza formalna systemu wyszukiwanie problemów niewidocznych podczas symulacji (blokad, zagłodzeń itp.)

23 Znaczenie miejsc i przejść Miejsca wejściowe Przejście Miejsca wyjściowe Prewarunki Zdarzenie Postwarunki Żądane zasoby Operacja, zadanie Zwalniane zasoby Dane wejściowe Wykonanie obliczeń Wyniki obliczeń Warunki Klauzula logiczna Konkluzje Sygnały wejściowe Przetwarzanie Sygnały wyjściowe Rejestry, bufory Akcja procesora Rejestry, bufory

24 Przykładowe modele Na serwerze Uniwersytetu w Hamburgu

25 Przykładowe modele Sender Receiver Ready Mess_Buff Ready Send mess Receive Wait for ack Ack_Buff Received Send ack

26 Przykładowe modele

27 Własności formalne sieci Własności są podstawą dla analizy formalnej Często badane: osiągalność (reachability) żywotność (liveness) ograniczoność (boundedness)

28 Osiągalność znakowań Zbiór znakowań osiągalnych R(M 0 ) to zbiór wszystkich możliwych znakowań osiągalnych ze znakowania początkowego M 0 Jeśli znakowanie M jest w R(M 0 ), oznacza to że istnieje sekwencja odpaleń przekształcająca M w M 0 Przydatne w analizie systemów, np.: Czy stan pożądany może w ogóle zostać osiągnięty? Czy system może dotrzeć do stanu niepożądanego?

29 Graf osiągalności Graf skierowany do badania osiągalności Węzły reprezentują znakowania Krawędzie - przejścia między znakowaniami Konstruowany poprzez znalezienie wszystkich przejść ze znakowania początkowego, następnie przejść ze znakowań odkrytych w poprzednim kroku itd. Z reguły prowadzi do bardzo dużych grafów.

30 Żywotność Znakowanie M x jest żywotne jeśli dla każdego przejścia t i każdego osiągalnego znakowania M y istnieje sekwencja odpaleń M y która zawiera t Innymi słowy, każde przejście w sieci może być wykonane nieskończoną liczbę razy Sieć jest strukturalnie żywotna jeśli wszystkie znakowania początkowe są żywotne Właściwość stosowana w modelowaniu zakleszczeń

31 Ograniczoność sieci Znakowanie M x jest ograniczone jeśli istnieje dodatnia liczba całkowita taka, że dla każdego osiągalnego znakowania M y (elementu R(M x )) liczba znaczników w każdym miejscu jest ograniczona przez k. Inaczej - żadne miejsce nie może zawierać więcej niż k znaczników Sieć jest strukturalnie ograniczona jeśli wszystkie znakowania początkowe są ograniczone. Jeśli k=1, znakowanie nazywa się bezpiecznym Stosowana w modelu ograniczonych zasobów

32 Ograniczenia sieci miejsc i przejść Niemożność modelowania podobnych (choć nie identycznych) procesów za pomocą tej samej sieci Wszystkie znaczniki są identyczne Niemożność określenia dodatkowych własności - nie ma sposobu aby znacznik niósł dodatkowe informacje Zaawansowane sieci obejście powyższych ograniczeń: sieci kolorowane sieci hierarchiczne sieci obiektowe i in.

33 Kolorowane sieci Petriego Głównym założeniem jest wprowadzenie różnych typów znaczników, mogących przenosić dowolny rodzaj danych Pozwalają konstruować bardziej kompaktowe modele poprzez współdzielenie podobnych fragmentów Obsługują dodatkowe dane

34 Kolorowane sieci Petriego Każdy znacznik ma przypisane dane kolor Dana może być typem prymitywnym (wartość), łańcuchem znakowym, strukturą itd. Typ wartości to zbiór kolorów Każde miejsce w CPN ma swój zbiór kolorów (typ)

35 Pojęcie wielozbioru Wprowadzone w celu opisu faktu istnienia kilku egzemplarzy tego samego elementu. Klasyczna teoria zbiorów opis wyłącznie z punktu widzenia przynależności (lub nie) elementu do zbioru wstawienie elementu do zbioru w którym taki element występuje nie zmienia zawartości tego zbioru. Teoria wielozbiorów odpowiednie współczynniki określające ilość wystąpień danego elementu wielozbiorze

36 s S m ( s)`s Definicja wielozbioru Wielozbiór m nad niepustym zbiorem S funkcja m [S N] Dowolna nieujemna liczba całkowita m(s) N jest ilością wystąpień elementu s w tym wielozbiorze. Wielozbiór jest zazwyczaj reprezentowany w postaci pewnej sumy: s S m ( s)`s S MS oznacza zbiór wszystkich wielozbiorów nad zbiorem S m(s) (s S) nazywa się współczynnikiem elementu s ; Element s S należy do wielozbioru m(s) 0; fakt ten zapisujemy s m.

37 Operacje na wielozbiorach Dla dowolnych wielozbiorów m, m 1, m 2 S MS definiujemy: dodawanie wielozbiorów: mnożenie skalarne porównanie wielozbiorów moc wielozbioru różnicę wielozbiorów (dla m 2 m 1 ) Wielozbiór nazywa się skończonym, jeżeli m < s S s s m )` ( S s s s m s m m m ` )) ( ) ( ( S s `s m s n m n )) ( ( ) ( ) ( ) ( ), ( ) ( ) ( s m s m S s m m s m s m S s m m m(s) m S s S s s s m s m m m ))` ( ) ( (

38 Własności operacji Dla dowolnych wielozbiorów m, m 1,m 2, m 3 S MS oraz nieujemnych liczb całkowitych n, n 1, n 2 spełnione są warunki: przemienność m 1 +m 2 = m 2 +m 1 łączność m 1 +(m 2 +m 3 ) = (m 1 +m 2 )+m 3 element zerowy, jedynka m+ = m, 1 m = m 0 m = n (m 1 +m 2 ) = (n m 1 ) + (n m 2 ) (n 1 +n 2 ) m = (n 1 m) + (n 2 m) n 1 (n 2 m) = (n 1 n 2 ) m m 1 +m 2 = m 1 + m 2 n m = n m

39 Wykorzystanie wspólnych zasobów p_processes p1 tp1 p2 2 R 3 q_processes q2 2 3 tp2 tq2 p3 S q3 tp3 tq3

40 Wykorzystanie wspólnych zasobów

41 Wspólna pętla dla procesów colset u = with p,q; colset RS = with r s; var x:u;

42 Sieć kolorowana - definicja formalna Kolorowaną siecią Petriego nazywamy krotkę CPN = (, P, T, A, N, C, G, E, I), gdzie: - skończony niepusty zbiór typów, zwany zbiorem kolorów; P - skończony zbiór miejsc; T - skończony zbiór przejść; A - skończony zbiór łuków, taki że: P T = P A = T A = ; N - funkcja wierzchołków, N : A P T T P ; C - funkcja kolorów, C : P ; G - funkcja dozorów, G : T EB, gdzie EB jest zbiorem wyrażeń o wartościach boolean, wykorzystujących kolory; E - funkcja wyrażeń łuków, E : A EC, gdzie EC jest zbiorem wyrażeń o wartościach w wielozbiorach kolorów; I - funkcja inicjalizacji, I : P ECP, gdzie ECP jest zbiorem wyrażeń opisujących oznakowanie początkowe

43 Wyrażenia łuków Umożliwiają wykorzystanie danych zawartych w znacznikach Ich wartością jest wielozbiór znaczników określający typ i liczbę znaczników przepływających przez łuk Mogą zawierać zmienne, operacje na zmiennych, operatory logiczne. Dla różnych znaczników mogą przybrać rożne wartości Mogą być więc traktowane jako funkcje: argumentami wyrażeń są znaczniki (ich typ i wartość) wyrażenia zwracają znaczniki (typ i wartość) oraz determinują ich przepływy

44 Warunki przejść (guards) Są wyrażeniami boolowskimi przypisanymi do przejść Umieszczane w nawiasach kwadratowych przy przejściach Stanowią dodatkowe warunki, które muszą być spełnione aby uaktywnić przejście

45 Przykłady sieci kolorowanych

46 Przykłady sieci kolorowanych

47 Potrzeba podzielności modeli Współczesne języki programowania wyższego poziomu umożliwiają konstrukcję programu z mniejszych komponentów modułów i funkcji/procedur Elementy rozważane mniej lub bardziej niezależnie Możliwość podziału pracy Przejrzystość programu

48 Sieci hierarchiczne Odpowiedź na potrzeby modularności systemu Formalne wiązanie ze sobą mniejszych sieci Możliwość analizy formalnej całości, jak i poszczególnych części Każda część jest kolorowaną siecią Petriego (strony) Siecią kolorowaną jest również złożenie komponentów (strona nadrzędna) Podstawowy problem sposób zdefiniowania połączeń

49 Typy hierarchizacji Podstawianie przejść Reprezentacja złożonej procedury przez pojedyncze przejście Łączenie miejsc Wyspecyfikowanie zbioru miejsc uważanych za identyczne

50 Podstawianie przejść Wyższy poziom prosty model zdarzenia Niższy poziom szczegółowa specyfikacja procedury Możliwa jest translacja strony nadrzędnej w sieć niehierarchiczną (zastąpienie podstawianych przejść treściami podstron)

51 Przypisanie portów Niezbędna wiedza na temat sposobu połączenia strony z wyższą w hierarchii Powiązanie wierzchołków gniazdowych (otoczenie podstawianego przejścia na stronie nadrzędnej) z wierzchołkami portowymi (wybrane miejsca na podstronie) Porty wejściowe Wyjściowe Dwukierunkowe Ogólne (typu general) Podstawienie nie jest przejściem nie dotyczą go niektóre wymagania (np. odnośnie istnienia znaczników we wszystkich miejscach wejściowych

52 Instancje stron Każde podstawienie przejścia na stronie nadrzędnej generuje instancję podstrony (podstawianej) Również strona nadrzędna może mieć wiele instancji Formalne określenie liczby instancji stron nadrzędnych i podstron przez wielozbiory Graf hierarchii sieci wierzchołki reprezentują strony sieci (po jednym dla każdej nazwa i numer strony wpisane w wierzchołku) łuki relacje zależności stron (graf skierowany); do łuków przypisane są nazwy odpowiadających im podstawień przejść.

53 Przykład podstawiania stron

54 Przykład podstawiania stron

55 Łączenie miejsc Wyróżnienie zbioru miejsc traktowanych jako identyczne Reprezentują pojęciowo pojedyncze miejsce muszą podlegać tym samym zdarzeniom Dodanie/ujęcie znacznika z jednego miejsc powoduje taką samą zmianę w pozostałych Miejsca z jednej instancji strony złączenie jest wyłącznie ułatwieniem dla rysującego graf

56 Telefony duża sieć hierarchiczna

57 Telefony duża sieć hierarchiczna

58 Telefony duża sieć hierarchiczna

59 Telefony duża sieć hierarchiczna

60 Telefony duża sieć hierarchiczna Graf hierarchii sieci (tylko jedna instancja każdej ze stron)

Modelowanie procesów współbieżnych

Modelowanie procesów współbieżnych Modelowanie procesów współbieżnych dr inż. Maciej Piotrowicz Katedra Mikroelektroniki i Technik Informatycznych PŁ piotrowi@dmcs.p.lodz.pl http://fiona.dmcs.pl/~piotrowi -> Modelowanie... Literatura M.

Bardziej szczegółowo

Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń)

Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń) Carl Adam Petri (1926-2010) Najkrótsza droga Maksymalny przepływ Najtańszy przepływ Analiza czynności (zdarzeń) Problemy statyczne Kommunikation mit Automaten praca doktorska (1962) opis procesów współbieżnych

Bardziej szczegółowo

miejsca przejścia, łuki i żetony

miejsca przejścia, łuki i żetony Sieci Petriego Sieć Petriego Formalny model procesów umożliwiający ich weryfikację Główne konstruktory: miejsca, przejścia, łuki i żetony Opis graficzny i matematyczny Formalna semantyka umożliwia pogłębioną

Bardziej szczegółowo

Sieci Petriego. Sieć Petriego

Sieci Petriego. Sieć Petriego Sieci Petriego Sieć Petriego Formalny model procesów umożliwiający ich weryfikację Główne konstruktory: miejsca, przejścia, łuki i żetony Opis graficzny i matematyczny Formalna semantyka umożliwia pogłębioną

Bardziej szczegółowo

Rozszerzenia sieci Petriego

Rozszerzenia sieci Petriego Rozszerzenia sieci Petriego Ograniczenia klasycznej sieci Petriego Trudność w modelowaniu specyficznych przepływów: testowania braku żetonów w danym miejscu, blokowania odpalania, itp. Brak determinizmu

Bardziej szczegółowo

Definicja sieci. Sieć Petriego jest czwórką C = ( P, T, I, O ), gdzie: P = { p 1, p 2,, p n } T = { t 1, t 2,, t m }

Definicja sieci. Sieć Petriego jest czwórką C = ( P, T, I, O ), gdzie: P = { p 1, p 2,, p n } T = { t 1, t 2,, t m } Sieci Petriego Źródła wykładu: 1. http://www.ia.pw.edu.pl/~sacha/petri.html 2.M. Szpyrka: Sieci Petriego w modelowaniu i analizie systemów współbieżnych, WNT 2008 Definicja sieci Sieć Petriego jest czwórką

Bardziej szczegółowo

Rozszerzenia sieci Petriego

Rozszerzenia sieci Petriego Rozszerzenia sieci Petriego Ograniczenia klasycznej sieci Petriego Trudność w modelowaniu specyficznych przepływów: testowania braku żetonów w danym miejscu, blokowania odpalania, itp. Brak determinizmu

Bardziej szczegółowo

Analiza sieci Petriego

Analiza sieci Petriego Analiza sieci Petriego Przydatność formalnej analizy modelu procesów Szpital obsługa 272 pacjentów 29258 zdarzeń 264 różnych czynności Czy powyższy model jest poprawny? Własności behawioralne sieci Petriego

Bardziej szczegółowo

procesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

procesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Abstrakcja programowania współbieżnego Instrukcje atomowe i ich przeplot Istota synchronizacji Kryteria poprawności programów współbieżnych

Bardziej szczegółowo

Analiza sieci Petriego

Analiza sieci Petriego Analiza sieci Petriego Przydatność formalnej analizy modelu procesów Szpital obsługa 272 pacjentów 29258 zdarzeń 264 różnych czynności Czy powyższy model jest poprawny? Tomasz Koszlajda Instytut Informatyki

Bardziej szczegółowo

Przetwarzanie rozproszone

Przetwarzanie rozproszone Wykład prowadzą: Jerzy Brzeziński Jacek Kobusiński Plan wykładu Proces sekwencyjny Komunikaty, kanały komunikacyjne Stan kanału Operacje komunikacyjne Model formalny procesu sekwencyjnego Zdarzenia Warunek

Bardziej szczegółowo

1. Sieci Petriego. Rys. 1-1 Przykład sieci Petriego

1. Sieci Petriego. Rys. 1-1 Przykład sieci Petriego 1 1. Sieci Petriego Narzędzie wprowadzone przez Carla A. Petriego w 1962 roku do pierwotnie modelowania komunikacji z automatami. Obecnie narzędzie stosowane jest w modelowaniu systemów współbieżnych,

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Informacje podstawowe 1. Konsultacje: pokój

Bardziej szczegółowo

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki. Literatura 1. D. Gajski, Principles of Digital Design, Prentice- Hall, 1997 2. C. Zieliński, Podstawy projektowania układów cyfrowych, PWN, Warszawa 2003 3. G. de Micheli, Synteza i optymalizacja układów

Bardziej szczegółowo

WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI

WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI WOJSKOWA AKADEMIA TECHNICZNA WYDZIAŁ CYBERNETYKI Analiza i modelowanie Systemów Teleinformatycznych Sprawozdanie z ćwiczenia laboratoryjnego nr 6 Temat ćwiczenia: Modelowanie systemów równoległych z zastosowaniem

Bardziej szczegółowo

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej KATEDRA INFORMATYKI STOSOWANEJ ROZPRAWA DOKTORSKA MGR INŻ. WOJCIECH

Bardziej szczegółowo

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych Opracował: dr inż. Zbigniew Buchalski KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów

Bardziej szczegółowo

Sterowniki Programowalne (SP) Wykład 11

Sterowniki Programowalne (SP) Wykład 11 Sterowniki Programowalne (SP) Wykład 11 Podstawy metody sekwencyjnych schematów funkcjonalnych (SFC) SP 2016 WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA INŻYNIERII SYSTEMÓW STEROWANIA Kierunek: Automatyka

Bardziej szczegółowo

SFC zawiera zestaw kroków i tranzycji (przejść), które sprzęgają się wzajemnie przez połączenia

SFC zawiera zestaw kroków i tranzycji (przejść), które sprzęgają się wzajemnie przez połączenia Norma IEC-61131-3 definiuje typy języków: graficzne: schematów drabinkowych LD, schematów blokowych FBD, tekstowe: lista instrukcji IL, tekst strukturalny ST, grafów: graf funkcji sekwencyjnych SFC, graf

Bardziej szczegółowo

Proces rozproszony 1

Proces rozproszony 1 Proces rozproszony 1 Plan wykładu Celem wykładu jest zapoznanie słuchacza z podstawowymi pojęciami związanymi z przetwarzaniem rozproszonym. Wykład ten jest kontynuacją wykładu poprzedniego, w którym zdefiniowano

Bardziej szczegółowo

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017 Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy

Bardziej szczegółowo

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop. 2017 Spis treści Przedmowa 11 1. Jak w programie 21 Czym jest program? 21 Uruchamianie interpretera języka Python 22 Pierwszy

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr 1: Definicja grafu. Rodzaje i części grafów dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 261-83-95-04, p.225/100

Bardziej szczegółowo

Programowanie komputerów

Programowanie komputerów Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych

Bardziej szczegółowo

Logika Temporalna i Automaty Czasowe

Logika Temporalna i Automaty Czasowe Modelowanie i Analiza Systemów Informatycznych Logika Temporalna i Automaty Czasowe (4) Modelowa weryfikacja systemu Paweł Głuchowski, Politechnika Wrocławska wersja 2.1 Treść wykładu Własności współbieżnych

Bardziej szczegółowo

Sterowniki Programowalne (SP)

Sterowniki Programowalne (SP) Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i

Bardziej szczegółowo

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie Opracował: dr hab. inż. Jan Magott KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 207 Temat: Automaty Moore'a i Mealy 1. Cel ćwiczenia Celem ćwiczenia jest

Bardziej szczegółowo

G. Wybrane elementy teorii grafów

G. Wybrane elementy teorii grafów Dorota Miszczyńska, Marek Miszczyński KBO UŁ Wybrane elementy teorii grafów 1 G. Wybrane elementy teorii grafów Grafy są stosowane współcześnie w różnych działach nauki i techniki. Za pomocą grafów znakomicie

Bardziej szczegółowo

1 Automaty niedeterministyczne

1 Automaty niedeterministyczne Szymon Toruńczyk 1 Automaty niedeterministyczne Automat niedeterministyczny A jest wyznaczony przez następujące składniki: Alfabet skończony A Zbiór stanów Q Zbiór stanów początkowych Q I Zbiór stanów

Bardziej szczegółowo

Przykładowe pytania z części PSPICE. 1. Podaj zasady tworzenia pliku symulacyjnego. 2. Czy składnia PSPICE jest czuła na wielkość liter? 3.

Przykładowe pytania z części PSPICE. 1. Podaj zasady tworzenia pliku symulacyjnego. 2. Czy składnia PSPICE jest czuła na wielkość liter? 3. Przykładowe pytania z części PSPICE. 1. Podaj zasady tworzenia pliku symulacyjnego. 2. Czy składnia PSPICE jest czuła na wielkość liter? 3. Jak umieszcza się komentarze w pliku symulacyjnym PSPICE? 4.

Bardziej szczegółowo

Język UML w modelowaniu systemów informatycznych

Język UML w modelowaniu systemów informatycznych Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 4 Diagramy aktywności I Diagram aktywności (czynności) (ang. activity

Bardziej szczegółowo

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych. Grafy Graf Graf (ang. graph) to zbiór wierzchołków (ang. vertices), które mogą być połączone krawędziami (ang. edges) w taki sposób, że każda krawędź kończy się i zaczyna w którymś z wierzchołków. Graf

Bardziej szczegółowo

Teoria grafów - Teoria rewersali - Teoria śladów

Teoria grafów - Teoria rewersali - Teoria śladów 17 maja 2012 1 Planarność Wzór Eulera Kryterium Kuratowskiego Algorytmy testujące planarność 2 Genom i jego przekształcenia Grafy złamań Sortowanie przez odwrócenia Inne rodzaje sortowania Algorytmy sortujące

Bardziej szczegółowo

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak Teoria grafów podstawy Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Grafy zorientowane i niezorientowane Przykład 1 Dwa pociągi i jeden most problem wzajemnego wykluczania się Dwa

Bardziej szczegółowo

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką? ROZDZIAŁ1 Podstawy inżynierii oprogramowania: - Cele 2 - Zawartość 3 - Inżynieria oprogramowania 4 - Koszty oprogramowania 5 - FAQ o inżynierii oprogramowania: Co to jest jest oprogramowanie? 8 Co to jest

Bardziej szczegółowo

SIECI PETRIEGO WYŻSZEGO RZEDU Kolorowane sieci Petriego. Kolorowane sieci Petriego 1

SIECI PETRIEGO WYŻSZEGO RZEDU Kolorowane sieci Petriego. Kolorowane sieci Petriego 1 SIECI PETRIEGO WYŻSZEGO RZEDU Kolorowane sieci Petriego Kolorowane sieci Petriego 1 PRZYKŁAD - DWA POCIAGI Kolorowane sieci Petriego 2 KONCEPCJA KOLORÓW Model z rysunku (a) nie jest równoważny poprzedniemu,

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące.

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące. Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące. Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/

Bardziej szczegółowo

Definicje. Algorytm to:

Definicje. Algorytm to: Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi

Bardziej szczegółowo

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language) Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu

Bardziej szczegółowo

Rysunek 1: Przykłady graficznej prezentacji klas.

Rysunek 1: Przykłady graficznej prezentacji klas. 4 DIAGRAMY KLAS. 4 Diagramy klas. 4.1 Wprowadzenie. Diagram klas - w ujednoliconym języku modelowania jest to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez

Bardziej szczegółowo

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM

Bardziej szczegółowo

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1 Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1 Tablice wielowymiarowe C umożliwia definiowanie tablic wielowymiarowych najczęściej stosowane

Bardziej szczegółowo

1 Działania na zbiorach

1 Działania na zbiorach M. Beśka, Wstęp do teorii miary, rozdz. 1 1 1 Działania na zbiorach W rozdziale tym przypomnimy podstawowe działania na zbiorach koncentrując się na własnościach tych działań, które będą przydatne w dalszej

Bardziej szczegółowo

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno Instrukcja laboratoryjna 5 Podstawy programowania 2 Temat: Drzewa binarne Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Drzewa są jedną z częściej wykorzystywanych struktur danych. Reprezentują

Bardziej szczegółowo

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.

W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora. 1. Podstawy matematyki 1.1. Geometria analityczna W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora. Skalarem w fizyce nazywamy

Bardziej szczegółowo

Zbiory, relacje i funkcje

Zbiory, relacje i funkcje Zbiory, relacje i funkcje Zbiory będziemy zazwyczaj oznaczać dużymi literami A, B, C, X, Y, Z, natomiast elementy zbiorów zazwyczaj małymi. Podstawą zależność między elementem zbioru a zbiorem, czyli relację

Bardziej szczegółowo

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU OPIS PRZEDMIOTU Nazwa przedmiotu Systemy rozproszone Kod przedmiotu Wydział Wydział Matematyki, Fizyki i Techniki Instytut/Katedra Instytut Mechaniki i Informatyki Stosowanej Kierunek Informatyka Specjalizacja/specjalność

Bardziej szczegółowo

Podstawy programowania III WYKŁAD 4

Podstawy programowania III WYKŁAD 4 Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.

Bardziej szczegółowo

UML w Visual Studio. Michał Ciećwierz

UML w Visual Studio. Michał Ciećwierz UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować

Bardziej szczegółowo

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej. Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk PROLOG www.agh.edu.pl Pewnego dnia przyszedł na świat komputer Komputery

Bardziej szczegółowo

Digraf. 13 maja 2017

Digraf. 13 maja 2017 Digraf 13 maja 2017 Graf skierowany, digraf, digraf prosty Definicja 1 Digraf prosty G to (V, E), gdzie V jest zbiorem wierzchołków, E jest rodziną zorientowanych krawędzi, między różnymi wierzchołkami,

Bardziej szczegółowo

koniec punkt zatrzymania przepływów sterowania na diagramie czynności

koniec punkt zatrzymania przepływów sterowania na diagramie czynności Diagramy czynności opisują dynamikę systemu, graficzne przedstawienie uszeregowania działań obrazuje strumień wykonywanych czynności z ich pomocą modeluje się: - scenariusze przypadków użycia, - procesy

Bardziej szczegółowo

Spis treúci. 1. Wprowadzenie... 13

Spis treúci. 1. Wprowadzenie... 13 Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...

Bardziej szczegółowo

Problem zakleszczenia

Problem zakleszczenia Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Klasyfikacja zasobów systemu na potrzeby analizy problemu zakleszczenia Warunki konieczne wystąpienia zakleszczenia Graf przydziału zasobów

Bardziej szczegółowo

Przetwarzanie rozproszone

Przetwarzanie rozproszone Przetwarzanie rozproszone Plan wykładu Celem wykładu jest zapoznanie słuchacza z podstawowymi pojęciami i problemami związanymi z przetwarzaniem rozproszonym. Wykład obejmie omówienie m. in. definicji

Bardziej szczegółowo

Literatura. Bazy danych s.1-1

Literatura. Bazy danych s.1-1 Literatura R.Colette, Bazy danych : od koncepcji do realizacji, PWE 1988, S.Forte, T.Howe, J. Ralston, Access2000, HELION 2001, R.J.Muller, Bazy danych, język UML w modelowaniu danych, MIKOM 2000, M.Muraszkiewicz,

Bardziej szczegółowo

Przetwarzanie rozproszone

Przetwarzanie rozproszone Przetwarzanie rozproszone Plan wykładu Celem wykładu jest zapoznanie słuchacza z podstawowymi pojęciami i problemami związanymi z przetwarzaniem rozproszonym. Wykład obejmie omówienie m. in. definicji

Bardziej szczegółowo

Podstawowe własności grafów. Wykład 3. Własności grafów

Podstawowe własności grafów. Wykład 3. Własności grafów Wykład 3. Własności grafów 1 / 87 Suma grafów Niech będą dane grafy proste G 1 = (V 1, E 1) oraz G 2 = (V 2, E 2). 2 / 87 Suma grafów Niech będą dane grafy proste G 1 = (V 1, E 1) oraz G 2 = (V 2, E 2).

Bardziej szczegółowo

Modelowanie obiektowe - Ćw. 6.

Modelowanie obiektowe - Ćw. 6. 1 Modelowanie obiektowe - Ćw. 6. Treść zajęć: Dokumentacja przypadków użycia diagramy czynności. Poznane wcześniej diagramy przypadków użycia pokazują co system powinien robić. Natomiast diagramy czynności

Bardziej szczegółowo

LOGIKA I TEORIA ZBIORÓW

LOGIKA I TEORIA ZBIORÓW LOGIKA I TEORIA ZBIORÓW Logika Logika jest nauką zajmującą się zdaniami Z punktu widzenia logiki istotne jest, czy dane zdanie jest prawdziwe, czy nie Nie jest natomiast istotne o czym to zdanie mówi Definicja

Bardziej szczegółowo

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych Systemy wbudowane Wykład 11: Metody kosyntezy systemów wbudowanych Uproszczone metody kosyntezy Założenia: Jeden procesor o znanych parametrach Znane parametry akceleratora sprzętowego Vulcan Początkowo

Bardziej szczegółowo

Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia

Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia Wydział Matematyki i Informatyki Instytut Informatyki i

Bardziej szczegółowo

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204 Opracował: prof. dr hab. inż. Jan Kazimierczak KATEDA INFOMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 204 Temat: Hardware'owa implementacja automatu skończonego pełniącego

Bardziej szczegółowo

Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe

Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe Podstawy programowania Wykład IV PASCAL - łańcuch znaków, - procedury i funkcje, - sortowanie bąbelkowe 1 Podstawy programowania Część I Łańcuchy znaków 2 I. Zmienne łańcuchowe Klasyfikacja zmiennych statycznych

Bardziej szczegółowo

Wstęp do Techniki Cyfrowej... Teoria automatów

Wstęp do Techniki Cyfrowej... Teoria automatów Wstęp do Techniki Cyfrowej... Teoria automatów Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych. Zwiększenie stopnia

Bardziej szczegółowo

Modelowanie i Programowanie Obiektowe

Modelowanie i Programowanie Obiektowe Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do

Bardziej szczegółowo

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++

Programowanie. programowania. Klasa 3 Lekcja 9 PASCAL & C++ Programowanie Wstęp p do programowania Klasa 3 Lekcja 9 PASCAL & C++ Język programowania Do przedstawiania algorytmów w postaci programów służą języki programowania. Tylko algorytm zapisany w postaci programu

Bardziej szczegółowo

Spis treści. Przedmowa Wykaz oznaczeń Wstęp Układy kombinacyjne... 18

Spis treści. Przedmowa Wykaz oznaczeń Wstęp Układy kombinacyjne... 18 Spis treści Przedmowa... 11 Wykaz oznaczeń... 13 1. Wstęp... 15 1.1. Układycyfrowe... 15 1.2. Krótki esej o projektowaniu.... 15 2. Układy kombinacyjne... 18 2.1. Podstawyprojektowaniaukładówkombinacyjnych...

Bardziej szczegółowo

Jeśli X jest przestrzenią o nieskończonej liczbie elementów:

Jeśli X jest przestrzenią o nieskończonej liczbie elementów: Logika rozmyta 2 Zbiór rozmyty może być formalnie zapisany na dwa sposoby w zależności od tego z jakim typem przestrzeni elementów mamy do czynienia: Jeśli X jest przestrzenią o skończonej liczbie elementów

Bardziej szczegółowo

W_4 Adaptacja sterownika PLC do obiektu sterowania. Synteza algorytmu procesu i sterowania metodą GRAFCET i SFC

W_4 Adaptacja sterownika PLC do obiektu sterowania. Synteza algorytmu procesu i sterowania metodą GRAFCET i SFC Proces technologiczny (etap procesu produkcyjnego/przemysłowego) podstawa współczesnych systemów wytwarzania; jest określony przez schemat funkcjonalny oraz opis słowny jego przebiegu. Do napisania programu

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

Matematyka dyskretna. Andrzej Łachwa, UJ, /14 Matematyka dyskretna Andrzej Łachwa, UJ, 2016 andrzej.lachwa@uj.edu.pl 13/14 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Matematyka dyskretna. Andrzej Łachwa, UJ, /15 Matematyka dyskretna Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl 14/15 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA AKADEMIA GÓRNICZO- HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA Wydział Inżynierii Mechanicznej i Robotyki Katedra Automatyzacji Procesów Przedmiot: Przemysłowe

Bardziej szczegółowo

Teoretyczne podstawy informatyki

Teoretyczne podstawy informatyki Teoretyczne podstawy informatyki Wykład 6a: Model danych oparty na zbiorach http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2010/tpi-2010 Prof. dr hab. Elżbieta Richter-Wąs 1 Model danych oparty na zbiorach

Bardziej szczegółowo

5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów.

5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów. 5. Algebra działania, grupy, grupy permutacji, pierścienie, ciała, pierścień wielomianów. Algebra jest jednym z najstarszych działów matematyki dotyczącym początkowo tworzenia metod rozwiązywania równań

Bardziej szczegółowo

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji Diagramy związków encji (ERD) 1 Projektowanie bazy danych za pomocą narzędzi CASE Materiał pochodzi ze strony : http://jjakiela.prz.edu.pl/labs.htm Diagramu Związków Encji - CELE Zrozumienie struktury

Bardziej szczegółowo

TECHNOLOGIE OBIEKTOWE. Wykład 3

TECHNOLOGIE OBIEKTOWE. Wykład 3 TECHNOLOGIE OBIEKTOWE Wykład 3 2 Diagramy stanów 3 Diagram stanu opisuje zmiany stanu obiektu, podsystemu lub systemu pod wpływem działania operacji. Jest on szczególnie przydatny, gdy zachowanie obiektu

Bardziej szczegółowo

Teoria automatów i języków formalnych. Określenie relacji

Teoria automatów i języków formalnych. Określenie relacji Relacje Teoria automatów i języków formalnych Dr inŝ. Janusz ajewski Katedra Informatyki Określenie relacji: Określenie relacji Relacja R jest zbiorem par uporządkowanych, czyli podzbiorem iloczynu kartezjańskiego

Bardziej szczegółowo

Adaptacja sterownika PLC do obiektu sterowania. Synteza algorytmu procesu i sterowania metodą GRAFCET i SFC

Adaptacja sterownika PLC do obiektu sterowania. Synteza algorytmu procesu i sterowania metodą GRAFCET i SFC Adaptacja sterownika PLC do obiektu sterowania. Synteza algorytmu procesu i sterowania metodą GRAFCET i SFC Proces technologiczny (etap procesu produkcyjnego/przemysłowego) podstawa współczesnych systemów

Bardziej szczegółowo

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu.

Tutorial prowadzi przez kolejne etapy tworzenia projektu począwszy od zdefiniowania przypadków użycia, a skończywszy na konfiguracji i uruchomieniu. AGH, EAIE, Informatyka Winda - tutorial Systemy czasu rzeczywistego Mirosław Jedynak, Adam Łączyński Spis treści 1 Wstęp... 2 2 Przypadki użycia (Use Case)... 2 3 Diagramy modelu (Object Model Diagram)...

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Podniesienie poziomu wiedzy studentów z inżynierii oprogramowania w zakresie C.

Bardziej szczegółowo

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści Język programowania DELPHI / Andrzej Marciniak. Poznań, 2012 Spis treści Przedmowa 11 Przyjęta notacja 13 Rozdział 1. Wprowadzenie 15 1.1. Ogólne zasady programowania zorientowanego obiektowo 15 1.2. Historia

Bardziej szczegółowo

BOGDAN ZARĘBSKI ZASTOSOWANIE ZASADY ABSTRAKCJI DO KONSTRUKCJI LICZB CAŁKOWITYCH

BOGDAN ZARĘBSKI ZASTOSOWANIE ZASADY ABSTRAKCJI DO KONSTRUKCJI LICZB CAŁKOWITYCH BOGDAN ZARĘBSKI ZASTOSOWANIE ZASADY ABSTRAKCJI DO KONSTRUKCJI LICZB CAŁKOWITYCH WSTĘP Zbiór liczb całkowitych można definiować na różne sposoby. Jednym ze sposobów określania zbioru liczb całkowitych jest

Bardziej szczegółowo

POLITECHNIKA OPOLSKA

POLITECHNIKA OPOLSKA POLITECHNIKA OPOLSKA WYDZIAŁ MECHANICZNY Katedra Technologii Maszyn i Automatyzacji Produkcji Laboratorium Podstaw Inżynierii Jakości Ćwiczenie nr 2 Temat: Schemat blokowy (algorytm) procesu selekcji wymiarowej

Bardziej szczegółowo

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV Algorytmy grafowe Wykład 1 Podstawy teorii grafów Reprezentacje grafów Tomasz Tyksiński CDV Rozkład materiału 1. Podstawowe pojęcia teorii grafów, reprezentacje komputerowe grafów 2. Przeszukiwanie grafów

Bardziej szczegółowo

FUNKCJE. (odwzorowania) Funkcje 1

FUNKCJE. (odwzorowania) Funkcje 1 FUNKCJE (odwzorowania) Funkcje 1 W matematyce funkcja ze zbioru X w zbiór Y nazywa się odwzorowanie (przyporządkowanie), które każdemu elementowi zbioru X przypisuje jeden, i tylko jeden element zbioru

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

ECDL Podstawy programowania Sylabus - wersja 1.0

ECDL Podstawy programowania Sylabus - wersja 1.0 ECDL Podstawy programowania Sylabus - wersja 1.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu Podstawy programowania. Sylabus opisuje, poprzez efekty uczenia się, zakres wiedzy

Bardziej szczegółowo

Projektowanie układów na schemacie

Projektowanie układów na schemacie Projektowanie układów na schemacie Przedstawione poniżej wskazówki mogą być pomocne przy projektowaniu układach na poziomie schematu. Stałe wartości logiczne Aby podłączyć wejście do stałej wartości logicznych

Bardziej szczegółowo

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ (INT) Inżynieria internetowa 1. Tryby komunikacji między procesami w standardzie Message Passing Interface 2. HTML DOM i XHTML cel i charakterystyka 3. Asynchroniczna komunikacja serwerem HTTP w technologii

Bardziej szczegółowo

Język opisu sprzętu VHDL

Język opisu sprzętu VHDL Język opisu sprzętu VHDL dr inż. Adam Klimowicz Seminarium dydaktyczne Katedra Mediów Cyfrowych i Grafiki Komputerowej Informacje ogólne Język opisu sprzętu VHDL Przedmiot obieralny dla studentów studiów

Bardziej szczegółowo

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program. PYTHON Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program. Aby program napisany w danym języku mógł być wykonany, niezbędne

Bardziej szczegółowo

Turing i jego maszyny

Turing i jego maszyny Turing Magdalena Lewandowska Politechnika Śląska, wydział MS, semestr VI 20 kwietnia 2016 1 Kim był Alan Turing? Biografia 2 3 Mrówka Langtona Bomba Turinga 4 Biografia Kim był Alan Turing? Biografia Alan

Bardziej szczegółowo

5. Model komunikujących się procesów, komunikaty

5. Model komunikujących się procesów, komunikaty Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć

Bardziej szczegółowo

Podstawowe procedury przy tworzeniu programu do sterownika:

Podstawowe procedury przy tworzeniu programu do sterownika: Podstawowe procedury przy tworzeniu programu do sterownika: 1. Opracowanie algorytmu sterowania procesem, potwierdzonego przez technologa. 2. Oszacowanie wielkości obiektu, czyli liczby punktów (liczby

Bardziej szczegółowo

POLITECHNIKA OPOLSKA

POLITECHNIKA OPOLSKA POLITECHNIKA OPOLSKA WYDZIAŁ MECHANICZNY Katedra Technologii Maszyn i Automatyzacji Produkcji Laboratorium Podstaw Inżynierii Jakości Ćwiczenie nr 2 Temat: Schemat blokowy (algorytm) procesu selekcji wymiarowej

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Automat ze stosem Automat ze stosem to szóstka

Bardziej szczegółowo