Tags:
create new tag
view all tags

AVVISI

  • ORARIO DI RICEVIMENTO: il martedì dalle 15 alle 18 su Zoom (ma prima scrivetemi una email)

Sono responsabile per l'assegnamento del part-time per i corsi di laurea in Informatica e Tecnologie Informatiche


Un numero interessante: 09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0


Ricerca

Mi interesso di

  • strumenti per la didattica collaborativa e LMS adattivi via Web
  • modellazione del peer-assessment con reti Bayesiane
  • algoritmi su grafi
  • algoritmi paralleli
  • Java, Prolog, Smalltalk, Linux
  • Origami
  • Constraint Programming
  • Robotica

Conferenze di cui faccio parte

  • The 15th International Conference on Web-based Learning ( ICWL 2016), which has been held in Rome, Italy, 26-29 October 2016.

Pubblicazioni e CV

Didattica

Quest'anno insegno

Mi trovate

  • Orario di ricevimento: a lezione oppure in ufficio il martedì dalle 15 alle 17 su Zoom (previo appuntamento/email)
  • Ufficio: nuovo ufficio, primo piano della palazzina E, viale regina Margherita 295
  • Email: sterbini@diNOSPAM.uniroma1.it (togliete NOSPAM !!!)

Progetti Europei

  • 9Conversations.PNG
  • UnderstandIT

  • QUIS: Quality Interoperability and Standards in e-Learning

ARGOMENTI DI TESI DISPONIBILI (triennali e/o quinquennali)

ATTENZIONE: le mie tesi hanno una durata minima di 5 mesi e durata non fissata (terminano quando gli obiettivi sono raggiunti)

  • Strumenti di supporto alla dislessia
    • è in corso una tesi in cui si visualizzano (un player) degli esercizi di traduzione di Latino (e in futuro altri linguaggi) con particolari accorgimenti per aiutare i ragazzi dislessici. La visualizzazione dei diversi tipi di esercizi si baserà su una struttura dati che contiene tutte le meta-informazioni relative all'esercizio, ovvero, casi, generi, declinazioni, coniugazioni, significati numero eccetera.
    • Altre possibili nuove tesi potrebbe essere dedicate a:
      • realizzare esercizi di Latino più avanzati e con nuove visualizzazioni
      • realizzazione di un editor di esercizi che permette di costruire facilmente la struttura dati necessaria al Player.
      • generalizzare il player per un altro linguaggio (greco, inglese, francese)
      • (assegnata) realizzare un server per permettere al docente di far svolgere alla classe esercizi con livello di difficoltà/aiuto personalizzato per ciascuno studente

  • Estrazione di personaggi da romanzi (tesi magistrale o triennale)
    • con una collega di Letteratura Comparata vogliamo estrarre dai testi di romanzi l'elenco dei personaggi, sia nominati (p.es. "Lady Catherine de Burgh") che non-nominati (p.es "il figlio del cuoco del re") dal testo, assieme ad una serie di informazioni demografiche sul personaggio (genere, lavoro, parentele, nobile/plebeo ...). Il problema non è facile ed implica dover imparare ad usare strumenti per il Natural Language Processing (NLP) in Inglese. (il progetto si dedicherà anche al Francese e all'Italiano). Si lavora in Python e le due librerie da usare sono Spacy e Stanza. Un paio di tesi sono iniziate per l'Italiano ed il Tedesco con l'obiettivo di allineare testi con traduzioni diverse gestendo inoltre:
      • nomignoli dei personaggi (Lizzy per Elizabeth, Tony per Antonio, ...)
      • titoli onorifici (Mr., Master, Lady, ....)
    • Altre possibili tesi:
      • reimplementazione in Python + Spacy + Stanza del sistema Book-NLP e Litbank del prof. Bamman + altri lavori su Character alias recognition
      • ...

  • drPython (Qualità e leggibilità del codice Python) (assegnata, in corso)
    • Per il corso di Fondamenti di Programmazione vorrei cercare di costruire un analizzatore della qualità del codice Python, raccogliendo tutta una serie di feature analizzando il codice:
      • uso di notazione funzionale (map, lambda functions)
      • uso di argomenti con valori di default mutabili
      • annotazione di tipi e correttezza statica del programma
      • intricatezza del codice
      • uso di identificatori facili da capire sia per le variabili che per le funzioni
      • uso di ricorsione
      • uso di eccezioni
      • docstring per funzioni/metodi e file
      • commenti nel codice
      • corrispondenza tra una descrizione testuale dell'algoritmo e: 1) le specifiche dell'esercizio 2) l'implementazione
      • .... e molte altre La tesi deve per prima cosa individuare quali librerie già permettono di estrarre le feature e poi implementare quello che manca. Una volta estratte le feature vorrei analizzare il corpus di esercizi realizzati in questi anni dagli studenti e imparare quali programmi sono più leggibili e quindi quali feature sono più importanti
    • Altro argomento: sito web per la libreria drPython con log delle informazioni ricavate (assegnata)

  • Svolgimento di esami on-line con supporto per Python
    • Collaborazione con exam.net per permettere la costruzione di esercizi Python con correzione on-line durante l'esame. Saranno necessarie conoscenze di
      • Docker
      • Linux knowledge, including bash etc.
      • Linux permissions, security, chroot and other jail-options
      • Google Cloud Platform

  • Correzione automatica di esercizi Python e generazione automatica di spiegazioni degli errori (assegnata, in corso)
    • Raccolta di esercizi Python con correzione automatica
    • Correzione automatica per confronto con implementazione di riferimento
    • Altri argomenti disponibili:
      • Generazione di spiegazioni a livello variabile della completezza della spiegazione (in una gradazione che va da "suggerimento" a "completamente spiegato")
      • Diagnosi degli errori tramite modifica automatica (fuzzying?) del codice di riferimento e confronto dei risultati
      • ...

  • Generazione di reti di studenti virtuali per apprendere un modello di rete bayesiana del peer-assessment (assegnata)
    • Con un collega stiamo sviluppando un generatore di peer-assessment, dai comportamenti virtuali degli studenti simulati possiamo apprendere i parametri di una rete bayesiana che modella gli studenti
    • la tesi deve:
      • migrare a Python3 + la più recente versione di Bayesnet il mio codice Openanswer di modellazione bayesiana della classe
      • generare migliaia di classi virtuali con parametri e comportamenti diversi
      • apprendere i parametri della rete bayesiana dai dati generati
      • applicare il modello ottenuto ad altri dati generati per calcolare la precision e recall del modello

  • Linguaggi visuali a blocchi (tipo Scratch)
    • Realizzazione di un sistema web-based per il linguaggio Prolog

  • Costruzione di un database + Interfaccia web per la memorizzazione ed analisi degli esercizi consegnati

  • Visualizzazione del codice e della sua esecuzione (assegnata)
    • Collaborazione per la realizzazione della mostra del codice http://codexpo.org
      • realizzando visualizzazioni multimediali innovative della esecuzione del codice
      • realizzando visualizzazioni fisiche del codice (p.es. un mobile che mostra la ricorsione)
      • altro

  • Supporto alla didattica
    • correzione automatica di compiti di programmazione C usando il sistema Klee (generazione di casi di test con compilatore LLVM)

  • Game based learning (in collaborazione col prof. Temperini)
    • realizzazione di giochi didattici in Unity o HTML5

  • Origami e 3D (solo non compilativa)
    • simulazione di un foglio di carta in 3D e dei suoi movimenti usando Constraint Programming

Tesi compilative: (che possono essere anche trasformate in tesi di sviluppo)

  • Game-based e-learning: tesi di rassegna delle pubblicazioni e sulle piattaforme di gaming usate nel supporto alla didattica (giochi di ruolo multiplayer, ambienti virtuali, simulazioni)
  • Sistemi e-learning adattabili: tesi di rassegna delle pubblicazioni e delle tecniche per l'e-learning adattivo
  • Sistemi di reputazione ed e-learning: tesi di rassegna delle pubblicazioni e degli algoritmi di reputazione usati nei sistemi e-learning per guidare gli studenti o per consigliare materiale didattico
  • wiki-radio: tesi di rassegna delle pubblicazioni e dei sistemi per la costruzione cooperativa di contenuti audio e testuali, per lo streaming e per la realizzazione di una radio "wiki" (usando anche sistemi di text-to-speech per far "leggere" testi, dialoghi e notiziari)
  • Sistemi riconfigurabili basati su FPGA: tesi di rassegna delle pubblicazioni e dei sistemi di sviluppo usati per trasformare programmi in circuiti riconfigurabili realizzati in FPGA (che sono dei circuiti riconfigurabili)

  • Gestione di questionari a scelta multipla e di esercizi d'esame parametrici in AJAX
    • Si vuol realizzare un sistema per la costruzione, uso su web e stampa di quiz a scelta multipla generati da template parametrici.
    • Il sistema dev'essere realizzato in Javascript+AJAX+Google Gears per poter sia interagire con un server che permettere di lavorare "staccati"
    • I quiz vengono poi fruiti sia su web, che stampati, in sede d'esame con scansione ottica delle risposte.

Tesi assegnate

  • Simulazione di Origami: tesi di rassegna delle pubblicazioni e dei sistemi di simulazione che potrebbero essere usati per la simulazione di un foglio di carta piegato, e quindi per la piegatura "virtuale" di origami (ad esempio usando il simulatore fisico ODE)
  • Robotica
    • Robotica con Lego Mindstorms EV3
      • navigazione landmark-based in ambiente semplificato (foglietti colorati incollati per terra) ed in ambiente reale con fotografie omnivision
      • navigazione e mapping con telecamera (vSLAM)
    • costruzione e movimento di un braccio robotico con manipolazione di oggetti semplici e loro riconoscimento con telecamera
      • usando la libreria OpenCV per riconoscere gli oggetti e realizzando un planner del movimento
      • la gestione della cinematica inversa può essere affrontata usando le mappe autoorganizzanti di Kohonen
  • Strumenti di supporto alla dislessia
    • riconoscimento automatico degli errori di lettura tramite speech recognition su testi fissi
  • Realizzazione di una applicazione di aiuto alla trascrizione di manoscritti
    • in collaborazione con l'università di Friburgo
    • la scansione del manoscritto viene visualizzata
    • usando la libreria OpenCV o altre librerie di riconoscimento di immagini vengono cercati pezzi di immagini simili (le lettere)
    • con il supporto di un vocabolario vengono proposte possibili interpretazioni delle parole presenti
    • il trascrittore supervisiona le proposte e aiuta il sistema segnalandogli lettere e parole che ha riconosciuto e che possono essere usate per far apprendere al sistema nuovi simboli da cercare e riconoscere

  • Musica
    • Realizzazione di una app Android che riconosce le note suonate da un musicista e reagisce in modo divertente (assegnata)
      • obiettivo: rendere divertente lo studio di esercizi musicali

  • Dislessia
    • raccolta dati e loro analisi per la definizione di un indice di leggibilità specifico per i dislessici (italiani) (assegnata)
      • in collaborazione con la prof. Roberta Penge

  • Peer assessment
    • modellazione bayesiana della correzione tra pari (assegnata)
      • basandosi sulla libreria SMILE che è possibile programmare in Python

  • Supporto alla didattica
    1. analisi Bayesiana della correzione cooperativa di domande a risposta aperta e supporto alla correzione
    2. Realizzazione di un sistema per questionari a risposta aperta
    3. Generazione automatica di esercizi di Programmazione
  • Robotica
    • (Evorobot è un programma di Stefano Nolfi per l'evoluzione di robot intelligenti)
    • Simulatore di NXT estensione di un semplice simulatore per
      • renderlo più preciso/veloce
      • permettere il controllo di robot reali
      • (forse) visualizzazione 3D e/o simulazione corretta della fisica usando ODF

    • Evoluzione della capacità di colpire un bersaglio lanciando proiettili di peso variabile (assegnata)
      • usando una libreria per la simulazione di fisica (ODE o altro) ed una libreria per la simulazione di reti neurali ed eventualmente una libreria per gestire algoritmi genetici
      • obiettivo far evolvere la definizione della rete neurale di controllo (inizialmente i soli pesi) di un braccio simulato che lancia pesi diversi verso un bersaglio, premiando gli esemplari che colpiscono più vicino al bersaglio. Tra gli input della rete non è presente il peso del proiettile ma solo variabili propriocettive (p.es. posizione e velocità del braccio o forza impiegata) e posizione del bersaglio (inizialmente in 2D, poi in 3D)
      • estensione: colpire un oggetto in movimento

Tesi completate

  • Daniele Pensiero: Informatizzazione della raccolta dati per la definizione di un indice di leggibilità specifico per i dislessici (italiani)* (voto 110 e lode)
  • Stefano Ciavarella: Trasformazione e layout di testi per la fruizione facilitata per persone affette da Dislessia
  • Fabio Ticconi: Realizzazione ed evoluzione di un sistema di Visione Attiva
  • Matteo Pallocca: Evoluzione di formiche su Evorobot
  • Enzo Simone: Parallelizzazione di Evorobot su GPU
  • Marco Cortina: Parallelizzazione di Evorobot su BOINC
  • Leonardo Parisi: Realizzazione di un sistema a 3DOF per il controllo e la produzione di filmati time-lapse
  • Yuri Campilii: Soluzione di puzzle logici (ad esempio il Kakuro) con GNU-Prolog e il sistema di puzzles di Simon Tatham (triennale - voto 102)
  • Giuseppe Morlino: Esperimenti di Robotica Evoluzionistica (v.o. - voto 110 e lode)
  • Emanuele Cimò: Realizzazione di un robot equilibrista controllato da Wiimote (triennale - voto 105)
  • Giovanni Colombi: Esperimenti di Robotica Evoluzionistica con omnicam e e-puck (triennale - voto 106)
  • Elio Chiapperini: Esperimenti di Robotica Evoluzionistica con comunicazione IR e e-puck (triennale - voto 101)
  • Alessandro Leopardi: Realizzazione di interfaccia hardware tra telecamera e Lego Mindstorm NXT (v.o.)
  • Maurizio Mariani: Estensione di sistema per la costruzione di corsi personalizzati per permettere la specifica dei prerequisiti e postrequisiti delle componenti didattiche sotto forma di Learning Objectives (triennale - voto 107)
  • Vito Modena: Ottimizzazione del sistema e-learning ADA (applicazione php/mysql) (triennale - voto 110)
  • Valentina Buffone: "Simulatore di NXT" estensione di un semplice simulatore per il NXT (triennale - voto 102)
  • Francesco Fontana: Realizzazione di librerie Java ME per interazione con telecamera bluetooth e Lego Mindstorm NXT (triennale)
  • Simone Marinelli: "Sistema di Analisi della leggibilità del software in C e Java" (triennale - voto 106)
  • Massimo Pezzulli: "Esperienze di robotica behaviourale, gerarchica e ibrida" (v.o. - voto 104)
  • Giacomo Piperno: implementazione di un Lego Segway con Lego Mindstorms (triennale - voto 110 e lode)
  • Marzia Mastrogiacomo: "Trasformazione Sintattica del Codice: Ottimizzazione del Content-manager Twiki" (v.o. - voto 106)
  • Stefano Malagigi: Wiki Radio: una streaming radio che legge le notizie dal web e genera la voce con Festival (triennale - voto 110 e lode)
  • Pietro Longo: Correzione automatica di esercizi di programmazione (v.o. - voto 110 e lode)
  • Albino Aiello: Correzione automatica di esercizi di Architetture 1 (triennale - voto 101)
  • Maurizio Di Pietro: Simulazione di Origami in Java 3D (triennale)
  • Luca Giuliani: Un editor di esercizi per didattica a distanza (v.o.)

Il software sviluppato in alcune delle tesi è disponibile .

Sostengo

Sostengo alcune organizzazioni

One Laptop Per Child

Sono riuscito a ottenere un laptop del progetto OLPC ... è fichissimo!!!

  • E' una Fedora 7 su hardware Geode a 600Mhz circa.
  • con 256M di ram e 1GB di flash.
  • WiFi, webcam, mike e speakers, 3 porte usb e una Compact Flash per espandere lo spazio "disco"

Sposto su una pagina separata i miei esperimenti con l' OLPC e Lejos.

Links interessanti

Una nota su RaiOt

C'e' chi non sopporta la libertà d'opinione degli altri al punto da usare la censura. Per questo avevo scaricato su twiki i filmati delle trasmissioni di RaiOt e della Guzzanti per renderli disponibili. Come reazione si è cominciato ad usare twiki a sproposito contro il simbolo della Pace e la sinistra in genere. Per evitare polemiche linko i siti originali.

Links

Se volete imparare a programmare come si deve cominciate da

Libri che mi sono piaciuti troppo

  • Little Brother di Cory Doctorow (ma anche gli altri suoi libri)
  • La serie di Discworld di Terry Pratchett
  • Guida galattica per autostoppisti di Douglas N. Adams
  • Il Signore degli Anelli di J. R. Tolkien
  • The Bastard Operator From Hell di Simon Travaglia
  • Tanta fantascienza

Geek Code

-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS/S d- s++:+ a++ C++$>++++ UL++++$ P++ L++$ !E--- !W++ N o K--? !w? !O !M V PS++ PE-- Y++ !PGP- !t !5 !X R tv--? b+ DI !D !G? e++++ h---- r+++ y+++
------END GEEK CODE BLOCK------ 

-- AndreaSterbini - 10 Oct 2000

| |
Edit | Attach | Watch | Print version | History: r142 < r141 < r140 < r139 < r138 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r142 - 2020-10-08 - AndreaSterbini






 
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback