
Una rete di Petri (conosciuta anche com rete posto/transizione o rete P/T) è una delle varie rappresentazioni matematiche di un sistema distribuito discreto. Come un linguaggio di modellizzazione, esso descrive la struttura di un sistema distribuito come un grafo bipartito con delle annotazioni. Ovvero, una rete di Petri ha dei nodi posti, dei nodi transizioni e degli archi diretti che connettono posti e transizioni.
Le reti di Petri furono inventate nel 1962 da Carl Adam Petri durante la sua tesi di dottorato.
Una rete di Petri consiste di posti, transizioni e archi diretti. Possono esserci archi tra posti e transizioni - ma non tra posti e posti o transizioni e transizioni. Un posto da cui un arco parte per finire in una transizione è detto posto di input della transizione; un posto in cui un arco arriva partendo da una transizione è detto posto di output della transizione.
I posti possono contenere un certo numero di token. Una distribuzione di token su un posto della rete è detta marcatura. Le transizioni agiscono sui token in ingresso secondo una regola, detta regola di scatto (in inglese firing). Una transizione è abilitata se può scattare, cioè se ci sono token in ogni posto di input. Quando una transizione scatta, essa consuma i token dai suoi posti di input, esegue dei task e posiziona un numero specificato di token in ognuno dei suoi posti di uscita. Ciò avviene automaticamente, ad esempio in un singolo step non-prelazionabile. L'esecuzione delle reti di Petri è non deterministico. Ciò significa due cose:
Le reti di Petri furono inventate nel 1962 da Carl Adam Petri durante la sua tesi di dottorato.
Una rete di Petri consiste di posti, transizioni e archi diretti. Possono esserci archi tra posti e transizioni - ma non tra posti e posti o transizioni e transizioni. Un posto da cui un arco parte per finire in una transizione è detto posto di input della transizione; un posto in cui un arco arriva partendo da una transizione è detto posto di output della transizione.
I posti possono contenere un certo numero di token. Una distribuzione di token su un posto della rete è detta marcatura. Le transizioni agiscono sui token in ingresso secondo una regola, detta regola di scatto (in inglese firing). Una transizione è abilitata se può scattare, cioè se ci sono token in ogni posto di input. Quando una transizione scatta, essa consuma i token dai suoi posti di input, esegue dei task e posiziona un numero specificato di token in ognuno dei suoi posti di uscita. Ciò avviene automaticamente, ad esempio in un singolo step non-prelazionabile. L'esecuzione delle reti di Petri è non deterministico. Ciò significa due cose:
- se più transizioni sono abilitate nello stesso momento, una qualsiasi di esse può scattare
- non è garantito che una transizione abilitata scatti; una transizione abilitata può scattare immediatamente, dopo un tempo di attesa qualsiasi (a patto che resti abilitata), o non scattare affatto.
Poiché lo scatto di una transizione non è predicibile a priori, le reti di Petri sono molto adatte a modellare il comportamento concorrente di un sistema distribuito.Tratto da it.wikipedia.org
Nessun commento:
Posta un commento