190 likes | 366 Views
Modelowanie i symulacja procesów gospodarczych. Badany system. Eksperyment na modelu systemu. Eksperyment na istniejącym systemie. Model matematyczny. Model fizyczny. Symulacja. Rozwiązanie analityczne. Metody analizy systemów. Podstawowe pojęcia. model = opis systemu
E N D
Badany system Eksperyment na modelu systemu Eksperyment na istniejącym systemie Model matematyczny Model fizyczny Symulacja Rozwiązanie analityczne Metody analizy systemów
Podstawowe pojęcia • model = opis systemu • model symulacyjny = wyróżnianie i formalizacja cech systemu oraz ustalanie zależności pomiędzy nimi, zachodzących w czasie • modele statyczne i dynamiczne • modele stochastyczne i deterministyczne • modele zdarzeń dyskretnych i ciągłych
Podstawowe elementy modelu AWESIM! sieć (network) • węzły (nodes) • czynności (activities) instrukcje kontrolne blok animacji GEN,"PRITSKER","SERIAL WORK STATIONS", 1/1/1996,1; LIMITS,500,-1,-1,2,-1,-1; NETWORK; INIT,0,300; FIN;
Podstawowe pojęcia • obiekt – element powodujący zmiany stanu modelowanego systemu w miarę przechodzenia przez model, np. klient, pojazd, informacja • atrybut – cecha obiektu, np.: • czas pojawienia się w systemie • czas niezbędny do obsłużenia • rodzaj • zbiór – miejsce oczekiwania obiektów na obsługę
Panel główny AWESIM! 3.0 najpierw krótko omówimy podstawowe węzły oraz instrukcje kontrolne
Węzeł CREATE Node Label - etykieta węzła, opcjonalnie, jednak czasem konieczne Time Between - czas pomiędzy pojawianiem się obiektów Time of First - czas pojawienia się pierwszego obiektu Save TNOW - numer atrybutu, na którym zapisywany jest czas pojawienia się obiektu Max to Create - maksymalna liczba tworzonych obiektów Max Branches to Take - maksymalna liczba gałęzi, wzdłuż których utworzone obiekty mogą się przemieszczać od tego węzła (powtarza się w niemal wszystkich węzłach) Służy do wprowadzania obiektów do systemu, z reguły pierwszy w kolejności
WęzełQUEUE Stosowany do modelowania złożonych procesów decyzyjnych, gdy obiekt pojawia się i oczekuje na obsługę, gdzie dyspozycja związana z obiektem zależy od stanu stanowiska oraz liczby obiektów oczekujących na obsługę w kolejce • Node Label - etykieta węzła • File # - numer zbioru, w którym przechowywane są obiekty z danej kolejki, numerujemy nadając unikalne wartości • Init. # in Queue - liczba obiektów w kolejce w momencie rozpoczęcia symulacji • Queue Capacity - pojemność kolejki, czyli ile obiektów może stać w kolejce
WęzełQUEUE • Full Action - bez akcji, przepuszczanie lub blokowanie obiektu, który pojawia się w węźle QUEUE. W przypadku, gdy kolejka jest pełna: • BALK - przepuszczenie obiekt, czyli przeniesienie do innego węzła w sieci lub usunięcie z systemu w przypadku braku etykiety takiego węzła • BLOCK - obiekt oczekuje tak długo, aż znajdzie się miejsce w kolejce • NONE - nie powoduje blokowania ani przepuszczania, w przypadku gdy kolejka ma ograniczoną pojemność, obiekty które w niej się nie mieszczą są usuwane z systemu w sposób niekontrolowany
Węzeł TERMINATE Stosowany do usuwania obiektów z sieci • Node Label - etykieta węzła • Term. Count - liczba obiektów, po których przejściu następuje zakończenie symulacji Gdy w sieci jest kilka węzłów TERMINATE to osiągnięcie przez jeden z nich warunku zakończenia powoduje zakończenie symulacji
Węzeł COLCT Zbieranie statystyk budowane z wykorzystaniem funkcji dostępnych pod przyciskiem F(x) znajdującym się przy polu Value. COLCT # - indeks określający numer kolejny statystyki Value - rodzaj zmiennej lub wyrażenie, którego wartości mają być rejestrowane Identifier - opis węzła (tekst informujący o zbieranych statystykach, ustalamy sami) Gdy chcemy wyniki na histogramie: # of Cells - liczba przedziałów histogramu Lower Limit - granica pierwszego przedziału histogramu Cell Width - szerokość przedziału histogramu
Czynność ACTIVITY Activity # - numer identyfikacyjny czynności Duration - czas trwania czynności Condition - prawdopodobieństwo lub warunek zaistnienia czynności End Node Label - etykieta węzła końca czynności # of Servers - liczba identycznych równolegle działających stanowisk obsługi (tylko czynności obsługi) Identifier - etykieta opisująca czynność, tworzymy sami
Czynności - do czego służą • określa się w nich czasy przypisane do obiektów przepływających przez sieć • czynności wychodzące z węzłów, gdzie są zbiory to czynności obsługi • w czynnościach obsługi określamy liczbę stanowisk (servers) • wybór czynności może mieć charakter probabilistyczny (prawdopodobieństwo PROB)) • wybór może też mieć charakter warunkowy (COND) • czynności można nadać numer. Jest on wykorzystywany jako indeks w funkcjach np. NNACT(I) - liczba obiektów znajdujących się w czynności, gdzie I numer czynności, oraz w raporcie
Węzeł GOON A B węzeł kontynuacji, stosujemy, gdy chcemy „rozgałęzić” drogę obiektów” • Node Label - etykieta węzła • Max Branches to Take - maksymalna liczba czynności, po których może poruszać się wychodzący z węzła obiekt • A - Wybór czynności według prawdopodobieństwa • B - Wybór czynności według warunku
Instrukcje sterujące GENERAL (GEN) • Name - identyfikator autora projektu • Project - nazwa projektu • Date - data zapisu projektu • # of runs - liczba przebiegów symulacyjnych, które mają być przeprowadzone • Attempt Execution - dokonać próby wykonania programu • Warn of Destroyed Entities - informowanie o usuwanych obiektach • Max Errors - max liczba błędów, po której ma być wstrzymana symulacja w praktyce - wystarczy tylko liczba przebiegów, domyślnie - 1
Instrukcje sterujące - LIMITS • Instrukcja LIMITS jest stosowana do zdefiniowania wielkości i struktury danych. Musi znajdować się zaraz po instrukcji GEN. • Globals - zmienne globalne systemu • Attributes - zmienne związane z obiektem my stosujemy tylko atrybuty
Instrukcje sterujące - INITIALIZE • Służy do określania czasu rozpoczęcia i zakończenia symulacji oraz do inicjalizacji statystyk, zmiennych i zbiorów • Begin time - czas rozpoczęcia przebiegu symulacyjnego • Finish time - czas zakończenia przebiegu symulacyjnego • Clear statistics between runs - jeżeli Yes wyzerowanie tablic statystyk pomiędzy przebiegami • Up to COLCT # - od tego numeru statystyki nie są zerowane między przebiegami dla nas istotny jest tylko czas zakończenia