Retele Petri Colorate

30
Curs 6

Transcript of Retele Petri Colorate

Page 1: Retele Petri Colorate

Curs 6

Page 2: Retele Petri Colorate

Retele Petri ColorateO retea Petri colorata RC este un sextuplet

RC = < P, T, IN, OUT, M0, C >in care:

P = multimea pozitiilorT = multimea tranzitiilorIN si OUT sunt respectiv functiile asociate culorilor de executie a tranzitiilorC = { C1, C2, ...} reprezinta multimea culorilorM0 = marcajul initial al retelei

Page 3: Retele Petri Colorate

Retele Petri ColorateObs. O retea Petri colorata se deosebeste de o retea Petri generalizata prin multimea culorilor care se asociazaretelei.2. O culoare Ck = <ck1, ck2, ..., ckn>, este un n‐tuplu care poate transmite, de obicei in combinatia pozitie‐culoare, informatii mai complexe decat marcajele retelelor Petri generalizate. O culoare poate fi interpretata ca un identificator pentrumarcaje (jetoane), permitând diferentierea acestora prinintermediul unor informatii complementare. Notatie:  o culoare poate fi reprezentata fie prin intregul n‐tuplu, fie doar prin identificatorul acestuia ‐ Ck.Daca n = 1, atunci culoarea se numeste simpla. 

Page 4: Retele Petri Colorate

Retele Petri ColorateExemplu: pentru o retea Petri care modeleaza un sistem de fabricatie flexibila, o culoare 

C1=<r, p, m> poate sa contina informatii despre:tipul unui reper de prelucrat, pozitia sa intr‐o coada de asteptare  masina pe care urmeaza sa fie prelucrat.

Page 5: Retele Petri Colorate

Retele Petri ColorateObs. Utilizarea culorilor permite simplificarea structurilor grafice ale retelelor Petri, pastrând constant (sau chiar imbogatind) continutulinformational al acestora.

Obs. In anumite cazuri, pentru anumite pozitii ale retelei nu mai estenecesara (sau posibila) diferentierea marcajelor (jetoanelor), situatie in care se foloseste culoarea neutra, notata <•>.

Obs.. Exista mai multe nivele de “colorare” ale retelelor Petri generalizate, ducând pâna la inlocuirea unei retele intregi printr‐unacompusa dintr‐o pozitie si o tranzitie.

De regula insa, pentru a pastra caracterul intuitiv al retelelor si ca atareeficienta lor ca instrumente de modelare, se prefera un nivel de colorareintermediar, care depinde de caracterul sistemului modelat si de scopulmodelarii. Cazul extrem de colorare are numai o valoare teoretica.

Page 6: Retele Petri Colorate

Retele Petri ColorateOperatia de colorare a unei retele Petri generalizate se numeste impachetare (pliere), iar operatia inversa ‐despachetare.

Page 7: Retele Petri Colorate

Particularitati ale retelelor Petri coloratePozitiilesunt reprezentate in continuare prin cercuri, care pot contine marcaje (jetoane) colorate ‐ respectiv simboluri de culori. o pozitie poate sa contina la un moment dat mai multe marcaje (jetoane) de aceeasi culoare. In functie de marcajele (jetoanele) continute si de gradul de colorare al retelei, semnificatia aceleiasi pozitii poate sa varieze.

Page 8: Retele Petri Colorate

Particularitati ale retelelor Petri colorateTranzitiile

sunt reprezentate tot prin segmente de dreapta.fiecarei tranzitii ii este asociat insa un ansamblu de culori (C(tj) pentru o tranzitie tj), fiecare dintre ele implicand o posibilitate distincta de executie a tranzitiei. Numarul de culori din C(tj) corespunde numarului de tranzitii al retelei Petri generalizate echivalente (despachetate) care au fost regrupate intr‐una singura.

Page 9: Retele Petri Colorate

Particularitati ale retelelor Petri colorateArcurileleaga o tranzitie de o pozitie si au ponderi, reprezentateprin functii IN sau OUT, care stabilesc corespondenta intrefiecare culoare asociata tranzitiei si culorile pozitiei. functiile IN si OUT au un argument suplimentar si anumeculoarea Ck in raport cu care urmeaza sa se execute tranzitia. pentru un arc care leaga tranzitia tj si pozitia pi, avemasociate functiile:

