Fondamenti di Intelligenza Artificiale M
A.A. 2017-2018

Tesi e Progetti

In questa pagina sono raccolte alcune proposte di progetti per la parte di laboratorio eventualmente associata al corso (4 crediti). Tale elenco non va inteso come esaustivo: gli studenti possono proporre altri progetti, concordandoli preventivamente col docente.
La discussione del progetto può avvenire solo dopo aver sostenuto con successo l'esame scritto di Fondamenti di Intelligenza Artificiale M. La data di discussione va concordata preventivamente col docente. Alla discussione del progetto, lo studente è tenuto a:

  1. portare una relazione sintetica del lavoro svolto (max. 10 pagine);
  2. effettuare una presentazione della durata di 10 minuti ca. (max. 8 slide);
  3. mostrare una demo del sistema realizzato.

AI e Sistemi Distribuiti per il Calcolo Parallelo

  • Parallelizzazione di sistemi per il Complex Event Processing (CEP).  L'obiettivo di questo progetto è quello di studiare la possibilità di distribuire su più nodi di computazione l'esecuzione di sistemi a regole CEP (e.g., Drools Fusion).  Si suggerisce l'uso di Apache Spark come piattaforma di supporto alla computazione parallela.  Dopo aver studiato gli strumenti software coinvolti, sarà interessante confrontare le performance di esecuzione di un determinato algoritmo CEP su singola macchina e in ambiente distribuito.
    (Persone: 1) (Referente: Daniela Loreti) (Stato: non assegnata)
  • Parallelizzazione di algoritmi di apprendimento automatico. L'obiettivo di questo progetto è quello di studiare la possibilità di distribuire su più nodi di computazione l'esecuzione di algoritmi di Machine Learning e reti neurali.  In particolare, risulta interessante studiare la parallelizzazione di algoritmi che sfruttino librerie predefinte, come Google TensorFlow. Si suggerisce l'uso di Apache Spark come piattaforma di supporto alla computazione parallela.  Dopo aver studiato gli strumenti software coinvolti, sarà interessante confrontare le performance di esecuzione di un determinato algoritmo di esempio su singola macchina e in ambiente distribuito.
    (Persone: 1) (Referente: Daniela Loreti) (Stato: non assegnata)

Reti Neurali e Deep Learning

  • Reti neurali applicate ai giochi. Lo scopo del progetto è applicare una rete neurale profonda (Deep Network) a giochi da tavolo e piccoli videogiochi, confrontando i risultati con altre tecniche di IA. Non è richiesta conoscenza approfondita delle reti neurali, poiché verrà utilizzato un framework già esistente; il focus del progetto sarà sulla modellazione del gioco, la sperimentazione e il confronto con altre tecniche.
    (Persone 1 o 2, a seconda della difcioltà del gioco) (Referente: Andrea Galassi) (Stato: non assegnata)

NAO Robot

  • Disponibili diversi progetti con il Robot NAO
    L'attività si svolgerà inizialmente sull'ambiente di sviluppo e simulazione fornito con il robot (framework Choreographe). Una volta raggiunta una buona stabilità e affidabilità del software sviluppato, verrà fornita l'opportunità di lavorare direttamente con il robot presso i locali del DISI.
    Di seguito vengono mostrati alcuni esempi di possibili progetti ma è possibile ampliare o proporre anche nuovi spunti.
    • Robot NAO e linguaggio naturale
      • Sviluppo di bot
      • Sviluppo di giochi interattivi
      • Sviluppo di abilità per quiz e giochi matematici
    • Robot NAO e planning real-time
      • Esecuzione di azioni (comandi) real-time in ambiente chiuso
      • Movimento all’interno di un percorso/li>
    • (Persone : 1-2) (Referente:Allegra De Filippo) (Stato: non asssegnata)

GIOCHI, BOTS e ALTRO

  • Giochi matematici e problem solving Si affrontino e risolvano (cercando di essere il piu' generali possibile) alcuni giochi matematici tipo quelli riportati nei files che seguono mediante le tecniche di problem-solving descritte nel Corso di Intelligenza Artificiale. http://matematica.unibocconi.it/sites/default/files/giochiautunno2010/allenamentiautunno2010.pdf
    http://matematica.unibocconi.it/sites/default/files/giochiautunno2010/soluzioniautunno2010.pdf
    Se ne possono trovare altri nel sito:
    http://matematica.unibocconi.it/giochi-matematici
    o in altri siti mediante ricerca con  google.
    Si tenti una classificazione dei problemi i base alle modalita` di soluzione. Si espliciti la difficolta` nel trattare la parte di "comprensione" del problema descritto in modo testuale/grafico e si mostrino esempi e possibili soluzione studiando anche lo stato dell'arte.
    (Persone : 2) (Referente: Paola Mello) (Stato: non asssegnata)
  • Giochi matematici di puzzle geometrici Si affrontino e risolvano (cercando di essere il piu' generali possibile) i giochi matematici dove viene richiesto di comporre un puzzle geometrico usando forme predefinite, come ad esempio il gioco numero 5 nel seguente file:
    http://matematica.unibocconi.it/sites/default/files/2014.autunno.q1.pdf
    (Persone : 1 o 2) (Referente: Paola Mello) (Stato: non asssegnata)
  • Realizzazione di una IA per una competizione internazionale su un gioco.
    Lo scopo del progetto è la realizzazione di un agente basato su tecniche di IA per giocare a uno dei tanti giochi per i quali esistono competizioni internazionali. Ovviamente non è richiesto che il giocatore si dimostri il migliore (anche se ci si può sempre sperare! Nel caso ci sarebbero anche premi in denaro…), ma piuttosto l’applicazione delle tecniche viste durante il corso o di tecniche originali che portino a risultati discreti e che non siano ancora state applicate nell’ambito di queste competizioni.
    Alcune delle competizioni correntemente attive sono le seguenti: https://project.dke.maastrichtuniversity.nl/cig2018/?page_id=255
    In particolare si suggerisce il gioco Hanabi: http://hanabi.aiclash.com/index.html
    (Persone 1 o 2, a seconda della difficoltà del gioco)(Referente: Andrea Galassi) (Stato: non asssegnata)

COMPUTAZIONE EVOLUTIVA

  • 14: Progetto e implementazione di un algoritmo genetico per risolvere problemi di ottimizzazione combinatoria (per esempio, quadratic assignment problem e timetabling problem)
    (Persone : 1) (Referente: Andrea Roli) (Stato: non asssegnata)
  • 15: Progetto e implementazione di un algoritmo genetico per definire una strategia di gioco per il dilemma del prigioniero (versione iterata) o altri giochi analoghi descritti da matrice di payoff. [ http://en.wikipedia.org/wiki/Prisoner's_dilemma]
    (Persone : 1) (Referente: Andrea Roli) (Stato: non asssegnata)
  • 16: Progetto e implementazione di un algoritmo genetico per costruire un'istanza difficile per un problema di ottimizzazione combinatoria.
    (Persone : 1) (Referente: Andrea Roli) (Stato: non asssegnata)
  • 17: Progetto e implementazione di un algoritmo di programmazione genetica per l'approssimazione di funzioni.
    (Persone : 1) (Referente: Andrea Roli) (Stato: non asssegnata)
  • 18: Progetto e implementazione di un algoritmo di programmazione genetica per una strategia di comportamento in un videogioco (per esempio Robocode o Mario Bros).  [ http://robocode.sourceforge.net/]
    (Persone : 1) (Referente: Andrea Roli) (Stato: non asssegnata)
  • 51: Progetto e implementazione di un algoritmo genetico per definire le regole di transizione di un automa cellulare unidimensionale
    [ http://mathworld.wolfram.com/CellularAutomaton.html]

    di raggio r > 1 in modo da ottenere un classificatore capace di risolvere il problema della densità (cioè, il pattern iniziale, binario, converge a valori tutti 0 o tutti 1 a seconda della predominanza di un valore o dell'altro nella configurazione iniziale). Per maggiori informazioni: http://csc.ucdavis.edu/~evca/Projects/evca.html
    (Persone : 1) (Referente: Andrea Roli) (Stato: non asssegnata)

NATURAL LANGUAGE PROCESSING E ARGUMENTATION MINING

  • Feature Extraction from Textual Corpora. Studio ed estrazione di feature (linguistiche, semantiche, subsimboliche…) da documenti testuali in corpora esistenti
    (Persone : 1-2) (Referenti: Paolo Torroni, Marco Lippi, Andrea Galassi)
  • Natural Language Processing in Prolog..
    (Persone : 1-2) (Referente: Paola Mello) (Stato: non asssegnata)
  •  Argumentation Mining from Speech.. Creazione e utilizzo di nuovi dataset per l'estrazione automatica di argomenti da discorsi politici.
    (Persone : 1-2) (Referenti: Paolo Torroni, Marco Lippi) (Stato: non asssegnata)
  • Fake News Detection with Argumentation Mining. Analisi della presenza di argomenti all'interno di documenti testuali riguardanti notizie vere e fasulle.
    (Persone : 1-2) (Referenti: Paolo Torroni, Marco Lippi) (Stato: non asssegnata)
  • Consumer-Empowering Artificial Intelligence.
    Creazione di un tool/crawler per l’estrazione automatica di terms of service e/o privacy policies da siti web, da analizzare con tool (in parte già esistenti) di machine learning.
    (Persone : 1-2) (Referenti: Paolo Torroni, Marco Lippi) (Stato: non asssegnata)
  • Symbolic Reasoning for Legal Documents.
    L'attività consiste nel combinare tecniche simboliche per il reasoning con un tool già esistente che riconosce automaticamente clausole fraudolente in contratti online.
    (Persone : 1-2) (Referenti: Paolo Torroni, Marco Lippi) (Stato: non asssegnata)

 

 

 

Contact webmaster of this site