Um Estudo sobre Redes de Petri Estoc´asticas Generalizadas · 2.1.1 Marcas Uma Rede de Petri pode...

37
Pontif´ ıcia Universidade Cat´olica do Rio Grande do Sul Faculdade de Inform´ atica P´os-Gradua¸ ao em Ciˆ encia da Computa¸ ao Um Estudo sobre Redes de Petri Estoc´asticasGeneralizadas Afonso Henrique Corrˆ ea de Sales Orientador: Prof. Dr. Paulo Henrique Lemelle Fernandes Trabalho individual I Porto Alegre, agosto de 2002

Transcript of Um Estudo sobre Redes de Petri Estoc´asticas Generalizadas · 2.1.1 Marcas Uma Rede de Petri pode...

Pontifıcia Universidade Catolica do Rio Grande do Sul

Faculdade de Informatica

Pos-Graduacao em Ciencia da Computacao

Um Estudo sobre Redes de Petri

Estocasticas Generalizadas

Afonso Henrique Correa de Sales

Orientador: Prof. Dr. Paulo Henrique Lemelle Fernandes

Trabalho individual I

Porto Alegre, agosto de 2002

Resumo

Este trabalho visa estudar um formalismo utilizado para avaliacao de desempenho desistemas: Redes de Petri Estocasticas Generalizadas. O formalismo de Redes de Petri Es-tocasticas Generalizadas e derivado do formalismo de Redes de Petri Estocasticas que, con-sequentemente, deriva do formalismo de Redes de Petri. Todos os formalismos sao definidose exemplificados de uma maneira informal a partir de suas primitivas de modelagem. A con-clusao tece como trabalhos futuros a formulacao de um relatorio tecnico contendo a definicaoformal dos formalismos de Redes de Petri, Redes de Petri Estocasticas e Redes de PetriEstocasticas Generalizadas de modo a definir-se inequivocamente suas propriedades de mo-delagem, bem como o estudo do formalismo de Redes de Petri Estocasticas GeneralizadasSuperpostas a vista de uma resolucao numerica eficiente e uma eventual comparacao com oformalismo de Redes de Automatos Estocasticos.

Sumario

LISTA DE TABELAS ii

LISTA DE FIGURAS iii

LISTA DE SIMBOLOS E ABREVIATURAS iv

Capıtulo 1: Introducao 1

Capıtulo 2: Redes de Petri 3

2.1 Descricao Informal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1.1 Marcas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.2 Regras de Execucao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.3 Atingibilidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.1.4 Limitacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.1.5 Seguranca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.1.6 Vivacidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Exemplo de Modelagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Capıtulo 3: Redes de Petri Estocasticas 10

3.1 Descricao Informal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.2 Exemplo de Modelagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Capıtulo 4: Redes de Petri Estocasticas Generalizadas 18

4.1 Descricao Informal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.2 Exemplo de Modelagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Capıtulo 5: Conclusao 28

REFERENCIAS BIBLIOGRAFICAS 30

i

Lista de Tabelas

3.1 Marcacoes da Figura 3.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4.1 Switching distribution da GSPN descrita na Figura 4.1 . . . . . . . . . . . . . 204.2 Marcacoes da Figura 4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.3 Switching distribution da GSPN descrita na Figura 4.6 . . . . . . . . . . . . . 254.4 Marcacoes da Figura 4.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

ii

Lista de Figuras

2.1 Exemplo de representacao grafica de uma Rede de Petri . . . . . . . . . . . . 32.2 Exemplo de uma Rede de Petri marcada . . . . . . . . . . . . . . . . . . . . . 42.3 Disparo da transicao t1 de uma Rede de Petri . . . . . . . . . . . . . . . . . . 52.4 Arvore de atingibilidade da Figura 2.2 . . . . . . . . . . . . . . . . . . . . . . 62.5 Compartilhamento de recursos com exclusao mutua - Rede de Petri . . . . . . 8

3.1 Exemplo de uma Rede de Petri Temporizada . . . . . . . . . . . . . . . . . . 103.2 Exemplo de uma Rede de Petri Estocastica . . . . . . . . . . . . . . . . . . . 113.3 Arvore de atingibilidade da Figura 3.2 . . . . . . . . . . . . . . . . . . . . . . 123.4 Cadeia de Markov equivalente a Figura 3.2 . . . . . . . . . . . . . . . . . . . 133.5 Compartilhamento de recursos com exclusao mutua - Rede de Petri Estocastica 153.6 Arvore de atingibilidade da Figura 3.5 . . . . . . . . . . . . . . . . . . . . . . 16

4.1 Exemplo de uma Rede de Petri Estocastica Generalizada [13] . . . . . . . . . 194.2 Arvore de atingibilidade caso a Figura 4.1 fosse uma SPN . . . . . . . . . . . 224.3 Arvore de atingibilidade da Figura 4.1 . . . . . . . . . . . . . . . . . . . . . . 234.4 Cadeia de Markov da Figura 4.1 compreendendo vanishing e tangible markings 234.5 Cadeia de Markov da Figura 4.1 somente com tangible markings . . . . . . . 244.6 Compartilhamento de recursos com exclusao mutua - Rede de Petri Estocastica

Generalizada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.7 Arvore de atingibilidade da Figura 4.6 . . . . . . . . . . . . . . . . . . . . . . 274.8 Cadeia de Markov da Figura 4.6 compreendendo vanishing e tangible markings 274.9 Cadeia de Markov da Figura 4.6 somente com tangible markings . . . . . . . 27

iii

Lista de Sımbolos e Abreviaturas

PN Petri Nets 2

SPN Stochastic Petri Nets 2

GSPN Generalized Stochastic Petri Nets 2

SGSPN Superposed Generalized Stochastic Petri Nets 2

SAN Stochastic Automata Networks 2

TPN Timed Petri Nets 10

CTMC Continuous-Time Markov Chains 11

iv

1 Introducao

Atraves da evolucao tecnologica das ultimas decadas, o desenvolvimento de sistemas com-putacionais distribuıdos e redes de computadores encontra-se em ascendencia. Esta crescenteevolucao tem exigido o desenvolvimento de ferramentas que permitem a modelagem e analisedo desempenho e confiabilidade dos mesmos. Contudo, este desenvolvimento tem se tornadocada vez mais complexo, ressaltando assim a importancia da area de avaliacao de desempenhode sistemas computacionais [13].

A avaliacao de desempenho de sistemas utiliza tecnicas que permitem ao projetista desistemas analisar como o sistema em questao se comportara, e se a arquitetura utilizada e amais adequada as suas necessidades. As tecnicas utilizadas em avaliacao de desempenho desistemas sao divididas em tres grupos [23]:

• Monitoracao;

• Simulacao;

• Metodos analıticos.

A monitoracao baseia-se na observacao direta do funcionamento de sistemas reais, en-quanto a simulacao consiste em construir um modelo que simule o funcionamento de sis-temas. Os metodos analıticos consistem na construcao de modelos analıticos que reduzem ofuncionamento de um sistema real a relacoes matematicas. Os metodos analıticos possuemuma vantagem em relacao as outras tecnicas, pois nao ha uma preocupacao com um conjuntoespecıfico de amostras de funcionamento do sistema para a obtencao das medidas de desem-penho.

Por reduzirem o funcionamento do sistema a relacoes matematicas, os metodos analıticosdescrevem o sistema real como um conjunto de estados e transicoes estocasticas entre os es-tados. Um processo estocastico 1 e um processo cuja ocorrencia e descrita por uma variavelaleatoria. Desta forma, os modelos estocasticos sao usados para reduzir um problema com-plexo em um problema de facil entendimento. O formalismo de modelagem e uma linguagemalfanumerica ou grafica para a especificacao de modelos [13]. Um formalismo e responsavelpela ausencia de ambiguidade no modelo, sendo composto por um conjunto de primitivas eum conjunto de regras de utilizacao.

O formalismo de modelagem tem evoluıdo desde 1890 onde iniciaram-se os estudos sobreCadeias de Markov [31]. Jackson iniciou o trabalho sobre o formalismo de Redes de Filas de

1Processo aleatorio.

1

Espera no final da decada de 50 [9, 10]. No final dos anos 70, este formalismo teve um grandeavanco devido aos trabalhos realizados por Little [11], Baskett, Chandy, Muntz e Palacios [2],e Reiser e Lavenberg [25].

Entretanto, o formalismo de Redes de Filas de Espera a forma-produto nao prove mecan-ismos de sincronismo e paralelismo, salvo os estudos feitos em G-Networks [7] e Limited

Capacity QN [3]. Consequentemente, tal formalismo nao possui a precisao necessaria para adescricao de sistemas complexos.

O formalismo de Redes de Petri (PN) [22, 21, 26] surgiu para suprir tais necessidades. Talformalismo define uma tecnica de especificacao de sistemas que possibilita uma representacaomatematica e possui mecanismos de analise que permitem a verificacao de propriedades e averificacao da corretude do sistema especificado [12]. As Redes de Petri podem variar desdesimples temporizacoes constantes [27, 30] ate mecanismos mais sofisticados, tais como:

• Redes de Petri Estocasticas (SPN) [6];

• Redes de Petri Estocasticas Generalizadas (GSPN) [15, 14];

• Redes de Petri Estocasticas Generalizadas Superpostas (SGSPN) [4, 5].

Este trabalho tem o objetivo de estudar: Redes de Petri, Redes de Petri Estocasticas eRedes de Petri Estocasticas Generalizadas. Tal estudo tem como finalidade a formulacao deum texto introdutorio - survey - sobre o tema proposto, onde possa-se identificar as basesde uma futura prova da equivalencia do formalismo de Redes de Petri Estocasticas com oformalismo de Redes de Automatos Estocasticos (SAN) [24].

No presente trabalho, faz-se uma descricao do formalismo basico de Redes de Petri nocapıtulo 2. Apresenta-se no capıtulo 3, a extensao que introduz o conceito de processos es-tocasticos, as Redes de Petri Estocasticas. A seguir, no capıtulo 4, descreve-se a extensaoque introduz o conceito de transicoes imediatas, as Redes de Petri Estocasticas Generaliza-das. Por fim, na conclusao, ressalta-se os assuntos estudados e aponta-se futuros trabalhosenvolvendo Redes de Petri Estocasticas Generalizadas Superpostas.

2

2 Redes de Petri

Uma Rede de Petri e uma abstracao de um sistema real. Ela e um modelo formal do fluxode dados do sistema modelado em questao. As propriedades, conceitos e tecnicas para mo-delagem de uma Rede de Petri foram desenvolvidas utilizando metodos simples e poderosospara descricao, analise do fluxo de dados e controle de sistema.

O formalismo de Redes de Petri e utilizado principalmente em sistemas que possamaprensentar atividades assıncronas e concorrentes. Redes de Petri tem sido utilizadas prin-cipalmente para a modelagem de sistemas de eventos em que estes possam ocorrer concor-rentemente, havendo obstaculos na concorrencia, precedencia ou frequencia desses eventos[21].

2.1 Descricao Informal

A estrutura de uma Rede de Petri e um grafo bipartido que compreende um conjunto delugares P , um conjunto de transicoes T , e um conjunto de arcos direcionados A. Os lugaressao representados graficamente por cırculos, as transicoes por barras e os arcos direcionadospor setas. Os arcos direcionados conectam os lugares as transicoes e as transicoes aos lugares.

p

p

p p

pt

t t t t

t

1

12

2

3

34

4

5

56

Figura 2.1: Exemplo de representacao grafica de uma Rede de Petri

Tem-se, na Figura 2.1, um exemplo da representacao grafica de uma Rede de Petri quepossui 5 lugares e 6 transicoes.

3

Um lugar e uma entrada para uma transicao se existe um arco direcionado do lugar paraa transicao em questao. Analogamente, um lugar e uma saıda de uma transicao se existe umarco direcionado da transicao para o lugar em questao.

2.1.1 Marcas

Uma Rede de Petri pode ser considerada marcada quando ela possuir tokens ou mar-cas. Tokens encontram-se nos lugares. As transicoes, quando disparadas, consomem tokens

dos lugares que as alimentam e geram marcas nos lugares por elas alimentadas. Tokens saosinais em uma Rede de Petri representados graficamente por um ponto preto. A quantidade ea posicao dos tokens em uma Rede de Petri podem variar durante o funcionamento da mesma.

Uma Rede de Petri marcada e definida pelo numero mn de tokens contidos em cada lugarpn da rede [13]. Uma marcacao Mi de uma Rede de Petri e definida pelo conjunto de mn doslugares da mesma, ou seja, a marcacao inicial de uma Rede de Petri e M0 = {m0, m1, m2,..., mn}.

Na Figura 2.2, tem-se um exemplo de uma Rede de Petri marcada.

p

p

p p

pt

t t t t

t

1

12

2

3

34

4

5

56

Figura 2.2: Exemplo de uma Rede de Petri marcada

2.1.2 Regras de Execucao

Uma Rede de Petri e executada atraves do disparo de transicoes. Para ocorrer o disparode uma transicao, e necessario que esta transicao esteja habilitada para isto. Uma transicao econsiderada habilitada para disparar quando todos os lugares de entrada dela contiverem pelomenos um token. Analisando a Figura 2.2, nota-se que a transicao t1 possui apenas o lugarp1 como entrada, e este possui pelo menos um token. Logo, a transicao t1 esta habilitada epode ser disparada.

Quando uma transicao e disparada - Figura 2.3 (a) - remove-se um token de cada lugarde entrada da transicao em questao e entao coloca-se um token em cada lugar de saıda da

4

mesma - Figura 2.3 (b).

p

p

p p

pt

t t t t

t

1

12

2

3

34

4

5

56

(a) (b)

p

p

p p

pt

t t t t

t

1

12

2

3

34

4

5

56

Figura 2.3: Disparo da transicao t1 de uma Rede de Petri

Cada disparo de uma transicao pode modificar a distribuicao dos tokens nos lugares econsequentemente pode produzir uma nova marcacao Mj para a Rede de Petri.

Tokens sao considerados entidades atomicas (indivisıveis1). Ou seja, o disparo de umatransicao pode desativar outros possıveis disparos, removendo tokens que poderiam ser con-sumidos por uma ou outra transicao alimentada por um mesmo lugar de entrada. Observandoa Figura 2.3, pode-se notar que apos o disparo da transicao t1, os lugares p2 e p3 receberamum token cada. Por conseguinte, as transicoes t2 e t3 passaram a estar habilitadas para odisparo. O disparo da transicao t2 coloca um token no lugar p4 e habilita a transicao t4; odisparo da transicao t3 coloca um token no lugar p5 e tambem habilita o disparo da transicaot5. Neste momento, as transicoes t4, t5 e t6 estao habilitadas a serem disparadas, porem ape-nas uma destas tres transicoes pode ser disparada. A selecao do disparo e nao determinısticae o disparo de uma transicao desativa automaticamente o disparo da outra2.

2.1.3 Atingibilidade

O resultado do disparo de uma transicao de uma marcacao Mi pode gerar uma novamarcacao Mj . A marcacao Mj e dita imediatamente atingıvel de Mi se ela pode ser obtidado disparo de uma transicao habilitada em Mi. Uma marcacao Mk e dita atingıvel de Mi

se existir uma sequencia de disparo de transicoes que levem o estado da Rede de Petri emquestao de Mi para Mk.

O funcionamento de uma Rede de Petri gera uma sequencia M de marcacoes {M0, M1,M2, ...} e uma sequencia T de transicoes {t1, t2, ...}. O disparo de uma transicao tk, habili-tada em Mi, pode mudar o estado da Rede de Petri de Mi para Mj e assim por diante.

1A mudanca de marcacao e um processo discreto e nao contınuo.2Neste exemplo, o disparo da transicao t4 nao desativa o disparo da transicao t5, e vice-versa. Porem, o

disparo da transicao t6 desativa o disparo das outras duas transicoes.

5

Com isso, pode-se definir o conjunto de atingibilidade de uma Rede de Petri. O termoatingibilidade tambem e conhecido como reachability [12]. O conjunto de atingibilidade Re composto por todas as marcacao distintas de M que sao atingıveis a partir de M0. Asmarcacoes do conjunto M podem ser representadas na forma de uma arvore. A Figura 2.4mostra a arvore de atingibilidade do exemplo apresentado na Figura 2.2.

M 0 = {1, 0, 0, 0, 0}

M 1 = {0, 1, 1, 0, 0}

2M = {0, 0, 1, 1, 0}

M 4 = {0, 0, 0, 1, 1}M 1

M 3 = {0, 1, 0, 0, 1}

t 1

t 2 t 3

t 4 t 5

M 1

M 3 M 0 2M

M 4

t 3 t 2

t 4 t 5t 6

Figura 2.4: Arvore de atingibilidade da Figura 2.2

A arvore de atingibilidade e construıda a partir da marcacao inicial M0 da Rede de Petriem questao. Em seguida, leva-se em conta todas as marcacoes imediatamente atingıveis destamarcacao inicial. Somente M1 e imediatamente atingıvel a partir da marcacao inicial. A par-tir desta nova marcacao, repete-se o mesmo procedimento. Logo, M2 e M3 sao as marcacoesimediatamente atingıveis a partir de M1. Considerando M2 como a nova marcacao, tem-seas marcacoes M1 - obtida anteriormente - e M4. A marcacao M3 tambem gera as marcacoesM1 e M4. Repetindo o mesmo procedimento para M4, consegue-se as marcacoes M0, M2 eM3. Desta forma, obtem-se a arvore de atingibilidade do exemplo em questao.

A construcao da arvore a partir da marcacao inicial M0 poderia gerar uma arvore detamanho infinito. Entretanto, para se represetar a arvore em um tamanho finito, quandoencontra-se um marcacao ja atingida, nao expande-se a marcacao em questao, considerando-a como uma marcacao duplicada. As marcacao duplicadas sao representadas pelas folhas 3

da arvore.

2.1.4 Limitacao