IN(pi, tj/Ck) OUT(pi, tj/Ck).

Page 10: Retele Petri Colorate

Particularitati ale retelelor Petri colorateMarcajelepentru o pozitie pi, marcajul reprezinta numarul de jetoanede fiecare culoare continute de pozitia respectiva si estereprezentat printr‐o suma simbolica.vectorul de marcaj se construieste in aceslasi fel ca pentruretelele generalizate.

Tranzitii valideo tranzitie tj este valida in raport cu o culoare Ck ∈C(tj) daca si numai daca numarul de marcaje (jetoane) din oricepozitie pi aflata in amonte de tj este mai mare sau egal cu IN(pi, tj/Ck), adica:

∀pi ∈°tj M(pi) ≥ IN(pi, tj/Ck)

Page 11: Retele Petri Colorate

Particularitati ale retelelor Petri colorateExecutia unei tranzitii validetj in raport cu Ck, consta in efectuarea simultana a doua operatii

se retrage din toate pozitiile pi de intrare un numar de jetoane egal cu IN(pi, tj/Ck)se adauga in toate pozitiile pi de iesire un numar de jetoane egal cu OUT(pi, tj/Ck)

Daca notam cu M marcajul retelei anterior executiei tranzitiei si cu M’ marcajul rezultat, avem:∀pi,     M’(pi) = M(pi) + OUT(pi, tj/Ck) ‐ IN(pi, tj/Ck)

Page 12: Retele Petri Colorate

Particularitati ale retelelor Petri colorateObservatie importanta: odata ce o tranzitie este executata in raport cu o culoaredata, aceasta culoare este cea care stabileste regulile de executie. toate imaginile functiilor ponderi asociate fie arcurilor de intrare in tranzitie, fie celor de iesire sunt calculate avândca argument culoarea respectiva.

Secvente de executiimarcajul rezultat in urma executiei unei secvente de k tranzitii, pornind de la un marcaj M1 al retelei,  se calculeaza pe baza formulei: 

Mk+1(pi) = M1(pi) + OUT(pi, tj/Chj) ‐ IN(pi, tj/Chj)

Page 13: Retele Petri Colorate

ExempluFie doua robocare (r1 si r2) care se deplaseaza intre o statie de pornire si o statie terminus. Deplasarea unui robocar poate sa se fie pornire → terminus (pt) sau terminus → pornire (tp). Odata inceputa deplasarea, sensul ei nu mai poate fi modificat. 

Page 14: Retele Petri Colorate

ExempluModelare prin retele Petri generalizate: se face prin intermediul a doua retele, fiecare reprezentând functionarea unui robocar.

Page 15: Retele Petri Colorate

Primul nivel de colorare

Page 16: Retele Petri Colorate

Primul nivel de colorareSe introduc doua culori: pt ‐ care simbolizeaza deplasarea in sensul pornire→terminus sirespectivtp pentru deplasarea in sensul terminus→pornire. 

Semnificatia:pozitiei ramase este de “robocar in deplasare”tranzitiei ‐ “atingerea unui capat de cursa”(sau, in limbaj de evenimente ‐ initierea deplasarii in sens opus celei curente).

Un marcaj (jeton) de culoare pt in pozitia p ramasa, implica deplasarein sens pornire→terminus, având aceeasi semnificatie cu un jetonnecolorat in pozitia p1.Prezenta jetonului in pozitia p2 din reteaua originala corespunzatoareeste reprezentata de un jeton de culoare tp in p.

Page 17: Retele Petri Colorate

Al doilea nivel de colorare

Page 18: Retele Petri Colorate

Al doilea nivel de colorareSe pastreaza structura de retea cu doua pozitii si douatranzitii, cu aceeasi semnificatie ca in retelele generalizate, dar se introduc doua culori r1 si r2 care simbolizeazadistinct cele doua robocare. Ansamblul pozitie‐culoare asigura pastrarea informatieiinitiale. Un jeton r1 si un jeton r2 in pozitia p1 inseamna ca ambelerobocare se deplaseaza in sensul pornire→terminus, Un jeton r1 in p1 si r2 in p2 inseamna ca robocarul r1 se deplaseaza in sensul pornire→terminus, iar robocarul r2 se deplaseaza in sensul terminus→pornire, etc.)

