Sunteți pe pagina 1din 32

06.02.

2014
Modelarea sistemelor
Literatura:
- ndrumarul de laborator ,,Modelarea Sistemelor 2012
- Barbu Gheorghe ,,Modele de simulare i aplicaii n fiabilitate
Noiuni generale despre GPSS (General Purpose Simulation System):
Este un limbaj pentru simularea discret a modelelor. A fost elaborat de ctre IBM. Exist mai multe versiuni,
cele mai utilizate GPSS/360 (v4 v6) , GPSS V (v7) , GPSS/H+PROOF. Ultima versiune este cea mai nou
versiune n care este adugat seciunea grafic de manipulare cu blocurile i posibilitatea de utilizare a animaiei
precum i o interfa flexibil cu limbajul C++. Cronometrarea i ordonarea evenimentelor se efectueaz
modelndu-se timpul modelului, prin urmare modelarea poart un caracter discret. La baza lui se afl un program
interpretor cu urmtoarele funcii:
- asigurarea tranzaciilor
- planificarea evenimentelor
- crearea unui raport statistic
1 2 6 8 18 19 71
Eticheta Blocuri sau Cartele Operanzi

SIMULATE
END
Entitile limbajului GPSS:
Limbajul GPSS conine 15 entiti (elemente de abstractizare. La fiecare entitate se asociaz un numr de
proprieti sau atribute, majoritatea lor fiind adresabile intern, dar unele pot fi adresabile i de ctre utilizator
(atribute numerice standart, sau standart logice numite i valori logice).
I. Entitile de baz:
1. Blocurile au asociate caracteristici numerice sau logice i posed argumente necesare descrierii activitilor.
2. Tranzaciile (elemente circulante) posed un anumit numr de parametri standart, dar i parametri introdui
de ctre utilizator. Prin intermediul programului de simulare utilizatorul
poate accesa parametrii tranzaciilor.
II. Entiti de echipament:
3. Staiile de servire ele corespund subsistemelor cu o component care trateaz de regul o singur tranzacie.
4. Multistaii de servire
5. Comutatorii logici acetia sunt variabile logice ce permit utilizatorului s realizeze o ramificare dup dorin
a fluxului de execuie n programul de simulare
6. Variabile aritmetice
7. Variabile booleene permit evaluarea unei expresii booleene
8. Funciile descrise prin tabele prin segmente de treapt
9. Funciile analitice
10. Cozile
11. Tabele de frecven descriu histogramele variabilelor de ieire

III. Entiti de referin (Acestea memoreaz anumite informaii la dorina utilizatorului)
12. Cuvinte de salvare memoreaz valori ce corespund cte un cuvnt de memorie al calculatorului
13. Matrice de cuvinte de salvare
IV. Entiti de tip lan:
14. Lanuri ale utilizatorului
15. Grupuri care separ tranzacii
Not: Toate entitile trebuie definite i declarate de ctre utilizator la nceputul programului. Pentru fiecare
entitate se aloc memorie de ctre utilizator la nceputul programului. La instalarea limbajului se aloc memorie i
un numr maxim de entiti care se pot utiliza ntr-un program. Entitile se invoc prin instruciuni cu structur
fix i de aici rezult c limbajul este un interpretor.
Structura instruciunilor n GPSS:
Sistemul modelat precum i algoritmul de modelare st la baza funcionrii interpretorului i este descris cu
ajutorul obiectelor operaionale blocuri. Blocurile sunt activate de ctre tranzacia la momentul intrrii n el.
Respectiv tranzaciile micnd-se de la un bloc la altul imit micarea obiectelor dinamice.
Structura instruciunilor:
1. Blocurile se divizeaz n :
a) blocuri de aciune : - SEIZE (ocup)/ RELEASE (elibereaz staia de servire),
- ENTER/LEAVE
- QUEUE/ DEPART
- etc.

b) blocuri de creare : - GENERATE (genereaz tranzaciile n model) / TERMINATE (tr. sunt elimin.)
c) blocuri de control: - TEST, TRANSFER, GATE, EXAMINATE, LOOP
d) blocuri de modificare a caracteristicilor tranzaciilor i a valorilor unor entiti de referin:
- ASIGN, MARK, PRIORITY, SAVEVALUE, COUNT, etc.
e) blocurile pentru obinerea statisticii:
- TABULATE (pentru construirea pistogramei)
f) blocurile pentru listri:
- PRINT
2. Tranzaciile (generate de GENERATE i eliminate de TERMINATE)
La generarea tranzaciilor, acestea primesc automat nite parametri interni i un numr de parametri declarai i
pot fi accesai de utilizator (pn la 100 parametri). n funcie de implementare un program GPSS poate utiliza un
numr maximal de parametri, acesta fiind un dezavantaj al limbajului de simulare datorit faptului c limbajul
gestioneaz agenda, facilitnd astfel detalii de programare pe care ntr-un limbaj evaluat le rezolv utilizatorul.
3. Staii de serviciu
4. Comutatori logici
Not: toate entitile de echipament sunt identificare printr-un numr ntreg, ele posed atribute
standart numerice sau logice.
5. Variabile cu cuvntul cheie VARIABLE.
6. Funcii (FUNCTION) - desemneaz o funcie de o variabil dat printr-o list sau o funcie liniar
precizndu-se argumentul prin care se refer.
7. Firul de ateptare (coada) entitate statistic pentru care se reine automat lungimea medie i cea maximal
care se analizeaz (listeaz) la sfritul simulrii
8. Tabele de frecven se definete la nceputul programului prin TABULATE.
9. Lanuri
Not: lanurile sistemului sunt controlate automat de ctre GPSS dar lanurile utilizatorului sunt definite de
acesta i ele pot fi referite n programul GPSS.
10. Grupurile ofer utilizatorului un instrument de clasificare a tranzaciilor care au anumite proprieti.
n general un program GPSS reprezint o list ordonat de blocuri ale cror argumente se refer la diferite entiti.
Exemplu:
Joi Function P1, D3
P1 argumentul funcie
D3 D arat c e o funcie discret pe 3 perechi de numere. Perechile de numere se scriu din rnd nou n ordine
cresctoare prin / , ex.: 1,4/ 3,8 / 5,3.


07.02.2014
Ex:
FUN FUNCTION P1,D3
1,3 / 4,8 / 6,2
Pentru valoarea argumentului P1 funcia capt valoarea 3, pentru P1 = 2,3,4 funcia capt valoarea 8 , respectiv
pentru P1 = 5, 6 funcia capt valoarea 2


n cmpul A al cartelei FUNCTION se indic argumentul funciei. n cmpul B definirea funciei prima liter ne
indic ce tip de funcie este (D discret, C continuu) dup liter arat numrul de puncte pe care funcia e
definit(definirea funciei). Perechile de numere se scriu divizate prin slash (n cazul nostru 3 perechi), iar primul
numr din pereche se divizeaz de al doilea prin virgul. Primul numr din perechea de numr se scrie n ordine
cresctoare.
Funcia numeric continu se deosebete de cea numeric discret prin faptul c pe parcursul intervalului
descris valoarea ei este calculat prin intermediul interpolrii liniare. Drept puncte de reper folosindu-se valorile
ei la frontierele din stnga i dreapta a intervalului descris.
Ex:
FUN1 FUNCTION P1, C3
1,3 / 4,8 / 6,2


C3 definete o funcie cu denumirea FUN1 continu pe 3 perechi de numere.

0
1
2
3
4
5
6
7
8
9
0 2 4 6 8
F
N
$
F
U
N
1

P1
0
1
2
3
4
5
6
7
8
0 1 2 3 4 5 6 7
F
N
$
F
U
N

P1
GPSS-ul poart un caracter stohastic i conine 8 generatoare de numere aliatoare notate prin RN1, RN2RN8.
Ele sunt folosite n calitate de argument al funciei i genereaz numere pe intervalul 0,000001 0,999999
Dac nu sunt utilizate ca argument al funciei atunci ele genereaz numere pe intervalul 0 999.
Exemplu:
LAB FUNCTION RN7, D3
0, 0 / .25, 5 / 1, 7 (.25,5 se poate scrie ca 0.25)
Funcia capt valoarea 5 cu probabilitatea de 0,25 i valoarea 7 cu probabilitatea de 0,75, n acest caz,
argumentul ultimii perechi de numere trebuie s fie egal cu 1 pentru a respecta condiia c suma
probabilitilor =1.
n baza unui program simplu, modificnd-ul puin vom analiza urmtoarele cazuri:
1. Distribuirea uniform a duratelor dintre generarea tranzaciilor pe intervalul 90 110
SIMULATE
* Definirea variab
IVAR VARIABLE C1X1
*Definirea tabelului
TIME TABLE V$IVAR,70,5,10

GENERATE 100, 10
TABULATE TAB1
SAVEVALUE 1, C1
TERMINATE 1
END
Programul se ncepe cu GENERATE genereaz tranzaciile n model. n cmpul A durata medie dintre
generarea tranzaciilor, n cmpul B modificatorul. Dac n cmpul B este indicat valoarea numeric atunci
fiecare durat pn la generarea urmtoarei tranzacii va fi aleas aleatoriu pe intervalul de la 100 10 . Din
blocul GENERATE tranzacia nimerete n TABULATE, el introduce datele n tabel, n cmpul A se indic
numele tabelului, acest tabel preventiv trebuie s fie definit. n cmpul A(V$IVAR) se indic argumentul
tabelului(V$IVAR), 70 este limita de jos a tabelului, 5 este pasul tabelului, 10 este numrul de pai. Din
TABULATE tranzacia nimerete n SAVEVALUE, SAVEVALUE calculeaz diferena dintre valoarea curent a
timpului respectiv a modelului C1 i valoarea lui la trecerea tranzaciei precedente memorizate n celula X1.
TERMINATE 1 elimin tranzaciile din model (dac nu-i 1 atunci nu elimin).
2. Distribuirea exponenial a intervalelor de timp dintre generarea tranzaciilor
SIMULATE
EXP FUNCTION RN1,C4
0,3/.25,4/.5,7/1,11
INTRV VARIABLE C1X1
TIME TABLE V$INTRV,0,20,50
GENERATE 100,FN$EXP
TABULATE TIME
SAVEVALUE 1,C1
TERMINATE 1
END
3. Distribuirea normal a intervalelor de timp dintre generarea tranzaciilor
SIMULATE
NORM FUNCTION RN8, C4
0, 3 / .25 , 4 / .5 , 7 / 1, 11
SVAR FVARIABLE 100+10#FN$NORM
INTRV VARIABLE C1 X1
TIME TABLE V$INTRV, 50, 5, 10
GENERATE V$SVAR
TABULATE TIME
SAVEVALUE 1, C1
TERMINATE 1
END

