Metodi formali nel progetto dellinterazione Anna Labella.

Slides:



Advertisements
Presentazioni simili
Le vetrerie sestesi a cura di M.T. Cupaiolo
Advertisements

h h e h x h e e h q h x x h q h e x h h e x q h x h e q h x h e x x q e h e q h x x h Gruppo di Progettazione di Eventi.
Milano, 4 aprile 2008 Acquisizione, elaborazione, generazione, interazione Goffredo Haus LIM - Laboratorio di Informatica Musicale, scientific director.
Qualità nei laboratori di ricerca e albo laboratori altamente specializzati Workshop, Genova 11 luglio 2002 G.B. Rossi: Considerazioni sulla qualità nei.
Università degli Studi di Modena e Reggio Emilia
BIBLIOCOM ROMA 16 ottobre 2002
1. Classificazione dei sistemi e dei modelli
1. Classificazione dei sistemi e dei modelli
1 2. Introduzione alla probabilità Definizioni preliminari: Prova: è un esperimento il cui esito è aleatorio Spazio degli eventi elementari : è linsieme.
Modellistica e simulazione
Corso di Laurea Magistrale in Informatica - SITI Corso di Laurea Magistrale in Informatica Sistemi Informativi e Tecnologie per lInterazione (SITI) 11/6/2008.
Corso di perfezionamento in Tecniche e metodologie informatiche per le discipline giuridiche Strumenti per lanalisi storica e linguistica dei documenti.
Mastertitelformat bearbeiten Dateiname/Verfas- ser Mastertitelformat bearbeiten 1 L Automazione Industriale.
Giornata di studio La nuova normativa per la misura di Scariche Parziali Torino, 5 Dicembre 2002 I calibratori per le prove di prestazione sui sistemi.
Pubblicare sul Web Prima di iniziare... Università degli studi di Cagliari - Direzione per le reti e i servizi informatici - Settore Web.
1 1. Classificazione dei sistemi e dei modelli La teoria dei sistemi e del controllo si è sempre tradizionalmente occupata dei sistemi a variabili continue.
4. Automi temporizzati Il comportamento dei sistemi ad eventi temporizzati non è definito semplicemente da una sequenza di eventi o di valori dello stato,
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 8
Sistemi basati su conoscenza Conoscenza e ragionamento Prof. M.T. PAZIENZA a.a
Dal colloquio al resoconto. REPORT O TRASCRIZIONE SU MEMORIA riflessione a posteriori; dare vita ad un processo di conoscenza e comprensione dellintervento;
Metodi formali nel progetto dellinterazione Anna Labella.
Metodi formali nel progetto dellinterazione Anna Labella.
Costruzione di Interfacce - Paolo Cignoni1 Costruzione di Interfacce Lezione 30 MMeditor e collision detection
PROTOTIPAZIONE Maria Cristina Caratozzolo
ANALISI DEI SISTEMI AD EVENTI
AUTOMAZONE INDUSTRIALE I
1 Towards a Theory of Revealed Economic Behavior: The Economic-Neurosciences Interface J.M.E. Pennings, P.Garcia, E. Hendrix
Componenti: interoperabilità. Tecnologia per componenti Sono necessari Un linguaggio (con annessi e connessi) per esprimere le interfacce (IDL) Un ambiente.
Linguaggi di markup1 LINGUAGGI DI MARKUP. Linguaggi di markup2 Documenti su Internet Internet permette (tra laltro) di accedere a documenti remoti In.
Un approccio costruttivista alla geometria
FONDAMENTI DI INFORMATICA III A2-1 CARATTERISTICHE E MODELLIZZAZIONE DEL LAVORO DUFFICIO Argomento 2.3 CARATTERISTICHE E MODELLIZZAZIONE DEL LAVORO DUFFICIO.
FONDAMENTI DI INFORMATICA III A2A2-1 CARATTERISTICHE E MODELLIZZAZIONE DEL LAVORO DUFFICIO Argomento 2 Approfondimento 2 CARATTERISTICHE E MODELLIZZAZIONE.
Strutture di controllo in C -- Flow Chart --
AUMENTO DELLA RILEVANZA DEI PROCESSI DI SOCIALIZZAZIONE: FATTORI PRINCIPALI §1) MUTAMENTI NEL MERCATO DEL LAVORO (NUOVE FORME CONTRATTUALI, FLESSIBILITA,
Dalla biblioteca-catalogo alla biblioteca-nodo di rete*
ADSL VOIP Voice Over IP.
5.Struttura e disegno delle politiche agricole Valutazione delle politiche AA 2005/2006 Davide Viaggi.
Univ. Studi di Roma FORO ITALICO Prof. Stefano Razzicchia 1 UNIVERSITA STUDI DI ROMA FORO ITALICO Corso di Laurea Triennale INFORMATICA Lez. 6.
Elementi di Informatica
INTRODUZIONE AI SEGNALI SEZIONE 7
1 Workshop Conclusione Azione Formativa Torino 11 Maggio 2011 Organizzazione dellazione formativa - Il percorso formativo - il calendario - Aspetti organizzativi.
Le unità di input/output Il dispositivo di interfaccia viene attivato ogni volta si vuole compiere un operazione di input/output e comprende : Un buffer.
La vita cittadina entra nel Sito del Comune. Lo Strumento La Città Virtuale si propone come uno strumento di contatto e interfaccia con i cittadini, le.
Alcune Istruzioni per la gestione dellI/O (Classe 7) Per la destinazione D0 sono ammessi tutti i tipi di indirizzamento tranne quello immediato. Per la.
Quanti sono i principi della
Immaginare e giudicare 2° lezione La ricerca contemporanea.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Intervalli limitati... Esempi [a ; b= xR a  x  b
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
© Copyright NTT DATA Italia – All Rights Reserved The information contained in this document is the property of NTT DATA Italia S.p.A. and the addressee.
Lo spazio europeo dell’Istruzione Superiore e la prospettiva delle istituzioni AFAM Il contributo delle istituzioni artistiche e musicali europee Alvaro.
1 Informazioni sull’esame §Esame orale su tutti gli argomenti trattati a lezione §Seminario: studio di un argomento avanzato, tipicamente di un formalismo.
Informatica 3 V anno.
1 LABORATORIO DI INFORMATICA Ingegneria Informatica Dott. Giorgio Cicerchia a.a ° Ciclo.
LUCIDI dell'insegnamento di COMUNICAZIONI ELETTRICHE eo/in/bi
4/26/20151 Metodi formali nello sviluppo software a.a.2013/2014 Prof.Anna Labella.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Data Acquisition System I° Modulo(DAS) Corso di Elettronica1.
Automi temporizzati.
Università degli Studi di Firenze Facoltà di Ingegneria Dipartimento di Sistemi e Informatica Corso di Laurea in Ingegneria Informatica Modelli e strumenti.
La gestione.
Economia e Organizzazione Aziendale
AGnovel Partnership Formazione dei docenti – Modulo 2: AGnovel – Language Learning with AGnovel – Concept and Ideas AGnovel Advanced Interactive Graphic.
Motore passo-passo Motore brusheless.
Diagramma degli Stati. Diagramma degli Stati … Definizione è un grafico con nodi ed archi in cui i nodi rappresentano gli stati di una classe e gli archi,
IL PLC AUTOMAZIONE INDUSTRIALE
ARGOMENTI DELLA LEZIONE  Le distribuzioni di frequenza in classi  Le distribuzioni di frequenza in classi  Le tabelle di frequenza  La rappresentazione.
Solutions for SMART CITY Relatore: dott. Giacomo Campanella.
I modelli psicologici dello Human Computer Interaction A cura di Eleonora Bilotta.
Transcript della presentazione:

Metodi formali nel progetto dellinterazione Anna Labella

Due aspetti La struttura del tempo Il tipo di interazione

Tempo discreto Tempo continuo a gradini Tempo continuo Più di un tipo di tempo la struttura del tempo Qual è più facile e quale più utile?

Handshaking Broadcasting a braccetto Controllo Rilevamento di segnale Rendez-vous ecc. Il tipo di interazione

Esempi tratti dallinterazione Combinazione di diversi processi Per mezzo di rendez-vous

Esempi tratti dallinterazione Interfacce come tipici esempi di coesistenza di diversi tipi di tempo

Cosa ci interessa e cosa no Eventi istantanei Eventi a distanza sempre più ravvicinata Eventi che si svolgono e/o si evolvono in un intervallo di tempo Eventi che devono aspettare input dallesterno Latenze in informatica musicale Interpretazione legata alle durate (es. doppio click)

Il problema cruciale: linterpretazione Riconoscimento di comportamento

Una possibile soluzione: diversi livelli di astrazione Mieke Massink Giorgio P. Faconti, A reference framework for continuous interaction UAIS, 1 (2002) fisico percettivo proposizionale concettuale di gruppo Linee guida per disegnare interfacce ibride continue

Gestire linterazione trasformando linformazione dai sensori agli effettori Philip Barnard, Jon May, David Duke, David Duce Systems, interactions, and macrotheory ACM TOCHI,7 (2000)

Gli automi ibridi Una soluzione? Automa ibrido X n-uple di variabili reali, (V,E) grafo di controllo, modalità ed interruttori init, inv, flow condizioni che etichettano le modalità jump condizione che etichetta gli interruttori eventi Thomas A. Henzinger, The Theory of Hybrid Automata, Proc. 11th LICS Conf. (1996)

Gli automi ibridi Una soluzione? Sistema di transizione temporizzato Q,Q 0 V Rn, (v,x) Q sse inv(v)[X:=x] vero (v,x) Q 0 sse inv(v)[X:=x] e init(v)[X:=x] veri A= R + eventi e durate :(v,x) (v,x) sse cè e E v v jump(e)[X,X:=x,x] event(e)= :(v,x) (v,x) sse cè f:[0, ] R n differenziabile f(0) = x f( ) = x inv(v) [x:= f( ) ] 0 flow(v ) [x, := f( ), f( )] veri Thomas A. Henzinger, The Theory of Hybrid Automata, Proc. 11th LICS Conf. (1996) x.x

Esempio: un termostato off on = - 0,1 x = 5- 0,1 x x18 x22 x=20 x>21 x<19.x.x.x.x

Marionette virtuali

Il sistema Allesterno è un processo veramente continuo, almeno a tratti, che viene rilevato secondo certi intervalli di tempo dai sensori. Questi innescano delle procedure allinterno costanti, ma su intervalli di tempo reali (almeno in prima approssimazione). Esistono uno o più sistemi temporali sia interni che esterni.

Descrizione del sistema interno

Usare soltanto durate e corrispondenze temporali Non ci domandiamo perché e come accadano certe transizioni, Ma le osserviamo

Osservabilità e nondeterminismo Un processo può essere descritto osservando il suo comportamento dallesterno. Non è detto che la stessa osservazione porti nello stesso stato È suggerita una struttura ad albero a bc d a bc

La nozione di processo a.P a P P i a Q i P 1 +P 2 a Q i ed altri operatori…..

Il tempo discreto N A = {a,b,c,d,…} aacb

Alberi discreti N Set

Il tempo continuo a gradini A = {a,b,c,d,…} (a,r 1 ) (a,r 2 - r 1 ) (c, r 3 - r 2 ) (b, r 4 - r 3 ) R+R+ 0 r1r1 r2r2 r3r3 r4r4

Il tempo continuo F = {f,g,h,k,…} (f |r 1 ) (f |r 2 - r 1 ) (h |r 3 - r 2 ) (g |r 4 - r 3 ) R+R+ 0 r1r1 r2r2 r3r3 r4r4

Alberi continui Set R+R+ 0 r1r1 r2r2 r3r3 r4r4

Le categorie di alberi Un albero è un insieme di cammini etichettati ed incollati lungo unetichetta che è un prefisso comune. Questo significa che, a sua volta un albero è una categoria arricchita su una 2-categoria localmente posetale L Un morfismo di L-alberi è un L-funtore: una funzione tra cammini che rispetta strettamente letichettatura e può far crescere lincollamento, cioè una simulazione che tende a diminuire il non determinismo

Esempi di 2-categorie di base: le strutture temporali A* monoide libero sullalfabeto A, funzioni parziali da N ad A CA funzioni parziali costanti a gradino da R + ad A CF funzioni parziali continue a tratti TA monoide a tracce, ecc. In generale: L monoide che sia anche un inf-semireticolo Più in generale sistemi di tracce con rendez-vous (vedremo più avanti)

t = (X, e, d) : i. un insieme di cammini: X ii. una funzione etichettatura e: X L, ii. una funzione incollamento d : X X L t.c. per ogni x, y, z in X, - d (x, x) = e(x) - d(x, y) e (x) e (y) - d(x, y) d(y, z) d(x, z) - d (x, y) = d (y, x) Gli alberi su L

Un morfismof : t 1 t 2 è una funzione f : X 1 X 2 tale che i. e 2 (f(x)) = e 1 (x) ii. d 1 (x, y) d 2 (f(x), f(y))

a c bc b b a a bc c b a a Il caso L=A* Si etichetta con A* e si incolla per prefisso

Operazioni tra alberi Somma: t 1 + t 2 =, dove - X = X 1 X 2 - e (x 1 ) = e 1 (x 1 ) - e (x 2 ) = e 2 (x 2 ) d i (x, y) se x, y X i - d ( x, y) = altrimenti 0 = è lunità

Esempio

Operazioni tra alberi Concatenazione: t 1 t 2 =, dove - X = X 1 X 2 - e ( ) = e 1 (x 1 ). e 2 (x 2 ) d 1 (x 1, y 1 ).d 2 (x 2, y 2 ) se x 1 = y 1 - d (, ) = d 1 (x 1, y 1 ) altrimenti 1 = is lelemento neutro Tree(A) monoidale chiusa a destra La concatenazione distribuisce a destra sulla somma

Esempio

Etichettatura con funzioni a gradino Si incolla per prefisso Il tempo continuo CA

Etichettatura con tracce di Mazurkiewicz: A*/I Parole con possibilità di invertire certe lettere [a,b] Il tempo non completamente ordinato c b [a,b] c

Sincronizzazione e fusione Tempo globale: Sincronizzazione Tempi relativi: Rendez-vous

Sincronizzazione Definiamo una tabella di sincronizzazione per coppie di mosse contemporanee e costruiamo lalbero che viene etichettato con i risultati. La sicronizzazione può essere: handshaking, a braccetto, ecc. t 1 t 2 =, dove - X X 1 X 2 - e ( ) = e 1 (x 1 ) * e 2 (x 2 ) - d (, ) = (e 1 (x 1 ) * e 2 (x 2 )) (e 1 (y 1 ) * e 2 (y 2 )) Tagliato eventualmente alla lunghezza minima tra d 1 (x 1, y 1 ) e d 2 (x 2, y 2 ) altrimenti

Esempio d b a a a a b c d d a b a

Fusione Etichettatura sui prefissi, ma incollamento su opportuni sottoinsiemi: Ogni sottoprocesso ha il suo tempo

Una nuova struttura di base A N Si etichetta ancora con le parole di A*, ma non si incolla per prefisso

Due cammini x e y e(x) = abac, cioè {(1,a),(2,b),(3,a),(4,c) } e(y) = cbabb, cioè {(1,c),(2,b),(3,a),(4,b),(5,b)} a(x,y) = {(3,a)}. Thread o dendroide

(X, e, d) (X, e, d) : i. un insieme di cammini: X X ii. una funzione etichettatura e e: X X A *, NN ii. una funzione incollamento : X X A NN t.c. per ogni x, y in X, x, y in X - (x,x) s.i. consistente di e(x) e di e(x) - d (y, x) (x,x) (y,x) - (x,x) d(x, y) (x,y) - (x, x) = (x, x) Fusione tra alberi (caso discreto)

Notare lanalogia con la nozione di albero In realtà sono cambiate soltanto le frecce della categoria di base: Gli oggetti continuano ad essere prefissi, le frecce sono soltanto insiemi consistenti x y e(x)e(y) a(x,y)

Arricchimenti doppi Coesistenza di due tipi di tempo Loro sincronizzazione per prefisso

Caso di comportamento ibrido t = (X, e, d) : i. un insieme di cammini: X ii. una funzione etichettatura e: X CF CA, cioè e - : X CF ed e + : X CA iii. per ogni x, y in X una funzione incollamento monotona d x,y : [e - (x), e - (y) ] [e + (x), e + (y) ] t.c. per ogni x, y, z in X, -d x,x [e - (x), e - (x) ] [e + (x), e + (x) ] rispetta il massimo - d(x, y) e (x) e (y) - d x,y d y,z d x,z - d x,y = d y,x

Attenzione! la situazione non è simmetrica rispetto alle due etichettature Da una parte dobbiamo prendere tutti i prefissi comuni, dallaltra no: questo vuol dire che abbiamo nondeterminismo soltanto a destra. Si potrebbe generalizzare prendendo relazioni al posto di funzioni

Esempio x d x,x [e - (x), e - (x) ] [e + (x), e + (x) ] potrebbe essere indotta dalla funzione sugli istanti di tempo {r i } {s i }, così d x,y [e - (x), e - (y) ] [e + (x), e + (y) ] e - (x) = (f |r 1 ) (f |r 2 - r 1 ) (h |r 3 - r 2 ) (g |r 4 - r 3 ) e + (x) = (a,s 1 ) (a,s 2 - s 1 ) (c, s 3 - s 2 ) (b, s 4 - s 3 ) e - (x) e + (x) e - (y) = (f |r 1 ) (f |r 2 - r 1 ) (h |r 3 - r 2 ) (k |r 4 - r 3 ) e + (y) = (a,s 1 ) (a,s 2 - s 1 ) (c, s 3 - s 2 ) (d, s 4 - s 3 ) y e - (y) e + (y)

La nozione di stato La logica associata Ulteriori possibilità del modello

La logica associata

Il caso degli alberi a bc c b a a Ogni nodo è uno stato

Il caso dei dendroidi Non ogni nodo è uno stato

A che servono i metodi formali?

Servono a capire

Vengono prima o dopo la pratica? Si intercalano