Page 19: Retele Petri Colorate

Colorarea totalaf(<r1, tp>) = <r1, pt>, f(<r1, pt>) = <r1, tp>,f(<r2, tp>) = <r2, pt>, f(<r2, pt>) = <r2, tp>

Page 20: Retele Petri Colorate

Colorarea totalaCulorile introduse nu mai sunt simple, ci sunt compusedintr‐o pereche de culori, si anume una care sa desemnezerobocarul si alta care desemneaza sensul de deplasare al acestuia.Sunt admisibile toate cele patru combinatii posibile: <r1, tp>, <r2, tp>, <r1, pt>, <r2, pt> (semnificatiile simbolurilorsunt cele prezentate in exemplele de colorare anterioare). Toate cele patru culori comlexe formeaza multimea C1 de culori asociata tranzitiei t.Functia pondere f, care modeleaza modificarea sensului de deplasare, este definita astfel:

f(<r1, tp>) = <r1, pt>,  f(<r1, pt>) = <r1, tp>,f(<r2, tp>) = <r2, pt>,  f(<r2, pt>) = <r2, tp>

Page 21: Retele Petri Colorate

Exemple de marcaje complexe si de tranzitii validef(<b>) = <v>f(<v>) = <b> + <v>f(<o>) = <b> + 2<o>

g(<b>) = <b>g(<v>) = <o> + <b>g(<o>) = 2<o>

Page 22: Retele Petri Colorate

Exemple de marcaje complexe si de tranzitii valide

Marcajul initial este:m(p1) = 3<b> + 2<v> + <o> m(p2) = 0

Tranzitia t poate fi executata in raport cu culorile <b>, <v>, <o>, dar este valida doar in raport cu culorile<b> si <v>, deoarece:

IN(p1, t/<b>) = f(<b>) = <v> si pozitia p1 contine (mai multde) un jeton <v>IN(p1, t/<v>) = f(<v>) = <b> + <v> si pozitia p1 contine (maimult de) un jeton <b> si un jeton <v>

In schimb, tranzitia t nu este valida in raport cu <o>, deoarece

IN(p1, t/<o>) = f(<o>) = <b> + 2<o>, iar pozitia p1 nu continedecât un singur jeton <o>

Page 23: Retele Petri Colorate

Exemple de marcaje complexe si de tranzitii valideExecutia tranzitiilor si evolutia marcajelorPrin executia tranzitiei t in raport cu culoarea <b>, marcajul rezultant estem’(p1) =  3<b> + <v> + <o>m’(p2) = <b> 

Prin executia tranzitiei t in raport cu culoarea <v>, marcajul rezultant estem”(p1) =  2<b> + <v> + <o>m”(p2) = <o> + <b>

Page 24: Retele Petri Colorate

Exemplu de modelareLinie de fabricatie formata din doua masini (M1 si M2) opereazasuccesiv asupra a doua tipuri de piese. Fiecare piesa estetransportata de la o masina la cealalta pe o paleta, pentru fiecaretip de piesa existand o paleta. Paletele sunt reciclate la sfârsitulciclului de productie al fiecarei piese (succesiunea operatiiloreste aceeasi pentru ambele tipuri de piese, si anumeM1 ‐M2). Fiecare masina are un buffer de intrare (B1, respectiv B2). Presupunem ca operatiile de incarcare/ descarcare se desfasoarafara restrictii, deci nu sunt semnificative pentru modelareasistemului. Ordonantarea liniei trebuie sa asigure alternareapieselor functie de tip. Prima piesa prelucrata trebuie sa fie de tip 1. Marcajul initial corespunde unui stoc de n1 piese de tip 1 si n2 piese de tip 2 in bufferul de intrare al masinii M1.

Page 25: Retele Petri Colorate

Modelare cu culori simple

Modelarea ordonantarii alternative a pieselor se va face prin functia succ.

f(C1) = C1 + p1f(C2) = C2 + p2

g(C2) = p2g(C1) = p1