Exemplu:
S se modeleze lucrul la o cantin n care sosesc clienii n fiecare 18 6 u.t. (uniti de timp). Fiecare client este
deservit n decurs 154 minute. S se modeleze lucrul cantinei pe o durat de 8 ore. Timpul are distribuie
uniform.
SIMULATE 480
GENERATE 18,6
QUEUE SAR
SEIZE MASA
DEPART SAR
ADVACE 15,4
RELEASE MASA
TERMINATE 1
END
14.02.2014
Tema 1: Generaliti despre modelare i simulare
1. Introducere
2. Construcia unui model de simulare
3. Conceptele de baz n modelarea sistemelor
4. Metodologia de realizare a experimentelor de simulare.
5. Clasificarea limbajelor de simulare
1. n accepiunea actual a informaticii simularea cuprinde o serie de aplicaii ce realizeaz imitarea
comportamentului unor pri ale lumii reale lund n consideraie i comportamentul aleatoriu al acestuia.
Definiii:
Simularea este o tehnic de realizare a experimentelor asistat de calculator care implic utilizarea unor modele
matematice i logice ce descriu comportarea unui sistem real dea lungul unei perioade de timp. Deci simularea se
realizeaz n baza unui model special numit model de simulare. Modelul de simulare se construiete n baza unui
model matematic, iar construirea modelului matematic se poate aborda n 2 moduri:
1) prin modelarea analitic ca o consecin a legilor fizice ce descriu desfurarea fenomenele.
2) ca o modelare experimental n care determinarea modelelor se face prin prelucrarea datelor obinute (prin
msurtori experimentali).
Elementele constitutive al unui model matematic sunt:
1) variabilele (V) i parametrii (P) care la rndul lor pot fi de intrare (V
i
i P
i
) i de ieire (V
e
i P
e
). Att
variabilele ct i parametrii pot primi valori numerice sau logice. Scopul modelului(matematic) este de a exprima
variabilele i parametrii de ieire n funcie de variabilele i parametrii de intrare cu eventual satisfacere a unor
condiii de performan de ctre sistem.
2) relaiile funcionale : F
i
(V
i
,P
i
,V
e
,P
e
) = 0 . Aceste relaii pot fi de 2 tipuri:
- ecuaii (care sunt satisfcute numai de anumite valori ale variabilelor i parametrilor)
- identiti (care sunt satisfcute de orice valori ale variabilelor i parametrilor). Identitile exprim
condiiile de echilibru.
Att ecuaiile ct i identitile pot fi relaii algebrice sau transcendente, difereniale sau integrale, determinist
sau stohastice, etc.
3) caracteristile operative ele compun modelul matematic i pot fi ipoteze de lucru sau ipoteze statistice.
4) tehnica de rezolvare aceasta reprezint o tehnic matematic ce realizeaz separarea elementelor de ieire n
funcie de elementele de intrare (adic exprim sub form explicit variabile i
parametrii de ieire (V
e
i P
e
) n funcie de variabilele i parametrii de intrare (V
i
i P
i
).

La construcia modelelor matematice se fac de multe ori ipoteze de simplificri care permit aplicarea tehnicilor de
care dispune matematica, acesta fiind scopul utilizrii de ctre model a caracteristicilor operativ. Rezult c
modelarea matematic este o aproximare i ea nu permite rezolvarea realist a problemelor practice dar utilizarea
calculatorului permite mbuntirea modelelor matematice prin utilizarea metodelor numerice.
Clasificarea modelelor matematice:
1. Dup natura variabilelor utilizate n model se clasific n : continue i discrete, statice i dinamice dac se ia
n consideraie timpul i deterministice i stohastice.
2. Clasificarea topologic adic dup structura determinat de prile n care se descompune modelul: cu o
component sau cu mai multe componente, n serie, n paralel i n reea.
2. Construcia unui model de simulare. Modelul de simulare se construiete n baza scheletului unui model
matematic descriind unele relaii prin algoritmi, am putea spune c modelul de simulare reprezint un algoritm.
Acest algoritm trebuie s descrie corect evoluia sistemului i s permit efectuarea experienelor care s
nlocuiasc experienele ce trebuie realizat asupra sistemului real.






Un model de simulare utilizeaz 2 componente de baz:
a) ceasul simulrii
b) agenda simulrii.
Ceasul simulrii asigur ealonarea corect n timp a evenimentelor create de model i uneori ajut la
implementarea condiiei de finisare a simulrii. Ceasul simulrii poate fi de 2 feluri: ceas cu cretere constant i
ceas cu cretere variabil. Ceasul pornete cu valoarea 0 la nceputul simulrii.
Dac modelul se bazeaz pe ceasul cu cretere variabil atunci ceasul este crescut cu valoarea ce corespunde
apariiei primului eveniment urmtor apoi programul prelucreaz evenimentul dup care ceasul crete din nou
relundu-i ciclul simulrii pn cnd ceasul atinge o valoare iniial ce corespunde perioadei pe care se realizeaz
simularea.
Ceasul cu cretere constant presupune c de fiecare dat creterea se realizeaz cu o cuant de timp C apoi se
prelucreaz toate evenimentele aprute pe intervalul cu lungimea C.
b) Agenda simulrii se compune din elementele memorate de modelul de simulare. Variabilele modelului iau
diverse valori pe parcursul simulrii, adic n el permanent au loc nite procese.

O apariie instantanee ce reprezint schimbarea strii sistemului se numete eveniment.
Tranziiile de stare sunt rezultatul combinrii proceselor evenimente asincrone i concurente.
Activitatea este o perioad de timp de lungime cunoscut de la nceputul ei. Poate fi activitate endogen(aprut
n interiorul sistemului) i exogen (aprut n mediul extern dar influeneaz asupra sistemului).
ntrziere o perioad de timp nespecificat ca lungime.
O serie de evenimente n timp se numete proces. Un proces poate fi: generate/ntrerupte, activate/nimicite.
Sincronizarea proceselor se efectueaz prin operatori de timp ,,ateapt iar logica prelucrrii modelelor poate fi
orientat att pe evenimente ct i pe activiti.



Nod extern
Sistem

20.02.2014
n modelele discrete exist 3 abordri:
- orientarea pe evenimente
- orientarea pe activiti
- orientarea pe procese
Orientarea pe evenimente este modelat prin identificarea schimbrilor ce au loc n model n momentul
efecturii anumitor evenimente, sarcina cercettorilor fiind de a descrie toate evenimentele care pot schimba
starea sistemului i a defini legtura dintre ele.
La Orientarea pe activiti utilizatorii descriu acele activiti ce iau parte la evenimentele modelului precum i
condiia de nceput i sfrit a acestor activiti (adic la fiecare pas al simulrii se examineaz condiiile pentru
fiecare activitate). Evenimentele prin care activitile ncep i se sfresc nu se planific, ele se genereaz automat
prin condiiile pentru fiecare activitate.
La orientarea pe procese este o mbinare a abordrii pe evenimente i activiti. La etapa de formalizare a
fiecrui obiect din sistem i se ataeaz un proces care const din evenimente i activiti. Pe parcursul simulrii
memorarea tuturor evenimentelor ce se petrec mpreun cu toate caracteristicile lor nu este necesar i nici
recomandat dac simularea are loc ntr-o durat mare de timp adic n agend se memoreaz doar acele
evenimente strict necesare, deoarece evenimentele sunt create sau generate la momente de timp ulterioare
ceasului simulrii.
Agenda este compus din agenta evenimentelor curente i agenda evenimentelor viitoare:
A = AEC + AEV
AEC (evenimentele la care timpul de apariie este egal cu ceasul simulrii)
AEV (evenimentele care au timpul de apariie ulterior ceasului)
Algoritmul de simulare prelucreaz evenimentele numai din AEC iar prelucrarea unui eveniment nseamn:
fie apariia unui nou eveniment (memorat n AEV) sau modificarea unei stri sau tergerea/distrugerea unui
eveniment, etc.
Algoritmul de simulare gestioneaz agenta prin interaciunea acesteia cu ceasul:
ntr-un ciclu de simulare ceasul este actualizat dup care se selecteaz din agenda (A) evenimentele care fac parte
din AEC i se prelucreaz pn cnd devine vid dup care ceasul este crescut din nou i se preia algoritmul de
simulare.
3. Conceptele de baz n modelarea sistemelor
n form vag orice sistem const din urmtoarele mulimi:
S = (T, X, , , Y, , )
T- timpul sistemului (ceasul)
X mulimea intrrilor
- mulimea segmentelor de intrare (forma intrrilor)
- mulimea strilor interne ale sistemului (memorie) .
Not: conceptul de stare este esenial n modelarea sistemelor. Ea descrie structura intern a sistemului.
Y - mulimea ieirilor
- funcia de tranziie a strilor
- funcia de rspuns
Nivele de reprezentare a sistemului:
1. Reprezentarea la nivel de comportare. n aceast form sistemul este reprezentat printr-o cutie neagr.