Um lugar de uma Rede de Petri pode apresentar a propriedade de limitacao. O termolimitacao tambem e conhecido como boundedness [12]. Um lugar pode ser dito como k-limitado

ou simplesmente limitado se o numero de tokens do lugar nao excede o limite k do mesmo.

3As folhas da arvore de atingibilidade sao marcacoes as quais nao sao mais expandidas por ja terem sido

obtidas anteriormente.

6

No exemplo apresentado na Figura 2.2, para todos os lugares da Rede de Petri em questao,o limite k e igual a 1. Pois, nenhum lugar da Rede de Petri deste exemplo contem mais de 1token.

Uma Rede de Petri tambem pode ser denominada limitada. Diz-se que uma Rede de Petrie limitada se o limite de todos os lugares for menor que infinito. Logo, pode-se concluir quea Rede de Petri da Figura 2.2 e 1-limitada, pois nenhum lugar desta rede acumula mais doque 1 token em qualquer marcacao possıvel da mesma.

2.1.5 Seguranca

Um lugar de uma Rede de Petri pode ser considerado seguro se ele tiver no maximo 1token, ou seja, um lugar que e 1-limitado e considerado um lugar seguro. O conceito deseguranca e simplesmente uma particularizacao do conceito de limitacao. O termo segurancatambem e conhecido como safeness [12].

Esta propriedade e uma das mais importantes para a modelagem de sistemas digitais,visto que um lugar pode ser modelado como uma porta ou mesmo um flip-flop [12].

Logo, pode-se dizer que uma Rede de Petri e segura se o limite k de todos os lugares damesma nao exceder 1 token. Como pode-se observar, a Rede de Petri apresentada no exemploda Figura 2.2 e uma rede segura, pois ela e uma rede 1-limitada.

2.1.6 Vivacidade

O conceito de vivacidade esta definido em funcao das possibildades de disparo das transicoes.O termo vivacidade tambem e conhecido como liveness [12]. Vivacidade e uma propriedadefundamental para sistemas do mundo real. Porem, muitas vezes e muito caro observar estapropriedade em alguns sistemas de grande porte [12].

Uma transicao e potencialmente disparavel em uma marcacao M0 se existe uma marcacaoMi atingıvel a partir de M0, ou seja, uma transicao e considerada viva se esta nao e passıvelde um impasse ou deadlock. Impasse em uma Rede de Petri e a impossibilidade do disparode qualquer transicao da mesma.

2.2 Exemplo de Modelagem

Um exemplo de modelagem de uma Rede de Petri e o caso de compartilhamento de re-cursos entre componentes do sistema. Na Figura 2.5, tem-se um exemplo de modelagem deRede de Petri para o compartilhamento de recursos com exclusao mutua.

A Figura 2.5 apresenta a Rede de Petri que representa o processo de producao em umafabrica de agua mineral. Supoe-se que esta fabrica possua uma unica maquina responsavelpela manufatura da garrafa de agua e da tampinha da mesma. Portanto, quando esta maquinaestiver sendo usada para fabricar as garrafas, o processo de manufatura das tampinhas deveraaguardar para que possa-se utilizar a mesma maquina e vice-versa.

7

p9

t 0

p1

t 1

p3

t 3

p5

t 5

p0

p7

p8

p2

t 2

p4

4t

p6

Figura 2.5: Compartilhamento de recursos com exclusao mutua - Rede de Petri

Tendo em vista a rede da Figura 2.5, o lugar p0 da rede representa o deposito de materia-prima e o lugar p9 a habilitacao do sistema para a manufatura. Os lugares p1 e p2 representam,respectivamente, os repositorios de materia-prima para as garrafas e tampinhas. Os lugaresp3 e p4 representam o processo de manufatura das garrafas e o processo de manufatura dastampinhas respectivamente.

O lugar p7 representa a maquina responsavel pela linha de producao da fabrica. Um token

neste lugar representa que a maquina esta disponıvel. Quando nao se encontrar um token

neste lugar, significa que a maquina nao esta disponıvel, ou seja, um dos dois processos estautilizando a maquina. Os lugares p5 e p6 sao, respectivamente, os depositos das garrafas edas tampinhas. Por ultimo, o lugar p8 representa o processo de montagem da garrafa de aguamineral.

A transicao t0 representa o inıcio do processo de manufatura. Neste momento, e feitaa distribuicao de materia-prima para os depositos p1 e p2 para a manufatura de garrafase tampinhas. As transicoes t1 e t2 representam, respectivamente, o inıcio dos processos demanufatura das garrafas e tampinhas. Como o lugar p7 possui apenas um token, apenas umadas duas transicoes t1 ou t2 podera ocorrer. Quando uma dessas transicoes ocorrer, auto-maticamente o disparo da outra transicao sera impossibilitado, pois o token do lugar p7 seraconsumido.

A transicao t3 representa o termino da manufatura de garrafas e, consequentemente, aliberacao da maquina. Da mesma forma, a transicao t4 libera a maquina e termina com o

8

processo de manufatura de tampinhas. O disparo da transicao t3 colocara um token em p5 eo disparo da transicao t4 colocara um token em p6. Quando uma destas transicoes ocorrerem,automaticamente sera colocado um token em p7, liberando a maquina para um novo processode manufatura. Quando ambos os lugares p5 e p6 contiverem pelo menos um token, entao atransicao t5 e disparada. Quando isso ocorrer, um token e colocado no lugar p8 e outro nolugar p9, habilitando o processo de manufatura de outras garrafas e tampinhas, desde quehaja materia-prima.

Muitas outras areas de estudo podem ser mencionadas como possıveis assuntos para amodelagem de Redes de Petri, incluindo alocacao de recursos, sistemas operacionais, redes defilas, controle de trafico, entre outros. O formalismo de Redes de Petri e uma ferramenta degrande facilidade para modelagem de uma vasta variedade de sistemas.

9

3 Redes de Petri Estocasticas

Usando o formalismo de Redes de Petri, e possıvel descrever somente a estrutura logicade sistemas, pois tal formalismo nao inclui nenhum conceito de tempo. Entretanto, frequen-temente, o conceito de tempo tem um papel importante na descricao do comportamento desistemas.

A introducao do conceito de tempo no formalismo de Redes de Petri permite a descricaode um comportamento dinamico de sistemas [13]. Noe e Nutt [20], Merlin e Farber [16] eZuberek [32] usaram o conceito de tempo para a modelagem do comportamento de sistemascomputacionais - Redes de Petri Temporizadas (TPN) - associando um tempo fixo no disparode transicoes.

O formalismo de Redes de Petri Temporizadas tem como sua principal caracterıstica aassociacao de um atraso fixo para cada transicao do modelo - Figura 3.1.

p4

p2 p3

p1

t 1,

t 2,

t 3,

ϑ 2

ϑ 1

ϑ 3

Figura 3.1: Exemplo de uma Rede de Petri Temporizada

Redes de Petri Temporizadas foram o passo inicial para a criacao do formalismo de Redesde Petri Estocasticas (SPN). A possibilidade de unir a habilidade do formalismo de Redes dePetri para descrever sincronizacao e concorrencia com um modelo estocastico e o principalatrativo para obter-se uma avaliacao quantitativa de sistemas computacionais complexos.

10

Os primeiros estudos sobre Redes de Petri Estocasticas foram desenvolvidos por Symons[29], Natkin [19] e Molloy [18]. As Redes de Petri Estocasticas sao obtidas atraves da asso-ciacao de um tempo distribuıdo exponencialmente com o disparo de cada transicao da rede.

3.1 Descricao Informal

O formalismo de Redes de Petri Estocasticas e uma ferramenta para modelagem e avaliacaode desempenho de sistemas envolvendo concorrencia, nao-determinismo e sincronizacao [1].

Redes de Petri Estocasticas sao definidas assumindo que todas as transicoes sao tempo-rizadas e que o atraso no disparo das transicoes e associado a uma variavel aleatoria distribuıdaexponencialmente.

Dada uma Rede de Petri Estocastica com uma marcacao que possua diversas transicoeshabilitadas a serem disparas, uma das transicoes ocorre. Quando uma transicao de uma Redede Petri Estocastica e disparada, assim como no formalismo de Redes de Petri, uma novamarcacao pode ser gerada. Esta nova marcacao pode conter transicoes que ja encontravam-sehabilitadas na marcacao anterior, mas nao foram disparadas. Por causa da propriedade deausencia de memoria1 da distribuicao exponencial, pode-se assumir que a atividade associadaa cada transicao e recomecada para qualquer nova marcacao.

A estrutura de uma Rede de Petri Estocastica possui os mesmos elementos contidos naestrutura da uma Rede de Petri acrescido do conjunto L = {l1, l2, ..., lm} de taxas de disparos,possivelmente dependente de marcacao, associadas as transicoes - Figura 3.2. Segundo Molloy[18], devido a propriedade de ausencia de memoria da distribuicao exponencial do atraso dosdisparos, o formalismo de Redes de Petri Estocasticas e isomorfico ao formalismo de Cadeiasde Markov de Tempo Contınuo (CTMC).

