g.bucci, e.vicario, f.baldini, l.sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

24
Attività dell’Unità di Firenze attinenti a modellazione, simulazione e analisi di sistemi reattivi distribuiti nello spazio G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it Università di Firenze – Dipartimento di Sistemi e Informatica

Upload: luisa

Post on 04-Feb-2016

63 views

Category:

Documents


0 download

DESCRIPTION

Università di Firenze – Dipartimento di Sistemi e Informatica. Attività dell’Unità di Firenze attinenti a modellazione, simulazione e analisi di sistemi reattivi distribuiti nello spazio. G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Attività dell’Unità di Firenze attinenti a modellazione, simulazione e analisi

di sistemi reattivi distribuiti nello spazio

G.Bucci, E.Vicario, F.Baldini, L.Sassoli

{bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Università di Firenze – Dipartimento di Sistemi e Informatica

Page 2: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Sistemi reattivi tempo dipendenti

• La correttezza dipende requisiti non funzionali Tempificazione degli eventi Sequenzializzazione degli eventi

Applicazioni di controllo industriale, Componenti di software embedded, …

• In molti contesti diventano rilevanti anche aspetti legati alla spazialità Configurazione spaziale del sistema Vincoli di tipo spaziale Evoluzione dinamica del sistema

Page 3: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Esempio: Sistemi di instradamento del traffico ferroviario

• Regolazione degli scambi

• Regolazione dei semafori

• Distanziamento

Page 4: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Esempio: Celle di assemblaggio AGV (Automatic Guided Vehicles)

• Rispetto della sequenza e dei tempi delle lavorazioni

• Collision avoidance: modellazione di sensori ed elaborazione di dati da essi provenienti

• Deadlock avoidance: controllo dell’instradamento per evitare la congestione

Page 5: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Esempio: Reti ad hoc

• Sistemi di esplorazione con controllo remoto Controllo della distanza reciproca delle unità per il

mantenimento della connessione wireless col sistema di controllo

Page 6: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Modellazione con Reti di Petri Tempificate

• Time Petri Nets permettono la specifica e la validazione di: Tempificazione Sequenzializzazione

• E.g. sistemi di controllo industriale: Ogni lavorazione richiede un tempo

minimo (e massimo) per il completamento Le lavorazioni devono essere svolte

secondo una sequenza (e.g. catena di montaggio)

• Problema: i modelli TPN non permettono di catturare le caratteristiche spaziali del sistema Evoluzione della configurazione spaziale nel tempo (mobilità) Vincoli di spazialità legati alla configurazione dell’ambiente e alla

evoluzione dinamica

Page 7: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Visualizzazione in un ambiente virtuale della evoluzione spaziale controllata da un modello TPN

• La presenza di un gettone in un posto indica uno stato di operazione per un oggetto mobile

• Il progresso di una transizione modella la condizione di esecuzione di una azione nello spazio (e.g. spostamento lungo un percorso predefinito)

Page 8: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Esempio: applicazione al controllo di instradamento del traffico

• In fase di simulazione il modello TPN simula il software di controllo del sistema Genera comandi per le unità mobili in accordo alla tempificazione e

alla sequenzializzazione espressa nel modello Permette la visualizzazione della evoluzione dello stato del controllo

(Token Game) e della configurazione spaziale del sistema (Animazione)

[5,5] [3,3] [2,2] [5,5]

Muovi_treno1

-> stazione

Treno1_prosegui ->

prossima stazioneMuovi_treno2 Muovi_treno2

Stazione

Page 9: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

[100,100]

[100,100]

Limiti nella modellazione

• L’evoluzione del modello TPN non è condizionata dalla configurazione spaziale e dalla velocità degli oggetti mobili

• Esempio: cella di assemblaggio con due veicoli AGV I veicoli si muovono sul percorso assegnato per il tempo determinato

dalla transizione Le collisioni tra veicoli non sono rilevate né gestite

[100,100]

Move Truck2

Truck1

Truck2 [99,99][98,98]

Move Truck1

[99,99][98,98]

Page 10: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Limiti nella modellazione

• La configurazione spaziale deve potere condizionare la evoluzione dello stato logico La configurazione spaziale è parte dello stato del modello L’occorrenza di una condizione nella configurazione spaziale

costituisce un evento che modifica lo stato logico

[100,100]

Move Truck2

Truck1

Truck2 [99,99][98,98][100,100][99,99]

Move Truck1

[100,100][99,99][98,98][100,100][99,99]

Page 11: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Estensione del modello TPN

• Il modello deve includere informazioni spaziali e cinematiche Posizione degli oggetti mobili Percorso su cui sono instradati Velocità degli oggetti mobili

• L’evoluzione del modello deve accoppiare l’evoluzione delle componenti logica e spaziale dello stato Leggi cinematiche che aggiornano la posizione degli oggetti mobili in

base al progresso nell’esecuzione delle transizioni Condizionamento della evoluzione dello stato logico del modello alla

configurazione spaziale del sistema

Page 12: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Spatial TPNoggetti, percorsi, velocità

• Ogni transizione del modello può essere associata a un oggetto mobile, un percorso su cui l’oggetto è instradato, e un valore di velocità

• La transizione opera come controllore per l’oggetto L’oggetto è instradato sul path associato L’oggetto si muove con il valore di velocità associato alla transizione

[100,100]

Truck2Position (x2,y2)

[100,100]

Move Truck1, Path p1, Speed 10

Move Truck2, Path p2, Speed 10

x2

y2

x1

y1

x

y

Truck1

Position (x1,y1)

Path p2

Path p1

Page 13: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Spatial TPN:Aggiornamento della configurazione spaziale

• Aggiornamento della posizione degli oggetti mobili

• Cambiamento del percorso di instradamento

• Variazione della velocità

Move Truck1

[100,100]

Truck2

Truck1: (x1,y1)

Truck2: (x2,y2)

x

y

Move Truck2

x1

y1T T

x1+speed*T x1+speed*2T

[100,100][99,99][98,98]

Truck1

Truck1: (x1+speed*T,y1)Truck1: (x1+speed*2T,y1)

Path p2

Path p1

Page 14: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Spatial TPN:Guardie sulla configurazione spaziale

• L’evoluzione dello stato logico del modello è condizionata dalla configurazione spaziale attraverso vincoli sulla posizione relativa degli oggetti mobili condizioni relative alla presenza di una unità mobile su un path e/o

entro una distanza

Move AGV1

[100,100]

Truck2

Truck1:(x1,y1); Path p1; Speed 10

Truck1:(x1,y1); Path p1; Speed 10

Move AGV2

[100,100]

Truck1

Sensing Field Vincoli: forward sensing system

Page 15: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Modellazione, simulazione e analisi nell’ambiente ORIS

TPN Editor

3D EnvironmentComposer

3D ObjectAssembler

3D Objects

TPN Animator

3D EnvironmentAnimator

Time Petri Nets

3D Environments

TPN Analyzer

Page 16: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Tool di modellazione

• Editor TPN Interfaccia grafica per la creazione di modelli di Petri Permette la specifica di intervalli temporali per le transizioni

e la specifica delle condizioni iniziali

• Estensione al caso di sistemi con caratteristiche spaziali Oggetti mobili Percorsi Caratteristiche cinematiche (velocità)

Page 17: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Tool di modellazione

• 3D Object Assembler Assemblaggio di oggetti virtuali 3D da librerie di componenti Implementazione basata su Java 3D

• Attualmente il tool permette la modellazione di robot virtuali È possibile creare librerie per la creazione di oggetti 3D diversi

Page 18: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Tool di modellazione

• Virtual Environments Composer Organizza su una scena gli oggetti creati con 3D Object Assembler Definizione dei percorsi e dei parametri specifici per gli oggetti

mobili

• Possibile estensione del tool per la creazione di schemi di visualizzazione diversi(e.g. visualizzazione 2D di un quadro sinottico ferroviario)

Page 19: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Tool di Simulazione

• TPN Animator (Token game tempificato) Mostra l’evoluzione del modello

TPN nel tempo Produce i comandi di animazione

per gli oggetti mobili

• 3D Environment Animator Ricostruisce gli ambienti virtuali

creati con il tool “Environment Composer”

Riceve i comandi da TPN Animator e gestisce l’esecuzione dei thread di animazione

Page 20: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Esempio: simulazione di un sistema di instradamento ferroviario

• Il modulo di presentazione può essere adattato a contesti applicativi diversi e a simulatoridiversi (2D e 3D)

[5,5]

[5,5]

[7,7]

[5,5]

[5,5]

T2 move-stazione, speed=5

T1 move-scambio, speed=2

T2 prosegui, speed=5

Treno T1

Treno T2

Stazione

T1 prosegui – b1

Vincolo: b1 libero

T1 prosegui – b2

Vincolo: b2 libero

Binario b1

Binario b2

Page 21: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Analisi dello spazio degli stati

• Lo stato di un modello TPN dipende da: Marcamento Insieme dei time to fire delle transizioni in progresso

• Nei modelli TPN estesi per la modellazione di sistemi con spazialità, questo include anche lo stato degli oggetti mobili Posizione degli oggetti Percorso su cui attualmente sono instradati

• Enumerazione dello spazio degli stati Grafo di raggiungibilità Informazioni sui comportamenti critici rispetto a vincoli di tempo reale o di

configurazione spaziale Calcolo della probabilità degli stati

Page 22: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

• Gestione del traffico Assenza di collisioni basato su “controllo in avanti”

(forward sensing control) sui veicoli mobili Assenza di stalli

• Il comportamento del sistema è difficilmente predicibile

Il controllo è complesso Le tempificazioni delle

operazioni di manipolazione e degli istanti di partenza dei veicoli sono non deterministiche

Dipendenza da vincoli spaziali

Esempiocella di assemblaggio con automatic guided vehicles (AGV)

Docking Station

Load Area AGV2

Unload Area AGV2

Load Area AGV1

Unload Area AGV1

AGV2AGV2 AGV1AGV1

Page 23: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Modellazione con il tool ORIS

• TPN Editor: modello di Petri

• Virtual Environments Composer: arrangiamento iniziale e traiettorie

ANALIZZATORE

Rilevazione di stalli (situazioni in cui i veicoli non

possono procedere senza collidere)

Page 24: G.Bucci, E.Vicario, F.Baldini, L.Sassoli {bucci,vicario,fbaldini, sassoli}@dsi.unifi.it

Risultati sperimentali preliminari nell’analisi

Istante di partenza Numero di stati generati

Numero di deadlock rilevati

AGV1 [0,40]

AGV2 [0,0]434939 32

AGV1 [0,0]

AGV2 [0,40]319695 19

• La simulazione dà solo parziale confidenza sul corretto funzionamento del sistema e sulla assenza di stalli

• L’analisi esaustiva dello spazio degli stati del modello TPN esteso permette di avere garanzie di correttezza:

Rilevazione delle situazioni di stallo Identificazione degli sfasamenti critici tra gli istanti di partenza dei veicoli

Ritardo partenza di AGV1 risp. a AGV2

0

Partenza diAGV2

Partenza di AGV1

40 sec

Ritardo partenza di AGV2 risp. a AGV1

Sfasamenti critici

40 sec

40 sec0

istanti critici

istanti critici