Obiettivi
Gli obbiettivi di questo progetto si possono organizzare secondo le seguenti linee di ricerca:
-
Ragionamento basato su vincoli e preferenze:
Il primo obiettivo di questa linea di ricerca è lo sviluppo e l'implementazione di un framework unificante basato su vincoli che permetta di inglobare tutti i differenti
tipi di preferenze, ragionare con tipi diversi di incertezza e di trovare soluzioni sia ottime che robuste. Il secondo obiettivo è quello di usare i vincoli globali e la
ricerca locale per risolvere in modo efficiente problemi quali la determinazione della struttura delle proteine, la deduzione dell'aplotipo, l'allineamento dell'RNA, e la
schedulazione di turni e di operazioni produttive.
Inoltre, partendo dalla piattaforma aperta di programmazione a vincoli GECODE e dallo strumento parametrico per la ricerca locale EasyLocal, si desidera studiare
e realizzare un risolutore di vincoli che combini opportunamente le tecniche di Constraint Programming e di Local search, in grado di ragionare sia su domini finiti
che infiniti quali i numeri reali.
Linguaggi di programmazione basati su vincoli:
Ci si aspetta di estendere i paradigmi CLP e CC (concurrent constraint programming) al fine di ottenere linguaggi più appropriati per le applicazioni di nostro
interesse. Le estensioni devono permettere maggiore espressività ed efficienza e in particolare vorremmo progettare un ambiente CLP con domini composti e vincoli
più sofisticati di quelli presenti nei modelli esistenti. Inoltre intendiamo migliorare degli strumenti recentemente sviluppati basati su CP per l'esecuzione di linguaggi
per la rappresentazione della conoscenza, ed in particolare per i cosiddetti answer set programs (ASP). Desideriamo inoltre estendere CC con l'aggiunta di vincoli
soft e temporali, così come con primitive di tipo stocastico, per ottenere linguaggi mirati a campi applicativi quali Quality of Services, Architetture Service Oriented,
e Bioinformatica. Intendiamo infine sviluppare metodologie e strumenti basati sulla trasformazione di programmi per la verifica automatica, la sintesi e
l'ottimizzazione di sistemi software.
- Ragionamento temporale:
Vincoli di natura temporale e spaziale caratterizzano una molteplicità di domini applicativi e possono essere espressi in modo preciso e uniforme attraverso
formalismi logici. Recenti risultati per frammenti espressivi e decidibili hanno risvegliato un significativo interesse nello studio di alcune logiche spaziali e temporali.
Nel presente progetto, ci concentreremo sul problema di estendere tali logiche con vincoli di natura quantitativa, ad esempio, sulla durata di eventi o sulla lunghezza
di intervalli.
Lo scopo della ricerca su vincoli temporali è estendere le classi esistenti di problemi che ammettono incertezza disgiuntiva con variabili non controllabili, come pure
estendere gli esistenti framework per vincoli temporali con incertezza condizionale e preferenze. Vogliamo anche sviluppare un risolutore per problemi temporali con
variabili incontrollabili e preferenze che possono cambiare dinamicamente, capace di trovare soluzioni ottime con differenti gradi di controllabilita'. L'obiettivo è
integrare tale risolutore in strumenti per applicazioni in ambito aero-spaziale e tecnologie per l'assistenza a persone anziane.
- Preferenze in ambito multi-agente:
Il primo obiettivo di questa linea di ricerca è la progettazione di metodi efficienti per trovare i risultati maggiormente preferiti in ambienti dove preferenze e vincoli
sono espressi da piu' agenti. Vogliamo anche fornire una caratterizzazione di metodi di aggregazione tramite proprieta' come fairness (equita') e manipolabilita', e
una analisi computazionale di manipolazione e aggregazione che permetta di scegliere il metodo migliore per ciascuna applicazione.
Un altro obiettivo è la progettazione di metodi capaci di gestire l'incertezza nel modo in cui le preferenze sono aggregate, come pure nelle preferenze di singoli
agenti, e investigare l'impatto dell'incertezza sulla fairness e la manipolazione. Intendiamo anche generalizzare l'ambito dei problemi di matching a rappresentazioni
compatte di preferenze ed incertezza dato che, in questo modo, si incrementano enormemente le potenzialita' sia teoriche che pratiche di questo approccio. Abbiamo
anche intenzione di fornire le basi per applicazioni in scenari di intelligenza artificiale e, in questa direzione, ci proponiamo di progettare un risolutore completo per
problemi di matching con indifferenza ed incompletezza quando le preferenze sono modellate in maniera compatta.
- Applicazioni:
Si desidera estendere il risolutore di vincoli COLA, sviluppato nell'ambito di un precedente progetto per il problema del protein folding, per ottenere un risolutore di
vincoli su spazio 3D e grado di discretizzazione parametrico che risulti utilizzabile da biologi e biotecnologi anche per altre applicazioni.
Inoltre, vogliamo rappresentare reazioni biochimiche come processi in un linguaggio CC esteso (stocastico/soft/temporale/nonmonotono). Come primo passo
pensiamo di analizzare specifiche reazioni biochimiche di interesse in campo farmacologico e in preclinica. Dopo la fase di modellizzazione nel linguaggio,
pensiamo di studiare apposite estensioni della logica temporale per analizzare il comportmento dei sistemi.
Per quanto riguarda QoS e SOC, l'obiettivo principale è quello di avere delle metodologie per permettere ai partecipanti di convergere, attraverso un processo di
negoziazione, su un accordo formale definito come Service Level Agreement (SLA), che specifica il contratto che deve essere rispettato. I vantaggi principali nel
rappresentare la QoS con i vincoli (soft) riguardano la possibilita' di usare risolutori efficienti per controllare le proprieta' dei contratti e nella presenza di
preferenze (o costi) direttamente ospitate nel linguaggio. Oltre ai classici attributi di QoS, considereremo due nuovi aspetti: trust e fairness. In particolare, l'aspetto
di fairness considerera' una percezione "soggettiva" della qualita' del servizio e saranno utilizzati alcuni indici economici e misure di benessere sociale.
Un ulteriore obiettivo di questa linea di ricerca è quello di estendere ed implementare una nuova versione dell'architettura software TRF che consentirà una
trattazione più robusta al problema della integrazione di planning e scheduling, sfruttando la visione unificante basata sul concetto di timeline. Si vogliono anche
realizzare nuove versioni di alcuni risolutori associati alla architettura generale, che sarà quindi in grado di trattare problemi di scheduling e planning più complessi
e maggiormente rappresentativi di quelli incontrati in domini reali. L'uso combinato delle nuove versione del TRF e dei nuovi risolutori supporterà attività di ricerca
nell'ambito dell'incertezza in fase di esecuzione, la sintesi di spiegazioni automatiche orientate all'utente, e il modello e lo studio di preferenze nel problem solving.
Rendiconto del programma di ricerca - MODELLO A