Curriculum Scientifico e Didattico di Daniele Gunetti (Allegato alla domanda di partecipazione alla procedura di valutazione comparativa a n. 1 posto di professore universitario ordinario di ruolo presso la Facoltà di Scienze Matematiche, Fisiche e Naturali dell Università degli Studi di Torino - settore scientifico disciplinare INF/01 - Informatica (avviso pubblicato nella G.U. n. 52 del 4/7/2008)) Curriculum studiorum Nel 1991 consegue la Laurea in Scienze dell Informazione presso l università degli studi di Torino con la votazione di 110/110 e lode e dignità di stampa (tesi di ricerca nel campo della deduzione automatica). Dal 1991 al 1995 frequenta i corsi del Dottorato di Ricerca in Informatica presso il Dipartimento di Informatica dell Università di Torino (VII ciclo di dottorato, consorzio Torino-Milano), conseguendo il titolo di Dottore di Ricerca nel 1996 (Titolo della dissertazione finale: Sviluppo Induttivo di Programmi Logici). Attività professionale Dal 1-11-86 al 30-6-95 tecnico di laboratorio (VI e VII qualifica funzionale) presso il Dipartimento di Informatica dell Università di Torino (in congedo straordinario dal 1-1-93 per seguire i corsi del Dottorato di Ricerca). Dal primo novembre 1995 al 30 settembre 2001 Ricercatore Universitario presso il Dipartimento di Informatica dell Università di Torino (confermato in ruolo a partire dal primo novembre 1998). Dal primo ottobre 2001 Professore Associato presso il Dipartimento di Informatica dell Università di Torino (confermato in ruolo a partire dal primo ottobre 2004). Altre attività Nel periodo 1996/1998 è stato membro della commissione Web del Dipartimento di Informatica. A partire dal 2001, è membro della commissione trasferimenti del corso di Laurea di Informatica, occupandosi del riconoscimento di titoli ed esami di studenti provenienti da altri corsi di laurea e altre Università. Nel triennio 2001/2004 è stato membro della Giunta del Dipartimento di Informatica in qualità di rappresentante dei professori associati del Dipartimento. La carica gli è stata rinnovata per il periodo 2004/2007. è referente CINECA del Consiglio di Corso di Studi in Informatica per i corsi di laurea triennali. ATTIVITÀ DIDATTICA Negli anni accademici 1995/1996 e 1996/1997 è stato affiancato rispettivamente al corso di Sistemi per l Elaborazione dell Informazione II ealcorsodisistemi Operativi per i quali ha tenuto cicli di lezioni sull uso e l implementazione del sistema operativo Unix, ha svolto le esercitazioni in aula legate al corso, e ha seguito e valutato i progetti finali connessi ai corsi.
Nell anno accademico 1997/1998 è stato il responsabile del laboratorio associato al corso di Informatica Applicata (Corso di laurea in Scienze della Comunicazione, Facoltà di Lettere e Filosofia). Nell anno accademico 1998/1999: è stato il responsabile del laboratorio associato al corso di Informatica Applicata (Corso di laurea in Scienze della Comunicazione, Facoltà di Lettere e Filosofia); ha tenuto per affidamento retribuito il corso di Informatica Generale (Corso di Laurea in Scienze della Comunicazione, Facoltà dilettereefilosofia,sededi Ivrea). Nell anno accademico 1999/2000 ha tenuto: per affidamento congiunto il corso di Sistemi Operativi e Laboratorio -6CFU su un totale di 12 CFU di corso (Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti); Per affidamento retribuito il corso di Informatica Generale - 6 CFU (Corso di Laurea Interfacoltà in Scienze Motorie). Nell anno accademico 2000/2001 ha tenuto: per affidamento congiunto il corso di Sistemi Operativi e Laboratorio -6CFU su un totale di 12 CFU di corso (Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti); Per affidamento retribuito il corso di Informatica I - 7 CFU (Corso di Laurea interfacoltà in Scienze e Turismo Alpino). Nell anno accademico 2001/2002 ha tenuto: per affidamento congiunto il corso di Sistemi Operativi e Laboratorio -6CFU su un totale di 12 CFU di corso (Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti); per affidamento il corso di Informatica I - 7 CFU (Corso di Laurea interfacoltà in Scienze e Turismo Alpino); Per affidamento retribuito il corso di Informatica II - 8 CFU (Corso di Laurea interfacoltà in Scienze e Turismo Alpino). Nell anno accademico 2002/2003 ha tenuto: per affidamento il corso di Sistemi Operativi e Laboratorio -12CFU(Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti); Per affidamento retribuito il corso di Informatica II - 8 CFU (Corso di Laurea interfacoltà in Scienze e Turismo Alpino). Nell anno accademico 2003/2004 ha tenuto per affidamento il corso di Sistemi Operativi e Laboratorio - 12 CFU (Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti). Nell anno accademico 2004/2005 ha tenuto per affidamento il corso di Sistemi Operativi e Laboratorio - 12 CFU (Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti). Negli anni accademici 2005/2006, 2006/2007 e 2007/2008 ha tenuto:
per affidamento congiunto il corso di Sistemi Operativi e Laboratorio -6 CFU su un totale di 12 CFU di corso (Corso di Laurea triennale in Informatica, indirizzo Sistemi e reti); per affidamento il corso di Architetture II - 6 CFU (per i corsi delle Lauree Specialistiche in Informatica). Daniele Gunetti èinoltrestatorelatore e controrelatore di varie tesi di laurea, in particolare su argomenti legati alla sicurezza informatica e alla biometria. ATTIVITÀ SCIENTIFICA Partecipazione a progetti di ricerca progetto ESPRIT III - BRA numero 6020, titolo ILP - Inductive Logic Programming, settembre 1992 - agosto 1995. progetto ESPRIT III - BRA numero 6156, titolo DRUMS-2 - Defeasible Reasoning and Uncertainty Management Systems, ottobre 1992 - settembre 1995. progetto bilaterale del CNR, titolo Inferenza di classi di funzioni ricorsive. 1993-1994. Anni ILPNET (Inductive Logic Programming Pan-European Scientific Network) finanziato dalla CEE, luglio 1993 - giugno 1996. progetto ESPRIT III 20237, titolo ILP2 - Inductive Logic Programming 2, gennaio 1996 - dicembre 1998. A partire dal 2001 è responsabile dei fondi di finanziamento della ricerca locale ( ex 60% ) Computer Security e Computer and Network Security ai quali fa capo un gruppo di ricerca composto da 6 persone. Attività diricerca L attività di ricerca di Daniele Gunetti si può considerare divisa in due fasi. Nella prima fase ha lavorato nel campo dell Apprendimento Automatico, ed in particolare nell Inductive Logic Programming (ILP) che si occupa della sintesi automatica di programmi logici a partire da esempi del loro comportamento input-output. In questo campo, Daniele Gunetti ha lavorato alla messa a punto di tecniche di apprendimento automatico che fossero utili per per lo sviluppo, il riutilizzo, il mantenimento ed il testing di programmi logici ricorsivi. La sintesi del suo lavoro in questa area di ricerca è contenuta nel libro [1] pubblicato negli U.S.A. dalla MIT Press, di cui Daniele Gunetti è coautore. Più di recente, Daniele Gunetti ha spostato il suo interesse verso il campo della Sicurezza Informatica, e più specificamente all uso di tecniche biometriche per l accertamento dell identità personale degli utilizzatori di una risorsa computerizzata. In particolare, ha ideato, sviluppato e testato una originale tecnica di riconoscimento dell identità personale basata sui ritmi di battitura alla tastiera del computer (keystroke analysis) che si èrivelata di gran lunga più accurata di tutte le altre tecniche di keystroke analysis descritte in letteratura. Il metodo messo a punto è stato brevettato [2], mentre la metodologia generale di analisi dei ritmi di battitura viene descritta in [3].
Qui di seguito si riporta una descrizione più dettagliata dell attività di ricerca di Daniele Gunetti. Apprendimento Automatico di Programmi Logici (Inductive Logic Programming) L Inductive Logic Programming (ILP) viene definita come l area di ricerca che si colloca all intersezione di Apprendimento Automatico e Programmazione Logica, e che si occupa della sintesi automatica di programmi logici a partire da esempi del loro comportamento Input-Output. Tuttavia, di fatto l ILP ènatoesiè sviluppato sostanzialmente nel contesto dell Apprendimento Automatico, con l obiettivo di sintetizzare collezioni di clausole di Horn usate principalmente per la classificazione. Al contrario, le vere e proprie applicazioni alla Programmazione Logica (ossia la sintesi di insiemi di clausole di Horn percepiti come veri programmi logici, normalmente ricorsivi) sono state limitate. Daniele Gunetti ha invece indirizzato da subito la sua ricerca verso le applicazioni dell ILP nel campo della Programmazione Logica e dell Ingegneria del Software. Tra i risultati più significativi della sua attività di ricerca in questo campo spiccano la messa punto del sistema FILP, in grado di sintetizzare programmi logici ricorsivi a partire da soli esempi positivi della funzione che si vuole calcolare [22]; la dimostrazione che l apprendimento di programmi logici contenenti la clausola cut ha una complessità computazionale eccessiva per le applicazioni pratiche [8]; lo sviluppo del sistema TRACY-not, in grado di apprendere programmi logici contententi la negazione per fallimento [12]; la messa a punto di una metodologia di testing di programmi (non necessariamente logici) basata sulla sintesi di programmi logici da esempi [6]. Daniele Gunetti ha lavorato anche ad alcuni degli aspetti teorici della disciplina, in particolare proponendo una teoria unificatrice dei diversi approcci all ILP [21] (ripresa poi in [1]) e studiando le relazioni tra induzione e abduzione ([10] e [18]). La sintesi di questo lavoro di ricerca del campo dell ILP è contenuta in [1], libro pubblicato negli U.S.A dalla casa editrice MIT Press di cui Daniele Gunetti è coautore. Tecniche biometriche applicate alla Sicurezza Informatica Più di recente, gli interessi di ricerca di Daniele Gunetti si sono spostati nel campo della Sicurezza Informatica, studiando inizialmente la possibilità di applicare tecniche di classificazione al problema di stabilire se un sistema (un computer o una rete locale) sia in uno stato sicuro, (solo utenti autorizzati stanno usando il sistema) o no (un intruso è riuscito ad introdursi nel sistema illegalmente). A tale scopo ha sviluppato un metodo di riconoscimento degli utenti autorizzati e di eventuali intrusi di un sistema, basato sul loro comportamento nei primi dieci minuti di collegamento al computer. I risultati di questa ricerca sono descritti in [16]. La buona qualità dei risultati ottenuti in [16] portano Daniele Gunetti ad occuparsi più a fondo dell uso di tecniche biometriche di riconoscimento di identità applicate alla Sicurezza Informatica. In questo contesto mette a punto un sistema di riconoscimento dell identità personale basato sull analisi dei ritmi di battitura alla tastiera del computer (Keystroke Analysis). Il sistema è stato testato in una serie di esperimenti che hanno coinvolto 154 utenti volontari per circa sei mesi, e ha mostrato un grado di accuratezza di gran lunga superiore a qualsiasi altro descritto nella letteratura sulla keystroke analysis, raggiungendo un affidabilità comparabile o superiore a quella di sistemi biometrici basati su altre caratteristiche umane fisiologiche (come le impronte digitali) o comportamentali (come la voce). Il sistema sviluppato può essere utilizzato per controllare l accesso ad una risorsa computerizzata, e/o per eseguire ulteriori controlli espliciti di identità dopo la fase di autenticazione iniziale. Il sistema ègià allo stato attuale utilizzabile come prodotto commerciale, e per questa ragione è stato protetto da brevetto industriale [2] di proprietà dell Università degli Studi di Torino. I
risultati della ricerca sono stati pubblicati in [5]. I risultati riportati in [5] sono basati sull uso di testo predefinito, e hanno costituito il punto di partenza di un lavoro di ricerca più esteso volto a dimostrare la possibilità di identificare le persone in base al modo in cui battono alla tastiera di un computer non un testo fissato a priori, bensì qualsiasi cosa esse decidano di scrivere in conseguenza del loro lavoro. La possibilità di utilizzare testi qualsiasi rende infatti il sistema piùcomododausare epiù versatile. Da una parte, la costruzione dei profili degli utenti non richiede a questi ultimi di fornire esplicitamente campioni del loro modo di battere i tasti, ma si può utilizzare ciò che gli utenti scrivono durante la loro normale attività al computer. Dall altra parte, la capacità di analizzare testi liberi permette di utilizzare il sistema anche per sorvegliare in modo trasparente l uso di una risorsa computerizzata della quale uno o più individui hanno già ottenuto l accesso (eventualmente in modo fraudolento): in altre parole, per il rilevamento di intrusioni. In [4] viene dimostrato sperimentalmente che il riconoscimento di identità basato sulla battitura al computer di testo libero, benchè più difficile del caso con testo fisso, è possibile. Gli esperimenti hanno coinvolto 130 volontari, e il risultato fondamentale descritto nel lavoro è che due campioni di testi diversi digitati dallo stesso utente sono, in media, più simili fra loro di due campioni dello stesso testo digitati da utenti diversi. Il risultato incoraggiante pubblicato in [4] ha dato il via ad una successiva fase di ricerca e sperimentazione che ha coinvolto 205 volontari. Nel contempo è stata messa a punto una tecnica di riconoscimento molto più generale e complessa di quella utilizzata in [5] in [4]. Nel lavoro descritto in [3] i volontari coinvolti nell esperimento hanno fornito, nell arco di più mesi, vari campioni di battitura ciascuno di testo completamente libero. Il sistema di riconoscimento messo a punto per il testo libero ha raggiunto un grado di accuratezza assai più elevato rispetto a quello di altri sistemi descritti nella letteratura basati sull analisi dei ritmi di battitura (sia di testo libero che predefinito), ed ha una accuratezza confrontabile con quella di altri sistemi biometrici, quali il riconoscimento del parlato e della firma, l analisi delle impronte digitali e della geometria della mano. (un semplice prototipo on-line del sistema e utilizzabile all indirizzo: www.di.unito.it/ gunetti/prototype.html. Ovviamente gli utenti non conosciuti dal sistema possono solo cercare di intruderlo, spacciandosi per uno degli utenti conosciuti ad esempio usando il login gunetti ). Nel lavoro contenuto in [15] viene descritto un ulteriore passo avanti nell analisi di testo libero, risultato di un esperimento che ha coinvolto 30 volontari a cui è stato chiesto di fornire campioni di battitura di testo libero in due lingue diverse: italiano e inglese. Gli esperimenti hanno dimostrato che gli utenti possono essere identificati con un buon grado di accuratezza in base ai loro ritmi di battitura anche quando scrivono testo libero in una lingua (l inglese) diversa da quella usata per produrre i loro profili di battitura (l italiano). Il risultato fondamentale del lavoro è che due campioni scritti in lingue diverse dallo stesso utente sono, in media, più simili di due campioni scritti nella stessa lingua da utenti diversi. È questo il primo lavoro descritto nella letteratura del settore che affronta esplicitamente il problema del riconoscimento degli utenti in base alle loro caratteristiche di di battitura quando sono coinvolte lingue differenti. Analogamente, in [14] si dimostra sperimentalmente che l analisi dei ritmi di battitura è possibile anche quando un lungo arco di tempo (superiore ad un anno e mezzo) è trascorso tra quando è stato formato il profilo degli utenti e quando questi profili devono essere usati per verificare l identità degli utenti stessi. Più di recente Gunetti Daniele ha esteso le sue ricerche alle caratteristiche biometriche di utilizzo del mouse un settore quasi completamente inesplorato in modo da poterle integrare con quelle di battitura alla tastiera del computer e ottenere così una capacità di riconoscimento ancora più elevata. La ricerca è portata avanti coordinando un gruppo composto da alcuni ricercatori, dottorandi e studenti, i quali stanno sviluppando, nell ambito delle loro tesi di laurea, alcuni sistemi di campionamento e analisi delle proprietà biometriche manifestate dagli utenti mentre usano il computer (ossia, battono i tasti e muovono il mouse) per la loro normale attività lavorativa.
References
PUBBLICAZIONI DI DANIELE GUNETTI Libri: [1] F. Bergadano and D. Gunetti. Inductive Logic Programming: from Machine Learning to Software Engineering. MIT Press, 1996. Brevetti: [2] D. Gunetti and F. Bergadano. Metodo e Apparecchio per la Verifica dell Identità Dichiarata da un Utilizzatore di una Risorsa Controllata, Mediante Digitazione su una Tastiera Alfanumerica. Brevetto per Invenzione Industriale n. 1.311.278. Data di concessione: 12 marzo 2002. Articoli su rivista: [3] D. Gunetti and C. Picardi. Kystroke Analysis of Free Text. ACM Transactions on Information and System Security (ACM TISSEC), 8(3), 2005. [4] F. Bergadano, D. Gunetti and C. Picardi. Identity Verification through Dynamic Keystroke Analysis. Journal of Intelligent Data Analysis (IDA Journal), 7(5):2003. [5] F. Bergadano, D. Gunetti and C. Picardi. User Authentication through Keystroke Dynamics. ACM Transactions on Information and System Security (ACM TISSEC), 5(4), 2002. [6] F. Bergadano and D. Gunetti. Testing by Means of Inductive Program Learning. ACM Transactions on Software Engineering and Metodology (ACM TOSEM), 5(2), 1996. [7] F. Bergadano and D. Gunetti. Learning Relations and Logic Programs. The Knowledge Engineering Review, 9(1), 1994. Cambridge University Press. [8] F. Bergadano, D. Gunetti, and U. Trinchero. The Difficulties of Learning Logic Programs with Cut. Journal of Artificial Intelligence Research, 1:91 107, 1993. Morgan-Kaufmann. Articoli in raccolte: [9] D. Gunetti. ILP Applications to Software Engineering. In D. Zhang and J. Tsai, editors, Advances in Machine Learning Applications in Software Engineering. Idea Group Publishing, 2007. [10] F. Bergadano, V. Cutello and D. Gunetti. Abduction in Machine Learning. In D. Gabbay and R. Kruse, editors, Handbook of Defasible Reasoning and Uncertainty Management Systems, Vol 4: Abductive Reasoning and Learning. Kluwer Academic Publishers, 2000. [11] F. Bergadano, D. Gunetti, M. Nicosia and G. Ruffo. Towards the Learnability of Prolog Programs. In G. Tascini, F. Esposito, V. Roberto and P. Zingaretti editors, Machine Learning and Perception. Series in Machine Perception and Artificial Intelligence, vol. 23, World Scientific, 1996
[12] F. Bergadano, D. Gunetti, M. Nicosia and G. Ruffo. Learning Logic Programs with Negation as Failure. In L. De Raedt, editor, Advances in Inductive Logic Programming. IOS Press, 1996. [13] F. Bergadano and D. Gunetti. Relational Machine Learning and the Inductive Synthesis of Logic Programs. In M. di Bacco, E. Pacciani and S. Borgognini Tarli, editors, Statistical Tools in Human Biology. World Scientific Publishing Co., 1994. Articoli in conferenze internazionali: [14] D. Gunetti, C. Picardi and G. Ruffo. Dealing with Different Languages and Old Profiles in Keystroke Analysis of Free Text. In S. Bandini, editor, Proc.oftheNinethCongress of the Italian Association for Artificial Intelligence (AI*IA-2005), Milan, Italy. LNCS 3673, pages 347-358, Springer-Verlag, 2005. [15] D. Gunetti, C. Picardi and G. Ruffo. Keystroke Analysis of Different Languages: a Case Study. In A. F. Famili, J. N. Kok, J. M. Pena, A. Siebes, A. Feelders, editors, Proc. of the Sixth Symposium on Intelligent Data Analysis (IDA 2005), Madrid, Spain. LNCS 3646, pages 133-144, Springer-Verlag, 2005. [16] D. Gunetti and G. Ruffo. Intrusion Detection through Behavioural Data. In J. N. Kok, editor, Proc. of the Third Symposium on Intelligent Data Analysis (IDA-99) LNCS 1642, Springer-Verlag, 1999. Pages 383-394. [17] F. Bergadano, D. Gunetti, M. Nicosia and G. Ruffo. Learning Logic Programs with Negation as Failure. In L. De Raedt, editor, Proceedings of the Fifth International Workshop on Inductive Logic Programming (ILP-95), Kat. Univ. Leuven, 1995 (Ristampato in [12]). [18] D. Gunetti. Using Abduction to Learn Horn Theories. In G. della Riccia, R. Kruse, and R. Viertl, editors, Invited paper in Proc. of the Workshop on Mathematical and Statistical Methods in Artificial Intelligence, Udine, Italy, 1995. LNCS, Springer-Verlag. [19] F. Bergadano and D. Gunetti. Learning clauses by tracing derivations. In Stefan Wrobel, editor, Proceedings of the Fourth International Workshop on Inductive Logic Programming (ILP-94), pages 11 30, Bad Honnef/Bonn, Germany, 1994. GMD Inst. - Sankt Augustin. [20] D. Gunetti and U. Trinchero. Intensional Learning of Logic Programs. In Proceedings of the European Conference on Machine Learning (ECML-94), pages 359 362, Catania, Italy, 1994. LNCS 784, Springer-Verlag. [21] F. Bergadano and D. Gunetti. Learning Relations: Basing Top-Down Methods on Inverse Resolution. In P. Torasso, editor, Third Congress of the Italian Association for Artificial Intelligence (AI*IA-93), pages 190 201, Torino, Italy, 1993. LNCS 728, Springer-Verlag. [22] F. Bergadano and D. Gunetti. An interactive system to learn functional logic programs. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI- 93), pages 1044 1049, Chambery, France, 1993. Morgan Kaufmann. [23] F. Bergadano and D. Gunetti. Inductive Synthesis of Logic Programs and Inductive Logic Programming. In Y. Deville, editor, Proceedings of the Third International Workshop on Logic Program Synthesis and Transformation (LOPSTR-93), pages 45 56, Louvainla-Neuve, Belgium, 1993. Springer-Verlag, Workshops in Computing.
[24] F. Bergadano and D. Gunetti. Logic Programming by Examples. In D. Saccà, editor, Atti dell ottavo Convegno sulla Programmazione Logica (GULP-93), pages 393 405, Gizzeria Lido (CZ), Italy, 1993. [25] F. Bergadano and D. Gunetti. Functional inductive logic programming with queries to the user. In P. Brazdil, editor, Proceedings of the European Conference on Machine Learning (ECML-93), pages 323 328, Vienna, Austria, 1993. LNCS 667, Springer-Verlag. [26] F. Bergadano, S. Brusotti, D. Gunetti, and U. Trinchero. Inductive test case generation. In Stephen Muggleton, editor, Proceedings of the Third International Workshop on Inductive Logic Programming (ILP-93), pages 11 24, Bled, Slovenia, 1993. Jozef Stefan Inst. - Ljubljana. [27] D. Gunetti. Efficient proofs in propositional calculus with inverse resolution. In P. Dewilde and J. Vanderwalle, editors, Proceedings of the IEEE International Conference on Computer Systems and Software Engineering (CompEuro-92), The Hague, Netherlands, 1992. IEEE Comp. Soc. Press. [28] D. Gunetti. Linear time proofs of propositional horn formulas with inverse resolution. In S. Costantini, editor, Atti del settimo convegno sulla Programmazione Logica (GULP- 92), pages 223 234, Tremezzo (CO), 1992. CittaStudi. Lavori non sottoposti a recensione: (non allegati alla domanda di concorso) [29] F. Bergadano, S. Brusotti, D. Gunetti, and U. Trinchero. Towards the Learnability of Prolog Programs. Atti del Workshop sull Apprendimento Automatico (GAA-95), Ancona, Italia, 1995. [30] F. Bergadano and D. Gunetti. Intensional Theory Revision. In S. Wrobel, editor, Proc. of the ECML-94 Workshop on Theory Revision, Catania, Italy, 1994. University of Catania. [31] F. Bergadano, D. Gunetti, and U. Trinchero. A Language for Defining Spaces of Clauses. In F. Esposito, editor, Atti del Workshop sull Apprendimento Automatico dell AI*IA-94 (GAA-94), Parma, Italia, 1994. Università diparma. [32] F. Bergadano, S. Brusotti, D. Gunetti, and U. Trinchero. Learning Logic Programs. In G. Mauri, editor, Atti del quarto Workshop sull Apprendimento Automatico dell AI*IA (GAA-93), Milano, Italia, 1993. Università di Milano.... Daniele Gunetti