Aceasta este cea mai vag form de reprezentare i ea descrie numai relaiile de intrare i ieire ce se pot observa
din afara sistemului.
Y X

2. Reprezentarea la nivel de structur de stare. La acest nivel se intr n structura intern a sistemului, adic
se definesc toate mulimile sistemului (T, X, , , Y, , )
3. Reprezentarea modular (ca o structur compus). Dac sistemul este complex, atunci se identific
subsistemele acestuia precum i interconexiunile dintre acesteia.
Nivele de reprezentare a sistemelor legitimeaz metodologia ,,TOP DOWN de proiectare a sistemelor de orice
fel (n particular i sistemelor de orice fel i n general metodologia de proiectare ierarhic descendent a
programelor).
Se numete sistem cu evenimente discrete structura M = (X, S
m
, Y
m, ,

,
m
,

)Unde:
X
m
reprezint mulimea evenimentelor externe
S
m
reprezint mulimea strilor secveniale ale sistemului
Y
m
- mulimea valorilor de ieire

funcia de tranziie a strilor

m
- funcia de ieire a sistemului.
m
:
m
-> Y
m

- timpul .funcia de avans a timpului

: S
m
[0, ]
4. Metodologia de realizare a experimentelor de simulare.
Etapele de realizare a unui experiment sunt urmtoarele:

Orice program de simulare posed un minim de faciliti pentru prelucrri statistice.
Formularea problemei
Realizarea unor
experimente preliminare
Prelucrarea
Formularea modelului
Evaluarea modelului
Construcia unui model de
simulare
Validarea modelului
Planificarea
evenimentelor finale
Prelucrarea i interpretarea
experimentelor simulrii
Const n precizarea ntrebrilor la care trebuie s rspund modelul. La fel se precizeaz i forma de
rspuns (grafic, histogram, tabel
Se stabilesc pe baza observaiilor variabilele i parametrii care sunt de intrare i de ieire
Prelucrarea unor date preliminare. Se estimeaz parametrii i se testeaz ipotezele statistice
Formularea unui model matematic preliminar la aceast etap se estimeaz parametrii, se precizeaz
relaiile funcionale, ipotezele de lucru, se identific relaiile care nu pot fi descrise matematic i se
determin dificultile ce trebuie nlturate pentru a rspunde la ntrebrile formulate.
Etapa de decizie. Se evalueaz complexitatea modelului. Se poate de reformulat alte etape de mai sus
Se descrie sub form de algoritm detaliat
Testarea sintactic, formularea programului adic validarea formal. Acest lucru se realizeaz prin
compararea rezultatelor simulrii fie c se compar cu nite rezultate practice cunoscute fie prin
compararea cu soluii
Programul de simularea ce este rulat pe calculator produce de regul valori de selecie a variabilelor de
ieire dar care nu definesc seleciile statistice n sens obinuit (nu sunt selecii Bernuliene deoarece
valorile de selecie nu sunt de regul dependente)
21.02.2014
Limbajul de simulare implementeaz elementele eseniale ale simulrii :
- manipularea ceasului
- gestionarea memoriei
Utilizatorul ns are grij de descrierea evenimentelor i prelucrrii lor. n dependen de natura sistemelor
simulate, limbajele de simulare se clasific n:
- limbaje pentru modelarea sistemelor continue
- limbaje pentru modelarea sistemelor discrete
- limbaje pentru modelarea sistemelor continue-discrete

Aceste modele pentru simularea continu sunt desformalizate prin intermediul ecuaiilor difereniale. n limbajul
din grupul al 2lea (limitarea prin blocuri) se utilizeaz un set de blocuri ce sunt echivalente din punct de vedere
funcional cu blocurile unui calcul analogic (generatoare, blocuri pentru msurare, pentru diferen, etc.)
n cazul simulrii sistemelor discrete, starea sistemului se poate modifica doar n anumite momente sub aciunea
Limbaje de simulare
a sistemelor continue
Utilizarea ecuaiilor
difereniale (ForSIM)
Limitarea prin blocuri
(SIMULINK)
Limbaje de simulare
a sistemelor discrete
Orientate pe
evenimente
Orientate pe
procese (GPSS, SIMUB)
Orientate pe
scanarea activitii
Limbaje de simulare a
sistemelor continue-discrete
Orientate pe procese
Orientate pe
activiti, mijloace
pentru simularea
concurent (SLAM)
Orientate pe
evenimente
mijloace pentru
simularea continu
(NEDIS)
evenimentelor
n aceste limbaje de simulare, variabilele independente pot fi modificate att n timp discret ct i continuu.
Sistemul va fi descris prin intermediul elementelor cu anumite atribute i variabile de stare, iar comportamentul
sistemului se va modela prin calcularea acestor variabile de stare cu o anumit perioad de timp, i a calculul
valorilor atributelor n momentul petrecerii anumitor evenimente.
Noiuni generale despre distribuii
n orice proces de producie exist o anumit rat de variaie natural care apare indiferent de modul n care a fost
proiectat sau implementat procesul. Aceast variaie este incontrolabil i apare din cauza diferitor cauze
nesemnificative i aceste variaii calitative se numesc variabile aliatoare i ele sunt referite ca un sistem stabil cu
cauze ntmpltoare. Atunci cnd aceste variaii sunt mici ele nu provoac nici un discomfort consumatorului, dar
cnd sunt mari trebuie de luat msuri pentru a fi neutralizate. Atunci cnd aceste variaii sunt duntoare ele se
numesc sistematice i pot veni de la una sau mai multe cauze posibile, iar procesele care opereaz n afara lor
spunem c sunt n afara controlului.
Definiie: Variabilele de selecie asupra variabilelor aliatoare uniforme se numesc numere aliatoare. Nu este
posibil producerea lor la calculator printr-un algoritm la calculator a secvenei de numere aliatoare ce s fie
uniform repartizate pe un interval i care s fie independent stohastic de aceea numerele produse cu calculatorul
se numesc numere pseudo-aliatoare i ele pot fi folosite ca numere aliatoare n cazul cnd au un comportament ct
mai aleatoriu iar algoritmul care produce numere aliatoare se numete generator de numere aliatoare.
Iternd un generator se poate obine o secven de numere aliatoare.
n controlul statistic se folosesc diferite modele probabilistice pe care le numim distribuii care caracterizeaz
variabile aliatoare i care sunt funcii de probabilitate i exprim probabilitatea c un eantion de dimensiunea n
s conin x pri necorespunztoare. Prin urmare distribuia de probabilitate este un mijloc de modelare a
proceselor. Pentru calculul acestor probabiliti se poate de definit o funcie f: [a,b] R care atribuie fiecrei
valori x
0
ce aparine intervalului [a,b] factorul de proporionalitate f(x
0
) corespunztor probabilitii ca variabila x
s ia valori n intervalul [x
0
, x
0
+dx]. Funcia f definit se numete funcie de densitate de probabilitate i ea
verific proprietile:
P1: f(x) 0 ; x[a,b]
P2: ()

- realizarea unui eveniment sigur.


1. Distribuia uniform. O variabil aliatoare este distribuit uniform dac poate lua aproape orice valoare
ntr-un interval n care variabila este uniform distribuit. Dac intervalul a i b sunt limitele intervalului, atunci
densitatea de probabilitate va fi:
() {


Valoarea medie a unei astfel de variabile este (a+b) / 2.
1. Distribuia exponenial. O clas aparte de probleme sunt acele care urmresc probabilitatea de apariie a
evenimentelor, de exemplu:
- probabilitatea c o main (xerox, imprimant) s nu s se strice ntr-o perioad de timp.
Distribuia exponenial se refer la distribuia de timp ntre evenimente independente care apar cu o rat
constant. O variabil continu x are o distribuie exponenial de parametrul > 0 dac are funcia de
probabilitate de forma : F(x) = 1 -

0. Respectiv prin derivare se poate obine densitatea de probabilitate :


f(x) =

, x 0 , iar valoarea medie unei astfel de variabile este 1/. Cea mai important proprietate de
distribuie exponenial este lipsa de memorie (Marcovian).
2. Distribuia geometric (distribuia Pascal). Aceast distribuie este echivalentul discret a distribuiei
exponenial f(x) = P(x = X) = p * q
x-1
unde p + q =1, x = 1,2, Variabila discret poate fi considerat ca index
ntr-o list posibil infinit de experimente independente unde P este probabilitatea de succes iar q este
probabilitatea de eec (q = 1-p). Funcia probabilitate F(x) = 1 q
x
iar media este =

.
3. Distribuia binominal. Fie un experiment i A un eveniment asociat acesteia care se realizeaz cu
probabilitatea P, iar evenimentul

cu probabilitatea q . Dac se efectueaz n probe independente i se noteaz


prin X numrul de realizri ale A (evenimentului) atunci : variabila X are o distribuie binominal de ordinul n
dac ia valorile 0,1,...,n cu probabilitatea P(x = K) =

.
P(x) este un numr pozitiv i reprezint posibilitatea c din n ncercri evenimentul A s se produc de K ori,
tiind c probabilitatea evenimentului A este constant n orice ncercare i este egal cu P. Una dintre cele mai
importante este distribuia Poisson i ea mai poart denumirea de legea evenimentelor rare.






























06.03.2014
n procesul modelrii a sistemului, se folosesc dispozitive n parte dar n compoziie cu mai multe dispozitive. De
exemplu:

Aceasta fiind o Q schema multicanal.
Dac canalele k
i
a diferitor dispozitive sunt legate paralel are loc o deservire multicanal a cererilor. Iar dac
dispozitivele i compoziiile lui paralele sunt legate succesiv, are loc o deservire multifazic. Se deosebesc Q
scheme deschise i nchise.
Deschise cnd fluxul de ieire nu poate nimeri la un element al schemei.
n teoria sistemelor de ateptare este de menionat urmtoarea terminologie n dependen de lungimea irului:
- sisteme cu pierderi (L
i
0)
- sistem cu ateptare ( L
i


aproximativ =

)
- sistem amestecat ( L
i
= n (const))
Alegerea cererilor sau clienilor se face dup 2 reguli: prioritatea relativ i prioritatea absolut.

5. A scheme (scheme universale) cea mai cunoscut metod pentru deservirea formal a proceselor de
funcionare a sistemelor i destinat pentru deservirea comparativ a sistemelor discret continuu deterministe i
stohastice. Are la baza sa noiunea de agreg (de la agregat). La deservirea agregativ un anumit complex este
descompus ntr-un numr finit de componente (subsisteme) pstrnd n acelai timp legturile dintre ele. n
calitate de element al schemei se utilizeaz un agregat, iar legtura dintre agregate se face printr-un vector de
conjugare R. Sub agregat vom nelege : A = < T, X, Y, Z, Z
(y)
, M>

T momentul de timp
X intrrile
Y ieiri
Z mulimea strilor
Z
(y)
o submulime din mulimea y(strile n momentul de emitere a semnalelor de ieire)
M mulimea parametrilor interni
Y
i
x
i
x
k

.
.
.
.
.
.
.
.
y
i

y
l

Avantajele : reprezentarea sistemului n formatul de A schem duc la unificarea nu numai algoritmilor de
simulare, dar i posibilitatea de a prelucra i analiza rezultatele modelului de simulare.
Sistemele de ateptare pentru servire cu o singur i mai multe staii
1. SA pentru deserviri cu o singur staie
2. SA pentru deserviri cu mai multe staii
Un fenomen de ateptare se caracterizeaz prin urmtoarele aspecte:
- existena cererilor sau a clienilor care intr n sistem ntr-un numr limitat sau nelimitat formnd firele de
ateptare.
- prezena pe traseul de ateptare a uneia sau mai multe staii de servire.
- corelaia strns dintre sosirea cererilor, formarea firelor de ateptare i deservirea cererilor din fir.
Pot exista unul sau mai multe fire paralele de ateptare i unul sau mai multe staii de servire. Servirea cererilor se
poate efectua n paralel, cascad, serie-paralel. Un deosebit interes l poart deservirea n paralel a cererilor, ele
fiind aplicate la modelarea memoriei calculatorului, transferului paralel de date, a sistemelor multiprocesor, etc.
Disciplina de deservire a cererilor poate fi FIFO, LIFO i conform prioritilor.
Reprezentarea schematic a unui sistem de ateptare (SA) cu o singur staie de servire:


Fluxul de intrare descrie modul n care sosesc cererile n sistem ce necesit o deservire. Rata (intensitatea) de
sosire i de servire a cererilor n sistem ntr-o unitate de timp se noteaz prin , .
Dac cererile sosite sufer o singur faz de deservire, prsind n continuare sistemul se numete sistem
monofazic.
Fie c avem un flux de cereri, de tip Poisson , avnd intensitatea de sosire , iar durata de servire T
ser
este
distribuit exponenial avnd parametrul . Durata medie de sosire a cererilor n sistem T
cer
=

.
Durata de servire nu depinde de lungimea firului de ateptare.
Teoria SA dispune de formule pentru calcularea caracteristicilor de baz a sistemelor descrise. Pentru cazul sosirii
i servirii Poissoniene n regim staionar pot fi calculai mai muli parametri ai sistemului modelat: numrul mediu
de cereri n firul de ateptare, numrul mediu de clieni (cereri) n sistem, durata medie de reinere a cererilor n
sistem i durata medie de ateptare.
numrul mediu de cereri n firul de ateptare se determin prin : L
q
=

( )



Utiliznd formula lui Little se poate de dedus c :

( )

( )



Durata medie de ateptare :




C
i
Y
i
Q
K
i
2. SA pentru deserviri cu mai multe staii
Reprezentarea :


Cererile sosesc ntr-un flux nelimitate de tip Poisson cu intensitatea , deservirea se efectueaz de prima staie
liber, toate staiile sunt identice, durata de servire are distribuie exponenial cu intensitatea .
Sistemele de ateptare multicanal pot fi de 2 feluri: cu sau fr pierderi. Sistemul va funciona fr blocri cnd
unde m nr de staii pentru servirea paralel.
Numrul mediu de staii ocupate se noteaz prin u, pe parcursul modelrii se transform n : u =

. Probabilitatea
se noteaz prin P
m
(u) . Probabilitatea c vor fi ocupate toate m staii poate fi determinat astfel:
1)

()

()

()



()

()
)