p1

t 2

t 1

t 3 t 4

1m

p2

p4

p3

α

βδγ

Figura 3.2: Exemplo de uma Rede de Petri Estocastica

E possıvel mostrar que uma Rede de Petri Estocastica e ergodica se para qualquer marcacaodesta rede atingida a partir da marcacao inicial, pode-se novamente atingir a marcacao ini-

1Do ingles memoryless

11

cial. Logo, se uma Rede de Petri Estocastica e ergodica, e possıvel calcular a distribuicao daprobabilidade de solucao estacionaria das marcacoes da mesma resolvendo a equacao:

πQ = 0 (3.1)

Com a restricao adicional:

i

πi = 1 (3.2)

Onde Q e o gerador infinitesimal cujos os elementos sao obtidos atraves das taxas dedisparos correspondentes as transicoes e π e o vetor de probabilidade de solucao estacionaria.

Para auxiliar na construcao da Cadeia de Markov equivalente a Rede de Petri Estocasticada Figura 3.2, constroi-se a arvore de atingibilidade da rede em questao. O processo paraa construcao da arvore de atingibilidade de uma Rede de Petri Estocastica segue o mesmoprocesso da construcao da arvore de uma Rede de Petri. A Figura 3.3 representa a arvore deatingibilidade da Rede de Petri Estocastica da Figura 3.2.

M 1 = {1, 1, 1, 0}

M 0 = {2, 0, 0, 0}

2M = {0, 2, 2, 0}M 3 = {1, 1, 0, 1}

M 1

M 5 = {0, 2, 0, 2}

M 4 = {0, 2, 1, 1}

M 4

M 0

M 4 M 1

2MM 3

t 3 t 2 t 1

t 4 t 1 t 3 t 2

t 2 t 3 t 4

t 1

t 4

(2)

(1)

(1)

Figura 3.3: Arvore de atingibilidade da Figura 3.2

A partir da arvore de atingibilidade, pode-se construir a Cadeia de Markov. O espacode estados da Cadeia de Markov correspondente a arvore de atingibilidade de uma Rede dePetri Estocastica e equivalente as marcacoes encontradas na mesma. Ou seja, na Figura 3.3,a arvore de atingibilidade possui 5 marcacoes que serao equivalentes aos estados da Cadeiade Markov - Figura 3.4.

Tendo em vista a Figura 3.4, constata-se que a taxa de transicao do estado 0 para oestado 1 e igual a t1(2). O valor entre parenteses corresponde ao numero de tokens do lugarp1 na marcacao M0, visto que esta transicao e dependente de m1. Por conseguinte, a taxa de

12

5

4

2 3

0

1

t 1

t 1

t 1

t 2

t 2

t 2

t 4

t 4

t 4

t 3

t 3

t 3

(2)

(1)

(1)

Figura 3.4: Cadeia de Markov equivalente a Figura 3.2

transicao do estado 1 para o estado 2 e do estado 3 para o estado 4 e igual a t1(1), visto quem1 e igual a 1 em M1 e M3.

Assumindo que as taxas de transicao α = β = γ = δ = 1, pode-se obter o gerador in-finitesimal Q a partir da arvore de atingibilidade. O gerador infinitesimal e uma matriz cujoselementos qij sao obtidos atraves do somatorio das taxas de disparo das transicoes habilitadasna marcacao Mi as quais os disparos geram a marcacao Mj . Em (3.3), tem-se a matriz dogerador infinitesimal da Rede de Petri Estocastica da Figura 3.2.

Q =

-2 2 0 0 0 01 -3 1 1 0 00 1 -2 0 1 00 1 0 -2 1 00 0 1 1 -3 10 0 0 0 1 -1

(3.3)

Utilizando o gerador infinitesimal Q obtido em (3.3), pode-se resolver a equacao (3.1) eobter os valores do vetor π:

π =[

111

211

211

211

211

211

]

E possıvel, a partir do vetor π, obter uma avaliacao quantitativa do comportamento daRede de Petri Estocastica. A probabilidade de uma condicao em especial de uma Rede de

13

Petri Estocastica pode ser calculada pela equacao:

P{A} =∑

i∈A

πi (3.4)

Onde A e o subconjunto de marcacoes atingıveis a partir da marcacao inicial que satisfacaa condicao requerida.

Tambem e possıvel calcular, atraves da equacao (3.5), o numero medio de tokens em umdeterminado lugar.

E[mi] =

k∑

n=1

[nP{A(i, n)}] (3.5)

Onde A(i, n) e o subconjunto de marcacoes atingıveis a partir da marcacao inicial as quaiso numero de tokens do lugar pi e igual a n, e k e o limite maximo de tokens do lugar emquestao. Ou seja, o lugar pi e k-limitado.

Como exemplo, pode-se calcular o numero medio de tokens do lugar p1 da Rede de PetriEstocastica da Figura 3.2. Usando a equacao (3.5), tem-se:

E[m1] = 1P{A(1, 1)}︸ ︷︷ ︸

π1+π3

+2P{A(1, 2)}︸ ︷︷ ︸

π0

= 2π0 + π1 + π3 =6

11

A taxa media de disparo da transicao tj por unidade de tempo e calculada pela equacao:

fj =∑

Mi∈Aj

πi

lj

/∑

∀tk habilitada em Mi

lk

(3.6)

Como demostracao, usando a equacao (3.6), pode-se calcular a taxa de disparo da transicaot2, habilitada somente nas marcacoes M1, M2 e M4:

f2 = π1

(l2

l1 + l2 + l3

)

︸ ︷︷ ︸

M1

+ π2

(l2

l2 + l3

)

︸ ︷︷ ︸

M2

+ π4

(l2

l2 + l3 + l4

)

︸ ︷︷ ︸

M4

=1

3π1 +

1

2π2 +

1

3π4 =

7

33

14

3.2 Exemplo de Modelagem

Um exemplo de modelagem de Rede de Petri Estocastica e dado na Figura 3.5, a qualrepresenta uma variacao do exemplo apresentado na Figura 2.5.

p1

p3

p5

p0

p7

p2

t 2

p4

4t

p6

t 0

t 5

t 1

t 3

1m

β

δγ

α

λ

φ

Figura 3.5: Compartilhamento de recursos com exclusao mutua - Rede de Petri Estocastica

A Rede de Petri Estocastica modelada na Figura 3.5 continua representando o processode producao em uma fabrica de agua mineral. Porem, taxas de disparos estao associadas astransicoes da rede. Para manter-se a relacao de ergodicidade da Rede de Petri Estocasticada Figura 3.5 com a Cadeia de Markov que a representa, os lugares p8 e p9 da Rede de Petrioriginal (Figura 2.5) foram retirados.

Esta Rede de Petri Estocastica possui 30 marcacoes, descritas na Tabela 3.1, geradas apartir do disparo das transicoes.

A Figura 3.6 representa a arvore de atingibilidade do exemplo em questao.

Neste exemplo, supoe-se que a maquina, responsavel pela manufatura da garrafa de aguae pela tampinha da mesma, nao suporta a producao sobreposta 2 de mais do que 2 unidadesde cada elemento. Logo, o lugar p0 da rede possui apenas 2 tokens, porem a manufatura dasgarrafas e tampinhas depende apenas do estoque de materia-prima destes elementos, os quaisnao estao sendo representados. Os lugares p1 e p2 representam os repositorios de materia-prima ja alocada para as garrafas e para as tampinhas respectivamente. Os lugares p3 e p4

representam, respectivamente, o processo de manufatura das garrafas e o processo de manu-fatura das tampinhas.

2O producao de garrafas e tampinhas ocorre de modo concorrente. Ou seja, enquanto ocorre a producao

de garrafas, a producao de tampinhas aguarda a liberacao da maquina, e vice-versa.

15

m0 m1 m2 m3 m4 m5 m6 m7

M0 2 0 0 0 0 0 0 1

M1 1 1 1 0 0 0 0 1

M2 0 2 2 0 0 0 0 1

M3 1 0 1 1 0 0 0 0

M4 1 1 0 0 1 0 0 0

M5 0 1 2 1 0 0 0 0

M6 0 2 1 0 1 0 0 0

M7 1 0 1 0 0 1 0 1

M8 1 1 0 0 0 0 1 1

M9 0 1 2 0 0 1 0 1

M10 0 2 1 0 0 0 1 1

M11 1 0 0 0 1 1 0 0

M12 1 0 0 1 0 0 1 0

M13 0 0 2 1 0 1 0 0

M14 0 1 1 0 1 1 0 0

m0 m1 m2 m3 m4 m5 m6 m7

M15 0 1 1 1 0 0 1 0

M16 0 2 0 0 1 0 1 0

M17 1 0 0 0 0 1 1 1

M18 0 0 2 0 0 2 0 1

M19 0 1 1 0 0 1 1 1

M20 0 2 0 0 0 0 2 1

M21 0 0 1 0 1 2 0 0

M22 0 0 1 1 0 1 1 0

M23 0 1 0 0 1 1 1 0

M24 0 1 0 1 0 0 2 0

