93
Modellazione dei processi produttivi 1/93 Programmazione e Controllo della Produzione Modellazione dei processi produttivi Sistemi DES Reti di Petri Equazione di stato Grafo di stato Strutture fondamentali Proprietà Analisi matriciale P-invarianti T-invarianti Sifoni Trappole Macchine a stati finiti Esempio di processo manifatturiero

Modellazione dei processi produttivi - DIMA - Sapienzadma.ing.uniroma1.it/users/boschetto/PCPM/Lucidi/PCP 1011 02... · 7/93 Modellazione dei processi produttivi Programmazione e

Embed Size (px)

Citation preview

Modellazione dei processi produttivi1/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi

Sistemi DESReti di Petri

Equazione di statoGrafo di stato

Strutture fondamentaliProprietà

Analisi matricialeP-invariantiT-invarianti

SifoniTrappole

Macchine a stati finitiEsempio di processo manifatturiero

Modellazione dei processi produttivi2/93

Programmazione e Controllo della Produzione

AUTOMAZIONE INDUSTRIALE

Supervisione deisistemi

Coordinamentodei sistemi

Sequenziamentodelle operazioni

Avviamento

SpegnimentoCondizioninominali

Condizioni diemergenza

Movimentazione

Guasto

Allarme

Modellazione dei processi produttivi3/93

Programmazione e Controllo della Produzione

SISTEMAFISICO

Sistema dinamico atempo continuo Sistema ad eventi discreti

DES

Sistema dinamico atempo discreto

Sono descritti da variabilifunzioni del tempo

Sono descritti davariabili di stato

Derivano dai principi di conservazionedella materia, dell’energia, della q.tà dimoto, del momento della q.tà di moto, etc.

Modellazione dei processi produttivi4/93

Programmazione e Controllo della Produzione

Spesso i sistemi fisici creati dall’uomo non si riesconoa modellare mediante sistemi dinamici poiché lavariabile tempo limita notevolmente l’analisi

Sistemi manifatturieri

Sistemi informativi

Sistemi di comunicazione

Telefonia

Bus

S.O.

SISTEMI AD EVENTI DISCRETI

Variabili di stato

Valori simbolici inveceche numerici

Cambiano valore inmodo ASINCRONO

Apparente semplicità

Modellazione dei processi produttivi5/93

Programmazione e Controllo della Produzione

Più vicini alle realitecnologie realizzative

Metodologie utili in vistadelle applicazioni industriali

Reale comprensione deiproblemi di controllo del

sistema

Possibile perdita di vista acausa dell’uso di modelli di

astrazione matematica

Possibile senza dovercontemplare tutte le

situazioniCompletezza dell’analisi

Di difficile attuazione(enorme numero di

combinazioni)

Tipicamente immediata(direttamente su codice dicontrollo a basso livello)

Implementazione deisistemi di controlloNon immediata

indirettiMetodi di progettodiretti

asincronoFlusso degli eventisincrono

simboliciValori delle variabilinumerici

Tempo indipendentiVariabiliTempo dipendenti

DESSISTEMI DINAMICI

Modellazione dei processi produttivi6/93

Programmazione e Controllo della Produzione

Processi

Continui Batch Discreti

Produzionedell’energia Laminazione

Impiantiidraulici Forni

Distribuzione digas …

Processichimici

Sistemi dilavorazione

Sistemi diassemblaggio

Sistemi dimovimentaz. …

Modellazione dei processi produttivi7/93

Programmazione e Controllo della Produzione

Modellazione dei processi con sistemi ad eventi discreti

Nell’Ottocento Babbage concepisce il processo di trasformazionemanifatturiera come un concatenarsi di eventi discreti cioè unsistema a eventi discreti

C.Babbage Economyof manufacturers andmachinery, 1832

prima macchinacalcolatrice

programmabile

gestione e il controllo delle operazioni

modelli "analitici" a "reti di code"

descrizione stocastica deifenomeni e delle interconnessioni

Dagherrotipo di C. Babbage(F. Daguerre)

Modellazione dei processi produttivi8/93

Programmazione e Controllo della Produzione

Reti di Petri

applicazioni nell’industria manifatturiera

ampia diffusione nel campo dell’ingegneria elettronica e informatica

Ajmone Marsan et al., 1994modellazione di architetture di microprocessori

modellazione di Flexible Manufacturing System (FMS)

modellazione di sistemi just-in-time

Reliability Modelling Schneeweiss 1999

Song & Lee, 1998

Yan et al., 1998

strumento per la modellizzazione di processiCarl Adam Petri, 1962

Modellazione dei processi produttivi9/93

Programmazione e Controllo della Produzione

