Federico Chesani DEIS Università di Bologna Alessandria, 14 Luglio 2005
description
Transcript of Federico Chesani DEIS Università di Bologna Alessandria, 14 Luglio 2005
1
Progetto COFIN2003 Progetto COFIN2003 Logica computazionale basata su abduzione per modellare il Logica computazionale basata su abduzione per modellare il
ragionamento e l'interazione in società di agentiragionamento e l'interazione in società di agenti
E-Learning e Vincoli Sociali di Integrità
Un prototipo per E-Learning by Doing con Microsoft Word
Federico ChesaniFederico Chesani DEISDEIS
Università di BolognaUniversità di Bologna
Alessandria, 14 Luglio 2005Alessandria, 14 Luglio 2005
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
2
Vincoli Sociali di Integrità
• Simili a regole forward, con cui specifichiamo i protocolli di interazione
• Idea di base: all’accadere di un evento, ci si aspetta che qualcosa accada/non accada
• Fino ad ora utilizzati in ambito multi-agente, dove per “evento” abbiamo inteso lo scambio di un messaggio tra due agenti (communication act)
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
3
Vincoli Sociali di Integrità – Esempio
H( tell( A, B, openauction(Item,TEnd,TDeadline), D), TOpen)
/\ H( tell( B, A, bid(Item,Price), D), TBid)/\ TOpen < TBid/\ TOpen < TEnd/\ TEnd < TDeadline---> E( tell( A, B, answer(win,Item,Price), D), TWin) /\ TWin <= TDeadline /\ TEnd < TWin\/ E( tell( A, B, answer(lose,Item,Price), D), TLose) /\ TLose <= TDeadline /\ TEnd < TLose.
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
4
Vincoli Sociali di Integrità:cosa ci possiamo fare
• Le aspettative forniscono una sorta di semantica a livello sociale dell’atto comunicativo stesso
• Tramite SCIFF possiamo verificare se una interazione è conforme al protocollo
• Tramite la g-SCIFF vorremmo poter verificare se un protocollo gode o meno di determinate proprietà
• E’ possibile accedere allo stato della SCIFF, cioè è possibile conoscere l’insieme di aspettative correnti in seguito all’elaborazione di un insieme di eventi
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
5
Utilizzo degli ICs
• Fino ad ora utilizzati in ambito multi-agente…
• … in realtà il linguaggio ICs è definito per eventi generici della forma:
H(Event1, T1) ---> E(Event2, T2).
dove Event è un generico termine.
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
6
ICs & E-Learning
Idea sorta durante una precedente riunione di questo progetto (grazie al gruppo di Torino):
Utilizzare gli ICs per definire le sequenze di azioni che un utente di un sistema di E-Learning deve compiere per raggiungere un certo obiettivo
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
7
ICs & E-Learning
• Scenario applicativo: E-Learning by Doing nell’apprendimento di un software
• Ipotesi fondamentale: è possibile catturare le azioni che l’utente compie
• Nello scenario del software, ciò corrisponde a sapere quando e come un utente preme i tasti della tastiera o i bottoni della GUI del software
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
8
ICs & E-Learning
• Tramite ICs possiamo definire quali sono le azioni che l’utente deve fare al fine di raggiungere l’obiettivo
• In particolare, possiamo specificare le azioni passo per passo, anche in conseguenza delle azioni compiute dall’utente in precedenza
• Es.: Ci aspettiamo che l’utente inserisca il nome di un file solo se ha scelto il comando “Salva con Nome…”
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
9
ICs & E-Learning
• Possiamo esprimere azioni in alternativa e, di conseguenza, rappresentare la situazione in cui esistono più “modi” corretti per ottenere lo stesso obiettivo (disgiunzioni nella testa delle regole)
• Es.: al fine di salvare un documento in Microsoft Word si può:
• Premere il tasto con l’icona corrispondente• Premere la combinazione SHIFT+F12• Menu File -> Salva• …
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
10
ICs & E-Learning:cosa possiamo fare esattamente?
• Definire formalmente i modi possibili con cui ottenere un certo obiettivo (una sorta di manuale)
• Verificare che un utente abbia raggiunto un certo obiettivo (sempre in termini di eventi accaduti)
• Segnalare immediatamente all’utente se ha compiuto un errore irrimediabile
• Guidare l’utente in difficoltà suggerendo, di volta in volta, quali sono le azioni possibili
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
11
Sviluppo di un prototipo• Siamo partiti dal lavoro del gruppo di
Torino
• Tre tesisti della laurea triennale vi hanno lavorato
• De Angelis, modulo di cattura degli eventi in C++/C#
• Silenzi, studio di E-Learning e formalizzazione di protocolli
• Mazzanti, ripreso il lavoro dei precedenti e realizzato un primo prototipo
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
12
SOCS-SI
Stato dello sviluppo• Attualmente realizzato un prototipo che si
collega a Microsoft Word 2003
C++
C#
MicrosoftWord
JavaSocket on local ports
Catturadegli eventi
a basso livello
Interpretazione degli eventi
Trasofrmazione degli eventi in
formato SOCS-SI
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
13
Una breve demo
• L’utente deve:– creare un nuovo documento,– scrivere qualcosa– metterlo in grassetto– salvare il documento
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
14
Alcuni problemi irrisolti…
– difficoltà nel tradurre gli eventi di basso livello (mouse, tastiera) in eventi di “alto” livello (pressione di un pulsante, selezione di un testo, …)
– il modulo di cattura degli eventi (C++) è instabile, problemi con le API di Windows
– manca GUI per suggerire gli eventi all’utente– SCIFF proof procedure esplora l’albero in modo
depth-first è necessario esplorare l’albero con strategia breadth-first
Alessandria14 Luglio 2005
Logica computazionale basata su abduzione per modellare il ragionamento e l'interazione in società di agenti
15
Conclusioni
• Il prototipo, per quanto ancora soggetto a numerosi bugs, mostra comunque la realizzabilità dell’idea
• La cattura degli eventi deve essere realizzata a livello dell’applicativo stesso (maggiore integrazione)
• Necessaria una estensione della proof procedure