Corso di Sistemi Modulo di Sistemi a Eventi Discreti (ex Metodi di Specifica) Esercizi

Documenti analoghi
Luigi Piroddi

Luigi Piroddi

Luigi Piroddi

Corso di Automazione industriale

Laboratorio di Informatica

Luigi Piroddi

Luigi Piroddi

Indice generale. Prefazione

Appunti sulle Reti di Petri

Espressioni regolari

Informatica teorica Lez. n 7 Macchine di Turing. Macchine di Turing. Prof. Giorgio Ausiello Università di Roma La Sapienza

Proprietà strutturali: Controllabilità e Osservabilità

Sistemi dinamici a eventi discreti. Classificazione dei processi

AUTOMAZIONE INDUSTRIALE Prof. Luca Ferrarini

Sui Linguaggi Regolari: Teorema di Kleene - Pumping Lemm

AUTOMA A STATI FINITI

GRAFI. Cosa sono Grafi non orientati Grafi orientati Grafi pesati Alberi Automi!

Fondamenti di informatica per la sicurezza anno accademico docente: Stefano Ferrari

Fondamenti di Automatica

Automi Automi finiti: macchine a stati su sistemi di transizioni finiti Modellare con TS e specificare con automi: si usa lo stesso tipo di

Sistemi - Modulo di Sistemi a Eventi Discreti. problema punti massimi i tuoi punti problema 1 20 problema 2 10 totale 30

Luigi Piroddi

Pumping lemma per i linguaggi Context-free

ITLCC 2006/10/6 19:09 page 7 #3

Raggiungibilità, Controllabilità, Osservabilità e Determinabilità

SERIE NUMERICHE FAUSTO FERRARI

Linguaggi Regolari e Linguaggi Liberi

Note sulle Catene di Markov

Luigi Piroddi

Analisi di PN. Uso delle PN per l'analisi dei Sistemi Dinamici Discreti. Proprietà (1) Reti di Petri Analisi di Alcune Proprietà

Modellazione dei processi produttivi 98

UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa 2. Esercizi sul problema dell assegnamento

Esercizi di Fondamenti di Informatica per la sicurezza. Stefano Ferrari

4c. Esercizi sul livello di Rete Instradamento in Internet

Insiemi di numeri reali

LEZIONE 2. ( ) a 1 x 1 + a 2 x a n x n = b, ove a j, b R sono fissati.

Appunti su Indipendenza Lineare di Vettori

Soluzione degli esercizi del Capitolo 8

Informatica Generale Homework di Recupero 2016

Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo

Diagnosi di un sistema ad eventi discreti mediante automi e reti di Petri. Maria Paola Cabasino

LEZIONE 3. a + b + 2c + e = 1 b + d + g = 0 3b + f + 3g = 2. a b c d e f g

Introduzione ai grafi

Controlli Automatici I

controllo stringa a a b a b b c c b a b x y z pila di memoria

Reti Logiche 1. Prof. B. Buttarazzi A.A. 2009/2010. Reti Sequenziali

AUTOMAZIONE INDUSTRIALE (Prof. Luigi Piroddi)

Le grammatiche formali

Macchine sequenziali. Automa a Stati Finiti (ASF)

«Sciente e Tecnologie dei Beni Culturali»

Dipendenza e indipendenza lineare

Linguaggi Regolari e Linguaggi Liberi

Automazione. 20 Gennaio 2016

SERIE NUMERICHE FAUSTO FERRARI

Proprieta dei Linguaggi regolari

Registro Lezioni di Algebra lineare del 15 e 16 novembre 2016.

DISPENSE DI PROGRAMMAZIONE

Automazione. 4 Aprile 2016

1.2) Si spieghi sinteticamente il significato del simbolo riportato in figura

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Esercizi di Calcolo delle Probabilità

Esercizi per il corso di Architettura dei Calcolatori. Anno accademico 2008/09. Si prevede l utilizzo dell emulatore Eniac ( presentato a lezione )

Corso di elettrotecnica Materiale didattico: i grafi

OSTRUZIONI SUI GRAFI. Alcune ostruzioni per l esistenza di grafi con dato score 1) Vale il seguente lemma

MATEMATICA DEL DISCRETO (Informatica) Docenti BONZINI e TURRINI esercizi di preparazione alla prova di metà corso

Concetti di base sugli automi e sui linguaggi formali