M25 0 0 1 0 0 2 1 1

M26 0 1 0 0 0 1 2 1

M27 0 0 0 0 1 2 1 0

M28 0 0 0 1 0 1 2 0

M29 0 0 0 0 0 2 2 1

Tabela 3.1: Marcacoes da Figura 3.5

M 0

M 1

M 2

M 6

M 10

M 5

M 9

M 14M 13

M 18

M 21

M 25

M 16

M 20

M 24

M 26

M 15

M 19

M 4

M 23M 22

M 26

M 8M 28

M 29 M 12

M 3

M 7 M 5

M 9M 11

M 17M 14

M 19 M 0

M 4

M 6 M 8

M 12M 10

M 17M 15

M 3M 25

M 1

M 7M 27

M 11

t0

t0

t0 t1

t1

t1

t1

t1

t1

t1

t2

t2

t2

t2

t2

t2

t2

t2

t3

t3

t1

t3

t3

t3t3

t3

t4

t4

t4

t4

t4

t4

t4

t5

t5

t5t5

t5

t5

t5

M 17

29M

t5

t5 t4

t0

t0

t0

t0

t0

t3t0

(2)

(1)

(1)

(1)

(1)

(1)

(1)

(1)

(1)

Figura 3.6: Arvore de atingibilidade da Figura 3.5

O lugar p7 representa a maquina responsavel pela linha de producao da fabrica. A maquinasuporta apenas uma tarefa por vez, ou seja, um token no lugar p7 indica que a maquina estadisponıvel. Se este lugar nao possuir um token, significa que um dos dois processos de producaoesta utilizando a maquina.

Os lugares p5 e p6 sao os depositos das garrafas e das tampinhas respectivamente. Aocontrario do exemplo modelado na Figura 2.5, este exemplo nao possui um lugar represen-tando a juncao da garrafa e tampinha de agua mineral. Este passo e tratado de forma abstratana transicao t5, onde esta ocorre a medida que haja tokens nos lugares p5 e p6. Consequente-mente, um token e retirado dos lugares p5 e p6 (depositos de garrafas e tampinhas) e colocadono lugar p0, liberando o processo de manufatura de uma nova garrafa e nova tampinha.

A transicao t0 representa o inıcio do processo de manufatura. Esta transicao esta associada

16

a uma taxa de disparo dependente da marcacao de m1. Quando a transicao t0 e disparada,um token e removido de p0 e adicionado em p1 e p2, habilitando o processo de manufaturadas garrafas e tampinhas.

Como as transicoes t1 e t2 encontram-se em conflito, quando a maquina estiver produzindogarrafas (lugar p3), ela nao estara produzindo tampinhas (lugar p4), e vice-versa. Quandouma das transicoes t3 ou t4 ocorrer, um token sera colocado em p7 disponibilizando a maquinapara um novo processo de manufatura. Quando ambos os lugares p5 e p6 contiverem ao menosum token cada, entao a transicao t5 e disparada.

Isso caracteriza o fim do processo de manufatura de garrafas e tampinhas, possibilitandouma possıvel continuacao do processo. Com isso, um token e colocado em p0 permitindo aproducao de uma nova garrafa e tampinha.

O formalismo de Redes de Petri Estocasticas e uma ferramenta muito util para analise desistemas de computadores, visto que permite as atividades de sistemas serem precisamentedescritas atraves de um grafico. Este grafico pode ser convertido para um modelo Markovianoutilizado para obter-se avaliacao quantitativa do sistema em questao.

17

4 Redes de Petri Estocasticas

Generalizadas

Uma caracterıstica importante do formalismo de Redes de Petri Estocasticas e que elepode ser facilmente compreendido por pessoas que nao tenham familiaridade com metodosde modelagem probabilıstica.

Entretanto, a representacao grafica de sistemas utilizando o formalismo de Redes de PetriEstocasticas encontra-se limitada a medida que aumenta-se o tamanho e a complexidade dosistema em questao. Alem disso, o numero de estados da Cadeia de Markov equivalente aRede de Petri cresce muito rapidamente conforme a dimensao do grafico cresce. Portanto, oformalismo de Redes de Petri Estocasticas pode ser usado para modelar somente sistemas detamanho limitado.

4.1 Descricao Informal

Geralmente, nao e desejavel associar uma variavel aleatoria distribuıda exponencialmentepara cada transicao do modelo, conforme descrito no formalismo de Redes de Petri Es-tocasticas. O formalismo de Redes de Petri Estocasticas Generalizadas (GSPN) associa temposomente para alguns eventos que acredita-se ter um grande impacto na avaliacao do sistema.

Um tıpico exemplo disso pode ser o caso em que a sequencia de operacoes de um sistemacompreende atividades cujas duracoes diferem bruscamente. Logo, e conveniente que ativi-dades de duracao desprezıvel 1 sejam modeladas somente do ponto de vista logico, enquantoque atividades de duracao mais longa seriam associadas a uma variavel aleatoria. Atravesdesta modelagem, reduz-se o numero de estados da Cadeia de Markov equivalente ao modelo,consequentemente reduzindo a complexidade da solucao do mesmo. Alem disso, a utilidadede uma estrutura logica que pode ser usada em conjunto com uma estrutura temporizadapermite a construcao de um modelo compacto de sistemas computacionais complexos [13].

O formalismo de Redes de Petri Estocasticas Generalizadas [15] permite duas classes di-ferentes de transicoes no modelo: transicoes imediatas e transicoes temporizadas. A transicaoimediata dispara em tempo zero assim que encontra-se habilitada. A transicao temporizada,assim como no formalismo SPN, dispara apos um tempo aleatorio, distribuıdo exponencial-mente, associado a mesma quando habilitada.

1Atividades de muito curta duracao, ou somente conceitual.

18

As transicoes temporizadas sao representadas graficamente no modelo por barras espessas,e as transicoes imediatas por barras finas. Obviamente, as taxas de disparos estao associadassomente as transicoes temporizadas, e estas podem ser dependentes da marcacao da GSPN.Na Figura 4.1, tem-se um exemplo de um modelo de Rede de Petri Estocastica Generalizada.

p5 p6

p1

t 2

t 1

4t

1m

t 3

t 5

p3 p4

t 7t 6

p2

p7β γ

α

Figura 4.1: Exemplo de uma Rede de Petri Estocastica Generalizada [13]

Como pode ser constatado na Figura 4.1, as transicoes t1, t4 e t5 sao transicoes tempo-rizadas, e as transicoes t2, t3, t6 e t7 sao transicoes imediatas. A transicao t1 e dependenteda marcacao de p1.

A estrutura de uma Rede de Petri Estocastica Generalizada e a mesma utilizada pelaRede de Petri Estocastica, porem o conjunto L = {l1, l2, ..., lm′} de taxas de disparo contemsomente m′ elementos, onde m′ e o numero de transicoes temporizadas da Rede de PetriEstocastica Generalizada. No funcionamento de uma Rede de Petri Estocastica Generalizada,pode ocorrer que varias transicoes sejam habilitadas simultaneamente por uma marcacao. Seo conjunto de transicoes habilitadas H compreender somente transicoes temporizadas, entaoa transicao temporizada ti (i ∈ H) dispara com uma probabilidade:

li∑

k∈H lk, (4.1)

exatamente como no formalismo de Redes de Petri Estocasticas. Se o conjunto H com-preender ambas transicoes imediatas e temporizadas, entao somente as transicoes imediatadasserao disparadas. Se o conjunto H compreender zero ou mais transicoes temporizadas e so-mente uma unica transicao imediata, esta transicao imediata e que sera disparada. Quandoo conjunto H compreender varias transicoes imediatas, e necessario descrever uma funcao de

19

densidade de probabilidade que determine qual transicao sera disparada.

O subconjunto de H compreendendo todas as transicoes imediatas habilitadas junto coma distribuicao de probabilidade associada as mesmas e chamada de random switch2. Estadistribuicao de probabilidade e conhecida como switching distribution3. Diferentes marcacoespodem gerar um unico random switch toda vez que estas marcacoes habilitarem o mesmoconjunto de transicoes imediatas sob as quais uma switching distribution (possivelmente de-pendente de marcacao) pode ser definida [13].

A GSPN descrita na Figura 4.1 possui sete lugares e sete transicoes. Esta GSPN possuitres transicoes temporizadas: t1, t4 e t5, as quais possuem como taxas de disparo m1α, β e γrespectivamente. As transicoes t2, t3, t6 e t7 sao transicoes imediatas, e por definicao possuemtaxas de disparo de tempo zero.

As transicoes t6 e t7 sao transicoes conflitantes. Elas sao sempre habilitadas simultanea-mente, logo e necessario definir uma switching distribution para cada marcacao em que m7

e maior que zero. As transicoes t2 e t3 tambem sao transicoes conflitantes, e estas sao si-multaneamente habilitadas se p3 e p4 contiverem tokens. Por conseguinte, uma switching