Nella descrizione di un processo (produttivo, organizzativo, ecc.) spesso si ha lanecessità di rappresentare sottoprocessi o attività che possono essere eseguitecontemporaneamente, in parallelo fra loro, ma non indipendentemente l’una dall’altra

Potrebbe accadere che un determinato passaggio o una certa fase del processonon possa verificarsi o non possa essere attivata fintanto che altre fasi o attivitànon sono concluse o fino al verificarsi di determinate condizioni.

le attività sono rigidamente serializzate

due rami distinti non vengono mai “percorsi” contempora-neamente, ma rappresentano due strade alternative sceltesecondo un criterio rigidamente deterministico dipendentedall’esito della valutazione di una espressione booleana

situazioni di questo tipo non possono essere descritte mediante un diagramma di flusso

non solo permettono di rappresentare e di descrivere globalmente unprocesso, ma consentono anche di seguirne l’evoluzione permettendodi visualizzare lo stato in cui si trova in un certo istante la rete.

Con le Reti di Petri laserializzazione degli step delprocedimento viene superata

Modellazione dei processi produttivi10/93

Programmazione e Controllo della Produzione

RETI DIPETRIRETI DIPETRI

Strumento dimodellazione

formale

Strumento dimodellazione

formale

Possonorappresentare infinitistati con un numero

finito di nodi

Possonorappresentare infinitistati con un numero

finito di nodi

Strumento dianalisi e verifica

del comportamentodi un sistema

Strumento dianalisi e verifica

del comportamentodi un sistema

Gli eventi non sonovincolati ad accadere

con frequenzadefinita

Gli eventi non sonovincolati ad accadere

con frequenzadefinita

Gli eventi a flusso concode vengonorappresentati

spontaneamente

Gli eventi a flusso concode vengonorappresentati

spontaneamente

Modellazione dei processi produttivi11/93

Programmazione e Controllo della Produzione

Flusso

Posto

Transizione1.2.3.

P TP T

F P T T P

∩ =∅∪ ≠∅

⊆ × ∪ ×

0: { , , , }P P T F M=Rete di Petri: P → PostiT → TransizioniF → Relazioni di flussoM0 → Marcatura iniziale

Proprietà:

1. → gli insiemi dei posti e delle transizioni sono disgiunti2. → la rete deve avere almeno un posto o una transizione3. → F lega posti a transizioni e transizioni ai posti ma non

transizioni a transizioni e posti a posti

Modellazione dei processi produttivi12/93

Programmazione e Controllo della Produzione

1. Posiziona lo stampo sotto il pistone della pressa2. Scalda lo stampo3. Scalda il forno a muffola4. Accendi la pressa e seleziona i parametri5. Quando lo stampo è a temperatura la macchina è pronta6. Quando il forno è a temperatura inserisci il crogiolo7. Quando il materiale è fuso estrai il crogiolo ed effettua la

colata dentro lo stampo8. Al termine della colata aziona la pressa9. A fine solidificazione estrai il getto

Esempio: pressofusioneLa pressa

Forno a muffolaStampo

Provini

Modellazione dei processi produttivi13/93

Programmazione e Controllo della Produzione

Esempio: pressofusioneMacchine pronte

Posizionare stampo

stampo posizionato

Scaldare forno

forno a temperatura

Riscaldare stampo

stampo a temperatura

Fondere materiale

materiale fuso

Settare pressa

pressa pronta

colata

mat. colato

Applicaz. pressione

mat. In press.

mat. solidif.solidificazioneestrazione

Prodotto finito

Modellazione dei processi produttivi14/93

Programmazione e Controllo della Produzione

1. soffriggi la cipolla2. quando il soffritto è pronto aggiungi il pomodoro3. quando il sugo è cotto metti a bollire l’acqua4. quando l’acqua bolle aggiungi il sale5. butta gli spaghetti nell’acqua bollente6. attendi 8 minuti7. scola gli spaghetti8. condisci gli spaghetti con il sugo

Processo di preparazione degli spaghetti al pomodoro

Modellazione dei processi produttivi15/93

Programmazione e Controllo della Produzione

Ingredienti pronti

Preparazionesoffritto

Inizioriscaldamento

Soffritto prontoper la cottura

Cottura soffritto

Soffritto cotto Spaghetti cotti

Inizio bollitura

Cottura deglispaghetti

Spaghetti pronti

Modellazione dei processi produttivi16/93

Programmazione e Controllo della Produzione

Una Rete di Petri è un grafo che consiste di posti, transizioni ed archi che li collegano

Lo stato della rete indica una sua configurazione in un determinato istante dell’esecuzionedel processo descritto dalla rete stessa.

Si conferisce uno stato a una Rete di Petri medianteuna marcatura

Le transizioni invece rappresentano le componenti “attive”del modello. Rappresentano le attività che possonoessere realizzate modificando lo stato della rete.

gli archi di output collegano le transizioni con i postigli archi di input collegano i posti con le transizioni

Una Rete di Petri evolve passando attraverso una serie di stati

operazione su 1

pezzo 1 grezzosulla macchina

Operaz. su 1 finita

operazione su 1

pezzo 1 grezzosulla macchina

Operaz. su 1 finita

Assegnamento di un numero Stato dellarete e marcatura naturale ad ogni posto.

Modellazione dei processi produttivi17/93

Programmazione e Controllo della Produzione

Quando viene attivata una transizione vengono rimossi le marche dai posti che precedono latransizione e alcune marche vengono collocate in ognuno dei posti che seguono latransizione stessa.

Le transizioni sono consentite (ossia possono essere realizzate) soltanto se sono abilitate,ossia soltanto se tutte le condizioni che le precedono sono verificate.

2 3

4

2 3

4

2 3

4

2 3

4

transizioneabilitata

transizionenon abilitata

Modellazione dei processi produttivi18/93

Programmazione e Controllo della Produzione

grezzo sulla macchina

pezzo in lavorazione

scambiopezzi in uscita

inizio operazione

pezzo in attesafine operazione

Modellazione dei processi produttivi19/93

Programmazione e Controllo della Produzione

grezzo sulla macchina

pezzo in lavorazionefine operazione

scambiopezzi in uscita

inizio operazione

pezzo in attesa

Modellazione dei processi produttivi20/93

Programmazione e Controllo della Produzione

grezzo sulla macchina

pezzo in lavorazione

scambiopezzi in uscita

inizio operazione

pezzo in attesafine operazione

Modellazione dei processi produttivi21/93

Programmazione e Controllo della Produzione

grezzo sulla macchina

scambiopezzi in uscita

inizio operazione

pezzo in attesa

pezzo in lavorazionefine operazione

Modellazione dei processi produttivi22/93

Programmazione e Controllo della Produzione

grezzo sulla macchina

pezzo in lavorazione

scambiopezzi in uscita

inizio operazione

pezzo in attesafine operazione

Modellazione dei processi produttivi23/93

Programmazione e Controllo della Produzione

grezzo sulla macchina

pezzo in lavorazione

scambiopezzi in uscita

inizio operazione

pezzo in attesafine operazione

Modellazione dei processi produttivi24/93

Programmazione e Controllo della Produzione

T : insieme dei nodi transizione

P : insieme dei nodi posto

Pre : matrice delle marcature per lo scatto

Post : matrice delle marcaturecreate dallo scatto

rete di Petri: N = (T, P, Pre, Post, M0)

Modellazione dei processi produttivi25/93

Programmazione e Controllo della Produzione

Matrice PRE

La macchina deveessere pronta

Il nuovo pezze deve esserearrivato in posizione

Modellazione dei processi produttivi26/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi27/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi28/93

Programmazione e Controllo della Produzione

Scatto di transizione

Modellazione dei processi produttivi29/93

Programmazione e Controllo della Produzione

RETE DI PETRI MARCATA: {N, M0}

Modellazione dei processi produttivi30/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: {N, M0}

Modellazione dei processi produttivi31/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: {N, M0}

Modellazione dei processi produttivi32/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: {N, M0}

Modellazione dei processi produttivi33/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: {N, M0}

Modellazione dei processi produttivi34/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: (N, M0)

Modellazione dei processi produttivi35/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: (N, M0)

Modellazione dei processi produttivi36/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi37/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi38/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi39/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: (N, M0)

Modellazione dei processi produttivi40/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi41/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: (N, M0)

Modellazione dei processi produttivi42/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi43/93

Programmazione e Controllo della Produzione

GRAFO DI STATO: (N, M0)

Modellazione dei processi produttivi44/93

Programmazione e Controllo della Produzione

MATRICE DI INCIDENZA

Modellazione dei processi produttivi45/93

Programmazione e Controllo della Produzione

EQUAZIONE DI STATO

Modellazione dei processi produttivi46/93

Programmazione e Controllo della Produzione

EQUAZIONE DI TRANSIZIONE

Modellazione dei processi produttivi47/93

Programmazione e Controllo della Produzione

S124 S412 S142 S1245 S4152

Sequenze ammissibili: percorso ammissibile nel grafo degli stati

S143 S125No:

Si:

Modellazione dei processi produttivi48/93

Programmazione e Controllo della Produzione

Altro esempio:

Una piccola azienda di produzione econfezionamento di dolci ha diverselinee di produzione. Occorre modellareil comportamento del processo ai finidell’assorbimento di energia elettricaper non incorrere in superamenti dellapotenza contrattuale.Il problema è tipico della progettazionedell’impianto elettrico dove è difficileindividuare il valore economico dellapotenza contrattuale

Modellazione dei processi produttivi49/93

Programmazione e Controllo della Produzione

Approfondimenti sulle reti di Petri

Modellazione dei processi produttivi50/93

Programmazione e Controllo della Produzione

Non determinismo

Data una rete di Petri marcata con matrice di marcatura Me dato S l’insieme delle transizioni abilitate in M, solamenteuna di queste viene scelta a caso per lo scatto

Non si fa nessun riferimento al tempo Serve una nuova valutazione dellafutura transizione abilitata a scattare

Località della rete: L’evoluzione del sistema è locale e ciò è garantitodall’indipendenza degli eventi

Proprietà di base delle Reti di Petri

Modellazione dei processi produttivi51/93

Programmazione e Controllo della Produzione

Esempio di una evoluzione di una rete:

P1 e P2: sottorete produttoriP3 e P4: sottorete consumatori C1P5 e P6: sottorete consumatori C2

t1 è l’assegnazione delle materieprime

t2 è la produzione: gli oggetti daprodurre in P1 sono prodotti finitiin P2

P7 rappresenta una coda tra iproduttori e i consumatori

t3 e t5 sono le attività diassegnazione dei prodotti aiconsumatorit4 e t6 sono le attività di consumodei prodotti da parte deiconsumatori

P1

t1 t2

P2

P3

t3 t4

P4

P5

t5 t6

P6

P7

2

2

2

4 4

Modellazione dei processi produttivi52/93

Programmazione e Controllo della Produzione

Una transizione abilitata in A è t2 M0

Allo scatto di t2 ci sono quattro possibilitransizioni abilitate: t1, t2, t3 e t5

Scatto di t2

Scatto di t4

Allo scatto di t3 si ha una nuovaconfigurazioneSe volessimo aumentare i prodotti e/o iproduttori sarebbe sufficiente aumentarele marche rispettive

P1

t1 t2

P2

P3

t3 t4

P4

P5

t5 t6

P6

P7

2

2

2

4 4

P1

t1 t2

P2

P3

t3 t4

P4

P5

t5 t6

P6

P7

2

2

2

4 4

P1

t1 t2

P2

P3

t3 t4

P4

P5

t5 t6

P6

P7

2

2

2

4 4

Modellazione dei processi produttivi53/93

Programmazione e Controllo della Produzione

Strutture fondamentali

Due transizioni sono:

in sequenzaSe t1 precede in una data marcatura t2 e lo scatto di t1 abilita t2

in conflitto strutturaleSe e solo se hanno un posto di ingresso in comune

in conflitto effettivoSe sono in conflitto strutturale e, poiché le marche non sonosufficienti ad abilitarle entrambe, lo scatto di una transizionedisabilita l’altra

Modellazione dei processi produttivi54/93

Programmazione e Controllo della Produzione

Transizione di sincronizzazione Più posti a monte

Transizione di inizio di concorrenza Più posti a valle

in concorrenza strutturaleSe non condividono nessun posto di ingresso e quindi l’una nondisabilita l’altra

in concorrenza effettivaLa concorrenza strutturale implica la concorrenza effettiva poichése sono abilitate entrambe le marche sono sufficienti adentrambe le transizioni

Modellazione dei processi produttivi55/93

Programmazione e Controllo della Produzione

Proprietà delle reti di Petri

Raggiungibilità: Una marcatura M1 è raggiungibile a partire da M se esiste almenouna sequenza di transizioni che permetta il passaggio da M a M1