Controllo Digitale - A. Bemporad - A.a. 2007/08

Parte V: Rilassamento Lagrangiano

2. I numeri reali e le funzioni di variabile reale

HYPENS: Simulatore di Reti di Petri ibride

2.6 Calcolo degli equilibri di Nash

1.1 Coordinate sulla retta e nel piano; rette nel piano

UNIVERSITÀ di ROMA TOR VERGATA

Quiz sui linguaggi regolari

L ELABORATORE ELETTRONICO

«Sciente e Tecnologie dei Beni Culturali»

un insieme finito di segnali d uscita U (nell ascensore U={stare fermo, salire, scendere})

Proprieta dei Linguaggi Regolari. Proprieta dei Linguaggi Regolari

Suffix Trees. Docente: Nicolò Cesa-Bianchi versione 21 settembre 2017

Automi a Pila e Grammatiche Libere dal Contesto. Automi a Pila e Grammatiche Libere dal Contesto

Appunti del corso di Informatica 1 (IN110 Fondamenti) 7 Grafi e alberi: introduzione

Capitolo 5: Macchine di Turing e calcolabilitá secondo Turing

(E) : 2x 43 mod 5. (2 + h)x + y = 0

Controllo con retroazione dello stato

Fondamenti di informatica II 1. Sintesi di reti logiche sequenziali

Grafi e reti di flusso

Le reti di Petri P/T (Posti/Transizioni)

RISOLUZIONE IN LOGICA PROPOSIZIONALE. Giovanna D Agostino Dipartimento di Matemaica e Informatica, Università di Udine

Automa a Stati Finiti (ASF)

Compressione Dati. Teorema codifica sorgente: Entropia fornisce un limite sia inferiore che superiore al numero di bit per simbolo sorgente.. p.

Grammatiche. Grammatiche libere da contesto Grammatiche regolari Potenza delle grammatiche libere e regolari Struttura di frase: Alberi di derivazione

Funzioni implicite - Esercizi svolti

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Assemblaggio degli Elementi: Soluzione del Problema Strutturale Discreto

IDENTITÀ ED EQUAZIONI

Parte n.4 Linguaggi: Gerarchia ed Operazioni

Analisi matriciale delle reti di Petri (P/T) Sifoni e trappole Classi di reti di Petri

Logica proposizionale

SISTEMI LINEARI: APPROFONDIMENTI ED ESEMPI

sono i prototipi degli insiemi con 0, 1, 2, 3,... elementi.

Transcript:

Corso di Sistemi Modulo di Sistemi a Eventi Discreti (ex Metodi di Specifica) Esercizi Laurea magistrale in Ingegneria e Scienze informatiche Tiziano Villa Anno Accademico 2013-14 Questo documento in costruzione riporta una traccia (ancora incompleta) di quesiti ed esercizi come aiuto alla preparazione dello scritto. Attualmente sono inclusi esercizi sulle reti di Petri e sul controllo supervisore. 1