distribution deve ser definida para cada marcacao em que m2, m3 e m4 forem maiores quezero. Como pode ser observado, nao mais do que duas transicoes imediatas podem estar si-multaneamente habilitadas. Desta forma, dois random switchs podem ser identificados: paraas transicoes t2 e t3, e para as transicoes t6 e t7. Assim como na modelagem de Rede dePetri e necessario especificar-se a marcacao inicial como parametro de entrada da mesma, emuma GSPN tambem e necessario identificar os possıveis random switch da rede, e definir aswitching distribution da mesma para resolver-se os conflitos das transicoes. Uma possıvelswitching distribution para o exemplo da Figura 4.1 e descrito na Tabela 4.1.

P{t2} = m3

m3+m4

P{t3} = m4

m3+m4

P{t6} = m4

m3+m4

P{t7} = m3

m3+m4

se m3 6= 0 ou m4 6= 0

P{t6} = P{t7} = 1/2, se m3 = m4 = 0

Tabela 4.1: Switching distribution da GSPN descrita na Figura 4.1

A partir da marcacao inicial descrita na Figura 4.1, uma possıvel execucao do estado daGSPN pode ser a seguinte: a transicao t1 dispara com uma taxa 1/(2α), visto que esta edependente da marcacao de m1. Com isso, um dos dois tokens contidos em p1 e movido

2Momento em que e necessario determinar-se qual transicao deve ser disparada.3Termo tambem conhecido como distribuicao de escolha ou agulhamento. O termo nao foi traduzido visto

que a traducao poderia nao contemplar corretamente o sentido do mesmo.

20

para p2. Instantaneamente, ambas as transicoes t2 e t3 podem dispar. Como estas duastransicoes sao conflitantes, o disparo da transicao e selecionado de acordo com a switching

distribution definida previamente na Tabela 4.1. Neste caso, ambas as transicoes possuem amesma probabilidade. Assume-se que a transicao t2 dispara. Logo, remove-se um token dep2 e p3, e adiciona-se um token em p5. Consequentemente, as transicoes temporizadas t1 e t4encontram-se habilitadas. A transicao t1 dispara com probabilidade:

P{t1} =α

α + β, (4.2)

enquanto a transicao t4 dispara com a probabilidade:

P{t4} =β

α + β. (4.3)

Se a transicao t1 disparar primeiro, um token e movido de p1 para p2. Desse modo, atransicao imediata t3 e habilitada e disparada instanteneamente, visto que e a unica transicaohabilitada deste tipo no momento. Um token e removido de p2 e p4, e coloca-se um token

em p6. Neste momento, a marcacao resultante da GSPN contem um token em p5 e p6. Estamarcacao habilita as transicoes t4 e t5, onde cada uma pode disparar com a probabilidade:

P{t4} =β

β + γ, P{t5} =

γ

β + γ. (4.4)

Agora, assume-se que t4 dispara primeiro, entao um token e movido de p5 para p7, e umtoken e colocado em p1. As duas transicoes imediatas t6 e t7 estao simultaneamente habili-tadas, e como especificado no switching distribution da Tabela 4.1, cada uma das transicoespode disparar com probabilidade igual a 1/2, de forma que o token de p7 pode mover-se tantopara p3 quanto para p4. Neste instante, as transicoes t1 e t5 encontram-se habilitadas, e aGSPN segue o seu funcionamento.

O conjunto de atingibilidade de uma GSPN pode ser dividido em dois grupos: tangible

markings4 e vanishing markings5. As tangible markings sao marcacoes que habilitam somentetransicoes temporizadas. Enquanto as vanishing markings sao marcacoes que habilitam aomenos uma transicao imediata. A Tabela 4.2 descreve os estados que compoem o conjunto deatingibilidade da rede em questao. O conjunto de atingibilidade da GSPN e um subconjuntodo conjunto de atingibilidade da SPN associada, pois as regras de precedencia introduzidascom o uso de transicoes imediatas nao permitem que alguns estados sejam atingıveis. Astransicoes temporizadas t1, t4 e t5 habilitadas nas vanishing markings, por definicao, nuncaocorrerao, pois as transicoes imediatas habilitadas com estas transicoes ocorrerao primeiro.

4Termo tambem conhecido como marcacoes atingıveis.5Termo expresso no sentido de marcacoes efemeras.

21

Marcacao m1 m2 m3 m4 m5 m6 m7 Transicoes habilitadas

Tangible Markings M0 2 0 1 1 0 0 0 t1M3 1 0 0 1 1 0 0 t1 t4M4 1 0 1 0 0 1 0 t1 t5M9 0 0 0 0 1 1 0 t4 t5M22 1 0 0 1 0 1 0 t1 t5M24 1 0 1 0 1 0 0 t1 t4M31 0 0 0 0 0 2 0 t5M32 0 0 0 0 2 0 0 t4

Vanishing Markings M1 1 1 1 1 0 0 0 t1 t2 t3M5 0 1 0 1 1 0 0 t3 t4M6 0 1 1 0 0 1 0 t2 t5M7 2 0 0 1 0 0 1 t1 t6 t7M8 2 0 1 0 0 0 1 t1 t6 t7M14 1 0 0 0 0 1 1 t1 t5 t6 t7M15 1 0 0 0 1 0 1 t1 t4 t6 t7M28 0 1 0 1 0 1 0 t3 t5M29 0 1 1 0 1 0 0 t2 t4

Tabela 4.2: Marcacoes da Figura 4.1

Assumindo-se que o exemplo descrito na Figura 4.1 representasse uma Rede de PetriEstocastica, as transicoes t2, t3, t6 e t7 seriam transicoes temporizadas. O conjunto de atin-gibilidade para esta rede possuiria 33 estados. A arvore de atingibilidade para a Figura 4.1,caso esta fosse uma SPN, esta representada na Figura 4.2.

M 0

M 1

M 3

M 5

M 9

M 22

M 28 M 7

M 31 M 10

M 14

M 4M 21

M 7M 8M 27

M 20

M 28M 6M 27

M 10M 11M 30

M 18 M 16

M 10

M 16 M 14 M 1 M 17

M 20 M 2 M 25

M 15

M 3M 23 M 24M 21

M 29 M 8

M 32 M 11

M 15

M 14

M 7

M 10 M 0 M 12

M 17

M 25 M 22

M 28

M 4

M 6 M 8

M 11

M 18 M 1M 15 M 19

M 23 M 26 M 2

M 5M 29M 27

M 2

M 5 M 6

M 11 M 13

t2

t2 t3

t3

t5

t7t6

M 19

M 26 M 24

M 29

t1

t2

t2

t2 t5

t2 t7t6

t2 t6 t7

t4 t6 t7

t4

t7t6

t1

t3

t3

t3 t4

t3 t6 t7

t3 t6 t7

t5t4

t4 t6 t7

t4

t2

t4

t4

t5 t6 t7

t5

t3 t5

t5

t6 t7t5 t6 t7

t6 t7

t6 t7

M 0M 9

t1

t1

t1 t1

t1

t1

t1

t1

t1t1

t1

t1

t1 t1

t1

t1

(2)

(1)

(1) (1)

(1)

(1)

(1)

(1)

(1)

(1)

(1)(1)

(1)

(1)

(1) (1)

(1)

(1)

Figura 4.2: Arvore de atingibilidade caso a Figura 4.1 fosse uma SPN

Entretanto, o conjunto de atingibilidade da GSPN descrita na Figura 4.1, possui apenas17 estados. Observe que algumas marcacoes da arvore de atingibilidade nao serao atingıveisdevido ao uso de transicoes imediatas e da switching distribution especificada para este exem-plo - marcacoes compreendidas pela area pontilhada da Figura 4.2. A Figura 4.3 representaa arvore de atingibilidade da Figura 4.1.

Agora que a arvore de atingibilidade esta definida, pode-se construir sua Cadeia de Markovequivalente. Como descrito no capıtulo anterior, o espaco de estados da Cadeia de Markovcorrespondente as marcacoes da arvore de atingibilidade da rede em questao. Ou seja, na

22

M 0

M 1

M 4

M 8M 6

t5

M 9

t2

M 0

t7

t3t2

M 3 t2

M 5

M 9

t3

t5t4

M 22

M 31

M 14

t3

M 28 M 7

t7M 14t6

M 4

M 32

M 15

t2

t4

M 29

M 24

M 8

M 3

M 15 t7t6

M 7

M 0

t6

t5

t1

t1t1

t5t1

t1t4

(2)

(1)(1)

(1)(1)

Figura 4.3: Arvore de atingibilidade da Figura 4.1

Figura 4.3, a arvore de atingibilidade possui 17 marcacoes que serao equivalentes aos 17 es-tados da Cadeia de Markov - Figura 4.4.

M 0

M 1M 3 M 4

M 7 M 5 M 6 M 8

M 9

t 2 t 3

t 6t 7

t 4 t 5

t 3 t 2

t 6 t 7

M15 M24

t 5

M28 M31

t 4

M32 M29

M1422Mt 7

t 3 t 2

t 6

t 1t 4t 5

t 1

t 1t 5 t 1 t 5

t 1

(2)

(1) (1)

(1)(1)

Figura 4.4: Cadeia de Markov da Figura 4.1 compreendendo vanishing e tangible markings

Os estados pontilhados da Cadeia de Markov da Figura 4.4correspondem as vanishing

markings, enquanto os demais estados correspondem as tangible markings. Como as vanish-

ing markings sao marcacoes que ocorrem em tempo zero, somente as tangible markings saorepresentadas na Cadeia de Markov - Figura 4.5.

Na Figura 4.5, tem-se apenas as tangible markings da GSPN representando a Cadeiade Markov equivalente. Na Cadeia de Markov equivalente a GSPN em questao, os arcosnao correspondem simplesmente a taxa de disparo de uma transicao. Eles correspondem aoconjunto de taxas percorridas de um estado ao outro, ou seja, os arcos sao rotulados com exa-tamente uma transicao temporizada seguida de uma sequencia finita (possivelmente vazia) detransicoes imediatas.

23

M 3

M 0

M 4

22M

M 9

M24

M31 M32

t 6t 5,

t 7t 4,

t 7t 5, t 4, t 6

t 5, t 6

t 5, t 7

t 7t 5,

t 7t 4,t 5, t 6

t 4, t 6

t 21t 1t t 3

t 3 t 1t 1 t 2

t 3 t 2t 1 t 1

(2), (2),

(1), (1),

(1), (1),

Figura 4.5: Cadeia de Markov da Figura 4.1 somente com tangible markings

Como pode ser observado na Tabela 4.2, existe 3 possıveis conflitos entre tangible mark-

ings: t1 e t4, t1 e t5, e t4 e t5. A probabilidade de cada transicao conflitante disparar estadescrita na equacao (4.1). Ja nas vanishing markings, dois random switch sao identificados:t2 e t3, e t6 e t7.

Note que M1 e a unica marcacao que possibilita que t2 e t3 encontrem-se em conflito. Aprobabilidade de cada uma destas transicoes conflitantes disparar foi determinada na switch-

ing distribution descrita na Tabela 4.1. Neste caso, a probabilidade de ambas as transicoesdispararem e igual a 1/2. A definicao dos random switch em uma GSPN pode algumasvezes requerer do desenvolvedor do modelo uma perspicacia e discernimento nas operacoes dosistema modelado, pois a definicao da switching distribution pode ter um impacto bastantesignificativo nos resultados numericos do modelo.

As marcacoes M7, M8, M14 e M15 sao responsaveis por colocarem as transicoes t6 e t7 emconflito. Determinou-se dois momentos bem especıficos na Tabela 4.1 para solucionar o con-flito destas duas transicoes. Quando nao houverem tokens nos lugares p3 e p4 (marcacoes M14

e M15), a probabilidade de ambas as transicoes dispararem e igual a 1/2. Entretanto, quandom3 = 0 e m4 = 1 (marcacao M7), a transicao t6 sera disparada. Em contra partida, quandom3 = 1 e m4 = 0 (marcacao M8), a transicao t7 sera disparada. Sendo assim, seguindo oque foi especificado na Tabela 4.1 na modelagem da GSPN em questao, determinou-se queos lugares p3 e p4 jamais conterao dois tokens. Note que esta limitacao nao e intrınseca daestrutura e da marcacao inicial, mas uma consequencia das switching distributions definidasna Tabela 4.1.

Um aspecto crıtico na modelagem de uma GSPN e a identificacao de todos os random

switch do sistema e a definicao de uma switching distribution “apropriada” em todas asmarcacoes.

24

4.2 Exemplo de Modelagem

A Figura 4.6 representa uma variacao da Rede de Petri Estocastica representada na Figura3.5.

p1

p3

p5

p0

p7

p2

t 2

p4

4t

p6

t 0

t 5

t 1

t 3

1m

δγ

φ

Figura 4.6: Compartilhamento de recursos com exclusao mutua - Rede de Petri EstocasticaGeneralizada

A Rede de Petri Estocastica modelada na Figura 3.5 possui somente transicoes tempo-rizadas. Na rede da Figura 4.6, as transicoes t1, t2 e t5 passam a ser transicoes imediatas, ouseja, disparam em tempo zero assim que encontram-se habilitadas. Esta rede continua repre-sentando o processo de producao em uma fabrica de agua mineral. A switching distribution

da GSPN modelada como exemplo esta definida na Tabela 4.3.

P{t1} = m1

m1+m2

P{t2} = m2

m1+m2

P{t1} = m1

m5+m6

P{t2} = m2

m5+m6

P{t5} = m5+m6

m5+m6

P{t1} = m1

m5+m6

P{t5} = m6

m5+m6

P{t2} = m2

m5+m6

P{t5} = m5

m5+m6

Tabela 4.3: Switching distribution da GSPN descrita na Figura 4.6

25

Esta Rede de Petri Estocastica Generalizada possui 24 marcacoes, descritas na Tabela4.4, geradas a partir do funcionamento da mesma.

Marcacao m0 m1 m2 m3 m4 m5 m6 m7 Transicoes habilitadas

Tangible Markings M0 2 0 0 0 0 0 0 1 t0M3 1 0 1 1 0 0 0 0 t0 t3M4 1 1 0 0 1 0 0 0 t0 t4M5 0 1 2 1 0 0 0 0 t3M6 0 2 1 0 1 0 0 0 t4M11 1 0 0 0 1 1 0 0 t0 t4M12 1 0 0 1 0 0 1 0 t0 t3M13 0 0 2 1 0 1 0 0 t3M14 0 1 1 0 1 1 0 0 t4M15 0 1 1 1 0 0 1 0 t3M16 0 2 0 0 1 0 1 0 t4M21 0 0 1 0 1 2 0 0 t4M24 0 1 0 1 0 0 2 0 t3

Vanishing Markings M1 1 1 1 0 0 0 0 1 t0 t1 t2M7 1 0 1 0 0 1 0 1 t0 t2M8 1 1 0 0 0 0 1 1 t0 t1M9 0 1 2 0 0 1 0 1 t1 t2M10 0 2 1 0 0 0 1 1 t1 t2M17 1 0 0 0 0 1 1 1 t0 t5M18 0 0 2 0 0 2 0 1 t2M19 0 1 1 0 0 1 1 1 t1 t2 t5M20 0 2 0 0 0 0 2 1 t1M25 0 0 1 0 0 2 1 1 t2 t5M26 0 1 0 0 0 1 2 1 t1 t5

Tabela 4.4: Marcacoes da Figura 4.6

A transicao temporizada t0 habilitada nas vanishing markings, por definicao, nunca ocor-rera, pois somente as transicoes imediatas habilitadas com esta transicao poderao ocorrer. AFigura 4.7 representa a arvore de atingibilidade do exemplo em questao.

As marcacoes compreendidas pela area pontilhada na arvore de atingibilidade nao saoatingidas pelo funcionamento da rede. A Cadeia de Markov equivalente a esta GSPN estadescrito na Figura 4.8.

Os estados pontilhados da Cadeia de Markov correspondem as vanishing markings, en-quanto os demais estados correspondem as tangible markings. Somente as tangible markings

sao representadas na Cadeia de Markov, visto que as vanishing markings ocorrem em tempozero - Figura 4.9.

Com isso, a Cadeia de Markov equivalente encontra-se somente com 13 estados, aocontrario da SPN equivalente da mesma que possui 30 estados.

Por utilizar transicoes imediatas, o formalismo de Redes de Petri Estocasticas Generaliza-das minimiza o espaco de estados da Cadeia de Markov equivalente a rede. Tal caracterısticae dependente da forma como a mesma foi modelada, de forma que somente os eventos quetenham alguma relevancia na avaliacao do sistema tenham um tempo de retardo associadoas transicoes.

26

M 0

M 1

M 2

M 6

M 10

M 5

M 9

M 14M 13

M 18

M 21

M 25

M 16

M 20

M 24

M 26

M 15

M 19

M 4

M 23M 22

M 26

M 8M 28

M 29 M 12

M 3

M 7 M 5

M 9M 11

M 17M 14

M 19 M 0

M 4

M 6 M 8

M 12M 10

M 17M 15

M 3M 25

M 1

M 7M 27

M 11

t0

t0

t0 t1

t1

t1

t1

t1

t1

t1

t2

t2

t2

t2

t2

t2

t2

t2

t3

t3

t1

t3

t3

t3t3

t3

t4

t4

t4

t4

t4

t4

t4

t5

t5

t5t5

t5

t5

t5

M 17

29M

t5

t5 t4

t0

t0

t0

t0

t0

t0 t3

(2)

(1)

(1)

(1)

(1)

(1)

(1)

(1)

(1)

Figura 4.7: Arvore de atingibilidade da Figura 4.6

M 0

M 1

M 7

M 4

M19

M17

M 3

M 9

M14 M13

18M

M10

M15

M 6

M12

M20

M16

M 8

M11

M 5

t 4t 3

t 3

t 2

t 1 t 2

t 5

t 5

t 4t 0

t 3

t 2 t 1

t 0

t 4

t 1t 2t 1

t 4

t 4t 3

t 3

M21M25 M24 M26

t 5 t 5

t 2 t 1 t 3t 4

t 0

t 0

t 0

(2)

(1) (1)

(1) (1)

Figura 4.8: Cadeia de Markov da Figura 4.6 compreendendo vanishing e tangible markings

M 0

M 4M 3

M 5 M12 M 6M15

M16M24M13 M21

M14 M11

t 0

t 0t 2t 3, t 4, t 1

t 4, t 1t 2t 3,

t 3, t 2 t 1t 4,

t 4,(t 5 )t 1

t 1t 3, t 4,

t 4, (t 5 t 2 )

t 4, (t 5 t 2 )t 3, (t 5 )t 1

t 3, (t 5 )t 1

t 5t 4, t 3, t 5

t 3, (t 5 t 2 )

t 2

t 1 t 20t t 0

t 0

t 0

(2), (2),

(1) (1)

(1) (1)

Figura 4.9: Cadeia de Markov da Figura 4.6 somente com tangible markings

27

5 Conclusao

O formalismo de Redes de Petri Estocasticas Generalizadas e uma generalizacao do forma-lismo de Redes de Petri Estocasticas, pois ele permite que as transicoes sejam representadascom duas semanticas diferentes: imediatas ou temporizadas. Um tempo de disparo aleatoriodistribuıdo exponencialmente e associado as transicoes temporizadas, enquanto as transicoesimediatas disparam em tempo zero. Uma GSPN possui dois tipos de marcacoes: tangi-

ble markings, habilitam somente transicoes temporizadas, e vanishing markings, habilitampelo menos uma transicao imediata. As vanishing markings podem habilitar um conjuntode transicoes imediatas sobre as quais uma switching distribution e definida para descreverprobabilisticamente a selecao da transicao a ser disparada. Conjuntos de transicoes imediatashabilitadas simultaneamente junto com seus respectivos switching distributions formam osrandom switchs.

O formalismo de Redes de Petri Estocasticas Generalizadas e uma ferramenta para umadescricao precisa de atividades de sistemas. De fato, a representacao das atividades do sistemamodelados em uma GSPN e feita de forma direta. Durante a etapa inicial de analise de umaGSPN (construcao do conjunto de atingibilidade) pode-se usar algumas das caracterısticas deRedes de Petri para testar-se a correcao do sistema modelado. Por exemplo, a deteccao dedeadlocks no sistema.

Uma caracterıstica distinta do formalismo de GSPN em relacao ao formalismo de Redesde Petri e o isomorfismo com Cadeias de Markov, que permite a avaliacao quantitativa dodesempenho de sistemas. Logo, o mapeamento de uma GSPN para um modelo Markovi-ano equivalente e feito de forma transparente, superando a dificuldade da construcao direta(definicao dos estados) da Cadeia de Markov.

Uma descricao detalhada de um sistema pode causar um aumento muito rapido no numerode estados do modelo Markoviano equivalente, visto que a complexidade e o tamanho do sis-tema modelado tambem podem crescer. O uso do formalismo de Redes de Petri EstocasticasGeneralizadas reduz o espaco de estados da Cadeia de Markov. Porem, o problema do au-mento do tamanho e da complexidade dos sistemas nao e solucionado, ele apenas resolve doponto de vista da modelagem de sistemas. Existem outros formalismos que tem em vista asuperacao de tal dificuldade, tais como: SAN [24], PEPA [8], Balls & Buckets [28] e Decision

Diagrams [17].

Como trabalhos futuros, tem-se o intuito de formular um relatorio tecnico contendo adefinicao formal dos formalismos de Redes de Petri, Redes de Petri Estocasticas e Redes dePetri Estocasticas Generalizadas de modo a definir inequivocamente suas propriedades de mo-

28

delagem. Tambem tem-se como objetivo estudar o formalismo de Redes de Petri EstocasticasGeneralizadas Superpostas a vista de uma resolucao numerica eficiente e uma eventual com-paracao com o formalismo de Redes de Automatos Estocasticos.

29

Referencias Bibliograficas

[1] G. Balbo, S. C. Bruell, and M. Sereno. Arrival theorems for product-form stochastic petrinets. In Proceedings of the 1994 conference on Measurement and modeling of computer

systems, pages 87–97, Nashville, Tennessee, United States, 1994. ACM Press.

[2] F. Baskett, K. Chandy, R. Muntz, and F. Palacios. Open, closed, and mixed networksof queues with different classes of customers. Journal of the ACM, 22(2):248–260, 1975.

[3] Y. Dallery. Approximate analysis of general open queueing networks with restrictedcapacity. Technical report, Grenoble, 1998.

[4] S. Donatelli. Superposed stochastic automata: a class of stochastic petri nets withparallel solution and distributed state space. Performance Evaluation, 18:21–36, 1993.

[5] S. Donatelli. Superposed generalized stochastic petri nets: definition and efficient solu-tion. In Proceedings of the 15th International Conference on Applications and Theory of

Petri Nets, pages 258–277, Springer-Verlag, Berlin Heidelberg, 1994. R. Valette.

[6] G. Florin and S. Natkin. Les reseaux de petri stochastiques. Tecniques et Sciences

Informatiques, 4(1):143–160, 1985.

[7] E. Gelenbe and H. Shachnai. On g-networks and resource allocation in multimedia sys-tems. In IEEE Research in Data Engineering, pages 104–110, Orlando, Florida, February1998.

[8] S. Gilmore and J. Hillston. The pepa workbench: A tool to support a process algebra-based approach to performance modelling. In Computer Performance Evaluation, pages353–368, 1994.

[9] J. R. Jackson. Networks of waiting lines. Operations Research, 5:518–521, 1957.

[10] J. R. Jackson. Jobshop-like queueing systems. Management Science, 10:131–142, 1963.

[11] J. D. C. Little. A proof of the queueing formula l = λw. Operating Research, 9:383–387,1961.

[12] P. R. M. Maciel, R. D. Lins, and P. R. F. Cunha. Introducao as Redes de Petri e

Aplicacoes. 10a Escola de Computacao, 1996.

[13] M. Ajmone Marsan, G. Balbo, and G. Conte. Performance Models of Multiprocessor

systems. The MIT Press, 1986.

30

[14] M. Ajmone Marsan, G. Balbo, G. Conte, S. Donatelli, and G. Franceschinis. Modelling

with Generalized Stochastic Petri Nets. John Wiley and Sons, 1995.

[15] M. Ajmone Marsan, G. Conte, and G. Balbo. A class of generalized stochastic petrinets for the performance evaluation of multiprocessor systems. ACM Transactions on

Computer Systems, 2(2):93–122, 1984.

[16] P. M. Merlin and D. J. Farber. Recoverability of communication protocols - implicationsof a theorical study. IEEE Transactions on Communications, 24(9):1036–1043, 1976.

[17] A. S. Miner, G. Ciardo, and S. Donatelli. Using the exact state space of a markovmodel to compute approximate stationary measures. In Proceedings of the International

Conference on Measurements and Modeling of Computer Systems, pages 207–216, SantaClara, California, United States, June 2000. ACM Press.

[18] M. K. Molloy. On the Integration of Delay and Throughput Measures in Distributed

Processing Models. PhD thesis, University of California, Los Angeles, 1981.

[19] S. Natkin. Reseaux de Petri Stochastiques. PhD thesis, CNAM, Paris, 1980.

[20] J. D. Noe and G. J. Nutt. Macro e-nets representation of parallel systems. IEEE

Transactions on Computers, C-22(8):718–727, 1973.

[21] J. L. Peterson. Petri nets. ACM Computing Surveys, 9(3):223–252, 1977.

[22] C. A. Petri. Kommunikation mit Automaten. PhD thesis, Institut fur instrumentelleMathematik, Bonn, 1962.

[23] M. Pidd. Computer simulations and management science. John Wiley and Sons, 1992.

[24] B. Plateau. De l´Evaluation du Parallelisme et de la Synchronisation. PhD thesis,Paris-Sud, Orsay, 1984.

[25] M. Reiser and S. S. Lavenberg. Mean-value analysis of closed multichain queueing net-works. Journal of the ACM, 27(2):313–322, 1980.

[26] W. Reisig. Petri nets: an introduction. Springer-Verlag, Berlin, 1985.

[27] G. Richter. Clocks and their use for time modelling. In Information Systems: Theoretical

and Formal Aspects, pages 49–66, North Holland, Amsterdam, 1985.

[28] W. J. Stewart. Introduction to the numerical solution of Markov chains. PrincetonUniversity Press, 1994.

[29] F. J. W. Symons. Modelling and Analysis of Communication Protocols Using Numerical

Petri Nets. PhD thesis, University of Essex, 1978.

[30] M. Tazza. Analise Quantitativa de Sistemas. Escola Brasileira-Argentina de Informatica,1988.

[31] K. S. Trivedi. Probability & statistics with reliability, queuing, and computer science

applications. Englewood Cliffs: Prentice-Hall, 1982.

[32] W. M. Zuberek. Timed petri nets and preliminary performance evaluation. In Proceedings

of the 7th Annual Symposium on Computer Architecture, La Baule, France, 1980.

31