SA multicanal cu pierderi. n cazul aplicrii acestei scheme de aplicare, cererea care sosete n sistem n
cazul lipsei unei staii libere de servire poate s prseasc sistemul fr a fi deservit. n acest caz putem
estima urmtorii parametri:
1. Probabilitatea pierderii ale cererii
2. Numrul mediu de tranzacii pierdute ntr-o unitate de timp
Aceti 2 parametri!!!:




Y
i
Cercetarea SA cu servire prioritare

Formarea firelor de ateptare i deservirea cererilor n SA de regul se face dup principiul FIFO. n unele cazuri
n dependen de urgentarea deservirii cererii se necesit asigurarea unei alte discipline de formare a firului de
ateptare.
Definiie: Modelele n care disciplina de deservire dup alte criterii difer de disciplina intrrii cererilor n
sistem se numesc modele cu prioritate. Modele cu prioritate se mpart n 2 categorii: relativ i absolut.
SA cu prioritate relativ. Disciplina de deservire prioritar a fost introdus pentru micorarea duratei de aflare n
sistem a unei cereri cu prioritate nalt fapt ce duce inevitabil la mrirea duratei de aflare n sistem a altor cereri
cu o prioritate mai joas. Servirea conform prioritii relative presupune manifestarea prioritii numai n
momentul eliberrii staiei de deservire i alegerii cererii din firul de ateptare (cu prioritatea mai mare). Aceast
cerere acapareaz staia de deservire i decurge deservirea. Dac pe parcursul deservirii n sistem sosesc cereri cu
prioritatea mai mare procesul de deservire nu va fi ntrerupt, cererea ocupnd un loc n firul de ateptare.
Fie c avem un sistem cu ,,r fluxuri de intrare cu prioritile respectiv de la 1 pn la r. Fiecare flux k este de tip
Poisson cu intensitatea

( ) . Fluxul sumar este de asemenea de tip Poisson cu intensitatea

.
Vom presupune c durata de deservire a cererilor cu prioritatea k are o distribuie exponenial

. Respectiv
durata medie de deservire T
ser
=

. n cazul cnd cererea sosit n sistem, iar staia de deservire este ocupata,
atunci se formeaz r iruri de ateptare n care se plaseaz cereri cu prioritatea i(i=1r).

Sarcina exercitat de ctre fluxul k asupra sistemului

( )
u
k
suma sarcinilor dintre fluxul de intrare







A
R
B
I
T
R
U





Sisteme cu prioritate absolut. Prioritatea absolut se manifest prin ntreruperea staiei de deservire i ocuparea
acestuia de ctre cererea sosit n sistem cu prioritate mai nalt dect cererea n curs de deservire. Schematic:

*nu-i finisat schema*
Pot fi acceptate urmtoarele disciplini de deservire a cererilor ntrerupte:
1. Dup deservirea cererilor cu prioritate mai nalt continu deservirea cererii ntrerupte lundu-se n
consideraie timpul de la nceputul deservirii pn la ntrerupere .
2. Cererea a crei deservire a fost ntrerupt se pierde adic prsete sistemul rmnnd nedeservit
3. Deservirea cererii ntrerupte continu ignorndu-se timpul de deservire pn la ntreruperea acesteia.

Cele mai importante cmpuri din raportul standard generat de GPSS
Titlul standart al unui raport conine numele modelului care a fost simulat, data i ora de rulare a modelului care
este inclus automat.
START TIME END TIME BLOKS FACILITIES STORAGES
0.000 518.63 4 0 0
NAME VALUE
INTRV 10007.00
EXPON 10003.00
BLOCKS numrul de blocuri utilizate n model
FACILITIES - numrul total de dispozitive utilizate n model
STORAGES numrul total de dispozitive multicanal i memorii declarate n model
NAME numele atribuit de ctre utilizator n model
VALUE reprezint valoarea numeric atribuit modelului (sistemul atribuie numere ncepnd cu 10000)








A
R
B
I
T
R
U








14.03.2014
Compartimentul ce se refer la blocuri:
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
GENERATE G1 1 0 0
ADVENCE G0 0 0 0

LABEL reprezint numele alfa-numeric alocat blocului
LOC reprezint poziia numeric a blocului n model sau locaie
BLOCK TYPE reprezint denumirea blocului n GPSS (tipul blocului)
ENTRY COUNT numrul tranzaciilor ce au intrat n acest bloc de la ultima simulare a modelului sau de la
ultima aplicare a cartelei reset sau clear
CURRENT COUNT numrul de tranzacii n bloc la sfritul simulrii
RETRY - numrul de tranzacii care ateapt o condiie special n funcie de starea acestui bloc
Compartimentul ce se refer la dispozitive:
FACILITY ENTRIES UTIL. AVE.TIME AVAIL. OWNER PEND INTER RETRY DELAY
STATE1 51 0,95 95,4 0
FACILITY numrul su numele dispozitivului
ENTRIES reprezint numrul de intrri n dispozitivul dat (de cte ori dispozitivul a fost ocupat de blocurile
SEIZE(sau PREEMPT) de la ultima simulare sau de la ultima aplicare a cartelei CLEAR sau RESET
UTIL. factorul de utilizare a dispozitivului (coeficientul de utilizare) care se calculeaz pentru perioada de
modelare de la ultima simulare sau de la ultima aplicare a cartelei CLEAR sau RESET
AVE.TIME timpul mediu de ocupare a dispozitivului de ctre tranzacia pentru perioada de simulare sau de la
ultima simulare sau de la ultima aplicare a cartelei CLEAR sau RESET
AVAIL. (pot fi 2 valori sau 0 sau 1) disponibilitatea dispozitivului
OWNERnumrul de tranzacii ce a ocupat dispozitivul dat(dac e valoarea 0 atunci el nu a fost ocupat niciodat)
PEND numrul de tranzacii care ateapt s preia dispozitivul prin introducerea (regimul de ntrerupere)
utiliznd blocul PREEMPT
RETRY numrul de tranzacii care ateapt o condiie special n funcie de starea acestui dispozitiv
DELAY numrul de tranzacii care ateapt s ocupe dispozitivul (SEIZE)
INTER numrul tranzaciei curente care a ntrerupt acest dispozitiv (contorul acestor tranzacii se afl n lanul
ntreruperii)

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.COUNT. AVE.TIME AVE.(0) RETRY
FIR1

MAX coninutul maximal al firului de ateptare pe parcursul modelrii sau de la ultima aplicare a cartelei
CLEAR sau RESET
CONT. coninutul curent al firului de ateptare la sfritul modelrii
ENTRY reprezint contorul intrrilor (numrul total de intrri n firul de ateptare pe perioada de simulare)
ENTRY(0) (contorul intrrilor 0) numrul total de intrri n firul de ateptare cu timpul de reinere 0
AVE.COUNT. timpul mediul ponderat al coninutului firului de ateptare dea lungul perioadei de msurare
(produsul spaiu-timp de mprit la timpul perioadei de msurare)
AVE.TIME - timpul mediu de reinere a unei tranzacii n firul de ateptare pe perioada de modelare
AVE.(0) timpul mediul de aflare a unei tranzacii n firul de ateptare cu excepia intrrilor ,,0
RETRY - numrul de tranzacii care ateapt o condiie special n funcie de starea acestui dispozitiv

Echipamentele multicanal (STORAGES)
PROBLEME
S se modeleze urmtorul sistem n termenii GPSSS n care fluxul de cereri la intrare este de tip POISSON avnd
o intensitate de 0.1. Durata de deservire are o distribuie exponenial i are intensitatea de 0,2. S se determine
numrul mediu de cereri n firul de ateptare i durata medie de reinere a unei cereri n sistem.




SIMULATE
myF function RN1, C4
0, 1/0.1,2 /0.2,3/0.7,4
timp TABLE M1, 10,5,20
GENERATE 10,FN$myF
QUEUE sir1
SEIZE statie1
DEPART sir1
ADVANCE 5,FN$myF
RELEASE statie1
TABULATE timp
TERMINATE 1
END

S se simuleze un sistem de ateptare multicanal pentru serviri fr de pierderi ale cererilor :
m = 3 (numrul de servere)



SIMULATE
MYF3 BVARIABLE F1ANDF2ANDF3
F3 -> MYF function RN1, C4
0, 1/0.1,2 /0.2,3/0.7,4
timp TABLE M1, 10,5,20
GENERATE 10,FN$myF
QUEUE sir1
Test E BV$MYF3,0
SELECT NU 1,1,3
SEIZE statie1
DEPART sir1
ADVANCE 5,FN$myF
RELEASE statie1
TABULATE timp
TERMINATE 1
END

Cu pierderi trebuie de schimbat :
TABULATE timp
TERMINATE 0
TRANS SAVEVALUE 1+,1
TERMINATE1

S se simuleze un program ce ar simula urmtorul sistem:
prin intermediul unor metode statistice sa stabilit c sosirea clienilor la o banc n care lucreaz un
singur funcionar corespunztor cu un ghieu. Au media clieni pe lun iar timpul de servire a unui
client are o distribuie exponenial cu media zile . S se determine :
1. Probabilitatea c n sistemul de ateptare (SA) s nu existe nici un client la momentul dat.
2. Probabilitatea c n sistem exist 5 clieni la momentul dat
3. a) Numrul mediu de clieni n sistem la momentul T ,
b) numrul mediu de clieni care ateapt la momentul T
c) numrul mediu de clieni care sunt servii la momentul dat
d) numrul mediu de clieni servii efectiv ntr-o
unitate de timp.
4. timpul mediu de ateptare a unui client pn la servire i timpul mediu de ateptare n ntreg sistem.
Considerm noiunea de timp ziua. Deoarece timpul mediu de deservire a unui client este

=>
800 clieni n lun. 4x5 zile lucrtoare = 20 zile lucrtoare.

2
clieni pe zi


1. P
0
= 1 - = 0,2
2. P
5
=


3.a)

=> 80% din capacitatea de deservire din partea funcionarului


80% * 50
4)

()
()

( )

()










20.03.2014
Problem
n timpul zilei la un automat bancar sosesc n mediu 24 clieni/or (dac pe minut 0,4).
1. Care este nr mediu de clieni sosii n T = 5 minute?

2. Sosirile avnd distribuie Poisson, calculai probabilitatea c ntr-o perioad de 5 min s soseasc 0,1,2 sau 3
clieni.


pentru x = 0 clieni : 0,13
pentru x = 1 clieni : 0,27
pentru x = 2 clieni : 0,27
pentru x = 3 clieni : 0,18
3. Dac avem mai mult de 3 clieni n fiecare 5 minute, care este probabilitatea c vor aprea ntrzieri.
P(x > 3) = 1 P (x 3) = 1 0,86 = 0,14
Durata de deservire are o distribuie exponenial = 36 clieni /or.
( )


4. Care este probabilitatea c T
serv
1 min
P(t
serv
1) =


5. Care este Probabilitatea c T
serv
2 min
P(t
serv
2) =


2

6. Care este probabilitatea c t
serv
> 2 min
P(t
serv
> 2) =


SA M/M/1
7. Care este probabilitatea s nu existe clieni n SA?


8. Numrul mediu de clieni n rnd

2


9.


10.


11. timpul mediu petrecut de un client n sistem


12. probabilitatea c serverul s fie ocupat?


13. probabilitatea s fie n clieni n SA?

()



14. Calculai probabilitatea s avem 0,1,2 sau 3 clieni n SA
n = 0 => 0,33
n = 1 => 0,22
n = 2 => 0,15
n = 3 => 0,098
15. probabilitatea c n SA s fie mai muli de 3 clieni ?
P(n > 3) = 1 P(n 3) = 1- 0,798=0,202

Problem:
ntr-o bibliotec universitar, la biroul de informaii sosesc n mediu 10 cititori/or. Durata de deservire are o
distribuie exponenial i rata de servire este de 12 cereri de asisten realizate/or.

1. Care este probabilitatea s nu existe cereri de asisten n SA?


2. Care este numrul mediu de cereri ce ateapt s fie rezolvate?

()

3. T
mediu
de ateptare?


4. T
med
pe care un cititor l petrece n biroul de informaie?


5. Probabilitatea c un nou venit s atepte pentru a fi ajutat


Problem:
La cabinetul unui stomatolog rata sosirii pacienilor este 2,8 pacieni/or. Doctorul poate trata n medie 3
pacieni/or. Studiind timpul de ateptare, un pacient ateapt n mediu 30 minute nainte de a fi consultat de
medic (T
q
= 30 min).
T
q
= 30 min


1. Care este numrul mediu de pacieni n SA?


2. Dac un pacient intra n SA la 10:10 la ce or va prsi cabinetul?

minute, deci va prsi la ora 11:00


Problem
Un birou de taxe i impozite activeaz 2 ghiee de lucru cu publicul. Rata medie este 14 persoane/or. Rata de
deservire = 10 clieni/or pentru fiecare ghieu (k = 2)
1. Probabilitatea c exist clieni n SA ?

)

2. Numrul mediu de clieni din rnd


( )( )
2



3. Timpul mediu

pe care un client l petrece n coada?


4. Durata medie ce petrece un client n SA?


5. Probabilitatea de ateptare

)
2
(


6. Probabilitatea s fie n clieni n SA?





21.03.2014
Introducerea n GPSS
Categorii Tipul
1 Dinamic Tranzacii
2 Operaional Blocuri(cartele)
3 Aparataj Dispozitive; EM chei logice
4 Calcul Variabile; funcii
5 Statistic FA; Tabele
6 Memorie Celule de memorie; matrice de celule
7 Grupe Lanuri; grupuri

Acest tabel reprezint categoriile i tipurile
Orice sistem poate fi descris prin intermediul unui numr determinat de elemente standard, aa zise obiecte.
Tranzaciile reprezint obiectele categoriei dinamice i ele sunt pri componente ale fluxurilor cercetate ce
parcurg structura fixat a modelului ndeplinind un ir de operaii indicate. Obiectele categoriei operaionale sunt
blocurile ce redau logica de funcionare a modelului determinnd totodat i calea de parcurgere a tranzaciilor
prin obiectele categoriei de aparataj. Obiectele categoriei de aparataj reprezint nite elemente abstracte prin
intermediul crora este alctuit modelul sistemului real. Categoria de calcul este destinat pentru descrierea
anumitor situaii cnd legtura dintre componentele sistemului modelat poate fi uor descris prin intermediul
expresiilor matematice.
Categoria statistic. Obiectele de categoria statistic sunt destinate pentru culegerea statisticii finale i ele nu
influeneaz la funcionarea modelului (ns indirect prin intermediul parametrilor lor poate s influeneze asupra
funcionrii.
Categoria de memorie este destinat pentru nscrierea valorii necesare n celule sau matrice de celule.
GPSS-ul permite n caz de necesitate de a include tranzaciile n liste i grupuri fiind posibile operaiile de grup
asupra tranzaciilor din liste. Pentru descrierea structurii sistemului se folosete i reprezentarea grafic a
blocurilor.
Aciunea descrise la un bloc se ndeplinete doar la momentul intrrii tranzaciei n acest bloc.
Tranzaciile n GPSS pot avea pn la 100 de parametri i 128 nivele de prioritate. Respectiv fiecare tranzacie
i are numrul su de identificare care nu este accesibil pentru utilizator la fel ca i timpul de generare a
tranzaciei.
Programul ce dirijeaz cu generarea tranzaciilor, schimbarea strilor obiectelor i culegerea statisticii finale se
numete simulator. Orice schimbare de stare a sistemului se numete eveniment. Simulatorul fixeaz timpul de
apariie a evenimentelor i le prelucreaz dup acest timp.
Pentru meninerea corect a consecutivitilor evenimentelor n timp, n sistemul modelat funcioneaz i
ceasul de sistem care indic timpul de modelare. Indicaiile ceasului n orice moment de timp se numete timpul
absolut a modelului i acest timp absolut nu poate fi modificat de ctre utilizator. La fel existe i timpul relativ
care poate fi modificat prin intermediul unor cartele speciale. Deoarece GPSS lucreaz cu numere ntregi,
respectiv i timpul modelului poate primi doar valori ntregi.
Unitatea de timp este aleas de utilizator, simulatorul lucrnd ns cu timpul modelului.
Simulatorul nu analizeaz starea sistemului la fiecare moment de timp, dar schimb valoarea timpului absolut
egalndu-l cu timpul celui mai apropiat eveniment de unde rezult timpul de modelare nu depinde de intervale de
timp din sistemul real dar depinde doar de numrul de evenimente prelucrate.
Lanurile n GPSS
n GPSS tranzaciile pot s se afl n cteva tipuri de lanuri. Exist 5 tipuri de lanuri de evenimente:
1) lanul evenimentelor curente n care se afl tranzaciile cu timpul evenimentului egal cu timpul modelului,
iar deservirea tranzaciilor n acest lan are loc conform prioritii tranzaciei (dac sunt mai multe tranzacii
de aceeai clas, se distribuie conform timpului de apariie a tranzaciei).
2) lanul evenimentelor viitoare n care sunt incluse tranzaciile ale cror timp de declanare este mai mare
dect timpul curent al modelului, iar ordinea de aranjare a acestui lan este conform timpului de declanare a
tranzaciei (din lanurile evenimentelor viitoare, tranzaciile trec n lanurile evenimentelor curente)
3) lanul ntreruperilor n care se afl tranzaciile a cror timp de deservire a fost ntrerupt, i ele sunt incluse
n model numai dup anularea ntreruperilor.
4) lanul tranzaciilor n pereche n acest lan sunt incluse tranzaciile ale cror parcurgere de mai departe este
imposibil din cauza lipsei uneia sau mai multe tranzacii.
5) lanul utilizatorului n care sunt incluse tranzaciile care sunt extrase din model de ctre utilizator.

Sintaxe
Pentru a descrie un program n GPSS se utilizeaz literele de la A Z, cifrele 0 9, i se utilizeaz 3 cmpuri :
1 2 6 8 18 19 71
Eticheta Blocuri sau Cartele Operanzi

Formatul numerelor poate fi cuvnt (reprezint 4 octei 2
31
1) sau semi-cuvnt (2 octei 2
15
1). n GPSS
fiecare obiect dispune de un ir de atribute care descriu starea lui la momentul dat. Aceste atribute pot avea valori
logice i numerice, iar atributele care sunt accesibile pentru utilizator se numesc standarte.
Atribute numerice standart (ANS) sunt reprezentate printr-o tabel aparte (pag.59, anexa 1 ndrumarul de lab.).
Cartele n GPSS
Cartelele de control n GPSS se utilizeaz pentru dirijarea procesului de modelare.
Cartele:
1) SIMULATE indic simulatorului n caz de necesitate de a se rula modelul. Sunt permise completarea a 2
forme a acestei cartele: SIMULATE i SIMULATE M, unde M reprezint numrul de minute a timpului de
modelare. Ex: SIMULATE 2 (2 minute).
2) START A,B,C,D Cmpul A indic simulatorului la valoarea care se atribuie contorului determinrii.
procesul de simulare se finiseaz atunci cnd acest contor are valoarea mai mic sau egal ca 0. Contorul de
terminri este decrementat cu valoarea care este indicat n cmpul A, a blocului TERMINATE de ex:
TERMINATE 1
START 100 (cnd 100 de tranzacii vor trece prin blocul TERMINATE, procesul se va stopa).
Cmpul B este utilizat pentru extragerea statisticii finale. Dac n cmpul B este indicat mnemonica NP atunci
nu se va extrage statistica finala.
Cmpul C este folosit pentru primirea statisticii intermediare, n el se indic intervalul de extragere a statisticii.
Coninutul cmpului C se decrementeaz sincron cu decrementarea contorului TERMINATE.
START 200,,5 la fiecare 5 intrri se vor forma cte un raport (se vor forma 40 rapoarte n cazul dat)
Cmpul D indic la necesitatea de a extrage statistica lanului de evenimente curente, lanul evenimentelor
viitoare, lanul ntreruperilor i utilizatorului.



28.03.2014
Problema:
S se elaboreze un program ce ar modela procesul de generare a 500 de piese care sosesc n fiecare 11 5 ut
distribuite uniform. Piesele sunt prelucrate de un muncitor n decurs de 10 7 duratele la fel avnd o distribuie
uniform. Dup servirea a 300 de piese se necesit de prezentat statistica cu un interval de 25 de piese.

300
Simulate
generate 11,5
queue fir
seize sd
depart fir
advance 10,7
release sd
terminate 1
start 275,np
start 225,,25

pentru:

simulate staie
Canale BVariable
F1andF2
time table m1,0,10,20
generate 11,5
queue fir
test E 1,2,0
select nu 1,1,2
seize sd
depart fir
advance 10,7
release sd
tabulate time
terminate 1


3) CLEAR la aplicarea acestei cartele se anuleaz ntreaga statistic i din model se elimin toate tranzaciile,
timpul modelului devenind egal cu 0 (C1 = 0). De asemenea sunt vidate toate celulele i matricele
de celule. Este posibil utilizarea acestei cartele n regim selectiv indicnd n cmpul operanzilor
obiectele parametrii crora trebuie s fie salvai. (aceast cartel nu acioneaz asupra generatoarelor
de numere aliatoare)
ex: CLEAR X1,X10 celulele X1 i X10 s nu fie vidate(vide).



fir
sd


fir
sd

sd2
4) JOB aceast cartel se introduce ntre 2 modele ale unui utilizator. Ea ndeplinete aceeai funcie ca i
CLEAR numai c ea mai terge din memorie descrierea modelului i permite rularea a mai multor
modele. Comparativ cu CLEAR ea instaleaz generatoarele de numere aliatoare n starea iniial.
5) END indic simulatorului de sfritul problemei introduse.

Metodele de adresare n GPSS
Exist 2 tipuri de adresri: directe i indirecte.
Adresarea direct adresarea la un obiect concret. Ea este posibil la adresarea la numrul sau numele obiectului.
De ex: SEIZE 1. (ocup dispozitivul cu nr)
La adresarea unui atribut numeric standart numele lui se divizeaz prin $. (de ex. FN$EXP)
Not: pentru Atributele numerice standart separatorul nu se indic (de ex. FN1)
Adresarea indirect se folosete atunci cnd se necesit adresarea la un bloc fa de alt bloc cu o etichet.
Evident c se permite i adresarea la blocul curent. (de ex. Transfer ,#+3 transferul
tranzaciei din blocul curent n al treilea tranzacie ce urmeaz).
n GPSS mai este posibil adresarea obiectelor cu ajutorul parametrilor tranzaciilor. n acest caz n loc de numele
sau numrul obiectului se va indica (P
j
sau #j)
Pentru adresarea la parametrii tranzaciei se folosesc urmtoarele indicaii:
{
()
()
()

pentru primul (1) caz adresarea se face la parametrul cu numrul n al tranzacie. n cazul (2) adresarea se face la
parametrul cu numrul indicat n valoarea parametrului n. Ex:
{



1) SEIZE P5
2) SEIZE P*5

n GPSS exist 3 tipuri de variabile: aritmetice, aritmetice cu virgul flotante, booleene.
Variabilele aritmetice reprezint o reuniune aritmetic ale valorilor diferitor MS. Dup realizarea fiecrei operaii
este eliminat partea fracionar din rezultat. Descrierea variabilei se face prin intermediul unei cartele speciale cu
urmtorul format:
<eticheta> VARIABLE A,B,
Adresarea la variabile aritmetice se efectueaz prin ANS V
j
.
Exemplu:
VAR3 VARIABLE Q5+3+FN$LIRE
valoarea variabilei VAR3 este calculat astfel : lungimea curent a firului 5 plus 3 plus valoarea funciei LIRE.
Adresarea la VAR3 : V$VAR3
+ plus
- minus
# nmulire
/ mprire
@ mprirea dupa modul

Variabile aritmetice cu virgul flotant sunt analogice cu cele aritmetice cu excepia c naintea ndeplinirii
operaiei i calculrii expresiei, partea fracionar nu se omite, ea se omite doar la valoarea final. Adresarea la
variabile aritmetice cu virgul flotant se efectueaz prin ANS V
j
doar c trebuie s difere numele fa de
variabilele aritmetice.

VAR2 VARIABLE 10#(11/3)
VAR5 FVARIABLE 10#(11/3)

*VAR2 = 30
*VAR5 = 36
mprirea dup modul este imposibil.

Variabilele booleene reprezint o expresie logic alctuite din diferite ANS-uri. Descrierea este analogic cu
variabilele aritmetice cu excepia etichetei BVARIABLE.
<eticheta> BVARIABLE <exp.logica>
La prelucrarea variabilei booleene simulatorul verific 1 sau mai multe condiii. Rezultatul permanent poate fi 0
sau 1. Exist posibilitatea de utilizare a 3 operatori pentru acest tip de variabile:
- logici
- condiionali
- booleene

Operatorii logici sunt legai cu strile obiectelor n GPSS.























Log BVARIABLE SF#MEM
Variabila Log va avea valoarea 1 atunci cnd toate canalele echipamentului MEM vor fi ocupate i 0 invers.



























Obiectele
categorie aparataj
Mnemonica Descriere


Dispozitive
FU
n
(F
n
) 1 ocupat
0 - liber
FNU
n
1 liber
0 - ocupat
FI
n
1 prelucreaz o ntrerupere
0 n caz contrar




EM


SF
n
1 echipamentul este ocupat (nu sunt canale libere)
0 cel puin un canal este liber
SNF
n
1 invers ca la SF
n

0 invers ca la SF
n
SE
n
1 echipamentul este vid
0 exist cel puin un canal ocupat
SNE
n
1 invers ca la SE
n

0 invers ca la SE
n

Chei Logice
L R
n


1 cheia logic este resetat
0 cheia logic nu este resetat
LS
n
1 cheia logic nu este resetat
0 cheia logic este resetat
15.05.2014
STORAGES:

Dac sunt mai multe canale cu aceeai mrime, ele se divizeaz prin cratim. Exist 2 blocuri ce funcioneaz cu
echipamentul multicanal:
- blocul ENTER A,B : simuleaz ocuparea a unuia sau mai multe canale la intrarea
tranzaciei n acest bloc. La neajunsul de canale libere, are
proprietatea de a se bloca. n cmpul A se indic numele sau
numrul EM (echipamentului multicanal), iar n Cmpul B se
indic numrul de canale pe care le ocup tranzacia la intrarea n
acest bloc (implicit se ocup un singur canal). Conine
urmtoarele ANS : C, ANSj, ANS#n, #n, Str.
ENTER #5,10 a ocupa 10 canale din echipamentul multicanal
indicat n parametrul 5 (adresare indirect)
- blocul LEAVE A,B: (blocul LEAVE i ENTER lucreaz mpreun, trebuie s fie
ambele). Se utilizeaz pentru eliberarea unui numr dat de canale.
Parametrii ca i la ENTER. Cmpurile operanzilor A i B analogic
ca i la ENTER. Acest bloc nu refuz niciodat intrarea
tranzaciei. Implicit elibereaz un canal. Dac coninutul cmpului
B este mai mare dect coninutul curent a EM (echipamentului
multicanal) atunci va aprea eroare. Coninutul curent al
echipamentului multicanal se micoreaz cu mrimea din cmpul
B la intrarea tranzaciei n blocul LEAVE S
j
= S
j
[B].
LEAVE 5 a elibera un canal din EM cu numrul 5
LEAVE #5,10 a ocupa 10 canale din echipamentul multicanal
indicat n parametrul 5.

Blocurile din categoria statistic
Queues obiectele de tip ir de ateptare sau coad sunt utilizate pentru culegerea statisticii despre firele de
ateptare ce apar n sistemul modelat n rezultatele diferitor condiii de blocare. n statistica extras de simulator
putem distinge:
- lungimea medie a firului de ateptare
- numrul de intrri n firul de ateptare
- numrul de intrri fr reineri
- timpul mediu de reinere a unei tranzacii n firul de ateptare
- timpul mediu de reinere a unei tranzacii, lund n consideraii cele fr de pierderi
- lungimea curent i lungimea maximal a firului de ateptare.

Queue A, B : (Atribute A: C, ANSj, ANS#n, #n, Str, B: C, ANSj, ANS#n, #n) blocul Queue e utilizat
pentru nregistrarea intrrii a tranzaciei n firul ateptat. n cmpul A se indic numrul sau numele firului de
ateptare, n cmpul B se indic numrul de locuri sau de uniti pe care le ocup tranzacia n firul de ateptare.
Implicit firul se incrimenteaz cu o unitate. n paralel cu Queue lucreaz blocul DEPART.
DEPART A, B se utilizeaz pentru decrementarea coninutului firului de ateptare.
A (C, ANSj, ANS#n, #n, Str) numele sau numrul firului de ateptare.
B (C, ANSj, ANS#n, #n) numrul de uniti care se decrementeaz
TABULATE - din aceast categorie noi estimm informaia despre tabele. Tabelele se utilizeaz pentru
primirea funciilor de repartiie a argumentului dat care poate fi oricare atribut numeric standard. Statistica de
baz reprezentat de tabele conine urmtoarea:
- suma valorii argumentului introdus n tabel dup ultima activare a cartelei CLEAR sau RESET
- numrul de intrri n tabela
- valoarea medie a argumentului, care se calculeaz ca suma tuturor valorilor, mprit
la numrul de intrri.
- devierea ptratic medie a argumentului
- valoarea medie a argumentului n ultimul interval
Intervalul Tabelei n statistic const din urmtoarea:
- limita de sus a intervalului
- numrul de nimeriri n interval
- procentajul de nimerire n interval
- numrul sumar de valori mai mici sau egale ca limita de sus a intervalului
- numrul sumar de valori mai mari ca limita de sus a intervalului

<eticheta> TABEL A, B, C, D : n cmpul B,C,D sunt constante, iar n cmpul A: C,
ANSj, ANS#n, #n.
A - se indic argumentul tabelei
B indic limita de jos a intervalului
C - pasul
D numrul de pai
E (se utilizeaz pentru regimul RT) n cmpul E se indic intervalul de tabulare.
Tabelele pot funciona n regim de diferen care se determin prin semnul minus dup argument. n acest caz n
tabel nu se va indica valoarea absolut a argumentului, dar diferena dintre valoarea curent i cea precedent. La
prima nimerire n interval, n tabel nu se include nimic, se memoreaz doar valoare argumentului. Exist 3
regimuri de funcionare a tabelelor:
- IA
- RT
- QTABLE
Pentru utilizarea acestor regimuri, n cmpul argumentului se nscrie n mnemonica corespunztoare.
16.05.2014

TABULATE A, B (A: C, ANSj, ANS#n, #n; B: C, ANSj, ANS#n, #n) Valoarea argumentului tabelei se
introduce de fiecare dat cnd tranzacia intr n blocul TABULATE. n cmpul A se indic numrul sau numele
tabelei. n cmpul B se indic numrul de uniti care va incrementa contorul de nimerire n intervalul
argumentului (implicit el este 1). Pentru funcionarea tabelelor exist 3 regimuri speciale:
- IA (Inter Arival) : se utilizeaz pentru evaluarea distribuiei intervalelor de timp dintre
tranzacii ntr-un punct anumit al modelului i n acest caz la
nimerirea tranzaciei n blocul TABULATE este fixat timpul absolut
al modelului i din el se scade timpul de sosire a tranzaciei
precedente iar rezultatul primit se include n tabel.
- Rate (RT): este folosit pentru evaluarea distribuiei intensitii tranzaciilor ntr-un
punct anumit al modelului. Acest regim necesit includerea cmpului E la
cartela TABLE, care ne va indica intervalul de timp n care se va msura
intensitatea sau rata.
- QTable : se utilizeaz cnd se permite de a evalua regula de distribuire a timpului de
aflare a tranzaciei n firul de ateptare.

Blocurile ce schimb direcia de micare a tranzaciilor

TRANSFER A, B, C blocul TRANSFER este mijlocul de baz pentru schimbul direciei a tranzaciilor. Are
posibilitatea de folosire a 9 regimuri care se indic n cmpul A al blocului. n cmpul B i C se indic blocurile
posibile de transfer al tranzaciilor.
Nr. Regimul Cmpul A
1 Necondiionat Vid
2 Static .nr de 3 cifre
3 BOTH BOTH
4 ALL ALL
5 PICK PICK
6 Funcie FN
7 Parametru P
8 Subprogram SBR
9 SIM SIM




Regimuri:
Necondiionat tranzacia care intr n blocul TRANSFER va fi transmis n blocul indicat n cmpul B. Cmpul
A este vid, C nu se utilizeaz. Ex: TRANSFER ,NEXT
Static valoarea argumentului care urmeaz dup punct (maximum 3 cifre) indic ce parte din tranzacii vor fi
transferate n blocul indicat n cmpul C, cealalt parte din tranzacii vor fi transferate n blocul indicat n
cmpul B (dac cmpul B este vid atunci acea parte de tranzacii se transfer n urmtorul bloc dup
transfer). Pentru acest regim este posibil adresarea indirect (#n).
Ex: TRANSFER .33,,PRIM

PRIM
(se scade din 100, deci 33% se duc n blocul PRIM, 100-33=77 se duc n urmtorul cmp dup TRANSFER)
BOTH - Fiecare tranzacie care intr n blocul TRANSFER va ncerca de a trece n blocul indicat n cmpul B.
Dac ncercarea eueaz, se produce o ncercare s intre n blocul indicat n cmpul C. n caz de ambele
refuzuri tranzacia rmne n TRANSFER i va ncerca s ias din el dup schimbarea urmtoare a
cmpului model.
ALL - La utilizarea acestui regim nu se admite utilizarea adresrii indirecte i a atributelor
numerice standard.


23.05.2014
PICK - din consecutivitatea blocurilor cu numerele N, N+1,, N+i, M n mod aleatoriu se alege blocul unde se
transfer tranzacia. Evident c N este numrul blocului din cmpul B iar M este numrul blocului din cmpul C.
Not: tranzacia va ncerca s treac numai n blocul selectat. n caz de refuz n acest bloc tranzacia rmne n
blocul TRANSFER pn la deblocarea direciei.
FUNCIE n acest regim simulatorul calculeaz valoarea funciei numele creia este indicat n cmpul B i
arunc partea ei fracionar iar pentru a determina numrul blocului unde se va transfera tranzacia valoarea
obinut se adun la valoarea indicat n cmpul C. n caz de blocare tranzacia rmne n blocul TRANSFER.
PARAMETRU n cmpul A se scrie P iar valoarea argumentului din cmpul B se va interpreta ca numrul
parametrului ce intr n acest bloc i pentru determinarea numrul blocului unde se va transfera tranzacia se va
aduna acest parametru cu argumentul din cmpul C.
SUBPROGRAM tranzacia care intr n acest bloc va ncerca s treac n blocul indicat n cmpul B. Valoarea
cmpului C se va interpreta ca numr al parametrului n care automat se va nscrie numrul de ordine a blocului
TRANSFER.
SIM n acest regim micarea tranzaciei va fi ntrerupt din cauza conectrii indicatorului de reinere care se va
afla n stare conectat pn la ndeplinirea anumitor condiii.

LOOP A, B (A: ANSj, ANS#n, #n, C. B: C, ANSj, ANS#n, #n, Str) acest bloc se utilizeaz pentru organizarea
buclelor n GPSS. n calitate de contor al numrului de cicluri poate fi utilizat orice parametru al
tranzaciei. Simulatorul calculeaz valoarea parametrilor tranzaciei care este indicat n cmpul A.
Aceast valoare se decrementeaz cu o unitate i este atribuit din nou parametrului dat. Astfel
tranzacia este transmis blocului indicat n cmpul B numai n cazul cnd aceast valoare este
diferit de 0, n caz contrar el trece n urmtorul bloc.

TEST cond A, B, C (cond: E, NE, G, GE, L, LE A: C, ANSj, ANS#n, #n B: C, ANSj, ANS#n, #n
C: C, ANSj, ANS#n, #n, Str). blocul TEST indic numrul blocului urmtor pentru transferul tranzaciei n urma
ndeplinirii/nendeplinirii anumitor condiii. Acest bloc analizeaz relaia algebric dintre 2 ANS-uri care sunt
indicate n cmpul A i B. Relaia se red prin mnemonica E, NE, G, GE, L, LE. Acest bloc poate funciona n 2
regimuri: cu intrare condiionat i necondiionat. n regimul cu intrare necondiionat este prezent cmpul C,
dac condiia se ndeplinete, tranzacia trece n urmtorul bloc dup TEST, n caz contrar n blocul indicat n
cmpul C. n regimul cu intrare condiionat cmpul C este vid. Tranzacia nu poate intra n blocul TEST pn cnd
nu se ndeplinete condiia dat. Dac condiia se ndeplinete tranzacia va trece n blocul ce urmeaz dup
blocul TEST.

GATE cond A, B acest bloc ca i blocul TEST permite schimbarea direciei de micare a tranzaciilor n
dependen de 12 atribute logice (relaii) care se scriu implicit dup GATE. Numrul obiectului ce se verific se
indic n cmpul A i la fel funcioneaz n 2 regimuri. Adresa alternativ de transfer se indic n cmpul B.


Mnemonica atributelor logice
1. Dispozitive
U use (dispozitiv ocupat)
NU not use (dispozitiv liber)
I - dispozitiv ntrerupt
NI dispozitiv ne ntrerupt

2. EM
SE echipamentul multicanal este vid (S
j
= 0)
SNE echipamentul multicanal nu este vid (R
j
= 0)
SF echipamentul multicanal este plin
SNF echipamentul multicanal nu este plin
3. Chei logice
LR cheia este resetat
LS cheia este setat
4. Tranzacii
M n blocul indicat n cmpul A se afl o tranzacie n stare de sincronizare care aparine aceeai familii ca i
tranzacia care vrea s intre n acest bloc.
NM n blocul indicat n cmpul B nu sunt tranzacii n stare de sincronizare i nici din aceeai familii ca i
tranzacia care vine.


29.05.2014
Singuri de studiat: ASSIGN, INDEX, MARK, ASSEMBLE, SPLIT, GATHER. LANUL
UTILIZATORULUI (POATE NIMERI LA EXAMEN)

Blocurile ce modific parametrii tranzaciilor

COUNT cond A, B, C, D, E (n toate cmpurile ANS, ANS#n, #n) acest bloc permite utilizatorului de a enumera
obiectele care satisfac o anumit condiie. Cmpul A indic numrul parametrului tranzaciei n care se
organizeaz un numrtor de obiecte ce satisfac condiia dat. Cmpurile B, C determin intervalul de scanare a
obiectelor. B limita de jos, C limita de sus. n cmpul D se folosesc operatorii condiionali care se scriu
nemijlocit dup blocul COUNT. n acest caz atributul numeric standard din cmpul D se compar cu atributul
numeric standard din cmpul E. Respectiv n cmpul E se indic un atribut numeric standard (ANS) al obiectelor
cercetate care n continuare se compar cu cel din D. Dac se utilizeaz operatorii logici atunci cmpul D i E sunt
vide.

SELECT cond A, B, C, D, E, F (A,B,C,D,E: C, ANS, ANS#n, #n, F: C, ANS#n, ANSj, #n, Str) acest bloc
funcioneaz ca i blocul COUNT cu excepia c n loc de a numra obiectele care satisfac o anumit condiie
blocul SELECT selecteaz primul din ele scriind numrul acestuia n parametrul indicat n cmpul A. Cmpurile
de la A la E sunt analogice ca i la COUNT. Cmpul F permite ieirea alternativ. n caz c cmpul F este vid
tranzacia totdeauna va trece n cmpul urmtor.

Familiile de tranzacii fac parte din categoriile de grupare, ele asigurnd o prelucrare specific pentru anumite
grupuri de tranzacie. Simulatorul urmrete componena acestor familii, respectiv micornd sau mrind numrul
membrelor. Fiecare tranzacie introdus n model iniial este privit drept o familie cu un singur membru respectiv
fiecare tranzacie poate fi membr doar a unei singure familii. Blocul SELECT spre deosebire de blocul COUNT
mai poate funciona i n regim de minim sau maxim. n acest caz sunt selectate acele obiecte atributele cror sunt
minimale sau maximale i n acest caz cmpul D i F sunt vide.


Blocul PRIORITY A, B (A: C, ANSj, ANS#n, #n B: Buffer) acest bloc este utilizat pentru atribuirea
prioritii necesare tranzaciei. Prioritatea influeneaz la starea tranzaciei n lanurile evenimentelor curente, la
ordinea de prelucrare a lui respectiv i la poziia n firul de ateptare. Prioritatea iniial a tranzaciei se instaleaz
n blocul GENERATE n cmpul E. n blocul PRIORITY prioritatea necesar se indic n cmpul A. Dac cmpul
B este vid simulatorul va schimba prioritatea tranzaciei i l va mica mai departe pn la oprirea lui iar dac n
cmpul lui st indicat Buffer atunci ndat dup schimbarea prioritii simulatorul va schimba i lanurile
evenimentelor curente.

Un singur frizer la care clienii sosesc
Sosire = 102
Deservire = 12
Simularea timp de 8 ore



SIMULATE 480 (8 ore)
Generate 10,2
QUEUE Fir1
SEIZE stat1
DEPART Fir1
Advance 12,22
RELEASE stat1
TERMINATE 1
END

plus:
s se introduc datele n tabel TIMP3
SIMULATE 480
TIMP3 Table M1, 0,10, 100
GENERATE 10,2
QUEUE Fir1
SEIZE stat1
DEPART Fir1
Advance 12,2
RELEASE stat1
TABULATE TIMP3
TERMINATE 1
END

S se simuleze sistemul nu pentru 8 ore dar pentru trecerea a 200 clieni:
SIMULATE
TIMP3 Table M1, 0,10, 100
GENERATE 10,2
QUEUE Fir1
SEIZE stat1
DEPART Fir1
Advance 12,2
RELEASE stat1
TABULATE TIMP3
TERMINATE 1
START 200


Dac se cere c dup trecerea a 100 clieni s se afieze statistica final cu pasul 10:
SIMULATE
TIMP3 Table M1, 0,10, 100
GENERATE 10,2
QUEUE Fir1
SEIZE stat1
DEPART Fir1
Advance 12,2
In OUT
RELEASE stat1
TABULATE TIMP3
TERMINATE 1
START 200
START 90, np (not print)
START 110, ,10 (200-90)


S se modeleze lucru la o banc n care activeaz 3 ghiee. Serviciul se realizeaz dup FIFO.
m = 3 (s1,s2,s3)
deservire = 10
sosire = 4
Casier 2

SIMULATE
Ghiseu Storages 3 ( 3 ghiee)
Generate 4,1
QUEUE FA1
Enter Ghiseu
Depart FA1
Advance 10,2
Leave Ghiseu
QUEUE FA2
SEIZE Casier
Depart FA2
Advanced 2
Release Casier
Terminate 1
END









ntrebare pentru examen:
Blocul ENTER simuleaz ocuparea a unuia sau mai multe canale la intrarea
tranzaciei n acest bloc conine urmtoarele ANS : C, ANSj, ANS#n, #n, Str.

S1
S2 S3
G
FA1
FA2
Casier

S-ar putea să vă placă și