1. Esercizi sulle reti di Petri. Una rete di Petri marcata e specificata da una quintupla: {P, T, A, w, x}, dove P sono i posti, T le transizioni, A gli archi, w la funzione di peso sugli archi, e x il vettore di marcamento (numero di gettoni per posto). I(t i ) indica l insieme dei posti in ingresso alla transizione t i, O(t j ) indica l insieme dei posti in uscita dalla transizione t j. Per associare un linguaggio a una rete di Petri s introduce un insieme di eventi E, una funzione che etichetta le transizioni con eventi l : T E, e un insieme di stati che accettano X m N n (n e il numero di posti). (a) Si consideri la rete di Petri P 1 definita da: P = {p 1, p 2 } T = {t 1 } A = {(p 1, t 1 ), (t 1, p 2 )} w(p 1, t 1 ) = 2, w(p 2, t 1 ) = 1 i. Si disegni il grafo della rete di Petri P 1 con la marcatura x 1 = [1, 0]. (b) Si consideri la rete di Petri P 2 definita da: P = {p 1, p 2, p 3, p 4 } T = {t 1, t 2, t 3, t 4, t 5 } A = {(p 1, t 1 ), (p 1, t 2 ), (p 2, t 2 ), (p 2, t 3 ), (p 2, t 5 ), (p 4, t 5 ), (t 1, p 1 ), (t 1, p 2 ), (t 2, p 3 ), (t 3, p 3 ), (t 3, p 4 ), (t 4, p 3 ), (t 5, p 1 )} w(p 1, t 1 ) = 1, w(p 1, t 2 ) = 1, w(p 2, t 2 ) = 1, w(p 2, t 3 ) = 2, w(p 2, t 5 ) = 1, w(p 4, t 5 ) = 1, w(t 1, p 1 ) = 1, w(t 1, p 2 ) = 1, w(t 2, p 3 ) = 1, w(t 3, p 3 ) = 1, w(t 3, p 4 ) = 1, w(t 4, p 3 ) = 1, w(t 5, p 1 ) = 1 i. Si disegni il grafo della rete di Petri P 2. (c) Si consideri la rete di Petri P 4 definita da: P = {p 1, p 2, p 3, p 4 } T = {t 1, t 2, t 3 } A = {(p 1, t 1 ), (p 1, t 3 ), (p 2, t 2 ), (p 3, t 2 ), (p 3, t 3 ), (p 4, t 3 ), (t 1, p 2 ), (t 1, p 3 ), (t 2, p 2 ), (t 2, p 4 )} w(p 1, t 1 ) = 1, w(p 1, t 3 ) = 1, w(p 2, t 2 ) = 1, w(p 3, t 2 ) = 1, w(p 3, t 3 ) = 1, w(p 4, t 3 ) = 1, w(t 1, p 2 ) = 1, w(t 1, p 3 ) = 1, w(t 2, p 2 ) = 1, w(t 2, p 4 ) = 1 2

i. Si disegni il grafo della rete di Petri P 4 con stato iniziale x 0 = [2, 0, 0, 1]. Quali transizioni sono abilitate all inizio? Si faccia scattare la transizione t 1. Quali transizioni sono abilitate dopo lo scatto di t 1? Si faccia seguire lo scatto di t 2. Quali transizioni sono abilitare ora? Ritornando a dopo lo scatto di t 1, si faccia ora scattare t 3. Quali transizioni sono abilitare ora? Si scriva la matrice d incidenza di P 3 con stato iniziale x 0 = [2, 0, 0, 1] e se ne calcoli l evoluzione in forma matriciale se sono fatte scattare in sequenza le transizioni t 1, t 2, t 1. Si ripeta il calcolo facendo scattare in sequenza le transizioni t 1, t 2, t 3. Si commentino i risultati. (d) Si consideri la rete di Petri P 10 definita da: P = {p 1, p 2 } T = {t 1, t 2, t 3 } A = {(p 1, t 1 ), (p 1, t 2 ), (p 1, t 3 ), (p 2, t 2 ), (t 1, p 2 ), (t 3, p 1 )} w(p 1, t 1 ) = 1, w(p 1, t 2 ) = 1, w(p 1, t 3 ) = 1, w(p 2, t 2 ) = 1, w(t 1, p 2 ) = 1, w(t 3, p 1 ) = 1 i. Si disegni il grafo della rete di Petri P 10 con la marcatura x 1 = [1, 0]. ii. Si classifichino in base alla vitalita ( liveness ) le seguenti transizioni (cioe si dica se sono L0-vive, L1-vive, L2-vive, L3-vive, L4-vive): Transizione t 1 Transizione t 2 Transizione t 3 iii. La rete di Petri P 10 e persistente? (e) Si consideri la rete di Petri P 12 definita da: P = {p 1, p 2, p 3, p 4 } T = {t 1, t 2, t 3 } A = {(p 1, t 1 ), (p 2, t 2 ), (p 2, t 3 ), (p 3, t 3 ), (t 1, p 2 ), (t 1, p 3 ), (t 2, p 1 ), (t 3, p 3 ), (t 3, p 4 )} w(p 1, t 1 ) = 1, w(p 2, t 2 ) = 1, w(p 2, t 3 ) = 1, w(p 3, t 3 ) = 1, w(t 1, p 2 ) = 1, w(t 1, p 3 ) = 1, w(t 2, p 1 ) = 1, w(t 3, p 3 ) = 1, w(t 3, p 4 ) = 1 i. Si disegni il grafo della rete di Petri P 12 con la marcatura x 1 = [1, 0, 0, 0]. ii. Si discuta la costruzione dell albero di raggiungibilita di P 12. iii. Si disegni l albero di copertura di P 12. 3

(f) Si consideri la rete di Petri P 14 definita da: P = {p 1, p 2, p 3 } T = {t 1, t 2, t 3 } A = {(p 1, t 2 ), (p 2, t 2 ), (p 3, t 3 ), (t 1, p 1 ), (t 2, p 3 ), (t 3, p 2 ) w(p 1, t 2 ) = 1, w(p 2, t 2 ) = 1, w(p 3, t 3 ) = 1, w(t 1, p 1 ) = 1, w(t 2, p 3 ) = 1, w(t 3, p 2 ) = 1 i. Si disegni il grafo della rete di Petri P 14 con la marcatura x 1 = [0, 1, 0]. ii. Si discuta la costruzione dell albero di raggiungibilita di P 14. iii. Si disegni l albero di copertura di P 14. iv. La rete di Petri P 14 e limitata? v. La rete di Petri P 14 e conservativa? (g) Si considerino la rete di Petri P 15a definita da: P = {p 1, p 2, p 3 } T = {t 1, t 2 } A = {(p 1, t 1 ), (p 2, t 2 ), (t 1, p 2 ), (t 2, p 1 ), (t 2, p 3 ) w(p 1, t 1 ) = 1, w(p 2, t 2 ) = 1, w(t 1, p 2 ) = 1, w(t 2, p 1 ) = 1, w(t 2, p 3 ) = 1 e la rete di Petri P 15b definita da: P = {p 1, p 2, p 3 } T = {t 1, t 2 } A = {(p 1, t 1 ), (p 2, t 2 ), (t 1, p 2 ), (t 2, p 1 ), (t 2, p 3 ) w(p 1, t 1 ) = 1, w(p 2, t 2 ) = 1, w(t 1, p 2 ) = 1, w(t 2, p 1 ) = 1, w(t 2, p 3 ) = 2 i. Si disegni il grafo della rete di Petri P 15a con la marcatura x 1 = [1, 0, 0]. ii. Si discuta la costruzione dell albero di raggiungibilita di P 15a. iii. Qual e la successione di marcature raggiungibili nel posto p 3 in P 15a? iv. Si disegni l albero di copertura di P 15a. v. Si disegni il grafo della rete di Petri P 15b con la marcatura x 1 = [1, 0, 0]. vi. Si discuta la costruzione dell albero di raggiungibilita di P 15b. 4

vii. Qual e la successione di marcature raggiungibili del posto p 3 in P 15b? viii. Si disegni l albero di copertura di P 15b. ix. Si confrontino gli alberi di copertura di P 15a e P 15b, e si commenti sulla capacita dell albero di copertura di discriminare tra stati raggiungibili e quindi di rispondere a domande su proprieta di sicurezza. (h) Si consideri la rete di Petri P 16 definita da: P = {p 1, p 2, p 3, p 4 } T = {t 1, t 2, t 3 } A = {(p 1, t 1 ), (p 2, t 2 ), (p 3, t 1 ), (p 4, t 3 ), (t 1, p 2 ), (t 2, p 3 ), (t 2, p 4 ), (t 3, p 1 ) w(p 1, t 1 ) = 1, w(p 2, t 2 ) = 1, w(p 3, t 1 ) = 1, w(p 4, t 3 ) = 1, w(t 1, p 2 ) = 1, w(t 2, p 3 ) = 1, w(t 2, p 4 ) = 1, w(t 3, p 1 ) = 1 i. Si disegni il grafo della rete di Petri P 16 con la marcatura x 1 = [1, 0, 0, 0]. ii. Si scriva la matrice d incidenza di P 16 dato lo stato iniziale x 0 = [1, 0, 0, 0]. iii. Dato lo stato x = [0, 0, 0, 1], si risolva l equazione va = x x 0, dove le incognite sono le componenti intere non-negative del vettore v. Qual e il significato del vettore v? Che cosa possiamo dedurre in questo caso dalla risoluzione dell equazione precedente? L esistenza di v e necessaria affinche sia possibile raggiungere x da x 0? L esistenza di v e sufficiente affinche sia possibile raggiungere x da x 0? iv. Si ripeta l esercizio del punto precedente con x = [0, 1, 0, 0], cioe si risolva l equazione va = x x 0. 5

2. Esercizi sul controllo supervisore. Notazione Un automa deterministico e rappresentato da dove X e l insieme degli stati E e l insieme degli eventi G = (X, E, f, Γ, x 0, X m ) f : X E E e la funzione di transizione (puo essere parziale sul suo dominio); f(x, e) = y indica che c e una transizione etichettata da e dallo stato x allo stato y Γ : X 2 E e la funzione degli eventi attivi; Γ(x) e l insieme degli eventi e per cui f(x, e) e definito o insieme attivo di G in x x 0 e lo stato iniziale X m X e l insieme degli stati marcati Se X e finito l automa si dice a stati finiti. Il linguaggio generato da G e Il linguaggio marcato da G e L(G) = {s E : f(x 0, s) e definito} L m (G) = {s L(G) : f(x 0, s) X m } Un automa non-deterministico e rappresentato da dove G = (X, E {ɛ}, f nd, Γ, X 0, X m ) f nd : X E {ɛ} 2 X, per cui f nd (x, e) X dove e definito X 0 X, cioe ci puo essere piu di uno stato iniziale Il prefisso di un linguaggio L si puo indicare come pref(l), prefisso(l), oppure L. 6

Definition 0.1 Siano K e M = M linguaggi sull alfabeto di eventi E, con E uc E. Si dice che K e controllabile rispetto a M e E uc, se per tutte le stringhe s K e per tutti gli eventi σ E uc si ha [equivalente a KE uc M K] sσ M sσ K. Definition 0.2 Siano K e M = M linguaggi sull alfabeto di eventi E, con E c E, E o E, e la proiezione P : E E o. Si dice che K e osservabile rispetto a M, E o, E c, se per tutte le stringhe s K e per tutti gli eventi σ E c si ha. sσ K sσ M P 1 [P (s)]σ K =. 7

(a) i. Sia E = {u, b}, M = {ub, bu}, E uo = {u}, E uc = {b}, K 1 = {bu}. Si disegnino i diagrammi degli automi che riconoscono M e K 1. Il linguaggio K 1 = {bu} e controllabile rispetto a M e E uc? Il linguaggio K 1 = {bu} e osservabile rispetto a M, E o e E c? Traccia di soluzione. K 1 e controllabile: all inizio si disabilita u e poi si riabilita. Per stabilire se K 1 e osservabile si ragioni come segue. Si considerano tutte le stringhe s K 1 e σ E c. La stringa s = ɛ K 1 puo essere estesa fuori da K 1 con l evento controllabile σ = u, inoltre sσ = ɛu = u M. Pero non c e nessuna altra stringa in K 1 con un prefisso che abbia la stessa proiezione del prefisso ɛ e che termini in u. Percio per questi s, σ P 1 [P (s)]σ K 1 = che soddisfa la condizione di osservabilita (nel dettaglio P 1 [P (s)]σ K 1 = P 1 [P (ɛ)]u {ɛ, b, bu} = P 1 [ɛ]u {ɛ, b, bu} = {u }u {ɛ, b, bu} = ). Lo stesso vale per s = b, cioe non c e nessun evento controllabile che estende s in M ma non in K 1. Lo stesso vale per s = bu. Segue che K 1 e osservabile. ii. Sia E = {u, b}, M = {ub, bu}, E uo = {u}, E uc = {u}, K 2 = {ub}. Si disegnino i diagrammi degli automi che riconoscono M e K 2. Il linguaggio K 2 = {ub} e controllabile rispetto a M e E uc? Il linguaggio K 2 = {ub} e osservabile rispetto a M, E o e E c? Si supponga ora di modificare E uc come segue: E uc = {b}. K 2 e controllabile? K 2 e osservabile? Traccia di soluzione. K 2 e controllabile: all inizio si disabilita b e poi si riabilita. Per stabilire se K 2 e osservabile si ragioni come segue. Se si considera s = ɛ, σ = b E c, si ha sσ = ɛb = b M \ K 2, ma s = u P 1 [P (s)] (poiche u E uo ) e s σ = ub M K 2. Segue che K 2 non e osservabile. Se si modifica E uc come E uc = {b}, allora K 2 sarebbe incontrollabile, perche non si puo disabilitare l evento b iniziale per impedire che si 8

produca la parola bu che non e nella specifica. Che cosa si puo dire circa l osservabilita di K 2? Si considerano tutte le stringhe s K 2 e σ E c. La stringa s = ɛ K 2 non puo essere estesa fuori da K 2 con l evento controllabile σ = u; per la stringa s = u K 2 si ha sσ = uu K 2 e sσ = uu M; per la stringa s = ub K 2 si ha sσ = ubu K 2 e sσ = ubu M. Segue che K 2 e osservabile. Intuitivamente: K 2 e osservabile, perche la verifica di osservabilita e condotta solo rispetto agli eventi controllabili, in altri termini siccome fallisce prima la controllabilita non e l osservabilita limitata a impedire ad un supervisore di mantenere l impianto all interno della specifica. 9

(b) Il problema del gatto e topo nel labirinto. Ci sono due agenti mobili, diciamo un gatto e un topo, che si muovono in un labirinto. Il labirinto e mostrato in Fig. 1: ha cinque stanze che comunicano tramite porte, ciascuna delle quali e traversata nella direzione indicata in figura esclusivamente dal gatto (porte di tipo c i ) o esclusivamente dal topo (porte di tipo m j ). Il gatto e il topo si possono modellare ciascuno con un automa i cui stati sono le stanze, e le cui transizioni rappresentano lo spostamento da una stanza all altra. L automa in Fig. 2 e ottenuto dall intersezione degli automi del gatto e del topo. supponendo che inizialmente il gatto e nella stanza 2 e il topo e nella stanza 4r. Ogni stato dell automa composto corrisponde alla coppia di stanze (r c, r m ), dove r c e la stanza attuale del gatto e r m e la stanza attuale del topo; c e un transizione dallo stato (r c, r m ) allo stato (r c, r m ) (o allo stato (r c, r m)) per l evento c i (o m j ) se il gatto (o il topo) varca la porta c i (o m j ) per andare nella stanza r c (o r m). Non abbiamo disegnato l automa per intero per motivi di spazio, tuttavia quanto mostrato e sufficiente per comprendere la procedura che segue. Tutte le porte possono essere aperte o chiuse da parte del controllore, tranne la porta bidirezionale c 7 che e sempre aperta, cioe c 7 e incontrollabile mentre tutte le altre porte sono controllabili. L obiettivo e di progettare il controllore supervisore piu generale che soddisfa le seguenti due proprieta: i. Il gatto e il topo non sono mai contemporaneamente nella stessa stanza. ii. E sempre possibile per il gatto e per il topo ritornare allo stato iniziale (2, 4). Si puo ottenere il controllare iterando dei passi di eliminazione di stati illegali fino a raggiungere un punto fisso. Inizialmente si compone l automa del labirinto con l automa della specifica del sistema (il gatto e il topo non sono nella stessa stanza, e c e un percorso per tornare allo stato iniziale). Il risultato della composizione e che si eliminano tutti gli stati con il gatto e il topo nella stessa stanza: (0,0), (1,1), (2,2), (3,3), (4,4)) (mentre non ci sono stati da eliminare per l altra condizione sulla possibilita di raggiungere lo stato iniziale). Quando si elimina uno stato bisogna anche eliminare tutte le transzione che partono da esso. Dopo aver operato la potatura iniziale, si ripete il passo seguente fino alla convergenza a un punto fisso. Se si e eliminata una transizione etichettata da un evento incontrolla- 10

bile (perche diretta a uno stato eliminato), si eliminano anche lo stato da cui la transizione parte e tutte le altre transizioni da esso. Si eliminano tutte le transizioni dirette a uno stato eliminato. Si eliminano tutti gli stati irrangiubili dallo stato iniziale e tutti gli stati non co-raggiungibili (cioe quelli da cui non si puo raggiungere uno stato che accetta). Nel nostro esempio, sono necessari i seguenti passi per raggiungere un punto fisso: i. Passo 1: Eliminare lo stato (1,3), perche la sua transizione incontrollabile a (3,3) per l evento c 7 deve essere eliminata (poiche (3,3) e stato eliminato in precedenza), ed eliminare tutte le transizioni da (1,3); ne segue che gli stati nel sottografo radicato nello stato (1,0) sono resi irraggiungibili (nella figura non si mostra il sottografo radicato in (1,0) per non affollare troppo il disegno). Eliminare le transizioni a stati precedentemente rimossi, ad es. eliminare dallo stato (0,3) le transizioni a (3,3) per c 4 e a (0,0) per m 6. Eliminare gli stati irraggiungibile, ad es. lo stato (1,0) e i suoi successori. ii. Passo 2: Eliminare lo stato (0,3) perche non e co-raggiungibile, in quanto dopo la rimozione di (1,3) lo stato (0,3) e diventato uno stato bloccante senza transizioni uscenti, ed eliminare tutte le transizioni ad esso. Quello che rimane e il controllore supervisore mostrato in Fig. 3. In ogni stato alcune porte devono essere aperte o chiuse, mentre per le porte rimanenti e indifferente (a parte naturalmente c 7 che e incontrallabile e quindi sempre aperta), secondo le seguente indicazioni: (2,4): c 3 = 1, m 5 = 1, c 1 = c 2 = c 4 = c 5 = c 6 =, m 1 = m 2 = m 3 = m 4 = m 6 = (0,4): c 1 = 1, c 4 = 1, m 5 = 0, c 2 = c 3 = c 5 = c 6 =, m 1 = m 2 = m 3 = m 4 = m 6 = (1,4): c 2 = 1, m 5 = 0, c 1 = c 3 = c 4 = c 5 = c 6 =, m 1 = m 2 = m 3 = m 4 = m 6 = 11

(3,4): c 5 = 0, m 5 = 0, c 1 = c 2 = c 3 = c 4 = c 6 =, m 1 = m 2 = m 3 = m 4 = m 6 = (2,0): c 3 = 0, m 1 = 0, m 4 = 1, c 1 = c 2 = c 4 = c 5 = c 6 =, m 2 = m 3 = m 5 = m 6 = (2,3): c 3 = 0, m 6 = 1, c 1 = c 2 = c 4 = c 5 = c 6 =, m 1 = m 2 = m 3 = m 4 = m 5 = Queste scelte permettono la massima flessibilita per il gatto e il topo. all interno delle condizioni dettate dalla specifica. Si puo ottenere un controllore ridotto con la fusione di stati seguente: In a reduced version of the controller the states are merged as follows: S 0 = {(2,4)}: c 3 = 1, m 5 = 1, c 1 = c 2 = c 4 = c 5 = c 6 =, m 1 = m 2 = m 3 = m 4 = m 6 = S 1 = {(0,4),(1,4),(3,4),(2,0),(2,3)}: c 1 = 1, c 2 = 1, c 4 = 1, c 3 = 0, c 5 = 0, m 1 = 0, m 5 = 0, m 4 = 1, m 6 = 1, c 6 =, m 2 = m 3 = La riduzione degli stati avviene a scapito di restringere la flessibilita, cioe di perdere dei gradi di liberta nella realizzazione del supervisore. Il controllore ridotto e mostrato in Fig. 4. Cat Mouse 2 c 3 m 4 0 4 m 2 m 1 c 1 c 4 c 6 m5 c2 m 3 c 7 m 6 c 5 1 3 Figure 1: Labirinto con il gatto e il topo. (c) Si consideri un impianto G con Σ = {a, b}, Σ u = {b}, L(G) = a ba (cioe il linguaggio ottenuto dai prefissi delle stringhe dell espressione regolare a ba ), L m (G) = a ba. 12

24 m 5 c 2 c 3 m 4 m 6 23 04 20 c 3 c 1 c 4 c 7 14 34 c 7 m 5 c 3 m 1 00 22 c 2 c5 m 5 44 33 03 m 5 c 4 m 6 c 1 33 00 13 m 6 c 7 33 10... Figure 2: Frammento dell automa del labirinto con il gatto e il topo. Si supponga che la specifica (il linguaggio generato desiderato) sia K = {a k ba k, k 0} L(G), cioe si richiede che l impianto controllato generi prefissi di stringhe con un numero uguale di a che precedono e seguono un unico b. Il linguaggio K e controllabile? Si enunci la definizione di controllabilita di un linguaggio e la si applichi al caso. Si enunci il teorema di esistenza di un supervisore sotto controllabilita limitata. Esiste un supervisore S tale che l impianto controllato generi il linguaggio K? Si mostri un tale supervisore S se esiste, e si descriva in breve la sua strategia di controllo. 13

24 m 5 c 2 c 3 m 4 m 6 23 04 20 c 1 c 4 c 7 14 34 c 7 Figure 3: Supervisore del problema del gatto e topo. c 3, m 5 S 0 S 1 c 1, c 4, c 7, m 6 c 2, m 4 Figure 4: Supervisore ridotto del problema del gatto e topo. 14