[M >

1 [M M∈ >

Insieme delle marcature raggiungibili a partire da M

M1 raggiungibile da M

Reversibilità: Una rete {N,M0} è reversibile se per ogni marcatura raggiungibileda M0, M0 è raggiungibile da questa marcatura

0 0[ , [M M M M∀ ∈ > ∈ >� �

Home state: Uno stato M* della rete {N,M0} è detto di home state se per ognimarcatura raggiungibile da M0, M* è raggiungibile da questamarcatura

0[ , * [M M M M∀ ∈ > ∈ >� �

Modellazione dei processi produttivi56/93

Programmazione e Controllo della Produzione

Limitatezza: Assenza di accumulo di marcature indesiderate nella rete

Posto k-limitato: In tutte le marcature raggiungibili dalla rete non si supera mai ilvalore di k

Rete k-limitata: Tutti i posti della rete sono k-limitati.

Rete limitata: Rete k-limitata per qualche valore finito di k

Esempio di rete non limitatala sequenza di scatti t1, t2, t3 puòavvenire infinite volte accumulandomarcature in P4

Modellazione dei processi produttivi57/93

Programmazione e Controllo della Produzione

Rete binaria: Rete 1-limitata (ovvero k-limitata con k=1)Affinché una rete sia binaria la marcatura iniziale M0 e tutte lemarcature da essa raggiungibili devono avere solo 0 e 1

Qualunque rete può essere resa binaria con l’aggiunta di opportuni posti detticomplementari

Sistema produttori-consumatori conbuffer intermedio

Introduzione del posto P6 con significatocomplementare a P5: le marcaturerappresentano le postazioni libere nel buffer

Modellazione dei processi produttivi58/93

Programmazione e Controllo della Produzione

Vivezza: Capacità della rete di evolvere bene ovvero senza che si blocchi mai

Transizione viva: Se e solo se per ogni marcatura raggiungibile da M0 esisteun’altra marcatura raggiungibile dalla prima nella quale latransizione risulta abilitata

0[ , [ . .M M M M t c t abilitata in M′ ′∀ ∈ > ∃ ∈ >� �

Rete viva: Se tutte le transizioni sono vive

Considerazioni: Una transizione è viva se da una qualunque marcatura M raggiungibile nella rete èpossibile raggiungerne un’altra M* in cui t è abilitata. Se questa transizione scatta inM* si raggiunge una marcatura M** che per definizione è raggiungibile da quellainiziale. Pertanto M** ricade nella definizione di vivezza. La transizione è alloraancora viva e a partire da M** raggiunge M*** e così via.

In una rete viva tutte le transizioni possono scattare infine voltequalunque sia la marcatura raggiungibile da quella iniziale

Modellazione dei processi produttivi59/93

Programmazione e Controllo della Produzione

Marcatura viva: Se e solo se per ogni transizione esiste una marcaturaraggiungibile da M tale che la transizione risulta abilitata

, * [ . . *t T M M t c t abilitata in M∀ ∈ ∃ ∈ >

A partire dalla marcatura viva è possibile far scattare unaqualunque transizione

PROPRIETÀ: Una rete è viva se e solo se tutte le sue marcature raggiungibilidalla marcatura iniziale sono vive

Marcatura morta: Se e solo se nessuna transizione è abilitata in M

Modellazione dei processi produttivi60/93

Programmazione e Controllo della Produzione

Limitatatezza: NOVivezza: SIReversibilità: SI

Limitatatezza: SIVivezza: NOReversibilità: NO

Limitatatezza: SIVivezza: NOReversibilità: SI

Limitatatezza: SIVivezza: SIReversibilità: NO

Esempi di Murata

P1

t1 t2

P2

P3

t3t4

P4

P5

t5 t6

P6

P7

2

2

2

4 4

Modellazione dei processi produttivi61/93

Programmazione e Controllo della Produzione

Analisi delle reti di Petri

Grafo di raggiungibilità G(N,M0) ≡ Grafo di stato {N,M0} completo e minimo

Insieme di raggiungibilità: Insieme R(N,M0) più piccolo di marcature tale che:

0 0

0 0

( , )

* ( , ), . . *[ ** ** ( , )

M R N MM R N M t T t c M t M M R N M∈

∃ ∈ ∃ ∈ > ⇒ ∈

La marcatura iniziale appartiene all’insieme

Tutte le marcature iniziali raggiungibili dall’insiemedi raggiungibilità appartiengono all’insieme

Modellazione dei processi produttivi62/93

Programmazione e Controllo della Produzione

Rete di Petri Grafo di raggiungibilità

Modellazione dei processi produttivi63/93

Programmazione e Controllo della Produzione

Analisi matriciale

Metodo di analisi che sfrutta le informazioni contenute nella matrice di incidenza

Caratteristiche che dipendono dallatopologia della rete e non dalla marcatura

Caratteristiche statiche

P-Invarianti

T-Invarianti

Sifoni

Trappole

Vettori colonna Insiemi di posti

Modellazione dei processi produttivi64/93

Programmazione e Controllo della Produzione

P-invarianti:

Def.:

Insiemi di posti tali che la somma pesata delle marche checontengono rimane costante per tutte le marcature raggiungibili

0 0( , ), ' . . ' 'M R N M x t c x M x M∀ ∈ ∃ =� �

Un vettore è P-invariante se:

Eq. Di stato:

Moltiplico a sinistra per x’

Se x’ è invariante allora:

valida per ogni s non vuoto

Modellazione dei processi produttivi65/93

Programmazione e Controllo della Produzione

Gli invarianti si trovano dalle:

Infinite soluzioni: Se un x è un P-invariante allora anche k x con k intero lo è

Se un x1 e x2 sono P-invarianti allora anche x = x1 + x2 lo è

Problema: determinare il più piccolo insieme di P-invarianti ingrado di generare tutte le soluzioni delle equazioni

Eq. 1

Eq. 2

Modellazione dei processi produttivi66/93

Programmazione e Controllo della Produzione

Supporto di un P-invariante: Insieme dei posti corrispondenti ad elementinon nulli di x

P-invariante a supporto minimo: Un p-invariante è detto a supporto minimo se ilsuo supporto non contiene quello di nessunaltro P-invariante della rete

P-invariante canonico: Un p-invariante è detto a canonico se il massimocomun divisore dei suoi elementi non nulli è 1

Un P-invariante composto di soli elementi positivi permette diidentificare un gruppo di posti dove si conserva non tanto ilnumero di marche ma una loro combinazione lineare

Gli P-invarianti positivi sono detticomponenti conservative di una rete

Modellazione dei processi produttivi67/93

Programmazione e Controllo della Produzione

Esempio di P-invariante negativo

Il numero di marche in P1 è vincolatoad essere uguale a quello di P2

Generatore di P-invarianti positivi: Il più piccolo insieme di P-invarianti positivi PIktale che ogni altro P-invariante della rete èottenibile tramite ombinazione lineare degliinvarianti di PIk

Gli elementi dell’insieme si chiamano P-invarianti minimi

Proposizione 1 Un P-invariante è minimo se e solo se è canonico e a supporto minimo

Proposizione 2 L’insieme generatore di P-invarianti è finito ed è unico

Modellazione dei processi produttivi68/93

Programmazione e Controllo della Produzione

Rete coperta da P-invarianti: Ogni posto della rete appartiene al supporto dialmeno un P-invariante

Rete conservativa: Rete coperta da P-invarianti non negativi

, P-invariante . . || || ( ) 0p P x t c p x et x p∀ ∈ ∃ ∈ >

Proposizione 3 Una rete conservativa è limitata

In una rete conservativa il numero di marche non cresce mai indefinitamente.

Non è detto il contrario

Modellazione dei processi produttivi69/93

Programmazione e Controllo della Produzione

Esempi:

Reti coperte dal P-invariante [1,1,1]

Qualunque sia la marcatura iniziale ilnumero delle marche si mantiene costante Questa rete è viva

Due processi diversi si devonosincronizzare ovvero deve esistere unaattesa reciproca

Gli P-invarianti minimi sono: [1,1,0,0] e [0,0,1,1]

Modellazione dei processi produttivi70/93

Programmazione e Controllo della Produzione

Calcolo degli P-invarianti minimi

Algoritmo di Colom e Silva

In matrice identità di dimensione n

Modellazione dei processi produttivi71/93

Programmazione e Controllo della Produzione

T-invarianti:

Def.:

In modo duale agli P-invarianti rappresentano possibilisequenze di scatti che riportano la rete alla marcatura iniziale

Un vettore (colonna) y è T-invariantese è soluzione dell’equazione:

Se y è un vettore delle occorrenze coincidente con un T-invariante allora:

Osservazione: La presenza di un T-invariante non implica che sia veramente possibileritornare alla posizione di partenza

Il significato di un T-invariante y è quello che, se fosse possibile farscattare ogni transizione del supporto di y in un ordine qualunque ma unnumero di volte pari a quello definito da y allora lo stato della rete potrebbetornare al valore iniziale al termine della sequenza

Eq. 3

Modellazione dei processi produttivi72/93

Programmazione e Controllo della Produzione

Confrontando l’Eq. 2 con l’Eq. 3

Eq. 2

Eq. 3

Si deduce che:

La matrice di incidenza C’ si ottiene dalla rete con matrice C scambiando i posti con letransizioni senza alterare gli indici dei nomi e invertendo il verso degli archi

gli T-invarianti di una rete con matrice di incidenza C coincidono congli P-invarianti di una rete con matrice di incidenza C’ e viceversa

Se non di invertisse il verso degli archi, si otterrebbe una matrice di incidenza –C’

Ad ogni modo C’x=0 equivale a -C’x=0 così come Cy=0 equivale a -C’y=0 pertanto siotterrebbero gli stessi T-invarianti e P-invarianti

Modellazione dei processi produttivi73/93

Programmazione e Controllo della Produzione

Sifoni: Rappresenta un insieme di posti che complessivamente tende a perderemarche durante l’evoluzione della rete e che, una volta arrivati a zero, nonè più in grado di riacquistarne

Notazione per le matrici dei Pre e dei Post: ●X ≡ Pre[X]

X● ≡ Post[X]

Def.: Un sifone S è un insieme di posti se e solo se:

S S• ⊂ •

Tutte le transizioni di ingresso per un sifonesono anche di uscita ma esistono delletransizioni di uscita che non sono di ingresso

Modellazione dei processi produttivi74/93

Programmazione e Controllo della Produzione

Esempio:

Sifone:

é contenuto in:infatti:

Sifone:

é contenuto in:infatti:

Modellazione dei processi produttivi75/93

Programmazione e Controllo della Produzione

Sifone minimo.: Un sifone S è minimo se e solo se esiste unaltro sifone S’ tale che:

'S S⊂

Proprietà L’unione di sifoni è un sifone

Sifone di base: Un sifone di base è un sifone che non puòessere ottenuto come unione di altri sifoni

Proprietà Se S è un sifone privo di marche in una certa marcatura M alloraè priva di marche anche ogni marcatura raggiungibile M’∈[M>

In presenza di un sifone non marcato tutte le transizionidi S● sono morte e la rete in con S non viva

Modellazione dei processi produttivi76/93

Programmazione e Controllo della Produzione

Trappole: È il duale del sifone e rappresenta un insieme di posti checomplessivamente tende ad acquistare marche durante l’evoluzione dellarete e che, una volta presa almeno una marca a zero, non è più in gradodi smarcare contemporaneamente tutti i suoi posti

Def.: Una trappola S è un insieme di posti se e solose:

S S•⊂ •

Tutte le transizioni di uscita per una trappolasono anche di ingresso ma esistono delletransizioni di ingresso che non sono di uscita

Modellazione dei processi produttivi77/93

Programmazione e Controllo della Produzione

Esempio:

Trappole:

é contenuto in:infatti:

Trappole anche: e

Modellazione dei processi produttivi78/93

Programmazione e Controllo della Produzione

Proprietà L’unione di trappole è una trappola

Proprietà Se S è una trappola marcata in una certa marcatura M allorarimane marcata in ogni marcatura raggiungibile M’∈[M>

Proprietà Il supporto di un P-invariante con elementi non negativi è unsifone o una trappola

Non tutti i sifoni o trappole di una rete sono pericolosi ai fini dellavivezza. Il legame tra queste strutture e la vivezza non è semplice

Proprietà Se M è una marcatura morta allora l’insieme dei posti privi dimarche:

È un sifone non marcato

Modellazione dei processi produttivi79/93

Programmazione e Controllo della Produzione

Proprietà Se ogni sifone contiene una trappola marcata in unamarcatura M allora non esiste in [M> una marcatura morta

Se infatti, per assurdo, esistesse una simile marcaturaM’ allora i posti senza marche in M’ costituiscono unsifone senza marche contraddicendo l’ipotesi

N.B.: non è detto che una rete in cui ogni sifone contiene una trappola sia viva

Esempio precedente:

Sifoni marcati che noncontengono trappole

Infatti tramite la sequenza [ t3 t1 t2 t1 ] è possibileraggiungere M = [ 2 0 0 0 ]’ che è morta

Modellazione dei processi produttivi80/93

Programmazione e Controllo della Produzione

Macchine a stati finiti

La macchina a stati finiti è un automa

Macchina a stati finiti: È una rete di Petri tale che:

, 1 1j j jt T t et t∀ ∈ • = • =

Proprietà :

È strettamenteconservativa

Il numero di marche nellarete non cambia mai

Il sistema è finito e pureil grafo di raggiungibilità

Se la marcatura iniziale contiene una sola marca allora la rete è binaria

Se la rete è fortemente connessa (cioè è possibileandare da un nodo all’altro seguendo unarelazione di flusso) e se ha almeno un gettone

Allora la rete è viva

Modellazione dei processi produttivi81/93

Programmazione e Controllo della Produzione

Grafo marcato

Sottoclasse delle reti di Petri in cui ogni posto ha esattamente una transizione diingresso e una di uscita

Grafo marcato: È una rete di Petri tale che:

, 1 1i i ip P p et p∀ ∈ • = • =Proprietà :

Mentre la macchina a stati può avere al suo interno dei conflitti (un posto con moltetransizioni in uscita), il grafo marcato non può modellare conflitti

A differenza della macchina a stati, il grafo marcato può modellare la creazione ela distruzione di marche necessarie per la simultaneità necessaria per lasincronizzazione

Un grafo marcato è vivo se e solo se ogni suo ciclo contiene almeno un posto conuna marca

Sequenza di posti ottenuta con un flusso in cui latransizione di ingresso al primo posto dellasequenza è anche quella di uscita all’ultimo posto

Modellazione dei processi produttivi82/93

Programmazione e Controllo della Produzione

Reti a scelta liberaSono reti che non ammettono confusione

Scelta libera: È una rete di Petri tale che:

, , { } { }j i j i i jt T p P t p opp p t∀ ∈ ∀ ∈ • = • =

Per ogni arco da un posto ad una transizione o quel posto è l’unico posto iningresso a quella transizione (non c’è sincronizzazione) oppure quellatransizione è l’unica transizione in uscita da quel posto (non ci sono conflitti)

I conflitti potenziali sono controllati: I conflitti accadono solo se il postoè in ingresso a molte transizioni

Se un posto è in ingresso a molte transizioni alloraesso è l’unico ingresso per tutte le transizioni

O tutte le transizioni sonopermesse o non lo è nessuna Scelta libera

Modellazione dei processi produttivi83/93

Programmazione e Controllo della Produzione

Tipica situazione di confusione

Non è chiaro a priori quale delle due transizioni scatterà

CONFLITTO

Una macchina a stati e un grafo marcato sono reti a scelta libera ma non vale il viceversa

Modellazione dei processi produttivi84/93

Programmazione e Controllo della Produzione

Reti a scelta libera estesa

Scelta libera estesa: È una rete di Petri tale che:

, , un arco da tutti i posti di ingresso a a tutte le trasizioni di uscita dij i j it T p t p∀ ∈ ∀ ∃

Se due posti hanno una transizione diuscita in comune, allora quei postihanno le stesse transizione di uscita:

Rete a sceltalibera estesa

trasformazionein rete a sceltalibera

Una rete a scelta libera estesa è una rete ascelta libera ma non vale il viceversa

Teorema di Commoner: una rete ascelta libera estesa è viva se i suoisifoni contengono una trappola

Modellazione dei processi produttivi85/93

Programmazione e Controllo della Produzione

Reti a scelta asimmetrica

Scelta libera asimmetrica: È una rete di Petri tale che:

oppi j i j i jp p p p p p•∩ • ≠ ∅⇒ •⊆ • • ⊇ •

Esempio di scelta asimmetrica

Proprietà Una rete a scelta asimmetrica è viva se (ma non solo se) tutti isifoni contengono una trappola

Modellazione dei processi produttivi86/93

Programmazione e Controllo della Produzione

Diagramma diVenn per lerelazioni tra leclassi di retidi Petri

Modellazione dei processi produttivi87/93

Programmazione e Controllo della Produzione

Esempio di processo manifatturiero

Robot 1Robot 2

Prodotti finiti

Semilavorati

Centro dilavoro M1

Centro dilavoro M2

Il processo in esame è costituito da due centri di lavoro, due robot e due nastri trasportatori.Ogni centro è servito da un robot per le operazioni di carico e scarico. Un nastro è usato per ipezzi da lavorare, con un massimo per entrambi di due alla volta. L’altro nastro è usato per ipallet vuoti. Ci sono tre pallet disponibili nel sistema. Ogni pezzo da lavorare è manipolato suM1 e M2, in questo ordine.

Nastro trasportatore 2

Nastro trasportatore 1Pallet Pallet

Modellazione dei processi produttivi88/93

Programmazione e Controllo della Produzione

Modellazione dei processi produttivi89/93

Programmazione e Controllo della Produzione

Marcatura iniziale:

Matrice di incidenza:

Modellazione dei processi produttivi90/93

Programmazione e Controllo della Produzione

Unico T-invariante:

Gli P-invarianti minimi sono 6:

Supporti agli P-invarianti:

Ogni posto della rete appartiene ad almeno un P-invariantedunque la rete è CONSERVATIVA e LIMITATA

Modellazione dei processi produttivi91/93

Programmazione e Controllo della Produzione

Marcature raggiungibili dalla rete:

Modellazione dei processi produttivi92/93

Programmazione e Controllo della Produzione

Grafo di raggiungibilità

Modellazione dei processi produttivi93/93

Programmazione e Controllo della Produzione

Analisi del grafo di raggiungibilità

Dal grafo di deduce che la rete progettata è viva

a partire da ogni marcatura raggiungibile, è possibile raggiungerneun’altra in cui una determinata transizione sia abilitata

Lo si poteva vedere anche considerando che la rete di Petri è un grafo marcato

poiché gli unici sifoni che contiene sono i supporti dei P-invariantiche sono inizialmente marcati, allora la rete è viva

Infatti: