aspectos, podem-se agrupar as extens˜oes temporais das redes de Petri em quatro grandes categorias:
• Redes de Petri Temporais (Time Petri Nets). A restri¸c˜ao temporal ´e um inter- valo de tempo associado a cada transi¸c˜ao. Foram inicialmente usadas na descri¸c˜ao de protocolos de comunica¸c˜ao, entretanto, seu campo de aplica¸c˜ao tem se ampliado para ´areas como: manufatura, sistemas em tempo real, valida¸c˜ao e verifica¸c˜ao de sistemas [Nid94, BM82, BV95, MGV00].
• Redes de Petri Temporizadas (Timed Petri Nets). Permitem que transi¸c˜oes ou lugares retenham marcas durante um intervalo de tempo. S˜ao comumente usadas na an´alise de sistemas de manufatura [Fre82, Sif77].
• Marcas Temporizadas. A restri¸c˜ao temporal ´e associada `a marca ao se propagar na rede. S˜ao largamente usadas em problemas de produ¸c˜ao [Cel82, TYC95].
• Modelos Probabil´ısticos. S˜ao as chamadas redes de Petri Estoc´asticas e s˜ao usadas para estima¸c˜ao de desempenho de grandes sistemas. Uma probabilidade ´e associada com uma das op¸c˜oes, transi¸c˜ao, lugar ou marca [Mur89].
Ao longo deste trabalho de tese, ser˜ao analisadas as redes de Petri, inicialmente propostas por Merlin e Faber [Mer74, MF76] e ampliadas em [BD91], s˜ao as denominadas Redes de Petri Temporais (RPT s). Este modelo mostra-se adequado para expressar a maioria dos requisitos temporais, al´em de ser mais geral que as demais extens˜oes temporais [BV95, MGV00].
3.3
Redes de Petri Temporais
As RPT s s˜ao extens˜oes das RPs em que a interferˆencia do tempo ocorre por meio de dois fatores: atraso e imprecis˜ao na data (instante) do disparo das transi¸c˜oes. Em termos do comportamento dinˆamico da rede, o atraso significa que uma transi¸c˜ao ao ser habilitada pela marca¸c˜ao, n˜ao necessariamente estar´a pronta para ser disparada, mas sim, depois de um tempo (atraso), denominado limite m´ınimo de sensibiliza¸c˜ao. Decorrido o tempo m´ınimo de sensibiliza¸c˜ao, a transi¸c˜ao estar´a pronta para ser disparada, por´em, a data desse disparo n˜ao ´e exata, mas sim, imprecisa. Al´em desses dois fatores, a semˆantica quanto ao disparo das transi¸c˜oes ´e uma semˆantica forte. Isto significa que, mesmo havendo uma imprecis˜ao na data de disparo das transi¸c˜oes, se decorrido o tempo dessa imprecis˜ao e a transi¸c˜ao permanece
3.3 Redes de Petri Temporais 27 sensibilizada, ent˜ao, ela deve ser disparada. O limite m´aximo de tempo, para o qual uma transi¸c˜ao deve ser disparada, ´e denominado limite m´aximo de sensibiliza¸c˜ao.
Defini¸c˜ao 3.16 (Rede de Petri Temporal) Uma rede de Petri Temporal ´e uma tripla RPT = (N, M0, Is), sendo:
• N, uma RP ordin´aria
• M0: P → N, a marca¸c˜ao inicial
• Is: T → (Q+×(Q+S{∞}), fun¸c˜ao intervalos est´aticos, sendo Q+ conjunto dos n´umeros racionais positivos, juntamente com o zero2
A fun¸c˜ao Is associa, a cada transi¸c˜ao t ∈ T , um intervalo Is(t) = [δs(t), ∆s(t)], sendo δs(t) o limite inferior de sensibiliza¸c˜ao (lis) e ∆s(t) o limite superior de sensibiliza¸c˜ao (lss)
da transi¸c˜ao t, e verificando as seguintes condi¸c˜oes.
• 0 ≤ δs(t) ≤ ∆s(t)
• 0 ≤ δs< ∞ • 0 ≤ ∆s≤ ∞
Estando uma transi¸c˜ao habilitada pela marca¸c˜ao, n˜ao necessariamente ela pode disparar. O disparo dessa transi¸c˜ao s´o ocorrer´a se o tempo de habilita¸c˜ao for, no m´ınimo, igual ao limite inferior de sensibiliza¸c˜ao da transi¸c˜ao, δs(t). Supondo que uma transi¸c˜ao t torna-se habilitada pela marca¸c˜ao, no instante θ , o disparo de t n˜ao ocorrer´a antes do instante θ + δs, e n˜ao depois do instante θ + ∆s. Se ocorrer, ser´a no intervalo [θ + δs, θ + ∆s]. Enquanto a transi¸c˜ao t estiver habilitada, as marcas permanecem em seus lugares de entrada, podendo, inclusive, serem removidas pelo disparo de outras transi¸c˜oes.
Devido `a interferˆencia do tempo no processo de disparo das transi¸c˜oes, em uma RPT, apenas a marca¸c˜ao n˜ao ´e suficiente para caracterizar um estado do sistema modelado. Tam- b´em ´e preciso incluir uma informa¸c˜ao a respeito do tempo de sensibiliza¸c˜ao das transi¸c˜oes habilitadas da rede.
2A escolha de Q+ diferencia-se da proposta inicial de Merlin e Faber [Mer74, MF76] e em [BD91], nas
3.3 Redes de Petri Temporais 28 Defini¸c˜ao 3.17 (Estado) O estado de uma RPT ´e definido pelo par h M, rel´ogio i, sendo M a marca¸c˜ao da rede e rel´ogio a informa¸c˜ao a respeito do tempo de sensibiliza¸c˜ao das transi¸c˜oes habilitadas no estado. Para o estado inicial h M0, rel´ogio0 i a fun¸c˜ao rel´ogio ´e dada como
segue,
relogio0(t) =
(
0, se t ∈ H0
∗ caso contr´ario sendo, ∗ desativa¸c˜ao do rel´ogio de t.
Conforme a Defini¸c˜ao 3.17, o estado em uma RPT depende da marca¸c˜ao e do tempo de sensibiliza¸c˜ao das transi¸c˜oes habilitadas pela marca¸c˜ao. Assim, a mudan¸ca de estado pode ocorrer devido a esses dois fatores:
1. mudan¸ca cont´ınua do tempo, sem disparo de transi¸c˜ao.
2. disparo de transi¸c˜ao, sem ajuste do rel´ogio, tamb´em chamada de mudan¸ca discreta do estado.
A transi¸c˜ao de estado devido `a mudan¸ca cont´ınua do tempo, resulta em um novo estado h M1, relogio1i tal que,
1. M0 = M1 2. ∀ t ∈ H0, relogio(t) + τ ≤ ∆s(t) 3. ∀t ∈ T , relogio1(t) = ( relogio(t) + τ se t ∈ H ∗ caso contr´ario A fun¸c˜ao relogio(t) n˜ao deve exceder o limite ∆s.
Seja o estado h M1, relogio1i, resultante do disparo de uma transi¸c˜ao tj ∈ T , a partir do
estado h M, relogio i, ent˜ao,
1. tj ∈ H
2. M1 = M + Pos(tj) − Pre(tj)
3.3 Redes de Petri Temporais 29 4. Para t ∈ T relogio1(t) = 0, se t ´e rec´em-habilitada relogio(t), se t j´a estava habilitada ∗, se t n˜ao est´a habilitada
No primeiro caso, a mudan¸ca de estado ocorre devido `a mudan¸ca de tempo, n˜ao h´a disparo de transi¸c˜ao. Havendo possibilidade de disparo de uma transi¸c˜ao, esse disparo ser´a instantˆaneo, n˜ao consumindo tempo. O disparo de uma transi¸c˜ao s´o ocorrer´a se sua fun- ¸c˜ao relogio (clock ) for maior ou igual ao seu δs. Ocorrido o disparo de uma transi¸c˜ao, as novas transi¸c˜oes habilitadas disparam seus rel´ogios a partir de zero, transi¸c˜oes que persisti- rem habilitadas ter˜ao seus rel´ogios mantidos e as transi¸c˜oes desabilitadas ter˜ao os rel´ogios desativados.
As duas possibilidades, mudan¸ca cont´ınua e mudan¸ca discreta do estado de uma RPT, s˜ao adotadas quando a rede ´e usada como verificador de modelos (model checking). O comportamento da rede ´e, ent˜ao, interpretado como f´ormulas l´ogicas temporais, as quais descrevem propriedades de interesse. As l´ogicas temporais mais populares s˜ao do tipo linear e ramificada. A l´ogica temporal linear (LTL) ´e usada para expressar propriedades como seguran¸ca, bloqueio, entre outras. J´a a l´ogica temporal tipo ramificada (CLT ), tem um maior poder de express˜ao e preserva propriedades s´o observ´aveis com a ramifica¸c˜ao do tempo [Ger99, RR98]. Geralmente, as abordagens que usam tal conceito [YS97, Xua01, GRR05], valem-se de recursos de simula¸c˜ao para prop´osito de an´alise [BRV03, Yov97, GGR05].
Os m´etodos de an´alise das RPT s, considerando a mudan¸ca de estado apenas pelo disparo de uma transi¸c˜ao, geralmente utilizam o conceito de Classe de Estados. Uma classe de estados representa uma compacta¸c˜ao de estados cont´ınuos no tempo, que est˜ao sujeitos `a mesma marca¸c˜ao. As classes de estados foram introduzidas em [BM82, BD91] e seu uso, como formalismo para modelagem e an´alise de sistemas dependentes do tempo, tornou-as mais atrativas e adequadas a outras aplica¸c˜oes, que n˜ao verifica¸c˜ao de modelos [Vic01, XHD02, BV95, MGV00, TYC95, WD00, LLK05].
Defini¸c˜ao 3.18 (Classe de Estados) Uma classe de estado de uma RPT, ´e definida pelo par CS = h M, D i, sendo,
• M, a marca¸c˜ao da rede
• D, ´e um conjunto de inequa¸c˜oes expressando os intervalos de disparos das transi¸c˜oes habilitadas por M, chamado dom´ınio dinˆamico da rede.
3.4 An´alise de Redes de Petri Temporais via Classe de Estados 30