Reti temporizzate
Abbiamo visto come le reti di Petri siano un modello estremamente potente per modellare un’infinita varietà di situazioni anche molto diverse tra loro. Tuttavia, alcune categorie di problemi richiedono un approccio più mirato, ovvero un’estensione delle reti di Petri specifica per il loro studio: è questo il caso dei sistemi Hard Real-time, di cui ora tratteremo approfonditamente.
In molte applicazioni il tempo è un fattore essenziale: si pensi per esempio ad un termostato intelligente che deve accendere e spegnere i termosifoni di una casa in base ad un programma giornaliero oppure ad un autovelox, che in base al tempo di andata e ritorno di un’onda elettromagnetica dev’essere in grado di calcolare la velocità di un veicolo.
Ma non tutti i sistemi basati sul tempo sono uguali: alcuni di essi richiedono infatti il rispetto assoluto di una serie di vincoli temporali stretti, ovvero requisiti sul tempo di esecuzione di certe operazioni che devono essere rispettati per evitare gravi conseguenze.
Considerando per esempio il sistema di controllo di una centrale nucleare, qualora si inizi a rilevare un’aumento eccessivo delle temperature nel reattore tale software dev’essere in grado di reagire entro un certo tempo strettissimo, pena l’esplosione dell’apparato.
Sistemi di questo tipo prendono il nome, come già detto, di sistemi Hard Real-time, dove l’aggettivo “Hard” indica proprio la durezza richiesta nel rispetto dei vincoli temporali.
Visto il loro tipico impiego in situazioni di rischio o di pericolo, i committenti di sistemi di questo tipo potrebbero voler avere prova del loro corretto funzionamento prima ancora che questi vengano installati.
I modelli finora descritti potrebbero però non essere sufficienti: non è per esempio abbastanza un’analisi stocastica della rete, in quanto in virtù dei rischi a cui un malfunzionamento del sistema esporrebbe bisogna essere assolutamente certi del suo corretto funzionamento, certezza che può essere ottenuta solo con un modello deterministico.
Ecco quindi che come strumento di specifica e comunicazione col cliente vengono sviluppate una serie di estensioni alle reti di Petri progettate specificamente per trattare il concetto di tempo e ritardo: tra queste distingueremo in particolare le reti Time Basic (Ghezzi et al., 1989), oggi le più usate.