succ(C2) = C1succ(C1) = C2

Page 26: Retele Petri Colorate

Modelare cu culori simplePozitii:

B1 si B2 ‐ continutul bufferelor de intrare ale masinilor M1 respectivM2

M1L si M2L ‐masinile M1 respectiv M2 – libereM1O si M2O ‐masinile M1 respectiv M2 ‐ ocupate

Tranzitii:t1 si T2 ‐ incarcarea masinilor M1 respectiv M2T1’ si T2’ ‐ descarcarea masinilor M1 respectiv M2

Multimea culorilor asociate tuturor tranzitiilor retelelor va fi C={C1, C2}.In ceea ce priveste pozitiile ele au asociata aceeasi multime de culori, cu exceptia pozitiei B1, care are asociata multimea C’=C ∪ {p1, p2}, pentrua putea modela reciclarea paletelor si dependenta ciclului de prelucrarede prezenta acestora, ceea ce se va face prin intermediul functiilor f si g definite in continuare.

Page 27: Retele Petri Colorate

Modelare cu culori simpleMarcajul initial este urmatorul:m0(B1) = n1C1 + n2C2 + p1 +p2 ‐ adica in stocul de intrare al masinii M1 exista n1 piese de tip 1 si n2 piese de tip 2, precum si o paleta pentru transportul pieselor de tip 1 si o paleta pentru transportul pieselor de tip 2.m0(M1L) = m0(M2L) = C1 ‐ adica masinile M1 si M2 sunt libere si asteapta sa prelucreze o piesa de tip 1

Page 28: Retele Petri Colorate

Modelare cu culori simpleFunctionarea retelei este urmatoarea:Initial, singura tranzitie executabila este t1, prin care se extrage un jeton de tip C1 din pozitia M1L (arcul are asociata functia indentitate), respectiv un jeton C1 si unul p1 din pozitia B1 (arcul are asociata functia f) si se introduce un jeton de tip C1 in pozitia M1O ‐ adica o piesa de tip p1 este incarcata pe paletacorespunzatoare si este incarcata pe masina M1.Urmatoarea tranzitie executabila este t1’, prin care se extrage jetonul C1 din M1O si se introduc un jeton C1 in B2, respectiv unul C2 in M1L (functia succ) ‐adica se descarca masina M1 de piesa de tip 1, care este trimisa in bufferul de intrare al masinii M2. Masina M1 este eliberata si asteapta spre prelucrare o piesa de tip 2.In continuare sunt executabile doua tranzitii: t1 care implica incarcarea pemasina M1 a unei piese de tip 2 transportata pe paleta corespunzatoare si t2 care implica incarcarea pe masina M2 (libera si asteptând spre prelucrare o piesa de tip 1) a piesei de tip 1 din bufferul ei de intrare.Daca se urmareste piesa de tip 1, atunci dupa secventa de tranzitii t2 si t2’ se observa ca piesa propriu‐zisa iese din sistem, iar paleta este reciclata (prinintermediul functiei g dispare jetonul de culoare C1 si reapare jetonul p1).

Page 29: Retele Petri Colorate

Modelare cu culori complexe

f(<ci, mj>) = pi + <ci,mj>, unde 1 ≤ i, j ≤ 2

g(<ci, m1>) = pi + <ci,m2>g(<ci, m2>) = pi

succ1(<c1, mj>) = <c2,mj>succ1(<c2, mj>) = <c1, mj>

Page 30: Retele Petri Colorate

Modelare cu culori complexeModelarea cu culori simple poate conduce, in cazul unei linii de fabricatie formata din mai multe masini, chiar si la o reteacolorata prea complicata pentru a fi urmarita.Acest dezavantaj poate fi inlaturat prin colorarea atât in raportcu tipul de piese, cât si in raport cu masinile, ceea ce implicautilizarea unor culori de forma <ci, mi> cu ci ‐ tipul piesei si mi ‐tipul masinii pe care se prelucreaza. In aceste conditii, se obtinein plus si o simplificare a structurii grafice a retelei.

Culorile p1 si p2 au aceeasi semnificatie ca in cazul precedent.Observatia facuta pentru exemplul precedent ramane valabila.