Laboratorio d'Informatica Avanzata
Sono disponibili tesi sui seguenti argomenti:
Diagnosi e soddisfacimento di vincoli
Scheduling e soddisfacimento di vincoli
Riconoscimento di immagini e focalizzazione
di attenzione in sistemi di visione
Pianificazione per la gestione di
sistemi distribuiti
Integrazione di Programmazione a Vincoli
e Ricerca Operativa
Ottimizzazione Multi-CriteriaLa Programmazione Logica a Vincoli è una classe di linguaggi logici
con cui è possibile definire problemi di ottimizzazione combinatoria, in
cui è presente una funzione obiettivo che deve essere ottimizzata.
In molti ambiti ingegneristici, però, non è possibile stabilire una unica funzione obiettivo, ma esistono più criteri che si vorrebbero rendere ottimi contemporaneamente. Una buona soluzione è spesso un compromesso fra due o più criteri.
In questi casi un possibile metodo consiste nel trovare tutte le soluzioni che non sono dominate; l'utente deciderà a posteriori quale soluzione risulta migliore, dopo aver visto la distribuzione delle soluzioni. Per esempio, si consideri un CSP in cui si vorrebbero massimizzare due funzioni f1 ed f2. Alcune soluzioni sono dominate da altre; cioè risultano peggiori di altre rispetto ad entrambe le funzioni obiettivo. Le soluzioni non-dominate formano la cosiddetta Frontiera non-dominata.
Poiché le soluzioni precedentemente trovate sono punti in uno spazio, risulta ragionevole memorizzarle con strutture dati spaziali, quali i Point Quadtrees (vedi anche un demo sui Point Quadtree).
Sono disponibili tesi per la realizzazione di meta-predcati di ottimizzazione multi-criteria nell'ambito della Programmazione Logica a Vincoli.
Apprendimento di programmi logiciLa programmazione logica induttiva (ILP: Inductive Logic Programming) è un'area di ricerca all'intersezione fra Apprendimento Automatico e Programmazione Logica. Il suo scopo è quello di realizzare sistemi in grado di apprendere un programma logico partendo da esempi e da una conoscenza di background.
All'interno di questa area di ricerca, sono disponibili tesi sui seguenti
argomenti:
1) Utilizzo della Programmazione Logica ad Oggetti come limguaggio di rappresentazione.
2) applicazione di tecniche di ILP al Data Mining e Knowledge Discovery
in Databases.
1) L'utilizzo di programmi logici ad oggetti come formalismo di rappresentazione
consente una migliore strutturazione della conoscenza. Questo formalismo
risulta adatto a rappresentare domini dove è riconoscibile una gerarchia
di classi, in quanto consente di rappresentare esplicitamente tale gerarchia
attraverso una struttura ad albero dove i nodi sono classi e le foglie entità.
In questo modo è possibile una migliore organizzazione delle informazioni:
la conoscenza specifica relativa ad una singola istanza viene associata
all'istanza, mentre la conoscenza comune alle istanze di una classe viene
associata alla classe. Il partizionamento che ne risulta rende la base di
conoscenza più facilmente leggibile e consente meccanismi di ragionamento
più efficienti. Inoltre, l'organizzazione gerarchica delle classi
rende disponibile un nuovo operatore di generalizzazione per l'apprendimento,
che consiste nello "spostare" da una classe ad una superclasse la clausola
appresa.
Varie scelte sono possibili sia per la definizione del problema di apprendimento
in questo nuovo contesto, sia per lo sviluppo di un algoritmo per la soluzione
di tale problema. Fra le varie alternative, è stata scelta una definizione
del problema ed è stato progettato e realizzato un algoritmo che
combina tecniche note di programmazione logica induttiva.
Sono disponibili tesi per
I) investigare le altre scelte possibili per la definizione del problema
e lo sviluppo di un algoritmo
II) compiere esperimenti con dati reali.
2) applicazione di tecniche di ILP al Data Mining e Knowledge Discovery
in Databases. Le organizzazioni hanno a loro disposizione una sempre maggiore
quantità di dati sulla attività che compiono. Le informazioni
che possono essere estratte da questi dati possono essere molto importanti
per il miglioramento delle prestazioni dell'organizzazione. Le tecniche
tradizionali di analisi dei dati spesso non sono sufficienti per l'estrazione
di queste informazioni, a questo scopo è nato il campo di ricerca
del Data Mining e Knowledge Discovery in Databases che si occupa di sviluppare
strumenti più efficienti ed intelligenti per analizzarli. Le informazioni
che possono essere tratte da questi dati spesso forniscono un importantissimo
vantaggio competitivo ad una azienda. Per questa ragione, il Data Mining
e Knowledge Discovery in Databases ha ricevuto una grande attenzione recentemente.
Sono disponibili tesi al fine di investigare le applicazioni delle tecniche
di ILP in questo campo.
Sistemi Esperti
e Data Mining in campo medico Il Data Mining, sviluppatosi nell'ultimo decennio, rappresenta la soluzione proposta dall'Intelligenza Artificiale e dal settore delle Basi di Dati a questi problemi e sta dimostrando ampi margini di espansione. Il suo obiettivo è la ricerca di modelli all'interno delle basi di dati, in modo da permettere un supporto alle decisioni. Alcuni obiettivi della ricerca in questo settore sono:
Alcuni argomenti di tesi sono i seguenti:
1) creazione di un sistema esperto per la validazione dei dati di tipo Microbiologico (infezioni) e la generazione in tempo reale di allarmi.
2) applicazione di tecniche di Data Mining ai dati di tipo Microbiologico per l'estrazione di nuova conoscenza da utilizzare anche per migliorare e espandere la base di conoscenza del sistema esperto descritto nel punto precedente.
Queste due tesi verranno svolte in collaborazione con la Dianoema S.p.A, operante nel settore dell'informatica applicata alla medicina.
Società di entità
computazionali Nel triennio 2002-2004 avrà luogo un progetto europeo dal titolo 'Societies Of ComputeeS' (SOCS), in collaborazione con altri istituti universitari europei, tra cui l'università di Cipro, Imperial College e la City University di Londra. Il progetto ha come argomenti la analisi, la specifica formale, la prototipazione, e la verifica di società di entità computazionali, ovvero di programmi software basati su logica computazionale. Gli argomenti che si intendono trattare a livello di tesi includono:
nell'ambito del progetto, è prevista la possibilità di trascorrere un periodo all'estero. Ulteriori informazioni sul progetto SOCS si possono trovare all'indirizzo: http://lia.deis.unibo.it/Research/Projects/SOCS