Linguaggi di Nuova Concezione, A.A. 2003/2004
Orario lezioni
- Lun I fascia
- Mer. III fascia
- Gio. III fascia
Programma Svolto
- 19 Aprile 2006.
Introduzione al corso.
- 20 Aprile 2005. Vincoli.
Constraint Satisfaction Problems (CSP) e
Constraint Optimization Problems (COP).
Principali definizioni. Risolutori completi ed incompleti.
Regole di risoluzione: domain reduction, transformation e
introduction.
- 26 Aprile 2006. Derivazioni e constraint propagation.
Node consistency, Arc consistency, Bounds consistency,
directional Arc consistency,
Hyperarc consistency.
- 27 Aprile Maggio 2005. Path consistency, k-consistency.
Procedure per la propagazione: AC1 e AC3.
- 3 Maggio 2006.
Alberi di ricerca: prop labeling trees.
Esempi ed effetti della scelta delle
variabili sulle dimensioni degli alberi di ricerca.
Metodi di propagazione: forward checking, partial e full look ahead (MAC).
Algoritmi di costruzione/visita di alberi di ricerca:
- 4 Maggio 2006.
Dal Logic Programming al constraint di logic programming.
Richiami sui programmi definiti e relativa procedura di risoluzione.
- 8 Maggio 2006.
Programmazione logica con vincoli: procedura di risoluzione.
Le funzioni simpl e solv. Il backtracking.
- 10 Maggio 2006.
Programmazione dichiarativa. Metodologia Generate & Test.
Esempi di programmazione dichiarativa e ottimizzazione
dello spazio di ricerca.
Metodologia constrain & generate in CLP.
Le N-regine.
- 11 Maggio 2006.
Esercitazione in laboratorio sulla programmazione con vincoli.
Le N-regine, il Sudoku ed altri problemi.
- 15 Maggio 2006.
Approfondimenti circa gli alberi SLD (1) e i prop-labeling trees (2).
(1) Primitive di secondo ordine di Prolog (findall, bagof, setof).
Cut e fail. Uso del cut e fail per implementare la negazione.
- 16 Maggio 2006.
(2) Opzioni per il labeling. Branch & bound e confronti con la tecnica
omonima (ma diversa) usata in ricerca operativa.
- 17 Maggio 2006. (lab)
CLP(FD): esempi di programmazione con la metodologia
constraint + generate:
- SEND+MORE=MONEY
- Graph coloring
- Hamilton Path
- Numeri di Schur
Sito dove reperire dati per i problemi:
CLPASP.
Per approfondire:
A. Dovier, A. Formisano, E. Pontelli.
A comparison of CLP(FD) and ASP solutions to NP-complete problems.
In M. Gabbrielli and G. gupta eds., Proc of ICLP 2005. LNCS 3668, pp. 67-82. Sitges, barcelona, October 2005.
- 22 Maggio 2006.
Introduzione ai vincoli globali.
Vincoli di all_different. Richiami sulle tecniche
di risoluzione al problema di ricerca di un matching massimale
in un grafo bipartito
(Note).
- 24 Maggio 2006.
Tecniche per il filtering di vincoli all_different.
Cenni a CLP(Q/R).
Predizione di struttura: il problema
del protein folding nel modello HP (codice)
- 25 Maggio 2006.
Aritmetica degli intervalli.
Vincoli su intervalli e locate in Eclipse.
Applicazioni del constraint programming al riconoscimento di immagini
(seminario di Michela Farenzena).
Si veda anche;
M. Farenzena, A. Fusiello, and A. Dovier.
Reconstruction with Interval Constraints Propagation
In Proc. of
IEEE Computer Society Conference on
Computer Vision and Pattern Recognition
New York, NY: June 17-22, 2006.
- 31 Maggio 2006. Concurrent Constraint Programming.
Sistemi di vincoli e ASK & Tell.
Semantica operazionale e esempi.
Il linguaggio di coordinamento Linda ed il suo utilizzo
in SICStus Prolog.
- 1 Giugno 2006. Programmazione con agenti
(si veda anche:
An Introduction to Multiagent System by M. Wooldridge).
Un'applicazione della programmazione multiagente al
problema del protein folding.
- 5 Giugno 2006.
Richiami della semantica modellistica e di punto fisso
dei programmi definiti.
Programmi generali. Principali problemi.
Modelli minimali e modelli stabili.
NP-completezza del problema dell'esistenza di un modello stabile.
- 7 Giugno 2006. Soluzione del problema del rostering ospedaliero
con tecniche di constraint programming e ricerca locale
(seminario di Raffaele Cipriano). Per approfondire:
R. Cipriano, L. Di Gaspero, and A. Dovier.
Approcci ibridi al problema del rostering: un caso di studio nell'integrazione di programmazione con vincoli e ricerca locale
In RCRA 2006.
- 8 Giugno 2006. Vincoli ASP.
Esempi di programmi e codici ASP.
Esempi di programmazione con ASP: Le N regine,
Hamilton Path, K-coloring, Numeri di Schur.
- 14 Giugno 2006.
Idee e uso di
Smodels e
Cmodels.
Programmi tight.
- 15 Giugno 2006.
Linguaggi per il planning. Esempi di action theories.
Soluzione usando ASP e CLP(FD). Per approfondire:
A. Dovier, A. Formisano, and E. Pontelli.
Planning with Action Languages:
Perspectives using CLP(FD) and ASP
In Proc. of CILC 2006: convegno italiano di logica computazionale,
Bari, 26-27 giugno 2006.
- 19 Giugno 2006 (2 ore + 2 ore di lab).
L'algoritmo di unificazione.
Complessità dell'algoritmo di Unificazione e
sue principali implementazioni. Significato logico dell'unificazione.
E-unificazione: Definizioni e problemi principali.
Problema: la terminazione dell'algoritmo di unificazione
per le liste compatte.
Esercitazione su ASP.
Indicazioni sull'esame e valutazione del corso.
Home Page